import { IntentType } from './models/IntentType'; import { IntentMethods } from './models/IntentMethods'; import { IntentDetails } from './models/IntentDetails'; import type { ApplePayData, IntentResult } from './models'; import type { EmbedStyle } from './models'; import { MethodType } from './models/MethodType'; import { MethodMetaData } from './models/MethodMetaData'; import type { VaultData } from './SecureFields/types'; import { type LogLevel } from './models/log/LogLevel'; import { DiscountData, DiscountItem, FeeItem, FeesData, Language } from './models'; import { NativePayReceipt } from './models/receipt/NativePayReceipt'; import { type ApplePayNativeConfig } from './models/config/ApplePayNativeConfig'; import { InstallmentPlan } from './models/InstallmentPlans'; import { type InstallmentPlanData } from './models/InstallmentPlanData'; import { type LookupData } from './models/LookupData'; import { type SubscriptionPlan } from './models/subscriptions/SubscriptionPlan'; import { type SubscriptionPlanGroupsResponse } from './models/subscriptions/SubscriptionPlanGroupsResponse'; import { type GooglePayNativeConfig } from './models/config/GooglePayNativeConfig'; import { type BankAccountTokenizationStatus } from './models/BankAccountTokenizationStatus'; import { type RecurringPaymentRequest } from './models/RecurringPaymentRequest'; import { type AutomaticReloadPaymentRequest } from './models/AutomaticReloadPaymentRequest'; export * from './SecureFields'; export * from './models'; export declare class MoneyHashSDKBuilder { private static instance; private googlePayConfig?; private applePayConfig?; setNativeGooglePayConfig(config: GooglePayNativeConfig): MoneyHashSDKBuilder; setNativeApplePayConfig(config: ApplePayNativeConfig): MoneyHashSDKBuilder; build(): MoneyHashSDK; static build(): MoneyHashSDK; } export declare class MoneyHashSDK { #private; constructor(); /** * @deprecated getIntentMethods is deprecated and will be removed in the next release. Use getMethods instead. */ getIntentMethods(intentId: string, intentType: IntentType): Promise; getMethods(options: { currency: string; amount?: number; customer?: string; flowId?: string; operation?: 'purchase' | 'authorize'; customFields?: Record; }): Promise; getMethods(intentId: string, intentType: IntentType): Promise; getIntentDetails(intentId: string, intentType: IntentType): Promise; resetSelectedMethod(intentId: string, intentType: IntentType): Promise; renderForm(intentId: string, intentType: IntentType, embedStyle?: EmbedStyle): Promise; renderSubscriptionEmbed(intentId: string, embedStyle?: EmbedStyle): Promise; renderURL({ url, intentId, intentType, embedStyle, }: { url: string; intentId: string; intentType: IntentType; embedStyle?: EmbedStyle; }): Promise; deleteSavedCard(cardTokenId: string, intentSecret: string): Promise; submitForm(intentId: string, selectedMethodId: string, billingData?: Record, shippingData?: Record, vaultData?: VaultData, saveCard?: boolean, installmentPlanData?: InstallmentPlanData): Promise; proceedWithMethod(intentId: string, intentType: IntentType, selectedMethodId: string, methodType: MethodType, methodMetaData?: MethodMetaData, useWalletBalance?: boolean, installmentPlanData?: InstallmentPlanData): Promise; submitCardCVV(intentId: string, cvv: string, installmentPlanData?: InstallmentPlanData): Promise; submitPaymentReceipt(intentId: string, receipt: NativePayReceipt): Promise; setLogLevel(level: LogLevel): void; setLocale(language: Language): void; setPublicKey(publicKey: string): void; updateFees(intentId: string, fees: FeeItem[]): Promise; updateDiscount(intentId: string, discount: DiscountItem): Promise; isDeviceCompatibleWithApplePay(): Promise; selectInstallmentPlan({ intentId, installmentPlanData, }: { intentId: string; installmentPlanData: InstallmentPlanData; }): Promise; getInstallmentPlans({ amount, currency, first6Digits, }: { amount: number; currency: string; first6Digits?: string; }): Promise; generateApplePayReceipt(params: { depositAmount: number; applePayData: ApplePayData; }): Promise; generateApplePayReceipt(params: { depositAmount: number; merchantIdentifier: string; currencyCode: string; countryCode: string; supportedNetworks?: string[]; merchantCapabilities?: string[]; recurringPayment?: RecurringPaymentRequest; automaticReload?: AutomaticReloadPaymentRequest; }): Promise; getApplePayBinLookup({ receipt, methodID, flowId, }: { receipt: NativePayReceipt; methodID: string; flowId?: string; }): Promise; /** * Tokenizes a receipt (e.g., Apple Pay receipt) to create a card token. * This feature is only supported on iOS devices. * * @param receipt The receipt string obtained from native payment methods (e.g., Apple Pay). * @param methodId The ID of the payment method. * @param cardTokenIntentId The unique identifier of the card token intent. * @returns A Promise that resolves to a string representing the created card token ID. */ tokenizeReceipt({ receipt, methodId, cardTokenIntentId, }: { receipt: string; methodId: string; cardTokenIntentId: string; }): Promise; isReadyForGooglePay(): Promise; setNativeGooglePayConfig(googlePayConfig: GooglePayNativeConfig): Promise; setNativeApplePayConfig(applePayConfig: ApplePayNativeConfig): Promise; isGooglePayReady(params?: { allowedCardNetworks?: string[]; allowedCardAuthMethods?: string[]; }): Promise; proceedWithGooglePay(params: { intentId: string; currency: string; amount: number; countryCode: string; gateway: string; gatewayMerchantId: string; merchantId: string; merchantName: string; allowedCardNetworks?: string[]; allowedCardAuthMethods?: string[]; }): Promise; generateGooglePayReceipt(params: { currency: string; amount: number; countryCode: string; gateway: string; gatewayMerchantId: string; merchantId: string; merchantName: string; allowedCardNetworks?: string[]; allowedCardAuthMethods?: string[]; }): Promise; getSubscriptionPlans({ planGroupId, customerId, }: { /** Short alphanumeric ID that identifies the plan group (e.g. "k9mJaKL"). */ planGroupId: string; /** UUID of the customer requesting the plans. */ customerId: string; }): Promise; selectSubscriptionPlan({ planGroupId, customerId, planId, }: { /** Plan group ID (same as above). */ planGroupId: string; /** UUID of the customer who is subscribing. */ customerId: string; /** Unique ID of the plan selected by the customer. */ planId: string; }): Promise; getSubscriptionPlanGroups({ limit, offset, currency, }?: { /** Optional limit for the number of plan groups to retrieve. Defaults to 10 if not specified. */ limit?: number; /** Optional offset for pagination. Defaults to 0 if not specified. */ offset?: number; /** Optional currency filter to retrieve plan groups for a specific currency. */ currency?: string; }): Promise; /** * Renders a bank account tokenization form as an embedded component. * * @param intentId The unique identifier of the payment intent associated with the bank account token. * @returns A Promise that resolves to the bank account tokenization status. */ renderCreateBankAccountTokenEmbed({ intentId, }: { intentId: string; }): Promise; } //# sourceMappingURL=index.d.ts.map