import { HttpClient } from '@angular/common/http';
import { ApolloLink, Observable as LinkObservable, Operation, FetchResult } from '@apollo/client/core';
import { BatchOptions } from './types';
export declare class HttpBatchLinkHandler extends ApolloLink {
    private httpClient;
    private options;
    batcher: ApolloLink;
    private batchInterval;
    private batchMax;
    private print;
    constructor(httpClient: HttpClient, options: BatchOptions);
    private createOptions;
    private createBody;
    private createHeaders;
    private createBatchKey;
    request(op: Operation): LinkObservable<FetchResult> | null;
}
export declare class HttpBatchLink {
    private httpClient;
    constructor(httpClient: HttpClient);
    create(options: BatchOptions): HttpBatchLinkHandler;
}
