use serde::{Deserialize, Serialize};
use schemars::JsonSchema;
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
#[schemars(rename = "functions.inventions.prompts.ListPromptResponse")]
pub struct ListPromptResponse {
pub data: Vec<ListPromptItem>,
}
pub type ListPromptItem = crate::RemotePath;
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
#[schemars(rename = "functions.inventions.prompts.GetPromptResponse")]
pub struct GetPromptResponse {
#[serde(flatten)]
#[schemars(schema_with = "crate::flatten_schema::<crate::RemotePath>")]
pub path: crate::RemotePath,
#[serde(flatten)]
#[schemars(schema_with = "crate::flatten_schema::<super::RemotePrompt>")]
pub inner: super::RemotePrompt,
}
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
#[schemars(rename = "functions.inventions.prompts.UsagePromptResponse")]
pub struct UsagePromptResponse {
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,
}