/**
 * @license
 * Copyright 2022-2026 Matter.js Authors
 * SPDX-License-Identifier: Apache-2.0
 */
import { Bytes } from "#util/Bytes.js";
class DnssdParameters {
  #raw;
  constructor(raw) {
    this.#raw = raw;
  }
  get(key) {
    const v = this.#raw.get(key);
    return v === void 0 ? void 0 : Bytes.toString(v);
  }
  /**
   * The original bytes for the given key, or `undefined` if absent.
   */
  raw(key) {
    return this.#raw.get(key);
  }
  has(key) {
    return this.#raw.has(key);
  }
  get size() {
    return this.#raw.size;
  }
  keys() {
    return this.#raw.keys();
  }
  *values() {
    for (const v of this.#raw.values()) {
      yield Bytes.toString(v);
    }
  }
  *entries() {
    for (const [k, v] of this.#raw) {
      yield [k, Bytes.toString(v)];
    }
  }
  [Symbol.iterator]() {
    return this.entries();
  }
  forEach(cb, thisArg) {
    for (const [k, v] of this.entries()) {
      cb.call(thisArg, v, k, this);
    }
  }
}
export {
  DnssdParameters
};
//# sourceMappingURL=DnssdParameters.js.map
