Interface: IGraphDatabase
Defined in: src/types/interfaces/graph.interface.ts:134
Graph database interface for Neo4j.
Methods
aggregateFacets()
aggregateFacets(
currentFacets?):Promise<readonlyFacetAggregation[]>
Defined in: src/types/interfaces/graph.interface.ts:210
Aggregates facet values with counts.
Parameters
currentFacets?
readonly FacetFilter[]
Returns
Promise<readonly FacetAggregation[]>
calculateConsensus()
calculateConsensus(
proposalUri):Promise<ConsensusResult>
Defined in: src/types/interfaces/graph.interface.ts:245
Calculates consensus for a proposal.
Parameters
proposalUri
Returns
Promise<ConsensusResult>
createEdge()
createEdge(
edge):Promise<void>
Defined in: src/types/interfaces/graph.interface.ts:172
Creates an edge between nodes.
Parameters
edge
Returns
Promise<void>
createProposal()
createProposal(
proposal):Promise<void>
Defined in: src/types/interfaces/graph.interface.ts:250
Creates a proposal.
Parameters
proposal
createdAt
Date
kind
proposalType
"create" | "update" | "merge" | "deprecate"
proposedNode
Partial<GraphNode>
proposerDid
rationale
string
subkind
string
targetUri
uri
Returns
Promise<void>
createVote()
createVote(
vote):Promise<void>
Defined in: src/types/interfaces/graph.interface.ts:235
Creates a vote on a proposal.
Parameters
vote
Returns
Promise<void>
deleteNode()
deleteNode(
uri):Promise<void>
Defined in: src/types/interfaces/graph.interface.ts:265
Deletes a node.
Parameters
uri
Returns
Promise<void>
findRelatedNodes()
findRelatedNodes(
nodeUri,maxDepth?):Promise<readonlyGraphNode[]>
Defined in: src/types/interfaces/graph.interface.ts:182
Finds related nodes by traversing edges.
Parameters
nodeUri
maxDepth?
number
Returns
Promise<readonly GraphNode[]>
getEdges()
getEdges(
nodeUri,relationSlug?):Promise<readonlyGraphEdge[]>
Defined in: src/types/interfaces/graph.interface.ts:177
Gets edges from a node, optionally filtered by relation.
Parameters
nodeUri
relationSlug?
Returns
Promise<readonly GraphEdge[]>
getFieldAncestors()
getFieldAncestors(
fieldIds,maxDepth?):Promise<Map<string, readonlyGraphNode[]>>
Defined in: src/types/interfaces/graph.interface.ts:197
Gets ancestor field nodes for multiple field IDs by traversing narrower edges in reverse. Used to expand field hierarchies for search indexing.
Parameters
fieldIds
readonly string[]
UUIDs of field nodes to get ancestors for
maxDepth?
number
Maximum hierarchy depth to traverse (default 10)
Returns
Promise<Map<string, readonly GraphNode[]>>
Map of field ID to array of ancestor field nodes (excluding the field itself)
getHierarchy()
getHierarchy(
rootUri,maxDepth?):Promise<NodeHierarchy>
Defined in: src/types/interfaces/graph.interface.ts:187
Gets node hierarchy for tree views.
Parameters
rootUri
maxDepth?
number
Returns
Promise<NodeHierarchy>
getNode()
getNode(
id,subkind?):Promise<null|GraphNode>
Defined in: src/types/interfaces/graph.interface.ts:148
Gets a node by ID and optional subkind.
Parameters
id
string
subkind?
string
Returns
Promise<null | GraphNode>
getNodeByUri()
getNodeByUri(
uri):Promise<null|GraphNode>
Defined in: src/types/interfaces/graph.interface.ts:143
Gets a node by URI.
Parameters
uri
Returns
Promise<null | GraphNode>
getNodesByIds()
getNodesByIds(
ids,subkind?):Promise<Map<string,GraphNode>>
Defined in: src/types/interfaces/graph.interface.ts:157
Gets multiple nodes by IDs in a single query.
Parameters
ids
readonly string[]
Node identifiers to fetch
subkind?
string
Optional subkind filter
Returns
Promise<Map<string, GraphNode>>
Map of id to GraphNode (missing nodes are not included)
getProposal()
getProposal(
uri):Promise<null|NodeProposal>
Defined in: src/types/interfaces/graph.interface.ts:230
Gets a proposal by URI.
Parameters
uri
Returns
Promise<null | NodeProposal>
getProposalsForNode()
getProposalsForNode(
nodeUri):Promise<readonlyNodeProposal[]>
Defined in: src/types/interfaces/graph.interface.ts:215
Gets pending proposals for a node.
Parameters
nodeUri
Returns
Promise<readonly NodeProposal[]>
getVotesForProposal()
getVotesForProposal(
proposalUri):Promise<readonlyVote[]>
Defined in: src/types/interfaces/graph.interface.ts:240
Gets votes for a proposal.
Parameters
proposalUri
Returns
Promise<readonly Vote[]>
listNodes()
listNodes(
options):Promise<NodeSearchResult>
Defined in: src/types/interfaces/graph.interface.ts:162
Lists nodes with filtering.
Parameters
options
Returns
Promise<NodeSearchResult>
listProposals()
listProposals(
filters):Promise<{hasMore:boolean;offset:number;proposals: readonlyNodeProposal[];total:number; }>
Defined in: src/types/interfaces/graph.interface.ts:220
Lists proposals with filtering.
Parameters
filters
Returns
Promise<{ hasMore: boolean; offset: number; proposals: readonly NodeProposal[]; total: number; }>
queryByFacets()
queryByFacets(
facets):Promise<readonlystring[]>
Defined in: src/types/interfaces/graph.interface.ts:205
Queries eprints by facets.
Parameters
facets
readonly FacetFilter[]
Returns
Promise<readonly string[]>
searchNodes()
searchNodes(
query,options?):Promise<NodeSearchResult>
Defined in: src/types/interfaces/graph.interface.ts:167
Searches nodes by text query.
Parameters
query
string
options?
Returns
Promise<NodeSearchResult>
upsertNode()
upsertNode(
node):Promise<void>
Defined in: src/types/interfaces/graph.interface.ts:138
Upserts a node.
Parameters
node
Returns
Promise<void>