/**
 * @license
 * Copyright 2025 Google LLC
 * SPDX-License-Identifier: Apache-2.0
 */
// Defines valid event metadata keys for Clearcut logging.
export var EventMetadataKey;
(function (EventMetadataKey) {
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_KEY_UNKNOWN"] = 0] = "GEMINI_CLI_KEY_UNKNOWN";
    // ==========================================================================
    // Start Session Event Keys
    // ===========================================================================
    // Logs the model id used in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_MODEL"] = 1] = "GEMINI_CLI_START_SESSION_MODEL";
    // Logs the embedding model id used in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_EMBEDDING_MODEL"] = 2] = "GEMINI_CLI_START_SESSION_EMBEDDING_MODEL";
    // Logs the sandbox that was used in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_SANDBOX"] = 3] = "GEMINI_CLI_START_SESSION_SANDBOX";
    // Logs the core tools that were enabled in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_CORE_TOOLS"] = 4] = "GEMINI_CLI_START_SESSION_CORE_TOOLS";
    // Logs the approval mode that was used in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_APPROVAL_MODE"] = 5] = "GEMINI_CLI_START_SESSION_APPROVAL_MODE";
    // Logs whether an API key was used in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_API_KEY_ENABLED"] = 6] = "GEMINI_CLI_START_SESSION_API_KEY_ENABLED";
    // Logs whether the Vertex API was used in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_VERTEX_API_ENABLED"] = 7] = "GEMINI_CLI_START_SESSION_VERTEX_API_ENABLED";
    // Logs whether debug mode was enabled in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_DEBUG_MODE_ENABLED"] = 8] = "GEMINI_CLI_START_SESSION_DEBUG_MODE_ENABLED";
    // Logs the MCP servers that were enabled in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_MCP_SERVERS"] = 9] = "GEMINI_CLI_START_SESSION_MCP_SERVERS";
    // Logs whether user-collected telemetry was enabled in the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_TELEMETRY_ENABLED"] = 10] = "GEMINI_CLI_START_SESSION_TELEMETRY_ENABLED";
    // Logs whether prompt collection was enabled for user-collected telemetry.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_TELEMETRY_LOG_USER_PROMPTS_ENABLED"] = 11] = "GEMINI_CLI_START_SESSION_TELEMETRY_LOG_USER_PROMPTS_ENABLED";
    // Logs whether the session was configured to respect gitignore files.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_RESPECT_GITIGNORE"] = 12] = "GEMINI_CLI_START_SESSION_RESPECT_GITIGNORE";
    // ==========================================================================
    // User Prompt Event Keys
    // ===========================================================================
    // Logs the length of the prompt.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_USER_PROMPT_LENGTH"] = 13] = "GEMINI_CLI_USER_PROMPT_LENGTH";
    // ==========================================================================
    // Tool Call Event Keys
    // ===========================================================================
    // Logs the function name.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_TOOL_CALL_NAME"] = 14] = "GEMINI_CLI_TOOL_CALL_NAME";
    // Logs the user's decision about how to handle the tool call.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_TOOL_CALL_DECISION"] = 15] = "GEMINI_CLI_TOOL_CALL_DECISION";
    // Logs whether the tool call succeeded.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_TOOL_CALL_SUCCESS"] = 16] = "GEMINI_CLI_TOOL_CALL_SUCCESS";
    // Logs the tool call duration in milliseconds.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_TOOL_CALL_DURATION_MS"] = 17] = "GEMINI_CLI_TOOL_CALL_DURATION_MS";
    // Logs the tool call error message, if any.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_TOOL_ERROR_MESSAGE"] = 18] = "GEMINI_CLI_TOOL_ERROR_MESSAGE";
    // Logs the tool call error type, if any.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_TOOL_CALL_ERROR_TYPE"] = 19] = "GEMINI_CLI_TOOL_CALL_ERROR_TYPE";
    // ==========================================================================
    // GenAI API Request Event Keys
    // ===========================================================================
    // Logs the model id of the request.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_REQUEST_MODEL"] = 20] = "GEMINI_CLI_API_REQUEST_MODEL";
    // ==========================================================================
    // GenAI API Response Event Keys
    // ===========================================================================
    // Logs the model id of the API call.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_RESPONSE_MODEL"] = 21] = "GEMINI_CLI_API_RESPONSE_MODEL";
    // Logs the status code of the response.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_RESPONSE_STATUS_CODE"] = 22] = "GEMINI_CLI_API_RESPONSE_STATUS_CODE";
    // Logs the duration of the API call in milliseconds.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_RESPONSE_DURATION_MS"] = 23] = "GEMINI_CLI_API_RESPONSE_DURATION_MS";
    // Logs the error message of the API call, if any.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_ERROR_MESSAGE"] = 24] = "GEMINI_CLI_API_ERROR_MESSAGE";
    // Logs the input token count of the API call.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_RESPONSE_INPUT_TOKEN_COUNT"] = 25] = "GEMINI_CLI_API_RESPONSE_INPUT_TOKEN_COUNT";
    // Logs the output token count of the API call.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_RESPONSE_OUTPUT_TOKEN_COUNT"] = 26] = "GEMINI_CLI_API_RESPONSE_OUTPUT_TOKEN_COUNT";
    // Logs the cached token count of the API call.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_RESPONSE_CACHED_TOKEN_COUNT"] = 27] = "GEMINI_CLI_API_RESPONSE_CACHED_TOKEN_COUNT";
    // Logs the thinking token count of the API call.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_RESPONSE_THINKING_TOKEN_COUNT"] = 28] = "GEMINI_CLI_API_RESPONSE_THINKING_TOKEN_COUNT";
    // Logs the tool use token count of the API call.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_RESPONSE_TOOL_TOKEN_COUNT"] = 29] = "GEMINI_CLI_API_RESPONSE_TOOL_TOKEN_COUNT";
    // ==========================================================================
    // GenAI API Error Event Keys
    // ===========================================================================
    // Logs the model id of the API call.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_ERROR_MODEL"] = 30] = "GEMINI_CLI_API_ERROR_MODEL";
    // Logs the error type.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_ERROR_TYPE"] = 31] = "GEMINI_CLI_API_ERROR_TYPE";
    // Logs the status code of the error response.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_ERROR_STATUS_CODE"] = 32] = "GEMINI_CLI_API_ERROR_STATUS_CODE";
    // Logs the duration of the API call in milliseconds.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_API_ERROR_DURATION_MS"] = 33] = "GEMINI_CLI_API_ERROR_DURATION_MS";
    // ==========================================================================
    // End Session Event Keys
    // ===========================================================================
    // Logs the end of a session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_END_SESSION_ID"] = 34] = "GEMINI_CLI_END_SESSION_ID";
    // ==========================================================================
    // Shared Keys
    // ===========================================================================
    // Logs the Prompt Id
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_PROMPT_ID"] = 35] = "GEMINI_CLI_PROMPT_ID";
    // Logs the Auth type for the prompt, api responses and errors.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_AUTH_TYPE"] = 36] = "GEMINI_CLI_AUTH_TYPE";
    // Logs the total number of Google accounts ever used.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_GOOGLE_ACCOUNTS_COUNT"] = 37] = "GEMINI_CLI_GOOGLE_ACCOUNTS_COUNT";
    // Logs the Surface from where the Gemini CLI was invoked, eg: VSCode.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_SURFACE"] = 39] = "GEMINI_CLI_SURFACE";
    // Logs the session id
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_SESSION_ID"] = 40] = "GEMINI_CLI_SESSION_ID";
    // Logs the Gemini CLI version
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_VERSION"] = 54] = "GEMINI_CLI_VERSION";
    // Logs the Gemini CLI Git commit hash
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_GIT_COMMIT_HASH"] = 55] = "GEMINI_CLI_GIT_COMMIT_HASH";
    // Logs the Gemini CLI OS
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_OS"] = 82] = "GEMINI_CLI_OS";
    // Logs active user settings
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_USER_SETTINGS"] = 84] = "GEMINI_CLI_USER_SETTINGS";
    // ==========================================================================
    // Loop Detected Event Keys
    // ===========================================================================
    // Logs the type of loop detected.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_LOOP_DETECTED_TYPE"] = 38] = "GEMINI_CLI_LOOP_DETECTED_TYPE";
    // ==========================================================================
    // Slash Command Event Keys
    // ===========================================================================
    // Logs the name of the slash command.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_SLASH_COMMAND_NAME"] = 41] = "GEMINI_CLI_SLASH_COMMAND_NAME";
    // Logs the subcommand of the slash command.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_SLASH_COMMAND_SUBCOMMAND"] = 42] = "GEMINI_CLI_SLASH_COMMAND_SUBCOMMAND";
    // Logs the status of the slash command (e.g. 'success', 'error')
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_SLASH_COMMAND_STATUS"] = 51] = "GEMINI_CLI_SLASH_COMMAND_STATUS";
    // ==========================================================================
    // Next Speaker Check Event Keys
    // ===========================================================================
    // Logs the finish reason of the previous streamGenerateContent response
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_RESPONSE_FINISH_REASON"] = 43] = "GEMINI_CLI_RESPONSE_FINISH_REASON";
    // Logs the result of the next speaker check
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_NEXT_SPEAKER_CHECK_RESULT"] = 44] = "GEMINI_CLI_NEXT_SPEAKER_CHECK_RESULT";
    // ==========================================================================
    // Malformed JSON Response Event Keys
    // ==========================================================================
    // Logs the model that produced the malformed JSON response.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_MALFORMED_JSON_RESPONSE_MODEL"] = 45] = "GEMINI_CLI_MALFORMED_JSON_RESPONSE_MODEL";
    // ==========================================================================
    // IDE Connection Event Keys
    // ===========================================================================
    // Logs the type of the IDE connection.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_IDE_CONNECTION_TYPE"] = 46] = "GEMINI_CLI_IDE_CONNECTION_TYPE";
    // Logs AI added lines in edit/write tool response.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_AI_ADDED_LINES"] = 47] = "GEMINI_CLI_AI_ADDED_LINES";
    // Logs AI removed lines in edit/write tool response.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_AI_REMOVED_LINES"] = 48] = "GEMINI_CLI_AI_REMOVED_LINES";
    // Logs user added lines in edit/write tool response.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_USER_ADDED_LINES"] = 49] = "GEMINI_CLI_USER_ADDED_LINES";
    // Logs user removed lines in edit/write tool response.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_USER_REMOVED_LINES"] = 50] = "GEMINI_CLI_USER_REMOVED_LINES";
    // ==========================================================================
    // Kitty Sequence Overflow Event Keys
    // ===========================================================================
    // Logs the truncated kitty sequence.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_KITTY_TRUNCATED_SEQUENCE"] = 52] = "GEMINI_CLI_KITTY_TRUNCATED_SEQUENCE";
    // Logs the length of the kitty sequence that overflowed.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_KITTY_SEQUENCE_LENGTH"] = 53] = "GEMINI_CLI_KITTY_SEQUENCE_LENGTH";
    // ==========================================================================
    // Conversation Finished Event Keys
    // ===========================================================================
    // Logs the approval mode of the session.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_APPROVAL_MODE"] = 58] = "GEMINI_CLI_APPROVAL_MODE";
    // Logs the number of turns
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_CONVERSATION_TURN_COUNT"] = 59] = "GEMINI_CLI_CONVERSATION_TURN_COUNT";
    // Logs the number of tokens before context window compression.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_COMPRESSION_TOKENS_BEFORE"] = 60] = "GEMINI_CLI_COMPRESSION_TOKENS_BEFORE";
    // Logs the number of tokens after context window compression.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_COMPRESSION_TOKENS_AFTER"] = 61] = "GEMINI_CLI_COMPRESSION_TOKENS_AFTER";
    // Logs tool type whether it is mcp or native.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_TOOL_TYPE"] = 62] = "GEMINI_CLI_TOOL_TYPE";
    // Logs count of MCP servers in Start Session Event
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_MCP_SERVERS_COUNT"] = 63] = "GEMINI_CLI_START_SESSION_MCP_SERVERS_COUNT";
    // Logs count of MCP tools in Start Session Event
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_MCP_TOOLS_COUNT"] = 64] = "GEMINI_CLI_START_SESSION_MCP_TOOLS_COUNT";
    // Logs name of MCP tools as comma separated string
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_START_SESSION_MCP_TOOLS"] = 65] = "GEMINI_CLI_START_SESSION_MCP_TOOLS";
    // ==========================================================================
    // Research Event Keys
    // ===========================================================================
    // Logs the research opt-in status (true/false)
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_RESEARCH_OPT_IN_STATUS"] = 66] = "GEMINI_CLI_RESEARCH_OPT_IN_STATUS";
    // Logs the contact email for research participation
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_RESEARCH_CONTACT_EMAIL"] = 67] = "GEMINI_CLI_RESEARCH_CONTACT_EMAIL";
    // Logs the user ID for research events
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_RESEARCH_USER_ID"] = 68] = "GEMINI_CLI_RESEARCH_USER_ID";
    // Logs the type of research feedback
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_RESEARCH_FEEDBACK_TYPE"] = 69] = "GEMINI_CLI_RESEARCH_FEEDBACK_TYPE";
    // Logs the content of research feedback
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_RESEARCH_FEEDBACK_CONTENT"] = 70] = "GEMINI_CLI_RESEARCH_FEEDBACK_CONTENT";
    // Logs survey responses for research feedback (JSON stringified)
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_RESEARCH_SURVEY_RESPONSES"] = 71] = "GEMINI_CLI_RESEARCH_SURVEY_RESPONSES";
    // ==========================================================================
    // File Operation Event Keys
    // ===========================================================================
    // Logs the programming language of the project.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_PROGRAMMING_LANGUAGE"] = 56] = "GEMINI_CLI_PROGRAMMING_LANGUAGE";
    // Logs the operation type of the file operation.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_FILE_OPERATION_TYPE"] = 57] = "GEMINI_CLI_FILE_OPERATION_TYPE";
    // Logs the number of lines in the file operation.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_FILE_OPERATION_LINES"] = 72] = "GEMINI_CLI_FILE_OPERATION_LINES";
    // Logs the mimetype of the file in the file operation.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_FILE_OPERATION_MIMETYPE"] = 73] = "GEMINI_CLI_FILE_OPERATION_MIMETYPE";
    // Logs the extension of the file in the file operation.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_FILE_OPERATION_EXTENSION"] = 74] = "GEMINI_CLI_FILE_OPERATION_EXTENSION";
    // ==========================================================================
    // Content Streaming Event Keys
    // ===========================================================================
    // Logs the error message for an invalid chunk.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_INVALID_CHUNK_ERROR_MESSAGE"] = 75] = "GEMINI_CLI_INVALID_CHUNK_ERROR_MESSAGE";
    // Logs the attempt number for a content retry.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_CONTENT_RETRY_ATTEMPT_NUMBER"] = 76] = "GEMINI_CLI_CONTENT_RETRY_ATTEMPT_NUMBER";
    // Logs the error type for a content retry.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_CONTENT_RETRY_ERROR_TYPE"] = 77] = "GEMINI_CLI_CONTENT_RETRY_ERROR_TYPE";
    // Logs the delay in milliseconds for a content retry.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_CONTENT_RETRY_DELAY_MS"] = 78] = "GEMINI_CLI_CONTENT_RETRY_DELAY_MS";
    // Logs the total number of attempts for a content retry failure.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_CONTENT_RETRY_FAILURE_TOTAL_ATTEMPTS"] = 79] = "GEMINI_CLI_CONTENT_RETRY_FAILURE_TOTAL_ATTEMPTS";
    // Logs the final error type for a content retry failure.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_CONTENT_RETRY_FAILURE_FINAL_ERROR_TYPE"] = 80] = "GEMINI_CLI_CONTENT_RETRY_FAILURE_FINAL_ERROR_TYPE";
    // Logs the total duration in milliseconds for a content retry failure.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_CONTENT_RETRY_FAILURE_TOTAL_DURATION_MS"] = 81] = "GEMINI_CLI_CONTENT_RETRY_FAILURE_TOTAL_DURATION_MS";
    // Logs the current nodejs version
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_NODE_VERSION"] = 83] = "GEMINI_CLI_NODE_VERSION";
    // ==========================================================================
    // Extension Install Event Keys
    // ===========================================================================
    // Logs the name of the extension.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_EXTENSION_NAME"] = 85] = "GEMINI_CLI_EXTENSION_NAME";
    // Logs the version of the extension.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_EXTENSION_VERSION"] = 86] = "GEMINI_CLI_EXTENSION_VERSION";
    // Logs the source of the extension.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_EXTENSION_SOURCE"] = 87] = "GEMINI_CLI_EXTENSION_SOURCE";
    // Logs the status of the extension install.
    EventMetadataKey[EventMetadataKey["GEMINI_CLI_EXTENSION_INSTALL_STATUS"] = 88] = "GEMINI_CLI_EXTENSION_INSTALL_STATUS";
})(EventMetadataKey || (EventMetadataKey = {}));
//# sourceMappingURL=event-metadata-key.js.map