@types/lodash 4.14.100 → 4.14.104

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. lodash/README.md +2 -2
  2. lodash/common/array.d.ts +3845 -0
  3. lodash/common/collection.d.ts +3091 -0
  4. lodash/common/common.d.ts +3 -3
  5. lodash/{date/now.d.ts → common/date.d.ts} +3 -1
  6. lodash/common/function.d.ts +1367 -0
  7. lodash/common/lang.d.ts +1937 -0
  8. lodash/common/math.d.ts +536 -0
  9. lodash/{number/random.d.ts → common/number.d.ts} +98 -1
  10. lodash/common/object.d.ts +3653 -0
  11. lodash/common/seq.d.ts +198 -0
  12. lodash/common/string.d.ts +1059 -0
  13. lodash/common/util.d.ts +1455 -0
  14. lodash/index.d.ts +11 -338
  15. lodash/package.json +2 -7
  16. lodash/array/chunk.d.ts +0 -37
  17. lodash/array/compact.d.ts +0 -27
  18. lodash/array/concat.d.ts +0 -39
  19. lodash/array/difference.d.ts +0 -37
  20. lodash/array/differenceBy.d.ts +0 -243
  21. lodash/array/differenceWith.d.ts +0 -132
  22. lodash/array/drop.d.ts +0 -27
  23. lodash/array/dropRight.d.ts +0 -30
  24. lodash/array/dropRightWhile.d.ts +0 -47
  25. lodash/array/dropWhile.d.ts +0 -47
  26. lodash/array/fill.d.ts +0 -124
  27. lodash/array/findIndex.d.ts +0 -50
  28. lodash/array/findLastIndex.d.ts +0 -49
  29. lodash/array/first.d.ts +0 -23
  30. lodash/array/flatten.d.ts +0 -43
  31. lodash/array/flattenDeep.d.ts +0 -26
  32. lodash/array/flattenDepth.d.ts +0 -27
  33. lodash/array/fromPairs.d.ts +0 -59
  34. lodash/array/head.d.ts +0 -28
  35. lodash/array/indexOf.d.ts +0 -53
  36. lodash/array/initial.d.ts +0 -26
  37. lodash/array/intersection.d.ts +0 -33
  38. lodash/array/intersectionBy.d.ts +0 -134
  39. lodash/array/intersectionWith.d.ts +0 -133
  40. lodash/array/join.d.ts +0 -30
  41. lodash/array/last.d.ts +0 -26
  42. lodash/array/lastIndexOf.d.ts +0 -40
  43. lodash/array/nth.d.ts +0 -36
  44. lodash/array/pull.d.ts +0 -46
  45. lodash/array/pullAll.d.ts +0 -54
  46. lodash/array/pullAllBy.d.ts +0 -77
  47. lodash/array/pullAllWith.d.ts +0 -77
  48. lodash/array/pullAt.d.ts +0 -34
  49. lodash/array/remove.d.ts +0 -49
  50. lodash/array/reverse.d.ts +0 -27
  51. lodash/array/slice.d.ts +0 -40
  52. lodash/array/sortedIndex.d.ts +0 -45
  53. lodash/array/sortedIndexBy.d.ts +0 -97
  54. lodash/array/sortedIndexOf.d.ts +0 -42
  55. lodash/array/sortedLastIndex.d.ts +0 -43
  56. lodash/array/sortedLastIndexBy.d.ts +0 -48
  57. lodash/array/sortedLastIndexOf.d.ts +0 -42
  58. lodash/array/sortedUniq.d.ts +0 -34
  59. lodash/array/sortedUniqBy.d.ts +0 -66
  60. lodash/array/tail.d.ts +0 -26
  61. lodash/array/take.d.ts +0 -36
  62. lodash/array/takeRight.d.ts +0 -36
  63. lodash/array/takeRightWhile.d.ts +0 -47
  64. lodash/array/takeWhile.d.ts +0 -47
  65. lodash/array/union.d.ts +0 -33
  66. lodash/array/unionBy.d.ts +0 -164
  67. lodash/array/unionWith.d.ts +0 -103
  68. lodash/array/uniq.d.ts +0 -36
  69. lodash/array/uniqBy.d.ts +0 -71
  70. lodash/array/uniqWith.d.ts +0 -45
  71. lodash/array/unzip.d.ts +0 -27
  72. lodash/array/unzipWith.d.ts +0 -60
  73. lodash/array/without.d.ts +0 -36
  74. lodash/array/xor.d.ts +0 -32
  75. lodash/array/xorBy.d.ts +0 -104
  76. lodash/array/xorWith.d.ts +0 -103
  77. lodash/array/zip.d.ts +0 -129
  78. lodash/array/zipObject.d.ts +0 -58
  79. lodash/array/zipObjectDeep.d.ts +0 -36
  80. lodash/array/zipWith.d.ts +0 -187
  81. lodash/collection/countBy.d.ts +0 -121
  82. lodash/collection/each.d.ts +0 -40
  83. lodash/collection/eachRight.d.ts +0 -40
  84. lodash/collection/every.d.ts +0 -85
  85. lodash/collection/filter.d.ts +0 -143
  86. lodash/collection/find.d.ts +0 -131
  87. lodash/collection/findLast.d.ts +0 -121
  88. lodash/collection/flatMap.d.ts +0 -164
  89. lodash/collection/flatMapDeep.d.ts +0 -164
  90. lodash/collection/flatMapDepth.d.ts +0 -180
  91. lodash/collection/forEach.d.ts +0 -113
  92. lodash/collection/forEachRight.d.ts +0 -108
  93. lodash/collection/groupBy.d.ts +0 -121
  94. lodash/collection/includes.d.ts +0 -41
  95. lodash/collection/invokeMap.d.ts +0 -58
  96. lodash/collection/keyBy.d.ts +0 -121
  97. lodash/collection/map.d.ts +0 -180
  98. lodash/collection/orderBy.d.ts +0 -192
  99. lodash/collection/partition.d.ts +0 -72
  100. lodash/collection/reduce.d.ts +0 -220
  101. lodash/collection/reduceRight.d.ts +0 -217
  102. lodash/collection/reject.d.ts +0 -86
  103. lodash/collection/sample.d.ts +0 -74
  104. lodash/collection/sampleSize.d.ts +0 -60
  105. lodash/collection/shuffle.d.ts +0 -41
  106. lodash/collection/size.d.ts +0 -27
  107. lodash/collection/some.d.ts +0 -85
  108. lodash/collection/sortBy.d.ts +0 -84
  109. lodash/function/after.d.ts +0 -30
  110. lodash/function/ary.d.ts +0 -30
  111. lodash/function/before.d.ts +0 -32
  112. lodash/function/bind.d.ts +0 -50
  113. lodash/function/bindKey.d.ts +0 -51
  114. lodash/function/curry.d.ts +0 -203
  115. lodash/function/curryRight.d.ts +0 -132
  116. lodash/function/debounce.d.ts +0 -67
  117. lodash/function/defer.d.ts +0 -31
  118. lodash/function/delay.d.ts +0 -38
  119. lodash/function/flip.d.ts +0 -28
  120. lodash/function/memoize.d.ts +0 -37
  121. lodash/function/negate.d.ts +0 -20
  122. lodash/function/once.d.ts +0 -20
  123. lodash/function/overArgs.d.ts +0 -31
  124. lodash/function/partial.d.ts +0 -159
  125. lodash/function/partialRight.d.ts +0 -150
  126. lodash/function/rearg.d.ts +0 -28
  127. lodash/function/rest.d.ts +0 -33
  128. lodash/function/spread.d.ts +0 -44
  129. lodash/function/throttle.d.ts +0 -58
  130. lodash/function/unary.d.ts +0 -32
  131. lodash/function/wrap.d.ts +0 -61
  132. lodash/lang/castArray.d.ts +0 -26
  133. lodash/lang/clone.d.ts +0 -31
  134. lodash/lang/cloneDeep.d.ts +0 -26
  135. lodash/lang/cloneDeepWith.d.ts +0 -51
  136. lodash/lang/cloneWith.d.ts +0 -74
  137. lodash/lang/conformsTo.d.ts +0 -31
  138. lodash/lang/eq.d.ts +0 -55
  139. lodash/lang/gt.d.ts +0 -30
  140. lodash/lang/gte.d.ts +0 -30
  141. lodash/lang/isArguments.d.ts +0 -26
  142. lodash/lang/isArray.d.ts +0 -31
  143. lodash/lang/isArrayBuffer.d.ts +0 -26
  144. lodash/lang/isArrayLike.d.ts +0 -52
  145. lodash/lang/isArrayLikeObject.d.ts +0 -53
  146. lodash/lang/isBoolean.d.ts +0 -26
  147. lodash/lang/isBuffer.d.ts +0 -26
  148. lodash/lang/isDate.d.ts +0 -26
  149. lodash/lang/isElement.d.ts +0 -26
  150. lodash/lang/isEmpty.d.ts +0 -27
  151. lodash/lang/isEqual.d.ts +0 -52
  152. lodash/lang/isEqualWith.d.ts +0 -61
  153. lodash/lang/isError.d.ts +0 -27
  154. lodash/lang/isFinite.d.ts +0 -28
  155. lodash/lang/isFunction.d.ts +0 -26
  156. lodash/lang/isInteger.d.ts +0 -42
  157. lodash/lang/isLength.d.ts +0 -42
  158. lodash/lang/isMap.d.ts +0 -26
  159. lodash/lang/isMatch.d.ts +0 -42
  160. lodash/lang/isMatchWith.d.ts +0 -51
  161. lodash/lang/isNaN.d.ts +0 -28
  162. lodash/lang/isNative.d.ts +0 -26
  163. lodash/lang/isNil.d.ts +0 -37
  164. lodash/lang/isNull.d.ts +0 -26
  165. lodash/lang/isNumber.d.ts +0 -28
  166. lodash/lang/isObject.d.ts +0 -27
  167. lodash/lang/isObjectLike.d.ts +0 -41
  168. lodash/lang/isPlainObject.d.ts +0 -29
  169. lodash/lang/isRegExp.d.ts +0 -26
  170. lodash/lang/isSafeInteger.d.ts +0 -43
  171. lodash/lang/isSet.d.ts +0 -26
  172. lodash/lang/isString.d.ts +0 -26
  173. lodash/lang/isSymbol.d.ts +0 -34
  174. lodash/lang/isTypedArray.d.ts +0 -26
  175. lodash/lang/isUndefined.d.ts +0 -26
  176. lodash/lang/isWeakMap.d.ts +0 -26
  177. lodash/lang/isWeakSet.d.ts +0 -26
  178. lodash/lang/lt.d.ts +0 -30
  179. lodash/lang/lte.d.ts +0 -30
  180. lodash/lang/toArray.d.ts +0 -46
  181. lodash/lang/toFinite.d.ts +0 -41
  182. lodash/lang/toInteger.d.ts +0 -42
  183. lodash/lang/toLength.d.ts +0 -43
  184. lodash/lang/toNumber.d.ts +0 -40
  185. lodash/lang/toPlainObject.d.ts +0 -27
  186. lodash/lang/toSafeInteger.d.ts +0 -41
  187. lodash/lang/toString.d.ts +0 -24
  188. lodash/math/add.d.ts +0 -30
  189. lodash/math/ceil.d.ts +0 -30
  190. lodash/math/divide.d.ts +0 -30
  191. lodash/math/floor.d.ts +0 -30
  192. lodash/math/max.d.ts +0 -30
  193. lodash/math/maxBy.d.ts +0 -49
  194. lodash/math/mean.d.ts +0 -33
  195. lodash/math/meanBy.d.ts +0 -41
  196. lodash/math/min.d.ts +0 -30
  197. lodash/math/minBy.d.ts +0 -49
  198. lodash/math/multiply.d.ts +0 -29
  199. lodash/math/round.d.ts +0 -30
  200. lodash/math/subtract.d.ts +0 -39
  201. lodash/math/sum.d.ts +0 -31
  202. lodash/math/sumBy.d.ts +0 -53
  203. lodash/number/clamp.d.ts +0 -56
  204. lodash/number/inRange.d.ts +0 -39
  205. lodash/object/assign.d.ts +0 -172
  206. lodash/object/assignIn.d.ts +0 -171
  207. lodash/object/assignInWith.d.ts +0 -183
  208. lodash/object/assignWith.d.ts +0 -180
  209. lodash/object/at.d.ts +0 -61
  210. lodash/object/create.d.ts +0 -31
  211. lodash/object/defaults.d.ts +0 -155
  212. lodash/object/defaultsDeep.d.ts +0 -28
  213. lodash/object/entries.d.ts +0 -38
  214. lodash/object/entriesIn.d.ts +0 -38
  215. lodash/object/extend.d.ts +0 -147
  216. lodash/object/extendWith.d.ts +0 -159
  217. lodash/object/findKey.d.ts +0 -47
  218. lodash/object/findLastKey.d.ts +0 -46
  219. lodash/object/forIn.d.ts +0 -37
  220. lodash/object/forInRight.d.ts +0 -35
  221. lodash/object/forOwn.d.ts +0 -37
  222. lodash/object/forOwnRight.d.ts +0 -35
  223. lodash/object/functions.d.ts +0 -39
  224. lodash/object/functionsIn.d.ts +0 -39
  225. lodash/object/get.d.ts +0 -238
  226. lodash/object/has.d.ts +0 -47
  227. lodash/object/hasIn.d.ts +0 -46
  228. lodash/object/invert.d.ts +0 -30
  229. lodash/object/invertBy.d.ts +0 -62
  230. lodash/object/invoke.d.ts +0 -33
  231. lodash/object/keys.d.ts +0 -28
  232. lodash/object/keysIn.d.ts +0 -28
  233. lodash/object/mapKeys.d.ts +0 -86
  234. lodash/object/mapValues.d.ts +0 -189
  235. lodash/object/merge.d.ts +0 -156
  236. lodash/object/mergeWith.d.ts +0 -133
  237. lodash/object/omit.d.ts +0 -69
  238. lodash/object/omitBy.d.ts +0 -45
  239. lodash/object/pick.d.ts +0 -68
  240. lodash/object/pickBy.d.ts +0 -44
  241. lodash/object/result.d.ts +0 -39
  242. lodash/object/set.d.ts +0 -65
  243. lodash/object/setWith.d.ts +0 -71
  244. lodash/object/toPairs.d.ts +0 -41
  245. lodash/object/toPairsIn.d.ts +0 -41
  246. lodash/object/transform.d.ts +0 -163
  247. lodash/object/unset.d.ts +0 -32
  248. lodash/object/update.d.ts +0 -39
  249. lodash/object/updateWith.d.ts +0 -83
  250. lodash/object/values.d.ts +0 -56
  251. lodash/object/valuesIn.d.ts +0 -41
  252. lodash/seq/chain.d.ts +0 -26
  253. lodash/seq/prototype.at.d.ts +0 -12
  254. lodash/seq/prototype.chain.d.ts +0 -26
  255. lodash/seq/prototype.commit.d.ts +0 -11
  256. lodash/seq/prototype.plant.d.ts +0 -18
  257. lodash/seq/prototype.reverse.d.ts +0 -14
  258. lodash/seq/prototype.toJSON.d.ts +0 -9
  259. lodash/seq/prototype.toString.d.ts +0 -11
  260. lodash/seq/prototype.value.d.ts +0 -13
  261. lodash/seq/prototype.valueOf.d.ts +0 -9
  262. lodash/seq/tap.d.ts +0 -28
  263. lodash/seq/thru.d.ts +0 -31
  264. lodash/string/camelCase.d.ts +0 -26
  265. lodash/string/capitalize.d.ts +0 -26
  266. lodash/string/deburr.d.ts +0 -27
  267. lodash/string/endsWith.d.ts +0 -38
  268. lodash/string/escape.d.ts +0 -37
  269. lodash/string/escapeRegExp.d.ts +0 -27
  270. lodash/string/kebabCase.d.ts +0 -26
  271. lodash/string/lowerCase.d.ts +0 -26
  272. lodash/string/lowerFirst.d.ts +0 -26
  273. lodash/string/pad.d.ts +0 -39
  274. lodash/string/padEnd.d.ts +0 -39
  275. lodash/string/padStart.d.ts +0 -39
  276. lodash/string/parseInt.d.ts +0 -33
  277. lodash/string/repeat.d.ts +0 -32
  278. lodash/string/replace.d.ts +0 -59
  279. lodash/string/snakeCase.d.ts +0 -26
  280. lodash/string/split.d.ts +0 -56
  281. lodash/string/startCase.d.ts +0 -26
  282. lodash/string/startsWith.d.ts +0 -38
  283. lodash/string/template.d.ts +0 -61
  284. lodash/string/toLower.d.ts +0 -26
  285. lodash/string/toUpper.d.ts +0 -26
  286. lodash/string/trim.d.ts +0 -44
  287. lodash/string/trimEnd.d.ts +0 -44
  288. lodash/string/trimStart.d.ts +0 -44
  289. lodash/string/truncate.d.ts +0 -40
  290. lodash/string/unescape.d.ts +0 -30
  291. lodash/string/upperCase.d.ts +0 -26
  292. lodash/string/upperFirst.d.ts +0 -26
  293. lodash/string/words.d.ts +0 -44
  294. lodash/util/attempt.d.ts +0 -27
  295. lodash/util/bindAll.d.ts +0 -28
  296. lodash/util/cond.d.ts +0 -33
  297. lodash/util/conforms.d.ts +0 -28
  298. lodash/util/constant.d.ts +0 -26
  299. lodash/util/defaultTo.d.ts +0 -53
  300. lodash/util/flow.d.ts +0 -171
  301. lodash/util/flowRight.d.ts +0 -156
  302. lodash/util/identity.d.ts +0 -31
  303. lodash/util/iteratee.d.ts +0 -58
  304. lodash/util/matches.d.ts +0 -36
  305. lodash/util/matchesProperty.d.ts +0 -59
  306. lodash/util/method.d.ts +0 -31
  307. lodash/util/methodOf.d.ts +0 -35
  308. lodash/util/mixin.d.ts +0 -69
  309. lodash/util/noConflict.d.ts +0 -25
  310. lodash/util/noop.d.ts +0 -25
  311. lodash/util/nthArg.d.ts +0 -26
  312. lodash/util/over.d.ts +0 -33
  313. lodash/util/overEvery.d.ts +0 -27
  314. lodash/util/overSome.d.ts +0 -27
  315. lodash/util/property.d.ts +0 -26
  316. lodash/util/propertyOf.d.ts +0 -27
  317. lodash/util/range.d.ts +0 -56
  318. lodash/util/rangeRight.d.ts +0 -77
  319. lodash/util/runInContext.d.ts +0 -19
  320. lodash/util/stubArray.d.ts +0 -25
  321. lodash/util/stubFalse.d.ts +0 -25
  322. lodash/util/stubObject.d.ts +0 -25
  323. lodash/util/stubString.d.ts +0 -25
  324. lodash/util/stubTrue.d.ts +0 -25
  325. lodash/util/times.d.ts +0 -50
  326. lodash/util/toPath.d.ts +0 -43
  327. lodash/util/uniqueId.d.ts +0 -26
@@ -0,0 +1,3653 @@
1
+ import _ = require("../index");
2
+ declare module "../index" {
3
+ // assign
4
+
5
+ interface LoDashStatic {
6
+ /**
7
+ * Assigns own enumerable properties of source objects to the destination
8
+ * object. Source objects are applied from left to right. Subsequent sources
9
+ * overwrite property assignments of previous sources.
10
+ *
11
+ * **Note:** This method mutates `object` and is loosely based on
12
+ * [`Object.assign`](https://mdn.io/Object/assign).
13
+ *
14
+ * @category Object
15
+ * @param object The destination object.
16
+ * @param [sources] The source objects.
17
+ * @returns Returns `object`.
18
+ * @example
19
+ *
20
+ * function Foo() {
21
+ * this.c = 3;
22
+ * }
23
+ *
24
+ * function Bar() {
25
+ * this.e = 5;
26
+ * }
27
+ *
28
+ * Foo.prototype.d = 4;
29
+ * Bar.prototype.f = 6;
30
+ *
31
+ * _.assign({ 'a': 1 }, new Foo, new Bar);
32
+ * // => { 'a': 1, 'c': 3, 'e': 5 }
33
+ */
34
+ assign<TObject, TSource>(
35
+ object: TObject,
36
+ source: TSource
37
+ ): TObject & TSource;
38
+
39
+ /**
40
+ * @see assign
41
+ */
42
+ assign<TObject, TSource1, TSource2>(
43
+ object: TObject,
44
+ source1: TSource1,
45
+ source2: TSource2
46
+ ): TObject & TSource1 & TSource2;
47
+
48
+ /**
49
+ * @see assign
50
+ */
51
+ assign<TObject, TSource1, TSource2, TSource3>(
52
+ object: TObject,
53
+ source1: TSource1,
54
+ source2: TSource2,
55
+ source3: TSource3
56
+ ): TObject & TSource1 & TSource2 & TSource3;
57
+
58
+ /**
59
+ * @see assign
60
+ */
61
+ assign<TObject, TSource1, TSource2, TSource3, TSource4>(
62
+ object: TObject,
63
+ source1: TSource1,
64
+ source2: TSource2,
65
+ source3: TSource3,
66
+ source4: TSource4
67
+ ): TObject & TSource1 & TSource2 & TSource3 & TSource4;
68
+
69
+ /**
70
+ * @see _.assign
71
+ */
72
+ assign<TObject>(object: TObject): TObject;
73
+
74
+ /**
75
+ * @see _.assign
76
+ */
77
+ assign(
78
+ object: any,
79
+ ...otherArgs: any[]
80
+ ): any;
81
+ }
82
+
83
+ interface LoDashImplicitWrapper<TValue> {
84
+ /**
85
+ * @see _.assign
86
+ */
87
+ assign<TSource>(
88
+ source: TSource
89
+ ): LoDashImplicitWrapper<TValue & TSource>;
90
+
91
+ /**
92
+ * @see assign
93
+ */
94
+ assign<TSource1, TSource2>(
95
+ source1: TSource1,
96
+ source2: TSource2
97
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2>;
98
+
99
+ /**
100
+ * @see assign
101
+ */
102
+ assign<TSource1, TSource2, TSource3>(
103
+ source1: TSource1,
104
+ source2: TSource2,
105
+ source3: TSource3
106
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
107
+
108
+ /**
109
+ * @see assign
110
+ */
111
+ assign<TSource1, TSource2, TSource3, TSource4>(
112
+ source1: TSource1,
113
+ source2: TSource2,
114
+ source3: TSource3,
115
+ source4: TSource4
116
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
117
+
118
+ /**
119
+ * @see _.assign
120
+ */
121
+ assign(): LoDashImplicitWrapper<TValue>;
122
+
123
+ /**
124
+ * @see _.assign
125
+ */
126
+ assign(...otherArgs: any[]): LoDashImplicitWrapper<any>;
127
+ }
128
+
129
+ interface LoDashExplicitWrapper<TValue> {
130
+ /**
131
+ * @see _.assign
132
+ */
133
+ assign<TSource>(
134
+ source: TSource
135
+ ): LoDashExplicitWrapper<TValue & TSource>;
136
+
137
+ /**
138
+ * @see assign
139
+ */
140
+ assign<TSource1, TSource2>(
141
+ source1: TSource1,
142
+ source2: TSource2
143
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2>;
144
+
145
+ /**
146
+ * @see assign
147
+ */
148
+ assign<TSource1, TSource2, TSource3>(
149
+ source1: TSource1,
150
+ source2: TSource2,
151
+ source3: TSource3
152
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
153
+
154
+ /**
155
+ * @see assign
156
+ */
157
+ assign<TSource1, TSource2, TSource3, TSource4>(
158
+ source1: TSource1,
159
+ source2: TSource2,
160
+ source3: TSource3,
161
+ source4: TSource4
162
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
163
+
164
+ /**
165
+ * @see _.assign
166
+ */
167
+ assign(): LoDashExplicitWrapper<TValue>;
168
+
169
+ /**
170
+ * @see _.assign
171
+ */
172
+ assign(...otherArgs: any[]): LoDashExplicitWrapper<any>;
173
+ }
174
+
175
+ // assignIn
176
+
177
+ interface LoDashStatic {
178
+ /**
179
+ * This method is like `_.assign` except that it iterates over own and
180
+ * inherited source properties.
181
+ *
182
+ * **Note:** This method mutates `object`.
183
+ *
184
+ * @alias extend
185
+ * @category Object
186
+ * @param object The destination object.
187
+ * @param [sources] The source objects.
188
+ * @returns Returns `object`.
189
+ * @example
190
+ *
191
+ * function Foo() {
192
+ * this.b = 2;
193
+ * }
194
+ *
195
+ * function Bar() {
196
+ * this.d = 4;
197
+ * }
198
+ *
199
+ * Foo.prototype.c = 3;
200
+ * Bar.prototype.e = 5;
201
+ *
202
+ * _.assignIn({ 'a': 1 }, new Foo, new Bar);
203
+ * // => { 'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5 }
204
+ */
205
+ assignIn<TObject, TSource>(
206
+ object: TObject,
207
+ source: TSource
208
+ ): TObject & TSource;
209
+
210
+ /**
211
+ * @see assignIn
212
+ */
213
+ assignIn<TObject, TSource1, TSource2>(
214
+ object: TObject,
215
+ source1: TSource1,
216
+ source2: TSource2
217
+ ): TObject & TSource1 & TSource2;
218
+
219
+ /**
220
+ * @see assignIn
221
+ */
222
+ assignIn<TObject, TSource1, TSource2, TSource3>(
223
+ object: TObject,
224
+ source1: TSource1,
225
+ source2: TSource2,
226
+ source3: TSource3
227
+ ): TObject & TSource1 & TSource2 & TSource3;
228
+
229
+ /**
230
+ * @see assignIn
231
+ */
232
+ assignIn<TObject, TSource1, TSource2, TSource3, TSource4>(
233
+ object: TObject,
234
+ source1: TSource1,
235
+ source2: TSource2,
236
+ source3: TSource3,
237
+ source4: TSource4
238
+ ): TObject & TSource1 & TSource2 & TSource3 & TSource4;
239
+
240
+ /**
241
+ * @see _.assignIn
242
+ */
243
+ assignIn<TObject>(object: TObject): TObject;
244
+
245
+ /**
246
+ * @see _.assignIn
247
+ */
248
+ assignIn<TResult>(
249
+ object: any,
250
+ ...otherArgs: any[]
251
+ ): TResult;
252
+ }
253
+
254
+ interface LoDashImplicitWrapper<TValue> {
255
+ /**
256
+ * @see _.assignIn
257
+ */
258
+ assignIn<TSource>(
259
+ source: TSource
260
+ ): LoDashImplicitWrapper<TValue & TSource>;
261
+
262
+ /**
263
+ * @see assignIn
264
+ */
265
+ assignIn<TSource1, TSource2>(
266
+ source1: TSource1,
267
+ source2: TSource2
268
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2>;
269
+
270
+ /**
271
+ * @see assignIn
272
+ */
273
+ assignIn<TSource1, TSource2, TSource3>(
274
+ source1: TSource1,
275
+ source2: TSource2,
276
+ source3: TSource3
277
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
278
+
279
+ /**
280
+ * @see assignIn
281
+ */
282
+ assignIn<TSource1, TSource2, TSource3, TSource4>(
283
+ source1: TSource1,
284
+ source2: TSource2,
285
+ source3: TSource3,
286
+ source4: TSource4
287
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
288
+
289
+ /**
290
+ * @see _.assignIn
291
+ */
292
+ assignIn(): LoDashImplicitWrapper<TValue>;
293
+
294
+ /**
295
+ * @see _.assignIn
296
+ */
297
+ assignIn<TResult>(...otherArgs: any[]): LoDashImplicitWrapper<TResult>;
298
+ }
299
+
300
+ interface LoDashExplicitWrapper<TValue> {
301
+ /**
302
+ * @see _.assignIn
303
+ */
304
+ assignIn<TSource>(
305
+ source: TSource
306
+ ): LoDashExplicitWrapper<TValue & TSource>;
307
+
308
+ /**
309
+ * @see assignIn
310
+ */
311
+ assignIn<TSource1, TSource2>(
312
+ source1: TSource1,
313
+ source2: TSource2
314
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2>;
315
+
316
+ /**
317
+ * @see assignIn
318
+ */
319
+ assignIn<TSource1, TSource2, TSource3>(
320
+ source1: TSource1,
321
+ source2: TSource2,
322
+ source3: TSource3
323
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
324
+
325
+ /**
326
+ * @see assignIn
327
+ */
328
+ assignIn<TSource1, TSource2, TSource3, TSource4>(
329
+ source1: TSource1,
330
+ source2: TSource2,
331
+ source3: TSource3,
332
+ source4: TSource4
333
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
334
+
335
+ /**
336
+ * @see _.assignIn
337
+ */
338
+ assignIn(): LoDashExplicitWrapper<TValue>;
339
+
340
+ /**
341
+ * @see _.assignIn
342
+ */
343
+ assignIn(...otherArgs: any[]): LoDashExplicitWrapper<any>;
344
+ }
345
+
346
+ // assignInWith
347
+
348
+ type AssignCustomizer = (objectValue: any, sourceValue: any, key?: string, object?: {}, source?: {}) => any;
349
+
350
+ interface LoDashStatic {
351
+ /**
352
+ * This method is like `_.assignIn` except that it accepts `customizer` which
353
+ * is invoked to produce the assigned values. If `customizer` returns `undefined`
354
+ * assignment is handled by the method instead. The `customizer` is invoked
355
+ * with five arguments: (objValue, srcValue, key, object, source).
356
+ *
357
+ * **Note:** This method mutates `object`.
358
+ *
359
+ * @alias extendWith
360
+ * @category Object
361
+ * @param object The destination object.
362
+ * @param sources The source objects.
363
+ * @param [customizer] The function to customize assigned values.
364
+ * @returns Returns `object`.
365
+ * @example
366
+ *
367
+ * function customizer(objValue, srcValue) {
368
+ * return _.isUndefined(objValue) ? srcValue : objValue;
369
+ * }
370
+ *
371
+ * var defaults = _.partialRight(_.assignInWith, customizer);
372
+ *
373
+ * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
374
+ * // => { 'a': 1, 'b': 2 }
375
+ */
376
+ assignInWith<TObject, TSource>(
377
+ object: TObject,
378
+ source: TSource,
379
+ customizer: AssignCustomizer
380
+ ): TObject & TSource;
381
+
382
+ /**
383
+ * @see assignInWith
384
+ */
385
+ assignInWith<TObject, TSource1, TSource2>(
386
+ object: TObject,
387
+ source1: TSource1,
388
+ source2: TSource2,
389
+ customizer: AssignCustomizer
390
+ ): TObject & TSource1 & TSource2;
391
+
392
+ /**
393
+ * @see assignInWith
394
+ */
395
+ assignInWith<TObject, TSource1, TSource2, TSource3>(
396
+ object: TObject,
397
+ source1: TSource1,
398
+ source2: TSource2,
399
+ source3: TSource3,
400
+ customizer: AssignCustomizer
401
+ ): TObject & TSource1 & TSource2 & TSource3;
402
+
403
+ /**
404
+ * @see assignInWith
405
+ */
406
+ assignInWith<TObject, TSource1, TSource2, TSource3, TSource4>(
407
+ object: TObject,
408
+ source1: TSource1,
409
+ source2: TSource2,
410
+ source3: TSource3,
411
+ source4: TSource4,
412
+ customizer: AssignCustomizer
413
+ ): TObject & TSource1 & TSource2 & TSource3 & TSource4;
414
+
415
+ /**
416
+ * @see _.assignInWith
417
+ */
418
+ assignInWith<TObject>(object: TObject): TObject;
419
+
420
+ /**
421
+ * @see _.assignInWith
422
+ */
423
+ assignInWith<TResult>(
424
+ object: any,
425
+ ...otherArgs: any[]
426
+ ): TResult;
427
+ }
428
+
429
+ interface LoDashImplicitWrapper<TValue> {
430
+ /**
431
+ * @see _.assignInWith
432
+ */
433
+ assignInWith<TSource>(
434
+ source: TSource,
435
+ customizer: AssignCustomizer
436
+ ): LoDashImplicitWrapper<TValue & TSource>;
437
+
438
+ /**
439
+ * @see assignInWith
440
+ */
441
+ assignInWith<TSource1, TSource2>(
442
+ source1: TSource1,
443
+ source2: TSource2,
444
+ customizer: AssignCustomizer
445
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2>;
446
+
447
+ /**
448
+ * @see assignInWith
449
+ */
450
+ assignInWith<TSource1, TSource2, TSource3>(
451
+ source1: TSource1,
452
+ source2: TSource2,
453
+ source3: TSource3,
454
+ customizer: AssignCustomizer
455
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
456
+
457
+ /**
458
+ * @see assignInWith
459
+ */
460
+ assignInWith<TSource1, TSource2, TSource3, TSource4>(
461
+ source1: TSource1,
462
+ source2: TSource2,
463
+ source3: TSource3,
464
+ source4: TSource4,
465
+ customizer: AssignCustomizer
466
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
467
+
468
+ /**
469
+ * @see _.assignInWith
470
+ */
471
+ assignInWith(): LoDashImplicitWrapper<TValue>;
472
+
473
+ /**
474
+ * @see _.assignInWith
475
+ */
476
+ assignInWith<TResult>(...otherArgs: any[]): LoDashImplicitWrapper<TResult>;
477
+ }
478
+
479
+ interface LoDashExplicitWrapper<TValue> {
480
+ /**
481
+ * @see _.assignInWith
482
+ */
483
+ assignInWith<TSource>(
484
+ source: TSource,
485
+ customizer: AssignCustomizer
486
+ ): LoDashExplicitWrapper<TValue & TSource>;
487
+
488
+ /**
489
+ * @see assignInWith
490
+ */
491
+ assignInWith<TSource1, TSource2>(
492
+ source1: TSource1,
493
+ source2: TSource2,
494
+ customizer: AssignCustomizer
495
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2>;
496
+
497
+ /**
498
+ * @see assignInWith
499
+ */
500
+ assignInWith<TSource1, TSource2, TSource3>(
501
+ source1: TSource1,
502
+ source2: TSource2,
503
+ source3: TSource3,
504
+ customizer: AssignCustomizer
505
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
506
+
507
+ /**
508
+ * @see assignInWith
509
+ */
510
+ assignInWith<TSource1, TSource2, TSource3, TSource4>(
511
+ source1: TSource1,
512
+ source2: TSource2,
513
+ source3: TSource3,
514
+ source4: TSource4,
515
+ customizer: AssignCustomizer
516
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
517
+
518
+ /**
519
+ * @see _.assignInWith
520
+ */
521
+ assignInWith(): LoDashExplicitWrapper<TValue>;
522
+
523
+ /**
524
+ * @see _.assignInWith
525
+ */
526
+ assignInWith(...otherArgs: any[]): LoDashExplicitWrapper<any>;
527
+ }
528
+
529
+ // assignWith
530
+
531
+ interface LoDashStatic {
532
+ /**
533
+ * This method is like `_.assign` except that it accepts `customizer` which
534
+ * is invoked to produce the assigned values. If `customizer` returns `undefined`
535
+ * assignment is handled by the method instead. The `customizer` is invoked
536
+ * with five arguments: (objValue, srcValue, key, object, source).
537
+ *
538
+ * **Note:** This method mutates `object`.
539
+ *
540
+ * @category Object
541
+ * @param object The destination object.
542
+ * @param sources The source objects.
543
+ * @param [customizer] The function to customize assigned values.
544
+ * @returns Returns `object`.
545
+ * @example
546
+ *
547
+ * function customizer(objValue, srcValue) {
548
+ * return _.isUndefined(objValue) ? srcValue : objValue;
549
+ * }
550
+ *
551
+ * var defaults = _.partialRight(_.assignWith, customizer);
552
+ *
553
+ * defaults({ 'a': 1 }, { 'b': 2 }, { 'a': 3 });
554
+ * // => { 'a': 1, 'b': 2 }
555
+ */
556
+ assignWith<TObject, TSource>(
557
+ object: TObject,
558
+ source: TSource,
559
+ customizer: AssignCustomizer
560
+ ): TObject & TSource;
561
+
562
+ /**
563
+ * @see assignWith
564
+ */
565
+ assignWith<TObject, TSource1, TSource2>(
566
+ object: TObject,
567
+ source1: TSource1,
568
+ source2: TSource2,
569
+ customizer: AssignCustomizer
570
+ ): TObject & TSource1 & TSource2;
571
+
572
+ /**
573
+ * @see assignWith
574
+ */
575
+ assignWith<TObject, TSource1, TSource2, TSource3>(
576
+ object: TObject,
577
+ source1: TSource1,
578
+ source2: TSource2,
579
+ source3: TSource3,
580
+ customizer: AssignCustomizer
581
+ ): TObject & TSource1 & TSource2 & TSource3;
582
+
583
+ /**
584
+ * @see assignWith
585
+ */
586
+ assignWith<TObject, TSource1, TSource2, TSource3, TSource4>(
587
+ object: TObject,
588
+ source1: TSource1,
589
+ source2: TSource2,
590
+ source3: TSource3,
591
+ source4: TSource4,
592
+ customizer: AssignCustomizer
593
+ ): TObject & TSource1 & TSource2 & TSource3 & TSource4;
594
+
595
+ /**
596
+ * @see _.assignWith
597
+ */
598
+ assignWith<TObject>(object: TObject): TObject;
599
+
600
+ /**
601
+ * @see _.assignWith
602
+ */
603
+ assignWith<TResult>(
604
+ object: any,
605
+ ...otherArgs: any[]
606
+ ): TResult;
607
+ }
608
+
609
+ interface LoDashImplicitWrapper<TValue> {
610
+ /**
611
+ * @see _.assignWith
612
+ */
613
+ assignWith<TSource>(
614
+ source: TSource,
615
+ customizer: AssignCustomizer
616
+ ): LoDashImplicitWrapper<TValue & TSource>;
617
+
618
+ /**
619
+ * @see assignWith
620
+ */
621
+ assignWith<TSource1, TSource2>(
622
+ source1: TSource1,
623
+ source2: TSource2,
624
+ customizer: AssignCustomizer
625
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2>;
626
+
627
+ /**
628
+ * @see assignWith
629
+ */
630
+ assignWith<TSource1, TSource2, TSource3>(
631
+ source1: TSource1,
632
+ source2: TSource2,
633
+ source3: TSource3,
634
+ customizer: AssignCustomizer
635
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
636
+
637
+ /**
638
+ * @see assignWith
639
+ */
640
+ assignWith<TSource1, TSource2, TSource3, TSource4>(
641
+ source1: TSource1,
642
+ source2: TSource2,
643
+ source3: TSource3,
644
+ source4: TSource4,
645
+ customizer: AssignCustomizer
646
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
647
+
648
+ /**
649
+ * @see _.assignWith
650
+ */
651
+ assignWith(): LoDashImplicitWrapper<TValue>;
652
+
653
+ /**
654
+ * @see _.assignWith
655
+ */
656
+ assignWith<TResult>(...otherArgs: any[]): LoDashImplicitWrapper<TResult>;
657
+ }
658
+
659
+ interface LoDashExplicitWrapper<TValue> {
660
+ /**
661
+ * @see _.assignWith
662
+ */
663
+ assignWith<TSource>(
664
+ source: TSource,
665
+ customizer: AssignCustomizer
666
+ ): LoDashExplicitWrapper<TValue & TSource>;
667
+
668
+ /**
669
+ * @see assignWith
670
+ */
671
+ assignWith<TSource1, TSource2>(
672
+ source1: TSource1,
673
+ source2: TSource2,
674
+ customizer: AssignCustomizer
675
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2>;
676
+
677
+ /**
678
+ * @see assignWith
679
+ */
680
+ assignWith<TSource1, TSource2, TSource3>(
681
+ source1: TSource1,
682
+ source2: TSource2,
683
+ source3: TSource3,
684
+ customizer: AssignCustomizer
685
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
686
+
687
+ /**
688
+ * @see assignWith
689
+ */
690
+ assignWith<TSource1, TSource2, TSource3, TSource4>(
691
+ source1: TSource1,
692
+ source2: TSource2,
693
+ source3: TSource3,
694
+ source4: TSource4,
695
+ customizer: AssignCustomizer
696
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
697
+
698
+ /**
699
+ * @see _.assignWith
700
+ */
701
+ assignWith(): LoDashExplicitWrapper<TValue>;
702
+
703
+ /**
704
+ * @see _.assignWith
705
+ */
706
+ assignWith(...otherArgs: any[]): LoDashExplicitWrapper<any>;
707
+ }
708
+
709
+ // at
710
+
711
+ interface LoDashStatic {
712
+ /**
713
+ * Creates an array of elements corresponding to the given keys, or indexes, of collection. Keys may be
714
+ * specified as individual arguments or as arrays of keys.
715
+ *
716
+ * @param object The object to iterate over.
717
+ * @param props The property names or indexes of elements to pick, specified individually or in arrays.
718
+ * @return Returns the new array of picked elements.
719
+ */
720
+ at<T>(
721
+ object: List<T> | Dictionary<T> | null | undefined,
722
+ ...props: PropertyPath[]
723
+ ): T[];
724
+
725
+ /**
726
+ * @see _.at
727
+ */
728
+ at<T extends object>(
729
+ object: T | null | undefined,
730
+ ...props: Array<Many<keyof T>>
731
+ ): Array<T[keyof T]>;
732
+ }
733
+
734
+ interface LoDashImplicitWrapper<TValue> {
735
+ /**
736
+ * @see _.at
737
+ */
738
+ at<T>(
739
+ this: LoDashImplicitWrapper<List<T> | Dictionary<T> | null | undefined>,
740
+ ...props: PropertyPath[]
741
+ ): LoDashImplicitWrapper<T[]>;
742
+
743
+ /**
744
+ * @see _.at
745
+ */
746
+ at<T extends object>(
747
+ this: LoDashImplicitWrapper<T | null | undefined>,
748
+ ...props: Array<Many<keyof T>>
749
+ ): LoDashImplicitWrapper<Array<T[keyof T]>>;
750
+ }
751
+
752
+ interface LoDashExplicitWrapper<TValue> {
753
+ /**
754
+ * @see _.at
755
+ */
756
+ at<T>(
757
+ this: LoDashExplicitWrapper<List<T> | Dictionary<T> | null | undefined>,
758
+ ...props: PropertyPath[]
759
+ ): LoDashExplicitWrapper<T[]>;
760
+
761
+ /**
762
+ * @see _.at
763
+ */
764
+ at<T extends object>(
765
+ this: LoDashExplicitWrapper<T | null | undefined>,
766
+ ...props: Array<Many<keyof T>>
767
+ ): LoDashExplicitWrapper<Array<T[keyof T]>>;
768
+ }
769
+
770
+ // create
771
+
772
+ interface LoDashStatic {
773
+ /**
774
+ * Creates an object that inherits from the given prototype object. If a properties object is provided its own
775
+ * enumerable properties are assigned to the created object.
776
+ *
777
+ * @param prototype The object to inherit from.
778
+ * @param properties The properties to assign to the object.
779
+ * @return Returns the new object.
780
+ */
781
+ create<T extends object, U extends object>(
782
+ prototype: T,
783
+ properties?: U
784
+ ): T & U;
785
+ }
786
+
787
+ interface LoDashImplicitWrapper<TValue> {
788
+ /**
789
+ * @see _.create
790
+ */
791
+ create<U extends object>(properties?: U): LoDashImplicitWrapper<TValue & U>;
792
+ }
793
+
794
+ interface LoDashExplicitWrapper<TValue> {
795
+ /**
796
+ * @see _.create
797
+ */
798
+ create<U extends object>(properties?: U): LoDashExplicitWrapper<TValue & U>;
799
+ }
800
+
801
+ // defaults
802
+
803
+ interface LoDashStatic {
804
+ /**
805
+ * Assigns own enumerable properties of source object(s) to the destination object for all destination
806
+ * properties that resolve to undefined. Once a property is set, additional values of the same property are
807
+ * ignored.
808
+ *
809
+ * Note: This method mutates object.
810
+ *
811
+ * @param object The destination object.
812
+ * @param sources The source objects.
813
+ * @return The destination object.
814
+ */
815
+ defaults<TObject, TSource>(
816
+ object: TObject,
817
+ source: TSource
818
+ ): TSource & TObject;
819
+
820
+ /**
821
+ * @see _.defaults
822
+ */
823
+ defaults<TObject, TSource1, TSource2>(
824
+ object: TObject,
825
+ source1: TSource1,
826
+ source2: TSource2
827
+ ): TSource2 & TSource1 & TObject;
828
+
829
+ /**
830
+ * @see _.defaults
831
+ */
832
+ defaults<TObject, TSource1, TSource2, TSource3>(
833
+ object: TObject,
834
+ source1: TSource1,
835
+ source2: TSource2,
836
+ source3: TSource3
837
+ ): TSource3 & TSource2 & TSource1 & TObject;
838
+
839
+ /**
840
+ * @see _.defaults
841
+ */
842
+ defaults<TObject, TSource1, TSource2, TSource3, TSource4>(
843
+ object: TObject,
844
+ source1: TSource1,
845
+ source2: TSource2,
846
+ source3: TSource3,
847
+ source4: TSource4
848
+ ): TSource4 & TSource3 & TSource2 & TSource1 & TObject;
849
+
850
+ /**
851
+ * @see _.defaults
852
+ */
853
+ defaults<TObject>(object: TObject): TObject;
854
+
855
+ /**
856
+ * @see _.defaults
857
+ */
858
+ defaults(
859
+ object: any,
860
+ ...sources: any[]
861
+ ): any;
862
+ }
863
+
864
+ interface LoDashImplicitWrapper<TValue> {
865
+ /**
866
+ * @see _.defaults
867
+ */
868
+ defaults<TSource>(
869
+ source: TSource
870
+ ): LoDashImplicitWrapper<TSource & TValue>;
871
+
872
+ /**
873
+ * @see _.defaults
874
+ */
875
+ defaults<TSource1, TSource2>(
876
+ source1: TSource1,
877
+ source2: TSource2
878
+ ): LoDashImplicitWrapper<TSource2 & TSource1 & TValue>;
879
+
880
+ /**
881
+ * @see _.defaults
882
+ */
883
+ defaults<TSource1, TSource2, TSource3>(
884
+ source1: TSource1,
885
+ source2: TSource2,
886
+ source3: TSource3
887
+ ): LoDashImplicitWrapper<TSource3 & TSource2 & TSource1 & TValue>;
888
+
889
+ /**
890
+ * @see _.defaults
891
+ */
892
+ defaults<TSource1, TSource2, TSource3, TSource4>(
893
+ source1: TSource1,
894
+ source2: TSource2,
895
+ source3: TSource3,
896
+ source4: TSource4
897
+ ): LoDashImplicitWrapper<TSource4 & TSource3 & TSource2 & TSource1 & TValue>;
898
+
899
+ /**
900
+ * @see _.defaults
901
+ */
902
+ defaults(): LoDashImplicitWrapper<TValue>;
903
+
904
+ /**
905
+ * @see _.defaults
906
+ */
907
+ defaults(...sources: any[]): LoDashImplicitWrapper<any>;
908
+ }
909
+
910
+ interface LoDashExplicitWrapper<TValue> {
911
+ /**
912
+ * @see _.defaults
913
+ */
914
+ defaults<TSource>(
915
+ source: TSource
916
+ ): LoDashExplicitWrapper<TSource & TValue>;
917
+
918
+ /**
919
+ * @see _.defaults
920
+ */
921
+ defaults<TSource1, TSource2>(
922
+ source1: TSource1,
923
+ source2: TSource2
924
+ ): LoDashExplicitWrapper<TSource2 & TSource1 & TValue>;
925
+
926
+ /**
927
+ * @see _.defaults
928
+ */
929
+ defaults<TSource1, TSource2, TSource3>(
930
+ source1: TSource1,
931
+ source2: TSource2,
932
+ source3: TSource3
933
+ ): LoDashExplicitWrapper<TSource3 & TSource2 & TSource1 & TValue>;
934
+
935
+ /**
936
+ * @see _.defaults
937
+ */
938
+ defaults<TSource1, TSource2, TSource3, TSource4>(
939
+ source1: TSource1,
940
+ source2: TSource2,
941
+ source3: TSource3,
942
+ source4: TSource4
943
+ ): LoDashExplicitWrapper<TSource4 & TSource3 & TSource2 & TSource1 & TValue>;
944
+
945
+ /**
946
+ * @see _.defaults
947
+ */
948
+ defaults(): LoDashExplicitWrapper<TValue>;
949
+
950
+ /**
951
+ * @see _.defaults
952
+ */
953
+ defaults(...sources: any[]): LoDashExplicitWrapper<any>;
954
+ }
955
+
956
+ // defaultsDeep
957
+
958
+ interface LoDashStatic {
959
+ /**
960
+ * This method is like _.defaults except that it recursively assigns default properties.
961
+ * @param object The destination object.
962
+ * @param sources The source objects.
963
+ * @return Returns object.
964
+ **/
965
+ defaultsDeep(
966
+ object: any,
967
+ ...sources: any[]): any;
968
+ }
969
+
970
+ interface LoDashImplicitWrapper<TValue> {
971
+ /**
972
+ * @see _.defaultsDeep
973
+ **/
974
+ defaultsDeep(...sources: any[]): LoDashImplicitWrapper<any>;
975
+ }
976
+
977
+ interface LoDashExplicitWrapper<TValue> {
978
+ /**
979
+ * @see _.defaultsDeep
980
+ **/
981
+ defaultsDeep(...sources: any[]): LoDashExplicitWrapper<any>;
982
+ }
983
+
984
+ // entries
985
+
986
+ interface LoDashStatic {
987
+ /**
988
+ * @see _.toPairs
989
+ */
990
+ entries<T>(object?: Dictionary<T>): Array<[string, T]>;
991
+
992
+ /**
993
+ * @see _.toPairs
994
+ */
995
+ entries(object?: object): Array<[string, any]>;
996
+ }
997
+
998
+ interface LoDashImplicitWrapper<TValue> {
999
+ /**
1000
+ * @see _.toPairs
1001
+ */
1002
+ entries<T>(this: LoDashImplicitWrapper<Dictionary<T>>): LoDashImplicitWrapper<Array<[string, T]>>;
1003
+
1004
+ /**
1005
+ * @see _.toPairs
1006
+ */
1007
+ entries(): LoDashImplicitWrapper<Array<[string, any]>>;
1008
+ }
1009
+
1010
+ interface LoDashExplicitWrapper<TValue> {
1011
+ /**
1012
+ * @see _.toPairs
1013
+ */
1014
+ entries<T>(this: LoDashExplicitWrapper<Dictionary<T>>): LoDashExplicitWrapper<Array<[string, T]>>;
1015
+
1016
+ /**
1017
+ * @see _.toPairs
1018
+ */
1019
+ entries(): LoDashExplicitWrapper<Array<[string, any]>>;
1020
+ }
1021
+
1022
+ // entriesIn
1023
+
1024
+ interface LoDashStatic {
1025
+ /**
1026
+ * @see _.entriesIn
1027
+ */
1028
+ entriesIn<T>(object?: Dictionary<T>): Array<[string, T]>;
1029
+
1030
+ /**
1031
+ * @see _.entriesIn
1032
+ */
1033
+ entriesIn(object?: object): Array<[string, any]>;
1034
+ }
1035
+
1036
+ interface LoDashImplicitWrapper<TValue> {
1037
+ /**
1038
+ * @see _.entriesIn
1039
+ */
1040
+ entriesIn<T>(this: LoDashImplicitWrapper<Dictionary<T>>): LoDashImplicitWrapper<Array<[string, T]>>;
1041
+
1042
+ /**
1043
+ * @see _.entriesIn
1044
+ */
1045
+ entriesIn(): LoDashImplicitWrapper<Array<[string, any]>>;
1046
+ }
1047
+
1048
+ interface LoDashExplicitWrapper<TValue> {
1049
+ /**
1050
+ * @see _.entriesIn
1051
+ */
1052
+ entriesIn<T>(this: LoDashExplicitWrapper<Dictionary<T>>): LoDashExplicitWrapper<Array<[string, T]>>;
1053
+
1054
+ /**
1055
+ * @see _.entriesIn
1056
+ */
1057
+ entriesIn(): LoDashExplicitWrapper<Array<[string, any]>>;
1058
+ }
1059
+
1060
+ // extend
1061
+
1062
+ interface LoDashStatic {
1063
+ /**
1064
+ * @see _.extend
1065
+ */
1066
+ extend<TObject, TSource>(
1067
+ object: TObject,
1068
+ source: TSource
1069
+ ): TObject & TSource;
1070
+
1071
+ /**
1072
+ * @see _.extend
1073
+ */
1074
+ extend<TObject, TSource1, TSource2>(
1075
+ object: TObject,
1076
+ source1: TSource1,
1077
+ source2: TSource2
1078
+ ): TObject & TSource1 & TSource2;
1079
+
1080
+ /**
1081
+ * @see _.extend
1082
+ */
1083
+ extend<TObject, TSource1, TSource2, TSource3>(
1084
+ object: TObject,
1085
+ source1: TSource1,
1086
+ source2: TSource2,
1087
+ source3: TSource3
1088
+ ): TObject & TSource1 & TSource2 & TSource3;
1089
+
1090
+ /**
1091
+ * @see _.extend
1092
+ */
1093
+ extend<TObject, TSource1, TSource2, TSource3, TSource4>(
1094
+ object: TObject,
1095
+ source1: TSource1,
1096
+ source2: TSource2,
1097
+ source3: TSource3,
1098
+ source4: TSource4
1099
+ ): TObject & TSource1 & TSource2 & TSource3 & TSource4;
1100
+
1101
+ /**
1102
+ * @see _.extend
1103
+ */
1104
+ extend<TObject>(object: TObject): TObject;
1105
+
1106
+ /**
1107
+ * @see _.extend
1108
+ */
1109
+ extend<TResult>(
1110
+ object: any,
1111
+ ...otherArgs: any[]
1112
+ ): TResult;
1113
+ }
1114
+
1115
+ interface LoDashImplicitWrapper<TValue> {
1116
+ /**
1117
+ * @see _.extend
1118
+ */
1119
+ extend<TSource>(
1120
+ source: TSource
1121
+ ): LoDashImplicitWrapper<TValue & TSource>;
1122
+
1123
+ /**
1124
+ * @see _.extend
1125
+ */
1126
+ extend<TSource1, TSource2>(
1127
+ source1: TSource1,
1128
+ source2: TSource2
1129
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2>;
1130
+
1131
+ /**
1132
+ * @see _.extend
1133
+ */
1134
+ extend<TSource1, TSource2, TSource3>(
1135
+ source1: TSource1,
1136
+ source2: TSource2,
1137
+ source3: TSource3
1138
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
1139
+
1140
+ /**
1141
+ * @see _.extend
1142
+ */
1143
+ extend<TSource1, TSource2, TSource3, TSource4>(
1144
+ source1: TSource1,
1145
+ source2: TSource2,
1146
+ source3: TSource3,
1147
+ source4: TSource4
1148
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
1149
+
1150
+ /**
1151
+ * @see _.extend
1152
+ */
1153
+ extend(): LoDashImplicitWrapper<TValue>;
1154
+
1155
+ /**
1156
+ * @see _.extend
1157
+ */
1158
+ extend(...otherArgs: any[]): LoDashImplicitWrapper<any>;
1159
+ }
1160
+
1161
+ interface LoDashExplicitWrapper<TValue> {
1162
+ /**
1163
+ * @see _.extend
1164
+ */
1165
+ extend<TSource>(
1166
+ source: TSource
1167
+ ): LoDashExplicitWrapper<TValue & TSource>;
1168
+
1169
+ /**
1170
+ * @see _.extend
1171
+ */
1172
+ extend<TSource1, TSource2>(
1173
+ source1: TSource1,
1174
+ source2: TSource2
1175
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2>;
1176
+
1177
+ /**
1178
+ * @see _.extend
1179
+ */
1180
+ extend<TSource1, TSource2, TSource3>(
1181
+ source1: TSource1,
1182
+ source2: TSource2,
1183
+ source3: TSource3
1184
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
1185
+
1186
+ /**
1187
+ * @see _.extend
1188
+ */
1189
+ extend<TSource1, TSource2, TSource3, TSource4>(
1190
+ source1: TSource1,
1191
+ source2: TSource2,
1192
+ source3: TSource3,
1193
+ source4: TSource4
1194
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
1195
+
1196
+ /**
1197
+ * @see _.extend
1198
+ */
1199
+ extend(): LoDashExplicitWrapper<TValue>;
1200
+
1201
+ /**
1202
+ * @see _.extend
1203
+ */
1204
+ extend(...otherArgs: any[]): LoDashExplicitWrapper<any>;
1205
+ }
1206
+
1207
+ // extendWith
1208
+
1209
+ interface LoDashStatic {
1210
+ /**
1211
+ * @see _.extendWith
1212
+ */
1213
+ extendWith<TObject, TSource>(
1214
+ object: TObject,
1215
+ source: TSource,
1216
+ customizer: AssignCustomizer
1217
+ ): TObject & TSource;
1218
+
1219
+ /**
1220
+ * @see _.extendWith
1221
+ */
1222
+ extendWith<TObject, TSource1, TSource2>(
1223
+ object: TObject,
1224
+ source1: TSource1,
1225
+ source2: TSource2,
1226
+ customizer: AssignCustomizer
1227
+ ): TObject & TSource1 & TSource2;
1228
+
1229
+ /**
1230
+ * @see _.extendWith
1231
+ */
1232
+ extendWith<TObject, TSource1, TSource2, TSource3>(
1233
+ object: TObject,
1234
+ source1: TSource1,
1235
+ source2: TSource2,
1236
+ source3: TSource3,
1237
+ customizer: AssignCustomizer
1238
+ ): TObject & TSource1 & TSource2 & TSource3;
1239
+
1240
+ /**
1241
+ * @see _.extendWith
1242
+ */
1243
+ extendWith<TObject, TSource1, TSource2, TSource3, TSource4>(
1244
+ object: TObject,
1245
+ source1: TSource1,
1246
+ source2: TSource2,
1247
+ source3: TSource3,
1248
+ source4: TSource4,
1249
+ customizer: AssignCustomizer
1250
+ ): TObject & TSource1 & TSource2 & TSource3 & TSource4;
1251
+
1252
+ /**
1253
+ * @see _.extendWith
1254
+ */
1255
+ extendWith<TObject>(object: TObject): TObject;
1256
+
1257
+ /**
1258
+ * @see _.extendWith
1259
+ */
1260
+ extendWith<TResult>(
1261
+ object: any,
1262
+ ...otherArgs: any[]
1263
+ ): TResult;
1264
+ }
1265
+
1266
+ interface LoDashImplicitWrapper<TValue> {
1267
+ /**
1268
+ * @see _.extendWith
1269
+ */
1270
+ extendWith<TSource>(
1271
+ source: TSource,
1272
+ customizer: AssignCustomizer
1273
+ ): LoDashImplicitWrapper<TValue & TSource>;
1274
+
1275
+ /**
1276
+ * @see _.extendWith
1277
+ */
1278
+ extendWith<TSource1, TSource2>(
1279
+ source1: TSource1,
1280
+ source2: TSource2,
1281
+ customizer: AssignCustomizer
1282
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2>;
1283
+
1284
+ /**
1285
+ * @see _.extendWith
1286
+ */
1287
+ extendWith<TSource1, TSource2, TSource3>(
1288
+ source1: TSource1,
1289
+ source2: TSource2,
1290
+ source3: TSource3,
1291
+ customizer: AssignCustomizer
1292
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
1293
+
1294
+ /**
1295
+ * @see _.extendWith
1296
+ */
1297
+ extendWith<TSource1, TSource2, TSource3, TSource4>(
1298
+ source1: TSource1,
1299
+ source2: TSource2,
1300
+ source3: TSource3,
1301
+ source4: TSource4,
1302
+ customizer: AssignCustomizer
1303
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
1304
+
1305
+ /**
1306
+ * @see _.extendWith
1307
+ */
1308
+ extendWith(): LoDashImplicitWrapper<TValue>;
1309
+
1310
+ /**
1311
+ * @see _.extendWith
1312
+ */
1313
+ extendWith(...otherArgs: any[]): LoDashImplicitWrapper<any>;
1314
+ }
1315
+
1316
+ interface LoDashExplicitWrapper<TValue> {
1317
+ /**
1318
+ * @see _.extendWith
1319
+ */
1320
+ extendWith<TSource>(
1321
+ source: TSource,
1322
+ customizer: AssignCustomizer
1323
+ ): LoDashExplicitWrapper<TValue & TSource>;
1324
+
1325
+ /**
1326
+ * @see _.extendWith
1327
+ */
1328
+ extendWith<TSource1, TSource2>(
1329
+ source1: TSource1,
1330
+ source2: TSource2,
1331
+ customizer: AssignCustomizer
1332
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2>;
1333
+
1334
+ /**
1335
+ * @see _.extendWith
1336
+ */
1337
+ extendWith<TSource1, TSource2, TSource3>(
1338
+ source1: TSource1,
1339
+ source2: TSource2,
1340
+ source3: TSource3,
1341
+ customizer: AssignCustomizer
1342
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
1343
+
1344
+ /**
1345
+ * @see _.extendWith
1346
+ */
1347
+ extendWith<TSource1, TSource2, TSource3, TSource4>(
1348
+ source1: TSource1,
1349
+ source2: TSource2,
1350
+ source3: TSource3,
1351
+ source4: TSource4,
1352
+ customizer: AssignCustomizer
1353
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
1354
+
1355
+ /**
1356
+ * @see _.extendWith
1357
+ */
1358
+ extendWith(): LoDashExplicitWrapper<TValue>;
1359
+
1360
+ /**
1361
+ * @see _.extendWith
1362
+ */
1363
+ extendWith(...otherArgs: any[]): LoDashExplicitWrapper<any>;
1364
+ }
1365
+
1366
+ // findKey
1367
+
1368
+ interface LoDashStatic {
1369
+ /**
1370
+ * This method is like _.find except that it returns the key of the first element predicate returns truthy for
1371
+ * instead of the element itself.
1372
+ *
1373
+ * If a property name is provided for predicate the created _.property style callback returns the property
1374
+ * value of the given element.
1375
+ *
1376
+ * If a value is also provided for thisArg the created _.matchesProperty style callback returns true for
1377
+ * elements that have a matching property value, else false.
1378
+ *
1379
+ * If an object is provided for predicate the created _.matches style callback returns true for elements that
1380
+ * have the properties of the given object, else false.
1381
+ *
1382
+ * @param object The object to search.
1383
+ * @param predicate The function invoked per iteration.
1384
+ * @param thisArg The this binding of predicate.
1385
+ * @return Returns the key of the matched element, else undefined.
1386
+ */
1387
+ findKey<T>(
1388
+ object: T | null | undefined,
1389
+ predicate?: ObjectIteratee<T>
1390
+ ): string | undefined;
1391
+ }
1392
+
1393
+ interface LoDashImplicitWrapper<TValue> {
1394
+ /**
1395
+ * @see _.findKey
1396
+ */
1397
+ findKey<T>(
1398
+ this: LoDashImplicitWrapper<T | null | undefined>,
1399
+ predicate?: ObjectIteratee<T>
1400
+ ): string | undefined;
1401
+ }
1402
+
1403
+ interface LoDashExplicitWrapper<TValue> {
1404
+ /**
1405
+ * @see _.findKey
1406
+ */
1407
+ findKey<T>(
1408
+ this: LoDashExplicitWrapper<T | null | undefined>,
1409
+ predicate?: ObjectIteratee<T>
1410
+ ): LoDashExplicitWrapper<string | undefined>;
1411
+ }
1412
+
1413
+ // findLastKey
1414
+
1415
+ interface LoDashStatic {
1416
+ /**
1417
+ * This method is like _.findKey except that it iterates over elements of a collection in the opposite order.
1418
+ *
1419
+ * If a property name is provided for predicate the created _.property style callback returns the property
1420
+ * value of the given element.
1421
+ *
1422
+ * If a value is also provided for thisArg the created _.matchesProperty style callback returns true for
1423
+ * elements that have a matching property value, else false.
1424
+ *
1425
+ * If an object is provided for predicate the created _.matches style callback returns true for elements that
1426
+ * have the properties of the given object, else false.
1427
+ *
1428
+ * @param object The object to search.
1429
+ * @param predicate The function invoked per iteration.
1430
+ * @param thisArg The this binding of predicate.
1431
+ * @return Returns the key of the matched element, else undefined.
1432
+ */
1433
+ findLastKey<T>(
1434
+ object: T | null | undefined,
1435
+ predicate?: ObjectIteratee<T>
1436
+ ): string | undefined;
1437
+ }
1438
+
1439
+ interface LoDashImplicitWrapper<TValue> {
1440
+ /**
1441
+ * @see _.findLastKey
1442
+ */
1443
+ findLastKey<T>(
1444
+ this: LoDashImplicitWrapper<T | null | undefined>,
1445
+ predicate?: ObjectIteratee<T>
1446
+ ): string | undefined;
1447
+ }
1448
+
1449
+ interface LoDashExplicitWrapper<TValue> {
1450
+ /**
1451
+ * @see _.findLastKey
1452
+ */
1453
+ findLastKey<T>(
1454
+ this: LoDashExplicitWrapper<T | null | undefined>,
1455
+ predicate?: ObjectIteratee<T>
1456
+ ): LoDashExplicitWrapper<string | undefined>;
1457
+ }
1458
+
1459
+ // forIn
1460
+
1461
+ interface LoDashStatic {
1462
+ /**
1463
+ * Iterates over own and inherited enumerable properties of an object invoking iteratee for each property. The
1464
+ * iteratee is bound to thisArg and invoked with three arguments: (value, key, object). Iteratee functions may
1465
+ * exit iteration early by explicitly returning false.
1466
+ *
1467
+ * @param object The object to iterate over.
1468
+ * @param iteratee The function invoked per iteration.
1469
+ * @param thisArg The this binding of iteratee.
1470
+ * @return Returns object.
1471
+ */
1472
+ forIn<T>(
1473
+ object: T,
1474
+ iteratee?: ObjectIterator<T, any>
1475
+ ): T;
1476
+
1477
+ /**
1478
+ * @see _.forIn
1479
+ */
1480
+ forIn<T>(
1481
+ object: T | null | undefined,
1482
+ iteratee?: ObjectIterator<T, any>
1483
+ ): T | null | undefined;
1484
+ }
1485
+
1486
+ interface LoDashWrapper<TValue> {
1487
+ /**
1488
+ * @see _.forIn
1489
+ */
1490
+ forIn<T>(
1491
+ this: LoDashWrapper<T | null | undefined>,
1492
+ iteratee?: ObjectIterator<T, any>
1493
+ ): this;
1494
+ }
1495
+
1496
+ // forInRight
1497
+
1498
+ interface LoDashStatic {
1499
+ /**
1500
+ * This method is like _.forIn except that it iterates over properties of object in the opposite order.
1501
+ *
1502
+ * @param object The object to iterate over.
1503
+ * @param iteratee The function invoked per iteration.
1504
+ * @param thisArg The this binding of iteratee.
1505
+ * @return Returns object.
1506
+ */
1507
+ forInRight<T>(
1508
+ object: T,
1509
+ iteratee?: ObjectIterator<T, any>
1510
+ ): T;
1511
+
1512
+ /**
1513
+ * @see _.forInRight
1514
+ */
1515
+ forInRight<T>(
1516
+ object: T | null | undefined,
1517
+ iteratee?: ObjectIterator<T, any>
1518
+ ): T | null | undefined;
1519
+ }
1520
+
1521
+ interface LoDashWrapper<TValue> {
1522
+ /**
1523
+ * @see _.forInRight
1524
+ */
1525
+ forInRight<T>(
1526
+ this: LoDashWrapper<T | null | undefined>,
1527
+ iteratee?: ObjectIterator<T, any>
1528
+ ): this;
1529
+ }
1530
+
1531
+ // forOwn
1532
+
1533
+ interface LoDashStatic {
1534
+ /**
1535
+ * Iterates over own enumerable properties of an object invoking iteratee for each property. The iteratee is
1536
+ * bound to thisArg and invoked with three arguments: (value, key, object). Iteratee functions may exit
1537
+ * iteration early by explicitly returning false.
1538
+ *
1539
+ * @param object The object to iterate over.
1540
+ * @param iteratee The function invoked per iteration.
1541
+ * @param thisArg The this binding of iteratee.
1542
+ * @return Returns object.
1543
+ */
1544
+ forOwn<T>(
1545
+ object: T,
1546
+ iteratee?: ObjectIterator<T, any>
1547
+ ): T;
1548
+
1549
+ /**
1550
+ * @see _.forOwn
1551
+ */
1552
+ forOwn<T>(
1553
+ object: T | null | undefined,
1554
+ iteratee?: ObjectIterator<T, any>
1555
+ ): T | null | undefined;
1556
+ }
1557
+
1558
+ interface LoDashWrapper<TValue> {
1559
+ /**
1560
+ * @see _.forOwn
1561
+ */
1562
+ forOwn<T>(
1563
+ this: LoDashWrapper<T | null | undefined>,
1564
+ iteratee?: ObjectIterator<T, any>
1565
+ ): this;
1566
+ }
1567
+
1568
+ // forOwnRight
1569
+
1570
+ interface LoDashStatic {
1571
+ /**
1572
+ * This method is like _.forOwn except that it iterates over properties of object in the opposite order.
1573
+ *
1574
+ * @param object The object to iterate over.
1575
+ * @param iteratee The function invoked per iteration.
1576
+ * @param thisArg The this binding of iteratee.
1577
+ * @return Returns object.
1578
+ */
1579
+ forOwnRight<T>(
1580
+ object: T,
1581
+ iteratee?: ObjectIterator<T, any>
1582
+ ): T;
1583
+
1584
+ /**
1585
+ * @see _.forOwnRight
1586
+ */
1587
+ forOwnRight<T>(
1588
+ object: T | null | undefined,
1589
+ iteratee?: ObjectIterator<T, any>
1590
+ ): T | null | undefined;
1591
+ }
1592
+
1593
+ interface LoDashWrapper<TValue> {
1594
+ /**
1595
+ * @see _.forOwnRight
1596
+ */
1597
+ forOwnRight<T>(
1598
+ this: LoDashWrapper<T | null | undefined>,
1599
+ iteratee?: ObjectIterator<T, any>
1600
+ ): this;
1601
+ }
1602
+
1603
+ // functions
1604
+
1605
+ interface LoDashStatic {
1606
+ /**
1607
+ * Creates an array of function property names from own enumerable properties
1608
+ * of `object`.
1609
+ *
1610
+ * @category Object
1611
+ * @param object The object to inspect.
1612
+ * @returns Returns the new array of property names.
1613
+ * @example
1614
+ *
1615
+ * function Foo() {
1616
+ * this.a = _.constant('a');
1617
+ * this.b = _.constant('b');
1618
+ * }
1619
+ *
1620
+ * Foo.prototype.c = _.constant('c');
1621
+ *
1622
+ * _.functions(new Foo);
1623
+ * // => ['a', 'b']
1624
+ */
1625
+ functions(object: any): string[];
1626
+ }
1627
+
1628
+ interface LoDashImplicitWrapper<TValue> {
1629
+ /**
1630
+ * @see _.functions
1631
+ */
1632
+ functions(): LoDashImplicitWrapper<string[]>;
1633
+ }
1634
+
1635
+ interface LoDashExplicitWrapper<TValue> {
1636
+ /**
1637
+ * @see _.functions
1638
+ */
1639
+ functions(): LoDashExplicitWrapper<string[]>;
1640
+ }
1641
+
1642
+ // functionsIn
1643
+
1644
+ interface LoDashStatic {
1645
+ /**
1646
+ * Creates an array of function property names from own and inherited
1647
+ * enumerable properties of `object`.
1648
+ *
1649
+ * @category Object
1650
+ * @param object The object to inspect.
1651
+ * @returns Returns the new array of property names.
1652
+ * @example
1653
+ *
1654
+ * function Foo() {
1655
+ * this.a = _.constant('a');
1656
+ * this.b = _.constant('b');
1657
+ * }
1658
+ *
1659
+ * Foo.prototype.c = _.constant('c');
1660
+ *
1661
+ * _.functionsIn(new Foo);
1662
+ * // => ['a', 'b', 'c']
1663
+ */
1664
+ functionsIn<T extends {}>(object: any): string[];
1665
+ }
1666
+
1667
+ interface LoDashImplicitWrapper<TValue> {
1668
+ /**
1669
+ * @see _.functionsIn
1670
+ */
1671
+ functionsIn(): LoDashImplicitWrapper<string[]>;
1672
+ }
1673
+
1674
+ interface LoDashExplicitWrapper<TValue> {
1675
+ /**
1676
+ * @see _.functionsIn
1677
+ */
1678
+ functionsIn(): LoDashExplicitWrapper<string[]>;
1679
+ }
1680
+
1681
+ // get
1682
+
1683
+ interface LoDashStatic {
1684
+ /**
1685
+ * Gets the property value at path of object. If the resolved value is undefined the defaultValue is used
1686
+ * in its place.
1687
+ *
1688
+ * @param object The object to query.
1689
+ * @param path The path of the property to get.
1690
+ * @param defaultValue The value returned if the resolved value is undefined.
1691
+ * @return Returns the resolved value.
1692
+ */
1693
+ get<TObject extends object, TKey extends keyof TObject>(
1694
+ object: TObject,
1695
+ path: TKey | [TKey]
1696
+ ): TObject[TKey];
1697
+
1698
+ /**
1699
+ * @see _.get
1700
+ */
1701
+ get<TObject extends object, TKey extends keyof TObject>(
1702
+ object: TObject | null | undefined,
1703
+ path: TKey | [TKey]
1704
+ ): TObject[TKey] | undefined;
1705
+
1706
+ /**
1707
+ * @see _.get
1708
+ */
1709
+ get<TObject extends object, TKey extends keyof TObject, TDefault>(
1710
+ object: TObject | null | undefined,
1711
+ path: TKey | [TKey],
1712
+ defaultValue: TDefault
1713
+ ): TObject[TKey] | TDefault;
1714
+
1715
+ /**
1716
+ * @see _.get
1717
+ */
1718
+ get<T>(
1719
+ object: NumericDictionary<T>,
1720
+ path: number
1721
+ ): T;
1722
+
1723
+ /**
1724
+ * @see _.get
1725
+ */
1726
+ get<T>(
1727
+ object: NumericDictionary<T> | null | undefined,
1728
+ path: number
1729
+ ): T | undefined;
1730
+
1731
+ /**
1732
+ * @see _.get
1733
+ */
1734
+ get<T, TDefault>(
1735
+ object: NumericDictionary<T> | null | undefined,
1736
+ path: number,
1737
+ defaultValue: TDefault
1738
+ ): T | TDefault;
1739
+
1740
+ /**
1741
+ * @see _.get
1742
+ */
1743
+ get<TDefault>(
1744
+ object: null | undefined,
1745
+ path: PropertyPath,
1746
+ defaultValue: TDefault
1747
+ ): TDefault;
1748
+
1749
+ /**
1750
+ * @see _.get
1751
+ */
1752
+ get(
1753
+ object: null | undefined,
1754
+ path: PropertyPath
1755
+ ): undefined;
1756
+
1757
+ /**
1758
+ * @see _.get
1759
+ */
1760
+ get(
1761
+ object: any,
1762
+ path: PropertyPath,
1763
+ defaultValue?: any
1764
+ ): any;
1765
+ }
1766
+
1767
+ interface LoDashImplicitWrapper<TValue> {
1768
+ /**
1769
+ * @see _.get
1770
+ */
1771
+ get<TKey extends keyof TValue>(
1772
+ path: TKey | [TKey]
1773
+ ): TValue[TKey];
1774
+
1775
+ /**
1776
+ * @see _.get
1777
+ */
1778
+ get<TObject extends object, TKey extends keyof TObject>(
1779
+ this: LoDashImplicitWrapper<TObject | null | undefined>,
1780
+ path: TKey | [TKey],
1781
+ ): TObject[TKey] | undefined;
1782
+
1783
+ /**
1784
+ * @see _.get
1785
+ */
1786
+ get<TObject extends object, TKey extends keyof TObject, TDefault>(
1787
+ this: LoDashImplicitWrapper<TObject | null | undefined>,
1788
+ path: TKey | [TKey],
1789
+ defaultValue: TDefault
1790
+ ): TObject[TKey] | TDefault;
1791
+
1792
+ /**
1793
+ * @see _.get
1794
+ */
1795
+ get<T>(
1796
+ this: LoDashImplicitWrapper<NumericDictionary<T>>,
1797
+ path: number
1798
+ ): T;
1799
+
1800
+ /**
1801
+ * @see _.get
1802
+ */
1803
+ get<T>(
1804
+ this: LoDashImplicitWrapper<NumericDictionary<T> | null | undefined>,
1805
+ path: number
1806
+ ): T | undefined;
1807
+
1808
+ /**
1809
+ * @see _.get
1810
+ */
1811
+ get<T, TDefault>(
1812
+ this: LoDashImplicitWrapper<NumericDictionary<T> | null | undefined>,
1813
+ path: number,
1814
+ defaultValue: TDefault
1815
+ ): T | TDefault;
1816
+
1817
+ /**
1818
+ * @see _.get
1819
+ */
1820
+ get<TDefault>(
1821
+ this: LoDashImplicitWrapper<null | undefined>,
1822
+ path: PropertyPath,
1823
+ defaultValue: TDefault
1824
+ ): TDefault;
1825
+
1826
+ /**
1827
+ * @see _.get
1828
+ */
1829
+ get(
1830
+ this: LoDashImplicitWrapper<null | undefined>,
1831
+ path: PropertyPath
1832
+ ): undefined;
1833
+
1834
+ /**
1835
+ * @see _.get
1836
+ */
1837
+ get<TResult>(
1838
+ path: PropertyPath,
1839
+ defaultValue?: any
1840
+ ): any;
1841
+ }
1842
+
1843
+ interface LoDashExplicitWrapper<TValue> {
1844
+ /**
1845
+ * @see _.get
1846
+ */
1847
+ get<TKey extends keyof TValue>(
1848
+ path: TKey | [TKey]
1849
+ ): LoDashExplicitWrapper<TValue[TKey]>;
1850
+
1851
+ /**
1852
+ * @see _.get
1853
+ */
1854
+ get<TObject extends object, TKey extends keyof TObject>(
1855
+ this: LoDashExplicitWrapper<TObject | null | undefined>,
1856
+ path: TKey | [TKey],
1857
+ ): LoDashExplicitWrapper<TObject[TKey] | undefined>;
1858
+
1859
+ /**
1860
+ * @see _.get
1861
+ */
1862
+ get<TObject extends object, TKey extends keyof TObject, TDefault>(
1863
+ this: LoDashExplicitWrapper<TObject | null | undefined>,
1864
+ path: TKey | [TKey],
1865
+ defaultValue: TDefault
1866
+ ): LoDashExplicitWrapper<TObject[TKey] | TDefault>;
1867
+
1868
+ /**
1869
+ * @see _.get
1870
+ */
1871
+ get<T>(
1872
+ this: LoDashExplicitWrapper<NumericDictionary<T>>,
1873
+ path: number
1874
+ ): LoDashExplicitWrapper<T>;
1875
+
1876
+ /**
1877
+ * @see _.get
1878
+ */
1879
+ get<T>(
1880
+ this: LoDashExplicitWrapper<NumericDictionary<T> | null | undefined>,
1881
+ path: number
1882
+ ): LoDashExplicitWrapper<T | undefined>;
1883
+
1884
+ /**
1885
+ * @see _.get
1886
+ */
1887
+ get<T, TDefault>(
1888
+ this: LoDashExplicitWrapper<NumericDictionary<T> | null | undefined>,
1889
+ path: number,
1890
+ defaultValue: TDefault
1891
+ ): LoDashExplicitWrapper<T | undefined>;
1892
+
1893
+ /**
1894
+ * @see _.get
1895
+ */
1896
+ get<TDefault>(
1897
+ this: LoDashExplicitWrapper<null | undefined>,
1898
+ path: PropertyPath,
1899
+ defaultValue: TDefault
1900
+ ): LoDashExplicitWrapper<TDefault>;
1901
+
1902
+ /**
1903
+ * @see _.get
1904
+ */
1905
+ get(
1906
+ this: LoDashExplicitWrapper<null | undefined>,
1907
+ path: PropertyPath
1908
+ ): LoDashExplicitWrapper<undefined>;
1909
+
1910
+ /**
1911
+ * @see _.get
1912
+ */
1913
+ get(
1914
+ path: PropertyPath,
1915
+ defaultValue?: any
1916
+ ): LoDashExplicitWrapper<any>;
1917
+ }
1918
+
1919
+ // has
1920
+
1921
+ interface LoDashStatic {
1922
+ /**
1923
+ * Checks if `path` is a direct property of `object`.
1924
+ *
1925
+ * @category Object
1926
+ * @param object The object to query.
1927
+ * @param path The path to check.
1928
+ * @returns Returns `true` if `path` exists, else `false`.
1929
+ * @example
1930
+ *
1931
+ * var object = { 'a': { 'b': { 'c': 3 } } };
1932
+ * var other = _.create({ 'a': _.create({ 'b': _.create({ 'c': 3 }) }) });
1933
+ *
1934
+ * _.has(object, 'a');
1935
+ * // => true
1936
+ *
1937
+ * _.has(object, 'a.b.c');
1938
+ * // => true
1939
+ *
1940
+ * _.has(object, ['a', 'b', 'c']);
1941
+ * // => true
1942
+ *
1943
+ * _.has(other, 'a');
1944
+ * // => false
1945
+ */
1946
+ has<T>(
1947
+ object: T,
1948
+ path: PropertyPath
1949
+ ): boolean;
1950
+ }
1951
+
1952
+ interface LoDashImplicitWrapper<TValue> {
1953
+ /**
1954
+ * @see _.has
1955
+ */
1956
+ has(path: PropertyPath): boolean;
1957
+ }
1958
+
1959
+ interface LoDashExplicitWrapper<TValue> {
1960
+ /**
1961
+ * @see _.has
1962
+ */
1963
+ has(path: PropertyPath): LoDashExplicitWrapper<boolean>;
1964
+ }
1965
+
1966
+ // hasIn
1967
+
1968
+ interface LoDashStatic {
1969
+ /**
1970
+ * Checks if `path` is a direct or inherited property of `object`.
1971
+ *
1972
+ * @category Object
1973
+ * @param object The object to query.
1974
+ * @param path The path to check.
1975
+ * @returns Returns `true` if `path` exists, else `false`.
1976
+ * @example
1977
+ *
1978
+ * var object = _.create({ 'a': _.create({ 'b': _.create({ 'c': 3 }) }) });
1979
+ *
1980
+ * _.hasIn(object, 'a');
1981
+ * // => true
1982
+ *
1983
+ * _.hasIn(object, 'a.b.c');
1984
+ * // => true
1985
+ *
1986
+ * _.hasIn(object, ['a', 'b', 'c']);
1987
+ * // => true
1988
+ *
1989
+ * _.hasIn(object, 'b');
1990
+ * // => false
1991
+ */
1992
+ hasIn<T>(
1993
+ object: T,
1994
+ path: PropertyPath
1995
+ ): boolean;
1996
+ }
1997
+
1998
+ interface LoDashImplicitWrapper<TValue> {
1999
+ /**
2000
+ * @see _.hasIn
2001
+ */
2002
+ hasIn(path: PropertyPath): boolean;
2003
+ }
2004
+
2005
+ interface LoDashExplicitWrapper<TValue> {
2006
+ /**
2007
+ * @see _.hasIn
2008
+ */
2009
+ hasIn(path: PropertyPath): LoDashExplicitWrapper<boolean>;
2010
+ }
2011
+
2012
+ // invert
2013
+
2014
+ interface LoDashStatic {
2015
+ /**
2016
+ * Creates an object composed of the inverted keys and values of object. If object contains duplicate values,
2017
+ * subsequent values overwrite property assignments of previous values unless multiValue is true.
2018
+ *
2019
+ * @param object The object to invert.
2020
+ * @param multiValue Allow multiple values per key.
2021
+ * @return Returns the new inverted object.
2022
+ */
2023
+ invert(
2024
+ object: object
2025
+ ): Dictionary<string>;
2026
+ }
2027
+
2028
+ interface LoDashImplicitWrapper<TValue> {
2029
+ /**
2030
+ * @see _.invert
2031
+ */
2032
+ invert(): LoDashImplicitWrapper<Dictionary<string>>;
2033
+ }
2034
+
2035
+ interface LoDashExplicitWrapper<TValue> {
2036
+ /**
2037
+ * @see _.invert
2038
+ */
2039
+ invert(): LoDashExplicitWrapper<Dictionary<string>>;
2040
+ }
2041
+
2042
+ // invertBy
2043
+
2044
+ interface LoDashStatic {
2045
+ /**
2046
+ * This method is like _.invert except that the inverted object is generated from the results of running each
2047
+ * element of object through iteratee. The corresponding inverted value of each inverted key is an array of
2048
+ * keys responsible for generating the inverted value. The iteratee is invoked with one argument: (value).
2049
+ *
2050
+ * @param object The object to invert.
2051
+ * @param interatee The iteratee invoked per element.
2052
+ * @return Returns the new inverted object.
2053
+ */
2054
+ invertBy<T>(
2055
+ object: List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined,
2056
+ interatee?: ValueIteratee<T>
2057
+ ): Dictionary<string[]>;
2058
+
2059
+ /**
2060
+ * @see _.invertBy
2061
+ */
2062
+ invertBy<T extends object>(
2063
+ object: T | null | undefined,
2064
+ interatee?: ValueIteratee<T[keyof T]>
2065
+ ): Dictionary<string[]>;
2066
+ }
2067
+
2068
+ interface LoDashImplicitWrapper<TValue> {
2069
+ /**
2070
+ * @see _.invertBy
2071
+ */
2072
+ invertBy<T>(
2073
+ this: LoDashImplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
2074
+ interatee?: ValueIteratee<T>
2075
+ ): LoDashImplicitWrapper<Dictionary<string[]>>;
2076
+
2077
+ /**
2078
+ * @see _.invertBy
2079
+ */
2080
+ invertBy<T extends object>(
2081
+ this: LoDashImplicitWrapper<T | null | undefined>,
2082
+ interatee?: ValueIteratee<T[keyof T]>
2083
+ ): LoDashImplicitWrapper<Dictionary<string[]>>;
2084
+ }
2085
+
2086
+ interface LoDashExplicitWrapper<TValue> {
2087
+ /**
2088
+ * @see _.invertBy
2089
+ */
2090
+ invertBy<T>(
2091
+ this: LoDashExplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
2092
+ interatee?: ValueIteratee<T>
2093
+ ): LoDashExplicitWrapper<Dictionary<string[]>>;
2094
+
2095
+ /**
2096
+ * @see _.invertBy
2097
+ */
2098
+ invertBy<T extends object>(
2099
+ this: LoDashExplicitWrapper<T | null | undefined>,
2100
+ interatee?: ValueIteratee<T[keyof T]>
2101
+ ): LoDashExplicitWrapper<Dictionary<string[]>>;
2102
+ }
2103
+
2104
+ // invoke
2105
+
2106
+ interface LoDashStatic {
2107
+ /**
2108
+ * Invokes the method at path of object.
2109
+ * @param object The object to query.
2110
+ * @param path The path of the method to invoke.
2111
+ * @param args The arguments to invoke the method with.
2112
+ **/
2113
+ invoke(
2114
+ object: any,
2115
+ path: PropertyPath,
2116
+ ...args: any[]): any;
2117
+ }
2118
+
2119
+ interface LoDashImplicitWrapper<TValue> {
2120
+ /**
2121
+ * @see _.invoke
2122
+ **/
2123
+ invoke(
2124
+ path: PropertyPath,
2125
+ ...args: any[]): any;
2126
+ }
2127
+
2128
+ interface LoDashExplicitWrapper<TValue> {
2129
+ /**
2130
+ * @see _.invoke
2131
+ **/
2132
+ invoke(
2133
+ path: PropertyPath,
2134
+ ...args: any[]): LoDashExplicitWrapper<any>;
2135
+ }
2136
+
2137
+ // keys
2138
+
2139
+ interface LoDashStatic {
2140
+ /**
2141
+ * Creates an array of the own enumerable property names of object.
2142
+ *
2143
+ * Note: Non-object values are coerced to objects. See the ES spec for more details.
2144
+ *
2145
+ * @param object The object to query.
2146
+ * @return Returns the array of property names.
2147
+ */
2148
+ keys(object?: any): string[];
2149
+ }
2150
+
2151
+ interface LoDashImplicitWrapper<TValue> {
2152
+ /**
2153
+ * @see _.keys
2154
+ */
2155
+ keys(): LoDashImplicitWrapper<string[]>;
2156
+ }
2157
+
2158
+ interface LoDashExplicitWrapper<TValue> {
2159
+ /**
2160
+ * @see _.keys
2161
+ */
2162
+ keys(): LoDashExplicitWrapper<string[]>;
2163
+ }
2164
+
2165
+ // keysIn
2166
+
2167
+ interface LoDashStatic {
2168
+ /**
2169
+ * Creates an array of the own and inherited enumerable property names of object.
2170
+ *
2171
+ * Note: Non-object values are coerced to objects.
2172
+ *
2173
+ * @param object The object to query.
2174
+ * @return An array of property names.
2175
+ */
2176
+ keysIn(object?: any): string[];
2177
+ }
2178
+
2179
+ interface LoDashImplicitWrapper<TValue> {
2180
+ /**
2181
+ * @see _.keysIn
2182
+ */
2183
+ keysIn(): LoDashImplicitWrapper<string[]>;
2184
+ }
2185
+
2186
+ interface LoDashExplicitWrapper<TValue> {
2187
+ /**
2188
+ * @see _.keysIn
2189
+ */
2190
+ keysIn(): LoDashExplicitWrapper<string[]>;
2191
+ }
2192
+
2193
+ // mapKeys
2194
+
2195
+ interface LoDashStatic {
2196
+ /**
2197
+ * The opposite of _.mapValues; this method creates an object with the same values as object and keys generated
2198
+ * by running each own enumerable property of object through iteratee.
2199
+ *
2200
+ * @param object The object to iterate over.
2201
+ * @param iteratee The function invoked per iteration.
2202
+ * @param thisArg The this binding of iteratee.
2203
+ * @return Returns the new mapped object.
2204
+ */
2205
+ mapKeys<T>(
2206
+ object: List<T> | null | undefined,
2207
+ iteratee?: ListIteratee<T>
2208
+ ): Dictionary<T>;
2209
+
2210
+ /**
2211
+ * @see _.mapKeys
2212
+ */
2213
+ mapKeys<T>(
2214
+ object: Dictionary<T> | null | undefined,
2215
+ iteratee?: DictionaryIteratee<T>
2216
+ ): Dictionary<T>;
2217
+
2218
+ /**
2219
+ * @see _.mapKeys
2220
+ */
2221
+ mapKeys(
2222
+ object: object | null | undefined,
2223
+ iteratee?: ObjectIteratee<any>
2224
+ ): Dictionary<any>;
2225
+ }
2226
+
2227
+ interface LoDashImplicitWrapper<TValue> {
2228
+ /**
2229
+ * @see _.mapKeys
2230
+ */
2231
+ mapKeys<T>(
2232
+ this: LoDashImplicitWrapper<List<T> | null | undefined>,
2233
+ iteratee?: ListIteratee<T>
2234
+ ): LoDashImplicitWrapper<Dictionary<T>>;
2235
+
2236
+ /**
2237
+ * @see _.mapKeys
2238
+ */
2239
+ mapKeys<T>(
2240
+ this: LoDashImplicitWrapper<Dictionary<T> | null | undefined>,
2241
+ iteratee?: DictionaryIteratee<T>
2242
+ ): LoDashImplicitWrapper<Dictionary<T>>;
2243
+
2244
+ /**
2245
+ * @see _.mapKeys
2246
+ */
2247
+ mapKeys(
2248
+ this: LoDashImplicitWrapper<object | null | undefined>,
2249
+ iteratee?: ObjectIteratee<any>
2250
+ ): LoDashImplicitWrapper<Dictionary<any>>;
2251
+ }
2252
+
2253
+ interface LoDashExplicitWrapper<TValue> {
2254
+ /**
2255
+ * @see _.mapKeys
2256
+ */
2257
+ mapKeys<T>(
2258
+ this: LoDashExplicitWrapper<List<T> | null | undefined>,
2259
+ iteratee?: ListIteratee<T>
2260
+ ): LoDashExplicitWrapper<Dictionary<T>>;
2261
+
2262
+ /**
2263
+ * @see _.mapKeys
2264
+ */
2265
+ mapKeys<T>(
2266
+ this: LoDashExplicitWrapper<Dictionary<T> | null | undefined>,
2267
+ iteratee?: DictionaryIteratee<T>
2268
+ ): LoDashExplicitWrapper<Dictionary<T>>;
2269
+
2270
+ /**
2271
+ * @see _.mapKeys
2272
+ */
2273
+ mapKeys(
2274
+ this: LoDashExplicitWrapper<object | null | undefined>,
2275
+ iteratee?: ObjectIteratee<any>
2276
+ ): LoDashExplicitWrapper<Dictionary<any>>;
2277
+ }
2278
+
2279
+ // mapValues
2280
+
2281
+ interface LoDashStatic {
2282
+ /**
2283
+ * Creates an object with the same keys as object and values generated by running each own
2284
+ * enumerable property of object through iteratee. The iteratee function is bound to thisArg
2285
+ * and invoked with three arguments: (value, key, object).
2286
+ *
2287
+ * If a property name is provided iteratee the created "_.property" style callback returns
2288
+ * the property value of the given element.
2289
+ *
2290
+ * If a value is also provided for thisArg the creted "_.matchesProperty" style callback returns
2291
+ * true for elements that have a matching property value, else false;.
2292
+ *
2293
+ * If an object is provided for iteratee the created "_.matches" style callback returns true
2294
+ * for elements that have the properties of the given object, else false.
2295
+ *
2296
+ * @param object The object to iterate over.
2297
+ * @param [iteratee=_.identity] The function invoked per iteration.
2298
+ * @param [thisArg] The `this` binding of `iteratee`.
2299
+ * @return Returns the new mapped object.
2300
+ */
2301
+ mapValues<T extends object, TResult>(obj: T | null | undefined, callback: ObjectIterator<T, TResult>): { [P in keyof T]: TResult };
2302
+
2303
+ /**
2304
+ * @see _.mapValues
2305
+ */
2306
+ mapValues<T extends object>(obj: T | null | undefined, iteratee: object): { [P in keyof T]: boolean };
2307
+
2308
+ /**
2309
+ * @see _.mapValues
2310
+ */
2311
+ mapValues<T, TKey extends keyof T>(obj: Dictionary<T> | null | undefined, iteratee: TKey): Dictionary<T[TKey]>;
2312
+
2313
+ /**
2314
+ * @see _.mapValues
2315
+ */
2316
+ mapValues<T extends object, TKey extends keyof T>(obj: T | null | undefined, iteratee: string): { [P in keyof T]: any };
2317
+
2318
+ /**
2319
+ * @see _.mapValues
2320
+ */
2321
+ mapValues<TResult>(obj: string | null | undefined, callback: StringIterator<TResult>): NumericDictionary<TResult>;
2322
+
2323
+ /**
2324
+ * @see _.mapValues
2325
+ */
2326
+ mapValues<T>(obj: Dictionary<T> | null | undefined): Dictionary<T>;
2327
+
2328
+ /**
2329
+ * @see _.mapValues
2330
+ */
2331
+ mapValues<T extends object>(obj: T): T;
2332
+
2333
+ /**
2334
+ * @see _.mapValues
2335
+ */
2336
+ mapValues<T extends object>(obj: T | null | undefined): T | {};
2337
+
2338
+ /**
2339
+ * @see _.mapValues
2340
+ */
2341
+ mapValues(obj: string | null | undefined): NumericDictionary<string>;
2342
+ }
2343
+
2344
+ interface LoDashImplicitWrapper<TValue> {
2345
+ /**
2346
+ * @see _.mapValues
2347
+ */
2348
+ mapValues<T extends object, TResult>(
2349
+ this: LoDashImplicitWrapper<T | null | undefined>,
2350
+ callback: ObjectIterator<T, TResult>
2351
+ ): LoDashImplicitWrapper<{ [P in keyof T]: TResult }>;
2352
+
2353
+ /**
2354
+ * @see _.mapValues
2355
+ */
2356
+ mapValues<T extends object>(
2357
+ this: LoDashImplicitWrapper<T | null | undefined>,
2358
+ iteratee: object
2359
+ ): LoDashImplicitWrapper<{ [P in keyof T]: boolean }>;
2360
+
2361
+ /**
2362
+ * @see _.mapValues
2363
+ */
2364
+ mapValues<T, TKey extends keyof T>(
2365
+ this: LoDashImplicitWrapper<Dictionary<T> | null | undefined>,
2366
+ iteratee: TKey
2367
+ ): LoDashImplicitWrapper<Dictionary<T[TKey]>>;
2368
+
2369
+ /**
2370
+ * @see _.mapValues
2371
+ */
2372
+ mapValues<T extends object, TKey extends keyof T>(
2373
+ this: LoDashImplicitWrapper<T | null | undefined>,
2374
+ iteratee: string
2375
+ ): LoDashImplicitWrapper<{ [P in keyof T]: any }>;
2376
+
2377
+ /**
2378
+ * @see _.mapValues
2379
+ */
2380
+ mapValues<TResult>(
2381
+ this: LoDashImplicitWrapper<string | null | undefined>,
2382
+ callback: StringIterator<TResult>
2383
+ ): LoDashImplicitWrapper<NumericDictionary<TResult>>;
2384
+
2385
+ /**
2386
+ * @see _.mapValues
2387
+ */
2388
+ mapValues<T>(this: LoDashImplicitWrapper<Dictionary<T> | null | undefined>): LoDashImplicitWrapper<Dictionary<T>>;
2389
+
2390
+ /**
2391
+ * @see _.mapValues
2392
+ */
2393
+ mapValues<T extends object>(this: LoDashImplicitWrapper<T>): LoDashImplicitWrapper<T>;
2394
+
2395
+ /**
2396
+ * @see _.mapValues
2397
+ */
2398
+ mapValues<T extends object>(this: LoDashImplicitWrapper<T | null | undefined>): LoDashImplicitWrapper<T | {}>;
2399
+
2400
+ /**
2401
+ * @see _.mapValues
2402
+ */
2403
+ mapValues(this: LoDashImplicitWrapper<string | null | undefined>): LoDashImplicitWrapper<NumericDictionary<string>>;
2404
+ }
2405
+
2406
+ interface LoDashExplicitWrapper<TValue> {
2407
+ /**
2408
+ * @see _.mapValues
2409
+ */
2410
+ mapValues<T extends object, TResult>(
2411
+ this: LoDashExplicitWrapper<T | null | undefined>,
2412
+ callback: ObjectIterator<T, TResult>
2413
+ ): LoDashExplicitWrapper<{ [P in keyof T]: TResult }>;
2414
+
2415
+ /**
2416
+ * @see _.mapValues
2417
+ */
2418
+ mapValues<T extends object>(
2419
+ this: LoDashExplicitWrapper<T | null | undefined>,
2420
+ iteratee: object
2421
+ ): LoDashExplicitWrapper<{ [P in keyof T]: boolean }>;
2422
+
2423
+ /**
2424
+ * @see _.mapValues
2425
+ */
2426
+ mapValues<T, TKey extends keyof T>(
2427
+ this: LoDashExplicitWrapper<Dictionary<T> | null | undefined>,
2428
+ iteratee: TKey
2429
+ ): LoDashExplicitWrapper<Dictionary<T[TKey]>>;
2430
+
2431
+ /**
2432
+ * @see _.mapValues
2433
+ */
2434
+ mapValues<T extends object, TKey extends keyof T>(
2435
+ this: LoDashExplicitWrapper<T | null | undefined>,
2436
+ iteratee: string
2437
+ ): LoDashExplicitWrapper<{ [P in keyof T]: any }>;
2438
+
2439
+ /**
2440
+ * @see _.mapValues
2441
+ */
2442
+ mapValues<TResult>(
2443
+ this: LoDashExplicitWrapper<string | null | undefined>,
2444
+ callback: StringIterator<TResult>
2445
+ ): LoDashExplicitWrapper<NumericDictionary<TResult>>;
2446
+
2447
+ /**
2448
+ * @see _.mapValues
2449
+ */
2450
+ mapValues<T>(this: LoDashExplicitWrapper<Dictionary<T> | null | undefined>): LoDashExplicitWrapper<Dictionary<T>>;
2451
+
2452
+ /**
2453
+ * @see _.mapValues
2454
+ */
2455
+ mapValues<T extends object>(this: LoDashExplicitWrapper<T>): LoDashExplicitWrapper<T>;
2456
+
2457
+ /**
2458
+ * @see _.mapValues
2459
+ */
2460
+ mapValues<T extends object>(this: LoDashExplicitWrapper<T | null | undefined>): LoDashExplicitWrapper<T | {}>;
2461
+
2462
+ /**
2463
+ * @see _.mapValues
2464
+ */
2465
+ mapValues(this: LoDashExplicitWrapper<string | null | undefined>): LoDashExplicitWrapper<NumericDictionary<string>>;
2466
+ }
2467
+
2468
+ // merge
2469
+
2470
+ interface LoDashStatic {
2471
+ /**
2472
+ * Recursively merges own and inherited enumerable properties of source
2473
+ * objects into the destination object, skipping source properties that resolve
2474
+ * to `undefined`. Array and plain object properties are merged recursively.
2475
+ * Other objects and value types are overridden by assignment. Source objects
2476
+ * are applied from left to right. Subsequent sources overwrite property
2477
+ * assignments of previous sources.
2478
+ *
2479
+ * **Note:** This method mutates `object`.
2480
+ *
2481
+ * @category Object
2482
+ * @param object The destination object.
2483
+ * @param [sources] The source objects.
2484
+ * @returns Returns `object`.
2485
+ * @example
2486
+ *
2487
+ * var users = {
2488
+ * 'data': [{ 'user': 'barney' }, { 'user': 'fred' }]
2489
+ * };
2490
+ *
2491
+ * var ages = {
2492
+ * 'data': [{ 'age': 36 }, { 'age': 40 }]
2493
+ * };
2494
+ *
2495
+ * _.merge(users, ages);
2496
+ * // => { 'data': [{ 'user': 'barney', 'age': 36 }, { 'user': 'fred', 'age': 40 }] }
2497
+ */
2498
+ merge<TObject, TSource>(
2499
+ object: TObject,
2500
+ source: TSource
2501
+ ): TObject & TSource;
2502
+
2503
+ /**
2504
+ * @see _.merge
2505
+ */
2506
+ merge<TObject, TSource1, TSource2>(
2507
+ object: TObject,
2508
+ source1: TSource1,
2509
+ source2: TSource2
2510
+ ): TObject & TSource1 & TSource2;
2511
+
2512
+ /**
2513
+ * @see _.merge
2514
+ */
2515
+ merge<TObject, TSource1, TSource2, TSource3>(
2516
+ object: TObject,
2517
+ source1: TSource1,
2518
+ source2: TSource2,
2519
+ source3: TSource3
2520
+ ): TObject & TSource1 & TSource2 & TSource3;
2521
+
2522
+ /**
2523
+ * @see _.merge
2524
+ */
2525
+ merge<TObject, TSource1, TSource2, TSource3, TSource4>(
2526
+ object: TObject,
2527
+ source1: TSource1,
2528
+ source2: TSource2,
2529
+ source3: TSource3,
2530
+ source4: TSource4
2531
+ ): TObject & TSource1 & TSource2 & TSource3 & TSource4;
2532
+
2533
+ /**
2534
+ * @see _.merge
2535
+ */
2536
+ merge(
2537
+ object: any,
2538
+ ...otherArgs: any[]
2539
+ ): any;
2540
+ }
2541
+
2542
+ interface LoDashImplicitWrapper<TValue> {
2543
+ /**
2544
+ * @see _.merge
2545
+ */
2546
+ merge<TSource>(
2547
+ source: TSource
2548
+ ): LoDashImplicitWrapper<TValue & TSource>;
2549
+
2550
+ /**
2551
+ * @see _.merge
2552
+ */
2553
+ merge<TSource1, TSource2>(
2554
+ source1: TSource1,
2555
+ source2: TSource2
2556
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2>;
2557
+
2558
+ /**
2559
+ * @see _.merge
2560
+ */
2561
+ merge<TSource1, TSource2, TSource3>(
2562
+ source1: TSource1,
2563
+ source2: TSource2,
2564
+ source3: TSource3
2565
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
2566
+
2567
+ /**
2568
+ * @see _.merge
2569
+ */
2570
+ merge<TSource1, TSource2, TSource3, TSource4>(
2571
+ source1: TSource1,
2572
+ source2: TSource2,
2573
+ source3: TSource3,
2574
+ source4: TSource4
2575
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
2576
+
2577
+ /**
2578
+ * @see _.merge
2579
+ */
2580
+ merge(
2581
+ ...otherArgs: any[]
2582
+ ): LoDashImplicitWrapper<any>;
2583
+ }
2584
+
2585
+ interface LoDashExplicitWrapper<TValue> {
2586
+ /**
2587
+ * @see _.merge
2588
+ */
2589
+ merge<TSource>(
2590
+ source: TSource
2591
+ ): LoDashExplicitWrapper<TValue & TSource>;
2592
+
2593
+ /**
2594
+ * @see _.merge
2595
+ */
2596
+ merge<TSource1, TSource2>(
2597
+ source1: TSource1,
2598
+ source2: TSource2
2599
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2>;
2600
+
2601
+ /**
2602
+ * @see _.merge
2603
+ */
2604
+ merge<TSource1, TSource2, TSource3>(
2605
+ source1: TSource1,
2606
+ source2: TSource2,
2607
+ source3: TSource3
2608
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
2609
+
2610
+ /**
2611
+ * @see _.merge
2612
+ */
2613
+ merge<TSource1, TSource2, TSource3, TSource4>(
2614
+ ): LoDashExplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
2615
+
2616
+ /**
2617
+ * @see _.merge
2618
+ */
2619
+ merge(
2620
+ ...otherArgs: any[]
2621
+ ): LoDashExplicitWrapper<any>;
2622
+ }
2623
+
2624
+ // mergeWith
2625
+
2626
+ type MergeWithCustomizer = { bivariantHack(value: any, srcValue: any, key: string, object: any, source: any): any; }["bivariantHack"]
2627
+
2628
+ interface LoDashStatic {
2629
+ /**
2630
+ * This method is like `_.merge` except that it accepts `customizer` which
2631
+ * is invoked to produce the merged values of the destination and source
2632
+ * properties. If `customizer` returns `undefined` merging is handled by the
2633
+ * method instead. The `customizer` is invoked with seven arguments:
2634
+ * (objValue, srcValue, key, object, source, stack).
2635
+ *
2636
+ * @category Object
2637
+ * @param object The destination object.
2638
+ * @param sources The source objects.
2639
+ * @param customizer The function to customize assigned values.
2640
+ * @returns Returns `object`.
2641
+ * @example
2642
+ *
2643
+ * function customizer(objValue, srcValue) {
2644
+ * if (_.isArray(objValue)) {
2645
+ * return objValue.concat(srcValue);
2646
+ * }
2647
+ * }
2648
+ *
2649
+ * var object = {
2650
+ * 'fruits': ['apple'],
2651
+ * 'vegetables': ['beet']
2652
+ * };
2653
+ *
2654
+ * var other = {
2655
+ * 'fruits': ['banana'],
2656
+ * 'vegetables': ['carrot']
2657
+ * };
2658
+ *
2659
+ * _.merge(object, other, customizer);
2660
+ * // => { 'fruits': ['apple', 'banana'], 'vegetables': ['beet', 'carrot'] }
2661
+ */
2662
+ mergeWith<TObject, TSource>(
2663
+ object: TObject,
2664
+ source: TSource,
2665
+ customizer: MergeWithCustomizer
2666
+ ): TObject & TSource;
2667
+
2668
+ /**
2669
+ * @see _.mergeWith
2670
+ */
2671
+ mergeWith<TObject, TSource1, TSource2>(
2672
+ object: TObject,
2673
+ source1: TSource1,
2674
+ source2: TSource2,
2675
+ customizer: MergeWithCustomizer
2676
+ ): TObject & TSource1 & TSource2;
2677
+
2678
+ /**
2679
+ * @see _.mergeWith
2680
+ */
2681
+ mergeWith<TObject, TSource1, TSource2, TSource3>(
2682
+ object: TObject,
2683
+ source1: TSource1,
2684
+ source2: TSource2,
2685
+ source3: TSource3,
2686
+ customizer: MergeWithCustomizer
2687
+ ): TObject & TSource1 & TSource2 & TSource3;
2688
+
2689
+ /**
2690
+ * @see _.mergeWith
2691
+ */
2692
+ mergeWith<TObject, TSource1, TSource2, TSource3, TSource4>(
2693
+ object: TObject,
2694
+ source1: TSource1,
2695
+ source2: TSource2,
2696
+ source3: TSource3,
2697
+ source4: TSource4,
2698
+ customizer: MergeWithCustomizer
2699
+ ): TObject & TSource1 & TSource2 & TSource3 & TSource4;
2700
+
2701
+ /**
2702
+ * @see _.mergeWith
2703
+ */
2704
+ mergeWith(
2705
+ object: any,
2706
+ ...otherArgs: any[]
2707
+ ): any;
2708
+ }
2709
+
2710
+ interface LoDashImplicitWrapper<TValue> {
2711
+ /**
2712
+ * @see _.mergeWith
2713
+ */
2714
+ mergeWith<TSource>(
2715
+ source: TSource,
2716
+ customizer: MergeWithCustomizer
2717
+ ): LoDashImplicitWrapper<TValue & TSource>;
2718
+
2719
+ /**
2720
+ * @see _.mergeWith
2721
+ */
2722
+ mergeWith<TSource1, TSource2>(
2723
+ source1: TSource1,
2724
+ source2: TSource2,
2725
+ customizer: MergeWithCustomizer
2726
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2>;
2727
+
2728
+ /**
2729
+ * @see _.mergeWith
2730
+ */
2731
+ mergeWith<TSource1, TSource2, TSource3>(
2732
+ source1: TSource1,
2733
+ source2: TSource2,
2734
+ source3: TSource3,
2735
+ customizer: MergeWithCustomizer
2736
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3>;
2737
+
2738
+ /**
2739
+ * @see _.mergeWith
2740
+ */
2741
+ mergeWith<TSource1, TSource2, TSource3, TSource4>(
2742
+ source1: TSource1,
2743
+ source2: TSource2,
2744
+ source3: TSource3,
2745
+ source4: TSource4,
2746
+ customizer: MergeWithCustomizer
2747
+ ): LoDashImplicitWrapper<TValue & TSource1 & TSource2 & TSource3 & TSource4>;
2748
+
2749
+ /**
2750
+ * @see _.mergeWith
2751
+ */
2752
+ mergeWith(
2753
+ ...otherArgs: any[]
2754
+ ): LoDashImplicitWrapper<any>;
2755
+ }
2756
+
2757
+ // omit
2758
+
2759
+ interface LoDashStatic {
2760
+ /**
2761
+ * The opposite of `_.pick`; this method creates an object composed of the
2762
+ * own and inherited enumerable properties of `object` that are not omitted.
2763
+ *
2764
+ * @category Object
2765
+ * @param object The source object.
2766
+ * @param [paths] The property names to omit, specified
2767
+ * individually or in arrays..
2768
+ * @returns Returns the new object.
2769
+ * @example
2770
+ *
2771
+ * var object = { 'a': 1, 'b': '2', 'c': 3 };
2772
+ *
2773
+ * _.omit(object, ['a', 'c']);
2774
+ * // => { 'b': '2' }
2775
+ */
2776
+ omit<T>(
2777
+ object: Dictionary<T>,
2778
+ ...paths: PropertyPath[]
2779
+ ): Dictionary<T>;
2780
+
2781
+ /**
2782
+ * @see _.omit
2783
+ */
2784
+ omit<T extends object>(
2785
+ object: T | null | undefined,
2786
+ ...paths: PropertyPath[]
2787
+ ): PartialObject<T>;
2788
+ }
2789
+
2790
+ interface LoDashImplicitWrapper<TValue> {
2791
+ /**
2792
+ * @see _.omit
2793
+ */
2794
+ omit<T>(
2795
+ this: LoDashImplicitWrapper<Dictionary<T>>,
2796
+ ...paths: PropertyPath[]
2797
+ ): LoDashImplicitWrapper<Dictionary<T>>;
2798
+
2799
+ /**
2800
+ * @see _.omit
2801
+ */
2802
+ omit<T extends object>(
2803
+ this: LoDashImplicitWrapper<T | null | undefined>,
2804
+ ...paths: PropertyPath[]
2805
+ ): LoDashImplicitWrapper<PartialObject<T>>;
2806
+ }
2807
+
2808
+ interface LoDashExplicitWrapper<TValue> {
2809
+ /**
2810
+ * @see _.omit
2811
+ */
2812
+ omit<T>(
2813
+ this: LoDashExplicitWrapper<Dictionary<T>>,
2814
+ ...paths: PropertyPath[]
2815
+ ): LoDashExplicitWrapper<Dictionary<T>>;
2816
+
2817
+ /**
2818
+ * @see _.omit
2819
+ */
2820
+ omit<T extends object>(
2821
+ this: LoDashExplicitWrapper<T | null | undefined>,
2822
+ ...paths: PropertyPath[]
2823
+ ): LoDashExplicitWrapper<PartialObject<T>>;
2824
+ }
2825
+
2826
+ // omitBy
2827
+
2828
+ interface LoDashStatic {
2829
+ /**
2830
+ * The opposite of `_.pickBy`; this method creates an object composed of the
2831
+ * own and inherited enumerable properties of `object` that `predicate`
2832
+ * doesn't return truthy for.
2833
+ *
2834
+ * @category Object
2835
+ * @param object The source object.
2836
+ * @param [predicate=_.identity] The function invoked per property.
2837
+ * @returns Returns the new object.
2838
+ * @example
2839
+ *
2840
+ * var object = { 'a': 1, 'b': '2', 'c': 3 };
2841
+ *
2842
+ * _.omitBy(object, _.isNumber);
2843
+ * // => { 'b': '2' }
2844
+ */
2845
+ omitBy<T extends object>(
2846
+ object: T | null | undefined,
2847
+ predicate: ValueKeyIteratee<T[keyof T]>
2848
+ ): PartialObject<T>;
2849
+ }
2850
+
2851
+ interface LoDashImplicitWrapper<TValue> {
2852
+ /**
2853
+ * @see _.omitBy
2854
+ */
2855
+ omitBy<T extends object>(
2856
+ this: LoDashImplicitWrapper<T | null | undefined>,
2857
+ predicate: ValueKeyIteratee<T[keyof T]>
2858
+ ): LoDashImplicitWrapper<PartialObject<T>>;
2859
+ }
2860
+
2861
+ interface LoDashExplicitWrapper<TValue> {
2862
+ /**
2863
+ * @see _.omitBy
2864
+ */
2865
+ omitBy<T extends object>(
2866
+ this: LoDashExplicitWrapper<T | null | undefined>,
2867
+ predicate: ValueKeyIteratee<T[keyof T]>
2868
+ ): LoDashExplicitWrapper<PartialObject<T>>;
2869
+ }
2870
+
2871
+ // pick
2872
+
2873
+ interface LoDashStatic {
2874
+ /**
2875
+ * Creates an object composed of the picked `object` properties.
2876
+ *
2877
+ * @category Object
2878
+ * @param object The source object.
2879
+ * @param [props] The property names to pick, specified
2880
+ * individually or in arrays.
2881
+ * @returns Returns the new object.
2882
+ * @example
2883
+ *
2884
+ * var object = { 'a': 1, 'b': '2', 'c': 3 };
2885
+ *
2886
+ * _.pick(object, ['a', 'c']);
2887
+ * // => { 'a': 1, 'c': 3 }
2888
+ */
2889
+ pick<T extends object, U extends keyof T>(
2890
+ object: T,
2891
+ ...props: Array<Many<U>>
2892
+ ): Pick<T, U>;
2893
+
2894
+ /**
2895
+ * @see _.pick
2896
+ */
2897
+ pick<T>(
2898
+ object: T | null | undefined,
2899
+ ...props: PropertyPath[]
2900
+ ): PartialDeep<T>;
2901
+ }
2902
+
2903
+ interface LoDashImplicitWrapper<TValue> {
2904
+ /**
2905
+ * @see _.pick
2906
+ */
2907
+ pick<T extends object, U extends keyof T>(
2908
+ this: LoDashImplicitWrapper<T>,
2909
+ ...props: Array<Many<U>>
2910
+ ): LoDashImplicitWrapper<Pick<T, U>>;
2911
+
2912
+ /**
2913
+ * @see _.pick
2914
+ */
2915
+ pick<T extends object>(
2916
+ this: LoDashImplicitWrapper<T | null | undefined>,
2917
+ ...props: PropertyPath[]
2918
+ ): LoDashImplicitWrapper<PartialObject<T>>;
2919
+ }
2920
+
2921
+ interface LoDashExplicitWrapper<TValue> {
2922
+ /**
2923
+ * @see _.pick
2924
+ */
2925
+ pick<T extends object, U extends keyof T>(
2926
+ this: LoDashExplicitWrapper<T>,
2927
+ ...props: Array<Many<U>>
2928
+ ): LoDashExplicitWrapper<Pick<T, U>>;
2929
+
2930
+ /**
2931
+ * @see _.pick
2932
+ */
2933
+ pick<T extends object>(
2934
+ this: LoDashExplicitWrapper<T | null | undefined>,
2935
+ ...props: PropertyPath[]
2936
+ ): LoDashExplicitWrapper<PartialObject<T>>;
2937
+ }
2938
+
2939
+ // pickBy
2940
+
2941
+ interface LoDashStatic {
2942
+ /**
2943
+ * Creates an object composed of the `object` properties `predicate` returns
2944
+ * truthy for. The predicate is invoked with two arguments: (value, key).
2945
+ *
2946
+ * @category Object
2947
+ * @param object The source object.
2948
+ * @param [predicate=_.identity] The function invoked per property.
2949
+ * @returns Returns the new object.
2950
+ * @example
2951
+ *
2952
+ * var object = { 'a': 1, 'b': '2', 'c': 3 };
2953
+ *
2954
+ * _.pickBy(object, _.isNumber);
2955
+ * // => { 'a': 1, 'c': 3 }
2956
+ */
2957
+ pickBy<T extends object>(
2958
+ object: T | null | undefined,
2959
+ predicate?: ValueKeyIteratee<T[keyof T]>
2960
+ ): PartialObject<T>;
2961
+ }
2962
+
2963
+ interface LoDashImplicitWrapper<TValue> {
2964
+ /**
2965
+ * @see _.pickBy
2966
+ */
2967
+ pickBy<T extends object>(
2968
+ this: LoDashImplicitWrapper<T | null | undefined>,
2969
+ predicate?: ValueKeyIteratee<T[keyof T]>
2970
+ ): LoDashImplicitWrapper<PartialObject<T>>;
2971
+ }
2972
+
2973
+ interface LoDashExplicitWrapper<TValue> {
2974
+ /**
2975
+ * @see _.pickBy
2976
+ */
2977
+ pickBy<T extends object>(
2978
+ this: LoDashExplicitWrapper<T | null | undefined>,
2979
+ predicate?: ValueKeyIteratee<T[keyof T]>
2980
+ ): LoDashExplicitWrapper<PartialObject<T>>;
2981
+ }
2982
+
2983
+ // result
2984
+
2985
+ interface LoDashStatic {
2986
+ /**
2987
+ * This method is like _.get except that if the resolved value is a function it’s invoked with the this binding
2988
+ * of its parent object and its result is returned.
2989
+ *
2990
+ * @param object The object to query.
2991
+ * @param path The path of the property to resolve.
2992
+ * @param defaultValue The value returned if the resolved value is undefined.
2993
+ * @return Returns the resolved value.
2994
+ */
2995
+ result<TResult>(
2996
+ object: any,
2997
+ path: PropertyPath,
2998
+ defaultValue?: TResult|((...args: any[]) => TResult)
2999
+ ): TResult;
3000
+ }
3001
+
3002
+ interface LoDashImplicitWrapper<TValue> {
3003
+ /**
3004
+ * @see _.result
3005
+ */
3006
+ result<TResult>(
3007
+ path: PropertyPath,
3008
+ defaultValue?: TResult|((...args: any[]) => TResult)
3009
+ ): TResult;
3010
+ }
3011
+
3012
+ interface LoDashExplicitWrapper<TValue> {
3013
+ /**
3014
+ * @see _.result
3015
+ */
3016
+ result<TResult>(
3017
+ path: PropertyPath,
3018
+ defaultValue?: TResult|((...args: any[]) => TResult)
3019
+ ): LoDashExplicitWrapper<TResult>;
3020
+ }
3021
+
3022
+ // set
3023
+
3024
+ interface LoDashStatic {
3025
+ /**
3026
+ * Sets the value at path of object. If a portion of path doesn’t exist it’s created. Arrays are created for
3027
+ * missing index properties while objects are created for all other missing properties. Use _.setWith to
3028
+ * customize path creation.
3029
+ *
3030
+ * @param object The object to modify.
3031
+ * @param path The path of the property to set.
3032
+ * @param value The value to set.
3033
+ * @return Returns object.
3034
+ */
3035
+ set<T extends object>(
3036
+ object: T,
3037
+ path: PropertyPath,
3038
+ value: any
3039
+ ): T;
3040
+
3041
+ /**
3042
+ * @see _.set
3043
+ */
3044
+ set<TResult>(
3045
+ object: object,
3046
+ path: PropertyPath,
3047
+ value: any
3048
+ ): TResult;
3049
+ }
3050
+
3051
+ interface LoDashImplicitWrapper<TValue> {
3052
+ /**
3053
+ * @see _.set
3054
+ */
3055
+ set(
3056
+ path: PropertyPath,
3057
+ value: any
3058
+ ): this;
3059
+
3060
+ /**
3061
+ * @see _.set
3062
+ */
3063
+ set<TResult>(
3064
+ path: PropertyPath,
3065
+ value: any
3066
+ ): LoDashImplicitWrapper<TResult>;
3067
+ }
3068
+
3069
+ interface LoDashExplicitWrapper<TValue> {
3070
+ /**
3071
+ * @see _.set
3072
+ */
3073
+ set(
3074
+ path: PropertyPath,
3075
+ value: any
3076
+ ): this;
3077
+
3078
+ /**
3079
+ * @see _.set
3080
+ */
3081
+ set<TResult>(
3082
+ path: PropertyPath,
3083
+ value: any
3084
+ ): LoDashExplicitWrapper<TResult>;
3085
+ }
3086
+
3087
+ // setWith
3088
+
3089
+ type SetWithCustomizer<T> = (nsValue: any, key: string, nsObject: T) => any;
3090
+
3091
+ interface LoDashStatic {
3092
+ /**
3093
+ * This method is like _.set except that it accepts customizer which is invoked to produce the objects of
3094
+ * path. If customizer returns undefined path creation is handled by the method instead. The customizer is
3095
+ * invoked with three arguments: (nsValue, key, nsObject).
3096
+ *
3097
+ * @param object The object to modify.
3098
+ * @param path The path of the property to set.
3099
+ * @param value The value to set.
3100
+ * @parem customizer The function to customize assigned values.
3101
+ * @return Returns object.
3102
+ */
3103
+ setWith<T extends object>(
3104
+ object: T,
3105
+ path: PropertyPath,
3106
+ value: any,
3107
+ customizer?: SetWithCustomizer<T>
3108
+ ): T;
3109
+
3110
+ setWith<T extends object, TResult>(
3111
+ object: T,
3112
+ path: PropertyPath,
3113
+ value: any,
3114
+ customizer?: SetWithCustomizer<T>
3115
+ ): TResult;
3116
+ }
3117
+
3118
+ interface LoDashImplicitWrapper<TValue> {
3119
+ /**
3120
+ * @see _.setWith
3121
+ */
3122
+ setWith(
3123
+ path: PropertyPath,
3124
+ value: any,
3125
+ customizer?: SetWithCustomizer<TValue>
3126
+ ): this;
3127
+
3128
+ /**
3129
+ * @see _.setWith
3130
+ */
3131
+ setWith<TResult>(
3132
+ path: PropertyPath,
3133
+ value: any,
3134
+ customizer?: SetWithCustomizer<TValue>
3135
+ ): LoDashImplicitWrapper<TResult>;
3136
+ }
3137
+
3138
+ interface LoDashExplicitWrapper<TValue> {
3139
+ /**
3140
+ * @see _.setWith
3141
+ */
3142
+ setWith(
3143
+ path: PropertyPath,
3144
+ value: any,
3145
+ customizer?: SetWithCustomizer<TValue>
3146
+ ): this;
3147
+
3148
+ /**
3149
+ * @see _.setWith
3150
+ */
3151
+ setWith<TResult>(
3152
+ path: PropertyPath,
3153
+ value: any,
3154
+ customizer?: SetWithCustomizer<TValue>
3155
+ ): LoDashExplicitWrapper<TResult>;
3156
+ }
3157
+
3158
+ // toPairs
3159
+
3160
+ interface LoDashStatic {
3161
+ /**
3162
+ * Creates an array of own enumerable key-value pairs for object.
3163
+ *
3164
+ * @param object The object to query.
3165
+ * @return Returns the new array of key-value pairs.
3166
+ */
3167
+ toPairs<T>(object?: Dictionary<T>): Array<[string, T]>;
3168
+
3169
+ /**
3170
+ * @see _.toPairs
3171
+ */
3172
+ toPairs(object?: object): Array<[string, any]>;
3173
+ }
3174
+
3175
+ interface LoDashImplicitWrapper<TValue> {
3176
+ /**
3177
+ * @see _.toPairs
3178
+ */
3179
+ toPairs<T>(this: LoDashImplicitWrapper<Dictionary<T>>): LoDashImplicitWrapper<Array<[string, T]>>;
3180
+
3181
+ /**
3182
+ * @see _.toPairs
3183
+ */
3184
+ toPairs(): LoDashImplicitWrapper<Array<[string, any]>>;
3185
+ }
3186
+
3187
+ interface LoDashExplicitWrapper<TValue> {
3188
+ /**
3189
+ * @see _.toPairs
3190
+ */
3191
+ toPairs<T>(this: LoDashExplicitWrapper<Dictionary<T>>): LoDashExplicitWrapper<Array<[string, T]>>;
3192
+
3193
+ /**
3194
+ * @see _.toPairs
3195
+ */
3196
+ toPairs(): LoDashExplicitWrapper<Array<[string, any]>>;
3197
+ }
3198
+
3199
+ // toPairsIn
3200
+
3201
+ interface LoDashStatic {
3202
+ /**
3203
+ * Creates an array of own and inherited enumerable key-value pairs for object.
3204
+ *
3205
+ * @param object The object to query.
3206
+ * @return Returns the new array of key-value pairs.
3207
+ */
3208
+ toPairsIn<T>(object?: Dictionary<T>): Array<[string, T]>;
3209
+
3210
+ /**
3211
+ * @see _.toPairsIn
3212
+ */
3213
+ toPairsIn(object?: object): Array<[string, any]>;
3214
+ }
3215
+
3216
+ interface LoDashImplicitWrapper<TValue> {
3217
+ /**
3218
+ * @see _.toPairsIn
3219
+ */
3220
+ toPairsIn<T>(this: LoDashImplicitWrapper<Dictionary<T>>): LoDashImplicitWrapper<Array<[string, T]>>;
3221
+
3222
+ /**
3223
+ * @see _.toPairsIn
3224
+ */
3225
+ toPairsIn(): LoDashImplicitWrapper<Array<[string, any]>>;
3226
+ }
3227
+
3228
+ interface LoDashExplicitWrapper<TValue> {
3229
+ /**
3230
+ * @see _.toPairsIn
3231
+ */
3232
+ toPairsIn<T>(this: LoDashExplicitWrapper<Dictionary<T>>): LoDashExplicitWrapper<Array<[string, T]>>;
3233
+
3234
+ /**
3235
+ * @see _.toPairsIn
3236
+ */
3237
+ toPairsIn(): LoDashExplicitWrapper<Array<[string, any]>>;
3238
+ }
3239
+
3240
+ // transform
3241
+
3242
+ interface LoDashStatic {
3243
+ /**
3244
+ * An alternative to _.reduce; this method transforms object to a new accumulator object which is the result of
3245
+ * running each of its own enumerable properties through iteratee, with each invocation potentially mutating
3246
+ * the accumulator object. The iteratee is bound to thisArg and invoked with four arguments: (accumulator,
3247
+ * value, key, object). Iteratee functions may exit iteration early by explicitly returning false.
3248
+ *
3249
+ * @param object The object to iterate over.
3250
+ * @param iteratee The function invoked per iteration.
3251
+ * @param accumulator The custom accumulator value.
3252
+ * @param thisArg The this binding of iteratee.
3253
+ * @return Returns the accumulated value.
3254
+ */
3255
+ transform<T, TResult>(
3256
+ object: T[],
3257
+ iteratee: MemoVoidArrayIterator<T, TResult[]>,
3258
+ accumulator?: TResult[]
3259
+ ): TResult[];
3260
+
3261
+ /**
3262
+ * @see _.transform
3263
+ */
3264
+ transform<T, TResult>(
3265
+ object: T[],
3266
+ iteratee: MemoVoidArrayIterator<T, Dictionary<TResult>>,
3267
+ accumulator: Dictionary<TResult>
3268
+ ): Dictionary<TResult>;
3269
+
3270
+ /**
3271
+ * @see _.transform
3272
+ */
3273
+ transform<T, TResult>(
3274
+ object: Dictionary<T>,
3275
+ iteratee: MemoVoidDictionaryIterator<T, Dictionary<TResult>>,
3276
+ accumulator?: Dictionary<TResult>
3277
+ ): Dictionary<TResult>;
3278
+
3279
+ /**
3280
+ * @see _.transform
3281
+ */
3282
+ transform<T, TResult>(
3283
+ object: Dictionary<T>,
3284
+ iteratee: MemoVoidDictionaryIterator<T, TResult[]>,
3285
+ accumulator: TResult[]
3286
+ ): TResult[];
3287
+
3288
+ /**
3289
+ * @see _.transform
3290
+ */
3291
+ transform(
3292
+ object: any[],
3293
+ ): any[];
3294
+
3295
+ /**
3296
+ * @see _.transform
3297
+ */
3298
+ transform(
3299
+ object: object,
3300
+ ): Dictionary<any>;
3301
+ }
3302
+
3303
+ interface LoDashImplicitWrapper<TValue> {
3304
+ /**
3305
+ * @see _.transform
3306
+ */
3307
+ transform<T, TResult>(
3308
+ this: LoDashImplicitWrapper<T[]>,
3309
+ iteratee: MemoVoidArrayIterator<T, TResult[]>,
3310
+ accumulator?: TResult[]
3311
+ ): LoDashImplicitWrapper<TResult[]>;
3312
+
3313
+ /**
3314
+ * @see _.transform
3315
+ */
3316
+ transform<T, TResult>(
3317
+ this: LoDashImplicitWrapper<T[]>,
3318
+ iteratee: MemoVoidArrayIterator<T, Dictionary<TResult>>,
3319
+ accumulator: Dictionary<TResult>
3320
+ ): LoDashImplicitWrapper<Dictionary<TResult>>;
3321
+
3322
+ /**
3323
+ * @see _.transform
3324
+ */
3325
+ transform<T, TResult>(
3326
+ this: LoDashImplicitWrapper<Dictionary<T>>,
3327
+ iteratee: MemoVoidDictionaryIterator<T, Dictionary<TResult>>,
3328
+ accumulator?: Dictionary<TResult>
3329
+ ): LoDashImplicitWrapper<Dictionary<TResult>>;
3330
+
3331
+ /**
3332
+ * @see _.transform
3333
+ */
3334
+ transform<T, TResult>(
3335
+ this: LoDashImplicitWrapper<Dictionary<T>>,
3336
+ iteratee: MemoVoidDictionaryIterator<T, TResult[]>,
3337
+ accumulator: TResult[]
3338
+ ): LoDashImplicitWrapper<TResult[]>;
3339
+
3340
+ /**
3341
+ * @see _.transform
3342
+ */
3343
+ transform(
3344
+ this: LoDashImplicitWrapper<any[]>,
3345
+ ): LoDashImplicitWrapper<any[]>;
3346
+
3347
+ /**
3348
+ * @see _.transform
3349
+ */
3350
+ transform(): LoDashImplicitWrapper<Dictionary<any>>;
3351
+ }
3352
+
3353
+ interface LoDashExplicitWrapper<TValue> {
3354
+ /**
3355
+ * @see _.transform
3356
+ */
3357
+ transform<T, TResult>(
3358
+ this: LoDashExplicitWrapper<T[]>,
3359
+ iteratee: MemoVoidArrayIterator<T, TResult[]>,
3360
+ accumulator?: TResult[]
3361
+ ): LoDashExplicitWrapper<TResult[]>;
3362
+
3363
+ /**
3364
+ * @see _.transform
3365
+ */
3366
+ transform<T, TResult>(
3367
+ this: LoDashExplicitWrapper<T[]>,
3368
+ iteratee: MemoVoidArrayIterator<T, Dictionary<TResult>>,
3369
+ accumulator?: Dictionary<TResult>
3370
+ ): LoDashExplicitWrapper<Dictionary<TResult>>;
3371
+
3372
+ /**
3373
+ * @see _.transform
3374
+ */
3375
+ transform<T, TResult>(
3376
+ this: LoDashExplicitWrapper<Dictionary<T>>,
3377
+ iteratee: MemoVoidDictionaryIterator<T, Dictionary<TResult>>,
3378
+ accumulator?: Dictionary<TResult>
3379
+ ): LoDashExplicitWrapper<Dictionary<TResult>>;
3380
+
3381
+ /**
3382
+ * @see _.transform
3383
+ */
3384
+ transform<T, TResult>(
3385
+ this: LoDashExplicitWrapper<Dictionary<T>>,
3386
+ iteratee: MemoVoidDictionaryIterator<T, TResult[]>,
3387
+ accumulator?: TResult[]
3388
+ ): LoDashExplicitWrapper<TResult[]>;
3389
+
3390
+ /**
3391
+ * @see _.transform
3392
+ */
3393
+ transform(
3394
+ this: LoDashExplicitWrapper<any[]>,
3395
+ ): LoDashExplicitWrapper<any[]>;
3396
+
3397
+ /**
3398
+ * @see _.transform
3399
+ */
3400
+ transform(): LoDashExplicitWrapper<Dictionary<any>>;
3401
+ }
3402
+
3403
+ // unset
3404
+
3405
+ interface LoDashStatic {
3406
+ /**
3407
+ * Removes the property at path of object.
3408
+ *
3409
+ * Note: This method mutates object.
3410
+ *
3411
+ * @param object The object to modify.
3412
+ * @param path The path of the property to unset.
3413
+ * @return Returns true if the property is deleted, else false.
3414
+ */
3415
+ unset(
3416
+ object: any,
3417
+ path: PropertyPath
3418
+ ): boolean;
3419
+ }
3420
+
3421
+ interface LoDashImplicitWrapper<TValue> {
3422
+ /**
3423
+ * @see _.unset
3424
+ */
3425
+ unset(path: PropertyPath): LoDashImplicitWrapper<boolean>;
3426
+ }
3427
+
3428
+ interface LoDashExplicitWrapper<TValue> {
3429
+ /**
3430
+ * @see _.unset
3431
+ */
3432
+ unset(path: PropertyPath): LoDashExplicitWrapper<boolean>;
3433
+ }
3434
+
3435
+ // update
3436
+
3437
+ interface LoDashStatic {
3438
+ /**
3439
+ * This method is like _.set except that accepts updater to produce the value to set. Use _.updateWith to
3440
+ * customize path creation. The updater is invoked with one argument: (value).
3441
+ *
3442
+ * @param object The object to modify.
3443
+ * @param path The path of the property to set.
3444
+ * @param updater The function to produce the updated value.
3445
+ * @return Returns object.
3446
+ */
3447
+ update(
3448
+ object: object,
3449
+ path: PropertyPath,
3450
+ updater: (value: any) => any
3451
+ ): any;
3452
+ }
3453
+
3454
+ interface LoDashImplicitWrapper<TValue> {
3455
+ /**
3456
+ * @see _.update
3457
+ */
3458
+ update(
3459
+ path: PropertyPath,
3460
+ updater: (value: any) => any
3461
+ ): LoDashImplicitWrapper<any>;
3462
+ }
3463
+
3464
+ interface LoDashExplicitWrapper<TValue> {
3465
+ /**
3466
+ * @see _.update
3467
+ */
3468
+ update(
3469
+ path: PropertyPath,
3470
+ updater: (value: any) => any
3471
+ ): LoDashExplicitWrapper<any>;
3472
+ }
3473
+
3474
+ // updateWith
3475
+
3476
+ interface LoDashStatic {
3477
+ /**
3478
+ * This method is like `_.update` except that it accepts `customizer` which is
3479
+ * invoked to produce the objects of `path`. If `customizer` returns `undefined`
3480
+ * path creation is handled by the method instead. The `customizer` is invoked
3481
+ * with three arguments: (nsValue, key, nsObject).
3482
+ *
3483
+ * **Note:** This method mutates `object`.
3484
+ *
3485
+ * @since 4.6.0
3486
+ * @category Object
3487
+ * @param object The object to modify.
3488
+ * @param path The path of the property to set.
3489
+ * @param updater The function to produce the updated value.
3490
+ * @param [customizer] The function to customize assigned values.
3491
+ * @returns Returns `object`.
3492
+ * @example
3493
+ *
3494
+ * var object = {};
3495
+ *
3496
+ * _.updateWith(object, '[0][1]', _.constant('a'), Object);
3497
+ * // => { '0': { '1': 'a' } }
3498
+ */
3499
+ updateWith<T extends object>(
3500
+ object: T,
3501
+ path: PropertyPath,
3502
+ updater: (oldValue: any) => any,
3503
+ customizer?: SetWithCustomizer<T>
3504
+ ): T;
3505
+
3506
+ /**
3507
+ * @see _.updateWith
3508
+ */
3509
+ updateWith<T extends object, TResult>(
3510
+ object: T,
3511
+ path: PropertyPath,
3512
+ updater: (oldValue: any) => any,
3513
+ customizer?: SetWithCustomizer<T>
3514
+ ): TResult;
3515
+ }
3516
+
3517
+ interface LoDashImplicitWrapper<TValue> {
3518
+ /**
3519
+ * @see _.updateWith
3520
+ */
3521
+ updateWith(
3522
+ path: PropertyPath,
3523
+ updater: (oldValue: any) => any,
3524
+ customizer?: SetWithCustomizer<TValue>
3525
+ ): this;
3526
+
3527
+ /**
3528
+ * @see _.updateWith
3529
+ */
3530
+ updateWith<TResult>(
3531
+ path: PropertyPath,
3532
+ updater: (oldValue: any) => any,
3533
+ customizer?: SetWithCustomizer<TValue>
3534
+ ): LoDashImplicitWrapper<TResult>;
3535
+ }
3536
+
3537
+ interface LoDashExplicitWrapper<TValue> {
3538
+ /**
3539
+ * @see _.updateWith
3540
+ */
3541
+ updateWith(
3542
+ path: PropertyPath,
3543
+ updater: (oldValue: any) => any,
3544
+ customizer?: SetWithCustomizer<TValue>
3545
+ ): this;
3546
+
3547
+ /**
3548
+ * @see _.updateWith
3549
+ */
3550
+ updateWith<TResult>(
3551
+ path: PropertyPath,
3552
+ updater: (oldValue: any) => any,
3553
+ customizer?: SetWithCustomizer<TValue>
3554
+ ): LoDashExplicitWrapper<TResult>;
3555
+ }
3556
+
3557
+ // values
3558
+
3559
+ interface LoDashStatic {
3560
+ /**
3561
+ * Creates an array of the own enumerable property values of object.
3562
+ *
3563
+ * @param object The object to query.
3564
+ * @return Returns an array of property values.
3565
+ */
3566
+ values<T>(object: Dictionary<T>|NumericDictionary<T>|List<T> | null | undefined): T[];
3567
+
3568
+ /**
3569
+ * @see _.values
3570
+ */
3571
+ values<T extends object>(object: T | null | undefined): Array<T[keyof T]>;
3572
+
3573
+ /**
3574
+ * @see _.values
3575
+ */
3576
+ values(object: any): any[];
3577
+ }
3578
+
3579
+ interface LoDashImplicitWrapper<TValue> {
3580
+ /**
3581
+ * @see _.values
3582
+ */
3583
+ values<T>(this: LoDashImplicitWrapper<Dictionary<T> | NumericDictionary<T> | List<T> | null | undefined>): LoDashImplicitWrapper<T[]>;
3584
+
3585
+ /**
3586
+ * @see _.values
3587
+ */
3588
+ values<T extends object>(this: LoDashImplicitWrapper<T | null | undefined>): LoDashImplicitWrapper<Array<T[keyof T]>>;
3589
+
3590
+ /**
3591
+ * @see _.values
3592
+ */
3593
+ values(): LoDashImplicitWrapper<any[]>;
3594
+ }
3595
+
3596
+ interface LoDashExplicitWrapper<TValue> {
3597
+ /**
3598
+ * @see _.values
3599
+ */
3600
+ values<T>(this: LoDashExplicitWrapper<Dictionary<T> | NumericDictionary<T> | List<T> | null | undefined>): LoDashExplicitWrapper<T[]>;
3601
+
3602
+ /**
3603
+ * @see _.values
3604
+ */
3605
+ values<T extends object>(this: LoDashExplicitWrapper<T | null | undefined>): LoDashExplicitWrapper<Array<T[keyof T]>>;
3606
+
3607
+ /**
3608
+ * @see _.values
3609
+ */
3610
+ values(): LoDashExplicitWrapper<any[]>;
3611
+ }
3612
+
3613
+ // valuesIn
3614
+
3615
+ interface LoDashStatic {
3616
+ /**
3617
+ * Creates an array of the own and inherited enumerable property values of object.
3618
+ *
3619
+ * @param object The object to query.
3620
+ * @return Returns the array of property values.
3621
+ */
3622
+ valuesIn<T>(object: Dictionary<T>|NumericDictionary<T>|List<T> | null | undefined): T[];
3623
+
3624
+ /**
3625
+ * @see _.valuesIn
3626
+ */
3627
+ valuesIn<T extends object>(object: T | null | undefined): Array<T[keyof T]>;
3628
+ }
3629
+
3630
+ interface LoDashImplicitWrapper<TValue> {
3631
+ /**
3632
+ * @see _.valuesIn
3633
+ */
3634
+ valuesIn<T>(this: LoDashImplicitWrapper<Dictionary<T> | NumericDictionary<T> | List<T> | null | undefined>): LoDashImplicitWrapper<T[]>;
3635
+
3636
+ /**
3637
+ * @see _.valuesIn
3638
+ */
3639
+ valuesIn<T extends object>(this: LoDashImplicitWrapper<T | null | undefined>): LoDashImplicitWrapper<Array<T[keyof T]>>;
3640
+ }
3641
+
3642
+ interface LoDashExplicitWrapper<TValue> {
3643
+ /**
3644
+ * @see _.valuesIn
3645
+ */
3646
+ valuesIn<T>(this: LoDashExplicitWrapper<Dictionary<T> | NumericDictionary<T> | List<T> | null | undefined>): LoDashExplicitWrapper<T[]>;
3647
+
3648
+ /**
3649
+ * @see _.valuesIn
3650
+ */
3651
+ valuesIn<T extends object>(this: LoDashExplicitWrapper<T | null | undefined>): LoDashExplicitWrapper<Array<T[keyof T]>>;
3652
+ }
3653
+ }