import type { ICopy, Nullable, Pair } from "@thi.ng/api"; import { ArraySet } from "@thi.ng/associative/array-set"; import { EquivMap } from "@thi.ng/associative/equiv-map"; /** * {@link DGraph} factory function using optional provided edge pairs. If given, * each pair is a `[node, parent]` tuple, or using `[node, null]` to merely * register a node in the graph (without dependencies). * * @param edges - */ export declare const defDGraph: (edges?: Iterable>>) => DGraph; export declare class DGraph implements Iterable, ICopy> { dependencies: EquivMap>; dependents: EquivMap>; constructor(edges?: Iterable>>); [Symbol.iterator](): Generator; get [Symbol.species](): typeof DGraph; copy(): DGraph; addNode(node: T): this; addDependency(node: T, dep: T): this; addDependencies(node: T, deps: Iterable): void; removeEdge(node: T, dep: T): this; removeNode(x: T): this; depends(x: T, y: T): boolean; dependent(x: T, y: T): boolean; immediateDependencies(x: T): Set; immediateDependents(x: T): Set; isLeaf(x: T): boolean; isRoot(x: T): boolean; nodes(): Set; leaves(): IterableIterator; roots(): IterableIterator; transitiveDependencies(x: T): Set; transitiveDependents(x: T): Set; sort(): T[]; } //# sourceMappingURL=index.d.ts.map