import type { IScheduledJob, ISchedulerConfig, IJobExecutionResult } from './scheduler.interfaces.js'; export interface IPersistenceProvider { saveJob(job: IScheduledJob): Promise; loadJob(id: string): Promise; loadAllJobs(): Promise; deleteJob(id: string): Promise; saveExecutionResult(result: IJobExecutionResult): Promise; loadExecutionHistory(jobId: string, limit?: number): Promise; clear(): Promise; } export declare class InMemoryPersistenceProvider implements IPersistenceProvider { private jobs; private executionHistory; saveJob(job: IScheduledJob): Promise; loadJob(id: string): Promise; loadAllJobs(): Promise; deleteJob(id: string): Promise; saveExecutionResult(result: IJobExecutionResult): Promise; loadExecutionHistory(jobId: string, limit?: number): Promise; clear(): Promise; } export declare class SchedulerPersistence { private readonly config?; private provider; private autosaveInterval?; constructor(config?: ISchedulerConfig | undefined); private initializeProvider; private setupAutosave; saveJob(job: IScheduledJob): Promise; loadJob(id: string): Promise; loadAllJobs(): Promise; deleteJob(id: string): Promise; saveExecutionResult(result: IJobExecutionResult): Promise; loadExecutionHistory(jobId: string, limit?: number): Promise; flush(): Promise; clear(): Promise; destroy(): Promise; exportState(): Promise<{ jobs: IScheduledJob[]; timestamp: Date; }>; importState(state: { jobs: IScheduledJob[]; }): Promise; } //# sourceMappingURL=scheduler.persistence.d.ts.map