UNPKG

ts-neo4j-parser

Version:

Typescript Neo4j parser to JSON

62 lines (61 loc) 1.48 kB
import { Node } from './Node'; import { IProcess } from './interfaces/IProcess'; /** * Graph class * * @export * @class Graph * @template T * @template V */ export declare class Graph<T, V> { private _adjacencies; private _allowCyclic; private _nodes; /** * Creates an instance of Graph. * @param {boolean} [allowCyclic=false] * @memberof Graph */ constructor(allowCyclic?: boolean); /** * Adds a node * * @param {Node<T, V>} node * @memberof Graph */ addNode(node: Node<T, V>): void; /** * Adds an edge * * @param {Node<T, V>} nodeA * @param {Node<T, V>} nodeB * @memberof Graph */ addEdge(nodeA: Node<T, V>, nodeB: Node<T, V>): void; /** * Prints the graph to a string * * @return {*} {string} * @memberof Graph */ printGraph(): string; /** * Breath first search from the given node * * @param {Node<T, V>} startNode * @param {IProcess<T, V>} [callBack] * @return {*} {Map<T, V>} * @memberof Graph */ breadthFirstSearch(startNode: Node<T, V>, callBack?: IProcess<T, V>): Map<T, V>; /** * Depth first search from the given node * * @param {Node<T, V>} startNode * @return {*} {Map<T, V>} * @memberof Graph */ depthFirstSearch(startNode: Node<T, V>): Map<T, V>; private dfsUtil; }