/**
 * Doctor fix engine — interactive SSH remediation for doctor findings.
 *
 * Supports three modes:
 *   dry-run  : Print fix commands without executing any SSH.
 *   force    : Execute all fixable findings without prompting.
 *   interactive: Prompt per-finding before executing.
 *
 * Safety rule: --dry-run always wins over --force.
 * Dispatch: all fixable findings are routed through resolveHandlerChain (D-01).
 */
import type { DoctorFinding } from "./doctor.js";
export interface DoctorFixOptions {
    dryRun: boolean;
    force: boolean;
}
export interface DoctorFixResult {
    /** Finding IDs successfully fixed via handler chain. */
    applied: string[];
    /** Finding IDs skipped (user declined or not auto-fixable). */
    skipped: string[];
    /** Finding IDs where handler failed or format unknown (entry: "ID: reason"). */
    failed: string[];
}
/**
 * Run doctor fix for a list of findings on the given server IP.
 *
 * Throws synchronously if `ip` is invalid (from assertValidIp).
 * All handler errors are caught and recorded in `failed` — never rethrown.
 */
export declare function runDoctorFix(ip: string, findings: DoctorFinding[], options: DoctorFixOptions, serverName?: string): Promise<DoctorFixResult>;
//# sourceMappingURL=doctor-fix.d.ts.map