/// import { Operation, FetchResult, NextLink } from '../core'; import { Observable } from '../../utilities'; export declare type BatchHandler = (operations: Operation[], forward?: (NextLink | undefined)[]) => Observable | null; export interface BatchableRequest { operation: Operation; forward?: NextLink; observable?: Observable; next?: Array<(result: FetchResult) => void>; error?: Array<(error: Error) => void>; complete?: Array<() => void>; } export declare class OperationBatcher { queuedRequests: Map; private batchInterval?; private batchMax; private batchHandler; private batchKey; constructor({ batchInterval, batchMax, batchHandler, batchKey, }: { batchInterval?: number; batchMax?: number; batchHandler: BatchHandler; batchKey?: (operation: Operation) => string; }); enqueueRequest(request: BatchableRequest): Observable; consumeQueue(key?: string): (Observable | undefined)[] | undefined; private scheduleQueueConsumption; } //# sourceMappingURL=batching.d.ts.map