from __future__ import annotations from typing import Any from pydantic import BaseModel, Field class FinanceDashboardRead(BaseModel): range_key: str start_date: str end_date: str generated_at: str has_real_data: bool totals: dict[str, Any] = Field(default_factory=dict) metric_meta: dict[str, Any] = Field(default_factory=dict) trend: dict[str, Any] = Field(default_factory=dict) spend_by_category: list[dict[str, Any]] = Field(default_factory=list) exception_mix: list[dict[str, Any]] = Field(default_factory=list) department_ranking: list[dict[str, Any]] = Field(default_factory=list) employee_ranking: list[dict[str, Any]] = Field(default_factory=list) top_claims: list[dict[str, Any]] = Field(default_factory=list) bottlenecks: list[dict[str, Any]] = Field(default_factory=list) budget_summary: dict[str, Any] = Field(default_factory=dict) budget_metrics: list[dict[str, Any]] = Field(default_factory=list)