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

from collections import abc as _abc
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf.internal import containers as _containers
from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper
import builtins as _builtins
import sys
import typing as _typing

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

DESCRIPTOR: _descriptor.FileDescriptor

class _PjpegScanConfiguration:
    ValueType = _typing.NewType("ValueType", _builtins.int)
    V: _TypeAlias = ValueType  # noqa: Y015

class _PjpegScanConfigurationEnumTypeWrapper(_enum_type_wrapper._EnumTypeWrapper[_PjpegScanConfiguration.ValueType], _builtins.type):
    DESCRIPTOR: _descriptor.EnumDescriptor
    PJPEG_SCAN_CONFIGURATION_UNSPECIFIED: _PjpegScanConfiguration.ValueType  # 0
    PJPEG_SCAN_CONFIGURATION_WA: _PjpegScanConfiguration.ValueType  # 1
    PJPEG_SCAN_CONFIGURATION_E15: _PjpegScanConfiguration.ValueType  # 2
    PJPEG_SCAN_CONFIGURATION_E35: _PjpegScanConfiguration.ValueType  # 3

class PjpegScanConfiguration(_PjpegScanConfiguration, metaclass=_PjpegScanConfigurationEnumTypeWrapper): ...

PJPEG_SCAN_CONFIGURATION_UNSPECIFIED: PjpegScanConfiguration.ValueType  # 0
PJPEG_SCAN_CONFIGURATION_WA: PjpegScanConfiguration.ValueType  # 1
PJPEG_SCAN_CONFIGURATION_E15: PjpegScanConfiguration.ValueType  # 2
PJPEG_SCAN_CONFIGURATION_E35: PjpegScanConfiguration.ValueType  # 3
Global___PjpegScanConfiguration: _TypeAlias = PjpegScanConfiguration  # noqa: Y015

@_typing.final
class Media(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    class _InterventionType:
        ValueType = _typing.NewType("ValueType", _builtins.int)
        V: _TypeAlias = ValueType  # noqa: Y015

    class _InterventionTypeEnumTypeWrapper(_enum_type_wrapper._EnumTypeWrapper[Media._InterventionType.ValueType], _builtins.type):
        DESCRIPTOR: _descriptor.EnumDescriptor
        UNSET: Media._InterventionType.ValueType  # 0
        NONE: Media._InterventionType.ValueType  # 1
        NUDE: Media._InterventionType.ValueType  # 2

    class InterventionType(_InterventionType, metaclass=_InterventionTypeEnumTypeWrapper): ...
    UNSET: Media.InterventionType.ValueType  # 0
    NONE: Media.InterventionType.ValueType  # 1
    NUDE: Media.InterventionType.ValueType  # 2

    STATICPHOTO_FIELD_NUMBER: _builtins.int
    VOICE_FIELD_NUMBER: _builtins.int
    VIDEO_FIELD_NUMBER: _builtins.int
    RAVEN_FIELD_NUMBER: _builtins.int
    GIF_FIELD_NUMBER: _builtins.int
    AVATARSTICKER_FIELD_NUMBER: _builtins.int
    @_builtins.property
    def staticPhoto(self) -> Global___StaticPhoto: ...
    @_builtins.property
    def voice(self) -> Global___Voice: ...
    @_builtins.property
    def video(self) -> Global___Video: ...
    @_builtins.property
    def raven(self) -> Global___Raven: ...
    @_builtins.property
    def gif(self) -> Global___Gif: ...
    @_builtins.property
    def avatarSticker(self) -> Global___AvatarSticker: ...
    def __init__(
        self,
        *,
        staticPhoto: Global___StaticPhoto | None = ...,
        voice: Global___Voice | None = ...,
        video: Global___Video | None = ...,
        raven: Global___Raven | None = ...,
        gif: Global___Gif | None = ...,
        avatarSticker: Global___AvatarSticker | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["avatarSticker", b"avatarSticker", "gif", b"gif", "media", b"media", "raven", b"raven", "staticPhoto", b"staticPhoto", "video", b"video", "voice", b"voice"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["avatarSticker", b"avatarSticker", "gif", b"gif", "media", b"media", "raven", b"raven", "staticPhoto", b"staticPhoto", "video", b"video", "voice", b"voice"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...
    _WhichOneofReturnType_media: _TypeAlias = _typing.Literal["staticPhoto", "voice", "video", "raven", "gif", "avatarSticker"]  # noqa: Y015
    _WhichOneofArgType_media: _TypeAlias = _typing.Literal["media", b"media"]  # noqa: Y015
    def WhichOneof(self, oneof_group: _WhichOneofArgType_media) -> _WhichOneofReturnType_media | None: ...

Global___Media: _TypeAlias = Media  # noqa: Y015

@_typing.final
class StaticPhoto(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    MEDIATRANSPORT_FIELD_NUMBER: _builtins.int
    HEIGHT_FIELD_NUMBER: _builtins.int
    WIDTH_FIELD_NUMBER: _builtins.int
    SCANLENGTHS_FIELD_NUMBER: _builtins.int
    THUMBNAIL_FIELD_NUMBER: _builtins.int
    PJPEGSCANCONFIGURATION_FIELD_NUMBER: _builtins.int
    height: _builtins.int
    width: _builtins.int
    pjpegScanConfiguration: Global___PjpegScanConfiguration.ValueType
    @_builtins.property
    def mediaTransport(self) -> Global___CommonMediaTransport: ...
    @_builtins.property
    def scanLengths(self) -> _containers.RepeatedScalarFieldContainer[_builtins.int]: ...
    @_builtins.property
    def thumbnail(self) -> Global___Thumbnail: ...
    def __init__(
        self,
        *,
        mediaTransport: Global___CommonMediaTransport | None = ...,
        height: _builtins.int | None = ...,
        width: _builtins.int | None = ...,
        scanLengths: _abc.Iterable[_builtins.int] | None = ...,
        thumbnail: Global___Thumbnail | None = ...,
        pjpegScanConfiguration: Global___PjpegScanConfiguration.ValueType | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "pjpegScanConfiguration", b"pjpegScanConfiguration", "thumbnail", b"thumbnail", "width", b"width"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "pjpegScanConfiguration", b"pjpegScanConfiguration", "scanLengths", b"scanLengths", "thumbnail", b"thumbnail", "width", b"width"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___StaticPhoto: _TypeAlias = StaticPhoto  # noqa: Y015

@_typing.final
class Voice(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    MEDIATRANSPORT_FIELD_NUMBER: _builtins.int
    DURATION_FIELD_NUMBER: _builtins.int
    WAVEFORMS_FIELD_NUMBER: _builtins.int
    WAVEFORMSAMPLINGFREQUENCYHZ_FIELD_NUMBER: _builtins.int
    duration: _builtins.int
    waveformSamplingFrequencyHz: _builtins.int
    @_builtins.property
    def mediaTransport(self) -> Global___CommonMediaTransport: ...
    @_builtins.property
    def waveforms(self) -> _containers.RepeatedScalarFieldContainer[_builtins.float]: ...
    def __init__(
        self,
        *,
        mediaTransport: Global___CommonMediaTransport | None = ...,
        duration: _builtins.int | None = ...,
        waveforms: _abc.Iterable[_builtins.float] | None = ...,
        waveformSamplingFrequencyHz: _builtins.int | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["duration", b"duration", "mediaTransport", b"mediaTransport", "waveformSamplingFrequencyHz", b"waveformSamplingFrequencyHz"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["duration", b"duration", "mediaTransport", b"mediaTransport", "waveformSamplingFrequencyHz", b"waveformSamplingFrequencyHz", "waveforms", b"waveforms"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___Voice: _TypeAlias = Voice  # noqa: Y015

@_typing.final
class Video(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    MEDIATRANSPORT_FIELD_NUMBER: _builtins.int
    HEIGHT_FIELD_NUMBER: _builtins.int
    WIDTH_FIELD_NUMBER: _builtins.int
    THUMBNAIL_FIELD_NUMBER: _builtins.int
    VIDEOEXTRAMETADATA_FIELD_NUMBER: _builtins.int
    height: _builtins.int
    width: _builtins.int
    @_builtins.property
    def mediaTransport(self) -> Global___CommonMediaTransport: ...
    @_builtins.property
    def thumbnail(self) -> Global___Thumbnail: ...
    @_builtins.property
    def videoExtraMetadata(self) -> Global___VideoExtraMetadata: ...
    def __init__(
        self,
        *,
        mediaTransport: Global___CommonMediaTransport | None = ...,
        height: _builtins.int | None = ...,
        width: _builtins.int | None = ...,
        thumbnail: Global___Thumbnail | None = ...,
        videoExtraMetadata: Global___VideoExtraMetadata | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "thumbnail", b"thumbnail", "videoExtraMetadata", b"videoExtraMetadata", "width", b"width"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "thumbnail", b"thumbnail", "videoExtraMetadata", b"videoExtraMetadata", "width", b"width"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___Video: _TypeAlias = Video  # noqa: Y015

@_typing.final
class Gif(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    MEDIATRANSPORT_FIELD_NUMBER: _builtins.int
    HEIGHT_FIELD_NUMBER: _builtins.int
    WIDTH_FIELD_NUMBER: _builtins.int
    ISSTICKER_FIELD_NUMBER: _builtins.int
    STICKERID_FIELD_NUMBER: _builtins.int
    GIFURL_FIELD_NUMBER: _builtins.int
    GIFSIZE_FIELD_NUMBER: _builtins.int
    ISRANDOM_FIELD_NUMBER: _builtins.int
    height: _builtins.int
    width: _builtins.int
    isSticker: _builtins.bool
    stickerID: _builtins.str
    gifURL: _builtins.str
    gifSize: _builtins.int
    isRandom: _builtins.bool
    @_builtins.property
    def mediaTransport(self) -> Global___CommonMediaTransport: ...
    def __init__(
        self,
        *,
        mediaTransport: Global___CommonMediaTransport | None = ...,
        height: _builtins.int | None = ...,
        width: _builtins.int | None = ...,
        isSticker: _builtins.bool | None = ...,
        stickerID: _builtins.str | None = ...,
        gifURL: _builtins.str | None = ...,
        gifSize: _builtins.int | None = ...,
        isRandom: _builtins.bool | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["gifSize", b"gifSize", "gifURL", b"gifURL", "height", b"height", "isRandom", b"isRandom", "isSticker", b"isSticker", "mediaTransport", b"mediaTransport", "stickerID", b"stickerID", "width", b"width"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["gifSize", b"gifSize", "gifURL", b"gifURL", "height", b"height", "isRandom", b"isRandom", "isSticker", b"isSticker", "mediaTransport", b"mediaTransport", "stickerID", b"stickerID", "width", b"width"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___Gif: _TypeAlias = Gif  # noqa: Y015

@_typing.final
class AvatarSticker(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    MEDIATRANSPORT_FIELD_NUMBER: _builtins.int
    ISANIMATED_FIELD_NUMBER: _builtins.int
    STICKERID_FIELD_NUMBER: _builtins.int
    STICKERTEMPLATE_FIELD_NUMBER: _builtins.int
    NUXTYPE_FIELD_NUMBER: _builtins.int
    isAnimated: _builtins.bool
    stickerID: _builtins.str
    stickerTemplate: _builtins.str
    nuxType: _builtins.int
    @_builtins.property
    def mediaTransport(self) -> Global___CommonMediaTransport: ...
    def __init__(
        self,
        *,
        mediaTransport: Global___CommonMediaTransport | None = ...,
        isAnimated: _builtins.bool | None = ...,
        stickerID: _builtins.str | None = ...,
        stickerTemplate: _builtins.str | None = ...,
        nuxType: _builtins.int | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["isAnimated", b"isAnimated", "mediaTransport", b"mediaTransport", "nuxType", b"nuxType", "stickerID", b"stickerID", "stickerTemplate", b"stickerTemplate"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["isAnimated", b"isAnimated", "mediaTransport", b"mediaTransport", "nuxType", b"nuxType", "stickerID", b"stickerID", "stickerTemplate", b"stickerTemplate"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___AvatarSticker: _TypeAlias = AvatarSticker  # noqa: Y015

@_typing.final
class Raven(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    class _ViewMode:
        ValueType = _typing.NewType("ValueType", _builtins.int)
        V: _TypeAlias = ValueType  # noqa: Y015

    class _ViewModeEnumTypeWrapper(_enum_type_wrapper._EnumTypeWrapper[Raven._ViewMode.ValueType], _builtins.type):
        DESCRIPTOR: _descriptor.EnumDescriptor
        RAVEN_VIEW_MODEL_UNSPECIFIED: Raven._ViewMode.ValueType  # 0
        RAVEN_VIEW_MODEL_ONCE: Raven._ViewMode.ValueType  # 1
        RAVEN_VIEW_MODEL_REPLAYABLE: Raven._ViewMode.ValueType  # 2
        RAVEN_VIEW_MODEL_PERMANENT: Raven._ViewMode.ValueType  # 3

    class ViewMode(_ViewMode, metaclass=_ViewModeEnumTypeWrapper): ...
    RAVEN_VIEW_MODEL_UNSPECIFIED: Raven.ViewMode.ValueType  # 0
    RAVEN_VIEW_MODEL_ONCE: Raven.ViewMode.ValueType  # 1
    RAVEN_VIEW_MODEL_REPLAYABLE: Raven.ViewMode.ValueType  # 2
    RAVEN_VIEW_MODEL_PERMANENT: Raven.ViewMode.ValueType  # 3

    VIEWMODE_FIELD_NUMBER: _builtins.int
    CONTENT_FIELD_NUMBER: _builtins.int
    viewMode: Global___Raven.ViewMode.ValueType
    @_builtins.property
    def content(self) -> Global___RavenContent: ...
    def __init__(
        self,
        *,
        viewMode: Global___Raven.ViewMode.ValueType | None = ...,
        content: Global___RavenContent | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["content", b"content", "viewMode", b"viewMode"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["content", b"content", "viewMode", b"viewMode"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___Raven: _TypeAlias = Raven  # noqa: Y015

@_typing.final
class RavenContent(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    STATICPHOTO_FIELD_NUMBER: _builtins.int
    VIDEO_FIELD_NUMBER: _builtins.int
    @_builtins.property
    def staticPhoto(self) -> Global___StaticPhoto: ...
    @_builtins.property
    def video(self) -> Global___Video: ...
    def __init__(
        self,
        *,
        staticPhoto: Global___StaticPhoto | None = ...,
        video: Global___Video | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["ravenContent", b"ravenContent", "staticPhoto", b"staticPhoto", "video", b"video"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["ravenContent", b"ravenContent", "staticPhoto", b"staticPhoto", "video", b"video"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...
    _WhichOneofReturnType_ravenContent: _TypeAlias = _typing.Literal["staticPhoto", "video"]  # noqa: Y015
    _WhichOneofArgType_ravenContent: _TypeAlias = _typing.Literal["ravenContent", b"ravenContent"]  # noqa: Y015
    def WhichOneof(self, oneof_group: _WhichOneofArgType_ravenContent) -> _WhichOneofReturnType_ravenContent | None: ...

Global___RavenContent: _TypeAlias = RavenContent  # noqa: Y015

@_typing.final
class Thumbnail(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    MEDIATRANSPORT_FIELD_NUMBER: _builtins.int
    HEIGHT_FIELD_NUMBER: _builtins.int
    WIDTH_FIELD_NUMBER: _builtins.int
    height: _builtins.int
    width: _builtins.int
    @_builtins.property
    def mediaTransport(self) -> Global___CommonMediaTransport: ...
    def __init__(
        self,
        *,
        mediaTransport: Global___CommonMediaTransport | None = ...,
        height: _builtins.int | None = ...,
        width: _builtins.int | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "width", b"width"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "width", b"width"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___Thumbnail: _TypeAlias = Thumbnail  # noqa: Y015

@_typing.final
class CommonMediaTransport(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    MEDIAID_FIELD_NUMBER: _builtins.int
    FILESHA256_FIELD_NUMBER: _builtins.int
    MEDIAKEY_FIELD_NUMBER: _builtins.int
    FILEENCSHA256_FIELD_NUMBER: _builtins.int
    DIRECTPATH_FIELD_NUMBER: _builtins.int
    MEDIAKEYTIMESTAMP_FIELD_NUMBER: _builtins.int
    SIDECAR_FIELD_NUMBER: _builtins.int
    FILELENGTH_FIELD_NUMBER: _builtins.int
    MIMETYPE_FIELD_NUMBER: _builtins.int
    OBJECTID_FIELD_NUMBER: _builtins.int
    mediaID: _builtins.str
    fileSHA256: _builtins.str
    mediaKey: _builtins.str
    fileEncSHA256: _builtins.str
    directPath: _builtins.str
    mediaKeyTimestamp: _builtins.str
    sidecar: _builtins.str
    fileLength: _builtins.int
    mimetype: _builtins.str
    objectID: _builtins.str
    def __init__(
        self,
        *,
        mediaID: _builtins.str | None = ...,
        fileSHA256: _builtins.str | None = ...,
        mediaKey: _builtins.str | None = ...,
        fileEncSHA256: _builtins.str | None = ...,
        directPath: _builtins.str | None = ...,
        mediaKeyTimestamp: _builtins.str | None = ...,
        sidecar: _builtins.str | None = ...,
        fileLength: _builtins.int | None = ...,
        mimetype: _builtins.str | None = ...,
        objectID: _builtins.str | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["directPath", b"directPath", "fileEncSHA256", b"fileEncSHA256", "fileLength", b"fileLength", "fileSHA256", b"fileSHA256", "mediaID", b"mediaID", "mediaKey", b"mediaKey", "mediaKeyTimestamp", b"mediaKeyTimestamp", "mimetype", b"mimetype", "objectID", b"objectID", "sidecar", b"sidecar"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["directPath", b"directPath", "fileEncSHA256", b"fileEncSHA256", "fileLength", b"fileLength", "fileSHA256", b"fileSHA256", "mediaID", b"mediaID", "mediaKey", b"mediaKey", "mediaKeyTimestamp", b"mediaKeyTimestamp", "mimetype", b"mimetype", "objectID", b"objectID", "sidecar", b"sidecar"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___CommonMediaTransport: _TypeAlias = CommonMediaTransport  # noqa: Y015

@_typing.final
class VideoExtraMetadata(_message.Message):
    DESCRIPTOR: _descriptor.Descriptor

    UPLOADMOSCLIENTSCORE_FIELD_NUMBER: _builtins.int
    uploadMosClientScore: _builtins.float
    def __init__(
        self,
        *,
        uploadMosClientScore: _builtins.float | None = ...,
    ) -> None: ...
    _HasFieldArgType: _TypeAlias = _typing.Literal["uploadMosClientScore", b"uploadMosClientScore"]  # noqa: Y015
    def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
    _ClearFieldArgType: _TypeAlias = _typing.Literal["uploadMosClientScore", b"uploadMosClientScore"]  # noqa: Y015
    def ClearField(self, field_name: _ClearFieldArgType) -> None: ...

Global___VideoExtraMetadata: _TypeAlias = VideoExtraMetadata  # noqa: Y015
