import type { AutomationJob } from './jobs';
import { type CapabilityGrant } from '../permissions/capabilities';
export interface AutomationRunResult {
    jobId: string;
    prompt: string;
    scriptOutput: string;
    outputPath: string;
}
export interface ShellCommandPreset {
    id: string;
    label: string;
    pattern: RegExp;
    examples: string[];
}
export declare const SHELL_COMMAND_ALLOWLIST_PRESETS: ShellCommandPreset[];
export interface AutomationPolicyContext {
    grants?: CapabilityGrant[];
    killSwitchActive?: boolean;
    now?: Date;
}
export declare function buildAutomationPrompt(job: AutomationJob, scriptOutput?: string): Promise<string>;
export declare function runAutomationScript(command: string, cwd: string, timeoutMs?: number): Promise<string>;
export declare function prepareAutomationRun(projectDir: string, job: AutomationJob, now?: Date, policy?: AutomationPolicyContext): Promise<AutomationRunResult>;
export declare function listShellCommandAllowlistPresets(): Array<Omit<ShellCommandPreset, 'pattern'>>;
export declare function matchShellCommandPreset(command: string): ShellCommandPreset | null;
//# sourceMappingURL=runner.d.ts.map