from typing import Any

from pydantic import BaseModel, Field


class LabTestOutput(BaseModel):
    """Single test in the public API response."""

    test_name: str
    result: str | None = None
    unit: str | None = None
    normal_range: str | None = None
    status: str | None = None
    explanation: str = ""


class AnalyzeResponse(BaseModel):
    language: str
    overall_summary: str = ""
    tests: list[LabTestOutput] = Field(default_factory=list)
