import { type ViewStyle } from 'react-native'; import type { ApplePayResult, ApplePayConfig, ApplePayButtonType } from './types'; export interface ApplePayProps { config: ApplePayConfig; onComplete: (result: ApplePayResult) => void; onError?: (error: Error) => void; style?: ViewStyle; buttonStyle?: 'black' | 'white' | 'whiteOutline'; buttonType?: ApplePayButtonType; /** * Payment mode. Defaults to `'webview'` which uses the Bolt-hosted Apple Pay * iframe (no entitlement or merchant certificate required). Set to `'native'` * to use the native PKPaymentButton + PassKit sheet — requires an Apple Pay * entitlement and a registered merchant identifier in your app. */ mode?: 'webview' | 'native'; /** * Your merchant website URL (webview mode only). Must match a domain * registered in both your Bolt merchant account and with Apple for * Apple Pay. Required because React Native WebView has no browser referrer. */ referrer?: string; } /** * — renders an Apple Pay button. * * In `mode='webview'` (default): loads the Bolt-hosted add-card-from-apple-wallet * iframe. No entitlement or merchant certificate setup required. * * In `mode='native'`: renders a native PKPaymentButton and triggers the PassKit * payment sheet. Requires Apple Pay entitlement + registered merchant identifier. * * Only renders on iOS when Apple Pay is available. */ export declare const ApplePay: ({ config, onComplete, onError, style, buttonStyle, buttonType, mode, referrer, }: ApplePayProps) => import("react/jsx-runtime").JSX.Element; //# sourceMappingURL=ApplePay.d.ts.map