# WARNING: Please don't edit this file. It was generated by Python/WinRT v1.0.0-beta.7

import enum

import winsdk

_ns_module = winsdk._import_ns_module("Windows.Security.Authentication.Identity.Core")

try:
    import winsdk.windows.foundation
except ImportError:
    pass

try:
    import winsdk.windows.foundation.collections
except ImportError:
    pass

class MicrosoftAccountMultiFactorAuthenticationType(enum.IntEnum):
    USER = 0
    DEVICE = 1

class MicrosoftAccountMultiFactorServiceResponse(enum.IntEnum):
    SUCCESS = 0
    ERROR = 1
    NO_NETWORK_CONNECTION = 2
    SERVICE_UNAVAILABLE = 3
    TOTP_SETUP_DENIED = 4
    NGC_NOT_SETUP = 5
    SESSION_ALREADY_DENIED = 6
    SESSION_ALREADY_APPROVED = 7
    SESSION_EXPIRED = 8
    NGC_NONCE_EXPIRED = 9
    INVALID_SESSION_ID = 10
    INVALID_SESSION_TYPE = 11
    INVALID_OPERATION = 12
    INVALID_STATE_TRANSITION = 13
    DEVICE_NOT_FOUND = 14
    FLOW_DISABLED = 15
    SESSION_NOT_APPROVED = 16
    OPERATION_CANCELED_BY_USER = 17
    NGC_DISABLED_BY_SERVER = 18
    NGC_KEY_NOT_FOUND_ON_SERVER = 19
    U_I_REQUIRED = 20
    DEVICE_ID_CHANGED = 21

class MicrosoftAccountMultiFactorSessionApprovalStatus(enum.IntEnum):
    PENDING = 0
    APPROVED = 1
    DENIED = 2

class MicrosoftAccountMultiFactorSessionAuthenticationStatus(enum.IntEnum):
    AUTHENTICATED = 0
    UNAUTHENTICATED = 1

_ns_module._register_MicrosoftAccountMultiFactorAuthenticationType(MicrosoftAccountMultiFactorAuthenticationType)
_ns_module._register_MicrosoftAccountMultiFactorServiceResponse(MicrosoftAccountMultiFactorServiceResponse)
_ns_module._register_MicrosoftAccountMultiFactorSessionApprovalStatus(MicrosoftAccountMultiFactorSessionApprovalStatus)
_ns_module._register_MicrosoftAccountMultiFactorSessionAuthenticationStatus(MicrosoftAccountMultiFactorSessionAuthenticationStatus)

MicrosoftAccountMultiFactorAuthenticationManager = _ns_module.MicrosoftAccountMultiFactorAuthenticationManager
MicrosoftAccountMultiFactorGetSessionsResult = _ns_module.MicrosoftAccountMultiFactorGetSessionsResult
MicrosoftAccountMultiFactorOneTimeCodedInfo = _ns_module.MicrosoftAccountMultiFactorOneTimeCodedInfo
MicrosoftAccountMultiFactorSessionInfo = _ns_module.MicrosoftAccountMultiFactorSessionInfo
MicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo = _ns_module.MicrosoftAccountMultiFactorUnregisteredAccountsAndSessionInfo
