/** * MetricAMM SDK Contract Addresses * * Multi-chain contract address configuration. * Each chain has its own set of deployed contract addresses. */ import type { Address } from "viem"; export declare const ChainId: { readonly ETHEREUM: 1; readonly BASE: 8453; readonly ARBITRUM: 42161; readonly AVALANCHE: 43114; readonly BNB: 56; readonly POLYGON: 137; readonly MEGAETH: 4326; readonly HYPEREVM: 999; readonly MONAD: 143; readonly ROBINHOOD: 4663; }; export type ChainId = (typeof ChainId)[keyof typeof ChainId]; export interface ChainAddresses { /** MetricOmmPoolFactory address */ factory: Address; /** MetricOmmPoolDeployer address */ poolDeployer: Address; /** MetricOmmSwapRouter address */ router: Address; /** MetricOmmPoolStateView address */ stateView: Address; /** Wrapped native token (WETH, WBASE, etc.) */ wrappedNative: Address; } export declare const ADDRESSES: Record; /** * Get contract addresses for a specific chain * @param chainId - The chain ID * @returns Chain addresses or undefined if not supported */ export declare function getAddresses(chainId: number): ChainAddresses | undefined; /** * Get contract addresses for a specific chain, throws if not supported * @param chainId - The chain ID * @returns Chain addresses * @throws Error if chain is not supported */ export declare function getAddressesOrThrow(chainId: number): ChainAddresses; /** * Check if a chain is supported * @param chainId - The chain ID * @returns True if chain is supported */ export declare function isChainSupported(chainId: number): chainId is ChainId; /** * Get all supported chain IDs * @returns Array of supported chain IDs */ export declare function getSupportedChainIds(): ChainId[]; /** * Check if a chain has been deployed (non-zero addresses) * @param chainId - The chain ID * @returns True if contracts are deployed on this chain */ export declare function isChainDeployed(chainId: number): boolean; //# sourceMappingURL=addresses.d.ts.map