"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
  if (from && typeof from === "object" || typeof from === "function") {
    for (let key of __getOwnPropNames(from))
      if (!__hasOwnProp.call(to, key) && key !== except)
        __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  }
  return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var AggregatorDT_exports = {};
__export(AggregatorDT_exports, {
  AggregatorDt: () => AggregatorDt
});
module.exports = __toCommonJS(AggregatorDT_exports);
var import_MatterDefinition = require("../MatterDefinition.js");
var import_elements = require("../../elements/index.js");
/**
 * @license
 * Copyright 2022-2025 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
const AggregatorDt = (0, import_elements.DeviceTypeElement)(
  {
    name: "Aggregator",
    id: 14,
    category: "Generic",
    classification: "simple",
    details: 'This device type aggregates endpoints as a collection. Clusters on the endpoint indicating this device type provide functionality for the collection of descendent endpoints present in the PartsList of the endpoint\u2019s descriptor, for example the Actions cluster.\nThe purpose of this device type is to aggregate functionality for a collection of endpoints. The definition of the collection or functionality is not defined here.\nWhen using this device type as a collection of bridged nodes, please see the "Bridge" section in the System Model specification.',
    xref: { document: "device", section: "11.2" }
  },
  (0, import_elements.RequirementElement)(
    { name: "Descriptor", id: 29, element: "serverCluster" },
    (0, import_elements.RequirementElement)({ name: "DeviceTypeList", default: [{ deviceType: 14, revision: 1 }], element: "attribute" })
  ),
  (0, import_elements.RequirementElement)({
    name: "Actions",
    id: 37,
    conformance: "O",
    element: "serverCluster",
    xref: { document: "device", section: "11.2.4" }
  }),
  (0, import_elements.RequirementElement)({
    name: "Identify",
    id: 3,
    conformance: "O",
    element: "serverCluster",
    xref: { document: "device", section: "11.2.4" }
  })
);
import_MatterDefinition.MatterDefinition.children.push(AggregatorDt);
//# sourceMappingURL=AggregatorDT.js.map
