"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 string_exports = {};
__export(string_exports, {
  string: () => string
});
module.exports = __toCommonJS(string_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 string = (0, import_elements.DatatypeElement)({
  name: "string",
  type: "octstr",
  description: "Character String",
  isSeed: true,
  metatype: "string",
  details: "The character string data type is derived from an octet string. The octets shall be characters with UTF-8 encoding. An instance of this data type shall NOT contain truncated code points.\nNote that the character string type is a bounded sequence of characters whose size bound format is not specified in the data model, but rather a property of the underlying encoding. Therefore, no assumptions are to be made about the presence or absence of a length prefix or null-terminator byte, or other implementation considerations.\nIt is recommended to define constraints on the maximum possible string length.\nIf at least one of the code points within the string has value 31 (0x1F), which is Unicode INFORMATION SEPARATOR 1 and ASCII Unit Separator, then any client making use of the string shall only consider the code points that appear before the first INFORMATION SEPARATOR 1 as being the textual information carried by the string. Any comparison between such a string and other strings shall use the textual component before the first INFORMATION SEPARATOR 1. The remainder of the character string after a first INFORMATION SEPARATOR 1 is reserved for future use by this specification. Implementations of this version of the specification shall NOT produce character strings containing INFORMATION SEPARATOR 1.",
  xref: { document: "core", section: "7.18.2.36" }
});
import_MatterDefinition.MatterDefinition.children.push(string);
//# sourceMappingURL=string.js.map
