import { ToolCall, ToolExecution, ToolProgress } from './types.js'; import { EventEmitter } from 'events'; export interface ToolExecutorEvents { 'execution:start': (execution: ToolExecution) => void; 'execution:progress': (executionId: string, progress: ToolProgress) => void; 'execution:complete': (execution: ToolExecution) => void; 'execution:error': (execution: ToolExecution) => void; } export declare class ToolExecutor extends EventEmitter { private executions; private abortControllers; constructor(); emit(event: K, ...args: Parameters): boolean; on(event: K, listener: ToolExecutorEvents[K]): this; execute(toolCall: ToolCall, options?: { workingDirectory?: string; requireApproval?: boolean; onApproval?: () => Promise; }): Promise; executeSequence(toolCalls: ToolCall[], options?: Parameters[1]): Promise; cancel(executionId: string): boolean; getExecution(executionId: string): ToolExecution | undefined; getAllExecutions(): ToolExecution[]; clearCompleted(): void; formatExecution(execution: ToolExecution): string; } export declare const toolExecutor: ToolExecutor; //# sourceMappingURL=executor.d.ts.map