@neo4j/graphql
Version:
A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations
43 lines • 2.16 kB
TypeScript
import type { Neo4jGraphQLSchemaModel } from "../../../schema-model/Neo4jGraphQLSchemaModel";
import type { Annotations } from "../../annotation/Annotation";
import { AttributeAdapter } from "../../attribute/model-adapters/AttributeAdapter";
import { RelationshipDeclarationAdapter } from "../../relationship/model-adapters/RelationshipDeclarationAdapter";
import type { InterfaceEntity } from "../InterfaceEntity";
import { ConcreteEntityAdapter } from "./ConcreteEntityAdapter";
import { InterfaceEntityOperations } from "./InterfaceEntityOperations";
export declare class InterfaceEntityAdapter {
readonly name: string;
concreteEntities: ConcreteEntityAdapter[];
readonly attributes: Map<string, AttributeAdapter>;
readonly relationshipDeclarations: Map<string, RelationshipDeclarationAdapter>;
readonly annotations: Partial<Annotations>;
private _singular;
private _plural;
private _operations;
constructor(entity: InterfaceEntity);
get globalIdField(): AttributeAdapter | undefined;
get operations(): InterfaceEntityOperations;
get singular(): string;
get plural(): string;
get upperFirstPlural(): string;
getImplementationToAliasMapWhereAliased(attribute: AttributeAdapter): [string[], string][];
isReadable(schemaModel: Neo4jGraphQLSchemaModel): boolean;
isAggregable(schemaModel: Neo4jGraphQLSchemaModel): boolean;
/**
* Categories
* = a grouping of attributes
* used to generate different types for the Entity that contains these Attributes
*/
get sortableFields(): AttributeAdapter[];
get whereFields(): AttributeAdapter[];
get aggregationWhereFields(): AttributeAdapter[];
get aggregableFields(): AttributeAdapter[];
get updateInputFields(): AttributeAdapter[];
get subscriptionEventPayloadFields(): AttributeAdapter[];
findAttribute(name: string): AttributeAdapter | undefined;
findRelationshipDeclarations(name: string): RelationshipDeclarationAdapter | undefined;
private initConcreteEntities;
private initAttributes;
private initRelationshipDeclarations;
}
//# sourceMappingURL=InterfaceEntityAdapter.d.ts.map