export interface Session {
  id: string
  worktree_id: string | null
  project_id: string
  connection_id: string | null
  name: string | null
  status: 'active' | 'completed' | 'error' | 'archived'
  opencode_session_id: string | null
  agent_sdk: 'opencode' | 'claude-code' | 'codex' | 'terminal'
  mode: 'build' | 'plan'
  model_provider_id: string | null
  model_id: string | null
  model_variant: string | null
  color: string | null
  first_message_at: number | null
  created_at: string
  updated_at: string
  completed_at: string | null
}

export interface SessionWithWorktree extends Session {
  worktree_name?: string
  worktree_branch_name?: string
  worktree_status?: 'active' | 'archived' | null
  project_name?: string
}

export interface SessionSearchOptions {
  keyword?: string
  project_id?: string
  worktree_id?: string
  dateFrom?: string
  dateTo?: string
  includeArchived?: boolean
  statusFilter?: 'all' | 'active' | 'archived' | 'closed'
}
