graphql-parse-resolve-info
Version:
Parse GraphQLResolveInfo (the 4th argument of resolve) into a simple tree
35 lines (34 loc) • 1.21 kB
TypeScript
import { GraphQLResolveInfo, GraphQLType } from "graphql";
declare type mixed = Record<string, any> | string | number | boolean | undefined | null;
export interface FieldsByTypeName {
[str: string]: {
[str: string]: ResolveTree;
};
}
export interface ResolveTree {
name: string;
alias: string;
args: {
[str: string]: mixed;
};
fieldsByTypeName: FieldsByTypeName;
}
export declare function getAliasFromResolveInfo(resolveInfo: GraphQLResolveInfo): string;
export interface ParseOptions {
keepRoot?: boolean;
deep?: boolean;
}
export declare function parseResolveInfo(resolveInfo: GraphQLResolveInfo, options?: ParseOptions): ResolveTree | FieldsByTypeName | null | undefined;
export declare function simplifyParsedResolveInfoFragmentWithType(parsedResolveInfoFragment: ResolveTree, type: GraphQLType): {
fields: {};
name: string;
alias: string;
args: {
[str: string]: mixed;
};
fieldsByTypeName: FieldsByTypeName;
};
export declare const parse: typeof parseResolveInfo;
export declare const simplify: typeof simplifyParsedResolveInfoFragmentWithType;
export declare const getAlias: typeof getAliasFromResolveInfo;
export {};