import { Response } from 'node-fetch';
interface ServiceAgentParams {
    serviceUrl: string;
    token: string;
    ghostId: string;
    restartStream?: boolean;
}
interface SendDataParams {
    ghostId: string;
    dataString: string;
}
interface SendCommandParams {
    targetUrl: string;
    commandString: string;
}
export declare class ServiceAgent {
    private serviceUrl;
    private token;
    private ghostId;
    private restartStream;
    constructor({ serviceUrl, token, ghostId, restartStream }: ServiceAgentParams);
    private get domain();
    private get service();
    private get baseHeaders();
    getQueryStringFromObject(obj: {
        [s: string]: unknown;
    }): string;
    listen(cb: Function): Promise<Response | void>;
    sendData({ ghostId, dataString }: SendDataParams): Promise<void>;
    sendCommand({ targetUrl, commandString }: SendCommandParams): Promise<void>;
}
export {};
