"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import bilireq.grpc.protos.bilibili.app.archive.middleware.v1.preload_pb2
import bilireq.grpc.protos.bilibili.app.dynamic.v2.dynamic_pb2
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.internal.enum_type_wrapper
import google.protobuf.message
import sys
import typing

if sys.version_info >= (3, 10):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class _OpusType:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _OpusTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_OpusType.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    OPUS_TYPE_DYN: _OpusType.ValueType  # 0
    OPUS_TYPE_ARTICLE: _OpusType.ValueType  # 1
    OPUS_TYPE_NOTE: _OpusType.ValueType  # 2
    OPUS_TYPE_WORD: _OpusType.ValueType  # 3

class OpusType(_OpusType, metaclass=_OpusTypeEnumTypeWrapper): ...

OPUS_TYPE_DYN: OpusType.ValueType  # 0
OPUS_TYPE_ARTICLE: OpusType.ValueType  # 1
OPUS_TYPE_NOTE: OpusType.ValueType  # 2
OPUS_TYPE_WORD: OpusType.ValueType  # 3
global___OpusType = OpusType

@typing_extensions.final
class OpusDetailReq(google.protobuf.message.Message):
    """"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OPUS_TYPE_FIELD_NUMBER: builtins.int
    OID_FIELD_NUMBER: builtins.int
    DYN_TYPE_FIELD_NUMBER: builtins.int
    SHARE_ID_FIELD_NUMBER: builtins.int
    SHARE_MODE_FIELD_NUMBER: builtins.int
    LOCAL_TIME_FIELD_NUMBER: builtins.int
    PLAYER_ARGS_FIELD_NUMBER: builtins.int
    CONFIG_FIELD_NUMBER: builtins.int
    opus_type: global___OpusType.ValueType
    """"""
    oid: builtins.int
    """"""
    dyn_type: builtins.int
    """"""
    share_id: builtins.str
    """"""
    share_mode: builtins.int
    """"""
    local_time: builtins.int
    """"""
    @property
    def player_args(self) -> bilireq.grpc.protos.bilibili.app.archive.middleware.v1.preload_pb2.PlayerArgs:
        """"""
    @property
    def config(self) -> bilireq.grpc.protos.bilibili.app.dynamic.v2.dynamic_pb2.Config:
        """"""
    def __init__(
        self,
        *,
        opus_type: global___OpusType.ValueType = ...,
        oid: builtins.int = ...,
        dyn_type: builtins.int = ...,
        share_id: builtins.str = ...,
        share_mode: builtins.int = ...,
        local_time: builtins.int = ...,
        player_args: bilireq.grpc.protos.bilibili.app.archive.middleware.v1.preload_pb2.PlayerArgs | None = ...,
        config: bilireq.grpc.protos.bilibili.app.dynamic.v2.dynamic_pb2.Config | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["config", b"config", "player_args", b"player_args"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["config", b"config", "dyn_type", b"dyn_type", "local_time", b"local_time", "oid", b"oid", "opus_type", b"opus_type", "player_args", b"player_args", "share_id", b"share_id", "share_mode", b"share_mode"]) -> None: ...

global___OpusDetailReq = OpusDetailReq

@typing_extensions.final
class OpusDetailResp(google.protobuf.message.Message):
    """"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OPUS_ITEM_FIELD_NUMBER: builtins.int
    @property
    def opus_item(self) -> global___OpusItem:
        """"""
    def __init__(
        self,
        *,
        opus_item: global___OpusItem | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["opus_item", b"opus_item"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["opus_item", b"opus_item"]) -> None: ...

global___OpusDetailResp = OpusDetailResp

@typing_extensions.final
class OpusItem(google.protobuf.message.Message):
    """"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OPUS_ID_FIELD_NUMBER: builtins.int
    OPUS_TYPE_FIELD_NUMBER: builtins.int
    OID_FIELD_NUMBER: builtins.int
    MODULES_FIELD_NUMBER: builtins.int
    EXTEND_FIELD_NUMBER: builtins.int
    opus_id: builtins.int
    """"""
    opus_type: global___OpusType.ValueType
    """"""
    oid: builtins.int
    """"""
    @property
    def modules(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[bilibili.app.dynamic.v2.dynamic_pb2.Module]:
        """"""
    @property
    def extend(self) -> bilireq.grpc.protos.bilibili.app.dynamic.v2.dynamic_pb2.Extend:
        """"""
    def __init__(
        self,
        *,
        opus_id: builtins.int = ...,
        opus_type: global___OpusType.ValueType = ...,
        oid: builtins.int = ...,
        modules: collections.abc.Iterable[bilibili.app.dynamic.v2.dynamic_pb2.Module] | None = ...,
        extend: bilireq.grpc.protos.bilibili.app.dynamic.v2.dynamic_pb2.Extend | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["extend", b"extend"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["extend", b"extend", "modules", b"modules", "oid", b"oid", "opus_id", b"opus_id", "opus_type", b"opus_type"]) -> None: ...

global___OpusItem = OpusItem
