@funkit/connect
Version:
Funkit Connect SDK elevates DeFi apps via web2 sign-ins and one-click checkouts.
34 lines (33 loc) • 1.25 kB
TypeScript
import type { FunkitActiveCheckoutItem } from '~/providers/FunkitCheckoutContext';
export interface AssetHoldingsItem {
iconSrc: string | undefined;
symbol: string;
amount: number;
tokenAddress: `0x${string}`;
usdAmount: null | number;
pickedChainId: string;
chainSymbolKey: string;
}
export interface KnownAssetHoldingsItem extends AssetHoldingsItem {
usdAmount: number;
}
export interface BrokerageAssetHoldingsItem extends AssetHoldingsItem {
maxAmount: string;
minAmount: string;
}
export interface AssetHoldingsMap<T extends AssetHoldingsItem = AssetHoldingsItem> {
[symbol: string]: T;
}
/**
* @returns formatted max usable USD balance from a given assets map
*/
export declare function getTotalAssetBalance(assets: AssetHoldingsMap): number;
export declare const isPolygonEcosystemToken: (chainId: string, tokenAddress: string) => boolean;
export declare const L2_COST_MARGIN_MULTIPLIER = 1.2;
export declare const ASSETS_LOW_VALUE_THRESHOLD = 0.1;
type RecommendedAsset = {
chainSymbolKey: string;
label: string | null;
};
export declare const getRecommendedAsset: (checkoutItem: FunkitActiveCheckoutItem, accountHoldings: KnownAssetHoldingsItem[]) => RecommendedAsset | null;
export {};