import type { FailureReason, FiatFlow, Quote } from '@funkit/connect-core'; import type { TFunction } from 'i18next'; import type { FeeDetailsRow } from '../screens/FeeDetailsScreen'; /** * The live quote's fee, worded exactly as the static step words its computed * one. The screen fades the whole line while a re-quote is due, so there is * nothing here to hold still — no splitting the number out of the sentence. * No fee renders until a quote priced this amount; the empty state keeps the * quick amounts up instead. */ export declare function quoteFee(quote: Quote | undefined, amount: string, t: TFunction): string | undefined; /** The state's own recovery, when its step response carries one. */ export declare function recoveryCta(flow: FiatFlow, t: TFunction): { label: string; onPress: () => void; } | undefined; /** The refreshed price a post-KYC review carries. */ export declare function reviewDetail(flow: FiatFlow): string | undefined; /** * The quote's fee breakdown, as the disclosure drawer's rows. * * - The fee is inside the charge, not added to it: `fiat.amount` is what the * card is billed and the crypto is priced on what's left, so the amount row * is the remainder and the total is the charge itself. * - One fee row, off `totalFee` rather than the provider's own `feeBreakdown` * labels: those name the rail ("Coinbase fee"), which the drawer must not, * and only the total keeps the three rows adding up. */ export declare function quoteFeeRows(quote: Quote | undefined, t: TFunction): FeeDetailsRow[]; /** The rail disclosure, priced from the quote rather than host configuration. */ export declare function quoteFeeSummary(quote: Quote | undefined, method: string | undefined, t: TFunction): string | undefined; /** * A step's own error, worded for the banner it renders as. The contract sends * no message — `code` is a copy key — so the category is what the copy keys off. */ export declare function roundErrorMessage(error: FailureReason | undefined, t: TFunction, provider?: string): string | undefined; /** * A cooling-off hold's comeback date, worded as the ISO day it names. * * The day rather than the instant, and unformatted: connect-rn takes no Intl * dependency, and a locale-guessed date is worse than an unambiguous one. */ export declare function onHoldDetail(flow: FiatFlow, t: TFunction): string; /** Preserve an explicit cooling-off deadline alongside the R2 receipt. */ export declare function kycHoldRetryDetail(flow: FiatFlow, t: TFunction): string | undefined; /** * What a rejection leaves the user. Only the terminal variant carries a * recovery, and support is the only one it names. */ export declare function rejectedDetail(flow: FiatFlow, t: TFunction): string | undefined; export declare function blockedRetryDetail(flow: FiatFlow): string | undefined; /** The marker a KYC round carries when its quote lapsed while the form was open. */ export declare function isExpiredQuoteMarker(error: FailureReason): boolean; /** The recipient as the buyer knows it; the wire id is upper case. */ export declare function providerName(provider: string | undefined): string; //# sourceMappingURL=stepDetails.d.ts.map