from typing import TypeVar from fansifter_common.adapters.db.models import BaseRepository from .base import DefaultDB, ReportingDB from .orm import Model, ReportingModel ModelT = TypeVar("ModelT", bound=Model) ReportingModelT = TypeVar("ReportingModelT", bound=ReportingModel) class Repository(BaseRepository[DefaultDB, ModelT]): def __init__(self, db: DefaultDB) -> None: super().__init__(db) class ReportingRepository(BaseRepository[ReportingDB, ReportingModelT]): def __init__(self, db: ReportingDB) -> None: super().__init__(db)