"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""

import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.field_mask_pb2
import google.protobuf.internal.containers
import google.protobuf.message
import typing
import yandex.cloud.video.v1.manifest_pb2
import yandex.cloud.video.v1.video_pb2

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["video_id", b"video_id"]) -> None: ...

global___GetVideoRequest = GetVideoRequest

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

    CHANNEL_ID_FIELD_NUMBER: builtins.int
    PAGE_SIZE_FIELD_NUMBER: builtins.int
    PAGE_TOKEN_FIELD_NUMBER: builtins.int
    ORDER_BY_FIELD_NUMBER: builtins.int
    FILTER_FIELD_NUMBER: builtins.int
    channel_id: builtins.str
    """ID of the channel."""
    page_size: builtins.int
    """The maximum number of the results per page to return. Default value: 100."""
    page_token: builtins.str
    """Page token for getting the next page of the result."""
    order_by: builtins.str
    """By which column the listing should be ordered and in which direction,
    format is "createdAt desc". "id asc" if omitted.
    Possible fields: ["id", "createdAt", "updatedAt"]
    Both snake_case and camelCase are supported for fields.
    """
    filter: builtins.str
    """Filter expression that filters resources listed in the response.
    Expressions are composed of terms connected by logic operators.
    Value in quotes: `'` or `"`
    Example: "key1='value' AND key2='value'"
    Supported operators: ["AND"].
    Supported fields: ["title", "status", "visibility_status"]
    Both snake_case and camelCase are supported for fields.
    """
    def __init__(
        self,
        *,
        channel_id: builtins.str = ...,
        page_size: builtins.int = ...,
        page_token: builtins.str = ...,
        order_by: builtins.str = ...,
        filter: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["channel_id", b"channel_id", "filter", b"filter", "order_by", b"order_by", "page_size", b"page_size", "page_token", b"page_token"]) -> None: ...

global___ListVideoRequest = ListVideoRequest

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

    VIDEOS_FIELD_NUMBER: builtins.int
    NEXT_PAGE_TOKEN_FIELD_NUMBER: builtins.int
    next_page_token: builtins.str
    """Token for getting the next page."""
    @property
    def videos(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[yandex.cloud.video.v1.video_pb2.Video]: ...
    def __init__(
        self,
        *,
        videos: collections.abc.Iterable[yandex.cloud.video.v1.video_pb2.Video] | None = ...,
        next_page_token: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["next_page_token", b"next_page_token", "videos", b"videos"]) -> None: ...

global___ListVideoResponse = ListVideoResponse

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

    @typing.final
    class LabelsEntry(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.Literal["key", b"key", "value", b"value"]) -> None: ...

    CHANNEL_ID_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    THUMBNAIL_ID_FIELD_NUMBER: builtins.int
    LABELS_FIELD_NUMBER: builtins.int
    TUSD_FIELD_NUMBER: builtins.int
    PUBLIC_ACCESS_FIELD_NUMBER: builtins.int
    AUTH_SYSTEM_ACCESS_FIELD_NUMBER: builtins.int
    channel_id: builtins.str
    """ID of the channel."""
    title: builtins.str
    """Video title."""
    description: builtins.str
    """Video description."""
    thumbnail_id: builtins.str
    """ID of the thumbnail."""
    @property
    def labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]:
        """Custom labels as `` key:value `` pairs. Maximum 64 per resource."""

    @property
    def tusd(self) -> global___VideoTUSDParams:
        """Upload video using the tus protocol."""

    @property
    def public_access(self) -> global___VideoPublicAccessParams:
        """Video is available to everyone."""

    @property
    def auth_system_access(self) -> global___VideoAuthSystemAccessParams:
        """Checking access rights using the authorization system."""

    def __init__(
        self,
        *,
        channel_id: builtins.str = ...,
        title: builtins.str = ...,
        description: builtins.str = ...,
        thumbnail_id: builtins.str = ...,
        labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        tusd: global___VideoTUSDParams | None = ...,
        public_access: global___VideoPublicAccessParams | None = ...,
        auth_system_access: global___VideoAuthSystemAccessParams | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["access_rights", b"access_rights", "auth_system_access", b"auth_system_access", "public_access", b"public_access", "source", b"source", "tusd", b"tusd"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["access_rights", b"access_rights", "auth_system_access", b"auth_system_access", "channel_id", b"channel_id", "description", b"description", "labels", b"labels", "public_access", b"public_access", "source", b"source", "thumbnail_id", b"thumbnail_id", "title", b"title", "tusd", b"tusd"]) -> None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["access_rights", b"access_rights"]) -> typing.Literal["public_access", "auth_system_access"] | None: ...
    @typing.overload
    def WhichOneof(self, oneof_group: typing.Literal["source", b"source"]) -> typing.Literal["tusd"] | None: ...

global___CreateVideoRequest = CreateVideoRequest

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

    FILE_SIZE_FIELD_NUMBER: builtins.int
    FILE_NAME_FIELD_NUMBER: builtins.int
    file_size: builtins.int
    """File size."""
    file_name: builtins.str
    """File name."""
    def __init__(
        self,
        *,
        file_size: builtins.int = ...,
        file_name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["file_name", b"file_name", "file_size", b"file_size"]) -> None: ...

global___VideoTUSDParams = VideoTUSDParams

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

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

global___VideoPublicAccessParams = VideoPublicAccessParams

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

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

global___VideoAuthSystemAccessParams = VideoAuthSystemAccessParams

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["video_id", b"video_id"]) -> None: ...

global___CreateVideoMetadata = CreateVideoMetadata

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

    @typing.final
    class LabelsEntry(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.Literal["key", b"key", "value", b"value"]) -> None: ...

    VIDEO_ID_FIELD_NUMBER: builtins.int
    FIELD_MASK_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    THUMBNAIL_ID_FIELD_NUMBER: builtins.int
    LABELS_FIELD_NUMBER: builtins.int
    PUBLIC_ACCESS_FIELD_NUMBER: builtins.int
    AUTH_SYSTEM_ACCESS_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    title: builtins.str
    """Video title."""
    description: builtins.str
    """Video description."""
    thumbnail_id: builtins.str
    """ID of the thumbnail."""
    @property
    def field_mask(self) -> google.protobuf.field_mask_pb2.FieldMask:
        """Field mask that specifies which fields of the video are going to be updated."""

    @property
    def labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]:
        """Custom labels as `` key:value `` pairs. Maximum 64 per resource."""

    @property
    def public_access(self) -> global___VideoPublicAccessParams: ...
    @property
    def auth_system_access(self) -> global___VideoAuthSystemAccessParams: ...
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
        field_mask: google.protobuf.field_mask_pb2.FieldMask | None = ...,
        title: builtins.str = ...,
        description: builtins.str = ...,
        thumbnail_id: builtins.str = ...,
        labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        public_access: global___VideoPublicAccessParams | None = ...,
        auth_system_access: global___VideoAuthSystemAccessParams | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["access_rights", b"access_rights", "auth_system_access", b"auth_system_access", "field_mask", b"field_mask", "public_access", b"public_access"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["access_rights", b"access_rights", "auth_system_access", b"auth_system_access", "description", b"description", "field_mask", b"field_mask", "labels", b"labels", "public_access", b"public_access", "thumbnail_id", b"thumbnail_id", "title", b"title", "video_id", b"video_id"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["access_rights", b"access_rights"]) -> typing.Literal["public_access", "auth_system_access"] | None: ...

global___UpdateVideoRequest = UpdateVideoRequest

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["video_id", b"video_id"]) -> None: ...

global___UpdateVideoMetadata = UpdateVideoMetadata

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["video_id", b"video_id"]) -> None: ...

global___DeleteVideoRequest = DeleteVideoRequest

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["video_id", b"video_id"]) -> None: ...

global___DeleteVideoMetadata = DeleteVideoMetadata

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    PUBLISH_FIELD_NUMBER: builtins.int
    UNPUBLISH_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    @property
    def publish(self) -> global___PublishVideoAction: ...
    @property
    def unpublish(self) -> global___UnpublishVideoAction: ...
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
        publish: global___PublishVideoAction | None = ...,
        unpublish: global___UnpublishVideoAction | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["action", b"action", "publish", b"publish", "unpublish", b"unpublish"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["action", b"action", "publish", b"publish", "unpublish", b"unpublish", "video_id", b"video_id"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["action", b"action"]) -> typing.Literal["publish", "unpublish"] | None: ...

global___PerformVideoActionRequest = PerformVideoActionRequest

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

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

global___PublishVideoAction = PublishVideoAction

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

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

global___UnpublishVideoAction = UnpublishVideoAction

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["video_id", b"video_id"]) -> None: ...

global___PerformVideoActionMetadata = PerformVideoActionMetadata

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    PARAMS_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    @property
    def params(self) -> global___VideoPlayerParams: ...
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
        params: global___VideoPlayerParams | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["params", b"params"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["params", b"params", "video_id", b"video_id"]) -> None: ...

global___GetVideoPlayerURLRequest = GetVideoPlayerURLRequest

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

    MUTE_FIELD_NUMBER: builtins.int
    AUTOPLAY_FIELD_NUMBER: builtins.int
    HIDDEN_FIELD_NUMBER: builtins.int
    mute: builtins.bool
    """If true, a player will be muted by default."""
    autoplay: builtins.bool
    """If true, playback will start automatically."""
    hidden: builtins.bool
    """If true, a player interface will be hidden by default."""
    def __init__(
        self,
        *,
        mute: builtins.bool = ...,
        autoplay: builtins.bool = ...,
        hidden: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["autoplay", b"autoplay", "hidden", b"hidden", "mute", b"mute"]) -> None: ...

global___VideoPlayerParams = VideoPlayerParams

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

    PLAYER_URL_FIELD_NUMBER: builtins.int
    HTML_FIELD_NUMBER: builtins.int
    player_url: builtins.str
    """Direct link to the video."""
    html: builtins.str
    """HTML embed code in Iframe format."""
    def __init__(
        self,
        *,
        player_url: builtins.str = ...,
        html: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["html", b"html", "player_url", b"player_url"]) -> None: ...

global___GetVideoPlayerURLResponse = GetVideoPlayerURLResponse

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

    VIDEO_ID_FIELD_NUMBER: builtins.int
    video_id: builtins.str
    """ID of the video."""
    def __init__(
        self,
        *,
        video_id: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["video_id", b"video_id"]) -> None: ...

global___GetVideoManifestsRequest = GetVideoManifestsRequest

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

    MANIFESTS_FIELD_NUMBER: builtins.int
    @property
    def manifests(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[yandex.cloud.video.v1.manifest_pb2.Manifest]: ...
    def __init__(
        self,
        *,
        manifests: collections.abc.Iterable[yandex.cloud.video.v1.manifest_pb2.Manifest] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["manifests", b"manifests"]) -> None: ...

global___GetVideoManifestsResponse = GetVideoManifestsResponse
