use crate::multimodal::ImageSource;
#[derive(Debug, Clone, PartialEq, Eq)]
pub enum InputMessage {
System {
content: String,
},
User {
content: String,
image_sources: Vec<ImageSource>,
},
Assistant {
content: String,
reasoning_content: Option<String>,
tool_calls: Option<Vec<ToolCall>>,
},
Tool {
content: String,
image_sources: Vec<ImageSource>,
tool_call_id: String,
},
LatestReminder {
content: String,
},
}
#[derive(Debug, Clone, PartialEq, Eq)]
pub struct ToolCall {
pub id: String,
pub name: String,
pub arguments: String,
}