import { type ChildProcess } from "node:child_process"; import type { CliAsyncOptions, CliConfig, CliExecutionOptions, CliProgressCallback, CliResult } from "../types"; export declare class CliUtils { private config; constructor(config?: CliConfig); private normalizeExecutable; private forwardSignals; private gracefulTerminate; private forceTerminateAfter; checkAvailability(): Promise; getVersion(): Promise; execute(args: string[], options?: CliExecutionOptions): Promise; executeTools(args: string[], options?: CliExecutionOptions): Promise; private executeCommand; executeAsync(args: string[], options?: CliAsyncOptions): Promise; executeToolsAsync(args: string[], options?: CliAsyncOptions): Promise; private executeCommandAsync; buildArgs(command: string, options?: Record): string[]; private camelToKebab; escapeArg(arg: string): string; parseOutput(stdout: string, format?: "json" | "text"): unknown; extractOutputFiles(stdout: string): string[]; monitorProgress(child: ChildProcess, onProgress?: CliProgressCallback): void; validateConfig(): void; updateConfig(newConfig: Partial): void; getConfig(): CliConfig; }