import type { CompletionRequest, CompletionResult, GenerationAttemptReason, ProviderId, SuccessfulRequestSnapshot } from "../../types.js"; import type { ReasoningStyle } from "../http.js"; export declare function successfulRequestSnapshot(provider: ProviderId, model: string, request: CompletionRequest): SuccessfulRequestSnapshot; export declare function preservedFailure(recoveryError: unknown, originalError: unknown): unknown; export declare function withoutReasoning(request: CompletionRequest): CompletionRequest; export declare function reasoningWireKey(thinking: CompletionRequest["thinking"], style: ReasoningStyle, model: string, providerId: ProviderId): string; export declare function runRecordedProviderAttempt(input: { providerId: ProviderId; model: string; mode: "complete" | "stream"; reason: GenerationAttemptReason; request: CompletionRequest; run: () => Promise; }): Promise; export declare function requestForRoute(request: CompletionRequest, provider: ProviderId, model: string): CompletionRequest; export declare function hasImageInput(request: CompletionRequest): boolean; export declare function withoutImages(request: CompletionRequest): CompletionRequest; export declare function revertVisionSubstitution(providerId: ProviderId, model: string, request: CompletionRequest, error: unknown): { request: CompletionRequest; original: string; } | undefined;