import type { AuthProfileFailureReason } from "../../auth-profiles.js";
import type { FailoverReason } from "../../pi-embedded-helpers.js";
export type FailoverDecisionLoggerInput = {
    stage: "prompt" | "assistant";
    decision: "rotate_profile" | "fallback_model" | "surface_error";
    runId?: string;
    rawError?: string;
    failoverReason: FailoverReason | null;
    profileFailureReason?: AuthProfileFailureReason | null;
    provider: string;
    model: string;
    profileId?: string;
    fallbackConfigured: boolean;
    timedOut?: boolean;
    aborted?: boolean;
    status?: number;
};
export type FailoverDecisionLoggerBase = Omit<FailoverDecisionLoggerInput, "decision" | "status">;
export declare function normalizeFailoverDecisionObservationBase(base: FailoverDecisionLoggerBase): FailoverDecisionLoggerBase;
export declare function createFailoverDecisionLogger(base: FailoverDecisionLoggerBase): (decision: FailoverDecisionLoggerInput["decision"], extra?: Pick<FailoverDecisionLoggerInput, "status">) => void;
