@kanalabs/kana-widget-v2
Version:
Kana Widget for cross-chain bridging and swap.
60 lines (59 loc) • 1.73 kB
TypeScript
export type TokenListType = {
address: string;
decimals: number;
name: string;
symbol: string;
logoURI: string;
coingeckoId: string;
usd: number;
};
export type TokenBalance = {
token: string;
amount: string;
tokenAccount?: string;
tokenInfo?: {
list?: TokenListType;
lastCached?: any;
};
};
export type BalanceResponse = {
address: string;
chain: string;
balance: TokenBalance[];
};
export interface FungibleAssetBalance {
amount_v1: string | null;
amount_v2: string | null;
asset_type_v1: string | null;
asset_type_v2: string | null;
}
export declare enum NetworkNames {
"Solana" = "Solana",
"Aptos" = "Aptos",
"Sui" = "Sui",
"Polygon" = "Polygon",
"base" = "Base",
"Bsc" = "Bsc",
"Ethereum" = "Ethereum",
"Base" = "Base",
"Klaytn" = "Klaytn",
"ZkSync" = "ZkSync",
"Avalanche" = "Avalanche",
"Arbitrum" = "Arbitrum",
"Optimistic" = "Optimistic"
}
export interface SuiBalance {
coinType: string;
coinObjectCount: number;
totalBalance: string;
lockedBalance: Record<string, unknown>;
}
export interface SuiTokenBalance {
token: string;
amount: string;
}
export declare const getBalance: (address: string, chainId: number, INDEXER_API_KEY?: string) => Promise<BalanceResponse>;
export declare const APTOS_INDEXER = "https://api.mainnet.aptoslabs.com/v1/graphql";
export declare const getBalanceFromSuiNode: (address: string) => Promise<SuiBalance[]>;
export declare const processAssetBalances: (address: string, indexerApiKey?: string) => Promise<TokenBalance[]>;
export declare const processSuiAssetBalances: (address: string) => Promise<SuiTokenBalance[]>;