ts-ds-tool
Version:
Data structure and algorithm of TypeScript
26 lines (25 loc) • 860 B
TypeScript
import LinkList from "../linklist/LinkList";
import { GraphEdge } from "./GraphEdge";
export declare class GraphVertex<T = string> {
private property?;
private node;
private key;
private edges;
private indegree;
InDegree: number;
readonly Key: string;
readonly Node: T;
readonly Property: keyof T;
constructor(node: T, property?: keyof T);
addUndirectedEdge(endVertex: GraphVertex<T>, weight?: number): boolean;
addEdge(endVertex: GraphVertex<T>, weight?: number): boolean;
getEdges(): LinkList<GraphEdge<T>>;
getEdge(endKey: string): GraphEdge<T>;
deleteEdgeByKey(endKey: string, directed?: boolean): boolean;
deleteEdge(edge: GraphEdge<T>): boolean;
hasEdge(): boolean;
getInDegree(): number;
getOutDegree(): number;
getDegree(): number;
getNeighbors(): GraphVertex<T>[];
}