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

namespace PhpWA\Protocol\Proto;

use UnexpectedValueException;

/**
 * Protobuf type <code>proto.BotMetricsEntryPoint</code>
 */
class BotMetricsEntryPoint
{
    /**
     * Generated from protobuf enum <code>UNDEFINED_ENTRY_POINT = 0;</code>
     */
    const UNDEFINED_ENTRY_POINT = 0;
    /**
     * Generated from protobuf enum <code>FAVICON = 1;</code>
     */
    const FAVICON = 1;
    /**
     * Generated from protobuf enum <code>CHATLIST = 2;</code>
     */
    const CHATLIST = 2;
    /**
     * Generated from protobuf enum <code>AISEARCH_NULL_STATE_PAPER_PLANE = 3;</code>
     */
    const AISEARCH_NULL_STATE_PAPER_PLANE = 3;
    /**
     * Generated from protobuf enum <code>AISEARCH_NULL_STATE_SUGGESTION = 4;</code>
     */
    const AISEARCH_NULL_STATE_SUGGESTION = 4;
    /**
     * Generated from protobuf enum <code>AISEARCH_TYPE_AHEAD_SUGGESTION = 5;</code>
     */
    const AISEARCH_TYPE_AHEAD_SUGGESTION = 5;
    /**
     * Generated from protobuf enum <code>AISEARCH_TYPE_AHEAD_PAPER_PLANE = 6;</code>
     */
    const AISEARCH_TYPE_AHEAD_PAPER_PLANE = 6;
    /**
     * Generated from protobuf enum <code>AISEARCH_TYPE_AHEAD_RESULT_CHATLIST = 7;</code>
     */
    const AISEARCH_TYPE_AHEAD_RESULT_CHATLIST = 7;
    /**
     * Generated from protobuf enum <code>AISEARCH_TYPE_AHEAD_RESULT_MESSAGES = 8;</code>
     */
    const AISEARCH_TYPE_AHEAD_RESULT_MESSAGES = 8;
    /**
     * Generated from protobuf enum <code>AIVOICE_SEARCH_BAR = 9;</code>
     */
    const AIVOICE_SEARCH_BAR = 9;
    /**
     * Generated from protobuf enum <code>AIVOICE_FAVICON = 10;</code>
     */
    const AIVOICE_FAVICON = 10;
    /**
     * Generated from protobuf enum <code>AISTUDIO = 11;</code>
     */
    const AISTUDIO = 11;
    /**
     * Generated from protobuf enum <code>DEEPLINK = 12;</code>
     */
    const DEEPLINK = 12;
    /**
     * Generated from protobuf enum <code>NOTIFICATION = 13;</code>
     */
    const NOTIFICATION = 13;
    /**
     * Generated from protobuf enum <code>PROFILE_MESSAGE_BUTTON = 14;</code>
     */
    const PROFILE_MESSAGE_BUTTON = 14;
    /**
     * Generated from protobuf enum <code>FORWARD = 15;</code>
     */
    const FORWARD = 15;
    /**
     * Generated from protobuf enum <code>APP_SHORTCUT = 16;</code>
     */
    const APP_SHORTCUT = 16;
    /**
     * Generated from protobuf enum <code>FF_FAMILY = 17;</code>
     */
    const FF_FAMILY = 17;
    /**
     * Generated from protobuf enum <code>AI_TAB = 18;</code>
     */
    const AI_TAB = 18;
    /**
     * Generated from protobuf enum <code>AI_HOME = 19;</code>
     */
    const AI_HOME = 19;
    /**
     * Generated from protobuf enum <code>AI_DEEPLINK_IMMERSIVE = 20;</code>
     */
    const AI_DEEPLINK_IMMERSIVE = 20;
    /**
     * Generated from protobuf enum <code>AI_DEEPLINK = 21;</code>
     */
    const AI_DEEPLINK = 21;
    /**
     * Generated from protobuf enum <code>META_AI_CHAT_SHORTCUT_AI_STUDIO = 22;</code>
     */
    const META_AI_CHAT_SHORTCUT_AI_STUDIO = 22;
    /**
     * Generated from protobuf enum <code>UGC_CHAT_SHORTCUT_AI_STUDIO = 23;</code>
     */
    const UGC_CHAT_SHORTCUT_AI_STUDIO = 23;
    /**
     * Generated from protobuf enum <code>NEW_CHAT_AI_STUDIO = 24;</code>
     */
    const NEW_CHAT_AI_STUDIO = 24;
    /**
     * Generated from protobuf enum <code>AIVOICE_FAVICON_CALL_HISTORY = 25;</code>
     */
    const AIVOICE_FAVICON_CALL_HISTORY = 25;
    /**
     * Generated from protobuf enum <code>ASK_META_AI_CONTEXT_MENU = 26;</code>
     */
    const ASK_META_AI_CONTEXT_MENU = 26;
    /**
     * Generated from protobuf enum <code>ASK_META_AI_CONTEXT_MENU_1ON1 = 27;</code>
     */
    const ASK_META_AI_CONTEXT_MENU_1ON1 = 27;
    /**
     * Generated from protobuf enum <code>ASK_META_AI_CONTEXT_MENU_GROUP = 28;</code>
     */
    const ASK_META_AI_CONTEXT_MENU_GROUP = 28;
    /**
     * Generated from protobuf enum <code>INVOKE_META_AI_1ON1 = 29;</code>
     */
    const INVOKE_META_AI_1ON1 = 29;
    /**
     * Generated from protobuf enum <code>INVOKE_META_AI_GROUP = 30;</code>
     */
    const INVOKE_META_AI_GROUP = 30;
    /**
     * Generated from protobuf enum <code>META_AI_FORWARD = 31;</code>
     */
    const META_AI_FORWARD = 31;
    /**
     * Generated from protobuf enum <code>NEW_CHAT_AI_CONTACT = 32;</code>
     */
    const NEW_CHAT_AI_CONTACT = 32;
    /**
     * Generated from protobuf enum <code>MESSAGE_QUICK_ACTION_1_ON_1_CHAT = 33;</code>
     */
    const MESSAGE_QUICK_ACTION_1_ON_1_CHAT = 33;
    /**
     * Generated from protobuf enum <code>MESSAGE_QUICK_ACTION_GROUP_CHAT = 34;</code>
     */
    const MESSAGE_QUICK_ACTION_GROUP_CHAT = 34;
    /**
     * Generated from protobuf enum <code>ATTACHMENT_TRAY_1_ON_1_CHAT = 35;</code>
     */
    const ATTACHMENT_TRAY_1_ON_1_CHAT = 35;
    /**
     * Generated from protobuf enum <code>ATTACHMENT_TRAY_GROUP_CHAT = 36;</code>
     */
    const ATTACHMENT_TRAY_GROUP_CHAT = 36;
    /**
     * Generated from protobuf enum <code>ASK_META_AI_MEDIA_VIEWER_1ON1 = 37;</code>
     */
    const ASK_META_AI_MEDIA_VIEWER_1ON1 = 37;
    /**
     * Generated from protobuf enum <code>ASK_META_AI_MEDIA_VIEWER_GROUP = 38;</code>
     */
    const ASK_META_AI_MEDIA_VIEWER_GROUP = 38;

    private static $valueToName = [
        self::UNDEFINED_ENTRY_POINT => 'UNDEFINED_ENTRY_POINT',
        self::FAVICON => 'FAVICON',
        self::CHATLIST => 'CHATLIST',
        self::AISEARCH_NULL_STATE_PAPER_PLANE => 'AISEARCH_NULL_STATE_PAPER_PLANE',
        self::AISEARCH_NULL_STATE_SUGGESTION => 'AISEARCH_NULL_STATE_SUGGESTION',
        self::AISEARCH_TYPE_AHEAD_SUGGESTION => 'AISEARCH_TYPE_AHEAD_SUGGESTION',
        self::AISEARCH_TYPE_AHEAD_PAPER_PLANE => 'AISEARCH_TYPE_AHEAD_PAPER_PLANE',
        self::AISEARCH_TYPE_AHEAD_RESULT_CHATLIST => 'AISEARCH_TYPE_AHEAD_RESULT_CHATLIST',
        self::AISEARCH_TYPE_AHEAD_RESULT_MESSAGES => 'AISEARCH_TYPE_AHEAD_RESULT_MESSAGES',
        self::AIVOICE_SEARCH_BAR => 'AIVOICE_SEARCH_BAR',
        self::AIVOICE_FAVICON => 'AIVOICE_FAVICON',
        self::AISTUDIO => 'AISTUDIO',
        self::DEEPLINK => 'DEEPLINK',
        self::NOTIFICATION => 'NOTIFICATION',
        self::PROFILE_MESSAGE_BUTTON => 'PROFILE_MESSAGE_BUTTON',
        self::FORWARD => 'FORWARD',
        self::APP_SHORTCUT => 'APP_SHORTCUT',
        self::FF_FAMILY => 'FF_FAMILY',
        self::AI_TAB => 'AI_TAB',
        self::AI_HOME => 'AI_HOME',
        self::AI_DEEPLINK_IMMERSIVE => 'AI_DEEPLINK_IMMERSIVE',
        self::AI_DEEPLINK => 'AI_DEEPLINK',
        self::META_AI_CHAT_SHORTCUT_AI_STUDIO => 'META_AI_CHAT_SHORTCUT_AI_STUDIO',
        self::UGC_CHAT_SHORTCUT_AI_STUDIO => 'UGC_CHAT_SHORTCUT_AI_STUDIO',
        self::NEW_CHAT_AI_STUDIO => 'NEW_CHAT_AI_STUDIO',
        self::AIVOICE_FAVICON_CALL_HISTORY => 'AIVOICE_FAVICON_CALL_HISTORY',
        self::ASK_META_AI_CONTEXT_MENU => 'ASK_META_AI_CONTEXT_MENU',
        self::ASK_META_AI_CONTEXT_MENU_1ON1 => 'ASK_META_AI_CONTEXT_MENU_1ON1',
        self::ASK_META_AI_CONTEXT_MENU_GROUP => 'ASK_META_AI_CONTEXT_MENU_GROUP',
        self::INVOKE_META_AI_1ON1 => 'INVOKE_META_AI_1ON1',
        self::INVOKE_META_AI_GROUP => 'INVOKE_META_AI_GROUP',
        self::META_AI_FORWARD => 'META_AI_FORWARD',
        self::NEW_CHAT_AI_CONTACT => 'NEW_CHAT_AI_CONTACT',
        self::MESSAGE_QUICK_ACTION_1_ON_1_CHAT => 'MESSAGE_QUICK_ACTION_1_ON_1_CHAT',
        self::MESSAGE_QUICK_ACTION_GROUP_CHAT => 'MESSAGE_QUICK_ACTION_GROUP_CHAT',
        self::ATTACHMENT_TRAY_1_ON_1_CHAT => 'ATTACHMENT_TRAY_1_ON_1_CHAT',
        self::ATTACHMENT_TRAY_GROUP_CHAT => 'ATTACHMENT_TRAY_GROUP_CHAT',
        self::ASK_META_AI_MEDIA_VIEWER_1ON1 => 'ASK_META_AI_MEDIA_VIEWER_1ON1',
        self::ASK_META_AI_MEDIA_VIEWER_GROUP => 'ASK_META_AI_MEDIA_VIEWER_GROUP',
    ];

    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);
    }
}

