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

import enum

import winrt.system
from winrt._winrt_windows_networking_vpn import (
    VpnAppId,
    VpnChannel,
    VpnChannelActivityEventArgs,
    VpnChannelActivityStateChangedArgs,
    VpnChannelConfiguration,
    VpnCredential,
    VpnCustomCheckBox,
    VpnCustomComboBox,
    VpnCustomEditBox,
    VpnCustomErrorBox,
    VpnCustomPromptBooleanInput,
    VpnCustomPromptOptionSelector,
    VpnCustomPromptText,
    VpnCustomPromptTextInput,
    VpnCustomTextBox,
    VpnDomainNameAssignment,
    VpnDomainNameInfo,
    VpnForegroundActivatedEventArgs,
    VpnForegroundActivationOperation,
    VpnInterfaceId,
    VpnManagementAgent,
    VpnNamespaceAssignment,
    VpnNamespaceInfo,
    VpnNativeProfile,
    VpnPacketBuffer,
    VpnPacketBufferList,
    VpnPickedCredential,
    VpnPlugInProfile,
    VpnRoute,
    VpnRouteAssignment,
    VpnSystemHealth,
    VpnTrafficFilter,
    VpnTrafficFilterAssignment,
    _IVpnChannelStatics,
    IVpnChannelStatics,
    _IVpnCredential,
    IVpnCredential,
    _IVpnCustomPrompt,
    IVpnCustomPrompt,
    _IVpnCustomPromptElement,
    IVpnCustomPromptElement,
    _IVpnDomainNameInfoFactory,
    IVpnDomainNameInfoFactory,
    _IVpnInterfaceIdFactory,
    IVpnInterfaceIdFactory,
    _IVpnNamespaceInfoFactory,
    IVpnNamespaceInfoFactory,
    _IVpnPacketBufferFactory,
    IVpnPacketBufferFactory,
    _IVpnPlugIn,
    IVpnPlugIn,
    _IVpnPlugInReconnectTransport,
    IVpnPlugInReconnectTransport,
    _IVpnProfile,
    IVpnProfile,
    _IVpnRouteFactory,
    IVpnRouteFactory,
)

__all__ = [
    "VpnAppIdType",
    "VpnAuthenticationMethod",
    "VpnChannelActivityEventType",
    "VpnChannelRequestCredentialsOptions",
    "VpnCredentialType",
    "VpnDataPathType",
    "VpnDomainNameType",
    "VpnIPProtocol",
    "VpnManagementConnectionStatus",
    "VpnManagementErrorStatus",
    "VpnNativeProtocolType",
    "VpnPacketBufferStatus",
    "VpnRoutingPolicyType",
    "VpnAppId",
    "VpnChannel",
    "VpnChannelActivityEventArgs",
    "VpnChannelActivityStateChangedArgs",
    "VpnChannelConfiguration",
    "VpnCredential",
    "VpnCustomCheckBox",
    "VpnCustomComboBox",
    "VpnCustomEditBox",
    "VpnCustomErrorBox",
    "VpnCustomPromptBooleanInput",
    "VpnCustomPromptOptionSelector",
    "VpnCustomPromptText",
    "VpnCustomPromptTextInput",
    "VpnCustomTextBox",
    "VpnDomainNameAssignment",
    "VpnDomainNameInfo",
    "VpnForegroundActivatedEventArgs",
    "VpnForegroundActivationOperation",
    "VpnInterfaceId",
    "VpnManagementAgent",
    "VpnNamespaceAssignment",
    "VpnNamespaceInfo",
    "VpnNativeProfile",
    "VpnPacketBuffer",
    "VpnPacketBufferList",
    "VpnPickedCredential",
    "VpnPlugInProfile",
    "VpnRoute",
    "VpnRouteAssignment",
    "VpnSystemHealth",
    "VpnTrafficFilter",
    "VpnTrafficFilterAssignment",
    "IVpnChannelStatics",
    "IVpnCredential",
    "IVpnCustomPrompt",
    "IVpnCustomPromptElement",
    "IVpnDomainNameInfoFactory",
    "IVpnInterfaceIdFactory",
    "IVpnNamespaceInfoFactory",
    "IVpnPacketBufferFactory",
    "IVpnPlugIn",
    "IVpnPlugInReconnectTransport",
    "IVpnProfile",
    "IVpnRouteFactory",
]

class VpnAppIdType(enum.IntEnum):
    PACKAGE_FAMILY_NAME = 0
    FULLY_QUALIFIED_BINARY_NAME = 1
    FILE_PATH = 2

class VpnAuthenticationMethod(enum.IntEnum):
    MSCHAPV2 = 0
    EAP = 1
    CERTIFICATE = 2
    PRESHARED_KEY = 3

class VpnChannelActivityEventType(enum.IntEnum):
    IDLE = 0
    ACTIVE = 1

class VpnChannelRequestCredentialsOptions(enum.IntFlag):
    NONE = 0x0
    RETRYING = 0x1
    USE_FOR_SINGLE_SIGN_IN = 0x2

class VpnCredentialType(enum.IntEnum):
    USERNAME_PASSWORD = 0
    USERNAME_OTP_PIN = 1
    USERNAME_PASSWORD_AND_PIN = 2
    USERNAME_PASSWORD_CHANGE = 3
    SMART_CARD = 4
    PROTECTED_CERTIFICATE = 5
    UN_PROTECTED_CERTIFICATE = 6

class VpnDataPathType(enum.IntEnum):
    SEND = 0
    RECEIVE = 1

class VpnDomainNameType(enum.IntEnum):
    SUFFIX = 0
    FULLY_QUALIFIED = 1
    RESERVED = 65535

class VpnIPProtocol(enum.IntEnum):
    NONE = 0
    TCP = 6
    UDP = 17
    ICMP = 1
    IPV6_ICMP = 58
    IGMP = 2
    PGM = 113

class VpnManagementConnectionStatus(enum.IntEnum):
    DISCONNECTED = 0
    DISCONNECTING = 1
    CONNECTED = 2
    CONNECTING = 3

class VpnManagementErrorStatus(enum.IntEnum):
    OK = 0
    OTHER = 1
    INVALID_XML_SYNTAX = 2
    PROFILE_NAME_TOO_LONG = 3
    PROFILE_INVALID_APP_ID = 4
    ACCESS_DENIED = 5
    CANNOT_FIND_PROFILE = 6
    ALREADY_DISCONNECTING = 7
    ALREADY_CONNECTED = 8
    GENERAL_AUTHENTICATION_FAILURE = 9
    EAP_FAILURE = 10
    SMART_CARD_FAILURE = 11
    CERTIFICATE_FAILURE = 12
    SERVER_CONFIGURATION = 13
    NO_CONNECTION = 14
    SERVER_CONNECTION = 15
    USER_NAME_PASSWORD = 16
    DNS_NOT_RESOLVABLE = 17
    INVALID_IP = 18

class VpnNativeProtocolType(enum.IntEnum):
    PPTP = 0
    L2TP = 1
    IPSEC_IKEV2 = 2

class VpnPacketBufferStatus(enum.IntEnum):
    OK = 0
    INVALID_BUFFER_SIZE = 1

class VpnRoutingPolicyType(enum.IntEnum):
    SPLIT_ROUTING = 0
    FORCE_ALL_TRAFFIC_OVER_VPN = 1

