import { Contract, ISigner } from './contract';
import { Provider } from './provider';
export declare class ContractFactory {
    readonly abi: any[];
    readonly bytecode: string;
    readonly provider: Provider;
    readonly signer?: ISigner;
    constructor(abi: any[], bytecode: string, provider: Provider, signer?: ISigner);
    deploy(constructorArgs?: any[], options?: Record<string, any>): Promise<Contract>;
    attach(address: string): Contract;
}
