<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: WAProto.proto

namespace PhpWA\Protocol\Proto\BotCapabilityMetadata;

use UnexpectedValueException;

/**
 * Protobuf type <code>proto.BotCapabilityMetadata.BotCapabilityType</code>
 */
class BotCapabilityType
{
    /**
     * Generated from protobuf enum <code>UNKNOWN = 0;</code>
     */
    const UNKNOWN = 0;
    /**
     * Generated from protobuf enum <code>PROGRESS_INDICATOR = 1;</code>
     */
    const PROGRESS_INDICATOR = 1;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_HEADING = 2;</code>
     */
    const RICH_RESPONSE_HEADING = 2;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_NESTED_LIST = 3;</code>
     */
    const RICH_RESPONSE_NESTED_LIST = 3;
    /**
     * Generated from protobuf enum <code>AI_MEMORY = 4;</code>
     */
    const AI_MEMORY = 4;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_THREAD_SURFING = 5;</code>
     */
    const RICH_RESPONSE_THREAD_SURFING = 5;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_TABLE = 6;</code>
     */
    const RICH_RESPONSE_TABLE = 6;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_CODE = 7;</code>
     */
    const RICH_RESPONSE_CODE = 7;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_STRUCTURED_RESPONSE = 8;</code>
     */
    const RICH_RESPONSE_STRUCTURED_RESPONSE = 8;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_INLINE_IMAGE = 9;</code>
     */
    const RICH_RESPONSE_INLINE_IMAGE = 9;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_CONTROL = 10;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_CONTROL = 10;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_1 = 11;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_1 = 11;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_2 = 12;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_2 = 12;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_3 = 13;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_3 = 13;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_4 = 14;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_4 = 14;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_5 = 15;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_5 = 15;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_6 = 16;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_6 = 16;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_7 = 17;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_7 = 17;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_8 = 18;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_8 = 18;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_9 = 19;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_9 = 19;
    /**
     * Generated from protobuf enum <code>WA_IG_1P_PLUGIN_RANKING_UPDATE_10 = 20;</code>
     */
    const WA_IG_1P_PLUGIN_RANKING_UPDATE_10 = 20;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_SUB_HEADING = 21;</code>
     */
    const RICH_RESPONSE_SUB_HEADING = 21;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_GRID_IMAGE = 22;</code>
     */
    const RICH_RESPONSE_GRID_IMAGE = 22;
    /**
     * Generated from protobuf enum <code>AI_STUDIO_UGC_MEMORY = 23;</code>
     */
    const AI_STUDIO_UGC_MEMORY = 23;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_LATEX = 24;</code>
     */
    const RICH_RESPONSE_LATEX = 24;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_MAPS = 25;</code>
     */
    const RICH_RESPONSE_MAPS = 25;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_INLINE_REELS = 26;</code>
     */
    const RICH_RESPONSE_INLINE_REELS = 26;
    /**
     * Generated from protobuf enum <code>AGENTIC_PLANNING = 27;</code>
     */
    const AGENTIC_PLANNING = 27;
    /**
     * Generated from protobuf enum <code>ACCOUNT_LINKING = 28;</code>
     */
    const ACCOUNT_LINKING = 28;
    /**
     * Generated from protobuf enum <code>STREAMING_DISAGGREGATION = 29;</code>
     */
    const STREAMING_DISAGGREGATION = 29;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_GRID_IMAGE_3P = 30;</code>
     */
    const RICH_RESPONSE_GRID_IMAGE_3P = 30;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_LATEX_INLINE = 31;</code>
     */
    const RICH_RESPONSE_LATEX_INLINE = 31;
    /**
     * Generated from protobuf enum <code>QUERY_PLAN = 32;</code>
     */
    const QUERY_PLAN = 32;
    /**
     * Generated from protobuf enum <code>PROACTIVE_MESSAGE = 33;</code>
     */
    const PROACTIVE_MESSAGE = 33;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_UNIFIED_RESPONSE = 34;</code>
     */
    const RICH_RESPONSE_UNIFIED_RESPONSE = 34;
    /**
     * Generated from protobuf enum <code>PROMOTION_MESSAGE = 35;</code>
     */
    const PROMOTION_MESSAGE = 35;
    /**
     * Generated from protobuf enum <code>SIMPLIFIED_PROFILE_PAGE = 36;</code>
     */
    const SIMPLIFIED_PROFILE_PAGE = 36;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_SOURCES_IN_MESSAGE = 37;</code>
     */
    const RICH_RESPONSE_SOURCES_IN_MESSAGE = 37;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_SIDE_BY_SIDE_SURVEY = 38;</code>
     */
    const RICH_RESPONSE_SIDE_BY_SIDE_SURVEY = 38;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_UNIFIED_TEXT_COMPONENT = 39;</code>
     */
    const RICH_RESPONSE_UNIFIED_TEXT_COMPONENT = 39;
    /**
     * Generated from protobuf enum <code>AI_SHARED_MEMORY = 40;</code>
     */
    const AI_SHARED_MEMORY = 40;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_UNIFIED_SOURCES = 41;</code>
     */
    const RICH_RESPONSE_UNIFIED_SOURCES = 41;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_UNIFIED_DOMAIN_CITATIONS = 42;</code>
     */
    const RICH_RESPONSE_UNIFIED_DOMAIN_CITATIONS = 42;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_UR_INLINE_REELS_ENABLED = 43;</code>
     */
    const RICH_RESPONSE_UR_INLINE_REELS_ENABLED = 43;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_UR_MEDIA_GRID_ENABLED = 44;</code>
     */
    const RICH_RESPONSE_UR_MEDIA_GRID_ENABLED = 44;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER = 45;</code>
     */
    const RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER = 45;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_IN_APP_SURVEY = 46;</code>
     */
    const RICH_RESPONSE_IN_APP_SURVEY = 46;
    /**
     * Generated from protobuf enum <code>AI_RESPONSE_MODEL_BRANDING = 47;</code>
     */
    const AI_RESPONSE_MODEL_BRANDING = 47;
    /**
     * Generated from protobuf enum <code>SESSION_TRANSPARENCY_SYSTEM_MESSAGE = 48;</code>
     */
    const SESSION_TRANSPARENCY_SYSTEM_MESSAGE = 48;
    /**
     * Generated from protobuf enum <code>RICH_RESPONSE_UR_REASONING = 49;</code>
     */
    const RICH_RESPONSE_UR_REASONING = 49;

    private static $valueToName = [
        self::UNKNOWN => 'UNKNOWN',
        self::PROGRESS_INDICATOR => 'PROGRESS_INDICATOR',
        self::RICH_RESPONSE_HEADING => 'RICH_RESPONSE_HEADING',
        self::RICH_RESPONSE_NESTED_LIST => 'RICH_RESPONSE_NESTED_LIST',
        self::AI_MEMORY => 'AI_MEMORY',
        self::RICH_RESPONSE_THREAD_SURFING => 'RICH_RESPONSE_THREAD_SURFING',
        self::RICH_RESPONSE_TABLE => 'RICH_RESPONSE_TABLE',
        self::RICH_RESPONSE_CODE => 'RICH_RESPONSE_CODE',
        self::RICH_RESPONSE_STRUCTURED_RESPONSE => 'RICH_RESPONSE_STRUCTURED_RESPONSE',
        self::RICH_RESPONSE_INLINE_IMAGE => 'RICH_RESPONSE_INLINE_IMAGE',
        self::WA_IG_1P_PLUGIN_RANKING_CONTROL => 'WA_IG_1P_PLUGIN_RANKING_CONTROL',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_1 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_1',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_2 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_2',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_3 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_3',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_4 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_4',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_5 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_5',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_6 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_6',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_7 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_7',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_8 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_8',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_9 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_9',
        self::WA_IG_1P_PLUGIN_RANKING_UPDATE_10 => 'WA_IG_1P_PLUGIN_RANKING_UPDATE_10',
        self::RICH_RESPONSE_SUB_HEADING => 'RICH_RESPONSE_SUB_HEADING',
        self::RICH_RESPONSE_GRID_IMAGE => 'RICH_RESPONSE_GRID_IMAGE',
        self::AI_STUDIO_UGC_MEMORY => 'AI_STUDIO_UGC_MEMORY',
        self::RICH_RESPONSE_LATEX => 'RICH_RESPONSE_LATEX',
        self::RICH_RESPONSE_MAPS => 'RICH_RESPONSE_MAPS',
        self::RICH_RESPONSE_INLINE_REELS => 'RICH_RESPONSE_INLINE_REELS',
        self::AGENTIC_PLANNING => 'AGENTIC_PLANNING',
        self::ACCOUNT_LINKING => 'ACCOUNT_LINKING',
        self::STREAMING_DISAGGREGATION => 'STREAMING_DISAGGREGATION',
        self::RICH_RESPONSE_GRID_IMAGE_3P => 'RICH_RESPONSE_GRID_IMAGE_3P',
        self::RICH_RESPONSE_LATEX_INLINE => 'RICH_RESPONSE_LATEX_INLINE',
        self::QUERY_PLAN => 'QUERY_PLAN',
        self::PROACTIVE_MESSAGE => 'PROACTIVE_MESSAGE',
        self::RICH_RESPONSE_UNIFIED_RESPONSE => 'RICH_RESPONSE_UNIFIED_RESPONSE',
        self::PROMOTION_MESSAGE => 'PROMOTION_MESSAGE',
        self::SIMPLIFIED_PROFILE_PAGE => 'SIMPLIFIED_PROFILE_PAGE',
        self::RICH_RESPONSE_SOURCES_IN_MESSAGE => 'RICH_RESPONSE_SOURCES_IN_MESSAGE',
        self::RICH_RESPONSE_SIDE_BY_SIDE_SURVEY => 'RICH_RESPONSE_SIDE_BY_SIDE_SURVEY',
        self::RICH_RESPONSE_UNIFIED_TEXT_COMPONENT => 'RICH_RESPONSE_UNIFIED_TEXT_COMPONENT',
        self::AI_SHARED_MEMORY => 'AI_SHARED_MEMORY',
        self::RICH_RESPONSE_UNIFIED_SOURCES => 'RICH_RESPONSE_UNIFIED_SOURCES',
        self::RICH_RESPONSE_UNIFIED_DOMAIN_CITATIONS => 'RICH_RESPONSE_UNIFIED_DOMAIN_CITATIONS',
        self::RICH_RESPONSE_UR_INLINE_REELS_ENABLED => 'RICH_RESPONSE_UR_INLINE_REELS_ENABLED',
        self::RICH_RESPONSE_UR_MEDIA_GRID_ENABLED => 'RICH_RESPONSE_UR_MEDIA_GRID_ENABLED',
        self::RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER => 'RICH_RESPONSE_UR_TIMESTAMP_PLACEHOLDER',
        self::RICH_RESPONSE_IN_APP_SURVEY => 'RICH_RESPONSE_IN_APP_SURVEY',
        self::AI_RESPONSE_MODEL_BRANDING => 'AI_RESPONSE_MODEL_BRANDING',
        self::SESSION_TRANSPARENCY_SYSTEM_MESSAGE => 'SESSION_TRANSPARENCY_SYSTEM_MESSAGE',
        self::RICH_RESPONSE_UR_REASONING => 'RICH_RESPONSE_UR_REASONING',
    ];

    public static function name($value)
    {
        if (!isset(self::$valueToName[$value])) {
            throw new UnexpectedValueException(sprintf(
                    'Enum %s has no name defined for value %s', __CLASS__, $value));
        }
        return self::$valueToName[$value];
    }


    public static function value($name)
    {
        $const = __CLASS__ . '::' . strtoupper($name);
        if (!defined($const)) {
            throw new UnexpectedValueException(sprintf(
                    'Enum %s has no value defined for name %s', __CLASS__, $name));
        }
        return constant($const);
    }
}

