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