UNPKG

1.26 kBPlain TextView Raw
1import type * as ethers from "ethers";
2import type { SignerWithAddress } from "../signers";
3
4import { Artifact } from "hardhat/types";
5
6export interface Libraries {
7 [libraryName: string]: string;
8}
9
10export interface FactoryOptions {
11 signer?: ethers.Signer;
12 libraries?: Libraries;
13}
14
15export declare function getContractFactory(
16 name: string,
17 signerOrOptions?: ethers.Signer | FactoryOptions
18): Promise<ethers.ContractFactory>;
19export declare function getContractFactory(
20 abi: any[],
21 bytecode: ethers.utils.BytesLike,
22 signer?: ethers.Signer
23): Promise<ethers.ContractFactory>;
24
25export interface HardhatEthersHelpers {
26 provider: ethers.providers.JsonRpcProvider;
27
28 getContractFactory: typeof getContractFactory;
29 getContractFactoryFromArtifact: (
30 artifact: Artifact,
31 signerOrOptions?: ethers.Signer | FactoryOptions
32 ) => Promise<ethers.ContractFactory>;
33 getContractAt: (
34 nameOrAbi: string | any[],
35 address: string,
36 signer?: ethers.Signer
37 ) => Promise<ethers.Contract>;
38 getContractAtFromArtifact: (
39 artifact: Artifact,
40 address: string,
41 signer?: ethers.Signer
42 ) => Promise<ethers.Contract>;
43 getSigner: (address: string) => Promise<SignerWithAddress>;
44 getSigners: () => Promise<SignerWithAddress[]>;
45}