import Observable from 'zen-observable-ts'; import { ExecutionResult, DocumentNode } from 'graphql'; export interface GraphQLRequest { query?: string | DocumentNode; variables?: Record; context?: Record; } export interface Operation { query: DocumentNode; variables?: Record; operationName?: string; context?: Record; } export declare type FetchResult, E = Record> = ExecutionResult & { extensions?: E; context?: C; }; export declare type NextLink = (operation: Operation) => Observable; export declare type RequestHandler = (operation: Operation, forward?: NextLink) => Observable | null;