@funkit/connect
Version:
Funkit Connect SDK elevates DeFi apps via web2 sign-ins and one-click checkouts.
43 lines (42 loc) • 2.17 kB
TypeScript
import React, { type ReactNode } from 'react';
import type { TokenTransferSourceChainsAndAssets } from '../../modals/CheckoutModal/TransferToken/TransferToken';
import type { BaseDropdownProps } from './BaseDropdown';
interface TokenAndChainDropdownProps {
isLoading: boolean;
selectedToken: string | undefined;
selectedChainId: number | undefined;
assets: TokenTransferSourceChainsAndAssets;
/**
* Callback fired after token selection
*/
onTokenSelected: (token: string, chainId?: number, autoUpdate?: boolean) => void;
/**
* Callback fired after chain selection
*/
onChainSelected: (chainId?: number, autoUpdate?: boolean) => void;
tokenLabel?: string;
chainLabel?: string;
/** Placeholder shown in the token dropdown when no token is selected */
tokenPlaceholder?: string;
/** Placeholder shown in the chain dropdown when no chain is selected */
chainPlaceholder?: string;
chainLabelAddon?: ReactNode;
alwaysOpenToTop?: boolean;
maxTokenDropdownHeight?: BaseDropdownProps['maxDropdownHeight'];
maxChainDropdownHeight?: BaseDropdownProps['maxDropdownHeight'];
openChainDropdownFullWidth?: BaseDropdownProps['openDropdownFullWidth'];
chainTagComponent?: (value: string) => ReactNode;
/**
* Override to hide the new token badge
*/
hideNewTokenBadge?: boolean;
/** Token symbols to show in a separate "Popular" group */
popularTokenSymbols?: string[];
/** Token symbols to prioritize at top of dropdown */
priorityTokenSymbols?: string[];
/** Determines the chain display order */
chainIdSortOrder?: number[];
}
/** Combines together chain and token dropdowns */
export declare const TokenAndChainDropdown: ({ isLoading, selectedToken, selectedChainId, assets, onTokenSelected, onChainSelected, tokenLabel, chainLabel, tokenPlaceholder, chainPlaceholder, chainLabelAddon, alwaysOpenToTop, maxTokenDropdownHeight, maxChainDropdownHeight, openChainDropdownFullWidth, chainTagComponent, hideNewTokenBadge, popularTokenSymbols, priorityTokenSymbols, chainIdSortOrder, }: TokenAndChainDropdownProps) => React.JSX.Element;
export {};