"use client";
class f extends Map {
  constructor(t, s = i) {
    if (super(), Object.defineProperties(this, { _intern: { value: /* @__PURE__ */ new Map() }, _key: { value: s } }), t != null) for (const [r, u] of t) this.set(r, u);
  }
  get(t) {
    return super.get(n(this, t));
  }
  has(t) {
    return super.has(n(this, t));
  }
  set(t, s) {
    return super.set(o(this, t), s);
  }
  delete(t) {
    return super.delete(c(this, t));
  }
}
function n({ _intern: e, _key: t }, s) {
  const r = t(s);
  return e.has(r) ? e.get(r) : s;
}
function o({ _intern: e, _key: t }, s) {
  const r = t(s);
  return e.has(r) ? e.get(r) : (e.set(r, s), s);
}
function c({ _intern: e, _key: t }, s) {
  const r = t(s);
  return e.has(r) && (s = e.get(r), e.delete(r)), s;
}
function i(e) {
  return e !== null && typeof e == "object" ? e.valueOf() : e;
}
export {
  f as InternMap
};
