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

class _ADVEncryptionTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
        _ADVEncryptionType.ValueType
    ],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    E2EE: _ADVEncryptionType.ValueType  # 0
    HOSTED: _ADVEncryptionType.ValueType  # 1

class ADVEncryptionType(
    _ADVEncryptionType, metaclass=_ADVEncryptionTypeEnumTypeWrapper
): ...

E2EE: ADVEncryptionType.ValueType  # 0
HOSTED: ADVEncryptionType.ValueType  # 1
global___ADVEncryptionType = ADVEncryptionType

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

class _KeepTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_KeepType.ValueType],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    UNKNOWN: _KeepType.ValueType  # 0
    KEEP_FOR_ALL: _KeepType.ValueType  # 1
    UNDO_KEEP_FOR_ALL: _KeepType.ValueType  # 2

class KeepType(_KeepType, metaclass=_KeepTypeEnumTypeWrapper): ...

UNKNOWN: KeepType.ValueType  # 0
KEEP_FOR_ALL: KeepType.ValueType  # 1
UNDO_KEEP_FOR_ALL: KeepType.ValueType  # 2
global___KeepType = KeepType

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

class _PeerDataOperationRequestTypeEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
        _PeerDataOperationRequestType.ValueType
    ],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    UPLOAD_STICKER: _PeerDataOperationRequestType.ValueType  # 0
    SEND_RECENT_STICKER_BOOTSTRAP: _PeerDataOperationRequestType.ValueType  # 1
    GENERATE_LINK_PREVIEW: _PeerDataOperationRequestType.ValueType  # 2
    HISTORY_SYNC_ON_DEMAND: _PeerDataOperationRequestType.ValueType  # 3
    PLACEHOLDER_MESSAGE_RESEND: _PeerDataOperationRequestType.ValueType  # 4

class PeerDataOperationRequestType(
    _PeerDataOperationRequestType,
    metaclass=_PeerDataOperationRequestTypeEnumTypeWrapper,
): ...

UPLOAD_STICKER: PeerDataOperationRequestType.ValueType  # 0
SEND_RECENT_STICKER_BOOTSTRAP: PeerDataOperationRequestType.ValueType  # 1
GENERATE_LINK_PREVIEW: PeerDataOperationRequestType.ValueType  # 2
HISTORY_SYNC_ON_DEMAND: PeerDataOperationRequestType.ValueType  # 3
PLACEHOLDER_MESSAGE_RESEND: PeerDataOperationRequestType.ValueType  # 4
global___PeerDataOperationRequestType = PeerDataOperationRequestType

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

class _MediaVisibilityEnumTypeWrapper(
    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
        _MediaVisibility.ValueType
    ],
    builtins.type,
):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    DEFAULT: _MediaVisibility.ValueType  # 0
    OFF: _MediaVisibility.ValueType  # 1
    ON: _MediaVisibility.ValueType  # 2

class MediaVisibility(_MediaVisibility, metaclass=_MediaVisibilityEnumTypeWrapper): ...

DEFAULT: MediaVisibility.ValueType  # 0
OFF: MediaVisibility.ValueType  # 1
ON: MediaVisibility.ValueType  # 2
global___MediaVisibility = MediaVisibility

@typing_extensions.final
class ADVSignedKeyIndexList(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DETAILS_FIELD_NUMBER: builtins.int
    ACCOUNTSIGNATURE_FIELD_NUMBER: builtins.int
    ACCOUNTSIGNATUREKEY_FIELD_NUMBER: builtins.int
    details: builtins.bytes
    accountSignature: builtins.bytes
    accountSignatureKey: builtins.bytes
    def __init__(
        self,
        *,
        details: builtins.bytes | None = ...,
        accountSignature: builtins.bytes | None = ...,
        accountSignatureKey: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accountSignature",
            b"accountSignature",
            "accountSignatureKey",
            b"accountSignatureKey",
            "details",
            b"details",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accountSignature",
            b"accountSignature",
            "accountSignatureKey",
            b"accountSignatureKey",
            "details",
            b"details",
        ],
    ) -> None: ...

global___ADVSignedKeyIndexList = ADVSignedKeyIndexList

@typing_extensions.final
class ADVSignedDeviceIdentity(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DETAILS_FIELD_NUMBER: builtins.int
    ACCOUNTSIGNATUREKEY_FIELD_NUMBER: builtins.int
    ACCOUNTSIGNATURE_FIELD_NUMBER: builtins.int
    DEVICESIGNATURE_FIELD_NUMBER: builtins.int
    details: builtins.bytes
    accountSignatureKey: builtins.bytes
    accountSignature: builtins.bytes
    deviceSignature: builtins.bytes
    def __init__(
        self,
        *,
        details: builtins.bytes | None = ...,
        accountSignatureKey: builtins.bytes | None = ...,
        accountSignature: builtins.bytes | None = ...,
        deviceSignature: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accountSignature",
            b"accountSignature",
            "accountSignatureKey",
            b"accountSignatureKey",
            "details",
            b"details",
            "deviceSignature",
            b"deviceSignature",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accountSignature",
            b"accountSignature",
            "accountSignatureKey",
            b"accountSignatureKey",
            "details",
            b"details",
            "deviceSignature",
            b"deviceSignature",
        ],
    ) -> None: ...

global___ADVSignedDeviceIdentity = ADVSignedDeviceIdentity

@typing_extensions.final
class ADVSignedDeviceIdentityHMAC(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DETAILS_FIELD_NUMBER: builtins.int
    HMAC_FIELD_NUMBER: builtins.int
    ACCOUNTTYPE_FIELD_NUMBER: builtins.int
    details: builtins.bytes
    hmac: builtins.bytes
    accountType: global___ADVEncryptionType.ValueType
    def __init__(
        self,
        *,
        details: builtins.bytes | None = ...,
        hmac: builtins.bytes | None = ...,
        accountType: global___ADVEncryptionType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accountType", b"accountType", "details", b"details", "hmac", b"hmac"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accountType", b"accountType", "details", b"details", "hmac", b"hmac"
        ],
    ) -> None: ...

global___ADVSignedDeviceIdentityHMAC = ADVSignedDeviceIdentityHMAC

@typing_extensions.final
class ADVKeyIndexList(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RAWID_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    CURRENTINDEX_FIELD_NUMBER: builtins.int
    VALIDINDEXES_FIELD_NUMBER: builtins.int
    ACCOUNTTYPE_FIELD_NUMBER: builtins.int
    rawId: builtins.int
    timestamp: builtins.int
    currentIndex: builtins.int
    @property
    def validIndexes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.int
    ]: ...
    accountType: global___ADVEncryptionType.ValueType
    def __init__(
        self,
        *,
        rawId: builtins.int | None = ...,
        timestamp: builtins.int | None = ...,
        currentIndex: builtins.int | None = ...,
        validIndexes: collections.abc.Iterable[builtins.int] | None = ...,
        accountType: global___ADVEncryptionType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accountType",
            b"accountType",
            "currentIndex",
            b"currentIndex",
            "rawId",
            b"rawId",
            "timestamp",
            b"timestamp",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accountType",
            b"accountType",
            "currentIndex",
            b"currentIndex",
            "rawId",
            b"rawId",
            "timestamp",
            b"timestamp",
            "validIndexes",
            b"validIndexes",
        ],
    ) -> None: ...

global___ADVKeyIndexList = ADVKeyIndexList

@typing_extensions.final
class ADVDeviceIdentity(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RAWID_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    KEYINDEX_FIELD_NUMBER: builtins.int
    ACCOUNTTYPE_FIELD_NUMBER: builtins.int
    DEVICETYPE_FIELD_NUMBER: builtins.int
    rawId: builtins.int
    timestamp: builtins.int
    keyIndex: builtins.int
    accountType: global___ADVEncryptionType.ValueType
    deviceType: global___ADVEncryptionType.ValueType
    def __init__(
        self,
        *,
        rawId: builtins.int | None = ...,
        timestamp: builtins.int | None = ...,
        keyIndex: builtins.int | None = ...,
        accountType: global___ADVEncryptionType.ValueType | None = ...,
        deviceType: global___ADVEncryptionType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accountType",
            b"accountType",
            "deviceType",
            b"deviceType",
            "keyIndex",
            b"keyIndex",
            "rawId",
            b"rawId",
            "timestamp",
            b"timestamp",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accountType",
            b"accountType",
            "deviceType",
            b"deviceType",
            "keyIndex",
            b"keyIndex",
            "rawId",
            b"rawId",
            "timestamp",
            b"timestamp",
        ],
    ) -> None: ...

global___ADVDeviceIdentity = ADVDeviceIdentity

@typing_extensions.final
class DeviceProps(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _PlatformTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            DeviceProps._PlatformType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: DeviceProps._PlatformType.ValueType  # 0
        CHROME: DeviceProps._PlatformType.ValueType  # 1
        FIREFOX: DeviceProps._PlatformType.ValueType  # 2
        IE: DeviceProps._PlatformType.ValueType  # 3
        OPERA: DeviceProps._PlatformType.ValueType  # 4
        SAFARI: DeviceProps._PlatformType.ValueType  # 5
        EDGE: DeviceProps._PlatformType.ValueType  # 6
        DESKTOP: DeviceProps._PlatformType.ValueType  # 7
        IPAD: DeviceProps._PlatformType.ValueType  # 8
        ANDROID_TABLET: DeviceProps._PlatformType.ValueType  # 9
        OHANA: DeviceProps._PlatformType.ValueType  # 10
        ALOHA: DeviceProps._PlatformType.ValueType  # 11
        CATALINA: DeviceProps._PlatformType.ValueType  # 12
        TCL_TV: DeviceProps._PlatformType.ValueType  # 13
        IOS_PHONE: DeviceProps._PlatformType.ValueType  # 14
        IOS_CATALYST: DeviceProps._PlatformType.ValueType  # 15
        ANDROID_PHONE: DeviceProps._PlatformType.ValueType  # 16
        ANDROID_AMBIGUOUS: DeviceProps._PlatformType.ValueType  # 17
        WEAR_OS: DeviceProps._PlatformType.ValueType  # 18
        AR_WRIST: DeviceProps._PlatformType.ValueType  # 19
        AR_DEVICE: DeviceProps._PlatformType.ValueType  # 20
        UWP: DeviceProps._PlatformType.ValueType  # 21
        VR: DeviceProps._PlatformType.ValueType  # 22

    class PlatformType(_PlatformType, metaclass=_PlatformTypeEnumTypeWrapper): ...
    UNKNOWN: DeviceProps.PlatformType.ValueType  # 0
    CHROME: DeviceProps.PlatformType.ValueType  # 1
    FIREFOX: DeviceProps.PlatformType.ValueType  # 2
    IE: DeviceProps.PlatformType.ValueType  # 3
    OPERA: DeviceProps.PlatformType.ValueType  # 4
    SAFARI: DeviceProps.PlatformType.ValueType  # 5
    EDGE: DeviceProps.PlatformType.ValueType  # 6
    DESKTOP: DeviceProps.PlatformType.ValueType  # 7
    IPAD: DeviceProps.PlatformType.ValueType  # 8
    ANDROID_TABLET: DeviceProps.PlatformType.ValueType  # 9
    OHANA: DeviceProps.PlatformType.ValueType  # 10
    ALOHA: DeviceProps.PlatformType.ValueType  # 11
    CATALINA: DeviceProps.PlatformType.ValueType  # 12
    TCL_TV: DeviceProps.PlatformType.ValueType  # 13
    IOS_PHONE: DeviceProps.PlatformType.ValueType  # 14
    IOS_CATALYST: DeviceProps.PlatformType.ValueType  # 15
    ANDROID_PHONE: DeviceProps.PlatformType.ValueType  # 16
    ANDROID_AMBIGUOUS: DeviceProps.PlatformType.ValueType  # 17
    WEAR_OS: DeviceProps.PlatformType.ValueType  # 18
    AR_WRIST: DeviceProps.PlatformType.ValueType  # 19
    AR_DEVICE: DeviceProps.PlatformType.ValueType  # 20
    UWP: DeviceProps.PlatformType.ValueType  # 21
    VR: DeviceProps.PlatformType.ValueType  # 22

    @typing_extensions.final
    class HistorySyncConfig(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        FULLSYNCDAYSLIMIT_FIELD_NUMBER: builtins.int
        FULLSYNCSIZEMBLIMIT_FIELD_NUMBER: builtins.int
        STORAGEQUOTAMB_FIELD_NUMBER: builtins.int
        INLINEINITIALPAYLOADINE2EEMSG_FIELD_NUMBER: builtins.int
        RECENTSYNCDAYSLIMIT_FIELD_NUMBER: builtins.int
        SUPPORTCALLLOGHISTORY_FIELD_NUMBER: builtins.int
        SUPPORTBOTUSERAGENTCHATHISTORY_FIELD_NUMBER: builtins.int
        SUPPORTCAGREACTIONSANDPOLLS_FIELD_NUMBER: builtins.int
        fullSyncDaysLimit: builtins.int
        fullSyncSizeMbLimit: builtins.int
        storageQuotaMb: builtins.int
        inlineInitialPayloadInE2EeMsg: builtins.bool
        recentSyncDaysLimit: builtins.int
        supportCallLogHistory: builtins.bool
        supportBotUserAgentChatHistory: builtins.bool
        supportCagReactionsAndPolls: builtins.bool
        def __init__(
            self,
            *,
            fullSyncDaysLimit: builtins.int | None = ...,
            fullSyncSizeMbLimit: builtins.int | None = ...,
            storageQuotaMb: builtins.int | None = ...,
            inlineInitialPayloadInE2EeMsg: builtins.bool | None = ...,
            recentSyncDaysLimit: builtins.int | None = ...,
            supportCallLogHistory: builtins.bool | None = ...,
            supportBotUserAgentChatHistory: builtins.bool | None = ...,
            supportCagReactionsAndPolls: builtins.bool | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "fullSyncDaysLimit",
                b"fullSyncDaysLimit",
                "fullSyncSizeMbLimit",
                b"fullSyncSizeMbLimit",
                "inlineInitialPayloadInE2EeMsg",
                b"inlineInitialPayloadInE2EeMsg",
                "recentSyncDaysLimit",
                b"recentSyncDaysLimit",
                "storageQuotaMb",
                b"storageQuotaMb",
                "supportBotUserAgentChatHistory",
                b"supportBotUserAgentChatHistory",
                "supportCagReactionsAndPolls",
                b"supportCagReactionsAndPolls",
                "supportCallLogHistory",
                b"supportCallLogHistory",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "fullSyncDaysLimit",
                b"fullSyncDaysLimit",
                "fullSyncSizeMbLimit",
                b"fullSyncSizeMbLimit",
                "inlineInitialPayloadInE2EeMsg",
                b"inlineInitialPayloadInE2EeMsg",
                "recentSyncDaysLimit",
                b"recentSyncDaysLimit",
                "storageQuotaMb",
                b"storageQuotaMb",
                "supportBotUserAgentChatHistory",
                b"supportBotUserAgentChatHistory",
                "supportCagReactionsAndPolls",
                b"supportCagReactionsAndPolls",
                "supportCallLogHistory",
                b"supportCallLogHistory",
            ],
        ) -> None: ...

    @typing_extensions.final
    class AppVersion(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        PRIMARY_FIELD_NUMBER: builtins.int
        SECONDARY_FIELD_NUMBER: builtins.int
        TERTIARY_FIELD_NUMBER: builtins.int
        QUATERNARY_FIELD_NUMBER: builtins.int
        QUINARY_FIELD_NUMBER: builtins.int
        primary: builtins.int
        secondary: builtins.int
        tertiary: builtins.int
        quaternary: builtins.int
        quinary: builtins.int
        def __init__(
            self,
            *,
            primary: builtins.int | None = ...,
            secondary: builtins.int | None = ...,
            tertiary: builtins.int | None = ...,
            quaternary: builtins.int | None = ...,
            quinary: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "primary",
                b"primary",
                "quaternary",
                b"quaternary",
                "quinary",
                b"quinary",
                "secondary",
                b"secondary",
                "tertiary",
                b"tertiary",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "primary",
                b"primary",
                "quaternary",
                b"quaternary",
                "quinary",
                b"quinary",
                "secondary",
                b"secondary",
                "tertiary",
                b"tertiary",
            ],
        ) -> None: ...

    OS_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    PLATFORMTYPE_FIELD_NUMBER: builtins.int
    REQUIREFULLSYNC_FIELD_NUMBER: builtins.int
    HISTORYSYNCCONFIG_FIELD_NUMBER: builtins.int
    os: builtins.str
    @property
    def version(self) -> global___DeviceProps.AppVersion: ...
    platformType: global___DeviceProps.PlatformType.ValueType
    requireFullSync: builtins.bool
    @property
    def historySyncConfig(self) -> global___DeviceProps.HistorySyncConfig: ...
    def __init__(
        self,
        *,
        os: builtins.str | None = ...,
        version: global___DeviceProps.AppVersion | None = ...,
        platformType: global___DeviceProps.PlatformType.ValueType | None = ...,
        requireFullSync: builtins.bool | None = ...,
        historySyncConfig: global___DeviceProps.HistorySyncConfig | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "historySyncConfig",
            b"historySyncConfig",
            "os",
            b"os",
            "platformType",
            b"platformType",
            "requireFullSync",
            b"requireFullSync",
            "version",
            b"version",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "historySyncConfig",
            b"historySyncConfig",
            "os",
            b"os",
            "platformType",
            b"platformType",
            "requireFullSync",
            b"requireFullSync",
            "version",
            b"version",
        ],
    ) -> None: ...

global___DeviceProps = DeviceProps

@typing_extensions.final
class InteractiveMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class ShopMessage(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _SurfaceEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                InteractiveMessage.ShopMessage._Surface.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN_SURFACE: InteractiveMessage.ShopMessage._Surface.ValueType  # 0
            FB: InteractiveMessage.ShopMessage._Surface.ValueType  # 1
            IG: InteractiveMessage.ShopMessage._Surface.ValueType  # 2
            WA: InteractiveMessage.ShopMessage._Surface.ValueType  # 3

        class Surface(_Surface, metaclass=_SurfaceEnumTypeWrapper): ...
        UNKNOWN_SURFACE: InteractiveMessage.ShopMessage.Surface.ValueType  # 0
        FB: InteractiveMessage.ShopMessage.Surface.ValueType  # 1
        IG: InteractiveMessage.ShopMessage.Surface.ValueType  # 2
        WA: InteractiveMessage.ShopMessage.Surface.ValueType  # 3

        ID_FIELD_NUMBER: builtins.int
        SURFACE_FIELD_NUMBER: builtins.int
        MESSAGEVERSION_FIELD_NUMBER: builtins.int
        id: builtins.str
        surface: global___InteractiveMessage.ShopMessage.Surface.ValueType
        messageVersion: builtins.int
        def __init__(
            self,
            *,
            id: builtins.str | None = ...,
            surface: global___InteractiveMessage.ShopMessage.Surface.ValueType
            | None = ...,
            messageVersion: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "id", b"id", "messageVersion", b"messageVersion", "surface", b"surface"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "id", b"id", "messageVersion", b"messageVersion", "surface", b"surface"
            ],
        ) -> None: ...

    @typing_extensions.final
    class NativeFlowMessage(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing_extensions.final
        class NativeFlowButton(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            NAME_FIELD_NUMBER: builtins.int
            BUTTONPARAMSJSON_FIELD_NUMBER: builtins.int
            name: builtins.str
            buttonParamsJson: builtins.str
            def __init__(
                self,
                *,
                name: builtins.str | None = ...,
                buttonParamsJson: builtins.str | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "buttonParamsJson", b"buttonParamsJson", "name", b"name"
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "buttonParamsJson", b"buttonParamsJson", "name", b"name"
                ],
            ) -> None: ...

        BUTTONS_FIELD_NUMBER: builtins.int
        MESSAGEPARAMSJSON_FIELD_NUMBER: builtins.int
        MESSAGEVERSION_FIELD_NUMBER: builtins.int
        @property
        def buttons(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___InteractiveMessage.NativeFlowMessage.NativeFlowButton
        ]: ...
        messageParamsJson: builtins.str
        messageVersion: builtins.int
        def __init__(
            self,
            *,
            buttons: collections.abc.Iterable[
                global___InteractiveMessage.NativeFlowMessage.NativeFlowButton
            ]
            | None = ...,
            messageParamsJson: builtins.str | None = ...,
            messageVersion: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "messageParamsJson",
                b"messageParamsJson",
                "messageVersion",
                b"messageVersion",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "buttons",
                b"buttons",
                "messageParamsJson",
                b"messageParamsJson",
                "messageVersion",
                b"messageVersion",
            ],
        ) -> None: ...

    @typing_extensions.final
    class Header(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        TITLE_FIELD_NUMBER: builtins.int
        SUBTITLE_FIELD_NUMBER: builtins.int
        HASMEDIAATTACHMENT_FIELD_NUMBER: builtins.int
        DOCUMENTMESSAGE_FIELD_NUMBER: builtins.int
        IMAGEMESSAGE_FIELD_NUMBER: builtins.int
        JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
        VIDEOMESSAGE_FIELD_NUMBER: builtins.int
        LOCATIONMESSAGE_FIELD_NUMBER: builtins.int
        title: builtins.str
        subtitle: builtins.str
        hasMediaAttachment: builtins.bool
        @property
        def documentMessage(self) -> global___DocumentMessage: ...
        @property
        def imageMessage(self) -> global___ImageMessage: ...
        jpegThumbnail: builtins.bytes
        @property
        def videoMessage(self) -> global___VideoMessage: ...
        @property
        def locationMessage(self) -> global___LocationMessage: ...
        def __init__(
            self,
            *,
            title: builtins.str | None = ...,
            subtitle: builtins.str | None = ...,
            hasMediaAttachment: builtins.bool | None = ...,
            documentMessage: global___DocumentMessage | None = ...,
            imageMessage: global___ImageMessage | None = ...,
            jpegThumbnail: builtins.bytes | None = ...,
            videoMessage: global___VideoMessage | None = ...,
            locationMessage: global___LocationMessage | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "documentMessage",
                b"documentMessage",
                "hasMediaAttachment",
                b"hasMediaAttachment",
                "imageMessage",
                b"imageMessage",
                "jpegThumbnail",
                b"jpegThumbnail",
                "locationMessage",
                b"locationMessage",
                "media",
                b"media",
                "subtitle",
                b"subtitle",
                "title",
                b"title",
                "videoMessage",
                b"videoMessage",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "documentMessage",
                b"documentMessage",
                "hasMediaAttachment",
                b"hasMediaAttachment",
                "imageMessage",
                b"imageMessage",
                "jpegThumbnail",
                b"jpegThumbnail",
                "locationMessage",
                b"locationMessage",
                "media",
                b"media",
                "subtitle",
                b"subtitle",
                "title",
                b"title",
                "videoMessage",
                b"videoMessage",
            ],
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing_extensions.Literal["media", b"media"]
        ) -> (
            typing_extensions.Literal[
                "documentMessage",
                "imageMessage",
                "jpegThumbnail",
                "videoMessage",
                "locationMessage",
            ]
            | None
        ): ...

    @typing_extensions.final
    class Footer(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        TEXT_FIELD_NUMBER: builtins.int
        text: builtins.str
        def __init__(
            self,
            *,
            text: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing_extensions.Literal["text", b"text"]
        ) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing_extensions.Literal["text", b"text"]
        ) -> None: ...

    @typing_extensions.final
    class CollectionMessage(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        BIZJID_FIELD_NUMBER: builtins.int
        ID_FIELD_NUMBER: builtins.int
        MESSAGEVERSION_FIELD_NUMBER: builtins.int
        bizJid: builtins.str
        id: builtins.str
        messageVersion: builtins.int
        def __init__(
            self,
            *,
            bizJid: builtins.str | None = ...,
            id: builtins.str | None = ...,
            messageVersion: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "bizJid", b"bizJid", "id", b"id", "messageVersion", b"messageVersion"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "bizJid", b"bizJid", "id", b"id", "messageVersion", b"messageVersion"
            ],
        ) -> None: ...

    @typing_extensions.final
    class CarouselMessage(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CARDS_FIELD_NUMBER: builtins.int
        MESSAGEVERSION_FIELD_NUMBER: builtins.int
        @property
        def cards(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___InteractiveMessage
        ]: ...
        messageVersion: builtins.int
        def __init__(
            self,
            *,
            cards: collections.abc.Iterable[global___InteractiveMessage] | None = ...,
            messageVersion: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal["messageVersion", b"messageVersion"],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "cards", b"cards", "messageVersion", b"messageVersion"
            ],
        ) -> None: ...

    @typing_extensions.final
    class Body(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        TEXT_FIELD_NUMBER: builtins.int
        text: builtins.str
        def __init__(
            self,
            *,
            text: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing_extensions.Literal["text", b"text"]
        ) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing_extensions.Literal["text", b"text"]
        ) -> None: ...

    HEADER_FIELD_NUMBER: builtins.int
    BODY_FIELD_NUMBER: builtins.int
    FOOTER_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    SHOPSTOREFRONTMESSAGE_FIELD_NUMBER: builtins.int
    COLLECTIONMESSAGE_FIELD_NUMBER: builtins.int
    NATIVEFLOWMESSAGE_FIELD_NUMBER: builtins.int
    CAROUSELMESSAGE_FIELD_NUMBER: builtins.int
    @property
    def header(self) -> global___InteractiveMessage.Header: ...
    @property
    def body(self) -> global___InteractiveMessage.Body: ...
    @property
    def footer(self) -> global___InteractiveMessage.Footer: ...
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    @property
    def shopStorefrontMessage(self) -> global___InteractiveMessage.ShopMessage: ...
    @property
    def collectionMessage(self) -> global___InteractiveMessage.CollectionMessage: ...
    @property
    def nativeFlowMessage(self) -> global___InteractiveMessage.NativeFlowMessage: ...
    @property
    def carouselMessage(self) -> global___InteractiveMessage.CarouselMessage: ...
    def __init__(
        self,
        *,
        header: global___InteractiveMessage.Header | None = ...,
        body: global___InteractiveMessage.Body | None = ...,
        footer: global___InteractiveMessage.Footer | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        shopStorefrontMessage: global___InteractiveMessage.ShopMessage | None = ...,
        collectionMessage: global___InteractiveMessage.CollectionMessage | None = ...,
        nativeFlowMessage: global___InteractiveMessage.NativeFlowMessage | None = ...,
        carouselMessage: global___InteractiveMessage.CarouselMessage | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "body",
            b"body",
            "carouselMessage",
            b"carouselMessage",
            "collectionMessage",
            b"collectionMessage",
            "contextInfo",
            b"contextInfo",
            "footer",
            b"footer",
            "header",
            b"header",
            "interactiveMessage",
            b"interactiveMessage",
            "nativeFlowMessage",
            b"nativeFlowMessage",
            "shopStorefrontMessage",
            b"shopStorefrontMessage",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "body",
            b"body",
            "carouselMessage",
            b"carouselMessage",
            "collectionMessage",
            b"collectionMessage",
            "contextInfo",
            b"contextInfo",
            "footer",
            b"footer",
            "header",
            b"header",
            "interactiveMessage",
            b"interactiveMessage",
            "nativeFlowMessage",
            b"nativeFlowMessage",
            "shopStorefrontMessage",
            b"shopStorefrontMessage",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "interactiveMessage", b"interactiveMessage"
        ],
    ) -> (
        typing_extensions.Literal[
            "shopStorefrontMessage",
            "collectionMessage",
            "nativeFlowMessage",
            "carouselMessage",
        ]
        | None
    ): ...

global___InteractiveMessage = InteractiveMessage

@typing_extensions.final
class InitialSecurityNotificationSettingSync(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SECURITYNOTIFICATIONENABLED_FIELD_NUMBER: builtins.int
    securityNotificationEnabled: builtins.bool
    def __init__(
        self,
        *,
        securityNotificationEnabled: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "securityNotificationEnabled", b"securityNotificationEnabled"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "securityNotificationEnabled", b"securityNotificationEnabled"
        ],
    ) -> None: ...

global___InitialSecurityNotificationSettingSync = InitialSecurityNotificationSettingSync

@typing_extensions.final
class ImageMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    URL_FIELD_NUMBER: builtins.int
    MIMETYPE_FIELD_NUMBER: builtins.int
    CAPTION_FIELD_NUMBER: builtins.int
    FILESHA256_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    WIDTH_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    INTERACTIVEANNOTATIONS_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    MEDIAKEYTIMESTAMP_FIELD_NUMBER: builtins.int
    JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    FIRSTSCANSIDECAR_FIELD_NUMBER: builtins.int
    FIRSTSCANLENGTH_FIELD_NUMBER: builtins.int
    EXPERIMENTGROUPID_FIELD_NUMBER: builtins.int
    SCANSSIDECAR_FIELD_NUMBER: builtins.int
    SCANLENGTHS_FIELD_NUMBER: builtins.int
    MIDQUALITYFILESHA256_FIELD_NUMBER: builtins.int
    MIDQUALITYFILEENCSHA256_FIELD_NUMBER: builtins.int
    VIEWONCE_FIELD_NUMBER: builtins.int
    THUMBNAILDIRECTPATH_FIELD_NUMBER: builtins.int
    THUMBNAILSHA256_FIELD_NUMBER: builtins.int
    THUMBNAILENCSHA256_FIELD_NUMBER: builtins.int
    STATICURL_FIELD_NUMBER: builtins.int
    ANNOTATIONS_FIELD_NUMBER: builtins.int
    url: builtins.str
    mimetype: builtins.str
    caption: builtins.str
    fileSha256: builtins.bytes
    fileLength: builtins.int
    height: builtins.int
    width: builtins.int
    mediaKey: builtins.bytes
    fileEncSha256: builtins.bytes
    @property
    def interactiveAnnotations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___InteractiveAnnotation
    ]: ...
    directPath: builtins.str
    mediaKeyTimestamp: builtins.int
    jpegThumbnail: builtins.bytes
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    firstScanSidecar: builtins.bytes
    firstScanLength: builtins.int
    experimentGroupId: builtins.int
    scansSidecar: builtins.bytes
    @property
    def scanLengths(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.int
    ]: ...
    midQualityFileSha256: builtins.bytes
    midQualityFileEncSha256: builtins.bytes
    viewOnce: builtins.bool
    thumbnailDirectPath: builtins.str
    thumbnailSha256: builtins.bytes
    thumbnailEncSha256: builtins.bytes
    staticUrl: builtins.str
    @property
    def annotations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___InteractiveAnnotation
    ]: ...
    def __init__(
        self,
        *,
        url: builtins.str | None = ...,
        mimetype: builtins.str | None = ...,
        caption: builtins.str | None = ...,
        fileSha256: builtins.bytes | None = ...,
        fileLength: builtins.int | None = ...,
        height: builtins.int | None = ...,
        width: builtins.int | None = ...,
        mediaKey: builtins.bytes | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        interactiveAnnotations: collections.abc.Iterable[global___InteractiveAnnotation]
        | None = ...,
        directPath: builtins.str | None = ...,
        mediaKeyTimestamp: builtins.int | None = ...,
        jpegThumbnail: builtins.bytes | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        firstScanSidecar: builtins.bytes | None = ...,
        firstScanLength: builtins.int | None = ...,
        experimentGroupId: builtins.int | None = ...,
        scansSidecar: builtins.bytes | None = ...,
        scanLengths: collections.abc.Iterable[builtins.int] | None = ...,
        midQualityFileSha256: builtins.bytes | None = ...,
        midQualityFileEncSha256: builtins.bytes | None = ...,
        viewOnce: builtins.bool | None = ...,
        thumbnailDirectPath: builtins.str | None = ...,
        thumbnailSha256: builtins.bytes | None = ...,
        thumbnailEncSha256: builtins.bytes | None = ...,
        staticUrl: builtins.str | None = ...,
        annotations: collections.abc.Iterable[global___InteractiveAnnotation]
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "experimentGroupId",
            b"experimentGroupId",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "firstScanLength",
            b"firstScanLength",
            "firstScanSidecar",
            b"firstScanSidecar",
            "height",
            b"height",
            "jpegThumbnail",
            b"jpegThumbnail",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "midQualityFileEncSha256",
            b"midQualityFileEncSha256",
            "midQualityFileSha256",
            b"midQualityFileSha256",
            "mimetype",
            b"mimetype",
            "scansSidecar",
            b"scansSidecar",
            "staticUrl",
            b"staticUrl",
            "thumbnailDirectPath",
            b"thumbnailDirectPath",
            "thumbnailEncSha256",
            b"thumbnailEncSha256",
            "thumbnailSha256",
            b"thumbnailSha256",
            "url",
            b"url",
            "viewOnce",
            b"viewOnce",
            "width",
            b"width",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "annotations",
            b"annotations",
            "caption",
            b"caption",
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "experimentGroupId",
            b"experimentGroupId",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "firstScanLength",
            b"firstScanLength",
            "firstScanSidecar",
            b"firstScanSidecar",
            "height",
            b"height",
            "interactiveAnnotations",
            b"interactiveAnnotations",
            "jpegThumbnail",
            b"jpegThumbnail",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "midQualityFileEncSha256",
            b"midQualityFileEncSha256",
            "midQualityFileSha256",
            b"midQualityFileSha256",
            "mimetype",
            b"mimetype",
            "scanLengths",
            b"scanLengths",
            "scansSidecar",
            b"scansSidecar",
            "staticUrl",
            b"staticUrl",
            "thumbnailDirectPath",
            b"thumbnailDirectPath",
            "thumbnailEncSha256",
            b"thumbnailEncSha256",
            "thumbnailSha256",
            b"thumbnailSha256",
            "url",
            b"url",
            "viewOnce",
            b"viewOnce",
            "width",
            b"width",
        ],
    ) -> None: ...

global___ImageMessage = ImageMessage

@typing_extensions.final
class HistorySyncNotification(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _HistorySyncTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            HistorySyncNotification._HistorySyncType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        INITIAL_BOOTSTRAP: HistorySyncNotification._HistorySyncType.ValueType  # 0
        INITIAL_STATUS_V3: HistorySyncNotification._HistorySyncType.ValueType  # 1
        FULL: HistorySyncNotification._HistorySyncType.ValueType  # 2
        RECENT: HistorySyncNotification._HistorySyncType.ValueType  # 3
        PUSH_NAME: HistorySyncNotification._HistorySyncType.ValueType  # 4
        NON_BLOCKING_DATA: HistorySyncNotification._HistorySyncType.ValueType  # 5
        ON_DEMAND: HistorySyncNotification._HistorySyncType.ValueType  # 6

    class HistorySyncType(
        _HistorySyncType, metaclass=_HistorySyncTypeEnumTypeWrapper
    ): ...
    INITIAL_BOOTSTRAP: HistorySyncNotification.HistorySyncType.ValueType  # 0
    INITIAL_STATUS_V3: HistorySyncNotification.HistorySyncType.ValueType  # 1
    FULL: HistorySyncNotification.HistorySyncType.ValueType  # 2
    RECENT: HistorySyncNotification.HistorySyncType.ValueType  # 3
    PUSH_NAME: HistorySyncNotification.HistorySyncType.ValueType  # 4
    NON_BLOCKING_DATA: HistorySyncNotification.HistorySyncType.ValueType  # 5
    ON_DEMAND: HistorySyncNotification.HistorySyncType.ValueType  # 6

    FILESHA256_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    SYNCTYPE_FIELD_NUMBER: builtins.int
    CHUNKORDER_FIELD_NUMBER: builtins.int
    ORIGINALMESSAGEID_FIELD_NUMBER: builtins.int
    PROGRESS_FIELD_NUMBER: builtins.int
    OLDESTMSGINCHUNKTIMESTAMPSEC_FIELD_NUMBER: builtins.int
    INITIALHISTBOOTSTRAPINLINEPAYLOAD_FIELD_NUMBER: builtins.int
    PEERDATAREQUESTSESSIONID_FIELD_NUMBER: builtins.int
    fileSha256: builtins.bytes
    fileLength: builtins.int
    mediaKey: builtins.bytes
    fileEncSha256: builtins.bytes
    directPath: builtins.str
    syncType: global___HistorySyncNotification.HistorySyncType.ValueType
    chunkOrder: builtins.int
    originalMessageId: builtins.str
    progress: builtins.int
    oldestMsgInChunkTimestampSec: builtins.int
    initialHistBootstrapInlinePayload: builtins.bytes
    peerDataRequestSessionId: builtins.str
    def __init__(
        self,
        *,
        fileSha256: builtins.bytes | None = ...,
        fileLength: builtins.int | None = ...,
        mediaKey: builtins.bytes | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        directPath: builtins.str | None = ...,
        syncType: global___HistorySyncNotification.HistorySyncType.ValueType
        | None = ...,
        chunkOrder: builtins.int | None = ...,
        originalMessageId: builtins.str | None = ...,
        progress: builtins.int | None = ...,
        oldestMsgInChunkTimestampSec: builtins.int | None = ...,
        initialHistBootstrapInlinePayload: builtins.bytes | None = ...,
        peerDataRequestSessionId: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "chunkOrder",
            b"chunkOrder",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "initialHistBootstrapInlinePayload",
            b"initialHistBootstrapInlinePayload",
            "mediaKey",
            b"mediaKey",
            "oldestMsgInChunkTimestampSec",
            b"oldestMsgInChunkTimestampSec",
            "originalMessageId",
            b"originalMessageId",
            "peerDataRequestSessionId",
            b"peerDataRequestSessionId",
            "progress",
            b"progress",
            "syncType",
            b"syncType",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "chunkOrder",
            b"chunkOrder",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "initialHistBootstrapInlinePayload",
            b"initialHistBootstrapInlinePayload",
            "mediaKey",
            b"mediaKey",
            "oldestMsgInChunkTimestampSec",
            b"oldestMsgInChunkTimestampSec",
            "originalMessageId",
            b"originalMessageId",
            "peerDataRequestSessionId",
            b"peerDataRequestSessionId",
            "progress",
            b"progress",
            "syncType",
            b"syncType",
        ],
    ) -> None: ...

global___HistorySyncNotification = HistorySyncNotification

@typing_extensions.final
class HighlyStructuredMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class HSMLocalizableParameter(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing_extensions.final
        class HSMDateTime(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            @typing_extensions.final
            class HSMDateTimeUnixEpoch(google.protobuf.message.Message):
                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                TIMESTAMP_FIELD_NUMBER: builtins.int
                timestamp: builtins.int
                def __init__(
                    self,
                    *,
                    timestamp: builtins.int | None = ...,
                ) -> None: ...
                def HasField(
                    self,
                    field_name: typing_extensions.Literal["timestamp", b"timestamp"],
                ) -> builtins.bool: ...
                def ClearField(
                    self,
                    field_name: typing_extensions.Literal["timestamp", b"timestamp"],
                ) -> None: ...

            @typing_extensions.final
            class HSMDateTimeComponent(google.protobuf.message.Message):
                DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

                class _DayOfWeekTypeEnumTypeWrapper(
                    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                        HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._DayOfWeekType.ValueType
                    ],
                    builtins.type,
                ):
                    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
                    MONDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._DayOfWeekType.ValueType  # 1
                    TUESDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._DayOfWeekType.ValueType  # 2
                    WEDNESDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._DayOfWeekType.ValueType  # 3
                    THURSDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._DayOfWeekType.ValueType  # 4
                    FRIDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._DayOfWeekType.ValueType  # 5
                    SATURDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._DayOfWeekType.ValueType  # 6
                    SUNDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._DayOfWeekType.ValueType  # 7

                class DayOfWeekType(
                    _DayOfWeekType, metaclass=_DayOfWeekTypeEnumTypeWrapper
                ): ...
                MONDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType  # 1
                TUESDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType  # 2
                WEDNESDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType  # 3
                THURSDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType  # 4
                FRIDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType  # 5
                SATURDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType  # 6
                SUNDAY: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType  # 7

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

                class _CalendarTypeEnumTypeWrapper(
                    google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                        HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._CalendarType.ValueType
                    ],
                    builtins.type,
                ):
                    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
                    GREGORIAN: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._CalendarType.ValueType  # 1
                    SOLAR_HIJRI: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent._CalendarType.ValueType  # 2

                class CalendarType(
                    _CalendarType, metaclass=_CalendarTypeEnumTypeWrapper
                ): ...
                GREGORIAN: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.CalendarType.ValueType  # 1
                SOLAR_HIJRI: HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.CalendarType.ValueType  # 2

                DAYOFWEEK_FIELD_NUMBER: builtins.int
                YEAR_FIELD_NUMBER: builtins.int
                MONTH_FIELD_NUMBER: builtins.int
                DAYOFMONTH_FIELD_NUMBER: builtins.int
                HOUR_FIELD_NUMBER: builtins.int
                MINUTE_FIELD_NUMBER: builtins.int
                CALENDAR_FIELD_NUMBER: builtins.int
                dayOfWeek: global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType
                year: builtins.int
                month: builtins.int
                dayOfMonth: builtins.int
                hour: builtins.int
                minute: builtins.int
                calendar: global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.CalendarType.ValueType
                def __init__(
                    self,
                    *,
                    dayOfWeek: global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.DayOfWeekType.ValueType
                    | None = ...,
                    year: builtins.int | None = ...,
                    month: builtins.int | None = ...,
                    dayOfMonth: builtins.int | None = ...,
                    hour: builtins.int | None = ...,
                    minute: builtins.int | None = ...,
                    calendar: global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent.CalendarType.ValueType
                    | None = ...,
                ) -> None: ...
                def HasField(
                    self,
                    field_name: typing_extensions.Literal[
                        "calendar",
                        b"calendar",
                        "dayOfMonth",
                        b"dayOfMonth",
                        "dayOfWeek",
                        b"dayOfWeek",
                        "hour",
                        b"hour",
                        "minute",
                        b"minute",
                        "month",
                        b"month",
                        "year",
                        b"year",
                    ],
                ) -> builtins.bool: ...
                def ClearField(
                    self,
                    field_name: typing_extensions.Literal[
                        "calendar",
                        b"calendar",
                        "dayOfMonth",
                        b"dayOfMonth",
                        "dayOfWeek",
                        b"dayOfWeek",
                        "hour",
                        b"hour",
                        "minute",
                        b"minute",
                        "month",
                        b"month",
                        "year",
                        b"year",
                    ],
                ) -> None: ...

            COMPONENT_FIELD_NUMBER: builtins.int
            UNIXEPOCH_FIELD_NUMBER: builtins.int
            @property
            def component(
                self,
            ) -> global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent: ...
            @property
            def unixEpoch(
                self,
            ) -> global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeUnixEpoch: ...
            def __init__(
                self,
                *,
                component: global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeComponent
                | None = ...,
                unixEpoch: global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime.HSMDateTimeUnixEpoch
                | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "component",
                    b"component",
                    "datetimeOneof",
                    b"datetimeOneof",
                    "unixEpoch",
                    b"unixEpoch",
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "component",
                    b"component",
                    "datetimeOneof",
                    b"datetimeOneof",
                    "unixEpoch",
                    b"unixEpoch",
                ],
            ) -> None: ...
            def WhichOneof(
                self,
                oneof_group: typing_extensions.Literal[
                    "datetimeOneof", b"datetimeOneof"
                ],
            ) -> typing_extensions.Literal["component", "unixEpoch"] | None: ...

        @typing_extensions.final
        class HSMCurrency(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            CURRENCYCODE_FIELD_NUMBER: builtins.int
            AMOUNT1000_FIELD_NUMBER: builtins.int
            currencyCode: builtins.str
            amount1000: builtins.int
            def __init__(
                self,
                *,
                currencyCode: builtins.str | None = ...,
                amount1000: builtins.int | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "amount1000", b"amount1000", "currencyCode", b"currencyCode"
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "amount1000", b"amount1000", "currencyCode", b"currencyCode"
                ],
            ) -> None: ...

        DEFAULT_FIELD_NUMBER: builtins.int
        CURRENCY_FIELD_NUMBER: builtins.int
        DATETIME_FIELD_NUMBER: builtins.int
        default: builtins.str
        @property
        def currency(
            self,
        ) -> global___HighlyStructuredMessage.HSMLocalizableParameter.HSMCurrency: ...
        @property
        def dateTime(
            self,
        ) -> global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime: ...
        def __init__(
            self,
            *,
            default: builtins.str | None = ...,
            currency: global___HighlyStructuredMessage.HSMLocalizableParameter.HSMCurrency
            | None = ...,
            dateTime: global___HighlyStructuredMessage.HSMLocalizableParameter.HSMDateTime
            | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "currency",
                b"currency",
                "dateTime",
                b"dateTime",
                "default",
                b"default",
                "paramOneof",
                b"paramOneof",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "currency",
                b"currency",
                "dateTime",
                b"dateTime",
                "default",
                b"default",
                "paramOneof",
                b"paramOneof",
            ],
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing_extensions.Literal["paramOneof", b"paramOneof"]
        ) -> typing_extensions.Literal["currency", "dateTime"] | None: ...

    NAMESPACE_FIELD_NUMBER: builtins.int
    ELEMENTNAME_FIELD_NUMBER: builtins.int
    PARAMS_FIELD_NUMBER: builtins.int
    FALLBACKLG_FIELD_NUMBER: builtins.int
    FALLBACKLC_FIELD_NUMBER: builtins.int
    LOCALIZABLEPARAMS_FIELD_NUMBER: builtins.int
    DETERMINISTICLG_FIELD_NUMBER: builtins.int
    DETERMINISTICLC_FIELD_NUMBER: builtins.int
    HYDRATEDHSM_FIELD_NUMBER: builtins.int
    namespace: builtins.str
    elementName: builtins.str
    @property
    def params(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    fallbackLg: builtins.str
    fallbackLc: builtins.str
    @property
    def localizableParams(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___HighlyStructuredMessage.HSMLocalizableParameter
    ]: ...
    deterministicLg: builtins.str
    deterministicLc: builtins.str
    @property
    def hydratedHsm(self) -> global___TemplateMessage: ...
    def __init__(
        self,
        *,
        namespace: builtins.str | None = ...,
        elementName: builtins.str | None = ...,
        params: collections.abc.Iterable[builtins.str] | None = ...,
        fallbackLg: builtins.str | None = ...,
        fallbackLc: builtins.str | None = ...,
        localizableParams: collections.abc.Iterable[
            global___HighlyStructuredMessage.HSMLocalizableParameter
        ]
        | None = ...,
        deterministicLg: builtins.str | None = ...,
        deterministicLc: builtins.str | None = ...,
        hydratedHsm: global___TemplateMessage | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "deterministicLc",
            b"deterministicLc",
            "deterministicLg",
            b"deterministicLg",
            "elementName",
            b"elementName",
            "fallbackLc",
            b"fallbackLc",
            "fallbackLg",
            b"fallbackLg",
            "hydratedHsm",
            b"hydratedHsm",
            "namespace",
            b"namespace",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "deterministicLc",
            b"deterministicLc",
            "deterministicLg",
            b"deterministicLg",
            "elementName",
            b"elementName",
            "fallbackLc",
            b"fallbackLc",
            "fallbackLg",
            b"fallbackLg",
            "hydratedHsm",
            b"hydratedHsm",
            "localizableParams",
            b"localizableParams",
            "namespace",
            b"namespace",
            "params",
            b"params",
        ],
    ) -> None: ...

global___HighlyStructuredMessage = HighlyStructuredMessage

@typing_extensions.final
class GroupInviteMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _GroupTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            GroupInviteMessage._GroupType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        DEFAULT: GroupInviteMessage._GroupType.ValueType  # 0
        PARENT: GroupInviteMessage._GroupType.ValueType  # 1

    class GroupType(_GroupType, metaclass=_GroupTypeEnumTypeWrapper): ...
    DEFAULT: GroupInviteMessage.GroupType.ValueType  # 0
    PARENT: GroupInviteMessage.GroupType.ValueType  # 1

    GROUPJID_FIELD_NUMBER: builtins.int
    INVITECODE_FIELD_NUMBER: builtins.int
    INVITEEXPIRATION_FIELD_NUMBER: builtins.int
    GROUPNAME_FIELD_NUMBER: builtins.int
    JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CAPTION_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    GROUPTYPE_FIELD_NUMBER: builtins.int
    groupJid: builtins.str
    inviteCode: builtins.str
    inviteExpiration: builtins.int
    groupName: builtins.str
    jpegThumbnail: builtins.bytes
    caption: builtins.str
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    groupType: global___GroupInviteMessage.GroupType.ValueType
    def __init__(
        self,
        *,
        groupJid: builtins.str | None = ...,
        inviteCode: builtins.str | None = ...,
        inviteExpiration: builtins.int | None = ...,
        groupName: builtins.str | None = ...,
        jpegThumbnail: builtins.bytes | None = ...,
        caption: builtins.str | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        groupType: global___GroupInviteMessage.GroupType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "contextInfo",
            b"contextInfo",
            "groupJid",
            b"groupJid",
            "groupName",
            b"groupName",
            "groupType",
            b"groupType",
            "inviteCode",
            b"inviteCode",
            "inviteExpiration",
            b"inviteExpiration",
            "jpegThumbnail",
            b"jpegThumbnail",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "contextInfo",
            b"contextInfo",
            "groupJid",
            b"groupJid",
            "groupName",
            b"groupName",
            "groupType",
            b"groupType",
            "inviteCode",
            b"inviteCode",
            "inviteExpiration",
            b"inviteExpiration",
            "jpegThumbnail",
            b"jpegThumbnail",
        ],
    ) -> None: ...

global___GroupInviteMessage = GroupInviteMessage

@typing_extensions.final
class FutureProofMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___FutureProofMessage = FutureProofMessage

@typing_extensions.final
class ExtendedTextMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _PreviewTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ExtendedTextMessage._PreviewType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        NONE: ExtendedTextMessage._PreviewType.ValueType  # 0
        VIDEO: ExtendedTextMessage._PreviewType.ValueType  # 1
        PLACEHOLDER: ExtendedTextMessage._PreviewType.ValueType  # 4
        IMAGE: ExtendedTextMessage._PreviewType.ValueType  # 5

    class PreviewType(_PreviewType, metaclass=_PreviewTypeEnumTypeWrapper): ...
    NONE: ExtendedTextMessage.PreviewType.ValueType  # 0
    VIDEO: ExtendedTextMessage.PreviewType.ValueType  # 1
    PLACEHOLDER: ExtendedTextMessage.PreviewType.ValueType  # 4
    IMAGE: ExtendedTextMessage.PreviewType.ValueType  # 5

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

    class _InviteLinkGroupTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ExtendedTextMessage._InviteLinkGroupType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        DEFAULT: ExtendedTextMessage._InviteLinkGroupType.ValueType  # 0
        PARENT: ExtendedTextMessage._InviteLinkGroupType.ValueType  # 1
        SUB: ExtendedTextMessage._InviteLinkGroupType.ValueType  # 2
        DEFAULT_SUB: ExtendedTextMessage._InviteLinkGroupType.ValueType  # 3

    class InviteLinkGroupType(
        _InviteLinkGroupType, metaclass=_InviteLinkGroupTypeEnumTypeWrapper
    ): ...
    DEFAULT: ExtendedTextMessage.InviteLinkGroupType.ValueType  # 0
    PARENT: ExtendedTextMessage.InviteLinkGroupType.ValueType  # 1
    SUB: ExtendedTextMessage.InviteLinkGroupType.ValueType  # 2
    DEFAULT_SUB: ExtendedTextMessage.InviteLinkGroupType.ValueType  # 3

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

    class _FontTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ExtendedTextMessage._FontType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        SYSTEM: ExtendedTextMessage._FontType.ValueType  # 0
        SYSTEM_TEXT: ExtendedTextMessage._FontType.ValueType  # 1
        FB_SCRIPT: ExtendedTextMessage._FontType.ValueType  # 2
        SYSTEM_BOLD: ExtendedTextMessage._FontType.ValueType  # 6
        MORNINGBREEZE_REGULAR: ExtendedTextMessage._FontType.ValueType  # 7
        CALISTOGA_REGULAR: ExtendedTextMessage._FontType.ValueType  # 8
        EXO2_EXTRABOLD: ExtendedTextMessage._FontType.ValueType  # 9
        COURIERPRIME_BOLD: ExtendedTextMessage._FontType.ValueType  # 10

    class FontType(_FontType, metaclass=_FontTypeEnumTypeWrapper): ...
    SYSTEM: ExtendedTextMessage.FontType.ValueType  # 0
    SYSTEM_TEXT: ExtendedTextMessage.FontType.ValueType  # 1
    FB_SCRIPT: ExtendedTextMessage.FontType.ValueType  # 2
    SYSTEM_BOLD: ExtendedTextMessage.FontType.ValueType  # 6
    MORNINGBREEZE_REGULAR: ExtendedTextMessage.FontType.ValueType  # 7
    CALISTOGA_REGULAR: ExtendedTextMessage.FontType.ValueType  # 8
    EXO2_EXTRABOLD: ExtendedTextMessage.FontType.ValueType  # 9
    COURIERPRIME_BOLD: ExtendedTextMessage.FontType.ValueType  # 10

    TEXT_FIELD_NUMBER: builtins.int
    MATCHEDTEXT_FIELD_NUMBER: builtins.int
    CANONICALURL_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    TEXTARGB_FIELD_NUMBER: builtins.int
    BACKGROUNDARGB_FIELD_NUMBER: builtins.int
    FONT_FIELD_NUMBER: builtins.int
    PREVIEWTYPE_FIELD_NUMBER: builtins.int
    JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    DONOTPLAYINLINE_FIELD_NUMBER: builtins.int
    THUMBNAILDIRECTPATH_FIELD_NUMBER: builtins.int
    THUMBNAILSHA256_FIELD_NUMBER: builtins.int
    THUMBNAILENCSHA256_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    MEDIAKEYTIMESTAMP_FIELD_NUMBER: builtins.int
    THUMBNAILHEIGHT_FIELD_NUMBER: builtins.int
    THUMBNAILWIDTH_FIELD_NUMBER: builtins.int
    INVITELINKGROUPTYPE_FIELD_NUMBER: builtins.int
    INVITELINKPARENTGROUPSUBJECTV2_FIELD_NUMBER: builtins.int
    INVITELINKPARENTGROUPTHUMBNAILV2_FIELD_NUMBER: builtins.int
    INVITELINKGROUPTYPEV2_FIELD_NUMBER: builtins.int
    VIEWONCE_FIELD_NUMBER: builtins.int
    text: builtins.str
    matchedText: builtins.str
    canonicalUrl: builtins.str
    description: builtins.str
    title: builtins.str
    textArgb: builtins.int
    backgroundArgb: builtins.int
    font: global___ExtendedTextMessage.FontType.ValueType
    previewType: global___ExtendedTextMessage.PreviewType.ValueType
    jpegThumbnail: builtins.bytes
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    doNotPlayInline: builtins.bool
    thumbnailDirectPath: builtins.str
    thumbnailSha256: builtins.bytes
    thumbnailEncSha256: builtins.bytes
    mediaKey: builtins.bytes
    mediaKeyTimestamp: builtins.int
    thumbnailHeight: builtins.int
    thumbnailWidth: builtins.int
    inviteLinkGroupType: global___ExtendedTextMessage.InviteLinkGroupType.ValueType
    inviteLinkParentGroupSubjectV2: builtins.str
    inviteLinkParentGroupThumbnailV2: builtins.bytes
    inviteLinkGroupTypeV2: global___ExtendedTextMessage.InviteLinkGroupType.ValueType
    viewOnce: builtins.bool
    def __init__(
        self,
        *,
        text: builtins.str | None = ...,
        matchedText: builtins.str | None = ...,
        canonicalUrl: builtins.str | None = ...,
        description: builtins.str | None = ...,
        title: builtins.str | None = ...,
        textArgb: builtins.int | None = ...,
        backgroundArgb: builtins.int | None = ...,
        font: global___ExtendedTextMessage.FontType.ValueType | None = ...,
        previewType: global___ExtendedTextMessage.PreviewType.ValueType | None = ...,
        jpegThumbnail: builtins.bytes | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        doNotPlayInline: builtins.bool | None = ...,
        thumbnailDirectPath: builtins.str | None = ...,
        thumbnailSha256: builtins.bytes | None = ...,
        thumbnailEncSha256: builtins.bytes | None = ...,
        mediaKey: builtins.bytes | None = ...,
        mediaKeyTimestamp: builtins.int | None = ...,
        thumbnailHeight: builtins.int | None = ...,
        thumbnailWidth: builtins.int | None = ...,
        inviteLinkGroupType: global___ExtendedTextMessage.InviteLinkGroupType.ValueType
        | None = ...,
        inviteLinkParentGroupSubjectV2: builtins.str | None = ...,
        inviteLinkParentGroupThumbnailV2: builtins.bytes | None = ...,
        inviteLinkGroupTypeV2: global___ExtendedTextMessage.InviteLinkGroupType.ValueType
        | None = ...,
        viewOnce: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "backgroundArgb",
            b"backgroundArgb",
            "canonicalUrl",
            b"canonicalUrl",
            "contextInfo",
            b"contextInfo",
            "description",
            b"description",
            "doNotPlayInline",
            b"doNotPlayInline",
            "font",
            b"font",
            "inviteLinkGroupType",
            b"inviteLinkGroupType",
            "inviteLinkGroupTypeV2",
            b"inviteLinkGroupTypeV2",
            "inviteLinkParentGroupSubjectV2",
            b"inviteLinkParentGroupSubjectV2",
            "inviteLinkParentGroupThumbnailV2",
            b"inviteLinkParentGroupThumbnailV2",
            "jpegThumbnail",
            b"jpegThumbnail",
            "matchedText",
            b"matchedText",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "previewType",
            b"previewType",
            "text",
            b"text",
            "textArgb",
            b"textArgb",
            "thumbnailDirectPath",
            b"thumbnailDirectPath",
            "thumbnailEncSha256",
            b"thumbnailEncSha256",
            "thumbnailHeight",
            b"thumbnailHeight",
            "thumbnailSha256",
            b"thumbnailSha256",
            "thumbnailWidth",
            b"thumbnailWidth",
            "title",
            b"title",
            "viewOnce",
            b"viewOnce",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "backgroundArgb",
            b"backgroundArgb",
            "canonicalUrl",
            b"canonicalUrl",
            "contextInfo",
            b"contextInfo",
            "description",
            b"description",
            "doNotPlayInline",
            b"doNotPlayInline",
            "font",
            b"font",
            "inviteLinkGroupType",
            b"inviteLinkGroupType",
            "inviteLinkGroupTypeV2",
            b"inviteLinkGroupTypeV2",
            "inviteLinkParentGroupSubjectV2",
            b"inviteLinkParentGroupSubjectV2",
            "inviteLinkParentGroupThumbnailV2",
            b"inviteLinkParentGroupThumbnailV2",
            "jpegThumbnail",
            b"jpegThumbnail",
            "matchedText",
            b"matchedText",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "previewType",
            b"previewType",
            "text",
            b"text",
            "textArgb",
            b"textArgb",
            "thumbnailDirectPath",
            b"thumbnailDirectPath",
            "thumbnailEncSha256",
            b"thumbnailEncSha256",
            "thumbnailHeight",
            b"thumbnailHeight",
            "thumbnailSha256",
            b"thumbnailSha256",
            "thumbnailWidth",
            b"thumbnailWidth",
            "title",
            b"title",
            "viewOnce",
            b"viewOnce",
        ],
    ) -> None: ...

global___ExtendedTextMessage = ExtendedTextMessage

@typing_extensions.final
class EventResponseMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _EventResponseTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            EventResponseMessage._EventResponseType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: EventResponseMessage._EventResponseType.ValueType  # 0
        GOING: EventResponseMessage._EventResponseType.ValueType  # 1
        NOT_GOING: EventResponseMessage._EventResponseType.ValueType  # 2

    class EventResponseType(
        _EventResponseType, metaclass=_EventResponseTypeEnumTypeWrapper
    ): ...
    UNKNOWN: EventResponseMessage.EventResponseType.ValueType  # 0
    GOING: EventResponseMessage.EventResponseType.ValueType  # 1
    NOT_GOING: EventResponseMessage.EventResponseType.ValueType  # 2

    RESPONSE_FIELD_NUMBER: builtins.int
    TIMESTAMPMS_FIELD_NUMBER: builtins.int
    response: global___EventResponseMessage.EventResponseType.ValueType
    timestampMs: builtins.int
    def __init__(
        self,
        *,
        response: global___EventResponseMessage.EventResponseType.ValueType
        | None = ...,
        timestampMs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "response", b"response", "timestampMs", b"timestampMs"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "response", b"response", "timestampMs", b"timestampMs"
        ],
    ) -> None: ...

global___EventResponseMessage = EventResponseMessage

@typing_extensions.final
class EventMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CONTEXTINFO_FIELD_NUMBER: builtins.int
    ISCANCELED_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    LOCATION_FIELD_NUMBER: builtins.int
    JOINLINK_FIELD_NUMBER: builtins.int
    STARTTIME_FIELD_NUMBER: builtins.int
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    isCanceled: builtins.bool
    name: builtins.str
    description: builtins.str
    @property
    def location(self) -> global___LocationMessage: ...
    joinLink: builtins.str
    startTime: builtins.int
    def __init__(
        self,
        *,
        contextInfo: global___ContextInfo | None = ...,
        isCanceled: builtins.bool | None = ...,
        name: builtins.str | None = ...,
        description: builtins.str | None = ...,
        location: global___LocationMessage | None = ...,
        joinLink: builtins.str | None = ...,
        startTime: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "description",
            b"description",
            "isCanceled",
            b"isCanceled",
            "joinLink",
            b"joinLink",
            "location",
            b"location",
            "name",
            b"name",
            "startTime",
            b"startTime",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "description",
            b"description",
            "isCanceled",
            b"isCanceled",
            "joinLink",
            b"joinLink",
            "location",
            b"location",
            "name",
            b"name",
            "startTime",
            b"startTime",
        ],
    ) -> None: ...

global___EventMessage = EventMessage

@typing_extensions.final
class EncReactionMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TARGETMESSAGEKEY_FIELD_NUMBER: builtins.int
    ENCPAYLOAD_FIELD_NUMBER: builtins.int
    ENCIV_FIELD_NUMBER: builtins.int
    @property
    def targetMessageKey(self) -> global___MessageKey: ...
    encPayload: builtins.bytes
    encIv: builtins.bytes
    def __init__(
        self,
        *,
        targetMessageKey: global___MessageKey | None = ...,
        encPayload: builtins.bytes | None = ...,
        encIv: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "encIv",
            b"encIv",
            "encPayload",
            b"encPayload",
            "targetMessageKey",
            b"targetMessageKey",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "encIv",
            b"encIv",
            "encPayload",
            b"encPayload",
            "targetMessageKey",
            b"targetMessageKey",
        ],
    ) -> None: ...

global___EncReactionMessage = EncReactionMessage

@typing_extensions.final
class EncEventResponseMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EVENTCREATIONMESSAGEKEY_FIELD_NUMBER: builtins.int
    ENCPAYLOAD_FIELD_NUMBER: builtins.int
    ENCIV_FIELD_NUMBER: builtins.int
    @property
    def eventCreationMessageKey(self) -> global___MessageKey: ...
    encPayload: builtins.bytes
    encIv: builtins.bytes
    def __init__(
        self,
        *,
        eventCreationMessageKey: global___MessageKey | None = ...,
        encPayload: builtins.bytes | None = ...,
        encIv: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "encIv",
            b"encIv",
            "encPayload",
            b"encPayload",
            "eventCreationMessageKey",
            b"eventCreationMessageKey",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "encIv",
            b"encIv",
            "encPayload",
            b"encPayload",
            "eventCreationMessageKey",
            b"eventCreationMessageKey",
        ],
    ) -> None: ...

global___EncEventResponseMessage = EncEventResponseMessage

@typing_extensions.final
class EncCommentMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TARGETMESSAGEKEY_FIELD_NUMBER: builtins.int
    ENCPAYLOAD_FIELD_NUMBER: builtins.int
    ENCIV_FIELD_NUMBER: builtins.int
    @property
    def targetMessageKey(self) -> global___MessageKey: ...
    encPayload: builtins.bytes
    encIv: builtins.bytes
    def __init__(
        self,
        *,
        targetMessageKey: global___MessageKey | None = ...,
        encPayload: builtins.bytes | None = ...,
        encIv: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "encIv",
            b"encIv",
            "encPayload",
            b"encPayload",
            "targetMessageKey",
            b"targetMessageKey",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "encIv",
            b"encIv",
            "encPayload",
            b"encPayload",
            "targetMessageKey",
            b"targetMessageKey",
        ],
    ) -> None: ...

global___EncCommentMessage = EncCommentMessage

@typing_extensions.final
class DocumentMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    URL_FIELD_NUMBER: builtins.int
    MIMETYPE_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    FILESHA256_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    PAGECOUNT_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    FILENAME_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    MEDIAKEYTIMESTAMP_FIELD_NUMBER: builtins.int
    CONTACTVCARD_FIELD_NUMBER: builtins.int
    THUMBNAILDIRECTPATH_FIELD_NUMBER: builtins.int
    THUMBNAILSHA256_FIELD_NUMBER: builtins.int
    THUMBNAILENCSHA256_FIELD_NUMBER: builtins.int
    JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    THUMBNAILHEIGHT_FIELD_NUMBER: builtins.int
    THUMBNAILWIDTH_FIELD_NUMBER: builtins.int
    CAPTION_FIELD_NUMBER: builtins.int
    url: builtins.str
    mimetype: builtins.str
    title: builtins.str
    fileSha256: builtins.bytes
    fileLength: builtins.int
    pageCount: builtins.int
    mediaKey: builtins.bytes
    fileName: builtins.str
    fileEncSha256: builtins.bytes
    directPath: builtins.str
    mediaKeyTimestamp: builtins.int
    contactVcard: builtins.bool
    thumbnailDirectPath: builtins.str
    thumbnailSha256: builtins.bytes
    thumbnailEncSha256: builtins.bytes
    jpegThumbnail: builtins.bytes
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    thumbnailHeight: builtins.int
    thumbnailWidth: builtins.int
    caption: builtins.str
    def __init__(
        self,
        *,
        url: builtins.str | None = ...,
        mimetype: builtins.str | None = ...,
        title: builtins.str | None = ...,
        fileSha256: builtins.bytes | None = ...,
        fileLength: builtins.int | None = ...,
        pageCount: builtins.int | None = ...,
        mediaKey: builtins.bytes | None = ...,
        fileName: builtins.str | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        directPath: builtins.str | None = ...,
        mediaKeyTimestamp: builtins.int | None = ...,
        contactVcard: builtins.bool | None = ...,
        thumbnailDirectPath: builtins.str | None = ...,
        thumbnailSha256: builtins.bytes | None = ...,
        thumbnailEncSha256: builtins.bytes | None = ...,
        jpegThumbnail: builtins.bytes | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        thumbnailHeight: builtins.int | None = ...,
        thumbnailWidth: builtins.int | None = ...,
        caption: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "contactVcard",
            b"contactVcard",
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileName",
            b"fileName",
            "fileSha256",
            b"fileSha256",
            "jpegThumbnail",
            b"jpegThumbnail",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "pageCount",
            b"pageCount",
            "thumbnailDirectPath",
            b"thumbnailDirectPath",
            "thumbnailEncSha256",
            b"thumbnailEncSha256",
            "thumbnailHeight",
            b"thumbnailHeight",
            "thumbnailSha256",
            b"thumbnailSha256",
            "thumbnailWidth",
            b"thumbnailWidth",
            "title",
            b"title",
            "url",
            b"url",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "contactVcard",
            b"contactVcard",
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileName",
            b"fileName",
            "fileSha256",
            b"fileSha256",
            "jpegThumbnail",
            b"jpegThumbnail",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "pageCount",
            b"pageCount",
            "thumbnailDirectPath",
            b"thumbnailDirectPath",
            "thumbnailEncSha256",
            b"thumbnailEncSha256",
            "thumbnailHeight",
            b"thumbnailHeight",
            "thumbnailSha256",
            b"thumbnailSha256",
            "thumbnailWidth",
            b"thumbnailWidth",
            "title",
            b"title",
            "url",
            b"url",
        ],
    ) -> None: ...

global___DocumentMessage = DocumentMessage

@typing_extensions.final
class DeviceSentMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESTINATIONJID_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    PHASH_FIELD_NUMBER: builtins.int
    destinationJid: builtins.str
    @property
    def message(self) -> global___Message: ...
    phash: builtins.str
    def __init__(
        self,
        *,
        destinationJid: builtins.str | None = ...,
        message: global___Message | None = ...,
        phash: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "destinationJid",
            b"destinationJid",
            "message",
            b"message",
            "phash",
            b"phash",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "destinationJid",
            b"destinationJid",
            "message",
            b"message",
            "phash",
            b"phash",
        ],
    ) -> None: ...

global___DeviceSentMessage = DeviceSentMessage

@typing_extensions.final
class DeclinePaymentRequestMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___DeclinePaymentRequestMessage = DeclinePaymentRequestMessage

@typing_extensions.final
class ContactsArrayMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISPLAYNAME_FIELD_NUMBER: builtins.int
    CONTACTS_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    displayName: builtins.str
    @property
    def contacts(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ContactMessage
    ]: ...
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    def __init__(
        self,
        *,
        displayName: builtins.str | None = ...,
        contacts: collections.abc.Iterable[global___ContactMessage] | None = ...,
        contextInfo: global___ContextInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo", b"contextInfo", "displayName", b"displayName"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contacts",
            b"contacts",
            "contextInfo",
            b"contextInfo",
            "displayName",
            b"displayName",
        ],
    ) -> None: ...

global___ContactsArrayMessage = ContactsArrayMessage

@typing_extensions.final
class ContactMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISPLAYNAME_FIELD_NUMBER: builtins.int
    VCARD_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    displayName: builtins.str
    vcard: builtins.str
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    def __init__(
        self,
        *,
        displayName: builtins.str | None = ...,
        vcard: builtins.str | None = ...,
        contextInfo: global___ContextInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "displayName",
            b"displayName",
            "vcard",
            b"vcard",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "displayName",
            b"displayName",
            "vcard",
            b"vcard",
        ],
    ) -> None: ...

global___ContactMessage = ContactMessage

@typing_extensions.final
class CommentMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MESSAGE_FIELD_NUMBER: builtins.int
    TARGETMESSAGEKEY_FIELD_NUMBER: builtins.int
    @property
    def message(self) -> global___Message: ...
    @property
    def targetMessageKey(self) -> global___MessageKey: ...
    def __init__(
        self,
        *,
        message: global___Message | None = ...,
        targetMessageKey: global___MessageKey | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "message", b"message", "targetMessageKey", b"targetMessageKey"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "message", b"message", "targetMessageKey", b"targetMessageKey"
        ],
    ) -> None: ...

global___CommentMessage = CommentMessage

@typing_extensions.final
class Chat(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISPLAYNAME_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    displayName: builtins.str
    id: builtins.str
    def __init__(
        self,
        *,
        displayName: builtins.str | None = ...,
        id: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "displayName", b"displayName", "id", b"id"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "displayName", b"displayName", "id", b"id"
        ],
    ) -> None: ...

global___Chat = Chat

@typing_extensions.final
class CancelPaymentRequestMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___CancelPaymentRequestMessage = CancelPaymentRequestMessage

@typing_extensions.final
class Call(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CALLKEY_FIELD_NUMBER: builtins.int
    CONVERSIONSOURCE_FIELD_NUMBER: builtins.int
    CONVERSIONDATA_FIELD_NUMBER: builtins.int
    CONVERSIONDELAYSECONDS_FIELD_NUMBER: builtins.int
    callKey: builtins.bytes
    conversionSource: builtins.str
    conversionData: builtins.bytes
    conversionDelaySeconds: builtins.int
    def __init__(
        self,
        *,
        callKey: builtins.bytes | None = ...,
        conversionSource: builtins.str | None = ...,
        conversionData: builtins.bytes | None = ...,
        conversionDelaySeconds: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "callKey",
            b"callKey",
            "conversionData",
            b"conversionData",
            "conversionDelaySeconds",
            b"conversionDelaySeconds",
            "conversionSource",
            b"conversionSource",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "callKey",
            b"callKey",
            "conversionData",
            b"conversionData",
            "conversionDelaySeconds",
            b"conversionDelaySeconds",
            "conversionSource",
            b"conversionSource",
        ],
    ) -> None: ...

global___Call = Call

@typing_extensions.final
class CallLogMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _CallTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            CallLogMessage._CallType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        REGULAR: CallLogMessage._CallType.ValueType  # 0
        SCHEDULED_CALL: CallLogMessage._CallType.ValueType  # 1
        VOICE_CHAT: CallLogMessage._CallType.ValueType  # 2

    class CallType(_CallType, metaclass=_CallTypeEnumTypeWrapper): ...
    REGULAR: CallLogMessage.CallType.ValueType  # 0
    SCHEDULED_CALL: CallLogMessage.CallType.ValueType  # 1
    VOICE_CHAT: CallLogMessage.CallType.ValueType  # 2

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

    class _CallOutcomeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            CallLogMessage._CallOutcome.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        CONNECTED: CallLogMessage._CallOutcome.ValueType  # 0
        MISSED: CallLogMessage._CallOutcome.ValueType  # 1
        FAILED: CallLogMessage._CallOutcome.ValueType  # 2
        REJECTED: CallLogMessage._CallOutcome.ValueType  # 3
        ACCEPTED_ELSEWHERE: CallLogMessage._CallOutcome.ValueType  # 4
        ONGOING: CallLogMessage._CallOutcome.ValueType  # 5
        SILENCED_BY_DND: CallLogMessage._CallOutcome.ValueType  # 6
        SILENCED_UNKNOWN_CALLER: CallLogMessage._CallOutcome.ValueType  # 7

    class CallOutcome(_CallOutcome, metaclass=_CallOutcomeEnumTypeWrapper): ...
    CONNECTED: CallLogMessage.CallOutcome.ValueType  # 0
    MISSED: CallLogMessage.CallOutcome.ValueType  # 1
    FAILED: CallLogMessage.CallOutcome.ValueType  # 2
    REJECTED: CallLogMessage.CallOutcome.ValueType  # 3
    ACCEPTED_ELSEWHERE: CallLogMessage.CallOutcome.ValueType  # 4
    ONGOING: CallLogMessage.CallOutcome.ValueType  # 5
    SILENCED_BY_DND: CallLogMessage.CallOutcome.ValueType  # 6
    SILENCED_UNKNOWN_CALLER: CallLogMessage.CallOutcome.ValueType  # 7

    @typing_extensions.final
    class CallParticipant(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        JID_FIELD_NUMBER: builtins.int
        CALLOUTCOME_FIELD_NUMBER: builtins.int
        jid: builtins.str
        callOutcome: global___CallLogMessage.CallOutcome.ValueType
        def __init__(
            self,
            *,
            jid: builtins.str | None = ...,
            callOutcome: global___CallLogMessage.CallOutcome.ValueType | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "callOutcome", b"callOutcome", "jid", b"jid"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "callOutcome", b"callOutcome", "jid", b"jid"
            ],
        ) -> None: ...

    ISVIDEO_FIELD_NUMBER: builtins.int
    CALLOUTCOME_FIELD_NUMBER: builtins.int
    DURATIONSECS_FIELD_NUMBER: builtins.int
    CALLTYPE_FIELD_NUMBER: builtins.int
    PARTICIPANTS_FIELD_NUMBER: builtins.int
    isVideo: builtins.bool
    callOutcome: global___CallLogMessage.CallOutcome.ValueType
    durationSecs: builtins.int
    callType: global___CallLogMessage.CallType.ValueType
    @property
    def participants(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___CallLogMessage.CallParticipant
    ]: ...
    def __init__(
        self,
        *,
        isVideo: builtins.bool | None = ...,
        callOutcome: global___CallLogMessage.CallOutcome.ValueType | None = ...,
        durationSecs: builtins.int | None = ...,
        callType: global___CallLogMessage.CallType.ValueType | None = ...,
        participants: collections.abc.Iterable[global___CallLogMessage.CallParticipant]
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "callOutcome",
            b"callOutcome",
            "callType",
            b"callType",
            "durationSecs",
            b"durationSecs",
            "isVideo",
            b"isVideo",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "callOutcome",
            b"callOutcome",
            "callType",
            b"callType",
            "durationSecs",
            b"durationSecs",
            "isVideo",
            b"isVideo",
            "participants",
            b"participants",
        ],
    ) -> None: ...

global___CallLogMessage = CallLogMessage

@typing_extensions.final
class ButtonsResponseMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ButtonsResponseMessage._Type.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: ButtonsResponseMessage._Type.ValueType  # 0
        DISPLAY_TEXT: ButtonsResponseMessage._Type.ValueType  # 1

    class Type(_Type, metaclass=_TypeEnumTypeWrapper): ...
    UNKNOWN: ButtonsResponseMessage.Type.ValueType  # 0
    DISPLAY_TEXT: ButtonsResponseMessage.Type.ValueType  # 1

    SELECTEDBUTTONID_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    SELECTEDDISPLAYTEXT_FIELD_NUMBER: builtins.int
    selectedButtonId: builtins.str
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    type: global___ButtonsResponseMessage.Type.ValueType
    selectedDisplayText: builtins.str
    def __init__(
        self,
        *,
        selectedButtonId: builtins.str | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        type: global___ButtonsResponseMessage.Type.ValueType | None = ...,
        selectedDisplayText: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "response",
            b"response",
            "selectedButtonId",
            b"selectedButtonId",
            "selectedDisplayText",
            b"selectedDisplayText",
            "type",
            b"type",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "response",
            b"response",
            "selectedButtonId",
            b"selectedButtonId",
            "selectedDisplayText",
            b"selectedDisplayText",
            "type",
            b"type",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["response", b"response"]
    ) -> typing_extensions.Literal["selectedDisplayText"] | None: ...

global___ButtonsResponseMessage = ButtonsResponseMessage

@typing_extensions.final
class ButtonsMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _HeaderTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ButtonsMessage._HeaderType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: ButtonsMessage._HeaderType.ValueType  # 0
        EMPTY: ButtonsMessage._HeaderType.ValueType  # 1
        TEXT: ButtonsMessage._HeaderType.ValueType  # 2
        DOCUMENT: ButtonsMessage._HeaderType.ValueType  # 3
        IMAGE: ButtonsMessage._HeaderType.ValueType  # 4
        VIDEO: ButtonsMessage._HeaderType.ValueType  # 5
        LOCATION: ButtonsMessage._HeaderType.ValueType  # 6

    class HeaderType(_HeaderType, metaclass=_HeaderTypeEnumTypeWrapper): ...
    UNKNOWN: ButtonsMessage.HeaderType.ValueType  # 0
    EMPTY: ButtonsMessage.HeaderType.ValueType  # 1
    TEXT: ButtonsMessage.HeaderType.ValueType  # 2
    DOCUMENT: ButtonsMessage.HeaderType.ValueType  # 3
    IMAGE: ButtonsMessage.HeaderType.ValueType  # 4
    VIDEO: ButtonsMessage.HeaderType.ValueType  # 5
    LOCATION: ButtonsMessage.HeaderType.ValueType  # 6

    @typing_extensions.final
    class Button(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _TypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ButtonsMessage.Button._Type.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN: ButtonsMessage.Button._Type.ValueType  # 0
            RESPONSE: ButtonsMessage.Button._Type.ValueType  # 1
            NATIVE_FLOW: ButtonsMessage.Button._Type.ValueType  # 2

        class Type(_Type, metaclass=_TypeEnumTypeWrapper): ...
        UNKNOWN: ButtonsMessage.Button.Type.ValueType  # 0
        RESPONSE: ButtonsMessage.Button.Type.ValueType  # 1
        NATIVE_FLOW: ButtonsMessage.Button.Type.ValueType  # 2

        @typing_extensions.final
        class NativeFlowInfo(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            NAME_FIELD_NUMBER: builtins.int
            PARAMSJSON_FIELD_NUMBER: builtins.int
            name: builtins.str
            paramsJson: builtins.str
            def __init__(
                self,
                *,
                name: builtins.str | None = ...,
                paramsJson: builtins.str | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "name", b"name", "paramsJson", b"paramsJson"
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "name", b"name", "paramsJson", b"paramsJson"
                ],
            ) -> None: ...

        @typing_extensions.final
        class ButtonText(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            DISPLAYTEXT_FIELD_NUMBER: builtins.int
            displayText: builtins.str
            def __init__(
                self,
                *,
                displayText: builtins.str | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal["displayText", b"displayText"],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal["displayText", b"displayText"],
            ) -> None: ...

        BUTTONID_FIELD_NUMBER: builtins.int
        BUTTONTEXT_FIELD_NUMBER: builtins.int
        TYPE_FIELD_NUMBER: builtins.int
        NATIVEFLOWINFO_FIELD_NUMBER: builtins.int
        buttonId: builtins.str
        @property
        def buttonText(self) -> global___ButtonsMessage.Button.ButtonText: ...
        type: global___ButtonsMessage.Button.Type.ValueType
        @property
        def nativeFlowInfo(self) -> global___ButtonsMessage.Button.NativeFlowInfo: ...
        def __init__(
            self,
            *,
            buttonId: builtins.str | None = ...,
            buttonText: global___ButtonsMessage.Button.ButtonText | None = ...,
            type: global___ButtonsMessage.Button.Type.ValueType | None = ...,
            nativeFlowInfo: global___ButtonsMessage.Button.NativeFlowInfo | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "buttonId",
                b"buttonId",
                "buttonText",
                b"buttonText",
                "nativeFlowInfo",
                b"nativeFlowInfo",
                "type",
                b"type",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "buttonId",
                b"buttonId",
                "buttonText",
                b"buttonText",
                "nativeFlowInfo",
                b"nativeFlowInfo",
                "type",
                b"type",
            ],
        ) -> None: ...

    CONTENTTEXT_FIELD_NUMBER: builtins.int
    FOOTERTEXT_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    BUTTONS_FIELD_NUMBER: builtins.int
    HEADERTYPE_FIELD_NUMBER: builtins.int
    TEXT_FIELD_NUMBER: builtins.int
    DOCUMENTMESSAGE_FIELD_NUMBER: builtins.int
    IMAGEMESSAGE_FIELD_NUMBER: builtins.int
    VIDEOMESSAGE_FIELD_NUMBER: builtins.int
    LOCATIONMESSAGE_FIELD_NUMBER: builtins.int
    contentText: builtins.str
    footerText: builtins.str
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    @property
    def buttons(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ButtonsMessage.Button
    ]: ...
    headerType: global___ButtonsMessage.HeaderType.ValueType
    text: builtins.str
    @property
    def documentMessage(self) -> global___DocumentMessage: ...
    @property
    def imageMessage(self) -> global___ImageMessage: ...
    @property
    def videoMessage(self) -> global___VideoMessage: ...
    @property
    def locationMessage(self) -> global___LocationMessage: ...
    def __init__(
        self,
        *,
        contentText: builtins.str | None = ...,
        footerText: builtins.str | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        buttons: collections.abc.Iterable[global___ButtonsMessage.Button] | None = ...,
        headerType: global___ButtonsMessage.HeaderType.ValueType | None = ...,
        text: builtins.str | None = ...,
        documentMessage: global___DocumentMessage | None = ...,
        imageMessage: global___ImageMessage | None = ...,
        videoMessage: global___VideoMessage | None = ...,
        locationMessage: global___LocationMessage | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contentText",
            b"contentText",
            "contextInfo",
            b"contextInfo",
            "documentMessage",
            b"documentMessage",
            "footerText",
            b"footerText",
            "header",
            b"header",
            "headerType",
            b"headerType",
            "imageMessage",
            b"imageMessage",
            "locationMessage",
            b"locationMessage",
            "text",
            b"text",
            "videoMessage",
            b"videoMessage",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "buttons",
            b"buttons",
            "contentText",
            b"contentText",
            "contextInfo",
            b"contextInfo",
            "documentMessage",
            b"documentMessage",
            "footerText",
            b"footerText",
            "header",
            b"header",
            "headerType",
            b"headerType",
            "imageMessage",
            b"imageMessage",
            "locationMessage",
            b"locationMessage",
            "text",
            b"text",
            "videoMessage",
            b"videoMessage",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["header", b"header"]
    ) -> (
        typing_extensions.Literal[
            "text", "documentMessage", "imageMessage", "videoMessage", "locationMessage"
        ]
        | None
    ): ...

global___ButtonsMessage = ButtonsMessage

@typing_extensions.final
class BotFeedbackMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _BotFeedbackKindMultiplePositiveEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BotFeedbackMessage._BotFeedbackKindMultiplePositive.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        BOT_FEEDBACK_MULTIPLE_POSITIVE_GENERIC: BotFeedbackMessage._BotFeedbackKindMultiplePositive.ValueType  # 1

    class BotFeedbackKindMultiplePositive(
        _BotFeedbackKindMultiplePositive,
        metaclass=_BotFeedbackKindMultiplePositiveEnumTypeWrapper,
    ): ...
    BOT_FEEDBACK_MULTIPLE_POSITIVE_GENERIC: BotFeedbackMessage.BotFeedbackKindMultiplePositive.ValueType  # 1

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

    class _BotFeedbackKindMultipleNegativeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_GENERIC: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 1
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_HELPFUL: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 2
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_INTERESTING: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 4
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_ACCURATE: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 8
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_SAFE: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 16
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_OTHER: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 32
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_REFUSED: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 64
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_NOT_VISUALLY_APPEALING: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 128
        BOT_FEEDBACK_MULTIPLE_NEGATIVE_NOT_RELEVANT_TO_TEXT: BotFeedbackMessage._BotFeedbackKindMultipleNegative.ValueType  # 256

    class BotFeedbackKindMultipleNegative(
        _BotFeedbackKindMultipleNegative,
        metaclass=_BotFeedbackKindMultipleNegativeEnumTypeWrapper,
    ): ...
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_GENERIC: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 1
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_HELPFUL: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 2
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_INTERESTING: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 4
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_ACCURATE: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 8
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_SAFE: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 16
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_OTHER: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 32
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_REFUSED: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 64
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_NOT_VISUALLY_APPEALING: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 128
    BOT_FEEDBACK_MULTIPLE_NEGATIVE_NOT_RELEVANT_TO_TEXT: BotFeedbackMessage.BotFeedbackKindMultipleNegative.ValueType  # 256

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

    class _BotFeedbackKindEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BotFeedbackMessage._BotFeedbackKind.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        BOT_FEEDBACK_POSITIVE: BotFeedbackMessage._BotFeedbackKind.ValueType  # 0
        BOT_FEEDBACK_NEGATIVE_GENERIC: BotFeedbackMessage._BotFeedbackKind.ValueType  # 1
        BOT_FEEDBACK_NEGATIVE_HELPFUL: BotFeedbackMessage._BotFeedbackKind.ValueType  # 2
        BOT_FEEDBACK_NEGATIVE_INTERESTING: BotFeedbackMessage._BotFeedbackKind.ValueType  # 3
        BOT_FEEDBACK_NEGATIVE_ACCURATE: BotFeedbackMessage._BotFeedbackKind.ValueType  # 4
        BOT_FEEDBACK_NEGATIVE_SAFE: BotFeedbackMessage._BotFeedbackKind.ValueType  # 5
        BOT_FEEDBACK_NEGATIVE_OTHER: BotFeedbackMessage._BotFeedbackKind.ValueType  # 6
        BOT_FEEDBACK_NEGATIVE_REFUSED: BotFeedbackMessage._BotFeedbackKind.ValueType  # 7
        BOT_FEEDBACK_NEGATIVE_NOT_VISUALLY_APPEALING: BotFeedbackMessage._BotFeedbackKind.ValueType  # 8
        BOT_FEEDBACK_NEGATIVE_NOT_RELEVANT_TO_TEXT: BotFeedbackMessage._BotFeedbackKind.ValueType  # 9

    class BotFeedbackKind(
        _BotFeedbackKind, metaclass=_BotFeedbackKindEnumTypeWrapper
    ): ...
    BOT_FEEDBACK_POSITIVE: BotFeedbackMessage.BotFeedbackKind.ValueType  # 0
    BOT_FEEDBACK_NEGATIVE_GENERIC: BotFeedbackMessage.BotFeedbackKind.ValueType  # 1
    BOT_FEEDBACK_NEGATIVE_HELPFUL: BotFeedbackMessage.BotFeedbackKind.ValueType  # 2
    BOT_FEEDBACK_NEGATIVE_INTERESTING: BotFeedbackMessage.BotFeedbackKind.ValueType  # 3
    BOT_FEEDBACK_NEGATIVE_ACCURATE: BotFeedbackMessage.BotFeedbackKind.ValueType  # 4
    BOT_FEEDBACK_NEGATIVE_SAFE: BotFeedbackMessage.BotFeedbackKind.ValueType  # 5
    BOT_FEEDBACK_NEGATIVE_OTHER: BotFeedbackMessage.BotFeedbackKind.ValueType  # 6
    BOT_FEEDBACK_NEGATIVE_REFUSED: BotFeedbackMessage.BotFeedbackKind.ValueType  # 7
    BOT_FEEDBACK_NEGATIVE_NOT_VISUALLY_APPEALING: BotFeedbackMessage.BotFeedbackKind.ValueType  # 8
    BOT_FEEDBACK_NEGATIVE_NOT_RELEVANT_TO_TEXT: BotFeedbackMessage.BotFeedbackKind.ValueType  # 9

    MESSAGEKEY_FIELD_NUMBER: builtins.int
    KIND_FIELD_NUMBER: builtins.int
    TEXT_FIELD_NUMBER: builtins.int
    KINDNEGATIVE_FIELD_NUMBER: builtins.int
    KINDPOSITIVE_FIELD_NUMBER: builtins.int
    @property
    def messageKey(self) -> global___MessageKey: ...
    kind: global___BotFeedbackMessage.BotFeedbackKind.ValueType
    text: builtins.str
    kindNegative: builtins.int
    kindPositive: builtins.int
    def __init__(
        self,
        *,
        messageKey: global___MessageKey | None = ...,
        kind: global___BotFeedbackMessage.BotFeedbackKind.ValueType | None = ...,
        text: builtins.str | None = ...,
        kindNegative: builtins.int | None = ...,
        kindPositive: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "kind",
            b"kind",
            "kindNegative",
            b"kindNegative",
            "kindPositive",
            b"kindPositive",
            "messageKey",
            b"messageKey",
            "text",
            b"text",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "kind",
            b"kind",
            "kindNegative",
            b"kindNegative",
            "kindPositive",
            b"kindPositive",
            "messageKey",
            b"messageKey",
            "text",
            b"text",
        ],
    ) -> None: ...

global___BotFeedbackMessage = BotFeedbackMessage

@typing_extensions.final
class BCallMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _MediaTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BCallMessage._MediaType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: BCallMessage._MediaType.ValueType  # 0
        AUDIO: BCallMessage._MediaType.ValueType  # 1
        VIDEO: BCallMessage._MediaType.ValueType  # 2

    class MediaType(_MediaType, metaclass=_MediaTypeEnumTypeWrapper): ...
    UNKNOWN: BCallMessage.MediaType.ValueType  # 0
    AUDIO: BCallMessage.MediaType.ValueType  # 1
    VIDEO: BCallMessage.MediaType.ValueType  # 2

    SESSIONID_FIELD_NUMBER: builtins.int
    MEDIATYPE_FIELD_NUMBER: builtins.int
    MASTERKEY_FIELD_NUMBER: builtins.int
    CAPTION_FIELD_NUMBER: builtins.int
    sessionId: builtins.str
    mediaType: global___BCallMessage.MediaType.ValueType
    masterKey: builtins.bytes
    caption: builtins.str
    def __init__(
        self,
        *,
        sessionId: builtins.str | None = ...,
        mediaType: global___BCallMessage.MediaType.ValueType | None = ...,
        masterKey: builtins.bytes | None = ...,
        caption: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "masterKey",
            b"masterKey",
            "mediaType",
            b"mediaType",
            "sessionId",
            b"sessionId",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "masterKey",
            b"masterKey",
            "mediaType",
            b"mediaType",
            "sessionId",
            b"sessionId",
        ],
    ) -> None: ...

global___BCallMessage = BCallMessage

@typing_extensions.final
class AudioMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    URL_FIELD_NUMBER: builtins.int
    MIMETYPE_FIELD_NUMBER: builtins.int
    FILESHA256_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    SECONDS_FIELD_NUMBER: builtins.int
    PTT_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    MEDIAKEYTIMESTAMP_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    STREAMINGSIDECAR_FIELD_NUMBER: builtins.int
    WAVEFORM_FIELD_NUMBER: builtins.int
    BACKGROUNDARGB_FIELD_NUMBER: builtins.int
    VIEWONCE_FIELD_NUMBER: builtins.int
    url: builtins.str
    mimetype: builtins.str
    fileSha256: builtins.bytes
    fileLength: builtins.int
    seconds: builtins.int
    ptt: builtins.bool
    mediaKey: builtins.bytes
    fileEncSha256: builtins.bytes
    directPath: builtins.str
    mediaKeyTimestamp: builtins.int
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    streamingSidecar: builtins.bytes
    waveform: builtins.bytes
    backgroundArgb: builtins.int
    viewOnce: builtins.bool
    def __init__(
        self,
        *,
        url: builtins.str | None = ...,
        mimetype: builtins.str | None = ...,
        fileSha256: builtins.bytes | None = ...,
        fileLength: builtins.int | None = ...,
        seconds: builtins.int | None = ...,
        ptt: builtins.bool | None = ...,
        mediaKey: builtins.bytes | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        directPath: builtins.str | None = ...,
        mediaKeyTimestamp: builtins.int | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        streamingSidecar: builtins.bytes | None = ...,
        waveform: builtins.bytes | None = ...,
        backgroundArgb: builtins.int | None = ...,
        viewOnce: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "backgroundArgb",
            b"backgroundArgb",
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "ptt",
            b"ptt",
            "seconds",
            b"seconds",
            "streamingSidecar",
            b"streamingSidecar",
            "url",
            b"url",
            "viewOnce",
            b"viewOnce",
            "waveform",
            b"waveform",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "backgroundArgb",
            b"backgroundArgb",
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "ptt",
            b"ptt",
            "seconds",
            b"seconds",
            "streamingSidecar",
            b"streamingSidecar",
            "url",
            b"url",
            "viewOnce",
            b"viewOnce",
            "waveform",
            b"waveform",
        ],
    ) -> None: ...

global___AudioMessage = AudioMessage

@typing_extensions.final
class AppStateSyncKey(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEYID_FIELD_NUMBER: builtins.int
    KEYDATA_FIELD_NUMBER: builtins.int
    @property
    def keyId(self) -> global___AppStateSyncKeyId: ...
    @property
    def keyData(self) -> global___AppStateSyncKeyData: ...
    def __init__(
        self,
        *,
        keyId: global___AppStateSyncKeyId | None = ...,
        keyData: global___AppStateSyncKeyData | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["keyData", b"keyData", "keyId", b"keyId"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["keyData", b"keyData", "keyId", b"keyId"],
    ) -> None: ...

global___AppStateSyncKey = AppStateSyncKey

@typing_extensions.final
class AppStateSyncKeyShare(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___AppStateSyncKeyShare = AppStateSyncKeyShare

@typing_extensions.final
class AppStateSyncKeyRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___AppStateSyncKeyRequest = AppStateSyncKeyRequest

@typing_extensions.final
class AppStateSyncKeyId(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEYID_FIELD_NUMBER: builtins.int
    keyId: builtins.bytes
    def __init__(
        self,
        *,
        keyId: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["keyId", b"keyId"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["keyId", b"keyId"]
    ) -> None: ...

global___AppStateSyncKeyId = AppStateSyncKeyId

@typing_extensions.final
class AppStateSyncKeyFingerprint(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RAWID_FIELD_NUMBER: builtins.int
    CURRENTINDEX_FIELD_NUMBER: builtins.int
    DEVICEINDEXES_FIELD_NUMBER: builtins.int
    rawId: builtins.int
    currentIndex: builtins.int
    @property
    def deviceIndexes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.int
    ]: ...
    def __init__(
        self,
        *,
        rawId: builtins.int | None = ...,
        currentIndex: builtins.int | None = ...,
        deviceIndexes: collections.abc.Iterable[builtins.int] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "currentIndex", b"currentIndex", "rawId", b"rawId"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "currentIndex",
            b"currentIndex",
            "deviceIndexes",
            b"deviceIndexes",
            "rawId",
            b"rawId",
        ],
    ) -> None: ...

global___AppStateSyncKeyFingerprint = AppStateSyncKeyFingerprint

@typing_extensions.final
class AppStateSyncKeyData(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEYDATA_FIELD_NUMBER: builtins.int
    FINGERPRINT_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    keyData: builtins.bytes
    @property
    def fingerprint(self) -> global___AppStateSyncKeyFingerprint: ...
    timestamp: builtins.int
    def __init__(
        self,
        *,
        keyData: builtins.bytes | None = ...,
        fingerprint: global___AppStateSyncKeyFingerprint | None = ...,
        timestamp: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "fingerprint",
            b"fingerprint",
            "keyData",
            b"keyData",
            "timestamp",
            b"timestamp",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "fingerprint",
            b"fingerprint",
            "keyData",
            b"keyData",
            "timestamp",
            b"timestamp",
        ],
    ) -> None: ...

global___AppStateSyncKeyData = AppStateSyncKeyData

@typing_extensions.final
class AppStateFatalExceptionNotification(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COLLECTIONNAMES_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    @property
    def collectionNames(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    timestamp: builtins.int
    def __init__(
        self,
        *,
        collectionNames: collections.abc.Iterable[builtins.str] | None = ...,
        timestamp: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["timestamp", b"timestamp"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "collectionNames", b"collectionNames", "timestamp", b"timestamp"
        ],
    ) -> None: ...

global___AppStateFatalExceptionNotification = AppStateFatalExceptionNotification

@typing_extensions.final
class Location(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DEGREESLATITUDE_FIELD_NUMBER: builtins.int
    DEGREESLONGITUDE_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    degreesLatitude: builtins.float
    degreesLongitude: builtins.float
    name: builtins.str
    def __init__(
        self,
        *,
        degreesLatitude: builtins.float | None = ...,
        degreesLongitude: builtins.float | None = ...,
        name: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "degreesLatitude",
            b"degreesLatitude",
            "degreesLongitude",
            b"degreesLongitude",
            "name",
            b"name",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "degreesLatitude",
            b"degreesLatitude",
            "degreesLongitude",
            b"degreesLongitude",
            "name",
            b"name",
        ],
    ) -> None: ...

global___Location = Location

@typing_extensions.final
class InteractiveAnnotation(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    POLYGONVERTICES_FIELD_NUMBER: builtins.int
    SHOULDSKIPCONFIRMATION_FIELD_NUMBER: builtins.int
    LOCATION_FIELD_NUMBER: builtins.int
    NEWSLETTER_FIELD_NUMBER: builtins.int
    @property
    def polygonVertices(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Point
    ]: ...
    shouldSkipConfirmation: builtins.bool
    @property
    def location(self) -> global___Location: ...
    @property
    def newsletter(self) -> global___ForwardedNewsletterMessageInfo: ...
    def __init__(
        self,
        *,
        polygonVertices: collections.abc.Iterable[global___Point] | None = ...,
        shouldSkipConfirmation: builtins.bool | None = ...,
        location: global___Location | None = ...,
        newsletter: global___ForwardedNewsletterMessageInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "action",
            b"action",
            "location",
            b"location",
            "newsletter",
            b"newsletter",
            "shouldSkipConfirmation",
            b"shouldSkipConfirmation",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "action",
            b"action",
            "location",
            b"location",
            "newsletter",
            b"newsletter",
            "polygonVertices",
            b"polygonVertices",
            "shouldSkipConfirmation",
            b"shouldSkipConfirmation",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["action", b"action"]
    ) -> typing_extensions.Literal["location", "newsletter"] | None: ...

global___InteractiveAnnotation = InteractiveAnnotation

@typing_extensions.final
class HydratedTemplateButton(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class HydratedURLButton(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _WebviewPresentationTypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                HydratedTemplateButton.HydratedURLButton._WebviewPresentationType.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            FULL: HydratedTemplateButton.HydratedURLButton._WebviewPresentationType.ValueType  # 1
            TALL: HydratedTemplateButton.HydratedURLButton._WebviewPresentationType.ValueType  # 2
            COMPACT: HydratedTemplateButton.HydratedURLButton._WebviewPresentationType.ValueType  # 3

        class WebviewPresentationType(
            _WebviewPresentationType, metaclass=_WebviewPresentationTypeEnumTypeWrapper
        ): ...
        FULL: HydratedTemplateButton.HydratedURLButton.WebviewPresentationType.ValueType  # 1
        TALL: HydratedTemplateButton.HydratedURLButton.WebviewPresentationType.ValueType  # 2
        COMPACT: HydratedTemplateButton.HydratedURLButton.WebviewPresentationType.ValueType  # 3

        DISPLAYTEXT_FIELD_NUMBER: builtins.int
        URL_FIELD_NUMBER: builtins.int
        CONSENTEDUSERSURL_FIELD_NUMBER: builtins.int
        WEBVIEWPRESENTATION_FIELD_NUMBER: builtins.int
        displayText: builtins.str
        url: builtins.str
        consentedUsersUrl: builtins.str
        webviewPresentation: global___HydratedTemplateButton.HydratedURLButton.WebviewPresentationType.ValueType
        def __init__(
            self,
            *,
            displayText: builtins.str | None = ...,
            url: builtins.str | None = ...,
            consentedUsersUrl: builtins.str | None = ...,
            webviewPresentation: global___HydratedTemplateButton.HydratedURLButton.WebviewPresentationType.ValueType
            | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "consentedUsersUrl",
                b"consentedUsersUrl",
                "displayText",
                b"displayText",
                "url",
                b"url",
                "webviewPresentation",
                b"webviewPresentation",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "consentedUsersUrl",
                b"consentedUsersUrl",
                "displayText",
                b"displayText",
                "url",
                b"url",
                "webviewPresentation",
                b"webviewPresentation",
            ],
        ) -> None: ...

    @typing_extensions.final
    class HydratedQuickReplyButton(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        DISPLAYTEXT_FIELD_NUMBER: builtins.int
        ID_FIELD_NUMBER: builtins.int
        displayText: builtins.str
        id: builtins.str
        def __init__(
            self,
            *,
            displayText: builtins.str | None = ...,
            id: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "id", b"id"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "id", b"id"
            ],
        ) -> None: ...

    @typing_extensions.final
    class HydratedCallButton(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        DISPLAYTEXT_FIELD_NUMBER: builtins.int
        PHONENUMBER_FIELD_NUMBER: builtins.int
        displayText: builtins.str
        phoneNumber: builtins.str
        def __init__(
            self,
            *,
            displayText: builtins.str | None = ...,
            phoneNumber: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "phoneNumber", b"phoneNumber"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "phoneNumber", b"phoneNumber"
            ],
        ) -> None: ...

    INDEX_FIELD_NUMBER: builtins.int
    QUICKREPLYBUTTON_FIELD_NUMBER: builtins.int
    URLBUTTON_FIELD_NUMBER: builtins.int
    CALLBUTTON_FIELD_NUMBER: builtins.int
    index: builtins.int
    @property
    def quickReplyButton(
        self,
    ) -> global___HydratedTemplateButton.HydratedQuickReplyButton: ...
    @property
    def urlButton(self) -> global___HydratedTemplateButton.HydratedURLButton: ...
    @property
    def callButton(self) -> global___HydratedTemplateButton.HydratedCallButton: ...
    def __init__(
        self,
        *,
        index: builtins.int | None = ...,
        quickReplyButton: global___HydratedTemplateButton.HydratedQuickReplyButton
        | None = ...,
        urlButton: global___HydratedTemplateButton.HydratedURLButton | None = ...,
        callButton: global___HydratedTemplateButton.HydratedCallButton | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "callButton",
            b"callButton",
            "hydratedButton",
            b"hydratedButton",
            "index",
            b"index",
            "quickReplyButton",
            b"quickReplyButton",
            "urlButton",
            b"urlButton",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "callButton",
            b"callButton",
            "hydratedButton",
            b"hydratedButton",
            "index",
            b"index",
            "quickReplyButton",
            b"quickReplyButton",
            "urlButton",
            b"urlButton",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal["hydratedButton", b"hydratedButton"],
    ) -> (
        typing_extensions.Literal["quickReplyButton", "urlButton", "callButton"] | None
    ): ...

global___HydratedTemplateButton = HydratedTemplateButton

@typing_extensions.final
class GroupMention(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    GROUPJID_FIELD_NUMBER: builtins.int
    GROUPSUBJECT_FIELD_NUMBER: builtins.int
    groupJid: builtins.str
    groupSubject: builtins.str
    def __init__(
        self,
        *,
        groupJid: builtins.str | None = ...,
        groupSubject: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "groupJid", b"groupJid", "groupSubject", b"groupSubject"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "groupJid", b"groupJid", "groupSubject", b"groupSubject"
        ],
    ) -> None: ...

global___GroupMention = GroupMention

@typing_extensions.final
class DisappearingMode(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TriggerEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            DisappearingMode._Trigger.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: DisappearingMode._Trigger.ValueType  # 0
        CHAT_SETTING: DisappearingMode._Trigger.ValueType  # 1
        ACCOUNT_SETTING: DisappearingMode._Trigger.ValueType  # 2
        BULK_CHANGE: DisappearingMode._Trigger.ValueType  # 3

    class Trigger(_Trigger, metaclass=_TriggerEnumTypeWrapper): ...
    UNKNOWN: DisappearingMode.Trigger.ValueType  # 0
    CHAT_SETTING: DisappearingMode.Trigger.ValueType  # 1
    ACCOUNT_SETTING: DisappearingMode.Trigger.ValueType  # 2
    BULK_CHANGE: DisappearingMode.Trigger.ValueType  # 3

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

    class _InitiatorEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            DisappearingMode._Initiator.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        CHANGED_IN_CHAT: DisappearingMode._Initiator.ValueType  # 0
        INITIATED_BY_ME: DisappearingMode._Initiator.ValueType  # 1
        INITIATED_BY_OTHER: DisappearingMode._Initiator.ValueType  # 2

    class Initiator(_Initiator, metaclass=_InitiatorEnumTypeWrapper): ...
    CHANGED_IN_CHAT: DisappearingMode.Initiator.ValueType  # 0
    INITIATED_BY_ME: DisappearingMode.Initiator.ValueType  # 1
    INITIATED_BY_OTHER: DisappearingMode.Initiator.ValueType  # 2

    INITIATOR_FIELD_NUMBER: builtins.int
    TRIGGER_FIELD_NUMBER: builtins.int
    INITIATORDEVICEJID_FIELD_NUMBER: builtins.int
    INITIATEDBYME_FIELD_NUMBER: builtins.int
    initiator: global___DisappearingMode.Initiator.ValueType
    trigger: global___DisappearingMode.Trigger.ValueType
    initiatorDeviceJid: builtins.str
    initiatedByMe: builtins.bool
    def __init__(
        self,
        *,
        initiator: global___DisappearingMode.Initiator.ValueType | None = ...,
        trigger: global___DisappearingMode.Trigger.ValueType | None = ...,
        initiatorDeviceJid: builtins.str | None = ...,
        initiatedByMe: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "initiatedByMe",
            b"initiatedByMe",
            "initiator",
            b"initiator",
            "initiatorDeviceJid",
            b"initiatorDeviceJid",
            "trigger",
            b"trigger",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "initiatedByMe",
            b"initiatedByMe",
            "initiator",
            b"initiator",
            "initiatorDeviceJid",
            b"initiatorDeviceJid",
            "trigger",
            b"trigger",
        ],
    ) -> None: ...

global___DisappearingMode = DisappearingMode

@typing_extensions.final
class DeviceListMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SENDERKEYHASH_FIELD_NUMBER: builtins.int
    SENDERTIMESTAMP_FIELD_NUMBER: builtins.int
    SENDERKEYINDEXES_FIELD_NUMBER: builtins.int
    SENDERACCOUNTTYPE_FIELD_NUMBER: builtins.int
    RECEIVERACCOUNTTYPE_FIELD_NUMBER: builtins.int
    RECIPIENTKEYHASH_FIELD_NUMBER: builtins.int
    RECIPIENTTIMESTAMP_FIELD_NUMBER: builtins.int
    RECIPIENTKEYINDEXES_FIELD_NUMBER: builtins.int
    senderKeyHash: builtins.bytes
    senderTimestamp: builtins.int
    @property
    def senderKeyIndexes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.int
    ]: ...
    senderAccountType: global___ADVEncryptionType.ValueType
    receiverAccountType: global___ADVEncryptionType.ValueType
    recipientKeyHash: builtins.bytes
    recipientTimestamp: builtins.int
    @property
    def recipientKeyIndexes(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.int
    ]: ...
    def __init__(
        self,
        *,
        senderKeyHash: builtins.bytes | None = ...,
        senderTimestamp: builtins.int | None = ...,
        senderKeyIndexes: collections.abc.Iterable[builtins.int] | None = ...,
        senderAccountType: global___ADVEncryptionType.ValueType | None = ...,
        receiverAccountType: global___ADVEncryptionType.ValueType | None = ...,
        recipientKeyHash: builtins.bytes | None = ...,
        recipientTimestamp: builtins.int | None = ...,
        recipientKeyIndexes: collections.abc.Iterable[builtins.int] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "receiverAccountType",
            b"receiverAccountType",
            "recipientKeyHash",
            b"recipientKeyHash",
            "recipientTimestamp",
            b"recipientTimestamp",
            "senderAccountType",
            b"senderAccountType",
            "senderKeyHash",
            b"senderKeyHash",
            "senderTimestamp",
            b"senderTimestamp",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "receiverAccountType",
            b"receiverAccountType",
            "recipientKeyHash",
            b"recipientKeyHash",
            "recipientKeyIndexes",
            b"recipientKeyIndexes",
            "recipientTimestamp",
            b"recipientTimestamp",
            "senderAccountType",
            b"senderAccountType",
            "senderKeyHash",
            b"senderKeyHash",
            "senderKeyIndexes",
            b"senderKeyIndexes",
            "senderTimestamp",
            b"senderTimestamp",
        ],
    ) -> None: ...

global___DeviceListMetadata = DeviceListMetadata

@typing_extensions.final
class ContextInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class UTMInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        UTMSOURCE_FIELD_NUMBER: builtins.int
        UTMCAMPAIGN_FIELD_NUMBER: builtins.int
        utmSource: builtins.str
        utmCampaign: builtins.str
        def __init__(
            self,
            *,
            utmSource: builtins.str | None = ...,
            utmCampaign: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "utmCampaign", b"utmCampaign", "utmSource", b"utmSource"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "utmCampaign", b"utmCampaign", "utmSource", b"utmSource"
            ],
        ) -> None: ...

    @typing_extensions.final
    class ExternalAdReplyInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _MediaTypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ContextInfo.ExternalAdReplyInfo._MediaType.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            NONE: ContextInfo.ExternalAdReplyInfo._MediaType.ValueType  # 0
            IMAGE: ContextInfo.ExternalAdReplyInfo._MediaType.ValueType  # 1
            VIDEO: ContextInfo.ExternalAdReplyInfo._MediaType.ValueType  # 2

        class MediaType(_MediaType, metaclass=_MediaTypeEnumTypeWrapper): ...
        NONE: ContextInfo.ExternalAdReplyInfo.MediaType.ValueType  # 0
        IMAGE: ContextInfo.ExternalAdReplyInfo.MediaType.ValueType  # 1
        VIDEO: ContextInfo.ExternalAdReplyInfo.MediaType.ValueType  # 2

        TITLE_FIELD_NUMBER: builtins.int
        BODY_FIELD_NUMBER: builtins.int
        MEDIATYPE_FIELD_NUMBER: builtins.int
        THUMBNAILURL_FIELD_NUMBER: builtins.int
        MEDIAURL_FIELD_NUMBER: builtins.int
        THUMBNAIL_FIELD_NUMBER: builtins.int
        SOURCETYPE_FIELD_NUMBER: builtins.int
        SOURCEID_FIELD_NUMBER: builtins.int
        SOURCEURL_FIELD_NUMBER: builtins.int
        CONTAINSAUTOREPLY_FIELD_NUMBER: builtins.int
        RENDERLARGERTHUMBNAIL_FIELD_NUMBER: builtins.int
        SHOWADATTRIBUTION_FIELD_NUMBER: builtins.int
        CTWACLID_FIELD_NUMBER: builtins.int
        REF_FIELD_NUMBER: builtins.int
        title: builtins.str
        body: builtins.str
        mediaType: global___ContextInfo.ExternalAdReplyInfo.MediaType.ValueType
        thumbnailUrl: builtins.str
        mediaUrl: builtins.str
        thumbnail: builtins.bytes
        sourceType: builtins.str
        sourceId: builtins.str
        sourceUrl: builtins.str
        containsAutoReply: builtins.bool
        renderLargerThumbnail: builtins.bool
        showAdAttribution: builtins.bool
        ctwaClid: builtins.str
        ref: builtins.str
        def __init__(
            self,
            *,
            title: builtins.str | None = ...,
            body: builtins.str | None = ...,
            mediaType: global___ContextInfo.ExternalAdReplyInfo.MediaType.ValueType
            | None = ...,
            thumbnailUrl: builtins.str | None = ...,
            mediaUrl: builtins.str | None = ...,
            thumbnail: builtins.bytes | None = ...,
            sourceType: builtins.str | None = ...,
            sourceId: builtins.str | None = ...,
            sourceUrl: builtins.str | None = ...,
            containsAutoReply: builtins.bool | None = ...,
            renderLargerThumbnail: builtins.bool | None = ...,
            showAdAttribution: builtins.bool | None = ...,
            ctwaClid: builtins.str | None = ...,
            ref: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "body",
                b"body",
                "containsAutoReply",
                b"containsAutoReply",
                "ctwaClid",
                b"ctwaClid",
                "mediaType",
                b"mediaType",
                "mediaUrl",
                b"mediaUrl",
                "ref",
                b"ref",
                "renderLargerThumbnail",
                b"renderLargerThumbnail",
                "showAdAttribution",
                b"showAdAttribution",
                "sourceId",
                b"sourceId",
                "sourceType",
                b"sourceType",
                "sourceUrl",
                b"sourceUrl",
                "thumbnail",
                b"thumbnail",
                "thumbnailUrl",
                b"thumbnailUrl",
                "title",
                b"title",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "body",
                b"body",
                "containsAutoReply",
                b"containsAutoReply",
                "ctwaClid",
                b"ctwaClid",
                "mediaType",
                b"mediaType",
                "mediaUrl",
                b"mediaUrl",
                "ref",
                b"ref",
                "renderLargerThumbnail",
                b"renderLargerThumbnail",
                "showAdAttribution",
                b"showAdAttribution",
                "sourceId",
                b"sourceId",
                "sourceType",
                b"sourceType",
                "sourceUrl",
                b"sourceUrl",
                "thumbnail",
                b"thumbnail",
                "thumbnailUrl",
                b"thumbnailUrl",
                "title",
                b"title",
            ],
        ) -> None: ...

    @typing_extensions.final
    class DataSharingContext(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        SHOWMMDISCLOSURE_FIELD_NUMBER: builtins.int
        showMmDisclosure: builtins.bool
        def __init__(
            self,
            *,
            showMmDisclosure: builtins.bool | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "showMmDisclosure", b"showMmDisclosure"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "showMmDisclosure", b"showMmDisclosure"
            ],
        ) -> None: ...

    @typing_extensions.final
    class BusinessMessageForwardInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        BUSINESSOWNERJID_FIELD_NUMBER: builtins.int
        businessOwnerJid: builtins.str
        def __init__(
            self,
            *,
            businessOwnerJid: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "businessOwnerJid", b"businessOwnerJid"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "businessOwnerJid", b"businessOwnerJid"
            ],
        ) -> None: ...

    @typing_extensions.final
    class AdReplyInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _MediaTypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ContextInfo.AdReplyInfo._MediaType.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            NONE: ContextInfo.AdReplyInfo._MediaType.ValueType  # 0
            IMAGE: ContextInfo.AdReplyInfo._MediaType.ValueType  # 1
            VIDEO: ContextInfo.AdReplyInfo._MediaType.ValueType  # 2

        class MediaType(_MediaType, metaclass=_MediaTypeEnumTypeWrapper): ...
        NONE: ContextInfo.AdReplyInfo.MediaType.ValueType  # 0
        IMAGE: ContextInfo.AdReplyInfo.MediaType.ValueType  # 1
        VIDEO: ContextInfo.AdReplyInfo.MediaType.ValueType  # 2

        ADVERTISERNAME_FIELD_NUMBER: builtins.int
        MEDIATYPE_FIELD_NUMBER: builtins.int
        JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
        CAPTION_FIELD_NUMBER: builtins.int
        advertiserName: builtins.str
        mediaType: global___ContextInfo.AdReplyInfo.MediaType.ValueType
        jpegThumbnail: builtins.bytes
        caption: builtins.str
        def __init__(
            self,
            *,
            advertiserName: builtins.str | None = ...,
            mediaType: global___ContextInfo.AdReplyInfo.MediaType.ValueType
            | None = ...,
            jpegThumbnail: builtins.bytes | None = ...,
            caption: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "advertiserName",
                b"advertiserName",
                "caption",
                b"caption",
                "jpegThumbnail",
                b"jpegThumbnail",
                "mediaType",
                b"mediaType",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "advertiserName",
                b"advertiserName",
                "caption",
                b"caption",
                "jpegThumbnail",
                b"jpegThumbnail",
                "mediaType",
                b"mediaType",
            ],
        ) -> None: ...

    STANZAID_FIELD_NUMBER: builtins.int
    PARTICIPANT_FIELD_NUMBER: builtins.int
    QUOTEDMESSAGE_FIELD_NUMBER: builtins.int
    REMOTEJID_FIELD_NUMBER: builtins.int
    MENTIONEDJID_FIELD_NUMBER: builtins.int
    CONVERSIONSOURCE_FIELD_NUMBER: builtins.int
    CONVERSIONDATA_FIELD_NUMBER: builtins.int
    CONVERSIONDELAYSECONDS_FIELD_NUMBER: builtins.int
    FORWARDINGSCORE_FIELD_NUMBER: builtins.int
    ISFORWARDED_FIELD_NUMBER: builtins.int
    QUOTEDAD_FIELD_NUMBER: builtins.int
    PLACEHOLDERKEY_FIELD_NUMBER: builtins.int
    EXPIRATION_FIELD_NUMBER: builtins.int
    EPHEMERALSETTINGTIMESTAMP_FIELD_NUMBER: builtins.int
    EPHEMERALSHAREDSECRET_FIELD_NUMBER: builtins.int
    EXTERNALADREPLY_FIELD_NUMBER: builtins.int
    ENTRYPOINTCONVERSIONSOURCE_FIELD_NUMBER: builtins.int
    ENTRYPOINTCONVERSIONAPP_FIELD_NUMBER: builtins.int
    ENTRYPOINTCONVERSIONDELAYSECONDS_FIELD_NUMBER: builtins.int
    DISAPPEARINGMODE_FIELD_NUMBER: builtins.int
    ACTIONLINK_FIELD_NUMBER: builtins.int
    GROUPSUBJECT_FIELD_NUMBER: builtins.int
    PARENTGROUPJID_FIELD_NUMBER: builtins.int
    TRUSTBANNERTYPE_FIELD_NUMBER: builtins.int
    TRUSTBANNERACTION_FIELD_NUMBER: builtins.int
    ISSAMPLED_FIELD_NUMBER: builtins.int
    GROUPMENTIONS_FIELD_NUMBER: builtins.int
    UTM_FIELD_NUMBER: builtins.int
    FORWARDEDNEWSLETTERMESSAGEINFO_FIELD_NUMBER: builtins.int
    BUSINESSMESSAGEFORWARDINFO_FIELD_NUMBER: builtins.int
    SMBCLIENTCAMPAIGNID_FIELD_NUMBER: builtins.int
    SMBSERVERCAMPAIGNID_FIELD_NUMBER: builtins.int
    DATASHARINGCONTEXT_FIELD_NUMBER: builtins.int
    stanzaId: builtins.str
    participant: builtins.str
    @property
    def quotedMessage(self) -> global___Message: ...
    remoteJid: builtins.str
    @property
    def mentionedJid(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    conversionSource: builtins.str
    conversionData: builtins.bytes
    conversionDelaySeconds: builtins.int
    forwardingScore: builtins.int
    isForwarded: builtins.bool
    @property
    def quotedAd(self) -> global___ContextInfo.AdReplyInfo: ...
    @property
    def placeholderKey(self) -> global___MessageKey: ...
    expiration: builtins.int
    ephemeralSettingTimestamp: builtins.int
    ephemeralSharedSecret: builtins.bytes
    @property
    def externalAdReply(self) -> global___ContextInfo.ExternalAdReplyInfo: ...
    entryPointConversionSource: builtins.str
    entryPointConversionApp: builtins.str
    entryPointConversionDelaySeconds: builtins.int
    @property
    def disappearingMode(self) -> global___DisappearingMode: ...
    @property
    def actionLink(self) -> global___ActionLink: ...
    groupSubject: builtins.str
    parentGroupJid: builtins.str
    trustBannerType: builtins.str
    trustBannerAction: builtins.int
    isSampled: builtins.bool
    @property
    def groupMentions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GroupMention
    ]: ...
    @property
    def utm(self) -> global___ContextInfo.UTMInfo: ...
    @property
    def forwardedNewsletterMessageInfo(
        self,
    ) -> global___ForwardedNewsletterMessageInfo: ...
    @property
    def businessMessageForwardInfo(
        self,
    ) -> global___ContextInfo.BusinessMessageForwardInfo: ...
    smbClientCampaignId: builtins.str
    smbServerCampaignId: builtins.str
    @property
    def dataSharingContext(self) -> global___ContextInfo.DataSharingContext: ...
    def __init__(
        self,
        *,
        stanzaId: builtins.str | None = ...,
        participant: builtins.str | None = ...,
        quotedMessage: global___Message | None = ...,
        remoteJid: builtins.str | None = ...,
        mentionedJid: collections.abc.Iterable[builtins.str] | None = ...,
        conversionSource: builtins.str | None = ...,
        conversionData: builtins.bytes | None = ...,
        conversionDelaySeconds: builtins.int | None = ...,
        forwardingScore: builtins.int | None = ...,
        isForwarded: builtins.bool | None = ...,
        quotedAd: global___ContextInfo.AdReplyInfo | None = ...,
        placeholderKey: global___MessageKey | None = ...,
        expiration: builtins.int | None = ...,
        ephemeralSettingTimestamp: builtins.int | None = ...,
        ephemeralSharedSecret: builtins.bytes | None = ...,
        externalAdReply: global___ContextInfo.ExternalAdReplyInfo | None = ...,
        entryPointConversionSource: builtins.str | None = ...,
        entryPointConversionApp: builtins.str | None = ...,
        entryPointConversionDelaySeconds: builtins.int | None = ...,
        disappearingMode: global___DisappearingMode | None = ...,
        actionLink: global___ActionLink | None = ...,
        groupSubject: builtins.str | None = ...,
        parentGroupJid: builtins.str | None = ...,
        trustBannerType: builtins.str | None = ...,
        trustBannerAction: builtins.int | None = ...,
        isSampled: builtins.bool | None = ...,
        groupMentions: collections.abc.Iterable[global___GroupMention] | None = ...,
        utm: global___ContextInfo.UTMInfo | None = ...,
        forwardedNewsletterMessageInfo: global___ForwardedNewsletterMessageInfo
        | None = ...,
        businessMessageForwardInfo: global___ContextInfo.BusinessMessageForwardInfo
        | None = ...,
        smbClientCampaignId: builtins.str | None = ...,
        smbServerCampaignId: builtins.str | None = ...,
        dataSharingContext: global___ContextInfo.DataSharingContext | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "actionLink",
            b"actionLink",
            "businessMessageForwardInfo",
            b"businessMessageForwardInfo",
            "conversionData",
            b"conversionData",
            "conversionDelaySeconds",
            b"conversionDelaySeconds",
            "conversionSource",
            b"conversionSource",
            "dataSharingContext",
            b"dataSharingContext",
            "disappearingMode",
            b"disappearingMode",
            "entryPointConversionApp",
            b"entryPointConversionApp",
            "entryPointConversionDelaySeconds",
            b"entryPointConversionDelaySeconds",
            "entryPointConversionSource",
            b"entryPointConversionSource",
            "ephemeralSettingTimestamp",
            b"ephemeralSettingTimestamp",
            "ephemeralSharedSecret",
            b"ephemeralSharedSecret",
            "expiration",
            b"expiration",
            "externalAdReply",
            b"externalAdReply",
            "forwardedNewsletterMessageInfo",
            b"forwardedNewsletterMessageInfo",
            "forwardingScore",
            b"forwardingScore",
            "groupSubject",
            b"groupSubject",
            "isForwarded",
            b"isForwarded",
            "isSampled",
            b"isSampled",
            "parentGroupJid",
            b"parentGroupJid",
            "participant",
            b"participant",
            "placeholderKey",
            b"placeholderKey",
            "quotedAd",
            b"quotedAd",
            "quotedMessage",
            b"quotedMessage",
            "remoteJid",
            b"remoteJid",
            "smbClientCampaignId",
            b"smbClientCampaignId",
            "smbServerCampaignId",
            b"smbServerCampaignId",
            "stanzaId",
            b"stanzaId",
            "trustBannerAction",
            b"trustBannerAction",
            "trustBannerType",
            b"trustBannerType",
            "utm",
            b"utm",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "actionLink",
            b"actionLink",
            "businessMessageForwardInfo",
            b"businessMessageForwardInfo",
            "conversionData",
            b"conversionData",
            "conversionDelaySeconds",
            b"conversionDelaySeconds",
            "conversionSource",
            b"conversionSource",
            "dataSharingContext",
            b"dataSharingContext",
            "disappearingMode",
            b"disappearingMode",
            "entryPointConversionApp",
            b"entryPointConversionApp",
            "entryPointConversionDelaySeconds",
            b"entryPointConversionDelaySeconds",
            "entryPointConversionSource",
            b"entryPointConversionSource",
            "ephemeralSettingTimestamp",
            b"ephemeralSettingTimestamp",
            "ephemeralSharedSecret",
            b"ephemeralSharedSecret",
            "expiration",
            b"expiration",
            "externalAdReply",
            b"externalAdReply",
            "forwardedNewsletterMessageInfo",
            b"forwardedNewsletterMessageInfo",
            "forwardingScore",
            b"forwardingScore",
            "groupMentions",
            b"groupMentions",
            "groupSubject",
            b"groupSubject",
            "isForwarded",
            b"isForwarded",
            "isSampled",
            b"isSampled",
            "mentionedJid",
            b"mentionedJid",
            "parentGroupJid",
            b"parentGroupJid",
            "participant",
            b"participant",
            "placeholderKey",
            b"placeholderKey",
            "quotedAd",
            b"quotedAd",
            "quotedMessage",
            b"quotedMessage",
            "remoteJid",
            b"remoteJid",
            "smbClientCampaignId",
            b"smbClientCampaignId",
            "smbServerCampaignId",
            b"smbServerCampaignId",
            "stanzaId",
            b"stanzaId",
            "trustBannerAction",
            b"trustBannerAction",
            "trustBannerType",
            b"trustBannerType",
            "utm",
            b"utm",
        ],
    ) -> None: ...

global___ContextInfo = ContextInfo

@typing_extensions.final
class ForwardedNewsletterMessageInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _ContentTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ForwardedNewsletterMessageInfo._ContentType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UPDATE: ForwardedNewsletterMessageInfo._ContentType.ValueType  # 1
        UPDATE_CARD: ForwardedNewsletterMessageInfo._ContentType.ValueType  # 2
        LINK_CARD: ForwardedNewsletterMessageInfo._ContentType.ValueType  # 3

    class ContentType(_ContentType, metaclass=_ContentTypeEnumTypeWrapper): ...
    UPDATE: ForwardedNewsletterMessageInfo.ContentType.ValueType  # 1
    UPDATE_CARD: ForwardedNewsletterMessageInfo.ContentType.ValueType  # 2
    LINK_CARD: ForwardedNewsletterMessageInfo.ContentType.ValueType  # 3

    NEWSLETTERJID_FIELD_NUMBER: builtins.int
    SERVERMESSAGEID_FIELD_NUMBER: builtins.int
    NEWSLETTERNAME_FIELD_NUMBER: builtins.int
    CONTENTTYPE_FIELD_NUMBER: builtins.int
    ACCESSIBILITYTEXT_FIELD_NUMBER: builtins.int
    newsletterJid: builtins.str
    serverMessageId: builtins.int
    newsletterName: builtins.str
    contentType: global___ForwardedNewsletterMessageInfo.ContentType.ValueType
    accessibilityText: builtins.str
    def __init__(
        self,
        *,
        newsletterJid: builtins.str | None = ...,
        serverMessageId: builtins.int | None = ...,
        newsletterName: builtins.str | None = ...,
        contentType: global___ForwardedNewsletterMessageInfo.ContentType.ValueType
        | None = ...,
        accessibilityText: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accessibilityText",
            b"accessibilityText",
            "contentType",
            b"contentType",
            "newsletterJid",
            b"newsletterJid",
            "newsletterName",
            b"newsletterName",
            "serverMessageId",
            b"serverMessageId",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accessibilityText",
            b"accessibilityText",
            "contentType",
            b"contentType",
            "newsletterJid",
            b"newsletterJid",
            "newsletterName",
            b"newsletterName",
            "serverMessageId",
            b"serverMessageId",
        ],
    ) -> None: ...

global___ForwardedNewsletterMessageInfo = ForwardedNewsletterMessageInfo

@typing_extensions.final
class BotSuggestedPromptMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SUGGESTEDPROMPTS_FIELD_NUMBER: builtins.int
    SELECTEDPROMPTINDEX_FIELD_NUMBER: builtins.int
    @property
    def suggestedPrompts(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    selectedPromptIndex: builtins.int
    def __init__(
        self,
        *,
        suggestedPrompts: collections.abc.Iterable[builtins.str] | None = ...,
        selectedPromptIndex: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "selectedPromptIndex", b"selectedPromptIndex"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "selectedPromptIndex",
            b"selectedPromptIndex",
            "suggestedPrompts",
            b"suggestedPrompts",
        ],
    ) -> None: ...

global___BotSuggestedPromptMetadata = BotSuggestedPromptMetadata

@typing_extensions.final
class BotPluginMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _SearchProviderEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BotPluginMetadata._SearchProvider.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        BING: BotPluginMetadata._SearchProvider.ValueType  # 1
        GOOGLE: BotPluginMetadata._SearchProvider.ValueType  # 2

    class SearchProvider(_SearchProvider, metaclass=_SearchProviderEnumTypeWrapper): ...
    BING: BotPluginMetadata.SearchProvider.ValueType  # 1
    GOOGLE: BotPluginMetadata.SearchProvider.ValueType  # 2

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

    class _PluginTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BotPluginMetadata._PluginType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        REELS: BotPluginMetadata._PluginType.ValueType  # 1
        SEARCH: BotPluginMetadata._PluginType.ValueType  # 2

    class PluginType(_PluginType, metaclass=_PluginTypeEnumTypeWrapper): ...
    REELS: BotPluginMetadata.PluginType.ValueType  # 1
    SEARCH: BotPluginMetadata.PluginType.ValueType  # 2

    PROVIDER_FIELD_NUMBER: builtins.int
    PLUGINTYPE_FIELD_NUMBER: builtins.int
    THUMBNAILCDNURL_FIELD_NUMBER: builtins.int
    PROFILEPHOTOCDNURL_FIELD_NUMBER: builtins.int
    SEARCHPROVIDERURL_FIELD_NUMBER: builtins.int
    REFERENCEINDEX_FIELD_NUMBER: builtins.int
    provider: global___BotPluginMetadata.SearchProvider.ValueType
    pluginType: global___BotPluginMetadata.PluginType.ValueType
    thumbnailCdnUrl: builtins.str
    profilePhotoCdnUrl: builtins.str
    searchProviderUrl: builtins.str
    referenceIndex: builtins.int
    def __init__(
        self,
        *,
        provider: global___BotPluginMetadata.SearchProvider.ValueType | None = ...,
        pluginType: global___BotPluginMetadata.PluginType.ValueType | None = ...,
        thumbnailCdnUrl: builtins.str | None = ...,
        profilePhotoCdnUrl: builtins.str | None = ...,
        searchProviderUrl: builtins.str | None = ...,
        referenceIndex: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "pluginType",
            b"pluginType",
            "profilePhotoCdnUrl",
            b"profilePhotoCdnUrl",
            "provider",
            b"provider",
            "referenceIndex",
            b"referenceIndex",
            "searchProviderUrl",
            b"searchProviderUrl",
            "thumbnailCdnUrl",
            b"thumbnailCdnUrl",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "pluginType",
            b"pluginType",
            "profilePhotoCdnUrl",
            b"profilePhotoCdnUrl",
            "provider",
            b"provider",
            "referenceIndex",
            b"referenceIndex",
            "searchProviderUrl",
            b"searchProviderUrl",
            "thumbnailCdnUrl",
            b"thumbnailCdnUrl",
        ],
    ) -> None: ...

global___BotPluginMetadata = BotPluginMetadata

@typing_extensions.final
class BotMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AVATARMETADATA_FIELD_NUMBER: builtins.int
    PERSONAID_FIELD_NUMBER: builtins.int
    PLUGINMETADATA_FIELD_NUMBER: builtins.int
    SUGGESTEDPROMPTMETADATA_FIELD_NUMBER: builtins.int
    @property
    def avatarMetadata(self) -> global___BotAvatarMetadata: ...
    personaId: builtins.str
    @property
    def pluginMetadata(self) -> global___BotPluginMetadata: ...
    @property
    def suggestedPromptMetadata(self) -> global___BotSuggestedPromptMetadata: ...
    def __init__(
        self,
        *,
        avatarMetadata: global___BotAvatarMetadata | None = ...,
        personaId: builtins.str | None = ...,
        pluginMetadata: global___BotPluginMetadata | None = ...,
        suggestedPromptMetadata: global___BotSuggestedPromptMetadata | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "avatarMetadata",
            b"avatarMetadata",
            "personaId",
            b"personaId",
            "pluginMetadata",
            b"pluginMetadata",
            "suggestedPromptMetadata",
            b"suggestedPromptMetadata",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "avatarMetadata",
            b"avatarMetadata",
            "personaId",
            b"personaId",
            "pluginMetadata",
            b"pluginMetadata",
            "suggestedPromptMetadata",
            b"suggestedPromptMetadata",
        ],
    ) -> None: ...

global___BotMetadata = BotMetadata

@typing_extensions.final
class BotAvatarMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SENTIMENT_FIELD_NUMBER: builtins.int
    BEHAVIORGRAPH_FIELD_NUMBER: builtins.int
    ACTION_FIELD_NUMBER: builtins.int
    INTENSITY_FIELD_NUMBER: builtins.int
    WORDCOUNT_FIELD_NUMBER: builtins.int
    sentiment: builtins.int
    behaviorGraph: builtins.str
    action: builtins.int
    intensity: builtins.int
    wordCount: builtins.int
    def __init__(
        self,
        *,
        sentiment: builtins.int | None = ...,
        behaviorGraph: builtins.str | None = ...,
        action: builtins.int | None = ...,
        intensity: builtins.int | None = ...,
        wordCount: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "action",
            b"action",
            "behaviorGraph",
            b"behaviorGraph",
            "intensity",
            b"intensity",
            "sentiment",
            b"sentiment",
            "wordCount",
            b"wordCount",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "action",
            b"action",
            "behaviorGraph",
            b"behaviorGraph",
            "intensity",
            b"intensity",
            "sentiment",
            b"sentiment",
            "wordCount",
            b"wordCount",
        ],
    ) -> None: ...

global___BotAvatarMetadata = BotAvatarMetadata

@typing_extensions.final
class ActionLink(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    URL_FIELD_NUMBER: builtins.int
    BUTTONTITLE_FIELD_NUMBER: builtins.int
    url: builtins.str
    buttonTitle: builtins.str
    def __init__(
        self,
        *,
        url: builtins.str | None = ...,
        buttonTitle: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "buttonTitle", b"buttonTitle", "url", b"url"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "buttonTitle", b"buttonTitle", "url", b"url"
        ],
    ) -> None: ...

global___ActionLink = ActionLink

@typing_extensions.final
class TemplateButton(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class URLButton(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        DISPLAYTEXT_FIELD_NUMBER: builtins.int
        URL_FIELD_NUMBER: builtins.int
        @property
        def displayText(self) -> global___HighlyStructuredMessage: ...
        @property
        def url(self) -> global___HighlyStructuredMessage: ...
        def __init__(
            self,
            *,
            displayText: global___HighlyStructuredMessage | None = ...,
            url: global___HighlyStructuredMessage | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "url", b"url"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "url", b"url"
            ],
        ) -> None: ...

    @typing_extensions.final
    class QuickReplyButton(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        DISPLAYTEXT_FIELD_NUMBER: builtins.int
        ID_FIELD_NUMBER: builtins.int
        @property
        def displayText(self) -> global___HighlyStructuredMessage: ...
        id: builtins.str
        def __init__(
            self,
            *,
            displayText: global___HighlyStructuredMessage | None = ...,
            id: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "id", b"id"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "id", b"id"
            ],
        ) -> None: ...

    @typing_extensions.final
    class CallButton(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        DISPLAYTEXT_FIELD_NUMBER: builtins.int
        PHONENUMBER_FIELD_NUMBER: builtins.int
        @property
        def displayText(self) -> global___HighlyStructuredMessage: ...
        @property
        def phoneNumber(self) -> global___HighlyStructuredMessage: ...
        def __init__(
            self,
            *,
            displayText: global___HighlyStructuredMessage | None = ...,
            phoneNumber: global___HighlyStructuredMessage | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "phoneNumber", b"phoneNumber"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "displayText", b"displayText", "phoneNumber", b"phoneNumber"
            ],
        ) -> None: ...

    INDEX_FIELD_NUMBER: builtins.int
    QUICKREPLYBUTTON_FIELD_NUMBER: builtins.int
    URLBUTTON_FIELD_NUMBER: builtins.int
    CALLBUTTON_FIELD_NUMBER: builtins.int
    index: builtins.int
    @property
    def quickReplyButton(self) -> global___TemplateButton.QuickReplyButton: ...
    @property
    def urlButton(self) -> global___TemplateButton.URLButton: ...
    @property
    def callButton(self) -> global___TemplateButton.CallButton: ...
    def __init__(
        self,
        *,
        index: builtins.int | None = ...,
        quickReplyButton: global___TemplateButton.QuickReplyButton | None = ...,
        urlButton: global___TemplateButton.URLButton | None = ...,
        callButton: global___TemplateButton.CallButton | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "button",
            b"button",
            "callButton",
            b"callButton",
            "index",
            b"index",
            "quickReplyButton",
            b"quickReplyButton",
            "urlButton",
            b"urlButton",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "button",
            b"button",
            "callButton",
            b"callButton",
            "index",
            b"index",
            "quickReplyButton",
            b"quickReplyButton",
            "urlButton",
            b"urlButton",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["button", b"button"]
    ) -> (
        typing_extensions.Literal["quickReplyButton", "urlButton", "callButton"] | None
    ): ...

global___TemplateButton = TemplateButton

@typing_extensions.final
class Point(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    XDEPRECATED_FIELD_NUMBER: builtins.int
    YDEPRECATED_FIELD_NUMBER: builtins.int
    X_FIELD_NUMBER: builtins.int
    Y_FIELD_NUMBER: builtins.int
    xDeprecated: builtins.int
    yDeprecated: builtins.int
    x: builtins.float
    y: builtins.float
    def __init__(
        self,
        *,
        xDeprecated: builtins.int | None = ...,
        yDeprecated: builtins.int | None = ...,
        x: builtins.float | None = ...,
        y: builtins.float | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "x",
            b"x",
            "xDeprecated",
            b"xDeprecated",
            "y",
            b"y",
            "yDeprecated",
            b"yDeprecated",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "x",
            b"x",
            "xDeprecated",
            b"xDeprecated",
            "y",
            b"y",
            "yDeprecated",
            b"yDeprecated",
        ],
    ) -> None: ...

global___Point = Point

@typing_extensions.final
class PaymentBackground(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PaymentBackground._Type.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: PaymentBackground._Type.ValueType  # 0
        DEFAULT: PaymentBackground._Type.ValueType  # 1

    class Type(_Type, metaclass=_TypeEnumTypeWrapper): ...
    UNKNOWN: PaymentBackground.Type.ValueType  # 0
    DEFAULT: PaymentBackground.Type.ValueType  # 1

    @typing_extensions.final
    class MediaData(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        MEDIAKEY_FIELD_NUMBER: builtins.int
        MEDIAKEYTIMESTAMP_FIELD_NUMBER: builtins.int
        FILESHA256_FIELD_NUMBER: builtins.int
        FILEENCSHA256_FIELD_NUMBER: builtins.int
        DIRECTPATH_FIELD_NUMBER: builtins.int
        mediaKey: builtins.bytes
        mediaKeyTimestamp: builtins.int
        fileSha256: builtins.bytes
        fileEncSha256: builtins.bytes
        directPath: builtins.str
        def __init__(
            self,
            *,
            mediaKey: builtins.bytes | None = ...,
            mediaKeyTimestamp: builtins.int | None = ...,
            fileSha256: builtins.bytes | None = ...,
            fileEncSha256: builtins.bytes | None = ...,
            directPath: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "directPath",
                b"directPath",
                "fileEncSha256",
                b"fileEncSha256",
                "fileSha256",
                b"fileSha256",
                "mediaKey",
                b"mediaKey",
                "mediaKeyTimestamp",
                b"mediaKeyTimestamp",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "directPath",
                b"directPath",
                "fileEncSha256",
                b"fileEncSha256",
                "fileSha256",
                b"fileSha256",
                "mediaKey",
                b"mediaKey",
                "mediaKeyTimestamp",
                b"mediaKeyTimestamp",
            ],
        ) -> None: ...

    ID_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    WIDTH_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    MIMETYPE_FIELD_NUMBER: builtins.int
    PLACEHOLDERARGB_FIELD_NUMBER: builtins.int
    TEXTARGB_FIELD_NUMBER: builtins.int
    SUBTEXTARGB_FIELD_NUMBER: builtins.int
    MEDIADATA_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    id: builtins.str
    fileLength: builtins.int
    width: builtins.int
    height: builtins.int
    mimetype: builtins.str
    placeholderArgb: builtins.int
    textArgb: builtins.int
    subtextArgb: builtins.int
    @property
    def mediaData(self) -> global___PaymentBackground.MediaData: ...
    type: global___PaymentBackground.Type.ValueType
    def __init__(
        self,
        *,
        id: builtins.str | None = ...,
        fileLength: builtins.int | None = ...,
        width: builtins.int | None = ...,
        height: builtins.int | None = ...,
        mimetype: builtins.str | None = ...,
        placeholderArgb: builtins.int | None = ...,
        textArgb: builtins.int | None = ...,
        subtextArgb: builtins.int | None = ...,
        mediaData: global___PaymentBackground.MediaData | None = ...,
        type: global___PaymentBackground.Type.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "fileLength",
            b"fileLength",
            "height",
            b"height",
            "id",
            b"id",
            "mediaData",
            b"mediaData",
            "mimetype",
            b"mimetype",
            "placeholderArgb",
            b"placeholderArgb",
            "subtextArgb",
            b"subtextArgb",
            "textArgb",
            b"textArgb",
            "type",
            b"type",
            "width",
            b"width",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "fileLength",
            b"fileLength",
            "height",
            b"height",
            "id",
            b"id",
            "mediaData",
            b"mediaData",
            "mimetype",
            b"mimetype",
            "placeholderArgb",
            b"placeholderArgb",
            "subtextArgb",
            b"subtextArgb",
            "textArgb",
            b"textArgb",
            "type",
            b"type",
            "width",
            b"width",
        ],
    ) -> None: ...

global___PaymentBackground = PaymentBackground

@typing_extensions.final
class Money(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VALUE_FIELD_NUMBER: builtins.int
    OFFSET_FIELD_NUMBER: builtins.int
    CURRENCYCODE_FIELD_NUMBER: builtins.int
    value: builtins.int
    offset: builtins.int
    currencyCode: builtins.str
    def __init__(
        self,
        *,
        value: builtins.int | None = ...,
        offset: builtins.int | None = ...,
        currencyCode: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "currencyCode", b"currencyCode", "offset", b"offset", "value", b"value"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "currencyCode", b"currencyCode", "offset", b"offset", "value", b"value"
        ],
    ) -> None: ...

global___Money = Money

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

    CONVERSATION_FIELD_NUMBER: builtins.int
    SENDERKEYDISTRIBUTIONMESSAGE_FIELD_NUMBER: builtins.int
    IMAGEMESSAGE_FIELD_NUMBER: builtins.int
    CONTACTMESSAGE_FIELD_NUMBER: builtins.int
    LOCATIONMESSAGE_FIELD_NUMBER: builtins.int
    EXTENDEDTEXTMESSAGE_FIELD_NUMBER: builtins.int
    DOCUMENTMESSAGE_FIELD_NUMBER: builtins.int
    AUDIOMESSAGE_FIELD_NUMBER: builtins.int
    VIDEOMESSAGE_FIELD_NUMBER: builtins.int
    CALL_FIELD_NUMBER: builtins.int
    CHAT_FIELD_NUMBER: builtins.int
    PROTOCOLMESSAGE_FIELD_NUMBER: builtins.int
    CONTACTSARRAYMESSAGE_FIELD_NUMBER: builtins.int
    HIGHLYSTRUCTUREDMESSAGE_FIELD_NUMBER: builtins.int
    FASTRATCHETKEYSENDERKEYDISTRIBUTIONMESSAGE_FIELD_NUMBER: builtins.int
    SENDPAYMENTMESSAGE_FIELD_NUMBER: builtins.int
    LIVELOCATIONMESSAGE_FIELD_NUMBER: builtins.int
    REQUESTPAYMENTMESSAGE_FIELD_NUMBER: builtins.int
    DECLINEPAYMENTREQUESTMESSAGE_FIELD_NUMBER: builtins.int
    CANCELPAYMENTREQUESTMESSAGE_FIELD_NUMBER: builtins.int
    TEMPLATEMESSAGE_FIELD_NUMBER: builtins.int
    STICKERMESSAGE_FIELD_NUMBER: builtins.int
    GROUPINVITEMESSAGE_FIELD_NUMBER: builtins.int
    TEMPLATEBUTTONREPLYMESSAGE_FIELD_NUMBER: builtins.int
    PRODUCTMESSAGE_FIELD_NUMBER: builtins.int
    DEVICESENTMESSAGE_FIELD_NUMBER: builtins.int
    MESSAGECONTEXTINFO_FIELD_NUMBER: builtins.int
    LISTMESSAGE_FIELD_NUMBER: builtins.int
    VIEWONCEMESSAGE_FIELD_NUMBER: builtins.int
    ORDERMESSAGE_FIELD_NUMBER: builtins.int
    LISTRESPONSEMESSAGE_FIELD_NUMBER: builtins.int
    EPHEMERALMESSAGE_FIELD_NUMBER: builtins.int
    INVOICEMESSAGE_FIELD_NUMBER: builtins.int
    BUTTONSMESSAGE_FIELD_NUMBER: builtins.int
    BUTTONSRESPONSEMESSAGE_FIELD_NUMBER: builtins.int
    PAYMENTINVITEMESSAGE_FIELD_NUMBER: builtins.int
    INTERACTIVEMESSAGE_FIELD_NUMBER: builtins.int
    REACTIONMESSAGE_FIELD_NUMBER: builtins.int
    STICKERSYNCRMRMESSAGE_FIELD_NUMBER: builtins.int
    INTERACTIVERESPONSEMESSAGE_FIELD_NUMBER: builtins.int
    POLLCREATIONMESSAGE_FIELD_NUMBER: builtins.int
    POLLUPDATEMESSAGE_FIELD_NUMBER: builtins.int
    KEEPINCHATMESSAGE_FIELD_NUMBER: builtins.int
    DOCUMENTWITHCAPTIONMESSAGE_FIELD_NUMBER: builtins.int
    REQUESTPHONENUMBERMESSAGE_FIELD_NUMBER: builtins.int
    VIEWONCEMESSAGEV2_FIELD_NUMBER: builtins.int
    ENCREACTIONMESSAGE_FIELD_NUMBER: builtins.int
    EDITEDMESSAGE_FIELD_NUMBER: builtins.int
    VIEWONCEMESSAGEV2EXTENSION_FIELD_NUMBER: builtins.int
    POLLCREATIONMESSAGEV2_FIELD_NUMBER: builtins.int
    SCHEDULEDCALLCREATIONMESSAGE_FIELD_NUMBER: builtins.int
    GROUPMENTIONEDMESSAGE_FIELD_NUMBER: builtins.int
    PININCHATMESSAGE_FIELD_NUMBER: builtins.int
    POLLCREATIONMESSAGEV3_FIELD_NUMBER: builtins.int
    SCHEDULEDCALLEDITMESSAGE_FIELD_NUMBER: builtins.int
    PTVMESSAGE_FIELD_NUMBER: builtins.int
    BOTINVOKEMESSAGE_FIELD_NUMBER: builtins.int
    CALLLOGMESSSAGE_FIELD_NUMBER: builtins.int
    MESSAGEHISTORYBUNDLE_FIELD_NUMBER: builtins.int
    ENCCOMMENTMESSAGE_FIELD_NUMBER: builtins.int
    BCALLMESSAGE_FIELD_NUMBER: builtins.int
    LOTTIESTICKERMESSAGE_FIELD_NUMBER: builtins.int
    EVENTMESSAGE_FIELD_NUMBER: builtins.int
    ENCEVENTRESPONSEMESSAGE_FIELD_NUMBER: builtins.int
    COMMENTMESSAGE_FIELD_NUMBER: builtins.int
    NEWSLETTERADMININVITEMESSAGE_FIELD_NUMBER: builtins.int
    conversation: builtins.str
    @property
    def senderKeyDistributionMessage(self) -> global___SenderKeyDistributionMessage: ...
    @property
    def imageMessage(self) -> global___ImageMessage: ...
    @property
    def contactMessage(self) -> global___ContactMessage: ...
    @property
    def locationMessage(self) -> global___LocationMessage: ...
    @property
    def extendedTextMessage(self) -> global___ExtendedTextMessage: ...
    @property
    def documentMessage(self) -> global___DocumentMessage: ...
    @property
    def audioMessage(self) -> global___AudioMessage: ...
    @property
    def videoMessage(self) -> global___VideoMessage: ...
    @property
    def call(self) -> global___Call: ...
    @property
    def chat(self) -> global___Chat: ...
    @property
    def protocolMessage(self) -> global___ProtocolMessage: ...
    @property
    def contactsArrayMessage(self) -> global___ContactsArrayMessage: ...
    @property
    def highlyStructuredMessage(self) -> global___HighlyStructuredMessage: ...
    @property
    def fastRatchetKeySenderKeyDistributionMessage(
        self,
    ) -> global___SenderKeyDistributionMessage: ...
    @property
    def sendPaymentMessage(self) -> global___SendPaymentMessage: ...
    @property
    def liveLocationMessage(self) -> global___LiveLocationMessage: ...
    @property
    def requestPaymentMessage(self) -> global___RequestPaymentMessage: ...
    @property
    def declinePaymentRequestMessage(self) -> global___DeclinePaymentRequestMessage: ...
    @property
    def cancelPaymentRequestMessage(self) -> global___CancelPaymentRequestMessage: ...
    @property
    def templateMessage(self) -> global___TemplateMessage: ...
    @property
    def stickerMessage(self) -> global___StickerMessage: ...
    @property
    def groupInviteMessage(self) -> global___GroupInviteMessage: ...
    @property
    def templateButtonReplyMessage(self) -> global___TemplateButtonReplyMessage: ...
    @property
    def productMessage(self) -> global___ProductMessage: ...
    @property
    def deviceSentMessage(self) -> global___DeviceSentMessage: ...
    @property
    def messageContextInfo(self) -> global___MessageContextInfo: ...
    @property
    def listMessage(self) -> global___ListMessage: ...
    @property
    def viewOnceMessage(self) -> global___FutureProofMessage: ...
    @property
    def orderMessage(self) -> global___OrderMessage: ...
    @property
    def listResponseMessage(self) -> global___ListResponseMessage: ...
    @property
    def ephemeralMessage(self) -> global___FutureProofMessage: ...
    @property
    def invoiceMessage(self) -> global___InvoiceMessage: ...
    @property
    def buttonsMessage(self) -> global___ButtonsMessage: ...
    @property
    def buttonsResponseMessage(self) -> global___ButtonsResponseMessage: ...
    @property
    def paymentInviteMessage(self) -> global___PaymentInviteMessage: ...
    @property
    def interactiveMessage(self) -> global___InteractiveMessage: ...
    @property
    def reactionMessage(self) -> global___ReactionMessage: ...
    @property
    def stickerSyncRmrMessage(self) -> global___StickerSyncRMRMessage: ...
    @property
    def interactiveResponseMessage(self) -> global___InteractiveResponseMessage: ...
    @property
    def pollCreationMessage(self) -> global___PollCreationMessage: ...
    @property
    def pollUpdateMessage(self) -> global___PollUpdateMessage: ...
    @property
    def keepInChatMessage(self) -> global___KeepInChatMessage: ...
    @property
    def documentWithCaptionMessage(self) -> global___FutureProofMessage: ...
    @property
    def requestPhoneNumberMessage(self) -> global___RequestPhoneNumberMessage: ...
    @property
    def viewOnceMessageV2(self) -> global___FutureProofMessage: ...
    @property
    def encReactionMessage(self) -> global___EncReactionMessage: ...
    @property
    def editedMessage(self) -> global___FutureProofMessage: ...
    @property
    def viewOnceMessageV2Extension(self) -> global___FutureProofMessage: ...
    @property
    def pollCreationMessageV2(self) -> global___PollCreationMessage: ...
    @property
    def scheduledCallCreationMessage(self) -> global___ScheduledCallCreationMessage: ...
    @property
    def groupMentionedMessage(self) -> global___FutureProofMessage: ...
    @property
    def pinInChatMessage(self) -> global___PinInChatMessage: ...
    @property
    def pollCreationMessageV3(self) -> global___PollCreationMessage: ...
    @property
    def scheduledCallEditMessage(self) -> global___ScheduledCallEditMessage: ...
    @property
    def ptvMessage(self) -> global___VideoMessage: ...
    @property
    def botInvokeMessage(self) -> global___FutureProofMessage: ...
    @property
    def callLogMesssage(self) -> global___CallLogMessage: ...
    @property
    def messageHistoryBundle(self) -> global___MessageHistoryBundle: ...
    @property
    def encCommentMessage(self) -> global___EncCommentMessage: ...
    @property
    def bcallMessage(self) -> global___BCallMessage: ...
    @property
    def lottieStickerMessage(self) -> global___FutureProofMessage: ...
    @property
    def eventMessage(self) -> global___EventMessage: ...
    @property
    def encEventResponseMessage(self) -> global___EncEventResponseMessage: ...
    @property
    def commentMessage(self) -> global___CommentMessage: ...
    @property
    def newsletterAdminInviteMessage(self) -> global___NewsletterAdminInviteMessage: ...
    def __init__(
        self,
        *,
        conversation: builtins.str | None = ...,
        senderKeyDistributionMessage: global___SenderKeyDistributionMessage
        | None = ...,
        imageMessage: global___ImageMessage | None = ...,
        contactMessage: global___ContactMessage | None = ...,
        locationMessage: global___LocationMessage | None = ...,
        extendedTextMessage: global___ExtendedTextMessage | None = ...,
        documentMessage: global___DocumentMessage | None = ...,
        audioMessage: global___AudioMessage | None = ...,
        videoMessage: global___VideoMessage | None = ...,
        call: global___Call | None = ...,
        chat: global___Chat | None = ...,
        protocolMessage: global___ProtocolMessage | None = ...,
        contactsArrayMessage: global___ContactsArrayMessage | None = ...,
        highlyStructuredMessage: global___HighlyStructuredMessage | None = ...,
        fastRatchetKeySenderKeyDistributionMessage: global___SenderKeyDistributionMessage
        | None = ...,
        sendPaymentMessage: global___SendPaymentMessage | None = ...,
        liveLocationMessage: global___LiveLocationMessage | None = ...,
        requestPaymentMessage: global___RequestPaymentMessage | None = ...,
        declinePaymentRequestMessage: global___DeclinePaymentRequestMessage
        | None = ...,
        cancelPaymentRequestMessage: global___CancelPaymentRequestMessage | None = ...,
        templateMessage: global___TemplateMessage | None = ...,
        stickerMessage: global___StickerMessage | None = ...,
        groupInviteMessage: global___GroupInviteMessage | None = ...,
        templateButtonReplyMessage: global___TemplateButtonReplyMessage | None = ...,
        productMessage: global___ProductMessage | None = ...,
        deviceSentMessage: global___DeviceSentMessage | None = ...,
        messageContextInfo: global___MessageContextInfo | None = ...,
        listMessage: global___ListMessage | None = ...,
        viewOnceMessage: global___FutureProofMessage | None = ...,
        orderMessage: global___OrderMessage | None = ...,
        listResponseMessage: global___ListResponseMessage | None = ...,
        ephemeralMessage: global___FutureProofMessage | None = ...,
        invoiceMessage: global___InvoiceMessage | None = ...,
        buttonsMessage: global___ButtonsMessage | None = ...,
        buttonsResponseMessage: global___ButtonsResponseMessage | None = ...,
        paymentInviteMessage: global___PaymentInviteMessage | None = ...,
        interactiveMessage: global___InteractiveMessage | None = ...,
        reactionMessage: global___ReactionMessage | None = ...,
        stickerSyncRmrMessage: global___StickerSyncRMRMessage | None = ...,
        interactiveResponseMessage: global___InteractiveResponseMessage | None = ...,
        pollCreationMessage: global___PollCreationMessage | None = ...,
        pollUpdateMessage: global___PollUpdateMessage | None = ...,
        keepInChatMessage: global___KeepInChatMessage | None = ...,
        documentWithCaptionMessage: global___FutureProofMessage | None = ...,
        requestPhoneNumberMessage: global___RequestPhoneNumberMessage | None = ...,
        viewOnceMessageV2: global___FutureProofMessage | None = ...,
        encReactionMessage: global___EncReactionMessage | None = ...,
        editedMessage: global___FutureProofMessage | None = ...,
        viewOnceMessageV2Extension: global___FutureProofMessage | None = ...,
        pollCreationMessageV2: global___PollCreationMessage | None = ...,
        scheduledCallCreationMessage: global___ScheduledCallCreationMessage
        | None = ...,
        groupMentionedMessage: global___FutureProofMessage | None = ...,
        pinInChatMessage: global___PinInChatMessage | None = ...,
        pollCreationMessageV3: global___PollCreationMessage | None = ...,
        scheduledCallEditMessage: global___ScheduledCallEditMessage | None = ...,
        ptvMessage: global___VideoMessage | None = ...,
        botInvokeMessage: global___FutureProofMessage | None = ...,
        callLogMesssage: global___CallLogMessage | None = ...,
        messageHistoryBundle: global___MessageHistoryBundle | None = ...,
        encCommentMessage: global___EncCommentMessage | None = ...,
        bcallMessage: global___BCallMessage | None = ...,
        lottieStickerMessage: global___FutureProofMessage | None = ...,
        eventMessage: global___EventMessage | None = ...,
        encEventResponseMessage: global___EncEventResponseMessage | None = ...,
        commentMessage: global___CommentMessage | None = ...,
        newsletterAdminInviteMessage: global___NewsletterAdminInviteMessage
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "audioMessage",
            b"audioMessage",
            "bcallMessage",
            b"bcallMessage",
            "botInvokeMessage",
            b"botInvokeMessage",
            "buttonsMessage",
            b"buttonsMessage",
            "buttonsResponseMessage",
            b"buttonsResponseMessage",
            "call",
            b"call",
            "callLogMesssage",
            b"callLogMesssage",
            "cancelPaymentRequestMessage",
            b"cancelPaymentRequestMessage",
            "chat",
            b"chat",
            "commentMessage",
            b"commentMessage",
            "contactMessage",
            b"contactMessage",
            "contactsArrayMessage",
            b"contactsArrayMessage",
            "conversation",
            b"conversation",
            "declinePaymentRequestMessage",
            b"declinePaymentRequestMessage",
            "deviceSentMessage",
            b"deviceSentMessage",
            "documentMessage",
            b"documentMessage",
            "documentWithCaptionMessage",
            b"documentWithCaptionMessage",
            "editedMessage",
            b"editedMessage",
            "encCommentMessage",
            b"encCommentMessage",
            "encEventResponseMessage",
            b"encEventResponseMessage",
            "encReactionMessage",
            b"encReactionMessage",
            "ephemeralMessage",
            b"ephemeralMessage",
            "eventMessage",
            b"eventMessage",
            "extendedTextMessage",
            b"extendedTextMessage",
            "fastRatchetKeySenderKeyDistributionMessage",
            b"fastRatchetKeySenderKeyDistributionMessage",
            "groupInviteMessage",
            b"groupInviteMessage",
            "groupMentionedMessage",
            b"groupMentionedMessage",
            "highlyStructuredMessage",
            b"highlyStructuredMessage",
            "imageMessage",
            b"imageMessage",
            "interactiveMessage",
            b"interactiveMessage",
            "interactiveResponseMessage",
            b"interactiveResponseMessage",
            "invoiceMessage",
            b"invoiceMessage",
            "keepInChatMessage",
            b"keepInChatMessage",
            "listMessage",
            b"listMessage",
            "listResponseMessage",
            b"listResponseMessage",
            "liveLocationMessage",
            b"liveLocationMessage",
            "locationMessage",
            b"locationMessage",
            "lottieStickerMessage",
            b"lottieStickerMessage",
            "messageContextInfo",
            b"messageContextInfo",
            "messageHistoryBundle",
            b"messageHistoryBundle",
            "newsletterAdminInviteMessage",
            b"newsletterAdminInviteMessage",
            "orderMessage",
            b"orderMessage",
            "paymentInviteMessage",
            b"paymentInviteMessage",
            "pinInChatMessage",
            b"pinInChatMessage",
            "pollCreationMessage",
            b"pollCreationMessage",
            "pollCreationMessageV2",
            b"pollCreationMessageV2",
            "pollCreationMessageV3",
            b"pollCreationMessageV3",
            "pollUpdateMessage",
            b"pollUpdateMessage",
            "productMessage",
            b"productMessage",
            "protocolMessage",
            b"protocolMessage",
            "ptvMessage",
            b"ptvMessage",
            "reactionMessage",
            b"reactionMessage",
            "requestPaymentMessage",
            b"requestPaymentMessage",
            "requestPhoneNumberMessage",
            b"requestPhoneNumberMessage",
            "scheduledCallCreationMessage",
            b"scheduledCallCreationMessage",
            "scheduledCallEditMessage",
            b"scheduledCallEditMessage",
            "sendPaymentMessage",
            b"sendPaymentMessage",
            "senderKeyDistributionMessage",
            b"senderKeyDistributionMessage",
            "stickerMessage",
            b"stickerMessage",
            "stickerSyncRmrMessage",
            b"stickerSyncRmrMessage",
            "templateButtonReplyMessage",
            b"templateButtonReplyMessage",
            "templateMessage",
            b"templateMessage",
            "videoMessage",
            b"videoMessage",
            "viewOnceMessage",
            b"viewOnceMessage",
            "viewOnceMessageV2",
            b"viewOnceMessageV2",
            "viewOnceMessageV2Extension",
            b"viewOnceMessageV2Extension",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "audioMessage",
            b"audioMessage",
            "bcallMessage",
            b"bcallMessage",
            "botInvokeMessage",
            b"botInvokeMessage",
            "buttonsMessage",
            b"buttonsMessage",
            "buttonsResponseMessage",
            b"buttonsResponseMessage",
            "call",
            b"call",
            "callLogMesssage",
            b"callLogMesssage",
            "cancelPaymentRequestMessage",
            b"cancelPaymentRequestMessage",
            "chat",
            b"chat",
            "commentMessage",
            b"commentMessage",
            "contactMessage",
            b"contactMessage",
            "contactsArrayMessage",
            b"contactsArrayMessage",
            "conversation",
            b"conversation",
            "declinePaymentRequestMessage",
            b"declinePaymentRequestMessage",
            "deviceSentMessage",
            b"deviceSentMessage",
            "documentMessage",
            b"documentMessage",
            "documentWithCaptionMessage",
            b"documentWithCaptionMessage",
            "editedMessage",
            b"editedMessage",
            "encCommentMessage",
            b"encCommentMessage",
            "encEventResponseMessage",
            b"encEventResponseMessage",
            "encReactionMessage",
            b"encReactionMessage",
            "ephemeralMessage",
            b"ephemeralMessage",
            "eventMessage",
            b"eventMessage",
            "extendedTextMessage",
            b"extendedTextMessage",
            "fastRatchetKeySenderKeyDistributionMessage",
            b"fastRatchetKeySenderKeyDistributionMessage",
            "groupInviteMessage",
            b"groupInviteMessage",
            "groupMentionedMessage",
            b"groupMentionedMessage",
            "highlyStructuredMessage",
            b"highlyStructuredMessage",
            "imageMessage",
            b"imageMessage",
            "interactiveMessage",
            b"interactiveMessage",
            "interactiveResponseMessage",
            b"interactiveResponseMessage",
            "invoiceMessage",
            b"invoiceMessage",
            "keepInChatMessage",
            b"keepInChatMessage",
            "listMessage",
            b"listMessage",
            "listResponseMessage",
            b"listResponseMessage",
            "liveLocationMessage",
            b"liveLocationMessage",
            "locationMessage",
            b"locationMessage",
            "lottieStickerMessage",
            b"lottieStickerMessage",
            "messageContextInfo",
            b"messageContextInfo",
            "messageHistoryBundle",
            b"messageHistoryBundle",
            "newsletterAdminInviteMessage",
            b"newsletterAdminInviteMessage",
            "orderMessage",
            b"orderMessage",
            "paymentInviteMessage",
            b"paymentInviteMessage",
            "pinInChatMessage",
            b"pinInChatMessage",
            "pollCreationMessage",
            b"pollCreationMessage",
            "pollCreationMessageV2",
            b"pollCreationMessageV2",
            "pollCreationMessageV3",
            b"pollCreationMessageV3",
            "pollUpdateMessage",
            b"pollUpdateMessage",
            "productMessage",
            b"productMessage",
            "protocolMessage",
            b"protocolMessage",
            "ptvMessage",
            b"ptvMessage",
            "reactionMessage",
            b"reactionMessage",
            "requestPaymentMessage",
            b"requestPaymentMessage",
            "requestPhoneNumberMessage",
            b"requestPhoneNumberMessage",
            "scheduledCallCreationMessage",
            b"scheduledCallCreationMessage",
            "scheduledCallEditMessage",
            b"scheduledCallEditMessage",
            "sendPaymentMessage",
            b"sendPaymentMessage",
            "senderKeyDistributionMessage",
            b"senderKeyDistributionMessage",
            "stickerMessage",
            b"stickerMessage",
            "stickerSyncRmrMessage",
            b"stickerSyncRmrMessage",
            "templateButtonReplyMessage",
            b"templateButtonReplyMessage",
            "templateMessage",
            b"templateMessage",
            "videoMessage",
            b"videoMessage",
            "viewOnceMessage",
            b"viewOnceMessage",
            "viewOnceMessageV2",
            b"viewOnceMessageV2",
            "viewOnceMessageV2Extension",
            b"viewOnceMessageV2Extension",
        ],
    ) -> None: ...

global___Message = Message

@typing_extensions.final
class MessageSecretMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VERSION_FIELD_NUMBER: builtins.int
    ENCIV_FIELD_NUMBER: builtins.int
    ENCPAYLOAD_FIELD_NUMBER: builtins.int
    version: builtins.int
    encIv: builtins.bytes
    encPayload: builtins.bytes
    def __init__(
        self,
        *,
        version: builtins.int | None = ...,
        encIv: builtins.bytes | None = ...,
        encPayload: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "encIv", b"encIv", "encPayload", b"encPayload", "version", b"version"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "encIv", b"encIv", "encPayload", b"encPayload", "version", b"version"
        ],
    ) -> None: ...

global___MessageSecretMessage = MessageSecretMessage

@typing_extensions.final
class MessageContextInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DEVICELISTMETADATA_FIELD_NUMBER: builtins.int
    DEVICELISTMETADATAVERSION_FIELD_NUMBER: builtins.int
    MESSAGESECRET_FIELD_NUMBER: builtins.int
    PADDINGBYTES_FIELD_NUMBER: builtins.int
    MESSAGEADDONDURATIONINSECS_FIELD_NUMBER: builtins.int
    BOTMESSAGESECRET_FIELD_NUMBER: builtins.int
    BOTMETADATA_FIELD_NUMBER: builtins.int
    REPORTINGTOKENVERSION_FIELD_NUMBER: builtins.int
    @property
    def deviceListMetadata(self) -> global___DeviceListMetadata: ...
    deviceListMetadataVersion: builtins.int
    messageSecret: builtins.bytes
    paddingBytes: builtins.bytes
    messageAddOnDurationInSecs: builtins.int
    botMessageSecret: builtins.bytes
    @property
    def botMetadata(self) -> global___BotMetadata: ...
    reportingTokenVersion: builtins.int
    def __init__(
        self,
        *,
        deviceListMetadata: global___DeviceListMetadata | None = ...,
        deviceListMetadataVersion: builtins.int | None = ...,
        messageSecret: builtins.bytes | None = ...,
        paddingBytes: builtins.bytes | None = ...,
        messageAddOnDurationInSecs: builtins.int | None = ...,
        botMessageSecret: builtins.bytes | None = ...,
        botMetadata: global___BotMetadata | None = ...,
        reportingTokenVersion: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "botMessageSecret",
            b"botMessageSecret",
            "botMetadata",
            b"botMetadata",
            "deviceListMetadata",
            b"deviceListMetadata",
            "deviceListMetadataVersion",
            b"deviceListMetadataVersion",
            "messageAddOnDurationInSecs",
            b"messageAddOnDurationInSecs",
            "messageSecret",
            b"messageSecret",
            "paddingBytes",
            b"paddingBytes",
            "reportingTokenVersion",
            b"reportingTokenVersion",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "botMessageSecret",
            b"botMessageSecret",
            "botMetadata",
            b"botMetadata",
            "deviceListMetadata",
            b"deviceListMetadata",
            "deviceListMetadataVersion",
            b"deviceListMetadataVersion",
            "messageAddOnDurationInSecs",
            b"messageAddOnDurationInSecs",
            "messageSecret",
            b"messageSecret",
            "paddingBytes",
            b"paddingBytes",
            "reportingTokenVersion",
            b"reportingTokenVersion",
        ],
    ) -> None: ...

global___MessageContextInfo = MessageContextInfo

@typing_extensions.final
class VideoMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _AttributionEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            VideoMessage._Attribution.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        NONE: VideoMessage._Attribution.ValueType  # 0
        GIPHY: VideoMessage._Attribution.ValueType  # 1
        TENOR: VideoMessage._Attribution.ValueType  # 2

    class Attribution(_Attribution, metaclass=_AttributionEnumTypeWrapper): ...
    NONE: VideoMessage.Attribution.ValueType  # 0
    GIPHY: VideoMessage.Attribution.ValueType  # 1
    TENOR: VideoMessage.Attribution.ValueType  # 2

    URL_FIELD_NUMBER: builtins.int
    MIMETYPE_FIELD_NUMBER: builtins.int
    FILESHA256_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    SECONDS_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    CAPTION_FIELD_NUMBER: builtins.int
    GIFPLAYBACK_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    WIDTH_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    INTERACTIVEANNOTATIONS_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    MEDIAKEYTIMESTAMP_FIELD_NUMBER: builtins.int
    JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    STREAMINGSIDECAR_FIELD_NUMBER: builtins.int
    GIFATTRIBUTION_FIELD_NUMBER: builtins.int
    VIEWONCE_FIELD_NUMBER: builtins.int
    THUMBNAILDIRECTPATH_FIELD_NUMBER: builtins.int
    THUMBNAILSHA256_FIELD_NUMBER: builtins.int
    THUMBNAILENCSHA256_FIELD_NUMBER: builtins.int
    STATICURL_FIELD_NUMBER: builtins.int
    ANNOTATIONS_FIELD_NUMBER: builtins.int
    url: builtins.str
    mimetype: builtins.str
    fileSha256: builtins.bytes
    fileLength: builtins.int
    seconds: builtins.int
    mediaKey: builtins.bytes
    caption: builtins.str
    gifPlayback: builtins.bool
    height: builtins.int
    width: builtins.int
    fileEncSha256: builtins.bytes
    @property
    def interactiveAnnotations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___InteractiveAnnotation
    ]: ...
    directPath: builtins.str
    mediaKeyTimestamp: builtins.int
    jpegThumbnail: builtins.bytes
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    streamingSidecar: builtins.bytes
    gifAttribution: global___VideoMessage.Attribution.ValueType
    viewOnce: builtins.bool
    thumbnailDirectPath: builtins.str
    thumbnailSha256: builtins.bytes
    thumbnailEncSha256: builtins.bytes
    staticUrl: builtins.str
    @property
    def annotations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___InteractiveAnnotation
    ]: ...
    def __init__(
        self,
        *,
        url: builtins.str | None = ...,
        mimetype: builtins.str | None = ...,
        fileSha256: builtins.bytes | None = ...,
        fileLength: builtins.int | None = ...,
        seconds: builtins.int | None = ...,
        mediaKey: builtins.bytes | None = ...,
        caption: builtins.str | None = ...,
        gifPlayback: builtins.bool | None = ...,
        height: builtins.int | None = ...,
        width: builtins.int | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        interactiveAnnotations: collections.abc.Iterable[global___InteractiveAnnotation]
        | None = ...,
        directPath: builtins.str | None = ...,
        mediaKeyTimestamp: builtins.int | None = ...,
        jpegThumbnail: builtins.bytes | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        streamingSidecar: builtins.bytes | None = ...,
        gifAttribution: global___VideoMessage.Attribution.ValueType | None = ...,
        viewOnce: builtins.bool | None = ...,
        thumbnailDirectPath: builtins.str | None = ...,
        thumbnailSha256: builtins.bytes | None = ...,
        thumbnailEncSha256: builtins.bytes | None = ...,
        staticUrl: builtins.str | None = ...,
        annotations: collections.abc.Iterable[global___InteractiveAnnotation]
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "gifAttribution",
            b"gifAttribution",
            "gifPlayback",
            b"gifPlayback",
            "height",
            b"height",
            "jpegThumbnail",
            b"jpegThumbnail",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "seconds",
            b"seconds",
            "staticUrl",
            b"staticUrl",
            "streamingSidecar",
            b"streamingSidecar",
            "thumbnailDirectPath",
            b"thumbnailDirectPath",
            "thumbnailEncSha256",
            b"thumbnailEncSha256",
            "thumbnailSha256",
            b"thumbnailSha256",
            "url",
            b"url",
            "viewOnce",
            b"viewOnce",
            "width",
            b"width",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "annotations",
            b"annotations",
            "caption",
            b"caption",
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "gifAttribution",
            b"gifAttribution",
            "gifPlayback",
            b"gifPlayback",
            "height",
            b"height",
            "interactiveAnnotations",
            b"interactiveAnnotations",
            "jpegThumbnail",
            b"jpegThumbnail",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "seconds",
            b"seconds",
            "staticUrl",
            b"staticUrl",
            "streamingSidecar",
            b"streamingSidecar",
            "thumbnailDirectPath",
            b"thumbnailDirectPath",
            "thumbnailEncSha256",
            b"thumbnailEncSha256",
            "thumbnailSha256",
            b"thumbnailSha256",
            "url",
            b"url",
            "viewOnce",
            b"viewOnce",
            "width",
            b"width",
        ],
    ) -> None: ...

global___VideoMessage = VideoMessage

@typing_extensions.final
class TemplateMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class HydratedFourRowTemplate(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        HYDRATEDCONTENTTEXT_FIELD_NUMBER: builtins.int
        HYDRATEDFOOTERTEXT_FIELD_NUMBER: builtins.int
        HYDRATEDBUTTONS_FIELD_NUMBER: builtins.int
        TEMPLATEID_FIELD_NUMBER: builtins.int
        DOCUMENTMESSAGE_FIELD_NUMBER: builtins.int
        HYDRATEDTITLETEXT_FIELD_NUMBER: builtins.int
        IMAGEMESSAGE_FIELD_NUMBER: builtins.int
        VIDEOMESSAGE_FIELD_NUMBER: builtins.int
        LOCATIONMESSAGE_FIELD_NUMBER: builtins.int
        hydratedContentText: builtins.str
        hydratedFooterText: builtins.str
        @property
        def hydratedButtons(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___HydratedTemplateButton
        ]: ...
        templateId: builtins.str
        @property
        def documentMessage(self) -> global___DocumentMessage: ...
        hydratedTitleText: builtins.str
        @property
        def imageMessage(self) -> global___ImageMessage: ...
        @property
        def videoMessage(self) -> global___VideoMessage: ...
        @property
        def locationMessage(self) -> global___LocationMessage: ...
        def __init__(
            self,
            *,
            hydratedContentText: builtins.str | None = ...,
            hydratedFooterText: builtins.str | None = ...,
            hydratedButtons: collections.abc.Iterable[global___HydratedTemplateButton]
            | None = ...,
            templateId: builtins.str | None = ...,
            documentMessage: global___DocumentMessage | None = ...,
            hydratedTitleText: builtins.str | None = ...,
            imageMessage: global___ImageMessage | None = ...,
            videoMessage: global___VideoMessage | None = ...,
            locationMessage: global___LocationMessage | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "documentMessage",
                b"documentMessage",
                "hydratedContentText",
                b"hydratedContentText",
                "hydratedFooterText",
                b"hydratedFooterText",
                "hydratedTitleText",
                b"hydratedTitleText",
                "imageMessage",
                b"imageMessage",
                "locationMessage",
                b"locationMessage",
                "templateId",
                b"templateId",
                "title",
                b"title",
                "videoMessage",
                b"videoMessage",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "documentMessage",
                b"documentMessage",
                "hydratedButtons",
                b"hydratedButtons",
                "hydratedContentText",
                b"hydratedContentText",
                "hydratedFooterText",
                b"hydratedFooterText",
                "hydratedTitleText",
                b"hydratedTitleText",
                "imageMessage",
                b"imageMessage",
                "locationMessage",
                b"locationMessage",
                "templateId",
                b"templateId",
                "title",
                b"title",
                "videoMessage",
                b"videoMessage",
            ],
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing_extensions.Literal["title", b"title"]
        ) -> (
            typing_extensions.Literal[
                "documentMessage",
                "hydratedTitleText",
                "imageMessage",
                "videoMessage",
                "locationMessage",
            ]
            | None
        ): ...

    @typing_extensions.final
    class FourRowTemplate(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CONTENT_FIELD_NUMBER: builtins.int
        FOOTER_FIELD_NUMBER: builtins.int
        BUTTONS_FIELD_NUMBER: builtins.int
        DOCUMENTMESSAGE_FIELD_NUMBER: builtins.int
        HIGHLYSTRUCTUREDMESSAGE_FIELD_NUMBER: builtins.int
        IMAGEMESSAGE_FIELD_NUMBER: builtins.int
        VIDEOMESSAGE_FIELD_NUMBER: builtins.int
        LOCATIONMESSAGE_FIELD_NUMBER: builtins.int
        @property
        def content(self) -> global___HighlyStructuredMessage: ...
        @property
        def footer(self) -> global___HighlyStructuredMessage: ...
        @property
        def buttons(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___TemplateButton
        ]: ...
        @property
        def documentMessage(self) -> global___DocumentMessage: ...
        @property
        def highlyStructuredMessage(self) -> global___HighlyStructuredMessage: ...
        @property
        def imageMessage(self) -> global___ImageMessage: ...
        @property
        def videoMessage(self) -> global___VideoMessage: ...
        @property
        def locationMessage(self) -> global___LocationMessage: ...
        def __init__(
            self,
            *,
            content: global___HighlyStructuredMessage | None = ...,
            footer: global___HighlyStructuredMessage | None = ...,
            buttons: collections.abc.Iterable[global___TemplateButton] | None = ...,
            documentMessage: global___DocumentMessage | None = ...,
            highlyStructuredMessage: global___HighlyStructuredMessage | None = ...,
            imageMessage: global___ImageMessage | None = ...,
            videoMessage: global___VideoMessage | None = ...,
            locationMessage: global___LocationMessage | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "content",
                b"content",
                "documentMessage",
                b"documentMessage",
                "footer",
                b"footer",
                "highlyStructuredMessage",
                b"highlyStructuredMessage",
                "imageMessage",
                b"imageMessage",
                "locationMessage",
                b"locationMessage",
                "title",
                b"title",
                "videoMessage",
                b"videoMessage",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "buttons",
                b"buttons",
                "content",
                b"content",
                "documentMessage",
                b"documentMessage",
                "footer",
                b"footer",
                "highlyStructuredMessage",
                b"highlyStructuredMessage",
                "imageMessage",
                b"imageMessage",
                "locationMessage",
                b"locationMessage",
                "title",
                b"title",
                "videoMessage",
                b"videoMessage",
            ],
        ) -> None: ...
        def WhichOneof(
            self, oneof_group: typing_extensions.Literal["title", b"title"]
        ) -> (
            typing_extensions.Literal[
                "documentMessage",
                "highlyStructuredMessage",
                "imageMessage",
                "videoMessage",
                "locationMessage",
            ]
            | None
        ): ...

    CONTEXTINFO_FIELD_NUMBER: builtins.int
    HYDRATEDTEMPLATE_FIELD_NUMBER: builtins.int
    TEMPLATEID_FIELD_NUMBER: builtins.int
    FOURROWTEMPLATE_FIELD_NUMBER: builtins.int
    HYDRATEDFOURROWTEMPLATE_FIELD_NUMBER: builtins.int
    INTERACTIVEMESSAGETEMPLATE_FIELD_NUMBER: builtins.int
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    @property
    def hydratedTemplate(self) -> global___TemplateMessage.HydratedFourRowTemplate: ...
    templateId: builtins.str
    @property
    def fourRowTemplate(self) -> global___TemplateMessage.FourRowTemplate: ...
    @property
    def hydratedFourRowTemplate(
        self,
    ) -> global___TemplateMessage.HydratedFourRowTemplate: ...
    @property
    def interactiveMessageTemplate(self) -> global___InteractiveMessage: ...
    def __init__(
        self,
        *,
        contextInfo: global___ContextInfo | None = ...,
        hydratedTemplate: global___TemplateMessage.HydratedFourRowTemplate | None = ...,
        templateId: builtins.str | None = ...,
        fourRowTemplate: global___TemplateMessage.FourRowTemplate | None = ...,
        hydratedFourRowTemplate: global___TemplateMessage.HydratedFourRowTemplate
        | None = ...,
        interactiveMessageTemplate: global___InteractiveMessage | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "format",
            b"format",
            "fourRowTemplate",
            b"fourRowTemplate",
            "hydratedFourRowTemplate",
            b"hydratedFourRowTemplate",
            "hydratedTemplate",
            b"hydratedTemplate",
            "interactiveMessageTemplate",
            b"interactiveMessageTemplate",
            "templateId",
            b"templateId",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "format",
            b"format",
            "fourRowTemplate",
            b"fourRowTemplate",
            "hydratedFourRowTemplate",
            b"hydratedFourRowTemplate",
            "hydratedTemplate",
            b"hydratedTemplate",
            "interactiveMessageTemplate",
            b"interactiveMessageTemplate",
            "templateId",
            b"templateId",
        ],
    ) -> None: ...
    def WhichOneof(
        self, oneof_group: typing_extensions.Literal["format", b"format"]
    ) -> (
        typing_extensions.Literal[
            "fourRowTemplate", "hydratedFourRowTemplate", "interactiveMessageTemplate"
        ]
        | None
    ): ...

global___TemplateMessage = TemplateMessage

@typing_extensions.final
class TemplateButtonReplyMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SELECTEDID_FIELD_NUMBER: builtins.int
    SELECTEDDISPLAYTEXT_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    SELECTEDINDEX_FIELD_NUMBER: builtins.int
    SELECTEDCAROUSELCARDINDEX_FIELD_NUMBER: builtins.int
    selectedId: builtins.str
    selectedDisplayText: builtins.str
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    selectedIndex: builtins.int
    selectedCarouselCardIndex: builtins.int
    def __init__(
        self,
        *,
        selectedId: builtins.str | None = ...,
        selectedDisplayText: builtins.str | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        selectedIndex: builtins.int | None = ...,
        selectedCarouselCardIndex: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "selectedCarouselCardIndex",
            b"selectedCarouselCardIndex",
            "selectedDisplayText",
            b"selectedDisplayText",
            "selectedId",
            b"selectedId",
            "selectedIndex",
            b"selectedIndex",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "selectedCarouselCardIndex",
            b"selectedCarouselCardIndex",
            "selectedDisplayText",
            b"selectedDisplayText",
            "selectedId",
            b"selectedId",
            "selectedIndex",
            b"selectedIndex",
        ],
    ) -> None: ...

global___TemplateButtonReplyMessage = TemplateButtonReplyMessage

@typing_extensions.final
class StickerSyncRMRMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FILEHASH_FIELD_NUMBER: builtins.int
    RMRSOURCE_FIELD_NUMBER: builtins.int
    REQUESTTIMESTAMP_FIELD_NUMBER: builtins.int
    @property
    def filehash(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    rmrSource: builtins.str
    requestTimestamp: builtins.int
    def __init__(
        self,
        *,
        filehash: collections.abc.Iterable[builtins.str] | None = ...,
        rmrSource: builtins.str | None = ...,
        requestTimestamp: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "requestTimestamp", b"requestTimestamp", "rmrSource", b"rmrSource"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "filehash",
            b"filehash",
            "requestTimestamp",
            b"requestTimestamp",
            "rmrSource",
            b"rmrSource",
        ],
    ) -> None: ...

global___StickerSyncRMRMessage = StickerSyncRMRMessage

@typing_extensions.final
class StickerMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    URL_FIELD_NUMBER: builtins.int
    FILESHA256_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    MIMETYPE_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    WIDTH_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    MEDIAKEYTIMESTAMP_FIELD_NUMBER: builtins.int
    FIRSTFRAMELENGTH_FIELD_NUMBER: builtins.int
    FIRSTFRAMESIDECAR_FIELD_NUMBER: builtins.int
    ISANIMATED_FIELD_NUMBER: builtins.int
    PNGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    STICKERSENTTS_FIELD_NUMBER: builtins.int
    ISAVATAR_FIELD_NUMBER: builtins.int
    ISAISTICKER_FIELD_NUMBER: builtins.int
    ISLOTTIE_FIELD_NUMBER: builtins.int
    url: builtins.str
    fileSha256: builtins.bytes
    fileEncSha256: builtins.bytes
    mediaKey: builtins.bytes
    mimetype: builtins.str
    height: builtins.int
    width: builtins.int
    directPath: builtins.str
    fileLength: builtins.int
    mediaKeyTimestamp: builtins.int
    firstFrameLength: builtins.int
    firstFrameSidecar: builtins.bytes
    isAnimated: builtins.bool
    pngThumbnail: builtins.bytes
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    stickerSentTs: builtins.int
    isAvatar: builtins.bool
    isAiSticker: builtins.bool
    isLottie: builtins.bool
    def __init__(
        self,
        *,
        url: builtins.str | None = ...,
        fileSha256: builtins.bytes | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        mediaKey: builtins.bytes | None = ...,
        mimetype: builtins.str | None = ...,
        height: builtins.int | None = ...,
        width: builtins.int | None = ...,
        directPath: builtins.str | None = ...,
        fileLength: builtins.int | None = ...,
        mediaKeyTimestamp: builtins.int | None = ...,
        firstFrameLength: builtins.int | None = ...,
        firstFrameSidecar: builtins.bytes | None = ...,
        isAnimated: builtins.bool | None = ...,
        pngThumbnail: builtins.bytes | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        stickerSentTs: builtins.int | None = ...,
        isAvatar: builtins.bool | None = ...,
        isAiSticker: builtins.bool | None = ...,
        isLottie: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "firstFrameLength",
            b"firstFrameLength",
            "firstFrameSidecar",
            b"firstFrameSidecar",
            "height",
            b"height",
            "isAiSticker",
            b"isAiSticker",
            "isAnimated",
            b"isAnimated",
            "isAvatar",
            b"isAvatar",
            "isLottie",
            b"isLottie",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "pngThumbnail",
            b"pngThumbnail",
            "stickerSentTs",
            b"stickerSentTs",
            "url",
            b"url",
            "width",
            b"width",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "firstFrameLength",
            b"firstFrameLength",
            "firstFrameSidecar",
            b"firstFrameSidecar",
            "height",
            b"height",
            "isAiSticker",
            b"isAiSticker",
            "isAnimated",
            b"isAnimated",
            "isAvatar",
            b"isAvatar",
            "isLottie",
            b"isLottie",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "pngThumbnail",
            b"pngThumbnail",
            "stickerSentTs",
            b"stickerSentTs",
            "url",
            b"url",
            "width",
            b"width",
        ],
    ) -> None: ...

global___StickerMessage = StickerMessage

@typing_extensions.final
class SenderKeyDistributionMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    GROUPID_FIELD_NUMBER: builtins.int
    AXOLOTLSENDERKEYDISTRIBUTIONMESSAGE_FIELD_NUMBER: builtins.int
    groupId: builtins.str
    axolotlSenderKeyDistributionMessage: builtins.bytes
    def __init__(
        self,
        *,
        groupId: builtins.str | None = ...,
        axolotlSenderKeyDistributionMessage: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "axolotlSenderKeyDistributionMessage",
            b"axolotlSenderKeyDistributionMessage",
            "groupId",
            b"groupId",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "axolotlSenderKeyDistributionMessage",
            b"axolotlSenderKeyDistributionMessage",
            "groupId",
            b"groupId",
        ],
    ) -> None: ...

global___SenderKeyDistributionMessage = SenderKeyDistributionMessage

@typing_extensions.final
class SendPaymentMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NOTEMESSAGE_FIELD_NUMBER: builtins.int
    REQUESTMESSAGEKEY_FIELD_NUMBER: builtins.int
    BACKGROUND_FIELD_NUMBER: builtins.int
    @property
    def noteMessage(self) -> global___Message: ...
    @property
    def requestMessageKey(self) -> global___MessageKey: ...
    @property
    def background(self) -> global___PaymentBackground: ...
    def __init__(
        self,
        *,
        noteMessage: global___Message | None = ...,
        requestMessageKey: global___MessageKey | None = ...,
        background: global___PaymentBackground | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "background",
            b"background",
            "noteMessage",
            b"noteMessage",
            "requestMessageKey",
            b"requestMessageKey",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "background",
            b"background",
            "noteMessage",
            b"noteMessage",
            "requestMessageKey",
            b"requestMessageKey",
        ],
    ) -> None: ...

global___SendPaymentMessage = SendPaymentMessage

@typing_extensions.final
class ScheduledCallEditMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _EditTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ScheduledCallEditMessage._EditType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: ScheduledCallEditMessage._EditType.ValueType  # 0
        CANCEL: ScheduledCallEditMessage._EditType.ValueType  # 1

    class EditType(_EditType, metaclass=_EditTypeEnumTypeWrapper): ...
    UNKNOWN: ScheduledCallEditMessage.EditType.ValueType  # 0
    CANCEL: ScheduledCallEditMessage.EditType.ValueType  # 1

    KEY_FIELD_NUMBER: builtins.int
    EDITTYPE_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    editType: global___ScheduledCallEditMessage.EditType.ValueType
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        editType: global___ScheduledCallEditMessage.EditType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["editType", b"editType", "key", b"key"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["editType", b"editType", "key", b"key"],
    ) -> None: ...

global___ScheduledCallEditMessage = ScheduledCallEditMessage

@typing_extensions.final
class ScheduledCallCreationMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _CallTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ScheduledCallCreationMessage._CallType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: ScheduledCallCreationMessage._CallType.ValueType  # 0
        VOICE: ScheduledCallCreationMessage._CallType.ValueType  # 1
        VIDEO: ScheduledCallCreationMessage._CallType.ValueType  # 2

    class CallType(_CallType, metaclass=_CallTypeEnumTypeWrapper): ...
    UNKNOWN: ScheduledCallCreationMessage.CallType.ValueType  # 0
    VOICE: ScheduledCallCreationMessage.CallType.ValueType  # 1
    VIDEO: ScheduledCallCreationMessage.CallType.ValueType  # 2

    SCHEDULEDTIMESTAMPMS_FIELD_NUMBER: builtins.int
    CALLTYPE_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    scheduledTimestampMs: builtins.int
    callType: global___ScheduledCallCreationMessage.CallType.ValueType
    title: builtins.str
    def __init__(
        self,
        *,
        scheduledTimestampMs: builtins.int | None = ...,
        callType: global___ScheduledCallCreationMessage.CallType.ValueType | None = ...,
        title: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "callType",
            b"callType",
            "scheduledTimestampMs",
            b"scheduledTimestampMs",
            "title",
            b"title",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "callType",
            b"callType",
            "scheduledTimestampMs",
            b"scheduledTimestampMs",
            "title",
            b"title",
        ],
    ) -> None: ...

global___ScheduledCallCreationMessage = ScheduledCallCreationMessage

@typing_extensions.final
class RequestWelcomeMessageMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _LocalChatStateEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            RequestWelcomeMessageMetadata._LocalChatState.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        EMPTY: RequestWelcomeMessageMetadata._LocalChatState.ValueType  # 0
        NON_EMPTY: RequestWelcomeMessageMetadata._LocalChatState.ValueType  # 1

    class LocalChatState(_LocalChatState, metaclass=_LocalChatStateEnumTypeWrapper): ...
    EMPTY: RequestWelcomeMessageMetadata.LocalChatState.ValueType  # 0
    NON_EMPTY: RequestWelcomeMessageMetadata.LocalChatState.ValueType  # 1

    LOCALCHATSTATE_FIELD_NUMBER: builtins.int
    localChatState: global___RequestWelcomeMessageMetadata.LocalChatState.ValueType
    def __init__(
        self,
        *,
        localChatState: global___RequestWelcomeMessageMetadata.LocalChatState.ValueType
        | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["localChatState", b"localChatState"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["localChatState", b"localChatState"]
    ) -> None: ...

global___RequestWelcomeMessageMetadata = RequestWelcomeMessageMetadata

@typing_extensions.final
class RequestPhoneNumberMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___RequestPhoneNumberMessage = RequestPhoneNumberMessage

@typing_extensions.final
class RequestPaymentMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NOTEMESSAGE_FIELD_NUMBER: builtins.int
    CURRENCYCODEISO4217_FIELD_NUMBER: builtins.int
    AMOUNT1000_FIELD_NUMBER: builtins.int
    REQUESTFROM_FIELD_NUMBER: builtins.int
    EXPIRYTIMESTAMP_FIELD_NUMBER: builtins.int
    AMOUNT_FIELD_NUMBER: builtins.int
    BACKGROUND_FIELD_NUMBER: builtins.int
    @property
    def noteMessage(self) -> global___Message: ...
    currencyCodeIso4217: builtins.str
    amount1000: builtins.int
    requestFrom: builtins.str
    expiryTimestamp: builtins.int
    @property
    def amount(self) -> global___Money: ...
    @property
    def background(self) -> global___PaymentBackground: ...
    def __init__(
        self,
        *,
        noteMessage: global___Message | None = ...,
        currencyCodeIso4217: builtins.str | None = ...,
        amount1000: builtins.int | None = ...,
        requestFrom: builtins.str | None = ...,
        expiryTimestamp: builtins.int | None = ...,
        amount: global___Money | None = ...,
        background: global___PaymentBackground | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "amount",
            b"amount",
            "amount1000",
            b"amount1000",
            "background",
            b"background",
            "currencyCodeIso4217",
            b"currencyCodeIso4217",
            "expiryTimestamp",
            b"expiryTimestamp",
            "noteMessage",
            b"noteMessage",
            "requestFrom",
            b"requestFrom",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "amount",
            b"amount",
            "amount1000",
            b"amount1000",
            "background",
            b"background",
            "currencyCodeIso4217",
            b"currencyCodeIso4217",
            "expiryTimestamp",
            b"expiryTimestamp",
            "noteMessage",
            b"noteMessage",
            "requestFrom",
            b"requestFrom",
        ],
    ) -> None: ...

global___RequestPaymentMessage = RequestPaymentMessage

@typing_extensions.final
class ReactionMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_FIELD_NUMBER: builtins.int
    TEXT_FIELD_NUMBER: builtins.int
    GROUPINGKEY_FIELD_NUMBER: builtins.int
    SENDERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    text: builtins.str
    groupingKey: builtins.str
    senderTimestampMs: builtins.int
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        text: builtins.str | None = ...,
        groupingKey: builtins.str | None = ...,
        senderTimestampMs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "groupingKey",
            b"groupingKey",
            "key",
            b"key",
            "senderTimestampMs",
            b"senderTimestampMs",
            "text",
            b"text",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "groupingKey",
            b"groupingKey",
            "key",
            b"key",
            "senderTimestampMs",
            b"senderTimestampMs",
            "text",
            b"text",
        ],
    ) -> None: ...

global___ReactionMessage = ReactionMessage

@typing_extensions.final
class ProtocolMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ProtocolMessage._Type.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        REVOKE: ProtocolMessage._Type.ValueType  # 0
        EPHEMERAL_SETTING: ProtocolMessage._Type.ValueType  # 3
        EPHEMERAL_SYNC_RESPONSE: ProtocolMessage._Type.ValueType  # 4
        HISTORY_SYNC_NOTIFICATION: ProtocolMessage._Type.ValueType  # 5
        APP_STATE_SYNC_KEY_SHARE: ProtocolMessage._Type.ValueType  # 6
        APP_STATE_SYNC_KEY_REQUEST: ProtocolMessage._Type.ValueType  # 7
        MSG_FANOUT_BACKFILL_REQUEST: ProtocolMessage._Type.ValueType  # 8
        INITIAL_SECURITY_NOTIFICATION_SETTING_SYNC: ProtocolMessage._Type.ValueType  # 9
        APP_STATE_FATAL_EXCEPTION_NOTIFICATION: ProtocolMessage._Type.ValueType  # 10
        SHARE_PHONE_NUMBER: ProtocolMessage._Type.ValueType  # 11
        MESSAGE_EDIT: ProtocolMessage._Type.ValueType  # 14
        PEER_DATA_OPERATION_REQUEST_MESSAGE: ProtocolMessage._Type.ValueType  # 16
        PEER_DATA_OPERATION_REQUEST_RESPONSE_MESSAGE: ProtocolMessage._Type.ValueType  # 17
        REQUEST_WELCOME_MESSAGE: ProtocolMessage._Type.ValueType  # 18
        BOT_FEEDBACK_MESSAGE: ProtocolMessage._Type.ValueType  # 19

    class Type(_Type, metaclass=_TypeEnumTypeWrapper): ...
    REVOKE: ProtocolMessage.Type.ValueType  # 0
    EPHEMERAL_SETTING: ProtocolMessage.Type.ValueType  # 3
    EPHEMERAL_SYNC_RESPONSE: ProtocolMessage.Type.ValueType  # 4
    HISTORY_SYNC_NOTIFICATION: ProtocolMessage.Type.ValueType  # 5
    APP_STATE_SYNC_KEY_SHARE: ProtocolMessage.Type.ValueType  # 6
    APP_STATE_SYNC_KEY_REQUEST: ProtocolMessage.Type.ValueType  # 7
    MSG_FANOUT_BACKFILL_REQUEST: ProtocolMessage.Type.ValueType  # 8
    INITIAL_SECURITY_NOTIFICATION_SETTING_SYNC: ProtocolMessage.Type.ValueType  # 9
    APP_STATE_FATAL_EXCEPTION_NOTIFICATION: ProtocolMessage.Type.ValueType  # 10
    SHARE_PHONE_NUMBER: ProtocolMessage.Type.ValueType  # 11
    MESSAGE_EDIT: ProtocolMessage.Type.ValueType  # 14
    PEER_DATA_OPERATION_REQUEST_MESSAGE: ProtocolMessage.Type.ValueType  # 16
    PEER_DATA_OPERATION_REQUEST_RESPONSE_MESSAGE: ProtocolMessage.Type.ValueType  # 17
    REQUEST_WELCOME_MESSAGE: ProtocolMessage.Type.ValueType  # 18
    BOT_FEEDBACK_MESSAGE: ProtocolMessage.Type.ValueType  # 19

    KEY_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    EPHEMERALEXPIRATION_FIELD_NUMBER: builtins.int
    EPHEMERALSETTINGTIMESTAMP_FIELD_NUMBER: builtins.int
    HISTORYSYNCNOTIFICATION_FIELD_NUMBER: builtins.int
    APPSTATESYNCKEYSHARE_FIELD_NUMBER: builtins.int
    APPSTATESYNCKEYREQUEST_FIELD_NUMBER: builtins.int
    INITIALSECURITYNOTIFICATIONSETTINGSYNC_FIELD_NUMBER: builtins.int
    APPSTATEFATALEXCEPTIONNOTIFICATION_FIELD_NUMBER: builtins.int
    DISAPPEARINGMODE_FIELD_NUMBER: builtins.int
    EDITEDMESSAGE_FIELD_NUMBER: builtins.int
    TIMESTAMPMS_FIELD_NUMBER: builtins.int
    PEERDATAOPERATIONREQUESTMESSAGE_FIELD_NUMBER: builtins.int
    PEERDATAOPERATIONREQUESTRESPONSEMESSAGE_FIELD_NUMBER: builtins.int
    BOTFEEDBACKMESSAGE_FIELD_NUMBER: builtins.int
    INVOKERJID_FIELD_NUMBER: builtins.int
    REQUESTWELCOMEMESSAGEMETADATA_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    type: global___ProtocolMessage.Type.ValueType
    ephemeralExpiration: builtins.int
    ephemeralSettingTimestamp: builtins.int
    @property
    def historySyncNotification(self) -> global___HistorySyncNotification: ...
    @property
    def appStateSyncKeyShare(self) -> global___AppStateSyncKeyShare: ...
    @property
    def appStateSyncKeyRequest(self) -> global___AppStateSyncKeyRequest: ...
    @property
    def initialSecurityNotificationSettingSync(
        self,
    ) -> global___InitialSecurityNotificationSettingSync: ...
    @property
    def appStateFatalExceptionNotification(
        self,
    ) -> global___AppStateFatalExceptionNotification: ...
    @property
    def disappearingMode(self) -> global___DisappearingMode: ...
    @property
    def editedMessage(self) -> global___Message: ...
    timestampMs: builtins.int
    @property
    def peerDataOperationRequestMessage(
        self,
    ) -> global___PeerDataOperationRequestMessage: ...
    @property
    def peerDataOperationRequestResponseMessage(
        self,
    ) -> global___PeerDataOperationRequestResponseMessage: ...
    @property
    def botFeedbackMessage(self) -> global___BotFeedbackMessage: ...
    invokerJid: builtins.str
    @property
    def requestWelcomeMessageMetadata(
        self,
    ) -> global___RequestWelcomeMessageMetadata: ...
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        type: global___ProtocolMessage.Type.ValueType | None = ...,
        ephemeralExpiration: builtins.int | None = ...,
        ephemeralSettingTimestamp: builtins.int | None = ...,
        historySyncNotification: global___HistorySyncNotification | None = ...,
        appStateSyncKeyShare: global___AppStateSyncKeyShare | None = ...,
        appStateSyncKeyRequest: global___AppStateSyncKeyRequest | None = ...,
        initialSecurityNotificationSettingSync: global___InitialSecurityNotificationSettingSync
        | None = ...,
        appStateFatalExceptionNotification: global___AppStateFatalExceptionNotification
        | None = ...,
        disappearingMode: global___DisappearingMode | None = ...,
        editedMessage: global___Message | None = ...,
        timestampMs: builtins.int | None = ...,
        peerDataOperationRequestMessage: global___PeerDataOperationRequestMessage
        | None = ...,
        peerDataOperationRequestResponseMessage: global___PeerDataOperationRequestResponseMessage
        | None = ...,
        botFeedbackMessage: global___BotFeedbackMessage | None = ...,
        invokerJid: builtins.str | None = ...,
        requestWelcomeMessageMetadata: global___RequestWelcomeMessageMetadata
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "appStateFatalExceptionNotification",
            b"appStateFatalExceptionNotification",
            "appStateSyncKeyRequest",
            b"appStateSyncKeyRequest",
            "appStateSyncKeyShare",
            b"appStateSyncKeyShare",
            "botFeedbackMessage",
            b"botFeedbackMessage",
            "disappearingMode",
            b"disappearingMode",
            "editedMessage",
            b"editedMessage",
            "ephemeralExpiration",
            b"ephemeralExpiration",
            "ephemeralSettingTimestamp",
            b"ephemeralSettingTimestamp",
            "historySyncNotification",
            b"historySyncNotification",
            "initialSecurityNotificationSettingSync",
            b"initialSecurityNotificationSettingSync",
            "invokerJid",
            b"invokerJid",
            "key",
            b"key",
            "peerDataOperationRequestMessage",
            b"peerDataOperationRequestMessage",
            "peerDataOperationRequestResponseMessage",
            b"peerDataOperationRequestResponseMessage",
            "requestWelcomeMessageMetadata",
            b"requestWelcomeMessageMetadata",
            "timestampMs",
            b"timestampMs",
            "type",
            b"type",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "appStateFatalExceptionNotification",
            b"appStateFatalExceptionNotification",
            "appStateSyncKeyRequest",
            b"appStateSyncKeyRequest",
            "appStateSyncKeyShare",
            b"appStateSyncKeyShare",
            "botFeedbackMessage",
            b"botFeedbackMessage",
            "disappearingMode",
            b"disappearingMode",
            "editedMessage",
            b"editedMessage",
            "ephemeralExpiration",
            b"ephemeralExpiration",
            "ephemeralSettingTimestamp",
            b"ephemeralSettingTimestamp",
            "historySyncNotification",
            b"historySyncNotification",
            "initialSecurityNotificationSettingSync",
            b"initialSecurityNotificationSettingSync",
            "invokerJid",
            b"invokerJid",
            "key",
            b"key",
            "peerDataOperationRequestMessage",
            b"peerDataOperationRequestMessage",
            "peerDataOperationRequestResponseMessage",
            b"peerDataOperationRequestResponseMessage",
            "requestWelcomeMessageMetadata",
            b"requestWelcomeMessageMetadata",
            "timestampMs",
            b"timestampMs",
            "type",
            b"type",
        ],
    ) -> None: ...

global___ProtocolMessage = ProtocolMessage

@typing_extensions.final
class ProductMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class ProductSnapshot(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        PRODUCTIMAGE_FIELD_NUMBER: builtins.int
        PRODUCTID_FIELD_NUMBER: builtins.int
        TITLE_FIELD_NUMBER: builtins.int
        DESCRIPTION_FIELD_NUMBER: builtins.int
        CURRENCYCODE_FIELD_NUMBER: builtins.int
        PRICEAMOUNT1000_FIELD_NUMBER: builtins.int
        RETAILERID_FIELD_NUMBER: builtins.int
        URL_FIELD_NUMBER: builtins.int
        PRODUCTIMAGECOUNT_FIELD_NUMBER: builtins.int
        FIRSTIMAGEID_FIELD_NUMBER: builtins.int
        SALEPRICEAMOUNT1000_FIELD_NUMBER: builtins.int
        @property
        def productImage(self) -> global___ImageMessage: ...
        productId: builtins.str
        title: builtins.str
        description: builtins.str
        currencyCode: builtins.str
        priceAmount1000: builtins.int
        retailerId: builtins.str
        url: builtins.str
        productImageCount: builtins.int
        firstImageId: builtins.str
        salePriceAmount1000: builtins.int
        def __init__(
            self,
            *,
            productImage: global___ImageMessage | None = ...,
            productId: builtins.str | None = ...,
            title: builtins.str | None = ...,
            description: builtins.str | None = ...,
            currencyCode: builtins.str | None = ...,
            priceAmount1000: builtins.int | None = ...,
            retailerId: builtins.str | None = ...,
            url: builtins.str | None = ...,
            productImageCount: builtins.int | None = ...,
            firstImageId: builtins.str | None = ...,
            salePriceAmount1000: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "currencyCode",
                b"currencyCode",
                "description",
                b"description",
                "firstImageId",
                b"firstImageId",
                "priceAmount1000",
                b"priceAmount1000",
                "productId",
                b"productId",
                "productImage",
                b"productImage",
                "productImageCount",
                b"productImageCount",
                "retailerId",
                b"retailerId",
                "salePriceAmount1000",
                b"salePriceAmount1000",
                "title",
                b"title",
                "url",
                b"url",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "currencyCode",
                b"currencyCode",
                "description",
                b"description",
                "firstImageId",
                b"firstImageId",
                "priceAmount1000",
                b"priceAmount1000",
                "productId",
                b"productId",
                "productImage",
                b"productImage",
                "productImageCount",
                b"productImageCount",
                "retailerId",
                b"retailerId",
                "salePriceAmount1000",
                b"salePriceAmount1000",
                "title",
                b"title",
                "url",
                b"url",
            ],
        ) -> None: ...

    @typing_extensions.final
    class CatalogSnapshot(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CATALOGIMAGE_FIELD_NUMBER: builtins.int
        TITLE_FIELD_NUMBER: builtins.int
        DESCRIPTION_FIELD_NUMBER: builtins.int
        @property
        def catalogImage(self) -> global___ImageMessage: ...
        title: builtins.str
        description: builtins.str
        def __init__(
            self,
            *,
            catalogImage: global___ImageMessage | None = ...,
            title: builtins.str | None = ...,
            description: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "catalogImage",
                b"catalogImage",
                "description",
                b"description",
                "title",
                b"title",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "catalogImage",
                b"catalogImage",
                "description",
                b"description",
                "title",
                b"title",
            ],
        ) -> None: ...

    PRODUCT_FIELD_NUMBER: builtins.int
    BUSINESSOWNERJID_FIELD_NUMBER: builtins.int
    CATALOG_FIELD_NUMBER: builtins.int
    BODY_FIELD_NUMBER: builtins.int
    FOOTER_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    @property
    def product(self) -> global___ProductMessage.ProductSnapshot: ...
    businessOwnerJid: builtins.str
    @property
    def catalog(self) -> global___ProductMessage.CatalogSnapshot: ...
    body: builtins.str
    footer: builtins.str
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    def __init__(
        self,
        *,
        product: global___ProductMessage.ProductSnapshot | None = ...,
        businessOwnerJid: builtins.str | None = ...,
        catalog: global___ProductMessage.CatalogSnapshot | None = ...,
        body: builtins.str | None = ...,
        footer: builtins.str | None = ...,
        contextInfo: global___ContextInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "body",
            b"body",
            "businessOwnerJid",
            b"businessOwnerJid",
            "catalog",
            b"catalog",
            "contextInfo",
            b"contextInfo",
            "footer",
            b"footer",
            "product",
            b"product",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "body",
            b"body",
            "businessOwnerJid",
            b"businessOwnerJid",
            "catalog",
            b"catalog",
            "contextInfo",
            b"contextInfo",
            "footer",
            b"footer",
            "product",
            b"product",
        ],
    ) -> None: ...

global___ProductMessage = ProductMessage

@typing_extensions.final
class PollVoteMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___PollVoteMessage = PollVoteMessage

@typing_extensions.final
class PollUpdateMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    POLLCREATIONMESSAGEKEY_FIELD_NUMBER: builtins.int
    VOTE_FIELD_NUMBER: builtins.int
    METADATA_FIELD_NUMBER: builtins.int
    SENDERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    @property
    def pollCreationMessageKey(self) -> global___MessageKey: ...
    @property
    def vote(self) -> global___PollEncValue: ...
    @property
    def metadata(self) -> global___PollUpdateMessageMetadata: ...
    senderTimestampMs: builtins.int
    def __init__(
        self,
        *,
        pollCreationMessageKey: global___MessageKey | None = ...,
        vote: global___PollEncValue | None = ...,
        metadata: global___PollUpdateMessageMetadata | None = ...,
        senderTimestampMs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "metadata",
            b"metadata",
            "pollCreationMessageKey",
            b"pollCreationMessageKey",
            "senderTimestampMs",
            b"senderTimestampMs",
            "vote",
            b"vote",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "metadata",
            b"metadata",
            "pollCreationMessageKey",
            b"pollCreationMessageKey",
            "senderTimestampMs",
            b"senderTimestampMs",
            "vote",
            b"vote",
        ],
    ) -> None: ...

global___PollUpdateMessage = PollUpdateMessage

@typing_extensions.final
class PollUpdateMessageMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___PollUpdateMessageMetadata = PollUpdateMessageMetadata

@typing_extensions.final
class PollEncValue(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENCPAYLOAD_FIELD_NUMBER: builtins.int
    ENCIV_FIELD_NUMBER: builtins.int
    encPayload: builtins.bytes
    encIv: builtins.bytes
    def __init__(
        self,
        *,
        encPayload: builtins.bytes | None = ...,
        encIv: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "encIv", b"encIv", "encPayload", b"encPayload"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "encIv", b"encIv", "encPayload", b"encPayload"
        ],
    ) -> None: ...

global___PollEncValue = PollEncValue

@typing_extensions.final
class PollCreationMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class Option(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        OPTIONNAME_FIELD_NUMBER: builtins.int
        optionName: builtins.str
        def __init__(
            self,
            *,
            optionName: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing_extensions.Literal["optionName", b"optionName"]
        ) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing_extensions.Literal["optionName", b"optionName"]
        ) -> None: ...

    ENCKEY_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    OPTIONS_FIELD_NUMBER: builtins.int
    SELECTABLEOPTIONSCOUNT_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    encKey: builtins.bytes
    name: builtins.str
    @property
    def options(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PollCreationMessage.Option
    ]: ...
    selectableOptionsCount: builtins.int
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    def __init__(
        self,
        *,
        encKey: builtins.bytes | None = ...,
        name: builtins.str | None = ...,
        options: collections.abc.Iterable[global___PollCreationMessage.Option]
        | None = ...,
        selectableOptionsCount: builtins.int | None = ...,
        contextInfo: global___ContextInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "encKey",
            b"encKey",
            "name",
            b"name",
            "selectableOptionsCount",
            b"selectableOptionsCount",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "encKey",
            b"encKey",
            "name",
            b"name",
            "options",
            b"options",
            "selectableOptionsCount",
            b"selectableOptionsCount",
        ],
    ) -> None: ...

global___PollCreationMessage = PollCreationMessage

@typing_extensions.final
class PinInChatMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PinInChatMessage._Type.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN_TYPE: PinInChatMessage._Type.ValueType  # 0
        PIN_FOR_ALL: PinInChatMessage._Type.ValueType  # 1
        UNPIN_FOR_ALL: PinInChatMessage._Type.ValueType  # 2

    class Type(_Type, metaclass=_TypeEnumTypeWrapper): ...
    UNKNOWN_TYPE: PinInChatMessage.Type.ValueType  # 0
    PIN_FOR_ALL: PinInChatMessage.Type.ValueType  # 1
    UNPIN_FOR_ALL: PinInChatMessage.Type.ValueType  # 2

    KEY_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    SENDERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    type: global___PinInChatMessage.Type.ValueType
    senderTimestampMs: builtins.int
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        type: global___PinInChatMessage.Type.ValueType | None = ...,
        senderTimestampMs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "key", b"key", "senderTimestampMs", b"senderTimestampMs", "type", b"type"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "key", b"key", "senderTimestampMs", b"senderTimestampMs", "type", b"type"
        ],
    ) -> None: ...

global___PinInChatMessage = PinInChatMessage

@typing_extensions.final
class PeerDataOperationRequestResponseMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class PeerDataOperationResult(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing_extensions.final
        class PlaceholderMessageResendResponse(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            WEBMESSAGEINFOBYTES_FIELD_NUMBER: builtins.int
            webMessageInfoBytes: builtins.bytes
            def __init__(
                self,
                *,
                webMessageInfoBytes: builtins.bytes | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "webMessageInfoBytes", b"webMessageInfoBytes"
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "webMessageInfoBytes", b"webMessageInfoBytes"
                ],
            ) -> None: ...

        @typing_extensions.final
        class LinkPreviewResponse(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            @typing_extensions.final
            class LinkPreviewHighQualityThumbnail(google.protobuf.message.Message):
                DESCRIPTOR: google.protobuf.descriptor.Descriptor

                DIRECTPATH_FIELD_NUMBER: builtins.int
                THUMBHASH_FIELD_NUMBER: builtins.int
                ENCTHUMBHASH_FIELD_NUMBER: builtins.int
                MEDIAKEY_FIELD_NUMBER: builtins.int
                MEDIAKEYTIMESTAMPMS_FIELD_NUMBER: builtins.int
                THUMBWIDTH_FIELD_NUMBER: builtins.int
                THUMBHEIGHT_FIELD_NUMBER: builtins.int
                directPath: builtins.str
                thumbHash: builtins.str
                encThumbHash: builtins.str
                mediaKey: builtins.bytes
                mediaKeyTimestampMs: builtins.int
                thumbWidth: builtins.int
                thumbHeight: builtins.int
                def __init__(
                    self,
                    *,
                    directPath: builtins.str | None = ...,
                    thumbHash: builtins.str | None = ...,
                    encThumbHash: builtins.str | None = ...,
                    mediaKey: builtins.bytes | None = ...,
                    mediaKeyTimestampMs: builtins.int | None = ...,
                    thumbWidth: builtins.int | None = ...,
                    thumbHeight: builtins.int | None = ...,
                ) -> None: ...
                def HasField(
                    self,
                    field_name: typing_extensions.Literal[
                        "directPath",
                        b"directPath",
                        "encThumbHash",
                        b"encThumbHash",
                        "mediaKey",
                        b"mediaKey",
                        "mediaKeyTimestampMs",
                        b"mediaKeyTimestampMs",
                        "thumbHash",
                        b"thumbHash",
                        "thumbHeight",
                        b"thumbHeight",
                        "thumbWidth",
                        b"thumbWidth",
                    ],
                ) -> builtins.bool: ...
                def ClearField(
                    self,
                    field_name: typing_extensions.Literal[
                        "directPath",
                        b"directPath",
                        "encThumbHash",
                        b"encThumbHash",
                        "mediaKey",
                        b"mediaKey",
                        "mediaKeyTimestampMs",
                        b"mediaKeyTimestampMs",
                        "thumbHash",
                        b"thumbHash",
                        "thumbHeight",
                        b"thumbHeight",
                        "thumbWidth",
                        b"thumbWidth",
                    ],
                ) -> None: ...

            URL_FIELD_NUMBER: builtins.int
            TITLE_FIELD_NUMBER: builtins.int
            DESCRIPTION_FIELD_NUMBER: builtins.int
            THUMBDATA_FIELD_NUMBER: builtins.int
            CANONICALURL_FIELD_NUMBER: builtins.int
            MATCHTEXT_FIELD_NUMBER: builtins.int
            PREVIEWTYPE_FIELD_NUMBER: builtins.int
            HQTHUMBNAIL_FIELD_NUMBER: builtins.int
            url: builtins.str
            title: builtins.str
            description: builtins.str
            thumbData: builtins.bytes
            canonicalUrl: builtins.str
            matchText: builtins.str
            previewType: builtins.str
            @property
            def hqThumbnail(
                self,
            ) -> global___PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.LinkPreviewHighQualityThumbnail: ...
            def __init__(
                self,
                *,
                url: builtins.str | None = ...,
                title: builtins.str | None = ...,
                description: builtins.str | None = ...,
                thumbData: builtins.bytes | None = ...,
                canonicalUrl: builtins.str | None = ...,
                matchText: builtins.str | None = ...,
                previewType: builtins.str | None = ...,
                hqThumbnail: global___PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse.LinkPreviewHighQualityThumbnail
                | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "canonicalUrl",
                    b"canonicalUrl",
                    "description",
                    b"description",
                    "hqThumbnail",
                    b"hqThumbnail",
                    "matchText",
                    b"matchText",
                    "previewType",
                    b"previewType",
                    "thumbData",
                    b"thumbData",
                    "title",
                    b"title",
                    "url",
                    b"url",
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "canonicalUrl",
                    b"canonicalUrl",
                    "description",
                    b"description",
                    "hqThumbnail",
                    b"hqThumbnail",
                    "matchText",
                    b"matchText",
                    "previewType",
                    b"previewType",
                    "thumbData",
                    b"thumbData",
                    "title",
                    b"title",
                    "url",
                    b"url",
                ],
            ) -> None: ...

        MEDIAUPLOADRESULT_FIELD_NUMBER: builtins.int
        STICKERMESSAGE_FIELD_NUMBER: builtins.int
        LINKPREVIEWRESPONSE_FIELD_NUMBER: builtins.int
        PLACEHOLDERMESSAGERESENDRESPONSE_FIELD_NUMBER: builtins.int
        mediaUploadResult: global___MediaRetryNotification.ResultType.ValueType
        @property
        def stickerMessage(self) -> global___StickerMessage: ...
        @property
        def linkPreviewResponse(
            self,
        ) -> global___PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse: ...
        @property
        def placeholderMessageResendResponse(
            self,
        ) -> global___PeerDataOperationRequestResponseMessage.PeerDataOperationResult.PlaceholderMessageResendResponse: ...
        def __init__(
            self,
            *,
            mediaUploadResult: global___MediaRetryNotification.ResultType.ValueType
            | None = ...,
            stickerMessage: global___StickerMessage | None = ...,
            linkPreviewResponse: global___PeerDataOperationRequestResponseMessage.PeerDataOperationResult.LinkPreviewResponse
            | None = ...,
            placeholderMessageResendResponse: global___PeerDataOperationRequestResponseMessage.PeerDataOperationResult.PlaceholderMessageResendResponse
            | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "linkPreviewResponse",
                b"linkPreviewResponse",
                "mediaUploadResult",
                b"mediaUploadResult",
                "placeholderMessageResendResponse",
                b"placeholderMessageResendResponse",
                "stickerMessage",
                b"stickerMessage",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "linkPreviewResponse",
                b"linkPreviewResponse",
                "mediaUploadResult",
                b"mediaUploadResult",
                "placeholderMessageResendResponse",
                b"placeholderMessageResendResponse",
                "stickerMessage",
                b"stickerMessage",
            ],
        ) -> None: ...

    PEERDATAOPERATIONREQUESTTYPE_FIELD_NUMBER: builtins.int
    STANZAID_FIELD_NUMBER: builtins.int
    PEERDATAOPERATIONRESULT_FIELD_NUMBER: builtins.int
    peerDataOperationRequestType: global___PeerDataOperationRequestType.ValueType
    stanzaId: builtins.str
    @property
    def peerDataOperationResult(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PeerDataOperationRequestResponseMessage.PeerDataOperationResult
    ]: ...
    def __init__(
        self,
        *,
        peerDataOperationRequestType: global___PeerDataOperationRequestType.ValueType
        | None = ...,
        stanzaId: builtins.str | None = ...,
        peerDataOperationResult: collections.abc.Iterable[
            global___PeerDataOperationRequestResponseMessage.PeerDataOperationResult
        ]
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "peerDataOperationRequestType",
            b"peerDataOperationRequestType",
            "stanzaId",
            b"stanzaId",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "peerDataOperationRequestType",
            b"peerDataOperationRequestType",
            "peerDataOperationResult",
            b"peerDataOperationResult",
            "stanzaId",
            b"stanzaId",
        ],
    ) -> None: ...

global___PeerDataOperationRequestResponseMessage = (
    PeerDataOperationRequestResponseMessage
)

@typing_extensions.final
class PeerDataOperationRequestMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class RequestUrlPreview(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        URL_FIELD_NUMBER: builtins.int
        INCLUDEHQTHUMBNAIL_FIELD_NUMBER: builtins.int
        url: builtins.str
        includeHqThumbnail: builtins.bool
        def __init__(
            self,
            *,
            url: builtins.str | None = ...,
            includeHqThumbnail: builtins.bool | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "includeHqThumbnail", b"includeHqThumbnail", "url", b"url"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "includeHqThumbnail", b"includeHqThumbnail", "url", b"url"
            ],
        ) -> None: ...

    @typing_extensions.final
    class RequestStickerReupload(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        FILESHA256_FIELD_NUMBER: builtins.int
        fileSha256: builtins.str
        def __init__(
            self,
            *,
            fileSha256: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing_extensions.Literal["fileSha256", b"fileSha256"]
        ) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing_extensions.Literal["fileSha256", b"fileSha256"]
        ) -> None: ...

    @typing_extensions.final
    class PlaceholderMessageResendRequest(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    @typing_extensions.final
    class HistorySyncOnDemandRequest(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CHATJID_FIELD_NUMBER: builtins.int
        OLDESTMSGID_FIELD_NUMBER: builtins.int
        OLDESTMSGFROMME_FIELD_NUMBER: builtins.int
        ONDEMANDMSGCOUNT_FIELD_NUMBER: builtins.int
        OLDESTMSGTIMESTAMPMS_FIELD_NUMBER: builtins.int
        chatJid: builtins.str
        oldestMsgId: builtins.str
        oldestMsgFromMe: builtins.bool
        onDemandMsgCount: builtins.int
        oldestMsgTimestampMs: builtins.int
        def __init__(
            self,
            *,
            chatJid: builtins.str | None = ...,
            oldestMsgId: builtins.str | None = ...,
            oldestMsgFromMe: builtins.bool | None = ...,
            onDemandMsgCount: builtins.int | None = ...,
            oldestMsgTimestampMs: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "chatJid",
                b"chatJid",
                "oldestMsgFromMe",
                b"oldestMsgFromMe",
                "oldestMsgId",
                b"oldestMsgId",
                "oldestMsgTimestampMs",
                b"oldestMsgTimestampMs",
                "onDemandMsgCount",
                b"onDemandMsgCount",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "chatJid",
                b"chatJid",
                "oldestMsgFromMe",
                b"oldestMsgFromMe",
                "oldestMsgId",
                b"oldestMsgId",
                "oldestMsgTimestampMs",
                b"oldestMsgTimestampMs",
                "onDemandMsgCount",
                b"onDemandMsgCount",
            ],
        ) -> None: ...

    PEERDATAOPERATIONREQUESTTYPE_FIELD_NUMBER: builtins.int
    REQUESTSTICKERREUPLOAD_FIELD_NUMBER: builtins.int
    REQUESTURLPREVIEW_FIELD_NUMBER: builtins.int
    HISTORYSYNCONDEMANDREQUEST_FIELD_NUMBER: builtins.int
    PLACEHOLDERMESSAGERESENDREQUEST_FIELD_NUMBER: builtins.int
    peerDataOperationRequestType: global___PeerDataOperationRequestType.ValueType
    @property
    def requestStickerReupload(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PeerDataOperationRequestMessage.RequestStickerReupload
    ]: ...
    @property
    def requestUrlPreview(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PeerDataOperationRequestMessage.RequestUrlPreview
    ]: ...
    @property
    def historySyncOnDemandRequest(
        self,
    ) -> global___PeerDataOperationRequestMessage.HistorySyncOnDemandRequest: ...
    @property
    def placeholderMessageResendRequest(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PeerDataOperationRequestMessage.PlaceholderMessageResendRequest
    ]: ...
    def __init__(
        self,
        *,
        peerDataOperationRequestType: global___PeerDataOperationRequestType.ValueType
        | None = ...,
        requestStickerReupload: collections.abc.Iterable[
            global___PeerDataOperationRequestMessage.RequestStickerReupload
        ]
        | None = ...,
        requestUrlPreview: collections.abc.Iterable[
            global___PeerDataOperationRequestMessage.RequestUrlPreview
        ]
        | None = ...,
        historySyncOnDemandRequest: global___PeerDataOperationRequestMessage.HistorySyncOnDemandRequest
        | None = ...,
        placeholderMessageResendRequest: collections.abc.Iterable[
            global___PeerDataOperationRequestMessage.PlaceholderMessageResendRequest
        ]
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "historySyncOnDemandRequest",
            b"historySyncOnDemandRequest",
            "peerDataOperationRequestType",
            b"peerDataOperationRequestType",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "historySyncOnDemandRequest",
            b"historySyncOnDemandRequest",
            "peerDataOperationRequestType",
            b"peerDataOperationRequestType",
            "placeholderMessageResendRequest",
            b"placeholderMessageResendRequest",
            "requestStickerReupload",
            b"requestStickerReupload",
            "requestUrlPreview",
            b"requestUrlPreview",
        ],
    ) -> None: ...

global___PeerDataOperationRequestMessage = PeerDataOperationRequestMessage

@typing_extensions.final
class PaymentInviteMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _ServiceTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PaymentInviteMessage._ServiceType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: PaymentInviteMessage._ServiceType.ValueType  # 0
        FBPAY: PaymentInviteMessage._ServiceType.ValueType  # 1
        NOVI: PaymentInviteMessage._ServiceType.ValueType  # 2
        UPI: PaymentInviteMessage._ServiceType.ValueType  # 3

    class ServiceType(_ServiceType, metaclass=_ServiceTypeEnumTypeWrapper): ...
    UNKNOWN: PaymentInviteMessage.ServiceType.ValueType  # 0
    FBPAY: PaymentInviteMessage.ServiceType.ValueType  # 1
    NOVI: PaymentInviteMessage.ServiceType.ValueType  # 2
    UPI: PaymentInviteMessage.ServiceType.ValueType  # 3

    SERVICETYPE_FIELD_NUMBER: builtins.int
    EXPIRYTIMESTAMP_FIELD_NUMBER: builtins.int
    serviceType: global___PaymentInviteMessage.ServiceType.ValueType
    expiryTimestamp: builtins.int
    def __init__(
        self,
        *,
        serviceType: global___PaymentInviteMessage.ServiceType.ValueType | None = ...,
        expiryTimestamp: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "expiryTimestamp", b"expiryTimestamp", "serviceType", b"serviceType"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "expiryTimestamp", b"expiryTimestamp", "serviceType", b"serviceType"
        ],
    ) -> None: ...

global___PaymentInviteMessage = PaymentInviteMessage

@typing_extensions.final
class OrderMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _OrderSurfaceEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            OrderMessage._OrderSurface.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        CATALOG: OrderMessage._OrderSurface.ValueType  # 1

    class OrderSurface(_OrderSurface, metaclass=_OrderSurfaceEnumTypeWrapper): ...
    CATALOG: OrderMessage.OrderSurface.ValueType  # 1

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

    class _OrderStatusEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            OrderMessage._OrderStatus.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        INQUIRY: OrderMessage._OrderStatus.ValueType  # 1
        ACCEPTED: OrderMessage._OrderStatus.ValueType  # 2
        DECLINED: OrderMessage._OrderStatus.ValueType  # 3

    class OrderStatus(_OrderStatus, metaclass=_OrderStatusEnumTypeWrapper): ...
    INQUIRY: OrderMessage.OrderStatus.ValueType  # 1
    ACCEPTED: OrderMessage.OrderStatus.ValueType  # 2
    DECLINED: OrderMessage.OrderStatus.ValueType  # 3

    ORDERID_FIELD_NUMBER: builtins.int
    THUMBNAIL_FIELD_NUMBER: builtins.int
    ITEMCOUNT_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    SURFACE_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    ORDERTITLE_FIELD_NUMBER: builtins.int
    SELLERJID_FIELD_NUMBER: builtins.int
    TOKEN_FIELD_NUMBER: builtins.int
    TOTALAMOUNT1000_FIELD_NUMBER: builtins.int
    TOTALCURRENCYCODE_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    MESSAGEVERSION_FIELD_NUMBER: builtins.int
    ORDERREQUESTMESSAGEID_FIELD_NUMBER: builtins.int
    orderId: builtins.str
    thumbnail: builtins.bytes
    itemCount: builtins.int
    status: global___OrderMessage.OrderStatus.ValueType
    surface: global___OrderMessage.OrderSurface.ValueType
    message: builtins.str
    orderTitle: builtins.str
    sellerJid: builtins.str
    token: builtins.str
    totalAmount1000: builtins.int
    totalCurrencyCode: builtins.str
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    messageVersion: builtins.int
    @property
    def orderRequestMessageId(self) -> global___MessageKey: ...
    def __init__(
        self,
        *,
        orderId: builtins.str | None = ...,
        thumbnail: builtins.bytes | None = ...,
        itemCount: builtins.int | None = ...,
        status: global___OrderMessage.OrderStatus.ValueType | None = ...,
        surface: global___OrderMessage.OrderSurface.ValueType | None = ...,
        message: builtins.str | None = ...,
        orderTitle: builtins.str | None = ...,
        sellerJid: builtins.str | None = ...,
        token: builtins.str | None = ...,
        totalAmount1000: builtins.int | None = ...,
        totalCurrencyCode: builtins.str | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        messageVersion: builtins.int | None = ...,
        orderRequestMessageId: global___MessageKey | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "itemCount",
            b"itemCount",
            "message",
            b"message",
            "messageVersion",
            b"messageVersion",
            "orderId",
            b"orderId",
            "orderRequestMessageId",
            b"orderRequestMessageId",
            "orderTitle",
            b"orderTitle",
            "sellerJid",
            b"sellerJid",
            "status",
            b"status",
            "surface",
            b"surface",
            "thumbnail",
            b"thumbnail",
            "token",
            b"token",
            "totalAmount1000",
            b"totalAmount1000",
            "totalCurrencyCode",
            b"totalCurrencyCode",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "itemCount",
            b"itemCount",
            "message",
            b"message",
            "messageVersion",
            b"messageVersion",
            "orderId",
            b"orderId",
            "orderRequestMessageId",
            b"orderRequestMessageId",
            "orderTitle",
            b"orderTitle",
            "sellerJid",
            b"sellerJid",
            "status",
            b"status",
            "surface",
            b"surface",
            "thumbnail",
            b"thumbnail",
            "token",
            b"token",
            "totalAmount1000",
            b"totalAmount1000",
            "totalCurrencyCode",
            b"totalCurrencyCode",
        ],
    ) -> None: ...

global___OrderMessage = OrderMessage

@typing_extensions.final
class NewsletterAdminInviteMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NEWSLETTERJID_FIELD_NUMBER: builtins.int
    NEWSLETTERNAME_FIELD_NUMBER: builtins.int
    JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CAPTION_FIELD_NUMBER: builtins.int
    INVITEEXPIRATION_FIELD_NUMBER: builtins.int
    newsletterJid: builtins.str
    newsletterName: builtins.str
    jpegThumbnail: builtins.bytes
    caption: builtins.str
    inviteExpiration: builtins.int
    def __init__(
        self,
        *,
        newsletterJid: builtins.str | None = ...,
        newsletterName: builtins.str | None = ...,
        jpegThumbnail: builtins.bytes | None = ...,
        caption: builtins.str | None = ...,
        inviteExpiration: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "inviteExpiration",
            b"inviteExpiration",
            "jpegThumbnail",
            b"jpegThumbnail",
            "newsletterJid",
            b"newsletterJid",
            "newsletterName",
            b"newsletterName",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "caption",
            b"caption",
            "inviteExpiration",
            b"inviteExpiration",
            "jpegThumbnail",
            b"jpegThumbnail",
            "newsletterJid",
            b"newsletterJid",
            "newsletterName",
            b"newsletterName",
        ],
    ) -> None: ...

global___NewsletterAdminInviteMessage = NewsletterAdminInviteMessage

@typing_extensions.final
class MessageHistoryBundle(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MIMETYPE_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
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    PARTICIPANTS_FIELD_NUMBER: builtins.int
    mimetype: builtins.str
    fileSha256: builtins.bytes
    mediaKey: builtins.bytes
    fileEncSha256: builtins.bytes
    directPath: builtins.str
    mediaKeyTimestamp: builtins.int
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    @property
    def participants(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    def __init__(
        self,
        *,
        mimetype: builtins.str | None = ...,
        fileSha256: builtins.bytes | None = ...,
        mediaKey: builtins.bytes | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        directPath: builtins.str | None = ...,
        mediaKeyTimestamp: builtins.int | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        participants: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileSha256",
            b"fileSha256",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileSha256",
            b"fileSha256",
            "mediaKey",
            b"mediaKey",
            "mediaKeyTimestamp",
            b"mediaKeyTimestamp",
            "mimetype",
            b"mimetype",
            "participants",
            b"participants",
        ],
    ) -> None: ...

global___MessageHistoryBundle = MessageHistoryBundle

@typing_extensions.final
class LocationMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DEGREESLATITUDE_FIELD_NUMBER: builtins.int
    DEGREESLONGITUDE_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    ADDRESS_FIELD_NUMBER: builtins.int
    URL_FIELD_NUMBER: builtins.int
    ISLIVE_FIELD_NUMBER: builtins.int
    ACCURACYINMETERS_FIELD_NUMBER: builtins.int
    SPEEDINMPS_FIELD_NUMBER: builtins.int
    DEGREESCLOCKWISEFROMMAGNETICNORTH_FIELD_NUMBER: builtins.int
    COMMENT_FIELD_NUMBER: builtins.int
    JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    degreesLatitude: builtins.float
    degreesLongitude: builtins.float
    name: builtins.str
    address: builtins.str
    url: builtins.str
    isLive: builtins.bool
    accuracyInMeters: builtins.int
    speedInMps: builtins.float
    degreesClockwiseFromMagneticNorth: builtins.int
    comment: builtins.str
    jpegThumbnail: builtins.bytes
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    def __init__(
        self,
        *,
        degreesLatitude: builtins.float | None = ...,
        degreesLongitude: builtins.float | None = ...,
        name: builtins.str | None = ...,
        address: builtins.str | None = ...,
        url: builtins.str | None = ...,
        isLive: builtins.bool | None = ...,
        accuracyInMeters: builtins.int | None = ...,
        speedInMps: builtins.float | None = ...,
        degreesClockwiseFromMagneticNorth: builtins.int | None = ...,
        comment: builtins.str | None = ...,
        jpegThumbnail: builtins.bytes | None = ...,
        contextInfo: global___ContextInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accuracyInMeters",
            b"accuracyInMeters",
            "address",
            b"address",
            "comment",
            b"comment",
            "contextInfo",
            b"contextInfo",
            "degreesClockwiseFromMagneticNorth",
            b"degreesClockwiseFromMagneticNorth",
            "degreesLatitude",
            b"degreesLatitude",
            "degreesLongitude",
            b"degreesLongitude",
            "isLive",
            b"isLive",
            "jpegThumbnail",
            b"jpegThumbnail",
            "name",
            b"name",
            "speedInMps",
            b"speedInMps",
            "url",
            b"url",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accuracyInMeters",
            b"accuracyInMeters",
            "address",
            b"address",
            "comment",
            b"comment",
            "contextInfo",
            b"contextInfo",
            "degreesClockwiseFromMagneticNorth",
            b"degreesClockwiseFromMagneticNorth",
            "degreesLatitude",
            b"degreesLatitude",
            "degreesLongitude",
            b"degreesLongitude",
            "isLive",
            b"isLive",
            "jpegThumbnail",
            b"jpegThumbnail",
            "name",
            b"name",
            "speedInMps",
            b"speedInMps",
            "url",
            b"url",
        ],
    ) -> None: ...

global___LocationMessage = LocationMessage

@typing_extensions.final
class LiveLocationMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DEGREESLATITUDE_FIELD_NUMBER: builtins.int
    DEGREESLONGITUDE_FIELD_NUMBER: builtins.int
    ACCURACYINMETERS_FIELD_NUMBER: builtins.int
    SPEEDINMPS_FIELD_NUMBER: builtins.int
    DEGREESCLOCKWISEFROMMAGNETICNORTH_FIELD_NUMBER: builtins.int
    CAPTION_FIELD_NUMBER: builtins.int
    SEQUENCENUMBER_FIELD_NUMBER: builtins.int
    TIMEOFFSET_FIELD_NUMBER: builtins.int
    JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    degreesLatitude: builtins.float
    degreesLongitude: builtins.float
    accuracyInMeters: builtins.int
    speedInMps: builtins.float
    degreesClockwiseFromMagneticNorth: builtins.int
    caption: builtins.str
    sequenceNumber: builtins.int
    timeOffset: builtins.int
    jpegThumbnail: builtins.bytes
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    def __init__(
        self,
        *,
        degreesLatitude: builtins.float | None = ...,
        degreesLongitude: builtins.float | None = ...,
        accuracyInMeters: builtins.int | None = ...,
        speedInMps: builtins.float | None = ...,
        degreesClockwiseFromMagneticNorth: builtins.int | None = ...,
        caption: builtins.str | None = ...,
        sequenceNumber: builtins.int | None = ...,
        timeOffset: builtins.int | None = ...,
        jpegThumbnail: builtins.bytes | None = ...,
        contextInfo: global___ContextInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accuracyInMeters",
            b"accuracyInMeters",
            "caption",
            b"caption",
            "contextInfo",
            b"contextInfo",
            "degreesClockwiseFromMagneticNorth",
            b"degreesClockwiseFromMagneticNorth",
            "degreesLatitude",
            b"degreesLatitude",
            "degreesLongitude",
            b"degreesLongitude",
            "jpegThumbnail",
            b"jpegThumbnail",
            "sequenceNumber",
            b"sequenceNumber",
            "speedInMps",
            b"speedInMps",
            "timeOffset",
            b"timeOffset",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accuracyInMeters",
            b"accuracyInMeters",
            "caption",
            b"caption",
            "contextInfo",
            b"contextInfo",
            "degreesClockwiseFromMagneticNorth",
            b"degreesClockwiseFromMagneticNorth",
            "degreesLatitude",
            b"degreesLatitude",
            "degreesLongitude",
            b"degreesLongitude",
            "jpegThumbnail",
            b"jpegThumbnail",
            "sequenceNumber",
            b"sequenceNumber",
            "speedInMps",
            b"speedInMps",
            "timeOffset",
            b"timeOffset",
        ],
    ) -> None: ...

global___LiveLocationMessage = LiveLocationMessage

@typing_extensions.final
class ListResponseMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _ListTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ListResponseMessage._ListType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: ListResponseMessage._ListType.ValueType  # 0
        SINGLE_SELECT: ListResponseMessage._ListType.ValueType  # 1

    class ListType(_ListType, metaclass=_ListTypeEnumTypeWrapper): ...
    UNKNOWN: ListResponseMessage.ListType.ValueType  # 0
    SINGLE_SELECT: ListResponseMessage.ListType.ValueType  # 1

    @typing_extensions.final
    class SingleSelectReply(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        SELECTEDROWID_FIELD_NUMBER: builtins.int
        selectedRowId: builtins.str
        def __init__(
            self,
            *,
            selectedRowId: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal["selectedRowId", b"selectedRowId"],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal["selectedRowId", b"selectedRowId"],
        ) -> None: ...

    TITLE_FIELD_NUMBER: builtins.int
    LISTTYPE_FIELD_NUMBER: builtins.int
    SINGLESELECTREPLY_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    title: builtins.str
    listType: global___ListResponseMessage.ListType.ValueType
    @property
    def singleSelectReply(self) -> global___ListResponseMessage.SingleSelectReply: ...
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    description: builtins.str
    def __init__(
        self,
        *,
        title: builtins.str | None = ...,
        listType: global___ListResponseMessage.ListType.ValueType | None = ...,
        singleSelectReply: global___ListResponseMessage.SingleSelectReply | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        description: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "description",
            b"description",
            "listType",
            b"listType",
            "singleSelectReply",
            b"singleSelectReply",
            "title",
            b"title",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "contextInfo",
            b"contextInfo",
            "description",
            b"description",
            "listType",
            b"listType",
            "singleSelectReply",
            b"singleSelectReply",
            "title",
            b"title",
        ],
    ) -> None: ...

global___ListResponseMessage = ListResponseMessage

@typing_extensions.final
class ListMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _ListTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ListMessage._ListType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: ListMessage._ListType.ValueType  # 0
        SINGLE_SELECT: ListMessage._ListType.ValueType  # 1
        PRODUCT_LIST: ListMessage._ListType.ValueType  # 2

    class ListType(_ListType, metaclass=_ListTypeEnumTypeWrapper): ...
    UNKNOWN: ListMessage.ListType.ValueType  # 0
    SINGLE_SELECT: ListMessage.ListType.ValueType  # 1
    PRODUCT_LIST: ListMessage.ListType.ValueType  # 2

    @typing_extensions.final
    class Section(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        TITLE_FIELD_NUMBER: builtins.int
        ROWS_FIELD_NUMBER: builtins.int
        title: builtins.str
        @property
        def rows(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___ListMessage.Row
        ]: ...
        def __init__(
            self,
            *,
            title: builtins.str | None = ...,
            rows: collections.abc.Iterable[global___ListMessage.Row] | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing_extensions.Literal["title", b"title"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal["rows", b"rows", "title", b"title"],
        ) -> None: ...

    @typing_extensions.final
    class Row(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        TITLE_FIELD_NUMBER: builtins.int
        DESCRIPTION_FIELD_NUMBER: builtins.int
        ROWID_FIELD_NUMBER: builtins.int
        title: builtins.str
        description: builtins.str
        rowId: builtins.str
        def __init__(
            self,
            *,
            title: builtins.str | None = ...,
            description: builtins.str | None = ...,
            rowId: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "description", b"description", "rowId", b"rowId", "title", b"title"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "description", b"description", "rowId", b"rowId", "title", b"title"
            ],
        ) -> None: ...

    @typing_extensions.final
    class Product(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        PRODUCTID_FIELD_NUMBER: builtins.int
        productId: builtins.str
        def __init__(
            self,
            *,
            productId: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing_extensions.Literal["productId", b"productId"]
        ) -> builtins.bool: ...
        def ClearField(
            self, field_name: typing_extensions.Literal["productId", b"productId"]
        ) -> None: ...

    @typing_extensions.final
    class ProductSection(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        TITLE_FIELD_NUMBER: builtins.int
        PRODUCTS_FIELD_NUMBER: builtins.int
        title: builtins.str
        @property
        def products(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___ListMessage.Product
        ]: ...
        def __init__(
            self,
            *,
            title: builtins.str | None = ...,
            products: collections.abc.Iterable[global___ListMessage.Product]
            | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing_extensions.Literal["title", b"title"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "products", b"products", "title", b"title"
            ],
        ) -> None: ...

    @typing_extensions.final
    class ProductListInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        PRODUCTSECTIONS_FIELD_NUMBER: builtins.int
        HEADERIMAGE_FIELD_NUMBER: builtins.int
        BUSINESSOWNERJID_FIELD_NUMBER: builtins.int
        @property
        def productSections(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___ListMessage.ProductSection
        ]: ...
        @property
        def headerImage(self) -> global___ListMessage.ProductListHeaderImage: ...
        businessOwnerJid: builtins.str
        def __init__(
            self,
            *,
            productSections: collections.abc.Iterable[
                global___ListMessage.ProductSection
            ]
            | None = ...,
            headerImage: global___ListMessage.ProductListHeaderImage | None = ...,
            businessOwnerJid: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "businessOwnerJid", b"businessOwnerJid", "headerImage", b"headerImage"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "businessOwnerJid",
                b"businessOwnerJid",
                "headerImage",
                b"headerImage",
                "productSections",
                b"productSections",
            ],
        ) -> None: ...

    @typing_extensions.final
    class ProductListHeaderImage(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        PRODUCTID_FIELD_NUMBER: builtins.int
        JPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
        productId: builtins.str
        jpegThumbnail: builtins.bytes
        def __init__(
            self,
            *,
            productId: builtins.str | None = ...,
            jpegThumbnail: builtins.bytes | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "jpegThumbnail", b"jpegThumbnail", "productId", b"productId"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "jpegThumbnail", b"jpegThumbnail", "productId", b"productId"
            ],
        ) -> None: ...

    TITLE_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    BUTTONTEXT_FIELD_NUMBER: builtins.int
    LISTTYPE_FIELD_NUMBER: builtins.int
    SECTIONS_FIELD_NUMBER: builtins.int
    PRODUCTLISTINFO_FIELD_NUMBER: builtins.int
    FOOTERTEXT_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    title: builtins.str
    description: builtins.str
    buttonText: builtins.str
    listType: global___ListMessage.ListType.ValueType
    @property
    def sections(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___ListMessage.Section
    ]: ...
    @property
    def productListInfo(self) -> global___ListMessage.ProductListInfo: ...
    footerText: builtins.str
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    def __init__(
        self,
        *,
        title: builtins.str | None = ...,
        description: builtins.str | None = ...,
        buttonText: builtins.str | None = ...,
        listType: global___ListMessage.ListType.ValueType | None = ...,
        sections: collections.abc.Iterable[global___ListMessage.Section] | None = ...,
        productListInfo: global___ListMessage.ProductListInfo | None = ...,
        footerText: builtins.str | None = ...,
        contextInfo: global___ContextInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "buttonText",
            b"buttonText",
            "contextInfo",
            b"contextInfo",
            "description",
            b"description",
            "footerText",
            b"footerText",
            "listType",
            b"listType",
            "productListInfo",
            b"productListInfo",
            "title",
            b"title",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "buttonText",
            b"buttonText",
            "contextInfo",
            b"contextInfo",
            "description",
            b"description",
            "footerText",
            b"footerText",
            "listType",
            b"listType",
            "productListInfo",
            b"productListInfo",
            "sections",
            b"sections",
            "title",
            b"title",
        ],
    ) -> None: ...

global___ListMessage = ListMessage

@typing_extensions.final
class KeepInChatMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_FIELD_NUMBER: builtins.int
    KEEPTYPE_FIELD_NUMBER: builtins.int
    TIMESTAMPMS_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    keepType: global___KeepType.ValueType
    timestampMs: builtins.int
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        keepType: global___KeepType.ValueType | None = ...,
        timestampMs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "keepType", b"keepType", "key", b"key", "timestampMs", b"timestampMs"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "keepType", b"keepType", "key", b"key", "timestampMs", b"timestampMs"
        ],
    ) -> None: ...

global___KeepInChatMessage = KeepInChatMessage

@typing_extensions.final
class InvoiceMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _AttachmentTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            InvoiceMessage._AttachmentType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        IMAGE: InvoiceMessage._AttachmentType.ValueType  # 0
        PDF: InvoiceMessage._AttachmentType.ValueType  # 1

    class AttachmentType(_AttachmentType, metaclass=_AttachmentTypeEnumTypeWrapper): ...
    IMAGE: InvoiceMessage.AttachmentType.ValueType  # 0
    PDF: InvoiceMessage.AttachmentType.ValueType  # 1

    NOTE_FIELD_NUMBER: builtins.int
    TOKEN_FIELD_NUMBER: builtins.int
    ATTACHMENTTYPE_FIELD_NUMBER: builtins.int
    ATTACHMENTMIMETYPE_FIELD_NUMBER: builtins.int
    ATTACHMENTMEDIAKEY_FIELD_NUMBER: builtins.int
    ATTACHMENTMEDIAKEYTIMESTAMP_FIELD_NUMBER: builtins.int
    ATTACHMENTFILESHA256_FIELD_NUMBER: builtins.int
    ATTACHMENTFILEENCSHA256_FIELD_NUMBER: builtins.int
    ATTACHMENTDIRECTPATH_FIELD_NUMBER: builtins.int
    ATTACHMENTJPEGTHUMBNAIL_FIELD_NUMBER: builtins.int
    note: builtins.str
    token: builtins.str
    attachmentType: global___InvoiceMessage.AttachmentType.ValueType
    attachmentMimetype: builtins.str
    attachmentMediaKey: builtins.bytes
    attachmentMediaKeyTimestamp: builtins.int
    attachmentFileSha256: builtins.bytes
    attachmentFileEncSha256: builtins.bytes
    attachmentDirectPath: builtins.str
    attachmentJpegThumbnail: builtins.bytes
    def __init__(
        self,
        *,
        note: builtins.str | None = ...,
        token: builtins.str | None = ...,
        attachmentType: global___InvoiceMessage.AttachmentType.ValueType | None = ...,
        attachmentMimetype: builtins.str | None = ...,
        attachmentMediaKey: builtins.bytes | None = ...,
        attachmentMediaKeyTimestamp: builtins.int | None = ...,
        attachmentFileSha256: builtins.bytes | None = ...,
        attachmentFileEncSha256: builtins.bytes | None = ...,
        attachmentDirectPath: builtins.str | None = ...,
        attachmentJpegThumbnail: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "attachmentDirectPath",
            b"attachmentDirectPath",
            "attachmentFileEncSha256",
            b"attachmentFileEncSha256",
            "attachmentFileSha256",
            b"attachmentFileSha256",
            "attachmentJpegThumbnail",
            b"attachmentJpegThumbnail",
            "attachmentMediaKey",
            b"attachmentMediaKey",
            "attachmentMediaKeyTimestamp",
            b"attachmentMediaKeyTimestamp",
            "attachmentMimetype",
            b"attachmentMimetype",
            "attachmentType",
            b"attachmentType",
            "note",
            b"note",
            "token",
            b"token",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "attachmentDirectPath",
            b"attachmentDirectPath",
            "attachmentFileEncSha256",
            b"attachmentFileEncSha256",
            "attachmentFileSha256",
            b"attachmentFileSha256",
            "attachmentJpegThumbnail",
            b"attachmentJpegThumbnail",
            "attachmentMediaKey",
            b"attachmentMediaKey",
            "attachmentMediaKeyTimestamp",
            b"attachmentMediaKeyTimestamp",
            "attachmentMimetype",
            b"attachmentMimetype",
            "attachmentType",
            b"attachmentType",
            "note",
            b"note",
            "token",
            b"token",
        ],
    ) -> None: ...

global___InvoiceMessage = InvoiceMessage

@typing_extensions.final
class InteractiveResponseMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class NativeFlowResponseMessage(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        NAME_FIELD_NUMBER: builtins.int
        PARAMSJSON_FIELD_NUMBER: builtins.int
        VERSION_FIELD_NUMBER: builtins.int
        name: builtins.str
        paramsJson: builtins.str
        version: builtins.int
        def __init__(
            self,
            *,
            name: builtins.str | None = ...,
            paramsJson: builtins.str | None = ...,
            version: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "name", b"name", "paramsJson", b"paramsJson", "version", b"version"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "name", b"name", "paramsJson", b"paramsJson", "version", b"version"
            ],
        ) -> None: ...

    @typing_extensions.final
    class Body(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _FormatEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                InteractiveResponseMessage.Body._Format.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            DEFAULT: InteractiveResponseMessage.Body._Format.ValueType  # 0
            EXTENSIONS_1: InteractiveResponseMessage.Body._Format.ValueType  # 1

        class Format(_Format, metaclass=_FormatEnumTypeWrapper): ...
        DEFAULT: InteractiveResponseMessage.Body.Format.ValueType  # 0
        EXTENSIONS_1: InteractiveResponseMessage.Body.Format.ValueType  # 1

        TEXT_FIELD_NUMBER: builtins.int
        FORMAT_FIELD_NUMBER: builtins.int
        text: builtins.str
        format: global___InteractiveResponseMessage.Body.Format.ValueType
        def __init__(
            self,
            *,
            text: builtins.str | None = ...,
            format: global___InteractiveResponseMessage.Body.Format.ValueType
            | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal["format", b"format", "text", b"text"],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal["format", b"format", "text", b"text"],
        ) -> None: ...

    BODY_FIELD_NUMBER: builtins.int
    CONTEXTINFO_FIELD_NUMBER: builtins.int
    NATIVEFLOWRESPONSEMESSAGE_FIELD_NUMBER: builtins.int
    @property
    def body(self) -> global___InteractiveResponseMessage.Body: ...
    @property
    def contextInfo(self) -> global___ContextInfo: ...
    @property
    def nativeFlowResponseMessage(
        self,
    ) -> global___InteractiveResponseMessage.NativeFlowResponseMessage: ...
    def __init__(
        self,
        *,
        body: global___InteractiveResponseMessage.Body | None = ...,
        contextInfo: global___ContextInfo | None = ...,
        nativeFlowResponseMessage: global___InteractiveResponseMessage.NativeFlowResponseMessage
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "body",
            b"body",
            "contextInfo",
            b"contextInfo",
            "interactiveResponseMessage",
            b"interactiveResponseMessage",
            "nativeFlowResponseMessage",
            b"nativeFlowResponseMessage",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "body",
            b"body",
            "contextInfo",
            b"contextInfo",
            "interactiveResponseMessage",
            b"interactiveResponseMessage",
            "nativeFlowResponseMessage",
            b"nativeFlowResponseMessage",
        ],
    ) -> None: ...
    def WhichOneof(
        self,
        oneof_group: typing_extensions.Literal[
            "interactiveResponseMessage", b"interactiveResponseMessage"
        ],
    ) -> typing_extensions.Literal["nativeFlowResponseMessage"] | None: ...

global___InteractiveResponseMessage = InteractiveResponseMessage

@typing_extensions.final
class EphemeralSetting(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DURATION_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    duration: builtins.int
    timestamp: builtins.int
    def __init__(
        self,
        *,
        duration: builtins.int | None = ...,
        timestamp: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "duration", b"duration", "timestamp", b"timestamp"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "duration", b"duration", "timestamp", b"timestamp"
        ],
    ) -> None: ...

global___EphemeralSetting = EphemeralSetting

@typing_extensions.final
class WallpaperSettings(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FILENAME_FIELD_NUMBER: builtins.int
    OPACITY_FIELD_NUMBER: builtins.int
    filename: builtins.str
    opacity: builtins.int
    def __init__(
        self,
        *,
        filename: builtins.str | None = ...,
        opacity: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "filename", b"filename", "opacity", b"opacity"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "filename", b"filename", "opacity", b"opacity"
        ],
    ) -> None: ...

global___WallpaperSettings = WallpaperSettings

@typing_extensions.final
class StickerMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    URL_FIELD_NUMBER: builtins.int
    FILESHA256_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    MIMETYPE_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    WIDTH_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    WEIGHT_FIELD_NUMBER: builtins.int
    LASTSTICKERSENTTS_FIELD_NUMBER: builtins.int
    url: builtins.str
    fileSha256: builtins.bytes
    fileEncSha256: builtins.bytes
    mediaKey: builtins.bytes
    mimetype: builtins.str
    height: builtins.int
    width: builtins.int
    directPath: builtins.str
    fileLength: builtins.int
    weight: builtins.float
    lastStickerSentTs: builtins.int
    def __init__(
        self,
        *,
        url: builtins.str | None = ...,
        fileSha256: builtins.bytes | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        mediaKey: builtins.bytes | None = ...,
        mimetype: builtins.str | None = ...,
        height: builtins.int | None = ...,
        width: builtins.int | None = ...,
        directPath: builtins.str | None = ...,
        fileLength: builtins.int | None = ...,
        weight: builtins.float | None = ...,
        lastStickerSentTs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "height",
            b"height",
            "lastStickerSentTs",
            b"lastStickerSentTs",
            "mediaKey",
            b"mediaKey",
            "mimetype",
            b"mimetype",
            "url",
            b"url",
            "weight",
            b"weight",
            "width",
            b"width",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "fileSha256",
            b"fileSha256",
            "height",
            b"height",
            "lastStickerSentTs",
            b"lastStickerSentTs",
            "mediaKey",
            b"mediaKey",
            "mimetype",
            b"mimetype",
            "url",
            b"url",
            "weight",
            b"weight",
            "width",
            b"width",
        ],
    ) -> None: ...

global___StickerMetadata = StickerMetadata

@typing_extensions.final
class Pushname(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    PUSHNAME_FIELD_NUMBER: builtins.int
    id: builtins.str
    pushname: builtins.str
    def __init__(
        self,
        *,
        id: builtins.str | None = ...,
        pushname: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["id", b"id", "pushname", b"pushname"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["id", b"id", "pushname", b"pushname"],
    ) -> None: ...

global___Pushname = Pushname

@typing_extensions.final
class PhoneNumberToLIDMapping(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PNJID_FIELD_NUMBER: builtins.int
    LIDJID_FIELD_NUMBER: builtins.int
    pnJid: builtins.str
    lidJid: builtins.str
    def __init__(
        self,
        *,
        pnJid: builtins.str | None = ...,
        lidJid: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["lidJid", b"lidJid", "pnJid", b"pnJid"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["lidJid", b"lidJid", "pnJid", b"pnJid"],
    ) -> None: ...

global___PhoneNumberToLIDMapping = PhoneNumberToLIDMapping

@typing_extensions.final
class PastParticipants(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    GROUPJID_FIELD_NUMBER: builtins.int
    PASTPARTICIPANTS_FIELD_NUMBER: builtins.int
    groupJid: builtins.str
    @property
    def pastParticipants(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PastParticipant
    ]: ...
    def __init__(
        self,
        *,
        groupJid: builtins.str | None = ...,
        pastParticipants: collections.abc.Iterable[global___PastParticipant]
        | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["groupJid", b"groupJid"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "groupJid", b"groupJid", "pastParticipants", b"pastParticipants"
        ],
    ) -> None: ...

global___PastParticipants = PastParticipants

@typing_extensions.final
class PastParticipant(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _LeaveReasonEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PastParticipant._LeaveReason.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        LEFT: PastParticipant._LeaveReason.ValueType  # 0
        REMOVED: PastParticipant._LeaveReason.ValueType  # 1

    class LeaveReason(_LeaveReason, metaclass=_LeaveReasonEnumTypeWrapper): ...
    LEFT: PastParticipant.LeaveReason.ValueType  # 0
    REMOVED: PastParticipant.LeaveReason.ValueType  # 1

    USERJID_FIELD_NUMBER: builtins.int
    LEAVEREASON_FIELD_NUMBER: builtins.int
    LEAVETS_FIELD_NUMBER: builtins.int
    userJid: builtins.str
    leaveReason: global___PastParticipant.LeaveReason.ValueType
    leaveTs: builtins.int
    def __init__(
        self,
        *,
        userJid: builtins.str | None = ...,
        leaveReason: global___PastParticipant.LeaveReason.ValueType | None = ...,
        leaveTs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "leaveReason", b"leaveReason", "leaveTs", b"leaveTs", "userJid", b"userJid"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "leaveReason", b"leaveReason", "leaveTs", b"leaveTs", "userJid", b"userJid"
        ],
    ) -> None: ...

global___PastParticipant = PastParticipant

@typing_extensions.final
class NotificationSettings(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MESSAGEVIBRATE_FIELD_NUMBER: builtins.int
    MESSAGEPOPUP_FIELD_NUMBER: builtins.int
    MESSAGELIGHT_FIELD_NUMBER: builtins.int
    LOWPRIORITYNOTIFICATIONS_FIELD_NUMBER: builtins.int
    REACTIONSMUTED_FIELD_NUMBER: builtins.int
    CALLVIBRATE_FIELD_NUMBER: builtins.int
    messageVibrate: builtins.str
    messagePopup: builtins.str
    messageLight: builtins.str
    lowPriorityNotifications: builtins.bool
    reactionsMuted: builtins.bool
    callVibrate: builtins.str
    def __init__(
        self,
        *,
        messageVibrate: builtins.str | None = ...,
        messagePopup: builtins.str | None = ...,
        messageLight: builtins.str | None = ...,
        lowPriorityNotifications: builtins.bool | None = ...,
        reactionsMuted: builtins.bool | None = ...,
        callVibrate: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "callVibrate",
            b"callVibrate",
            "lowPriorityNotifications",
            b"lowPriorityNotifications",
            "messageLight",
            b"messageLight",
            "messagePopup",
            b"messagePopup",
            "messageVibrate",
            b"messageVibrate",
            "reactionsMuted",
            b"reactionsMuted",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "callVibrate",
            b"callVibrate",
            "lowPriorityNotifications",
            b"lowPriorityNotifications",
            "messageLight",
            b"messageLight",
            "messagePopup",
            b"messagePopup",
            "messageVibrate",
            b"messageVibrate",
            "reactionsMuted",
            b"reactionsMuted",
        ],
    ) -> None: ...

global___NotificationSettings = NotificationSettings

@typing_extensions.final
class HistorySync(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _HistorySyncTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            HistorySync._HistorySyncType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        INITIAL_BOOTSTRAP: HistorySync._HistorySyncType.ValueType  # 0
        INITIAL_STATUS_V3: HistorySync._HistorySyncType.ValueType  # 1
        FULL: HistorySync._HistorySyncType.ValueType  # 2
        RECENT: HistorySync._HistorySyncType.ValueType  # 3
        PUSH_NAME: HistorySync._HistorySyncType.ValueType  # 4
        NON_BLOCKING_DATA: HistorySync._HistorySyncType.ValueType  # 5
        ON_DEMAND: HistorySync._HistorySyncType.ValueType  # 6

    class HistorySyncType(
        _HistorySyncType, metaclass=_HistorySyncTypeEnumTypeWrapper
    ): ...
    INITIAL_BOOTSTRAP: HistorySync.HistorySyncType.ValueType  # 0
    INITIAL_STATUS_V3: HistorySync.HistorySyncType.ValueType  # 1
    FULL: HistorySync.HistorySyncType.ValueType  # 2
    RECENT: HistorySync.HistorySyncType.ValueType  # 3
    PUSH_NAME: HistorySync.HistorySyncType.ValueType  # 4
    NON_BLOCKING_DATA: HistorySync.HistorySyncType.ValueType  # 5
    ON_DEMAND: HistorySync.HistorySyncType.ValueType  # 6

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

    class _BotAIWaitListStateEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            HistorySync._BotAIWaitListState.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        IN_WAITLIST: HistorySync._BotAIWaitListState.ValueType  # 0
        AI_AVAILABLE: HistorySync._BotAIWaitListState.ValueType  # 1

    class BotAIWaitListState(
        _BotAIWaitListState, metaclass=_BotAIWaitListStateEnumTypeWrapper
    ): ...
    IN_WAITLIST: HistorySync.BotAIWaitListState.ValueType  # 0
    AI_AVAILABLE: HistorySync.BotAIWaitListState.ValueType  # 1

    SYNCTYPE_FIELD_NUMBER: builtins.int
    CONVERSATIONS_FIELD_NUMBER: builtins.int
    STATUSV3MESSAGES_FIELD_NUMBER: builtins.int
    CHUNKORDER_FIELD_NUMBER: builtins.int
    PROGRESS_FIELD_NUMBER: builtins.int
    PUSHNAMES_FIELD_NUMBER: builtins.int
    GLOBALSETTINGS_FIELD_NUMBER: builtins.int
    THREADIDUSERSECRET_FIELD_NUMBER: builtins.int
    THREADDSTIMEFRAMEOFFSET_FIELD_NUMBER: builtins.int
    RECENTSTICKERS_FIELD_NUMBER: builtins.int
    PASTPARTICIPANTS_FIELD_NUMBER: builtins.int
    CALLLOGRECORDS_FIELD_NUMBER: builtins.int
    AIWAITLISTSTATE_FIELD_NUMBER: builtins.int
    PHONENUMBERTOLIDMAPPINGS_FIELD_NUMBER: builtins.int
    syncType: global___HistorySync.HistorySyncType.ValueType
    @property
    def conversations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Conversation
    ]: ...
    @property
    def statusV3Messages(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___WebMessageInfo
    ]: ...
    chunkOrder: builtins.int
    progress: builtins.int
    @property
    def pushnames(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Pushname
    ]: ...
    @property
    def globalSettings(self) -> global___GlobalSettings: ...
    threadIdUserSecret: builtins.bytes
    threadDsTimeframeOffset: builtins.int
    @property
    def recentStickers(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___StickerMetadata
    ]: ...
    @property
    def pastParticipants(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PastParticipants
    ]: ...
    @property
    def callLogRecords(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___CallLogRecord
    ]: ...
    aiWaitListState: global___HistorySync.BotAIWaitListState.ValueType
    @property
    def phoneNumberToLidMappings(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PhoneNumberToLIDMapping
    ]: ...
    def __init__(
        self,
        *,
        syncType: global___HistorySync.HistorySyncType.ValueType | None = ...,
        conversations: collections.abc.Iterable[global___Conversation] | None = ...,
        statusV3Messages: collections.abc.Iterable[global___WebMessageInfo]
        | None = ...,
        chunkOrder: builtins.int | None = ...,
        progress: builtins.int | None = ...,
        pushnames: collections.abc.Iterable[global___Pushname] | None = ...,
        globalSettings: global___GlobalSettings | None = ...,
        threadIdUserSecret: builtins.bytes | None = ...,
        threadDsTimeframeOffset: builtins.int | None = ...,
        recentStickers: collections.abc.Iterable[global___StickerMetadata] | None = ...,
        pastParticipants: collections.abc.Iterable[global___PastParticipants]
        | None = ...,
        callLogRecords: collections.abc.Iterable[global___CallLogRecord] | None = ...,
        aiWaitListState: global___HistorySync.BotAIWaitListState.ValueType | None = ...,
        phoneNumberToLidMappings: collections.abc.Iterable[
            global___PhoneNumberToLIDMapping
        ]
        | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "aiWaitListState",
            b"aiWaitListState",
            "chunkOrder",
            b"chunkOrder",
            "globalSettings",
            b"globalSettings",
            "progress",
            b"progress",
            "syncType",
            b"syncType",
            "threadDsTimeframeOffset",
            b"threadDsTimeframeOffset",
            "threadIdUserSecret",
            b"threadIdUserSecret",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "aiWaitListState",
            b"aiWaitListState",
            "callLogRecords",
            b"callLogRecords",
            "chunkOrder",
            b"chunkOrder",
            "conversations",
            b"conversations",
            "globalSettings",
            b"globalSettings",
            "pastParticipants",
            b"pastParticipants",
            "phoneNumberToLidMappings",
            b"phoneNumberToLidMappings",
            "progress",
            b"progress",
            "pushnames",
            b"pushnames",
            "recentStickers",
            b"recentStickers",
            "statusV3Messages",
            b"statusV3Messages",
            "syncType",
            b"syncType",
            "threadDsTimeframeOffset",
            b"threadDsTimeframeOffset",
            "threadIdUserSecret",
            b"threadIdUserSecret",
        ],
    ) -> None: ...

global___HistorySync = HistorySync

@typing_extensions.final
class HistorySyncMsg(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MESSAGE_FIELD_NUMBER: builtins.int
    MSGORDERID_FIELD_NUMBER: builtins.int
    @property
    def message(self) -> global___WebMessageInfo: ...
    msgOrderId: builtins.int
    def __init__(
        self,
        *,
        message: global___WebMessageInfo | None = ...,
        msgOrderId: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "message", b"message", "msgOrderId", b"msgOrderId"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "message", b"message", "msgOrderId", b"msgOrderId"
        ],
    ) -> None: ...

global___HistorySyncMsg = HistorySyncMsg

@typing_extensions.final
class GroupParticipant(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _RankEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            GroupParticipant._Rank.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        REGULAR: GroupParticipant._Rank.ValueType  # 0
        ADMIN: GroupParticipant._Rank.ValueType  # 1
        SUPERADMIN: GroupParticipant._Rank.ValueType  # 2

    class Rank(_Rank, metaclass=_RankEnumTypeWrapper): ...
    REGULAR: GroupParticipant.Rank.ValueType  # 0
    ADMIN: GroupParticipant.Rank.ValueType  # 1
    SUPERADMIN: GroupParticipant.Rank.ValueType  # 2

    USERJID_FIELD_NUMBER: builtins.int
    RANK_FIELD_NUMBER: builtins.int
    userJid: builtins.str
    rank: global___GroupParticipant.Rank.ValueType
    def __init__(
        self,
        *,
        userJid: builtins.str | None = ...,
        rank: global___GroupParticipant.Rank.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["rank", b"rank", "userJid", b"userJid"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["rank", b"rank", "userJid", b"userJid"],
    ) -> None: ...

global___GroupParticipant = GroupParticipant

@typing_extensions.final
class GlobalSettings(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LIGHTTHEMEWALLPAPER_FIELD_NUMBER: builtins.int
    MEDIAVISIBILITY_FIELD_NUMBER: builtins.int
    DARKTHEMEWALLPAPER_FIELD_NUMBER: builtins.int
    AUTODOWNLOADWIFI_FIELD_NUMBER: builtins.int
    AUTODOWNLOADCELLULAR_FIELD_NUMBER: builtins.int
    AUTODOWNLOADROAMING_FIELD_NUMBER: builtins.int
    SHOWINDIVIDUALNOTIFICATIONSPREVIEW_FIELD_NUMBER: builtins.int
    SHOWGROUPNOTIFICATIONSPREVIEW_FIELD_NUMBER: builtins.int
    DISAPPEARINGMODEDURATION_FIELD_NUMBER: builtins.int
    DISAPPEARINGMODETIMESTAMP_FIELD_NUMBER: builtins.int
    AVATARUSERSETTINGS_FIELD_NUMBER: builtins.int
    FONTSIZE_FIELD_NUMBER: builtins.int
    SECURITYNOTIFICATIONS_FIELD_NUMBER: builtins.int
    AUTOUNARCHIVECHATS_FIELD_NUMBER: builtins.int
    VIDEOQUALITYMODE_FIELD_NUMBER: builtins.int
    PHOTOQUALITYMODE_FIELD_NUMBER: builtins.int
    INDIVIDUALNOTIFICATIONSETTINGS_FIELD_NUMBER: builtins.int
    GROUPNOTIFICATIONSETTINGS_FIELD_NUMBER: builtins.int
    @property
    def lightThemeWallpaper(self) -> global___WallpaperSettings: ...
    mediaVisibility: global___MediaVisibility.ValueType
    @property
    def darkThemeWallpaper(self) -> global___WallpaperSettings: ...
    @property
    def autoDownloadWiFi(self) -> global___AutoDownloadSettings: ...
    @property
    def autoDownloadCellular(self) -> global___AutoDownloadSettings: ...
    @property
    def autoDownloadRoaming(self) -> global___AutoDownloadSettings: ...
    showIndividualNotificationsPreview: builtins.bool
    showGroupNotificationsPreview: builtins.bool
    disappearingModeDuration: builtins.int
    disappearingModeTimestamp: builtins.int
    @property
    def avatarUserSettings(self) -> global___AvatarUserSettings: ...
    fontSize: builtins.int
    securityNotifications: builtins.bool
    autoUnarchiveChats: builtins.bool
    videoQualityMode: builtins.int
    photoQualityMode: builtins.int
    @property
    def individualNotificationSettings(self) -> global___NotificationSettings: ...
    @property
    def groupNotificationSettings(self) -> global___NotificationSettings: ...
    def __init__(
        self,
        *,
        lightThemeWallpaper: global___WallpaperSettings | None = ...,
        mediaVisibility: global___MediaVisibility.ValueType | None = ...,
        darkThemeWallpaper: global___WallpaperSettings | None = ...,
        autoDownloadWiFi: global___AutoDownloadSettings | None = ...,
        autoDownloadCellular: global___AutoDownloadSettings | None = ...,
        autoDownloadRoaming: global___AutoDownloadSettings | None = ...,
        showIndividualNotificationsPreview: builtins.bool | None = ...,
        showGroupNotificationsPreview: builtins.bool | None = ...,
        disappearingModeDuration: builtins.int | None = ...,
        disappearingModeTimestamp: builtins.int | None = ...,
        avatarUserSettings: global___AvatarUserSettings | None = ...,
        fontSize: builtins.int | None = ...,
        securityNotifications: builtins.bool | None = ...,
        autoUnarchiveChats: builtins.bool | None = ...,
        videoQualityMode: builtins.int | None = ...,
        photoQualityMode: builtins.int | None = ...,
        individualNotificationSettings: global___NotificationSettings | None = ...,
        groupNotificationSettings: global___NotificationSettings | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "autoDownloadCellular",
            b"autoDownloadCellular",
            "autoDownloadRoaming",
            b"autoDownloadRoaming",
            "autoDownloadWiFi",
            b"autoDownloadWiFi",
            "autoUnarchiveChats",
            b"autoUnarchiveChats",
            "avatarUserSettings",
            b"avatarUserSettings",
            "darkThemeWallpaper",
            b"darkThemeWallpaper",
            "disappearingModeDuration",
            b"disappearingModeDuration",
            "disappearingModeTimestamp",
            b"disappearingModeTimestamp",
            "fontSize",
            b"fontSize",
            "groupNotificationSettings",
            b"groupNotificationSettings",
            "individualNotificationSettings",
            b"individualNotificationSettings",
            "lightThemeWallpaper",
            b"lightThemeWallpaper",
            "mediaVisibility",
            b"mediaVisibility",
            "photoQualityMode",
            b"photoQualityMode",
            "securityNotifications",
            b"securityNotifications",
            "showGroupNotificationsPreview",
            b"showGroupNotificationsPreview",
            "showIndividualNotificationsPreview",
            b"showIndividualNotificationsPreview",
            "videoQualityMode",
            b"videoQualityMode",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "autoDownloadCellular",
            b"autoDownloadCellular",
            "autoDownloadRoaming",
            b"autoDownloadRoaming",
            "autoDownloadWiFi",
            b"autoDownloadWiFi",
            "autoUnarchiveChats",
            b"autoUnarchiveChats",
            "avatarUserSettings",
            b"avatarUserSettings",
            "darkThemeWallpaper",
            b"darkThemeWallpaper",
            "disappearingModeDuration",
            b"disappearingModeDuration",
            "disappearingModeTimestamp",
            b"disappearingModeTimestamp",
            "fontSize",
            b"fontSize",
            "groupNotificationSettings",
            b"groupNotificationSettings",
            "individualNotificationSettings",
            b"individualNotificationSettings",
            "lightThemeWallpaper",
            b"lightThemeWallpaper",
            "mediaVisibility",
            b"mediaVisibility",
            "photoQualityMode",
            b"photoQualityMode",
            "securityNotifications",
            b"securityNotifications",
            "showGroupNotificationsPreview",
            b"showGroupNotificationsPreview",
            "showIndividualNotificationsPreview",
            b"showIndividualNotificationsPreview",
            "videoQualityMode",
            b"videoQualityMode",
        ],
    ) -> None: ...

global___GlobalSettings = GlobalSettings

@typing_extensions.final
class Conversation(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _EndOfHistoryTransferTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            Conversation._EndOfHistoryTransferType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY: Conversation._EndOfHistoryTransferType.ValueType  # 0
        COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY: Conversation._EndOfHistoryTransferType.ValueType  # 1
        COMPLETE_ON_DEMAND_SYNC_BUT_MORE_MSG_REMAIN_ON_PRIMARY: Conversation._EndOfHistoryTransferType.ValueType  # 2

    class EndOfHistoryTransferType(
        _EndOfHistoryTransferType, metaclass=_EndOfHistoryTransferTypeEnumTypeWrapper
    ): ...
    COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY: Conversation.EndOfHistoryTransferType.ValueType  # 0
    COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY: Conversation.EndOfHistoryTransferType.ValueType  # 1
    COMPLETE_ON_DEMAND_SYNC_BUT_MORE_MSG_REMAIN_ON_PRIMARY: Conversation.EndOfHistoryTransferType.ValueType  # 2

    ID_FIELD_NUMBER: builtins.int
    MESSAGES_FIELD_NUMBER: builtins.int
    NEWJID_FIELD_NUMBER: builtins.int
    OLDJID_FIELD_NUMBER: builtins.int
    LASTMSGTIMESTAMP_FIELD_NUMBER: builtins.int
    UNREADCOUNT_FIELD_NUMBER: builtins.int
    READONLY_FIELD_NUMBER: builtins.int
    ENDOFHISTORYTRANSFER_FIELD_NUMBER: builtins.int
    EPHEMERALEXPIRATION_FIELD_NUMBER: builtins.int
    EPHEMERALSETTINGTIMESTAMP_FIELD_NUMBER: builtins.int
    ENDOFHISTORYTRANSFERTYPE_FIELD_NUMBER: builtins.int
    CONVERSATIONTIMESTAMP_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PHASH_FIELD_NUMBER: builtins.int
    NOTSPAM_FIELD_NUMBER: builtins.int
    ARCHIVED_FIELD_NUMBER: builtins.int
    DISAPPEARINGMODE_FIELD_NUMBER: builtins.int
    UNREADMENTIONCOUNT_FIELD_NUMBER: builtins.int
    MARKEDASUNREAD_FIELD_NUMBER: builtins.int
    PARTICIPANT_FIELD_NUMBER: builtins.int
    TCTOKEN_FIELD_NUMBER: builtins.int
    TCTOKENTIMESTAMP_FIELD_NUMBER: builtins.int
    CONTACTPRIMARYIDENTITYKEY_FIELD_NUMBER: builtins.int
    PINNED_FIELD_NUMBER: builtins.int
    MUTEENDTIME_FIELD_NUMBER: builtins.int
    WALLPAPER_FIELD_NUMBER: builtins.int
    MEDIAVISIBILITY_FIELD_NUMBER: builtins.int
    TCTOKENSENDERTIMESTAMP_FIELD_NUMBER: builtins.int
    SUSPENDED_FIELD_NUMBER: builtins.int
    TERMINATED_FIELD_NUMBER: builtins.int
    CREATEDAT_FIELD_NUMBER: builtins.int
    CREATEDBY_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    SUPPORT_FIELD_NUMBER: builtins.int
    ISPARENTGROUP_FIELD_NUMBER: builtins.int
    PARENTGROUPID_FIELD_NUMBER: builtins.int
    ISDEFAULTSUBGROUP_FIELD_NUMBER: builtins.int
    DISPLAYNAME_FIELD_NUMBER: builtins.int
    PNJID_FIELD_NUMBER: builtins.int
    SHAREOWNPN_FIELD_NUMBER: builtins.int
    PNHDUPLICATELIDTHREAD_FIELD_NUMBER: builtins.int
    LIDJID_FIELD_NUMBER: builtins.int
    USERNAME_FIELD_NUMBER: builtins.int
    LIDORIGINTYPE_FIELD_NUMBER: builtins.int
    COMMENTSCOUNT_FIELD_NUMBER: builtins.int
    id: builtins.str
    @property
    def messages(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___HistorySyncMsg
    ]: ...
    newJid: builtins.str
    oldJid: builtins.str
    lastMsgTimestamp: builtins.int
    unreadCount: builtins.int
    readOnly: builtins.bool
    endOfHistoryTransfer: builtins.bool
    ephemeralExpiration: builtins.int
    ephemeralSettingTimestamp: builtins.int
    endOfHistoryTransferType: global___Conversation.EndOfHistoryTransferType.ValueType
    conversationTimestamp: builtins.int
    name: builtins.str
    pHash: builtins.str
    notSpam: builtins.bool
    archived: builtins.bool
    @property
    def disappearingMode(self) -> global___DisappearingMode: ...
    unreadMentionCount: builtins.int
    markedAsUnread: builtins.bool
    @property
    def participant(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___GroupParticipant
    ]: ...
    tcToken: builtins.bytes
    tcTokenTimestamp: builtins.int
    contactPrimaryIdentityKey: builtins.bytes
    pinned: builtins.int
    muteEndTime: builtins.int
    @property
    def wallpaper(self) -> global___WallpaperSettings: ...
    mediaVisibility: global___MediaVisibility.ValueType
    tcTokenSenderTimestamp: builtins.int
    suspended: builtins.bool
    terminated: builtins.bool
    createdAt: builtins.int
    createdBy: builtins.str
    description: builtins.str
    support: builtins.bool
    isParentGroup: builtins.bool
    parentGroupId: builtins.str
    isDefaultSubgroup: builtins.bool
    displayName: builtins.str
    pnJid: builtins.str
    shareOwnPn: builtins.bool
    pnhDuplicateLidThread: builtins.bool
    lidJid: builtins.str
    username: builtins.str
    lidOriginType: builtins.str
    commentsCount: builtins.int
    def __init__(
        self,
        *,
        id: builtins.str | None = ...,
        messages: collections.abc.Iterable[global___HistorySyncMsg] | None = ...,
        newJid: builtins.str | None = ...,
        oldJid: builtins.str | None = ...,
        lastMsgTimestamp: builtins.int | None = ...,
        unreadCount: builtins.int | None = ...,
        readOnly: builtins.bool | None = ...,
        endOfHistoryTransfer: builtins.bool | None = ...,
        ephemeralExpiration: builtins.int | None = ...,
        ephemeralSettingTimestamp: builtins.int | None = ...,
        endOfHistoryTransferType: global___Conversation.EndOfHistoryTransferType.ValueType
        | None = ...,
        conversationTimestamp: builtins.int | None = ...,
        name: builtins.str | None = ...,
        pHash: builtins.str | None = ...,
        notSpam: builtins.bool | None = ...,
        archived: builtins.bool | None = ...,
        disappearingMode: global___DisappearingMode | None = ...,
        unreadMentionCount: builtins.int | None = ...,
        markedAsUnread: builtins.bool | None = ...,
        participant: collections.abc.Iterable[global___GroupParticipant] | None = ...,
        tcToken: builtins.bytes | None = ...,
        tcTokenTimestamp: builtins.int | None = ...,
        contactPrimaryIdentityKey: builtins.bytes | None = ...,
        pinned: builtins.int | None = ...,
        muteEndTime: builtins.int | None = ...,
        wallpaper: global___WallpaperSettings | None = ...,
        mediaVisibility: global___MediaVisibility.ValueType | None = ...,
        tcTokenSenderTimestamp: builtins.int | None = ...,
        suspended: builtins.bool | None = ...,
        terminated: builtins.bool | None = ...,
        createdAt: builtins.int | None = ...,
        createdBy: builtins.str | None = ...,
        description: builtins.str | None = ...,
        support: builtins.bool | None = ...,
        isParentGroup: builtins.bool | None = ...,
        parentGroupId: builtins.str | None = ...,
        isDefaultSubgroup: builtins.bool | None = ...,
        displayName: builtins.str | None = ...,
        pnJid: builtins.str | None = ...,
        shareOwnPn: builtins.bool | None = ...,
        pnhDuplicateLidThread: builtins.bool | None = ...,
        lidJid: builtins.str | None = ...,
        username: builtins.str | None = ...,
        lidOriginType: builtins.str | None = ...,
        commentsCount: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "archived",
            b"archived",
            "commentsCount",
            b"commentsCount",
            "contactPrimaryIdentityKey",
            b"contactPrimaryIdentityKey",
            "conversationTimestamp",
            b"conversationTimestamp",
            "createdAt",
            b"createdAt",
            "createdBy",
            b"createdBy",
            "description",
            b"description",
            "disappearingMode",
            b"disappearingMode",
            "displayName",
            b"displayName",
            "endOfHistoryTransfer",
            b"endOfHistoryTransfer",
            "endOfHistoryTransferType",
            b"endOfHistoryTransferType",
            "ephemeralExpiration",
            b"ephemeralExpiration",
            "ephemeralSettingTimestamp",
            b"ephemeralSettingTimestamp",
            "id",
            b"id",
            "isDefaultSubgroup",
            b"isDefaultSubgroup",
            "isParentGroup",
            b"isParentGroup",
            "lastMsgTimestamp",
            b"lastMsgTimestamp",
            "lidJid",
            b"lidJid",
            "lidOriginType",
            b"lidOriginType",
            "markedAsUnread",
            b"markedAsUnread",
            "mediaVisibility",
            b"mediaVisibility",
            "muteEndTime",
            b"muteEndTime",
            "name",
            b"name",
            "newJid",
            b"newJid",
            "notSpam",
            b"notSpam",
            "oldJid",
            b"oldJid",
            "pHash",
            b"pHash",
            "parentGroupId",
            b"parentGroupId",
            "pinned",
            b"pinned",
            "pnJid",
            b"pnJid",
            "pnhDuplicateLidThread",
            b"pnhDuplicateLidThread",
            "readOnly",
            b"readOnly",
            "shareOwnPn",
            b"shareOwnPn",
            "support",
            b"support",
            "suspended",
            b"suspended",
            "tcToken",
            b"tcToken",
            "tcTokenSenderTimestamp",
            b"tcTokenSenderTimestamp",
            "tcTokenTimestamp",
            b"tcTokenTimestamp",
            "terminated",
            b"terminated",
            "unreadCount",
            b"unreadCount",
            "unreadMentionCount",
            b"unreadMentionCount",
            "username",
            b"username",
            "wallpaper",
            b"wallpaper",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "archived",
            b"archived",
            "commentsCount",
            b"commentsCount",
            "contactPrimaryIdentityKey",
            b"contactPrimaryIdentityKey",
            "conversationTimestamp",
            b"conversationTimestamp",
            "createdAt",
            b"createdAt",
            "createdBy",
            b"createdBy",
            "description",
            b"description",
            "disappearingMode",
            b"disappearingMode",
            "displayName",
            b"displayName",
            "endOfHistoryTransfer",
            b"endOfHistoryTransfer",
            "endOfHistoryTransferType",
            b"endOfHistoryTransferType",
            "ephemeralExpiration",
            b"ephemeralExpiration",
            "ephemeralSettingTimestamp",
            b"ephemeralSettingTimestamp",
            "id",
            b"id",
            "isDefaultSubgroup",
            b"isDefaultSubgroup",
            "isParentGroup",
            b"isParentGroup",
            "lastMsgTimestamp",
            b"lastMsgTimestamp",
            "lidJid",
            b"lidJid",
            "lidOriginType",
            b"lidOriginType",
            "markedAsUnread",
            b"markedAsUnread",
            "mediaVisibility",
            b"mediaVisibility",
            "messages",
            b"messages",
            "muteEndTime",
            b"muteEndTime",
            "name",
            b"name",
            "newJid",
            b"newJid",
            "notSpam",
            b"notSpam",
            "oldJid",
            b"oldJid",
            "pHash",
            b"pHash",
            "parentGroupId",
            b"parentGroupId",
            "participant",
            b"participant",
            "pinned",
            b"pinned",
            "pnJid",
            b"pnJid",
            "pnhDuplicateLidThread",
            b"pnhDuplicateLidThread",
            "readOnly",
            b"readOnly",
            "shareOwnPn",
            b"shareOwnPn",
            "support",
            b"support",
            "suspended",
            b"suspended",
            "tcToken",
            b"tcToken",
            "tcTokenSenderTimestamp",
            b"tcTokenSenderTimestamp",
            "tcTokenTimestamp",
            b"tcTokenTimestamp",
            "terminated",
            b"terminated",
            "unreadCount",
            b"unreadCount",
            "unreadMentionCount",
            b"unreadMentionCount",
            "username",
            b"username",
            "wallpaper",
            b"wallpaper",
        ],
    ) -> None: ...

global___Conversation = Conversation

@typing_extensions.final
class AvatarUserSettings(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FBID_FIELD_NUMBER: builtins.int
    PASSWORD_FIELD_NUMBER: builtins.int
    fbid: builtins.str
    password: builtins.str
    def __init__(
        self,
        *,
        fbid: builtins.str | None = ...,
        password: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["fbid", b"fbid", "password", b"password"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["fbid", b"fbid", "password", b"password"],
    ) -> None: ...

global___AvatarUserSettings = AvatarUserSettings

@typing_extensions.final
class AutoDownloadSettings(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DOWNLOADIMAGES_FIELD_NUMBER: builtins.int
    DOWNLOADAUDIO_FIELD_NUMBER: builtins.int
    DOWNLOADVIDEO_FIELD_NUMBER: builtins.int
    DOWNLOADDOCUMENTS_FIELD_NUMBER: builtins.int
    downloadImages: builtins.bool
    downloadAudio: builtins.bool
    downloadVideo: builtins.bool
    downloadDocuments: builtins.bool
    def __init__(
        self,
        *,
        downloadImages: builtins.bool | None = ...,
        downloadAudio: builtins.bool | None = ...,
        downloadVideo: builtins.bool | None = ...,
        downloadDocuments: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "downloadAudio",
            b"downloadAudio",
            "downloadDocuments",
            b"downloadDocuments",
            "downloadImages",
            b"downloadImages",
            "downloadVideo",
            b"downloadVideo",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "downloadAudio",
            b"downloadAudio",
            "downloadDocuments",
            b"downloadDocuments",
            "downloadImages",
            b"downloadImages",
            "downloadVideo",
            b"downloadVideo",
        ],
    ) -> None: ...

global___AutoDownloadSettings = AutoDownloadSettings

@typing_extensions.final
class ServerErrorReceipt(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    STANZAID_FIELD_NUMBER: builtins.int
    stanzaId: builtins.str
    def __init__(
        self,
        *,
        stanzaId: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["stanzaId", b"stanzaId"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["stanzaId", b"stanzaId"]
    ) -> None: ...

global___ServerErrorReceipt = ServerErrorReceipt

@typing_extensions.final
class MediaRetryNotification(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _ResultTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            MediaRetryNotification._ResultType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        GENERAL_ERROR: MediaRetryNotification._ResultType.ValueType  # 0
        SUCCESS: MediaRetryNotification._ResultType.ValueType  # 1
        NOT_FOUND: MediaRetryNotification._ResultType.ValueType  # 2
        DECRYPTION_ERROR: MediaRetryNotification._ResultType.ValueType  # 3

    class ResultType(_ResultType, metaclass=_ResultTypeEnumTypeWrapper): ...
    GENERAL_ERROR: MediaRetryNotification.ResultType.ValueType  # 0
    SUCCESS: MediaRetryNotification.ResultType.ValueType  # 1
    NOT_FOUND: MediaRetryNotification.ResultType.ValueType  # 2
    DECRYPTION_ERROR: MediaRetryNotification.ResultType.ValueType  # 3

    STANZAID_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    RESULT_FIELD_NUMBER: builtins.int
    stanzaId: builtins.str
    directPath: builtins.str
    result: global___MediaRetryNotification.ResultType.ValueType
    def __init__(
        self,
        *,
        stanzaId: builtins.str | None = ...,
        directPath: builtins.str | None = ...,
        result: global___MediaRetryNotification.ResultType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "directPath", b"directPath", "result", b"result", "stanzaId", b"stanzaId"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "directPath", b"directPath", "result", b"result", "stanzaId", b"stanzaId"
        ],
    ) -> None: ...

global___MediaRetryNotification = MediaRetryNotification

@typing_extensions.final
class MessageKey(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REMOTEJID_FIELD_NUMBER: builtins.int
    FROMME_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    PARTICIPANT_FIELD_NUMBER: builtins.int
    remoteJid: builtins.str
    fromMe: builtins.bool
    id: builtins.str
    participant: builtins.str
    def __init__(
        self,
        *,
        remoteJid: builtins.str | None = ...,
        fromMe: builtins.bool | None = ...,
        id: builtins.str | None = ...,
        participant: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "fromMe",
            b"fromMe",
            "id",
            b"id",
            "participant",
            b"participant",
            "remoteJid",
            b"remoteJid",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "fromMe",
            b"fromMe",
            "id",
            b"id",
            "participant",
            b"participant",
            "remoteJid",
            b"remoteJid",
        ],
    ) -> None: ...

global___MessageKey = MessageKey

@typing_extensions.final
class SyncdVersion(google.protobuf.message.Message):
    """Duplicate type omitted
    message MessageKey {
       optional string remoteJid = 1;
       optional bool fromMe = 2;
       optional string id = 3;
       optional string participant = 4;
    }
    """

    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VERSION_FIELD_NUMBER: builtins.int
    version: builtins.int
    def __init__(
        self,
        *,
        version: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["version", b"version"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["version", b"version"]
    ) -> None: ...

global___SyncdVersion = SyncdVersion

@typing_extensions.final
class SyncdValue(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BLOB_FIELD_NUMBER: builtins.int
    blob: builtins.bytes
    def __init__(
        self,
        *,
        blob: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["blob", b"blob"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["blob", b"blob"]
    ) -> None: ...

global___SyncdValue = SyncdValue

@typing_extensions.final
class SyncdSnapshot(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VERSION_FIELD_NUMBER: builtins.int
    RECORDS_FIELD_NUMBER: builtins.int
    MAC_FIELD_NUMBER: builtins.int
    KEYID_FIELD_NUMBER: builtins.int
    @property
    def version(self) -> global___SyncdVersion: ...
    @property
    def records(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___SyncdRecord
    ]: ...
    mac: builtins.bytes
    @property
    def keyId(self) -> global___KeyId: ...
    def __init__(
        self,
        *,
        version: global___SyncdVersion | None = ...,
        records: collections.abc.Iterable[global___SyncdRecord] | None = ...,
        mac: builtins.bytes | None = ...,
        keyId: global___KeyId | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "keyId", b"keyId", "mac", b"mac", "version", b"version"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "keyId",
            b"keyId",
            "mac",
            b"mac",
            "records",
            b"records",
            "version",
            b"version",
        ],
    ) -> None: ...

global___SyncdSnapshot = SyncdSnapshot

@typing_extensions.final
class SyncdRecord(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INDEX_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    KEYID_FIELD_NUMBER: builtins.int
    @property
    def index(self) -> global___SyncdIndex: ...
    @property
    def value(self) -> global___SyncdValue: ...
    @property
    def keyId(self) -> global___KeyId: ...
    def __init__(
        self,
        *,
        index: global___SyncdIndex | None = ...,
        value: global___SyncdValue | None = ...,
        keyId: global___KeyId | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "index", b"index", "keyId", b"keyId", "value", b"value"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "index", b"index", "keyId", b"keyId", "value", b"value"
        ],
    ) -> None: ...

global___SyncdRecord = SyncdRecord

@typing_extensions.final
class SyncdPatch(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VERSION_FIELD_NUMBER: builtins.int
    MUTATIONS_FIELD_NUMBER: builtins.int
    EXTERNALMUTATIONS_FIELD_NUMBER: builtins.int
    SNAPSHOTMAC_FIELD_NUMBER: builtins.int
    PATCHMAC_FIELD_NUMBER: builtins.int
    KEYID_FIELD_NUMBER: builtins.int
    EXITCODE_FIELD_NUMBER: builtins.int
    DEVICEINDEX_FIELD_NUMBER: builtins.int
    CLIENTDEBUGDATA_FIELD_NUMBER: builtins.int
    @property
    def version(self) -> global___SyncdVersion: ...
    @property
    def mutations(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___SyncdMutation
    ]: ...
    @property
    def externalMutations(self) -> global___ExternalBlobReference: ...
    snapshotMac: builtins.bytes
    patchMac: builtins.bytes
    @property
    def keyId(self) -> global___KeyId: ...
    @property
    def exitCode(self) -> global___ExitCode: ...
    deviceIndex: builtins.int
    clientDebugData: builtins.bytes
    def __init__(
        self,
        *,
        version: global___SyncdVersion | None = ...,
        mutations: collections.abc.Iterable[global___SyncdMutation] | None = ...,
        externalMutations: global___ExternalBlobReference | None = ...,
        snapshotMac: builtins.bytes | None = ...,
        patchMac: builtins.bytes | None = ...,
        keyId: global___KeyId | None = ...,
        exitCode: global___ExitCode | None = ...,
        deviceIndex: builtins.int | None = ...,
        clientDebugData: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "clientDebugData",
            b"clientDebugData",
            "deviceIndex",
            b"deviceIndex",
            "exitCode",
            b"exitCode",
            "externalMutations",
            b"externalMutations",
            "keyId",
            b"keyId",
            "patchMac",
            b"patchMac",
            "snapshotMac",
            b"snapshotMac",
            "version",
            b"version",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "clientDebugData",
            b"clientDebugData",
            "deviceIndex",
            b"deviceIndex",
            "exitCode",
            b"exitCode",
            "externalMutations",
            b"externalMutations",
            "keyId",
            b"keyId",
            "mutations",
            b"mutations",
            "patchMac",
            b"patchMac",
            "snapshotMac",
            b"snapshotMac",
            "version",
            b"version",
        ],
    ) -> None: ...

global___SyncdPatch = SyncdPatch

@typing_extensions.final
class SyncdMutations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___SyncdMutations = SyncdMutations

@typing_extensions.final
class SyncdMutation(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _SyncdOperationEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            SyncdMutation._SyncdOperation.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        SET: SyncdMutation._SyncdOperation.ValueType  # 0
        REMOVE: SyncdMutation._SyncdOperation.ValueType  # 1

    class SyncdOperation(_SyncdOperation, metaclass=_SyncdOperationEnumTypeWrapper): ...
    SET: SyncdMutation.SyncdOperation.ValueType  # 0
    REMOVE: SyncdMutation.SyncdOperation.ValueType  # 1

    OPERATION_FIELD_NUMBER: builtins.int
    RECORD_FIELD_NUMBER: builtins.int
    operation: global___SyncdMutation.SyncdOperation.ValueType
    @property
    def record(self) -> global___SyncdRecord: ...
    def __init__(
        self,
        *,
        operation: global___SyncdMutation.SyncdOperation.ValueType | None = ...,
        record: global___SyncdRecord | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "operation", b"operation", "record", b"record"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "operation", b"operation", "record", b"record"
        ],
    ) -> None: ...

global___SyncdMutation = SyncdMutation

@typing_extensions.final
class SyncdIndex(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BLOB_FIELD_NUMBER: builtins.int
    blob: builtins.bytes
    def __init__(
        self,
        *,
        blob: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["blob", b"blob"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["blob", b"blob"]
    ) -> None: ...

global___SyncdIndex = SyncdIndex

@typing_extensions.final
class KeyId(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    id: builtins.bytes
    def __init__(
        self,
        *,
        id: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["id", b"id"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["id", b"id"]
    ) -> None: ...

global___KeyId = KeyId

@typing_extensions.final
class ExternalBlobReference(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MEDIAKEY_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    HANDLE_FIELD_NUMBER: builtins.int
    FILESIZEBYTES_FIELD_NUMBER: builtins.int
    FILESHA256_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    mediaKey: builtins.bytes
    directPath: builtins.str
    handle: builtins.str
    fileSizeBytes: builtins.int
    fileSha256: builtins.bytes
    fileEncSha256: builtins.bytes
    def __init__(
        self,
        *,
        mediaKey: builtins.bytes | None = ...,
        directPath: builtins.str | None = ...,
        handle: builtins.str | None = ...,
        fileSizeBytes: builtins.int | None = ...,
        fileSha256: builtins.bytes | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileSha256",
            b"fileSha256",
            "fileSizeBytes",
            b"fileSizeBytes",
            "handle",
            b"handle",
            "mediaKey",
            b"mediaKey",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileSha256",
            b"fileSha256",
            "fileSizeBytes",
            b"fileSizeBytes",
            "handle",
            b"handle",
            "mediaKey",
            b"mediaKey",
        ],
    ) -> None: ...

global___ExternalBlobReference = ExternalBlobReference

@typing_extensions.final
class ExitCode(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CODE_FIELD_NUMBER: builtins.int
    TEXT_FIELD_NUMBER: builtins.int
    code: builtins.int
    text: builtins.str
    def __init__(
        self,
        *,
        code: builtins.int | None = ...,
        text: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["code", b"code", "text", b"text"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["code", b"code", "text", b"text"]
    ) -> None: ...

global___ExitCode = ExitCode

@typing_extensions.final
class SyncActionValue(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TIMESTAMP_FIELD_NUMBER: builtins.int
    STARACTION_FIELD_NUMBER: builtins.int
    CONTACTACTION_FIELD_NUMBER: builtins.int
    MUTEACTION_FIELD_NUMBER: builtins.int
    PINACTION_FIELD_NUMBER: builtins.int
    SECURITYNOTIFICATIONSETTING_FIELD_NUMBER: builtins.int
    PUSHNAMESETTING_FIELD_NUMBER: builtins.int
    QUICKREPLYACTION_FIELD_NUMBER: builtins.int
    RECENTEMOJIWEIGHTSACTION_FIELD_NUMBER: builtins.int
    LABELEDITACTION_FIELD_NUMBER: builtins.int
    LABELASSOCIATIONACTION_FIELD_NUMBER: builtins.int
    LOCALESETTING_FIELD_NUMBER: builtins.int
    ARCHIVECHATACTION_FIELD_NUMBER: builtins.int
    DELETEMESSAGEFORMEACTION_FIELD_NUMBER: builtins.int
    KEYEXPIRATION_FIELD_NUMBER: builtins.int
    MARKCHATASREADACTION_FIELD_NUMBER: builtins.int
    CLEARCHATACTION_FIELD_NUMBER: builtins.int
    DELETECHATACTION_FIELD_NUMBER: builtins.int
    UNARCHIVECHATSSETTING_FIELD_NUMBER: builtins.int
    PRIMARYFEATURE_FIELD_NUMBER: builtins.int
    ANDROIDUNSUPPORTEDACTIONS_FIELD_NUMBER: builtins.int
    AGENTACTION_FIELD_NUMBER: builtins.int
    SUBSCRIPTIONACTION_FIELD_NUMBER: builtins.int
    USERSTATUSMUTEACTION_FIELD_NUMBER: builtins.int
    TIMEFORMATACTION_FIELD_NUMBER: builtins.int
    NUXACTION_FIELD_NUMBER: builtins.int
    PRIMARYVERSIONACTION_FIELD_NUMBER: builtins.int
    STICKERACTION_FIELD_NUMBER: builtins.int
    REMOVERECENTSTICKERACTION_FIELD_NUMBER: builtins.int
    CHATASSIGNMENT_FIELD_NUMBER: builtins.int
    CHATASSIGNMENTOPENEDSTATUS_FIELD_NUMBER: builtins.int
    PNFORLIDCHATACTION_FIELD_NUMBER: builtins.int
    MARKETINGMESSAGEACTION_FIELD_NUMBER: builtins.int
    MARKETINGMESSAGEBROADCASTACTION_FIELD_NUMBER: builtins.int
    EXTERNALWEBBETAACTION_FIELD_NUMBER: builtins.int
    PRIVACYSETTINGRELAYALLCALLS_FIELD_NUMBER: builtins.int
    CALLLOGACTION_FIELD_NUMBER: builtins.int
    STATUSPRIVACY_FIELD_NUMBER: builtins.int
    BOTWELCOMEREQUESTACTION_FIELD_NUMBER: builtins.int
    DELETEINDIVIDUALCALLLOG_FIELD_NUMBER: builtins.int
    LABELREORDERINGACTION_FIELD_NUMBER: builtins.int
    PAYMENTINFOACTION_FIELD_NUMBER: builtins.int
    timestamp: builtins.int
    @property
    def starAction(self) -> global___StarAction: ...
    @property
    def contactAction(self) -> global___ContactAction: ...
    @property
    def muteAction(self) -> global___MuteAction: ...
    @property
    def pinAction(self) -> global___PinAction: ...
    @property
    def securityNotificationSetting(self) -> global___SecurityNotificationSetting: ...
    @property
    def pushNameSetting(self) -> global___PushNameSetting: ...
    @property
    def quickReplyAction(self) -> global___QuickReplyAction: ...
    @property
    def recentEmojiWeightsAction(self) -> global___RecentEmojiWeightsAction: ...
    @property
    def labelEditAction(self) -> global___LabelEditAction: ...
    @property
    def labelAssociationAction(self) -> global___LabelAssociationAction: ...
    @property
    def localeSetting(self) -> global___LocaleSetting: ...
    @property
    def archiveChatAction(self) -> global___ArchiveChatAction: ...
    @property
    def deleteMessageForMeAction(self) -> global___DeleteMessageForMeAction: ...
    @property
    def keyExpiration(self) -> global___KeyExpiration: ...
    @property
    def markChatAsReadAction(self) -> global___MarkChatAsReadAction: ...
    @property
    def clearChatAction(self) -> global___ClearChatAction: ...
    @property
    def deleteChatAction(self) -> global___DeleteChatAction: ...
    @property
    def unarchiveChatsSetting(self) -> global___UnarchiveChatsSetting: ...
    @property
    def primaryFeature(self) -> global___PrimaryFeature: ...
    @property
    def androidUnsupportedActions(self) -> global___AndroidUnsupportedActions: ...
    @property
    def agentAction(self) -> global___AgentAction: ...
    @property
    def subscriptionAction(self) -> global___SubscriptionAction: ...
    @property
    def userStatusMuteAction(self) -> global___UserStatusMuteAction: ...
    @property
    def timeFormatAction(self) -> global___TimeFormatAction: ...
    @property
    def nuxAction(self) -> global___NuxAction: ...
    @property
    def primaryVersionAction(self) -> global___PrimaryVersionAction: ...
    @property
    def stickerAction(self) -> global___StickerAction: ...
    @property
    def removeRecentStickerAction(self) -> global___RemoveRecentStickerAction: ...
    @property
    def chatAssignment(self) -> global___ChatAssignmentAction: ...
    @property
    def chatAssignmentOpenedStatus(
        self,
    ) -> global___ChatAssignmentOpenedStatusAction: ...
    @property
    def pnForLidChatAction(self) -> global___PnForLidChatAction: ...
    @property
    def marketingMessageAction(self) -> global___MarketingMessageAction: ...
    @property
    def marketingMessageBroadcastAction(
        self,
    ) -> global___MarketingMessageBroadcastAction: ...
    @property
    def externalWebBetaAction(self) -> global___ExternalWebBetaAction: ...
    @property
    def privacySettingRelayAllCalls(self) -> global___PrivacySettingRelayAllCalls: ...
    @property
    def callLogAction(self) -> global___CallLogAction: ...
    @property
    def statusPrivacy(self) -> global___StatusPrivacyAction: ...
    @property
    def botWelcomeRequestAction(self) -> global___BotWelcomeRequestAction: ...
    @property
    def deleteIndividualCallLog(self) -> global___DeleteIndividualCallLogAction: ...
    @property
    def labelReorderingAction(self) -> global___LabelReorderingAction: ...
    @property
    def paymentInfoAction(self) -> global___PaymentInfoAction: ...
    def __init__(
        self,
        *,
        timestamp: builtins.int | None = ...,
        starAction: global___StarAction | None = ...,
        contactAction: global___ContactAction | None = ...,
        muteAction: global___MuteAction | None = ...,
        pinAction: global___PinAction | None = ...,
        securityNotificationSetting: global___SecurityNotificationSetting | None = ...,
        pushNameSetting: global___PushNameSetting | None = ...,
        quickReplyAction: global___QuickReplyAction | None = ...,
        recentEmojiWeightsAction: global___RecentEmojiWeightsAction | None = ...,
        labelEditAction: global___LabelEditAction | None = ...,
        labelAssociationAction: global___LabelAssociationAction | None = ...,
        localeSetting: global___LocaleSetting | None = ...,
        archiveChatAction: global___ArchiveChatAction | None = ...,
        deleteMessageForMeAction: global___DeleteMessageForMeAction | None = ...,
        keyExpiration: global___KeyExpiration | None = ...,
        markChatAsReadAction: global___MarkChatAsReadAction | None = ...,
        clearChatAction: global___ClearChatAction | None = ...,
        deleteChatAction: global___DeleteChatAction | None = ...,
        unarchiveChatsSetting: global___UnarchiveChatsSetting | None = ...,
        primaryFeature: global___PrimaryFeature | None = ...,
        androidUnsupportedActions: global___AndroidUnsupportedActions | None = ...,
        agentAction: global___AgentAction | None = ...,
        subscriptionAction: global___SubscriptionAction | None = ...,
        userStatusMuteAction: global___UserStatusMuteAction | None = ...,
        timeFormatAction: global___TimeFormatAction | None = ...,
        nuxAction: global___NuxAction | None = ...,
        primaryVersionAction: global___PrimaryVersionAction | None = ...,
        stickerAction: global___StickerAction | None = ...,
        removeRecentStickerAction: global___RemoveRecentStickerAction | None = ...,
        chatAssignment: global___ChatAssignmentAction | None = ...,
        chatAssignmentOpenedStatus: global___ChatAssignmentOpenedStatusAction
        | None = ...,
        pnForLidChatAction: global___PnForLidChatAction | None = ...,
        marketingMessageAction: global___MarketingMessageAction | None = ...,
        marketingMessageBroadcastAction: global___MarketingMessageBroadcastAction
        | None = ...,
        externalWebBetaAction: global___ExternalWebBetaAction | None = ...,
        privacySettingRelayAllCalls: global___PrivacySettingRelayAllCalls | None = ...,
        callLogAction: global___CallLogAction | None = ...,
        statusPrivacy: global___StatusPrivacyAction | None = ...,
        botWelcomeRequestAction: global___BotWelcomeRequestAction | None = ...,
        deleteIndividualCallLog: global___DeleteIndividualCallLogAction | None = ...,
        labelReorderingAction: global___LabelReorderingAction | None = ...,
        paymentInfoAction: global___PaymentInfoAction | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "agentAction",
            b"agentAction",
            "androidUnsupportedActions",
            b"androidUnsupportedActions",
            "archiveChatAction",
            b"archiveChatAction",
            "botWelcomeRequestAction",
            b"botWelcomeRequestAction",
            "callLogAction",
            b"callLogAction",
            "chatAssignment",
            b"chatAssignment",
            "chatAssignmentOpenedStatus",
            b"chatAssignmentOpenedStatus",
            "clearChatAction",
            b"clearChatAction",
            "contactAction",
            b"contactAction",
            "deleteChatAction",
            b"deleteChatAction",
            "deleteIndividualCallLog",
            b"deleteIndividualCallLog",
            "deleteMessageForMeAction",
            b"deleteMessageForMeAction",
            "externalWebBetaAction",
            b"externalWebBetaAction",
            "keyExpiration",
            b"keyExpiration",
            "labelAssociationAction",
            b"labelAssociationAction",
            "labelEditAction",
            b"labelEditAction",
            "labelReorderingAction",
            b"labelReorderingAction",
            "localeSetting",
            b"localeSetting",
            "markChatAsReadAction",
            b"markChatAsReadAction",
            "marketingMessageAction",
            b"marketingMessageAction",
            "marketingMessageBroadcastAction",
            b"marketingMessageBroadcastAction",
            "muteAction",
            b"muteAction",
            "nuxAction",
            b"nuxAction",
            "paymentInfoAction",
            b"paymentInfoAction",
            "pinAction",
            b"pinAction",
            "pnForLidChatAction",
            b"pnForLidChatAction",
            "primaryFeature",
            b"primaryFeature",
            "primaryVersionAction",
            b"primaryVersionAction",
            "privacySettingRelayAllCalls",
            b"privacySettingRelayAllCalls",
            "pushNameSetting",
            b"pushNameSetting",
            "quickReplyAction",
            b"quickReplyAction",
            "recentEmojiWeightsAction",
            b"recentEmojiWeightsAction",
            "removeRecentStickerAction",
            b"removeRecentStickerAction",
            "securityNotificationSetting",
            b"securityNotificationSetting",
            "starAction",
            b"starAction",
            "statusPrivacy",
            b"statusPrivacy",
            "stickerAction",
            b"stickerAction",
            "subscriptionAction",
            b"subscriptionAction",
            "timeFormatAction",
            b"timeFormatAction",
            "timestamp",
            b"timestamp",
            "unarchiveChatsSetting",
            b"unarchiveChatsSetting",
            "userStatusMuteAction",
            b"userStatusMuteAction",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "agentAction",
            b"agentAction",
            "androidUnsupportedActions",
            b"androidUnsupportedActions",
            "archiveChatAction",
            b"archiveChatAction",
            "botWelcomeRequestAction",
            b"botWelcomeRequestAction",
            "callLogAction",
            b"callLogAction",
            "chatAssignment",
            b"chatAssignment",
            "chatAssignmentOpenedStatus",
            b"chatAssignmentOpenedStatus",
            "clearChatAction",
            b"clearChatAction",
            "contactAction",
            b"contactAction",
            "deleteChatAction",
            b"deleteChatAction",
            "deleteIndividualCallLog",
            b"deleteIndividualCallLog",
            "deleteMessageForMeAction",
            b"deleteMessageForMeAction",
            "externalWebBetaAction",
            b"externalWebBetaAction",
            "keyExpiration",
            b"keyExpiration",
            "labelAssociationAction",
            b"labelAssociationAction",
            "labelEditAction",
            b"labelEditAction",
            "labelReorderingAction",
            b"labelReorderingAction",
            "localeSetting",
            b"localeSetting",
            "markChatAsReadAction",
            b"markChatAsReadAction",
            "marketingMessageAction",
            b"marketingMessageAction",
            "marketingMessageBroadcastAction",
            b"marketingMessageBroadcastAction",
            "muteAction",
            b"muteAction",
            "nuxAction",
            b"nuxAction",
            "paymentInfoAction",
            b"paymentInfoAction",
            "pinAction",
            b"pinAction",
            "pnForLidChatAction",
            b"pnForLidChatAction",
            "primaryFeature",
            b"primaryFeature",
            "primaryVersionAction",
            b"primaryVersionAction",
            "privacySettingRelayAllCalls",
            b"privacySettingRelayAllCalls",
            "pushNameSetting",
            b"pushNameSetting",
            "quickReplyAction",
            b"quickReplyAction",
            "recentEmojiWeightsAction",
            b"recentEmojiWeightsAction",
            "removeRecentStickerAction",
            b"removeRecentStickerAction",
            "securityNotificationSetting",
            b"securityNotificationSetting",
            "starAction",
            b"starAction",
            "statusPrivacy",
            b"statusPrivacy",
            "stickerAction",
            b"stickerAction",
            "subscriptionAction",
            b"subscriptionAction",
            "timeFormatAction",
            b"timeFormatAction",
            "timestamp",
            b"timestamp",
            "unarchiveChatsSetting",
            b"unarchiveChatsSetting",
            "userStatusMuteAction",
            b"userStatusMuteAction",
        ],
    ) -> None: ...

global___SyncActionValue = SyncActionValue

@typing_extensions.final
class UserStatusMuteAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MUTED_FIELD_NUMBER: builtins.int
    muted: builtins.bool
    def __init__(
        self,
        *,
        muted: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["muted", b"muted"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["muted", b"muted"]
    ) -> None: ...

global___UserStatusMuteAction = UserStatusMuteAction

@typing_extensions.final
class UnarchiveChatsSetting(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    UNARCHIVECHATS_FIELD_NUMBER: builtins.int
    unarchiveChats: builtins.bool
    def __init__(
        self,
        *,
        unarchiveChats: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["unarchiveChats", b"unarchiveChats"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["unarchiveChats", b"unarchiveChats"]
    ) -> None: ...

global___UnarchiveChatsSetting = UnarchiveChatsSetting

@typing_extensions.final
class TimeFormatAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ISTWENTYFOURHOURFORMATENABLED_FIELD_NUMBER: builtins.int
    isTwentyFourHourFormatEnabled: builtins.bool
    def __init__(
        self,
        *,
        isTwentyFourHourFormatEnabled: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "isTwentyFourHourFormatEnabled", b"isTwentyFourHourFormatEnabled"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "isTwentyFourHourFormatEnabled", b"isTwentyFourHourFormatEnabled"
        ],
    ) -> None: ...

global___TimeFormatAction = TimeFormatAction

@typing_extensions.final
class SyncActionMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_FIELD_NUMBER: builtins.int
    TIMESTAMP_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    timestamp: builtins.int
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        timestamp: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["key", b"key", "timestamp", b"timestamp"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["key", b"key", "timestamp", b"timestamp"],
    ) -> None: ...

global___SyncActionMessage = SyncActionMessage

@typing_extensions.final
class SyncActionMessageRange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LASTMESSAGETIMESTAMP_FIELD_NUMBER: builtins.int
    LASTSYSTEMMESSAGETIMESTAMP_FIELD_NUMBER: builtins.int
    MESSAGES_FIELD_NUMBER: builtins.int
    lastMessageTimestamp: builtins.int
    lastSystemMessageTimestamp: builtins.int
    @property
    def messages(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___SyncActionMessage
    ]: ...
    def __init__(
        self,
        *,
        lastMessageTimestamp: builtins.int | None = ...,
        lastSystemMessageTimestamp: builtins.int | None = ...,
        messages: collections.abc.Iterable[global___SyncActionMessage] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "lastMessageTimestamp",
            b"lastMessageTimestamp",
            "lastSystemMessageTimestamp",
            b"lastSystemMessageTimestamp",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "lastMessageTimestamp",
            b"lastMessageTimestamp",
            "lastSystemMessageTimestamp",
            b"lastSystemMessageTimestamp",
            "messages",
            b"messages",
        ],
    ) -> None: ...

global___SyncActionMessageRange = SyncActionMessageRange

@typing_extensions.final
class SubscriptionAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ISDEACTIVATED_FIELD_NUMBER: builtins.int
    ISAUTORENEWING_FIELD_NUMBER: builtins.int
    EXPIRATIONDATE_FIELD_NUMBER: builtins.int
    isDeactivated: builtins.bool
    isAutoRenewing: builtins.bool
    expirationDate: builtins.int
    def __init__(
        self,
        *,
        isDeactivated: builtins.bool | None = ...,
        isAutoRenewing: builtins.bool | None = ...,
        expirationDate: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "expirationDate",
            b"expirationDate",
            "isAutoRenewing",
            b"isAutoRenewing",
            "isDeactivated",
            b"isDeactivated",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "expirationDate",
            b"expirationDate",
            "isAutoRenewing",
            b"isAutoRenewing",
            "isDeactivated",
            b"isDeactivated",
        ],
    ) -> None: ...

global___SubscriptionAction = SubscriptionAction

@typing_extensions.final
class StickerAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    URL_FIELD_NUMBER: builtins.int
    FILEENCSHA256_FIELD_NUMBER: builtins.int
    MEDIAKEY_FIELD_NUMBER: builtins.int
    MIMETYPE_FIELD_NUMBER: builtins.int
    HEIGHT_FIELD_NUMBER: builtins.int
    WIDTH_FIELD_NUMBER: builtins.int
    DIRECTPATH_FIELD_NUMBER: builtins.int
    FILELENGTH_FIELD_NUMBER: builtins.int
    ISFAVORITE_FIELD_NUMBER: builtins.int
    DEVICEIDHINT_FIELD_NUMBER: builtins.int
    url: builtins.str
    fileEncSha256: builtins.bytes
    mediaKey: builtins.bytes
    mimetype: builtins.str
    height: builtins.int
    width: builtins.int
    directPath: builtins.str
    fileLength: builtins.int
    isFavorite: builtins.bool
    deviceIdHint: builtins.int
    def __init__(
        self,
        *,
        url: builtins.str | None = ...,
        fileEncSha256: builtins.bytes | None = ...,
        mediaKey: builtins.bytes | None = ...,
        mimetype: builtins.str | None = ...,
        height: builtins.int | None = ...,
        width: builtins.int | None = ...,
        directPath: builtins.str | None = ...,
        fileLength: builtins.int | None = ...,
        isFavorite: builtins.bool | None = ...,
        deviceIdHint: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "deviceIdHint",
            b"deviceIdHint",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "height",
            b"height",
            "isFavorite",
            b"isFavorite",
            "mediaKey",
            b"mediaKey",
            "mimetype",
            b"mimetype",
            "url",
            b"url",
            "width",
            b"width",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "deviceIdHint",
            b"deviceIdHint",
            "directPath",
            b"directPath",
            "fileEncSha256",
            b"fileEncSha256",
            "fileLength",
            b"fileLength",
            "height",
            b"height",
            "isFavorite",
            b"isFavorite",
            "mediaKey",
            b"mediaKey",
            "mimetype",
            b"mimetype",
            "url",
            b"url",
            "width",
            b"width",
        ],
    ) -> None: ...

global___StickerAction = StickerAction

@typing_extensions.final
class StatusPrivacyAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _StatusDistributionModeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            StatusPrivacyAction._StatusDistributionMode.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        ALLOW_LIST: StatusPrivacyAction._StatusDistributionMode.ValueType  # 0
        DENY_LIST: StatusPrivacyAction._StatusDistributionMode.ValueType  # 1
        CONTACTS: StatusPrivacyAction._StatusDistributionMode.ValueType  # 2

    class StatusDistributionMode(
        _StatusDistributionMode, metaclass=_StatusDistributionModeEnumTypeWrapper
    ): ...
    ALLOW_LIST: StatusPrivacyAction.StatusDistributionMode.ValueType  # 0
    DENY_LIST: StatusPrivacyAction.StatusDistributionMode.ValueType  # 1
    CONTACTS: StatusPrivacyAction.StatusDistributionMode.ValueType  # 2

    MODE_FIELD_NUMBER: builtins.int
    USERJID_FIELD_NUMBER: builtins.int
    mode: global___StatusPrivacyAction.StatusDistributionMode.ValueType
    @property
    def userJid(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    def __init__(
        self,
        *,
        mode: global___StatusPrivacyAction.StatusDistributionMode.ValueType
        | None = ...,
        userJid: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["mode", b"mode"]
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["mode", b"mode", "userJid", b"userJid"],
    ) -> None: ...

global___StatusPrivacyAction = StatusPrivacyAction

@typing_extensions.final
class StarAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    STARRED_FIELD_NUMBER: builtins.int
    starred: builtins.bool
    def __init__(
        self,
        *,
        starred: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["starred", b"starred"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["starred", b"starred"]
    ) -> None: ...

global___StarAction = StarAction

@typing_extensions.final
class SecurityNotificationSetting(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SHOWNOTIFICATION_FIELD_NUMBER: builtins.int
    showNotification: builtins.bool
    def __init__(
        self,
        *,
        showNotification: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["showNotification", b"showNotification"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["showNotification", b"showNotification"],
    ) -> None: ...

global___SecurityNotificationSetting = SecurityNotificationSetting

@typing_extensions.final
class RemoveRecentStickerAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LASTSTICKERSENTTS_FIELD_NUMBER: builtins.int
    lastStickerSentTs: builtins.int
    def __init__(
        self,
        *,
        lastStickerSentTs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "lastStickerSentTs", b"lastStickerSentTs"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "lastStickerSentTs", b"lastStickerSentTs"
        ],
    ) -> None: ...

global___RemoveRecentStickerAction = RemoveRecentStickerAction

@typing_extensions.final
class RecentEmojiWeightsAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___RecentEmojiWeightsAction = RecentEmojiWeightsAction

@typing_extensions.final
class QuickReplyAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SHORTCUT_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    KEYWORDS_FIELD_NUMBER: builtins.int
    COUNT_FIELD_NUMBER: builtins.int
    DELETED_FIELD_NUMBER: builtins.int
    shortcut: builtins.str
    message: builtins.str
    @property
    def keywords(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    count: builtins.int
    deleted: builtins.bool
    def __init__(
        self,
        *,
        shortcut: builtins.str | None = ...,
        message: builtins.str | None = ...,
        keywords: collections.abc.Iterable[builtins.str] | None = ...,
        count: builtins.int | None = ...,
        deleted: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "count",
            b"count",
            "deleted",
            b"deleted",
            "message",
            b"message",
            "shortcut",
            b"shortcut",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "count",
            b"count",
            "deleted",
            b"deleted",
            "keywords",
            b"keywords",
            "message",
            b"message",
            "shortcut",
            b"shortcut",
        ],
    ) -> None: ...

global___QuickReplyAction = QuickReplyAction

@typing_extensions.final
class PushNameSetting(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    name: builtins.str
    def __init__(
        self,
        *,
        name: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["name", b"name"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["name", b"name"]
    ) -> None: ...

global___PushNameSetting = PushNameSetting

@typing_extensions.final
class PrivacySettingRelayAllCalls(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ISENABLED_FIELD_NUMBER: builtins.int
    isEnabled: builtins.bool
    def __init__(
        self,
        *,
        isEnabled: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["isEnabled", b"isEnabled"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["isEnabled", b"isEnabled"]
    ) -> None: ...

global___PrivacySettingRelayAllCalls = PrivacySettingRelayAllCalls

@typing_extensions.final
class PrimaryVersionAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VERSION_FIELD_NUMBER: builtins.int
    version: builtins.str
    def __init__(
        self,
        *,
        version: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["version", b"version"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["version", b"version"]
    ) -> None: ...

global___PrimaryVersionAction = PrimaryVersionAction

@typing_extensions.final
class PrimaryFeature(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___PrimaryFeature = PrimaryFeature

@typing_extensions.final
class PnForLidChatAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PNJID_FIELD_NUMBER: builtins.int
    pnJid: builtins.str
    def __init__(
        self,
        *,
        pnJid: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["pnJid", b"pnJid"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["pnJid", b"pnJid"]
    ) -> None: ...

global___PnForLidChatAction = PnForLidChatAction

@typing_extensions.final
class PinAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PINNED_FIELD_NUMBER: builtins.int
    pinned: builtins.bool
    def __init__(
        self,
        *,
        pinned: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["pinned", b"pinned"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["pinned", b"pinned"]
    ) -> None: ...

global___PinAction = PinAction

@typing_extensions.final
class PaymentInfoAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CPI_FIELD_NUMBER: builtins.int
    cpi: builtins.str
    def __init__(
        self,
        *,
        cpi: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["cpi", b"cpi"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["cpi", b"cpi"]
    ) -> None: ...

global___PaymentInfoAction = PaymentInfoAction

@typing_extensions.final
class NuxAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACKNOWLEDGED_FIELD_NUMBER: builtins.int
    acknowledged: builtins.bool
    def __init__(
        self,
        *,
        acknowledged: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["acknowledged", b"acknowledged"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["acknowledged", b"acknowledged"]
    ) -> None: ...

global___NuxAction = NuxAction

@typing_extensions.final
class MuteAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MUTED_FIELD_NUMBER: builtins.int
    MUTEENDTIMESTAMP_FIELD_NUMBER: builtins.int
    AUTOMUTED_FIELD_NUMBER: builtins.int
    muted: builtins.bool
    muteEndTimestamp: builtins.int
    autoMuted: builtins.bool
    def __init__(
        self,
        *,
        muted: builtins.bool | None = ...,
        muteEndTimestamp: builtins.int | None = ...,
        autoMuted: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "autoMuted",
            b"autoMuted",
            "muteEndTimestamp",
            b"muteEndTimestamp",
            "muted",
            b"muted",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "autoMuted",
            b"autoMuted",
            "muteEndTimestamp",
            b"muteEndTimestamp",
            "muted",
            b"muted",
        ],
    ) -> None: ...

global___MuteAction = MuteAction

@typing_extensions.final
class MarketingMessageBroadcastAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REPLIEDCOUNT_FIELD_NUMBER: builtins.int
    repliedCount: builtins.int
    def __init__(
        self,
        *,
        repliedCount: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["repliedCount", b"repliedCount"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["repliedCount", b"repliedCount"]
    ) -> None: ...

global___MarketingMessageBroadcastAction = MarketingMessageBroadcastAction

@typing_extensions.final
class MarketingMessageAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _MarketingMessagePrototypeTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            MarketingMessageAction._MarketingMessagePrototypeType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        PERSONALIZED: MarketingMessageAction._MarketingMessagePrototypeType.ValueType  # 0

    class MarketingMessagePrototypeType(
        _MarketingMessagePrototypeType,
        metaclass=_MarketingMessagePrototypeTypeEnumTypeWrapper,
    ): ...
    PERSONALIZED: MarketingMessageAction.MarketingMessagePrototypeType.ValueType  # 0

    NAME_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    CREATEDAT_FIELD_NUMBER: builtins.int
    LASTSENTAT_FIELD_NUMBER: builtins.int
    ISDELETED_FIELD_NUMBER: builtins.int
    MEDIAID_FIELD_NUMBER: builtins.int
    name: builtins.str
    message: builtins.str
    type: global___MarketingMessageAction.MarketingMessagePrototypeType.ValueType
    createdAt: builtins.int
    lastSentAt: builtins.int
    isDeleted: builtins.bool
    mediaId: builtins.str
    def __init__(
        self,
        *,
        name: builtins.str | None = ...,
        message: builtins.str | None = ...,
        type: global___MarketingMessageAction.MarketingMessagePrototypeType.ValueType
        | None = ...,
        createdAt: builtins.int | None = ...,
        lastSentAt: builtins.int | None = ...,
        isDeleted: builtins.bool | None = ...,
        mediaId: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "createdAt",
            b"createdAt",
            "isDeleted",
            b"isDeleted",
            "lastSentAt",
            b"lastSentAt",
            "mediaId",
            b"mediaId",
            "message",
            b"message",
            "name",
            b"name",
            "type",
            b"type",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "createdAt",
            b"createdAt",
            "isDeleted",
            b"isDeleted",
            "lastSentAt",
            b"lastSentAt",
            "mediaId",
            b"mediaId",
            "message",
            b"message",
            "name",
            b"name",
            "type",
            b"type",
        ],
    ) -> None: ...

global___MarketingMessageAction = MarketingMessageAction

@typing_extensions.final
class MarkChatAsReadAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    READ_FIELD_NUMBER: builtins.int
    MESSAGERANGE_FIELD_NUMBER: builtins.int
    read: builtins.bool
    @property
    def messageRange(self) -> global___SyncActionMessageRange: ...
    def __init__(
        self,
        *,
        read: builtins.bool | None = ...,
        messageRange: global___SyncActionMessageRange | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "messageRange", b"messageRange", "read", b"read"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "messageRange", b"messageRange", "read", b"read"
        ],
    ) -> None: ...

global___MarkChatAsReadAction = MarkChatAsReadAction

@typing_extensions.final
class LocaleSetting(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LOCALE_FIELD_NUMBER: builtins.int
    locale: builtins.str
    def __init__(
        self,
        *,
        locale: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["locale", b"locale"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["locale", b"locale"]
    ) -> None: ...

global___LocaleSetting = LocaleSetting

@typing_extensions.final
class LabelReorderingAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___LabelReorderingAction = LabelReorderingAction

@typing_extensions.final
class LabelEditAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    COLOR_FIELD_NUMBER: builtins.int
    PREDEFINEDID_FIELD_NUMBER: builtins.int
    DELETED_FIELD_NUMBER: builtins.int
    ORDERINDEX_FIELD_NUMBER: builtins.int
    name: builtins.str
    color: builtins.int
    predefinedId: builtins.int
    deleted: builtins.bool
    orderIndex: builtins.int
    def __init__(
        self,
        *,
        name: builtins.str | None = ...,
        color: builtins.int | None = ...,
        predefinedId: builtins.int | None = ...,
        deleted: builtins.bool | None = ...,
        orderIndex: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "color",
            b"color",
            "deleted",
            b"deleted",
            "name",
            b"name",
            "orderIndex",
            b"orderIndex",
            "predefinedId",
            b"predefinedId",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "color",
            b"color",
            "deleted",
            b"deleted",
            "name",
            b"name",
            "orderIndex",
            b"orderIndex",
            "predefinedId",
            b"predefinedId",
        ],
    ) -> None: ...

global___LabelEditAction = LabelEditAction

@typing_extensions.final
class LabelAssociationAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LABELED_FIELD_NUMBER: builtins.int
    labeled: builtins.bool
    def __init__(
        self,
        *,
        labeled: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["labeled", b"labeled"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["labeled", b"labeled"]
    ) -> None: ...

global___LabelAssociationAction = LabelAssociationAction

@typing_extensions.final
class KeyExpiration(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXPIREDKEYEPOCH_FIELD_NUMBER: builtins.int
    expiredKeyEpoch: builtins.int
    def __init__(
        self,
        *,
        expiredKeyEpoch: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["expiredKeyEpoch", b"expiredKeyEpoch"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["expiredKeyEpoch", b"expiredKeyEpoch"],
    ) -> None: ...

global___KeyExpiration = KeyExpiration

@typing_extensions.final
class ExternalWebBetaAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ISOPTIN_FIELD_NUMBER: builtins.int
    isOptIn: builtins.bool
    def __init__(
        self,
        *,
        isOptIn: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["isOptIn", b"isOptIn"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["isOptIn", b"isOptIn"]
    ) -> None: ...

global___ExternalWebBetaAction = ExternalWebBetaAction

@typing_extensions.final
class DeleteMessageForMeAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DELETEMEDIA_FIELD_NUMBER: builtins.int
    MESSAGETIMESTAMP_FIELD_NUMBER: builtins.int
    deleteMedia: builtins.bool
    messageTimestamp: builtins.int
    def __init__(
        self,
        *,
        deleteMedia: builtins.bool | None = ...,
        messageTimestamp: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "deleteMedia", b"deleteMedia", "messageTimestamp", b"messageTimestamp"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "deleteMedia", b"deleteMedia", "messageTimestamp", b"messageTimestamp"
        ],
    ) -> None: ...

global___DeleteMessageForMeAction = DeleteMessageForMeAction

@typing_extensions.final
class DeleteIndividualCallLogAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PEERJID_FIELD_NUMBER: builtins.int
    ISINCOMING_FIELD_NUMBER: builtins.int
    peerJid: builtins.str
    isIncoming: builtins.bool
    def __init__(
        self,
        *,
        peerJid: builtins.str | None = ...,
        isIncoming: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "isIncoming", b"isIncoming", "peerJid", b"peerJid"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "isIncoming", b"isIncoming", "peerJid", b"peerJid"
        ],
    ) -> None: ...

global___DeleteIndividualCallLogAction = DeleteIndividualCallLogAction

@typing_extensions.final
class DeleteChatAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___DeleteChatAction = DeleteChatAction

@typing_extensions.final
class ContactAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    FULLNAME_FIELD_NUMBER: builtins.int
    FIRSTNAME_FIELD_NUMBER: builtins.int
    LIDJID_FIELD_NUMBER: builtins.int
    SAVEONPRIMARYADDRESSBOOK_FIELD_NUMBER: builtins.int
    fullName: builtins.str
    firstName: builtins.str
    lidJid: builtins.str
    saveOnPrimaryAddressbook: builtins.bool
    def __init__(
        self,
        *,
        fullName: builtins.str | None = ...,
        firstName: builtins.str | None = ...,
        lidJid: builtins.str | None = ...,
        saveOnPrimaryAddressbook: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "firstName",
            b"firstName",
            "fullName",
            b"fullName",
            "lidJid",
            b"lidJid",
            "saveOnPrimaryAddressbook",
            b"saveOnPrimaryAddressbook",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "firstName",
            b"firstName",
            "fullName",
            b"fullName",
            "lidJid",
            b"lidJid",
            "saveOnPrimaryAddressbook",
            b"saveOnPrimaryAddressbook",
        ],
    ) -> None: ...

global___ContactAction = ContactAction

@typing_extensions.final
class ClearChatAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___ClearChatAction = ClearChatAction

@typing_extensions.final
class ChatAssignmentOpenedStatusAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CHATOPENED_FIELD_NUMBER: builtins.int
    chatOpened: builtins.bool
    def __init__(
        self,
        *,
        chatOpened: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["chatOpened", b"chatOpened"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["chatOpened", b"chatOpened"]
    ) -> None: ...

global___ChatAssignmentOpenedStatusAction = ChatAssignmentOpenedStatusAction

@typing_extensions.final
class ChatAssignmentAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DEVICEAGENTID_FIELD_NUMBER: builtins.int
    deviceAgentID: builtins.str
    def __init__(
        self,
        *,
        deviceAgentID: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["deviceAgentID", b"deviceAgentID"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["deviceAgentID", b"deviceAgentID"]
    ) -> None: ...

global___ChatAssignmentAction = ChatAssignmentAction

@typing_extensions.final
class CallLogAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

global___CallLogAction = CallLogAction

@typing_extensions.final
class BotWelcomeRequestAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ISSENT_FIELD_NUMBER: builtins.int
    isSent: builtins.bool
    def __init__(
        self,
        *,
        isSent: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["isSent", b"isSent"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["isSent", b"isSent"]
    ) -> None: ...

global___BotWelcomeRequestAction = BotWelcomeRequestAction

@typing_extensions.final
class ArchiveChatAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ARCHIVED_FIELD_NUMBER: builtins.int
    MESSAGERANGE_FIELD_NUMBER: builtins.int
    archived: builtins.bool
    @property
    def messageRange(self) -> global___SyncActionMessageRange: ...
    def __init__(
        self,
        *,
        archived: builtins.bool | None = ...,
        messageRange: global___SyncActionMessageRange | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "archived", b"archived", "messageRange", b"messageRange"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "archived", b"archived", "messageRange", b"messageRange"
        ],
    ) -> None: ...

global___ArchiveChatAction = ArchiveChatAction

@typing_extensions.final
class AndroidUnsupportedActions(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWED_FIELD_NUMBER: builtins.int
    allowed: builtins.bool
    def __init__(
        self,
        *,
        allowed: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["allowed", b"allowed"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["allowed", b"allowed"]
    ) -> None: ...

global___AndroidUnsupportedActions = AndroidUnsupportedActions

@typing_extensions.final
class AgentAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    NAME_FIELD_NUMBER: builtins.int
    DEVICEID_FIELD_NUMBER: builtins.int
    ISDELETED_FIELD_NUMBER: builtins.int
    name: builtins.str
    deviceID: builtins.int
    isDeleted: builtins.bool
    def __init__(
        self,
        *,
        name: builtins.str | None = ...,
        deviceID: builtins.int | None = ...,
        isDeleted: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "deviceID", b"deviceID", "isDeleted", b"isDeleted", "name", b"name"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "deviceID", b"deviceID", "isDeleted", b"isDeleted", "name", b"name"
        ],
    ) -> None: ...

global___AgentAction = AgentAction

@typing_extensions.final
class SyncActionData(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INDEX_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    PADDING_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    index: builtins.bytes
    @property
    def value(self) -> global___SyncActionValue: ...
    padding: builtins.bytes
    version: builtins.int
    def __init__(
        self,
        *,
        index: builtins.bytes | None = ...,
        value: global___SyncActionValue | None = ...,
        padding: builtins.bytes | None = ...,
        version: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "index",
            b"index",
            "padding",
            b"padding",
            "value",
            b"value",
            "version",
            b"version",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "index",
            b"index",
            "padding",
            b"padding",
            "value",
            b"value",
            "version",
            b"version",
        ],
    ) -> None: ...

global___SyncActionData = SyncActionData

@typing_extensions.final
class RecentEmojiWeight(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EMOJI_FIELD_NUMBER: builtins.int
    WEIGHT_FIELD_NUMBER: builtins.int
    emoji: builtins.str
    weight: builtins.float
    def __init__(
        self,
        *,
        emoji: builtins.str | None = ...,
        weight: builtins.float | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["emoji", b"emoji", "weight", b"weight"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["emoji", b"emoji", "weight", b"weight"],
    ) -> None: ...

global___RecentEmojiWeight = RecentEmojiWeight

@typing_extensions.final
class PatchDebugData(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _PlatformEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PatchDebugData._Platform.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        ANDROID: PatchDebugData._Platform.ValueType  # 0
        SMBA: PatchDebugData._Platform.ValueType  # 1
        IPHONE: PatchDebugData._Platform.ValueType  # 2
        SMBI: PatchDebugData._Platform.ValueType  # 3
        WEB: PatchDebugData._Platform.ValueType  # 4
        UWP: PatchDebugData._Platform.ValueType  # 5
        DARWIN: PatchDebugData._Platform.ValueType  # 6

    class Platform(_Platform, metaclass=_PlatformEnumTypeWrapper): ...
    ANDROID: PatchDebugData.Platform.ValueType  # 0
    SMBA: PatchDebugData.Platform.ValueType  # 1
    IPHONE: PatchDebugData.Platform.ValueType  # 2
    SMBI: PatchDebugData.Platform.ValueType  # 3
    WEB: PatchDebugData.Platform.ValueType  # 4
    UWP: PatchDebugData.Platform.ValueType  # 5
    DARWIN: PatchDebugData.Platform.ValueType  # 6

    CURRENTLTHASH_FIELD_NUMBER: builtins.int
    NEWLTHASH_FIELD_NUMBER: builtins.int
    PATCHVERSION_FIELD_NUMBER: builtins.int
    COLLECTIONNAME_FIELD_NUMBER: builtins.int
    FIRSTFOURBYTESFROMAHASHOFSNAPSHOTMACKEY_FIELD_NUMBER: builtins.int
    NEWLTHASHSUBTRACT_FIELD_NUMBER: builtins.int
    NUMBERADD_FIELD_NUMBER: builtins.int
    NUMBERREMOVE_FIELD_NUMBER: builtins.int
    NUMBEROVERRIDE_FIELD_NUMBER: builtins.int
    SENDERPLATFORM_FIELD_NUMBER: builtins.int
    ISSENDERPRIMARY_FIELD_NUMBER: builtins.int
    currentLthash: builtins.bytes
    newLthash: builtins.bytes
    patchVersion: builtins.bytes
    collectionName: builtins.bytes
    firstFourBytesFromAHashOfSnapshotMacKey: builtins.bytes
    newLthashSubtract: builtins.bytes
    numberAdd: builtins.int
    numberRemove: builtins.int
    numberOverride: builtins.int
    senderPlatform: global___PatchDebugData.Platform.ValueType
    isSenderPrimary: builtins.bool
    def __init__(
        self,
        *,
        currentLthash: builtins.bytes | None = ...,
        newLthash: builtins.bytes | None = ...,
        patchVersion: builtins.bytes | None = ...,
        collectionName: builtins.bytes | None = ...,
        firstFourBytesFromAHashOfSnapshotMacKey: builtins.bytes | None = ...,
        newLthashSubtract: builtins.bytes | None = ...,
        numberAdd: builtins.int | None = ...,
        numberRemove: builtins.int | None = ...,
        numberOverride: builtins.int | None = ...,
        senderPlatform: global___PatchDebugData.Platform.ValueType | None = ...,
        isSenderPrimary: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "collectionName",
            b"collectionName",
            "currentLthash",
            b"currentLthash",
            "firstFourBytesFromAHashOfSnapshotMacKey",
            b"firstFourBytesFromAHashOfSnapshotMacKey",
            "isSenderPrimary",
            b"isSenderPrimary",
            "newLthash",
            b"newLthash",
            "newLthashSubtract",
            b"newLthashSubtract",
            "numberAdd",
            b"numberAdd",
            "numberOverride",
            b"numberOverride",
            "numberRemove",
            b"numberRemove",
            "patchVersion",
            b"patchVersion",
            "senderPlatform",
            b"senderPlatform",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "collectionName",
            b"collectionName",
            "currentLthash",
            b"currentLthash",
            "firstFourBytesFromAHashOfSnapshotMacKey",
            b"firstFourBytesFromAHashOfSnapshotMacKey",
            "isSenderPrimary",
            b"isSenderPrimary",
            "newLthash",
            b"newLthash",
            "newLthashSubtract",
            b"newLthashSubtract",
            "numberAdd",
            b"numberAdd",
            "numberOverride",
            b"numberOverride",
            "numberRemove",
            b"numberRemove",
            "patchVersion",
            b"patchVersion",
            "senderPlatform",
            b"senderPlatform",
        ],
    ) -> None: ...

global___PatchDebugData = PatchDebugData

@typing_extensions.final
class CallLogRecord(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _SilenceReasonEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            CallLogRecord._SilenceReason.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        NONE: CallLogRecord._SilenceReason.ValueType  # 0
        SCHEDULED: CallLogRecord._SilenceReason.ValueType  # 1
        PRIVACY: CallLogRecord._SilenceReason.ValueType  # 2
        LIGHTWEIGHT: CallLogRecord._SilenceReason.ValueType  # 3

    class SilenceReason(_SilenceReason, metaclass=_SilenceReasonEnumTypeWrapper): ...
    NONE: CallLogRecord.SilenceReason.ValueType  # 0
    SCHEDULED: CallLogRecord.SilenceReason.ValueType  # 1
    PRIVACY: CallLogRecord.SilenceReason.ValueType  # 2
    LIGHTWEIGHT: CallLogRecord.SilenceReason.ValueType  # 3

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

    class _CallTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            CallLogRecord._CallType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        REGULAR: CallLogRecord._CallType.ValueType  # 0
        SCHEDULED_CALL: CallLogRecord._CallType.ValueType  # 1
        VOICE_CHAT: CallLogRecord._CallType.ValueType  # 2

    class CallType(_CallType, metaclass=_CallTypeEnumTypeWrapper): ...
    REGULAR: CallLogRecord.CallType.ValueType  # 0
    SCHEDULED_CALL: CallLogRecord.CallType.ValueType  # 1
    VOICE_CHAT: CallLogRecord.CallType.ValueType  # 2

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

    class _CallResultEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            CallLogRecord._CallResult.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        CONNECTED: CallLogRecord._CallResult.ValueType  # 0
        REJECTED: CallLogRecord._CallResult.ValueType  # 1
        CANCELLED: CallLogRecord._CallResult.ValueType  # 2
        ACCEPTEDELSEWHERE: CallLogRecord._CallResult.ValueType  # 3
        MISSED: CallLogRecord._CallResult.ValueType  # 4
        INVALID: CallLogRecord._CallResult.ValueType  # 5
        UNAVAILABLE: CallLogRecord._CallResult.ValueType  # 6
        UPCOMING: CallLogRecord._CallResult.ValueType  # 7
        FAILED: CallLogRecord._CallResult.ValueType  # 8
        ABANDONED: CallLogRecord._CallResult.ValueType  # 9
        ONGOING: CallLogRecord._CallResult.ValueType  # 10

    class CallResult(_CallResult, metaclass=_CallResultEnumTypeWrapper): ...
    CONNECTED: CallLogRecord.CallResult.ValueType  # 0
    REJECTED: CallLogRecord.CallResult.ValueType  # 1
    CANCELLED: CallLogRecord.CallResult.ValueType  # 2
    ACCEPTEDELSEWHERE: CallLogRecord.CallResult.ValueType  # 3
    MISSED: CallLogRecord.CallResult.ValueType  # 4
    INVALID: CallLogRecord.CallResult.ValueType  # 5
    UNAVAILABLE: CallLogRecord.CallResult.ValueType  # 6
    UPCOMING: CallLogRecord.CallResult.ValueType  # 7
    FAILED: CallLogRecord.CallResult.ValueType  # 8
    ABANDONED: CallLogRecord.CallResult.ValueType  # 9
    ONGOING: CallLogRecord.CallResult.ValueType  # 10

    @typing_extensions.final
    class ParticipantInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        USERJID_FIELD_NUMBER: builtins.int
        CALLRESULT_FIELD_NUMBER: builtins.int
        userJid: builtins.str
        callResult: global___CallLogRecord.CallResult.ValueType
        def __init__(
            self,
            *,
            userJid: builtins.str | None = ...,
            callResult: global___CallLogRecord.CallResult.ValueType | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "callResult", b"callResult", "userJid", b"userJid"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "callResult", b"callResult", "userJid", b"userJid"
            ],
        ) -> None: ...

    CALLRESULT_FIELD_NUMBER: builtins.int
    ISDNDMODE_FIELD_NUMBER: builtins.int
    SILENCEREASON_FIELD_NUMBER: builtins.int
    DURATION_FIELD_NUMBER: builtins.int
    STARTTIME_FIELD_NUMBER: builtins.int
    ISINCOMING_FIELD_NUMBER: builtins.int
    ISVIDEO_FIELD_NUMBER: builtins.int
    ISCALLLINK_FIELD_NUMBER: builtins.int
    CALLLINKTOKEN_FIELD_NUMBER: builtins.int
    SCHEDULEDCALLID_FIELD_NUMBER: builtins.int
    CALLID_FIELD_NUMBER: builtins.int
    CALLCREATORJID_FIELD_NUMBER: builtins.int
    GROUPJID_FIELD_NUMBER: builtins.int
    PARTICIPANTS_FIELD_NUMBER: builtins.int
    CALLTYPE_FIELD_NUMBER: builtins.int
    callResult: global___CallLogRecord.CallResult.ValueType
    isDndMode: builtins.bool
    silenceReason: global___CallLogRecord.SilenceReason.ValueType
    duration: builtins.int
    startTime: builtins.int
    isIncoming: builtins.bool
    isVideo: builtins.bool
    isCallLink: builtins.bool
    callLinkToken: builtins.str
    scheduledCallId: builtins.str
    callId: builtins.str
    callCreatorJid: builtins.str
    groupJid: builtins.str
    @property
    def participants(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___CallLogRecord.ParticipantInfo
    ]: ...
    callType: global___CallLogRecord.CallType.ValueType
    def __init__(
        self,
        *,
        callResult: global___CallLogRecord.CallResult.ValueType | None = ...,
        isDndMode: builtins.bool | None = ...,
        silenceReason: global___CallLogRecord.SilenceReason.ValueType | None = ...,
        duration: builtins.int | None = ...,
        startTime: builtins.int | None = ...,
        isIncoming: builtins.bool | None = ...,
        isVideo: builtins.bool | None = ...,
        isCallLink: builtins.bool | None = ...,
        callLinkToken: builtins.str | None = ...,
        scheduledCallId: builtins.str | None = ...,
        callId: builtins.str | None = ...,
        callCreatorJid: builtins.str | None = ...,
        groupJid: builtins.str | None = ...,
        participants: collections.abc.Iterable[global___CallLogRecord.ParticipantInfo]
        | None = ...,
        callType: global___CallLogRecord.CallType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "callCreatorJid",
            b"callCreatorJid",
            "callId",
            b"callId",
            "callLinkToken",
            b"callLinkToken",
            "callResult",
            b"callResult",
            "callType",
            b"callType",
            "duration",
            b"duration",
            "groupJid",
            b"groupJid",
            "isCallLink",
            b"isCallLink",
            "isDndMode",
            b"isDndMode",
            "isIncoming",
            b"isIncoming",
            "isVideo",
            b"isVideo",
            "scheduledCallId",
            b"scheduledCallId",
            "silenceReason",
            b"silenceReason",
            "startTime",
            b"startTime",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "callCreatorJid",
            b"callCreatorJid",
            "callId",
            b"callId",
            "callLinkToken",
            b"callLinkToken",
            "callResult",
            b"callResult",
            "callType",
            b"callType",
            "duration",
            b"duration",
            "groupJid",
            b"groupJid",
            "isCallLink",
            b"isCallLink",
            "isDndMode",
            b"isDndMode",
            "isIncoming",
            b"isIncoming",
            "isVideo",
            b"isVideo",
            "participants",
            b"participants",
            "scheduledCallId",
            b"scheduledCallId",
            "silenceReason",
            b"silenceReason",
            "startTime",
            b"startTime",
        ],
    ) -> None: ...

global___CallLogRecord = CallLogRecord

@typing_extensions.final
class VerifiedNameCertificate(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class Details(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        SERIAL_FIELD_NUMBER: builtins.int
        ISSUER_FIELD_NUMBER: builtins.int
        VERIFIEDNAME_FIELD_NUMBER: builtins.int
        LOCALIZEDNAMES_FIELD_NUMBER: builtins.int
        ISSUETIME_FIELD_NUMBER: builtins.int
        serial: builtins.int
        issuer: builtins.str
        verifiedName: builtins.str
        @property
        def localizedNames(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___LocalizedName
        ]: ...
        issueTime: builtins.int
        def __init__(
            self,
            *,
            serial: builtins.int | None = ...,
            issuer: builtins.str | None = ...,
            verifiedName: builtins.str | None = ...,
            localizedNames: collections.abc.Iterable[global___LocalizedName]
            | None = ...,
            issueTime: builtins.int | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "issueTime",
                b"issueTime",
                "issuer",
                b"issuer",
                "serial",
                b"serial",
                "verifiedName",
                b"verifiedName",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "issueTime",
                b"issueTime",
                "issuer",
                b"issuer",
                "localizedNames",
                b"localizedNames",
                "serial",
                b"serial",
                "verifiedName",
                b"verifiedName",
            ],
        ) -> None: ...

    DETAILS_FIELD_NUMBER: builtins.int
    SIGNATURE_FIELD_NUMBER: builtins.int
    SERVERSIGNATURE_FIELD_NUMBER: builtins.int
    details: builtins.bytes
    signature: builtins.bytes
    serverSignature: builtins.bytes
    def __init__(
        self,
        *,
        details: builtins.bytes | None = ...,
        signature: builtins.bytes | None = ...,
        serverSignature: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "details",
            b"details",
            "serverSignature",
            b"serverSignature",
            "signature",
            b"signature",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "details",
            b"details",
            "serverSignature",
            b"serverSignature",
            "signature",
            b"signature",
        ],
    ) -> None: ...

global___VerifiedNameCertificate = VerifiedNameCertificate

@typing_extensions.final
class LocalizedName(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LG_FIELD_NUMBER: builtins.int
    LC_FIELD_NUMBER: builtins.int
    VERIFIEDNAME_FIELD_NUMBER: builtins.int
    lg: builtins.str
    lc: builtins.str
    verifiedName: builtins.str
    def __init__(
        self,
        *,
        lg: builtins.str | None = ...,
        lc: builtins.str | None = ...,
        verifiedName: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "lc", b"lc", "lg", b"lg", "verifiedName", b"verifiedName"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "lc", b"lc", "lg", b"lg", "verifiedName", b"verifiedName"
        ],
    ) -> None: ...

global___LocalizedName = LocalizedName

@typing_extensions.final
class BizIdentityInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _VerifiedLevelValueEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BizIdentityInfo._VerifiedLevelValue.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: BizIdentityInfo._VerifiedLevelValue.ValueType  # 0
        LOW: BizIdentityInfo._VerifiedLevelValue.ValueType  # 1
        HIGH: BizIdentityInfo._VerifiedLevelValue.ValueType  # 2

    class VerifiedLevelValue(
        _VerifiedLevelValue, metaclass=_VerifiedLevelValueEnumTypeWrapper
    ): ...
    UNKNOWN: BizIdentityInfo.VerifiedLevelValue.ValueType  # 0
    LOW: BizIdentityInfo.VerifiedLevelValue.ValueType  # 1
    HIGH: BizIdentityInfo.VerifiedLevelValue.ValueType  # 2

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

    class _HostStorageTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BizIdentityInfo._HostStorageType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        ON_PREMISE: BizIdentityInfo._HostStorageType.ValueType  # 0
        FACEBOOK: BizIdentityInfo._HostStorageType.ValueType  # 1

    class HostStorageType(
        _HostStorageType, metaclass=_HostStorageTypeEnumTypeWrapper
    ): ...
    ON_PREMISE: BizIdentityInfo.HostStorageType.ValueType  # 0
    FACEBOOK: BizIdentityInfo.HostStorageType.ValueType  # 1

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

    class _ActualActorsTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BizIdentityInfo._ActualActorsType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        SELF: BizIdentityInfo._ActualActorsType.ValueType  # 0
        BSP: BizIdentityInfo._ActualActorsType.ValueType  # 1

    class ActualActorsType(
        _ActualActorsType, metaclass=_ActualActorsTypeEnumTypeWrapper
    ): ...
    SELF: BizIdentityInfo.ActualActorsType.ValueType  # 0
    BSP: BizIdentityInfo.ActualActorsType.ValueType  # 1

    VLEVEL_FIELD_NUMBER: builtins.int
    VNAMECERT_FIELD_NUMBER: builtins.int
    SIGNED_FIELD_NUMBER: builtins.int
    REVOKED_FIELD_NUMBER: builtins.int
    HOSTSTORAGE_FIELD_NUMBER: builtins.int
    ACTUALACTORS_FIELD_NUMBER: builtins.int
    PRIVACYMODETS_FIELD_NUMBER: builtins.int
    FEATURECONTROLS_FIELD_NUMBER: builtins.int
    vlevel: global___BizIdentityInfo.VerifiedLevelValue.ValueType
    @property
    def vnameCert(self) -> global___VerifiedNameCertificate: ...
    signed: builtins.bool
    revoked: builtins.bool
    hostStorage: global___BizIdentityInfo.HostStorageType.ValueType
    actualActors: global___BizIdentityInfo.ActualActorsType.ValueType
    privacyModeTs: builtins.int
    featureControls: builtins.int
    def __init__(
        self,
        *,
        vlevel: global___BizIdentityInfo.VerifiedLevelValue.ValueType | None = ...,
        vnameCert: global___VerifiedNameCertificate | None = ...,
        signed: builtins.bool | None = ...,
        revoked: builtins.bool | None = ...,
        hostStorage: global___BizIdentityInfo.HostStorageType.ValueType | None = ...,
        actualActors: global___BizIdentityInfo.ActualActorsType.ValueType | None = ...,
        privacyModeTs: builtins.int | None = ...,
        featureControls: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "actualActors",
            b"actualActors",
            "featureControls",
            b"featureControls",
            "hostStorage",
            b"hostStorage",
            "privacyModeTs",
            b"privacyModeTs",
            "revoked",
            b"revoked",
            "signed",
            b"signed",
            "vlevel",
            b"vlevel",
            "vnameCert",
            b"vnameCert",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "actualActors",
            b"actualActors",
            "featureControls",
            b"featureControls",
            "hostStorage",
            b"hostStorage",
            "privacyModeTs",
            b"privacyModeTs",
            "revoked",
            b"revoked",
            "signed",
            b"signed",
            "vlevel",
            b"vlevel",
            "vnameCert",
            b"vnameCert",
        ],
    ) -> None: ...

global___BizIdentityInfo = BizIdentityInfo

@typing_extensions.final
class BizAccountPayload(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    VNAMECERT_FIELD_NUMBER: builtins.int
    BIZACCTLINKINFO_FIELD_NUMBER: builtins.int
    @property
    def vnameCert(self) -> global___VerifiedNameCertificate: ...
    bizAcctLinkInfo: builtins.bytes
    def __init__(
        self,
        *,
        vnameCert: global___VerifiedNameCertificate | None = ...,
        bizAcctLinkInfo: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "bizAcctLinkInfo", b"bizAcctLinkInfo", "vnameCert", b"vnameCert"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "bizAcctLinkInfo", b"bizAcctLinkInfo", "vnameCert", b"vnameCert"
        ],
    ) -> None: ...

global___BizAccountPayload = BizAccountPayload

@typing_extensions.final
class BizAccountLinkInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _HostStorageTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BizAccountLinkInfo._HostStorageType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        ON_PREMISE: BizAccountLinkInfo._HostStorageType.ValueType  # 0
        FACEBOOK: BizAccountLinkInfo._HostStorageType.ValueType  # 1

    class HostStorageType(
        _HostStorageType, metaclass=_HostStorageTypeEnumTypeWrapper
    ): ...
    ON_PREMISE: BizAccountLinkInfo.HostStorageType.ValueType  # 0
    FACEBOOK: BizAccountLinkInfo.HostStorageType.ValueType  # 1

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

    class _AccountTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            BizAccountLinkInfo._AccountType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        ENTERPRISE: BizAccountLinkInfo._AccountType.ValueType  # 0

    class AccountType(_AccountType, metaclass=_AccountTypeEnumTypeWrapper): ...
    ENTERPRISE: BizAccountLinkInfo.AccountType.ValueType  # 0

    WHATSAPPBIZACCTFBID_FIELD_NUMBER: builtins.int
    WHATSAPPACCTNUMBER_FIELD_NUMBER: builtins.int
    ISSUETIME_FIELD_NUMBER: builtins.int
    HOSTSTORAGE_FIELD_NUMBER: builtins.int
    ACCOUNTTYPE_FIELD_NUMBER: builtins.int
    whatsappBizAcctFbid: builtins.int
    whatsappAcctNumber: builtins.str
    issueTime: builtins.int
    hostStorage: global___BizAccountLinkInfo.HostStorageType.ValueType
    accountType: global___BizAccountLinkInfo.AccountType.ValueType
    def __init__(
        self,
        *,
        whatsappBizAcctFbid: builtins.int | None = ...,
        whatsappAcctNumber: builtins.str | None = ...,
        issueTime: builtins.int | None = ...,
        hostStorage: global___BizAccountLinkInfo.HostStorageType.ValueType | None = ...,
        accountType: global___BizAccountLinkInfo.AccountType.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "accountType",
            b"accountType",
            "hostStorage",
            b"hostStorage",
            "issueTime",
            b"issueTime",
            "whatsappAcctNumber",
            b"whatsappAcctNumber",
            "whatsappBizAcctFbid",
            b"whatsappBizAcctFbid",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "accountType",
            b"accountType",
            "hostStorage",
            b"hostStorage",
            "issueTime",
            b"issueTime",
            "whatsappAcctNumber",
            b"whatsappAcctNumber",
            "whatsappBizAcctFbid",
            b"whatsappBizAcctFbid",
        ],
    ) -> None: ...

global___BizAccountLinkInfo = BizAccountLinkInfo

@typing_extensions.final
class HandshakeMessage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CLIENTHELLO_FIELD_NUMBER: builtins.int
    SERVERHELLO_FIELD_NUMBER: builtins.int
    CLIENTFINISH_FIELD_NUMBER: builtins.int
    @property
    def clientHello(self) -> global___HandshakeClientHello: ...
    @property
    def serverHello(self) -> global___HandshakeServerHello: ...
    @property
    def clientFinish(self) -> global___HandshakeClientFinish: ...
    def __init__(
        self,
        *,
        clientHello: global___HandshakeClientHello | None = ...,
        serverHello: global___HandshakeServerHello | None = ...,
        clientFinish: global___HandshakeClientFinish | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "clientFinish",
            b"clientFinish",
            "clientHello",
            b"clientHello",
            "serverHello",
            b"serverHello",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "clientFinish",
            b"clientFinish",
            "clientHello",
            b"clientHello",
            "serverHello",
            b"serverHello",
        ],
    ) -> None: ...

global___HandshakeMessage = HandshakeMessage

@typing_extensions.final
class HandshakeServerHello(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EPHEMERAL_FIELD_NUMBER: builtins.int
    STATIC_FIELD_NUMBER: builtins.int
    PAYLOAD_FIELD_NUMBER: builtins.int
    ephemeral: builtins.bytes
    static: builtins.bytes
    payload: builtins.bytes
    def __init__(
        self,
        *,
        ephemeral: builtins.bytes | None = ...,
        static: builtins.bytes | None = ...,
        payload: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "ephemeral", b"ephemeral", "payload", b"payload", "static", b"static"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "ephemeral", b"ephemeral", "payload", b"payload", "static", b"static"
        ],
    ) -> None: ...

global___HandshakeServerHello = HandshakeServerHello

@typing_extensions.final
class HandshakeClientHello(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EPHEMERAL_FIELD_NUMBER: builtins.int
    STATIC_FIELD_NUMBER: builtins.int
    PAYLOAD_FIELD_NUMBER: builtins.int
    ephemeral: builtins.bytes
    static: builtins.bytes
    payload: builtins.bytes
    def __init__(
        self,
        *,
        ephemeral: builtins.bytes | None = ...,
        static: builtins.bytes | None = ...,
        payload: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "ephemeral", b"ephemeral", "payload", b"payload", "static", b"static"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "ephemeral", b"ephemeral", "payload", b"payload", "static", b"static"
        ],
    ) -> None: ...

global___HandshakeClientHello = HandshakeClientHello

@typing_extensions.final
class HandshakeClientFinish(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    STATIC_FIELD_NUMBER: builtins.int
    PAYLOAD_FIELD_NUMBER: builtins.int
    static: builtins.bytes
    payload: builtins.bytes
    def __init__(
        self,
        *,
        static: builtins.bytes | None = ...,
        payload: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "payload", b"payload", "static", b"static"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "payload", b"payload", "static", b"static"
        ],
    ) -> None: ...

global___HandshakeClientFinish = HandshakeClientFinish

@typing_extensions.final
class ClientPayload(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _ProductEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ClientPayload._Product.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        WHATSAPP: ClientPayload._Product.ValueType  # 0
        MESSENGER: ClientPayload._Product.ValueType  # 1
        INTEROP: ClientPayload._Product.ValueType  # 2
        INTEROP_MSGR: ClientPayload._Product.ValueType  # 3

    class Product(_Product, metaclass=_ProductEnumTypeWrapper): ...
    WHATSAPP: ClientPayload.Product.ValueType  # 0
    MESSENGER: ClientPayload.Product.ValueType  # 1
    INTEROP: ClientPayload.Product.ValueType  # 2
    INTEROP_MSGR: ClientPayload.Product.ValueType  # 3

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

    class _IOSAppExtensionEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ClientPayload._IOSAppExtension.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        SHARE_EXTENSION: ClientPayload._IOSAppExtension.ValueType  # 0
        SERVICE_EXTENSION: ClientPayload._IOSAppExtension.ValueType  # 1
        INTENTS_EXTENSION: ClientPayload._IOSAppExtension.ValueType  # 2

    class IOSAppExtension(
        _IOSAppExtension, metaclass=_IOSAppExtensionEnumTypeWrapper
    ): ...
    SHARE_EXTENSION: ClientPayload.IOSAppExtension.ValueType  # 0
    SERVICE_EXTENSION: ClientPayload.IOSAppExtension.ValueType  # 1
    INTENTS_EXTENSION: ClientPayload.IOSAppExtension.ValueType  # 2

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

    class _ConnectTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ClientPayload._ConnectType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        CELLULAR_UNKNOWN: ClientPayload._ConnectType.ValueType  # 0
        WIFI_UNKNOWN: ClientPayload._ConnectType.ValueType  # 1
        CELLULAR_EDGE: ClientPayload._ConnectType.ValueType  # 100
        CELLULAR_IDEN: ClientPayload._ConnectType.ValueType  # 101
        CELLULAR_UMTS: ClientPayload._ConnectType.ValueType  # 102
        CELLULAR_EVDO: ClientPayload._ConnectType.ValueType  # 103
        CELLULAR_GPRS: ClientPayload._ConnectType.ValueType  # 104
        CELLULAR_HSDPA: ClientPayload._ConnectType.ValueType  # 105
        CELLULAR_HSUPA: ClientPayload._ConnectType.ValueType  # 106
        CELLULAR_HSPA: ClientPayload._ConnectType.ValueType  # 107
        CELLULAR_CDMA: ClientPayload._ConnectType.ValueType  # 108
        CELLULAR_1XRTT: ClientPayload._ConnectType.ValueType  # 109
        CELLULAR_EHRPD: ClientPayload._ConnectType.ValueType  # 110
        CELLULAR_LTE: ClientPayload._ConnectType.ValueType  # 111
        CELLULAR_HSPAP: ClientPayload._ConnectType.ValueType  # 112

    class ConnectType(_ConnectType, metaclass=_ConnectTypeEnumTypeWrapper): ...
    CELLULAR_UNKNOWN: ClientPayload.ConnectType.ValueType  # 0
    WIFI_UNKNOWN: ClientPayload.ConnectType.ValueType  # 1
    CELLULAR_EDGE: ClientPayload.ConnectType.ValueType  # 100
    CELLULAR_IDEN: ClientPayload.ConnectType.ValueType  # 101
    CELLULAR_UMTS: ClientPayload.ConnectType.ValueType  # 102
    CELLULAR_EVDO: ClientPayload.ConnectType.ValueType  # 103
    CELLULAR_GPRS: ClientPayload.ConnectType.ValueType  # 104
    CELLULAR_HSDPA: ClientPayload.ConnectType.ValueType  # 105
    CELLULAR_HSUPA: ClientPayload.ConnectType.ValueType  # 106
    CELLULAR_HSPA: ClientPayload.ConnectType.ValueType  # 107
    CELLULAR_CDMA: ClientPayload.ConnectType.ValueType  # 108
    CELLULAR_1XRTT: ClientPayload.ConnectType.ValueType  # 109
    CELLULAR_EHRPD: ClientPayload.ConnectType.ValueType  # 110
    CELLULAR_LTE: ClientPayload.ConnectType.ValueType  # 111
    CELLULAR_HSPAP: ClientPayload.ConnectType.ValueType  # 112

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

    class _ConnectReasonEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            ClientPayload._ConnectReason.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        PUSH: ClientPayload._ConnectReason.ValueType  # 0
        USER_ACTIVATED: ClientPayload._ConnectReason.ValueType  # 1
        SCHEDULED: ClientPayload._ConnectReason.ValueType  # 2
        ERROR_RECONNECT: ClientPayload._ConnectReason.ValueType  # 3
        NETWORK_SWITCH: ClientPayload._ConnectReason.ValueType  # 4
        PING_RECONNECT: ClientPayload._ConnectReason.ValueType  # 5
        UNKNOWN: ClientPayload._ConnectReason.ValueType  # 6

    class ConnectReason(_ConnectReason, metaclass=_ConnectReasonEnumTypeWrapper): ...
    PUSH: ClientPayload.ConnectReason.ValueType  # 0
    USER_ACTIVATED: ClientPayload.ConnectReason.ValueType  # 1
    SCHEDULED: ClientPayload.ConnectReason.ValueType  # 2
    ERROR_RECONNECT: ClientPayload.ConnectReason.ValueType  # 3
    NETWORK_SWITCH: ClientPayload.ConnectReason.ValueType  # 4
    PING_RECONNECT: ClientPayload.ConnectReason.ValueType  # 5
    UNKNOWN: ClientPayload.ConnectReason.ValueType  # 6

    @typing_extensions.final
    class WebInfo(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _WebSubPlatformEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ClientPayload.WebInfo._WebSubPlatform.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            WEB_BROWSER: ClientPayload.WebInfo._WebSubPlatform.ValueType  # 0
            APP_STORE: ClientPayload.WebInfo._WebSubPlatform.ValueType  # 1
            WIN_STORE: ClientPayload.WebInfo._WebSubPlatform.ValueType  # 2
            DARWIN: ClientPayload.WebInfo._WebSubPlatform.ValueType  # 3
            WIN32: ClientPayload.WebInfo._WebSubPlatform.ValueType  # 4

        class WebSubPlatform(
            _WebSubPlatform, metaclass=_WebSubPlatformEnumTypeWrapper
        ): ...
        WEB_BROWSER: ClientPayload.WebInfo.WebSubPlatform.ValueType  # 0
        APP_STORE: ClientPayload.WebInfo.WebSubPlatform.ValueType  # 1
        WIN_STORE: ClientPayload.WebInfo.WebSubPlatform.ValueType  # 2
        DARWIN: ClientPayload.WebInfo.WebSubPlatform.ValueType  # 3
        WIN32: ClientPayload.WebInfo.WebSubPlatform.ValueType  # 4

        @typing_extensions.final
        class WebdPayload(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            USESPARTICIPANTINKEY_FIELD_NUMBER: builtins.int
            SUPPORTSSTARREDMESSAGES_FIELD_NUMBER: builtins.int
            SUPPORTSDOCUMENTMESSAGES_FIELD_NUMBER: builtins.int
            SUPPORTSURLMESSAGES_FIELD_NUMBER: builtins.int
            SUPPORTSMEDIARETRY_FIELD_NUMBER: builtins.int
            SUPPORTSE2EIMAGE_FIELD_NUMBER: builtins.int
            SUPPORTSE2EVIDEO_FIELD_NUMBER: builtins.int
            SUPPORTSE2EAUDIO_FIELD_NUMBER: builtins.int
            SUPPORTSE2EDOCUMENT_FIELD_NUMBER: builtins.int
            DOCUMENTTYPES_FIELD_NUMBER: builtins.int
            FEATURES_FIELD_NUMBER: builtins.int
            usesParticipantInKey: builtins.bool
            supportsStarredMessages: builtins.bool
            supportsDocumentMessages: builtins.bool
            supportsUrlMessages: builtins.bool
            supportsMediaRetry: builtins.bool
            supportsE2EImage: builtins.bool
            supportsE2EVideo: builtins.bool
            supportsE2EAudio: builtins.bool
            supportsE2EDocument: builtins.bool
            documentTypes: builtins.str
            features: builtins.bytes
            def __init__(
                self,
                *,
                usesParticipantInKey: builtins.bool | None = ...,
                supportsStarredMessages: builtins.bool | None = ...,
                supportsDocumentMessages: builtins.bool | None = ...,
                supportsUrlMessages: builtins.bool | None = ...,
                supportsMediaRetry: builtins.bool | None = ...,
                supportsE2EImage: builtins.bool | None = ...,
                supportsE2EVideo: builtins.bool | None = ...,
                supportsE2EAudio: builtins.bool | None = ...,
                supportsE2EDocument: builtins.bool | None = ...,
                documentTypes: builtins.str | None = ...,
                features: builtins.bytes | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "documentTypes",
                    b"documentTypes",
                    "features",
                    b"features",
                    "supportsDocumentMessages",
                    b"supportsDocumentMessages",
                    "supportsE2EAudio",
                    b"supportsE2EAudio",
                    "supportsE2EDocument",
                    b"supportsE2EDocument",
                    "supportsE2EImage",
                    b"supportsE2EImage",
                    "supportsE2EVideo",
                    b"supportsE2EVideo",
                    "supportsMediaRetry",
                    b"supportsMediaRetry",
                    "supportsStarredMessages",
                    b"supportsStarredMessages",
                    "supportsUrlMessages",
                    b"supportsUrlMessages",
                    "usesParticipantInKey",
                    b"usesParticipantInKey",
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "documentTypes",
                    b"documentTypes",
                    "features",
                    b"features",
                    "supportsDocumentMessages",
                    b"supportsDocumentMessages",
                    "supportsE2EAudio",
                    b"supportsE2EAudio",
                    "supportsE2EDocument",
                    b"supportsE2EDocument",
                    "supportsE2EImage",
                    b"supportsE2EImage",
                    "supportsE2EVideo",
                    b"supportsE2EVideo",
                    "supportsMediaRetry",
                    b"supportsMediaRetry",
                    "supportsStarredMessages",
                    b"supportsStarredMessages",
                    "supportsUrlMessages",
                    b"supportsUrlMessages",
                    "usesParticipantInKey",
                    b"usesParticipantInKey",
                ],
            ) -> None: ...

        REFTOKEN_FIELD_NUMBER: builtins.int
        VERSION_FIELD_NUMBER: builtins.int
        WEBDPAYLOAD_FIELD_NUMBER: builtins.int
        WEBSUBPLATFORM_FIELD_NUMBER: builtins.int
        refToken: builtins.str
        version: builtins.str
        @property
        def webdPayload(self) -> global___ClientPayload.WebInfo.WebdPayload: ...
        webSubPlatform: global___ClientPayload.WebInfo.WebSubPlatform.ValueType
        def __init__(
            self,
            *,
            refToken: builtins.str | None = ...,
            version: builtins.str | None = ...,
            webdPayload: global___ClientPayload.WebInfo.WebdPayload | None = ...,
            webSubPlatform: global___ClientPayload.WebInfo.WebSubPlatform.ValueType
            | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "refToken",
                b"refToken",
                "version",
                b"version",
                "webSubPlatform",
                b"webSubPlatform",
                "webdPayload",
                b"webdPayload",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "refToken",
                b"refToken",
                "version",
                b"version",
                "webSubPlatform",
                b"webSubPlatform",
                "webdPayload",
                b"webdPayload",
            ],
        ) -> None: ...

    @typing_extensions.final
    class UserAgent(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _ReleaseChannelEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ClientPayload.UserAgent._ReleaseChannel.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            RELEASE: ClientPayload.UserAgent._ReleaseChannel.ValueType  # 0
            BETA: ClientPayload.UserAgent._ReleaseChannel.ValueType  # 1
            ALPHA: ClientPayload.UserAgent._ReleaseChannel.ValueType  # 2
            DEBUG: ClientPayload.UserAgent._ReleaseChannel.ValueType  # 3

        class ReleaseChannel(
            _ReleaseChannel, metaclass=_ReleaseChannelEnumTypeWrapper
        ): ...
        RELEASE: ClientPayload.UserAgent.ReleaseChannel.ValueType  # 0
        BETA: ClientPayload.UserAgent.ReleaseChannel.ValueType  # 1
        ALPHA: ClientPayload.UserAgent.ReleaseChannel.ValueType  # 2
        DEBUG: ClientPayload.UserAgent.ReleaseChannel.ValueType  # 3

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

        class _PlatformEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ClientPayload.UserAgent._Platform.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            ANDROID: ClientPayload.UserAgent._Platform.ValueType  # 0
            IOS: ClientPayload.UserAgent._Platform.ValueType  # 1
            WINDOWS_PHONE: ClientPayload.UserAgent._Platform.ValueType  # 2
            BLACKBERRY: ClientPayload.UserAgent._Platform.ValueType  # 3
            BLACKBERRYX: ClientPayload.UserAgent._Platform.ValueType  # 4
            S40: ClientPayload.UserAgent._Platform.ValueType  # 5
            S60: ClientPayload.UserAgent._Platform.ValueType  # 6
            PYTHON_CLIENT: ClientPayload.UserAgent._Platform.ValueType  # 7
            TIZEN: ClientPayload.UserAgent._Platform.ValueType  # 8
            ENTERPRISE: ClientPayload.UserAgent._Platform.ValueType  # 9
            SMB_ANDROID: ClientPayload.UserAgent._Platform.ValueType  # 10
            KAIOS: ClientPayload.UserAgent._Platform.ValueType  # 11
            SMB_IOS: ClientPayload.UserAgent._Platform.ValueType  # 12
            WINDOWS: ClientPayload.UserAgent._Platform.ValueType  # 13
            WEB: ClientPayload.UserAgent._Platform.ValueType  # 14
            PORTAL: ClientPayload.UserAgent._Platform.ValueType  # 15
            GREEN_ANDROID: ClientPayload.UserAgent._Platform.ValueType  # 16
            GREEN_IPHONE: ClientPayload.UserAgent._Platform.ValueType  # 17
            BLUE_ANDROID: ClientPayload.UserAgent._Platform.ValueType  # 18
            BLUE_IPHONE: ClientPayload.UserAgent._Platform.ValueType  # 19
            FBLITE_ANDROID: ClientPayload.UserAgent._Platform.ValueType  # 20
            MLITE_ANDROID: ClientPayload.UserAgent._Platform.ValueType  # 21
            IGLITE_ANDROID: ClientPayload.UserAgent._Platform.ValueType  # 22
            PAGE: ClientPayload.UserAgent._Platform.ValueType  # 23
            MACOS: ClientPayload.UserAgent._Platform.ValueType  # 24
            OCULUS_MSG: ClientPayload.UserAgent._Platform.ValueType  # 25
            OCULUS_CALL: ClientPayload.UserAgent._Platform.ValueType  # 26
            MILAN: ClientPayload.UserAgent._Platform.ValueType  # 27
            CAPI: ClientPayload.UserAgent._Platform.ValueType  # 28
            WEAROS: ClientPayload.UserAgent._Platform.ValueType  # 29
            ARDEVICE: ClientPayload.UserAgent._Platform.ValueType  # 30
            VRDEVICE: ClientPayload.UserAgent._Platform.ValueType  # 31
            BLUE_WEB: ClientPayload.UserAgent._Platform.ValueType  # 32
            IPAD: ClientPayload.UserAgent._Platform.ValueType  # 33
            TEST: ClientPayload.UserAgent._Platform.ValueType  # 34

        class Platform(_Platform, metaclass=_PlatformEnumTypeWrapper): ...
        ANDROID: ClientPayload.UserAgent.Platform.ValueType  # 0
        IOS: ClientPayload.UserAgent.Platform.ValueType  # 1
        WINDOWS_PHONE: ClientPayload.UserAgent.Platform.ValueType  # 2
        BLACKBERRY: ClientPayload.UserAgent.Platform.ValueType  # 3
        BLACKBERRYX: ClientPayload.UserAgent.Platform.ValueType  # 4
        S40: ClientPayload.UserAgent.Platform.ValueType  # 5
        S60: ClientPayload.UserAgent.Platform.ValueType  # 6
        PYTHON_CLIENT: ClientPayload.UserAgent.Platform.ValueType  # 7
        TIZEN: ClientPayload.UserAgent.Platform.ValueType  # 8
        ENTERPRISE: ClientPayload.UserAgent.Platform.ValueType  # 9
        SMB_ANDROID: ClientPayload.UserAgent.Platform.ValueType  # 10
        KAIOS: ClientPayload.UserAgent.Platform.ValueType  # 11
        SMB_IOS: ClientPayload.UserAgent.Platform.ValueType  # 12
        WINDOWS: ClientPayload.UserAgent.Platform.ValueType  # 13
        WEB: ClientPayload.UserAgent.Platform.ValueType  # 14
        PORTAL: ClientPayload.UserAgent.Platform.ValueType  # 15
        GREEN_ANDROID: ClientPayload.UserAgent.Platform.ValueType  # 16
        GREEN_IPHONE: ClientPayload.UserAgent.Platform.ValueType  # 17
        BLUE_ANDROID: ClientPayload.UserAgent.Platform.ValueType  # 18
        BLUE_IPHONE: ClientPayload.UserAgent.Platform.ValueType  # 19
        FBLITE_ANDROID: ClientPayload.UserAgent.Platform.ValueType  # 20
        MLITE_ANDROID: ClientPayload.UserAgent.Platform.ValueType  # 21
        IGLITE_ANDROID: ClientPayload.UserAgent.Platform.ValueType  # 22
        PAGE: ClientPayload.UserAgent.Platform.ValueType  # 23
        MACOS: ClientPayload.UserAgent.Platform.ValueType  # 24
        OCULUS_MSG: ClientPayload.UserAgent.Platform.ValueType  # 25
        OCULUS_CALL: ClientPayload.UserAgent.Platform.ValueType  # 26
        MILAN: ClientPayload.UserAgent.Platform.ValueType  # 27
        CAPI: ClientPayload.UserAgent.Platform.ValueType  # 28
        WEAROS: ClientPayload.UserAgent.Platform.ValueType  # 29
        ARDEVICE: ClientPayload.UserAgent.Platform.ValueType  # 30
        VRDEVICE: ClientPayload.UserAgent.Platform.ValueType  # 31
        BLUE_WEB: ClientPayload.UserAgent.Platform.ValueType  # 32
        IPAD: ClientPayload.UserAgent.Platform.ValueType  # 33
        TEST: ClientPayload.UserAgent.Platform.ValueType  # 34

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

        class _DeviceTypeEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ClientPayload.UserAgent._DeviceType.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            PHONE: ClientPayload.UserAgent._DeviceType.ValueType  # 0
            TABLET: ClientPayload.UserAgent._DeviceType.ValueType  # 1
            DESKTOP: ClientPayload.UserAgent._DeviceType.ValueType  # 2
            WEARABLE: ClientPayload.UserAgent._DeviceType.ValueType  # 3
            VR: ClientPayload.UserAgent._DeviceType.ValueType  # 4

        class DeviceType(_DeviceType, metaclass=_DeviceTypeEnumTypeWrapper): ...
        PHONE: ClientPayload.UserAgent.DeviceType.ValueType  # 0
        TABLET: ClientPayload.UserAgent.DeviceType.ValueType  # 1
        DESKTOP: ClientPayload.UserAgent.DeviceType.ValueType  # 2
        WEARABLE: ClientPayload.UserAgent.DeviceType.ValueType  # 3
        VR: ClientPayload.UserAgent.DeviceType.ValueType  # 4

        @typing_extensions.final
        class AppVersion(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            PRIMARY_FIELD_NUMBER: builtins.int
            SECONDARY_FIELD_NUMBER: builtins.int
            TERTIARY_FIELD_NUMBER: builtins.int
            QUATERNARY_FIELD_NUMBER: builtins.int
            QUINARY_FIELD_NUMBER: builtins.int
            primary: builtins.int
            secondary: builtins.int
            tertiary: builtins.int
            quaternary: builtins.int
            quinary: builtins.int
            def __init__(
                self,
                *,
                primary: builtins.int | None = ...,
                secondary: builtins.int | None = ...,
                tertiary: builtins.int | None = ...,
                quaternary: builtins.int | None = ...,
                quinary: builtins.int | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "primary",
                    b"primary",
                    "quaternary",
                    b"quaternary",
                    "quinary",
                    b"quinary",
                    "secondary",
                    b"secondary",
                    "tertiary",
                    b"tertiary",
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "primary",
                    b"primary",
                    "quaternary",
                    b"quaternary",
                    "quinary",
                    b"quinary",
                    "secondary",
                    b"secondary",
                    "tertiary",
                    b"tertiary",
                ],
            ) -> None: ...

        PLATFORM_FIELD_NUMBER: builtins.int
        APPVERSION_FIELD_NUMBER: builtins.int
        MCC_FIELD_NUMBER: builtins.int
        MNC_FIELD_NUMBER: builtins.int
        OSVERSION_FIELD_NUMBER: builtins.int
        MANUFACTURER_FIELD_NUMBER: builtins.int
        DEVICE_FIELD_NUMBER: builtins.int
        OSBUILDNUMBER_FIELD_NUMBER: builtins.int
        PHONEID_FIELD_NUMBER: builtins.int
        RELEASECHANNEL_FIELD_NUMBER: builtins.int
        LOCALELANGUAGEISO6391_FIELD_NUMBER: builtins.int
        LOCALECOUNTRYISO31661ALPHA2_FIELD_NUMBER: builtins.int
        DEVICEBOARD_FIELD_NUMBER: builtins.int
        DEVICEEXPID_FIELD_NUMBER: builtins.int
        DEVICETYPE_FIELD_NUMBER: builtins.int
        platform: global___ClientPayload.UserAgent.Platform.ValueType
        @property
        def appVersion(self) -> global___ClientPayload.UserAgent.AppVersion: ...
        mcc: builtins.str
        mnc: builtins.str
        osVersion: builtins.str
        manufacturer: builtins.str
        device: builtins.str
        osBuildNumber: builtins.str
        phoneId: builtins.str
        releaseChannel: global___ClientPayload.UserAgent.ReleaseChannel.ValueType
        localeLanguageIso6391: builtins.str
        localeCountryIso31661Alpha2: builtins.str
        deviceBoard: builtins.str
        deviceExpId: builtins.str
        deviceType: global___ClientPayload.UserAgent.DeviceType.ValueType
        def __init__(
            self,
            *,
            platform: global___ClientPayload.UserAgent.Platform.ValueType | None = ...,
            appVersion: global___ClientPayload.UserAgent.AppVersion | None = ...,
            mcc: builtins.str | None = ...,
            mnc: builtins.str | None = ...,
            osVersion: builtins.str | None = ...,
            manufacturer: builtins.str | None = ...,
            device: builtins.str | None = ...,
            osBuildNumber: builtins.str | None = ...,
            phoneId: builtins.str | None = ...,
            releaseChannel: global___ClientPayload.UserAgent.ReleaseChannel.ValueType
            | None = ...,
            localeLanguageIso6391: builtins.str | None = ...,
            localeCountryIso31661Alpha2: builtins.str | None = ...,
            deviceBoard: builtins.str | None = ...,
            deviceExpId: builtins.str | None = ...,
            deviceType: global___ClientPayload.UserAgent.DeviceType.ValueType
            | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "appVersion",
                b"appVersion",
                "device",
                b"device",
                "deviceBoard",
                b"deviceBoard",
                "deviceExpId",
                b"deviceExpId",
                "deviceType",
                b"deviceType",
                "localeCountryIso31661Alpha2",
                b"localeCountryIso31661Alpha2",
                "localeLanguageIso6391",
                b"localeLanguageIso6391",
                "manufacturer",
                b"manufacturer",
                "mcc",
                b"mcc",
                "mnc",
                b"mnc",
                "osBuildNumber",
                b"osBuildNumber",
                "osVersion",
                b"osVersion",
                "phoneId",
                b"phoneId",
                "platform",
                b"platform",
                "releaseChannel",
                b"releaseChannel",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "appVersion",
                b"appVersion",
                "device",
                b"device",
                "deviceBoard",
                b"deviceBoard",
                "deviceExpId",
                b"deviceExpId",
                "deviceType",
                b"deviceType",
                "localeCountryIso31661Alpha2",
                b"localeCountryIso31661Alpha2",
                "localeLanguageIso6391",
                b"localeLanguageIso6391",
                "manufacturer",
                b"manufacturer",
                "mcc",
                b"mcc",
                "mnc",
                b"mnc",
                "osBuildNumber",
                b"osBuildNumber",
                "osVersion",
                b"osVersion",
                "phoneId",
                b"phoneId",
                "platform",
                b"platform",
                "releaseChannel",
                b"releaseChannel",
            ],
        ) -> None: ...

    @typing_extensions.final
    class InteropData(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        ACCOUNTID_FIELD_NUMBER: builtins.int
        TOKEN_FIELD_NUMBER: builtins.int
        accountId: builtins.int
        token: builtins.bytes
        def __init__(
            self,
            *,
            accountId: builtins.int | None = ...,
            token: builtins.bytes | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "accountId", b"accountId", "token", b"token"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "accountId", b"accountId", "token", b"token"
            ],
        ) -> None: ...

    @typing_extensions.final
    class DevicePairingRegistrationData(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        EREGID_FIELD_NUMBER: builtins.int
        EKEYTYPE_FIELD_NUMBER: builtins.int
        EIDENT_FIELD_NUMBER: builtins.int
        ESKEYID_FIELD_NUMBER: builtins.int
        ESKEYVAL_FIELD_NUMBER: builtins.int
        ESKEYSIG_FIELD_NUMBER: builtins.int
        BUILDHASH_FIELD_NUMBER: builtins.int
        DEVICEPROPS_FIELD_NUMBER: builtins.int
        eRegid: builtins.bytes
        eKeytype: builtins.bytes
        eIdent: builtins.bytes
        eSkeyId: builtins.bytes
        eSkeyVal: builtins.bytes
        eSkeySig: builtins.bytes
        buildHash: builtins.bytes
        deviceProps: builtins.bytes
        def __init__(
            self,
            *,
            eRegid: builtins.bytes | None = ...,
            eKeytype: builtins.bytes | None = ...,
            eIdent: builtins.bytes | None = ...,
            eSkeyId: builtins.bytes | None = ...,
            eSkeyVal: builtins.bytes | None = ...,
            eSkeySig: builtins.bytes | None = ...,
            buildHash: builtins.bytes | None = ...,
            deviceProps: builtins.bytes | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "buildHash",
                b"buildHash",
                "deviceProps",
                b"deviceProps",
                "eIdent",
                b"eIdent",
                "eKeytype",
                b"eKeytype",
                "eRegid",
                b"eRegid",
                "eSkeyId",
                b"eSkeyId",
                "eSkeySig",
                b"eSkeySig",
                "eSkeyVal",
                b"eSkeyVal",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "buildHash",
                b"buildHash",
                "deviceProps",
                b"deviceProps",
                "eIdent",
                b"eIdent",
                "eKeytype",
                b"eKeytype",
                "eRegid",
                b"eRegid",
                "eSkeyId",
                b"eSkeyId",
                "eSkeySig",
                b"eSkeySig",
                "eSkeyVal",
                b"eSkeyVal",
            ],
        ) -> None: ...

    @typing_extensions.final
    class DNSSource(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        class _DNSResolutionMethodEnumTypeWrapper(
            google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
                ClientPayload.DNSSource._DNSResolutionMethod.ValueType
            ],
            builtins.type,
        ):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            SYSTEM: ClientPayload.DNSSource._DNSResolutionMethod.ValueType  # 0
            GOOGLE: ClientPayload.DNSSource._DNSResolutionMethod.ValueType  # 1
            HARDCODED: ClientPayload.DNSSource._DNSResolutionMethod.ValueType  # 2
            OVERRIDE: ClientPayload.DNSSource._DNSResolutionMethod.ValueType  # 3
            FALLBACK: ClientPayload.DNSSource._DNSResolutionMethod.ValueType  # 4

        class DNSResolutionMethod(
            _DNSResolutionMethod, metaclass=_DNSResolutionMethodEnumTypeWrapper
        ): ...
        SYSTEM: ClientPayload.DNSSource.DNSResolutionMethod.ValueType  # 0
        GOOGLE: ClientPayload.DNSSource.DNSResolutionMethod.ValueType  # 1
        HARDCODED: ClientPayload.DNSSource.DNSResolutionMethod.ValueType  # 2
        OVERRIDE: ClientPayload.DNSSource.DNSResolutionMethod.ValueType  # 3
        FALLBACK: ClientPayload.DNSSource.DNSResolutionMethod.ValueType  # 4

        DNSMETHOD_FIELD_NUMBER: builtins.int
        APPCACHED_FIELD_NUMBER: builtins.int
        dnsMethod: global___ClientPayload.DNSSource.DNSResolutionMethod.ValueType
        appCached: builtins.bool
        def __init__(
            self,
            *,
            dnsMethod: global___ClientPayload.DNSSource.DNSResolutionMethod.ValueType
            | None = ...,
            appCached: builtins.bool | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "appCached", b"appCached", "dnsMethod", b"dnsMethod"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "appCached", b"appCached", "dnsMethod", b"dnsMethod"
            ],
        ) -> None: ...

    USERNAME_FIELD_NUMBER: builtins.int
    PASSIVE_FIELD_NUMBER: builtins.int
    USERAGENT_FIELD_NUMBER: builtins.int
    WEBINFO_FIELD_NUMBER: builtins.int
    PUSHNAME_FIELD_NUMBER: builtins.int
    SESSIONID_FIELD_NUMBER: builtins.int
    SHORTCONNECT_FIELD_NUMBER: builtins.int
    CONNECTTYPE_FIELD_NUMBER: builtins.int
    CONNECTREASON_FIELD_NUMBER: builtins.int
    SHARDS_FIELD_NUMBER: builtins.int
    DNSSOURCE_FIELD_NUMBER: builtins.int
    CONNECTATTEMPTCOUNT_FIELD_NUMBER: builtins.int
    DEVICE_FIELD_NUMBER: builtins.int
    DEVICEPAIRINGDATA_FIELD_NUMBER: builtins.int
    PRODUCT_FIELD_NUMBER: builtins.int
    FBCAT_FIELD_NUMBER: builtins.int
    FBUSERAGENT_FIELD_NUMBER: builtins.int
    OC_FIELD_NUMBER: builtins.int
    LC_FIELD_NUMBER: builtins.int
    IOSAPPEXTENSION_FIELD_NUMBER: builtins.int
    FBAPPID_FIELD_NUMBER: builtins.int
    FBDEVICEID_FIELD_NUMBER: builtins.int
    PULL_FIELD_NUMBER: builtins.int
    PADDINGBYTES_FIELD_NUMBER: builtins.int
    YEARCLASS_FIELD_NUMBER: builtins.int
    MEMCLASS_FIELD_NUMBER: builtins.int
    INTEROPDATA_FIELD_NUMBER: builtins.int
    username: builtins.int
    passive: builtins.bool
    @property
    def userAgent(self) -> global___ClientPayload.UserAgent: ...
    @property
    def webInfo(self) -> global___ClientPayload.WebInfo: ...
    pushName: builtins.str
    sessionId: builtins.int
    shortConnect: builtins.bool
    connectType: global___ClientPayload.ConnectType.ValueType
    connectReason: global___ClientPayload.ConnectReason.ValueType
    @property
    def shards(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.int
    ]: ...
    @property
    def dnsSource(self) -> global___ClientPayload.DNSSource: ...
    connectAttemptCount: builtins.int
    device: builtins.int
    @property
    def devicePairingData(
        self,
    ) -> global___ClientPayload.DevicePairingRegistrationData: ...
    product: global___ClientPayload.Product.ValueType
    fbCat: builtins.bytes
    fbUserAgent: builtins.bytes
    oc: builtins.bool
    lc: builtins.int
    iosAppExtension: global___ClientPayload.IOSAppExtension.ValueType
    fbAppId: builtins.int
    fbDeviceId: builtins.bytes
    pull: builtins.bool
    paddingBytes: builtins.bytes
    yearClass: builtins.int
    memClass: builtins.int
    @property
    def interopData(self) -> global___ClientPayload.InteropData: ...
    def __init__(
        self,
        *,
        username: builtins.int | None = ...,
        passive: builtins.bool | None = ...,
        userAgent: global___ClientPayload.UserAgent | None = ...,
        webInfo: global___ClientPayload.WebInfo | None = ...,
        pushName: builtins.str | None = ...,
        sessionId: builtins.int | None = ...,
        shortConnect: builtins.bool | None = ...,
        connectType: global___ClientPayload.ConnectType.ValueType | None = ...,
        connectReason: global___ClientPayload.ConnectReason.ValueType | None = ...,
        shards: collections.abc.Iterable[builtins.int] | None = ...,
        dnsSource: global___ClientPayload.DNSSource | None = ...,
        connectAttemptCount: builtins.int | None = ...,
        device: builtins.int | None = ...,
        devicePairingData: global___ClientPayload.DevicePairingRegistrationData
        | None = ...,
        product: global___ClientPayload.Product.ValueType | None = ...,
        fbCat: builtins.bytes | None = ...,
        fbUserAgent: builtins.bytes | None = ...,
        oc: builtins.bool | None = ...,
        lc: builtins.int | None = ...,
        iosAppExtension: global___ClientPayload.IOSAppExtension.ValueType | None = ...,
        fbAppId: builtins.int | None = ...,
        fbDeviceId: builtins.bytes | None = ...,
        pull: builtins.bool | None = ...,
        paddingBytes: builtins.bytes | None = ...,
        yearClass: builtins.int | None = ...,
        memClass: builtins.int | None = ...,
        interopData: global___ClientPayload.InteropData | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "connectAttemptCount",
            b"connectAttemptCount",
            "connectReason",
            b"connectReason",
            "connectType",
            b"connectType",
            "device",
            b"device",
            "devicePairingData",
            b"devicePairingData",
            "dnsSource",
            b"dnsSource",
            "fbAppId",
            b"fbAppId",
            "fbCat",
            b"fbCat",
            "fbDeviceId",
            b"fbDeviceId",
            "fbUserAgent",
            b"fbUserAgent",
            "interopData",
            b"interopData",
            "iosAppExtension",
            b"iosAppExtension",
            "lc",
            b"lc",
            "memClass",
            b"memClass",
            "oc",
            b"oc",
            "paddingBytes",
            b"paddingBytes",
            "passive",
            b"passive",
            "product",
            b"product",
            "pull",
            b"pull",
            "pushName",
            b"pushName",
            "sessionId",
            b"sessionId",
            "shortConnect",
            b"shortConnect",
            "userAgent",
            b"userAgent",
            "username",
            b"username",
            "webInfo",
            b"webInfo",
            "yearClass",
            b"yearClass",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "connectAttemptCount",
            b"connectAttemptCount",
            "connectReason",
            b"connectReason",
            "connectType",
            b"connectType",
            "device",
            b"device",
            "devicePairingData",
            b"devicePairingData",
            "dnsSource",
            b"dnsSource",
            "fbAppId",
            b"fbAppId",
            "fbCat",
            b"fbCat",
            "fbDeviceId",
            b"fbDeviceId",
            "fbUserAgent",
            b"fbUserAgent",
            "interopData",
            b"interopData",
            "iosAppExtension",
            b"iosAppExtension",
            "lc",
            b"lc",
            "memClass",
            b"memClass",
            "oc",
            b"oc",
            "paddingBytes",
            b"paddingBytes",
            "passive",
            b"passive",
            "product",
            b"product",
            "pull",
            b"pull",
            "pushName",
            b"pushName",
            "sessionId",
            b"sessionId",
            "shards",
            b"shards",
            "shortConnect",
            b"shortConnect",
            "userAgent",
            b"userAgent",
            "username",
            b"username",
            "webInfo",
            b"webInfo",
            "yearClass",
            b"yearClass",
        ],
    ) -> None: ...

global___ClientPayload = ClientPayload

@typing_extensions.final
class WebNotificationsInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TIMESTAMP_FIELD_NUMBER: builtins.int
    UNREADCHATS_FIELD_NUMBER: builtins.int
    NOTIFYMESSAGECOUNT_FIELD_NUMBER: builtins.int
    NOTIFYMESSAGES_FIELD_NUMBER: builtins.int
    timestamp: builtins.int
    unreadChats: builtins.int
    notifyMessageCount: builtins.int
    @property
    def notifyMessages(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___WebMessageInfo
    ]: ...
    def __init__(
        self,
        *,
        timestamp: builtins.int | None = ...,
        unreadChats: builtins.int | None = ...,
        notifyMessageCount: builtins.int | None = ...,
        notifyMessages: collections.abc.Iterable[global___WebMessageInfo] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "notifyMessageCount",
            b"notifyMessageCount",
            "timestamp",
            b"timestamp",
            "unreadChats",
            b"unreadChats",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "notifyMessageCount",
            b"notifyMessageCount",
            "notifyMessages",
            b"notifyMessages",
            "timestamp",
            b"timestamp",
            "unreadChats",
            b"unreadChats",
        ],
    ) -> None: ...

global___WebNotificationsInfo = WebNotificationsInfo

@typing_extensions.final
class WebMessageInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _StubTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            WebMessageInfo._StubType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: WebMessageInfo._StubType.ValueType  # 0
        REVOKE: WebMessageInfo._StubType.ValueType  # 1
        CIPHERTEXT: WebMessageInfo._StubType.ValueType  # 2
        FUTUREPROOF: WebMessageInfo._StubType.ValueType  # 3
        NON_VERIFIED_TRANSITION: WebMessageInfo._StubType.ValueType  # 4
        UNVERIFIED_TRANSITION: WebMessageInfo._StubType.ValueType  # 5
        VERIFIED_TRANSITION: WebMessageInfo._StubType.ValueType  # 6
        VERIFIED_LOW_UNKNOWN: WebMessageInfo._StubType.ValueType  # 7
        VERIFIED_HIGH: WebMessageInfo._StubType.ValueType  # 8
        VERIFIED_INITIAL_UNKNOWN: WebMessageInfo._StubType.ValueType  # 9
        VERIFIED_INITIAL_LOW: WebMessageInfo._StubType.ValueType  # 10
        VERIFIED_INITIAL_HIGH: WebMessageInfo._StubType.ValueType  # 11
        VERIFIED_TRANSITION_ANY_TO_NONE: WebMessageInfo._StubType.ValueType  # 12
        VERIFIED_TRANSITION_ANY_TO_HIGH: WebMessageInfo._StubType.ValueType  # 13
        VERIFIED_TRANSITION_HIGH_TO_LOW: WebMessageInfo._StubType.ValueType  # 14
        VERIFIED_TRANSITION_HIGH_TO_UNKNOWN: WebMessageInfo._StubType.ValueType  # 15
        VERIFIED_TRANSITION_UNKNOWN_TO_LOW: WebMessageInfo._StubType.ValueType  # 16
        VERIFIED_TRANSITION_LOW_TO_UNKNOWN: WebMessageInfo._StubType.ValueType  # 17
        VERIFIED_TRANSITION_NONE_TO_LOW: WebMessageInfo._StubType.ValueType  # 18
        VERIFIED_TRANSITION_NONE_TO_UNKNOWN: WebMessageInfo._StubType.ValueType  # 19
        GROUP_CREATE: WebMessageInfo._StubType.ValueType  # 20
        GROUP_CHANGE_SUBJECT: WebMessageInfo._StubType.ValueType  # 21
        GROUP_CHANGE_ICON: WebMessageInfo._StubType.ValueType  # 22
        GROUP_CHANGE_INVITE_LINK: WebMessageInfo._StubType.ValueType  # 23
        GROUP_CHANGE_DESCRIPTION: WebMessageInfo._StubType.ValueType  # 24
        GROUP_CHANGE_RESTRICT: WebMessageInfo._StubType.ValueType  # 25
        GROUP_CHANGE_ANNOUNCE: WebMessageInfo._StubType.ValueType  # 26
        GROUP_PARTICIPANT_ADD: WebMessageInfo._StubType.ValueType  # 27
        GROUP_PARTICIPANT_REMOVE: WebMessageInfo._StubType.ValueType  # 28
        GROUP_PARTICIPANT_PROMOTE: WebMessageInfo._StubType.ValueType  # 29
        GROUP_PARTICIPANT_DEMOTE: WebMessageInfo._StubType.ValueType  # 30
        GROUP_PARTICIPANT_INVITE: WebMessageInfo._StubType.ValueType  # 31
        GROUP_PARTICIPANT_LEAVE: WebMessageInfo._StubType.ValueType  # 32
        GROUP_PARTICIPANT_CHANGE_NUMBER: WebMessageInfo._StubType.ValueType  # 33
        BROADCAST_CREATE: WebMessageInfo._StubType.ValueType  # 34
        BROADCAST_ADD: WebMessageInfo._StubType.ValueType  # 35
        BROADCAST_REMOVE: WebMessageInfo._StubType.ValueType  # 36
        GENERIC_NOTIFICATION: WebMessageInfo._StubType.ValueType  # 37
        E2E_IDENTITY_CHANGED: WebMessageInfo._StubType.ValueType  # 38
        E2E_ENCRYPTED: WebMessageInfo._StubType.ValueType  # 39
        CALL_MISSED_VOICE: WebMessageInfo._StubType.ValueType  # 40
        CALL_MISSED_VIDEO: WebMessageInfo._StubType.ValueType  # 41
        INDIVIDUAL_CHANGE_NUMBER: WebMessageInfo._StubType.ValueType  # 42
        GROUP_DELETE: WebMessageInfo._StubType.ValueType  # 43
        GROUP_ANNOUNCE_MODE_MESSAGE_BOUNCE: WebMessageInfo._StubType.ValueType  # 44
        CALL_MISSED_GROUP_VOICE: WebMessageInfo._StubType.ValueType  # 45
        CALL_MISSED_GROUP_VIDEO: WebMessageInfo._StubType.ValueType  # 46
        PAYMENT_CIPHERTEXT: WebMessageInfo._StubType.ValueType  # 47
        PAYMENT_FUTUREPROOF: WebMessageInfo._StubType.ValueType  # 48
        PAYMENT_TRANSACTION_STATUS_UPDATE_FAILED: WebMessageInfo._StubType.ValueType  # 49
        PAYMENT_TRANSACTION_STATUS_UPDATE_REFUNDED: WebMessageInfo._StubType.ValueType  # 50
        PAYMENT_TRANSACTION_STATUS_UPDATE_REFUND_FAILED: WebMessageInfo._StubType.ValueType  # 51
        PAYMENT_TRANSACTION_STATUS_RECEIVER_PENDING_SETUP: WebMessageInfo._StubType.ValueType  # 52
        PAYMENT_TRANSACTION_STATUS_RECEIVER_SUCCESS_AFTER_HICCUP: WebMessageInfo._StubType.ValueType  # 53
        PAYMENT_ACTION_ACCOUNT_SETUP_REMINDER: WebMessageInfo._StubType.ValueType  # 54
        PAYMENT_ACTION_SEND_PAYMENT_REMINDER: WebMessageInfo._StubType.ValueType  # 55
        PAYMENT_ACTION_SEND_PAYMENT_INVITATION: WebMessageInfo._StubType.ValueType  # 56
        PAYMENT_ACTION_REQUEST_DECLINED: WebMessageInfo._StubType.ValueType  # 57
        PAYMENT_ACTION_REQUEST_EXPIRED: WebMessageInfo._StubType.ValueType  # 58
        PAYMENT_ACTION_REQUEST_CANCELLED: WebMessageInfo._StubType.ValueType  # 59
        BIZ_VERIFIED_TRANSITION_TOP_TO_BOTTOM: WebMessageInfo._StubType.ValueType  # 60
        BIZ_VERIFIED_TRANSITION_BOTTOM_TO_TOP: WebMessageInfo._StubType.ValueType  # 61
        BIZ_INTRO_TOP: WebMessageInfo._StubType.ValueType  # 62
        BIZ_INTRO_BOTTOM: WebMessageInfo._StubType.ValueType  # 63
        BIZ_NAME_CHANGE: WebMessageInfo._StubType.ValueType  # 64
        BIZ_MOVE_TO_CONSUMER_APP: WebMessageInfo._StubType.ValueType  # 65
        BIZ_TWO_TIER_MIGRATION_TOP: WebMessageInfo._StubType.ValueType  # 66
        BIZ_TWO_TIER_MIGRATION_BOTTOM: WebMessageInfo._StubType.ValueType  # 67
        OVERSIZED: WebMessageInfo._StubType.ValueType  # 68
        GROUP_CHANGE_NO_FREQUENTLY_FORWARDED: WebMessageInfo._StubType.ValueType  # 69
        GROUP_V4_ADD_INVITE_SENT: WebMessageInfo._StubType.ValueType  # 70
        GROUP_PARTICIPANT_ADD_REQUEST_JOIN: WebMessageInfo._StubType.ValueType  # 71
        CHANGE_EPHEMERAL_SETTING: WebMessageInfo._StubType.ValueType  # 72
        E2E_DEVICE_CHANGED: WebMessageInfo._StubType.ValueType  # 73
        VIEWED_ONCE: WebMessageInfo._StubType.ValueType  # 74
        E2E_ENCRYPTED_NOW: WebMessageInfo._StubType.ValueType  # 75
        BLUE_MSG_BSP_FB_TO_BSP_PREMISE: WebMessageInfo._StubType.ValueType  # 76
        BLUE_MSG_BSP_FB_TO_SELF_FB: WebMessageInfo._StubType.ValueType  # 77
        BLUE_MSG_BSP_FB_TO_SELF_PREMISE: WebMessageInfo._StubType.ValueType  # 78
        BLUE_MSG_BSP_FB_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 79
        BLUE_MSG_BSP_FB_UNVERIFIED_TO_SELF_PREMISE_VERIFIED: WebMessageInfo._StubType.ValueType  # 80
        BLUE_MSG_BSP_FB_VERIFIED: WebMessageInfo._StubType.ValueType  # 81
        BLUE_MSG_BSP_FB_VERIFIED_TO_SELF_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 82
        BLUE_MSG_BSP_PREMISE_TO_SELF_PREMISE: WebMessageInfo._StubType.ValueType  # 83
        BLUE_MSG_BSP_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 84
        BLUE_MSG_BSP_PREMISE_UNVERIFIED_TO_SELF_PREMISE_VERIFIED: WebMessageInfo._StubType.ValueType  # 85
        BLUE_MSG_BSP_PREMISE_VERIFIED: WebMessageInfo._StubType.ValueType  # 86
        BLUE_MSG_BSP_PREMISE_VERIFIED_TO_SELF_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 87
        BLUE_MSG_CONSUMER_TO_BSP_FB_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 88
        BLUE_MSG_CONSUMER_TO_BSP_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 89
        BLUE_MSG_CONSUMER_TO_SELF_FB_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 90
        BLUE_MSG_CONSUMER_TO_SELF_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 91
        BLUE_MSG_SELF_FB_TO_BSP_PREMISE: WebMessageInfo._StubType.ValueType  # 92
        BLUE_MSG_SELF_FB_TO_SELF_PREMISE: WebMessageInfo._StubType.ValueType  # 93
        BLUE_MSG_SELF_FB_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 94
        BLUE_MSG_SELF_FB_UNVERIFIED_TO_SELF_PREMISE_VERIFIED: WebMessageInfo._StubType.ValueType  # 95
        BLUE_MSG_SELF_FB_VERIFIED: WebMessageInfo._StubType.ValueType  # 96
        BLUE_MSG_SELF_FB_VERIFIED_TO_SELF_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 97
        BLUE_MSG_SELF_PREMISE_TO_BSP_PREMISE: WebMessageInfo._StubType.ValueType  # 98
        BLUE_MSG_SELF_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 99
        BLUE_MSG_SELF_PREMISE_VERIFIED: WebMessageInfo._StubType.ValueType  # 100
        BLUE_MSG_TO_BSP_FB: WebMessageInfo._StubType.ValueType  # 101
        BLUE_MSG_TO_CONSUMER: WebMessageInfo._StubType.ValueType  # 102
        BLUE_MSG_TO_SELF_FB: WebMessageInfo._StubType.ValueType  # 103
        BLUE_MSG_UNVERIFIED_TO_BSP_FB_VERIFIED: WebMessageInfo._StubType.ValueType  # 104
        BLUE_MSG_UNVERIFIED_TO_BSP_PREMISE_VERIFIED: WebMessageInfo._StubType.ValueType  # 105
        BLUE_MSG_UNVERIFIED_TO_SELF_FB_VERIFIED: WebMessageInfo._StubType.ValueType  # 106
        BLUE_MSG_UNVERIFIED_TO_VERIFIED: WebMessageInfo._StubType.ValueType  # 107
        BLUE_MSG_VERIFIED_TO_BSP_FB_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 108
        BLUE_MSG_VERIFIED_TO_BSP_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 109
        BLUE_MSG_VERIFIED_TO_SELF_FB_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 110
        BLUE_MSG_VERIFIED_TO_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 111
        BLUE_MSG_BSP_FB_UNVERIFIED_TO_BSP_PREMISE_VERIFIED: WebMessageInfo._StubType.ValueType  # 112
        BLUE_MSG_BSP_FB_UNVERIFIED_TO_SELF_FB_VERIFIED: WebMessageInfo._StubType.ValueType  # 113
        BLUE_MSG_BSP_FB_VERIFIED_TO_BSP_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 114
        BLUE_MSG_BSP_FB_VERIFIED_TO_SELF_FB_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 115
        BLUE_MSG_SELF_FB_UNVERIFIED_TO_BSP_PREMISE_VERIFIED: WebMessageInfo._StubType.ValueType  # 116
        BLUE_MSG_SELF_FB_VERIFIED_TO_BSP_PREMISE_UNVERIFIED: WebMessageInfo._StubType.ValueType  # 117
        E2E_IDENTITY_UNAVAILABLE: WebMessageInfo._StubType.ValueType  # 118
        GROUP_CREATING: WebMessageInfo._StubType.ValueType  # 119
        GROUP_CREATE_FAILED: WebMessageInfo._StubType.ValueType  # 120
        GROUP_BOUNCED: WebMessageInfo._StubType.ValueType  # 121
        BLOCK_CONTACT: WebMessageInfo._StubType.ValueType  # 122
        EPHEMERAL_SETTING_NOT_APPLIED: WebMessageInfo._StubType.ValueType  # 123
        SYNC_FAILED: WebMessageInfo._StubType.ValueType  # 124
        SYNCING: WebMessageInfo._StubType.ValueType  # 125
        BIZ_PRIVACY_MODE_INIT_FB: WebMessageInfo._StubType.ValueType  # 126
        BIZ_PRIVACY_MODE_INIT_BSP: WebMessageInfo._StubType.ValueType  # 127
        BIZ_PRIVACY_MODE_TO_FB: WebMessageInfo._StubType.ValueType  # 128
        BIZ_PRIVACY_MODE_TO_BSP: WebMessageInfo._StubType.ValueType  # 129
        DISAPPEARING_MODE: WebMessageInfo._StubType.ValueType  # 130
        E2E_DEVICE_FETCH_FAILED: WebMessageInfo._StubType.ValueType  # 131
        ADMIN_REVOKE: WebMessageInfo._StubType.ValueType  # 132
        GROUP_INVITE_LINK_GROWTH_LOCKED: WebMessageInfo._StubType.ValueType  # 133
        COMMUNITY_LINK_PARENT_GROUP: WebMessageInfo._StubType.ValueType  # 134
        COMMUNITY_LINK_SIBLING_GROUP: WebMessageInfo._StubType.ValueType  # 135
        COMMUNITY_LINK_SUB_GROUP: WebMessageInfo._StubType.ValueType  # 136
        COMMUNITY_UNLINK_PARENT_GROUP: WebMessageInfo._StubType.ValueType  # 137
        COMMUNITY_UNLINK_SIBLING_GROUP: WebMessageInfo._StubType.ValueType  # 138
        COMMUNITY_UNLINK_SUB_GROUP: WebMessageInfo._StubType.ValueType  # 139
        GROUP_PARTICIPANT_ACCEPT: WebMessageInfo._StubType.ValueType  # 140
        GROUP_PARTICIPANT_LINKED_GROUP_JOIN: WebMessageInfo._StubType.ValueType  # 141
        COMMUNITY_CREATE: WebMessageInfo._StubType.ValueType  # 142
        EPHEMERAL_KEEP_IN_CHAT: WebMessageInfo._StubType.ValueType  # 143
        GROUP_MEMBERSHIP_JOIN_APPROVAL_REQUEST: WebMessageInfo._StubType.ValueType  # 144
        GROUP_MEMBERSHIP_JOIN_APPROVAL_MODE: WebMessageInfo._StubType.ValueType  # 145
        INTEGRITY_UNLINK_PARENT_GROUP: WebMessageInfo._StubType.ValueType  # 146
        COMMUNITY_PARTICIPANT_PROMOTE: WebMessageInfo._StubType.ValueType  # 147
        COMMUNITY_PARTICIPANT_DEMOTE: WebMessageInfo._StubType.ValueType  # 148
        COMMUNITY_PARENT_GROUP_DELETED: WebMessageInfo._StubType.ValueType  # 149
        COMMUNITY_LINK_PARENT_GROUP_MEMBERSHIP_APPROVAL: WebMessageInfo._StubType.ValueType  # 150
        GROUP_PARTICIPANT_JOINED_GROUP_AND_PARENT_GROUP: WebMessageInfo._StubType.ValueType  # 151
        MASKED_THREAD_CREATED: WebMessageInfo._StubType.ValueType  # 152
        MASKED_THREAD_UNMASKED: WebMessageInfo._StubType.ValueType  # 153
        BIZ_CHAT_ASSIGNMENT: WebMessageInfo._StubType.ValueType  # 154
        CHAT_PSA: WebMessageInfo._StubType.ValueType  # 155
        CHAT_POLL_CREATION_MESSAGE: WebMessageInfo._StubType.ValueType  # 156
        CAG_MASKED_THREAD_CREATED: WebMessageInfo._StubType.ValueType  # 157
        COMMUNITY_PARENT_GROUP_SUBJECT_CHANGED: WebMessageInfo._StubType.ValueType  # 158
        CAG_INVITE_AUTO_ADD: WebMessageInfo._StubType.ValueType  # 159
        BIZ_CHAT_ASSIGNMENT_UNASSIGN: WebMessageInfo._StubType.ValueType  # 160
        CAG_INVITE_AUTO_JOINED: WebMessageInfo._StubType.ValueType  # 161
        SCHEDULED_CALL_START_MESSAGE: WebMessageInfo._StubType.ValueType  # 162
        COMMUNITY_INVITE_RICH: WebMessageInfo._StubType.ValueType  # 163
        COMMUNITY_INVITE_AUTO_ADD_RICH: WebMessageInfo._StubType.ValueType  # 164
        SUB_GROUP_INVITE_RICH: WebMessageInfo._StubType.ValueType  # 165
        SUB_GROUP_PARTICIPANT_ADD_RICH: WebMessageInfo._StubType.ValueType  # 166
        COMMUNITY_LINK_PARENT_GROUP_RICH: WebMessageInfo._StubType.ValueType  # 167
        COMMUNITY_PARTICIPANT_ADD_RICH: WebMessageInfo._StubType.ValueType  # 168
        SILENCED_UNKNOWN_CALLER_AUDIO: WebMessageInfo._StubType.ValueType  # 169
        SILENCED_UNKNOWN_CALLER_VIDEO: WebMessageInfo._StubType.ValueType  # 170
        GROUP_MEMBER_ADD_MODE: WebMessageInfo._StubType.ValueType  # 171
        GROUP_MEMBERSHIP_JOIN_APPROVAL_REQUEST_NON_ADMIN_ADD: WebMessageInfo._StubType.ValueType  # 172
        COMMUNITY_CHANGE_DESCRIPTION: WebMessageInfo._StubType.ValueType  # 173
        SENDER_INVITE: WebMessageInfo._StubType.ValueType  # 174
        RECEIVER_INVITE: WebMessageInfo._StubType.ValueType  # 175
        COMMUNITY_ALLOW_MEMBER_ADDED_GROUPS: WebMessageInfo._StubType.ValueType  # 176
        PINNED_MESSAGE_IN_CHAT: WebMessageInfo._StubType.ValueType  # 177
        PAYMENT_INVITE_SETUP_INVITER: WebMessageInfo._StubType.ValueType  # 178
        PAYMENT_INVITE_SETUP_INVITEE_RECEIVE_ONLY: WebMessageInfo._StubType.ValueType  # 179
        PAYMENT_INVITE_SETUP_INVITEE_SEND_AND_RECEIVE: WebMessageInfo._StubType.ValueType  # 180
        LINKED_GROUP_CALL_START: WebMessageInfo._StubType.ValueType  # 181
        REPORT_TO_ADMIN_ENABLED_STATUS: WebMessageInfo._StubType.ValueType  # 182
        EMPTY_SUBGROUP_CREATE: WebMessageInfo._StubType.ValueType  # 183
        SCHEDULED_CALL_CANCEL: WebMessageInfo._StubType.ValueType  # 184
        SUBGROUP_ADMIN_TRIGGERED_AUTO_ADD_RICH: WebMessageInfo._StubType.ValueType  # 185
        GROUP_CHANGE_RECENT_HISTORY_SHARING: WebMessageInfo._StubType.ValueType  # 186
        PAID_MESSAGE_SERVER_CAMPAIGN_ID: WebMessageInfo._StubType.ValueType  # 187
        GENERAL_CHAT_CREATE: WebMessageInfo._StubType.ValueType  # 188
        GENERAL_CHAT_ADD: WebMessageInfo._StubType.ValueType  # 189
        GENERAL_CHAT_AUTO_ADD_DISABLED: WebMessageInfo._StubType.ValueType  # 190
        SUGGESTED_SUBGROUP_ANNOUNCE: WebMessageInfo._StubType.ValueType  # 191
        BIZ_BOT_1P_MESSAGING_ENABLED: WebMessageInfo._StubType.ValueType  # 192
        CHANGE_USERNAME: WebMessageInfo._StubType.ValueType  # 193
        BIZ_COEX_PRIVACY_INIT_SELF: WebMessageInfo._StubType.ValueType  # 194
        BIZ_COEX_PRIVACY_TRANSITION_SELF: WebMessageInfo._StubType.ValueType  # 195
        SUPPORT_AI_EDUCATION: WebMessageInfo._StubType.ValueType  # 196
        BIZ_BOT_3P_MESSAGING_ENABLED: WebMessageInfo._StubType.ValueType  # 197
        REMINDER_SETUP_MESSAGE: WebMessageInfo._StubType.ValueType  # 198
        REMINDER_SENT_MESSAGE: WebMessageInfo._StubType.ValueType  # 199
        REMINDER_CANCEL_MESSAGE: WebMessageInfo._StubType.ValueType  # 200

    class StubType(_StubType, metaclass=_StubTypeEnumTypeWrapper): ...
    UNKNOWN: WebMessageInfo.StubType.ValueType  # 0
    REVOKE: WebMessageInfo.StubType.ValueType  # 1
    CIPHERTEXT: WebMessageInfo.StubType.ValueType  # 2
    FUTUREPROOF: WebMessageInfo.StubType.ValueType  # 3
    NON_VERIFIED_TRANSITION: WebMessageInfo.StubType.ValueType  # 4
    UNVERIFIED_TRANSITION: WebMessageInfo.StubType.ValueType  # 5
    VERIFIED_TRANSITION: WebMessageInfo.StubType.ValueType  # 6
    VERIFIED_LOW_UNKNOWN: WebMessageInfo.StubType.ValueType  # 7
    VERIFIED_HIGH: WebMessageInfo.StubType.ValueType  # 8
    VERIFIED_INITIAL_UNKNOWN: WebMessageInfo.StubType.ValueType  # 9
    VERIFIED_INITIAL_LOW: WebMessageInfo.StubType.ValueType  # 10
    VERIFIED_INITIAL_HIGH: WebMessageInfo.StubType.ValueType  # 11
    VERIFIED_TRANSITION_ANY_TO_NONE: WebMessageInfo.StubType.ValueType  # 12
    VERIFIED_TRANSITION_ANY_TO_HIGH: WebMessageInfo.StubType.ValueType  # 13
    VERIFIED_TRANSITION_HIGH_TO_LOW: WebMessageInfo.StubType.ValueType  # 14
    VERIFIED_TRANSITION_HIGH_TO_UNKNOWN: WebMessageInfo.StubType.ValueType  # 15
    VERIFIED_TRANSITION_UNKNOWN_TO_LOW: WebMessageInfo.StubType.ValueType  # 16
    VERIFIED_TRANSITION_LOW_TO_UNKNOWN: WebMessageInfo.StubType.ValueType  # 17
    VERIFIED_TRANSITION_NONE_TO_LOW: WebMessageInfo.StubType.ValueType  # 18
    VERIFIED_TRANSITION_NONE_TO_UNKNOWN: WebMessageInfo.StubType.ValueType  # 19
    GROUP_CREATE: WebMessageInfo.StubType.ValueType  # 20
    GROUP_CHANGE_SUBJECT: WebMessageInfo.StubType.ValueType  # 21
    GROUP_CHANGE_ICON: WebMessageInfo.StubType.ValueType  # 22
    GROUP_CHANGE_INVITE_LINK: WebMessageInfo.StubType.ValueType  # 23
    GROUP_CHANGE_DESCRIPTION: WebMessageInfo.StubType.ValueType  # 24
    GROUP_CHANGE_RESTRICT: WebMessageInfo.StubType.ValueType  # 25
    GROUP_CHANGE_ANNOUNCE: WebMessageInfo.StubType.ValueType  # 26
    GROUP_PARTICIPANT_ADD: WebMessageInfo.StubType.ValueType  # 27
    GROUP_PARTICIPANT_REMOVE: WebMessageInfo.StubType.ValueType  # 28
    GROUP_PARTICIPANT_PROMOTE: WebMessageInfo.StubType.ValueType  # 29
    GROUP_PARTICIPANT_DEMOTE: WebMessageInfo.StubType.ValueType  # 30
    GROUP_PARTICIPANT_INVITE: WebMessageInfo.StubType.ValueType  # 31
    GROUP_PARTICIPANT_LEAVE: WebMessageInfo.StubType.ValueType  # 32
    GROUP_PARTICIPANT_CHANGE_NUMBER: WebMessageInfo.StubType.ValueType  # 33
    BROADCAST_CREATE: WebMessageInfo.StubType.ValueType  # 34
    BROADCAST_ADD: WebMessageInfo.StubType.ValueType  # 35
    BROADCAST_REMOVE: WebMessageInfo.StubType.ValueType  # 36
    GENERIC_NOTIFICATION: WebMessageInfo.StubType.ValueType  # 37
    E2E_IDENTITY_CHANGED: WebMessageInfo.StubType.ValueType  # 38
    E2E_ENCRYPTED: WebMessageInfo.StubType.ValueType  # 39
    CALL_MISSED_VOICE: WebMessageInfo.StubType.ValueType  # 40
    CALL_MISSED_VIDEO: WebMessageInfo.StubType.ValueType  # 41
    INDIVIDUAL_CHANGE_NUMBER: WebMessageInfo.StubType.ValueType  # 42
    GROUP_DELETE: WebMessageInfo.StubType.ValueType  # 43
    GROUP_ANNOUNCE_MODE_MESSAGE_BOUNCE: WebMessageInfo.StubType.ValueType  # 44
    CALL_MISSED_GROUP_VOICE: WebMessageInfo.StubType.ValueType  # 45
    CALL_MISSED_GROUP_VIDEO: WebMessageInfo.StubType.ValueType  # 46
    PAYMENT_CIPHERTEXT: WebMessageInfo.StubType.ValueType  # 47
    PAYMENT_FUTUREPROOF: WebMessageInfo.StubType.ValueType  # 48
    PAYMENT_TRANSACTION_STATUS_UPDATE_FAILED: WebMessageInfo.StubType.ValueType  # 49
    PAYMENT_TRANSACTION_STATUS_UPDATE_REFUNDED: WebMessageInfo.StubType.ValueType  # 50
    PAYMENT_TRANSACTION_STATUS_UPDATE_REFUND_FAILED: WebMessageInfo.StubType.ValueType  # 51
    PAYMENT_TRANSACTION_STATUS_RECEIVER_PENDING_SETUP: WebMessageInfo.StubType.ValueType  # 52
    PAYMENT_TRANSACTION_STATUS_RECEIVER_SUCCESS_AFTER_HICCUP: WebMessageInfo.StubType.ValueType  # 53
    PAYMENT_ACTION_ACCOUNT_SETUP_REMINDER: WebMessageInfo.StubType.ValueType  # 54
    PAYMENT_ACTION_SEND_PAYMENT_REMINDER: WebMessageInfo.StubType.ValueType  # 55
    PAYMENT_ACTION_SEND_PAYMENT_INVITATION: WebMessageInfo.StubType.ValueType  # 56
    PAYMENT_ACTION_REQUEST_DECLINED: WebMessageInfo.StubType.ValueType  # 57
    PAYMENT_ACTION_REQUEST_EXPIRED: WebMessageInfo.StubType.ValueType  # 58
    PAYMENT_ACTION_REQUEST_CANCELLED: WebMessageInfo.StubType.ValueType  # 59
    BIZ_VERIFIED_TRANSITION_TOP_TO_BOTTOM: WebMessageInfo.StubType.ValueType  # 60
    BIZ_VERIFIED_TRANSITION_BOTTOM_TO_TOP: WebMessageInfo.StubType.ValueType  # 61
    BIZ_INTRO_TOP: WebMessageInfo.StubType.ValueType  # 62
    BIZ_INTRO_BOTTOM: WebMessageInfo.StubType.ValueType  # 63
    BIZ_NAME_CHANGE: WebMessageInfo.StubType.ValueType  # 64
    BIZ_MOVE_TO_CONSUMER_APP: WebMessageInfo.StubType.ValueType  # 65
    BIZ_TWO_TIER_MIGRATION_TOP: WebMessageInfo.StubType.ValueType  # 66
    BIZ_TWO_TIER_MIGRATION_BOTTOM: WebMessageInfo.StubType.ValueType  # 67
    OVERSIZED: WebMessageInfo.StubType.ValueType  # 68
    GROUP_CHANGE_NO_FREQUENTLY_FORWARDED: WebMessageInfo.StubType.ValueType  # 69
    GROUP_V4_ADD_INVITE_SENT: WebMessageInfo.StubType.ValueType  # 70
    GROUP_PARTICIPANT_ADD_REQUEST_JOIN: WebMessageInfo.StubType.ValueType  # 71
    CHANGE_EPHEMERAL_SETTING: WebMessageInfo.StubType.ValueType  # 72
    E2E_DEVICE_CHANGED: WebMessageInfo.StubType.ValueType  # 73
    VIEWED_ONCE: WebMessageInfo.StubType.ValueType  # 74
    E2E_ENCRYPTED_NOW: WebMessageInfo.StubType.ValueType  # 75
    BLUE_MSG_BSP_FB_TO_BSP_PREMISE: WebMessageInfo.StubType.ValueType  # 76
    BLUE_MSG_BSP_FB_TO_SELF_FB: WebMessageInfo.StubType.ValueType  # 77
    BLUE_MSG_BSP_FB_TO_SELF_PREMISE: WebMessageInfo.StubType.ValueType  # 78
    BLUE_MSG_BSP_FB_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 79
    BLUE_MSG_BSP_FB_UNVERIFIED_TO_SELF_PREMISE_VERIFIED: WebMessageInfo.StubType.ValueType  # 80
    BLUE_MSG_BSP_FB_VERIFIED: WebMessageInfo.StubType.ValueType  # 81
    BLUE_MSG_BSP_FB_VERIFIED_TO_SELF_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 82
    BLUE_MSG_BSP_PREMISE_TO_SELF_PREMISE: WebMessageInfo.StubType.ValueType  # 83
    BLUE_MSG_BSP_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 84
    BLUE_MSG_BSP_PREMISE_UNVERIFIED_TO_SELF_PREMISE_VERIFIED: WebMessageInfo.StubType.ValueType  # 85
    BLUE_MSG_BSP_PREMISE_VERIFIED: WebMessageInfo.StubType.ValueType  # 86
    BLUE_MSG_BSP_PREMISE_VERIFIED_TO_SELF_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 87
    BLUE_MSG_CONSUMER_TO_BSP_FB_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 88
    BLUE_MSG_CONSUMER_TO_BSP_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 89
    BLUE_MSG_CONSUMER_TO_SELF_FB_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 90
    BLUE_MSG_CONSUMER_TO_SELF_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 91
    BLUE_MSG_SELF_FB_TO_BSP_PREMISE: WebMessageInfo.StubType.ValueType  # 92
    BLUE_MSG_SELF_FB_TO_SELF_PREMISE: WebMessageInfo.StubType.ValueType  # 93
    BLUE_MSG_SELF_FB_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 94
    BLUE_MSG_SELF_FB_UNVERIFIED_TO_SELF_PREMISE_VERIFIED: WebMessageInfo.StubType.ValueType  # 95
    BLUE_MSG_SELF_FB_VERIFIED: WebMessageInfo.StubType.ValueType  # 96
    BLUE_MSG_SELF_FB_VERIFIED_TO_SELF_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 97
    BLUE_MSG_SELF_PREMISE_TO_BSP_PREMISE: WebMessageInfo.StubType.ValueType  # 98
    BLUE_MSG_SELF_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 99
    BLUE_MSG_SELF_PREMISE_VERIFIED: WebMessageInfo.StubType.ValueType  # 100
    BLUE_MSG_TO_BSP_FB: WebMessageInfo.StubType.ValueType  # 101
    BLUE_MSG_TO_CONSUMER: WebMessageInfo.StubType.ValueType  # 102
    BLUE_MSG_TO_SELF_FB: WebMessageInfo.StubType.ValueType  # 103
    BLUE_MSG_UNVERIFIED_TO_BSP_FB_VERIFIED: WebMessageInfo.StubType.ValueType  # 104
    BLUE_MSG_UNVERIFIED_TO_BSP_PREMISE_VERIFIED: WebMessageInfo.StubType.ValueType  # 105
    BLUE_MSG_UNVERIFIED_TO_SELF_FB_VERIFIED: WebMessageInfo.StubType.ValueType  # 106
    BLUE_MSG_UNVERIFIED_TO_VERIFIED: WebMessageInfo.StubType.ValueType  # 107
    BLUE_MSG_VERIFIED_TO_BSP_FB_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 108
    BLUE_MSG_VERIFIED_TO_BSP_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 109
    BLUE_MSG_VERIFIED_TO_SELF_FB_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 110
    BLUE_MSG_VERIFIED_TO_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 111
    BLUE_MSG_BSP_FB_UNVERIFIED_TO_BSP_PREMISE_VERIFIED: WebMessageInfo.StubType.ValueType  # 112
    BLUE_MSG_BSP_FB_UNVERIFIED_TO_SELF_FB_VERIFIED: WebMessageInfo.StubType.ValueType  # 113
    BLUE_MSG_BSP_FB_VERIFIED_TO_BSP_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 114
    BLUE_MSG_BSP_FB_VERIFIED_TO_SELF_FB_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 115
    BLUE_MSG_SELF_FB_UNVERIFIED_TO_BSP_PREMISE_VERIFIED: WebMessageInfo.StubType.ValueType  # 116
    BLUE_MSG_SELF_FB_VERIFIED_TO_BSP_PREMISE_UNVERIFIED: WebMessageInfo.StubType.ValueType  # 117
    E2E_IDENTITY_UNAVAILABLE: WebMessageInfo.StubType.ValueType  # 118
    GROUP_CREATING: WebMessageInfo.StubType.ValueType  # 119
    GROUP_CREATE_FAILED: WebMessageInfo.StubType.ValueType  # 120
    GROUP_BOUNCED: WebMessageInfo.StubType.ValueType  # 121
    BLOCK_CONTACT: WebMessageInfo.StubType.ValueType  # 122
    EPHEMERAL_SETTING_NOT_APPLIED: WebMessageInfo.StubType.ValueType  # 123
    SYNC_FAILED: WebMessageInfo.StubType.ValueType  # 124
    SYNCING: WebMessageInfo.StubType.ValueType  # 125
    BIZ_PRIVACY_MODE_INIT_FB: WebMessageInfo.StubType.ValueType  # 126
    BIZ_PRIVACY_MODE_INIT_BSP: WebMessageInfo.StubType.ValueType  # 127
    BIZ_PRIVACY_MODE_TO_FB: WebMessageInfo.StubType.ValueType  # 128
    BIZ_PRIVACY_MODE_TO_BSP: WebMessageInfo.StubType.ValueType  # 129
    DISAPPEARING_MODE: WebMessageInfo.StubType.ValueType  # 130
    E2E_DEVICE_FETCH_FAILED: WebMessageInfo.StubType.ValueType  # 131
    ADMIN_REVOKE: WebMessageInfo.StubType.ValueType  # 132
    GROUP_INVITE_LINK_GROWTH_LOCKED: WebMessageInfo.StubType.ValueType  # 133
    COMMUNITY_LINK_PARENT_GROUP: WebMessageInfo.StubType.ValueType  # 134
    COMMUNITY_LINK_SIBLING_GROUP: WebMessageInfo.StubType.ValueType  # 135
    COMMUNITY_LINK_SUB_GROUP: WebMessageInfo.StubType.ValueType  # 136
    COMMUNITY_UNLINK_PARENT_GROUP: WebMessageInfo.StubType.ValueType  # 137
    COMMUNITY_UNLINK_SIBLING_GROUP: WebMessageInfo.StubType.ValueType  # 138
    COMMUNITY_UNLINK_SUB_GROUP: WebMessageInfo.StubType.ValueType  # 139
    GROUP_PARTICIPANT_ACCEPT: WebMessageInfo.StubType.ValueType  # 140
    GROUP_PARTICIPANT_LINKED_GROUP_JOIN: WebMessageInfo.StubType.ValueType  # 141
    COMMUNITY_CREATE: WebMessageInfo.StubType.ValueType  # 142
    EPHEMERAL_KEEP_IN_CHAT: WebMessageInfo.StubType.ValueType  # 143
    GROUP_MEMBERSHIP_JOIN_APPROVAL_REQUEST: WebMessageInfo.StubType.ValueType  # 144
    GROUP_MEMBERSHIP_JOIN_APPROVAL_MODE: WebMessageInfo.StubType.ValueType  # 145
    INTEGRITY_UNLINK_PARENT_GROUP: WebMessageInfo.StubType.ValueType  # 146
    COMMUNITY_PARTICIPANT_PROMOTE: WebMessageInfo.StubType.ValueType  # 147
    COMMUNITY_PARTICIPANT_DEMOTE: WebMessageInfo.StubType.ValueType  # 148
    COMMUNITY_PARENT_GROUP_DELETED: WebMessageInfo.StubType.ValueType  # 149
    COMMUNITY_LINK_PARENT_GROUP_MEMBERSHIP_APPROVAL: WebMessageInfo.StubType.ValueType  # 150
    GROUP_PARTICIPANT_JOINED_GROUP_AND_PARENT_GROUP: WebMessageInfo.StubType.ValueType  # 151
    MASKED_THREAD_CREATED: WebMessageInfo.StubType.ValueType  # 152
    MASKED_THREAD_UNMASKED: WebMessageInfo.StubType.ValueType  # 153
    BIZ_CHAT_ASSIGNMENT: WebMessageInfo.StubType.ValueType  # 154
    CHAT_PSA: WebMessageInfo.StubType.ValueType  # 155
    CHAT_POLL_CREATION_MESSAGE: WebMessageInfo.StubType.ValueType  # 156
    CAG_MASKED_THREAD_CREATED: WebMessageInfo.StubType.ValueType  # 157
    COMMUNITY_PARENT_GROUP_SUBJECT_CHANGED: WebMessageInfo.StubType.ValueType  # 158
    CAG_INVITE_AUTO_ADD: WebMessageInfo.StubType.ValueType  # 159
    BIZ_CHAT_ASSIGNMENT_UNASSIGN: WebMessageInfo.StubType.ValueType  # 160
    CAG_INVITE_AUTO_JOINED: WebMessageInfo.StubType.ValueType  # 161
    SCHEDULED_CALL_START_MESSAGE: WebMessageInfo.StubType.ValueType  # 162
    COMMUNITY_INVITE_RICH: WebMessageInfo.StubType.ValueType  # 163
    COMMUNITY_INVITE_AUTO_ADD_RICH: WebMessageInfo.StubType.ValueType  # 164
    SUB_GROUP_INVITE_RICH: WebMessageInfo.StubType.ValueType  # 165
    SUB_GROUP_PARTICIPANT_ADD_RICH: WebMessageInfo.StubType.ValueType  # 166
    COMMUNITY_LINK_PARENT_GROUP_RICH: WebMessageInfo.StubType.ValueType  # 167
    COMMUNITY_PARTICIPANT_ADD_RICH: WebMessageInfo.StubType.ValueType  # 168
    SILENCED_UNKNOWN_CALLER_AUDIO: WebMessageInfo.StubType.ValueType  # 169
    SILENCED_UNKNOWN_CALLER_VIDEO: WebMessageInfo.StubType.ValueType  # 170
    GROUP_MEMBER_ADD_MODE: WebMessageInfo.StubType.ValueType  # 171
    GROUP_MEMBERSHIP_JOIN_APPROVAL_REQUEST_NON_ADMIN_ADD: WebMessageInfo.StubType.ValueType  # 172
    COMMUNITY_CHANGE_DESCRIPTION: WebMessageInfo.StubType.ValueType  # 173
    SENDER_INVITE: WebMessageInfo.StubType.ValueType  # 174
    RECEIVER_INVITE: WebMessageInfo.StubType.ValueType  # 175
    COMMUNITY_ALLOW_MEMBER_ADDED_GROUPS: WebMessageInfo.StubType.ValueType  # 176
    PINNED_MESSAGE_IN_CHAT: WebMessageInfo.StubType.ValueType  # 177
    PAYMENT_INVITE_SETUP_INVITER: WebMessageInfo.StubType.ValueType  # 178
    PAYMENT_INVITE_SETUP_INVITEE_RECEIVE_ONLY: WebMessageInfo.StubType.ValueType  # 179
    PAYMENT_INVITE_SETUP_INVITEE_SEND_AND_RECEIVE: WebMessageInfo.StubType.ValueType  # 180
    LINKED_GROUP_CALL_START: WebMessageInfo.StubType.ValueType  # 181
    REPORT_TO_ADMIN_ENABLED_STATUS: WebMessageInfo.StubType.ValueType  # 182
    EMPTY_SUBGROUP_CREATE: WebMessageInfo.StubType.ValueType  # 183
    SCHEDULED_CALL_CANCEL: WebMessageInfo.StubType.ValueType  # 184
    SUBGROUP_ADMIN_TRIGGERED_AUTO_ADD_RICH: WebMessageInfo.StubType.ValueType  # 185
    GROUP_CHANGE_RECENT_HISTORY_SHARING: WebMessageInfo.StubType.ValueType  # 186
    PAID_MESSAGE_SERVER_CAMPAIGN_ID: WebMessageInfo.StubType.ValueType  # 187
    GENERAL_CHAT_CREATE: WebMessageInfo.StubType.ValueType  # 188
    GENERAL_CHAT_ADD: WebMessageInfo.StubType.ValueType  # 189
    GENERAL_CHAT_AUTO_ADD_DISABLED: WebMessageInfo.StubType.ValueType  # 190
    SUGGESTED_SUBGROUP_ANNOUNCE: WebMessageInfo.StubType.ValueType  # 191
    BIZ_BOT_1P_MESSAGING_ENABLED: WebMessageInfo.StubType.ValueType  # 192
    CHANGE_USERNAME: WebMessageInfo.StubType.ValueType  # 193
    BIZ_COEX_PRIVACY_INIT_SELF: WebMessageInfo.StubType.ValueType  # 194
    BIZ_COEX_PRIVACY_TRANSITION_SELF: WebMessageInfo.StubType.ValueType  # 195
    SUPPORT_AI_EDUCATION: WebMessageInfo.StubType.ValueType  # 196
    BIZ_BOT_3P_MESSAGING_ENABLED: WebMessageInfo.StubType.ValueType  # 197
    REMINDER_SETUP_MESSAGE: WebMessageInfo.StubType.ValueType  # 198
    REMINDER_SENT_MESSAGE: WebMessageInfo.StubType.ValueType  # 199
    REMINDER_CANCEL_MESSAGE: WebMessageInfo.StubType.ValueType  # 200

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

    class _StatusEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            WebMessageInfo._Status.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        ERROR: WebMessageInfo._Status.ValueType  # 0
        PENDING: WebMessageInfo._Status.ValueType  # 1
        SERVER_ACK: WebMessageInfo._Status.ValueType  # 2
        DELIVERY_ACK: WebMessageInfo._Status.ValueType  # 3
        READ: WebMessageInfo._Status.ValueType  # 4
        PLAYED: WebMessageInfo._Status.ValueType  # 5

    class Status(_Status, metaclass=_StatusEnumTypeWrapper): ...
    ERROR: WebMessageInfo.Status.ValueType  # 0
    PENDING: WebMessageInfo.Status.ValueType  # 1
    SERVER_ACK: WebMessageInfo.Status.ValueType  # 2
    DELIVERY_ACK: WebMessageInfo.Status.ValueType  # 3
    READ: WebMessageInfo.Status.ValueType  # 4
    PLAYED: WebMessageInfo.Status.ValueType  # 5

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

    class _BizPrivacyStatusEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            WebMessageInfo._BizPrivacyStatus.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        E2EE: WebMessageInfo._BizPrivacyStatus.ValueType  # 0
        FB: WebMessageInfo._BizPrivacyStatus.ValueType  # 2
        BSP: WebMessageInfo._BizPrivacyStatus.ValueType  # 1
        BSP_AND_FB: WebMessageInfo._BizPrivacyStatus.ValueType  # 3

    class BizPrivacyStatus(
        _BizPrivacyStatus, metaclass=_BizPrivacyStatusEnumTypeWrapper
    ): ...
    E2EE: WebMessageInfo.BizPrivacyStatus.ValueType  # 0
    FB: WebMessageInfo.BizPrivacyStatus.ValueType  # 2
    BSP: WebMessageInfo.BizPrivacyStatus.ValueType  # 1
    BSP_AND_FB: WebMessageInfo.BizPrivacyStatus.ValueType  # 3

    KEY_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    MESSAGETIMESTAMP_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    PARTICIPANT_FIELD_NUMBER: builtins.int
    MESSAGEC2STIMESTAMP_FIELD_NUMBER: builtins.int
    IGNORE_FIELD_NUMBER: builtins.int
    STARRED_FIELD_NUMBER: builtins.int
    BROADCAST_FIELD_NUMBER: builtins.int
    PUSHNAME_FIELD_NUMBER: builtins.int
    MEDIACIPHERTEXTSHA256_FIELD_NUMBER: builtins.int
    MULTICAST_FIELD_NUMBER: builtins.int
    URLTEXT_FIELD_NUMBER: builtins.int
    URLNUMBER_FIELD_NUMBER: builtins.int
    MESSAGESTUBTYPE_FIELD_NUMBER: builtins.int
    CLEARMEDIA_FIELD_NUMBER: builtins.int
    MESSAGESTUBPARAMETERS_FIELD_NUMBER: builtins.int
    DURATION_FIELD_NUMBER: builtins.int
    LABELS_FIELD_NUMBER: builtins.int
    PAYMENTINFO_FIELD_NUMBER: builtins.int
    FINALLIVELOCATION_FIELD_NUMBER: builtins.int
    QUOTEDPAYMENTINFO_FIELD_NUMBER: builtins.int
    EPHEMERALSTARTTIMESTAMP_FIELD_NUMBER: builtins.int
    EPHEMERALDURATION_FIELD_NUMBER: builtins.int
    EPHEMERALOFFTOON_FIELD_NUMBER: builtins.int
    EPHEMERALOUTOFSYNC_FIELD_NUMBER: builtins.int
    BIZPRIVACYSTATUS_FIELD_NUMBER: builtins.int
    VERIFIEDBIZNAME_FIELD_NUMBER: builtins.int
    MEDIADATA_FIELD_NUMBER: builtins.int
    PHOTOCHANGE_FIELD_NUMBER: builtins.int
    USERRECEIPT_FIELD_NUMBER: builtins.int
    REACTIONS_FIELD_NUMBER: builtins.int
    QUOTEDSTICKERDATA_FIELD_NUMBER: builtins.int
    FUTUREPROOFDATA_FIELD_NUMBER: builtins.int
    STATUSPSA_FIELD_NUMBER: builtins.int
    POLLUPDATES_FIELD_NUMBER: builtins.int
    POLLADDITIONALMETADATA_FIELD_NUMBER: builtins.int
    AGENTID_FIELD_NUMBER: builtins.int
    STATUSALREADYVIEWED_FIELD_NUMBER: builtins.int
    MESSAGESECRET_FIELD_NUMBER: builtins.int
    KEEPINCHAT_FIELD_NUMBER: builtins.int
    ORIGINALSELFAUTHORUSERJIDSTRING_FIELD_NUMBER: builtins.int
    REVOKEMESSAGETIMESTAMP_FIELD_NUMBER: builtins.int
    PININCHAT_FIELD_NUMBER: builtins.int
    PREMIUMMESSAGEINFO_FIELD_NUMBER: builtins.int
    IS1PBIZBOTMESSAGE_FIELD_NUMBER: builtins.int
    ISGROUPHISTORYMESSAGE_FIELD_NUMBER: builtins.int
    BOTMESSAGEINVOKERJID_FIELD_NUMBER: builtins.int
    COMMENTMETADATA_FIELD_NUMBER: builtins.int
    EVENTRESPONSES_FIELD_NUMBER: builtins.int
    REPORTINGTOKENINFO_FIELD_NUMBER: builtins.int
    NEWSLETTERSERVERID_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    @property
    def message(self) -> global___Message: ...
    messageTimestamp: builtins.int
    status: global___WebMessageInfo.Status.ValueType
    participant: builtins.str
    messageC2STimestamp: builtins.int
    ignore: builtins.bool
    starred: builtins.bool
    broadcast: builtins.bool
    pushName: builtins.str
    mediaCiphertextSha256: builtins.bytes
    multicast: builtins.bool
    urlText: builtins.bool
    urlNumber: builtins.bool
    messageStubType: global___WebMessageInfo.StubType.ValueType
    clearMedia: builtins.bool
    @property
    def messageStubParameters(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    duration: builtins.int
    @property
    def labels(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    @property
    def paymentInfo(self) -> global___PaymentInfo: ...
    @property
    def finalLiveLocation(self) -> global___LiveLocationMessage: ...
    @property
    def quotedPaymentInfo(self) -> global___PaymentInfo: ...
    ephemeralStartTimestamp: builtins.int
    ephemeralDuration: builtins.int
    ephemeralOffToOn: builtins.bool
    ephemeralOutOfSync: builtins.bool
    bizPrivacyStatus: global___WebMessageInfo.BizPrivacyStatus.ValueType
    verifiedBizName: builtins.str
    @property
    def mediaData(self) -> global___MediaData: ...
    @property
    def photoChange(self) -> global___PhotoChange: ...
    @property
    def userReceipt(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___UserReceipt
    ]: ...
    @property
    def reactions(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___Reaction
    ]: ...
    @property
    def quotedStickerData(self) -> global___MediaData: ...
    futureproofData: builtins.bytes
    @property
    def statusPsa(self) -> global___StatusPSA: ...
    @property
    def pollUpdates(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___PollUpdate
    ]: ...
    @property
    def pollAdditionalMetadata(self) -> global___PollAdditionalMetadata: ...
    agentId: builtins.str
    statusAlreadyViewed: builtins.bool
    messageSecret: builtins.bytes
    @property
    def keepInChat(self) -> global___KeepInChat: ...
    originalSelfAuthorUserJidString: builtins.str
    revokeMessageTimestamp: builtins.int
    @property
    def pinInChat(self) -> global___PinInChat: ...
    @property
    def premiumMessageInfo(self) -> global___PremiumMessageInfo: ...
    is1PBizBotMessage: builtins.bool
    isGroupHistoryMessage: builtins.bool
    botMessageInvokerJid: builtins.str
    @property
    def commentMetadata(self) -> global___CommentMetadata: ...
    @property
    def eventResponses(
        self,
    ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
        global___EventResponse
    ]: ...
    @property
    def reportingTokenInfo(self) -> global___ReportingTokenInfo: ...
    newsletterServerId: builtins.int
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        message: global___Message | None = ...,
        messageTimestamp: builtins.int | None = ...,
        status: global___WebMessageInfo.Status.ValueType | None = ...,
        participant: builtins.str | None = ...,
        messageC2STimestamp: builtins.int | None = ...,
        ignore: builtins.bool | None = ...,
        starred: builtins.bool | None = ...,
        broadcast: builtins.bool | None = ...,
        pushName: builtins.str | None = ...,
        mediaCiphertextSha256: builtins.bytes | None = ...,
        multicast: builtins.bool | None = ...,
        urlText: builtins.bool | None = ...,
        urlNumber: builtins.bool | None = ...,
        messageStubType: global___WebMessageInfo.StubType.ValueType | None = ...,
        clearMedia: builtins.bool | None = ...,
        messageStubParameters: collections.abc.Iterable[builtins.str] | None = ...,
        duration: builtins.int | None = ...,
        labels: collections.abc.Iterable[builtins.str] | None = ...,
        paymentInfo: global___PaymentInfo | None = ...,
        finalLiveLocation: global___LiveLocationMessage | None = ...,
        quotedPaymentInfo: global___PaymentInfo | None = ...,
        ephemeralStartTimestamp: builtins.int | None = ...,
        ephemeralDuration: builtins.int | None = ...,
        ephemeralOffToOn: builtins.bool | None = ...,
        ephemeralOutOfSync: builtins.bool | None = ...,
        bizPrivacyStatus: global___WebMessageInfo.BizPrivacyStatus.ValueType
        | None = ...,
        verifiedBizName: builtins.str | None = ...,
        mediaData: global___MediaData | None = ...,
        photoChange: global___PhotoChange | None = ...,
        userReceipt: collections.abc.Iterable[global___UserReceipt] | None = ...,
        reactions: collections.abc.Iterable[global___Reaction] | None = ...,
        quotedStickerData: global___MediaData | None = ...,
        futureproofData: builtins.bytes | None = ...,
        statusPsa: global___StatusPSA | None = ...,
        pollUpdates: collections.abc.Iterable[global___PollUpdate] | None = ...,
        pollAdditionalMetadata: global___PollAdditionalMetadata | None = ...,
        agentId: builtins.str | None = ...,
        statusAlreadyViewed: builtins.bool | None = ...,
        messageSecret: builtins.bytes | None = ...,
        keepInChat: global___KeepInChat | None = ...,
        originalSelfAuthorUserJidString: builtins.str | None = ...,
        revokeMessageTimestamp: builtins.int | None = ...,
        pinInChat: global___PinInChat | None = ...,
        premiumMessageInfo: global___PremiumMessageInfo | None = ...,
        is1PBizBotMessage: builtins.bool | None = ...,
        isGroupHistoryMessage: builtins.bool | None = ...,
        botMessageInvokerJid: builtins.str | None = ...,
        commentMetadata: global___CommentMetadata | None = ...,
        eventResponses: collections.abc.Iterable[global___EventResponse] | None = ...,
        reportingTokenInfo: global___ReportingTokenInfo | None = ...,
        newsletterServerId: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "agentId",
            b"agentId",
            "bizPrivacyStatus",
            b"bizPrivacyStatus",
            "botMessageInvokerJid",
            b"botMessageInvokerJid",
            "broadcast",
            b"broadcast",
            "clearMedia",
            b"clearMedia",
            "commentMetadata",
            b"commentMetadata",
            "duration",
            b"duration",
            "ephemeralDuration",
            b"ephemeralDuration",
            "ephemeralOffToOn",
            b"ephemeralOffToOn",
            "ephemeralOutOfSync",
            b"ephemeralOutOfSync",
            "ephemeralStartTimestamp",
            b"ephemeralStartTimestamp",
            "finalLiveLocation",
            b"finalLiveLocation",
            "futureproofData",
            b"futureproofData",
            "ignore",
            b"ignore",
            "is1PBizBotMessage",
            b"is1PBizBotMessage",
            "isGroupHistoryMessage",
            b"isGroupHistoryMessage",
            "keepInChat",
            b"keepInChat",
            "key",
            b"key",
            "mediaCiphertextSha256",
            b"mediaCiphertextSha256",
            "mediaData",
            b"mediaData",
            "message",
            b"message",
            "messageC2STimestamp",
            b"messageC2STimestamp",
            "messageSecret",
            b"messageSecret",
            "messageStubType",
            b"messageStubType",
            "messageTimestamp",
            b"messageTimestamp",
            "multicast",
            b"multicast",
            "newsletterServerId",
            b"newsletterServerId",
            "originalSelfAuthorUserJidString",
            b"originalSelfAuthorUserJidString",
            "participant",
            b"participant",
            "paymentInfo",
            b"paymentInfo",
            "photoChange",
            b"photoChange",
            "pinInChat",
            b"pinInChat",
            "pollAdditionalMetadata",
            b"pollAdditionalMetadata",
            "premiumMessageInfo",
            b"premiumMessageInfo",
            "pushName",
            b"pushName",
            "quotedPaymentInfo",
            b"quotedPaymentInfo",
            "quotedStickerData",
            b"quotedStickerData",
            "reportingTokenInfo",
            b"reportingTokenInfo",
            "revokeMessageTimestamp",
            b"revokeMessageTimestamp",
            "starred",
            b"starred",
            "status",
            b"status",
            "statusAlreadyViewed",
            b"statusAlreadyViewed",
            "statusPsa",
            b"statusPsa",
            "urlNumber",
            b"urlNumber",
            "urlText",
            b"urlText",
            "verifiedBizName",
            b"verifiedBizName",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "agentId",
            b"agentId",
            "bizPrivacyStatus",
            b"bizPrivacyStatus",
            "botMessageInvokerJid",
            b"botMessageInvokerJid",
            "broadcast",
            b"broadcast",
            "clearMedia",
            b"clearMedia",
            "commentMetadata",
            b"commentMetadata",
            "duration",
            b"duration",
            "ephemeralDuration",
            b"ephemeralDuration",
            "ephemeralOffToOn",
            b"ephemeralOffToOn",
            "ephemeralOutOfSync",
            b"ephemeralOutOfSync",
            "ephemeralStartTimestamp",
            b"ephemeralStartTimestamp",
            "eventResponses",
            b"eventResponses",
            "finalLiveLocation",
            b"finalLiveLocation",
            "futureproofData",
            b"futureproofData",
            "ignore",
            b"ignore",
            "is1PBizBotMessage",
            b"is1PBizBotMessage",
            "isGroupHistoryMessage",
            b"isGroupHistoryMessage",
            "keepInChat",
            b"keepInChat",
            "key",
            b"key",
            "labels",
            b"labels",
            "mediaCiphertextSha256",
            b"mediaCiphertextSha256",
            "mediaData",
            b"mediaData",
            "message",
            b"message",
            "messageC2STimestamp",
            b"messageC2STimestamp",
            "messageSecret",
            b"messageSecret",
            "messageStubParameters",
            b"messageStubParameters",
            "messageStubType",
            b"messageStubType",
            "messageTimestamp",
            b"messageTimestamp",
            "multicast",
            b"multicast",
            "newsletterServerId",
            b"newsletterServerId",
            "originalSelfAuthorUserJidString",
            b"originalSelfAuthorUserJidString",
            "participant",
            b"participant",
            "paymentInfo",
            b"paymentInfo",
            "photoChange",
            b"photoChange",
            "pinInChat",
            b"pinInChat",
            "pollAdditionalMetadata",
            b"pollAdditionalMetadata",
            "pollUpdates",
            b"pollUpdates",
            "premiumMessageInfo",
            b"premiumMessageInfo",
            "pushName",
            b"pushName",
            "quotedPaymentInfo",
            b"quotedPaymentInfo",
            "quotedStickerData",
            b"quotedStickerData",
            "reactions",
            b"reactions",
            "reportingTokenInfo",
            b"reportingTokenInfo",
            "revokeMessageTimestamp",
            b"revokeMessageTimestamp",
            "starred",
            b"starred",
            "status",
            b"status",
            "statusAlreadyViewed",
            b"statusAlreadyViewed",
            "statusPsa",
            b"statusPsa",
            "urlNumber",
            b"urlNumber",
            "urlText",
            b"urlText",
            "userReceipt",
            b"userReceipt",
            "verifiedBizName",
            b"verifiedBizName",
        ],
    ) -> None: ...

global___WebMessageInfo = WebMessageInfo

@typing_extensions.final
class WebFeatures(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _FlagEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            WebFeatures._Flag.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        NOT_STARTED: WebFeatures._Flag.ValueType  # 0
        FORCE_UPGRADE: WebFeatures._Flag.ValueType  # 1
        DEVELOPMENT: WebFeatures._Flag.ValueType  # 2
        PRODUCTION: WebFeatures._Flag.ValueType  # 3

    class Flag(_Flag, metaclass=_FlagEnumTypeWrapper): ...
    NOT_STARTED: WebFeatures.Flag.ValueType  # 0
    FORCE_UPGRADE: WebFeatures.Flag.ValueType  # 1
    DEVELOPMENT: WebFeatures.Flag.ValueType  # 2
    PRODUCTION: WebFeatures.Flag.ValueType  # 3

    LABELSDISPLAY_FIELD_NUMBER: builtins.int
    VOIPINDIVIDUALOUTGOING_FIELD_NUMBER: builtins.int
    GROUPSV3_FIELD_NUMBER: builtins.int
    GROUPSV3CREATE_FIELD_NUMBER: builtins.int
    CHANGENUMBERV2_FIELD_NUMBER: builtins.int
    QUERYSTATUSV3THUMBNAIL_FIELD_NUMBER: builtins.int
    LIVELOCATIONS_FIELD_NUMBER: builtins.int
    QUERYVNAME_FIELD_NUMBER: builtins.int
    VOIPINDIVIDUALINCOMING_FIELD_NUMBER: builtins.int
    QUICKREPLIESQUERY_FIELD_NUMBER: builtins.int
    PAYMENTS_FIELD_NUMBER: builtins.int
    STICKERPACKQUERY_FIELD_NUMBER: builtins.int
    LIVELOCATIONSFINAL_FIELD_NUMBER: builtins.int
    LABELSEDIT_FIELD_NUMBER: builtins.int
    MEDIAUPLOAD_FIELD_NUMBER: builtins.int
    MEDIAUPLOADRICHQUICKREPLIES_FIELD_NUMBER: builtins.int
    VNAMEV2_FIELD_NUMBER: builtins.int
    VIDEOPLAYBACKURL_FIELD_NUMBER: builtins.int
    STATUSRANKING_FIELD_NUMBER: builtins.int
    VOIPINDIVIDUALVIDEO_FIELD_NUMBER: builtins.int
    THIRDPARTYSTICKERS_FIELD_NUMBER: builtins.int
    FREQUENTLYFORWARDEDSETTING_FIELD_NUMBER: builtins.int
    GROUPSV4JOINPERMISSION_FIELD_NUMBER: builtins.int
    RECENTSTICKERS_FIELD_NUMBER: builtins.int
    CATALOG_FIELD_NUMBER: builtins.int
    STARREDSTICKERS_FIELD_NUMBER: builtins.int
    VOIPGROUPCALL_FIELD_NUMBER: builtins.int
    TEMPLATEMESSAGE_FIELD_NUMBER: builtins.int
    TEMPLATEMESSAGEINTERACTIVITY_FIELD_NUMBER: builtins.int
    EPHEMERALMESSAGES_FIELD_NUMBER: builtins.int
    E2ENOTIFICATIONSYNC_FIELD_NUMBER: builtins.int
    RECENTSTICKERSV2_FIELD_NUMBER: builtins.int
    RECENTSTICKERSV3_FIELD_NUMBER: builtins.int
    USERNOTICE_FIELD_NUMBER: builtins.int
    SUPPORT_FIELD_NUMBER: builtins.int
    GROUPUIICLEANUP_FIELD_NUMBER: builtins.int
    GROUPDOGFOODINGINTERNALONLY_FIELD_NUMBER: builtins.int
    SETTINGSSYNC_FIELD_NUMBER: builtins.int
    ARCHIVEV2_FIELD_NUMBER: builtins.int
    EPHEMERALALLOWGROUPMEMBERS_FIELD_NUMBER: builtins.int
    EPHEMERAL24HDURATION_FIELD_NUMBER: builtins.int
    MDFORCEUPGRADE_FIELD_NUMBER: builtins.int
    DISAPPEARINGMODE_FIELD_NUMBER: builtins.int
    EXTERNALMDOPTINAVAILABLE_FIELD_NUMBER: builtins.int
    NODELETEMESSAGETIMELIMIT_FIELD_NUMBER: builtins.int
    labelsDisplay: global___WebFeatures.Flag.ValueType
    voipIndividualOutgoing: global___WebFeatures.Flag.ValueType
    groupsV3: global___WebFeatures.Flag.ValueType
    groupsV3Create: global___WebFeatures.Flag.ValueType
    changeNumberV2: global___WebFeatures.Flag.ValueType
    queryStatusV3Thumbnail: global___WebFeatures.Flag.ValueType
    liveLocations: global___WebFeatures.Flag.ValueType
    queryVname: global___WebFeatures.Flag.ValueType
    voipIndividualIncoming: global___WebFeatures.Flag.ValueType
    quickRepliesQuery: global___WebFeatures.Flag.ValueType
    payments: global___WebFeatures.Flag.ValueType
    stickerPackQuery: global___WebFeatures.Flag.ValueType
    liveLocationsFinal: global___WebFeatures.Flag.ValueType
    labelsEdit: global___WebFeatures.Flag.ValueType
    mediaUpload: global___WebFeatures.Flag.ValueType
    mediaUploadRichQuickReplies: global___WebFeatures.Flag.ValueType
    vnameV2: global___WebFeatures.Flag.ValueType
    videoPlaybackUrl: global___WebFeatures.Flag.ValueType
    statusRanking: global___WebFeatures.Flag.ValueType
    voipIndividualVideo: global___WebFeatures.Flag.ValueType
    thirdPartyStickers: global___WebFeatures.Flag.ValueType
    frequentlyForwardedSetting: global___WebFeatures.Flag.ValueType
    groupsV4JoinPermission: global___WebFeatures.Flag.ValueType
    recentStickers: global___WebFeatures.Flag.ValueType
    catalog: global___WebFeatures.Flag.ValueType
    starredStickers: global___WebFeatures.Flag.ValueType
    voipGroupCall: global___WebFeatures.Flag.ValueType
    templateMessage: global___WebFeatures.Flag.ValueType
    templateMessageInteractivity: global___WebFeatures.Flag.ValueType
    ephemeralMessages: global___WebFeatures.Flag.ValueType
    e2ENotificationSync: global___WebFeatures.Flag.ValueType
    recentStickersV2: global___WebFeatures.Flag.ValueType
    recentStickersV3: global___WebFeatures.Flag.ValueType
    userNotice: global___WebFeatures.Flag.ValueType
    support: global___WebFeatures.Flag.ValueType
    groupUiiCleanup: global___WebFeatures.Flag.ValueType
    groupDogfoodingInternalOnly: global___WebFeatures.Flag.ValueType
    settingsSync: global___WebFeatures.Flag.ValueType
    archiveV2: global___WebFeatures.Flag.ValueType
    ephemeralAllowGroupMembers: global___WebFeatures.Flag.ValueType
    ephemeral24HDuration: global___WebFeatures.Flag.ValueType
    mdForceUpgrade: global___WebFeatures.Flag.ValueType
    disappearingMode: global___WebFeatures.Flag.ValueType
    externalMdOptInAvailable: global___WebFeatures.Flag.ValueType
    noDeleteMessageTimeLimit: global___WebFeatures.Flag.ValueType
    def __init__(
        self,
        *,
        labelsDisplay: global___WebFeatures.Flag.ValueType | None = ...,
        voipIndividualOutgoing: global___WebFeatures.Flag.ValueType | None = ...,
        groupsV3: global___WebFeatures.Flag.ValueType | None = ...,
        groupsV3Create: global___WebFeatures.Flag.ValueType | None = ...,
        changeNumberV2: global___WebFeatures.Flag.ValueType | None = ...,
        queryStatusV3Thumbnail: global___WebFeatures.Flag.ValueType | None = ...,
        liveLocations: global___WebFeatures.Flag.ValueType | None = ...,
        queryVname: global___WebFeatures.Flag.ValueType | None = ...,
        voipIndividualIncoming: global___WebFeatures.Flag.ValueType | None = ...,
        quickRepliesQuery: global___WebFeatures.Flag.ValueType | None = ...,
        payments: global___WebFeatures.Flag.ValueType | None = ...,
        stickerPackQuery: global___WebFeatures.Flag.ValueType | None = ...,
        liveLocationsFinal: global___WebFeatures.Flag.ValueType | None = ...,
        labelsEdit: global___WebFeatures.Flag.ValueType | None = ...,
        mediaUpload: global___WebFeatures.Flag.ValueType | None = ...,
        mediaUploadRichQuickReplies: global___WebFeatures.Flag.ValueType | None = ...,
        vnameV2: global___WebFeatures.Flag.ValueType | None = ...,
        videoPlaybackUrl: global___WebFeatures.Flag.ValueType | None = ...,
        statusRanking: global___WebFeatures.Flag.ValueType | None = ...,
        voipIndividualVideo: global___WebFeatures.Flag.ValueType | None = ...,
        thirdPartyStickers: global___WebFeatures.Flag.ValueType | None = ...,
        frequentlyForwardedSetting: global___WebFeatures.Flag.ValueType | None = ...,
        groupsV4JoinPermission: global___WebFeatures.Flag.ValueType | None = ...,
        recentStickers: global___WebFeatures.Flag.ValueType | None = ...,
        catalog: global___WebFeatures.Flag.ValueType | None = ...,
        starredStickers: global___WebFeatures.Flag.ValueType | None = ...,
        voipGroupCall: global___WebFeatures.Flag.ValueType | None = ...,
        templateMessage: global___WebFeatures.Flag.ValueType | None = ...,
        templateMessageInteractivity: global___WebFeatures.Flag.ValueType | None = ...,
        ephemeralMessages: global___WebFeatures.Flag.ValueType | None = ...,
        e2ENotificationSync: global___WebFeatures.Flag.ValueType | None = ...,
        recentStickersV2: global___WebFeatures.Flag.ValueType | None = ...,
        recentStickersV3: global___WebFeatures.Flag.ValueType | None = ...,
        userNotice: global___WebFeatures.Flag.ValueType | None = ...,
        support: global___WebFeatures.Flag.ValueType | None = ...,
        groupUiiCleanup: global___WebFeatures.Flag.ValueType | None = ...,
        groupDogfoodingInternalOnly: global___WebFeatures.Flag.ValueType | None = ...,
        settingsSync: global___WebFeatures.Flag.ValueType | None = ...,
        archiveV2: global___WebFeatures.Flag.ValueType | None = ...,
        ephemeralAllowGroupMembers: global___WebFeatures.Flag.ValueType | None = ...,
        ephemeral24HDuration: global___WebFeatures.Flag.ValueType | None = ...,
        mdForceUpgrade: global___WebFeatures.Flag.ValueType | None = ...,
        disappearingMode: global___WebFeatures.Flag.ValueType | None = ...,
        externalMdOptInAvailable: global___WebFeatures.Flag.ValueType | None = ...,
        noDeleteMessageTimeLimit: global___WebFeatures.Flag.ValueType | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "archiveV2",
            b"archiveV2",
            "catalog",
            b"catalog",
            "changeNumberV2",
            b"changeNumberV2",
            "disappearingMode",
            b"disappearingMode",
            "e2ENotificationSync",
            b"e2ENotificationSync",
            "ephemeral24HDuration",
            b"ephemeral24HDuration",
            "ephemeralAllowGroupMembers",
            b"ephemeralAllowGroupMembers",
            "ephemeralMessages",
            b"ephemeralMessages",
            "externalMdOptInAvailable",
            b"externalMdOptInAvailable",
            "frequentlyForwardedSetting",
            b"frequentlyForwardedSetting",
            "groupDogfoodingInternalOnly",
            b"groupDogfoodingInternalOnly",
            "groupUiiCleanup",
            b"groupUiiCleanup",
            "groupsV3",
            b"groupsV3",
            "groupsV3Create",
            b"groupsV3Create",
            "groupsV4JoinPermission",
            b"groupsV4JoinPermission",
            "labelsDisplay",
            b"labelsDisplay",
            "labelsEdit",
            b"labelsEdit",
            "liveLocations",
            b"liveLocations",
            "liveLocationsFinal",
            b"liveLocationsFinal",
            "mdForceUpgrade",
            b"mdForceUpgrade",
            "mediaUpload",
            b"mediaUpload",
            "mediaUploadRichQuickReplies",
            b"mediaUploadRichQuickReplies",
            "noDeleteMessageTimeLimit",
            b"noDeleteMessageTimeLimit",
            "payments",
            b"payments",
            "queryStatusV3Thumbnail",
            b"queryStatusV3Thumbnail",
            "queryVname",
            b"queryVname",
            "quickRepliesQuery",
            b"quickRepliesQuery",
            "recentStickers",
            b"recentStickers",
            "recentStickersV2",
            b"recentStickersV2",
            "recentStickersV3",
            b"recentStickersV3",
            "settingsSync",
            b"settingsSync",
            "starredStickers",
            b"starredStickers",
            "statusRanking",
            b"statusRanking",
            "stickerPackQuery",
            b"stickerPackQuery",
            "support",
            b"support",
            "templateMessage",
            b"templateMessage",
            "templateMessageInteractivity",
            b"templateMessageInteractivity",
            "thirdPartyStickers",
            b"thirdPartyStickers",
            "userNotice",
            b"userNotice",
            "videoPlaybackUrl",
            b"videoPlaybackUrl",
            "vnameV2",
            b"vnameV2",
            "voipGroupCall",
            b"voipGroupCall",
            "voipIndividualIncoming",
            b"voipIndividualIncoming",
            "voipIndividualOutgoing",
            b"voipIndividualOutgoing",
            "voipIndividualVideo",
            b"voipIndividualVideo",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "archiveV2",
            b"archiveV2",
            "catalog",
            b"catalog",
            "changeNumberV2",
            b"changeNumberV2",
            "disappearingMode",
            b"disappearingMode",
            "e2ENotificationSync",
            b"e2ENotificationSync",
            "ephemeral24HDuration",
            b"ephemeral24HDuration",
            "ephemeralAllowGroupMembers",
            b"ephemeralAllowGroupMembers",
            "ephemeralMessages",
            b"ephemeralMessages",
            "externalMdOptInAvailable",
            b"externalMdOptInAvailable",
            "frequentlyForwardedSetting",
            b"frequentlyForwardedSetting",
            "groupDogfoodingInternalOnly",
            b"groupDogfoodingInternalOnly",
            "groupUiiCleanup",
            b"groupUiiCleanup",
            "groupsV3",
            b"groupsV3",
            "groupsV3Create",
            b"groupsV3Create",
            "groupsV4JoinPermission",
            b"groupsV4JoinPermission",
            "labelsDisplay",
            b"labelsDisplay",
            "labelsEdit",
            b"labelsEdit",
            "liveLocations",
            b"liveLocations",
            "liveLocationsFinal",
            b"liveLocationsFinal",
            "mdForceUpgrade",
            b"mdForceUpgrade",
            "mediaUpload",
            b"mediaUpload",
            "mediaUploadRichQuickReplies",
            b"mediaUploadRichQuickReplies",
            "noDeleteMessageTimeLimit",
            b"noDeleteMessageTimeLimit",
            "payments",
            b"payments",
            "queryStatusV3Thumbnail",
            b"queryStatusV3Thumbnail",
            "queryVname",
            b"queryVname",
            "quickRepliesQuery",
            b"quickRepliesQuery",
            "recentStickers",
            b"recentStickers",
            "recentStickersV2",
            b"recentStickersV2",
            "recentStickersV3",
            b"recentStickersV3",
            "settingsSync",
            b"settingsSync",
            "starredStickers",
            b"starredStickers",
            "statusRanking",
            b"statusRanking",
            "stickerPackQuery",
            b"stickerPackQuery",
            "support",
            b"support",
            "templateMessage",
            b"templateMessage",
            "templateMessageInteractivity",
            b"templateMessageInteractivity",
            "thirdPartyStickers",
            b"thirdPartyStickers",
            "userNotice",
            b"userNotice",
            "videoPlaybackUrl",
            b"videoPlaybackUrl",
            "vnameV2",
            b"vnameV2",
            "voipGroupCall",
            b"voipGroupCall",
            "voipIndividualIncoming",
            b"voipIndividualIncoming",
            "voipIndividualOutgoing",
            b"voipIndividualOutgoing",
            "voipIndividualVideo",
            b"voipIndividualVideo",
        ],
    ) -> None: ...

global___WebFeatures = WebFeatures

@typing_extensions.final
class UserReceipt(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    USERJID_FIELD_NUMBER: builtins.int
    RECEIPTTIMESTAMP_FIELD_NUMBER: builtins.int
    READTIMESTAMP_FIELD_NUMBER: builtins.int
    PLAYEDTIMESTAMP_FIELD_NUMBER: builtins.int
    PENDINGDEVICEJID_FIELD_NUMBER: builtins.int
    DELIVEREDDEVICEJID_FIELD_NUMBER: builtins.int
    userJid: builtins.str
    receiptTimestamp: builtins.int
    readTimestamp: builtins.int
    playedTimestamp: builtins.int
    @property
    def pendingDeviceJid(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    @property
    def deliveredDeviceJid(
        self,
    ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
        builtins.str
    ]: ...
    def __init__(
        self,
        *,
        userJid: builtins.str | None = ...,
        receiptTimestamp: builtins.int | None = ...,
        readTimestamp: builtins.int | None = ...,
        playedTimestamp: builtins.int | None = ...,
        pendingDeviceJid: collections.abc.Iterable[builtins.str] | None = ...,
        deliveredDeviceJid: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "playedTimestamp",
            b"playedTimestamp",
            "readTimestamp",
            b"readTimestamp",
            "receiptTimestamp",
            b"receiptTimestamp",
            "userJid",
            b"userJid",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "deliveredDeviceJid",
            b"deliveredDeviceJid",
            "pendingDeviceJid",
            b"pendingDeviceJid",
            "playedTimestamp",
            b"playedTimestamp",
            "readTimestamp",
            b"readTimestamp",
            "receiptTimestamp",
            b"receiptTimestamp",
            "userJid",
            b"userJid",
        ],
    ) -> None: ...

global___UserReceipt = UserReceipt

@typing_extensions.final
class StatusPSA(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CAMPAIGNID_FIELD_NUMBER: builtins.int
    CAMPAIGNEXPIRATIONTIMESTAMP_FIELD_NUMBER: builtins.int
    campaignId: builtins.int
    campaignExpirationTimestamp: builtins.int
    def __init__(
        self,
        *,
        campaignId: builtins.int | None = ...,
        campaignExpirationTimestamp: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "campaignExpirationTimestamp",
            b"campaignExpirationTimestamp",
            "campaignId",
            b"campaignId",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "campaignExpirationTimestamp",
            b"campaignExpirationTimestamp",
            "campaignId",
            b"campaignId",
        ],
    ) -> None: ...

global___StatusPSA = StatusPSA

@typing_extensions.final
class ReportingTokenInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    REPORTINGTAG_FIELD_NUMBER: builtins.int
    reportingTag: builtins.bytes
    def __init__(
        self,
        *,
        reportingTag: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["reportingTag", b"reportingTag"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["reportingTag", b"reportingTag"]
    ) -> None: ...

global___ReportingTokenInfo = ReportingTokenInfo

@typing_extensions.final
class Reaction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_FIELD_NUMBER: builtins.int
    TEXT_FIELD_NUMBER: builtins.int
    GROUPINGKEY_FIELD_NUMBER: builtins.int
    SENDERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    UNREAD_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    text: builtins.str
    groupingKey: builtins.str
    senderTimestampMs: builtins.int
    unread: builtins.bool
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        text: builtins.str | None = ...,
        groupingKey: builtins.str | None = ...,
        senderTimestampMs: builtins.int | None = ...,
        unread: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "groupingKey",
            b"groupingKey",
            "key",
            b"key",
            "senderTimestampMs",
            b"senderTimestampMs",
            "text",
            b"text",
            "unread",
            b"unread",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "groupingKey",
            b"groupingKey",
            "key",
            b"key",
            "senderTimestampMs",
            b"senderTimestampMs",
            "text",
            b"text",
            "unread",
            b"unread",
        ],
    ) -> None: ...

global___Reaction = Reaction

@typing_extensions.final
class PremiumMessageInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVERCAMPAIGNID_FIELD_NUMBER: builtins.int
    serverCampaignId: builtins.str
    def __init__(
        self,
        *,
        serverCampaignId: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["serverCampaignId", b"serverCampaignId"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["serverCampaignId", b"serverCampaignId"],
    ) -> None: ...

global___PremiumMessageInfo = PremiumMessageInfo

@typing_extensions.final
class PollUpdate(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    POLLUPDATEMESSAGEKEY_FIELD_NUMBER: builtins.int
    VOTE_FIELD_NUMBER: builtins.int
    SENDERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    SERVERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    UNREAD_FIELD_NUMBER: builtins.int
    @property
    def pollUpdateMessageKey(self) -> global___MessageKey: ...
    @property
    def vote(self) -> global___PollVoteMessage: ...
    senderTimestampMs: builtins.int
    serverTimestampMs: builtins.int
    unread: builtins.bool
    def __init__(
        self,
        *,
        pollUpdateMessageKey: global___MessageKey | None = ...,
        vote: global___PollVoteMessage | None = ...,
        senderTimestampMs: builtins.int | None = ...,
        serverTimestampMs: builtins.int | None = ...,
        unread: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "pollUpdateMessageKey",
            b"pollUpdateMessageKey",
            "senderTimestampMs",
            b"senderTimestampMs",
            "serverTimestampMs",
            b"serverTimestampMs",
            "unread",
            b"unread",
            "vote",
            b"vote",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "pollUpdateMessageKey",
            b"pollUpdateMessageKey",
            "senderTimestampMs",
            b"senderTimestampMs",
            "serverTimestampMs",
            b"serverTimestampMs",
            "unread",
            b"unread",
            "vote",
            b"vote",
        ],
    ) -> None: ...

global___PollUpdate = PollUpdate

@typing_extensions.final
class PollAdditionalMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    POLLINVALIDATED_FIELD_NUMBER: builtins.int
    pollInvalidated: builtins.bool
    def __init__(
        self,
        *,
        pollInvalidated: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal["pollInvalidated", b"pollInvalidated"],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal["pollInvalidated", b"pollInvalidated"],
    ) -> None: ...

global___PollAdditionalMetadata = PollAdditionalMetadata

@typing_extensions.final
class PinInChat(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PinInChat._Type.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN_TYPE: PinInChat._Type.ValueType  # 0
        PIN_FOR_ALL: PinInChat._Type.ValueType  # 1
        UNPIN_FOR_ALL: PinInChat._Type.ValueType  # 2

    class Type(_Type, metaclass=_TypeEnumTypeWrapper): ...
    UNKNOWN_TYPE: PinInChat.Type.ValueType  # 0
    PIN_FOR_ALL: PinInChat.Type.ValueType  # 1
    UNPIN_FOR_ALL: PinInChat.Type.ValueType  # 2

    TYPE_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    SENDERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    SERVERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    MESSAGEADDONCONTEXTINFO_FIELD_NUMBER: builtins.int
    type: global___PinInChat.Type.ValueType
    @property
    def key(self) -> global___MessageKey: ...
    senderTimestampMs: builtins.int
    serverTimestampMs: builtins.int
    @property
    def messageAddOnContextInfo(self) -> global___MessageAddOnContextInfo: ...
    def __init__(
        self,
        *,
        type: global___PinInChat.Type.ValueType | None = ...,
        key: global___MessageKey | None = ...,
        senderTimestampMs: builtins.int | None = ...,
        serverTimestampMs: builtins.int | None = ...,
        messageAddOnContextInfo: global___MessageAddOnContextInfo | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "key",
            b"key",
            "messageAddOnContextInfo",
            b"messageAddOnContextInfo",
            "senderTimestampMs",
            b"senderTimestampMs",
            "serverTimestampMs",
            b"serverTimestampMs",
            "type",
            b"type",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "key",
            b"key",
            "messageAddOnContextInfo",
            b"messageAddOnContextInfo",
            "senderTimestampMs",
            b"senderTimestampMs",
            "serverTimestampMs",
            b"serverTimestampMs",
            "type",
            b"type",
        ],
    ) -> None: ...

global___PinInChat = PinInChat

@typing_extensions.final
class PhotoChange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    OLDPHOTO_FIELD_NUMBER: builtins.int
    NEWPHOTO_FIELD_NUMBER: builtins.int
    NEWPHOTOID_FIELD_NUMBER: builtins.int
    oldPhoto: builtins.bytes
    newPhoto: builtins.bytes
    newPhotoId: builtins.int
    def __init__(
        self,
        *,
        oldPhoto: builtins.bytes | None = ...,
        newPhoto: builtins.bytes | None = ...,
        newPhotoId: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "newPhoto",
            b"newPhoto",
            "newPhotoId",
            b"newPhotoId",
            "oldPhoto",
            b"oldPhoto",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "newPhoto",
            b"newPhoto",
            "newPhotoId",
            b"newPhotoId",
            "oldPhoto",
            b"oldPhoto",
        ],
    ) -> None: ...

global___PhotoChange = PhotoChange

@typing_extensions.final
class PaymentInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _TxnStatusEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PaymentInfo._TxnStatus.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: PaymentInfo._TxnStatus.ValueType  # 0
        PENDING_SETUP: PaymentInfo._TxnStatus.ValueType  # 1
        PENDING_RECEIVER_SETUP: PaymentInfo._TxnStatus.ValueType  # 2
        INIT: PaymentInfo._TxnStatus.ValueType  # 3
        SUCCESS: PaymentInfo._TxnStatus.ValueType  # 4
        COMPLETED: PaymentInfo._TxnStatus.ValueType  # 5
        FAILED: PaymentInfo._TxnStatus.ValueType  # 6
        FAILED_RISK: PaymentInfo._TxnStatus.ValueType  # 7
        FAILED_PROCESSING: PaymentInfo._TxnStatus.ValueType  # 8
        FAILED_RECEIVER_PROCESSING: PaymentInfo._TxnStatus.ValueType  # 9
        FAILED_DA: PaymentInfo._TxnStatus.ValueType  # 10
        FAILED_DA_FINAL: PaymentInfo._TxnStatus.ValueType  # 11
        REFUNDED_TXN: PaymentInfo._TxnStatus.ValueType  # 12
        REFUND_FAILED: PaymentInfo._TxnStatus.ValueType  # 13
        REFUND_FAILED_PROCESSING: PaymentInfo._TxnStatus.ValueType  # 14
        REFUND_FAILED_DA: PaymentInfo._TxnStatus.ValueType  # 15
        EXPIRED_TXN: PaymentInfo._TxnStatus.ValueType  # 16
        AUTH_CANCELED: PaymentInfo._TxnStatus.ValueType  # 17
        AUTH_CANCEL_FAILED_PROCESSING: PaymentInfo._TxnStatus.ValueType  # 18
        AUTH_CANCEL_FAILED: PaymentInfo._TxnStatus.ValueType  # 19
        COLLECT_INIT: PaymentInfo._TxnStatus.ValueType  # 20
        COLLECT_SUCCESS: PaymentInfo._TxnStatus.ValueType  # 21
        COLLECT_FAILED: PaymentInfo._TxnStatus.ValueType  # 22
        COLLECT_FAILED_RISK: PaymentInfo._TxnStatus.ValueType  # 23
        COLLECT_REJECTED: PaymentInfo._TxnStatus.ValueType  # 24
        COLLECT_EXPIRED: PaymentInfo._TxnStatus.ValueType  # 25
        COLLECT_CANCELED: PaymentInfo._TxnStatus.ValueType  # 26
        COLLECT_CANCELLING: PaymentInfo._TxnStatus.ValueType  # 27
        IN_REVIEW: PaymentInfo._TxnStatus.ValueType  # 28
        REVERSAL_SUCCESS: PaymentInfo._TxnStatus.ValueType  # 29
        REVERSAL_PENDING: PaymentInfo._TxnStatus.ValueType  # 30
        REFUND_PENDING: PaymentInfo._TxnStatus.ValueType  # 31

    class TxnStatus(_TxnStatus, metaclass=_TxnStatusEnumTypeWrapper): ...
    UNKNOWN: PaymentInfo.TxnStatus.ValueType  # 0
    PENDING_SETUP: PaymentInfo.TxnStatus.ValueType  # 1
    PENDING_RECEIVER_SETUP: PaymentInfo.TxnStatus.ValueType  # 2
    INIT: PaymentInfo.TxnStatus.ValueType  # 3
    SUCCESS: PaymentInfo.TxnStatus.ValueType  # 4
    COMPLETED: PaymentInfo.TxnStatus.ValueType  # 5
    FAILED: PaymentInfo.TxnStatus.ValueType  # 6
    FAILED_RISK: PaymentInfo.TxnStatus.ValueType  # 7
    FAILED_PROCESSING: PaymentInfo.TxnStatus.ValueType  # 8
    FAILED_RECEIVER_PROCESSING: PaymentInfo.TxnStatus.ValueType  # 9
    FAILED_DA: PaymentInfo.TxnStatus.ValueType  # 10
    FAILED_DA_FINAL: PaymentInfo.TxnStatus.ValueType  # 11
    REFUNDED_TXN: PaymentInfo.TxnStatus.ValueType  # 12
    REFUND_FAILED: PaymentInfo.TxnStatus.ValueType  # 13
    REFUND_FAILED_PROCESSING: PaymentInfo.TxnStatus.ValueType  # 14
    REFUND_FAILED_DA: PaymentInfo.TxnStatus.ValueType  # 15
    EXPIRED_TXN: PaymentInfo.TxnStatus.ValueType  # 16
    AUTH_CANCELED: PaymentInfo.TxnStatus.ValueType  # 17
    AUTH_CANCEL_FAILED_PROCESSING: PaymentInfo.TxnStatus.ValueType  # 18
    AUTH_CANCEL_FAILED: PaymentInfo.TxnStatus.ValueType  # 19
    COLLECT_INIT: PaymentInfo.TxnStatus.ValueType  # 20
    COLLECT_SUCCESS: PaymentInfo.TxnStatus.ValueType  # 21
    COLLECT_FAILED: PaymentInfo.TxnStatus.ValueType  # 22
    COLLECT_FAILED_RISK: PaymentInfo.TxnStatus.ValueType  # 23
    COLLECT_REJECTED: PaymentInfo.TxnStatus.ValueType  # 24
    COLLECT_EXPIRED: PaymentInfo.TxnStatus.ValueType  # 25
    COLLECT_CANCELED: PaymentInfo.TxnStatus.ValueType  # 26
    COLLECT_CANCELLING: PaymentInfo.TxnStatus.ValueType  # 27
    IN_REVIEW: PaymentInfo.TxnStatus.ValueType  # 28
    REVERSAL_SUCCESS: PaymentInfo.TxnStatus.ValueType  # 29
    REVERSAL_PENDING: PaymentInfo.TxnStatus.ValueType  # 30
    REFUND_PENDING: PaymentInfo.TxnStatus.ValueType  # 31

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

    class _StatusEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PaymentInfo._Status.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN_STATUS: PaymentInfo._Status.ValueType  # 0
        PROCESSING: PaymentInfo._Status.ValueType  # 1
        SENT: PaymentInfo._Status.ValueType  # 2
        NEED_TO_ACCEPT: PaymentInfo._Status.ValueType  # 3
        COMPLETE: PaymentInfo._Status.ValueType  # 4
        COULD_NOT_COMPLETE: PaymentInfo._Status.ValueType  # 5
        REFUNDED: PaymentInfo._Status.ValueType  # 6
        EXPIRED: PaymentInfo._Status.ValueType  # 7
        REJECTED: PaymentInfo._Status.ValueType  # 8
        CANCELLED: PaymentInfo._Status.ValueType  # 9
        WAITING_FOR_PAYER: PaymentInfo._Status.ValueType  # 10
        WAITING: PaymentInfo._Status.ValueType  # 11

    class Status(_Status, metaclass=_StatusEnumTypeWrapper): ...
    UNKNOWN_STATUS: PaymentInfo.Status.ValueType  # 0
    PROCESSING: PaymentInfo.Status.ValueType  # 1
    SENT: PaymentInfo.Status.ValueType  # 2
    NEED_TO_ACCEPT: PaymentInfo.Status.ValueType  # 3
    COMPLETE: PaymentInfo.Status.ValueType  # 4
    COULD_NOT_COMPLETE: PaymentInfo.Status.ValueType  # 5
    REFUNDED: PaymentInfo.Status.ValueType  # 6
    EXPIRED: PaymentInfo.Status.ValueType  # 7
    REJECTED: PaymentInfo.Status.ValueType  # 8
    CANCELLED: PaymentInfo.Status.ValueType  # 9
    WAITING_FOR_PAYER: PaymentInfo.Status.ValueType  # 10
    WAITING: PaymentInfo.Status.ValueType  # 11

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

    class _CurrencyEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            PaymentInfo._Currency.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN_CURRENCY: PaymentInfo._Currency.ValueType  # 0
        INR: PaymentInfo._Currency.ValueType  # 1

    class Currency(_Currency, metaclass=_CurrencyEnumTypeWrapper): ...
    UNKNOWN_CURRENCY: PaymentInfo.Currency.ValueType  # 0
    INR: PaymentInfo.Currency.ValueType  # 1

    CURRENCYDEPRECATED_FIELD_NUMBER: builtins.int
    AMOUNT1000_FIELD_NUMBER: builtins.int
    RECEIVERJID_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    TRANSACTIONTIMESTAMP_FIELD_NUMBER: builtins.int
    REQUESTMESSAGEKEY_FIELD_NUMBER: builtins.int
    EXPIRYTIMESTAMP_FIELD_NUMBER: builtins.int
    FUTUREPROOFED_FIELD_NUMBER: builtins.int
    CURRENCY_FIELD_NUMBER: builtins.int
    TXNSTATUS_FIELD_NUMBER: builtins.int
    USENOVIFIATFORMAT_FIELD_NUMBER: builtins.int
    PRIMARYAMOUNT_FIELD_NUMBER: builtins.int
    EXCHANGEAMOUNT_FIELD_NUMBER: builtins.int
    currencyDeprecated: global___PaymentInfo.Currency.ValueType
    amount1000: builtins.int
    receiverJid: builtins.str
    status: global___PaymentInfo.Status.ValueType
    transactionTimestamp: builtins.int
    @property
    def requestMessageKey(self) -> global___MessageKey: ...
    expiryTimestamp: builtins.int
    futureproofed: builtins.bool
    currency: builtins.str
    txnStatus: global___PaymentInfo.TxnStatus.ValueType
    useNoviFiatFormat: builtins.bool
    @property
    def primaryAmount(self) -> global___Money: ...
    @property
    def exchangeAmount(self) -> global___Money: ...
    def __init__(
        self,
        *,
        currencyDeprecated: global___PaymentInfo.Currency.ValueType | None = ...,
        amount1000: builtins.int | None = ...,
        receiverJid: builtins.str | None = ...,
        status: global___PaymentInfo.Status.ValueType | None = ...,
        transactionTimestamp: builtins.int | None = ...,
        requestMessageKey: global___MessageKey | None = ...,
        expiryTimestamp: builtins.int | None = ...,
        futureproofed: builtins.bool | None = ...,
        currency: builtins.str | None = ...,
        txnStatus: global___PaymentInfo.TxnStatus.ValueType | None = ...,
        useNoviFiatFormat: builtins.bool | None = ...,
        primaryAmount: global___Money | None = ...,
        exchangeAmount: global___Money | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "amount1000",
            b"amount1000",
            "currency",
            b"currency",
            "currencyDeprecated",
            b"currencyDeprecated",
            "exchangeAmount",
            b"exchangeAmount",
            "expiryTimestamp",
            b"expiryTimestamp",
            "futureproofed",
            b"futureproofed",
            "primaryAmount",
            b"primaryAmount",
            "receiverJid",
            b"receiverJid",
            "requestMessageKey",
            b"requestMessageKey",
            "status",
            b"status",
            "transactionTimestamp",
            b"transactionTimestamp",
            "txnStatus",
            b"txnStatus",
            "useNoviFiatFormat",
            b"useNoviFiatFormat",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "amount1000",
            b"amount1000",
            "currency",
            b"currency",
            "currencyDeprecated",
            b"currencyDeprecated",
            "exchangeAmount",
            b"exchangeAmount",
            "expiryTimestamp",
            b"expiryTimestamp",
            "futureproofed",
            b"futureproofed",
            "primaryAmount",
            b"primaryAmount",
            "receiverJid",
            b"receiverJid",
            "requestMessageKey",
            b"requestMessageKey",
            "status",
            b"status",
            "transactionTimestamp",
            b"transactionTimestamp",
            "txnStatus",
            b"txnStatus",
            "useNoviFiatFormat",
            b"useNoviFiatFormat",
        ],
    ) -> None: ...

global___PaymentInfo = PaymentInfo

@typing_extensions.final
class NotificationMessageInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEY_FIELD_NUMBER: builtins.int
    MESSAGE_FIELD_NUMBER: builtins.int
    MESSAGETIMESTAMP_FIELD_NUMBER: builtins.int
    PARTICIPANT_FIELD_NUMBER: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    @property
    def message(self) -> global___Message: ...
    messageTimestamp: builtins.int
    participant: builtins.str
    def __init__(
        self,
        *,
        key: global___MessageKey | None = ...,
        message: global___Message | None = ...,
        messageTimestamp: builtins.int | None = ...,
        participant: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "key",
            b"key",
            "message",
            b"message",
            "messageTimestamp",
            b"messageTimestamp",
            "participant",
            b"participant",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "key",
            b"key",
            "message",
            b"message",
            "messageTimestamp",
            b"messageTimestamp",
            "participant",
            b"participant",
        ],
    ) -> None: ...

global___NotificationMessageInfo = NotificationMessageInfo

@typing_extensions.final
class MessageAddOnContextInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MESSAGEADDONDURATIONINSECS_FIELD_NUMBER: builtins.int
    messageAddOnDurationInSecs: builtins.int
    def __init__(
        self,
        *,
        messageAddOnDurationInSecs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "messageAddOnDurationInSecs", b"messageAddOnDurationInSecs"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "messageAddOnDurationInSecs", b"messageAddOnDurationInSecs"
        ],
    ) -> None: ...

global___MessageAddOnContextInfo = MessageAddOnContextInfo

@typing_extensions.final
class MediaData(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LOCALPATH_FIELD_NUMBER: builtins.int
    localPath: builtins.str
    def __init__(
        self,
        *,
        localPath: builtins.str | None = ...,
    ) -> None: ...
    def HasField(
        self, field_name: typing_extensions.Literal["localPath", b"localPath"]
    ) -> builtins.bool: ...
    def ClearField(
        self, field_name: typing_extensions.Literal["localPath", b"localPath"]
    ) -> None: ...

global___MediaData = MediaData

@typing_extensions.final
class KeepInChat(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    KEEPTYPE_FIELD_NUMBER: builtins.int
    SERVERTIMESTAMP_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    DEVICEJID_FIELD_NUMBER: builtins.int
    CLIENTTIMESTAMPMS_FIELD_NUMBER: builtins.int
    SERVERTIMESTAMPMS_FIELD_NUMBER: builtins.int
    keepType: global___KeepType.ValueType
    serverTimestamp: builtins.int
    @property
    def key(self) -> global___MessageKey: ...
    deviceJid: builtins.str
    clientTimestampMs: builtins.int
    serverTimestampMs: builtins.int
    def __init__(
        self,
        *,
        keepType: global___KeepType.ValueType | None = ...,
        serverTimestamp: builtins.int | None = ...,
        key: global___MessageKey | None = ...,
        deviceJid: builtins.str | None = ...,
        clientTimestampMs: builtins.int | None = ...,
        serverTimestampMs: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "clientTimestampMs",
            b"clientTimestampMs",
            "deviceJid",
            b"deviceJid",
            "keepType",
            b"keepType",
            "key",
            b"key",
            "serverTimestamp",
            b"serverTimestamp",
            "serverTimestampMs",
            b"serverTimestampMs",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "clientTimestampMs",
            b"clientTimestampMs",
            "deviceJid",
            b"deviceJid",
            "keepType",
            b"keepType",
            "key",
            b"key",
            "serverTimestamp",
            b"serverTimestamp",
            "serverTimestampMs",
            b"serverTimestampMs",
        ],
    ) -> None: ...

global___KeepInChat = KeepInChat

@typing_extensions.final
class EventResponse(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EVENTRESPONSEMESSAGEKEY_FIELD_NUMBER: builtins.int
    TIMESTAMPMS_FIELD_NUMBER: builtins.int
    EVENTRESPONSEMESSAGE_FIELD_NUMBER: builtins.int
    UNREAD_FIELD_NUMBER: builtins.int
    @property
    def eventResponseMessageKey(self) -> global___MessageKey: ...
    timestampMs: builtins.int
    @property
    def eventResponseMessage(self) -> global___EventResponseMessage: ...
    unread: builtins.bool
    def __init__(
        self,
        *,
        eventResponseMessageKey: global___MessageKey | None = ...,
        timestampMs: builtins.int | None = ...,
        eventResponseMessage: global___EventResponseMessage | None = ...,
        unread: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "eventResponseMessage",
            b"eventResponseMessage",
            "eventResponseMessageKey",
            b"eventResponseMessageKey",
            "timestampMs",
            b"timestampMs",
            "unread",
            b"unread",
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "eventResponseMessage",
            b"eventResponseMessage",
            "eventResponseMessageKey",
            b"eventResponseMessageKey",
            "timestampMs",
            b"timestampMs",
            "unread",
            b"unread",
        ],
    ) -> None: ...

global___EventResponse = EventResponse

@typing_extensions.final
class CommentMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COMMENTPARENTKEY_FIELD_NUMBER: builtins.int
    REPLYCOUNT_FIELD_NUMBER: builtins.int
    @property
    def commentParentKey(self) -> global___MessageKey: ...
    replyCount: builtins.int
    def __init__(
        self,
        *,
        commentParentKey: global___MessageKey | None = ...,
        replyCount: builtins.int | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "commentParentKey", b"commentParentKey", "replyCount", b"replyCount"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "commentParentKey", b"commentParentKey", "replyCount", b"replyCount"
        ],
    ) -> None: ...

global___CommentMetadata = CommentMetadata

@typing_extensions.final
class NoiseCertificate(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class Details(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        SERIAL_FIELD_NUMBER: builtins.int
        ISSUER_FIELD_NUMBER: builtins.int
        EXPIRES_FIELD_NUMBER: builtins.int
        SUBJECT_FIELD_NUMBER: builtins.int
        KEY_FIELD_NUMBER: builtins.int
        serial: builtins.int
        issuer: builtins.str
        expires: builtins.int
        subject: builtins.str
        key: builtins.bytes
        def __init__(
            self,
            *,
            serial: builtins.int | None = ...,
            issuer: builtins.str | None = ...,
            expires: builtins.int | None = ...,
            subject: builtins.str | None = ...,
            key: builtins.bytes | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "expires",
                b"expires",
                "issuer",
                b"issuer",
                "key",
                b"key",
                "serial",
                b"serial",
                "subject",
                b"subject",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "expires",
                b"expires",
                "issuer",
                b"issuer",
                "key",
                b"key",
                "serial",
                b"serial",
                "subject",
                b"subject",
            ],
        ) -> None: ...

    DETAILS_FIELD_NUMBER: builtins.int
    SIGNATURE_FIELD_NUMBER: builtins.int
    details: builtins.bytes
    signature: builtins.bytes
    def __init__(
        self,
        *,
        details: builtins.bytes | None = ...,
        signature: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "details", b"details", "signature", b"signature"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "details", b"details", "signature", b"signature"
        ],
    ) -> None: ...

global___NoiseCertificate = NoiseCertificate

@typing_extensions.final
class CertChain(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class NoiseCertificate(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        @typing_extensions.final
        class Details(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor

            SERIAL_FIELD_NUMBER: builtins.int
            ISSUERSERIAL_FIELD_NUMBER: builtins.int
            KEY_FIELD_NUMBER: builtins.int
            NOTBEFORE_FIELD_NUMBER: builtins.int
            NOTAFTER_FIELD_NUMBER: builtins.int
            serial: builtins.int
            issuerSerial: builtins.int
            key: builtins.bytes
            notBefore: builtins.int
            notAfter: builtins.int
            def __init__(
                self,
                *,
                serial: builtins.int | None = ...,
                issuerSerial: builtins.int | None = ...,
                key: builtins.bytes | None = ...,
                notBefore: builtins.int | None = ...,
                notAfter: builtins.int | None = ...,
            ) -> None: ...
            def HasField(
                self,
                field_name: typing_extensions.Literal[
                    "issuerSerial",
                    b"issuerSerial",
                    "key",
                    b"key",
                    "notAfter",
                    b"notAfter",
                    "notBefore",
                    b"notBefore",
                    "serial",
                    b"serial",
                ],
            ) -> builtins.bool: ...
            def ClearField(
                self,
                field_name: typing_extensions.Literal[
                    "issuerSerial",
                    b"issuerSerial",
                    "key",
                    b"key",
                    "notAfter",
                    b"notAfter",
                    "notBefore",
                    b"notBefore",
                    "serial",
                    b"serial",
                ],
            ) -> None: ...

        DETAILS_FIELD_NUMBER: builtins.int
        SIGNATURE_FIELD_NUMBER: builtins.int
        details: builtins.bytes
        signature: builtins.bytes
        def __init__(
            self,
            *,
            details: builtins.bytes | None = ...,
            signature: builtins.bytes | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "details", b"details", "signature", b"signature"
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "details", b"details", "signature", b"signature"
            ],
        ) -> None: ...

    LEAF_FIELD_NUMBER: builtins.int
    INTERMEDIATE_FIELD_NUMBER: builtins.int
    @property
    def leaf(self) -> global___CertChain.NoiseCertificate: ...
    @property
    def intermediate(self) -> global___CertChain.NoiseCertificate: ...
    def __init__(
        self,
        *,
        leaf: global___CertChain.NoiseCertificate | None = ...,
        intermediate: global___CertChain.NoiseCertificate | None = ...,
    ) -> None: ...
    def HasField(
        self,
        field_name: typing_extensions.Literal[
            "intermediate", b"intermediate", "leaf", b"leaf"
        ],
    ) -> builtins.bool: ...
    def ClearField(
        self,
        field_name: typing_extensions.Literal[
            "intermediate", b"intermediate", "leaf", b"leaf"
        ],
    ) -> None: ...

global___CertChain = CertChain

@typing_extensions.final
class QP(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

    class _FilterResultEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            QP._FilterResult.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        TRUE: QP._FilterResult.ValueType  # 1
        FALSE: QP._FilterResult.ValueType  # 2
        UNKNOWN: QP._FilterResult.ValueType  # 3

    class FilterResult(_FilterResult, metaclass=_FilterResultEnumTypeWrapper): ...
    TRUE: QP.FilterResult.ValueType  # 1
    FALSE: QP.FilterResult.ValueType  # 2
    UNKNOWN: QP.FilterResult.ValueType  # 3

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

    class _FilterClientNotSupportedConfigEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            QP._FilterClientNotSupportedConfig.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        PASS_BY_DEFAULT: QP._FilterClientNotSupportedConfig.ValueType  # 1
        FAIL_BY_DEFAULT: QP._FilterClientNotSupportedConfig.ValueType  # 2

    class FilterClientNotSupportedConfig(
        _FilterClientNotSupportedConfig,
        metaclass=_FilterClientNotSupportedConfigEnumTypeWrapper,
    ): ...
    PASS_BY_DEFAULT: QP.FilterClientNotSupportedConfig.ValueType  # 1
    FAIL_BY_DEFAULT: QP.FilterClientNotSupportedConfig.ValueType  # 2

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

    class _ClauseTypeEnumTypeWrapper(
        google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[
            QP._ClauseType.ValueType
        ],
        builtins.type,
    ):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        AND: QP._ClauseType.ValueType  # 1
        OR: QP._ClauseType.ValueType  # 2
        NOR: QP._ClauseType.ValueType  # 3

    class ClauseType(_ClauseType, metaclass=_ClauseTypeEnumTypeWrapper): ...
    AND: QP.ClauseType.ValueType  # 1
    OR: QP.ClauseType.ValueType  # 2
    NOR: QP.ClauseType.ValueType  # 3

    @typing_extensions.final
    class Filter(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        FILTERNAME_FIELD_NUMBER: builtins.int
        PARAMETERS_FIELD_NUMBER: builtins.int
        FILTERRESULT_FIELD_NUMBER: builtins.int
        CLIENTNOTSUPPORTEDCONFIG_FIELD_NUMBER: builtins.int
        filterName: builtins.str
        @property
        def parameters(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___QP.FilterParameters
        ]: ...
        filterResult: global___QP.FilterResult.ValueType
        clientNotSupportedConfig: global___QP.FilterClientNotSupportedConfig.ValueType
        def __init__(
            self,
            *,
            filterName: builtins.str | None = ...,
            parameters: collections.abc.Iterable[global___QP.FilterParameters]
            | None = ...,
            filterResult: global___QP.FilterResult.ValueType | None = ...,
            clientNotSupportedConfig: global___QP.FilterClientNotSupportedConfig.ValueType
            | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal[
                "clientNotSupportedConfig",
                b"clientNotSupportedConfig",
                "filterName",
                b"filterName",
                "filterResult",
                b"filterResult",
            ],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "clientNotSupportedConfig",
                b"clientNotSupportedConfig",
                "filterName",
                b"filterName",
                "filterResult",
                b"filterResult",
                "parameters",
                b"parameters",
            ],
        ) -> None: ...

    @typing_extensions.final
    class FilterParameters(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 | None = ...,
            value: builtins.str | None = ...,
        ) -> None: ...
        def HasField(
            self,
            field_name: typing_extensions.Literal["key", b"key", "value", b"value"],
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal["key", b"key", "value", b"value"],
        ) -> None: ...

    @typing_extensions.final
    class FilterClause(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        CLAUSETYPE_FIELD_NUMBER: builtins.int
        CLAUSES_FIELD_NUMBER: builtins.int
        FILTERS_FIELD_NUMBER: builtins.int
        clauseType: global___QP.ClauseType.ValueType
        @property
        def clauses(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___QP.FilterClause
        ]: ...
        @property
        def filters(
            self,
        ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
            global___QP.Filter
        ]: ...
        def __init__(
            self,
            *,
            clauseType: global___QP.ClauseType.ValueType | None = ...,
            clauses: collections.abc.Iterable[global___QP.FilterClause] | None = ...,
            filters: collections.abc.Iterable[global___QP.Filter] | None = ...,
        ) -> None: ...
        def HasField(
            self, field_name: typing_extensions.Literal["clauseType", b"clauseType"]
        ) -> builtins.bool: ...
        def ClearField(
            self,
            field_name: typing_extensions.Literal[
                "clauseType",
                b"clauseType",
                "clauses",
                b"clauses",
                "filters",
                b"filters",
            ],
        ) -> None: ...

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

global___QP = QP
