import uuid from datetime import datetime from pydantic import BaseModel, EmailStr class RegisterRequest(BaseModel): email: EmailStr password: str class LoginRequest(BaseModel): email: EmailStr password: str class TokenResponse(BaseModel): access_token: str token_type: str = "bearer" class UserResponse(BaseModel): id: uuid.UUID email: str api_key: str plan: str created_at: datetime model_config = {"from_attributes": True} class CollectionCreate(BaseModel): name: str class CollectionResponse(BaseModel): id: uuid.UUID user_id: uuid.UUID name: str ticket_count: int created_at: datetime model_config = {"from_attributes": True} class TicketMessage(BaseModel): role: str text: str class TicketInput(BaseModel): ticket_id: str category: str = "" description: str = "" client: str = "" messages: list[TicketMessage] = [] class TicketsUpload(BaseModel): tickets: list[TicketInput] class TicketsUploadResponse(BaseModel): processed: int skipped: int collection_ticket_count: int