export interface CommandResult { stdout: string; stderr: string; exitCode: number; } export interface KillCommandTreeDeps { kill: (pid: number, signal: NodeJS.Signals) => boolean; execFileSync: (file: string, args: string[], options: { stdio: 'ignore'; windowsHide: boolean; }) => unknown; } export declare function killCommandTree(pid: number, platform?: NodeJS.Platform, deps?: KillCommandTreeDeps): void; export declare function spawnCommand(cmd: string, args: string[], timeoutMs: number, maxOutputBytes?: number): Promise; export declare function execBash(command: string, timeoutMs: number): Promise; export declare function execBashBackground(command: string): { pid: number | undefined; }; /** Native supplies an already verified selection; never silently replace a stale selection. */ export declare function resolveBash(posixShell?: string): string | null;