UNPKG

@solarity/hardhat-migrate

Version:
22 lines 936 B
import { ContractFactory, InterfaceAbi } from "ethers"; import { Bytecode } from "./deployer.js"; export interface TypechainFactoryClass<A, I> { new (...args: any): A; abi: any; bytecode: any; createInterface(): any; connect(address: string, runner?: any): I; } export interface BytecodeFactory { abi: InterfaceAbi; bytecode: Bytecode; contractName: string; } type Parameters<T extends (...args: any) => any> = T extends (...args: infer P) => any ? P extends [...infer Rest, any?] ? Rest : any : never[]; export type TypedArgs<A> = A extends { deploy(...args: any): any; } ? Parameters<A["deploy"]> : any; export type BaseInstance<A, I> = Omit<TypechainFactoryClass<A, I>, "bytecode"> | Omit<BytecodeFactory, "bytecode"> | Omit<ContractFactory, "bytecode">; export type Instance<A, I> = TypechainFactoryClass<A, I> | BytecodeFactory | ContractFactory; export {}; //# sourceMappingURL=adapter.d.ts.map