/**
|
* This source code is from https://github.com/jriecken/dependency-graph
|
* Just added "any" types here, wrapper everything into exported class.
|
* We cant use a package itself because we want to package "everything-in-it" for the frontend users of TypeORM.
|
*/
|
export declare class DepGraph {
|
nodes: any;
|
outgoingEdges: any;
|
incomingEdges: any;
|
/**
|
* Add a node to the dependency graph. If a node already exists, this method will do nothing.
|
*/
|
addNode(node: any, data?: any): void;
|
/**
|
* Remove a node from the dependency graph. If a node does not exist, this method will do nothing.
|
*/
|
removeNode(node: any): void;
|
/**
|
* Check if a node exists in the graph
|
*/
|
hasNode(node: any): any;
|
/**
|
* Get the data associated with a node name
|
*/
|
getNodeData(node: any): any;
|
/**
|
* Set the associated data for a given node name. If the node does not exist, this method will throw an error
|
*/
|
setNodeData(node: any, data: any): void;
|
/**
|
* Add a dependency between two nodes. If either of the nodes does not exist,
|
* an Error will be thrown.
|
*/
|
addDependency(from: any, to: any): boolean;
|
/**
|
* Remove a dependency between two nodes.
|
*/
|
removeDependency(from: any, to: any): void;
|
/**
|
* Get an array containing the nodes that the specified node depends on (transitively).
|
*
|
* Throws an Error if the graph has a cycle, or the specified node does not exist.
|
*
|
* If `leavesOnly` is true, only nodes that do not depend on any other nodes will be returned
|
* in the array.
|
*/
|
dependenciesOf(node: any, leavesOnly: any): any[];
|
/**
|
* get an array containing the nodes that depend on the specified node (transitively).
|
*
|
* Throws an Error if the graph has a cycle, or the specified node does not exist.
|
*
|
* If `leavesOnly` is true, only nodes that do not have any dependants will be returned in the array.
|
*/
|
dependantsOf(node: any, leavesOnly: any): any[];
|
/**
|
* Construct the overall processing order for the dependency graph.
|
*
|
* Throws an Error if the graph has a cycle.
|
*
|
* If `leavesOnly` is true, only nodes that do not depend on any other nodes will be returned.
|
*/
|
overallOrder(leavesOnly?: any): any[];
|
}
|