import { IApplePayConfig, IApplePayPaymentRequest, IApplePayError, ApplePayConfig, IMerchantSession, IApplePayService, IApplePayPaymentProcessRequest, IApplePayPaymentResponse, IApplePayToken } from '../ApplePay'; export declare enum ApplePayServiceErrorCode { UNAVAILABLE = "UNAVAILABLE", SESSION_ERROR = "SESSION_ERROR", MERCHANT_VALIDATION_ERROR = "MERCHANT_VALIDATION_ERROR", PAYMENT_PROCESSING_ERROR = "PAYMENT_PROCESSING_ERROR", USER_CANCELLED = "USER_CANCELLED" } export declare class ApplePayService implements IApplePayService { private applePayConfig?; private currentSession?; private currentPaymentRequest?; private api; /** * Initialize Apple Pay configuration */ initialize(applePayConfig: IApplePayConfig): void; /** * Validate merchant with Apple Pay servers via API */ validateMerchant(authToken: string, accountId: string): Promise; /** * Process Apple Pay payment via API (fixed to match original logic) */ processPayment(authToken: string, accountId: string, payload: IApplePayPaymentProcessRequest): Promise<{ success: boolean; data: IApplePayPaymentResponse; }>; /** * Check if Apple Pay is available on this device/browser */ isAvailable(): boolean; /** * Check if the user has an active card for the merchant */ canMakePaymentsWithActiveCard(): Promise; /** * Start Apple Pay session */ startPaymentSession(paymentRequest: IApplePayPaymentRequest, authToken: string, accountId: string): Promise<{ success: boolean; token?: IApplePayToken; paymentMethodId?: string; error?: IApplePayError; }>; /** * Abort current Apple Pay session */ abortPaymentSession(): void; /** * Setup Apple Pay session event handlers */ private setupSessionEventHandlers; /** * Create a basic payment request */ static createPaymentRequest(amount: number, label: string, countryCode?: string, currencyCode?: string): IApplePayPaymentRequest; /** * Get current configuration */ getApplePayConfig(): ApplePayConfig | undefined; }