use serde::{Deserialize, Serialize};
use schemars::JsonSchema;
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
#[schemars(rename = "agent.ListAgentResponse")]
pub struct ListAgentResponse {
pub data: Vec<ListAgentItem>,
}
pub type ListAgentItem = crate::RemotePath;
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
#[schemars(rename = "agent.GetAgentResponse")]
pub struct GetAgentResponse {
#[serde(flatten)]
#[schemars(schema_with = "crate::flatten_schema::<crate::RemotePath>")]
pub path: crate::RemotePath,
#[serde(flatten)]
#[schemars(schema_with = "crate::flatten_schema::<super::RemoteAgentWithFallbacks>")]
pub inner: super::RemoteAgentWithFallbacks,
}
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
#[schemars(rename = "agent.UsageAgentResponse")]
pub struct UsageAgentResponse {
pub requests: u64,
pub completion_tokens: u64,
pub prompt_tokens: u64,
#[serde(deserialize_with = "crate::serde_util::decimal")]
#[schemars(with = "f64")]
pub total_cost: rust_decimal::Decimal,
}