import { DocumentNode } from 'graphql/language/ast'; import { CacheConfig, Variables } from 'relay-runtime'; import { GraphQLResponseWithData, GraphQLResponseWithoutData, UploadableMap } from 'relay-runtime/lib/network/RelayNetworkTypes'; import { RelayObservable } from 'relay-runtime/lib/network/RelayObservable'; export declare enum OperationKind { QUERY = "query", MUTATION = "mutation", SUBSCRIPTION = "subscription" } export interface Operation> { readonly operationId?: null | string; readonly operationName?: null | string; readonly operationKind: OperationKind; readonly query?: null | string | DocumentNode; readonly variables: Variables; readonly metadata?: Record; readonly cacheConfig: CacheConfig; readonly uploadables?: UploadableMap | null; getKey(): string; getUniqueKey(): string; setContext(context: TContext): TContext; getContext(): TContext; } export interface OperationResponseWithData extends GraphQLResponseWithData { } export interface OperationResponseWithoutData extends GraphQLResponseWithoutData { } export declare type OperationResponse = OperationResponseWithData | OperationResponseWithoutData; export declare type NextLink = (operation: Operation) => RelayObservable; export declare type RequestHandler = (operation: Operation, forward?: NextLink) => RelayObservable | null; //# sourceMappingURL=types.d.ts.map