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