1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import Maybe from '../tsutils/Maybe';
- import { GraphQLError } from '../error/GraphQLError';
- import {
- FieldNode,
- DirectiveNode,
- VariableDefinitionNode,
- } from '../language/ast';
- import { GraphQLDirective } from '../type/directives';
- import { GraphQLSchema } from '../type/schema';
- import {
- GraphQLInputType,
- GraphQLField,
- GraphQLArgument,
- } from '../type/definition';
- type CoercedVariableValues =
- | { errors: ReadonlyArray<GraphQLError>; coerced?: never }
- | { errors?: never; coerced: { [key: string]: any } };
- /**
- * Prepares an object map of variableValues of the correct type based on the
- * provided variable definitions and arbitrary input. If the input cannot be
- * parsed to match the variable definitions, a GraphQLError will be thrown.
- *
- * Note: The returned value is a plain Object with a prototype, since it is
- * exposed to user code. Care should be taken to not pull values from the
- * Object prototype.
- */
- export function getVariableValues(
- schema: GraphQLSchema,
- varDefNodes: VariableDefinitionNode[],
- inputs: { [key: string]: any },
- options?: { maxErrors?: number },
- ): CoercedVariableValues;
- /**
- * Prepares an object map of argument values given a list of argument
- * definitions and list of argument AST nodes.
- *
- * Note: The returned value is a plain Object with a prototype, since it is
- * exposed to user code. Care should be taken to not pull values from the
- * Object prototype.
- */
- export function getArgumentValues(
- def: GraphQLField<any, any> | GraphQLDirective,
- node: FieldNode | DirectiveNode,
- variableValues?: Maybe<{ [key: string]: any }>,
- ): { [key: string]: any };
- /**
- * Prepares an object map of argument values given a directive definition
- * and a AST node which may contain directives. Optionally also accepts a map
- * of variable values.
- *
- * If the directive does not exist on the node, returns undefined.
- *
- * Note: The returned value is a plain Object with a prototype, since it is
- * exposed to user code. Care should be taken to not pull values from the
- * Object prototype.
- */
- export function getDirectiveValues(
- directiveDef: GraphQLDirective,
- node: {
- readonly directives?: ReadonlyArray<DirectiveNode>;
- },
- variableValues?: Maybe<{ [key: string]: any }>,
- ): undefined | { [key: string]: any };
|