/**
 * Shell detection and environment setup for bash command execution.
 *
 * Resolves the correct shell binary across platforms (Git Bash on Windows,
 * /bin/bash or sh on Unix), builds a PATH that includes bundled tool binaries
 * and Python, and provides output sanitization for binary-safe display.
 */
/**
 * Clear cached shell config so the next getShellConfig() call re-detects.
 * Call after installing Git so subsequent commands use the new bash.
 */
export declare function resetShellConfig(): void;
/**
 * Get shell configuration based on platform.
 * Resolution order:
 * 1. User-specified shellPath in settings.json
 * 2. On Windows: Git Bash in known locations, then bash on PATH
 * 3. On Unix: /bin/bash, then bash on PATH, then fallback to sh
 */
export declare function getShellConfig(customShellPath?: string): {
    shell: string;
    args: string[];
};
/**
 * Build the environment for shell subprocesses.
 *
 * Prepends bundled binary and Python directories to PATH, and sets
 * PYTHONIOENCODING to UTF-8 to prevent codec crashes on Windows.
 */
export declare function getShellEnv(): NodeJS.ProcessEnv;
/**
 * Sanitize binary output for display/storage.
 * Removes characters that crash string-width or cause display issues:
 * - Control characters (except tab, newline, carriage return)
 * - Lone surrogates
 * - Unicode Format characters (crash string-width due to a bug)
 * - Characters with undefined code points
 */
export declare function sanitizeBinaryOutput(str: string): string;
//# sourceMappingURL=bash-runtime.d.ts.map