import Cypher from "@neo4j/cypher-builder"; import type { ConcreteEntityAdapter } from "../../../../schema-model/entity/model-adapters/ConcreteEntityAdapter"; import type { RelationshipAdapter } from "../../../../schema-model/relationship/model-adapters/RelationshipAdapter"; import type { QueryASTContext } from "../QueryASTContext"; import type { QueryASTNode } from "../QueryASTNode"; import type { Filter } from "../filters/Filter"; import type { AuthorizationFilters } from "../filters/authorization-filters/AuthorizationFilters"; import type { InputField } from "../input-fields/InputField"; import type { SelectionPattern } from "../selection/SelectionPattern/SelectionPattern"; import { MutationOperation, type OperationTranspileResult } from "./operations"; export declare class ConnectOperation extends MutationOperation { readonly target: ConcreteEntityAdapter; readonly relationship: RelationshipAdapter; private selectionPattern; protected readonly authFilters: AuthorizationFilters[]; protected readonly sourceAuthFilters: AuthorizationFilters[]; readonly inputFields: Map; private filters; private nestedContext; constructor({ target, relationship, selectionPattern, }: { target: ConcreteEntityAdapter; selectionPattern: SelectionPattern; relationship: RelationshipAdapter; }); getChildren(): QueryASTNode[]; print(): string; addAuthFilters(...filter: AuthorizationFilters[]): void; addSourceAuthFilters(...filter: AuthorizationFilters[]): void; /** * Get and set field methods are utilities to remove duplicate fields between separate inputs * TODO: This logic should be handled in the factory. */ getField(key: string, attachedTo: "node" | "relationship"): InputField | undefined; addField(field: InputField, attachedTo: "node" | "relationship"): void; addFilters(...filters: Filter[]): void; getAuthorizationSubqueries(_context: QueryASTContext): Cypher.Clause[]; transpile(context: QueryASTContext): OperationTranspileResult; private getAuthorizationClauses; private getAuthorizationClausesAfter; private getSourceAuthorizationClausesAfter; private transpileAuthClauses; } //# sourceMappingURL=ConnectOperation.d.ts.map