@hyperlane-xyz/sdk
Version:
The official SDK for the Hyperlane Network
21 lines • 1.72 kB
TypeScript
import { TimelockController } from '@hyperlane-xyz/core';
import { ProtocolType } from '@hyperlane-xyz/utils';
import { ChainMap } from '../../../../types.js';
import { MultiProvider } from '../../../MultiProvider.js';
import { AnnotatedEV5Transaction, ProtocolTypedReceipt } from '../../../ProviderType.js';
import { TxSubmitterInterface } from '../TxSubmitterInterface.js';
import { TxSubmitterType } from '../TxSubmitterTypes.js';
import { EvmTimelockControllerSubmitterProps } from './types.js';
type EvmTimelockControllerSubmitterConstructorConfig = Required<Pick<EvmTimelockControllerSubmitterProps, 'chain' | 'predecessor' | 'delay' | 'salt'>>;
export declare class EV5TimelockSubmitter implements TxSubmitterInterface<ProtocolType.Ethereum> {
protected readonly config: EvmTimelockControllerSubmitterConstructorConfig;
protected readonly multiProvider: MultiProvider;
protected readonly proposerSubmitter: TxSubmitterInterface<ProtocolType.Ethereum>;
protected readonly timelockInstance: TimelockController;
readonly txSubmitterType: TxSubmitterType;
protected constructor(config: EvmTimelockControllerSubmitterConstructorConfig, multiProvider: MultiProvider, proposerSubmitter: TxSubmitterInterface<ProtocolType.Ethereum>, timelockInstance: TimelockController);
static fromConfig(config: EvmTimelockControllerSubmitterProps, multiProvider: MultiProvider, coreAddressesByChain: ChainMap<Record<string, string>>): Promise<EV5TimelockSubmitter>;
submit(...txs: AnnotatedEV5Transaction[]): Promise<void | ProtocolTypedReceipt<ProtocolType.Ethereum>['receipt'] | ProtocolTypedReceipt<ProtocolType.Ethereum>['receipt'][]>;
}
export {};
//# sourceMappingURL=EV5TimelockSubmitter.d.ts.map