/**
 * @license
 * Copyright 2022-2025 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { ElementTag } from "../common/index.js";
import { BaseElement } from "./BaseElement.js";
function RequirementElement(definition, ...children) {
  return {
    ...BaseElement(RequirementElement.Tag, definition, children),
    tag: RequirementElement.Tag
  };
}
((RequirementElement2) => {
  RequirementElement2.Tag = ElementTag.Requirement;
  let ElementType;
  ((ElementType2) => {
    ElementType2["ClientCluster"] = "clientCluster";
    ElementType2["ServerCluster"] = "serverCluster";
    ElementType2["Feature"] = "feature";
    ElementType2["Attribute"] = "attribute";
    ElementType2["Command"] = "command";
    ElementType2["Event"] = "event";
    ElementType2["CommandField"] = "commandField";
    ElementType2["DeviceType"] = "deviceType";
  })(ElementType = RequirementElement2.ElementType || (RequirementElement2.ElementType = {}));
})(RequirementElement || (RequirementElement = {}));
export {
  RequirementElement
};
//# sourceMappingURL=RequirementElement.js.map
