"""Pydantic schemas for REST API.""" from __future__ import annotations from datetime import datetime from typing import Any from pydantic import BaseModel, Field class ExtractResponse(BaseModel): invoice: dict[str, Any] validation: dict[str, Any] | None review_id: str | None = None class ReviewSummary(BaseModel): id: str vendor_name: str | None invoice_number: str | None total_amount: float | None currency: str confidence: float status: str created_at: datetime reviewer: str | None = None class ReviewDetail(ReviewSummary): invoice_data: dict[str, Any] validation_data: dict[str, Any] | None review_notes: str | None = None reviewed_at: datetime | None = None class ReviewAction(BaseModel): reviewer: str = Field(..., min_length=1, max_length=100) notes: str | None = None class HealthResponse(BaseModel): status: str = "ok" version: str = "1.0.0" database: str = "connected"