import * as hooks from './hooks';
import { DocumentNode, ExecutionResult, GraphQLSchema, GraphQLFieldResolver, GraphQLError } from 'graphql';
import { ContextParams, BaseContext } from './api/context';
export { hooks };
export * from './api/utils';
export { default as gql } from 'graphql-tag';
export { GraphQLError } from 'graphql';
export { ValidatorMap, Resolver, Subscriber, ObservableSubscriber, AsyncIteratorSubscriber } from '@cortexql/ts2graphql';
export * from './api/context';
export declare function formatError(context: BaseContext, error: GraphQLError): GraphQLError;
export declare function formatResponse(context: BaseContext, response: ExecutionResult, end?: boolean): ExecutionResult;
export declare function executeWithContext(schema: GraphQLSchema, document: DocumentNode, rootValue: any, context: BaseContext, variableValues?: {
    [key: string]: any;
}, operationName?: string, fieldResolver?: GraphQLFieldResolver<any, any>): Promise<ExecutionResult>;
export declare function execute(document: DocumentNode, params: ContextParams, variableValues?: {
    [key: string]: any;
}, operationName?: string): Promise<ExecutionResult>;
export declare function subscribeWithContext(schema: GraphQLSchema, document: DocumentNode, rootValue: any, context: BaseContext, variableValues?: {
    [key: string]: any;
}, operationName?: string): Promise<ExecutionResult | AsyncIterator<ExecutionResult>>;
export declare function subscribe(document: DocumentNode, params: ContextParams, variableValues?: {
    [key: string]: any;
}, operationName?: string): Promise<ExecutionResult | AsyncIterator<ExecutionResult>>;
export declare function bootstrap(): Promise<void>;
