///
import { ChildProcess, spawn } from 'child_process';
import http from 'http';
import rp from 'request-promise-native';
import { Url } from 'url';
import { ClientConfig } from './proto';
export declare class Client {
spawn: typeof spawn;
protected config: ClientConfig;
protected process: ChildProcess;
protected agent: http.Agent;
constructor(config?: ClientConfig);
launch: (binPath: string) => ChildProcess;
makeRequest: (endpoint: string | Url, querystring?: object, method?: string, timeout?: number) => Promise;
call: (options: string | rp.OptionsWithUrl) => Promise;
gateway: () => Promise;
daemonVersion: () => Promise;
daemonStop: () => Promise;
/**
* checks if siad responds to a /version call.
*/
isRunning: () => Promise;
getConnectionUrl: () => string;
private mergeDefaultRequestOptions;
}