use serde::{Deserialize, Serialize}; #[derive(Debug, Clone, Deserialize, Serialize)] pub struct ConfirmActionRequest { pub conversation_id: String, pub action: String, pub confirmed: bool, #[serde(default)] pub fields: serde_json::Value, } #[derive(Debug, Clone, Serialize)] pub struct ConfirmActionResponse { pub success: bool, pub message: String, pub action: String, #[serde(skip_serializing_if = "Option::is_none")] pub record_id: Option, #[serde(skip_serializing_if = "Option::is_none")] pub ui_events: Option>, } #[derive(Debug, Clone, Serialize, Deserialize)] pub struct UiEvent { #[serde(rename = "type")] pub event_type: String, pub target: String, #[serde(skip_serializing_if = "Option::is_none")] pub record_id: Option, #[serde(skip_serializing_if = "Option::is_none")] pub fields: Option, }