import Observable from 'zen-observable-ts'; import { GraphQLRequest, NextLink, Operation, RequestHandler, FetchResult } from './types'; export declare const empty: () => ApolloLink; export declare const from: (links: ApolloLink[]) => ApolloLink; export declare const split: (test: (op: Operation) => boolean, left: ApolloLink | RequestHandler, right?: ApolloLink | RequestHandler) => ApolloLink; export declare const concat: (first: ApolloLink | RequestHandler, second: ApolloLink | RequestHandler) => ApolloLink; export declare class ApolloLink { static empty: () => ApolloLink; static from: (links: ApolloLink[]) => ApolloLink; static split: (test: (op: Operation) => boolean, left: ApolloLink | RequestHandler, right?: ApolloLink | RequestHandler) => ApolloLink; static execute: typeof execute; constructor(request?: RequestHandler); split(test: (op: Operation) => boolean, left: ApolloLink | RequestHandler, right?: ApolloLink | RequestHandler): ApolloLink; concat(next: ApolloLink | RequestHandler): ApolloLink; request(operation: Operation, forward?: NextLink): Observable | null; } export declare function execute(link: ApolloLink, operation: GraphQLRequest): Observable;