import { InMemoryCacheConfig, NormalizedCacheObject, Operation } from '@apollo/client/core';
import { ApolloClient } from '../client';
export declare const DEFAULT_DEBOUNCE_TIMEOUT = 300;
export declare function parseXHRHeaders(rawHeaders: string): Headers;
export declare type ApolloUploadFetchOptions = RequestInit & {
    method: string;
    onProgress?: (this: XMLHttpRequest, ev: ProgressEvent<EventTarget>) => void | null;
    onAbortPossible: (abortHandler: () => void) => void;
    headers: Headers;
};
export declare function uploadFetch(url: string, options: ApolloUploadFetchOptions): Promise<Response>;
export declare type BrowserClientMiddleware = (operation: Operation) => void;
export declare type BrowserClientParams = {
    url?: string;
    wsURL?: string;
    middlewares?: BrowserClientMiddleware[];
    initialState?: NormalizedCacheObject;
    cacheOptions?: InMemoryCacheConfig;
    ssrForceFetchDelay?: number;
    usePersistedQueries?: boolean;
};
export declare function browserClient(params?: BrowserClientParams): ApolloClient;
