"""
@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 MicrosoftADVpcSettings(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SUBNET_IDS_FIELD_NUMBER: builtins.int
    VPC_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def subnet_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    vpc_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        subnet_ids: collections.abc.Iterable[builtins.str] | None = ...,
        vpc_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "subnet_ids", b"subnet_ids", "vpc_id", b"vpc_id"]) -> None: ...

global___MicrosoftADVpcSettings = MicrosoftADVpcSettings

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CREATE_ALIAS_FIELD_NUMBER: builtins.int
    EDITION_FIELD_NUMBER: builtins.int
    ENABLE_SSO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PASSWORD_FIELD_NUMBER: builtins.int
    SHORT_NAME_FIELD_NUMBER: builtins.int
    VPC_SETTINGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    create_alias: builtins.bool
    edition: builtins.str
    enable_sso: builtins.bool
    name: builtins.str
    password: builtins.str
    short_name: builtins.str
    @property
    def vpc_settings(self) -> global___MicrosoftADVpcSettings: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        create_alias: builtins.bool = ...,
        edition: builtins.str = ...,
        enable_sso: builtins.bool = ...,
        name: builtins.str = ...,
        password: builtins.str = ...,
        short_name: builtins.str = ...,
        vpc_settings: global___MicrosoftADVpcSettings | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "vpc_settings", b"vpc_settings"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["create_alias", b"create_alias", "edition", b"edition", "enable_sso", b"enable_sso", "name", b"name", "password", b"password", "resource_info", b"resource_info", "short_name", b"short_name", "vpc_settings", b"vpc_settings"]) -> None: ...

global___MicrosoftAD = MicrosoftAD

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

    MICROSOFT_AD_FIELD_NUMBER: builtins.int
    SIMPLE_AD_FIELD_NUMBER: builtins.int
    @property
    def microsoft_ad(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MicrosoftAD]: ...
    @property
    def simple_ad(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SimpleAD]: ...
    def __init__(
        self,
        *,
        microsoft_ad: collections.abc.Iterable[global___MicrosoftAD] | None = ...,
        simple_ad: collections.abc.Iterable[global___SimpleAD] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["microsoft_ad", b"microsoft_ad", "simple_ad", b"simple_ad"]) -> None: ...

global___DirectoryService = DirectoryService

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SUBNET_IDS_FIELD_NUMBER: builtins.int
    VPC_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def subnet_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    vpc_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        subnet_ids: collections.abc.Iterable[builtins.str] | None = ...,
        vpc_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "subnet_ids", b"subnet_ids", "vpc_id", b"vpc_id"]) -> None: ...

global___SimpleADVpcSettings = SimpleADVpcSettings

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CREATE_ALIAS_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    ENABLE_SSO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PASSWORD_FIELD_NUMBER: builtins.int
    SHORT_NAME_FIELD_NUMBER: builtins.int
    SIZE_FIELD_NUMBER: builtins.int
    VPC_SETTINGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    create_alias: builtins.bool
    description: builtins.str
    enable_sso: builtins.bool
    name: builtins.str
    password: builtins.str
    short_name: builtins.str
    size: builtins.str
    @property
    def vpc_settings(self) -> global___SimpleADVpcSettings: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        create_alias: builtins.bool = ...,
        description: builtins.str = ...,
        enable_sso: builtins.bool = ...,
        name: builtins.str = ...,
        password: builtins.str = ...,
        short_name: builtins.str = ...,
        size: builtins.str = ...,
        vpc_settings: global___SimpleADVpcSettings | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "vpc_settings", b"vpc_settings"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["create_alias", b"create_alias", "description", b"description", "enable_sso", b"enable_sso", "name", b"name", "password", b"password", "resource_info", b"resource_info", "short_name", b"short_name", "size", b"size", "vpc_settings", b"vpc_settings"]) -> None: ...

global___SimpleAD = SimpleAD
