from typing import Optional
from sqlalchemy.orm import Session
from app.models.category import Category
from app.repositories.base import BaseRepository

class CategoryRepository(BaseRepository[Category]):
    """Repository handling database queries for the Category model."""
    
    def get_by_slug(self, db: Session, slug: str) -> Optional[Category]:
        """Fetch a category record by slug."""
        return db.query(self.model).filter(self.model.slug == slug).first()

category_repository = CategoryRepository(Category)
