28 lines
705 B
TypeScript
28 lines
705 B
TypeScript
import {
|
|
FieldNode,
|
|
FragmentDefinitionNode,
|
|
GraphQLResolveInfo,
|
|
InlineFragmentNode,
|
|
GraphQLOutputType,
|
|
} from 'graphql';
|
|
|
|
export type ProjectionNode = { [fieldName: string]: any };
|
|
export type ProjectionType = {
|
|
[fieldName: string]: any;
|
|
};
|
|
|
|
export function getProjectionFromAST(
|
|
info: GraphQLResolveInfo,
|
|
fieldNode?: FieldNode | InlineFragmentNode | FragmentDefinitionNode
|
|
): ProjectionType;
|
|
|
|
export function getFlatProjectionFromAST(
|
|
info: GraphQLResolveInfo,
|
|
fieldNodes?: FieldNode | InlineFragmentNode | FragmentDefinitionNode
|
|
): { [key: string]: boolean };
|
|
|
|
export function extendByFieldProjection(
|
|
returnType: GraphQLOutputType,
|
|
projection: ProjectionType
|
|
): ProjectionType;
|