/** @category Values */ import type { Maybe } from "../jsutils/Maybe.js"; import type { ConstValueNode } from "../language/ast.js"; import type { GraphQLInputType } from "../type/definition.js"; /** * Produces a GraphQL Value AST given a JavaScript object. * Function will match JavaScript/JSON values to GraphQL AST schema format * by using suggested GraphQLInputType. * * A GraphQL type must be provided, which will be used to interpret different * JavaScript values. * * This deprecated function will be removed in v18. Use `valueToLiteral()` * instead, and take care to operate on external values. * * | JSON Value | GraphQL Value | * | ------------- | -------------------- | * | Object | Input Object | * | Array | List | * | Boolean | Boolean | * | String | String / Enum Value | * | Number | Int / Float | * | BigInt | Int | * | Unknown | Enum Value | * | null | NullValue | * @param value - Runtime value to convert. * @param type - The GraphQL type to inspect. * @returns A GraphQL value AST for the provided JavaScript value, or null when no literal can represent it. * @example * ```ts * import { print } from 'graphql/language'; * import { * GraphQLInputObjectType, * GraphQLInt, * GraphQLList, * GraphQLNonNull, * GraphQLString, * } from 'graphql/type'; * import { astFromValue } from 'graphql/utilities'; * * const ReviewInput = new GraphQLInputObjectType({ * name: 'ReviewInput', * fields: { * stars: { type: new GraphQLNonNull(GraphQLInt) }, * tags: { type: new GraphQLList(GraphQLString) }, * }, * }); * * const valueNode = astFromValue( * { stars: 5, tags: ['featured', 'verified'] }, * ReviewInput, * ); * * print(valueNode); // => '{ stars: 5, tags: ["featured", "verified"] }' * astFromValue(undefined, GraphQLString); // => null * astFromValue(null, new GraphQLNonNull(GraphQLString)); // => null * ``` * @deprecated use `valueToLiteral()` instead with care to operate on external values - `astFromValue()` will be removed in v18 */ export declare function astFromValue(value: unknown, type: GraphQLInputType): Maybe;