"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import shared.shared_pb2
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class Microsoft_Network_privateEndpoints(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PRIVATE_ENDPOINTS_FIELD_NUMBER: builtins.int
    PRIVATE_ENDPOINTS_PRIVATE_DNS_ZONE_GROUPS_FIELD_NUMBER: builtins.int
    @property
    def private_endpoints(self) -> global___PrivateEndpoints: ...
    @property
    def private_endpoints_private_dns_zone_groups(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PrivateEndpointsPrivateDnsZoneGroups]: ...
    def __init__(
        self,
        *,
        private_endpoints: global___PrivateEndpoints | None = ...,
        private_endpoints_private_dns_zone_groups: collections.abc.Iterable[global___PrivateEndpointsPrivateDnsZoneGroups] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["private_endpoints", b"private_endpoints"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["private_endpoints", b"private_endpoints", "private_endpoints_private_dns_zone_groups", b"private_endpoints_private_dns_zone_groups"]) -> None: ...

global___Microsoft_Network_privateEndpoints = Microsoft_Network_privateEndpoints

@typing_extensions.final
class Subnet(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    id: builtins.str
    def __init__(
        self,
        *,
        id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["id", b"id"]) -> None: ...

global___Subnet = Subnet

@typing_extensions.final
class PrivateEndpointsPrivateDnsZoneGroups(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PRIVATE_DNS_ZONE_CONFIGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    @property
    def private_dns_zone_configs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PrivateDnsZoneConfig]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        private_dns_zone_configs: collections.abc.Iterable[global___PrivateDnsZoneConfig] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "private_dns_zone_configs", b"private_dns_zone_configs", "resource_info", b"resource_info"]) -> None: ...

global___PrivateEndpointsPrivateDnsZoneGroups = PrivateEndpointsPrivateDnsZoneGroups

@typing_extensions.final
class PrivateDnsZoneConfig(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    PRIVATE_DNS_ZONE_ID_FIELD_NUMBER: builtins.int
    name: builtins.str
    private_dns_zone_id: builtins.str
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        private_dns_zone_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "private_dns_zone_id", b"private_dns_zone_id"]) -> None: ...

global___PrivateDnsZoneConfig = PrivateDnsZoneConfig

@typing_extensions.final
class PrivateEndpoints(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class TagsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    LOCATION_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    EXTENDED_LOCATION_FIELD_NUMBER: builtins.int
    SUBNET_FIELD_NUMBER: builtins.int
    PRIVATE_LINK_SERVICE_CONNECTIONS_FIELD_NUMBER: builtins.int
    MANUAL_PRIVATE_LINK_SERVICE_CONNECTIONS_FIELD_NUMBER: builtins.int
    CUSTOM_DNS_CONFIGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    location: builtins.str
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def extended_location(self) -> global___ExtendedLocation: ...
    @property
    def subnet(self) -> global___Subnet: ...
    @property
    def private_link_service_connections(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PrivateLinkServiceConnection]: ...
    @property
    def manual_private_link_service_connections(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PrivateLinkServiceConnection]: ...
    @property
    def custom_dns_configs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CustomDnsConfigPropertiesFormat]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        location: builtins.str = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        extended_location: global___ExtendedLocation | None = ...,
        subnet: global___Subnet | None = ...,
        private_link_service_connections: collections.abc.Iterable[global___PrivateLinkServiceConnection] | None = ...,
        manual_private_link_service_connections: collections.abc.Iterable[global___PrivateLinkServiceConnection] | None = ...,
        custom_dns_configs: collections.abc.Iterable[global___CustomDnsConfigPropertiesFormat] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["extended_location", b"extended_location", "resource_info", b"resource_info", "subnet", b"subnet"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["custom_dns_configs", b"custom_dns_configs", "extended_location", b"extended_location", "location", b"location", "manual_private_link_service_connections", b"manual_private_link_service_connections", "name", b"name", "private_link_service_connections", b"private_link_service_connections", "resource_info", b"resource_info", "subnet", b"subnet", "tags", b"tags"]) -> None: ...

global___PrivateEndpoints = PrivateEndpoints

@typing_extensions.final
class CustomDnsConfigPropertiesFormat(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FQDN_FIELD_NUMBER: builtins.int
    IP_ADDRESSES_FIELD_NUMBER: builtins.int
    fqdn: builtins.str
    @property
    def ip_addresses(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        fqdn: builtins.str = ...,
        ip_addresses: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["fqdn", b"fqdn", "ip_addresses", b"ip_addresses"]) -> None: ...

global___CustomDnsConfigPropertiesFormat = CustomDnsConfigPropertiesFormat

@typing_extensions.final
class PrivateLinkServiceConnection(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PRIVATE_LINK_SERVICE_ID_FIELD_NUMBER: builtins.int
    GROUP_IDS_FIELD_NUMBER: builtins.int
    REQUEST_MESSAGE_FIELD_NUMBER: builtins.int
    PRIVATE_LINK_SERVICE_CONNECTION_STATE_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    private_link_service_id: builtins.str
    @property
    def group_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    request_message: builtins.str
    @property
    def private_link_service_connection_state(self) -> global___PrivateLinkServiceConnectionState: ...
    name: builtins.str
    def __init__(
        self,
        *,
        private_link_service_id: builtins.str = ...,
        group_ids: collections.abc.Iterable[builtins.str] | None = ...,
        request_message: builtins.str = ...,
        private_link_service_connection_state: global___PrivateLinkServiceConnectionState | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["private_link_service_connection_state", b"private_link_service_connection_state"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["group_ids", b"group_ids", "name", b"name", "private_link_service_connection_state", b"private_link_service_connection_state", "private_link_service_id", b"private_link_service_id", "request_message", b"request_message"]) -> None: ...

global___PrivateLinkServiceConnection = PrivateLinkServiceConnection

@typing_extensions.final
class PrivateLinkServiceConnectionState(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    STATUS_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    ACTIONS_REQUIRED_FIELD_NUMBER: builtins.int
    status: builtins.str
    description: builtins.str
    actions_required: builtins.str
    def __init__(
        self,
        *,
        status: builtins.str = ...,
        description: builtins.str = ...,
        actions_required: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["actions_required", b"actions_required", "description", b"description", "status", b"status"]) -> None: ...

global___PrivateLinkServiceConnectionState = PrivateLinkServiceConnectionState

@typing_extensions.final
class ExtendedLocation(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    name: builtins.str
    type: builtins.str
    def __init__(
        self,
        *,
        name: builtins.str = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "type", b"type"]) -> None: ...

global___ExtendedLocation = ExtendedLocation
