/**
 * olam diagnose — G1/G2/G3.
 *
 * G1: builds ~/.olam/diagnostics/<ts>.zip with secrets stripped.
 * G2: --show-telemetry prints the future telemetry payload; --no-telemetry suppresses it.
 * G3: --upload prints stub message (CF Worker not yet provisioned).
 *
 * Relationship to `olam doctor` (Phase A3 of olam-operator-onboarding-parity):
 *
 * `olam doctor` is the pass/fail host-health gate (single source of truth at
 * `packages/cli/src/lib/health-probes.ts` — the Seam). `olam diagnose` is the
 * support-bundle builder; it does NOT today consume the probes because the
 * existing bundle contents (version / os-info / log-tail / status.json /
 * audit-auth-callers) have no probe overlap with the 5 probes shipped in
 * Phase A1 (probeDockerDaemon / probeImagePresence / probeHostCpHealth /
 * probeAuthVault / probeKgStorage).
 *
 * Future additions: when a probe-shaped check is added to the bundle
 * (e.g. capturing the doctor verdict alongside log-tail for support
 * triage), import from `../lib/health-probes.js` rather than re-implementing
 * the underlying docker/fetch/fs probes inline. The cap thresholds for
 * KG storage live at `../lib/kg-caps.ts` (post-A1).
 */
import type { Command } from 'commander';
export type ExecFn = (cmd: string, opts?: {
    throwOnError?: boolean;
}) => string;
export type ZipFn = (zipPath: string, files: string[]) => void;
export interface DiagnosticsBundle {
    readonly zipPath: string;
    readonly entries: string[];
}
export declare function buildDiagnosticsZip(_exec?: ExecFn, _outDir?: string, _logDir?: string, _zip?: ZipFn): Promise<DiagnosticsBundle>;
export declare function buildTelemetryPayload(): Promise<Record<string, unknown>>;
export declare function registerDiagnose(program: Command): void;
//# sourceMappingURL=diagnose.d.ts.map