import { Events } from './constants'; import { SecureInput } from './input'; import type { AutoAdvanceConfig, ClickToPayInstance, ClickToPayOptions, CombinedEvents, Config, Field, FieldMaskConfig, ThreeDSecureOptions } from './types'; declare global { interface Window { SECURE_FIELDS_FRAME_URL?: string; CLICK_TO_PAY_FRAME_URL?: string; } } declare class SecureFields { config: Config; controller: HTMLIFrameElement; frameUrl: string; apiUrl: string; cdnBaseUrl: string; parentOrigin: string; font: string; cardNumber: SecureInput; securityCode: SecureInput; expiryDate: SecureInput; otherFields: Record; method: 'card' | 'click-to-pay'; private clickToPayInstance?; clickToPay?: ClickToPayInstance; private threeDS?; environmentPath: string; private paymentMethodId?; private autoAdvance; private schemeIcons; private cardDetailsSchemes; private controllerReady; private _resolveControllerReady; /** * CARD_VAULT_SUCCESS: Triggered when the card is successfully vaulted. * * CARD_VAULT_FAILURE: Triggered when the card vaulting fails. * * FORM_CHANGED: Triggered when the form is changed. * * READY: Triggered when the SecureFields is loaded and ready to be used. */ static get Events(): typeof Events; static get version(): string; constructor(config: Config); update(property: string, value: unknown): void; updateMethod(value: string, { data }: { data: any; }): void; setAutoAdvance(config: AutoAdvanceConfig): void; private _addField; addCardNumberField(element: string | HTMLElement, options?: Omit): SecureInput; addSecurityCodeField(element: string | HTMLElement, options?: Omit & { maskInput?: boolean | Omit; }): SecureInput; addExpiryDateField(element: string | HTMLElement, options?: Omit): SecureInput; addField(element: string | HTMLElement, options: Omit): SecureInput; addThreeDSecure(element: string | HTMLElement, options?: ThreeDSecureOptions): void; addClickToPay(element: string | HTMLElement, options?: ClickToPayOptions): Promise; addEventListener(event: CombinedEvents, callback: (...args: any[]) => void): void; removeEventListener(event: CombinedEvents, callback: (...args: any[]) => void): void; submit(): void; setDebug(debug: boolean): void; addFont(font: string): void; } export { SecureFields, SecureInput, Events }; export type { AutoAdvanceConfig, ClickToPayInstance, ClickToPayOptions, Config, CombinedEvents, Field, FieldType, FieldEvent, FieldMaskConfig, Styles, StylesTuple, FormChangeEventData, ThreeDSecureOptions, } from './types';