UNPKG

2.4 kBTypeScriptView Raw
1import { DocumentNode, ExecutionResult, GraphQLError } from "graphql";
2export { DocumentNode };
3import { Observable } from "../../utilities";
4export declare type Path = ReadonlyArray<string | number>;
5declare type Data<T> = T | null | undefined;
6interface ExecutionPatchResultBase {
7 hasNext?: boolean;
8}
9export interface ExecutionPatchInitialResult<TData = Record<string, any>, TExtensions = Record<string, any>> extends ExecutionPatchResultBase {
10 data: Data<TData>;
11 incremental?: never;
12 errors?: ReadonlyArray<GraphQLError>;
13 extensions?: TExtensions;
14}
15export interface IncrementalPayload<TData, TExtensions> {
16 data: Data<TData>;
17 label?: string;
18 path: Path;
19 errors?: ReadonlyArray<GraphQLError>;
20 extensions?: TExtensions;
21}
22export interface ExecutionPatchIncrementalResult<TData = Record<string, any>, TExtensions = Record<string, any>> extends ExecutionPatchResultBase {
23 incremental?: IncrementalPayload<TData, TExtensions>[];
24 data?: never;
25 errors?: never;
26 extensions?: never;
27}
28export declare type ExecutionPatchResult<TData = Record<string, any>, TExtensions = Record<string, any>> = ExecutionPatchInitialResult<TData, TExtensions> | ExecutionPatchIncrementalResult<TData, TExtensions>;
29export interface GraphQLRequest {
30 query: DocumentNode;
31 variables?: Record<string, any>;
32 operationName?: string;
33 context?: Record<string, any>;
34 extensions?: Record<string, any>;
35}
36export interface Operation {
37 query: DocumentNode;
38 variables: Record<string, any>;
39 operationName: string;
40 extensions: Record<string, any>;
41 setContext: (context: Record<string, any>) => Record<string, any>;
42 getContext: () => Record<string, any>;
43}
44export interface SingleExecutionResult<TData = Record<string, any>, TContext = Record<string, any>, TExtensions = Record<string, any>> extends ExecutionResult<TData, TExtensions> {
45 data?: Data<TData>;
46 context?: TContext;
47}
48export declare type FetchResult<TData = Record<string, any>, TContext = Record<string, any>, TExtensions = Record<string, any>> = SingleExecutionResult<TData, TContext, TExtensions> | ExecutionPatchResult<TData, TExtensions>;
49export declare type NextLink = (operation: Operation) => Observable<FetchResult>;
50export declare type RequestHandler = (operation: Operation, forward: NextLink) => Observable<FetchResult> | null;
51//# sourceMappingURL=types.d.ts.map
\No newline at end of file