// // 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"; // Forward Declare namespace Windows { namespace Foundation { typedef struct DateTime DateTime; typedef struct TimeSpan TimeSpan; apicontract UniversalApiContract; } } namespace Windows { namespace Security { namespace Authentication { namespace Identity { namespace Core { typedef enum MicrosoftAccountMultiFactorAuthenticationType MicrosoftAccountMultiFactorAuthenticationType; typedef enum MicrosoftAccountMultiFactorServiceResponse MicrosoftAccountMultiFactorServiceResponse; typedef enum MicrosoftAccountMultiFactorSessionApprovalStatus MicrosoftAccountMultiFactorSessionApprovalStatus; typedef enum MicrosoftAccountMultiFactorSessionAuthenticationStatus MicrosoftAccountMultiFactorSessionAuthenticationStatus; interface IMicrosoftAccountMultiFactorAuthenticationManager; interface IMicrosoftAccountMultiFactorAuthenticatorStatics; interface IMicrosoftAccountMultiFactorGetSessionsResult; interface IMicrosoftAccountMultiFactorOneTimeCodedInfo; interface IMicrosoftAccountMultiFactorSessionInfo; interface IMicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo; runtimeclass MicrosoftAccountMultiFactorAuthenticationManager; runtimeclass MicrosoftAccountMultiFactorGetSessionsResult; runtimeclass MicrosoftAccountMultiFactorOneTimeCodedInfo; runtimeclass MicrosoftAccountMultiFactorSessionInfo; runtimeclass MicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo; } } } } } // Generic instantiations namespace Windows { namespace Security { namespace Authentication { namespace Identity { namespace Core { declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; interface Windows.Foundation.IAsyncOperation; } } } } } } // Type definition namespace Windows { namespace Security { namespace Authentication { namespace Identity { namespace Core { [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum MicrosoftAccountMultiFactorAuthenticationType { User = 0, Device = 1 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum MicrosoftAccountMultiFactorServiceResponse { Success = 0, Error = 1, NoNetworkConnection = 2, ServiceUnavailable = 3, TotpSetupDenied = 4, NgcNotSetup = 5, SessionAlreadyDenied = 6, SessionAlreadyApproved = 7, SessionExpired = 8, NgcNonceExpired = 9, InvalidSessionId = 10, InvalidSessionType = 11, InvalidOperation = 12, InvalidStateTransition = 13, DeviceNotFound = 14, FlowDisabled = 15, SessionNotApproved = 16, OperationCanceledByUser = 17, NgcDisabledByServer = 18, NgcKeyNotFoundOnServer = 19, UIRequired = 20, DeviceIdChanged = 21 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum MicrosoftAccountMultiFactorSessionApprovalStatus { Pending = 0, Approved = 1, Denied = 2 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] enum MicrosoftAccountMultiFactorSessionAuthenticationStatus { Authenticated = 0, Unauthenticated = 1 }; [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorAuthenticationManager)] [uuid(0FD340A5-F574-4320-A08E-0A19A82322AA)] interface IMicrosoftAccountMultiFactorAuthenticationManager : IInspectable { HRESULT GetOneTimePassCodeAsync([in] HSTRING userAccountId, [in] UINT32 codeLength, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); HRESULT AddDeviceAsync([in] HSTRING userAccountId, [in] HSTRING authenticationToken, [in] HSTRING wnsChannelId, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); HRESULT RemoveDeviceAsync([in] HSTRING userAccountId, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); HRESULT UpdateWnsChannelAsync([in] HSTRING userAccountId, [in] HSTRING channelUri, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); HRESULT GetSessionsAsync([in] Windows.Foundation.Collections.IIterable* userAccountIdList, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); HRESULT GetSessionsAndUnregisteredAccountsAsync([in] Windows.Foundation.Collections.IIterable* userAccountIdList, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); [overload("ApproveSessionAsync")] HRESULT ApproveSessionUsingAuthSessionInfoAsync([in] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorSessionAuthenticationStatus sessionAuthentictionStatus, [in] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorSessionInfo* authenticationSessionInfo, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); [overload("ApproveSessionAsync")] HRESULT ApproveSessionAsync([in] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorSessionAuthenticationStatus sessionAuthentictionStatus, [in] HSTRING userAccountId, [in] HSTRING sessionId, [in] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorAuthenticationType sessionAuthenticationType, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); [overload("DenySessionAsync")] HRESULT DenySessionUsingAuthSessionInfoAsync([in] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorSessionInfo* authenticationSessionInfo, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); [overload("DenySessionAsync")] HRESULT DenySessionAsync([in] HSTRING userAccountId, [in] HSTRING sessionId, [in] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorAuthenticationType sessionAuthenticationType, [out] [retval] Windows.Foundation.IAsyncOperation** asyncOperation); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorAuthenticationManager)] [uuid(D964C2E6-F446-4C71-8B79-6EA4024AA9B8)] interface IMicrosoftAccountMultiFactorAuthenticatorStatics : IInspectable { [propget] HRESULT Current([out] [retval] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorAuthenticationManager** value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorGetSessionsResult)] [uuid(4E23A9A0-E9FA-497A-95DE-6D5747BF974C)] interface IMicrosoftAccountMultiFactorGetSessionsResult : IInspectable { [propget] HRESULT Sessions([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT ServiceResponse([out] [retval] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorServiceResponse* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorOneTimeCodedInfo)] [uuid(82BA264B-D87C-4668-A976-40CFAE547D08)] interface IMicrosoftAccountMultiFactorOneTimeCodedInfo : IInspectable { [propget] HRESULT Code([out] [retval] HSTRING* value); [propget] HRESULT TimeInterval([out] [retval] Windows.Foundation.TimeSpan* value); [propget] HRESULT TimeToLive([out] [retval] Windows.Foundation.TimeSpan* value); [propget] HRESULT ServiceResponse([out] [retval] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorServiceResponse* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorSessionInfo)] [uuid(5F7EABB4-A278-4635-B765-B494EB260AF4)] interface IMicrosoftAccountMultiFactorSessionInfo : IInspectable { [propget] HRESULT UserAccountId([out] [retval] HSTRING* value); [propget] HRESULT SessionId([out] [retval] HSTRING* value); [propget] HRESULT DisplaySessionId([out] [retval] HSTRING* value); [propget] HRESULT ApprovalStatus([out] [retval] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorSessionApprovalStatus* value); [propget] HRESULT AuthenticationType([out] [retval] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorAuthenticationType* value); [propget] HRESULT RequestTime([out] [retval] Windows.Foundation.DateTime* value); [propget] HRESULT ExpirationTime([out] [retval] Windows.Foundation.DateTime* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [exclusiveto(Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo)] [uuid(AA7EC5FB-DA3F-4088-A20D-5618AFADB2E5)] interface IMicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo : IInspectable { [propget] HRESULT Sessions([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT UnregisteredAccounts([out] [retval] Windows.Foundation.Collections.IVectorView** value); [propget] HRESULT ServiceResponse([out] [retval] Windows.Security.Authentication.Identity.Core.MicrosoftAccountMultiFactorServiceResponse* value); } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [marshaling_behavior(agile)] [static(Windows.Security.Authentication.Identity.Core.IMicrosoftAccountMultiFactorAuthenticatorStatics, Windows.Foundation.UniversalApiContract, 3.0)] [threading(both)] runtimeclass MicrosoftAccountMultiFactorAuthenticationManager { [default] interface Windows.Security.Authentication.Identity.Core.IMicrosoftAccountMultiFactorAuthenticationManager; } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass MicrosoftAccountMultiFactorGetSessionsResult { [default] interface Windows.Security.Authentication.Identity.Core.IMicrosoftAccountMultiFactorGetSessionsResult; } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass MicrosoftAccountMultiFactorOneTimeCodedInfo { [default] interface Windows.Security.Authentication.Identity.Core.IMicrosoftAccountMultiFactorOneTimeCodedInfo; } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass MicrosoftAccountMultiFactorSessionInfo { [default] interface Windows.Security.Authentication.Identity.Core.IMicrosoftAccountMultiFactorSessionInfo; } [contract(Windows.Foundation.UniversalApiContract, 3.0)] [marshaling_behavior(agile)] [threading(both)] runtimeclass MicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo { [default] interface Windows.Security.Authentication.Identity.Core.IMicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo; } } } } } }