trellis
Version:
Agentic State Engine — event-sourced causal graph with branching, decision traces, and realtime sync for AI-native applications
35 lines • 1.05 kB
TypeScript
/**
* CronScheduler — tick loop over durable CronJob entities.
* @module trellis/plugins/cron/scheduler
*/
import { type CronHandler } from './handlers.js';
import type { CronStatus, CronStore } from './types.js';
export interface CronSchedulerOptions {
store: CronStore;
tickMs?: number;
leaseMs?: number;
ownerId?: string;
/** Injected clock for tests (epoch ms). */
now?: () => number;
}
export declare class CronScheduler {
private readonly store;
private readonly tickMs;
private readonly leaseMs;
private readonly ownerId;
private readonly now;
private readonly handlers;
private timer;
private ticking;
private jobCount;
constructor(opts: CronSchedulerOptions);
registerHandler(id: string, fn: CronHandler): void;
start(): void;
stop(): void;
getStatus(): CronStatus;
/** One scheduler pass — used by the interval and by unit tests. */
tick(): Promise<void>;
private processJob;
private failJob;
}
//# sourceMappingURL=scheduler.d.ts.map