UNPKG

@hyperlane-xyz/sdk

Version:

The official SDK for the Hyperlane Network

25 lines 1.22 kB
import { Address, WithAddress } from '@hyperlane-xyz/utils'; import { MultiProvider } from '../providers/MultiProvider.js'; import { ChainName, ChainNameOrId } from '../types.js'; import { HyperlaneReader } from '../utils/HyperlaneReader.js'; import { FeeParameters, RoutingFeeConfig, TokenFeeConfig } from './types.js'; export type DerivedTokenFeeConfig = WithAddress<TokenFeeConfig>; export type DerivedRoutingFeeConfig = WithAddress<RoutingFeeConfig> & { feeContracts: Record<ChainName, DerivedTokenFeeConfig>; }; export type TokenFeeReaderParams = { address: Address; routingDestinations?: number[]; }; export declare class EvmTokenFeeReader extends HyperlaneReader { protected readonly multiProvider: MultiProvider; protected readonly chain: ChainNameOrId; constructor(multiProvider: MultiProvider, chain: ChainNameOrId); deriveTokenFeeConfig(params: TokenFeeReaderParams): Promise<DerivedTokenFeeConfig>; private deriveLinearFeeConfig; private deriveProgressiveFeeConfig; private deriveRegressiveFeeConfig; private deriveRoutingFeeConfig; convertFromBps(bps: bigint, tokenAddress: Address): Promise<FeeParameters>; } //# sourceMappingURL=EvmTokenFeeReader.d.ts.map