"""
@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 typing
import yandex.cloud.mdb.clickhouse.v1.cluster_extension_pb2

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class GetClusterExtensionRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    EXTENSION_NAME_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    extension_name: builtins.str
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        extension_name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "extension_name", b"extension_name"]) -> None: ...

global___GetClusterExtensionRequest = GetClusterExtensionRequest

@typing.final
class ListClusterExtensionsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    PAGE_SIZE_FIELD_NUMBER: builtins.int
    PAGE_TOKEN_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    page_size: builtins.int
    page_token: builtins.str
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        page_size: builtins.int = ...,
        page_token: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "page_size", b"page_size", "page_token", b"page_token"]) -> None: ...

global___ListClusterExtensionsRequest = ListClusterExtensionsRequest

@typing.final
class ListClusterExtensionsResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXTENSIONS_FIELD_NUMBER: builtins.int
    NEXT_PAGE_TOKEN_FIELD_NUMBER: builtins.int
    next_page_token: builtins.str
    @property
    def extensions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[yandex.cloud.mdb.clickhouse.v1.cluster_extension_pb2.ClusterExtension]: ...
    def __init__(
        self,
        *,
        extensions: collections.abc.Iterable[yandex.cloud.mdb.clickhouse.v1.cluster_extension_pb2.ClusterExtension] | None = ...,
        next_page_token: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["extensions", b"extensions", "next_page_token", b"next_page_token"]) -> None: ...

global___ListClusterExtensionsResponse = ListClusterExtensionsResponse

@typing.final
class CreateClusterExtensionRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    EXTENSION_SPEC_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    @property
    def extension_spec(self) -> global___ExtensionSpec: ...
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        extension_spec: global___ExtensionSpec | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["extension_spec", b"extension_spec"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "extension_spec", b"extension_spec"]) -> None: ...

global___CreateClusterExtensionRequest = CreateClusterExtensionRequest

@typing.final
class CreateClusterExtensionMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    EXTENSION_NAME_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    extension_name: builtins.str
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        extension_name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "extension_name", b"extension_name"]) -> None: ...

global___CreateClusterExtensionMetadata = CreateClusterExtensionMetadata

@typing.final
class DeleteClusterExtensionRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    EXTENSION_NAME_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    extension_name: builtins.str
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        extension_name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "extension_name", b"extension_name"]) -> None: ...

global___DeleteClusterExtensionRequest = DeleteClusterExtensionRequest

@typing.final
class DeleteClusterExtensionMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    EXTENSION_NAME_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    extension_name: builtins.str
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        extension_name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "extension_name", b"extension_name"]) -> None: ...

global___DeleteClusterExtensionMetadata = DeleteClusterExtensionMetadata

@typing.final
class UpdateClusterExtensionRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    EXTENSION_SPEC_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    @property
    def extension_spec(self) -> global___ExtensionSpec: ...
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        extension_spec: global___ExtensionSpec | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["extension_spec", b"extension_spec"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "extension_spec", b"extension_spec"]) -> None: ...

global___UpdateClusterExtensionRequest = UpdateClusterExtensionRequest

@typing.final
class UpdateClusterExtensionMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    EXTENSION_NAME_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    extension_name: builtins.str
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        extension_name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "extension_name", b"extension_name"]) -> None: ...

global___UpdateClusterExtensionMetadata = UpdateClusterExtensionMetadata

@typing.final
class SetClusterExtensionsRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    EXTENSION_SPECS_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    @property
    def extension_specs(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ExtensionSpec]: ...
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        extension_specs: collections.abc.Iterable[global___ExtensionSpec] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["cluster_id", b"cluster_id", "extension_specs", b"extension_specs"]) -> None: ...

global___SetClusterExtensionsRequest = SetClusterExtensionsRequest

@typing.final
class SetClusterExtensionsMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLUSTER_ID_FIELD_NUMBER: builtins.int
    ADDED_EXTENSION_NAMES_FIELD_NUMBER: builtins.int
    UPDATED_EXTENSION_NAMES_FIELD_NUMBER: builtins.int
    DELETED_EXTENSION_NAMES_FIELD_NUMBER: builtins.int
    cluster_id: builtins.str
    @property
    def added_extension_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def updated_extension_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def deleted_extension_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        cluster_id: builtins.str = ...,
        added_extension_names: collections.abc.Iterable[builtins.str] | None = ...,
        updated_extension_names: collections.abc.Iterable[builtins.str] | None = ...,
        deleted_extension_names: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["added_extension_names", b"added_extension_names", "cluster_id", b"cluster_id", "deleted_extension_names", b"deleted_extension_names", "updated_extension_names", b"updated_extension_names"]) -> None: ...

global___SetClusterExtensionsMetadata = SetClusterExtensionsMetadata

@typing.final
class ExtensionSpec(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___ExtensionSpec = ExtensionSpec
