import { Logger } from 'pino'; import { Address } from '@hyperlane-xyz/utils'; import { MultiProvider } from '../providers/MultiProvider.js'; import { ChainName, ChainNameOrId } from '../types.js'; import { WarpCoreConfig } from '../warp/types.js'; import { TokenType } from './config.js'; import { WarpRouteDeployConfig, XERC20TokenExtraBridgesLimits, XERC20Type } from './types.js'; type BridgeConfigBase = { chain: ChainName; type: typeof TokenType.XERC20Lockbox | typeof TokenType.XERC20; xERC20Address: Address; bridgeAddress: Address; decimals: number; owner: Address; }; export type BridgeConfigVS = BridgeConfigBase & { bufferCap: number; rateLimitPerSecond: number; }; export type BridgeConfigWL = BridgeConfigBase & { mint: number; burn: number; }; export type GetExtraLockboxesOptions = { chain: ChainNameOrId; xERC20Address: Address; multiProvider: MultiProvider; explorerUrl: string; apiKey?: string; logger?: Logger; }; export declare function getExtraLockBoxConfigs({ xERC20Address, chain, multiProvider, logger, }: Omit): Promise; /** * Derives bridge configurations for Velodrome XERC20 tokens. * Extracts bufferCap and rateLimitPerSecond limits from warp deploy config. * @param warpDeployConfig - Warp route deployment configuration * @param warpCoreConfig - Warp core configuration with token metadata * @param multiProvider - Multi-chain provider for contract interactions * @returns Array of bridge configurations for Velodrome XERC20 */ export declare function deriveBridgesConfig(warpDeployConfig: WarpRouteDeployConfig, warpCoreConfig: WarpCoreConfig, multiProvider: MultiProvider): Promise; /** * Derives bridge configurations for Standard XERC20 tokens. * Extracts mint and burn limits from warp deploy config. * @param chains - Optional list of chains to filter by * @param warpDeployConfig - Warp route deployment configuration * @param warpCoreConfig - Warp core configuration with token metadata * @param multiProvider - Multi-chain provider for contract interactions * @returns Array of bridge configurations for Standard XERC20 */ export declare function deriveStandardBridgesConfig(chains: ChainName[] | undefined, warpDeployConfig: WarpRouteDeployConfig, warpCoreConfig: WarpCoreConfig, multiProvider: MultiProvider): Promise; export declare function deriveXERC20TokenType(multiProvider: MultiProvider, chain: ChainNameOrId, address: Address): Promise; export {}; //# sourceMappingURL=xerc20.d.ts.map