import { type CronJob, type CronJobStatus, CronJobStore } from "./job-store.ts";
import type { SchedulerSettings } from "./scheduler-settings.ts";
export interface CronRunResult {
    jobId: string;
    success: boolean;
    status: CronJobStatus;
    output: string;
    finalResponse: string;
    error?: string;
    outputPath?: string;
    delivered?: number;
    deliveryTargets?: string[];
    deliveryError?: string;
}
export interface SchedulerRunnerOptions {
    agentDir: string;
    cwd: string;
    settings: SchedulerSettings;
    store?: CronJobStore;
}
/**
 * Assemble the prompt for an agent-backed scheduled run.
 *
 * Content gathered at fire time (other jobs' output, script output, skill
 * files) is injection-scanned — it can carry text the user never reviewed,
 * such as fetched web content. A scan match fails the run.
 */
export declare function buildCronJobPrompt(job: CronJob, store: CronJobStore, env: {
    agentDir: string;
    cwd: string;
}, scriptOutput?: string): Promise<string>;
export declare function runCronJob(job: CronJob, options: SchedulerRunnerOptions): Promise<CronRunResult>;
export declare function tickCronScheduler(options: SchedulerRunnerOptions): Promise<CronRunResult[]>;
//# sourceMappingURL=runner.d.ts.map