import type { FiatFlow, UseFiatQuoteResult } from '@funkit/connect-core'; type RecoverableFlow = Pick; type RecoverableQuote = Pick; export interface StaleQuoteRecovery { /** A replacement price is on its way, so the entry screen holds. */ isReplacing: boolean; /** Asks for another replacement — what a retry means on a dead ref. */ replaceQuote: () => void; } /** * Re-sends an entry submission the server answered with a dead quoteRef. * * - The ref is the server's, carried in the transition it hands back, so a * replay cannot fix it. A new price brings a new transition naming a live * one, and what the user typed rides on the flow rather than the round. * - Automatic once, then only when asked. A provider that declined answers * with the same 404, so a self-driven loop never reaches a different answer. * - Only while the client owns the quote. Once the flow holds a round the * query is off, so there is no replacement to wait for, and the way to a new * price is giving the round up. */ export declare function useStaleQuoteRecovery(flow: RecoverableFlow, quote: RecoverableQuote, { hold, }?: { /** * The failed send followed a completed capture, so a replacement price * would open a second sheet on a card already charged. Nothing is replaced * while this holds. */ hold?: boolean; }): StaleQuoteRecovery; export {}; //# sourceMappingURL=useStaleQuoteRecovery.d.ts.map