UNPKG

@benzene/core

Version:

Fast, minimal, agnostic GraphQL Libraries

20 lines (19 loc) 1.21 kB
import { DocumentNode, ExecutionArgs, ExecutionResult, FormattedExecutionResult, GraphQLArgs, GraphQLError, GraphQLFormattedError, GraphQLSchema, SubscriptionArgs } from "graphql"; import { BenzeneGraphQLArgs, CompiledResult, ContextFn, Maybe, Options, ValueOrPromise } from "./types"; export default class Benzene<TContext = any, TExtra = any> { private lru; schema: GraphQLSchema; private validateFn; private validationRules?; formatErrorFn: (error: GraphQLError) => GraphQLFormattedError; contextFn?: ContextFn<TContext, TExtra>; private compileQuery; constructor(options: Options<TContext, TExtra>); compile(query: string | DocumentNode, operationName?: Maybe<string>): CompiledResult | ExecutionResult; formatExecutionResult(result: ExecutionResult): FormattedExecutionResult; graphql({ source, contextValue, variableValues, operationName, rootValue, }: Partial<GraphQLArgs> & { source: string; }): Promise<FormattedExecutionResult>; execute(args: BenzeneGraphQLArgs<ExecutionArgs>): ValueOrPromise<ExecutionResult>; subscribe(args: BenzeneGraphQLArgs<SubscriptionArgs>): Promise<AsyncIterableIterator<ExecutionResult> | ExecutionResult>; }