"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 ValidationExceptions_exports = {};
__export(ValidationExceptions_exports, {
  ValidationExceptions: () => ValidationExceptions
});
module.exports = __toCommonJS(ValidationExceptions_exports);
/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
var ValidationExceptions;
((ValidationExceptions2) => {
  ValidationExceptions2.AllowedEmptyEnums = /* @__PURE__ */ new Set([
    // Global types defined as enum but without specific fields
    "tag",
    // Extensions of ModeBase may define mode tags but the base cluster does not
    "ModeBase.ModeTagStruct.value",
    // This is the tag ID and is namespaced so we can't represent with a single enum
    "ModeSelect.SemanticTagStruct.value",
    // This is one of multiple *EffectVariant fields (depending on the EffectIdentifier field).  We could override
    // with a union type but then validation wouldn't be entirely accurate anyway, so we just leave as a bare uint16
    "OnOff.offWithEffect.effectVariant",
    // These are defined as broad ranges without specific values
    "OperationalState.OperationalStateEnum",
    // This is also defined in ranges
    "OperationalState.events.operationCompletion.completionErrorCode",
    // These have some values defined but we place in a separate enum so TS allows other values as well
    "OperationalState.ErrorStateEnum"
  ]);
})(ValidationExceptions || (ValidationExceptions = {}));
//# sourceMappingURL=ValidationExceptions.js.map
