import DataType from "./dataTypes/DataType"; import EntityCollection from "./dataTypes/EntityCollection"; /** * The type of the internal map used to represent the hierarchy. * The key is {{namespace}}.{{typeName}} of a type. The value is a Set of * its children */ interface HierarchyMap { [key: string]: Set; } /** * This class aims to represent a hierarchy of types defined in a modelinfo file. * * Sometimes we want to know things like "what are all the types that extend from Resource?" * This helps us figure that out. */ export default class TypeHierarchy { typeMap: HierarchyMap; constructor(collection?: EntityCollection); static buildKey(type: DataType): string; addType(type: DataType, parent: DataType | null): void; /** * Recursively gather all the children for a given type * @param type */ getAllChildrenFor(type: DataType): Array; } export {}; //# sourceMappingURL=TypeHierarchy.d.ts.map