import type { ethers } from 'ethers'; import { Artifact, HardhatRuntimeEnvironment } from 'hardhat/types'; import { SignerWithAddress } from './signer-with-address'; export interface Libraries { [libraryName: string]: string; } export interface FactoryOptions { signer?: ethers.Signer; libraries?: Libraries; } export declare const getSigners: (hre: HardhatRuntimeEnvironment) => Promise; export declare const getContractAt: (hre: HardhatRuntimeEnvironment, nameOrAbi: string | any[], address: string, signer?: ethers.Signer) => Promise; export declare const getContractFactory: (hre: HardhatRuntimeEnvironment, nameOrAbi: string | any[], bytecodeOrFactoryOptions?: (ethers.Signer | FactoryOptions) | ethers.utils.BytesLike, signer?: ethers.Signer) => Promise; export declare const collectLibrariesAndLink: (artifact: Artifact, libraries: Libraries) => Promise;