///
import * as stream from "readable-stream";
import { RavenCommand } from "../../../Http/RavenCommand";
import { GetResponse } from "./GetResponse";
import { HttpRequestParameters } from "../../../Primitives/Http";
import { GetRequest } from "./GetRequest";
import { ServerNode } from "../../../Http/ServerNode";
import { DocumentConventions } from "../../Conventions/DocumentConventions";
import { IDisposable } from "../../../Types/Contracts";
import { RequestExecutor } from "../../../Http/RequestExecutor";
import { SessionInfo } from "../../Session/IDocumentSession";
export declare class MultiGetCommand extends RavenCommand implements IDisposable {
private readonly _requestExecutor;
private _httpCache;
private readonly _commands;
private _sessionInfo;
private _conventions;
private _baseUrl;
private _cached;
aggressivelyCached: boolean;
constructor(requestExecutor: RequestExecutor, conventions: DocumentConventions, commands: GetRequest[], sessionInfo?: SessionInfo);
private _getCacheKey;
createRequest(node: ServerNode): HttpRequestParameters;
private _maybeReadAllFromCache;
setResponseAsync(bodyStream: stream.Stream, fromCache: boolean): Promise;
private _maybeSetCache;
get isReadRequest(): boolean;
dispose(): void;
closeCache(): void;
private static _mapToLocalObject;
}