export type ChatMessageRole = 'user' | 'assistant'

export interface ChatFile {
  name: string
  data: string // base64 data URL
  type: string // MIME type
  size: number // file size in bytes
}

export interface ReferencedTask {
  taskId: string
  source: 'calendar' | 'kanban' | 'todo'
  title: string
}

export interface ChatMessage {
  id: string
  role: ChatMessageRole
  content: string
  images?: string[] // Array of image data URLs (base64)
  files?: ChatFile[] // Array of files (documents, etc.)
  timestamp: Date | string
  isSensitive?: boolean
  sensitiveReason?: string
}

export interface AssistantResponse {
  id: string
  role: 'assistant'
  content: string
  timestamp: string
  referencedTasks?: ReferencedTask[]
}

