from pydantic import BaseModel


class PuzzleOutputDTO(BaseModel):
    """DTO for puzzle responses."""

    board: list[list[str]]
    solutions: dict[str, list[tuple[int, int]]]
    extra: dict[str, list[tuple[int, int]]]
    word_defs: dict[str, str]


class DailyPuzzleDTO(PuzzleOutputDTO):
    """Daily puzzles DTO."""

    number: int
