mp-lens
Version:
微信小程序分析工具 (Unused Code, Dependencies, Visualization)
76 lines (75 loc) • 1.8 kB
TypeScript
/**
* 依赖图数据结构
* 用于存储文件之间的依赖关系,支持节点和边的操作
*/
export declare class DependencyGraph {
private _nodes;
private _outEdges;
private _inEdges;
/**
* 向图中添加节点
* @param node 节点名称(文件路径)
*/
addNode(node: string): void;
/**
* 向图中添加边(依赖关系)
* @param from 源文件
* @param to 目标文件(被依赖)
*/
addEdge(from: string, to: string): void;
/**
* 获取所有节点
*/
nodes(): string[];
/**
* 获取节点的所有出边(依赖)
* @param node 节点名称
*/
outEdges(node: string): string[];
/**
* 获取节点的所有入边(被谁依赖)
* @param node 节点名称
*/
inEdges(node: string): string[];
/**
* 获取节点的出度(依赖了多少文件)
* @param node 节点名称
*/
outDegree(node: string): number;
/**
* 获取节点的入度(被多少文件依赖)
* @param node 节点名称
*/
inDegree(node: string): number;
/**
* 检查图中是否存在节点
* @param node 节点名称
*/
hasNode(node: string): boolean;
/**
* 检查图中是否存在从from到to的边
* @param from 源节点
* @param to 目标节点
*/
hasEdge(from: string, to: string): boolean;
/**
* 获取图中的节点数量
*/
get nodeCount(): number;
/**
* 获取图中的边数量
*/
get edgeCount(): number;
/**
* 将图转换为JSON格式
*/
toJSON(): {
nodes: {
id: string;
}[];
links: {
source: string;
target: string;
}[];
};
}