// WARNING: Please don't edit this file. It was generated by Swift/WinRT v0.0.1

#pragma once
// Header files for imported files
#include <inspectable.h>
#include <EventToken.h>
#include <windowscontracts.h>
#include "Windows.Foundation.h"
#include "Windows.Networking.h"
#include "Windows.Storage.Streams.h"
// Importing Collections header
#include "Windows.Foundation.Collections.h"

/* Forward Declarations */
#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2 __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore_FWD_DEFINED__
#define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore;

#endif // ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore_FWD_DEFINED__

// Parameterized interface forward declarations (C)

// Collection interface definitions

typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean __x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean;

#if !defined(____x_ABI_C__FIAsyncOperation_1_boolean_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1_boolean_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1_boolean __x_ABI_C__FIAsyncOperation_1_boolean;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1_boolean;

    typedef struct __x_ABI_C__FIAsyncOperation_1_booleanVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1_boolean* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1_boolean* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1_boolean* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1_boolean* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1_boolean* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1_boolean* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1_boolean* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1_boolean* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1_boolean* This,
        boolean* result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1_booleanVtbl;

    interface __x_ABI_C__FIAsyncOperation_1_boolean
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1_booleanVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1_boolean_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean __x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1_booleanVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean* This,
        __x_ABI_C__FIAsyncOperation_1_boolean* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1_booleanVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1_booleanVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1_boolean_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING;

#if !defined(____x_ABI_C__FIAsyncOperation_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1_HSTRING __x_ABI_C__FIAsyncOperation_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1_HSTRING;

    typedef struct __x_ABI_C__FIAsyncOperation_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1_HSTRING* This,
        HSTRING* result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1_HSTRINGVtbl;

    interface __x_ABI_C__FIAsyncOperation_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING* This,
        __x_ABI_C__FIAsyncOperation_1_HSTRING* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRINGVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain;

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChainVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain** result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChainVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChainVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChainVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChainVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChainVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain_INTERFACE_DEFINED__
    
typedef enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult;

typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult;

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult* result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult_INTERFACE_DEFINED__
    
#ifndef ____x_ABI_CWindows_CStorage_CStreams_CIBuffer_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CStreams_CIBuffer_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CStorage_CStreams_CIBuffer __x_ABI_CWindows_CStorage_CStreams_CIBuffer;

#endif // ____x_ABI_CWindows_CStorage_CStreams_CIBuffer_FWD_DEFINED__

typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer;

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBufferVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBufferVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBufferVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBufferVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBufferVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBufferVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1_HSTRING __x_ABI_C__FIIterator_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1_HSTRING;

    typedef struct __x_ABI_C__FIIterator_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1_HSTRING* This,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1_HSTRING* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1_HSTRING* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1_HSTRING* This,
        UINT32 itemsLength,
        HSTRING* items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1_HSTRINGVtbl;

    interface __x_ABI_C__FIIterator_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1_HSTRING __x_ABI_C__FIIterable_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1_HSTRING;

    typedef struct __x_ABI_C__FIIterable_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1_HSTRING* This,
        __x_ABI_C__FIIterator_1_HSTRING** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1_HSTRINGVtbl;

    interface __x_ABI_C__FIIterable_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension;

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension;

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo;

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo;

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        __x_ABI_C__FIIterator_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1_HSTRING __x_ABI_C__FIVectorView_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1_HSTRING;

    typedef struct __x_ABI_C__FIVectorView_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1_HSTRING* This,
        UINT32 index,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1_HSTRING* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1_HSTRING* This,
        HSTRING value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1_HSTRING* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        HSTRING* items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1_HSTRINGVtbl;

    interface __x_ABI_C__FIVectorView_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension;

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo;

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfoVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVector_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVector_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVector_1_HSTRING __x_ABI_C__FIVector_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVector_1_HSTRING;

    typedef struct __x_ABI_C__FIVector_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVector_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVector_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVector_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVector_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVector_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVector_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVector_1_HSTRING* This,
        UINT32 index,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVector_1_HSTRING* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* GetView)(__x_ABI_C__FIVector_1_HSTRING* This,
        __x_ABI_C__FIVectorView_1_HSTRING** result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVector_1_HSTRING* This,
        HSTRING value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* SetAt)(__x_ABI_C__FIVector_1_HSTRING* This,
        UINT32 index,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* InsertAt)(__x_ABI_C__FIVector_1_HSTRING* This,
        UINT32 index,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* RemoveAt)(__x_ABI_C__FIVector_1_HSTRING* This,
        UINT32 index);
    HRESULT (STDMETHODCALLTYPE* Append)(__x_ABI_C__FIVector_1_HSTRING* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* RemoveAtEnd)(__x_ABI_C__FIVector_1_HSTRING* This);
    HRESULT (STDMETHODCALLTYPE* Clear)(__x_ABI_C__FIVector_1_HSTRING* This);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVector_1_HSTRING* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        HSTRING* items,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* ReplaceAll)(__x_ABI_C__FIVector_1_HSTRING* This,
        UINT32 itemsLength,
        HSTRING* items);

        END_INTERFACE
    } __x_ABI_C__FIVector_1_HSTRINGVtbl;

    interface __x_ABI_C__FIVector_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIVector_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVector_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate;

    typedef struct __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* GetView)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* SetAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* value);
    HRESULT (STDMETHODCALLTYPE* InsertAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* value);
    HRESULT (STDMETHODCALLTYPE* RemoveAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 index);
    HRESULT (STDMETHODCALLTYPE* Append)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* value);
    HRESULT (STDMETHODCALLTYPE* RemoveAtEnd)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
    HRESULT (STDMETHODCALLTYPE* Clear)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** items,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* ReplaceAll)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** items);

        END_INTERFACE
    } __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl;

    interface __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate
    {
        CONST_VTBL struct __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension;

    typedef struct __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* GetView)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension** result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* SetAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* value);
    HRESULT (STDMETHODCALLTYPE* InsertAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 index,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* value);
    HRESULT (STDMETHODCALLTYPE* RemoveAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 index);
    HRESULT (STDMETHODCALLTYPE* Append)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* value);
    HRESULT (STDMETHODCALLTYPE* RemoveAtEnd)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
    HRESULT (STDMETHODCALLTYPE* Clear)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension** items,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* ReplaceAll)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension** items);

        END_INTERFACE
    } __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl;

    interface __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension
    {
        CONST_VTBL struct __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtensionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension_INTERFACE_DEFINED__
    
typedef enum __x_ABI_CWindows_CFoundation_CAsyncStatus __x_ABI_CWindows_CFoundation_CAsyncStatus;

typedef struct __x_ABI_CWindows_CFoundation_CDateTime __x_ABI_CWindows_CFoundation_CDateTime;

#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIAsyncAction __x_ABI_CWindows_CFoundation_CIAsyncAction;

#endif // ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIAsyncInfo __x_ABI_CWindows_CFoundation_CIAsyncInfo;

#endif // ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CNetworking_CIHostName_FWD_DEFINED__
#define ____x_ABI_CWindows_CNetworking_CIHostName_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CNetworking_CIHostName __x_ABI_CWindows_CNetworking_CIHostName;

#endif // ____x_ABI_CWindows_CNetworking_CIHostName_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CStorage_CStreams_CIInputStream_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CStreams_CIInputStream_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CStorage_CStreams_CIInputStream __x_ABI_CWindows_CStorage_CStreams_CIInputStream;

#endif // ____x_ABI_CWindows_CStorage_CStreams_CIInputStream_FWD_DEFINED__

typedef enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy;

typedef enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult;

typedef enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages;

typedef enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption;

typedef enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions;

typedef enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel;

enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy
    {
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy_Base = 0,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy_Ssl = 1,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy_NTAuthentication = 2,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy_MicrosoftRoot = 3,
};

enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult
    {
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_Success = 0,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_Untrusted = 1,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_Revoked = 2,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_Expired = 3,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_IncompleteChain = 4,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_InvalidSignature = 5,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_WrongUsage = 6,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_InvalidName = 7,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_InvalidCertificateAuthorityPolicy = 8,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_BasicConstraintsError = 9,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_UnknownCriticalExtension = 10,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_RevocationInformationMissing = 11,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_RevocationFailure = 12,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult_OtherErrors = 13,
};

enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages
    {
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages_None = 0,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages_Decryption = 0x1,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages_Signing = 0x2,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages_KeyAgreement = 0x4,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages_All = 0xffffff,
};

enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption
    {
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption_NotExportable = 0,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption_Exportable = 1,
};

enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions
    {
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions_None = 0,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions_DeleteExpired = 0x1,
};

enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel
    {
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel_NoConsent = 0,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel_ConsentOnly = 1,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel_ConsentWithPassword = 2,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel_ConsentWithFingerprint = 3,
};

enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeySize
    {
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeySize_Invalid = 0,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeySize_Rsa2048 = 2048,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeySize_Rsa4096 = 4096,
};

enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult
    {
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult_Success = 0,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult_InvalidParameter = 1,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult_BadMessage = 2,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult_InvalidSignature = 3,
    __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult_OtherErrors = 4,
};

#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* BuildChainAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* certificates,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain** value);
    HRESULT (STDMETHODCALLTYPE* BuildChainWithParametersAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* certificates,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* parameters,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateChain** value);
    HRESULT (STDMETHODCALLTYPE* get_SerialNumber)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        UINT32* valueLength,
        BYTE** value);
    HRESULT (STDMETHODCALLTYPE* GetHashValue)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        UINT32* valueLength,
        BYTE** value);
    HRESULT (STDMETHODCALLTYPE* GetHashValueWithAlgorithm)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        HSTRING hashAlgorithmName,
        UINT32* valueLength,
        BYTE** value);
    HRESULT (STDMETHODCALLTYPE* GetCertificateBlob)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);
    HRESULT (STDMETHODCALLTYPE* get_Subject)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Issuer)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_HasPrivateKey)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_IsStronglyProtected)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_ValidFrom)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        struct __x_ABI_CWindows_CFoundation_CDateTime* value);
    HRESULT (STDMETHODCALLTYPE* get_ValidTo)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        struct __x_ABI_CWindows_CFoundation_CDateTime* value);
    HRESULT (STDMETHODCALLTYPE* get_EnhancedKeyUsages)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* put_FriendlyName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_FriendlyName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_IsSecurityDeviceBound)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_KeyUsages)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages** value);
    HRESULT (STDMETHODCALLTYPE* get_KeyAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_SignatureAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_SignatureHashAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_SubjectAlternativeName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_IsPerUser)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_StoreName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_KeyStorageProviderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate3_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChainVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Validate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult* status);
    HRESULT (STDMETHODCALLTYPE* ValidateWithParameters)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* parameter,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CChainValidationResult* status);
    HRESULT (STDMETHODCALLTYPE* GetCertificates)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain* This,
        boolean includeRoot,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** certificates);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChainVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChainVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateChain_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateRequestAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* request,
        __x_ABI_C__FIAsyncOperation_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* InstallCertificateAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This,
        HSTRING certificate,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions installOption,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** value);
    HRESULT (STDMETHODCALLTYPE* ImportPfxDataAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics* This,
        HSTRING pfxData,
        HSTRING password,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption exportable,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel keyProtectionLevel,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions installOption,
        HSTRING friendlyName,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStaticsVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_UserCertificateEnrollmentManager)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager** value);
    HRESULT (STDMETHODCALLTYPE* ImportPfxDataToKspAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2* This,
        HSTRING pfxData,
        HSTRING password,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption exportable,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel keyProtectionLevel,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions installOption,
        HSTRING friendlyName,
        HSTRING keyStorageProvider,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* ImportPfxDataToKspWithParametersAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3* This,
        HSTRING pfxData,
        HSTRING password,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* pfxImportParameters,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateEnrollmentManagerStatics3_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtensionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_ObjectId)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_ObjectId)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_IsCritical)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsCritical)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* EncodeValue)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Value)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
        UINT32* valueLength,
        BYTE** value);
    HRESULT (STDMETHODCALLTYPE* put_Value)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension* This,
        UINT32 valueLength,
        BYTE* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtensionVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtensionVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateCertificate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* certBlob,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** certificate);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactoryVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsagesVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_EncipherOnly)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_EncipherOnly)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_CrlSign)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_CrlSign)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_KeyCertificateSign)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyCertificateSign)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_KeyAgreement)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyAgreement)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_DataEncipherment)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_DataEncipherment)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_KeyEncipherment)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyEncipherment)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_NonRepudiation)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_NonRepudiation)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_DigitalSignature)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_DigitalSignature)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages* This,
        boolean value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsagesVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsagesVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateKeyUsages_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQueryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_EnhancedKeyUsages)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_IssuerName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_IssuerName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_FriendlyName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_FriendlyName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Thumbprint)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        UINT32* valueLength,
        BYTE** value);
    HRESULT (STDMETHODCALLTYPE* put_Thumbprint)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        UINT32 valueLength,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_HardwareOnly)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_HardwareOnly)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* This,
        boolean value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQueryVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQueryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_IncludeDuplicates)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IncludeDuplicates)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_IncludeExpiredCertificates)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IncludeExpiredCertificates)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_StoreName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_StoreName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2* This,
        HSTRING value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestPropertiesVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Subject)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Subject)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_KeyAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_KeySize)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        UINT32* value);
    HRESULT (STDMETHODCALLTYPE* put_KeySize)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        UINT32 value);
    HRESULT (STDMETHODCALLTYPE* get_FriendlyName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_FriendlyName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_HashAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_HashAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Exportable)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption* value);
    HRESULT (STDMETHODCALLTYPE* put_Exportable)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption value);
    HRESULT (STDMETHODCALLTYPE* get_KeyUsages)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyUsages)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CEnrollKeyUsages value);
    HRESULT (STDMETHODCALLTYPE* get_KeyProtectionLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyProtectionLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel value);
    HRESULT (STDMETHODCALLTYPE* get_KeyStorageProviderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyStorageProviderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* This,
        HSTRING value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestPropertiesVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestPropertiesVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_SmartcardReaderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_SmartcardReaderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_SigningCertificate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** value);
    HRESULT (STDMETHODCALLTYPE* put_SigningCertificate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* value);
    HRESULT (STDMETHODCALLTYPE* get_AttestationCredentialCertificate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** value);
    HRESULT (STDMETHODCALLTYPE* put_AttestationCredentialCertificate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_CurveName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_CurveName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_CurveParameters)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        UINT32* valueLength,
        BYTE** value);
    HRESULT (STDMETHODCALLTYPE* put_CurveParameters)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        UINT32 valueLength,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_ContainerNamePrefix)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_ContainerNamePrefix)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_ContainerName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_ContainerName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_UseExistingKey)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_UseExistingKey)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3* This,
        boolean value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties3_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_SuppressedDefaults)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_SubjectAlternativeName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo** value);
    HRESULT (STDMETHODCALLTYPE* get_Extensions)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4* This,
        __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificateExtension** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties4_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoreVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Add)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* certificate);
    HRESULT (STDMETHODCALLTYPE* Delete)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* certificate);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoreVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoreVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Name)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* FindAllAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** value);
    HRESULT (STDMETHODCALLTYPE* FindAllWithQueryAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateQuery* query,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** value);
    HRESULT (STDMETHODCALLTYPE* get_TrustedRootCertificationAuthorities)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore** value);
    HRESULT (STDMETHODCALLTYPE* get_IntermediateCertificationAuthorities)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore** value);
    HRESULT (STDMETHODCALLTYPE* GetStoreByName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics* This,
        HSTRING storeName,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStore** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStaticsVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetUserStoreByName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2* This,
        HSTRING storeName,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore** result);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateStoresStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParametersVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_EnhancedKeyUsages)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_ValidationTimestamp)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        struct __x_ABI_CWindows_CFoundation_CDateTime* value);
    HRESULT (STDMETHODCALLTYPE* put_ValidationTimestamp)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        struct __x_ABI_CWindows_CFoundation_CDateTime value);
    HRESULT (STDMETHODCALLTYPE* get_RevocationCheckEnabled)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_RevocationCheckEnabled)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_NetworkRetrievalEnabled)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_NetworkRetrievalEnabled)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_AuthorityInformationAccessEnabled)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_AuthorityInformationAccessEnabled)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_CurrentTimeValidationEnabled)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_CurrentTimeValidationEnabled)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_ExclusiveTrustRoots)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters* This,
        __x_ABI_C__FIVector_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** certificates);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParametersVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParametersVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainBuildingParameters_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParametersVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_CertificateChainPolicy)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy* value);
    HRESULT (STDMETHODCALLTYPE* put_CertificateChainPolicy)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CCertificateChainPolicy value);
    HRESULT (STDMETHODCALLTYPE* get_ServerDnsName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This,
        __x_ABI_CWindows_CNetworking_CIHostName** value);
    HRESULT (STDMETHODCALLTYPE* put_ServerDnsName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters* This,
        __x_ABI_CWindows_CNetworking_CIHostName* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParametersVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParametersVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIChainValidationParameters_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Certificates)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** value);
    HRESULT (STDMETHODCALLTYPE* get_Content)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This,
        UINT32* valueLength,
        BYTE** value);
    HRESULT (STDMETHODCALLTYPE* get_Signers)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo** value);
    HRESULT (STDMETHODCALLTYPE* VerifySignature)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CSignatureValidationResult* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateCmsAttachedSignature)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* inputBlob,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignature** cmsSignedData);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactoryVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GenerateSignatureAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* data,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* signers,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* certificates,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer** outputBlob);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStaticsVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsAttachedSignatureStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Certificates)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** value);
    HRESULT (STDMETHODCALLTYPE* get_Signers)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo** value);
    HRESULT (STDMETHODCALLTYPE* VerifySignatureAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature* This,
        __x_ABI_CWindows_CStorage_CStreams_CIInputStream* data,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CSignatureValidationResult** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateCmsDetachedSignature)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* inputBlob,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignature** cmsSignedData);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactoryVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GenerateSignatureAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics* This,
        __x_ABI_CWindows_CStorage_CStreams_CIInputStream* data,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCmsSignerInfo* signers,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate* certificates,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CStorage__CStreams__CIBuffer** outputBlob);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStaticsVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsDetachedSignatureStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfoVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Certificate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** value);
    HRESULT (STDMETHODCALLTYPE* put_Certificate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* value);
    HRESULT (STDMETHODCALLTYPE* get_HashAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_HashAlgorithmName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_TimestampInfo)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfoVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfoVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsSignerInfo_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfoVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_SigningCertificate)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate** value);
    HRESULT (STDMETHODCALLTYPE* get_Certificates)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CSecurity__CCryptography__CCertificates__CCertificate** value);
    HRESULT (STDMETHODCALLTYPE* get_Timestamp)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo* This,
        struct __x_ABI_CWindows_CFoundation_CDateTime* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfoVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfoVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICmsTimestampInfo_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Rsa)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Dsa)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Ecdh256)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Ecdh384)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Ecdh521)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Ecdsa256)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Ecdsa384)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Ecdsa521)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStaticsVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Ecdsa)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Ecdh)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAlgorithmNamesStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* DecryptTpmAttestationCredentialAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics* This,
        HSTRING credential,
        __x_ABI_C__FIAsyncOperation_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* GetTpmAttestationCredentialId)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics* This,
        HSTRING credential,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStaticsVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* DecryptTpmAttestationCredentialWithContainerNameAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2* This,
        HSTRING credential,
        HSTRING containerName,
        __x_ABI_C__FIAsyncOperation_1_HSTRING** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyAttestationHelperStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_SoftwareKeyStorageProvider)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_SmartcardKeyStorageProvider)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_PlatformKeyStorageProvider)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStaticsVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_PassportKeyStorageProvider)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIKeyStorageProviderNamesStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParametersVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Exportable)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption* value);
    HRESULT (STDMETHODCALLTYPE* put_Exportable)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption value);
    HRESULT (STDMETHODCALLTYPE* get_KeyProtectionLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyProtectionLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel value);
    HRESULT (STDMETHODCALLTYPE* get_InstallOptions)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions* value);
    HRESULT (STDMETHODCALLTYPE* put_InstallOptions)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions value);
    HRESULT (STDMETHODCALLTYPE* get_FriendlyName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_FriendlyName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_KeyStorageProviderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_KeyStorageProviderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_ContainerNamePrefix)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_ContainerNamePrefix)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_ReaderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_ReaderName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* This,
        HSTRING value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParametersVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParametersVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Personal)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_TrustedRootCertificationAuthorities)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_IntermediateCertificationAuthorities)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStaticsVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIStandardCertificateStoreNamesStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfoVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_EmailName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_IPAddress)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_Url)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_DnsName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_DistinguishedName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_PrincipalName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfoVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfoVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_EmailNames)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_IPAddresses)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_Urls)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_DnsNames)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_DistinguishedNames)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_PrincipalNames)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
        __x_ABI_C__FIVector_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_Extension)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateExtension** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CISubjectAlternativeNameInfo2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManagerVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateRequestAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificateRequestProperties* request,
        __x_ABI_C__FIAsyncOperation_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* InstallCertificateAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This,
        HSTRING certificate,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions installOption,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** value);
    HRESULT (STDMETHODCALLTYPE* ImportPfxDataAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This,
        HSTRING pfxData,
        HSTRING password,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption exportable,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel keyProtectionLevel,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions installOption,
        HSTRING friendlyName,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** value);
    HRESULT (STDMETHODCALLTYPE* ImportPfxDataToKspAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager* This,
        HSTRING pfxData,
        HSTRING password,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CExportOption exportable,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CKeyProtectionLevel keyProtectionLevel,
        enum __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CInstallOptions installOption,
        HSTRING friendlyName,
        HSTRING keyStorageProvider,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManagerVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManagerVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* ImportPfxDataToKspWithParametersAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2* This,
        HSTRING pfxData,
        HSTRING password,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIPfxImportParameters* pfxImportParameters,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2Vtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateEnrollmentManager2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStoreVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* RequestAddAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* certificate,
        __x_ABI_C__FIAsyncOperation_1_boolean** result);
    HRESULT (STDMETHODCALLTYPE* RequestDeleteAsync)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This,
        __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CICertificate* certificate,
        __x_ABI_C__FIAsyncOperation_1_boolean** result);
    HRESULT (STDMETHODCALLTYPE* get_Name)(__x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStoreVtbl;

    interface __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore
    {
        CONST_VTBL struct __x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStoreVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore;
#endif /* !defined(____x_ABI_CWindows_CSecurity_CCryptography_CCertificates_CIUserCertificateStore_INTERFACE_DEFINED__) */
    
