#ifndef GLOBAL_KEY_DEFINE_H
#define GLOBAL_KEY_DEFINE_H

namespace uos_ai {

inline constexpr char STR_KEY_ERROR[] = "error";
inline constexpr char STR_KEY_MESSAGE[] = "message";
inline constexpr char STR_KEY_ID[] = "id";
inline constexpr char STR_KEY_NAME[] = "name";
inline constexpr char STR_KEY_TITLE[] = "title";
inline constexpr char STR_KEY_DESCRIPTION[] = "description";
inline constexpr char STR_KEY_ENUM[] = "enum";
inline constexpr char STR_KEY_ICON[] = "icon";
inline constexpr char STR_KEY_ICON_NAME[] = "icon_name";
inline constexpr char STR_KEY_IMAGE_TYPE[] = "image_type";
inline constexpr char STR_KEY_PATH[] = "path";
inline constexpr char STR_KEY_PLACE_HOLDER[] = "place_holder";
inline constexpr char STR_KEY_GRADIENT_COLORS[] = "gradient_colors";
inline constexpr char STR_KEY_ROLE[] = "role";
inline constexpr char STR_KEY_CONTENT[] = "content";
inline constexpr char STR_KEY_PREVIOUS[] = "previous";
inline constexpr char STR_KEY_NEXT[] = "next";
inline constexpr char STR_KEY_CUR_NEXT[] = "cur_next";
inline constexpr char STR_KEY_ROOT[] = "root";
inline constexpr char STR_KEY_MESSAGES[] = "messages";
inline constexpr char STR_KEY_ASSISTANT[] = "assistant";
inline constexpr char STR_KEY_ASSISTANT_NAME[] = "assistant_name";
inline constexpr char STR_KEY_MODEL[] = "model";
inline constexpr char STR_KEY_MODEL_NAME[] = "model_name";
inline constexpr char STR_KEY_RENDER_MESSAGE[] = "render_message";
inline constexpr char STR_KEY_SOURCE[] = "source";
inline constexpr char STR_KEY_TYPE[] = "type";
inline constexpr char STR_KEY_DATA[] = "data";
inline constexpr char STR_KEY_TEXT[] = "text";
inline constexpr char STR_KEY_IMAGE[] = "image";
inline constexpr char STR_KEY_FILE[] = "file";
inline constexpr char STR_KEY_TOOL[] = "tool";
inline constexpr char STR_KEY_INSTRUCTION[] = "instruction";
inline constexpr char STR_KEY_THINKING[] = "thinking";
inline constexpr char STR_KEY_DISPLAY_CONTENT[] = "display_content";
inline constexpr char STR_KEY_CHAT_TYPE[] = "chat_type";
inline constexpr char STR_KEY_DETAILS[] = "details";
inline constexpr char STR_KEY_PARAGRAPHS[] = "paragraphs";
inline constexpr char STR_KEY_OUTLINE[] = "outline";
inline constexpr char STR_KEY_DOC_CARD[] = "doc_card";
inline constexpr char STR_KEY_COMMAND_CARD[] = "command_card";
inline constexpr char STR_KEY_GUESS_YOU_WANT[] = "guess_you_want";
inline constexpr char STR_KEY_EXTENSION[] = "extension";
inline constexpr char STR_KEY_SESSION_ID[] = "session_id";
inline constexpr char STR_KEY_CONVERSATION_ID[] = "conversation_id";
inline constexpr char STR_KEY_VERSION[] = "version";
inline constexpr char STR_KEY_STATUS[] = "status";
inline constexpr char STR_KEY_PARAMS[] = "params";
inline constexpr char STR_KEY_RESULT[] = "result";
inline constexpr char STR_KEY_OUTLINE_PATH[] = "outline_path";
inline constexpr char STR_KEY_UPLOAD_FILES[] = "upload_files";

inline constexpr char STR_KEY_OPENAI_COMPATIBLE[] = "openai_compatible";
inline constexpr char STR_KEY_OPENAI_RESPONSE[] = "openai_response";
inline constexpr char STR_KEY_PROVIDER_HOST[] = "provider_host";
inline constexpr char STR_KEY_PROVIDER[] = "provider";

inline constexpr char STR_KEY_API_KEY[] = "api_key";
inline constexpr char STR_KEY_API_SECRET[] = "api_secret";
inline constexpr char STR_KEY_APP_ID[] = "app_id";
inline constexpr char STR_KEY_ARCH[] = "arch";
inline constexpr char STR_KEY_ABILITY[] = "ability";
inline constexpr char STR_KEY_MODEL_ID[] = "model_id";
inline constexpr char STR_KEY_ALWAYS_APPROVE[] = "always_approve";
inline constexpr char STR_KEY_VALUE[] = "value";
inline constexpr char STR_KEY_AUTH[] = "auth";
inline constexpr char STR_KEY_ADDITIONAL[] = "additional";

inline constexpr char STR_KEY_SYSTEM[] = "system";
inline constexpr char STR_KEY_USER[] = "user";
inline constexpr char STR_KEY_FUNCTION[] = "function";
inline constexpr char STR_KEY_PARAMETERS[] = "parameters";
inline constexpr char STR_KEY_PROPERTIES[] = "properties";
inline constexpr char STR_KEY_REQUIRED[] = "required";
inline constexpr char STR_KEY_ARGUMENTS[] = "arguments";
inline constexpr char STR_KEY_TOOL_CALL_ID[] = "tool_call_id";
inline constexpr char STR_KEY_TOOL_CALLS[] = "tool_calls";
inline constexpr char STR_KEY_TOOLS[] = "tools";
inline constexpr char STR_KEY_ITEMS[] = "items";
inline constexpr char STR_KEY_ENTRIES[] = "entries";
inline constexpr char STR_KEY_KIND[] = "kind";
inline constexpr char STR_KEY_AGENT_STEP[] = "agent_step";
inline constexpr char STR_KEY_ELAPSED[] = "elapsed";

inline constexpr char STR_KEY_CHOICES[] = "choices";
inline constexpr char STR_KEY_DELTA[] = "delta";
inline constexpr char STR_KEY_REASONING_CONTENT[] = "reasoning_content";
inline constexpr char STR_KEY_INDEX[] = "index";
inline constexpr char STR_KEY_USAGE[] = "usage";

inline constexpr char STR_KEY_STREAM[] = "stream";
inline constexpr char STR_KEY_MAX_TOKENS[] = "max_tokens";
inline constexpr char STR_KEY_TEMPERATURE[] = "temperature";

inline constexpr char STR_KEY_TIMEOUT[] = "timeout";
inline constexpr char STR_KEY_ERROR_MESSAGE[] = "error_message";
inline constexpr char STR_KEY_HTTP_ERROR[] = "http_error";
inline constexpr char STR_KEY_ATTACH_REASONING[] = "attach_reasoning";

inline constexpr char STR_KEY_RETRY[] = "retry";
inline constexpr char STR_KEY_CONTEXT[] = "context";
inline constexpr char STR_KEY_REFERENCES[] = "references";
inline constexpr char STR_KEY_SUMMARY[] = "summary";
inline constexpr char STR_KEY_QUERY[] = "query";
inline constexpr char STR_KEY_THOUGHT[] = "thought";
inline constexpr char STR_KEY_URL[] = "url";
inline constexpr char STR_KEY_HREF[] = "href";
inline constexpr char STR_KEY_SNIPPET[] = "snippet";
inline constexpr char STR_KEY_WEBSITE[] = "website";
inline constexpr char STR_KEY_DISTANCE[] = "distance";
inline constexpr char STR_KEY_CREATED_AT[] = "created_at";
inline constexpr char STR_KEY_UPDATED_AT[] = "updated_at";
inline constexpr char STR_KEY_INTRODUCTION[] = "introduction";
inline constexpr char STR_KEY_REPLY_TYPE[] = "reply_type";
inline constexpr char STR_KEY_REPLY_CONTENT[] = "reply_content";

inline constexpr char STR_KEY_UOS_AI[] = "uos_ai";
inline constexpr char STR_KEY_OPENAI[] = "openai";
inline constexpr char STR_KEY_VOLCENGINE[] = "volcengine";
inline constexpr char STR_KEY_ANTHROPIC[] = "anthropic";
inline constexpr char STR_KEY_GEMINI[] = "gemini";
inline constexpr char STR_KEY_DEEPSEEK[] = "deepseek";
inline constexpr char STR_KEY_PRIVATE_NET[] = "private_net";
inline constexpr char STR_KEY_MINIMAX[] = "minimax";
inline constexpr char STR_KEY_MOONSHOT[] = "moonshot";
inline constexpr char STR_KEY_BIGMODEL[] = "bigmodel";
inline constexpr char STR_KEY_BAILIAN[] = "bailian";
inline constexpr char STR_KEY_MODELHUB[] = "modelhub";
inline constexpr char STR_KEY_COZE_AGENT[] = "coze_agent";
inline constexpr char STR_KEY_LLM_PLUGIN[] = "llm_plugin";

inline constexpr char STR_KEY_NETWORK[] = "network";
inline constexpr char STR_KEY_ONLINE[] = "online";
inline constexpr char STR_KEY_LOCAL[] = "local";
inline constexpr char STR_KEY_PRIVATE[] = "private";

// File related keys
inline constexpr char STR_KEY_FILE_PATH[] = "file_path";
inline constexpr char STR_KEY_PLUGIN_ONLY[] = "plugin_only";
inline constexpr char STR_KEY_MULTIPLE[] = "multiple";
inline constexpr char STR_KEY_CATEGORY[] = "category";
inline constexpr char STR_KEY_DEFAULT_PROMPT[] = "default_prompt";
inline constexpr char STR_KEY_FILE_NAME_TEXT[] = "file_name_text";
inline constexpr char STR_KEY_IMG_BASE64[] = "img_base64";
inline constexpr char STR_KEY_DOC_CONTENT[] = "doc_content";
inline constexpr char STR_KEY_IS_ENABLED_MOUTH_OVER[] = "is_enabled_mouth_over";
inline constexpr char STR_KEY_IS_SHOW_PARSING_STATUS[] = "is_show_parsing_status";
inline constexpr char STR_KEY_IS_PARSING_STATUS_END[] = "is_parsing_status_end";
inline constexpr char STR_KEY_PARSING_STATUS_TEXT[] = "parsing_status_text";
inline constexpr char STR_KEY_IS_FILE_PARSING_SUCCESS[] = "is_file_parsing_success";
inline constexpr char STR_KEY_FILE_SIZE[] = "file_size";
inline constexpr char STR_KEY_WEB_SEARCH[] = "web_search";
inline constexpr char STR_KEY_INTERACTIVE_COMPONENTPS[] = "interactive_components";
}
#endif // GLOBAL_KEY_DEFINE_H
