export interface LlmDailyCost {
  biz_dt: string
  label: string
  call_count: number
  prompt_tokens: number
  completion_tokens: number
  total_tokens: number
  total_cost_usd: number
  missing_cost_count: number
}

export interface LlmAgentBreakdown {
  agent_name: string
  call_count: number
  total_tokens: number
  total_cost_usd: number
}

export interface LlmModelBreakdown {
  model: string
  call_count: number
  total_tokens: number
  total_cost_usd: number
}

export interface LlmUsageEvent {
  id: number
  biz_dt: string
  provider: string
  model: string | null
  agent_name: string | null
  run_id: string | null
  iteration: number | null
  prompt_tokens: number
  completion_tokens: number
  total_tokens: number
  cost_usd: number | null
  created_at: string | null
}

export interface LlmBillingOverview {
  timezone: string
  currency: string
  range: {
    start_dt: string
    end_dt: string
    total_cost_usd: number
    call_count: number
    total_tokens: number
  }
  summary: {
    today_biz_dt: string
    today_cost_usd: number
    today_call_count: number
    yesterday_cost_usd: number
    week_cost_usd: number
    range_cost_usd: number
  }
  daily: LlmDailyCost[]
  by_agent: LlmAgentBreakdown[]
  by_model: LlmModelBreakdown[]
  recent_events: LlmUsageEvent[]
}
