import { castArray } from "./array/castArray.mjs";
import { chunk } from "./array/chunk.mjs";
import { compact } from "./array/compact.mjs";
import { concat } from "./array/concat.mjs";
import { countBy } from "./array/countBy.mjs";
import { difference } from "./array/difference.mjs";
import { differenceBy } from "./array/differenceBy.mjs";
import { differenceWith } from "./array/differenceWith.mjs";
import { drop } from "./array/drop.mjs";
import { dropRight } from "./array/dropRight.mjs";
import { dropRightWhile } from "./array/dropRightWhile.mjs";
import { dropWhile } from "./array/dropWhile.mjs";
import { forEach } from "./array/forEach.mjs";
import { forEachRight } from "./array/forEachRight.mjs";
import { every } from "./array/every.mjs";
import { fill } from "./array/fill.mjs";
import { filter } from "./array/filter.mjs";
import { find } from "./array/find.mjs";
import { findIndex } from "./array/findIndex.mjs";
import { findLast } from "./array/findLast.mjs";
import { findLastIndex } from "./array/findLastIndex.mjs";
import { head } from "./array/head.mjs";
import { flatMap } from "./array/flatMap.mjs";
import { flatMapDeep } from "./array/flatMapDeep.mjs";
import { flatMapDepth } from "./array/flatMapDepth.mjs";
import { flatten } from "./array/flatten.mjs";
import { flattenDeep } from "./array/flattenDeep.mjs";
import { flattenDepth } from "./array/flattenDepth.mjs";
import { groupBy } from "./array/groupBy.mjs";
import { includes } from "./array/includes.mjs";
import { indexOf } from "./array/indexOf.mjs";
import { initial } from "./array/initial.mjs";
import { intersection } from "./array/intersection.mjs";
import { intersectionBy } from "./array/intersectionBy.mjs";
import { intersectionWith } from "./array/intersectionWith.mjs";
import { invokeMap } from "./array/invokeMap.mjs";
import { join } from "./array/join.mjs";
import { keyBy } from "./array/keyBy.mjs";
import { last } from "./array/last.mjs";
import { lastIndexOf } from "./array/lastIndexOf.mjs";
import { map } from "./array/map.mjs";
import { nth } from "./array/nth.mjs";
import { orderBy } from "./array/orderBy.mjs";
import { partition } from "./array/partition.mjs";
import { pull } from "./array/pull.mjs";
import { pullAll } from "./array/pullAll.mjs";
import { pullAllBy } from "./array/pullAllBy.mjs";
import { pullAllWith } from "./array/pullAllWith.mjs";
import { pullAt } from "./array/pullAt.mjs";
import { reduce } from "./array/reduce.mjs";
import { reduceRight } from "./array/reduceRight.mjs";
import { reject } from "./array/reject.mjs";
import { remove } from "./array/remove.mjs";
import { reverse } from "./array/reverse.mjs";
import { sample } from "./array/sample.mjs";
import { sampleSize } from "./array/sampleSize.mjs";
import { shuffle } from "./array/shuffle.mjs";
import { size } from "./array/size.mjs";
import { slice } from "./array/slice.mjs";
import { some } from "./array/some.mjs";
import { sortBy } from "./array/sortBy.mjs";
import { sortedIndex } from "./array/sortedIndex.mjs";
import { sortedIndexBy } from "./array/sortedIndexBy.mjs";
import { sortedIndexOf } from "./array/sortedIndexOf.mjs";
import { sortedLastIndex } from "./array/sortedLastIndex.mjs";
import { sortedLastIndexBy } from "./array/sortedLastIndexBy.mjs";
import { sortedLastIndexOf } from "./array/sortedLastIndexOf.mjs";
import { tail } from "./array/tail.mjs";
import { take } from "./array/take.mjs";
import { takeRight } from "./array/takeRight.mjs";
import { takeRightWhile } from "./array/takeRightWhile.mjs";
import { takeWhile } from "./array/takeWhile.mjs";
import { union } from "./array/union.mjs";
import { unionBy } from "./array/unionBy.mjs";
import { unionWith } from "./array/unionWith.mjs";
import { uniq } from "./array/uniq.mjs";
import { uniqBy } from "./array/uniqBy.mjs";
import { uniqWith } from "./array/uniqWith.mjs";
import { unzip } from "./array/unzip.mjs";
import { unzipWith } from "./array/unzipWith.mjs";
import { without } from "./array/without.mjs";
import { xor } from "./array/xor.mjs";
import { xorBy } from "./array/xorBy.mjs";
import { xorWith } from "./array/xorWith.mjs";
import { zip } from "./array/zip.mjs";
import { zipObject } from "./array/zipObject.mjs";
import { zipObjectDeep } from "./array/zipObjectDeep.mjs";
import { zipWith } from "./array/zipWith.mjs";
import { after } from "./function/after.mjs";
import { ary } from "./function/ary.mjs";
import { attempt } from "./function/attempt.mjs";
import { before } from "./function/before.mjs";
import { bind } from "./function/bind.mjs";
import { bindKey } from "./function/bindKey.mjs";
import { curry } from "./function/curry.mjs";
import { curryRight } from "./function/curryRight.mjs";
import { DebouncedFunc, debounce } from "./function/debounce.mjs";
import { defer } from "./function/defer.mjs";
import { delay } from "./function/delay.mjs";
import { flip } from "./function/flip.mjs";
import { flow } from "./function/flow.mjs";
import { flowRight } from "./function/flowRight.mjs";
import { memoize } from "./function/memoize.mjs";
import { negate } from "./function/negate.mjs";
import { nthArg } from "./function/nthArg.mjs";
import { once } from "./function/once.mjs";
import { overArgs } from "./function/overArgs.mjs";
import { partial } from "./function/partial.mjs";
import { partialRight } from "./function/partialRight.mjs";
import { rearg } from "./function/rearg.mjs";
import { rest } from "./function/rest.mjs";
import { spread } from "./function/spread.mjs";
import { throttle } from "./function/throttle.mjs";
import { unary } from "./function/unary.mjs";
import { wrap } from "./function/wrap.mjs";
import { add } from "./math/add.mjs";
import { ceil } from "./math/ceil.mjs";
import { clamp } from "./math/clamp.mjs";
import { divide } from "./math/divide.mjs";
import { floor } from "./math/floor.mjs";
import { inRange } from "./math/inRange.mjs";
import { max } from "./math/max.mjs";
import { maxBy } from "./math/maxBy.mjs";
import { mean } from "./math/mean.mjs";
import { meanBy } from "./math/meanBy.mjs";
import { min } from "./math/min.mjs";
import { minBy } from "./math/minBy.mjs";
import { multiply } from "./math/multiply.mjs";
import { parseInt } from "./math/parseInt.mjs";
import { random } from "./math/random.mjs";
import { range } from "./math/range.mjs";
import { rangeRight } from "./math/rangeRight.mjs";
import { round } from "./math/round.mjs";
import { subtract } from "./math/subtract.mjs";
import { sum } from "./math/sum.mjs";
import { sumBy } from "./math/sumBy.mjs";
import { isEqual } from "../predicate/isEqual.mjs";
import { identity } from "./function/identity.mjs";
import { noop } from "./function/noop.mjs";
import { assign } from "./object/assign.mjs";
import { assignIn } from "./object/assignIn.mjs";
import { assignInWith } from "./object/assignInWith.mjs";
import { assignWith } from "./object/assignWith.mjs";
import { at } from "./object/at.mjs";
import { clone } from "./object/clone.mjs";
import { cloneDeep } from "./object/cloneDeep.mjs";
import { cloneDeepWith } from "./object/cloneDeepWith.mjs";
import { cloneWith } from "./object/cloneWith.mjs";
import { create } from "./object/create.mjs";
import { defaults } from "./object/defaults.mjs";
import { defaultsDeep } from "./object/defaultsDeep.mjs";
import { findKey } from "./object/findKey.mjs";
import { findLastKey } from "./object/findLastKey.mjs";
import { forIn } from "./object/forIn.mjs";
import { forInRight } from "./object/forInRight.mjs";
import { forOwn } from "./object/forOwn.mjs";
import { forOwnRight } from "./object/forOwnRight.mjs";
import { fromPairs } from "./object/fromPairs.mjs";
import { functions } from "./object/functions.mjs";
import { functionsIn } from "./object/functionsIn.mjs";
import { get } from "./object/get.mjs";
import { has } from "./object/has.mjs";
import { hasIn } from "./object/hasIn.mjs";
import { invert } from "./object/invert.mjs";
import { invertBy } from "./object/invertBy.mjs";
import { keys } from "./object/keys.mjs";
import { keysIn } from "./object/keysIn.mjs";
import { mapKeys } from "./object/mapKeys.mjs";
import { mapValues } from "./object/mapValues.mjs";
import { merge } from "./object/merge.mjs";
import { mergeWith } from "./object/mergeWith.mjs";
import { omit } from "./object/omit.mjs";
import { omitBy } from "./object/omitBy.mjs";
import { pick } from "./object/pick.mjs";
import { pickBy } from "./object/pickBy.mjs";
import { property } from "./object/property.mjs";
import { propertyOf } from "./object/propertyOf.mjs";
import { result } from "./object/result.mjs";
import { set } from "./object/set.mjs";
import { setWith } from "./object/setWith.mjs";
import { toDefaulted } from "./object/toDefaulted.mjs";
import { toPairs } from "./object/toPairs.mjs";
import { toPairsIn } from "./object/toPairsIn.mjs";
import { transform } from "./object/transform.mjs";
import { unset } from "./object/unset.mjs";
import { update } from "./object/update.mjs";
import { updateWith } from "./object/updateWith.mjs";
import { values } from "./object/values.mjs";
import { valuesIn } from "./object/valuesIn.mjs";
import { isFunction } from "./predicate/isFunction.mjs";
import { isLength } from "./predicate/isLength.mjs";
import { isMatchWith } from "./predicate/isMatchWith.mjs";
import { isNative } from "./predicate/isNative.mjs";
import { isNull } from "./predicate/isNull.mjs";
import { isUndefined } from "./predicate/isUndefined.mjs";
import { conforms } from "./predicate/conforms.mjs";
import { conformsTo } from "./predicate/conformsTo.mjs";
import { isArguments } from "./predicate/isArguments.mjs";
import { isArray } from "./predicate/isArray.mjs";
import { isArrayBuffer } from "./predicate/isArrayBuffer.mjs";
import { isArrayLike } from "./predicate/isArrayLike.mjs";
import { isArrayLikeObject } from "./predicate/isArrayLikeObject.mjs";
import { isBoolean } from "./predicate/isBoolean.mjs";
import { isBuffer } from "./predicate/isBuffer.mjs";
import { isDate } from "./predicate/isDate.mjs";
import { isElement } from "./predicate/isElement.mjs";
import { isEmpty } from "./predicate/isEmpty.mjs";
import { isEqualWith } from "./predicate/isEqualWith.mjs";
import { isError } from "./predicate/isError.mjs";
import { isFinite } from "./predicate/isFinite.mjs";
import { isInteger } from "./predicate/isInteger.mjs";
import { isMap } from "./predicate/isMap.mjs";
import { isMatch } from "./predicate/isMatch.mjs";
import { isNaN } from "./predicate/isNaN.mjs";
import { isNil } from "./predicate/isNil.mjs";
import { isNumber } from "./predicate/isNumber.mjs";
import { isObject } from "./predicate/isObject.mjs";
import { isObjectLike } from "./predicate/isObjectLike.mjs";
import { isPlainObject } from "./predicate/isPlainObject.mjs";
import { isRegExp } from "./predicate/isRegExp.mjs";
import { isSafeInteger } from "./predicate/isSafeInteger.mjs";
import { isSet } from "./predicate/isSet.mjs";
import { isString } from "./predicate/isString.mjs";
import { isSymbol } from "./predicate/isSymbol.mjs";
import { isTypedArray } from "./predicate/isTypedArray.mjs";
import { isWeakMap } from "./predicate/isWeakMap.mjs";
import { isWeakSet } from "./predicate/isWeakSet.mjs";
import { matches } from "./predicate/matches.mjs";
import { matchesProperty } from "./predicate/matchesProperty.mjs";
import { capitalize } from "./string/capitalize.mjs";
import { bindAll } from "./util/bindAll.mjs";
import { camelCase } from "./string/camelCase.mjs";
import { deburr } from "./string/deburr.mjs";
import { endsWith } from "./string/endsWith.mjs";
import { escape } from "./string/escape.mjs";
import { escapeRegExp } from "./string/escapeRegExp.mjs";
import { kebabCase } from "./string/kebabCase.mjs";
import { lowerCase } from "./string/lowerCase.mjs";
import { lowerFirst } from "./string/lowerFirst.mjs";
import { pad } from "./string/pad.mjs";
import { padEnd } from "./string/padEnd.mjs";
import { padStart } from "./string/padStart.mjs";
import { repeat } from "./string/repeat.mjs";
import { replace } from "./string/replace.mjs";
import { snakeCase } from "./string/snakeCase.mjs";
import { split } from "./string/split.mjs";
import { startCase } from "./string/startCase.mjs";
import { startsWith } from "./string/startsWith.mjs";
import { template } from "./string/template.mjs";
import { templateSettings } from "./string/templateSettings.mjs";
import { toLower } from "./string/toLower.mjs";
import { toUpper } from "./string/toUpper.mjs";
import { trim } from "./string/trim.mjs";
import { trimEnd } from "./string/trimEnd.mjs";
import { trimStart } from "./string/trimStart.mjs";
import { truncate } from "./string/truncate.mjs";
import { unescape } from "./string/unescape.mjs";
import { upperCase } from "./string/upperCase.mjs";
import { upperFirst } from "./string/upperFirst.mjs";
import { words } from "./string/words.mjs";
import { cond } from "./util/cond.mjs";
import { constant } from "./util/constant.mjs";
import { defaultTo } from "./util/defaultTo.mjs";
import { eq } from "./util/eq.mjs";
import { gt } from "./util/gt.mjs";
import { gte } from "./util/gte.mjs";
import { invoke } from "./util/invoke.mjs";
import { iteratee } from "./util/iteratee.mjs";
import { lt } from "./util/lt.mjs";
import { lte } from "./util/lte.mjs";
import { method } from "./util/method.mjs";
import { methodOf } from "./util/methodOf.mjs";
import { now } from "./util/now.mjs";
import { over } from "./util/over.mjs";
import { overEvery } from "./util/overEvery.mjs";
import { overSome } from "./util/overSome.mjs";
import { stubArray } from "./util/stubArray.mjs";
import { stubFalse } from "./util/stubFalse.mjs";
import { stubObject } from "./util/stubObject.mjs";
import { stubString } from "./util/stubString.mjs";
import { stubTrue } from "./util/stubTrue.mjs";
import { times } from "./util/times.mjs";
import { toArray } from "./util/toArray.mjs";
import { toFinite } from "./util/toFinite.mjs";
import { toInteger } from "./util/toInteger.mjs";
import { toLength } from "./util/toLength.mjs";
import { toNumber } from "./util/toNumber.mjs";
import { toPath } from "./util/toPath.mjs";
import { toPlainObject } from "./util/toPlainObject.mjs";
import { toSafeInteger } from "./util/toSafeInteger.mjs";
import { toString } from "./util/toString.mjs";
import { uniqueId } from "./util/uniqueId.mjs";

//#region src/compat/compat.d.ts
declare namespace compat_d_exports {
  export { DebouncedFunc, add, after, ary, assign, assignIn, assignInWith, assignWith, at, attempt, before, bind, bindAll, bindKey, camelCase, capitalize, castArray, ceil, chunk, clamp, clone, cloneDeep, cloneDeepWith, cloneWith, compact, concat, cond, conforms, conformsTo, constant, countBy, create, curry, curryRight, debounce, deburr, defaultTo, defaults, defaultsDeep, defer, delay, difference, differenceBy, differenceWith, divide, drop, dropRight, dropRightWhile, dropWhile, forEach as each, forEachRight as eachRight, endsWith, eq, escape, escapeRegExp, every, assignIn as extend, assignInWith as extendWith, fill, filter, find, findIndex, findKey, findLast, findLastIndex, findLastKey, head as first, flatMap, flatMapDeep, flatMapDepth, flatten, flattenDeep, flattenDepth, flip, floor, flow, flowRight, forEach, forEachRight, forIn, forInRight, forOwn, forOwnRight, fromPairs, functions, functionsIn, get, groupBy, gt, gte, has, hasIn, head, identity, inRange, includes, indexOf, initial, intersection, intersectionBy, intersectionWith, invert, invertBy, invoke, invokeMap, isArguments, isArray, isArrayBuffer, isArrayLike, isArrayLikeObject, isBoolean, isBuffer, isDate, isElement, isEmpty, isEqual, isEqualWith, isError, isFinite, isFunction, isInteger, isLength, isMap, isMatch, isMatchWith, isNaN, isNative, isNil, isNull, isNumber, isObject, isObjectLike, isPlainObject, isRegExp, isSafeInteger, isSet, isString, isSymbol, isTypedArray, isUndefined, isWeakMap, isWeakSet, iteratee, join, kebabCase, keyBy, keys, keysIn, last, lastIndexOf, lowerCase, lowerFirst, lt, lte, map, mapKeys, mapValues, matches, matchesProperty, max, maxBy, mean, meanBy, memoize, merge, mergeWith, method, methodOf, min, minBy, multiply, negate, noop, now, nth, nthArg, omit, omitBy, once, orderBy, over, overArgs, overEvery, overSome, pad, padEnd, padStart, parseInt, partial, partialRight, partition, pick, pickBy, property, propertyOf, pull, pullAll, pullAllBy, pullAllWith, pullAt, random, range, rangeRight, rearg, reduce, reduceRight, reject, remove, repeat, replace, rest, result, reverse, round, sample, sampleSize, set, setWith, shuffle, size, slice, snakeCase, some, sortBy, sortedIndex, sortedIndexBy, sortedIndexOf, sortedLastIndex, sortedLastIndexBy, sortedLastIndexOf, split, spread, startCase, startsWith, stubArray, stubFalse, stubObject, stubString, stubTrue, subtract, sum, sumBy, tail, take, takeRight, takeRightWhile, takeWhile, template, templateSettings, throttle, times, toArray, toDefaulted, toFinite, toInteger, toLength, toLower, toNumber, toPairs, toPairsIn, toPath, toPlainObject, toSafeInteger, toString, toUpper, transform, trim, trimEnd, trimStart, truncate, unary, unescape, union, unionBy, unionWith, uniq, uniqBy, uniqWith, uniqueId, unset, unzip, unzipWith, update, updateWith, upperCase, upperFirst, values, valuesIn, without, words, wrap, xor, xorBy, xorWith, zip, zipObject, zipObjectDeep, zipWith };
}
//#endregion
export { compat_d_exports };