from __future__ import annotations
from win32more import ARCH, Annotated, Boolean, Byte, Bytes, Char, ComPtr, ConstantLazyLoader, Double, Enum, FAILED, Guid, Int16, Int32, Int64, IntPtr, POINTER, SByte, SUCCEEDED, Single, String, Structure, UInt16, UInt32, UInt64, UIntPtr, UnicodeAlias, Union, Void, VoidPtr, cfunctype, cfunctype_pointer, commethod, make_ready, winfunctype, winfunctype_pointer
from win32more._winrt import AwaitableProtocol, ContextManagerProtocol, FillArray, Generic, IterableProtocol, K, MappingProtocol, MulticastDelegate, PassArray, ReceiveArray, SequenceProtocol, T, TProgress, TResult, TSender, Tuple, V, WinRT_String, event, winrt_activatemethod, winrt_classmethod, winrt_commethod, winrt_factorymethod, winrt_mixinmethod, winrt_overload
import win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess
import win32more.Windows.Foundation
import win32more.Windows.Foundation.Collections
import win32more.Windows.Security.Credentials
import win32more.Windows.Win32.System.WinRT
class DeviceAccountAuthenticationType(Enum, Int32):
    Basic = 0
    OAuth = 1
    SingleSignOn = 2
class DeviceAccountConfiguration(ComPtr):
    extends: win32more.Windows.Win32.System.WinRT.IInspectable
    default_interface: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration
    _classid_ = 'Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration'
    def __init__(self, *args, **kwargs):
        if kwargs:
            super().__init__(**kwargs)
        elif len(args) == 0:
            super().__init__(move=win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration.CreateInstance(*args))
        else:
            raise ValueError('no matched constructor')
    @winrt_activatemethod
    def CreateInstance(cls) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration: ...
    @winrt_mixinmethod
    def get_AccountName(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_AccountName(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_DeviceAccountTypeId(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_DeviceAccountTypeId(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_ServerType(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountServerType: ...
    @winrt_mixinmethod
    def put_ServerType(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountServerType) -> Void: ...
    @winrt_mixinmethod
    def get_EmailAddress(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_EmailAddress(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_Domain(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_Domain(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_EmailSyncEnabled(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> Boolean: ...
    @winrt_mixinmethod
    def put_EmailSyncEnabled(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_ContactsSyncEnabled(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> Boolean: ...
    @winrt_mixinmethod
    def put_ContactsSyncEnabled(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_CalendarSyncEnabled(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> Boolean: ...
    @winrt_mixinmethod
    def put_CalendarSyncEnabled(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_IncomingServerAddress(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_IncomingServerAddress(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_IncomingServerPort(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> Int32: ...
    @winrt_mixinmethod
    def put_IncomingServerPort(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: Int32) -> Void: ...
    @winrt_mixinmethod
    def get_IncomingServerRequiresSsl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> Boolean: ...
    @winrt_mixinmethod
    def put_IncomingServerRequiresSsl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_IncomingServerUsername(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_IncomingServerUsername(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_OutgoingServerAddress(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_OutgoingServerAddress(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_OutgoingServerPort(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> Int32: ...
    @winrt_mixinmethod
    def put_OutgoingServerPort(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: Int32) -> Void: ...
    @winrt_mixinmethod
    def get_OutgoingServerRequiresSsl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> Boolean: ...
    @winrt_mixinmethod
    def put_OutgoingServerRequiresSsl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_OutgoingServerUsername(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_OutgoingServerUsername(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_IncomingServerCredential(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.Security.Credentials.PasswordCredential: ...
    @winrt_mixinmethod
    def put_IncomingServerCredential(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.Security.Credentials.PasswordCredential) -> Void: ...
    @winrt_mixinmethod
    def get_OutgoingServerCredential(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.Security.Credentials.PasswordCredential: ...
    @winrt_mixinmethod
    def put_OutgoingServerCredential(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.Security.Credentials.PasswordCredential) -> Void: ...
    @winrt_mixinmethod
    def get_OAuthRefreshToken(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_OAuthRefreshToken(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_IsExternallyManaged(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_IsExternallyManaged(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_AccountIconId(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountIconId: ...
    @winrt_mixinmethod
    def put_AccountIconId(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountIconId) -> Void: ...
    @winrt_mixinmethod
    def get_AuthenticationType(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountAuthenticationType: ...
    @winrt_mixinmethod
    def put_AuthenticationType(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountAuthenticationType) -> Void: ...
    @winrt_mixinmethod
    def get_IsSsoAuthenticationSupported(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def get_SsoAccountId(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_SsoAccountId(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_AlwaysDownloadFullMessage(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_AlwaysDownloadFullMessage(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_DoesPolicyAllowMailSync(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def get_SyncScheduleKind(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind: ...
    @winrt_mixinmethod
    def put_SyncScheduleKind(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind) -> Void: ...
    @winrt_mixinmethod
    def get_MailAgeFilter(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountMailAgeFilter: ...
    @winrt_mixinmethod
    def put_MailAgeFilter(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountMailAgeFilter) -> Void: ...
    @winrt_mixinmethod
    def get_IsClientAuthenticationCertificateRequired(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_IsClientAuthenticationCertificateRequired(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_AutoSelectAuthenticationCertificate(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_AutoSelectAuthenticationCertificate(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_AuthenticationCertificateId(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_AuthenticationCertificateId(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_CardDavSyncScheduleKind(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind: ...
    @winrt_mixinmethod
    def put_CardDavSyncScheduleKind(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind) -> Void: ...
    @winrt_mixinmethod
    def get_CalDavSyncScheduleKind(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind: ...
    @winrt_mixinmethod
    def put_CalDavSyncScheduleKind(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind) -> Void: ...
    @winrt_mixinmethod
    def get_CardDavServerUrl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.Foundation.Uri: ...
    @winrt_mixinmethod
    def put_CardDavServerUrl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.Foundation.Uri) -> Void: ...
    @winrt_mixinmethod
    def get_CardDavRequiresSsl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_CardDavRequiresSsl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_CalDavServerUrl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> win32more.Windows.Foundation.Uri: ...
    @winrt_mixinmethod
    def put_CalDavServerUrl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: win32more.Windows.Foundation.Uri) -> Void: ...
    @winrt_mixinmethod
    def get_CalDavRequiresSsl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_CalDavRequiresSsl(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_WasModifiedByUser(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_WasModifiedByUser(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_WasIncomingServerCertificateHashConfirmed(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_WasIncomingServerCertificateHashConfirmed(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_IncomingServerCertificateHash(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_IncomingServerCertificateHash(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_IsOutgoingServerAuthenticationRequired(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_IsOutgoingServerAuthenticationRequired(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_IsOutgoingServerAuthenticationEnabled(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_IsOutgoingServerAuthenticationEnabled(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_WasOutgoingServerCertificateHashConfirmed(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_WasOutgoingServerCertificateHashConfirmed(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    @winrt_mixinmethod
    def get_OutgoingServerCertificateHash(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> WinRT_String: ...
    @winrt_mixinmethod
    def put_OutgoingServerCertificateHash(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: WinRT_String) -> Void: ...
    @winrt_mixinmethod
    def get_IsSyncScheduleManagedBySystem(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2) -> Boolean: ...
    @winrt_mixinmethod
    def put_IsSyncScheduleManagedBySystem(self: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2, value: Boolean) -> Void: ...
    AccountIconId = property(get_AccountIconId, put_AccountIconId)
    AccountName = property(get_AccountName, put_AccountName)
    AlwaysDownloadFullMessage = property(get_AlwaysDownloadFullMessage, put_AlwaysDownloadFullMessage)
    AuthenticationCertificateId = property(get_AuthenticationCertificateId, put_AuthenticationCertificateId)
    AuthenticationType = property(get_AuthenticationType, put_AuthenticationType)
    AutoSelectAuthenticationCertificate = property(get_AutoSelectAuthenticationCertificate, put_AutoSelectAuthenticationCertificate)
    CalDavRequiresSsl = property(get_CalDavRequiresSsl, put_CalDavRequiresSsl)
    CalDavServerUrl = property(get_CalDavServerUrl, put_CalDavServerUrl)
    CalDavSyncScheduleKind = property(get_CalDavSyncScheduleKind, put_CalDavSyncScheduleKind)
    CalendarSyncEnabled = property(get_CalendarSyncEnabled, put_CalendarSyncEnabled)
    CardDavRequiresSsl = property(get_CardDavRequiresSsl, put_CardDavRequiresSsl)
    CardDavServerUrl = property(get_CardDavServerUrl, put_CardDavServerUrl)
    CardDavSyncScheduleKind = property(get_CardDavSyncScheduleKind, put_CardDavSyncScheduleKind)
    ContactsSyncEnabled = property(get_ContactsSyncEnabled, put_ContactsSyncEnabled)
    DeviceAccountTypeId = property(get_DeviceAccountTypeId, put_DeviceAccountTypeId)
    DoesPolicyAllowMailSync = property(get_DoesPolicyAllowMailSync, None)
    Domain = property(get_Domain, put_Domain)
    EmailAddress = property(get_EmailAddress, put_EmailAddress)
    EmailSyncEnabled = property(get_EmailSyncEnabled, put_EmailSyncEnabled)
    IncomingServerAddress = property(get_IncomingServerAddress, put_IncomingServerAddress)
    IncomingServerCertificateHash = property(get_IncomingServerCertificateHash, put_IncomingServerCertificateHash)
    IncomingServerCredential = property(get_IncomingServerCredential, put_IncomingServerCredential)
    IncomingServerPort = property(get_IncomingServerPort, put_IncomingServerPort)
    IncomingServerRequiresSsl = property(get_IncomingServerRequiresSsl, put_IncomingServerRequiresSsl)
    IncomingServerUsername = property(get_IncomingServerUsername, put_IncomingServerUsername)
    IsClientAuthenticationCertificateRequired = property(get_IsClientAuthenticationCertificateRequired, put_IsClientAuthenticationCertificateRequired)
    IsExternallyManaged = property(get_IsExternallyManaged, put_IsExternallyManaged)
    IsOutgoingServerAuthenticationEnabled = property(get_IsOutgoingServerAuthenticationEnabled, put_IsOutgoingServerAuthenticationEnabled)
    IsOutgoingServerAuthenticationRequired = property(get_IsOutgoingServerAuthenticationRequired, put_IsOutgoingServerAuthenticationRequired)
    IsSsoAuthenticationSupported = property(get_IsSsoAuthenticationSupported, None)
    IsSyncScheduleManagedBySystem = property(get_IsSyncScheduleManagedBySystem, put_IsSyncScheduleManagedBySystem)
    MailAgeFilter = property(get_MailAgeFilter, put_MailAgeFilter)
    OAuthRefreshToken = property(get_OAuthRefreshToken, put_OAuthRefreshToken)
    OutgoingServerAddress = property(get_OutgoingServerAddress, put_OutgoingServerAddress)
    OutgoingServerCertificateHash = property(get_OutgoingServerCertificateHash, put_OutgoingServerCertificateHash)
    OutgoingServerCredential = property(get_OutgoingServerCredential, put_OutgoingServerCredential)
    OutgoingServerPort = property(get_OutgoingServerPort, put_OutgoingServerPort)
    OutgoingServerRequiresSsl = property(get_OutgoingServerRequiresSsl, put_OutgoingServerRequiresSsl)
    OutgoingServerUsername = property(get_OutgoingServerUsername, put_OutgoingServerUsername)
    ServerType = property(get_ServerType, put_ServerType)
    SsoAccountId = property(get_SsoAccountId, put_SsoAccountId)
    SyncScheduleKind = property(get_SyncScheduleKind, put_SyncScheduleKind)
    WasIncomingServerCertificateHashConfirmed = property(get_WasIncomingServerCertificateHashConfirmed, put_WasIncomingServerCertificateHashConfirmed)
    WasModifiedByUser = property(get_WasModifiedByUser, put_WasModifiedByUser)
    WasOutgoingServerCertificateHashConfirmed = property(get_WasOutgoingServerCertificateHashConfirmed, put_WasOutgoingServerCertificateHashConfirmed)
class DeviceAccountIconId(Enum, Int32):
    Exchange = 0
    Msa = 1
    Outlook = 2
    Generic = 3
class DeviceAccountMailAgeFilter(Enum, Int32):
    All = 0
    Last1Day = 1
    Last3Days = 2
    Last7Days = 3
    Last14Days = 4
    Last30Days = 5
    Last90Days = 6
class DeviceAccountServerType(Enum, Int32):
    Exchange = 0
    Pop = 1
    Imap = 2
class DeviceAccountSyncScheduleKind(Enum, Int32):
    Manual = 0
    Every15Minutes = 1
    Every30Minutes = 2
    Every60Minutes = 3
    Every2Hours = 4
    Daily = 5
    AsItemsArrive = 6
class IDeviceAccountConfiguration(ComPtr):
    extends: win32more.Windows.Win32.System.WinRT.IInspectable
    _classid_ = 'Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration'
    _iid_ = Guid('{ad0123a3-fbdc-4d1b-be43-5a27ea4a1b63}')
    @winrt_commethod(6)
    def get_AccountName(self) -> WinRT_String: ...
    @winrt_commethod(7)
    def put_AccountName(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(8)
    def get_DeviceAccountTypeId(self) -> WinRT_String: ...
    @winrt_commethod(9)
    def put_DeviceAccountTypeId(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(10)
    def get_ServerType(self) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountServerType: ...
    @winrt_commethod(11)
    def put_ServerType(self, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountServerType) -> Void: ...
    @winrt_commethod(12)
    def get_EmailAddress(self) -> WinRT_String: ...
    @winrt_commethod(13)
    def put_EmailAddress(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(14)
    def get_Domain(self) -> WinRT_String: ...
    @winrt_commethod(15)
    def put_Domain(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(16)
    def get_EmailSyncEnabled(self) -> Boolean: ...
    @winrt_commethod(17)
    def put_EmailSyncEnabled(self, value: Boolean) -> Void: ...
    @winrt_commethod(18)
    def get_ContactsSyncEnabled(self) -> Boolean: ...
    @winrt_commethod(19)
    def put_ContactsSyncEnabled(self, value: Boolean) -> Void: ...
    @winrt_commethod(20)
    def get_CalendarSyncEnabled(self) -> Boolean: ...
    @winrt_commethod(21)
    def put_CalendarSyncEnabled(self, value: Boolean) -> Void: ...
    @winrt_commethod(22)
    def get_IncomingServerAddress(self) -> WinRT_String: ...
    @winrt_commethod(23)
    def put_IncomingServerAddress(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(24)
    def get_IncomingServerPort(self) -> Int32: ...
    @winrt_commethod(25)
    def put_IncomingServerPort(self, value: Int32) -> Void: ...
    @winrt_commethod(26)
    def get_IncomingServerRequiresSsl(self) -> Boolean: ...
    @winrt_commethod(27)
    def put_IncomingServerRequiresSsl(self, value: Boolean) -> Void: ...
    @winrt_commethod(28)
    def get_IncomingServerUsername(self) -> WinRT_String: ...
    @winrt_commethod(29)
    def put_IncomingServerUsername(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(30)
    def get_OutgoingServerAddress(self) -> WinRT_String: ...
    @winrt_commethod(31)
    def put_OutgoingServerAddress(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(32)
    def get_OutgoingServerPort(self) -> Int32: ...
    @winrt_commethod(33)
    def put_OutgoingServerPort(self, value: Int32) -> Void: ...
    @winrt_commethod(34)
    def get_OutgoingServerRequiresSsl(self) -> Boolean: ...
    @winrt_commethod(35)
    def put_OutgoingServerRequiresSsl(self, value: Boolean) -> Void: ...
    @winrt_commethod(36)
    def get_OutgoingServerUsername(self) -> WinRT_String: ...
    @winrt_commethod(37)
    def put_OutgoingServerUsername(self, value: WinRT_String) -> Void: ...
    AccountName = property(get_AccountName, put_AccountName)
    CalendarSyncEnabled = property(get_CalendarSyncEnabled, put_CalendarSyncEnabled)
    ContactsSyncEnabled = property(get_ContactsSyncEnabled, put_ContactsSyncEnabled)
    DeviceAccountTypeId = property(get_DeviceAccountTypeId, put_DeviceAccountTypeId)
    Domain = property(get_Domain, put_Domain)
    EmailAddress = property(get_EmailAddress, put_EmailAddress)
    EmailSyncEnabled = property(get_EmailSyncEnabled, put_EmailSyncEnabled)
    IncomingServerAddress = property(get_IncomingServerAddress, put_IncomingServerAddress)
    IncomingServerPort = property(get_IncomingServerPort, put_IncomingServerPort)
    IncomingServerRequiresSsl = property(get_IncomingServerRequiresSsl, put_IncomingServerRequiresSsl)
    IncomingServerUsername = property(get_IncomingServerUsername, put_IncomingServerUsername)
    OutgoingServerAddress = property(get_OutgoingServerAddress, put_OutgoingServerAddress)
    OutgoingServerPort = property(get_OutgoingServerPort, put_OutgoingServerPort)
    OutgoingServerRequiresSsl = property(get_OutgoingServerRequiresSsl, put_OutgoingServerRequiresSsl)
    OutgoingServerUsername = property(get_OutgoingServerUsername, put_OutgoingServerUsername)
    ServerType = property(get_ServerType, put_ServerType)
class IDeviceAccountConfiguration2(ComPtr):
    extends: win32more.Windows.Win32.System.WinRT.IInspectable
    _classid_ = 'Windows.ApplicationModel.UserDataAccounts.SystemAccess.IDeviceAccountConfiguration2'
    _iid_ = Guid('{f2b2e5a6-728d-4a4a-8945-2bf8580136de}')
    @winrt_commethod(6)
    def get_IncomingServerCredential(self) -> win32more.Windows.Security.Credentials.PasswordCredential: ...
    @winrt_commethod(7)
    def put_IncomingServerCredential(self, value: win32more.Windows.Security.Credentials.PasswordCredential) -> Void: ...
    @winrt_commethod(8)
    def get_OutgoingServerCredential(self) -> win32more.Windows.Security.Credentials.PasswordCredential: ...
    @winrt_commethod(9)
    def put_OutgoingServerCredential(self, value: win32more.Windows.Security.Credentials.PasswordCredential) -> Void: ...
    @winrt_commethod(10)
    def get_OAuthRefreshToken(self) -> WinRT_String: ...
    @winrt_commethod(11)
    def put_OAuthRefreshToken(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(12)
    def get_IsExternallyManaged(self) -> Boolean: ...
    @winrt_commethod(13)
    def put_IsExternallyManaged(self, value: Boolean) -> Void: ...
    @winrt_commethod(14)
    def get_AccountIconId(self) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountIconId: ...
    @winrt_commethod(15)
    def put_AccountIconId(self, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountIconId) -> Void: ...
    @winrt_commethod(16)
    def get_AuthenticationType(self) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountAuthenticationType: ...
    @winrt_commethod(17)
    def put_AuthenticationType(self, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountAuthenticationType) -> Void: ...
    @winrt_commethod(18)
    def get_IsSsoAuthenticationSupported(self) -> Boolean: ...
    @winrt_commethod(19)
    def get_SsoAccountId(self) -> WinRT_String: ...
    @winrt_commethod(20)
    def put_SsoAccountId(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(21)
    def get_AlwaysDownloadFullMessage(self) -> Boolean: ...
    @winrt_commethod(22)
    def put_AlwaysDownloadFullMessage(self, value: Boolean) -> Void: ...
    @winrt_commethod(23)
    def get_DoesPolicyAllowMailSync(self) -> Boolean: ...
    @winrt_commethod(24)
    def get_SyncScheduleKind(self) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind: ...
    @winrt_commethod(25)
    def put_SyncScheduleKind(self, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind) -> Void: ...
    @winrt_commethod(26)
    def get_MailAgeFilter(self) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountMailAgeFilter: ...
    @winrt_commethod(27)
    def put_MailAgeFilter(self, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountMailAgeFilter) -> Void: ...
    @winrt_commethod(28)
    def get_IsClientAuthenticationCertificateRequired(self) -> Boolean: ...
    @winrt_commethod(29)
    def put_IsClientAuthenticationCertificateRequired(self, value: Boolean) -> Void: ...
    @winrt_commethod(30)
    def get_AutoSelectAuthenticationCertificate(self) -> Boolean: ...
    @winrt_commethod(31)
    def put_AutoSelectAuthenticationCertificate(self, value: Boolean) -> Void: ...
    @winrt_commethod(32)
    def get_AuthenticationCertificateId(self) -> WinRT_String: ...
    @winrt_commethod(33)
    def put_AuthenticationCertificateId(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(34)
    def get_CardDavSyncScheduleKind(self) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind: ...
    @winrt_commethod(35)
    def put_CardDavSyncScheduleKind(self, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind) -> Void: ...
    @winrt_commethod(36)
    def get_CalDavSyncScheduleKind(self) -> win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind: ...
    @winrt_commethod(37)
    def put_CalDavSyncScheduleKind(self, value: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountSyncScheduleKind) -> Void: ...
    @winrt_commethod(38)
    def get_CardDavServerUrl(self) -> win32more.Windows.Foundation.Uri: ...
    @winrt_commethod(39)
    def put_CardDavServerUrl(self, value: win32more.Windows.Foundation.Uri) -> Void: ...
    @winrt_commethod(40)
    def get_CardDavRequiresSsl(self) -> Boolean: ...
    @winrt_commethod(41)
    def put_CardDavRequiresSsl(self, value: Boolean) -> Void: ...
    @winrt_commethod(42)
    def get_CalDavServerUrl(self) -> win32more.Windows.Foundation.Uri: ...
    @winrt_commethod(43)
    def put_CalDavServerUrl(self, value: win32more.Windows.Foundation.Uri) -> Void: ...
    @winrt_commethod(44)
    def get_CalDavRequiresSsl(self) -> Boolean: ...
    @winrt_commethod(45)
    def put_CalDavRequiresSsl(self, value: Boolean) -> Void: ...
    @winrt_commethod(46)
    def get_WasModifiedByUser(self) -> Boolean: ...
    @winrt_commethod(47)
    def put_WasModifiedByUser(self, value: Boolean) -> Void: ...
    @winrt_commethod(48)
    def get_WasIncomingServerCertificateHashConfirmed(self) -> Boolean: ...
    @winrt_commethod(49)
    def put_WasIncomingServerCertificateHashConfirmed(self, value: Boolean) -> Void: ...
    @winrt_commethod(50)
    def get_IncomingServerCertificateHash(self) -> WinRT_String: ...
    @winrt_commethod(51)
    def put_IncomingServerCertificateHash(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(52)
    def get_IsOutgoingServerAuthenticationRequired(self) -> Boolean: ...
    @winrt_commethod(53)
    def put_IsOutgoingServerAuthenticationRequired(self, value: Boolean) -> Void: ...
    @winrt_commethod(54)
    def get_IsOutgoingServerAuthenticationEnabled(self) -> Boolean: ...
    @winrt_commethod(55)
    def put_IsOutgoingServerAuthenticationEnabled(self, value: Boolean) -> Void: ...
    @winrt_commethod(56)
    def get_WasOutgoingServerCertificateHashConfirmed(self) -> Boolean: ...
    @winrt_commethod(57)
    def put_WasOutgoingServerCertificateHashConfirmed(self, value: Boolean) -> Void: ...
    @winrt_commethod(58)
    def get_OutgoingServerCertificateHash(self) -> WinRT_String: ...
    @winrt_commethod(59)
    def put_OutgoingServerCertificateHash(self, value: WinRT_String) -> Void: ...
    @winrt_commethod(60)
    def get_IsSyncScheduleManagedBySystem(self) -> Boolean: ...
    @winrt_commethod(61)
    def put_IsSyncScheduleManagedBySystem(self, value: Boolean) -> Void: ...
    AccountIconId = property(get_AccountIconId, put_AccountIconId)
    AlwaysDownloadFullMessage = property(get_AlwaysDownloadFullMessage, put_AlwaysDownloadFullMessage)
    AuthenticationCertificateId = property(get_AuthenticationCertificateId, put_AuthenticationCertificateId)
    AuthenticationType = property(get_AuthenticationType, put_AuthenticationType)
    AutoSelectAuthenticationCertificate = property(get_AutoSelectAuthenticationCertificate, put_AutoSelectAuthenticationCertificate)
    CalDavRequiresSsl = property(get_CalDavRequiresSsl, put_CalDavRequiresSsl)
    CalDavServerUrl = property(get_CalDavServerUrl, put_CalDavServerUrl)
    CalDavSyncScheduleKind = property(get_CalDavSyncScheduleKind, put_CalDavSyncScheduleKind)
    CardDavRequiresSsl = property(get_CardDavRequiresSsl, put_CardDavRequiresSsl)
    CardDavServerUrl = property(get_CardDavServerUrl, put_CardDavServerUrl)
    CardDavSyncScheduleKind = property(get_CardDavSyncScheduleKind, put_CardDavSyncScheduleKind)
    DoesPolicyAllowMailSync = property(get_DoesPolicyAllowMailSync, None)
    IncomingServerCertificateHash = property(get_IncomingServerCertificateHash, put_IncomingServerCertificateHash)
    IncomingServerCredential = property(get_IncomingServerCredential, put_IncomingServerCredential)
    IsClientAuthenticationCertificateRequired = property(get_IsClientAuthenticationCertificateRequired, put_IsClientAuthenticationCertificateRequired)
    IsExternallyManaged = property(get_IsExternallyManaged, put_IsExternallyManaged)
    IsOutgoingServerAuthenticationEnabled = property(get_IsOutgoingServerAuthenticationEnabled, put_IsOutgoingServerAuthenticationEnabled)
    IsOutgoingServerAuthenticationRequired = property(get_IsOutgoingServerAuthenticationRequired, put_IsOutgoingServerAuthenticationRequired)
    IsSsoAuthenticationSupported = property(get_IsSsoAuthenticationSupported, None)
    IsSyncScheduleManagedBySystem = property(get_IsSyncScheduleManagedBySystem, put_IsSyncScheduleManagedBySystem)
    MailAgeFilter = property(get_MailAgeFilter, put_MailAgeFilter)
    OAuthRefreshToken = property(get_OAuthRefreshToken, put_OAuthRefreshToken)
    OutgoingServerCertificateHash = property(get_OutgoingServerCertificateHash, put_OutgoingServerCertificateHash)
    OutgoingServerCredential = property(get_OutgoingServerCredential, put_OutgoingServerCredential)
    SsoAccountId = property(get_SsoAccountId, put_SsoAccountId)
    SyncScheduleKind = property(get_SyncScheduleKind, put_SyncScheduleKind)
    WasIncomingServerCertificateHashConfirmed = property(get_WasIncomingServerCertificateHashConfirmed, put_WasIncomingServerCertificateHashConfirmed)
    WasModifiedByUser = property(get_WasModifiedByUser, put_WasModifiedByUser)
    WasOutgoingServerCertificateHashConfirmed = property(get_WasOutgoingServerCertificateHashConfirmed, put_WasOutgoingServerCertificateHashConfirmed)
class IUserDataAccountSystemAccessManagerStatics(ComPtr):
    extends: win32more.Windows.Win32.System.WinRT.IInspectable
    _classid_ = 'Windows.ApplicationModel.UserDataAccounts.SystemAccess.IUserDataAccountSystemAccessManagerStatics'
    _iid_ = Guid('{9d6b11b9-cbe5-45f5-822b-c267b81dbdb6}')
    @winrt_commethod(6)
    def AddAndShowDeviceAccountsAsync(self, accounts: win32more.Windows.Foundation.Collections.IIterable[win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration]) -> win32more.Windows.Foundation.IAsyncOperation[win32more.Windows.Foundation.Collections.IVectorView[WinRT_String]]: ...
class IUserDataAccountSystemAccessManagerStatics2(ComPtr):
    extends: win32more.Windows.Win32.System.WinRT.IInspectable
    _classid_ = 'Windows.ApplicationModel.UserDataAccounts.SystemAccess.IUserDataAccountSystemAccessManagerStatics2'
    _iid_ = Guid('{943f854d-4b4e-439f-83d3-979b27c05ac7}')
    @winrt_commethod(6)
    def SuppressLocalAccountWithAccountAsync(self, userDataAccountId: WinRT_String) -> win32more.Windows.Foundation.IAsyncAction: ...
    @winrt_commethod(7)
    def CreateDeviceAccountAsync(self, account: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration) -> win32more.Windows.Foundation.IAsyncOperation[WinRT_String]: ...
    @winrt_commethod(8)
    def DeleteDeviceAccountAsync(self, accountId: WinRT_String) -> win32more.Windows.Foundation.IAsyncAction: ...
    @winrt_commethod(9)
    def GetDeviceAccountConfigurationAsync(self, accountId: WinRT_String) -> win32more.Windows.Foundation.IAsyncOperation[win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration]: ...
class UserDataAccountSystemAccessManager(ComPtr):
    extends: win32more.Windows.Win32.System.WinRT.IInspectable
    _classid_ = 'Windows.ApplicationModel.UserDataAccounts.SystemAccess.UserDataAccountSystemAccessManager'
    @winrt_classmethod
    def SuppressLocalAccountWithAccountAsync(cls: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IUserDataAccountSystemAccessManagerStatics2, userDataAccountId: WinRT_String) -> win32more.Windows.Foundation.IAsyncAction: ...
    @winrt_classmethod
    def CreateDeviceAccountAsync(cls: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IUserDataAccountSystemAccessManagerStatics2, account: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration) -> win32more.Windows.Foundation.IAsyncOperation[WinRT_String]: ...
    @winrt_classmethod
    def DeleteDeviceAccountAsync(cls: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IUserDataAccountSystemAccessManagerStatics2, accountId: WinRT_String) -> win32more.Windows.Foundation.IAsyncAction: ...
    @winrt_classmethod
    def GetDeviceAccountConfigurationAsync(cls: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IUserDataAccountSystemAccessManagerStatics2, accountId: WinRT_String) -> win32more.Windows.Foundation.IAsyncOperation[win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration]: ...
    @winrt_classmethod
    def AddAndShowDeviceAccountsAsync(cls: win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.IUserDataAccountSystemAccessManagerStatics, accounts: win32more.Windows.Foundation.Collections.IIterable[win32more.Windows.ApplicationModel.UserDataAccounts.SystemAccess.DeviceAccountConfiguration]) -> win32more.Windows.Foundation.IAsyncOperation[win32more.Windows.Foundation.Collections.IVectorView[WinRT_String]]: ...


make_ready(__name__)
