"""Pydantic schemas for fundamental data endpoints."""

from __future__ import annotations

from datetime import date, datetime

from pydantic import BaseModel


class FundamentalResponse(BaseModel):
    """Envelope-ready fundamental data response."""

    symbol: str
    pe_ratio: float | None = None
    revenue_growth: float | None = None
    earnings_surprise: float | None = None
    market_cap: float | None = None
    next_earnings_date: date | None = None
    fetched_at: datetime | None = None
    unavailable_fields: dict[str, str] = {}
