import type { GraphQLSchema } from 'graphql';
import type { GetMeshSourcePayload, ImportFn, MeshFetch, MeshHandler, MeshHandlerOptions, MeshSource, YamlConfig } from '@graphql-mesh/types';
import { getDriverFromOpts } from '@omnigraph/neo4j';
export default class Neo4JHandler implements MeshHandler {
    private config;
    private baseDir;
    private pubsub;
    private schema;
    private logger;
    private name;
    fetchFn: MeshFetch;
    importFn: ImportFn;
    constructor({ name, config, baseDir, pubsub, store, logger, importFn, }: MeshHandlerOptions<YamlConfig.Neo4JHandler>);
    getCachedSchema(driver?: ReturnType<typeof getDriverFromOpts>): Promise<GraphQLSchema>;
    getMeshSource({ fetchFn }: GetMeshSourcePayload): Promise<MeshSource>;
}
