UNPKG

@hyperlane-xyz/sdk

Version:

The official SDK for the Hyperlane Network

31 lines 1.18 kB
import { ethers } from 'ethers'; import { HyperlaneRouterDeployer } from '../../router/HyperlaneRouterDeployer.js'; import { interchainAccountFactories, } from './contracts.js'; export class InterchainAccountDeployer extends HyperlaneRouterDeployer { constructor(multiProvider, contractVerifier, concurrentDeploy) { super(multiProvider, interchainAccountFactories, { contractVerifier, concurrentDeploy, }); } router(contracts) { return contracts.interchainAccountRouter; } async deployContracts(chain, config) { if (config.interchainSecurityModule) { throw new Error('Configuration of ISM not supported in ICA deployer'); } const owner = await this.multiProvider.getSignerAddress(chain); const interchainAccountRouter = await this.deployContract(chain, 'interchainAccountRouter', [ config.mailbox, ethers.constants.AddressZero, owner, 50000, config.commitmentIsm.urls, ]); return { interchainAccountRouter, }; } } //# sourceMappingURL=InterchainAccountDeployer.js.map