/** * Tests if a given value is iterable using for..of or Array.from() * * @param {any} input * @param {boolean} strict * * @returns {boolean} * @category Types */ export function isIterable(input: any, strict?: boolean): boolean; /** * Tests if a given value is a number or is safely coerced to a number. * * @param {any} input Value to test * * @returns {boolean} * @category Types */ export function isNumeric(input: any): boolean; /** * Tests if a given value is a JavaScript primitive (strings, numbers, booleans) * * @function isPrimitive * @param {any} input Value to test * @returns {boolean} * @category Types */ export function isPrimitive(input: any): boolean; /** * Tests if a given value is an object, strictly or loosely * * @param {any} input Value to test * @param {boolean} [strict] If true, will only return true for plain objects with no prototypes. * This will exclude Functions and any result of Object.create(). * * @returns {boolean} * @category Types */ export function isObject(input: any, strict?: boolean): boolean; /** * Tests if a given value is a collection that can be mapped by our utilities * * @param {any} collection Value to be tested * @param {boolean} listsOK Pass false to exclude Arrays and Sets as valid. * * @returns {boolean} * @category Types */ export function isMappable(collection: any, listsOK?: boolean): boolean; /** * Returns the total values within a given collection, regardless of collection type. * * @param {Collection} collection Collection to be measured * * @returns {number} * @category Types */ export function sizeOf(collection: Collection): number; /** * Tests if a given value is truthy, with extra logic to validate dates. * * @param {any} value Value to be tested * @param {boolean} [deep] If true, the function will return false for empty collections. * * @returns {boolean} * @category Types */ export function isTruthy(value: any, deep?: boolean): boolean; /** * Tests if a given value is falsey, with extra logic to validate dates. * * @param {any} value Value to be tested * @param {boolean} [deep] If true, the function will return false for empty collections. * * @returns {boolean} * @category Types */ export function isFalsey(value: any, deep?: boolean): boolean; /** * Tests if the first value is greater than the second value, accepting any type * * @param {any} a * @param {any} b * * @returns {boolean} * @category Types */ export function gt(a: any, b: any): boolean; /** * Tests if the first value is less than the second value, accepting any type * * @param {any} a * @param {any} b * * @returns {boolean} * @category Types */ export function lt(a: any, b: any): boolean; /** * A collection of values that can be iterated over * For strings, the string is treated as a collection of single characters. * * @typedef {string|Array|Map|Set|Iterator|Iterable|object} Collection * @global */ /** * Tests if a given value is an Array * * @function isArray * @param {any} input Value to test * @returns {boolean} * @category Types */ export const isArray: (arg: any) => arg is any[]; export function isNumber(input: any): boolean; export function isBoolean(input: any): boolean; export function isString(input: any): boolean; export function isFunction(input: any): boolean; export function isNull(input: any): boolean; export function isUndefined(input: any): boolean; export function isUndefinedOrNull(input: any): boolean; export function isNotUndefinedOrNull(input: any): boolean; export function isMap(input: any): boolean; export function isSet(input: any): boolean; export function isDate(input: any): boolean; export function isRegExp(input: any): boolean; export function isTrue(input: any): boolean; export function isFalse(input: any): boolean; export function isList(input: any): boolean; export function isDict(input: any): boolean; export function isIterator(input: any): boolean; export function isPromise(input: any): boolean; export function isGenerator(input: any): boolean; /** * A collection of values that can be iterated over * For strings, the string is treated as a collection of single characters. */ export type Collection = string | any[] | Map | Set | Iterator | Iterable | object;