import { type SoloLogger } from './logging/solo-logger.js';
export declare class ShellRunner {
    logger?: SoloLogger;
    constructor(logger?: SoloLogger);
    /**
     * Redacts sensitive arguments from a command array.
     * Delegates to the shared {@link SensitiveDataRedactor} utility.
     * @param arguments_ The arguments array to redact
     * @returns A new redacted arguments array
     */
    static redactArguments(arguments_: string[]): string[];
    /** Returns a promise that invokes the shell command */
    run(cmd: string, arguments_?: string[], verbose?: boolean, detached?: boolean, environmentVariablesToAppend?: Record<string, string>, timeoutMs?: number): Promise<string[]>;
    sudoRun(sudoRequested: (message: string) => void, sudoGranted: (message: string) => void, cmd: string, arguments_?: string[], verbose?: boolean, detached?: boolean, environmentVariablesToAppend?: Record<string, string>): Promise<string[]>;
}
