type MerchantDataProps = { clientId?: string; firstName: string; lastName: string; email: string; phoneNumber: string; password?: string; countryCode: string; currencyCode: string; transactionCurrency?: string; transactionRef: string; merchantName?: string; amount: number; merchantReference?: string; customerAddress?: string; customerCity?: string; customerState?: string; customerCountry?: string; customerPostalCode?: string; webhookUrl?: string; deviceSignature?: string; ipAddress?: string; metadataOrderId?: string; metadataProductInfo?: string; redirectUrl?: string; merchantPublicKey?: string; merchantAPIKey?: string; mode?: string; paymentMethod?: string; operatorCode?: string; successUrl?: string; errorUrl?: string; cancelUrl?: string; initializationType?: string; labelTag?: string; initiateTime?: string; expiryTime?: string; durationInMillis?: number; zonedExpiryTime?: string; zonedInitiateTime?: string; transactionDescription?: string; transactionType?: "1" | "2" | "3" | "4"; }; type PaygateCheckoutSdkProps = { userData: MerchantDataProps; config?: { theme?: "light" | "dark"; environment?: "test" | "live"; devMode?: boolean; [key: string]: any; }; onSuccess?: (transactionId?: string) => void; onError?: (error?: unknown) => void; }; declare const FiftyFourPayPaymentSdk: { setup: (config: { targetId: string; props: PaygateCheckoutSdkProps; }) => void; }; declare global { interface Window { CheckoutSdkRoot?: { ["54PaySdk"]?: typeof FiftyFourPayPaymentSdk; }; } } export { FiftyFourPayPaymentSdk }; export type { MerchantDataProps, PaygateCheckoutSdkProps };