use super::anthropic::{AnthropicSettingsV1, AnthropicProvider};
use super::openai::{OpenAISettingsV1, OpenAIProvider};
use super::perplexity::{PerplexitySettings, PerplexityProvider};
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(untagged)]
pub enum LlmProvider {
AnthropicProvider(AnthropicProvider),
OpenAIProvider(OpenAIProvider),
PerplexityProvider(PerplexityProvider),
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(untagged)]
pub enum LlmSettingsV1 {
SettingsNope(SettingsNope),
AnthropicSettingsV1(AnthropicSettingsV1),
OpenAISettingsV1(OpenAISettingsV1),
PerplexitySettings(PerplexitySettings),
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SettingsNope {
pub r#type: Option<()>,
pub model: Option<()>,
}