UNPKG

@funkit/connect

Version:

Funkit Connect SDK elevates DeFi apps via web2 sign-ins and one-click checkouts.

33 lines (32 loc) 1.51 kB
import type { CheckoutInitTokenTransferResponse } from '@funkit/api-base'; import type { TokenTransferSourceChainsAndAssets } from '../modals/CheckoutModal/TransferToken/TransferToken'; export type TransferTokenDefault = { token: string; chainId: number; }; interface UseTokenChainResult { assets: TokenTransferSourceChainsAndAssets; selectedChainId: number | undefined; handleChainChange: (chainId?: number, autoUpdate?: boolean) => void; selectedToken: string | undefined; selectedChainName: string | undefined; handleTokenChange: (token: string, chainId?: number, autoUpdate?: boolean) => void; isLoadingAssets: boolean; chainIdSortOrder: number[]; popularTokenSymbols: string[]; priorityTokenSymbols: string[]; } export interface UseTokenAndChainDropdownOptions { transferInit?: CheckoutInitTokenTransferResponse; defaultValues?: TransferTokenDefault; /** When true, resolves the withdrawal Statsig config instead of the token-transfer one. Defaults to false. */ isWithdrawal?: boolean; /** When true, starts with no chain/token pre-selected (user must pick both). Defaults to false. */ noDefaultSelection?: boolean; } /** * Semi reusable hook (tied into token transfer configuration) * ensures token&chain dropdown preselection logic is reusable */ export declare const useTokenAndChainDropdown: ({ defaultValues, isWithdrawal, noDefaultSelection, transferInit, }: UseTokenAndChainDropdownOptions) => UseTokenChainResult; export {};