/** * 배치 스케줄러 인터페이스 (DIP) * 도메인/툴은 이 인터페이스만 참조하고, 인프라 구현체를 컨텍스트 통해 주입받음. */ /** 스케줄러 상태 (호출자가 isRunning 등만 사용) */ export interface ISchedulerStatus { isRunning: boolean; activeJobs?: string[]; lastExecution?: Map; totalExecutions?: Map; errorCount?: Map; uptime?: number; config?: unknown; } export interface IBatchScheduler { addJob(name: string, job: () => Promise, priority?: number, retryCount?: number): boolean; getStatus(): ISchedulerStatus; isJobQueued(name: string): boolean; isJobRunning(name: string): boolean; } //# sourceMappingURL=batch-scheduler.interface.d.ts.map