import { Address } from '@hyperlane-xyz/utils'; import { MultiProtocolProvider } from '../providers/MultiProtocolProvider.js'; import { MultiProvider } from '../providers/MultiProvider.js'; import { ChainNameOrId } from '../types.js'; import { HyperlaneReader } from '../utils/HyperlaneReader.js'; import { RateLimitMidPoint, xERC20Limits } from './adapters/ITokenAdapter.js'; import { XERC20Type } from './types.js'; export interface StandardXERC20Limits { type: typeof XERC20Type.Standard; mint: string; burn: string; } export interface VeloXERC20Limits { type: typeof XERC20Type.Velo; bufferCap: string; rateLimitPerSecond: string; } /** * Unified XERC20 limits type */ export type XERC20Limits = StandardXERC20Limits | VeloXERC20Limits; /** * Map of bridge addresses to their limits */ export type XERC20LimitsMap = Record
; /** * Reader for on-chain XERC20 state. * Reads limits and bridge configurations from XERC20 contracts. */ export declare class EvmXERC20Reader extends HyperlaneReader { protected readonly multiProvider: MultiProvider; protected logger: import("pino").default.Logger