use serde::{Deserialize, Serialize};
#[allow(clippy::struct_excessive_bools)] #[derive(Clone, Copy, Debug, Eq, PartialEq, Serialize, Deserialize)]
pub struct Capabilities {
pub streaming: bool,
pub tools: bool,
pub multimodal_image: bool,
pub multimodal_audio: bool,
pub multimodal_video: bool,
pub multimodal_document: bool,
pub system_prompt: bool,
pub structured_output: bool,
pub prompt_caching: bool,
pub thinking: bool,
pub citations: bool,
pub web_search: bool,
pub computer_use: bool,
pub max_context_tokens: u32,
}
impl Default for Capabilities {
fn default() -> Self {
Self {
streaming: false,
tools: false,
multimodal_image: false,
multimodal_audio: false,
multimodal_video: false,
multimodal_document: false,
system_prompt: false,
structured_output: false,
prompt_caching: false,
thinking: false,
citations: false,
web_search: false,
computer_use: false,
max_context_tokens: 0,
}
}
}