import { Readable } from 'stream'; export interface ClaudeExecOptions { cliPath?: string; timeout?: number; env?: NodeJS.ProcessEnv; } export type OutputFormat = 'text' | 'json' | 'stream-json'; export interface ClaudeExecParams { prompt?: string; outputFormat?: OutputFormat; systemPrompt?: string; continue?: boolean; resume?: string; allowedTools?: string[]; disallowedTools?: string[]; mcpConfig?: string; maxTurns?: number; maxTokens?: number; temperature?: number; topP?: number; stop?: string; timeout?: number; [key: string]: unknown; } export declare class ClaudeCliExecutor { private cliPath; private defaultTimeout; private env; constructor(options?: ClaudeExecOptions); /** * Builds arguments array for the Claude CLI based on provided parameters */ private buildArgs; /** * Execute a Claude CLI command and return the result */ execute(params: ClaudeExecParams, timeout?: number): Promise; /** * Execute a Claude CLI command in streaming mode and return a readable stream */ executeStream(params: ClaudeExecParams): Readable; }