import { JsonApiResponseBody } from "../JsonApiResponseBody"; import { JsonApiDoc } from "../JsonApiDoc"; import { Model } from "../Model"; import { Map } from "../util/Map"; import { Response } from "./Response"; import { HttpClientResponse } from "../httpclient/HttpClientResponse"; export declare abstract class RetrievalResponse extends Response { protected modelType: any; protected docIndex: Map>; protected modelIndex: Map>; protected included: Model[]; constructor(httpClientResponse: HttpClientResponse, modelType: typeof Model, responseBody: JsonApiResponseBody); abstract getData(): any; getIncluded(): Model[]; protected abstract makeModelIndex(requested: any): void; private indexIncludedDocs(includedDocs?); protected abstract indexRequestedDocs(requested: any): any; protected indexDoc(doc: JsonApiDoc): void; protected indexAsModel(doc: JsonApiDoc, modelType: any): Model; protected abstract makeDataArray(requestedDocs: any): void; protected makeIncludedArray(includedDocs?: JsonApiDoc[]): void; }