import type { TunnelRotationCommand, TunnelRotationStatus, TunnelRuntimeStatus } from "../onboarding/onboarding-service-client.js";
export declare const TUNNEL_ROTATION_CAPABILITIES: readonly ["tunnel.rotation.blue_green.v1", "tunnel.rotation.prepare.v1", "tunnel.rotation.status_ack.v1", "tunnel.rotation.manifest.v1", "tunnel.rotation.finalize.v1", "tunnel.rotation.rollback.v1", "tunnel.multi_connector.v1"];
export interface TunnelRotationManagerOptions {
    obsPort?: number;
    restartTunnel?: () => Promise<string | null>;
}
export declare class TunnelRotationManager {
    private readonly obsPort;
    private readonly restartTunnel?;
    private status;
    private pendingProcess;
    private pendingOperationId;
    constructor(options?: TunnelRotationManagerOptions);
    get currentStatus(): TunnelRotationStatus | undefined;
    getRuntimeStatus(): TunnelRuntimeStatus | undefined;
    handle(command: TunnelRotationCommand | undefined): void;
    private handlePrepare;
    private handleFinalize;
    private handleRollback;
    private handleCleanup;
    private report;
    private stopPendingProcess;
}
//# sourceMappingURL=tunnel-rotation-manager.d.ts.map