/**
 * @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 DishwasherDt = DeviceType({
  name: "Dishwasher",
  id: 117,
  category: "Appliances",
  classification: "simple",
  details: "A dishwasher is a device that is generally installed in residential homes and is capable of washing dishes, cutlery, and other items associate with food preparation and consumption. The device can be permanently installed or portable and can have variety of filling and draining methods.",
  xref: { document: "device", section: "13.5" },
  children: [
    Requirement({
      name: "Descriptor",
      id: 29,
      element: "serverCluster",
      children: [Requirement({ name: "DeviceTypeList", default: [{ deviceType: 117, revision: 1 }], element: "attribute" })]
    }),
    Requirement({
      name: "Identify",
      id: 3,
      conformance: "O",
      element: "serverCluster",
      xref: { document: "device", section: "13.5.4" }
    }),
    Requirement({
      name: "OnOff",
      id: 6,
      conformance: "O",
      element: "serverCluster",
      xref: { document: "device", section: "13.5.4" },
      children: [Requirement({ name: "DEADFRONTBEHAVIOR", conformance: "M", element: "feature" })]
    }),
    Requirement({
      name: "TemperatureControl",
      id: 86,
      conformance: "O",
      element: "serverCluster",
      xref: { document: "device", section: "13.5.4" }
    }),
    Requirement({
      name: "DishwasherMode",
      id: 89,
      conformance: "O",
      element: "serverCluster",
      xref: { document: "device", section: "13.5.4" },
      children: [
        Requirement({ name: "StartUpMode", conformance: "X", element: "attribute" }),
        Requirement({ name: "ONOFF", conformance: "X", element: "feature" })
      ]
    }),
    Requirement({
      name: "DishwasherAlarm",
      id: 93,
      conformance: "O",
      element: "serverCluster",
      xref: { document: "device", section: "13.5.4" }
    }),
    Requirement({
      name: "OperationalState",
      id: 96,
      conformance: "M",
      element: "serverCluster",
      xref: { document: "device", section: "13.5.4" }
    })
  ]
});
MatterDefinition.children.push(DishwasherDt);
export {
  DishwasherDt
};
//# sourceMappingURL=DishwasherDT.js.map
