@wikipathways/cxml
Version:
Advanced schema-aware streaming XML parser
27 lines • 976 B
TypeScript
export interface ItemType {
new (...args: any[]): Item;
nextKey: number;
}
/** Type and member dependency helper. Implements Kahn's topological sort. */
export declare class Item {
constructor(kind: ItemType, dependencyNum?: number);
resolveDependency(specList: Item[]): void;
/** Set parent type or substituted member. */
setDependency(dependency: Item): void;
init(): void;
/** Topological sort visitor. */
tryInit(): void;
/** Create types and members based on JSON specifications. */
static initAll(pendingList: Item[]): void;
surrogateKey: number;
static nextKey: number;
/** Number of parent type or substituted member. */
dependencyNum: number;
/** Parent type or substituted member. */
dependency: Item;
/** Track dependents for Kahn's topological sort algorithm. */
private dependentList;
/** Visited flag for topological sort. */
ready: boolean;
}
//# sourceMappingURL=Item.d.ts.map