"""Scheduler services package.

Contains scheduler orchestration and rescan coordination:

- scheduler_service: Cron-based scheduler using APScheduler
- rescan_orchestrator: Legacy alias for RescanService (for backward compatibility)
"""
from __future__ import annotations

from src.server.services.rescan_service import (
                                                RescanService,
                                                get_rescan_service,
                                                reset_rescan_service,
)

# Backward compatibility alias
from src.server.services.scheduler.rescan_orchestrator import (
                                                RescanOrchestrator,
                                                get_rescan_orchestrator,
                                                reset_rescan_orchestrator,
)
from src.server.services.scheduler.scheduler_service import (
                                                SchedulerService,
                                                SchedulerServiceError,
                                                get_scheduler_service,
                                                reset_scheduler_service,
)

__all__ = [
    # RescanService (new location)
    "RescanService",
    "get_rescan_service",
    "reset_rescan_service",
    # Scheduler
    "SchedulerService",
    "SchedulerServiceError",
    "get_scheduler_service",
    "reset_scheduler_service",
    # Backward compatibility
    "RescanOrchestrator",
    "get_rescan_orchestrator",
    "reset_rescan_orchestrator",
    # Sub-services (still in scheduler folder)
    "folder_rename_service",
]