@unifold/ui-react 0.1.68 → 0.1.70-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { DirectExecutionSucceededEvent, DirectExecutionResponse, ChainType, EvmContractCall, DepositMethod, DepositEvent, Wallet, ProductType, FiatCurrency, ExecutionStatus, FeaturedToken, PaymentNetwork, DefaultTokenResponse, ConfirmIntegrationTransferResult, CheckoutMethod, CheckoutPaymentIntent, CheckoutEvent, WithdrawDirectExecutionSucceededEvent, WithdrawEvent, DestinationToken, DestinationTokenChain, PaymentIntent, DepositQuote, SupportedDestinationTokensResponse, SupportedDepositTokensResponse, VerifyAddressResponse } from '@unifold/core';
2
+ import { DirectExecutionSucceededEvent, DirectExecutionResponse, ChainType, EvmContractCall, DepositMethod, DepositEvent, Wallet, ProductType, FiatCurrency, ExecutionStatus, FeaturedToken, PaymentNetwork, DefaultTokenResponse, ConfirmIntegrationTransferResult, CheckoutMethod, CheckoutPaymentIntent, CheckoutEvent, WithdrawDirectExecutionSucceededEvent, WithdrawEvent, DestinationToken, DestinationTokenChain, PaymentIntent, DepositQuote, PublicIncidentResponse, SupportedDestinationTokensResponse, SupportedDepositTokensResponse, VerifyAddressResponse } from '@unifold/core';
3
3
  export { ChainType, DepositMethod } from '@unifold/core';
4
4
  import * as React$1 from 'react';
5
5
  import { MutableRefObject } from 'react';
@@ -68,6 +68,24 @@ interface UseDepositPollingResult {
68
68
  }
69
69
  declare function useDepositPolling({ userId, publishableKey, clientSecret, depositConfirmationMode, depositWalletId, depositWalletIds, enabled, immediateDirectPolling, onDepositSuccess, onDepositError, }: UseDepositPollingOptions): UseDepositPollingResult;
70
70
 
71
+ interface EthereumProvider {
72
+ isMetaMask?: boolean;
73
+ isPhantom?: boolean;
74
+ isCoinbaseWallet?: boolean;
75
+ isTrust?: boolean;
76
+ isRainbow?: boolean;
77
+ isRabby?: boolean;
78
+ isOkxWallet?: boolean;
79
+ selectedAddress?: string;
80
+ request(args: {
81
+ method: string;
82
+ params?: unknown[];
83
+ }): Promise<unknown>;
84
+ on?(event: string, callback: (...args: unknown[]) => void): void;
85
+ off?(event: string, callback: (...args: unknown[]) => void): void;
86
+ removeListener?(event: string, callback: (...args: unknown[]) => void): void;
87
+ }
88
+
71
89
  declare global {
72
90
  interface Window {
73
91
  phantom?: {
@@ -95,18 +113,6 @@ interface PhantomSolanaProvider {
95
113
  on(event: string, callback: (...args: unknown[]) => void): void;
96
114
  off(event: string, callback: (...args: unknown[]) => void): void;
97
115
  }
98
- interface EthereumProvider {
99
- isMetaMask?: boolean;
100
- isPhantom?: boolean;
101
- selectedAddress?: string;
102
- request(args: {
103
- method: string;
104
- params?: unknown[];
105
- }): Promise<unknown>;
106
- on(event: string, callback: (...args: unknown[]) => void): void;
107
- off?(event: string, callback: (...args: unknown[]) => void): void;
108
- removeListener?(event: string, callback: (...args: unknown[]) => void): void;
109
- }
110
116
 
111
117
  /** Quick amount chips on the browser wallet "Enter amount" step */
112
118
  type BrowserWalletAmountQuickSelect = 'usd' | 'percentage';
@@ -182,6 +188,11 @@ interface DepositModalProps {
182
188
  defaultSourceTokenAddress?: string;
183
189
  /** Source token symbol (e.g. `"USDC"`). Must be paired with `defaultSourceChainType` + `defaultSourceChainId`. */
184
190
  defaultSourceSymbol?: string;
191
+ /**
192
+ * Pre-fill USD amount inputs in deposit flows (Connect Wallet, Deposit with
193
+ * Card, Bank Transfer, and Cash App) as an initial typed value.
194
+ */
195
+ prefilledAmountUsd?: string;
185
196
  /** Hide the "Deposit Tracker" option. Overrides dashboard default. Resolves as flag ?? dashboard value ?? false (shown). */
186
197
  hideDepositTracker?: boolean;
187
198
  /** Show balance in deposit modal header. Defaults to false */
@@ -251,6 +262,12 @@ interface DepositModalProps {
251
262
  * users outside the SEPA zone see a disabled "coming soon" card.
252
263
  */
253
264
  enableBankTransfer?: boolean;
265
+ /**
266
+ * Opt in to showing the in-product incident banner UI.
267
+ * Defaults to false. When enabled, the SDK fetches
268
+ * `/v1/public/projects/incident` and renders it when active.
269
+ */
270
+ enableIncidentBanner?: boolean;
254
271
  /** Deposit with Card — onramp step: hide the You use / You buy / You receive card. @default false */
255
272
  hideDepositFlowInfo?: boolean;
256
273
  /** Deposit with Card — onramp step: hide the temporary wallet address disclaimer. @default false */
@@ -284,7 +301,7 @@ interface DepositModalProps {
284
301
  */
285
302
  displayMode?: 'stacked' | 'tabs';
286
303
  }
287
- declare function DepositModal({ open, onOpenChange, userId, publishableKey, modalTitle, destinationTokenSymbol, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, contractCalls, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, hideDepositTracker, showBalanceHeader, transferInputVariant, depositConfirmationMode, enableTransferCrypto, enableConnectWallet, browserWalletAmountQuickSelect, enablePayWithExchange, enableFiatOnramp, enableConnectExchange, enableCashApp, enableApplePay, applePayTitle, applePaySubTitle, enableBankTransfer, enableStripeLink, userEmail, hideDepositFlowInfo, hideDisplayDescription, onDepositSuccess, onDepositError, onEvent, theme, hideOverlay, initialScreen, displayMode, transferCryptoTitle, depositWithCardTitle, payWithExchangeTitle, depositTrackerTitle, depositTrackerSubTitle, }: DepositModalProps): react_jsx_runtime.JSX.Element;
304
+ declare function DepositModal({ open, onOpenChange, userId, publishableKey, modalTitle, destinationTokenSymbol, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, contractCalls, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, prefilledAmountUsd, hideDepositTracker, showBalanceHeader, transferInputVariant, depositConfirmationMode, enableTransferCrypto, enableConnectWallet, browserWalletAmountQuickSelect, enablePayWithExchange, enableFiatOnramp, enableConnectExchange, enableCashApp, enableApplePay, applePayTitle, applePaySubTitle, enableBankTransfer, enableIncidentBanner, enableStripeLink, userEmail, hideDepositFlowInfo, hideDisplayDescription, onDepositSuccess, onDepositError, onEvent, theme, hideOverlay, initialScreen, displayMode, transferCryptoTitle, depositWithCardTitle, payWithExchangeTitle, depositTrackerTitle, depositTrackerSubTitle, }: DepositModalProps): react_jsx_runtime.JSX.Element;
288
305
 
289
306
  interface DepositHeaderProps {
290
307
  title: string;
@@ -304,8 +321,14 @@ interface DepositHeaderProps {
304
321
  /** Project name for balance label e.g. "{projectName} Balance: $0.00" */
305
322
  projectName?: string;
306
323
  publishableKey?: string;
324
+ incident?: {
325
+ enabled: boolean;
326
+ messages?: string[];
327
+ severity?: 'info' | 'degraded' | 'outage';
328
+ statusPageUrl?: string;
329
+ };
307
330
  }
308
- declare function DepositHeader({ title, subtitle, showBack, showClose, onBack, onClose, badge, showBalance, balanceAddress, balanceChainType, balanceChainId, balanceTokenAddress, projectName, publishableKey, }: DepositHeaderProps): react_jsx_runtime.JSX.Element;
331
+ declare function DepositHeader({ title, subtitle, showBack, showClose, onBack, onClose, badge, showBalance, balanceAddress, balanceChainType, balanceChainId, balanceTokenAddress, projectName, publishableKey, incident, }: DepositHeaderProps): react_jsx_runtime.JSX.Element;
309
332
 
310
333
  interface TransferCryptoSingleInputProps {
311
334
  userId: string;
@@ -349,6 +372,8 @@ interface TransferCryptoSingleInputProps {
349
372
  minimumDepositAmountUsd: number;
350
373
  isStablecoin: boolean;
351
374
  }) => void;
375
+ /** Optional USD prefilled used to render an estimated "You send" target. */
376
+ prefilledAmountUsd?: string;
352
377
  /** Checkout mode: estimated source amount to send (from /public/quotes). Shown above the QR code. */
353
378
  checkoutQuote?: {
354
379
  sourceAmount: string;
@@ -364,7 +389,7 @@ interface TransferCryptoSingleInputProps {
364
389
  /** Product context sent to the API — "deposit" (default) or "payment". */
365
390
  productType?: ProductType;
366
391
  }
367
- declare function TransferCryptoSingleInput({ userId, publishableKey, clientSecret, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, depositConfirmationMode, onExecutionsChange, onDepositSuccess, onDepositError, wallets: externalWallets, onSourceTokenChange, checkoutQuote, isCheckoutQuoteLoading, persistCheckingIndicator, productType, }: TransferCryptoSingleInputProps): react_jsx_runtime.JSX.Element;
392
+ declare function TransferCryptoSingleInput({ userId, publishableKey, clientSecret, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, depositConfirmationMode, onExecutionsChange, onDepositSuccess, onDepositError, wallets: externalWallets, onSourceTokenChange, prefilledAmountUsd, checkoutQuote, isCheckoutQuoteLoading, persistCheckingIndicator, productType, }: TransferCryptoSingleInputProps): react_jsx_runtime.JSX.Element;
368
393
 
369
394
  interface TransferCryptoDoubleInputProps {
370
395
  userId: string;
@@ -377,6 +402,8 @@ interface TransferCryptoDoubleInputProps {
377
402
  defaultSourceChainId?: string;
378
403
  defaultSourceTokenAddress?: string;
379
404
  defaultSourceSymbol?: string;
405
+ /** Optional USD prefilled used to render an estimated "You send" target. */
406
+ prefilledAmountUsd?: string;
380
407
  /** Controls when polling starts and whether a waiting UI is shown.
381
408
  * - "auto_ui": After 10s, starts polling and shows "Processing..." card (default)
382
409
  * - "auto_silent": After 10s, starts polling silently (no waiting UI)
@@ -397,7 +424,7 @@ interface TransferCryptoDoubleInputProps {
397
424
  }) => void;
398
425
  wallets?: Wallet[];
399
426
  }
400
- declare function TransferCryptoDoubleInput({ userId, publishableKey, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, depositConfirmationMode, onExecutionsChange, onDepositSuccess, onDepositError, wallets: externalWallets, }: TransferCryptoDoubleInputProps): react_jsx_runtime.JSX.Element;
427
+ declare function TransferCryptoDoubleInput({ userId, publishableKey, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, prefilledAmountUsd, depositConfirmationMode, onExecutionsChange, onDepositSuccess, onDepositError, wallets: externalWallets, }: TransferCryptoDoubleInputProps): react_jsx_runtime.JSX.Element;
401
428
 
402
429
  interface BuyWithCardProps {
403
430
  userId: string;
@@ -430,9 +457,11 @@ interface BuyWithCardProps {
430
457
  hideDepositFlowInfo?: boolean;
431
458
  /** When true, hides the temporary wallet address disclaimer below the flow. @default false */
432
459
  hideDisplayDescription?: boolean;
460
+ /** Optional USD prefilled for the amount input (treated like manual user input). */
461
+ prefilledAmountUsd?: string;
433
462
  }
434
463
  declare function BuyWithCard({ userId, publishableKey, view: externalView, onViewChange, maxAmountUsd, accentColor, // Keep prop for backward compatibility but don't use default
435
- destinationTokenSymbol, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, onDepositSuccess, onDepositError, onEvent, themeClass, wallets: externalWallets, assetCdnUrl, hideDepositFlowInfo, hideDisplayDescription, }: BuyWithCardProps): react_jsx_runtime.JSX.Element;
464
+ destinationTokenSymbol, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, onDepositSuccess, onDepositError, onEvent, themeClass, wallets: externalWallets, assetCdnUrl, hideDepositFlowInfo, hideDisplayDescription, prefilledAmountUsd, }: BuyWithCardProps): react_jsx_runtime.JSX.Element;
436
465
 
437
466
  type View = 'loading_config' | 'disabled' | 'email_input' | 'phone_input' | 'submitting_session' | 'email_otp' | 'phone_otp' | 'amount' | 'checking_deposit' | 'success' | 'guest_limit_reached' | 'limit_upgrade_intro' | 'limit_upgrade_form' | 'limit_upgrade_submitting' | 'limit_upgrade_failed';
438
467
  interface BuyWithApplePayProps {
@@ -645,6 +674,8 @@ interface BankTransferProps {
645
674
  error?: unknown;
646
675
  code?: string;
647
676
  }) => void;
677
+ /** Optional USD prefilled for the amount input (treated like manual user input). */
678
+ prefilledAmountUsd?: string;
648
679
  }
649
680
  /**
650
681
  * Bank-transfer deposit flow. Three steps:
@@ -655,7 +686,7 @@ interface BankTransferProps {
655
686
  * The widget itself handles KYC + IBAN entry + payment; we just collect the
656
687
  * fiat amount up-front so users aren't surprised by the default in the widget.
657
688
  */
658
- declare function BankTransfer({ userId, publishableKey, view: externalView, onViewChange, destinationChainType, destinationChainId, destinationTokenAddress, destinationTokenSymbol, wallets, defaultToken: externalDefaultToken, assetCdnUrl, onDepositSuccess, onEvent, onDepositError, }: BankTransferProps): react_jsx_runtime.JSX.Element;
689
+ declare function BankTransfer({ userId, publishableKey, view: externalView, onViewChange, destinationChainType, destinationChainId, destinationTokenAddress, destinationTokenSymbol, wallets, defaultToken: externalDefaultToken, assetCdnUrl, onDepositSuccess, onEvent, onDepositError, prefilledAmountUsd, }: BankTransferProps): react_jsx_runtime.JSX.Element;
659
690
 
660
691
  interface DepositWallet {
661
692
  id: string;
@@ -696,8 +727,10 @@ interface CoinbaseConnectProps {
696
727
  defaultSourceChainId?: string;
697
728
  defaultSourceTokenAddress?: string;
698
729
  defaultSourceSymbol?: string;
730
+ /** Optional USD prefilled for the amount input (treated like manual user input). */
731
+ prefilledAmountUsd?: string;
699
732
  }
700
- declare function CoinbaseConnect({ publishableKey, userId, wallets, recipientAddress, destinationTokenAddress, destinationChainId, destinationChainType, onTransferSuccess, onDepositSuccess, onDepositError, onTransferError, onClose, onBack: parentOnBack, onDisconnect, skipToHoldings, canGoBack, onExecutionsChange, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, }: CoinbaseConnectProps): react_jsx_runtime.JSX.Element | null;
733
+ declare function CoinbaseConnect({ publishableKey, userId, wallets, recipientAddress, destinationTokenAddress, destinationChainId, destinationChainType, onTransferSuccess, onDepositSuccess, onDepositError, onTransferError, onClose, onBack: parentOnBack, onDisconnect, skipToHoldings, canGoBack, onExecutionsChange, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, prefilledAmountUsd, }: CoinbaseConnectProps): react_jsx_runtime.JSX.Element | null;
701
734
  declare namespace CoinbaseConnect {
702
735
  var displayName: string;
703
736
  }
@@ -710,6 +743,8 @@ interface PayWithStripeLinkProps {
710
743
  destinationChainType?: ChainType;
711
744
  destinationChainId?: string;
712
745
  destinationTokenAddress?: string;
746
+ countryCode?: string;
747
+ subdivisionCode?: string;
713
748
  /**
714
749
  * Pre-created deposit intent wallets (one per chain type). When provided, the
715
750
  * Stripe onramp delivers to the deposit intent address matching the Stripe
@@ -754,7 +789,7 @@ interface PayWithStripeLinkProps {
754
789
  * The Stripe publishable key is auto-fetched from the backend via GET /config,
755
790
  * so consumers only need their Unifold publishable key.
756
791
  */
757
- declare function PayWithStripeLink({ userId, publishableKey, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, wallets: externalWallets, email: emailProp, iconUrl, step: controlledStep, onStepChange, backHandlerRef, onDepositSuccess, onDepositError, }: PayWithStripeLinkProps): react_jsx_runtime.JSX.Element | null;
792
+ declare function PayWithStripeLink({ userId, publishableKey, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, countryCode, subdivisionCode, wallets: externalWallets, email: emailProp, iconUrl, step: controlledStep, onStepChange, backHandlerRef, onDepositSuccess, onDepositError, }: PayWithStripeLinkProps): react_jsx_runtime.JSX.Element | null;
758
793
 
759
794
  interface DepositExecutionItemProps {
760
795
  execution: DirectExecutionResponse;
@@ -814,6 +849,12 @@ interface CheckoutModalProps {
814
849
  enableTransferCrypto?: boolean;
815
850
  /** Enable browser wallet connection option. Overrides dashboard default. Resolves as flag ?? dashboard value ?? true. */
816
851
  enableConnectWallet?: boolean;
852
+ /**
853
+ * Opt in to showing the in-product incident banner UI.
854
+ * Defaults to false. When enabled, the SDK fetches
855
+ * `/v1/public/projects/incident` and renders it when active.
856
+ */
857
+ enableIncidentBanner?: boolean;
817
858
  /**
818
859
  * Prefer a source token/chain in Transfer Crypto and Wallet Connect flows.
819
860
  * All four props are optional. To match, provide `chainType` + `chainId` + (`symbol` OR `tokenAddress`).
@@ -847,7 +888,7 @@ interface CheckoutModalProps {
847
888
  }) => void;
848
889
  onEvent?: (event: CheckoutEvent) => void;
849
890
  }
850
- declare function CheckoutModal({ open, onOpenChange, clientSecret, publishableKey, modalTitle, enableTransferCrypto, enableConnectWallet, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, theme, onCheckoutSuccess, onCheckoutError, onEvent, }: CheckoutModalProps): react_jsx_runtime.JSX.Element;
891
+ declare function CheckoutModal({ open, onOpenChange, clientSecret, publishableKey, modalTitle, enableTransferCrypto, enableConnectWallet, enableIncidentBanner, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, theme, onCheckoutSuccess, onCheckoutError, onEvent, }: CheckoutModalProps): react_jsx_runtime.JSX.Element;
851
892
 
852
893
  interface WithdrawTransactionInfo {
853
894
  /** Source (sending) chain type */
@@ -1241,6 +1282,17 @@ interface UseDepositQuoteParams {
1241
1282
  */
1242
1283
  declare function useDepositQuote(params: UseDepositQuoteParams): _tanstack_react_query.UseQueryResult<DepositQuote, Error>;
1243
1284
 
1285
+ interface UsePublicIncidentOptions {
1286
+ publishableKey: string;
1287
+ enabled?: boolean;
1288
+ }
1289
+ interface UsePublicIncidentResult {
1290
+ incident: PublicIncidentResponse | undefined;
1291
+ isLoading: boolean;
1292
+ error: Error | null;
1293
+ }
1294
+ declare function usePublicIncident({ publishableKey, enabled, }: UsePublicIncidentOptions): UsePublicIncidentResult;
1295
+
1244
1296
  interface UseWithdrawPollingOptions {
1245
1297
  userId: string | undefined;
1246
1298
  publishableKey: string;
@@ -1603,4 +1655,4 @@ declare function cn(...inputs: ClassValue[]): string;
1603
1655
  */
1604
1656
  declare function truncateAddress(address: string, startChars?: number, endChars?: number): string;
1605
1657
 
1606
- export { type AllowedCountryResult, BankTransfer, BankTransferButton, type BankTransferProps, type BankTransferView, type BrowserWalletAmountQuickSelect, Button, type ButtonProps, type ButtonTokens, BuyWithApplePay, type BuyWithApplePayProps, BuyWithCard, type BuyWithCardProps, type CardTokens, CheckingForDepositIndicator, CheckoutModal, type CheckoutModalProps, CoinbaseConnect, type ComponentConfig, type ComponentOverrides, type ComponentTokens, ConfirmingView, ConnectExchangeButton, type ContainerTokens, CurrencyListItem, CurrencyListSection, CurrencyModal, type CustomThemeColors, type DepositConfirmationMode, DepositDetailContent, DepositExecutionItem, DepositHeader, DepositModal, type DepositModalInitialScreen, DepositSuccessToast, DepositTrackerButton, DepositWithCardButton, DepositsModal, type DetectedWallet, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, type EvmWalletProvider, type FontConfig, HYPERCORE_CHAIN_ID, type HeaderTokens, type InputTokens, type ListTokens, ManualDepositButton, PayWithStripeLink, type PayWithStripeLinkProps, QRCodeSkeleton, type ResolvedFonts, type SearchTokens, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, type SolanaWalletProvider, type StoredApplePaySession, StripeLinkButton, type StripeLinkStep, StyledQRCode, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, type ThemeProviderProps, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransferCryptoButton, TransferCryptoDoubleInput, TransferCryptoSingleInput, type UseDepositQuoteParams, type UsePaymentIntentParams, type UseSupportedDepositTokensOptions, WithdrawConfirmingView, WithdrawDoubleInput, WithdrawExecutionItem, WithdrawForm, WithdrawModal, type WithdrawModalProps, WithdrawTokenSelector, type WithdrawTransactionInfo, buttonVariants, clearStoredApplePaySession, cn, colors, defaultColors, detectBrowserWallet, getColors, getStoredApplePaySession, isHypercoreChain, isOnrampTokenFresh, mergeColors, resolveComponentTokens, sendEvmWithdraw, sendHypercoreWithdraw, sendSolanaWithdraw, setStoredApplePaySession, truncateAddress, useAddressBalance, useAllowedCountry, useDebounce, useDepositPolling, useDepositQuote, usePaymentIntent, useSourceTokenValidation, useSupportedDepositTokens, useSupportedDestinationTokens, useTheme, useVerifyRecipientAddress, useWithdrawPolling };
1658
+ export { type AllowedCountryResult, BankTransfer, BankTransferButton, type BankTransferProps, type BankTransferView, type BrowserWalletAmountQuickSelect, Button, type ButtonProps, type ButtonTokens, BuyWithApplePay, type BuyWithApplePayProps, BuyWithCard, type BuyWithCardProps, type CardTokens, CheckingForDepositIndicator, CheckoutModal, type CheckoutModalProps, CoinbaseConnect, type ComponentConfig, type ComponentOverrides, type ComponentTokens, ConfirmingView, ConnectExchangeButton, type ContainerTokens, CurrencyListItem, CurrencyListSection, CurrencyModal, type CustomThemeColors, type DepositConfirmationMode, DepositDetailContent, DepositExecutionItem, DepositHeader, DepositModal, type DepositModalInitialScreen, DepositSuccessToast, DepositTrackerButton, DepositWithCardButton, DepositsModal, type DetectedWallet, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, type EvmWalletProvider, type FontConfig, HYPERCORE_CHAIN_ID, type HeaderTokens, type InputTokens, type ListTokens, ManualDepositButton, PayWithStripeLink, type PayWithStripeLinkProps, QRCodeSkeleton, type ResolvedFonts, type SearchTokens, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, type SolanaWalletProvider, type StoredApplePaySession, StripeLinkButton, type StripeLinkStep, StyledQRCode, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, type ThemeProviderProps, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransferCryptoButton, TransferCryptoDoubleInput, TransferCryptoSingleInput, type UseDepositQuoteParams, type UsePaymentIntentParams, type UseSupportedDepositTokensOptions, WithdrawConfirmingView, WithdrawDoubleInput, WithdrawExecutionItem, WithdrawForm, WithdrawModal, type WithdrawModalProps, WithdrawTokenSelector, type WithdrawTransactionInfo, buttonVariants, clearStoredApplePaySession, cn, colors, defaultColors, detectBrowserWallet, getColors, getStoredApplePaySession, isHypercoreChain, isOnrampTokenFresh, mergeColors, resolveComponentTokens, sendEvmWithdraw, sendHypercoreWithdraw, sendSolanaWithdraw, setStoredApplePaySession, truncateAddress, useAddressBalance, useAllowedCountry, useDebounce, useDepositPolling, useDepositQuote, usePaymentIntent, usePublicIncident, useSourceTokenValidation, useSupportedDepositTokens, useSupportedDestinationTokens, useTheme, useVerifyRecipientAddress, useWithdrawPolling };
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import { DirectExecutionSucceededEvent, DirectExecutionResponse, ChainType, EvmContractCall, DepositMethod, DepositEvent, Wallet, ProductType, FiatCurrency, ExecutionStatus, FeaturedToken, PaymentNetwork, DefaultTokenResponse, ConfirmIntegrationTransferResult, CheckoutMethod, CheckoutPaymentIntent, CheckoutEvent, WithdrawDirectExecutionSucceededEvent, WithdrawEvent, DestinationToken, DestinationTokenChain, PaymentIntent, DepositQuote, SupportedDestinationTokensResponse, SupportedDepositTokensResponse, VerifyAddressResponse } from '@unifold/core';
2
+ import { DirectExecutionSucceededEvent, DirectExecutionResponse, ChainType, EvmContractCall, DepositMethod, DepositEvent, Wallet, ProductType, FiatCurrency, ExecutionStatus, FeaturedToken, PaymentNetwork, DefaultTokenResponse, ConfirmIntegrationTransferResult, CheckoutMethod, CheckoutPaymentIntent, CheckoutEvent, WithdrawDirectExecutionSucceededEvent, WithdrawEvent, DestinationToken, DestinationTokenChain, PaymentIntent, DepositQuote, PublicIncidentResponse, SupportedDestinationTokensResponse, SupportedDepositTokensResponse, VerifyAddressResponse } from '@unifold/core';
3
3
  export { ChainType, DepositMethod } from '@unifold/core';
4
4
  import * as React$1 from 'react';
5
5
  import { MutableRefObject } from 'react';
@@ -68,6 +68,24 @@ interface UseDepositPollingResult {
68
68
  }
69
69
  declare function useDepositPolling({ userId, publishableKey, clientSecret, depositConfirmationMode, depositWalletId, depositWalletIds, enabled, immediateDirectPolling, onDepositSuccess, onDepositError, }: UseDepositPollingOptions): UseDepositPollingResult;
70
70
 
71
+ interface EthereumProvider {
72
+ isMetaMask?: boolean;
73
+ isPhantom?: boolean;
74
+ isCoinbaseWallet?: boolean;
75
+ isTrust?: boolean;
76
+ isRainbow?: boolean;
77
+ isRabby?: boolean;
78
+ isOkxWallet?: boolean;
79
+ selectedAddress?: string;
80
+ request(args: {
81
+ method: string;
82
+ params?: unknown[];
83
+ }): Promise<unknown>;
84
+ on?(event: string, callback: (...args: unknown[]) => void): void;
85
+ off?(event: string, callback: (...args: unknown[]) => void): void;
86
+ removeListener?(event: string, callback: (...args: unknown[]) => void): void;
87
+ }
88
+
71
89
  declare global {
72
90
  interface Window {
73
91
  phantom?: {
@@ -95,18 +113,6 @@ interface PhantomSolanaProvider {
95
113
  on(event: string, callback: (...args: unknown[]) => void): void;
96
114
  off(event: string, callback: (...args: unknown[]) => void): void;
97
115
  }
98
- interface EthereumProvider {
99
- isMetaMask?: boolean;
100
- isPhantom?: boolean;
101
- selectedAddress?: string;
102
- request(args: {
103
- method: string;
104
- params?: unknown[];
105
- }): Promise<unknown>;
106
- on(event: string, callback: (...args: unknown[]) => void): void;
107
- off?(event: string, callback: (...args: unknown[]) => void): void;
108
- removeListener?(event: string, callback: (...args: unknown[]) => void): void;
109
- }
110
116
 
111
117
  /** Quick amount chips on the browser wallet "Enter amount" step */
112
118
  type BrowserWalletAmountQuickSelect = 'usd' | 'percentage';
@@ -182,6 +188,11 @@ interface DepositModalProps {
182
188
  defaultSourceTokenAddress?: string;
183
189
  /** Source token symbol (e.g. `"USDC"`). Must be paired with `defaultSourceChainType` + `defaultSourceChainId`. */
184
190
  defaultSourceSymbol?: string;
191
+ /**
192
+ * Pre-fill USD amount inputs in deposit flows (Connect Wallet, Deposit with
193
+ * Card, Bank Transfer, and Cash App) as an initial typed value.
194
+ */
195
+ prefilledAmountUsd?: string;
185
196
  /** Hide the "Deposit Tracker" option. Overrides dashboard default. Resolves as flag ?? dashboard value ?? false (shown). */
186
197
  hideDepositTracker?: boolean;
187
198
  /** Show balance in deposit modal header. Defaults to false */
@@ -251,6 +262,12 @@ interface DepositModalProps {
251
262
  * users outside the SEPA zone see a disabled "coming soon" card.
252
263
  */
253
264
  enableBankTransfer?: boolean;
265
+ /**
266
+ * Opt in to showing the in-product incident banner UI.
267
+ * Defaults to false. When enabled, the SDK fetches
268
+ * `/v1/public/projects/incident` and renders it when active.
269
+ */
270
+ enableIncidentBanner?: boolean;
254
271
  /** Deposit with Card — onramp step: hide the You use / You buy / You receive card. @default false */
255
272
  hideDepositFlowInfo?: boolean;
256
273
  /** Deposit with Card — onramp step: hide the temporary wallet address disclaimer. @default false */
@@ -284,7 +301,7 @@ interface DepositModalProps {
284
301
  */
285
302
  displayMode?: 'stacked' | 'tabs';
286
303
  }
287
- declare function DepositModal({ open, onOpenChange, userId, publishableKey, modalTitle, destinationTokenSymbol, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, contractCalls, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, hideDepositTracker, showBalanceHeader, transferInputVariant, depositConfirmationMode, enableTransferCrypto, enableConnectWallet, browserWalletAmountQuickSelect, enablePayWithExchange, enableFiatOnramp, enableConnectExchange, enableCashApp, enableApplePay, applePayTitle, applePaySubTitle, enableBankTransfer, enableStripeLink, userEmail, hideDepositFlowInfo, hideDisplayDescription, onDepositSuccess, onDepositError, onEvent, theme, hideOverlay, initialScreen, displayMode, transferCryptoTitle, depositWithCardTitle, payWithExchangeTitle, depositTrackerTitle, depositTrackerSubTitle, }: DepositModalProps): react_jsx_runtime.JSX.Element;
304
+ declare function DepositModal({ open, onOpenChange, userId, publishableKey, modalTitle, destinationTokenSymbol, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, contractCalls, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, prefilledAmountUsd, hideDepositTracker, showBalanceHeader, transferInputVariant, depositConfirmationMode, enableTransferCrypto, enableConnectWallet, browserWalletAmountQuickSelect, enablePayWithExchange, enableFiatOnramp, enableConnectExchange, enableCashApp, enableApplePay, applePayTitle, applePaySubTitle, enableBankTransfer, enableIncidentBanner, enableStripeLink, userEmail, hideDepositFlowInfo, hideDisplayDescription, onDepositSuccess, onDepositError, onEvent, theme, hideOverlay, initialScreen, displayMode, transferCryptoTitle, depositWithCardTitle, payWithExchangeTitle, depositTrackerTitle, depositTrackerSubTitle, }: DepositModalProps): react_jsx_runtime.JSX.Element;
288
305
 
289
306
  interface DepositHeaderProps {
290
307
  title: string;
@@ -304,8 +321,14 @@ interface DepositHeaderProps {
304
321
  /** Project name for balance label e.g. "{projectName} Balance: $0.00" */
305
322
  projectName?: string;
306
323
  publishableKey?: string;
324
+ incident?: {
325
+ enabled: boolean;
326
+ messages?: string[];
327
+ severity?: 'info' | 'degraded' | 'outage';
328
+ statusPageUrl?: string;
329
+ };
307
330
  }
308
- declare function DepositHeader({ title, subtitle, showBack, showClose, onBack, onClose, badge, showBalance, balanceAddress, balanceChainType, balanceChainId, balanceTokenAddress, projectName, publishableKey, }: DepositHeaderProps): react_jsx_runtime.JSX.Element;
331
+ declare function DepositHeader({ title, subtitle, showBack, showClose, onBack, onClose, badge, showBalance, balanceAddress, balanceChainType, balanceChainId, balanceTokenAddress, projectName, publishableKey, incident, }: DepositHeaderProps): react_jsx_runtime.JSX.Element;
309
332
 
310
333
  interface TransferCryptoSingleInputProps {
311
334
  userId: string;
@@ -349,6 +372,8 @@ interface TransferCryptoSingleInputProps {
349
372
  minimumDepositAmountUsd: number;
350
373
  isStablecoin: boolean;
351
374
  }) => void;
375
+ /** Optional USD prefilled used to render an estimated "You send" target. */
376
+ prefilledAmountUsd?: string;
352
377
  /** Checkout mode: estimated source amount to send (from /public/quotes). Shown above the QR code. */
353
378
  checkoutQuote?: {
354
379
  sourceAmount: string;
@@ -364,7 +389,7 @@ interface TransferCryptoSingleInputProps {
364
389
  /** Product context sent to the API — "deposit" (default) or "payment". */
365
390
  productType?: ProductType;
366
391
  }
367
- declare function TransferCryptoSingleInput({ userId, publishableKey, clientSecret, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, depositConfirmationMode, onExecutionsChange, onDepositSuccess, onDepositError, wallets: externalWallets, onSourceTokenChange, checkoutQuote, isCheckoutQuoteLoading, persistCheckingIndicator, productType, }: TransferCryptoSingleInputProps): react_jsx_runtime.JSX.Element;
392
+ declare function TransferCryptoSingleInput({ userId, publishableKey, clientSecret, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, depositConfirmationMode, onExecutionsChange, onDepositSuccess, onDepositError, wallets: externalWallets, onSourceTokenChange, prefilledAmountUsd, checkoutQuote, isCheckoutQuoteLoading, persistCheckingIndicator, productType, }: TransferCryptoSingleInputProps): react_jsx_runtime.JSX.Element;
368
393
 
369
394
  interface TransferCryptoDoubleInputProps {
370
395
  userId: string;
@@ -377,6 +402,8 @@ interface TransferCryptoDoubleInputProps {
377
402
  defaultSourceChainId?: string;
378
403
  defaultSourceTokenAddress?: string;
379
404
  defaultSourceSymbol?: string;
405
+ /** Optional USD prefilled used to render an estimated "You send" target. */
406
+ prefilledAmountUsd?: string;
380
407
  /** Controls when polling starts and whether a waiting UI is shown.
381
408
  * - "auto_ui": After 10s, starts polling and shows "Processing..." card (default)
382
409
  * - "auto_silent": After 10s, starts polling silently (no waiting UI)
@@ -397,7 +424,7 @@ interface TransferCryptoDoubleInputProps {
397
424
  }) => void;
398
425
  wallets?: Wallet[];
399
426
  }
400
- declare function TransferCryptoDoubleInput({ userId, publishableKey, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, depositConfirmationMode, onExecutionsChange, onDepositSuccess, onDepositError, wallets: externalWallets, }: TransferCryptoDoubleInputProps): react_jsx_runtime.JSX.Element;
427
+ declare function TransferCryptoDoubleInput({ userId, publishableKey, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, prefilledAmountUsd, depositConfirmationMode, onExecutionsChange, onDepositSuccess, onDepositError, wallets: externalWallets, }: TransferCryptoDoubleInputProps): react_jsx_runtime.JSX.Element;
401
428
 
402
429
  interface BuyWithCardProps {
403
430
  userId: string;
@@ -430,9 +457,11 @@ interface BuyWithCardProps {
430
457
  hideDepositFlowInfo?: boolean;
431
458
  /** When true, hides the temporary wallet address disclaimer below the flow. @default false */
432
459
  hideDisplayDescription?: boolean;
460
+ /** Optional USD prefilled for the amount input (treated like manual user input). */
461
+ prefilledAmountUsd?: string;
433
462
  }
434
463
  declare function BuyWithCard({ userId, publishableKey, view: externalView, onViewChange, maxAmountUsd, accentColor, // Keep prop for backward compatibility but don't use default
435
- destinationTokenSymbol, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, onDepositSuccess, onDepositError, onEvent, themeClass, wallets: externalWallets, assetCdnUrl, hideDepositFlowInfo, hideDisplayDescription, }: BuyWithCardProps): react_jsx_runtime.JSX.Element;
464
+ destinationTokenSymbol, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, onDepositSuccess, onDepositError, onEvent, themeClass, wallets: externalWallets, assetCdnUrl, hideDepositFlowInfo, hideDisplayDescription, prefilledAmountUsd, }: BuyWithCardProps): react_jsx_runtime.JSX.Element;
436
465
 
437
466
  type View = 'loading_config' | 'disabled' | 'email_input' | 'phone_input' | 'submitting_session' | 'email_otp' | 'phone_otp' | 'amount' | 'checking_deposit' | 'success' | 'guest_limit_reached' | 'limit_upgrade_intro' | 'limit_upgrade_form' | 'limit_upgrade_submitting' | 'limit_upgrade_failed';
438
467
  interface BuyWithApplePayProps {
@@ -645,6 +674,8 @@ interface BankTransferProps {
645
674
  error?: unknown;
646
675
  code?: string;
647
676
  }) => void;
677
+ /** Optional USD prefilled for the amount input (treated like manual user input). */
678
+ prefilledAmountUsd?: string;
648
679
  }
649
680
  /**
650
681
  * Bank-transfer deposit flow. Three steps:
@@ -655,7 +686,7 @@ interface BankTransferProps {
655
686
  * The widget itself handles KYC + IBAN entry + payment; we just collect the
656
687
  * fiat amount up-front so users aren't surprised by the default in the widget.
657
688
  */
658
- declare function BankTransfer({ userId, publishableKey, view: externalView, onViewChange, destinationChainType, destinationChainId, destinationTokenAddress, destinationTokenSymbol, wallets, defaultToken: externalDefaultToken, assetCdnUrl, onDepositSuccess, onEvent, onDepositError, }: BankTransferProps): react_jsx_runtime.JSX.Element;
689
+ declare function BankTransfer({ userId, publishableKey, view: externalView, onViewChange, destinationChainType, destinationChainId, destinationTokenAddress, destinationTokenSymbol, wallets, defaultToken: externalDefaultToken, assetCdnUrl, onDepositSuccess, onEvent, onDepositError, prefilledAmountUsd, }: BankTransferProps): react_jsx_runtime.JSX.Element;
659
690
 
660
691
  interface DepositWallet {
661
692
  id: string;
@@ -696,8 +727,10 @@ interface CoinbaseConnectProps {
696
727
  defaultSourceChainId?: string;
697
728
  defaultSourceTokenAddress?: string;
698
729
  defaultSourceSymbol?: string;
730
+ /** Optional USD prefilled for the amount input (treated like manual user input). */
731
+ prefilledAmountUsd?: string;
699
732
  }
700
- declare function CoinbaseConnect({ publishableKey, userId, wallets, recipientAddress, destinationTokenAddress, destinationChainId, destinationChainType, onTransferSuccess, onDepositSuccess, onDepositError, onTransferError, onClose, onBack: parentOnBack, onDisconnect, skipToHoldings, canGoBack, onExecutionsChange, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, }: CoinbaseConnectProps): react_jsx_runtime.JSX.Element | null;
733
+ declare function CoinbaseConnect({ publishableKey, userId, wallets, recipientAddress, destinationTokenAddress, destinationChainId, destinationChainType, onTransferSuccess, onDepositSuccess, onDepositError, onTransferError, onClose, onBack: parentOnBack, onDisconnect, skipToHoldings, canGoBack, onExecutionsChange, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, prefilledAmountUsd, }: CoinbaseConnectProps): react_jsx_runtime.JSX.Element | null;
701
734
  declare namespace CoinbaseConnect {
702
735
  var displayName: string;
703
736
  }
@@ -710,6 +743,8 @@ interface PayWithStripeLinkProps {
710
743
  destinationChainType?: ChainType;
711
744
  destinationChainId?: string;
712
745
  destinationTokenAddress?: string;
746
+ countryCode?: string;
747
+ subdivisionCode?: string;
713
748
  /**
714
749
  * Pre-created deposit intent wallets (one per chain type). When provided, the
715
750
  * Stripe onramp delivers to the deposit intent address matching the Stripe
@@ -754,7 +789,7 @@ interface PayWithStripeLinkProps {
754
789
  * The Stripe publishable key is auto-fetched from the backend via GET /config,
755
790
  * so consumers only need their Unifold publishable key.
756
791
  */
757
- declare function PayWithStripeLink({ userId, publishableKey, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, wallets: externalWallets, email: emailProp, iconUrl, step: controlledStep, onStepChange, backHandlerRef, onDepositSuccess, onDepositError, }: PayWithStripeLinkProps): react_jsx_runtime.JSX.Element | null;
792
+ declare function PayWithStripeLink({ userId, publishableKey, recipientAddress, destinationChainType, destinationChainId, destinationTokenAddress, countryCode, subdivisionCode, wallets: externalWallets, email: emailProp, iconUrl, step: controlledStep, onStepChange, backHandlerRef, onDepositSuccess, onDepositError, }: PayWithStripeLinkProps): react_jsx_runtime.JSX.Element | null;
758
793
 
759
794
  interface DepositExecutionItemProps {
760
795
  execution: DirectExecutionResponse;
@@ -814,6 +849,12 @@ interface CheckoutModalProps {
814
849
  enableTransferCrypto?: boolean;
815
850
  /** Enable browser wallet connection option. Overrides dashboard default. Resolves as flag ?? dashboard value ?? true. */
816
851
  enableConnectWallet?: boolean;
852
+ /**
853
+ * Opt in to showing the in-product incident banner UI.
854
+ * Defaults to false. When enabled, the SDK fetches
855
+ * `/v1/public/projects/incident` and renders it when active.
856
+ */
857
+ enableIncidentBanner?: boolean;
817
858
  /**
818
859
  * Prefer a source token/chain in Transfer Crypto and Wallet Connect flows.
819
860
  * All four props are optional. To match, provide `chainType` + `chainId` + (`symbol` OR `tokenAddress`).
@@ -847,7 +888,7 @@ interface CheckoutModalProps {
847
888
  }) => void;
848
889
  onEvent?: (event: CheckoutEvent) => void;
849
890
  }
850
- declare function CheckoutModal({ open, onOpenChange, clientSecret, publishableKey, modalTitle, enableTransferCrypto, enableConnectWallet, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, theme, onCheckoutSuccess, onCheckoutError, onEvent, }: CheckoutModalProps): react_jsx_runtime.JSX.Element;
891
+ declare function CheckoutModal({ open, onOpenChange, clientSecret, publishableKey, modalTitle, enableTransferCrypto, enableConnectWallet, enableIncidentBanner, defaultSourceChainType, defaultSourceChainId, defaultSourceTokenAddress, defaultSourceSymbol, theme, onCheckoutSuccess, onCheckoutError, onEvent, }: CheckoutModalProps): react_jsx_runtime.JSX.Element;
851
892
 
852
893
  interface WithdrawTransactionInfo {
853
894
  /** Source (sending) chain type */
@@ -1241,6 +1282,17 @@ interface UseDepositQuoteParams {
1241
1282
  */
1242
1283
  declare function useDepositQuote(params: UseDepositQuoteParams): _tanstack_react_query.UseQueryResult<DepositQuote, Error>;
1243
1284
 
1285
+ interface UsePublicIncidentOptions {
1286
+ publishableKey: string;
1287
+ enabled?: boolean;
1288
+ }
1289
+ interface UsePublicIncidentResult {
1290
+ incident: PublicIncidentResponse | undefined;
1291
+ isLoading: boolean;
1292
+ error: Error | null;
1293
+ }
1294
+ declare function usePublicIncident({ publishableKey, enabled, }: UsePublicIncidentOptions): UsePublicIncidentResult;
1295
+
1244
1296
  interface UseWithdrawPollingOptions {
1245
1297
  userId: string | undefined;
1246
1298
  publishableKey: string;
@@ -1603,4 +1655,4 @@ declare function cn(...inputs: ClassValue[]): string;
1603
1655
  */
1604
1656
  declare function truncateAddress(address: string, startChars?: number, endChars?: number): string;
1605
1657
 
1606
- export { type AllowedCountryResult, BankTransfer, BankTransferButton, type BankTransferProps, type BankTransferView, type BrowserWalletAmountQuickSelect, Button, type ButtonProps, type ButtonTokens, BuyWithApplePay, type BuyWithApplePayProps, BuyWithCard, type BuyWithCardProps, type CardTokens, CheckingForDepositIndicator, CheckoutModal, type CheckoutModalProps, CoinbaseConnect, type ComponentConfig, type ComponentOverrides, type ComponentTokens, ConfirmingView, ConnectExchangeButton, type ContainerTokens, CurrencyListItem, CurrencyListSection, CurrencyModal, type CustomThemeColors, type DepositConfirmationMode, DepositDetailContent, DepositExecutionItem, DepositHeader, DepositModal, type DepositModalInitialScreen, DepositSuccessToast, DepositTrackerButton, DepositWithCardButton, DepositsModal, type DetectedWallet, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, type EvmWalletProvider, type FontConfig, HYPERCORE_CHAIN_ID, type HeaderTokens, type InputTokens, type ListTokens, ManualDepositButton, PayWithStripeLink, type PayWithStripeLinkProps, QRCodeSkeleton, type ResolvedFonts, type SearchTokens, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, type SolanaWalletProvider, type StoredApplePaySession, StripeLinkButton, type StripeLinkStep, StyledQRCode, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, type ThemeProviderProps, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransferCryptoButton, TransferCryptoDoubleInput, TransferCryptoSingleInput, type UseDepositQuoteParams, type UsePaymentIntentParams, type UseSupportedDepositTokensOptions, WithdrawConfirmingView, WithdrawDoubleInput, WithdrawExecutionItem, WithdrawForm, WithdrawModal, type WithdrawModalProps, WithdrawTokenSelector, type WithdrawTransactionInfo, buttonVariants, clearStoredApplePaySession, cn, colors, defaultColors, detectBrowserWallet, getColors, getStoredApplePaySession, isHypercoreChain, isOnrampTokenFresh, mergeColors, resolveComponentTokens, sendEvmWithdraw, sendHypercoreWithdraw, sendSolanaWithdraw, setStoredApplePaySession, truncateAddress, useAddressBalance, useAllowedCountry, useDebounce, useDepositPolling, useDepositQuote, usePaymentIntent, useSourceTokenValidation, useSupportedDepositTokens, useSupportedDestinationTokens, useTheme, useVerifyRecipientAddress, useWithdrawPolling };
1658
+ export { type AllowedCountryResult, BankTransfer, BankTransferButton, type BankTransferProps, type BankTransferView, type BrowserWalletAmountQuickSelect, Button, type ButtonProps, type ButtonTokens, BuyWithApplePay, type BuyWithApplePayProps, BuyWithCard, type BuyWithCardProps, type CardTokens, CheckingForDepositIndicator, CheckoutModal, type CheckoutModalProps, CoinbaseConnect, type ComponentConfig, type ComponentOverrides, type ComponentTokens, ConfirmingView, ConnectExchangeButton, type ContainerTokens, CurrencyListItem, CurrencyListSection, CurrencyModal, type CustomThemeColors, type DepositConfirmationMode, DepositDetailContent, DepositExecutionItem, DepositHeader, DepositModal, type DepositModalInitialScreen, DepositSuccessToast, DepositTrackerButton, DepositWithCardButton, DepositsModal, type DetectedWallet, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, type EvmWalletProvider, type FontConfig, HYPERCORE_CHAIN_ID, type HeaderTokens, type InputTokens, type ListTokens, ManualDepositButton, PayWithStripeLink, type PayWithStripeLinkProps, QRCodeSkeleton, type ResolvedFonts, type SearchTokens, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, type SolanaWalletProvider, type StoredApplePaySession, StripeLinkButton, type StripeLinkStep, StyledQRCode, type ThemeColors, type ThemeConfig, type ThemeMode, ThemeProvider, type ThemeProviderProps, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, TransferCryptoButton, TransferCryptoDoubleInput, TransferCryptoSingleInput, type UseDepositQuoteParams, type UsePaymentIntentParams, type UseSupportedDepositTokensOptions, WithdrawConfirmingView, WithdrawDoubleInput, WithdrawExecutionItem, WithdrawForm, WithdrawModal, type WithdrawModalProps, WithdrawTokenSelector, type WithdrawTransactionInfo, buttonVariants, clearStoredApplePaySession, cn, colors, defaultColors, detectBrowserWallet, getColors, getStoredApplePaySession, isHypercoreChain, isOnrampTokenFresh, mergeColors, resolveComponentTokens, sendEvmWithdraw, sendHypercoreWithdraw, sendSolanaWithdraw, setStoredApplePaySession, truncateAddress, useAddressBalance, useAllowedCountry, useDebounce, useDepositPolling, useDepositQuote, usePaymentIntent, usePublicIncident, useSourceTokenValidation, useSupportedDepositTokens, useSupportedDestinationTokens, useTheme, useVerifyRecipientAddress, useWithdrawPolling };