import type { ScheduledTask } from './triggers.js'; import type { TelemetryRecord, TelemetryTrigger, TaskCompletionDetails } from './scheduler.js'; export interface PullTickContext { queueDir: string; isIdle: () => boolean; getIsDequeuing: () => boolean; setIsDequeuing: (v: boolean) => void; runOnce: (task: ScheduledTask, trigger: 'pull') => Promise; } export declare function sweepAnsweredHandoffs(queueDir: string): void; export declare function executePullTick(ctx: PullTickContext): Promise; export interface FireOnTaskCompleteOptions { onTaskComplete?: (record: TelemetryRecord, details?: TaskCompletionDetails) => void | Promise; } export declare function fireOnTaskComplete(record: TelemetryRecord, options: FireOnTaskCompleteOptions, task?: ScheduledTask, details?: TaskCompletionDetails): void; export type { TelemetryTrigger };