/** * Language utility functions for type checking and validation */ import { isObjectLike } from "../internal/utils.js"; /** * Checks if value is classified as an Array object. * * @param value - The value to check * @returns Returns true if value is an array, else false * * @example * isArray([1, 2, 3]); * // => true * * isArray('abc'); * // => false */ export declare function isArray(value: unknown): value is unknown[]; /** * Checks if value is array-like. * * @param value - The value to check * @returns Returns true if value is array-like, else false * * @example * isArrayLike([1, 2, 3]); * // => true * * isArrayLike('abc'); * // => true * * isArrayLike(Function); * // => false */ export declare function isArrayLike(value: unknown): boolean; /** * Checks if value is array-like object. * * @param value - The value to check * @returns Returns true if value is an array-like object, else false * * @example * isArrayLikeObject([1, 2, 3]); * // => true * * isArrayLikeObject('abc'); * // => false */ export declare function isArrayLikeObject(value: unknown): boolean; /** * Checks if value is classified as a boolean primitive or object. * * @param value - The value to check * @returns Returns true if value is a boolean, else false * * @example * isBoolean(false); * // => true * * isBoolean(null); * // => false */ export declare function isBoolean(value: unknown): value is boolean; /** * Checks if value is classified as a Date object. * * @param value - The value to check * @returns Returns true if value is a date object, else false * * @example * isDate(new Date); * // => true * * isDate('Mon April 23 2012'); * // => false */ export declare function isDate(value: unknown): value is Date; /** * Checks if value is an empty object, collection, map, or set. * * @param value - The value to check * @returns Returns true if value is empty, else false * * @example * isEmpty(null); * // => true * * isEmpty(true); * // => true * * isEmpty(1); * // => true * * isEmpty([1, 2, 3]); * // => false * * isEmpty({ 'a': 1 }); * // => false */ export declare function isEmpty(value: unknown): boolean; /** * Checks if value is an Error, EvalError, RangeError, ReferenceError, * SyntaxError, TypeError, or URIError object. * * @param value - The value to check * @returns Returns true if value is an error object, else false * * @example * isError(new Error); * // => true * * isError(Error); * // => false */ export declare function isError(value: unknown): value is Error; /** * Checks if value is a finite primitive number. * * @param value - The value to check * @returns Returns true if value is a finite number, else false * * @example * isFinite(3); * // => true * * isFinite(Number.MIN_VALUE); * // => true * * isFinite(Infinity); * // => false * * isFinite('3'); * // => false */ export declare function isFinite(value: unknown): value is number; /** * Checks if value is classified as a Function object. * * @param value - The value to check * @returns Returns true if value is a function, else false * * @example * isFunction(() => {}); * // => true * * isFunction(/abc/); * // => false */ export declare function isFunction(value: unknown): value is Function; /** * Checks if value is an integer. * * @param value - The value to check * @returns Returns true if value is an integer, else false * * @example * isInteger(3); * // => true * * isInteger(Number.MIN_VALUE); * // => false * * isInteger(Infinity); * // => false * * isInteger('3'); * // => false */ export declare function isInteger(value: unknown): value is number; /** * Checks if value is a valid array-like length. * * @param value - The value to check * @returns Returns true if value is a valid length, else false * * @example * isLength(3); * // => true * * isLength(Number.MIN_VALUE); * // => false * * isLength(Infinity); * // => false * * isLength('3'); * // => false */ export declare function isLength(value: unknown): boolean; /** * Checks if value is classified as a Map object. * * @param value - The value to check * @returns Returns true if value is a map, else false * * @example * isMap(new Map); * // => true * * isMap(new WeakMap); * // => false */ export declare function isMap(value: unknown): value is Map; /** * Checks if value is NaN. * * @param value - The value to check * @returns Returns true if value is NaN, else false * * @example * isNaN(NaN); * // => true * * isNaN(new Number(NaN)); * // => true * * isNaN(undefined); * // => false */ export declare function isNaN(value: unknown): boolean; /** * Checks if value is null. * * @param value - The value to check * @returns Returns true if value is null, else false * * @example * isNull(null); * // => true * * isNull(void 0); * // => false */ export declare function isNull(value: unknown): value is null; /** * Checks if value is null or undefined. * * @param value - The value to check * @returns Returns true if value is nullish, else false * * @example * isNil(null); * // => true * * isNil(void 0); * // => true * * isNil(NaN); * // => false */ export declare function isNil(value: unknown): value is null | undefined; /** * Checks if value is classified as a Number primitive or object. * * @param value - The value to check * @returns Returns true if value is a number, else false * * @example * isNumber(3); * // => true * * isNumber(Number.MIN_VALUE); * // => true * * isNumber(Infinity); * // => true * * isNumber('3'); * // => false */ export declare function isNumber(value: unknown): value is number; /** * Checks if value is the language type of Object. * * @param value - The value to check * @returns Returns true if value is an object, else false * * @example * isObject({}); * // => true * * isObject([1, 2, 3]); * // => true * * isObject(() => {}); * // => true * * isObject(null); * // => false */ export declare function isObject(value: unknown): value is object; /** * Checks if value is object-like. * * @param value - The value to check * @returns Returns true if value is object-like, else false * * @example * isObjectLike({}); * // => true * * isObjectLike([1, 2, 3]); * // => true * * isObjectLike(() => {}); * // => false * * isObjectLike(null); * // => false */ export { isObjectLike }; /** * Checks if value is a plain object. * * @param value - The value to check * @returns Returns true if value is a plain object, else false * * @example * isPlainObject({}); * // => true * * isPlainObject([1, 2, 3]); * // => false * * isPlainObject(() => {}); * // => false */ export declare function isPlainObject(value: unknown): value is Record; /** * Checks if value is classified as a RegExp object. * * @param value - The value to check * @returns Returns true if value is a regexp, else false * * @example * isRegExp(/abc/); * // => true * * isRegExp('/abc/'); * // => false */ export declare function isRegExp(value: unknown): value is RegExp; /** * Checks if value is a safe integer. * * @param value - The value to check * @returns Returns true if value is a safe integer, else false * * @example * isSafeInteger(3); * // => true * * isSafeInteger(Number.MIN_VALUE); * // => false * * isSafeInteger(Infinity); * // => false * * isSafeInteger('3'); * // => false */ export declare function isSafeInteger(value: unknown): value is number; /** * Checks if value is classified as a Set object. * * @param value - The value to check * @returns Returns true if value is a set, else false * * @example * isSet(new Set); * // => true * * isSet(new WeakSet); * // => false */ export declare function isSet(value: unknown): value is Set; /** * Checks if value is classified as a String primitive or object. * * @param value - The value to check * @returns Returns true if value is a string, else false * * @example * isString('abc'); * // => true * * isString(1); * // => false */ export declare function isString(value: unknown): value is string; /** * Checks if value is classified as a Symbol primitive or object. * * @param value - The value to check * @returns Returns true if value is a symbol, else false * * @example * isSymbol(Symbol.iterator); * // => true * * isSymbol('abc'); * // => false */ export declare function isSymbol(value: unknown): value is symbol; /** * Checks if value is undefined. * * @param value - The value to check * @returns Returns true if value is undefined, else false * * @example * isUndefined(void 0); * // => true * * isUndefined(null); * // => false */ export declare function isUndefined(value: unknown): value is undefined; /** * Checks if value is classified as a WeakMap object. * * @param value - The value to check * @returns Returns true if value is a weak map, else false * * @example * isWeakMap(new WeakMap); * // => true * * isWeakMap(new Map); * // => false */ export declare function isWeakMap(value: unknown): value is WeakMap; /** * Checks if value is classified as a WeakSet object. * * @param value - The value to check * @returns Returns true if value is a weak set, else false * * @example * isWeakSet(new WeakSet); * // => true * * isWeakSet(new Set); * // => false */ export declare function isWeakSet(value: unknown): value is WeakSet;