import type { BatchJobConfig, BatchJobResult } from './batch-scheduler-types.js';
import type { BatchJobExecutionCoordinator } from './batch-job-execution-coordinator.js';
export interface BatchRecurringScheduleContext {
    readonly config: BatchJobConfig;
    readonly consolidationScoreEnabled: boolean;
    readonly hasConsolidationScoreWorker: boolean;
    readonly hasSleepConsolidation: boolean;
    readonly hasTelemetryCleanup: boolean;
    scheduleJob: (name: string, interval: number, job: () => Promise<void>, priority: number) => void;
    readonly lastExecution: Map<string, Date>;
    readonly intervals: Map<string, ReturnType<typeof setInterval>>;
    readonly jobExecutionCoordinator: BatchJobExecutionCoordinator;
    log: (message: string, data?: unknown, level?: 'info' | 'warn' | 'error') => void;
    runMemoryCleanup: () => Promise<BatchJobResult>;
    runMonitoring: () => Promise<BatchJobResult>;
    runHealthCheck: () => Promise<BatchJobResult>;
    runConsolidationScoreIncremental: () => Promise<BatchJobResult>;
    runConsolidationScoreFullSweep: () => Promise<BatchJobResult>;
    runWeeklyRelationValidation: () => Promise<BatchJobResult>;
    runLogRotation: () => Promise<BatchJobResult>;
    runTripleExtractionBatch: () => Promise<BatchJobResult>;
    runQualityMeasurementBatch: () => Promise<BatchJobResult>;
    runMetaMemoryIntrospection: () => Promise<BatchJobResult>;
    runMemoryReviewCandidatesJob: () => Promise<BatchJobResult>;
    runSleepConsolidationBatch: () => Promise<BatchJobResult>;
    runTelemetryCleanupBatch: () => Promise<void>;
}
export declare function scheduleCleanupJob(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleMonitoringJob(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleHealthcheckJob(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleCoreMaintenanceJobs(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleConsolidationScoreFullSweep(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleWeeklyRelationValidation(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleConsolidationRelationAndLogJobs(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleTripleExtractionBatch(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleQualityMeasurement(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleAugmentationAndTelemetryJobs(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleMemoryReviewCandidatesInterval(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleMetaMemoryAndReviewJobs(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleSleepConsolidation(ctx: BatchRecurringScheduleContext): void;
export declare function scheduleTelemetryCleanup(ctx: BatchRecurringScheduleContext): void;
export declare function registerAllRecurringJobs(ctx: BatchRecurringScheduleContext): void;
//# sourceMappingURL=batch-recurring-schedules.d.ts.map