import { ToolResult } from "./tool-result";
export type AuthToolFailureCode = "credential_binding_missing" | "credential_secret_missing" | "credential_rejected" | "oauth_connection_missing" | "oauth_connection_failed" | "oauth_reauth_required";
export type AuthToolFailureInput = {
    readonly code: AuthToolFailureCode;
    readonly message: string;
    readonly source?: {
        readonly id: string;
        readonly scope?: string;
    };
    readonly credential?: {
        readonly kind: "secret" | "connection" | "oauth" | "upstream";
        readonly label?: string;
        readonly slotKey?: string;
        readonly secretId?: string;
        readonly connectionId?: string;
    };
    readonly status?: number;
    readonly upstream?: {
        readonly status?: number;
        readonly details?: unknown;
    };
    readonly recovery?: {
        readonly configureSourceTool?: string;
    };
};
export declare const authToolFailure: <T = never>(input: AuthToolFailureInput) => ToolResult<T>;
//# sourceMappingURL=auth-tool-failure.d.ts.map