"use strict";
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const shared_esmBundler = require("../../../@vue/shared/dist/shared.esm-bundler.js");
const isNil = require("../../../lodash-es/isNil.js");
const isUndefined = (val) => val === void 0;
const isBoolean = (val) => typeof val === "boolean";
const isNumber = (val) => typeof val === "number";
const isEmpty = (val) => !val && val !== 0 || shared_esmBundler.isArray(val) && val.length === 0 || shared_esmBundler.isObject(val) && !Object.keys(val).length;
const isElement = (e) => {
  if (typeof Element === "undefined") return false;
  return e instanceof Element;
};
const isPropAbsent = (prop) => isNil.default(prop);
const isStringNumber = (val) => {
  if (!shared_esmBundler.isString(val)) return false;
  return !Number.isNaN(Number(val));
};
const isWindow = (val) => val === window;
exports.isArray = shared_esmBundler.isArray;
exports.isDate = shared_esmBundler.isDate;
exports.isFunction = shared_esmBundler.isFunction;
exports.isObject = shared_esmBundler.isObject;
exports.isPlainObject = shared_esmBundler.isPlainObject;
exports.isPromise = shared_esmBundler.isPromise;
exports.isString = shared_esmBundler.isString;
exports.isBoolean = isBoolean;
exports.isElement = isElement;
exports.isEmpty = isEmpty;
exports.isNumber = isNumber;
exports.isPropAbsent = isPropAbsent;
exports.isStringNumber = isStringNumber;
exports.isUndefined = isUndefined;
exports.isWindow = isWindow;
