import type { GenericFormOfPayment, SwappedFormOfPayment } from '@funkit/api-base'; import type { PaymentMethod } from './paymentMethods'; /** * A non-Swapped payment method (e.g. Cash App Lightning) rendered inside the * Swapped FOP list. Structurally a `GenericFormOfPayment` so it flows through the * shared list machinery (sort, sectioning, slicing, empty-state) unchanged, but: * - `fopType` is a plain token (NOT a backend `FormOfPaymentType`) used for * priority ordering and, via `getFopKey`, as the row's stable identity, * - `embeddedFlowUrl` is always empty (no embedded Swapped flow), * - `paymentMethod` is the marker the type guard keys off. */ export interface SyntheticFormOfPayment extends Omit { fopType: string; embeddedFlowUrl: ''; paymentMethod: PaymentMethod.CASH_APP_LIGHTNING; } export type ListFormOfPayment = SwappedFormOfPayment | SyntheticFormOfPayment; export declare function isSyntheticFop(fop: ListFormOfPayment): fop is SyntheticFormOfPayment; export declare function isSwappedFop(fop: ListFormOfPayment): fop is SwappedFormOfPayment; /** Stable identity for keys and active-selection comparison. */ export declare function getFopKey(fop: ListFormOfPayment): string; export declare function createSyntheticFop(paymentMethod: SyntheticFormOfPayment['paymentMethod']): SyntheticFormOfPayment; //# sourceMappingURL=syntheticFop.d.ts.map