You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.4 KiB
45 lines
1.4 KiB
import type { ObjMap } from '../jsutils/ObjMap'; |
|
import type { |
|
FieldNode, |
|
FragmentDefinitionNode, |
|
SelectionSetNode, |
|
} from '../language/ast'; |
|
import type { GraphQLObjectType } from '../type/definition'; |
|
import type { GraphQLSchema } from '../type/schema'; |
|
/** |
|
* Given a selectionSet, collects all of the fields and returns them. |
|
* |
|
* CollectFields requires the "runtime type" of an object. For a field that |
|
* returns an Interface or Union type, the "runtime type" will be the actual |
|
* object type returned by that field. |
|
* |
|
* @internal |
|
*/ |
|
export declare function collectFields( |
|
schema: GraphQLSchema, |
|
fragments: ObjMap<FragmentDefinitionNode>, |
|
variableValues: { |
|
[variable: string]: unknown; |
|
}, |
|
runtimeType: GraphQLObjectType, |
|
selectionSet: SelectionSetNode, |
|
): Map<string, ReadonlyArray<FieldNode>>; |
|
/** |
|
* Given an array of field nodes, collects all of the subfields of the passed |
|
* in fields, and returns them at the end. |
|
* |
|
* CollectSubFields requires the "return type" of an object. For a field that |
|
* returns an Interface or Union type, the "return type" will be the actual |
|
* object type returned by that field. |
|
* |
|
* @internal |
|
*/ |
|
export declare function collectSubfields( |
|
schema: GraphQLSchema, |
|
fragments: ObjMap<FragmentDefinitionNode>, |
|
variableValues: { |
|
[variable: string]: unknown; |
|
}, |
|
returnType: GraphQLObjectType, |
|
fieldNodes: ReadonlyArray<FieldNode>, |
|
): Map<string, ReadonlyArray<FieldNode>>;
|
|
|