UNPKG

@neo4j/graphql

Version:

A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations

73 lines 3.22 kB
import type { Annotations } from "../../annotation/Annotation"; import type { Argument } from "../../argument/Argument"; import { AttributeAdapter } from "../../attribute/model-adapters/AttributeAdapter"; import type { EntityAdapter } from "../../entity/EntityAdapter"; import type { ConcreteEntityAdapter } from "../../entity/model-adapters/ConcreteEntityAdapter"; import type { NestedOperation, QueryDirection, Relationship, RelationshipDirection } from "../Relationship"; import { RelationshipOperations } from "./RelationshipOperations"; export declare class RelationshipAdapter { readonly name: string; readonly type: string; readonly attributes: Map<string, AttributeAdapter>; readonly source: EntityAdapter; private rawEntity; private rawOriginalTargetEntity?; private _target; readonly direction: RelationshipDirection; readonly queryDirection: QueryDirection; readonly nestedOperations: Set<NestedOperation>; readonly aggregate: boolean; readonly isNullable: boolean; readonly description?: string; readonly propertiesTypeName: string | undefined; readonly firstDeclaredInTypeName: string | undefined; readonly isList: boolean; readonly annotations: Partial<Annotations>; readonly args: Argument[]; readonly siblings?: string[]; private _singular; private _plural; private _operations; constructor(relationship: Relationship, sourceAdapter?: EntityAdapter); get operations(): RelationshipOperations; get singular(): string; get plural(): string; private initAttributes; findAttribute(name: string): AttributeAdapter | undefined; /** * translation-only * * @param directed the direction asked during the query, for instance "friends(directed: true)" * @returns the direction to use in the CypherBuilder **/ getCypherDirection(): "left" | "right" | "undirected"; cypherDirectionFromRelDirection(): "left" | "right"; get target(): EntityAdapter; get originalTarget(): EntityAdapter | undefined; isReadable(): boolean; isFilterableByValue(): boolean; isFilterableByAggregate(): boolean; isCreatable(): boolean; isUpdatable(): boolean; shouldGenerateFieldInputType(): boolean; shouldGenerateUpdateFieldInputType(ifUnionRelationshipTargetEntity?: ConcreteEntityAdapter): boolean; get hasNonNullCreateInputFields(): boolean; get hasCreateInputFields(): boolean; get hasUpdateInputFields(): boolean; get hasAnyProperties(): boolean; /** * Categories * = a grouping of attributes * used to generate different types for the Entity that contains these Attributes */ get aggregableFields(): AttributeAdapter[]; get aggregationWhereFields(): AttributeAdapter[]; get createInputFields(): AttributeAdapter[]; get updateInputFields(): AttributeAdapter[]; get sortableFields(): AttributeAdapter[]; get whereFields(): AttributeAdapter[]; get temporalFields(): AttributeAdapter[]; getPopulatedByFields(operation: "CREATE" | "UPDATE"): AttributeAdapter[]; get subscriptionConnectedRelationshipFields(): AttributeAdapter[]; } //# sourceMappingURL=RelationshipAdapter.d.ts.map