"""Pydantic v2 -skeemat — Create sisääntulolle, Response vastaukselle."""

from datetime import date

from pydantic import BaseModel, ConfigDict


class TodoCreate(BaseModel):
    """Uuden tehtävän luonti. Pakolliset: title."""

    title: str
    description: str | None = None
    due_date: date | None = None
    priority: int = 1
    status: str = "pending"


class TodoResponse(TodoCreate):
    """Palautettava tehtävä — sisältää id:n."""

    id: int
    model_config = ConfigDict(from_attributes=True)
