import { FundingSource, GlideDepositWalletProvider, GlideSolanaWalletProvider, GlideLocalStorageProvider, ShowAppLogo, DebitCardAlias } from './GlideDeposit.ts'; import { GlideWidgetTheme } from './theme.ts'; import { CAIP2, CAIP19, Hex, Session } from '@paywithglide/glide-js'; type UseGlidePayProps = { app: string; amount?: string; /** * Payment amount in USD. Use this instead of `amount` to accept a fixed USD * value paid in a specific token (e.g. $20 paid in RAILS). The token * equivalent is computed server-side and cannot be manipulated by the user. */ amountUSD?: string; preferGaslessPayment?: boolean; chainIds?: CAIP2[]; excludeChainIds?: CAIP2[]; excludeCurrencyTiers?: ("tier1" | "tier2" | "tier3")[]; excludeFundingSources?: FundingSource[]; fundingSources?: FundingSource[]; allowedPaymentCurrencies?: string[]; /** * Pre-selects the payment token and chain in the transfer ("Deposit from * anywhere") flow. CAIP-19, e.g. * "solana:101/token:EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v". * Applies when the user has no previously saved token selection, which still * takes precedence. */ defaultPaymentCurrency?: CAIP19; /** * Override the destination chain. Required when the target currency lives on * a different chain than the app's default (e.g. an Ethereum-only token when * the app is configured for Base). Must be a CAIP-2 chain ID (e.g. * "eip155:1" for Ethereum mainnet). Applied before the currency lookup, so * pairing this with `currencyId` always resolves correctly. */ chainId?: CAIP2; /** * Lock the payment to a specific currency. Pass the currency ID (e.g. the * RAILS token ID) to force the widget to only accept that currency. If the * token lives on a different chain than the app default, also pass `chainId`. */ currencyId?: string; appMetadata?: { name?: string; logoUrl?: string; faviconUrl?: string; }; enableRefundEmails?: boolean; payerEmail?: string; hideSettlementCopy?: boolean; showAppLogo?: ShowAppLogo; showOnrampFirst?: boolean; debitCardAlias?: DebitCardAlias; copyOverrides?: Record; sessionId?: string; sessionMetadata?: string; theme?: GlideWidgetTheme; walletProvider?: GlideDepositWalletProvider; solanaWalletProvider?: GlideSolanaWalletProvider; localStorageProvider?: GlideLocalStorageProvider; onOpen?: () => void; onSuccess?: (hash: Hex, session: Session) => void; onClose?: () => void; autoCloseOnSuccess?: boolean; popupsBlocked?: boolean; baseUrl?: string; debug?: boolean; }; export declare const useGlidePay: ({ app, preferGaslessPayment, chainIds, excludeChainIds, excludeCurrencyTiers, excludeFundingSources, fundingSources, allowedPaymentCurrencies, defaultPaymentCurrency, chainId, currencyId, appMetadata, enableRefundEmails, payerEmail, hideSettlementCopy, showAppLogo, showOnrampFirst, debitCardAlias, copyOverrides, amount, amountUSD, sessionId, sessionMetadata, theme, walletProvider, solanaWalletProvider, localStorageProvider, onOpen, onSuccess, onClose, autoCloseOnSuccess, popupsBlocked, baseUrl, debug, }: UseGlidePayProps) => { openGlidePay: () => void; externalUrl: string; opts: import('./GlideDeposit.ts').GlideDepositOptions; }; export {};