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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COMPUTE_TYPE_NAME_FIELD_NUMBER: builtins.int
    ROOT_VOLUME_SIZE_GIB_FIELD_NUMBER: builtins.int
    RUNNING_MODE_FIELD_NUMBER: builtins.int
    RUNNING_MODE_AUTO_STOP_TIMEOUT_IN_MINUTES_FIELD_NUMBER: builtins.int
    USER_VOLUME_SIZE_GIB_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    compute_type_name: builtins.str
    root_volume_size_gib: builtins.int
    running_mode: builtins.str
    running_mode_auto_stop_timeout_in_minutes: builtins.int
    user_volume_size_gib: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        compute_type_name: builtins.str = ...,
        root_volume_size_gib: builtins.int = ...,
        running_mode: builtins.str = ...,
        running_mode_auto_stop_timeout_in_minutes: builtins.int = ...,
        user_volume_size_gib: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["compute_type_name", b"compute_type_name", "resource_info", b"resource_info", "root_volume_size_gib", b"root_volume_size_gib", "running_mode", b"running_mode", "running_mode_auto_stop_timeout_in_minutes", b"running_mode_auto_stop_timeout_in_minutes", "user_volume_size_gib", b"user_volume_size_gib"]) -> None: ...

global___WorkspaceWorkspaceProperties = WorkspaceWorkspaceProperties

@typing_extensions.final
class Workspace(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
    BUNDLE_ID_FIELD_NUMBER: builtins.int
    DIRECTORY_ID_FIELD_NUMBER: builtins.int
    ROOT_VOLUME_ENCRYPTION_ENABLED_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    USER_NAME_FIELD_NUMBER: builtins.int
    USER_VOLUME_ENCRYPTION_ENABLED_FIELD_NUMBER: builtins.int
    VOLUME_ENCRYPTION_KEY_FIELD_NUMBER: builtins.int
    WORKSPACE_PROPERTIES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    bundle_id: builtins.str
    directory_id: builtins.str
    root_volume_encryption_enabled: builtins.bool
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    user_name: builtins.str
    user_volume_encryption_enabled: builtins.bool
    volume_encryption_key: builtins.str
    @property
    def workspace_properties(self) -> global___WorkspaceWorkspaceProperties: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        bundle_id: builtins.str = ...,
        directory_id: builtins.str = ...,
        root_volume_encryption_enabled: builtins.bool = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        user_name: builtins.str = ...,
        user_volume_encryption_enabled: builtins.bool = ...,
        volume_encryption_key: builtins.str = ...,
        workspace_properties: global___WorkspaceWorkspaceProperties | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "workspace_properties", b"workspace_properties"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["bundle_id", b"bundle_id", "directory_id", b"directory_id", "resource_info", b"resource_info", "root_volume_encryption_enabled", b"root_volume_encryption_enabled", "tags", b"tags", "user_name", b"user_name", "user_volume_encryption_enabled", b"user_volume_encryption_enabled", "volume_encryption_key", b"volume_encryption_key", "workspace_properties", b"workspace_properties"]) -> None: ...

global___Workspace = Workspace

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

    WORKSPACE_FIELD_NUMBER: builtins.int
    @property
    def workspace(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Workspace]: ...
    def __init__(
        self,
        *,
        workspace: collections.abc.Iterable[global___Workspace] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["workspace", b"workspace"]) -> None: ...

global___WorkSpaces = WorkSpaces
