"""Abstract repository for User (login accounts).""" from abc import abstractmethod from app.entities.user import User from app.repositories.base import Repository class UserRepository(Repository[User]): @abstractmethod async def get_by_email(self, email: str) -> User | None: """Return the user with this email, or None if not found."""