export interface LlmModelOption {
  value: string;
  label: string;
}

export interface LlmProviderOption {
  value: string;
  label: string;
  defaultBaseUrl: string;
  models: LlmModelOption[];
}

export const LLM_PROVIDERS: LlmProviderOption[] = [
  {
    value: 'deepseek',
    label: 'DeepSeek',
    defaultBaseUrl: 'https://api.deepseek.com',
    models: [
      { value: 'deepseek-v4-pro', label: 'DeepSeek V4 Pro' },
      { value: 'deepseek-v4-flash', label: 'DeepSeek V4 Flash' },
      { value: 'deepseek-chat', label: 'DeepSeek Chat' },
      { value: 'deepseek-reasoner', label: 'DeepSeek Reasoner' },
    ],
  },
  {
    value: 'glm',
    label: '智谱 GLM',
    defaultBaseUrl: 'https://open.bigmodel.cn/api/paas/v4',
    models: [
      { value: 'glm-5v-turbo', label: 'GLM-5V-Turbo' },
      { value: 'glm-5.1', label: 'GLM-5.1' },
      { value: 'glm-4-plus', label: 'GLM-4-Plus' },
      { value: 'glm-4-flash', label: 'GLM-4-Flash' },
    ],
  },
  {
    value: 'mimo',
    label: '小米 MiMo',
    defaultBaseUrl: 'https://api.xiaomimimo.com/v1',
    models: [
      { value: 'mimo-v2.5', label: 'MiMo 2.5' },
    ],
  },
  {
    value: 'minimax',
    label: 'MiniMax',
    defaultBaseUrl: 'https://api.minimax.chat/v1',
    models: [
      { value: 'MiniMax-M1-80k', label: 'MiniMax-M1 (2.7)' },
      { value: 'MiniMax-Text-01', label: 'MiniMax-Text-01 (2.5)' },
    ],
  },
  {
    value: 'gemini',
    label: 'Google Gemini',
    defaultBaseUrl: 'https://generativelanguage.googleapis.com/v1beta/openai',
    models: [
      { value: 'gemini-3.1-pro', label: 'Gemini 3.1 Pro' },
      { value: 'gemini-3.0-flash', label: 'Gemini 3.0 Flash' },
      { value: 'gemini-2.5-pro-preview-p', label: 'Gemini 2.5 Pro Preview' },
      { value: 'gemini-2.5-pro', label: 'Gemini 2.5 Pro' },
      { value: 'gemini-2.5-flash', label: 'Gemini 2.5 Flash' },
      { value: 'gemini-2.0-flash', label: 'Gemini 2.0 Flash' },
    ],
  },
  {
    value: 'openai',
    label: 'OpenAI GPT',
    defaultBaseUrl: 'https://api.openai.com/v1',
    models: [
      { value: 'gpt-5', label: 'GPT-5' },
      { value: 'gpt-5-mini', label: 'GPT-5 Mini' },
      { value: 'gpt-4o', label: 'GPT-4o' },
      { value: 'gpt-4o-mini', label: 'GPT-4o Mini' },
      { value: 'gpt-4.1', label: 'GPT-4.1' },
    ],
  },
  {
    value: 'anthropic',
    label: 'Claude Sonnet',
    defaultBaseUrl: '',
    models: [
      { value: 'claude-sonnet-4-20250514', label: 'Claude Sonnet 4' },
      { value: 'claude-3.5-sonnet', label: 'Claude 3.5 Sonnet' },
    ],
  },
];
