// // Copyright (c) Microsoft Corporation. All rights reserved. // // // File generated by WinMDIDL version 8.00.0021 // import "inspectable.idl"; import "AsyncInfo.idl"; import "EventToken.idl"; import "windowscontracts.idl"; import "Windows.Foundation.idl"; import "Windows.Security.Cryptography.Core.idl"; import "Windows.Storage.Streams.idl"; // Forward Declare namespace Windows { namespace Foundation { namespace Collections { runtimeclass ValueSet; } } } namespace Windows { namespace Foundation { typedef struct DateTime DateTime; interface IAsyncAction; interface IClosable; apicontract UniversalApiContract; } } namespace Windows { namespace Security { namespace Cryptography { namespace Core { typedef enum CryptographicPublicKeyBlobType CryptographicPublicKeyBlobType; } } } } namespace Windows { namespace Storage { namespace Streams { interface IBuffer; interface IRandomAccessStreamReference; } } } namespace Windows { namespace Devices { namespace SmartCards { apicontract SmartCardBackgroundTriggerContract; apicontract SmartCardEmulatorContract; typedef enum SmartCardActivationPolicyChangeResult SmartCardActivationPolicyChangeResult; typedef enum SmartCardAppletIdGroupActivationPolicy SmartCardAppletIdGroupActivationPolicy; typedef enum SmartCardAutomaticResponseStatus SmartCardAutomaticResponseStatus; typedef enum SmartCardCryptogramAlgorithm SmartCardCryptogramAlgorithm; typedef enum SmartCardCryptogramGeneratorOperationStatus SmartCardCryptogramGeneratorOperationStatus; typedef enum SmartCardCryptogramMaterialPackageConfirmationResponseFormat SmartCardCryptogramMaterialPackageConfirmationResponseFormat; typedef enum SmartCardCryptogramMaterialPackageFormat SmartCardCryptogramMaterialPackageFormat; typedef enum SmartCardCryptogramMaterialProtectionMethod SmartCardCryptogramMaterialProtectionMethod; typedef enum SmartCardCryptogramMaterialType SmartCardCryptogramMaterialType; typedef enum SmartCardCryptogramPlacementOptions SmartCardCryptogramPlacementOptions; typedef enum SmartCardCryptogramStorageKeyAlgorithm SmartCardCryptogramStorageKeyAlgorithm; typedef enum SmartCardCryptogramStorageKeyCapabilities SmartCardCryptogramStorageKeyCapabilities; typedef enum SmartCardCryptographicKeyAttestationStatus SmartCardCryptographicKeyAttestationStatus; typedef enum SmartCardEmulationCategory SmartCardEmulationCategory; typedef enum SmartCardEmulationType SmartCardEmulationType; typedef enum SmartCardEmulatorConnectionDeactivatedReason SmartCardEmulatorConnectionDeactivatedReason; typedef enum SmartCardEmulatorConnectionSource SmartCardEmulatorConnectionSource; typedef enum SmartCardEmulatorEnablementPolicy SmartCardEmulatorEnablementPolicy; typedef enum SmartCardLaunchBehavior SmartCardLaunchBehavior; typedef enum SmartCardPinCharacterPolicyOption SmartCardPinCharacterPolicyOption; typedef enum SmartCardReaderKind SmartCardReaderKind; typedef enum SmartCardReaderStatus SmartCardReaderStatus; typedef enum SmartCardStatus SmartCardStatus; typedef enum SmartCardTriggerType SmartCardTriggerType; typedef enum SmartCardUnlockPromptingBehavior SmartCardUnlockPromptingBehavior; delegate SmartCardPinResetHandler; interface ICardAddedEventArgs; interface ICardRemovedEventArgs; interface IKnownSmartCardAppletIds; interface ISmartCard; interface ISmartCardAppletIdGroup; interface ISmartCardAppletIdGroup2; interface ISmartCardAppletIdGroupFactory; interface ISmartCardAppletIdGroupRegistration; interface ISmartCardAppletIdGroupRegistration2; interface ISmartCardAppletIdGroupStatics; interface ISmartCardAutomaticResponseApdu; interface ISmartCardAutomaticResponseApdu2; interface ISmartCardAutomaticResponseApdu3; interface ISmartCardAutomaticResponseApduFactory; interface ISmartCardChallengeContext; interface ISmartCardConnect; interface ISmartCardConnection; interface ISmartCardCryptogramGenerator; interface ISmartCardCryptogramGenerator2; interface ISmartCardCryptogramGeneratorStatics; interface ISmartCardCryptogramGeneratorStatics2; interface ISmartCardCryptogramGetAllCryptogramMaterialCharacteristicsResult; interface ISmartCardCryptogramGetAllCryptogramMaterialPackageCharacteristicsResult; interface ISmartCardCryptogramGetAllCryptogramStorageKeyCharacteristicsResult; interface ISmartCardCryptogramMaterialCharacteristics; interface ISmartCardCryptogramMaterialPackageCharacteristics; interface ISmartCardCryptogramMaterialPossessionProof; interface ISmartCardCryptogramPlacementStep; interface ISmartCardCryptogramStorageKeyCharacteristics; interface ISmartCardCryptogramStorageKeyInfo; interface ISmartCardCryptogramStorageKeyInfo2; interface ISmartCardEmulator; interface ISmartCardEmulator2; interface ISmartCardEmulatorApduReceivedEventArgs; interface ISmartCardEmulatorApduReceivedEventArgs2; interface ISmartCardEmulatorApduReceivedEventArgsWithCryptograms; interface ISmartCardEmulatorConnectionDeactivatedEventArgs; interface ISmartCardEmulatorConnectionProperties; interface ISmartCardEmulatorStatics; interface ISmartCardEmulatorStatics2; interface ISmartCardEmulatorStatics3; interface ISmartCardPinPolicy; interface ISmartCardPinResetDeferral; interface ISmartCardPinResetRequest; interface ISmartCardProvisioning; interface ISmartCardProvisioning2; interface ISmartCardProvisioningStatics; interface ISmartCardProvisioningStatics2; interface ISmartCardReader; interface ISmartCardReaderStatics; interface ISmartCardTriggerDetails; interface ISmartCardTriggerDetails2; interface ISmartCardTriggerDetails3; runtimeclass CardAddedEventArgs; runtimeclass CardRemovedEventArgs; runtimeclass KnownSmartCardAppletIds; runtimeclass SmartCard; runtimeclass SmartCardAppletIdGroup; runtimeclass SmartCardAppletIdGroupRegistration; runtimeclass SmartCardAutomaticResponseApdu; runtimeclass SmartCardChallengeContext; runtimeclass SmartCardConnection; runtimeclass SmartCardCryptogramGenerator; runtimeclass SmartCardCryptogramGetAllCryptogramMaterialCharacteristicsResult; runtimeclass SmartCardCryptogramGetAllCryptogramMaterialPackageCharacteristicsResult; runtimeclass SmartCardCryptogramGetAllCryptogramStorageKeyCharacteristicsResult; runtimeclass SmartCardCryptogramMaterialCharacteristics; runtimeclass SmartCardCryptogramMaterialPackageCharacteristics; runtimeclass SmartCardCryptogramMaterialPossessionProof; runtimeclass SmartCardCryptogramPlacementStep; runtimeclass SmartCardCryptogramStorageKeyCharacteristics; runtimeclass SmartCardCryptogramStorageKeyInfo; runtimeclass SmartCardEmulator; runtimeclass SmartCardEmulatorApduReceivedEventArgs; runtimeclass SmartCardEmulatorConnectionDeactivatedEventArgs; runtimeclass SmartCardEmulatorConnectionProperties; runtimeclass SmartCardPinPolicy; runtimeclass SmartCardPinResetDeferral; runtimeclass SmartCardPinResetRequest; runtimeclass SmartCardProvisioning; runtimeclass SmartCardReader; runtimeclass SmartCardTriggerDetails; } } } // Generic instantiations namespace Windows { namespace Devices { namespace SmartCards { declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation*>; interface Windows.Foundation.IAsyncOperation*>; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; interface Windows.Foundation.TypedEventHandler; } } } } // Type definition namespace Windows { namespace Devices { namespace SmartCards { [contractversion(3.0)] apicontract SmartCardBackgroundTriggerContract { } [contractversion(6.0)] apicontract SmartCardEmulatorContract { } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] enum SmartCardActivationPolicyChangeResult { Denied = 0, Allowed = 1 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] enum SmartCardAppletIdGroupActivationPolicy { Disabled = 0, ForegroundOverride = 1, Enabled = 2 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] enum SmartCardAutomaticResponseStatus { None = 0, Success = 1, UnknownError = 2 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] enum SmartCardCryptogramAlgorithm { None = 0, CbcMac = 1, Cvc3Umd = 2, DecimalizedMsd = 3, Cvc3MD = 4, Sha1 = 5, SignedDynamicApplicationData = 6, RsaPkcs1 = 7, [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] Sha256Hmac = 8 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] enum SmartCardCryptogramGeneratorOperationStatus { Success = 0, AuthorizationFailed = 1, AuthorizationCanceled = 2, AuthorizationRequired = 3, CryptogramMaterialPackageStorageKeyExists = 4, NoCryptogramMaterialPackageStorageKey = 5, NoCryptogramMaterialPackage = 6, UnsupportedCryptogramMaterialPackage = 7, UnknownCryptogramMaterialName = 8, InvalidCryptogramMaterialUsage = 9, ApduResponseNotSent = 10, OtherError = 11, [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] ValidationFailed = 12, [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 5.0)] NotSupported = 13 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] enum SmartCardCryptogramMaterialPackageConfirmationResponseFormat { None = 0, VisaHmac = 1 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] enum SmartCardCryptogramMaterialPackageFormat { None = 0, JweRsaPki = 1 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] enum SmartCardCryptogramMaterialProtectionMethod { None = 0, WhiteBoxing = 1 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] enum SmartCardCryptogramMaterialType { None = 0, StaticDataAuthentication = 1, TripleDes112 = 2, Aes = 3, RsaPkcs1 = 4 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [flags] enum SmartCardCryptogramPlacementOptions { None = 0x0, UnitsAreInNibbles = 0x1, ChainOutput = 0x2 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] enum SmartCardCryptogramStorageKeyAlgorithm { None = 0, Rsa2048 = 1 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [flags] enum SmartCardCryptogramStorageKeyCapabilities { None = 0x0, HardwareProtection = 0x1, UnlockPrompt = 0x2 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] enum SmartCardCryptographicKeyAttestationStatus { NoAttestation = 0, SoftwareKeyWithoutTpm = 1, SoftwareKeyWithTpm = 2, TpmKeyUnknownAttestationStatus = 3, TpmKeyWithoutAttestationCapability = 4, TpmKeyWithTemporaryAttestationFailure = 5, TpmKeyWithLongTermAttestationFailure = 6, TpmKeyWithAttestation = 7 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] enum SmartCardEmulationCategory { Other = 0, Payment = 1 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] enum SmartCardEmulationType { Host = 0, Uicc = 1, [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 3.0)] EmbeddedSE = 2 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] enum SmartCardEmulatorConnectionDeactivatedReason { ConnectionLost = 0, ConnectionRedirected = 1 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] enum SmartCardEmulatorConnectionSource { Unknown = 0, NfcReader = 1 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] enum SmartCardEmulatorEnablementPolicy { Never = 0, Always = 1, ScreenOn = 2, ScreenUnlocked = 3 }; [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 1.0)] enum SmartCardLaunchBehavior { Default = 0, AboveLock = 1 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum SmartCardPinCharacterPolicyOption { Allow = 0, RequireAtLeastOne = 1, Disallow = 2 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum SmartCardReaderKind { Any = 0, Generic = 1, Tpm = 2, Nfc = 3, Uicc = 4, [contract(Windows.Foundation.UniversalApiContract, 3.0)] EmbeddedSE = 5 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum SmartCardReaderStatus { Disconnected = 0, Ready = 1, Exclusive = 2 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] enum SmartCardStatus { Disconnected = 0, Ready = 1, Shared = 2, Exclusive = 3, Unresponsive = 4 }; [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 1.0)] enum SmartCardTriggerType { EmulatorTransaction = 0, EmulatorNearFieldEntry = 1, EmulatorNearFieldExit = 2, [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 1.0)] EmulatorHostApplicationActivated = 3, [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 1.0)] EmulatorAppletIdGroupRegistrationChanged = 4, [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 2.0)] ReaderCardAdded = 5 }; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] enum SmartCardUnlockPromptingBehavior { AllowUnlockPrompt = 0, RequireUnlockPrompt = 1, PreventUnlockPrompt = 2 }; [contract(Windows.Foundation.UniversalApiContract, 1.0)] [uuid(138D5E40-F3BC-4A5C-B41D-4B4EF684E237)] delegate HRESULT SmartCardPinResetHandler([in] Windows.Devices.SmartCards.SmartCardProvisioning* sender, [in] Windows.Devices.SmartCards.SmartCardPinResetRequest* request); [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.CardAddedEventArgs)] [uuid(18BBEF98-F18B-4DD3-B118-DFB2C8E23CC6)] interface ICardAddedEventArgs : IInspectable { [propget] HRESULT SmartCard([out] [retval] Windows.Devices.SmartCards.SmartCard** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.CardRemovedEventArgs)] [uuid(15331AAF-22D7-4945-AFC9-03B46F42A6CD)] interface ICardRemovedEventArgs : IInspectable { [propget] HRESULT SmartCard([out] [retval] Windows.Devices.SmartCards.SmartCard** value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 6.0)] [exclusiveto(Windows.Devices.SmartCards.KnownSmartCardAppletIds)] [uuid(7B04D8D8-95B4-4C88-8CEA-411E55511EFC)] interface IKnownSmartCardAppletIds : IInspectable { [propget] HRESULT PaymentSystemEnvironment([out] [retval] Windows.Storage.Streams.IBuffer** value); [propget] HRESULT ProximityPaymentSystemEnvironment([out] [retval] Windows.Storage.Streams.IBuffer** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCard)] [uuid(1B718871-6434-43F4-B55A-6A29623870AA)] interface ISmartCard : IInspectable { [propget] HRESULT Reader([out] [retval] Windows.Devices.SmartCards.SmartCardReader** value); HRESULT GetStatusAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT GetAnswerToResetAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAppletIdGroup)] [uuid(7DB165E6-6264-56F4-5E03-C86385395EB1)] interface ISmartCardAppletIdGroup : IInspectable { [propget] HRESULT DisplayName([out] [retval] HSTRING* value); [propput] HRESULT DisplayName([in] HSTRING value); [propget] HRESULT AppletIds([out] [retval] Windows.Foundation.Collections.IVector** value); [propget] HRESULT SmartCardEmulationCategory([out] [retval] Windows.Devices.SmartCards.SmartCardEmulationCategory* value); [propput] HRESULT SmartCardEmulationCategory([in] Windows.Devices.SmartCards.SmartCardEmulationCategory value); [propget] HRESULT SmartCardEmulationType([out] [retval] Windows.Devices.SmartCards.SmartCardEmulationType* value); [propput] HRESULT SmartCardEmulationType([in] Windows.Devices.SmartCards.SmartCardEmulationType value); [propget] HRESULT AutomaticEnablement([out] [retval] boolean* value); [propput] HRESULT AutomaticEnablement([in] boolean value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 6.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAppletIdGroup)] [uuid(6B0EF9DC-9956-4A62-8D4E-D37A68EBC3A6)] interface ISmartCardAppletIdGroup2 : IInspectable { [propget] HRESULT Logo([out] [retval] Windows.Storage.Streams.IRandomAccessStreamReference** value); [propput] HRESULT Logo([in] Windows.Storage.Streams.IRandomAccessStreamReference* value); [propget] HRESULT Description([out] [retval] HSTRING* value); [propput] HRESULT Description([in] HSTRING value); [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.ValueSet** value); [propget] HRESULT SecureUserAuthenticationRequired([out] [retval] boolean* value); [propput] HRESULT SecureUserAuthenticationRequired([in] boolean value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAppletIdGroup)] [uuid(9105EB4D-4A65-4E41-8061-CBE83F3695E5)] interface ISmartCardAppletIdGroupFactory : IInspectable { HRESULT Create([in] HSTRING displayName, [in] Windows.Foundation.Collections.IVector* appletIds, [in] Windows.Devices.SmartCards.SmartCardEmulationCategory emulationCategory, [in] Windows.Devices.SmartCards.SmartCardEmulationType emulationType, [out] [retval] Windows.Devices.SmartCards.SmartCardAppletIdGroup** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAppletIdGroupRegistration)] [uuid(DF1208D1-31BB-5596-43B1-6D69A0257B3A)] interface ISmartCardAppletIdGroupRegistration : IInspectable { [propget] HRESULT ActivationPolicy([out] [retval] Windows.Devices.SmartCards.SmartCardAppletIdGroupActivationPolicy* value); [propget] HRESULT AppletIdGroup([out] [retval] Windows.Devices.SmartCards.SmartCardAppletIdGroup** value); HRESULT RequestActivationPolicyChangeAsync([in] Windows.Devices.SmartCards.SmartCardAppletIdGroupActivationPolicy policy, [out] [retval] Windows.Foundation.IAsyncOperation** result); [propget] HRESULT Id([out] [retval] GUID* value); HRESULT SetAutomaticResponseApdusAsync([in] Windows.Foundation.Collections.IIterable* apdus, [out] [retval] Windows.Foundation.IAsyncAction** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 6.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAppletIdGroupRegistration)] [uuid(5F5508D8-98A7-4F2E-91D9-6CFCCEDA407F)] interface ISmartCardAppletIdGroupRegistration2 : IInspectable { [propget] HRESULT SmartCardReaderId([out] [retval] HSTRING* value); HRESULT SetPropertiesAsync([in] Windows.Foundation.Collections.ValueSet* props, [out] [retval] Windows.Foundation.IAsyncAction** operation); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAppletIdGroup)] [uuid(AB2899A9-E76C-45CF-BF1D-90EAA6205927)] interface ISmartCardAppletIdGroupStatics : IInspectable { [propget] HRESULT MaxAppletIds([out] [retval] UINT16* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAutomaticResponseApdu)] [uuid(52152BAB-C63E-4531-A857-D756D99B986A)] interface ISmartCardAutomaticResponseApdu : IInspectable { [propget] HRESULT CommandApdu([out] [retval] Windows.Storage.Streams.IBuffer** value); [propput] HRESULT CommandApdu([in] Windows.Storage.Streams.IBuffer* value); [propget] HRESULT CommandApduBitMask([out] [retval] Windows.Storage.Streams.IBuffer** value); [propput] HRESULT CommandApduBitMask([in] Windows.Storage.Streams.IBuffer* value); [propget] HRESULT ShouldMatchLength([out] [retval] boolean* value); [propput] HRESULT ShouldMatchLength([in] boolean value); [propget] HRESULT AppletId([out] [retval] Windows.Storage.Streams.IBuffer** value); [propput] HRESULT AppletId([in] Windows.Storage.Streams.IBuffer* value); [propget] HRESULT ResponseApdu([out] [retval] Windows.Storage.Streams.IBuffer** value); [propput] HRESULT ResponseApdu([in] Windows.Storage.Streams.IBuffer* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAutomaticResponseApdu)] [uuid(44AEBB14-559D-4531-4E51-89DB6FA8A57A)] interface ISmartCardAutomaticResponseApdu2 : IInspectable { [propget] HRESULT InputState([out] [retval] Windows.Foundation.IReference** value); [propput] HRESULT InputState([in] Windows.Foundation.IReference* value); [propget] HRESULT OutputState([out] [retval] Windows.Foundation.IReference** value); [propput] HRESULT OutputState([in] Windows.Foundation.IReference* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 3.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAutomaticResponseApdu)] [uuid(BF43DA74-6576-4392-9367-FE3BC9E2D496)] interface ISmartCardAutomaticResponseApdu3 : IInspectable { [propget] HRESULT AllowWhenCryptogramGeneratorNotPrepared([out] [retval] boolean* value); [propput] HRESULT AllowWhenCryptogramGeneratorNotPrepared([in] boolean value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardAutomaticResponseApdu)] [uuid(E97EA2FA-D02C-4C55-B02A-8CFF7FA9F05B)] interface ISmartCardAutomaticResponseApduFactory : IInspectable { HRESULT Create([in] Windows.Storage.Streams.IBuffer* commandApdu, [in] Windows.Storage.Streams.IBuffer* responseApdu, [out] [retval] Windows.Devices.SmartCards.SmartCardAutomaticResponseApdu** result); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardChallengeContext)] [uuid(192A5319-C9C4-4947-81CC-44794A61EF91)] interface ISmartCardChallengeContext : IInspectable requires Windows.Foundation.IClosable { [propget] HRESULT Challenge([out] [retval] Windows.Storage.Streams.IBuffer** value); HRESULT VerifyResponseAsync([in] Windows.Storage.Streams.IBuffer* response, [out] [retval] Windows.Foundation.IAsyncOperation** result); [overload("ProvisionAsync")] HRESULT ProvisionAsync([in] Windows.Storage.Streams.IBuffer* response, [in] boolean formatCard, [out] [retval] Windows.Foundation.IAsyncAction** result); [overload("ProvisionAsync")] HRESULT ProvisionAsyncWithNewCardId([in] Windows.Storage.Streams.IBuffer* response, [in] boolean formatCard, [in] GUID newCardId, [out] [retval] Windows.Foundation.IAsyncAction** result); HRESULT ChangeAdministrativeKeyAsync([in] Windows.Storage.Streams.IBuffer* response, [in] Windows.Storage.Streams.IBuffer* newAdministrativeKey, [out] [retval] Windows.Foundation.IAsyncAction** result); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCard)] [uuid(2FDF87E5-028D-491E-A058-3382C3986F40)] interface ISmartCardConnect : IInspectable { HRESULT ConnectAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardConnection)] [uuid(7EDB991A-A81A-47BC-A649-156BE6B7F231)] interface ISmartCardConnection : IInspectable requires Windows.Foundation.IClosable { HRESULT TransmitAsync([in] Windows.Storage.Streams.IBuffer* command, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramGenerator)] [uuid(E39F587B-EDD3-4E49-B594-0FF5E4D0C76F)] interface ISmartCardCryptogramGenerator : IInspectable { [propget] HRESULT SupportedCryptogramMaterialTypes([out] [retval] Windows.Foundation.Collections.IVectorView** result); [propget] HRESULT SupportedCryptogramAlgorithms([out] [retval] Windows.Foundation.Collections.IVectorView** result); [propget] HRESULT SupportedCryptogramMaterialPackageFormats([out] [retval] Windows.Foundation.Collections.IVectorView** result); [propget] HRESULT SupportedCryptogramMaterialPackageConfirmationResponseFormats([out] [retval] Windows.Foundation.Collections.IVectorView** result); [propget] HRESULT SupportedSmartCardCryptogramStorageKeyCapabilities([out] [retval] Windows.Foundation.Collections.IVectorView** result); HRESULT DeleteCryptogramMaterialStorageKeyAsync([in] HSTRING storageKeyName, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT CreateCryptogramMaterialStorageKeyAsync([in] Windows.Devices.SmartCards.SmartCardUnlockPromptingBehavior promptingBehavior, [in] HSTRING storageKeyName, [in] Windows.Devices.SmartCards.SmartCardCryptogramStorageKeyAlgorithm algorithm, [in] Windows.Devices.SmartCards.SmartCardCryptogramStorageKeyCapabilities capabilities, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT RequestCryptogramMaterialStorageKeyInfoAsync([in] Windows.Devices.SmartCards.SmartCardUnlockPromptingBehavior promptingBehavior, [in] HSTRING storageKeyName, [in] Windows.Security.Cryptography.Core.CryptographicPublicKeyBlobType format, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT ImportCryptogramMaterialPackageAsync([in] Windows.Devices.SmartCards.SmartCardCryptogramMaterialPackageFormat format, [in] HSTRING storageKeyName, [in] HSTRING materialPackageName, [in] Windows.Storage.Streams.IBuffer* cryptogramMaterialPackage, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT TryProvePossessionOfCryptogramMaterialPackageAsync([in] Windows.Devices.SmartCards.SmartCardUnlockPromptingBehavior promptingBehavior, [in] Windows.Devices.SmartCards.SmartCardCryptogramMaterialPackageConfirmationResponseFormat responseFormat, [in] HSTRING materialPackageName, [in] HSTRING materialName, [in] Windows.Storage.Streams.IBuffer* challenge, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT RequestUnlockCryptogramMaterialForUseAsync([in] Windows.Devices.SmartCards.SmartCardUnlockPromptingBehavior promptingBehavior, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT DeleteCryptogramMaterialPackageAsync([in] HSTRING materialPackageName, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramGenerator)] [uuid(7116AA34-5D6D-4B4A-96A3-EFA47D2A7E25)] interface ISmartCardCryptogramGenerator2 : IInspectable { HRESULT ValidateRequestApduAsync([in] Windows.Devices.SmartCards.SmartCardUnlockPromptingBehavior promptingBehavior, [in] Windows.Storage.Streams.IBuffer* apduToValidate, [in] Windows.Foundation.Collections.IIterable* cryptogramPlacementSteps, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT GetAllCryptogramStorageKeyCharacteristicsAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); [overload("GetAllCryptogramMaterialPackageCharacteristicsAsync")] HRESULT GetAllCryptogramMaterialPackageCharacteristicsAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); [overload("GetAllCryptogramMaterialPackageCharacteristicsAsync")] HRESULT GetAllCryptogramMaterialPackageCharacteristicsWithStorageKeyAsync([in] HSTRING storageKeyName, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT GetAllCryptogramMaterialCharacteristicsAsync([in] Windows.Devices.SmartCards.SmartCardUnlockPromptingBehavior promptingBehavior, [in] HSTRING materialPackageName, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramGenerator)] [uuid(09933910-CB9C-4015-967D-5234F3B02900)] interface ISmartCardCryptogramGeneratorStatics : IInspectable { HRESULT GetSmartCardCryptogramGeneratorAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 5.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramGenerator)] [uuid(09BDF5E5-B4BD-4E23-A588-74469204C128)] interface ISmartCardCryptogramGeneratorStatics2 : IInspectable { HRESULT IsSupported([out] [retval] boolean* result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramGetAllCryptogramMaterialCharacteristicsResult)] [uuid(2798E029-D687-4C92-86C6-399E9A0ECB09)] interface ISmartCardCryptogramGetAllCryptogramMaterialCharacteristicsResult : IInspectable { [propget] HRESULT OperationStatus([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramGeneratorOperationStatus* value); [propget] HRESULT Characteristics([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramGetAllCryptogramMaterialPackageCharacteristicsResult)] [uuid(4E6A8A5C-9773-46C4-A32F-B1E543159E04)] interface ISmartCardCryptogramGetAllCryptogramMaterialPackageCharacteristicsResult : IInspectable { [propget] HRESULT OperationStatus([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramGeneratorOperationStatus* value); [propget] HRESULT Characteristics([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramGetAllCryptogramStorageKeyCharacteristicsResult)] [uuid(8C7CE857-A7E7-489D-B9D6-368061515012)] interface ISmartCardCryptogramGetAllCryptogramStorageKeyCharacteristicsResult : IInspectable { [propget] HRESULT OperationStatus([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramGeneratorOperationStatus* value); [propget] HRESULT Characteristics([out] [retval] Windows.Foundation.Collections.IVectorView** value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramMaterialCharacteristics)] [uuid(FC9AC5CC-C1D7-4153-923B-A2D43C6C8D49)] interface ISmartCardCryptogramMaterialCharacteristics : IInspectable { [propget] HRESULT MaterialName([out] [retval] HSTRING* value); [propget] HRESULT AllowedAlgorithms([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT AllowedProofOfPossessionAlgorithms([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT AllowedValidations([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT MaterialType([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramMaterialType* value); [propget] HRESULT ProtectionMethod([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramMaterialProtectionMethod* value); [propget] HRESULT ProtectionVersion([out] [retval] INT32* value); [propget] HRESULT MaterialLength([out] [retval] INT32* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramMaterialPackageCharacteristics)] [uuid(FFB58E1F-0692-4C47-93CF-34D91F9DCD00)] interface ISmartCardCryptogramMaterialPackageCharacteristics : IInspectable { [propget] HRESULT PackageName([out] [retval] HSTRING* value); [propget] HRESULT StorageKeyName([out] [retval] HSTRING* value); [propget] HRESULT DateImported([out] [retval] Windows.Foundation.DateTime* value); [propget] HRESULT PackageFormat([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramMaterialPackageFormat* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramMaterialPossessionProof)] [uuid(E5B9AB8C-A141-4135-9ADD-B0D2E3AA1FC9)] interface ISmartCardCryptogramMaterialPossessionProof : IInspectable { [propget] HRESULT OperationStatus([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramGeneratorOperationStatus* value); [propget] HRESULT Proof([out] [retval] Windows.Storage.Streams.IBuffer** value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramPlacementStep)] [uuid(947B03EB-8342-4792-A2E5-925636378A53)] interface ISmartCardCryptogramPlacementStep : IInspectable { [propget] HRESULT Algorithm([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramAlgorithm* value); [propput] HRESULT Algorithm([in] Windows.Devices.SmartCards.SmartCardCryptogramAlgorithm value); [propget] HRESULT SourceData([out] [retval] Windows.Storage.Streams.IBuffer** value); [propput] HRESULT SourceData([in] Windows.Storage.Streams.IBuffer* value); [propget] HRESULT CryptogramMaterialPackageName([out] [retval] HSTRING* value); [propput] HRESULT CryptogramMaterialPackageName([in] HSTRING value); [propget] HRESULT CryptogramMaterialName([out] [retval] HSTRING* value); [propput] HRESULT CryptogramMaterialName([in] HSTRING value); [propget] HRESULT TemplateOffset([out] [retval] INT32* value); [propput] HRESULT TemplateOffset([in] INT32 value); [propget] HRESULT CryptogramOffset([out] [retval] INT32* value); [propput] HRESULT CryptogramOffset([in] INT32 value); [propget] HRESULT CryptogramLength([out] [retval] INT32* value); [propput] HRESULT CryptogramLength([in] INT32 value); [propget] HRESULT CryptogramPlacementOptions([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramPlacementOptions* value); [propput] HRESULT CryptogramPlacementOptions([in] Windows.Devices.SmartCards.SmartCardCryptogramPlacementOptions value); [propget] HRESULT ChainedOutputStep([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramPlacementStep** value); [propput] HRESULT ChainedOutputStep([in] Windows.Devices.SmartCards.SmartCardCryptogramPlacementStep* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramStorageKeyCharacteristics)] [uuid(8552546E-4457-4825-B464-635471A39F5C)] interface ISmartCardCryptogramStorageKeyCharacteristics : IInspectable { [propget] HRESULT StorageKeyName([out] [retval] HSTRING* value); [propget] HRESULT DateCreated([out] [retval] Windows.Foundation.DateTime* value); [propget] HRESULT Algorithm([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramStorageKeyAlgorithm* value); [propget] HRESULT Capabilities([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramStorageKeyCapabilities* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramStorageKeyInfo)] [uuid(77B0F00D-B097-4F61-A26A-9561639C9C3A)] interface ISmartCardCryptogramStorageKeyInfo : IInspectable { [propget] HRESULT OperationStatus([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramGeneratorOperationStatus* value); [propget] HRESULT PublicKeyBlobType([out] [retval] Windows.Security.Cryptography.Core.CryptographicPublicKeyBlobType* value); [propget] HRESULT PublicKey([out] [retval] Windows.Storage.Streams.IBuffer** value); [propget] HRESULT AttestationStatus([out] [retval] Windows.Devices.SmartCards.SmartCardCryptographicKeyAttestationStatus* value); [propget] HRESULT Attestation([out] [retval] Windows.Storage.Streams.IBuffer** value); [propget] HRESULT AttestationCertificateChain([out] [retval] Windows.Storage.Streams.IBuffer** value); [propget] HRESULT Capabilities([out] [retval] Windows.Devices.SmartCards.SmartCardCryptogramStorageKeyCapabilities* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 3.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardCryptogramStorageKeyInfo)] [uuid(000440F9-F7FD-417D-89E1-FBB0382ADC4D)] interface ISmartCardCryptogramStorageKeyInfo2 : IInspectable { [propget] HRESULT OperationalRequirements([out] [retval] HSTRING* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulator)] [uuid(DFB906B2-875E-47E5-8077-E8BFF1B1C6FB)] interface ISmartCardEmulator : IInspectable { [propget] HRESULT EnablementPolicy([out] [retval] Windows.Devices.SmartCards.SmartCardEmulatorEnablementPolicy* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulator)] [uuid(FE3FC0B8-8529-411A-807B-48EDC2A0AB44)] interface ISmartCardEmulator2 : IInspectable { [eventadd] HRESULT ApduReceived([in] Windows.Foundation.TypedEventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT ApduReceived([in] EventRegistrationToken value); [eventadd] HRESULT ConnectionDeactivated([in] Windows.Foundation.TypedEventHandler* value, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT ConnectionDeactivated([in] EventRegistrationToken value); HRESULT Start(); HRESULT IsHostCardEmulationSupported([out] [retval] boolean* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulatorApduReceivedEventArgs)] [uuid(D55D1576-69D2-5333-5B5F-F8C0D6E9F09F)] interface ISmartCardEmulatorApduReceivedEventArgs : IInspectable { [propget] HRESULT CommandApdu([out] [retval] Windows.Storage.Streams.IBuffer** value); [propget] HRESULT ConnectionProperties([out] [retval] Windows.Devices.SmartCards.SmartCardEmulatorConnectionProperties** value); HRESULT TryRespondAsync([in] Windows.Storage.Streams.IBuffer* responseApdu, [out] [retval] Windows.Foundation.IAsyncOperation** result); [propget] HRESULT AutomaticResponseStatus([out] [retval] Windows.Devices.SmartCards.SmartCardAutomaticResponseStatus* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulatorApduReceivedEventArgs)] [uuid(8BF93DF0-22E1-4238-8610-94CE4A965425)] interface ISmartCardEmulatorApduReceivedEventArgs2 : IInspectable { [propget] HRESULT State([out] [retval] UINT32* value); [overload("TryRespondAsync")] HRESULT TryRespondWithStateAsync([in] Windows.Storage.Streams.IBuffer* responseApdu, [in] Windows.Foundation.IReference* nextState, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulatorApduReceivedEventArgs)] [uuid(D550BAC7-B7BF-4E29-9294-0C4AC3C941BD)] interface ISmartCardEmulatorApduReceivedEventArgsWithCryptograms : IInspectable { [overload("TryRespondWithCryptogramsAsync")] HRESULT TryRespondWithCryptogramsAsync([in] Windows.Storage.Streams.IBuffer* responseTemplate, [in] Windows.Foundation.Collections.IIterable* cryptogramPlacementSteps, [out] [retval] Windows.Foundation.IAsyncOperation** result); [overload("TryRespondWithCryptogramsAsync")] HRESULT TryRespondWithCryptogramsAndStateAsync([in] Windows.Storage.Streams.IBuffer* responseTemplate, [in] Windows.Foundation.Collections.IIterable* cryptogramPlacementSteps, [in] Windows.Foundation.IReference* nextState, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulatorConnectionDeactivatedEventArgs)] [uuid(2186D8D3-C5EB-5262-43DF-62A0A1B55557)] interface ISmartCardEmulatorConnectionDeactivatedEventArgs : IInspectable { [propget] HRESULT ConnectionProperties([out] [retval] Windows.Devices.SmartCards.SmartCardEmulatorConnectionProperties** value); [propget] HRESULT Reason([out] [retval] Windows.Devices.SmartCards.SmartCardEmulatorConnectionDeactivatedReason* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulatorConnectionProperties)] [uuid(4E2CA5EE-F969-507D-6CF9-34E2D18DF311)] interface ISmartCardEmulatorConnectionProperties : IInspectable { [propget] HRESULT Id([out] [retval] GUID* value); [propget] HRESULT Source([out] [retval] Windows.Devices.SmartCards.SmartCardEmulatorConnectionSource* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulator)] [uuid(7A9BFC4B-C4D3-494F-B8A2-6215D81E85B2)] interface ISmartCardEmulatorStatics : IInspectable { HRESULT GetDefaultAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulator)] [uuid(69AE9F8A-B775-488B-8436-6C1E28ED731F)] interface ISmartCardEmulatorStatics2 : IInspectable { HRESULT GetAppletIdGroupRegistrationsAsync([out] [retval] Windows.Foundation.IAsyncOperation*>** result); HRESULT RegisterAppletIdGroupAsync([in] Windows.Devices.SmartCards.SmartCardAppletIdGroup* appletIdGroup, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT UnregisterAppletIdGroupAsync([in] Windows.Devices.SmartCards.SmartCardAppletIdGroupRegistration* registration, [out] [retval] Windows.Foundation.IAsyncAction** result); [propget] HRESULT MaxAppletIdGroupRegistrations([out] [retval] UINT16* value); } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 5.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardEmulator)] [uuid(59EA142A-9F09-43F5-8565-CFA8148E4CB2)] interface ISmartCardEmulatorStatics3 : IInspectable { HRESULT IsSupported([out] [retval] boolean* result); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardPinPolicy)] [uuid(183CE184-4DB6-4841-AC9E-2AC1F39B7304)] interface ISmartCardPinPolicy : IInspectable { [propget] HRESULT MinLength([out] [retval] UINT32* value); [propput] HRESULT MinLength([in] UINT32 value); [propget] HRESULT MaxLength([out] [retval] UINT32* value); [propput] HRESULT MaxLength([in] UINT32 value); [propget] HRESULT UppercaseLetters([out] [retval] Windows.Devices.SmartCards.SmartCardPinCharacterPolicyOption* value); [propput] HRESULT UppercaseLetters([in] Windows.Devices.SmartCards.SmartCardPinCharacterPolicyOption value); [propget] HRESULT LowercaseLetters([out] [retval] Windows.Devices.SmartCards.SmartCardPinCharacterPolicyOption* value); [propput] HRESULT LowercaseLetters([in] Windows.Devices.SmartCards.SmartCardPinCharacterPolicyOption value); [propget] HRESULT Digits([out] [retval] Windows.Devices.SmartCards.SmartCardPinCharacterPolicyOption* value); [propput] HRESULT Digits([in] Windows.Devices.SmartCards.SmartCardPinCharacterPolicyOption value); [propget] HRESULT SpecialCharacters([out] [retval] Windows.Devices.SmartCards.SmartCardPinCharacterPolicyOption* value); [propput] HRESULT SpecialCharacters([in] Windows.Devices.SmartCards.SmartCardPinCharacterPolicyOption value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardPinResetDeferral)] [uuid(18C94AAC-7805-4004-85E4-BBEFAC8F6884)] interface ISmartCardPinResetDeferral : IInspectable { HRESULT Complete(); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardPinResetRequest)] [uuid(12FE3C4D-5FB9-4E8E-9FF6-61F475124FEF)] interface ISmartCardPinResetRequest : IInspectable { [propget] HRESULT Challenge([out] [retval] Windows.Storage.Streams.IBuffer** value); [propget] HRESULT Deadline([out] [retval] Windows.Foundation.DateTime* value); HRESULT GetDeferral([out] [retval] Windows.Devices.SmartCards.SmartCardPinResetDeferral** result); HRESULT SetResponse([in] Windows.Storage.Streams.IBuffer* response); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardProvisioning)] [uuid(19EEEDBD-1FAB-477C-B712-1A2C5AF1FD6E)] interface ISmartCardProvisioning : IInspectable { [propget] HRESULT SmartCard([out] [retval] Windows.Devices.SmartCards.SmartCard** value); HRESULT GetIdAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT GetNameAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT GetChallengeContextAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT RequestPinChangeAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT RequestPinResetAsync([in] Windows.Devices.SmartCards.SmartCardPinResetHandler* handler, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardProvisioning)] [uuid(10FD28EB-3F79-4B66-9B7C-11C149B7D0BC)] interface ISmartCardProvisioning2 : IInspectable { HRESULT GetAuthorityKeyContainerNameAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardProvisioning)] [uuid(13882848-0D13-4E70-9735-51DAECA5254F)] interface ISmartCardProvisioningStatics : IInspectable { HRESULT FromSmartCardAsync([in] Windows.Devices.SmartCards.SmartCard* card, [out] [retval] Windows.Foundation.IAsyncOperation** result); [overload("RequestVirtualSmartCardCreationAsync")] HRESULT RequestVirtualSmartCardCreationAsync([in] HSTRING friendlyName, [in] Windows.Storage.Streams.IBuffer* administrativeKey, [in] Windows.Devices.SmartCards.SmartCardPinPolicy* pinPolicy, [out] [retval] Windows.Foundation.IAsyncOperation** result); [overload("RequestVirtualSmartCardCreationAsync")] HRESULT RequestVirtualSmartCardCreationAsyncWithCardId([in] HSTRING friendlyName, [in] Windows.Storage.Streams.IBuffer* administrativeKey, [in] Windows.Devices.SmartCards.SmartCardPinPolicy* pinPolicy, [in] GUID cardId, [out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT RequestVirtualSmartCardDeletionAsync([in] Windows.Devices.SmartCards.SmartCard* card, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardProvisioning)] [uuid(3447C6A8-C9A0-4BD6-B50D-251F4E8D3A62)] interface ISmartCardProvisioningStatics2 : IInspectable { [overload("RequestAttestedVirtualSmartCardCreationAsync")] HRESULT RequestAttestedVirtualSmartCardCreationAsync([in] HSTRING friendlyName, [in] Windows.Storage.Streams.IBuffer* administrativeKey, [in] Windows.Devices.SmartCards.SmartCardPinPolicy* pinPolicy, [out] [retval] Windows.Foundation.IAsyncOperation** result); [overload("RequestAttestedVirtualSmartCardCreationAsync")] HRESULT RequestAttestedVirtualSmartCardCreationAsyncWithCardId([in] HSTRING friendlyName, [in] Windows.Storage.Streams.IBuffer* administrativeKey, [in] Windows.Devices.SmartCards.SmartCardPinPolicy* pinPolicy, [in] GUID cardId, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardReader)] [uuid(1074B4E0-54C2-4DF0-817A-14C14378F06C)] interface ISmartCardReader : IInspectable { [propget] HRESULT DeviceId([out] [retval] HSTRING* value); [propget] HRESULT Name([out] [retval] HSTRING* value); [propget] HRESULT Kind([out] [retval] Windows.Devices.SmartCards.SmartCardReaderKind* value); HRESULT GetStatusAsync([out] [retval] Windows.Foundation.IAsyncOperation** result); HRESULT FindAllCardsAsync([out] [retval] Windows.Foundation.IAsyncOperation*>** result); [eventadd] HRESULT CardAdded([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT CardAdded([in] EventRegistrationToken token); [eventadd] HRESULT CardRemoved([in] Windows.Foundation.TypedEventHandler* handler, [out] [retval] EventRegistrationToken* token); [eventremove] HRESULT CardRemoved([in] EventRegistrationToken token); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardReader)] [uuid(103C04E1-A1CA-48F2-A281-5B6F669AF107)] interface ISmartCardReaderStatics : IInspectable { [overload("GetDeviceSelector")] HRESULT GetDeviceSelector([out] [retval] HSTRING* selector); [overload("GetDeviceSelector")] HRESULT GetDeviceSelectorWithKind([in] Windows.Devices.SmartCards.SmartCardReaderKind kind, [out] [retval] HSTRING* selector); HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardTriggerDetails)] [uuid(5F9BF11E-39EF-4F2B-B44F-0A9155B177BC)] interface ISmartCardTriggerDetails : IInspectable { [propget] HRESULT TriggerType([out] [retval] Windows.Devices.SmartCards.SmartCardTriggerType* value); [propget] HRESULT SourceAppletId([out] [retval] Windows.Storage.Streams.IBuffer** value); [propget] HRESULT TriggerData([out] [retval] Windows.Storage.Streams.IBuffer** value); } [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 1.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardTriggerDetails)] [uuid(2945C569-8975-4A51-9E1A-5F8A76EE51AF)] interface ISmartCardTriggerDetails2 : IInspectable { [propget] HRESULT Emulator([out] [retval] Windows.Devices.SmartCards.SmartCardEmulator** value); [overload("TryLaunchCurrentAppAsync")] HRESULT TryLaunchCurrentAppAsync([in] HSTRING arguments, [out] [retval] Windows.Foundation.IAsyncOperation** result); [overload("TryLaunchCurrentAppAsync")] HRESULT TryLaunchCurrentAppWithBehaviorAsync([in] HSTRING arguments, [in] Windows.Devices.SmartCards.SmartCardLaunchBehavior behavior, [out] [retval] Windows.Foundation.IAsyncOperation** result); } [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 3.0)] [exclusiveto(Windows.Devices.SmartCards.SmartCardTriggerDetails)] [uuid(B3E2C27D-18C6-4BA8-8376-EF03D4912666)] interface ISmartCardTriggerDetails3 : IInspectable { [propget] HRESULT SmartCard([out] [retval] Windows.Devices.SmartCards.SmartCard** value); } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CardAddedEventArgs { [default] interface Windows.Devices.SmartCards.ICardAddedEventArgs; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass CardRemovedEventArgs { [default] interface Windows.Devices.SmartCards.ICardRemovedEventArgs; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 6.0)] [static(Windows.Devices.SmartCards.IKnownSmartCardAppletIds, Windows.Devices.SmartCards.SmartCardEmulatorContract, 6.0)] runtimeclass KnownSmartCardAppletIds { } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCard { [default] interface Windows.Devices.SmartCards.ISmartCard; [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.SmartCards.ISmartCardConnect; } [activatable(Windows.Devices.SmartCards.ISmartCardAppletIdGroupFactory, Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [activatable(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.SmartCards.ISmartCardAppletIdGroupStatics, Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [threading(both)] runtimeclass SmartCardAppletIdGroup { [default] interface Windows.Devices.SmartCards.ISmartCardAppletIdGroup; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 6.0)] interface Windows.Devices.SmartCards.ISmartCardAppletIdGroup2; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardAppletIdGroupRegistration { [default] interface Windows.Devices.SmartCards.ISmartCardAppletIdGroupRegistration; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 6.0)] interface Windows.Devices.SmartCards.ISmartCardAppletIdGroupRegistration2; } [activatable(Windows.Devices.SmartCards.ISmartCardAutomaticResponseApduFactory, Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardAutomaticResponseApdu { [default] interface Windows.Devices.SmartCards.ISmartCardAutomaticResponseApdu; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] interface Windows.Devices.SmartCards.ISmartCardAutomaticResponseApdu2; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 3.0)] interface Windows.Devices.SmartCards.ISmartCardAutomaticResponseApdu3; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardChallengeContext { [default] interface Windows.Devices.SmartCards.ISmartCardChallengeContext; interface Windows.Foundation.IClosable; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardConnection { [default] interface Windows.Devices.SmartCards.ISmartCardConnection; interface Windows.Foundation.IClosable; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [marshaling_behavior(agile)] [static(Windows.Devices.SmartCards.ISmartCardCryptogramGeneratorStatics, Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [static(Windows.Devices.SmartCards.ISmartCardCryptogramGeneratorStatics2, Windows.Devices.SmartCards.SmartCardEmulatorContract, 5.0)] [threading(both)] runtimeclass SmartCardCryptogramGenerator { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramGenerator; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] interface Windows.Devices.SmartCards.ISmartCardCryptogramGenerator2; } [activatable(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramGetAllCryptogramMaterialCharacteristicsResult { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramGetAllCryptogramMaterialCharacteristicsResult; } [activatable(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramGetAllCryptogramMaterialPackageCharacteristicsResult { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramGetAllCryptogramMaterialPackageCharacteristicsResult; } [activatable(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramGetAllCryptogramStorageKeyCharacteristicsResult { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramGetAllCryptogramStorageKeyCharacteristicsResult; } [activatable(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramMaterialCharacteristics { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramMaterialCharacteristics; } [activatable(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramMaterialPackageCharacteristics { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramMaterialPackageCharacteristics; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramMaterialPossessionProof { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramMaterialPossessionProof; } [activatable(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramPlacementStep { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramPlacementStep; } [activatable(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 4.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramStorageKeyCharacteristics { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramStorageKeyCharacteristics; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardCryptogramStorageKeyInfo { [default] interface Windows.Devices.SmartCards.ISmartCardCryptogramStorageKeyInfo; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 3.0)] interface Windows.Devices.SmartCards.ISmartCardCryptogramStorageKeyInfo2; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.SmartCards.ISmartCardEmulatorStatics, Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [static(Windows.Devices.SmartCards.ISmartCardEmulatorStatics2, Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [static(Windows.Devices.SmartCards.ISmartCardEmulatorStatics3, Windows.Devices.SmartCards.SmartCardEmulatorContract, 5.0)] [threading(both)] runtimeclass SmartCardEmulator { [default] interface Windows.Devices.SmartCards.ISmartCardEmulator; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] interface Windows.Devices.SmartCards.ISmartCardEmulator2; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardEmulatorApduReceivedEventArgs { [default] interface Windows.Devices.SmartCards.ISmartCardEmulatorApduReceivedEventArgs; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] interface Windows.Devices.SmartCards.ISmartCardEmulatorApduReceivedEventArgsWithCryptograms; [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 2.0)] interface Windows.Devices.SmartCards.ISmartCardEmulatorApduReceivedEventArgs2; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardEmulatorConnectionDeactivatedEventArgs { [default] interface Windows.Devices.SmartCards.ISmartCardEmulatorConnectionDeactivatedEventArgs; } [contract(Windows.Devices.SmartCards.SmartCardEmulatorContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardEmulatorConnectionProperties { [default] interface Windows.Devices.SmartCards.ISmartCardEmulatorConnectionProperties; } [activatable(Windows.Foundation.UniversalApiContract, 1.0)] [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardPinPolicy { [default] interface Windows.Devices.SmartCards.ISmartCardPinPolicy; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardPinResetDeferral { [default] interface Windows.Devices.SmartCards.ISmartCardPinResetDeferral; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardPinResetRequest { [default] interface Windows.Devices.SmartCards.ISmartCardPinResetRequest; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.SmartCards.ISmartCardProvisioningStatics, Windows.Foundation.UniversalApiContract, 1.0)] [static(Windows.Devices.SmartCards.ISmartCardProvisioningStatics2, Windows.Foundation.UniversalApiContract, 1.0)] [threading(both)] runtimeclass SmartCardProvisioning { [default] interface Windows.Devices.SmartCards.ISmartCardProvisioning; [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.SmartCards.ISmartCardProvisioning2; } [contract(Windows.Foundation.UniversalApiContract, 1.0)] [marshaling_behavior(agile)] [static(Windows.Devices.SmartCards.ISmartCardReaderStatics, Windows.Foundation.UniversalApiContract, 1.0)] [threading(both)] runtimeclass SmartCardReader { [default] interface Windows.Devices.SmartCards.ISmartCardReader; } [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 1.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass SmartCardTriggerDetails { [default] interface Windows.Devices.SmartCards.ISmartCardTriggerDetails; [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 1.0)] interface Windows.Devices.SmartCards.ISmartCardTriggerDetails2; [contract(Windows.Devices.SmartCards.SmartCardBackgroundTriggerContract, 3.0)] interface Windows.Devices.SmartCards.ISmartCardTriggerDetails3; } } } }