/** @typedef {Trees.GlobalAttributeTree.Node.Attributes} NodeAttributes */ /** @typedef {Trees.GlobalAttributeTree.Node.Attributes.Attribute} NodeAttribute */ /** * Интерфейс позволяющей пользователю работать с атрибутами ноды * * @group manager * @class Attributes * @memberof Trees.GlobalAttributeTree.Node */ function Attributes() { /** * Возвращает список атрибутов ноды * * @public * @function attributes * @returns {v2.map(v2.string, v2.vc)} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.attributes = function() { }; /** * Возвращает список базовых атрибутов ноды * * @public * @function base_attributes * @returns {v2.vc} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.base_attributes = function() { }; /** * Возвращает ссылку на атрибут ноды * * @public * @function get * @param {v2.string} attributeName * @returns {tools.promise} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.get = function(attributeName) { }; /** * Проверяет наличие любого атрибута у ноды * * @public * @function is_exist_attribute * @param {v2.string} attributeName * @returns {boolean} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.is_exist_attribute = function(attributeName) { }; /** * Провеляет наличие базового атрибута у ноды * * @public * @function has_base_attribute * @param {v2.string} attributeName * @returns {boolean} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.has_base_attribute = function(attributeName) { }; /** * Добавляет динамические атрибуты в ноду * * @public * @function add * @param {v2.vc} attributes список атрибутов * @returns {v2.model_type} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.add = function(attributes) { }; /** * Удаляет динамические атрибуты из ноды * * @public * @function remove * @param {v2.set(v2.string)} attributes * @returns {v2.model_type} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.remove = function(attributes) { }; }