"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 power_source_configuration_exports = {};
__export(power_source_configuration_exports, {
  PowerSourceConfiguration: () => PowerSourceConfiguration,
  PowerSourceConfigurationCluster: () => PowerSourceConfigurationCluster
});
module.exports = __toCommonJS(power_source_configuration_exports);
var import_MutableCluster = require("../cluster/mutation/MutableCluster.js");
var import_Cluster = require("../cluster/Cluster.js");
var import_TlvArray = require("../tlv/TlvArray.js");
var import_EndpointNumber = require("../datatype/EndpointNumber.js");
var import_ClusterRegistry = require("../cluster/ClusterRegistry.js");
/**
 * @license
 * Copyright 2022-2025 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
var PowerSourceConfiguration;
((PowerSourceConfiguration2) => {
  PowerSourceConfiguration2.ClusterInstance = (0, import_MutableCluster.MutableCluster)({
    id: 46,
    name: "PowerSourceConfiguration",
    revision: 1,
    attributes: {
      /**
       * This list shall contain the set of all power sources capable of participating in the power system of this
       * Node. Each entry in the list shall be the endpoint number of an endpoint having a Power Source cluster,
       * which corresponds to a physical power source. The endpoint number shall be unique within the list.
       *
       * The order of power sources on a Node is defined by the Order attribute of its associated Power Source
       * cluster provided on the endpoint. List entries shall be sorted in increasing order, that is, an entry
       * with a lower order shall have a lower index than any entry with a higher order. Multiple entries may have
       * the same order, there are no restrictions on their relative sorting.
       *
       * @see {@link MatterSpecification.v142.Core} § 11.6.4.1
       */
      sources: (0, import_Cluster.Attribute)(0, (0, import_TlvArray.TlvArray)(import_EndpointNumber.TlvEndpointNumber, { maxLength: 6 }), { persistent: true, default: [] })
    }
  });
  PowerSourceConfiguration2.Cluster = PowerSourceConfiguration2.ClusterInstance;
  PowerSourceConfiguration2.Complete = PowerSourceConfiguration2.Cluster;
})(PowerSourceConfiguration || (PowerSourceConfiguration = {}));
const PowerSourceConfigurationCluster = PowerSourceConfiguration.Cluster;
import_ClusterRegistry.ClusterRegistry.register(PowerSourceConfiguration.Complete);
//# sourceMappingURL=power-source-configuration.js.map
