@neo4j/graphql
Version:
A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations
30 lines • 1.38 kB
TypeScript
import type { GraphQLResolveInfo } from "graphql";
import type { Driver, QueryResult, Session, SessionConfig, SessionMode, Transaction } from "neo4j-driver";
import type { CypherQueryOptions } from "../types";
export type ExecutionContext = Driver | Session | Transaction;
export type ExecutorConstructorParam = {
executionContext: ExecutionContext;
cypherQueryOptions?: CypherQueryOptions;
sessionConfig?: SessionConfig;
cypherParams?: Record<string, unknown>;
transactionMetadata?: Record<string, unknown>;
};
export type Neo4jGraphQLSessionConfig = Pick<SessionConfig, "database" | "impersonatedUser" | "auth">;
export declare class Executor {
private executionContext;
private cypherQueryOptions;
private sessionConfig;
private cypherParams;
private transactionMetadata;
constructor({ executionContext, cypherQueryOptions, sessionConfig, cypherParams, transactionMetadata, }: ExecutorConstructorParam);
execute(query: string, parameters: Record<string, any>, sessionMode: SessionMode, info?: GraphQLResolveInfo): Promise<QueryResult>;
private formatError;
private addCypherOptionsToQuery;
private getCypherVersionStatement;
private getCypherQueryOptionsStatement;
private getTransactionConfig;
private driverRun;
private sessionRun;
private transactionRun;
}
//# sourceMappingURL=Executor.d.ts.map