import { FormConfig, IZotloCardParams, IZotloCheckoutParams, OffersObject, PaymentDetail } from '../lib/types'; /** * Sends the user's decision for a post payment offer. * * The response uses the same envelope as /payment/checkout, but the offer is * charged synchronously (no 3DS redirect), so success is simply the absence of * an error code. The XHR layer resolves on 4xx/5xx too, hence the manual check. * * Errors are reported through onOfferFail rather than onFail: the payment itself * already succeeded at this point, only the offer did not go through. */ export declare function sendOfferDecision(payload: { offer: OffersObject; decision: boolean; params: IZotloCheckoutParams | IZotloCardParams; }): Promise; /** * Renders the post payment offers page and takes over the rest of the success * flow: it closes the payment session once the user decides, then hands control * back through onComplete so the success page can be shown. * * Returns false when there is nothing to offer or the page could not be * mounted, in which case the caller keeps the original flow. */ export declare function handlePostPaymentOffers(payload: { config: FormConfig; params: IZotloCheckoutParams | IZotloCardParams; paymentDetail: PaymentDetail; onComplete: (paymentDetail: PaymentDetail) => Promise; }): boolean;