ts-neo4j-parser
Version:
Typescript Neo4j parser to JSON
62 lines (61 loc) • 1.48 kB
TypeScript
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;
}