"""
@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.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 _PjpegScanConfiguration:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _PjpegScanConfigurationEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_PjpegScanConfiguration.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.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 = PjpegScanConfiguration

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

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

    class _InterventionTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Media._InterventionType.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.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
    @property
    def staticPhoto(self) -> global___StaticPhoto: ...
    @property
    def voice(self) -> global___Voice: ...
    @property
    def video(self) -> global___Video: ...
    @property
    def raven(self) -> global___Raven: ...
    @property
    def gif(self) -> global___Gif: ...
    @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: ...
    def HasField(self, field_name: typing.Literal["avatarSticker", b"avatarSticker", "gif", b"gif", "media", b"media", "raven", b"raven", "staticPhoto", b"staticPhoto", "video", b"video", "voice", b"voice"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["avatarSticker", b"avatarSticker", "gif", b"gif", "media", b"media", "raven", b"raven", "staticPhoto", b"staticPhoto", "video", b"video", "voice", b"voice"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["media", b"media"]) -> typing.Literal["staticPhoto", "voice", "video", "raven", "gif", "avatarSticker"] | None: ...

global___Media = Media

@typing.final
class StaticPhoto(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.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
    @property
    def mediaTransport(self) -> global___CommonMediaTransport: ...
    @property
    def scanLengths(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.int]: ...
    @property
    def thumbnail(self) -> global___Thumbnail: ...
    def __init__(
        self,
        *,
        mediaTransport: global___CommonMediaTransport | None = ...,
        height: builtins.int | None = ...,
        width: builtins.int | None = ...,
        scanLengths: collections.abc.Iterable[builtins.int] | None = ...,
        thumbnail: global___Thumbnail | None = ...,
        pjpegScanConfiguration: global___PjpegScanConfiguration.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "pjpegScanConfiguration", b"pjpegScanConfiguration", "thumbnail", b"thumbnail", "width", b"width"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "pjpegScanConfiguration", b"pjpegScanConfiguration", "scanLengths", b"scanLengths", "thumbnail", b"thumbnail", "width", b"width"]) -> None: ...

global___StaticPhoto = StaticPhoto

@typing.final
class Voice(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.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
    @property
    def mediaTransport(self) -> global___CommonMediaTransport: ...
    @property
    def waveforms(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.float]: ...
    def __init__(
        self,
        *,
        mediaTransport: global___CommonMediaTransport | None = ...,
        duration: builtins.int | None = ...,
        waveforms: collections.abc.Iterable[builtins.float] | None = ...,
        waveformSamplingFrequencyHz: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["duration", b"duration", "mediaTransport", b"mediaTransport", "waveformSamplingFrequencyHz", b"waveformSamplingFrequencyHz"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["duration", b"duration", "mediaTransport", b"mediaTransport", "waveformSamplingFrequencyHz", b"waveformSamplingFrequencyHz", "waveforms", b"waveforms"]) -> None: ...

global___Voice = Voice

@typing.final
class Video(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.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
    @property
    def mediaTransport(self) -> global___CommonMediaTransport: ...
    @property
    def thumbnail(self) -> global___Thumbnail: ...
    @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: ...
    def HasField(self, field_name: typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "thumbnail", b"thumbnail", "videoExtraMetadata", b"videoExtraMetadata", "width", b"width"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "thumbnail", b"thumbnail", "videoExtraMetadata", b"videoExtraMetadata", "width", b"width"]) -> None: ...

global___Video = Video

@typing.final
class Gif(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.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
    @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: ...
    def HasField(self, field_name: 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"]) -> builtins.bool: ...
    def ClearField(self, field_name: 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"]) -> None: ...

global___Gif = Gif

@typing.final
class AvatarSticker(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.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
    @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: ...
    def HasField(self, field_name: typing.Literal["isAnimated", b"isAnimated", "mediaTransport", b"mediaTransport", "nuxType", b"nuxType", "stickerID", b"stickerID", "stickerTemplate", b"stickerTemplate"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["isAnimated", b"isAnimated", "mediaTransport", b"mediaTransport", "nuxType", b"nuxType", "stickerID", b"stickerID", "stickerTemplate", b"stickerTemplate"]) -> None: ...

global___AvatarSticker = AvatarSticker

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

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

    class _ViewModeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[Raven._ViewMode.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.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
    @property
    def content(self) -> global___RavenContent: ...
    def __init__(
        self,
        *,
        viewMode: global___Raven.ViewMode.ValueType | None = ...,
        content: global___RavenContent | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["content", b"content", "viewMode", b"viewMode"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["content", b"content", "viewMode", b"viewMode"]) -> None: ...

global___Raven = Raven

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

    STATICPHOTO_FIELD_NUMBER: builtins.int
    VIDEO_FIELD_NUMBER: builtins.int
    @property
    def staticPhoto(self) -> global___StaticPhoto: ...
    @property
    def video(self) -> global___Video: ...
    def __init__(
        self,
        *,
        staticPhoto: global___StaticPhoto | None = ...,
        video: global___Video | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["ravenContent", b"ravenContent", "staticPhoto", b"staticPhoto", "video", b"video"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["ravenContent", b"ravenContent", "staticPhoto", b"staticPhoto", "video", b"video"]) -> None: ...
    def WhichOneof(self, oneof_group: typing.Literal["ravenContent", b"ravenContent"]) -> typing.Literal["staticPhoto", "video"] | None: ...

global___RavenContent = RavenContent

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

    MEDIATRANSPORT_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    WIDTH_FIELD_NUMBER: builtins.int
    height: builtins.int
    width: builtins.int
    @property
    def mediaTransport(self) -> global___CommonMediaTransport: ...
    def __init__(
        self,
        *,
        mediaTransport: global___CommonMediaTransport | None = ...,
        height: builtins.int | None = ...,
        width: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "width", b"width"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["height", b"height", "mediaTransport", b"mediaTransport", "width", b"width"]) -> None: ...

global___Thumbnail = Thumbnail

@typing.final
class CommonMediaTransport(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.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: ...
    def HasField(self, field_name: 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"]) -> builtins.bool: ...
    def ClearField(self, field_name: 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"]) -> None: ...

global___CommonMediaTransport = CommonMediaTransport

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

    UPLOADMOSCLIENTSCORE_FIELD_NUMBER: builtins.int
    uploadMosClientScore: builtins.float
    def __init__(
        self,
        *,
        uploadMosClientScore: builtins.float | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["uploadMosClientScore", b"uploadMosClientScore"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["uploadMosClientScore", b"uploadMosClientScore"]) -> None: ...

global___VideoExtraMetadata = VideoExtraMetadata
