import { DocumentNode, GraphQLSchema } from 'graphql';
import { Driver } from 'neo4j-driver';
import { Logger, MeshPubSub } from '@graphql-mesh/types';
import { Executor } from '@graphql-tools/utils';
export interface Neo4JExecutorOpts {
    schema: GraphQLSchema;
    driver?: Driver;
    pubsub?: MeshPubSub;
    logger?: Logger;
}
export declare function getNeo4JExecutor(opts: Neo4JExecutorOpts): Promise<Executor>;
interface GetExecutableSchemaFromTypeDefs {
    driver: Driver;
    logger?: Logger;
    pubsub?: MeshPubSub;
    typeDefs?: string | DocumentNode;
}
export declare function getExecutableSchemaFromTypeDefsAndDriver({ driver, logger, pubsub, typeDefs, }: GetExecutableSchemaFromTypeDefs): Promise<GraphQLSchema>;
export {};
