"""
Repository Pattern Implementation

Provides domain-specific repository classes to replace the monolithic AdminDB.
Each repository handles a single domain following Single Responsibility Principle.
"""

from backend.data.repositories.base import BaseRepository
from backend.data.repositories.token_repository import TokenRepository
from backend.data.repositories.document_repository import DocumentRepository
from backend.data.repositories.annotation_repository import AnnotationRepository
from backend.data.repositories.training_task_repository import TrainingTaskRepository
from backend.data.repositories.dataset_repository import DatasetRepository
from backend.data.repositories.model_version_repository import ModelVersionRepository
from backend.data.repositories.batch_upload_repository import BatchUploadRepository
from backend.data.repositories.finetune_pool_repository import FineTunePoolRepository

__all__ = [
    "BaseRepository",
    "TokenRepository",
    "DocumentRepository",
    "AnnotationRepository",
    "TrainingTaskRepository",
    "DatasetRepository",
    "ModelVersionRepository",
    "BatchUploadRepository",
    "FineTunePoolRepository",
]
