@neo4j/graphql
Version:
A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations
51 lines • 2.91 kB
TypeScript
import type { ResolveTree } from "graphql-parse-resolve-info";
import type { EntityAdapter } from "../../../../schema-model/entity/EntityAdapter";
import { ConcreteEntityAdapter } from "../../../../schema-model/entity/model-adapters/ConcreteEntityAdapter";
import type { InterfaceEntityAdapter } from "../../../../schema-model/entity/model-adapters/InterfaceEntityAdapter";
import type { UnionEntityAdapter } from "../../../../schema-model/entity/model-adapters/UnionEntityAdapter";
import type { RelationshipAdapter } from "../../../../schema-model/relationship/model-adapters/RelationshipAdapter";
import type { Neo4jGraphQLTranslationContext } from "../../../../types/neo4j-graphql-translation-context";
import { ConnectionReadOperation } from "../../ast/operations/ConnectionReadOperation";
import { CompositeConnectionReadOperation } from "../../ast/operations/composite/CompositeConnectionReadOperation";
import type { QueryASTFactory } from "../QueryASTFactory";
export declare class ConnectionFactory {
private queryASTFactory;
private fulltextFactory;
private aggregateFactory;
constructor(queryASTFactory: QueryASTFactory);
createCompositeConnectionOperationAST({ relationship, target, resolveTree, context, }: {
relationship?: RelationshipAdapter;
target: InterfaceEntityAdapter | UnionEntityAdapter;
resolveTree: ResolveTree;
context: Neo4jGraphQLTranslationContext;
}): CompositeConnectionReadOperation;
createConnectionOperationAST({ relationship, target, resolveTree, context, }: {
relationship?: RelationshipAdapter;
target: EntityAdapter;
resolveTree: ResolveTree;
context: Neo4jGraphQLTranslationContext;
}): ConnectionReadOperation | CompositeConnectionReadOperation;
private hydrateConnectionOperationWithAggregation;
private hydrateConnectionOperationsASTWithSort;
normalizeResolveTreeForTopLevelConnection(resolveTree: ResolveTree): ResolveTree;
splitConnectionFields(rawFields: Record<string, ResolveTree>): {
node: ResolveTree | undefined;
edge: ResolveTree | undefined;
fields: Record<string, ResolveTree>;
};
private getConnectionOptions;
hydrateConnectionOperationAST<T extends ConnectionReadOperation>({ relationship, target, resolveTree, context, operation, whereArgs, resolveTreeEdgeFields, partialOf, }: {
relationship?: RelationshipAdapter;
target: ConcreteEntityAdapter;
resolveTree: ResolveTree;
context: Neo4jGraphQLTranslationContext;
operation: T;
whereArgs: Record<string, any>;
resolveTreeEdgeFields: Record<string, ResolveTree>;
partialOf?: InterfaceEntityAdapter | UnionEntityAdapter;
}): T;
private parseAggregateFields;
private parseConnectionFields;
private parseConnectionResolveTree;
}
//# sourceMappingURL=ConnectionFactory.d.ts.map