Installation
npm install --save @types/jug
Summary
This package contains type definitions for jug (https://github.com/kaiquewdev/Graph).
Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jug.
index.d.ts
/**
* Internal structure of a vertex
*/
interface VertexStructure {
level: number;
edge: Vertex[];
data: VertexData;
parent: Vertex;
}
/**
* User data of a vertex.
*/
type VertexData = Object;
/**
* Graph constructor function.
*/
interface GraphConstructor {
new(): Graph;
}
/**
* Creates root node of a graph.
*/
interface Graph {
vertex: VertexConstructor;
init(data?: VertexData): Vertex;
}
/**
* Vertex constructor function.
*/
interface VertexConstructor {
new(obj?: VertexData): Vertex;
}
/**
* Represents one node of a graph.
*/
interface Vertex {
/**
* Initial vertex data.
*/
internal: VertexStructure;
/**
* Verify the level.
*/
level(): number;
/**
* Get edge count.
*/
edge(): number;
/**
* Access node.
* @param index - edge index.
*/
edge(index: number): Vertex;
/**
* Seed node.
* @param [data] - created vertex UserData.
*/
seed(data?: VertexData): Vertex;
/**
* Verify if the current node is the root.
*/
isRoot(): boolean;
/**
* Set node data.
* @param obj - data to be set.
*/
data(obj: VertexData): Vertex;
/**
* Get node data.
*/
data(): VertexData;
/**
* Get distance between nodes.
* @param from
* @param to
*/
proximity(from: string, to: string): number[];
/**
* Find a node.
* @param {string} type - object type.
* @param {Object} query - _.where query object.
*/
find(type: string | void, query: Object): VertexData[];
/**
* Get siblings of specified edge.
* @param {number} index - edge index.
*/
getSiblingsOf(index: number): VertexData[];
/**
* Getting childs of an specified edge.
* @param egde - target vertex;
*/
getChildsOf(egde: number): VertexData[];
/**
* Getting parents of an specified level and edge.
* @param {number} level - max level.
* @param {number} edge - edge index.
*/
getParentsFrom(level: number, edge: number): VertexData[];
/**
* Getting the length of childs of an specified edge.
* @param {number} edge - edge index.
*/
getScopeOf(edge: number): number;
}
declare var jug: Graph;
export = jug;
Additional Details
- Last updated: Mon, 20 Nov 2023 23:36:24 GMT
- Dependencies: none
Credits
These definitions were written by yevt.