@hyperlane-xyz/cli
Version:
A command-line utility for common Hyperlane operations
19 lines • 803 B
TypeScript
import { Signer } from 'ethers';
import { ChainName, ChainSubmissionStrategy } from '@hyperlane-xyz/sdk';
import { Address } from '@hyperlane-xyz/utils';
export interface SignerConfig {
privateKey: string;
address?: Address;
extraParams?: Record<string, any>;
}
export interface IMultiProtocolSigner {
getSignerConfig(chain: ChainName): Promise<SignerConfig> | SignerConfig;
getSigner(config: SignerConfig): Signer;
}
export declare abstract class BaseMultiProtocolSigner implements IMultiProtocolSigner {
protected config: ChainSubmissionStrategy;
constructor(config: ChainSubmissionStrategy);
abstract getSignerConfig(chain: ChainName): Promise<SignerConfig>;
abstract getSigner(config: SignerConfig): Signer;
}
//# sourceMappingURL=BaseMultiProtocolSigner.d.ts.map