use serde::{Deserialize, Serialize};
use super::ShowModelDetails;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize, Default)]
pub struct ShowResponse {
#[serde(default)]
pub parameters: Option<String>,
#[serde(default)]
pub license: Option<String>,
#[serde(default)]
pub modified_at: Option<String>,
#[serde(default)]
pub details: Option<ShowModelDetails>,
#[serde(default)]
pub template: Option<String>,
#[serde(default)]
pub capabilities: Option<Vec<String>>,
#[serde(default)]
pub model_info: Option<serde_json::Value>,
}
impl ShowResponse {
pub fn has_capability(&self, capability: &str) -> bool {
self.capabilities
.as_ref()
.is_some_and(|caps| caps.iter().any(|c| c == capability))
}
}