export declare interface AnvilOptions {
    url: string;
    accountKeysPath?: string;
    accounts?: object[] | object;
    hostname?: string;
    allowUnlimitedContractSize?: boolean;
    blockTime?: number;
    launch?: boolean;
    defaultBalanceEther?: number;
    forkUrl?: string | object;
    forkBlockNumber?: string | number;
    gasLimit?: number;
    gasPrice?: string | number;
    hdPath?: string;
    mnemonic?: string;
    path?: string;
    locked?: boolean;
    noStorageCaching?: boolean;
    hardfork?: string;
    logger?: {
        log(msg: string): void;
    };
    chainId?: number;
    port?: number;
    totalAccounts?: number;
    silent?: boolean;
    vmErrorsOnRPCResponse?: boolean;
    ws?: boolean;
}
export declare class AnvilService {
    static error?: Error;
    static getDefaultAccountConfig(): AnvilOptions;
    static getDefaultOptions(): AnvilOptions;
    /**
     *
     * @param options
     * @returns type checked options for `anvil`
     */
    static getCheckedArgs(options: any): Promise<AnvilOptions>;
    static create(options: any, inherit?: boolean): Promise<AnvilService>;
    private readonly _server;
    private readonly _options;
    private constructor();
    stopServer(): void;
    waitUntilClosed(): Promise<void>;
}
//# sourceMappingURL=anvil-service.d.ts.map