import { DocumentNode } from 'graphql';
import { Driver } from 'neo4j-driver';
import { Logger, MeshPubSub } from '@graphql-mesh/types';
import { Neo4JAuthOpts } from './auth.js';
export interface LoadGraphQLSchemaFromNeo4JOpts {
    endpoint: string;
    database?: string;
    auth?: Neo4JAuthOpts;
    pubsub?: MeshPubSub;
    logger?: Logger;
    driver?: Driver;
}
export declare function loadGraphQLSchemaFromNeo4J(subgraphName: string, { endpoint, auth, logger, pubsub, database, driver }: LoadGraphQLSchemaFromNeo4JOpts): Promise<import("graphql").GraphQLSchema>;
interface GetExecutableSchemaFromTypeDefs {
    driver: Driver;
    logger?: Logger;
    pubsub?: MeshPubSub;
    typeDefs?: string | DocumentNode;
}
export declare function getExecutableSchemaFromTypeDefsAndDriver({ driver, logger, pubsub, typeDefs, }: GetExecutableSchemaFromTypeDefs): Promise<import("graphql").GraphQLSchema>;
export {};
