"""
@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 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 Chronos(google.protobuf.message.Message):
    """"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MD5_FIELD_NUMBER: builtins.int
    FILE_FIELD_NUMBER: builtins.int
    SIGN_FIELD_NUMBER: builtins.int
    md5: builtins.str
    """"""
    file: builtins.str
    """"""
    sign: builtins.str
    """"""
    def __init__(
        self,
        *,
        md5: builtins.str = ...,
        file: builtins.str = ...,
        sign: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["file", b"file", "md5", b"md5", "sign", b"sign"]) -> None: ...

global___Chronos = Chronos

@typing_extensions.final
class CommandDm(google.protobuf.message.Message):
    """互动弹幕条目信息"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    OID_FIELD_NUMBER: builtins.int
    MID_FIELD_NUMBER: builtins.int
    COMMAND_FIELD_NUMBER: builtins.int
    CONTENT_FIELD_NUMBER: builtins.int
    PROGRESS_FIELD_NUMBER: builtins.int
    CTIME_FIELD_NUMBER: builtins.int
    MTIME_FIELD_NUMBER: builtins.int
    EXTRA_FIELD_NUMBER: builtins.int
    IDSTR_FIELD_NUMBER: builtins.int
    DISPLAY_FIELD_NUMBER: builtins.int
    id: builtins.int
    """弹幕id"""
    oid: builtins.int
    """对象视频cid"""
    mid: builtins.str
    """发送者mid"""
    command: builtins.str
    """互动弹幕指令"""
    content: builtins.str
    """互动弹幕正文"""
    progress: builtins.int
    """出现时间"""
    ctime: builtins.str
    """创建时间"""
    mtime: builtins.str
    """发布时间"""
    extra: builtins.str
    """扩展json数据"""
    idStr: builtins.str
    """弹幕id str类型"""
    display: builtins.int
    """"""
    def __init__(
        self,
        *,
        id: builtins.int = ...,
        oid: builtins.int = ...,
        mid: builtins.str = ...,
        command: builtins.str = ...,
        content: builtins.str = ...,
        progress: builtins.int = ...,
        ctime: builtins.str = ...,
        mtime: builtins.str = ...,
        extra: builtins.str = ...,
        idStr: builtins.str = ...,
        display: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["command", b"command", "content", b"content", "ctime", b"ctime", "display", b"display", "extra", b"extra", "id", b"id", "idStr", b"idStr", "mid", b"mid", "mtime", b"mtime", "oid", b"oid", "progress", b"progress"]) -> None: ...

global___CommandDm = CommandDm

@typing_extensions.final
class CommandDmOtt(google.protobuf.message.Message):
    """ott互动弹幕条目信息"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    OID_FIELD_NUMBER: builtins.int
    MID_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    COMMAND_FIELD_NUMBER: builtins.int
    CONTENT_FIELD_NUMBER: builtins.int
    STATE_FIELD_NUMBER: builtins.int
    PROGRESS_FIELD_NUMBER: builtins.int
    CTIME_FIELD_NUMBER: builtins.int
    MTIME_FIELD_NUMBER: builtins.int
    EXTRA_FIELD_NUMBER: builtins.int
    ID_STR_FIELD_NUMBER: builtins.int
    id: builtins.int
    """弹幕id"""
    oid: builtins.int
    """对象视频cid"""
    mid: builtins.int
    """发送者mid"""
    type: builtins.int
    """"""
    command: builtins.str
    """互动弹幕指令"""
    content: builtins.str
    """互动弹幕正文"""
    state: builtins.int
    """"""
    progress: builtins.int
    """出现时间"""
    ctime: builtins.str
    """创建时间"""
    mtime: builtins.str
    """发布时间"""
    extra: builtins.str
    """扩展json数据"""
    id_str: builtins.str
    """弹幕id str类型"""
    def __init__(
        self,
        *,
        id: builtins.int = ...,
        oid: builtins.int = ...,
        mid: builtins.int = ...,
        type: builtins.int = ...,
        command: builtins.str = ...,
        content: builtins.str = ...,
        state: builtins.int = ...,
        progress: builtins.int = ...,
        ctime: builtins.str = ...,
        mtime: builtins.str = ...,
        extra: builtins.str = ...,
        id_str: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["command", b"command", "content", b"content", "ctime", b"ctime", "extra", b"extra", "id", b"id", "id_str", b"id_str", "mid", b"mid", "mtime", b"mtime", "oid", b"oid", "progress", b"progress", "state", b"state", "type", b"type"]) -> None: ...

global___CommandDmOtt = CommandDmOtt

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___CommandDmsOttReply = CommandDmsOttReply

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AID_FIELD_NUMBER: builtins.int
    CID_FIELD_NUMBER: builtins.int
    MID_FIELD_NUMBER: builtins.int
    aid: builtins.int
    """"""
    cid: builtins.int
    """"""
    mid: builtins.int
    """"""
    def __init__(
        self,
        *,
        aid: builtins.int = ...,
        cid: builtins.int = ...,
        mid: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["aid", b"aid", "cid", b"cid", "mid", b"mid"]) -> None: ...

global___CommandDmsOttReq = CommandDmsOttReq

@typing_extensions.final
class DanmakuAIFlag(google.protobuf.message.Message):
    """弹幕ai云屏蔽列表"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DM_FLAGS_FIELD_NUMBER: builtins.int
    @property
    def dm_flags(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DanmakuFlag]:
        """弹幕ai云屏蔽条目"""
    def __init__(
        self,
        *,
        dm_flags: collections.abc.Iterable[global___DanmakuFlag] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["dm_flags", b"dm_flags"]) -> None: ...

global___DanmakuAIFlag = DanmakuAIFlag

@typing_extensions.final
class DanmakuElem(google.protobuf.message.Message):
    """弹幕条目"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    PROGRESS_FIELD_NUMBER: builtins.int
    MODE_FIELD_NUMBER: builtins.int
    FONTSIZE_FIELD_NUMBER: builtins.int
    COLOR_FIELD_NUMBER: builtins.int
    MIDHASH_FIELD_NUMBER: builtins.int
    CONTENT_FIELD_NUMBER: builtins.int
    CTIME_FIELD_NUMBER: builtins.int
    WEIGHT_FIELD_NUMBER: builtins.int
    ACTION_FIELD_NUMBER: builtins.int
    POOL_FIELD_NUMBER: builtins.int
    IDSTR_FIELD_NUMBER: builtins.int
    ATTR_FIELD_NUMBER: builtins.int
    id: builtins.int
    """弹幕dmid"""
    progress: builtins.int
    """弹幕出现位置(单位ms)"""
    mode: builtins.int
    """弹幕类型"""
    fontsize: builtins.int
    """弹幕字号"""
    color: builtins.int
    """弹幕颜色"""
    midHash: builtins.str
    """发送着mid hash"""
    content: builtins.str
    """弹幕正文"""
    ctime: builtins.int
    """发送时间"""
    weight: builtins.int
    """权重 区间:[1,10]"""
    action: builtins.str
    """动作"""
    pool: builtins.int
    """弹幕池"""
    idStr: builtins.str
    """弹幕dmid str"""
    attr: builtins.int
    """弹幕属性位(bin求AND)
    bit0:保护 bit1:直播 bit2:高赞
    """
    def __init__(
        self,
        *,
        id: builtins.int = ...,
        progress: builtins.int = ...,
        mode: builtins.int = ...,
        fontsize: builtins.int = ...,
        color: builtins.int = ...,
        midHash: builtins.str = ...,
        content: builtins.str = ...,
        ctime: builtins.int = ...,
        weight: builtins.int = ...,
        action: builtins.str = ...,
        pool: builtins.int = ...,
        idStr: builtins.str = ...,
        attr: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "attr", b"attr", "color", b"color", "content", b"content", "ctime", b"ctime", "fontsize", b"fontsize", "id", b"id", "idStr", b"idStr", "midHash", b"midHash", "mode", b"mode", "pool", b"pool", "progress", b"progress", "weight", b"weight"]) -> None: ...

global___DanmakuElem = DanmakuElem

@typing_extensions.final
class DanmakuFlag(google.protobuf.message.Message):
    """弹幕ai云屏蔽条目"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DMID_FIELD_NUMBER: builtins.int
    FLAG_FIELD_NUMBER: builtins.int
    dmid: builtins.int
    """弹幕dmid"""
    flag: builtins.int
    """评分"""
    def __init__(
        self,
        *,
        dmid: builtins.int = ...,
        flag: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["dmid", b"dmid", "flag", b"flag"]) -> None: ...

global___DanmakuFlag = DanmakuFlag

@typing_extensions.final
class DanmakuFlagConfig(google.protobuf.message.Message):
    """云屏蔽配置信息"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REC_FLAG_FIELD_NUMBER: builtins.int
    REC_TEXT_FIELD_NUMBER: builtins.int
    REC_SWITCH_FIELD_NUMBER: builtins.int
    rec_flag: builtins.int
    """云屏蔽等级"""
    rec_text: builtins.str
    """云屏蔽文案"""
    rec_switch: builtins.int
    """云屏蔽开关"""
    def __init__(
        self,
        *,
        rec_flag: builtins.int = ...,
        rec_text: builtins.str = ...,
        rec_switch: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["rec_flag", b"rec_flag", "rec_switch", b"rec_switch", "rec_text", b"rec_text"]) -> None: ...

global___DanmakuFlagConfig = DanmakuFlagConfig

@typing_extensions.final
class DanmuDefaultPlayerConfig(google.protobuf.message.Message):
    """弹幕默认配置"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PLAYER_DANMAKU_USE_DEFAULT_CONFIG_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_AI_RECOMMENDED_SWITCH_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_AI_RECOMMENDED_LEVEL_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKTOP_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKSCROLL_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKBOTTOM_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKCOLORFUL_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKREPEAT_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKSPECIAL_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_OPACITY_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_SCALINGFACTOR_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_DOMAIN_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_SPEED_FIELD_NUMBER: builtins.int
    INLINE_PLAYER_DANMAKU_SWITCH_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_SENIOR_MODE_SWITCH_FIELD_NUMBER: builtins.int
    player_danmaku_use_default_config: builtins.bool
    """是否使用推荐弹幕设置"""
    player_danmaku_ai_recommended_switch: builtins.bool
    """是否开启智能云屏蔽"""
    player_danmaku_ai_recommended_level: builtins.int
    """智能云屏蔽等级"""
    player_danmaku_blocktop: builtins.bool
    """是否屏蔽顶端弹幕"""
    player_danmaku_blockscroll: builtins.bool
    """是否屏蔽滚动弹幕"""
    player_danmaku_blockbottom: builtins.bool
    """是否屏蔽底端弹幕"""
    player_danmaku_blockcolorful: builtins.bool
    """是否屏蔽彩色弹幕"""
    player_danmaku_blockrepeat: builtins.bool
    """是否屏蔽重复弹幕"""
    player_danmaku_blockspecial: builtins.bool
    """是否屏蔽高级弹幕"""
    player_danmaku_opacity: builtins.float
    """弹幕不透明度"""
    player_danmaku_scalingfactor: builtins.float
    """弹幕缩放比例"""
    player_danmaku_domain: builtins.float
    """弹幕显示区域"""
    player_danmaku_speed: builtins.int
    """弹幕速度"""
    inline_player_danmaku_switch: builtins.bool
    """是否开启弹幕"""
    player_danmaku_senior_mode_switch: builtins.int
    """"""
    def __init__(
        self,
        *,
        player_danmaku_use_default_config: builtins.bool = ...,
        player_danmaku_ai_recommended_switch: builtins.bool = ...,
        player_danmaku_ai_recommended_level: builtins.int = ...,
        player_danmaku_blocktop: builtins.bool = ...,
        player_danmaku_blockscroll: builtins.bool = ...,
        player_danmaku_blockbottom: builtins.bool = ...,
        player_danmaku_blockcolorful: builtins.bool = ...,
        player_danmaku_blockrepeat: builtins.bool = ...,
        player_danmaku_blockspecial: builtins.bool = ...,
        player_danmaku_opacity: builtins.float = ...,
        player_danmaku_scalingfactor: builtins.float = ...,
        player_danmaku_domain: builtins.float = ...,
        player_danmaku_speed: builtins.int = ...,
        inline_player_danmaku_switch: builtins.bool = ...,
        player_danmaku_senior_mode_switch: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["inline_player_danmaku_switch", b"inline_player_danmaku_switch", "player_danmaku_ai_recommended_level", b"player_danmaku_ai_recommended_level", "player_danmaku_ai_recommended_switch", b"player_danmaku_ai_recommended_switch", "player_danmaku_blockbottom", b"player_danmaku_blockbottom", "player_danmaku_blockcolorful", b"player_danmaku_blockcolorful", "player_danmaku_blockrepeat", b"player_danmaku_blockrepeat", "player_danmaku_blockscroll", b"player_danmaku_blockscroll", "player_danmaku_blockspecial", b"player_danmaku_blockspecial", "player_danmaku_blocktop", b"player_danmaku_blocktop", "player_danmaku_domain", b"player_danmaku_domain", "player_danmaku_opacity", b"player_danmaku_opacity", "player_danmaku_scalingfactor", b"player_danmaku_scalingfactor", "player_danmaku_senior_mode_switch", b"player_danmaku_senior_mode_switch", "player_danmaku_speed", b"player_danmaku_speed", "player_danmaku_use_default_config", b"player_danmaku_use_default_config"]) -> None: ...

global___DanmuDefaultPlayerConfig = DanmuDefaultPlayerConfig

@typing_extensions.final
class DanmuPlayerConfig(google.protobuf.message.Message):
    """弹幕配置"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PLAYER_DANMAKU_SWITCH_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_SWITCH_SAVE_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_USE_DEFAULT_CONFIG_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_AI_RECOMMENDED_SWITCH_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_AI_RECOMMENDED_LEVEL_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKTOP_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKSCROLL_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKBOTTOM_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKCOLORFUL_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKREPEAT_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_BLOCKSPECIAL_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_OPACITY_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_SCALINGFACTOR_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_DOMAIN_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_SPEED_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_ENABLEBLOCKLIST_FIELD_NUMBER: builtins.int
    INLINE_PLAYER_DANMAKU_SWITCH_FIELD_NUMBER: builtins.int
    INLINE_PLAYER_DANMAKU_CONFIG_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_IOS_SWITCH_SAVE_FIELD_NUMBER: builtins.int
    player_danmaku_switch: builtins.bool
    """是否开启弹幕"""
    player_danmaku_switch_save: builtins.bool
    """是否记录弹幕开关设置"""
    player_danmaku_use_default_config: builtins.bool
    """是否使用推荐弹幕设置"""
    player_danmaku_ai_recommended_switch: builtins.bool
    """是否开启智能云屏蔽"""
    player_danmaku_ai_recommended_level: builtins.int
    """智能云屏蔽等级"""
    player_danmaku_blocktop: builtins.bool
    """是否屏蔽顶端弹幕"""
    player_danmaku_blockscroll: builtins.bool
    """是否屏蔽滚动弹幕"""
    player_danmaku_blockbottom: builtins.bool
    """是否屏蔽底端弹幕"""
    player_danmaku_blockcolorful: builtins.bool
    """是否屏蔽彩色弹幕"""
    player_danmaku_blockrepeat: builtins.bool
    """是否屏蔽重复弹幕"""
    player_danmaku_blockspecial: builtins.bool
    """是否屏蔽高级弹幕"""
    player_danmaku_opacity: builtins.float
    """弹幕不透明度"""
    player_danmaku_scalingfactor: builtins.float
    """弹幕缩放比例"""
    player_danmaku_domain: builtins.float
    """弹幕显示区域"""
    player_danmaku_speed: builtins.int
    """弹幕速度"""
    player_danmaku_enableblocklist: builtins.bool
    """是否开启屏蔽列表"""
    inline_player_danmaku_switch: builtins.bool
    """是否开启弹幕"""
    inline_player_danmaku_config: builtins.int
    """"""
    player_danmaku_ios_switch_save: builtins.int
    """"""
    def __init__(
        self,
        *,
        player_danmaku_switch: builtins.bool = ...,
        player_danmaku_switch_save: builtins.bool = ...,
        player_danmaku_use_default_config: builtins.bool = ...,
        player_danmaku_ai_recommended_switch: builtins.bool = ...,
        player_danmaku_ai_recommended_level: builtins.int = ...,
        player_danmaku_blocktop: builtins.bool = ...,
        player_danmaku_blockscroll: builtins.bool = ...,
        player_danmaku_blockbottom: builtins.bool = ...,
        player_danmaku_blockcolorful: builtins.bool = ...,
        player_danmaku_blockrepeat: builtins.bool = ...,
        player_danmaku_blockspecial: builtins.bool = ...,
        player_danmaku_opacity: builtins.float = ...,
        player_danmaku_scalingfactor: builtins.float = ...,
        player_danmaku_domain: builtins.float = ...,
        player_danmaku_speed: builtins.int = ...,
        player_danmaku_enableblocklist: builtins.bool = ...,
        inline_player_danmaku_switch: builtins.bool = ...,
        inline_player_danmaku_config: builtins.int = ...,
        player_danmaku_ios_switch_save: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["inline_player_danmaku_config", b"inline_player_danmaku_config", "inline_player_danmaku_switch", b"inline_player_danmaku_switch", "player_danmaku_ai_recommended_level", b"player_danmaku_ai_recommended_level", "player_danmaku_ai_recommended_switch", b"player_danmaku_ai_recommended_switch", "player_danmaku_blockbottom", b"player_danmaku_blockbottom", "player_danmaku_blockcolorful", b"player_danmaku_blockcolorful", "player_danmaku_blockrepeat", b"player_danmaku_blockrepeat", "player_danmaku_blockscroll", b"player_danmaku_blockscroll", "player_danmaku_blockspecial", b"player_danmaku_blockspecial", "player_danmaku_blocktop", b"player_danmaku_blocktop", "player_danmaku_domain", b"player_danmaku_domain", "player_danmaku_enableblocklist", b"player_danmaku_enableblocklist", "player_danmaku_ios_switch_save", b"player_danmaku_ios_switch_save", "player_danmaku_opacity", b"player_danmaku_opacity", "player_danmaku_scalingfactor", b"player_danmaku_scalingfactor", "player_danmaku_speed", b"player_danmaku_speed", "player_danmaku_switch", b"player_danmaku_switch", "player_danmaku_switch_save", b"player_danmaku_switch_save", "player_danmaku_use_default_config", b"player_danmaku_use_default_config"]) -> None: ...

global___DanmuPlayerConfig = DanmuPlayerConfig

@typing_extensions.final
class DanmuPlayerDynamicConfig(google.protobuf.message.Message):
    """弹幕显示区域自动配置"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PROGRESS_FIELD_NUMBER: builtins.int
    PLAYER_DANMAKU_DOMAIN_FIELD_NUMBER: builtins.int
    progress: builtins.int
    """时间"""
    player_danmaku_domain: builtins.float
    """弹幕显示区域"""
    def __init__(
        self,
        *,
        progress: builtins.int = ...,
        player_danmaku_domain: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["player_danmaku_domain", b"player_danmaku_domain", "progress", b"progress"]) -> None: ...

global___DanmuPlayerDynamicConfig = DanmuPlayerDynamicConfig

@typing_extensions.final
class DanmuPlayerViewConfig(google.protobuf.message.Message):
    """弹幕配置信息"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DANMUKU_DEFAULT_PLAYER_CONFIG_FIELD_NUMBER: builtins.int
    DANMUKU_PLAYER_CONFIG_FIELD_NUMBER: builtins.int
    DANMUKU_PLAYER_DYNAMIC_CONFIG_FIELD_NUMBER: builtins.int
    @property
    def danmuku_default_player_config(self) -> global___DanmuDefaultPlayerConfig:
        """弹幕默认配置"""
    @property
    def danmuku_player_config(self) -> global___DanmuPlayerConfig:
        """弹幕用户配置"""
    @property
    def danmuku_player_dynamic_config(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DanmuPlayerDynamicConfig]:
        """弹幕显示区域自动配置列表"""
    def __init__(
        self,
        *,
        danmuku_default_player_config: global___DanmuDefaultPlayerConfig | None = ...,
        danmuku_player_config: global___DanmuPlayerConfig | None = ...,
        danmuku_player_dynamic_config: collections.abc.Iterable[global___DanmuPlayerDynamicConfig] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["danmuku_default_player_config", b"danmuku_default_player_config", "danmuku_player_config", b"danmuku_player_config"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["danmuku_default_player_config", b"danmuku_default_player_config", "danmuku_player_config", b"danmuku_player_config", "danmuku_player_dynamic_config", b"danmuku_player_dynamic_config"]) -> None: ...

global___DanmuPlayerViewConfig = DanmuPlayerViewConfig

@typing_extensions.final
class DmSegMobileReply(google.protobuf.message.Message):
    """获取弹幕-响应"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ELEMS_FIELD_NUMBER: builtins.int
    STATE_FIELD_NUMBER: builtins.int
    AI_FLAG_FIELD_NUMBER: builtins.int
    @property
    def elems(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DanmakuElem]:
        """弹幕列表"""
    state: builtins.int
    """是否已关闭弹幕
    0:未关闭 1:已关闭
    """
    @property
    def ai_flag(self) -> global___DanmakuAIFlag:
        """弹幕云屏蔽ai评分值"""
    def __init__(
        self,
        *,
        elems: collections.abc.Iterable[global___DanmakuElem] | None = ...,
        state: builtins.int = ...,
        ai_flag: global___DanmakuAIFlag | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["ai_flag", b"ai_flag"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ai_flag", b"ai_flag", "elems", b"elems", "state", b"state"]) -> None: ...

global___DmSegMobileReply = DmSegMobileReply

@typing_extensions.final
class DmSegMobileReq(google.protobuf.message.Message):
    """获取弹幕-请求"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PID_FIELD_NUMBER: builtins.int
    OID_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    SEGMENT_INDEX_FIELD_NUMBER: builtins.int
    TEENAGERS_MODE_FIELD_NUMBER: builtins.int
    FROM_FIELD_NUMBER: builtins.int
    pid: builtins.int
    """稿件avid/漫画epid"""
    oid: builtins.int
    """视频cid/漫画cid"""
    type: builtins.int
    """弹幕类型
    1:视频 2:漫画
    """
    segment_index: builtins.int
    """分段(6min)"""
    teenagers_mode: builtins.int
    """是否青少年模式"""
    def __init__(
        self,
        *,
        pid: builtins.int = ...,
        oid: builtins.int = ...,
        type: builtins.int = ...,
        segment_index: builtins.int = ...,
        teenagers_mode: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["from", b"from", "oid", b"oid", "pid", b"pid", "segment_index", b"segment_index", "teenagers_mode", b"teenagers_mode", "type", b"type"]) -> None: ...

global___DmSegMobileReq = DmSegMobileReq

@typing_extensions.final
class DmViewReply(google.protobuf.message.Message):
    """客户端弹幕元数据-响应"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLOSED_FIELD_NUMBER: builtins.int
    MASK_FIELD_NUMBER: builtins.int
    SUBTITLE_FIELD_NUMBER: builtins.int
    SPECIAL_DMS_FIELD_NUMBER: builtins.int
    AI_FLAG_FIELD_NUMBER: builtins.int
    PLAYER_CONFIG_FIELD_NUMBER: builtins.int
    SEND_BOX_STYLE_FIELD_NUMBER: builtins.int
    ALLOW_FIELD_NUMBER: builtins.int
    CHECK_BOX_FIELD_NUMBER: builtins.int
    CHECK_BOX_SHOW_MSG_FIELD_NUMBER: builtins.int
    TEXT_PLACEHOLDER_FIELD_NUMBER: builtins.int
    INPUT_PLACEHOLDER_FIELD_NUMBER: builtins.int
    COMMAND_CLOSE_FIELD_NUMBER: builtins.int
    closed: builtins.bool
    """是否已关闭弹幕
    0:未关闭 1:已关闭
    """
    @property
    def mask(self) -> global___VideoMask:
        """智能防挡弹幕蒙版信息"""
    @property
    def subtitle(self) -> global___VideoSubtitle:
        """视频字幕"""
    @property
    def special_dms(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
        """高级弹幕专包url(bfs)"""
    @property
    def ai_flag(self) -> global___DanmakuFlagConfig:
        """云屏蔽配置信息"""
    @property
    def player_config(self) -> global___DanmuPlayerViewConfig:
        """弹幕配置信息"""
    send_box_style: builtins.int
    """弹幕发送框样式"""
    allow: builtins.bool
    """是否允许"""
    check_box: builtins.str
    """check box 是否展示"""
    check_box_show_msg: builtins.str
    """check box 展示文本"""
    text_placeholder: builtins.str
    """展示文案"""
    input_placeholder: builtins.str
    """弹幕输入框文案"""
    command_close: builtins.bool
    """"""
    def __init__(
        self,
        *,
        closed: builtins.bool = ...,
        mask: global___VideoMask | None = ...,
        subtitle: global___VideoSubtitle | None = ...,
        special_dms: collections.abc.Iterable[builtins.str] | None = ...,
        ai_flag: global___DanmakuFlagConfig | None = ...,
        player_config: global___DanmuPlayerViewConfig | None = ...,
        send_box_style: builtins.int = ...,
        allow: builtins.bool = ...,
        check_box: builtins.str = ...,
        check_box_show_msg: builtins.str = ...,
        text_placeholder: builtins.str = ...,
        input_placeholder: builtins.str = ...,
        command_close: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["ai_flag", b"ai_flag", "mask", b"mask", "player_config", b"player_config", "subtitle", b"subtitle"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ai_flag", b"ai_flag", "allow", b"allow", "check_box", b"check_box", "check_box_show_msg", b"check_box_show_msg", "closed", b"closed", "command_close", b"command_close", "input_placeholder", b"input_placeholder", "mask", b"mask", "player_config", b"player_config", "send_box_style", b"send_box_style", "special_dms", b"special_dms", "subtitle", b"subtitle", "text_placeholder", b"text_placeholder"]) -> None: ...

global___DmViewReply = DmViewReply

@typing_extensions.final
class DmViewReq(google.protobuf.message.Message):
    """客户端弹幕元数据-请求"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PID_FIELD_NUMBER: builtins.int
    OID_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    SPMID_FIELD_NUMBER: builtins.int
    IS_HARD_BOOT_FIELD_NUMBER: builtins.int
    FROM_FIELD_NUMBER: builtins.int
    pid: builtins.int
    """稿件avid/漫画epid"""
    oid: builtins.int
    """视频cid/漫画cid"""
    type: builtins.int
    """弹幕类型
    1:视频 2:漫画
    """
    spmid: builtins.str
    """页面spm"""
    is_hard_boot: builtins.int
    """是否冷启"""
    def __init__(
        self,
        *,
        pid: builtins.int = ...,
        oid: builtins.int = ...,
        type: builtins.int = ...,
        spmid: builtins.str = ...,
        is_hard_boot: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["from", b"from", "is_hard_boot", b"is_hard_boot", "oid", b"oid", "pid", b"pid", "spmid", b"spmid", "type", b"type"]) -> None: ...

global___DmViewReq = DmViewReq

@typing_extensions.final
class SubtitleItem(google.protobuf.message.Message):
    """单个字幕信息"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    ID_STR_FIELD_NUMBER: builtins.int
    LAN_FIELD_NUMBER: builtins.int
    LAN_DOC_FIELD_NUMBER: builtins.int
    SUBTITLE_URL_FIELD_NUMBER: builtins.int
    AUTHOR_FIELD_NUMBER: builtins.int
    id: builtins.int
    """字幕id"""
    id_str: builtins.str
    """字幕id str"""
    lan: builtins.str
    """字幕语言代码"""
    lan_doc: builtins.str
    """字幕语言"""
    subtitle_url: builtins.str
    """字幕文件url"""
    @property
    def author(self) -> global___UserInfo:
        """字幕作者信息"""
    def __init__(
        self,
        *,
        id: builtins.int = ...,
        id_str: builtins.str = ...,
        lan: builtins.str = ...,
        lan_doc: builtins.str = ...,
        subtitle_url: builtins.str = ...,
        author: global___UserInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["author", b"author"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["author", b"author", "id", b"id", "id_str", b"id_str", "lan", b"lan", "lan_doc", b"lan_doc", "subtitle_url", b"subtitle_url"]) -> None: ...

global___SubtitleItem = SubtitleItem

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VIDEO_GUIDE_FIELD_NUMBER: builtins.int
    CHRONOS_FIELD_NUMBER: builtins.int
    @property
    def video_guide(self) -> global___VideoGuide:
        """"""
    @property
    def chronos(self) -> global___Chronos:
        """"""
    def __init__(
        self,
        *,
        video_guide: global___VideoGuide | None = ...,
        chronos: global___Chronos | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["chronos", b"chronos", "video_guide", b"video_guide"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["chronos", b"chronos", "video_guide", b"video_guide"]) -> None: ...

global___TvViewProgressReply = TvViewProgressReply

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AID_FIELD_NUMBER: builtins.int
    CID_FIELD_NUMBER: builtins.int
    UP_MID_FIELD_NUMBER: builtins.int
    ENGINE_VERSION_FIELD_NUMBER: builtins.int
    MESSAGE_PROTOCOL_FIELD_NUMBER: builtins.int
    SERVICE_KEY_FIELD_NUMBER: builtins.int
    SID_FIELD_NUMBER: builtins.int
    PID_FIELD_NUMBER: builtins.int
    FROM_FIELD_NUMBER: builtins.int
    GUEST_ACCESS_KEY_FIELD_NUMBER: builtins.int
    EPID_FIELD_NUMBER: builtins.int
    aid: builtins.int
    """"""
    cid: builtins.int
    """"""
    up_mid: builtins.int
    """"""
    engine_version: builtins.str
    """"""
    message_protocol: builtins.str
    """"""
    service_key: builtins.str
    """"""
    sid: builtins.int
    """"""
    pid: builtins.int
    """"""
    guest_access_key: builtins.str
    """"""
    epid: builtins.int
    """"""
    def __init__(
        self,
        *,
        aid: builtins.int = ...,
        cid: builtins.int = ...,
        up_mid: builtins.int = ...,
        engine_version: builtins.str = ...,
        message_protocol: builtins.str = ...,
        service_key: builtins.str = ...,
        sid: builtins.int = ...,
        pid: builtins.int = ...,
        guest_access_key: builtins.str = ...,
        epid: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["aid", b"aid", "cid", b"cid", "engine_version", b"engine_version", "epid", b"epid", "from", b"from", "guest_access_key", b"guest_access_key", "message_protocol", b"message_protocol", "pid", b"pid", "service_key", b"service_key", "sid", b"sid", "up_mid", b"up_mid"]) -> None: ...

global___TvViewProgressReq = TvViewProgressReq

@typing_extensions.final
class UserInfo(google.protobuf.message.Message):
    """字幕作者信息"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    SEX_FIELD_NUMBER: builtins.int
    FACE_FIELD_NUMBER: builtins.int
    SIGN_FIELD_NUMBER: builtins.int
    RANK_FIELD_NUMBER: builtins.int
    mid: builtins.int
    """用户mid"""
    name: builtins.str
    """用户昵称"""
    sex: builtins.str
    """用户性别"""
    face: builtins.str
    """用户头像url"""
    sign: builtins.str
    """用户签名"""
    rank: builtins.int
    """用户等级"""
    def __init__(
        self,
        *,
        mid: builtins.int = ...,
        name: builtins.str = ...,
        sex: builtins.str = ...,
        face: builtins.str = ...,
        sign: builtins.str = ...,
        rank: builtins.int = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["face", b"face", "mid", b"mid", "name", b"name", "rank", b"rank", "sex", b"sex", "sign", b"sign"]) -> None: ...

global___UserInfo = UserInfo

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

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___VideoGuide = VideoGuide

@typing_extensions.final
class VideoMask(google.protobuf.message.Message):
    """智能防挡弹幕蒙版信息"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CID_FIELD_NUMBER: builtins.int
    PLAT_FIELD_NUMBER: builtins.int
    FPS_FIELD_NUMBER: builtins.int
    TIME_FIELD_NUMBER: builtins.int
    MASK_URL_FIELD_NUMBER: builtins.int
    cid: builtins.int
    """视频cid"""
    plat: builtins.int
    """平台
    0:web端 1:客户端
    """
    fps: builtins.int
    """帧率"""
    time: builtins.int
    """间隔时间"""
    mask_url: builtins.str
    """蒙版url"""
    def __init__(
        self,
        *,
        cid: builtins.int = ...,
        plat: builtins.int = ...,
        fps: builtins.int = ...,
        time: builtins.int = ...,
        mask_url: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["cid", b"cid", "fps", b"fps", "mask_url", b"mask_url", "plat", b"plat", "time", b"time"]) -> None: ...

global___VideoMask = VideoMask

@typing_extensions.final
class VideoSubtitle(google.protobuf.message.Message):
    """视频字幕信息"""

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LAN_FIELD_NUMBER: builtins.int
    LANDOC_FIELD_NUMBER: builtins.int
    SUBTITLES_FIELD_NUMBER: builtins.int
    lan: builtins.str
    """视频原语言代码"""
    lanDoc: builtins.str
    """视频原语言"""
    @property
    def subtitles(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SubtitleItem]:
        """视频字幕列表"""
    def __init__(
        self,
        *,
        lan: builtins.str = ...,
        lanDoc: builtins.str = ...,
        subtitles: collections.abc.Iterable[global___SubtitleItem] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["lan", b"lan", "lanDoc", b"lanDoc", "subtitles", b"subtitles"]) -> None: ...

global___VideoSubtitle = VideoSubtitle
