import Sca from '../sca'; import { ChallengeWindowSize } from '../sca/types'; import { Customer, PaymentIntent } from '../shared/types'; import ThreeDSecure from "../three_d_secure"; declare const HPP_DEFAULT_OPTIONS: { [key: string]: boolean | string; }; type Version = 3; interface HppModuleConfig { version?: Version; paymentIntent: PaymentIntent; customer: Customer; username: string; sca: Sca; threeDSecure: ThreeDSecure; isThreeDSecureEnabled?: boolean; test?: boolean; } interface HppLoadParams { version?: Version; containerId: string; customer: Customer; paymentIntent: PaymentIntent; options?: HppOptions; } interface HppOptions { buttonText?: string; cards?: string; challengeWindowSize?: ChallengeWindowSize; css?: string; cssSignature?: string; hideButton?: boolean; hideLogos?: boolean; logoUrl?: string; enableSca?: boolean; showEmail?: boolean; showExtras?: boolean; tokenizeOnly?: boolean; } declare class Hpp { static readonly displayName = "Hpp"; private iframe; private headless; private version; private paymentIntent; private customer; private username; private sca; private threeDSecure; private cardToken; private postMessageClient; private test; private hppOptions; private isThreeDSecureEnabled; private challengeWindowSize; private scaHandler; constructor(config: HppModuleConfig); load(config: HppLoadParams): void; purchase(): void; getPayNowUrl(options?: { [key: string]: boolean | string; }): string; setCrossFramesEventListeners(): void; setPublicEventListeners(): void; destroy(): void; createPurchase(extra?: { [key: string]: boolean | string; }): void; private reportIframeLoaded; private reportTokenizeCardResponse; } export { Hpp, type HppLoadParams, HPP_DEFAULT_OPTIONS, };