import { AuthService } from '../../icc-x-api/auth/AuthService';
export declare namespace XHR {
    class Header {
        header: string;
        data: string;
        constructor(header: string, data: string);
    }
    class Data {
        statusCode: number;
        contentType: string;
        body: JSON | Array<JSON> | any;
        responseHeaders: {
            [key: string]: string[];
        };
        constructor(status: number, contentType: string, body: JSON | Array<JSON> | any, responseHeaders?: {
            [key: string]: string[];
        });
    }
    class XHRError extends Error {
        statusCode: number;
        errorCode: string;
        headers: Headers;
        message: string;
        url: string;
        constructor(url: string, message: string, status: number, errorCode: string, headers: Headers);
    }
    function sendCommand(method: string, url: string, headers: Array<Header> | null, data?: string | any, fetchImpl?: (input: RequestInfo, init?: RequestInit) => Promise<Response>, contentTypeOverride?: 'application/json' | 'text/plain' | 'application/octet-stream', headerProvider?: AuthService, minimumAuthenticationClass?: number | undefined, tryHardToParseJson?: boolean, collectHeaders?: string[]): Promise<Data>;
}
