from pydantic import BaseModel from typing import Optional, List, Any from datetime import datetime from uuid import UUID from app.models.meeting import MeetingStatus class MeetingResponse(BaseModel): id: UUID title: Optional[str] = None date: datetime duration: Optional[int] = None status: MeetingStatus transcription: Optional[Any] = None user_id: UUID owner_email: Optional[str] = None owner_name: Optional[str] = None created_at: datetime class Config: from_attributes = True class MeetingStatusResponse(BaseModel): id: UUID status: MeetingStatus title: Optional[str] = None class Config: from_attributes = True class ParticipantUpdate(BaseModel): identified_name: Optional[str] = None confidence_score: Optional[float] = None class ParticipantResponse(BaseModel): id: UUID meeting_id: UUID speaker_label: str voice_profile_id: Optional[UUID] = None identified_name: Optional[str] = None confidence_score: Optional[float] = None talk_time_seconds: Optional[int] = None class Config: from_attributes = True