/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
/// <reference types="node" />
import { ClientRequest, IncomingMessage } from 'http';
import { RequestOptions } from 'https';
import { ZCConnector } from './cliq-connector.js';
import { StringObjectMap } from '../cliq-objects/common.js';
import { ReadStream } from 'fs';
import FORM from 'zcatalyst-sdk-node/lib/utils/form-data.js';
export interface IAPIResponse extends IncomingMessage {
    request: ClientRequest;
    data?: string;
    buffer?: Buffer;
    params?: StringObjectMap;
}
declare type StringMap = Record<string, string>;
export default class ApiUtil {
    connection: ZCConnector;
    constructor(connection: ZCConnector);
    sendRequest(url: string, requestBody?: StringObjectMap, params?: StringMap, file?: ReadStream): Promise<IAPIResponse>;
    private appendQueryData;
}
export declare function apiRequest(options: RequestOptions, data?: StringObjectMap, params?: StringObjectMap, formData?: FORM): Promise<IAPIResponse>;
export {};
