UNPKG

1.23 kBTypeScriptView Raw
1import { SelectionSetNode, FragmentDefinitionNode } from 'graphql';
2import { Transform, Request, ExecutionResult } from '@graphql-tools/utils';
3export declare type QueryTransformer = (selectionSet: SelectionSetNode, fragments: Record<string, FragmentDefinitionNode>) => SelectionSetNode;
4export declare type ResultTransformer = (result: any) => any;
5export declare type ErrorPathTransformer = (path: ReadonlyArray<string | number>) => Array<string | number>;
6export default class TransformQuery implements Transform {
7 private readonly path;
8 private readonly queryTransformer;
9 private readonly resultTransformer;
10 private readonly errorPathTransformer;
11 private readonly fragments;
12 constructor({ path, queryTransformer, resultTransformer, errorPathTransformer, fragments, }: {
13 path: Array<string>;
14 queryTransformer: QueryTransformer;
15 resultTransformer?: ResultTransformer;
16 errorPathTransformer?: ErrorPathTransformer;
17 fragments?: Record<string, FragmentDefinitionNode>;
18 });
19 transformRequest(originalRequest: Request): Request;
20 transformResult(originalResult: ExecutionResult): ExecutionResult;
21 private transformData;
22 private transformErrors;
23}