import { IHttpClient, IHttpClientResponse } from "./IHttpClient"; /** * A graph client which will automatically batch not awaited get calls. * To get most of it You can either pass this client to multiple components and await get calls in them. * Alternatively You can use Promise.all([client.get("/me"), client.get("/me/photo/$value"),client.get("/me/presence")]). */ export declare class BatchGraphClient implements IHttpClient { protected baseClient: IHttpClient; batchWaitTime: number; batchSplitThreshold: number; private batch; getRequestId: (url: string, method: string) => string; private registeredPromises; /** * Initializes new instance of BatchGraphClient. * @param baseClient base client that will handle actual calls to Graph API. * @param batchWaitTime the number of milliseconds to wait between batching. Defaults to 500. * @param batchSplitThreshold the maximum number of calls in a single batch. Defaults to 15. */ constructor(baseClient: IHttpClient, batchWaitTime?: number, batchSplitThreshold?: number); get(url: string, options?: any): Promise; post(url: string, options?: any): Promise; patch(url: string, options?: any): Promise; put(url: string, options?: any): Promise; delete(url: string, options?: any): Promise; protected generateBatch: () => Promise; createGetBatchRequest: (url: string, method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE", options: any, requestPromise: { resolve; error; }) => void; }