"""
@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.k8s.v1.cluster_pb2

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

    def __init__(
        self,
    ) -> None: ...

global___ListVersionsRequest = ListVersionsRequest

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

    AVAILABLE_VERSIONS_FIELD_NUMBER: builtins.int
    @property
    def available_versions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AvailableVersions]:
        """Versions available in the specified release channel."""

    def __init__(
        self,
        *,
        available_versions: collections.abc.Iterable[global___AvailableVersions] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["available_versions", b"available_versions"]) -> None: ...

global___ListVersionsResponse = ListVersionsResponse

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

    RELEASE_CHANNEL_FIELD_NUMBER: builtins.int
    VERSIONS_FIELD_NUMBER: builtins.int
    release_channel: yandex.cloud.k8s.v1.cluster_pb2.ReleaseChannel.ValueType
    """Release channel: `RAPID`, `REGULAR` or `STABLE`. For more details see [documentation](/docs/managed-kubernetes/concepts/release-channels-and-updates)."""
    @property
    def versions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """Version of Kubernetes components."""

    def __init__(
        self,
        *,
        release_channel: yandex.cloud.k8s.v1.cluster_pb2.ReleaseChannel.ValueType = ...,
        versions: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["release_channel", b"release_channel", "versions", b"versions"]) -> None: ...

global___AvailableVersions = AvailableVersions
