/** * Scheduler persistence — one JSON file per task under * ~/.blockrun/scheduler/.json, atomically rewritten (tmp + rename), * mirroring the task subsystem's meta.json convention. */ import { type ScheduledTask } from './types.js'; export declare function schedulerDir(): string; export declare function setSchedulerSessionId(id: string): void; export declare function getSchedulerSessionId(): string; export declare function saveScheduledTask(task: ScheduledTask): void; export declare function deleteScheduledTask(id: string): boolean; /** All non-expired tasks, pruning expired files as a side effect. */ export declare function listScheduledTasks(): ScheduledTask[]; export declare function createScheduledTask(opts: { prompt: string; intervalSec: number; sessionId: string; recurring?: boolean; durable?: boolean; fireImmediately?: boolean; ttlMs?: number; }): ScheduledTask | { error: string; }; /** Record a firing: advance nextFireAt, or disable a one-shot. */ export declare function markFired(task: ScheduledTask): ScheduledTask;