function g(t) {
  try {
    JSON.parse(t);
  } catch {
    return !1;
  }
  return !0;
}
function h(t) {
  return [Object, Array].includes(t?.constructor) && !Object.entries(t || {}).length;
}
function c(t) {
  return typeof t == "function";
}
function w(t, n = !1) {
  return { key: n ? Symbol.for(t) : Symbol(t) };
}
function y() {
  return typeof window < "u";
}
function d() {
  return y() && location.hostname.includes("localhost");
}
function l(t) {
  return typeof t == "symbol" || typeof t == "object" && Object.prototype.toString.call(t) === "[object Symbol]";
}
function N(t) {
  return t?.key && l(t.key);
}
function i(t, n) {
  return t instanceof n;
}
function S(t) {
  return typeof t == "string";
}
function E(t) {
  return typeof t == "number" && Number.isFinite(t);
}
function I(t) {
  return typeof t == "boolean";
}
function T(t) {
  return typeof t == "bigint";
}
function p(t) {
  return Object.prototype.toString.call(t) === "[object Object]";
}
function b(t) {
  return typeof t > "u";
}
function u(t) {
  return t === null;
}
function a(t) {
  return u(t) || b(t);
}
function O(t) {
  return Array.isArray(t);
}
function P(t) {
  if (t == null || typeof t != "object")
    return !1;
  const n = Object.getPrototypeOf(t);
  if (n === null)
    return !0;
  const e = Object.hasOwnProperty.call(n, "constructor") && n.constructor;
  return typeof e == "function" && e instanceof e && Function.prototype.toString.call(e) === Function.prototype.toString.call(Object);
}
function A(t) {
  return t instanceof Promise || p(t) && !u(t) && "then" in t && c(t.then) && "catch" in t && c(t.catch) && "finally" in t && c(t.finally);
}
function D(t) {
  return i(t, Date) && Number.isFinite(t.getTime());
}
function F(t) {
  return i(t, Error);
}
function R(t) {
  return i(t, Map);
}
function k(t) {
  return i(t, Set);
}
function m(t) {
  return i(t, RegExp);
}
function x(t) {
  return t == null ? !1 : typeof (typeof t == "object" ? t : Object(t))[Symbol.iterator] == "function";
}
function C(t) {
  return !a(t);
}
function L(t, n = "Assertion failed", e) {
  t || j(n, e);
}
function j(t, n) {
  throw new Error(t, n);
}
function M(t) {
  if (t === null)
    return "null";
  if (t !== t)
    return "nan";
  if (t === Number.POSITIVE_INFINITY || t === Number.NEGATIVE_INFINITY)
    return "infinity";
  const n = typeof t;
  if (n !== "object" && n !== "function")
    return n.toLowerCase();
  if (O(t))
    return "array";
  if (i(t, Date))
    return "date";
  if (m(t))
    return "regexp";
  if (c(t))
    return "function";
  const r = Object.prototype.toString.call(t).match(/\[object (\w+)\]/), [o, f] = r || [];
  return f && r && r.length === 2 ? f.toLowerCase() : "unknown";
}
function _(t, n) {
  if (typeof t != "object" || t === null)
    throw new Error("The source must be a non-null object");
  const e = Object.create(Object.getPrototypeOf(t));
  return n.forEach((r) => {
    r in t && Reflect.set(e, r, Reflect.get(t, r));
  }), e;
}
function q(t, n) {
  if (typeof t != "object" || t === null)
    throw new Error("The source must be a non-null object");
  const e = new Set(n), r = Object.create(Object.getPrototypeOf(t));
  return Reflect.ownKeys(t).forEach((o) => {
    e.has(o) || Reflect.set(r, o, Reflect.get(t, o));
  }), r;
}
function s(t, n) {
  const e = Object.keys(t), r = Object.keys(n);
  if (e.length !== r.length)
    return !1;
  for (const o of e) {
    if (!n.hasOwnProperty(o))
      return !1;
    if (typeof t[o] == "object" && typeof n[o] == "object") {
      if (!s(t[o], n[o]))
        return !1;
    } else if (t[o] !== n[o])
      return !1;
  }
  return !0;
}
function B(t, n, e) {
  return e ? s(t, n) : t === n || Number.isNaN(t) && Number.isNaN(n);
}
function G(t, n) {
  const e = Object.getOwnPropertyDescriptor(t, n);
  return e ? e.get !== void 0 : !1;
}
export {
  L as assert,
  w as createSymbolID,
  s as deepEqual,
  M as getTypeOf,
  O as isArray,
  T as isBigInt,
  I as isBoolean,
  D as isDate,
  C as isDefined,
  h as isEmpty,
  F as isError,
  c as isFunction,
  G as isGetter,
  i as isInstanceOf,
  x as isIterable,
  d as isLocalhost,
  R as isMap,
  a as isNil,
  u as isNull,
  E as isNumber,
  p as isObject,
  P as isPlainObject,
  A as isPromise,
  m as isRegExp,
  k as isSet,
  S as isString,
  g as isStringified,
  l as isSymbol,
  N as isSymbolID,
  b as isUndefined,
  y as isWindow,
  B as normalEqual,
  q as omit,
  _ as pick,
  j as raise
};
//# sourceMappingURL=utilities.mjs.map
