/**
 * @license
 * Copyright 2022-2024 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { MatterDefinition } from "../MatterDefinition.js";
import { DeviceTypeElement as DeviceType, RequirementElement as Requirement } from "../../elements/index.js";
const ControlBridgeDt = DeviceType({
  name: "ControlBridge",
  id: 2112,
  category: "Switches and Controls",
  classification: "simple",
  details: "A Control Bridge is a controller device that, when bound to a lighting device such as an Extended Color Light, is capable of being used to switch the device on or off, adjust the intensity of the light being emitted and adjust the color of the light being emitted. In addition, a Control Bridge device is capable of being used for setting scenes.",
  xref: { document: "device", section: "6.4" },
  children: [
    Requirement({
      name: "Descriptor",
      id: 29,
      element: "serverCluster",
      children: [Requirement({ name: "DeviceTypeList", default: [{ deviceType: 2112, revision: 3 }], element: "attribute" })]
    }),
    Requirement({
      name: "Identify",
      id: 3,
      conformance: "M",
      element: "serverCluster",
      xref: { document: "device", section: "6.4.4" }
    }),
    Requirement({
      name: "Identify",
      id: 3,
      conformance: "M",
      element: "clientCluster",
      xref: { document: "device", section: "6.4.4" }
    }),
    Requirement({
      name: "Groups",
      id: 4,
      conformance: "M",
      element: "clientCluster",
      xref: { document: "device", section: "6.4.4" }
    }),
    Requirement({
      name: "ScenesManagement",
      id: 98,
      conformance: "P, M",
      element: "clientCluster",
      xref: { document: "device", section: "6.4.4" }
    }),
    Requirement({
      name: "OnOff",
      id: 6,
      conformance: "M",
      element: "clientCluster",
      xref: { document: "device", section: "6.4.4" }
    }),
    Requirement({
      name: "LevelControl",
      id: 8,
      conformance: "M",
      element: "clientCluster",
      xref: { document: "device", section: "6.4.4" }
    }),
    Requirement({
      name: "ColorControl",
      id: 768,
      conformance: "M",
      element: "clientCluster",
      xref: { document: "device", section: "6.4.4" }
    }),
    Requirement({
      name: "IlluminanceMeasurement",
      id: 1024,
      conformance: "O",
      element: "clientCluster",
      xref: { document: "device", section: "6.4.4" }
    }),
    Requirement({
      name: "OccupancySensing",
      id: 1030,
      conformance: "O",
      element: "clientCluster",
      xref: { document: "device", section: "6.4.4" }
    })
  ]
});
MatterDefinition.children.push(ControlBridgeDt);
export {
  ControlBridgeDt
};
//# sourceMappingURL=ControlBridgeDT.js.map
