use crate::models::common::{ParticipantType, Role, Status}; use chrono::{DateTime, Utc}; use serde::{Deserialize, Serialize}; use uuid::Uuid; #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, sqlx::FromRow)] pub struct ConversationParticipant { pub id: Uuid, pub conversation_id: Uuid, pub user_id: Option, pub agent_id: Option, pub role: Role, pub participant_type: ParticipantType, pub status: Status, pub muted: bool, pub last_read_message_id: Option, pub last_read_at: Option>, pub joined_at: Option>, pub left_at: Option>, pub created_at: DateTime, pub updated_at: DateTime, }