///
///
///
import http = require("http");
import request = require("request");
import { Configuration } from "./configuration";
import { Encryptor } from "../api";
/**
* Get boundary for IncomingHttpHeaders
*/
export declare function getBoundary(headers: http.IncomingHttpHeaders): string;
/**
* Get boundary for headers dictionary
*/
export declare function getPartBoundary(headers: {
[key: string]: string;
}): string;
/**
* Invoke api method
* @param requestOptions request parameters
* @param confguration api configuration
* @param notApplyAuthToRequest if setted to true, auth is not applied to request
*/
export declare function invokeApiMethod(requestOptions: request.OptionsWithUri, confguration: Configuration, notApplyAuthToRequest?: boolean): Promise;
/**
* Add parameter to query
* @param url url
* @param queryParameters queryParameters
* @param parameterName parameterName
* @param parameterValue parameterValue
* @param data encryptor
*/
export declare function addQueryParameterToUrl(url: any, queryParameters: any, parameterName: any, parameterValue: any, encryptor: Encryptor): Promise;
/**
* Parse multipart response body for given boundary
*/
export declare function parseMultipart(body: Buffer, boundary: string): any;
/**
* Parse multipart response body for batch part
*/
export declare function parseBatchParts(multipartBodyBuffer: Buffer, boundary: string, withStatus: boolean): any;
/**
* Get multipart part by name
*/
export declare function findMultipartElement(parts: any[], name: string): any;
/**
* Get files collection from Response
*/
export declare function parseFilesCollection(response: Buffer, headers: http.IncomingHttpHeaders): Map;
/**
* Call job result endpoint.
* @param configuration api configuration
* @param jobId job id
*/
export declare function callJobResult(configuration: Configuration, jobId: string): Promise;
/**
* Deserialize embedded HTTP response part.
* @param request request model
* @param part multipart part with embedded HTTP response
*/
export declare function deserializeHttpResponsePart(request: {
createResponse(_response: Buffer, _headers: http.IncomingHttpHeaders): any;
}, part: any): T;
/**
* Parse embedded HTTP response part.
* @param responseBody embedded HTTP response bytes
*/
export declare function parseHttpResponsePart(responseBody: Buffer): any;