import { NetworkType } from "../types/chain.js"; import { MAINNET_FOLKS_TOKEN_ID, TESTNET_FOLKS_TOKEN_ID } from "../types/token.js"; import type { FolksTokenId, MainnetFolksTokenId, TestnetFolksTokenId } from "../types/token.js"; export const MAINNET_POOLS = { [MAINNET_FOLKS_TOKEN_ID.USDC]: 1, [MAINNET_FOLKS_TOKEN_ID.AVAX]: 2, [MAINNET_FOLKS_TOKEN_ID.sAVAX]: 3, [MAINNET_FOLKS_TOKEN_ID.ETH_eth]: 4, [MAINNET_FOLKS_TOKEN_ID.ETH_base]: 5, [MAINNET_FOLKS_TOKEN_ID.wETH_ava]: 6, [MAINNET_FOLKS_TOKEN_ID.wBTC_eth]: 7, [MAINNET_FOLKS_TOKEN_ID.BTCb_ava]: 8, [MAINNET_FOLKS_TOKEN_ID.cbBTC_base]: 9, [MAINNET_FOLKS_TOKEN_ID.BNB]: 10, [MAINNET_FOLKS_TOKEN_ID.ETHB_bsc]: 11, [MAINNET_FOLKS_TOKEN_ID.BTCB_bsc]: 12, [MAINNET_FOLKS_TOKEN_ID.ETH_arb]: 13, [MAINNET_FOLKS_TOKEN_ID.ARB]: 14, [MAINNET_FOLKS_TOKEN_ID.SolvBTC]: 15, [MAINNET_FOLKS_TOKEN_ID.JOE]: 16, [MAINNET_FOLKS_TOKEN_ID.ggAVAX]: 17, [MAINNET_FOLKS_TOKEN_ID.SHIB]: 18, [MAINNET_FOLKS_TOKEN_ID.POL]: 19, [MAINNET_FOLKS_TOKEN_ID.wBTC_pol]: 20, [MAINNET_FOLKS_TOKEN_ID.wETH_pol]: 21, [MAINNET_FOLKS_TOKEN_ID.aUSD_ava]: 22, [MAINNET_FOLKS_TOKEN_ID.savUSD]: 23, [MAINNET_FOLKS_TOKEN_ID.wBTC_arb]: 24, [MAINNET_FOLKS_TOKEN_ID.tBTC_arb]: 25, [MAINNET_FOLKS_TOKEN_ID.wstETH_arb]: 26, [MAINNET_FOLKS_TOKEN_ID.weETH_arb]: 27, [MAINNET_FOLKS_TOKEN_ID.rsETH_arb]: 28, [MAINNET_FOLKS_TOKEN_ID.wstETH_pol]: 29, [MAINNET_FOLKS_TOKEN_ID.LINK_pol]: 30, [MAINNET_FOLKS_TOKEN_ID.MaticX]: 31, [MAINNET_FOLKS_TOKEN_ID.ATH_eth]: 32, [MAINNET_FOLKS_TOKEN_ID.pyUSD_eth]: 33, [MAINNET_FOLKS_TOKEN_ID.rlUSD_eth]: 34, [MAINNET_FOLKS_TOKEN_ID.wstETH_eth]: 35, [MAINNET_FOLKS_TOKEN_ID.weETH_eth]: 36, [MAINNET_FOLKS_TOKEN_ID.AERO_base]: 37, [MAINNET_FOLKS_TOKEN_ID.cbETH_base]: 38, [MAINNET_FOLKS_TOKEN_ID.wstETH_base]: 39, [MAINNET_FOLKS_TOKEN_ID.weETH_base]: 40, [MAINNET_FOLKS_TOKEN_ID.VIRTUAL_base]: 41, [MAINNET_FOLKS_TOKEN_ID.KAITO_base]: 42, [MAINNET_FOLKS_TOKEN_ID.aUSD_pol]: 43, [MAINNET_FOLKS_TOKEN_ID.USDT_ava]: 44, [MAINNET_FOLKS_TOKEN_ID.USDT_eth]: 45, [MAINNET_FOLKS_TOKEN_ID.USDT_pol]: 46, [MAINNET_FOLKS_TOKEN_ID.USDT0_arb]: 47, [MAINNET_FOLKS_TOKEN_ID.SEI]: 48, [MAINNET_FOLKS_TOKEN_ID.iSEI]: 49, [MAINNET_FOLKS_TOKEN_ID.USDT0_sei]: 50, [MAINNET_FOLKS_TOKEN_ID.wETH_sei]: 51, [MAINNET_FOLKS_TOKEN_ID.wBTC_sei]: 52, [MAINNET_FOLKS_TOKEN_ID.YBTCB]: 53, [MAINNET_FOLKS_TOKEN_ID.SYRUP_eth]: 54, [MAINNET_FOLKS_TOKEN_ID.USDe_ava]: 55, [MAINNET_FOLKS_TOKEN_ID.sUSDe_ava]: 56, [MAINNET_FOLKS_TOKEN_ID.EURC_ava]: 57, [MAINNET_FOLKS_TOKEN_ID.tETH]: 58, [MAINNET_FOLKS_TOKEN_ID.tAVAX]: 59, [MAINNET_FOLKS_TOKEN_ID.wstLINK]: 60, [MAINNET_FOLKS_TOKEN_ID.MON]: 61, [MAINNET_FOLKS_TOKEN_ID.wBTC_mon]: 62, [MAINNET_FOLKS_TOKEN_ID.wETH_mon]: 63, [MAINNET_FOLKS_TOKEN_ID.sMON]: 64, [MAINNET_FOLKS_TOKEN_ID.aUSD_mon]: 66, [MAINNET_FOLKS_TOKEN_ID.USDT0_mon]: 67, [MAINNET_FOLKS_TOKEN_ID.gMON]: 68, [MAINNET_FOLKS_TOKEN_ID.shMON]: 69, } as const satisfies Record; export const TESTNET_POOLS = { [TESTNET_FOLKS_TOKEN_ID.USDC]: 128, [TESTNET_FOLKS_TOKEN_ID.AVAX]: 129, [TESTNET_FOLKS_TOKEN_ID.ETH_eth_sep]: 130, [TESTNET_FOLKS_TOKEN_ID.ETH_base_sep]: 131, [TESTNET_FOLKS_TOKEN_ID.ETH_arb_sep]: 132, [TESTNET_FOLKS_TOKEN_ID.LINK_eth_sep]: 133, [TESTNET_FOLKS_TOKEN_ID.BNB]: 134, [TESTNET_FOLKS_TOKEN_ID.CCIP_BnM]: 135, [TESTNET_FOLKS_TOKEN_ID.MON]: 136, [TESTNET_FOLKS_TOKEN_ID.sMON]: 138, [TESTNET_FOLKS_TOKEN_ID.aprMON]: 139, [TESTNET_FOLKS_TOKEN_ID.gMON]: 140, [TESTNET_FOLKS_TOKEN_ID.shMON]: 141, [TESTNET_FOLKS_TOKEN_ID.SEI]: 142, [TESTNET_FOLKS_TOKEN_ID.rUSDC]: 143, } as const satisfies Record; const MAINNET_FOLKS_TOKEN_IDS_FROM_POOL = Object.fromEntries( Object.entries(MAINNET_POOLS).map(([token, poolId]) => [poolId, token]), ) as Partial>; const TESTNET_FOLKS_TOKEN_IDS_FROM_POOL = Object.fromEntries( Object.entries(TESTNET_POOLS).map(([token, poolId]) => [poolId, token]), ) as Partial>; export const FOLKS_TOKEN_IDS_FROM_POOL_BY_NETWORK = { [NetworkType.MAINNET]: MAINNET_FOLKS_TOKEN_IDS_FROM_POOL, [NetworkType.TESTNET]: TESTNET_FOLKS_TOKEN_IDS_FROM_POOL, } as Record>>;