# WARNING: Please don't edit this file. It was generated by Python/WinRT v3.1.0

import enum
import typing
import uuid as _uuid

import winrt.system
from winrt._winrt_windows_networking_connectivity import (
    NetworkUsageStates,
    AttributedNetworkUsage,
    CellularApnContext,
    ConnectionCost,
    ConnectionProfile,
    ConnectionProfileFilter,
    ConnectionSession,
    ConnectivityInterval,
    ConnectivityManager,
    DataPlanStatus,
    DataPlanUsage,
    DataUsage,
    IPInformation,
    LanIdentifier,
    LanIdentifierData,
    NetworkAdapter,
    NetworkInformation,
    NetworkItem,
    NetworkSecuritySettings,
    NetworkStateChangeEventDetails,
    NetworkUsage,
    ProviderNetworkUsage,
    ProxyConfiguration,
    RoutePolicy,
    WlanConnectionProfileDetails,
    WwanConnectionProfileDetails,
)

__all__ = [
    "CellularApnAuthenticationType",
    "ConnectionProfileDeleteStatus",
    "DataUsageGranularity",
    "DomainAuthenticationKind",
    "DomainConnectivityLevel",
    "NetworkAuthenticationType",
    "NetworkConnectivityLevel",
    "NetworkCostType",
    "NetworkEncryptionType",
    "NetworkTypes",
    "RoamingStates",
    "TriStates",
    "WwanDataClass",
    "WwanNetworkIPKind",
    "WwanNetworkRegistrationState",
    "NetworkUsageStates",
    "AttributedNetworkUsage",
    "CellularApnContext",
    "ConnectionCost",
    "ConnectionProfile",
    "ConnectionProfileFilter",
    "ConnectionSession",
    "ConnectivityInterval",
    "ConnectivityManager",
    "DataPlanStatus",
    "DataPlanUsage",
    "DataUsage",
    "IPInformation",
    "LanIdentifier",
    "LanIdentifierData",
    "NetworkAdapter",
    "NetworkInformation",
    "NetworkItem",
    "NetworkSecuritySettings",
    "NetworkStateChangeEventDetails",
    "NetworkUsage",
    "ProviderNetworkUsage",
    "ProxyConfiguration",
    "RoutePolicy",
    "WlanConnectionProfileDetails",
    "WwanConnectionProfileDetails",
    "NetworkStatusChangedEventHandler",
]

class CellularApnAuthenticationType(enum.IntEnum):
    NONE = 0
    PAP = 1
    CHAP = 2
    MSCHAPV2 = 3

class ConnectionProfileDeleteStatus(enum.IntEnum):
    SUCCESS = 0
    DENIED_BY_USER = 1
    DENIED_BY_SYSTEM = 2
    UNKNOWN_ERROR = 3

class DataUsageGranularity(enum.IntEnum):
    PER_MINUTE = 0
    PER_HOUR = 1
    PER_DAY = 2
    TOTAL = 3

class DomainAuthenticationKind(enum.IntEnum):
    NONE = 0
    LDAP = 1
    TLS = 2

class DomainConnectivityLevel(enum.IntEnum):
    NONE = 0
    UNAUTHENTICATED = 1
    AUTHENTICATED = 2

class NetworkAuthenticationType(enum.IntEnum):
    NONE = 0
    UNKNOWN = 1
    OPEN80211 = 2
    SHARED_KEY80211 = 3
    WPA = 4
    WPA_PSK = 5
    WPA_NONE = 6
    RSNA = 7
    RSNA_PSK = 8
    IHV = 9
    WPA3 = 10
    WPA3_ENTERPRISE192_BITS = 10
    WPA3_SAE = 11
    OWE = 12
    WPA3_ENTERPRISE = 13

class NetworkConnectivityLevel(enum.IntEnum):
    NONE = 0
    LOCAL_ACCESS = 1
    CONSTRAINED_INTERNET_ACCESS = 2
    INTERNET_ACCESS = 3

class NetworkCostType(enum.IntEnum):
    UNKNOWN = 0
    UNRESTRICTED = 1
    FIXED = 2
    VARIABLE = 3

class NetworkEncryptionType(enum.IntEnum):
    NONE = 0
    UNKNOWN = 1
    WEP = 2
    WEP40 = 3
    WEP104 = 4
    TKIP = 5
    CCMP = 6
    WPA_USE_GROUP = 7
    RSN_USE_GROUP = 8
    IHV = 9
    GCMP = 10
    GCMP256 = 11

class NetworkTypes(enum.IntFlag):
    NONE = 0x0
    INTERNET = 0x1
    PRIVATE_NETWORK = 0x2

class RoamingStates(enum.IntFlag):
    NONE = 0x0
    NOT_ROAMING = 0x1
    ROAMING = 0x2

class TriStates(enum.IntEnum):
    DO_NOT_CARE = 0
    NO = 1
    YES = 2

class WwanDataClass(enum.IntFlag):
    NONE = 0x0
    GPRS = 0x1
    EDGE = 0x2
    UMTS = 0x4
    HSDPA = 0x8
    HSUPA = 0x10
    LTE_ADVANCED = 0x20
    NEW_RADIO_NON_STANDALONE = 0x40
    NEW_RADIO_STANDALONE = 0x80
    CDMA1X_RTT = 0x10000
    CDMA1X_EVDO = 0x20000
    CDMA1X_EVDO_REV_A = 0x40000
    CDMA1X_EVDV = 0x80000
    CDMA3X_RTT = 0x100000
    CDMA1X_EVDO_REV_B = 0x200000
    CDMA_UMB = 0x400000
    CUSTOM = 0x80000000

class WwanNetworkIPKind(enum.IntEnum):
    NONE = 0
    IPV4 = 1
    IPV6 = 2
    IPV4V6 = 3
    IPV4V6V4_XLAT = 4

class WwanNetworkRegistrationState(enum.IntEnum):
    NONE = 0
    DEREGISTERED = 1
    SEARCHING = 2
    HOME = 3
    ROAMING = 4
    PARTNER = 5
    DENIED = 6

NetworkStatusChangedEventHandler = typing.Callable[[winrt.system.Object], None]
