Docs
API Reference
Packages
utils

@graphql-tools/utils

Table of contents

References

Enumerations

Interfaces

Type Aliases

Variables

Functions

References

extractExtensionsFromSchema

Re-exports extractExtensionsFromSchema


withCancel

Renames and re-exports getAsyncIterableWithCancel

Type Aliases

ASTVisitorKeyMap

Ƭ ASTVisitorKeyMap: Partial<Parameters<typeof visit>[2]>

Defined in

packages/utils/src/types.ts:64 (opens in a new tab)


AbstractTypeMapper

Ƭ AbstractTypeMapper: (type: GraphQLInterfaceType | GraphQLUnionType, schema: GraphQLSchema) => GraphQLInterfaceType | GraphQLUnionType | null | undefined

Type declaration

▸ (type, schema): GraphQLInterfaceType | GraphQLUnionType | null | undefined

Parameters
NameType
typeGraphQLInterfaceType | GraphQLUnionType
schemaGraphQLSchema
Returns

GraphQLInterfaceType | GraphQLUnionType | null | undefined

Defined in

packages/utils/src/Interfaces.ts:434 (opens in a new tab)


ArgumentFilter

Ƭ ArgumentFilter: (typeName?: string, fieldName?: string, argName?: string, argConfig?: GraphQLArgumentConfig) => boolean

Type declaration

▸ (typeName?, fieldName?, argName?, argConfig?): boolean

Parameters
NameType
typeName?string
fieldName?string
argName?string
argConfig?GraphQLArgumentConfig
Returns

boolean

Defined in

packages/utils/src/Interfaces.ts:236 (opens in a new tab)


ArgumentMapper

Ƭ ArgumentMapper: (argumentConfig: GraphQLArgumentConfig, fieldName: string, typeName: string, schema: GraphQLSchema) => GraphQLArgumentConfig | [string, GraphQLArgumentConfig] | null | undefined

Type declaration

▸ (argumentConfig, fieldName, typeName, schema): GraphQLArgumentConfig | [string, GraphQLArgumentConfig] | null | undefined

Parameters
NameType
argumentConfigGraphQLArgumentConfig
fieldNamestring
typeNamestring
schemaGraphQLSchema
Returns

GraphQLArgumentConfig | [string, GraphQLArgumentConfig] | null | undefined

Defined in

packages/utils/src/Interfaces.ts:460 (opens in a new tab)


ArgumentToDirectives

Ƭ ArgumentToDirectives: Object

Index signature

▪ [argumentName: string]: DirectiveUsage[]

Defined in

packages/utils/src/get-arguments-with-directives.ts:9 (opens in a new tab)


AsyncExecutor

Ƭ AsyncExecutor<TBaseContext, TBaseExtensions>: <TReturn, TArgs, TContext, TRoot, TExtensions>(request: ExecutionRequest<TArgs, TContext, TRoot, TExtensions>) => Promise<MaybeAsyncIterable<ExecutionResult<TReturn>>>

Type parameters

NameType
TBaseContextRecord<string, any>
TBaseExtensionsRecord<string, any>

Type declaration

▸ <TReturn, TArgs, TContext, TRoot, TExtensions>(request): Promise<MaybeAsyncIterable<ExecutionResult<TReturn>>>

Type parameters
NameType
TReturnany
TArgsextends Record<string, any> = Record<string, any>
TContextextends TBaseContext = TBaseContext
TRootany
TExtensionsextends TBaseExtensions = TBaseExtensions
Parameters
NameType
requestExecutionRequest<TArgs, TContext, TRoot, TExtensions>
Returns

Promise<MaybeAsyncIterable<ExecutionResult<TReturn>>>

Defined in

packages/utils/src/executor.ts:6 (opens in a new tab)


BaseLoaderOptions

Ƭ BaseLoaderOptions: GraphQLParseOptions & BuildSchemaOptions & { cwd?: string ; ignore?: string | string[] }

Defined in

packages/utils/src/loaders.ts:11 (opens in a new tab)


Callback

Ƭ Callback: (value?: any) => any

Type declaration

▸ (value?): any

Parameters
NameType
value?any
Returns

any

Defined in

packages/utils/src/observableToAsyncIterable.ts:13 (opens in a new tab)


CompositeTypeMapper

Ƭ CompositeTypeMapper: (type: GraphQLObjectType | GraphQLInterfaceType | GraphQLUnionType, schema: GraphQLSchema) => GraphQLObjectType | GraphQLInterfaceType | GraphQLUnionType | null | undefined

Type declaration

▸ (type, schema): GraphQLObjectType | GraphQLInterfaceType | GraphQLUnionType | null | undefined

Parameters
NameType
typeGraphQLObjectType | GraphQLInterfaceType | GraphQLUnionType
schemaGraphQLSchema
Returns

GraphQLObjectType | GraphQLInterfaceType | GraphQLUnionType | null | undefined

Defined in

packages/utils/src/Interfaces.ts:422 (opens in a new tab)


Constructor

Ƭ Constructor<T>: (...args: any[]) => T

Type parameters

Name
T

Type declaration

• (...args)

Parameters
NameType
...argsany[]

Defined in

packages/utils/src/types.ts:24 (opens in a new tab)


DirectiveArgs

Ƭ DirectiveArgs: Object

Index signature

▪ [name: string]: any

Defined in

packages/utils/src/types.ts:135 (opens in a new tab)


DirectiveLocationEnum

Ƭ DirectiveLocationEnum: typeof DirectiveLocation

Defined in

packages/utils/src/types.ts:66 (opens in a new tab)


DirectiveMapper

Ƭ DirectiveMapper: (directive: GraphQLDirective, schema: GraphQLSchema) => GraphQLDirective | null | undefined

Type declaration

▸ (directive, schema): GraphQLDirective | null | undefined

Parameters
NameType
directiveGraphQLDirective
schemaGraphQLSchema
Returns

GraphQLDirective | null | undefined

Defined in

packages/utils/src/Interfaces.ts:446 (opens in a new tab)


DirectiveUsage

Ƭ DirectiveUsage: Object

Type declaration

NameType
argsDirectiveArgs
namestring

Defined in

packages/utils/src/types.ts:136 (opens in a new tab)


ElementOf

Ƭ ElementOf<TList>: TList extends infer TElement[] ? TElement : never

Type parameters

Name
TList

Defined in

packages/utils/src/loaders.ts:18 (opens in a new tab)


EnumTypeExtensions

Ƭ EnumTypeExtensions: Object

Type declaration

NameType
type"enum"
valuesRecord<string, ExtensionsObject>

Defined in

packages/utils/src/types.ts:117 (opens in a new tab)


EnumTypeMapper

Ƭ EnumTypeMapper: (type: GraphQLEnumType, schema: GraphQLSchema) => GraphQLEnumType | null | undefined

Type declaration

▸ (type, schema): GraphQLEnumType | null | undefined

Parameters
NameType
typeGraphQLEnumType
schemaGraphQLSchema
Returns

GraphQLEnumType | null | undefined

Defined in

packages/utils/src/Interfaces.ts:413 (opens in a new tab)


EnumValueMapper

Ƭ EnumValueMapper: (valueConfig: GraphQLEnumValueConfig, typeName: string, schema: GraphQLSchema, externalValue: string) => GraphQLEnumValueConfig | [string, GraphQLEnumValueConfig] | null | undefined

Type declaration

▸ (valueConfig, typeName, schema, externalValue): GraphQLEnumValueConfig | [string, GraphQLEnumValueConfig] | null | undefined

Parameters
NameType
valueConfigGraphQLEnumValueConfig
typeNamestring
schemaGraphQLSchema
externalValuestring
Returns

GraphQLEnumValueConfig | [string, GraphQLEnumValueConfig] | null | undefined

Defined in

packages/utils/src/Interfaces.ts:415 (opens in a new tab)


ErrorVisitor

Ƭ ErrorVisitor: (error: GraphQLError, pathIndex: number) => GraphQLError

Type declaration

▸ (error, pathIndex): GraphQLError

Parameters
NameType
errorGraphQLError
pathIndexnumber
Returns

GraphQLError

Defined in

packages/utils/src/visitResult.ts:32 (opens in a new tab)


ErrorVisitorMap

Ƭ ErrorVisitorMap: { __unpathed?: (error: GraphQLError) => GraphQLError } & Record<string, Record<string, ErrorVisitor>>

Defined in

packages/utils/src/visitResult.ts:34 (opens in a new tab)


Executor

Ƭ Executor<TBaseContext, TBaseExtensions>: <TReturn, TArgs, TContext, TRoot, TExtensions>(request: ExecutionRequest<TArgs, TContext, TRoot, TExtensions>) => MaybePromise<MaybeAsyncIterable<ExecutionResult<TReturn>>>

Type parameters

NameType
TBaseContextRecord<string, any>
TBaseExtensionsRecord<string, any>

Type declaration

▸ <TReturn, TArgs, TContext, TRoot, TExtensions>(request): MaybePromise<MaybeAsyncIterable<ExecutionResult<TReturn>>>

Type parameters
NameType
TReturnany
TArgsextends Record<string, any> = Record<string, any>
TContextextends TBaseContext = TBaseContext
TRootany
TExtensionsextends TBaseExtensions = TBaseExtensions
Parameters
NameType
requestExecutionRequest<TArgs, TContext, TRoot, TExtensions>
Returns

MaybePromise<MaybeAsyncIterable<ExecutionResult<TReturn>>>

Defined in

packages/utils/src/executor.ts:26 (opens in a new tab)


ExtensionsObject

Ƭ ExtensionsObject: Record<string, any>

Defined in

packages/utils/src/types.ts:92 (opens in a new tab)


FieldFilter

Ƭ FieldFilter: (typeName: string, fieldName: string, fieldConfig: GraphQLFieldConfig<any, any> | GraphQLInputFieldConfig) => boolean

Type declaration

▸ (typeName, fieldName, fieldConfig): boolean

Parameters
NameType
typeNamestring
fieldNamestring
fieldConfigGraphQLFieldConfig<any, any> | GraphQLInputFieldConfig
Returns

boolean

Defined in

packages/utils/src/Interfaces.ts:216 (opens in a new tab)


FieldMapper

Ƭ FieldMapper: GenericFieldMapper<GraphQLFieldConfig<any, any>>

Defined in

packages/utils/src/Interfaces.ts:458 (opens in a new tab)


FieldNodeMapper

Ƭ FieldNodeMapper: (fieldNode: FieldNode, fragments: Record<string, FragmentDefinitionNode>, transformationContext: Record<string, any>) => SelectionNode | SelectionNode[]

Type declaration

▸ (fieldNode, fragments, transformationContext): SelectionNode | SelectionNode[]

Parameters
NameType
fieldNodeFieldNode
fragmentsRecord<string, FragmentDefinitionNode>
transformationContextRecord<string, any>
Returns

SelectionNode | SelectionNode[]

Defined in

packages/utils/src/Interfaces.ts:202 (opens in a new tab)


FieldNodeMappers

Ƭ FieldNodeMappers: Record<string, Record<string, FieldNodeMapper>>

Defined in

packages/utils/src/Interfaces.ts:208 (opens in a new tab)


Force

Ƭ Force: string[]

Defined in

packages/utils/src/build-operation-for-field.ts:49 (opens in a new tab)


GenericFieldMapper

Ƭ GenericFieldMapper<F>: (fieldConfig: F, fieldName: string, typeName: string, schema: GraphQLSchema) => F | [string, F] | null | undefined

Type parameters

NameType
Fextends GraphQLFieldConfig<any, any> | GraphQLInputFieldConfig

Type declaration

▸ (fieldConfig, fieldName, typeName, schema): F | [string, F] | null | undefined

Parameters
NameType
fieldConfigF
fieldNamestring
typeNamestring
schemaGraphQLSchema
Returns

F | [string, F] | null | undefined

Defined in

packages/utils/src/Interfaces.ts:451 (opens in a new tab)


IDefaultValueIteratorFn

Ƭ IDefaultValueIteratorFn: (type: GraphQLInputType, value: any) => void

Type declaration

▸ (type, value): void

Parameters
NameType
typeGraphQLInputType
valueany
Returns

void

Defined in

packages/utils/src/Interfaces.ts:323 (opens in a new tab)


IEnumTypeResolver

Ƭ IEnumTypeResolver: Record<string, any> & { __astNode?: EnumTypeDefinitionNode ; __description?: string ; __extensionASTNodes?: EnumTypeExtensionNode[] ; __extensions?: Record<string, any> ; __name?: string }

Defined in

packages/utils/src/Interfaces.ts:181 (opens in a new tab)


IFieldIteratorFn

Ƭ IFieldIteratorFn: (fieldDef: GraphQLField<any, any>, typeName: string, fieldName: string) => void

Type declaration

▸ (fieldDef, typeName, fieldName): void

Parameters
NameType
fieldDefGraphQLField<any, any>
typeNamestring
fieldNamestring
Returns

void

Defined in

packages/utils/src/Interfaces.ts:321 (opens in a new tab)


IFieldResolver

Ƭ IFieldResolver<TSource, TContext, TArgs, TReturn>: (source: TSource, args: TArgs, context: TContext, info: GraphQLResolveInfo) => TReturn

Type parameters

NameType
TSourceTSource
TContextTContext
TArgsRecord<string, any>
TReturnany

Type declaration

▸ (source, args, context, info): TReturn

Parameters
NameType
sourceTSource
argsTArgs
contextTContext
infoGraphQLResolveInfo
Returns

TReturn

Defined in

packages/utils/src/Interfaces.ts:248 (opens in a new tab)


IInputObjectTypeResolver

Ƭ IInputObjectTypeResolver: Object

Type declaration

NameType
__astNode?InputObjectTypeDefinitionNode
__description?string
__extensionASTNodes?InputObjectTypeExtensionNode[]
__extensions?Record<string, any>
__name?string

Defined in

packages/utils/src/Interfaces.ts:295 (opens in a new tab)


IInterfaceTypeResolver

Ƭ IInterfaceTypeResolver<TSource, TContext, TArgs>: { [key: string]: IFieldResolver<TSource, TContext, TArgs> | IFieldResolverOptions<TSource, TContext>; } & { __astNode?: InterfaceTypeDefinitionNode ; __description?: string ; __extensionASTNodes?: InterfaceTypeExtensionNode[] ; __extensions?: Record<string, any> ; __name?: string ; __resolveType?: GraphQLTypeResolver<any, any> }

Type parameters

NameType
TSourceany
TContextany
TArgsany

Defined in

packages/utils/src/Interfaces.ts:275 (opens in a new tab)


IObjectTypeResolver

Ƭ IObjectTypeResolver<TSource, TContext, TArgs>: { [key: string]: IFieldResolver<TSource, TContext, TArgs> | IFieldResolverOptions<TSource, TContext>; } & { __astNode?: ObjectTypeDefinitionNode ; __description?: string ; __extensionASTNodes?: ObjectTypeExtensionNode ; __extensions?: Record<string, any> ; __isTypeOf?: GraphQLIsTypeOfFn<TSource, TContext> ; __name?: string }

Type parameters

NameType
TSourceany
TContextany
TArgsany

Defined in

packages/utils/src/Interfaces.ts:264 (opens in a new tab)


IResolvers

Ƭ IResolvers<TSource, TContext, TArgs, TReturn>: Record<string, ISchemaLevelResolver<TSource, TContext, TArgs, TReturn> | IObjectTypeResolver<TSource, TContext> | IInterfaceTypeResolver<TSource, TContext> | IUnionTypeResolver | IScalarTypeResolver | IEnumTypeResolver | IInputObjectTypeResolver>

Type parameters

NameType
TSourceany
TContextany
TArgsRecord<string, any>
TReturnany

Defined in

packages/utils/src/Interfaces.ts:310 (opens in a new tab)


IScalarTypeResolver

Ƭ IScalarTypeResolver: GraphQLScalarType & { __astNode?: ScalarTypeDefinitionNode ; __description?: string ; __extensionASTNodes?: ScalarTypeExtensionNode[] ; __extensions?: Record<string, any> ; __name?: string ; __parseLiteral?: GraphQLScalarLiteralParser<any> ; __parseValue?: GraphQLScalarValueParser<any> ; __serialize?: GraphQLScalarSerializer<any> }

Defined in

packages/utils/src/Interfaces.ts:170 (opens in a new tab)


ISchemaLevelResolver

Ƭ ISchemaLevelResolver<TSource, TContext, TArgs, TReturn>: IFieldResolver<TSource, TContext, TArgs, TReturn>

Type parameters

NameType
TSourceTSource
TContextTContext
TArgsRecord<string, any>
TReturnany

Defined in

packages/utils/src/Interfaces.ts:303 (opens in a new tab)


IUnionTypeResolver

Ƭ IUnionTypeResolver: Object

Type declaration

NameType
__astNode?UnionTypeDefinitionNode
__description?string
__extensionASTNodes?UnionTypeExtensionNode[]
__extensions?Record<string, any>
__name?string
__resolveType?GraphQLTypeResolver<any, any>

Defined in

packages/utils/src/Interfaces.ts:286 (opens in a new tab)


Ignore

Ƭ Ignore: string[]

Defined in

packages/utils/src/build-operation-for-field.ts:50 (opens in a new tab)


InputFieldFilter

Ƭ InputFieldFilter: (typeName?: string, fieldName?: string, inputFieldConfig?: GraphQLInputFieldConfig) => boolean

Type declaration

▸ (typeName?, fieldName?, inputFieldConfig?): boolean

Parameters
NameType
typeName?string
fieldName?string
inputFieldConfig?GraphQLInputFieldConfig
Returns

boolean

Defined in

packages/utils/src/Interfaces.ts:210 (opens in a new tab)


InputFieldMapper

Ƭ InputFieldMapper: GenericFieldMapper<GraphQLInputFieldConfig>

Defined in

packages/utils/src/Interfaces.ts:467 (opens in a new tab)


InputLeafValueTransformer

Ƭ InputLeafValueTransformer: (type: GraphQLEnumType | GraphQLScalarType, originalValue: any) => any

Type declaration

▸ (type, originalValue): any

Parameters
NameType
typeGraphQLEnumType | GraphQLScalarType
originalValueany
Returns

any

Defined in

packages/utils/src/types.ts:57 (opens in a new tab)


InputObjectTypeMapper

Ƭ InputObjectTypeMapper: (type: GraphQLInputObjectType, schema: GraphQLSchema) => GraphQLInputObjectType | null | undefined

Type declaration

▸ (type, schema): GraphQLInputObjectType | null | undefined

Parameters
NameType
typeGraphQLInputObjectType
schemaGraphQLSchema
Returns

GraphQLInputObjectType | null | undefined

Defined in

packages/utils/src/Interfaces.ts:429 (opens in a new tab)


InputObjectValueTransformer

Ƭ InputObjectValueTransformer: (type: GraphQLInputObjectType, originalValue: Record<string, any>) => Record<string, any>

Type declaration

▸ (type, originalValue): Record<string, any>

Parameters
NameType
typeGraphQLInputObjectType
originalValueRecord<string, any>
Returns

Record<string, any>

Defined in

packages/utils/src/types.ts:58 (opens in a new tab)


InputTypeExtensions

Ƭ InputTypeExtensions: Object

Type declaration

NameType
fieldsRecord<string, { extensions: ExtensionsObject }>
type"input"

Defined in

packages/utils/src/types.ts:99 (opens in a new tab)


InterfaceTypeExtensions

Ƭ InterfaceTypeExtensions: Object

Type declaration

NameType
fieldsRecord<string, { arguments: Record<string, ExtensionsObject> ; extensions: ExtensionsObject }>
type"interface"

Defined in

packages/utils/src/types.ts:104 (opens in a new tab)


InterfaceTypeMapper

Ƭ InterfaceTypeMapper: (type: GraphQLInterfaceType, schema: GraphQLSchema) => GraphQLInterfaceType | null | undefined

Type declaration

▸ (type, schema): GraphQLInterfaceType | null | undefined

Parameters
NameType
typeGraphQLInterfaceType
schemaGraphQLSchema
Returns

GraphQLInterfaceType | null | undefined

Defined in

packages/utils/src/Interfaces.ts:441 (opens in a new tab)


Maybe

Ƭ Maybe<T>: null | undefined | T

Type parameters

Name
T

Defined in

packages/utils/src/types.ts:22 (opens in a new tab)


MaybeAsyncIterable

Ƭ MaybeAsyncIterable<T>: AsyncIterable<T> | T

Type parameters

Name
T

Defined in

packages/utils/src/executor.ts:4 (opens in a new tab)


MaybePromise

Ƭ MaybePromise<T>: PromiseLike<T> | T

Type parameters

Name
T

Defined in

packages/utils/src/executor.ts:3 (opens in a new tab)


NamedDefinitionNode

Ƭ NamedDefinitionNode: DefinitionNode & { name?: NameNode }

Defined in

packages/utils/src/comments.ts:16 (opens in a new tab)


NamedTypeMapper

Ƭ NamedTypeMapper: (type: GraphQLNamedType, schema: GraphQLSchema) => GraphQLNamedType | null | undefined

Type declaration

▸ (type, schema): GraphQLNamedType | null | undefined

Parameters
NameType
typeGraphQLNamedType
schemaGraphQLSchema
Returns

GraphQLNamedType | null | undefined

Defined in

packages/utils/src/Interfaces.ts:409 (opens in a new tab)


NextResolverFn

Ƭ NextResolverFn: () => Promise<any>

Type declaration

▸ (): Promise<any>

Returns

Promise<any>

Defined in

packages/utils/src/Interfaces.ts:325 (opens in a new tab)


ObjectFieldFilter

Ƭ ObjectFieldFilter: (typeName: string, fieldName: string, fieldConfig: GraphQLFieldConfig<any, any>) => boolean

Type declaration

▸ (typeName, fieldName, fieldConfig): boolean

Parameters
NameType
typeNamestring
fieldNamestring
fieldConfigGraphQLFieldConfig<any, any>
Returns

boolean

Defined in

packages/utils/src/Interfaces.ts:222 (opens in a new tab)


ObjectTypeExtensions

Ƭ ObjectTypeExtensions: Object

Type declaration

NameType
fieldsRecord<string, { arguments: Record<string, ExtensionsObject> ; extensions: ExtensionsObject }>
type"object"

Defined in

packages/utils/src/types.ts:94 (opens in a new tab)


ObjectTypeMapper

Ƭ ObjectTypeMapper: (type: GraphQLObjectType, schema: GraphQLSchema) => GraphQLObjectType | null | undefined

Type declaration

▸ (type, schema): GraphQLObjectType | null | undefined

Parameters
NameType
typeGraphQLObjectType
schemaGraphQLSchema
Returns

GraphQLObjectType | null | undefined

Defined in

packages/utils/src/Interfaces.ts:427 (opens in a new tab)


ObjectValueVisitor

Ƭ ObjectValueVisitor: { __enter?: ValueVisitor ; __leave?: