import { Instantiable, InstantiableConfig } from '../Instantiable.abstract'; import { Account } from '../nevermined'; import { ethers } from 'ethers'; export declare class ContractHandler extends Instantiable { protected static getContract(what: string, networkId: number, address?: string): ethers.Contract; protected static setContract(what: string, networkId: number, contractInstance: ethers.Contract, address?: string): void; protected static hasContract(what: string, networkId: number, address?: string): boolean; private static contracts; private static getHash; constructor(config: InstantiableConfig); get(what: string, optional: boolean, artifactsFolder: string, address?: string): Promise; static getABI(contractName: string, artifactsFolder?: string, networkName?: string): Promise; getVersion(contractName: string, artifactsFolder: string): Promise; deployAbi(artifact: any, from: Account, args?: string[]): Promise; private load; checkExists(address: string): Promise; static getSignatureOfMethod(contractInstance: ethers.Contract, methodName: string, args: any[]): string; static fetchJson(path: any): Promise; }