@hyperlane-xyz/sdk
Version:
The official SDK for the Hyperlane Network
40 lines • 2.17 kB
TypeScript
import { Address, ProtocolType } from '@hyperlane-xyz/utils';
import { HyperlaneModule, HyperlaneModuleParams } from '../core/AbstractHyperlaneModule.js';
import { ContractVerifier } from '../deploy/verify/ContractVerifier.js';
import { MultiProvider } from '../providers/MultiProvider.js';
import { AnnotatedEV5Transaction } from '../providers/ProviderType.js';
import { ChainNameOrId } from '../types.js';
import { EvmTokenFeeDeployer } from './EvmTokenFeeDeployer.js';
import { DerivedTokenFeeConfig, EvmTokenFeeReader, TokenFeeReaderParams } from './EvmTokenFeeReader.js';
import { TokenFeeConfig, TokenFeeConfigInput } from './types.js';
type TokenFeeModuleAddresses = {
deployedFee: Address;
};
export declare class EvmTokenFeeModule extends HyperlaneModule<ProtocolType.Ethereum, TokenFeeConfigInput, TokenFeeModuleAddresses> {
protected readonly multiProvider: MultiProvider;
protected readonly contractVerifier?: ContractVerifier | undefined;
protected readonly logger: import("pino").default.Logger<never>;
protected readonly deployer: EvmTokenFeeDeployer;
protected readonly reader: EvmTokenFeeReader;
protected readonly chainName: string;
protected readonly chainId: number;
constructor(multiProvider: MultiProvider, params: HyperlaneModuleParams<TokenFeeConfigInput, TokenFeeModuleAddresses>, contractVerifier?: ContractVerifier | undefined);
static create({ multiProvider, chain, config, contractVerifier, }: {
multiProvider: MultiProvider;
chain: ChainNameOrId;
config: TokenFeeConfig;
contractVerifier?: ContractVerifier;
}): Promise<EvmTokenFeeModule>;
static expandConfig(params: {
config: TokenFeeConfigInput;
multiProvider: MultiProvider;
chainName: string;
}): Promise<TokenFeeConfig>;
private deploy;
read(params?: Partial<TokenFeeReaderParams>): Promise<DerivedTokenFeeConfig>;
update(targetConfig: TokenFeeConfigInput, params?: Partial<TokenFeeReaderParams>): Promise<AnnotatedEV5Transaction[]>;
private updateRoutingFee;
private createOwnershipUpdateTxs;
}
export {};
//# sourceMappingURL=EvmTokenFeeModule.d.ts.map