import type { GenericAddress } from "./address.js"; import type { AdapterType } from "./message.js"; export declare const MAINNET_FOLKS_TOKEN_ID: { readonly USDC: "USDC"; readonly AVAX: "AVAX"; readonly sAVAX: "sAVAX"; readonly ETH_eth: "ETH_eth"; readonly ETH_base: "ETH_base"; readonly wETH_ava: "wETH_ava"; readonly wBTC_eth: "wBTC_eth"; readonly BTCb_ava: "BTCb_ava"; readonly cbBTC_base: "cbBTC_base"; readonly BNB: "BNB"; readonly ETHB_bsc: "ETHB_bsc"; readonly BTCB_bsc: "BTCB_bsc"; readonly ETH_arb: "ETH_arb"; readonly ARB: "ARB"; readonly SolvBTC: "SolvBTC"; readonly JOE: "JOE"; readonly ggAVAX: "ggAVAX"; readonly SHIB: "SHIB"; readonly POL: "POL"; readonly wBTC_pol: "wBTC_pol"; readonly wETH_pol: "wETH_pol"; readonly aUSD_ava: "aUSD_ava"; readonly savUSD: "savUSD"; readonly wBTC_arb: "wBTC_arb"; readonly tBTC_arb: "tBTC_arb"; readonly wstETH_arb: "wstETH_arb"; readonly weETH_arb: "weETH_arb"; readonly rsETH_arb: "rsETH_arb"; readonly wstETH_pol: "wstETH_pol"; readonly LINK_pol: "LINK_pol"; readonly MaticX: "MaticX"; readonly ATH_eth: "ATH_eth"; readonly pyUSD_eth: "pyUSD_eth"; readonly rlUSD_eth: "rlUSD_eth"; readonly wstETH_eth: "wstETH_eth"; readonly weETH_eth: "weETH_eth"; readonly AERO_base: "AERO_base"; readonly cbETH_base: "cbETH_base"; readonly wstETH_base: "wstETH_base"; readonly weETH_base: "weETH_base"; readonly VIRTUAL_base: "VIRTUAL_base"; readonly KAITO_base: "KAITO_base"; readonly aUSD_pol: "aUSD_pol"; readonly USDT_ava: "USDT_ava"; readonly USDT_eth: "USDT_eth"; readonly USDT_pol: "USDT_pol"; readonly USDT0_arb: "USDT0_arb"; readonly SEI: "SEI"; readonly iSEI: "iSEI"; readonly USDT0_sei: "USDT0_sei"; readonly wETH_sei: "wETH_sei"; readonly wBTC_sei: "wBTC_sei"; readonly YBTCB: "YBTCB"; readonly SYRUP_eth: "SYRUP_eth"; readonly USDe_ava: "USDe_ava"; readonly sUSDe_ava: "sUSDe_ava"; readonly EURC_ava: "EURC_ava"; readonly tETH: "tETH"; readonly tAVAX: "tAVAX"; readonly wstLINK: "wstLINK"; readonly MON: "MON"; readonly wBTC_mon: "wBTC_mon"; readonly wETH_mon: "wETH_mon"; readonly sMON: "sMON"; readonly aUSD_mon: "aUSD_mon"; readonly USDT0_mon: "USDT0_mon"; readonly gMON: "gMON"; readonly shMON: "shMON"; }; export type MainnetFolksTokenId = (typeof MAINNET_FOLKS_TOKEN_ID)[keyof typeof MAINNET_FOLKS_TOKEN_ID]; export declare const TESTNET_FOLKS_TOKEN_ID: { readonly USDC: "USDC"; readonly AVAX: "AVAX"; readonly ETH_eth_sep: "ETH_eth_sep"; readonly ETH_base_sep: "ETH_base_sep"; readonly ETH_arb_sep: "ETH_arb_sep"; readonly LINK_eth_sep: "LINK_eth_sep"; readonly BNB: "BNB"; readonly CCIP_BnM: "CCIP_BnM"; readonly MON: "MON"; readonly sMON: "sMON"; readonly aprMON: "aprMON"; readonly gMON: "gMON"; readonly shMON: "shMON"; readonly SEI: "SEI"; readonly rUSDC: "rUSDC"; }; export type TestnetFolksTokenId = (typeof TESTNET_FOLKS_TOKEN_ID)[keyof typeof TESTNET_FOLKS_TOKEN_ID]; export type FolksTokenId = MainnetFolksTokenId | TestnetFolksTokenId; export declare enum TokenType { NATIVE = "NATIVE", ERC20 = "ERC20", CROSS_CHAIN = "CROSS_CHAIN" } export type ITokenData = { folksTokenId: FolksTokenId; }; export type Erc20SpokeTokenType = { type: TokenType.ERC20; address: GenericAddress; decimals: number; }; export type Erc20HubTokenType = { type: TokenType.ERC20; decimals: number; }; export type CrossChainTokenType = { type: TokenType.CROSS_CHAIN; adapters: Array; address: GenericAddress; decimals: number; }; export type NativeTokenType = { type: TokenType.NATIVE; decimals: number; }; export type FolksSpokeTokenType = Erc20SpokeTokenType | CrossChainTokenType | NativeTokenType; export type FolksHubTokenType = Erc20HubTokenType | CrossChainTokenType | NativeTokenType; export type SpokeTokenData = { poolId: number; spokeAddress: GenericAddress; token: FolksSpokeTokenType; } & ITokenData;