/**
 * Shared utilities for preflight steps: logging, prompts, progress spinner, PATH refresh.
 */
import type { PreflightLogEntry } from '../../app/modes/installation/preflight-log.js';
import type { CmdResult } from '../install-utils.js';
/** Accumulated log entries, exposed to callers via runPreflight(). */
export declare const preflightLog: PreflightLogEntry[];
export declare function setCurrentStep(step: string): void;
export declare const log: (msg: string, display?: string) => void;
export declare const ok: (msg: string, display?: string) => void;
/** Record to the structured log for the installation agent, but don't print to terminal. */
export declare const note: (msg: string) => void;
export declare function header(step: string, display?: string): void;
export declare function promptEnter(message: string): Promise<void>;
export declare function promptConfirm(message: string): Promise<boolean>;
export declare const SPINNER_FRAMES: string[];
/**
 * Run a command asynchronously with a live spinner that shows streaming output.
 * Used for long-running installs (winget, pip) so the user sees progress.
 */
export declare function runWithProgress(cmd: string, options?: {
    timeout?: number;
    label?: string;
}): Promise<CmdResult>;
/**
 * Re-read the Windows PATH from the registry and merge it into process.env.PATH.
 * After winget installs a program (Git, Python, etc.) the system/user PATH is
 * updated, but the running Node process still has the old value. This reads the
 * current registry entries and splices in any new directories.
 */
export declare function refreshPath(): void;
//# sourceMappingURL=utils.d.ts.map