declare function addLeadingSlash(value: string): string; declare function arrayToRecord(arr: string[]): Record; declare function assign(target: T, ...sources: unknown[]): T; declare function castArray(value: T | T[]): T[]; declare function cloneDeep(value: T): T; declare function compact(array: T[] | null | undefined): T[]; declare function difference(array: T[] | null | undefined, ...values: Array): T[]; declare function eachRight(collection: T[] | null | undefined, iteratee: (value: T, key: number, collection: T[]) => unknown): T[] | null | undefined; declare function eachRight(collection: T | null | undefined, iteratee: (value: T[keyof T], key: string, collection: T) => unknown): T | null | undefined; declare function filter(collection: T[] | Record | null | undefined, predicate: (value: T, key: number | string) => boolean): T[]; declare function find(collection: T[] | Record | null | undefined, predicate: (value: T, key: number | string) => boolean): T | undefined; declare function flatten(array: Array | null | undefined): T[]; declare function flattenDeep(array: unknown[]): T[]; declare function forEach(collection: T[] | null | undefined, iteratee: (value: T, key: number, collection: T[]) => unknown): T[] | null | undefined; declare function forEach(collection: T | null | undefined, iteratee: (value: T[keyof T], key: string, collection: T) => unknown): T | null | undefined; type PropertyPath = string | number | Array; declare function get(object: unknown, path: PropertyPath, defaultValue?: T): T; declare function groupBy(collection: T[] | Record | null | undefined, iteratee: string | number | ((value: T, key: number | string, collection: T[] | Record) => unknown)): Record; declare function hasOwn(value: unknown, key: TKey): value is Record; declare function intersection(...arrays: Array): T[]; declare function intersectionBy(...args: unknown[]): T[]; declare function isArray(value: unknown): value is unknown[]; declare function isBoolean(value: unknown): value is boolean; declare function isEmpty(value: unknown): boolean; declare function isEqual(left: unknown, right: unknown): boolean; declare function isFunction(value: unknown): value is (...args: unknown[]) => unknown; declare function isMatch(object: unknown, source: unknown): boolean; declare function isNaNValue(value: unknown): boolean; declare function isNil(value: unknown): value is null | undefined; declare function isNumber(value: unknown): value is number; declare function isObject(value: unknown): value is object; declare function isPlainObject(value: unknown): value is Record; declare function isPromise(value: unknown): value is PromiseLike; declare function isString(value: unknown): value is string; declare function isUndefined(value: unknown): value is undefined; declare function join(array: unknown[] | null | undefined, separator?: string): string; declare function keys(value: unknown): string[]; declare function map(collection: T[] | Record | null | undefined, iteratee: string | number | ((value: T, key: number | string, collection: T[] | Record) => TResult)): TResult[]; declare function mapKeys(object: Record | null | undefined, iteratee: (value: TValue, key: string, object: Record) => string): Record; declare function mapValues(object: Record | null | undefined, iteratee: (value: TValue, key: string, object: Record) => TResult): Record; declare function mapValuesAsync, TResult>(object: TObject, asyncFn: (value: TObject[keyof TObject], key: string, object: TObject) => Promise | TResult): Promise>; declare function noop(): void; declare function omit(object: T, paths: PropertyPath | PropertyPath[]): Partial; declare function omitBy(object: Record | null | undefined, predicate: (value: TValue, key: string, object: Record) => boolean): Record; declare function parseBooleanString(str: string | undefined, defaultValue?: boolean): boolean | undefined; declare function orderBy(collection: T[] | null | undefined, iteratees?: Array unknown)>, orders?: string[]): T[]; declare function padEnd(value: unknown, length?: number, chars?: string): string; declare function pick(object: T, paths: PropertyPath | PropertyPath[]): Partial; declare function pickBy(object: Record | null | undefined, predicate: (value: TValue, key: string, object: Record) => boolean): Record; declare function normalizeUrlPath(url: string): string; declare function reduce(collection: T[] | null | undefined, iteratee: (accumulator: TResult, value: T, key: number, collection: T[]) => TResult, accumulator?: TResult): TResult; declare function reduce(collection: Record | null | undefined, iteratee: (accumulator: TResult, value: T, key: string, collection: Record) => TResult, accumulator?: TResult): TResult; declare function removeConsecutiveSlashesFromUrl(url: string): string; declare function set(object: T, path: PropertyPath, value: unknown): T; declare function startCase(value: unknown): string; declare function sum(values: number[] | null | undefined): number; declare function sumBy(collection: T[] | null | undefined, iteratee: string | number | ((value: T, key: number, collection: T[]) => number | undefined)): number; declare function toAsyncFn(fn?: ((this: unknown, ...args: TArgs) => TResult | PromiseLike) | null, defaultValue?: TResult): (this: unknown, ...args: TArgs) => PromiseLike | Promise; declare function toStringRecord(value: unknown): Record | undefined; declare function uniq(array: T[] | null | undefined): T[]; declare function uniqBy(array: T[] | null | undefined, iteratee?: string | number | ((value: T, key: number, collection: T[]) => unknown)): T[]; declare function upperCase(value: unknown): string; export { addLeadingSlash, arrayToRecord, assign, castArray, cloneDeep, compact, difference, eachRight, filter, find, flatten, flattenDeep, forEach, get, groupBy, hasOwn, intersection, intersectionBy, isArray, isBoolean, isEmpty, isEqual, isFunction, isMatch, isNaNValue as isNaN, isNil, isNumber, isObject, isPlainObject, isPromise, isString, isUndefined, join, keys, map, mapKeys, mapValues, mapValuesAsync, noop, normalizeUrlPath, omit, omitBy, orderBy, padEnd, parseBooleanString, pick, pickBy, reduce, removeConsecutiveSlashesFromUrl, set, startCase, sum, sumBy, toAsyncFn, toStringRecord, uniq, uniqBy, upperCase };