#pragma autorecover
#pragma classflags(64)
#pragma namespace("\\\\.\\root\\Microsoft\\Windows\\Attestation")
instance of __namespace{ name="MS_809";};
#pragma namespace("\\\\.\\root\\Microsoft\\Windows\\Attestation\\MS_809")

[ClassVersion("1.0") : Amended,Description("The class presents Attestation result.") : Amended ToSubclass,AMENDMENT, LOCALE("MS_809")] 
class MSFT_AttestationResult
{
  [Description("The URL to the Attestation Service used to satisfy a request.") : Amended ToSubclass] string Url;
  [Values{"Unknown", "VSMIdentityEncryptionKeyCertificate", "VSMIdentitySigningKeyCertificate"} : Amended ToSubclass,Description("The type of the retrieved certificate if the attestation succeeded.") : Amended ToSubclass] uint16 Type;
  [Description("The raw data of the retrieved certificate if the attestation succeeded.") : Amended ToSubclass] uint8 Data[];
  [Values{"NotConfigured", "Passed", "Expired", "TransientError", "UnauthorizedHost", "TpmError", "InsecureHostConfiguration"} : Amended ToSubclass,Description("The Attestation status.") : Amended ToSubclass] uint16 AttestationStatus;
  [BitValues{"NoInformation", "SecureBoot", "DebugMode", "CodeIntegrityPolicy", "FullBoot", "HostUnreachable", "ServiceUnavailable", "AuthenticationFailure", "TcgLogVerification", "VirtualSecureMode", "SecureBootSettings", "BitLocker", "Iommu", "PagefileEncryption", "HypervisorEnforcedCodeIntegrityPolicy", "UnsupportedHardware", "HibernationEnabled", "DumpsEnabled", "DumpEncryption", "DumpEncryptionKey"} : Amended ToSubclass,Description("The Attestation substatus.") : Amended ToSubclass] uint64 AttestationSubstatus;
};

[ClassVersion("1.0") : Amended,Description("The class manages Vsm Idk_E Certificate.") : Amended ToSubclass,AMENDMENT, LOCALE("MS_809")] 
class MSFT_VsmIdkEncryptionCertificate
{
  [Description("Retrieves the Vsm Idk_E Certificate.") : Amended ToSubclass] uint32 Get([In,Description("URL of the Attestation Server.") : Amended ToSubclass] string AttestationServerUrl,[In,Description("Force re-attestation.") : Amended ToSubclass] boolean Force,[Out,Description("Vsm Idk_E Certificate.") : Amended ToSubclass] MSFT_AttestationResult cmdletOutput);
};

[ClassVersion("1.0") : Amended,Description("The class manages Vsm Idk_S Certificate.") : Amended ToSubclass,AMENDMENT, LOCALE("MS_809")] 
class MSFT_VsmIdkSigningCertificate
{
  [Description("Retrieves the Vsm Idk_S Certificate.") : Amended ToSubclass] uint32 Get([In,Description("URL of the Attestation Server.") : Amended ToSubclass] string AttestationServerUrl,[In,Description("Force re-attestation.") : Amended ToSubclass] boolean Force,[Out,Description("Vsm Idk_S Certificate.") : Amended ToSubclass] MSFT_AttestationResult cmdletOutput);
};
