"""Abstract repository interface for VacationDays. Adds entity-specific queries on top of the generic CRUD contract. Concrete implementations live in app/repositories_impl//. """ from abc import abstractmethod from uuid import UUID from app.entities.vacation_days import VacationDays from app.repositories.base import Repository class VacationDaysRepository(Repository[VacationDays]): @abstractmethod async def get_by_parent_year(self, personal_data_uuid: UUID, year: int) -> VacationDays | None: """Return the entry for a given parent + year (UNIQUE), or None."""