"""
@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
import waCommon.WACommon_pb2

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

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

class _BotMetricsEntryPointEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_BotMetricsEntryPoint.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    FAVICON: _BotMetricsEntryPoint.ValueType  # 1
    CHATLIST: _BotMetricsEntryPoint.ValueType  # 2
    AISEARCH_NULL_STATE_PAPER_PLANE: _BotMetricsEntryPoint.ValueType  # 3
    AISEARCH_NULL_STATE_SUGGESTION: _BotMetricsEntryPoint.ValueType  # 4
    AISEARCH_TYPE_AHEAD_SUGGESTION: _BotMetricsEntryPoint.ValueType  # 5
    AISEARCH_TYPE_AHEAD_PAPER_PLANE: _BotMetricsEntryPoint.ValueType  # 6
    AISEARCH_TYPE_AHEAD_RESULT_CHATLIST: _BotMetricsEntryPoint.ValueType  # 7
    AISEARCH_TYPE_AHEAD_RESULT_MESSAGES: _BotMetricsEntryPoint.ValueType  # 8
    AIVOICE_SEARCH_BAR: _BotMetricsEntryPoint.ValueType  # 9
    AIVOICE_FAVICON: _BotMetricsEntryPoint.ValueType  # 10
    AISTUDIO: _BotMetricsEntryPoint.ValueType  # 11
    DEEPLINK: _BotMetricsEntryPoint.ValueType  # 12
    NOTIFICATION: _BotMetricsEntryPoint.ValueType  # 13
    PROFILE_MESSAGE_BUTTON: _BotMetricsEntryPoint.ValueType  # 14
    FORWARD: _BotMetricsEntryPoint.ValueType  # 15
    APP_SHORTCUT: _BotMetricsEntryPoint.ValueType  # 16
    FF_FAMILY: _BotMetricsEntryPoint.ValueType  # 17
    AI_TAB: _BotMetricsEntryPoint.ValueType  # 18
    AI_HOME: _BotMetricsEntryPoint.ValueType  # 19
    AI_DEEPLINK_IMMERSIVE: _BotMetricsEntryPoint.ValueType  # 20
    AI_DEEPLINK: _BotMetricsEntryPoint.ValueType  # 21
    META_AI_CHAT_SHORTCUT_AI_STUDIO: _BotMetricsEntryPoint.ValueType  # 22
    UGC_CHAT_SHORTCUT_AI_STUDIO: _BotMetricsEntryPoint.ValueType  # 23
    NEW_CHAT_AI_STUDIO: _BotMetricsEntryPoint.ValueType  # 24
    AIVOICE_FAVICON_CALL_HISTORY: _BotMetricsEntryPoint.ValueType  # 25
    ASK_META_AI_CONTEXT_MENU: _BotMetricsEntryPoint.ValueType  # 26
    ASK_META_AI_CONTEXT_MENU_1ON1: _BotMetricsEntryPoint.ValueType  # 27
    ASK_META_AI_CONTEXT_MENU_GROUP: _BotMetricsEntryPoint.ValueType  # 28
    INVOKE_META_AI_1ON1: _BotMetricsEntryPoint.ValueType  # 29
    INVOKE_META_AI_GROUP: _BotMetricsEntryPoint.ValueType  # 30
    META_AI_FORWARD: _BotMetricsEntryPoint.ValueType  # 31
    NEW_CHAT_AI_CONTACT: _BotMetricsEntryPoint.ValueType  # 32

class BotMetricsEntryPoint(_BotMetricsEntryPoint, metaclass=_BotMetricsEntryPointEnumTypeWrapper): ...

FAVICON: BotMetricsEntryPoint.ValueType  # 1
CHATLIST: BotMetricsEntryPoint.ValueType  # 2
AISEARCH_NULL_STATE_PAPER_PLANE: BotMetricsEntryPoint.ValueType  # 3
AISEARCH_NULL_STATE_SUGGESTION: BotMetricsEntryPoint.ValueType  # 4
AISEARCH_TYPE_AHEAD_SUGGESTION: BotMetricsEntryPoint.ValueType  # 5
AISEARCH_TYPE_AHEAD_PAPER_PLANE: BotMetricsEntryPoint.ValueType  # 6
AISEARCH_TYPE_AHEAD_RESULT_CHATLIST: BotMetricsEntryPoint.ValueType  # 7
AISEARCH_TYPE_AHEAD_RESULT_MESSAGES: BotMetricsEntryPoint.ValueType  # 8
AIVOICE_SEARCH_BAR: BotMetricsEntryPoint.ValueType  # 9
AIVOICE_FAVICON: BotMetricsEntryPoint.ValueType  # 10
AISTUDIO: BotMetricsEntryPoint.ValueType  # 11
DEEPLINK: BotMetricsEntryPoint.ValueType  # 12
NOTIFICATION: BotMetricsEntryPoint.ValueType  # 13
PROFILE_MESSAGE_BUTTON: BotMetricsEntryPoint.ValueType  # 14
FORWARD: BotMetricsEntryPoint.ValueType  # 15
APP_SHORTCUT: BotMetricsEntryPoint.ValueType  # 16
FF_FAMILY: BotMetricsEntryPoint.ValueType  # 17
AI_TAB: BotMetricsEntryPoint.ValueType  # 18
AI_HOME: BotMetricsEntryPoint.ValueType  # 19
AI_DEEPLINK_IMMERSIVE: BotMetricsEntryPoint.ValueType  # 20
AI_DEEPLINK: BotMetricsEntryPoint.ValueType  # 21
META_AI_CHAT_SHORTCUT_AI_STUDIO: BotMetricsEntryPoint.ValueType  # 22
UGC_CHAT_SHORTCUT_AI_STUDIO: BotMetricsEntryPoint.ValueType  # 23
NEW_CHAT_AI_STUDIO: BotMetricsEntryPoint.ValueType  # 24
AIVOICE_FAVICON_CALL_HISTORY: BotMetricsEntryPoint.ValueType  # 25
ASK_META_AI_CONTEXT_MENU: BotMetricsEntryPoint.ValueType  # 26
ASK_META_AI_CONTEXT_MENU_1ON1: BotMetricsEntryPoint.ValueType  # 27
ASK_META_AI_CONTEXT_MENU_GROUP: BotMetricsEntryPoint.ValueType  # 28
INVOKE_META_AI_1ON1: BotMetricsEntryPoint.ValueType  # 29
INVOKE_META_AI_GROUP: BotMetricsEntryPoint.ValueType  # 30
META_AI_FORWARD: BotMetricsEntryPoint.ValueType  # 31
NEW_CHAT_AI_CONTACT: BotMetricsEntryPoint.ValueType  # 32
global___BotMetricsEntryPoint = BotMetricsEntryPoint

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

class _BotMetricsThreadEntryPointEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_BotMetricsThreadEntryPoint.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    AI_TAB_THREAD: _BotMetricsThreadEntryPoint.ValueType  # 1
    AI_HOME_THREAD: _BotMetricsThreadEntryPoint.ValueType  # 2
    AI_DEEPLINK_IMMERSIVE_THREAD: _BotMetricsThreadEntryPoint.ValueType  # 3
    AI_DEEPLINK_THREAD: _BotMetricsThreadEntryPoint.ValueType  # 4
    ASK_META_AI_CONTEXT_MENU_THREAD: _BotMetricsThreadEntryPoint.ValueType  # 5

class BotMetricsThreadEntryPoint(_BotMetricsThreadEntryPoint, metaclass=_BotMetricsThreadEntryPointEnumTypeWrapper): ...

AI_TAB_THREAD: BotMetricsThreadEntryPoint.ValueType  # 1
AI_HOME_THREAD: BotMetricsThreadEntryPoint.ValueType  # 2
AI_DEEPLINK_IMMERSIVE_THREAD: BotMetricsThreadEntryPoint.ValueType  # 3
AI_DEEPLINK_THREAD: BotMetricsThreadEntryPoint.ValueType  # 4
ASK_META_AI_CONTEXT_MENU_THREAD: BotMetricsThreadEntryPoint.ValueType  # 5
global___BotMetricsThreadEntryPoint = BotMetricsThreadEntryPoint

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

class _BotSessionSourceEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_BotSessionSource.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    NONE: _BotSessionSource.ValueType  # 0
    NULL_STATE: _BotSessionSource.ValueType  # 1
    TYPEAHEAD: _BotSessionSource.ValueType  # 2
    USER_INPUT: _BotSessionSource.ValueType  # 3
    EMU_FLASH: _BotSessionSource.ValueType  # 4
    EMU_FLASH_FOLLOWUP: _BotSessionSource.ValueType  # 5
    VOICE: _BotSessionSource.ValueType  # 6

class BotSessionSource(_BotSessionSource, metaclass=_BotSessionSourceEnumTypeWrapper): ...

NONE: BotSessionSource.ValueType  # 0
NULL_STATE: BotSessionSource.ValueType  # 1
TYPEAHEAD: BotSessionSource.ValueType  # 2
USER_INPUT: BotSessionSource.ValueType  # 3
EMU_FLASH: BotSessionSource.ValueType  # 4
EMU_FLASH_FOLLOWUP: BotSessionSource.ValueType  # 5
VOICE: BotSessionSource.ValueType  # 6
global___BotSessionSource = BotSessionSource

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

    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
        UNKNOWN_PLUGIN: BotPluginMetadata._PluginType.ValueType  # 0
        REELS: BotPluginMetadata._PluginType.ValueType  # 1
        SEARCH: BotPluginMetadata._PluginType.ValueType  # 2

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

    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
        UNKNOWN: BotPluginMetadata._SearchProvider.ValueType  # 0
        BING: BotPluginMetadata._SearchProvider.ValueType  # 1
        GOOGLE: BotPluginMetadata._SearchProvider.ValueType  # 2
        SUPPORT: BotPluginMetadata._SearchProvider.ValueType  # 3

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

    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
    EXPECTEDLINKSCOUNT_FIELD_NUMBER: builtins.int
    SEARCHQUERY_FIELD_NUMBER: builtins.int
    PARENTPLUGINMESSAGEKEY_FIELD_NUMBER: builtins.int
    DEPRECATEDFIELD_FIELD_NUMBER: builtins.int
    PARENTPLUGINTYPE_FIELD_NUMBER: builtins.int
    FAVICONCDNURL_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
    expectedLinksCount: builtins.int
    searchQuery: builtins.str
    deprecatedField: global___BotPluginMetadata.PluginType.ValueType
    parentPluginType: global___BotPluginMetadata.PluginType.ValueType
    faviconCDNURL: builtins.str
    @property
    def parentPluginMessageKey(self) -> waCommon.WACommon_pb2.MessageKey: ...
    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 = ...,
        expectedLinksCount: builtins.int | None = ...,
        searchQuery: builtins.str | None = ...,
        parentPluginMessageKey: waCommon.WACommon_pb2.MessageKey | None = ...,
        deprecatedField: global___BotPluginMetadata.PluginType.ValueType | None = ...,
        parentPluginType: global___BotPluginMetadata.PluginType.ValueType | None = ...,
        faviconCDNURL: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["deprecatedField", b"deprecatedField", "expectedLinksCount", b"expectedLinksCount", "faviconCDNURL", b"faviconCDNURL", "parentPluginMessageKey", b"parentPluginMessageKey", "parentPluginType", b"parentPluginType", "pluginType", b"pluginType", "profilePhotoCDNURL", b"profilePhotoCDNURL", "provider", b"provider", "referenceIndex", b"referenceIndex", "searchProviderURL", b"searchProviderURL", "searchQuery", b"searchQuery", "thumbnailCDNURL", b"thumbnailCDNURL"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["deprecatedField", b"deprecatedField", "expectedLinksCount", b"expectedLinksCount", "faviconCDNURL", b"faviconCDNURL", "parentPluginMessageKey", b"parentPluginMessageKey", "parentPluginType", b"parentPluginType", "pluginType", b"pluginType", "profilePhotoCDNURL", b"profilePhotoCDNURL", "provider", b"provider", "referenceIndex", b"referenceIndex", "searchProviderURL", b"searchProviderURL", "searchQuery", b"searchQuery", "thumbnailCDNURL", b"thumbnailCDNURL"]) -> None: ...

global___BotPluginMetadata = BotPluginMetadata

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

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

    class _BotLinkedAccountTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotLinkedAccount._BotLinkedAccountType.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        BOT_LINKED_ACCOUNT_TYPE_1P: BotLinkedAccount._BotLinkedAccountType.ValueType  # 0

    class BotLinkedAccountType(_BotLinkedAccountType, metaclass=_BotLinkedAccountTypeEnumTypeWrapper): ...
    BOT_LINKED_ACCOUNT_TYPE_1P: BotLinkedAccount.BotLinkedAccountType.ValueType  # 0

    TYPE_FIELD_NUMBER: builtins.int
    type: global___BotLinkedAccount.BotLinkedAccountType.ValueType
    def __init__(
        self,
        *,
        type: global___BotLinkedAccount.BotLinkedAccountType.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["type", b"type"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["type", b"type"]) -> None: ...

global___BotLinkedAccount = BotLinkedAccount

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

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

    class _BotSignatureUseCaseEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotSignatureVerificationUseCaseProof._BotSignatureUseCase.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        WA_BOT_MSG: BotSignatureVerificationUseCaseProof._BotSignatureUseCase.ValueType  # 0

    class BotSignatureUseCase(_BotSignatureUseCase, metaclass=_BotSignatureUseCaseEnumTypeWrapper): ...
    WA_BOT_MSG: BotSignatureVerificationUseCaseProof.BotSignatureUseCase.ValueType  # 0

    VERSION_FIELD_NUMBER: builtins.int
    USECASE_FIELD_NUMBER: builtins.int
    SIGNATURE_FIELD_NUMBER: builtins.int
    CERTIFICATECHAIN_FIELD_NUMBER: builtins.int
    version: builtins.int
    useCase: global___BotSignatureVerificationUseCaseProof.BotSignatureUseCase.ValueType
    signature: builtins.bytes
    certificateChain: builtins.bytes
    def __init__(
        self,
        *,
        version: builtins.int | None = ...,
        useCase: global___BotSignatureVerificationUseCaseProof.BotSignatureUseCase.ValueType | None = ...,
        signature: builtins.bytes | None = ...,
        certificateChain: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["certificateChain", b"certificateChain", "signature", b"signature", "useCase", b"useCase", "version", b"version"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["certificateChain", b"certificateChain", "signature", b"signature", "useCase", b"useCase", "version", b"version"]) -> None: ...

global___BotSignatureVerificationUseCaseProof = BotSignatureVerificationUseCaseProof

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

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

    class _BotPromotionTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotPromotionMessageMetadata._BotPromotionType.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN_TYPE: BotPromotionMessageMetadata._BotPromotionType.ValueType  # 0
        C50: BotPromotionMessageMetadata._BotPromotionType.ValueType  # 1
        SURVEY_PLATFORM: BotPromotionMessageMetadata._BotPromotionType.ValueType  # 2

    class BotPromotionType(_BotPromotionType, metaclass=_BotPromotionTypeEnumTypeWrapper): ...
    UNKNOWN_TYPE: BotPromotionMessageMetadata.BotPromotionType.ValueType  # 0
    C50: BotPromotionMessageMetadata.BotPromotionType.ValueType  # 1
    SURVEY_PLATFORM: BotPromotionMessageMetadata.BotPromotionType.ValueType  # 2

    PROMOTIONTYPE_FIELD_NUMBER: builtins.int
    BUTTONTITLE_FIELD_NUMBER: builtins.int
    promotionType: global___BotPromotionMessageMetadata.BotPromotionType.ValueType
    buttonTitle: builtins.str
    def __init__(
        self,
        *,
        promotionType: global___BotPromotionMessageMetadata.BotPromotionType.ValueType | None = ...,
        buttonTitle: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["buttonTitle", b"buttonTitle", "promotionType", b"promotionType"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["buttonTitle", b"buttonTitle", "promotionType", b"promotionType"]) -> None: ...

global___BotPromotionMessageMetadata = BotPromotionMessageMetadata

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

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

    class _OrientationTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotMediaMetadata._OrientationType.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        CENTER: BotMediaMetadata._OrientationType.ValueType  # 1
        LEFT: BotMediaMetadata._OrientationType.ValueType  # 2
        RIGHT: BotMediaMetadata._OrientationType.ValueType  # 3

    class OrientationType(_OrientationType, metaclass=_OrientationTypeEnumTypeWrapper): ...
    CENTER: BotMediaMetadata.OrientationType.ValueType  # 1
    LEFT: BotMediaMetadata.OrientationType.ValueType  # 2
    RIGHT: BotMediaMetadata.OrientationType.ValueType  # 3

    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
    MIMETYPE_FIELD_NUMBER: builtins.int
    ORIENTATIONTYPE_FIELD_NUMBER: builtins.int
    fileSHA256: builtins.str
    mediaKey: builtins.str
    fileEncSHA256: builtins.str
    directPath: builtins.str
    mediaKeyTimestamp: builtins.int
    mimetype: builtins.str
    orientationType: global___BotMediaMetadata.OrientationType.ValueType
    def __init__(
        self,
        *,
        fileSHA256: builtins.str | None = ...,
        mediaKey: builtins.str | None = ...,
        fileEncSHA256: builtins.str | None = ...,
        directPath: builtins.str | None = ...,
        mediaKeyTimestamp: builtins.int | None = ...,
        mimetype: builtins.str | None = ...,
        orientationType: global___BotMediaMetadata.OrientationType.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["directPath", b"directPath", "fileEncSHA256", b"fileEncSHA256", "fileSHA256", b"fileSHA256", "mediaKey", b"mediaKey", "mediaKeyTimestamp", b"mediaKeyTimestamp", "mimetype", b"mimetype", "orientationType", b"orientationType"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["directPath", b"directPath", "fileEncSHA256", b"fileEncSHA256", "fileSHA256", b"fileSHA256", "mediaKey", b"mediaKey", "mediaKeyTimestamp", b"mediaKeyTimestamp", "mimetype", b"mimetype", "orientationType", b"orientationType"]) -> None: ...

global___BotMediaMetadata = BotMediaMetadata

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

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

    class _ReminderFrequencyEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotReminderMetadata._ReminderFrequency.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        ONCE: BotReminderMetadata._ReminderFrequency.ValueType  # 1
        DAILY: BotReminderMetadata._ReminderFrequency.ValueType  # 2
        WEEKLY: BotReminderMetadata._ReminderFrequency.ValueType  # 3
        BIWEEKLY: BotReminderMetadata._ReminderFrequency.ValueType  # 4
        MONTHLY: BotReminderMetadata._ReminderFrequency.ValueType  # 5

    class ReminderFrequency(_ReminderFrequency, metaclass=_ReminderFrequencyEnumTypeWrapper): ...
    ONCE: BotReminderMetadata.ReminderFrequency.ValueType  # 1
    DAILY: BotReminderMetadata.ReminderFrequency.ValueType  # 2
    WEEKLY: BotReminderMetadata.ReminderFrequency.ValueType  # 3
    BIWEEKLY: BotReminderMetadata.ReminderFrequency.ValueType  # 4
    MONTHLY: BotReminderMetadata.ReminderFrequency.ValueType  # 5

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

    class _ReminderActionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotReminderMetadata._ReminderAction.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        NOTIFY: BotReminderMetadata._ReminderAction.ValueType  # 1
        CREATE: BotReminderMetadata._ReminderAction.ValueType  # 2
        DELETE: BotReminderMetadata._ReminderAction.ValueType  # 3
        UPDATE: BotReminderMetadata._ReminderAction.ValueType  # 4

    class ReminderAction(_ReminderAction, metaclass=_ReminderActionEnumTypeWrapper): ...
    NOTIFY: BotReminderMetadata.ReminderAction.ValueType  # 1
    CREATE: BotReminderMetadata.ReminderAction.ValueType  # 2
    DELETE: BotReminderMetadata.ReminderAction.ValueType  # 3
    UPDATE: BotReminderMetadata.ReminderAction.ValueType  # 4

    REQUESTMESSAGEKEY_FIELD_NUMBER: builtins.int
    ACTION_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    NEXTTRIGGERTIMESTAMP_FIELD_NUMBER: builtins.int
    FREQUENCY_FIELD_NUMBER: builtins.int
    action: global___BotReminderMetadata.ReminderAction.ValueType
    name: builtins.str
    nextTriggerTimestamp: builtins.int
    frequency: global___BotReminderMetadata.ReminderFrequency.ValueType
    @property
    def requestMessageKey(self) -> waCommon.WACommon_pb2.MessageKey: ...
    def __init__(
        self,
        *,
        requestMessageKey: waCommon.WACommon_pb2.MessageKey | None = ...,
        action: global___BotReminderMetadata.ReminderAction.ValueType | None = ...,
        name: builtins.str | None = ...,
        nextTriggerTimestamp: builtins.int | None = ...,
        frequency: global___BotReminderMetadata.ReminderFrequency.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["action", b"action", "frequency", b"frequency", "name", b"name", "nextTriggerTimestamp", b"nextTriggerTimestamp", "requestMessageKey", b"requestMessageKey"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["action", b"action", "frequency", b"frequency", "name", b"name", "nextTriggerTimestamp", b"nextTriggerTimestamp", "requestMessageKey", b"requestMessageKey"]) -> None: ...

global___BotReminderMetadata = BotReminderMetadata

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

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

    class _PremiumModelStatusEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotModelMetadata._PremiumModelStatus.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN_STATUS: BotModelMetadata._PremiumModelStatus.ValueType  # 0
        AVAILABLE: BotModelMetadata._PremiumModelStatus.ValueType  # 1
        QUOTA_EXCEED_LIMIT: BotModelMetadata._PremiumModelStatus.ValueType  # 2

    class PremiumModelStatus(_PremiumModelStatus, metaclass=_PremiumModelStatusEnumTypeWrapper): ...
    UNKNOWN_STATUS: BotModelMetadata.PremiumModelStatus.ValueType  # 0
    AVAILABLE: BotModelMetadata.PremiumModelStatus.ValueType  # 1
    QUOTA_EXCEED_LIMIT: BotModelMetadata.PremiumModelStatus.ValueType  # 2

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

    class _ModelTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotModelMetadata._ModelType.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN_TYPE: BotModelMetadata._ModelType.ValueType  # 0
        LLAMA_PROD: BotModelMetadata._ModelType.ValueType  # 1
        LLAMA_PROD_PREMIUM: BotModelMetadata._ModelType.ValueType  # 2

    class ModelType(_ModelType, metaclass=_ModelTypeEnumTypeWrapper): ...
    UNKNOWN_TYPE: BotModelMetadata.ModelType.ValueType  # 0
    LLAMA_PROD: BotModelMetadata.ModelType.ValueType  # 1
    LLAMA_PROD_PREMIUM: BotModelMetadata.ModelType.ValueType  # 2

    MODELTYPE_FIELD_NUMBER: builtins.int
    PREMIUMMODELSTATUS_FIELD_NUMBER: builtins.int
    modelType: global___BotModelMetadata.ModelType.ValueType
    premiumModelStatus: global___BotModelMetadata.PremiumModelStatus.ValueType
    def __init__(
        self,
        *,
        modelType: global___BotModelMetadata.ModelType.ValueType | None = ...,
        premiumModelStatus: global___BotModelMetadata.PremiumModelStatus.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["modelType", b"modelType", "premiumModelStatus", b"premiumModelStatus"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["modelType", b"modelType", "premiumModelStatus", b"premiumModelStatus"]) -> None: ...

global___BotModelMetadata = BotModelMetadata

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

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

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

        class _BotSearchSourceProviderEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotProgressIndicatorMetadata.BotPlanningStepMetadata._BotSearchSourceProvider.ValueType], builtins.type):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN_PROVIDER: BotProgressIndicatorMetadata.BotPlanningStepMetadata._BotSearchSourceProvider.ValueType  # 0
            OTHER: BotProgressIndicatorMetadata.BotPlanningStepMetadata._BotSearchSourceProvider.ValueType  # 1
            GOOGLE: BotProgressIndicatorMetadata.BotPlanningStepMetadata._BotSearchSourceProvider.ValueType  # 2
            BING: BotProgressIndicatorMetadata.BotPlanningStepMetadata._BotSearchSourceProvider.ValueType  # 3

        class BotSearchSourceProvider(_BotSearchSourceProvider, metaclass=_BotSearchSourceProviderEnumTypeWrapper): ...
        UNKNOWN_PROVIDER: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider.ValueType  # 0
        OTHER: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider.ValueType  # 1
        GOOGLE: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider.ValueType  # 2
        BING: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider.ValueType  # 3

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

        class _PlanningStepStatusEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotProgressIndicatorMetadata.BotPlanningStepMetadata._PlanningStepStatus.ValueType], builtins.type):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN: BotProgressIndicatorMetadata.BotPlanningStepMetadata._PlanningStepStatus.ValueType  # 0
            PLANNED: BotProgressIndicatorMetadata.BotPlanningStepMetadata._PlanningStepStatus.ValueType  # 1
            EXECUTING: BotProgressIndicatorMetadata.BotPlanningStepMetadata._PlanningStepStatus.ValueType  # 2
            FINISHED: BotProgressIndicatorMetadata.BotPlanningStepMetadata._PlanningStepStatus.ValueType  # 3

        class PlanningStepStatus(_PlanningStepStatus, metaclass=_PlanningStepStatusEnumTypeWrapper): ...
        UNKNOWN: BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus.ValueType  # 0
        PLANNED: BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus.ValueType  # 1
        EXECUTING: BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus.ValueType  # 2
        FINISHED: BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus.ValueType  # 3

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

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

            class _BotPlanningSearchSourceProviderEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata._BotPlanningSearchSourceProvider.ValueType], builtins.type):
                DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
                UNKNOWN: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata._BotPlanningSearchSourceProvider.ValueType  # 0
                OTHER: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata._BotPlanningSearchSourceProvider.ValueType  # 1
                GOOGLE: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata._BotPlanningSearchSourceProvider.ValueType  # 2
                BING: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata._BotPlanningSearchSourceProvider.ValueType  # 3

            class BotPlanningSearchSourceProvider(_BotPlanningSearchSourceProvider, metaclass=_BotPlanningSearchSourceProviderEnumTypeWrapper): ...
            UNKNOWN: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider.ValueType  # 0
            OTHER: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider.ValueType  # 1
            GOOGLE: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider.ValueType  # 2
            BING: BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider.ValueType  # 3

            SOURCETITLE_FIELD_NUMBER: builtins.int
            PROVIDER_FIELD_NUMBER: builtins.int
            SOURCEURL_FIELD_NUMBER: builtins.int
            sourceTitle: builtins.str
            provider: global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider.ValueType
            sourceURL: builtins.str
            def __init__(
                self,
                *,
                sourceTitle: builtins.str | None = ...,
                provider: global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata.BotPlanningSearchSourceProvider.ValueType | None = ...,
                sourceURL: builtins.str | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["provider", b"provider", "sourceTitle", b"sourceTitle", "sourceURL", b"sourceURL"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["provider", b"provider", "sourceTitle", b"sourceTitle", "sourceURL", b"sourceURL"]) -> None: ...

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

            SECTIONTITLE_FIELD_NUMBER: builtins.int
            SECTIONBODY_FIELD_NUMBER: builtins.int
            SOURCESMETADATA_FIELD_NUMBER: builtins.int
            sectionTitle: builtins.str
            sectionBody: builtins.str
            @property
            def sourcesMetadata(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourceMetadata]: ...
            def __init__(
                self,
                *,
                sectionTitle: builtins.str | None = ...,
                sectionBody: builtins.str | None = ...,
                sourcesMetadata: collections.abc.Iterable[global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourceMetadata] | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["sectionBody", b"sectionBody", "sectionTitle", b"sectionTitle"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["sectionBody", b"sectionBody", "sectionTitle", b"sectionTitle", "sourcesMetadata", b"sourcesMetadata"]) -> None: ...

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

            TITLE_FIELD_NUMBER: builtins.int
            PROVIDER_FIELD_NUMBER: builtins.int
            SOURCEURL_FIELD_NUMBER: builtins.int
            FAVICONURL_FIELD_NUMBER: builtins.int
            title: builtins.str
            provider: global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider.ValueType
            sourceURL: builtins.str
            favIconURL: builtins.str
            def __init__(
                self,
                *,
                title: builtins.str | None = ...,
                provider: global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotSearchSourceProvider.ValueType | None = ...,
                sourceURL: builtins.str | None = ...,
                favIconURL: builtins.str | None = ...,
            ) -> None: ...
            def HasField(self, field_name: typing.Literal["favIconURL", b"favIconURL", "provider", b"provider", "sourceURL", b"sourceURL", "title", b"title"]) -> builtins.bool: ...
            def ClearField(self, field_name: typing.Literal["favIconURL", b"favIconURL", "provider", b"provider", "sourceURL", b"sourceURL", "title", b"title"]) -> None: ...

        STATUSTITLE_FIELD_NUMBER: builtins.int
        STATUSBODY_FIELD_NUMBER: builtins.int
        SOURCESMETADATA_FIELD_NUMBER: builtins.int
        STATUS_FIELD_NUMBER: builtins.int
        ISREASONING_FIELD_NUMBER: builtins.int
        ISENHANCEDSEARCH_FIELD_NUMBER: builtins.int
        SECTIONS_FIELD_NUMBER: builtins.int
        statusTitle: builtins.str
        statusBody: builtins.str
        status: global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus.ValueType
        isReasoning: builtins.bool
        isEnhancedSearch: builtins.bool
        @property
        def sourcesMetadata(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata]: ...
        @property
        def sections(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningStepSectionMetadata]: ...
        def __init__(
            self,
            *,
            statusTitle: builtins.str | None = ...,
            statusBody: builtins.str | None = ...,
            sourcesMetadata: collections.abc.Iterable[global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningSearchSourcesMetadata] | None = ...,
            status: global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.PlanningStepStatus.ValueType | None = ...,
            isReasoning: builtins.bool | None = ...,
            isEnhancedSearch: builtins.bool | None = ...,
            sections: collections.abc.Iterable[global___BotProgressIndicatorMetadata.BotPlanningStepMetadata.BotPlanningStepSectionMetadata] | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["isEnhancedSearch", b"isEnhancedSearch", "isReasoning", b"isReasoning", "status", b"status", "statusBody", b"statusBody", "statusTitle", b"statusTitle"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["isEnhancedSearch", b"isEnhancedSearch", "isReasoning", b"isReasoning", "sections", b"sections", "sourcesMetadata", b"sourcesMetadata", "status", b"status", "statusBody", b"statusBody", "statusTitle", b"statusTitle"]) -> None: ...

    PROGRESSDESCRIPTION_FIELD_NUMBER: builtins.int
    STEPSMETADATA_FIELD_NUMBER: builtins.int
    progressDescription: builtins.str
    @property
    def stepsMetadata(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotProgressIndicatorMetadata.BotPlanningStepMetadata]: ...
    def __init__(
        self,
        *,
        progressDescription: builtins.str | None = ...,
        stepsMetadata: collections.abc.Iterable[global___BotProgressIndicatorMetadata.BotPlanningStepMetadata] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["progressDescription", b"progressDescription"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["progressDescription", b"progressDescription", "stepsMetadata", b"stepsMetadata"]) -> None: ...

global___BotProgressIndicatorMetadata = BotProgressIndicatorMetadata

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

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

    class _BotCapabilityTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotCapabilityMetadata._BotCapabilityType.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: BotCapabilityMetadata._BotCapabilityType.ValueType  # 0
        PROGRESS_INDICATOR: BotCapabilityMetadata._BotCapabilityType.ValueType  # 1
        RICH_RESPONSE_HEADING: BotCapabilityMetadata._BotCapabilityType.ValueType  # 2
        RICH_RESPONSE_NESTED_LIST: BotCapabilityMetadata._BotCapabilityType.ValueType  # 3
        AI_MEMORY: BotCapabilityMetadata._BotCapabilityType.ValueType  # 4
        RICH_RESPONSE_THREAD_SURFING: BotCapabilityMetadata._BotCapabilityType.ValueType  # 5
        RICH_RESPONSE_TABLE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 6
        RICH_RESPONSE_CODE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 7
        RICH_RESPONSE_STRUCTURED_RESPONSE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 8
        RICH_RESPONSE_INLINE_IMAGE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 9
        WA_IG_1P_PLUGIN_RANKING_CONTROL: BotCapabilityMetadata._BotCapabilityType.ValueType  # 10
        WA_IG_1P_PLUGIN_RANKING_UPDATE_1: BotCapabilityMetadata._BotCapabilityType.ValueType  # 11
        WA_IG_1P_PLUGIN_RANKING_UPDATE_2: BotCapabilityMetadata._BotCapabilityType.ValueType  # 12
        WA_IG_1P_PLUGIN_RANKING_UPDATE_3: BotCapabilityMetadata._BotCapabilityType.ValueType  # 13
        WA_IG_1P_PLUGIN_RANKING_UPDATE_4: BotCapabilityMetadata._BotCapabilityType.ValueType  # 14
        WA_IG_1P_PLUGIN_RANKING_UPDATE_5: BotCapabilityMetadata._BotCapabilityType.ValueType  # 15
        WA_IG_1P_PLUGIN_RANKING_UPDATE_6: BotCapabilityMetadata._BotCapabilityType.ValueType  # 16
        WA_IG_1P_PLUGIN_RANKING_UPDATE_7: BotCapabilityMetadata._BotCapabilityType.ValueType  # 17
        WA_IG_1P_PLUGIN_RANKING_UPDATE_8: BotCapabilityMetadata._BotCapabilityType.ValueType  # 18
        WA_IG_1P_PLUGIN_RANKING_UPDATE_9: BotCapabilityMetadata._BotCapabilityType.ValueType  # 19
        WA_IG_1P_PLUGIN_RANKING_UPDATE_10: BotCapabilityMetadata._BotCapabilityType.ValueType  # 20
        RICH_RESPONSE_SUB_HEADING: BotCapabilityMetadata._BotCapabilityType.ValueType  # 21
        RICH_RESPONSE_GRID_IMAGE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 22
        AI_STUDIO_UGC_MEMORY: BotCapabilityMetadata._BotCapabilityType.ValueType  # 23
        RICH_RESPONSE_LATEX: BotCapabilityMetadata._BotCapabilityType.ValueType  # 24
        RICH_RESPONSE_MAPS: BotCapabilityMetadata._BotCapabilityType.ValueType  # 25
        RICH_RESPONSE_INLINE_REELS: BotCapabilityMetadata._BotCapabilityType.ValueType  # 26
        AGENTIC_PLANNING: BotCapabilityMetadata._BotCapabilityType.ValueType  # 27
        ACCOUNT_LINKING: BotCapabilityMetadata._BotCapabilityType.ValueType  # 28
        STREAMING_DISAGGREGATION: BotCapabilityMetadata._BotCapabilityType.ValueType  # 29
        RICH_RESPONSE_GRID_IMAGE_3P: BotCapabilityMetadata._BotCapabilityType.ValueType  # 30
        RICH_RESPONSE_LATEX_INLINE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 31
        QUERY_PLAN: BotCapabilityMetadata._BotCapabilityType.ValueType  # 32
        PROACTIVE_MESSAGE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 33
        RICH_RESPONSE_UNIFIED_RESPONSE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 34
        PROMOTION_MESSAGE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 35
        SIMPLIFIED_PROFILE_PAGE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 36
        RICH_RESPONSE_SOURCES_IN_MESSAGE: BotCapabilityMetadata._BotCapabilityType.ValueType  # 37
        RICH_RESPONSE_SIDE_BY_SIDE_SURVEY: BotCapabilityMetadata._BotCapabilityType.ValueType  # 38
        RICH_RESPONSE_UNIFIED_TEXT_COMPONENT: BotCapabilityMetadata._BotCapabilityType.ValueType  # 39
        AI_SHARED_MEMORY: BotCapabilityMetadata._BotCapabilityType.ValueType  # 40
        RICH_RESPONSE_UNIFIED_SOURCES: BotCapabilityMetadata._BotCapabilityType.ValueType  # 41
        RICH_RESPONSE_UNIFIED_DOMAIN_CITATIONS: BotCapabilityMetadata._BotCapabilityType.ValueType  # 42

    class BotCapabilityType(_BotCapabilityType, metaclass=_BotCapabilityTypeEnumTypeWrapper): ...
    UNKNOWN: BotCapabilityMetadata.BotCapabilityType.ValueType  # 0
    PROGRESS_INDICATOR: BotCapabilityMetadata.BotCapabilityType.ValueType  # 1
    RICH_RESPONSE_HEADING: BotCapabilityMetadata.BotCapabilityType.ValueType  # 2
    RICH_RESPONSE_NESTED_LIST: BotCapabilityMetadata.BotCapabilityType.ValueType  # 3
    AI_MEMORY: BotCapabilityMetadata.BotCapabilityType.ValueType  # 4
    RICH_RESPONSE_THREAD_SURFING: BotCapabilityMetadata.BotCapabilityType.ValueType  # 5
    RICH_RESPONSE_TABLE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 6
    RICH_RESPONSE_CODE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 7
    RICH_RESPONSE_STRUCTURED_RESPONSE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 8
    RICH_RESPONSE_INLINE_IMAGE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 9
    WA_IG_1P_PLUGIN_RANKING_CONTROL: BotCapabilityMetadata.BotCapabilityType.ValueType  # 10
    WA_IG_1P_PLUGIN_RANKING_UPDATE_1: BotCapabilityMetadata.BotCapabilityType.ValueType  # 11
    WA_IG_1P_PLUGIN_RANKING_UPDATE_2: BotCapabilityMetadata.BotCapabilityType.ValueType  # 12
    WA_IG_1P_PLUGIN_RANKING_UPDATE_3: BotCapabilityMetadata.BotCapabilityType.ValueType  # 13
    WA_IG_1P_PLUGIN_RANKING_UPDATE_4: BotCapabilityMetadata.BotCapabilityType.ValueType  # 14
    WA_IG_1P_PLUGIN_RANKING_UPDATE_5: BotCapabilityMetadata.BotCapabilityType.ValueType  # 15
    WA_IG_1P_PLUGIN_RANKING_UPDATE_6: BotCapabilityMetadata.BotCapabilityType.ValueType  # 16
    WA_IG_1P_PLUGIN_RANKING_UPDATE_7: BotCapabilityMetadata.BotCapabilityType.ValueType  # 17
    WA_IG_1P_PLUGIN_RANKING_UPDATE_8: BotCapabilityMetadata.BotCapabilityType.ValueType  # 18
    WA_IG_1P_PLUGIN_RANKING_UPDATE_9: BotCapabilityMetadata.BotCapabilityType.ValueType  # 19
    WA_IG_1P_PLUGIN_RANKING_UPDATE_10: BotCapabilityMetadata.BotCapabilityType.ValueType  # 20
    RICH_RESPONSE_SUB_HEADING: BotCapabilityMetadata.BotCapabilityType.ValueType  # 21
    RICH_RESPONSE_GRID_IMAGE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 22
    AI_STUDIO_UGC_MEMORY: BotCapabilityMetadata.BotCapabilityType.ValueType  # 23
    RICH_RESPONSE_LATEX: BotCapabilityMetadata.BotCapabilityType.ValueType  # 24
    RICH_RESPONSE_MAPS: BotCapabilityMetadata.BotCapabilityType.ValueType  # 25
    RICH_RESPONSE_INLINE_REELS: BotCapabilityMetadata.BotCapabilityType.ValueType  # 26
    AGENTIC_PLANNING: BotCapabilityMetadata.BotCapabilityType.ValueType  # 27
    ACCOUNT_LINKING: BotCapabilityMetadata.BotCapabilityType.ValueType  # 28
    STREAMING_DISAGGREGATION: BotCapabilityMetadata.BotCapabilityType.ValueType  # 29
    RICH_RESPONSE_GRID_IMAGE_3P: BotCapabilityMetadata.BotCapabilityType.ValueType  # 30
    RICH_RESPONSE_LATEX_INLINE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 31
    QUERY_PLAN: BotCapabilityMetadata.BotCapabilityType.ValueType  # 32
    PROACTIVE_MESSAGE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 33
    RICH_RESPONSE_UNIFIED_RESPONSE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 34
    PROMOTION_MESSAGE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 35
    SIMPLIFIED_PROFILE_PAGE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 36
    RICH_RESPONSE_SOURCES_IN_MESSAGE: BotCapabilityMetadata.BotCapabilityType.ValueType  # 37
    RICH_RESPONSE_SIDE_BY_SIDE_SURVEY: BotCapabilityMetadata.BotCapabilityType.ValueType  # 38
    RICH_RESPONSE_UNIFIED_TEXT_COMPONENT: BotCapabilityMetadata.BotCapabilityType.ValueType  # 39
    AI_SHARED_MEMORY: BotCapabilityMetadata.BotCapabilityType.ValueType  # 40
    RICH_RESPONSE_UNIFIED_SOURCES: BotCapabilityMetadata.BotCapabilityType.ValueType  # 41
    RICH_RESPONSE_UNIFIED_DOMAIN_CITATIONS: BotCapabilityMetadata.BotCapabilityType.ValueType  # 42

    CAPABILITIES_FIELD_NUMBER: builtins.int
    @property
    def capabilities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___BotCapabilityMetadata.BotCapabilityType.ValueType]: ...
    def __init__(
        self,
        *,
        capabilities: collections.abc.Iterable[global___BotCapabilityMetadata.BotCapabilityType.ValueType] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["capabilities", b"capabilities"]) -> None: ...

global___BotCapabilityMetadata = BotCapabilityMetadata

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

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

    class _BotUserSelectionModeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotModeSelectionMetadata._BotUserSelectionMode.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN_MODE: BotModeSelectionMetadata._BotUserSelectionMode.ValueType  # 0
        REASONING_MODE: BotModeSelectionMetadata._BotUserSelectionMode.ValueType  # 1

    class BotUserSelectionMode(_BotUserSelectionMode, metaclass=_BotUserSelectionModeEnumTypeWrapper): ...
    UNKNOWN_MODE: BotModeSelectionMetadata.BotUserSelectionMode.ValueType  # 0
    REASONING_MODE: BotModeSelectionMetadata.BotUserSelectionMode.ValueType  # 1

    MODE_FIELD_NUMBER: builtins.int
    @property
    def mode(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[global___BotModeSelectionMetadata.BotUserSelectionMode.ValueType]: ...
    def __init__(
        self,
        *,
        mode: collections.abc.Iterable[global___BotModeSelectionMetadata.BotUserSelectionMode.ValueType] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["mode", b"mode"]) -> None: ...

global___BotModeSelectionMetadata = BotModeSelectionMetadata

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

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

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

        class _BotFeatureTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotQuotaMetadata.BotFeatureQuotaMetadata._BotFeatureType.ValueType], builtins.type):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN_FEATURE: BotQuotaMetadata.BotFeatureQuotaMetadata._BotFeatureType.ValueType  # 0
            REASONING_FEATURE: BotQuotaMetadata.BotFeatureQuotaMetadata._BotFeatureType.ValueType  # 1

        class BotFeatureType(_BotFeatureType, metaclass=_BotFeatureTypeEnumTypeWrapper): ...
        UNKNOWN_FEATURE: BotQuotaMetadata.BotFeatureQuotaMetadata.BotFeatureType.ValueType  # 0
        REASONING_FEATURE: BotQuotaMetadata.BotFeatureQuotaMetadata.BotFeatureType.ValueType  # 1

        FEATURETYPE_FIELD_NUMBER: builtins.int
        REMAININGQUOTA_FIELD_NUMBER: builtins.int
        EXPIRATIONTIMESTAMP_FIELD_NUMBER: builtins.int
        featureType: global___BotQuotaMetadata.BotFeatureQuotaMetadata.BotFeatureType.ValueType
        remainingQuota: builtins.int
        expirationTimestamp: builtins.int
        def __init__(
            self,
            *,
            featureType: global___BotQuotaMetadata.BotFeatureQuotaMetadata.BotFeatureType.ValueType | None = ...,
            remainingQuota: builtins.int | None = ...,
            expirationTimestamp: builtins.int | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["expirationTimestamp", b"expirationTimestamp", "featureType", b"featureType", "remainingQuota", b"remainingQuota"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["expirationTimestamp", b"expirationTimestamp", "featureType", b"featureType", "remainingQuota", b"remainingQuota"]) -> None: ...

    BOTFEATUREQUOTAMETADATA_FIELD_NUMBER: builtins.int
    @property
    def botFeatureQuotaMetadata(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotQuotaMetadata.BotFeatureQuotaMetadata]: ...
    def __init__(
        self,
        *,
        botFeatureQuotaMetadata: collections.abc.Iterable[global___BotQuotaMetadata.BotFeatureQuotaMetadata] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["botFeatureQuotaMetadata", b"botFeatureQuotaMetadata"]) -> None: ...

global___BotQuotaMetadata = BotQuotaMetadata

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

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

    class _ImagineTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotImagineMetadata._ImagineType.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        UNKNOWN: BotImagineMetadata._ImagineType.ValueType  # 0
        IMAGINE: BotImagineMetadata._ImagineType.ValueType  # 1
        MEMU: BotImagineMetadata._ImagineType.ValueType  # 2
        FLASH: BotImagineMetadata._ImagineType.ValueType  # 3
        EDIT: BotImagineMetadata._ImagineType.ValueType  # 4

    class ImagineType(_ImagineType, metaclass=_ImagineTypeEnumTypeWrapper): ...
    UNKNOWN: BotImagineMetadata.ImagineType.ValueType  # 0
    IMAGINE: BotImagineMetadata.ImagineType.ValueType  # 1
    MEMU: BotImagineMetadata.ImagineType.ValueType  # 2
    FLASH: BotImagineMetadata.ImagineType.ValueType  # 3
    EDIT: BotImagineMetadata.ImagineType.ValueType  # 4

    IMAGINETYPE_FIELD_NUMBER: builtins.int
    imagineType: global___BotImagineMetadata.ImagineType.ValueType
    def __init__(
        self,
        *,
        imagineType: global___BotImagineMetadata.ImagineType.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["imagineType", b"imagineType"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["imagineType", b"imagineType"]) -> None: ...

global___BotImagineMetadata = BotImagineMetadata

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

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

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

        class _SourceProviderEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotSourcesMetadata.BotSourceItem._SourceProvider.ValueType], builtins.type):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN: BotSourcesMetadata.BotSourceItem._SourceProvider.ValueType  # 0
            BING: BotSourcesMetadata.BotSourceItem._SourceProvider.ValueType  # 1
            GOOGLE: BotSourcesMetadata.BotSourceItem._SourceProvider.ValueType  # 2
            SUPPORT: BotSourcesMetadata.BotSourceItem._SourceProvider.ValueType  # 3
            OTHER: BotSourcesMetadata.BotSourceItem._SourceProvider.ValueType  # 4

        class SourceProvider(_SourceProvider, metaclass=_SourceProviderEnumTypeWrapper): ...
        UNKNOWN: BotSourcesMetadata.BotSourceItem.SourceProvider.ValueType  # 0
        BING: BotSourcesMetadata.BotSourceItem.SourceProvider.ValueType  # 1
        GOOGLE: BotSourcesMetadata.BotSourceItem.SourceProvider.ValueType  # 2
        SUPPORT: BotSourcesMetadata.BotSourceItem.SourceProvider.ValueType  # 3
        OTHER: BotSourcesMetadata.BotSourceItem.SourceProvider.ValueType  # 4

        PROVIDER_FIELD_NUMBER: builtins.int
        THUMBNAILCDNURL_FIELD_NUMBER: builtins.int
        SOURCEPROVIDERURL_FIELD_NUMBER: builtins.int
        SOURCEQUERY_FIELD_NUMBER: builtins.int
        FAVICONCDNURL_FIELD_NUMBER: builtins.int
        CITATIONNUMBER_FIELD_NUMBER: builtins.int
        SOURCETITLE_FIELD_NUMBER: builtins.int
        provider: global___BotSourcesMetadata.BotSourceItem.SourceProvider.ValueType
        thumbnailCDNURL: builtins.str
        sourceProviderURL: builtins.str
        sourceQuery: builtins.str
        faviconCDNURL: builtins.str
        citationNumber: builtins.int
        sourceTitle: builtins.str
        def __init__(
            self,
            *,
            provider: global___BotSourcesMetadata.BotSourceItem.SourceProvider.ValueType | None = ...,
            thumbnailCDNURL: builtins.str | None = ...,
            sourceProviderURL: builtins.str | None = ...,
            sourceQuery: builtins.str | None = ...,
            faviconCDNURL: builtins.str | None = ...,
            citationNumber: builtins.int | None = ...,
            sourceTitle: builtins.str | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["citationNumber", b"citationNumber", "faviconCDNURL", b"faviconCDNURL", "provider", b"provider", "sourceProviderURL", b"sourceProviderURL", "sourceQuery", b"sourceQuery", "sourceTitle", b"sourceTitle", "thumbnailCDNURL", b"thumbnailCDNURL"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["citationNumber", b"citationNumber", "faviconCDNURL", b"faviconCDNURL", "provider", b"provider", "sourceProviderURL", b"sourceProviderURL", "sourceQuery", b"sourceQuery", "sourceTitle", b"sourceTitle", "thumbnailCDNURL", b"thumbnailCDNURL"]) -> None: ...

    SOURCES_FIELD_NUMBER: builtins.int
    @property
    def sources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotSourcesMetadata.BotSourceItem]: ...
    def __init__(
        self,
        *,
        sources: collections.abc.Iterable[global___BotSourcesMetadata.BotSourceItem] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["sources", b"sources"]) -> None: ...

global___BotSourcesMetadata = BotSourcesMetadata

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

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

    class _BotMessageOriginTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[BotMessageOrigin._BotMessageOriginType.ValueType], builtins.type):
        DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
        BOT_MESSAGE_ORIGIN_TYPE_AI_INITIATED: BotMessageOrigin._BotMessageOriginType.ValueType  # 0

    class BotMessageOriginType(_BotMessageOriginType, metaclass=_BotMessageOriginTypeEnumTypeWrapper): ...
    BOT_MESSAGE_ORIGIN_TYPE_AI_INITIATED: BotMessageOrigin.BotMessageOriginType.ValueType  # 0

    TYPE_FIELD_NUMBER: builtins.int
    type: global___BotMessageOrigin.BotMessageOriginType.ValueType
    def __init__(
        self,
        *,
        type: global___BotMessageOrigin.BotMessageOriginType.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["type", b"type"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["type", b"type"]) -> None: ...

global___BotMessageOrigin = BotMessageOrigin

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

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

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

        class _AIThreadTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[AIThreadInfo.AIThreadClientInfo._AIThreadType.ValueType], builtins.type):
            DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
            UNKNOWN: AIThreadInfo.AIThreadClientInfo._AIThreadType.ValueType  # 0
            DEFAULT: AIThreadInfo.AIThreadClientInfo._AIThreadType.ValueType  # 1
            INCOGNITO: AIThreadInfo.AIThreadClientInfo._AIThreadType.ValueType  # 2

        class AIThreadType(_AIThreadType, metaclass=_AIThreadTypeEnumTypeWrapper): ...
        UNKNOWN: AIThreadInfo.AIThreadClientInfo.AIThreadType.ValueType  # 0
        DEFAULT: AIThreadInfo.AIThreadClientInfo.AIThreadType.ValueType  # 1
        INCOGNITO: AIThreadInfo.AIThreadClientInfo.AIThreadType.ValueType  # 2

        TYPE_FIELD_NUMBER: builtins.int
        type: global___AIThreadInfo.AIThreadClientInfo.AIThreadType.ValueType
        def __init__(
            self,
            *,
            type: global___AIThreadInfo.AIThreadClientInfo.AIThreadType.ValueType | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["type", b"type"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["type", b"type"]) -> None: ...

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

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

    SERVERINFO_FIELD_NUMBER: builtins.int
    CLIENTINFO_FIELD_NUMBER: builtins.int
    @property
    def serverInfo(self) -> global___AIThreadInfo.AIThreadServerInfo: ...
    @property
    def clientInfo(self) -> global___AIThreadInfo.AIThreadClientInfo: ...
    def __init__(
        self,
        *,
        serverInfo: global___AIThreadInfo.AIThreadServerInfo | None = ...,
        clientInfo: global___AIThreadInfo.AIThreadClientInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["clientInfo", b"clientInfo", "serverInfo", b"serverInfo"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["clientInfo", b"clientInfo", "serverInfo", b"serverInfo"]) -> None: ...

global___AIThreadInfo = AIThreadInfo

@typing.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.Literal["action", b"action", "behaviorGraph", b"behaviorGraph", "intensity", b"intensity", "sentiment", b"sentiment", "wordCount", b"wordCount"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["action", b"action", "behaviorGraph", b"behaviorGraph", "intensity", b"intensity", "sentiment", b"sentiment", "wordCount", b"wordCount"]) -> None: ...

global___BotAvatarMetadata = BotAvatarMetadata

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

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

global___BotSuggestedPromptMetadata = BotSuggestedPromptMetadata

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

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

global___BotPromptSuggestions = BotPromptSuggestions

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

    PROMPT_FIELD_NUMBER: builtins.int
    PROMPTID_FIELD_NUMBER: builtins.int
    prompt: builtins.str
    promptID: builtins.str
    def __init__(
        self,
        *,
        prompt: builtins.str | None = ...,
        promptID: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["prompt", b"prompt", "promptID", b"promptID"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["prompt", b"prompt", "promptID", b"promptID"]) -> None: ...

global___BotPromptSuggestion = BotPromptSuggestion

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

    ACCOUNTS_FIELD_NUMBER: builtins.int
    ACAUTHTOKENS_FIELD_NUMBER: builtins.int
    ACERRORCODE_FIELD_NUMBER: builtins.int
    acAuthTokens: builtins.bytes
    acErrorCode: builtins.int
    @property
    def accounts(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotLinkedAccount]: ...
    def __init__(
        self,
        *,
        accounts: collections.abc.Iterable[global___BotLinkedAccount] | None = ...,
        acAuthTokens: builtins.bytes | None = ...,
        acErrorCode: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["acAuthTokens", b"acAuthTokens", "acErrorCode", b"acErrorCode"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["acAuthTokens", b"acAuthTokens", "acErrorCode", b"acErrorCode", "accounts", b"accounts"]) -> None: ...

global___BotLinkedAccountsMetadata = BotLinkedAccountsMetadata

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

    ADDEDFACTS_FIELD_NUMBER: builtins.int
    REMOVEDFACTS_FIELD_NUMBER: builtins.int
    DISCLAIMER_FIELD_NUMBER: builtins.int
    disclaimer: builtins.str
    @property
    def addedFacts(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotMemoryFact]: ...
    @property
    def removedFacts(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotMemoryFact]: ...
    def __init__(
        self,
        *,
        addedFacts: collections.abc.Iterable[global___BotMemoryFact] | None = ...,
        removedFacts: collections.abc.Iterable[global___BotMemoryFact] | None = ...,
        disclaimer: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["disclaimer", b"disclaimer"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["addedFacts", b"addedFacts", "disclaimer", b"disclaimer", "removedFacts", b"removedFacts"]) -> None: ...

global___BotMemoryMetadata = BotMemoryMetadata

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

    FACT_FIELD_NUMBER: builtins.int
    FACTID_FIELD_NUMBER: builtins.int
    fact: builtins.str
    factID: builtins.str
    def __init__(
        self,
        *,
        fact: builtins.str | None = ...,
        factID: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["fact", b"fact", "factID", b"factID"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["fact", b"fact", "factID", b"factID"]) -> None: ...

global___BotMemoryFact = BotMemoryFact

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

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

global___BotSignatureVerificationMetadata = BotSignatureVerificationMetadata

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

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

        VALUE_FIELD_NUMBER: builtins.int
        ASSOCIATEDPROMPTS_FIELD_NUMBER: builtins.int
        value: builtins.str
        @property
        def associatedPrompts(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
        def __init__(
            self,
            *,
            value: builtins.str | None = ...,
            associatedPrompts: collections.abc.Iterable[builtins.str] | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["associatedPrompts", b"associatedPrompts", "value", b"value"]) -> None: ...

    KEYWORDS_FIELD_NUMBER: builtins.int
    @property
    def keywords(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotRenderingMetadata.Keyword]: ...
    def __init__(
        self,
        *,
        keywords: collections.abc.Iterable[global___BotRenderingMetadata.Keyword] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing.Literal["keywords", b"keywords"]) -> None: ...

global___BotRenderingMetadata = BotRenderingMetadata

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

    DESTINATIONID_FIELD_NUMBER: builtins.int
    DESTINATIONENTRYPOINT_FIELD_NUMBER: builtins.int
    THREADORIGIN_FIELD_NUMBER: builtins.int
    destinationID: builtins.str
    destinationEntryPoint: global___BotMetricsEntryPoint.ValueType
    threadOrigin: global___BotMetricsThreadEntryPoint.ValueType
    def __init__(
        self,
        *,
        destinationID: builtins.str | None = ...,
        destinationEntryPoint: global___BotMetricsEntryPoint.ValueType | None = ...,
        threadOrigin: global___BotMetricsThreadEntryPoint.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["destinationEntryPoint", b"destinationEntryPoint", "destinationID", b"destinationID", "threadOrigin", b"threadOrigin"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["destinationEntryPoint", b"destinationEntryPoint", "destinationID", b"destinationID", "threadOrigin", b"threadOrigin"]) -> None: ...

global___BotMetricsMetadata = BotMetricsMetadata

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

    SESSIONID_FIELD_NUMBER: builtins.int
    SESSIONSOURCE_FIELD_NUMBER: builtins.int
    sessionID: builtins.str
    sessionSource: global___BotSessionSource.ValueType
    def __init__(
        self,
        *,
        sessionID: builtins.str | None = ...,
        sessionSource: global___BotSessionSource.ValueType | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["sessionID", b"sessionID", "sessionSource", b"sessionSource"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["sessionID", b"sessionID", "sessionSource", b"sessionSource"]) -> None: ...

global___BotSessionMetadata = BotSessionMetadata

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

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

global___BotMemuMetadata = BotMemuMetadata

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

    AGECOLLECTIONELIGIBLE_FIELD_NUMBER: builtins.int
    SHOULDTRIGGERAGECOLLECTIONONCLIENT_FIELD_NUMBER: builtins.int
    ageCollectionEligible: builtins.bool
    shouldTriggerAgeCollectionOnClient: builtins.bool
    def __init__(
        self,
        *,
        ageCollectionEligible: builtins.bool | None = ...,
        shouldTriggerAgeCollectionOnClient: builtins.bool | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["ageCollectionEligible", b"ageCollectionEligible", "shouldTriggerAgeCollectionOnClient", b"shouldTriggerAgeCollectionOnClient"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["ageCollectionEligible", b"ageCollectionEligible", "shouldTriggerAgeCollectionOnClient", b"shouldTriggerAgeCollectionOnClient"]) -> None: ...

global___BotAgeCollectionMetadata = BotAgeCollectionMetadata

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

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

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

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

        STRINGVALUE_FIELD_NUMBER: builtins.int
        NUMERICVALUE_FIELD_NUMBER: builtins.int
        TEXTTRANSLATED_FIELD_NUMBER: builtins.int
        stringValue: builtins.str
        numericValue: builtins.int
        textTranslated: builtins.str
        def __init__(
            self,
            *,
            stringValue: builtins.str | None = ...,
            numericValue: builtins.int | None = ...,
            textTranslated: builtins.str | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["numericValue", b"numericValue", "stringValue", b"stringValue", "textTranslated", b"textTranslated"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["numericValue", b"numericValue", "stringValue", b"stringValue", "textTranslated", b"textTranslated"]) -> None: ...

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

        QUESTIONTEXT_FIELD_NUMBER: builtins.int
        QUESTIONID_FIELD_NUMBER: builtins.int
        QUESTIONOPTIONS_FIELD_NUMBER: builtins.int
        questionText: builtins.str
        questionID: builtins.str
        @property
        def questionOptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___InThreadSurveyMetadata.InThreadSurveyOption]: ...
        def __init__(
            self,
            *,
            questionText: builtins.str | None = ...,
            questionID: builtins.str | None = ...,
            questionOptions: collections.abc.Iterable[global___InThreadSurveyMetadata.InThreadSurveyOption] | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["questionID", b"questionID", "questionText", b"questionText"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["questionID", b"questionID", "questionOptions", b"questionOptions", "questionText", b"questionText"]) -> None: ...

    TESSASESSIONID_FIELD_NUMBER: builtins.int
    SIMONSESSIONID_FIELD_NUMBER: builtins.int
    SIMONSURVEYID_FIELD_NUMBER: builtins.int
    TESSAROOTID_FIELD_NUMBER: builtins.int
    REQUESTID_FIELD_NUMBER: builtins.int
    TESSAEVENT_FIELD_NUMBER: builtins.int
    INVITATIONHEADERTEXT_FIELD_NUMBER: builtins.int
    INVITATIONBODYTEXT_FIELD_NUMBER: builtins.int
    INVITATIONCTATEXT_FIELD_NUMBER: builtins.int
    INVITATIONCTAURL_FIELD_NUMBER: builtins.int
    SURVEYTITLE_FIELD_NUMBER: builtins.int
    QUESTIONS_FIELD_NUMBER: builtins.int
    SURVEYCONTINUEBUTTONTEXT_FIELD_NUMBER: builtins.int
    SURVEYSUBMITBUTTONTEXT_FIELD_NUMBER: builtins.int
    PRIVACYSTATEMENTFULL_FIELD_NUMBER: builtins.int
    PRIVACYSTATEMENTPARTS_FIELD_NUMBER: builtins.int
    FEEDBACKTOASTTEXT_FIELD_NUMBER: builtins.int
    tessaSessionID: builtins.str
    simonSessionID: builtins.str
    simonSurveyID: builtins.str
    tessaRootID: builtins.str
    requestID: builtins.str
    tessaEvent: builtins.str
    invitationHeaderText: builtins.str
    invitationBodyText: builtins.str
    invitationCtaText: builtins.str
    invitationCtaURL: builtins.str
    surveyTitle: builtins.str
    surveyContinueButtonText: builtins.str
    surveySubmitButtonText: builtins.str
    privacyStatementFull: builtins.str
    feedbackToastText: builtins.str
    @property
    def questions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___InThreadSurveyMetadata.InThreadSurveyQuestion]: ...
    @property
    def privacyStatementParts(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___InThreadSurveyMetadata.InThreadSurveyPrivacyStatementPart]: ...
    def __init__(
        self,
        *,
        tessaSessionID: builtins.str | None = ...,
        simonSessionID: builtins.str | None = ...,
        simonSurveyID: builtins.str | None = ...,
        tessaRootID: builtins.str | None = ...,
        requestID: builtins.str | None = ...,
        tessaEvent: builtins.str | None = ...,
        invitationHeaderText: builtins.str | None = ...,
        invitationBodyText: builtins.str | None = ...,
        invitationCtaText: builtins.str | None = ...,
        invitationCtaURL: builtins.str | None = ...,
        surveyTitle: builtins.str | None = ...,
        questions: collections.abc.Iterable[global___InThreadSurveyMetadata.InThreadSurveyQuestion] | None = ...,
        surveyContinueButtonText: builtins.str | None = ...,
        surveySubmitButtonText: builtins.str | None = ...,
        privacyStatementFull: builtins.str | None = ...,
        privacyStatementParts: collections.abc.Iterable[global___InThreadSurveyMetadata.InThreadSurveyPrivacyStatementPart] | None = ...,
        feedbackToastText: builtins.str | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["feedbackToastText", b"feedbackToastText", "invitationBodyText", b"invitationBodyText", "invitationCtaText", b"invitationCtaText", "invitationCtaURL", b"invitationCtaURL", "invitationHeaderText", b"invitationHeaderText", "privacyStatementFull", b"privacyStatementFull", "requestID", b"requestID", "simonSessionID", b"simonSessionID", "simonSurveyID", b"simonSurveyID", "surveyContinueButtonText", b"surveyContinueButtonText", "surveySubmitButtonText", b"surveySubmitButtonText", "surveyTitle", b"surveyTitle", "tessaEvent", b"tessaEvent", "tessaRootID", b"tessaRootID", "tessaSessionID", b"tessaSessionID"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["feedbackToastText", b"feedbackToastText", "invitationBodyText", b"invitationBodyText", "invitationCtaText", b"invitationCtaText", "invitationCtaURL", b"invitationCtaURL", "invitationHeaderText", b"invitationHeaderText", "privacyStatementFull", b"privacyStatementFull", "privacyStatementParts", b"privacyStatementParts", "questions", b"questions", "requestID", b"requestID", "simonSessionID", b"simonSessionID", "simonSurveyID", b"simonSurveyID", "surveyContinueButtonText", b"surveyContinueButtonText", "surveySubmitButtonText", b"surveySubmitButtonText", "surveyTitle", b"surveyTitle", "tessaEvent", b"tessaEvent", "tessaRootID", b"tessaRootID", "tessaSessionID", b"tessaSessionID"]) -> None: ...

global___InThreadSurveyMetadata = InThreadSurveyMetadata

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

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

global___BotMessageOriginMetadata = BotMessageOriginMetadata

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

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

        ID_FIELD_NUMBER: builtins.int
        HIGHRESMEDIA_FIELD_NUMBER: builtins.int
        PREVIEWMEDIA_FIELD_NUMBER: builtins.int
        ID: builtins.str
        @property
        def highResMedia(self) -> global___BotMediaMetadata: ...
        @property
        def previewMedia(self) -> global___BotMediaMetadata: ...
        def __init__(
            self,
            *,
            ID: builtins.str | None = ...,
            highResMedia: global___BotMediaMetadata | None = ...,
            previewMedia: global___BotMediaMetadata | None = ...,
        ) -> None: ...
        def HasField(self, field_name: typing.Literal["ID", b"ID", "highResMedia", b"highResMedia", "previewMedia", b"previewMedia"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing.Literal["ID", b"ID", "highResMedia", b"highResMedia", "previewMedia", b"previewMedia"]) -> None: ...

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

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

    SBSMETADATA_FIELD_NUMBER: builtins.int
    MEDIADETAILSMETADATALIST_FIELD_NUMBER: builtins.int
    @property
    def sbsMetadata(self) -> global___BotUnifiedResponseMutation.SideBySideMetadata: ...
    @property
    def mediaDetailsMetadataList(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___BotUnifiedResponseMutation.MediaDetailsMetadata]: ...
    def __init__(
        self,
        *,
        sbsMetadata: global___BotUnifiedResponseMutation.SideBySideMetadata | None = ...,
        mediaDetailsMetadataList: collections.abc.Iterable[global___BotUnifiedResponseMutation.MediaDetailsMetadata] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["sbsMetadata", b"sbsMetadata"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["mediaDetailsMetadataList", b"mediaDetailsMetadataList", "sbsMetadata", b"sbsMetadata"]) -> None: ...

global___BotUnifiedResponseMutation = BotUnifiedResponseMutation

@typing.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
    INVOKERJID_FIELD_NUMBER: builtins.int
    SESSIONMETADATA_FIELD_NUMBER: builtins.int
    MEMUMETADATA_FIELD_NUMBER: builtins.int
    TIMEZONE_FIELD_NUMBER: builtins.int
    REMINDERMETADATA_FIELD_NUMBER: builtins.int
    MODELMETADATA_FIELD_NUMBER: builtins.int
    MESSAGEDISCLAIMERTEXT_FIELD_NUMBER: builtins.int
    PROGRESSINDICATORMETADATA_FIELD_NUMBER: builtins.int
    CAPABILITYMETADATA_FIELD_NUMBER: builtins.int
    IMAGINEMETADATA_FIELD_NUMBER: builtins.int
    MEMORYMETADATA_FIELD_NUMBER: builtins.int
    RENDERINGMETADATA_FIELD_NUMBER: builtins.int
    BOTMETRICSMETADATA_FIELD_NUMBER: builtins.int
    BOTLINKEDACCOUNTSMETADATA_FIELD_NUMBER: builtins.int
    RICHRESPONSESOURCESMETADATA_FIELD_NUMBER: builtins.int
    AICONVERSATIONCONTEXT_FIELD_NUMBER: builtins.int
    BOTPROMOTIONMESSAGEMETADATA_FIELD_NUMBER: builtins.int
    BOTMODESELECTIONMETADATA_FIELD_NUMBER: builtins.int
    BOTQUOTAMETADATA_FIELD_NUMBER: builtins.int
    BOTAGECOLLECTIONMETADATA_FIELD_NUMBER: builtins.int
    CONVERSATIONSTARTERPROMPTID_FIELD_NUMBER: builtins.int
    BOTRESPONSEID_FIELD_NUMBER: builtins.int
    VERIFICATIONMETADATA_FIELD_NUMBER: builtins.int
    UNIFIEDRESPONSEMUTATION_FIELD_NUMBER: builtins.int
    BOTMESSAGEORIGINMETADATA_FIELD_NUMBER: builtins.int
    INTHREADSURVEYMETADATA_FIELD_NUMBER: builtins.int
    BOTTHREADINFO_FIELD_NUMBER: builtins.int
    INTERNALMETADATA_FIELD_NUMBER: builtins.int
    personaID: builtins.str
    invokerJID: builtins.str
    timezone: builtins.str
    messageDisclaimerText: builtins.str
    aiConversationContext: builtins.bytes
    conversationStarterPromptID: builtins.str
    botResponseID: builtins.str
    internalMetadata: builtins.bytes
    @property
    def avatarMetadata(self) -> global___BotAvatarMetadata: ...
    @property
    def pluginMetadata(self) -> global___BotPluginMetadata: ...
    @property
    def suggestedPromptMetadata(self) -> global___BotSuggestedPromptMetadata: ...
    @property
    def sessionMetadata(self) -> global___BotSessionMetadata: ...
    @property
    def memuMetadata(self) -> global___BotMemuMetadata: ...
    @property
    def reminderMetadata(self) -> global___BotReminderMetadata: ...
    @property
    def modelMetadata(self) -> global___BotModelMetadata: ...
    @property
    def progressIndicatorMetadata(self) -> global___BotProgressIndicatorMetadata: ...
    @property
    def capabilityMetadata(self) -> global___BotCapabilityMetadata: ...
    @property
    def imagineMetadata(self) -> global___BotImagineMetadata: ...
    @property
    def memoryMetadata(self) -> global___BotMemoryMetadata: ...
    @property
    def renderingMetadata(self) -> global___BotRenderingMetadata: ...
    @property
    def botMetricsMetadata(self) -> global___BotMetricsMetadata: ...
    @property
    def botLinkedAccountsMetadata(self) -> global___BotLinkedAccountsMetadata: ...
    @property
    def richResponseSourcesMetadata(self) -> global___BotSourcesMetadata: ...
    @property
    def botPromotionMessageMetadata(self) -> global___BotPromotionMessageMetadata: ...
    @property
    def botModeSelectionMetadata(self) -> global___BotModeSelectionMetadata: ...
    @property
    def botQuotaMetadata(self) -> global___BotQuotaMetadata: ...
    @property
    def botAgeCollectionMetadata(self) -> global___BotAgeCollectionMetadata: ...
    @property
    def verificationMetadata(self) -> global___BotSignatureVerificationMetadata: ...
    @property
    def unifiedResponseMutation(self) -> global___BotUnifiedResponseMutation: ...
    @property
    def botMessageOriginMetadata(self) -> global___BotMessageOriginMetadata: ...
    @property
    def inThreadSurveyMetadata(self) -> global___InThreadSurveyMetadata: ...
    @property
    def botThreadInfo(self) -> global___AIThreadInfo: ...
    def __init__(
        self,
        *,
        avatarMetadata: global___BotAvatarMetadata | None = ...,
        personaID: builtins.str | None = ...,
        pluginMetadata: global___BotPluginMetadata | None = ...,
        suggestedPromptMetadata: global___BotSuggestedPromptMetadata | None = ...,
        invokerJID: builtins.str | None = ...,
        sessionMetadata: global___BotSessionMetadata | None = ...,
        memuMetadata: global___BotMemuMetadata | None = ...,
        timezone: builtins.str | None = ...,
        reminderMetadata: global___BotReminderMetadata | None = ...,
        modelMetadata: global___BotModelMetadata | None = ...,
        messageDisclaimerText: builtins.str | None = ...,
        progressIndicatorMetadata: global___BotProgressIndicatorMetadata | None = ...,
        capabilityMetadata: global___BotCapabilityMetadata | None = ...,
        imagineMetadata: global___BotImagineMetadata | None = ...,
        memoryMetadata: global___BotMemoryMetadata | None = ...,
        renderingMetadata: global___BotRenderingMetadata | None = ...,
        botMetricsMetadata: global___BotMetricsMetadata | None = ...,
        botLinkedAccountsMetadata: global___BotLinkedAccountsMetadata | None = ...,
        richResponseSourcesMetadata: global___BotSourcesMetadata | None = ...,
        aiConversationContext: builtins.bytes | None = ...,
        botPromotionMessageMetadata: global___BotPromotionMessageMetadata | None = ...,
        botModeSelectionMetadata: global___BotModeSelectionMetadata | None = ...,
        botQuotaMetadata: global___BotQuotaMetadata | None = ...,
        botAgeCollectionMetadata: global___BotAgeCollectionMetadata | None = ...,
        conversationStarterPromptID: builtins.str | None = ...,
        botResponseID: builtins.str | None = ...,
        verificationMetadata: global___BotSignatureVerificationMetadata | None = ...,
        unifiedResponseMutation: global___BotUnifiedResponseMutation | None = ...,
        botMessageOriginMetadata: global___BotMessageOriginMetadata | None = ...,
        inThreadSurveyMetadata: global___InThreadSurveyMetadata | None = ...,
        botThreadInfo: global___AIThreadInfo | None = ...,
        internalMetadata: builtins.bytes | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["aiConversationContext", b"aiConversationContext", "avatarMetadata", b"avatarMetadata", "botAgeCollectionMetadata", b"botAgeCollectionMetadata", "botLinkedAccountsMetadata", b"botLinkedAccountsMetadata", "botMessageOriginMetadata", b"botMessageOriginMetadata", "botMetricsMetadata", b"botMetricsMetadata", "botModeSelectionMetadata", b"botModeSelectionMetadata", "botPromotionMessageMetadata", b"botPromotionMessageMetadata", "botQuotaMetadata", b"botQuotaMetadata", "botResponseID", b"botResponseID", "botThreadInfo", b"botThreadInfo", "capabilityMetadata", b"capabilityMetadata", "conversationStarterPromptID", b"conversationStarterPromptID", "imagineMetadata", b"imagineMetadata", "inThreadSurveyMetadata", b"inThreadSurveyMetadata", "internalMetadata", b"internalMetadata", "invokerJID", b"invokerJID", "memoryMetadata", b"memoryMetadata", "memuMetadata", b"memuMetadata", "messageDisclaimerText", b"messageDisclaimerText", "modelMetadata", b"modelMetadata", "personaID", b"personaID", "pluginMetadata", b"pluginMetadata", "progressIndicatorMetadata", b"progressIndicatorMetadata", "reminderMetadata", b"reminderMetadata", "renderingMetadata", b"renderingMetadata", "richResponseSourcesMetadata", b"richResponseSourcesMetadata", "sessionMetadata", b"sessionMetadata", "suggestedPromptMetadata", b"suggestedPromptMetadata", "timezone", b"timezone", "unifiedResponseMutation", b"unifiedResponseMutation", "verificationMetadata", b"verificationMetadata"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["aiConversationContext", b"aiConversationContext", "avatarMetadata", b"avatarMetadata", "botAgeCollectionMetadata", b"botAgeCollectionMetadata", "botLinkedAccountsMetadata", b"botLinkedAccountsMetadata", "botMessageOriginMetadata", b"botMessageOriginMetadata", "botMetricsMetadata", b"botMetricsMetadata", "botModeSelectionMetadata", b"botModeSelectionMetadata", "botPromotionMessageMetadata", b"botPromotionMessageMetadata", "botQuotaMetadata", b"botQuotaMetadata", "botResponseID", b"botResponseID", "botThreadInfo", b"botThreadInfo", "capabilityMetadata", b"capabilityMetadata", "conversationStarterPromptID", b"conversationStarterPromptID", "imagineMetadata", b"imagineMetadata", "inThreadSurveyMetadata", b"inThreadSurveyMetadata", "internalMetadata", b"internalMetadata", "invokerJID", b"invokerJID", "memoryMetadata", b"memoryMetadata", "memuMetadata", b"memuMetadata", "messageDisclaimerText", b"messageDisclaimerText", "modelMetadata", b"modelMetadata", "personaID", b"personaID", "pluginMetadata", b"pluginMetadata", "progressIndicatorMetadata", b"progressIndicatorMetadata", "reminderMetadata", b"reminderMetadata", "renderingMetadata", b"renderingMetadata", "richResponseSourcesMetadata", b"richResponseSourcesMetadata", "sessionMetadata", b"sessionMetadata", "suggestedPromptMetadata", b"suggestedPromptMetadata", "timezone", b"timezone", "unifiedResponseMutation", b"unifiedResponseMutation", "verificationMetadata", b"verificationMetadata"]) -> None: ...

global___BotMetadata = BotMetadata
