import Namespace from './Namespace'; import BaseClass from './class/BaseClass'; /** * Менеджер пространств имен и классов. */ export default class Manager { private namespaces; /** * Список классов из всех пространств имен под управлением менеджера. * @returns {BaseClass[]} */ readonly classes: BaseClass[]; /** * Количество пространств имен под управлением менеджера. * @returns {number} */ readonly count: number; /** * Конструктор менеджера. * На вход можно подать список пространств имен, которые будут добавлены в менеджер. * @param {string | Namespace} namespaces */ constructor(...namespaces: (string | Namespace)[]); /** * Добавить пространство имен. * Пространство не должно присутствовать в менеджере или пересекаться с имеющимися. * @param {string | Namespace} nameOrNamespace * @returns {Manager} */ add(nameOrNamespace: string | Namespace): this; /** * Получить пространство имен по его полному имени. * @param {string} name * @returns {Namespace | undefined} */ get(name: string): Namespace | undefined; /** * Проверка наличия пространства имен. * @param {string} name * @returns {boolean} */ has(name: string): boolean; /** * Поиск класса по всем пространствам имен. * @param {string} name */ findClass(name: string): BaseClass | undefined; /** * Реализация итератора для менеджера пространств имен. * @returns {IterableIterator} */ [Symbol.iterator](): IterableIterator; } //# sourceMappingURL=Manager.d.ts.map