import * as common from '@protocolink/common'; type ContractNames = 'Router' | 'RouterETH' | 'FeeLibrary' | 'LayerZeroEndpoint'; export declare enum ChainId { ETHEREUM = 101, AVALANCHE = 106, POLYGON = 109, ARBITRUM = 110, OPTIMISM = 111, METIS = 151, BASE = 184 } export declare enum PoolId { USDC = 1, USDT = 2, DAI = 3, FRAX = 7, USDD = 11, ETH = 13, sUSD = 14, LUSD = 15, METIS = 17, metisUSDT = 19 } export interface Pool { id: number; token: common.Token; decimals: number; paths: { chainId: number; poolIds: number[]; }[]; } export interface PoolConfig extends Pool { chainId: number; } export interface Config { id: number; chainId: number; contract: Record; pools: Pool[]; STG?: common.Token; } export declare const configs: Config[]; export declare const supportedChainIds: number[], configMap: Record, configMapById: Record, STGTokenMap: Record, tokensMap: Record>, poolConfigMapById: Record>, poolConfigsMapByToken: Record>; export declare function getMarkets(chainId: number): Pool[]; export declare function getStargateChainId(chainId: number): number; export declare function getChainId(stargateChainId: number): number; export declare function getContractAddress(chainId: number, name: ContractNames): string; export declare function getTokens(chainId: number): common.Token[]; export declare function getSTGToken(chainId: number): common.Token; export declare function isSTGToken(chainId: number, token: common.Token): boolean; export declare function getTokenByPoolId(chainId: number, poolId: number): common.Token; export declare function getPoolDecimals(chainId: number, poolId: number): number; export declare function getDestChainIds(srcChainId: number, srcToken: common.Token): number[]; export declare function getDestTokens(srcChainId: number, srcToken: common.Token, destChainId: number): common.Token[]; export declare function getPoolIds(srcChainId: number, srcToken: common.Token, destChainId: number, destToken: common.Token): number[]; export {};