Neo4jRepository
Defined in: neo4j-repository.ts:16
A Mantle GraphRepository<T> implementation backed by Neo4j.
Subclasses must declare readonly label: string — the Neo4j node label.
Each node stores a UUID id property plus all entity fields as node properties.
Type Parameters
Section titled “Type Parameters”T extends Record<string, unknown>
The entity shape. Must extend Record<string, unknown>.
Implements
Section titled “Implements”Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new Neo4jRepository<
T>(app):Neo4jRepository<T>
Defined in: neo4j-repository.ts:39
Parameters
Section titled “Parameters”Returns
Section titled “Returns”Neo4jRepository<T>
Properties
Section titled “Properties”createdAtField
Section titled “createdAtField”
readonlycreatedAtField:string="createdAt"
Defined in: neo4j-repository.ts:30
Property written for auto-managed creation timestamps.
Default
Section titled “Default”"createdAt"database
Section titled “database”
protectedreadonlydatabase:string
Defined in: neo4j-repository.ts:18
driver
Section titled “driver”
protectedreadonlydriver:Driver
Defined in: neo4j-repository.ts:17
fieldMap
Section titled “fieldMap”
readonlyfieldMap:Record<string,string> ={}
Defined in: neo4j-repository.ts:37
Entity-field-to-node-property overrides, for a label whose property names don’t match the entity (e.g. a brownfield graph using snake_case).
Default
Section titled “Default”{}idField
Section titled “idField”
readonlyidField:string="id"
Defined in: neo4j-repository.ts:24
The property used as the node identifier.
Default
Section titled “Default”"id"
abstractreadonlylabel:string
Defined in: neo4j-repository.ts:21
The Neo4j node label. Override in subclass.
timestamps
Section titled “timestamps”
readonlytimestamps:boolean=true
Defined in: neo4j-repository.ts:27
When true, auto-write createdAt / updatedAt ISO-8601 timestamps.
Default
Section titled “Default”trueupdatedAtField
Section titled “updatedAtField”
readonlyupdatedAtField:string="updatedAt"
Defined in: neo4j-repository.ts:32
Property written for auto-managed update timestamps.
Default
Section titled “Default”"updatedAt"Methods
Section titled “Methods”buildProps()
Section titled “buildProps()”
protectedbuildProps(data):Record<string,unknown>
Defined in: neo4j-repository.ts:94
Parameters
Section titled “Parameters”Partial<T>
Returns
Section titled “Returns”Record<string, unknown>
createNode()
Section titled “createNode()”createNode(
data):Promise<T>
Defined in: neo4j-repository.ts:102
Create a node
Parameters
Section titled “Parameters”Partial<T>
Returns
Section titled “Returns”Promise<T>
Implementation of
Section titled “Implementation of”createRelationship()
Section titled “createRelationship()”createRelationship(
fromId,toId,type,properties?):Promise<void>
Defined in: neo4j-repository.ts:182
Create a directed relationship between two nodes
Parameters
Section titled “Parameters”fromId
Section titled “fromId”string
properties?
Section titled “properties?”Record<string, unknown>
Returns
Section titled “Returns”Promise<void>
Implementation of
Section titled “Implementation of”GraphRepository.createRelationship
deleteNode()
Section titled “deleteNode()”deleteNode(
id):Promise<T>
Defined in: neo4j-repository.ts:212
Delete a node and all its relationships
Parameters
Section titled “Parameters”Returns
Section titled “Returns”Promise<T>
Implementation of
Section titled “Implementation of”describe()
Section titled “describe()”describe():
RepositoryCapabilities
Defined in: neo4j-repository.ts:44
Optional capability introspection. All
Returns
Section titled “Returns”Mantlejs
Section titled “Mantlejs”adapters implement it; user repositories may omit it.
Implementation of
Section titled “Implementation of”findNodeById()
Section titled “findNodeById()”findNodeById(
id):Promise<T|null>
Defined in: neo4j-repository.ts:124
Find a node by ID
Parameters
Section titled “Parameters”Returns
Section titled “Returns”Promise<T | null>
Implementation of
Section titled “Implementation of”findNodes()
Section titled “findNodes()”findNodes(
params?):Promise<T[]>
Defined in: neo4j-repository.ts:139
Find nodes matching properties
Parameters
Section titled “Parameters”params?
Section titled “params?”Returns
Section titled “Returns”Promise<T[]>
Implementation of
Section titled “Implementation of”openSession()
Section titled “openSession()”
protectedopenSession():Session
Defined in: neo4j-repository.ts:59
Returns
Section titled “Returns”Session
raw<
R>(query,params?):Promise<R[]>
Defined in: neo4j-repository.ts:228
Execute a raw query in the adapter’s native graph language (Cypher for Neo4j, AQL for ArangoDB, …).
Type Parameters
Section titled “Type Parameters”R = T
Parameters
Section titled “Parameters”string
params?
Section titled “params?”Record<string, unknown>
Returns
Section titled “Returns”Promise<R[]>
Implementation of
Section titled “Implementation of”recordToNode()
Section titled “recordToNode()”
protectedrecordToNode(record):T
Defined in: neo4j-repository.ts:74
Parameters
Section titled “Parameters”record
Section titled “record”Record<RecordShape<PropertyKey, any>, PropertyKey, RecordShape<PropertyKey, number>>
Returns
Section titled “Returns”T
protectedrun<R>(fn):Promise<R>
Defined in: neo4j-repository.ts:63
Type Parameters
Section titled “Type Parameters”R
Parameters
Section titled “Parameters”(session) => Promise<R>
Returns
Section titled “Returns”Promise<R>
toEntity()
Section titled “toEntity()”
protectedtoEntity(props):T
Defined in: neo4j-repository.ts:90
Parameters
Section titled “Parameters”Record<string, unknown>
Returns
Section titled “Returns”T
toEntityField()
Section titled “toEntityField()”
protectedtoEntityField(field):string
Defined in: neo4j-repository.ts:85
Translates a node property name back to its entity field name — the inverse of toField.
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”string
toField()
Section titled “toField()”
protectedtoField(field):string
Defined in: neo4j-repository.ts:80
Translates an entity field name to its node property name (fieldMap override, else identity).
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”string
traverse()
Section titled “traverse()”traverse(
startId,relation,depth?):Promise<T[]>
Defined in: neo4j-repository.ts:198
Traverse relationships from a starting node
Parameters
Section titled “Parameters”startId
Section titled “startId”relation
Section titled “relation”string
depth?
Section titled “depth?”number = 1
Returns
Section titled “Returns”Promise<T[]>
Implementation of
Section titled “Implementation of”withTransaction()
Section titled “withTransaction()”withTransaction<
R>(fn):Promise<R>
Defined in: neo4j-repository.ts:252
Type Parameters
Section titled “Type Parameters”R
Parameters
Section titled “Parameters”(repo) => Promise<R>
Returns
Section titled “Returns”Promise<R>
wrapError()
Section titled “wrapError()”
protectedwrapError(err):Error
Defined in: neo4j-repository.ts:273
Parameters
Section titled “Parameters”unknown
Returns
Section titled “Returns”Error