import type { ChildProcess } from "node:child_process"; import type { ChainDefinition, ChainExecution, ExecutionEvent } from "./types.js"; import { getExecutionTimeline } from "./storage.js"; import { validateClaudeBinary, getRunningExecutionCount, canStartExecution, MAX_CONCURRENT_EXECUTIONS } from "./claude-runner.js"; import { GateSuspendError, approveGate } from "./gate-manager.js"; export declare function loadPersistedExecutions(): void; /** Get execution timeline (time-travel). */ export { getExecutionTimeline }; export declare function getExecution(id: string): ChainExecution | undefined; export declare function getAllExecutions(): ChainExecution[]; /** Clear all step result caches. Returns number of files deleted. */ export declare function clearStepCache(): number; export declare function cancelExecution(id: string): boolean; export { validateClaudeBinary, getRunningExecutionCount, canStartExecution, MAX_CONCURRENT_EXECUTIONS }; export { GateSuspendError, approveGate }; export declare function getPendingApprovals(): { executionId: string; stepId: string; chainName: string; prompt: string; startedAt: string; }[]; export declare function getAllActiveProcesses(): Map>; type EventEmitter = (event: ExecutionEvent) => void; export declare function executeChain(chain: ChainDefinition, input: Record, emit: EventEmitter, externalId?: string): Promise; export declare function resumeExecution(executionId: string, chain: ChainDefinition, emit: EventEmitter): Promise;