use crate::{AiConfig, AiResult};
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct TextToImageParams {
pub prompt: String,
pub negative_prompt: Option<String>,
pub width: Option<u32>,
pub height: Option<u32>,
pub num_images: Option<u32>,
pub seed: Option<i64>,
}
pub trait TextToImageCapability: Send + Sync {
#[allow(async_fn_in_trait)]
async fn text_to_image(&self, params: &TextToImageParams, config: &AiConfig) -> AiResult<Vec<String>>;
}