"""통계 API 응답 스키마.""" from typing import List, Literal from pydantic import BaseModel class ComparisonStatItem(BaseModel): plant_id: str plant_name: str capacity: float generation: float generation_hours: float class ComparisonStatsResponse(BaseModel): status: Literal["success"] period: Literal["day", "month", "year"] target_date: str data: List[ComparisonStatItem] count: int class StatPoint(BaseModel): label: str value: float class PlantStatsResponse(BaseModel): status: Literal["success"] plant_id: str period: Literal["day", "month", "year"] data: List[StatPoint] count: int class HourlyStatPoint(BaseModel): hour: int label: str current_kw: float today_kwh: float has_data: bool class HourlyStatsResponse(BaseModel): status: Literal["success"] plant_id: str date: str data: List[HourlyStatPoint] count: int