UNPKG

@factorialco/shadowdog

Version:

<img src="https://raw.githubusercontent.com/factorialco/shadowdog/refs/heads/main/logo.png" alt="drawing" width="100"/>

30 lines (29 loc) 696 B
export interface DependencyObject { files?: string[]; artifacts?: string[]; } interface GraphStructure<T extends DependencyObject> { byLevel: { [level: number]: Array<{ object: T; dependencies: T[]; dependents: T[]; }>; }; nodeConnections: { [key: string]: { dependencies: T[]; dependents: T[]; }; }; } export declare class DependencyGraph<T extends DependencyObject> { private nodes; private levels; constructor(); private addNode; buildGraph(objects: T[]): DependencyGraph<T>; private topologicalSort; getStructure(): GraphStructure<T>; } export {};