UNPKG

graphql-mocks

Version:

Tools for setting up graphql test resolvers

31 lines (30 loc) 1.49 kB
import { GraphQLFieldResolver, GraphQLField, GraphQLTypeResolver, GraphQLScalarType } from 'graphql'; import { PackOptions } from './pack/types'; type ManagedContext = { [key: string]: any; pack?: PackOptions; }; export type ObjectField = GraphQLField<any, any>; export type FieldResolver<Source = any, Context = any, Args = any, Result = any> = GraphQLFieldResolver<Source, Context, Args, Result>; export type TypeResolver<Source = any, Context = any> = GraphQLTypeResolver<Source, Context>; export type ResolverParent<Resolver extends FieldResolver = FieldResolver> = Parameters<Resolver>[0]; export type ResolverArgs<Resolver extends FieldResolver = FieldResolver> = Parameters<Resolver>[1]; export type ResolverContext = ManagedContext; export type ResolverInfo<Resolver extends FieldResolver = FieldResolver> = Parameters<Resolver>[3]; export type BasicScalarDefinition = { serialize?: GraphQLScalarType['serialize']; parseValue?: GraphQLScalarType['parseValue']; parseLiteral?: GraphQLScalarType['parseLiteral']; }; export type ScalarMap = { [typename: string]: GraphQLScalarType | BasicScalarDefinition; }; export type ResolverMap<TFieldResolver = FieldResolver, TTypeResolver = TypeResolver> = { [typeName: string]: { [fieldName: string]: TFieldResolver; } & { __resolveType?: TTypeResolver; }; }; export type ResolverMapMiddleware = (map: ResolverMap, packOptions: PackOptions) => ResolverMap | Promise<ResolverMap>; export {};