vtcode_llm/
provider_config_types.rs1use std::path::PathBuf;
4use vtcode_config::TimeoutsConfig;
5use vtcode_config::auth::CopilotAuthConfig;
6use vtcode_config::auth::OpenAIChatGptAuthHandle;
7use vtcode_config::core::{AnthropicConfig, ModelConfig, OpenAIConfig, PromptCachingConfig};
8
9#[derive(Debug, Clone)]
10pub struct ProviderConfig {
11 pub api_key: Option<String>,
12 pub openai_chatgpt_auth: Option<OpenAIChatGptAuthHandle>,
13 pub copilot_auth: Option<CopilotAuthConfig>,
14 pub base_url: Option<String>,
15 pub model: Option<String>,
16 pub prompt_cache: Option<PromptCachingConfig>,
17 pub timeouts: Option<TimeoutsConfig>,
18 pub openai: Option<OpenAIConfig>,
19 pub anthropic: Option<AnthropicConfig>,
20 pub model_behavior: Option<ModelConfig>,
21 pub workspace_root: Option<PathBuf>,
22}