cypress 7.1.0 → 7.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (732) hide show
  1. package/lib/cli.js +4 -4
  2. package/lib/errors.js +6 -1
  3. package/lib/exec/open.js +6 -9
  4. package/lib/exec/run.js +6 -26
  5. package/lib/exec/shared.js +50 -0
  6. package/lib/tasks/download.js +39 -5
  7. package/lib/tasks/install.js +18 -6
  8. package/lib/tasks/unzip.js +9 -12
  9. package/lib/tasks/verify.js +9 -3
  10. package/package.json +3 -4
  11. package/types/chai/index.d.ts +5 -3
  12. package/types/cypress-npm-api.d.ts +5 -0
  13. package/types/cypress.d.ts +40 -7
  14. package/types/lodash/common/array.d.ts +519 -2105
  15. package/types/lodash/common/collection.d.ts +912 -1569
  16. package/types/lodash/common/common.d.ts +71 -61
  17. package/types/lodash/common/date.d.ts +2 -6
  18. package/types/lodash/common/function.d.ts +808 -867
  19. package/types/lodash/common/lang.d.ts +239 -483
  20. package/types/lodash/common/math.d.ts +64 -191
  21. package/types/lodash/common/number.d.ts +39 -86
  22. package/types/lodash/common/object.d.ts +675 -2265
  23. package/types/lodash/common/seq.d.ts +101 -87
  24. package/types/lodash/common/string.d.ts +81 -352
  25. package/types/lodash/common/util.d.ts +337 -639
  26. package/types/lodash/fp.d.ts +478 -532
  27. package/types/lodash/index.d.ts +0 -1
  28. package/types/minimatch/index.d.ts +5 -15
  29. package/types/net-stubbing.ts +14 -10
  30. package/types/sinon/index.d.ts +218 -227
  31. package/types/sinon/ts3.1/index.d.ts +1789 -0
  32. package/types/lodash/ts3.1/add.d.ts +0 -2
  33. package/types/lodash/ts3.1/after.d.ts +0 -2
  34. package/types/lodash/ts3.1/ary.d.ts +0 -2
  35. package/types/lodash/ts3.1/assign.d.ts +0 -2
  36. package/types/lodash/ts3.1/assignIn.d.ts +0 -2
  37. package/types/lodash/ts3.1/assignInWith.d.ts +0 -2
  38. package/types/lodash/ts3.1/assignWith.d.ts +0 -2
  39. package/types/lodash/ts3.1/at.d.ts +0 -2
  40. package/types/lodash/ts3.1/attempt.d.ts +0 -2
  41. package/types/lodash/ts3.1/before.d.ts +0 -2
  42. package/types/lodash/ts3.1/bind.d.ts +0 -2
  43. package/types/lodash/ts3.1/bindAll.d.ts +0 -2
  44. package/types/lodash/ts3.1/bindKey.d.ts +0 -2
  45. package/types/lodash/ts3.1/camelCase.d.ts +0 -2
  46. package/types/lodash/ts3.1/capitalize.d.ts +0 -2
  47. package/types/lodash/ts3.1/castArray.d.ts +0 -2
  48. package/types/lodash/ts3.1/ceil.d.ts +0 -2
  49. package/types/lodash/ts3.1/chain.d.ts +0 -2
  50. package/types/lodash/ts3.1/chunk.d.ts +0 -2
  51. package/types/lodash/ts3.1/clamp.d.ts +0 -2
  52. package/types/lodash/ts3.1/clone.d.ts +0 -2
  53. package/types/lodash/ts3.1/cloneDeep.d.ts +0 -2
  54. package/types/lodash/ts3.1/cloneDeepWith.d.ts +0 -2
  55. package/types/lodash/ts3.1/cloneWith.d.ts +0 -2
  56. package/types/lodash/ts3.1/common/array.d.ts +0 -2127
  57. package/types/lodash/ts3.1/common/collection.d.ts +0 -1930
  58. package/types/lodash/ts3.1/common/common.d.ts +0 -284
  59. package/types/lodash/ts3.1/common/date.d.ts +0 -23
  60. package/types/lodash/ts3.1/common/function.d.ts +0 -1392
  61. package/types/lodash/ts3.1/common/lang.d.ts +0 -1694
  62. package/types/lodash/ts3.1/common/math.d.ts +0 -405
  63. package/types/lodash/ts3.1/common/number.d.ts +0 -131
  64. package/types/lodash/ts3.1/common/object.d.ts +0 -2507
  65. package/types/lodash/ts3.1/common/seq.d.ts +0 -210
  66. package/types/lodash/ts3.1/common/string.d.ts +0 -788
  67. package/types/lodash/ts3.1/common/util.d.ts +0 -1219
  68. package/types/lodash/ts3.1/compact.d.ts +0 -2
  69. package/types/lodash/ts3.1/concat.d.ts +0 -2
  70. package/types/lodash/ts3.1/cond.d.ts +0 -2
  71. package/types/lodash/ts3.1/conformsTo.d.ts +0 -2
  72. package/types/lodash/ts3.1/constant.d.ts +0 -2
  73. package/types/lodash/ts3.1/countBy.d.ts +0 -2
  74. package/types/lodash/ts3.1/create.d.ts +0 -2
  75. package/types/lodash/ts3.1/curry.d.ts +0 -2
  76. package/types/lodash/ts3.1/curryRight.d.ts +0 -2
  77. package/types/lodash/ts3.1/debounce.d.ts +0 -2
  78. package/types/lodash/ts3.1/deburr.d.ts +0 -2
  79. package/types/lodash/ts3.1/defaultTo.d.ts +0 -2
  80. package/types/lodash/ts3.1/defaults.d.ts +0 -2
  81. package/types/lodash/ts3.1/defaultsDeep.d.ts +0 -2
  82. package/types/lodash/ts3.1/defer.d.ts +0 -2
  83. package/types/lodash/ts3.1/delay.d.ts +0 -2
  84. package/types/lodash/ts3.1/difference.d.ts +0 -2
  85. package/types/lodash/ts3.1/differenceBy.d.ts +0 -2
  86. package/types/lodash/ts3.1/differenceWith.d.ts +0 -2
  87. package/types/lodash/ts3.1/divide.d.ts +0 -2
  88. package/types/lodash/ts3.1/drop.d.ts +0 -2
  89. package/types/lodash/ts3.1/dropRight.d.ts +0 -2
  90. package/types/lodash/ts3.1/dropRightWhile.d.ts +0 -2
  91. package/types/lodash/ts3.1/dropWhile.d.ts +0 -2
  92. package/types/lodash/ts3.1/each.d.ts +0 -2
  93. package/types/lodash/ts3.1/eachRight.d.ts +0 -2
  94. package/types/lodash/ts3.1/endsWith.d.ts +0 -2
  95. package/types/lodash/ts3.1/entries.d.ts +0 -2
  96. package/types/lodash/ts3.1/entriesIn.d.ts +0 -2
  97. package/types/lodash/ts3.1/eq.d.ts +0 -2
  98. package/types/lodash/ts3.1/escape.d.ts +0 -2
  99. package/types/lodash/ts3.1/escapeRegExp.d.ts +0 -2
  100. package/types/lodash/ts3.1/every.d.ts +0 -2
  101. package/types/lodash/ts3.1/extend.d.ts +0 -2
  102. package/types/lodash/ts3.1/extendWith.d.ts +0 -2
  103. package/types/lodash/ts3.1/fill.d.ts +0 -2
  104. package/types/lodash/ts3.1/filter.d.ts +0 -2
  105. package/types/lodash/ts3.1/find.d.ts +0 -2
  106. package/types/lodash/ts3.1/findIndex.d.ts +0 -2
  107. package/types/lodash/ts3.1/findKey.d.ts +0 -2
  108. package/types/lodash/ts3.1/findLast.d.ts +0 -2
  109. package/types/lodash/ts3.1/findLastIndex.d.ts +0 -2
  110. package/types/lodash/ts3.1/findLastKey.d.ts +0 -2
  111. package/types/lodash/ts3.1/first.d.ts +0 -2
  112. package/types/lodash/ts3.1/flatMap.d.ts +0 -2
  113. package/types/lodash/ts3.1/flatMapDeep.d.ts +0 -2
  114. package/types/lodash/ts3.1/flatMapDepth.d.ts +0 -2
  115. package/types/lodash/ts3.1/flatten.d.ts +0 -2
  116. package/types/lodash/ts3.1/flattenDeep.d.ts +0 -2
  117. package/types/lodash/ts3.1/flattenDepth.d.ts +0 -2
  118. package/types/lodash/ts3.1/flip.d.ts +0 -2
  119. package/types/lodash/ts3.1/floor.d.ts +0 -2
  120. package/types/lodash/ts3.1/flow.d.ts +0 -2
  121. package/types/lodash/ts3.1/flowRight.d.ts +0 -2
  122. package/types/lodash/ts3.1/forEach.d.ts +0 -2
  123. package/types/lodash/ts3.1/forEachRight.d.ts +0 -2
  124. package/types/lodash/ts3.1/forIn.d.ts +0 -2
  125. package/types/lodash/ts3.1/forInRight.d.ts +0 -2
  126. package/types/lodash/ts3.1/forOwn.d.ts +0 -2
  127. package/types/lodash/ts3.1/forOwnRight.d.ts +0 -2
  128. package/types/lodash/ts3.1/fp/F.d.ts +0 -2
  129. package/types/lodash/ts3.1/fp/T.d.ts +0 -2
  130. package/types/lodash/ts3.1/fp/__.d.ts +0 -3
  131. package/types/lodash/ts3.1/fp/add.d.ts +0 -2
  132. package/types/lodash/ts3.1/fp/after.d.ts +0 -2
  133. package/types/lodash/ts3.1/fp/all.d.ts +0 -2
  134. package/types/lodash/ts3.1/fp/allPass.d.ts +0 -2
  135. package/types/lodash/ts3.1/fp/always.d.ts +0 -2
  136. package/types/lodash/ts3.1/fp/any.d.ts +0 -2
  137. package/types/lodash/ts3.1/fp/anyPass.d.ts +0 -2
  138. package/types/lodash/ts3.1/fp/apply.d.ts +0 -2
  139. package/types/lodash/ts3.1/fp/ary.d.ts +0 -2
  140. package/types/lodash/ts3.1/fp/assign.d.ts +0 -2
  141. package/types/lodash/ts3.1/fp/assignAll.d.ts +0 -2
  142. package/types/lodash/ts3.1/fp/assignAllWith.d.ts +0 -2
  143. package/types/lodash/ts3.1/fp/assignIn.d.ts +0 -2
  144. package/types/lodash/ts3.1/fp/assignInAll.d.ts +0 -2
  145. package/types/lodash/ts3.1/fp/assignInAllWith.d.ts +0 -2
  146. package/types/lodash/ts3.1/fp/assignInWith.d.ts +0 -2
  147. package/types/lodash/ts3.1/fp/assignWith.d.ts +0 -2
  148. package/types/lodash/ts3.1/fp/assoc.d.ts +0 -2
  149. package/types/lodash/ts3.1/fp/assocPath.d.ts +0 -2
  150. package/types/lodash/ts3.1/fp/at.d.ts +0 -2
  151. package/types/lodash/ts3.1/fp/attempt.d.ts +0 -2
  152. package/types/lodash/ts3.1/fp/before.d.ts +0 -2
  153. package/types/lodash/ts3.1/fp/bind.d.ts +0 -2
  154. package/types/lodash/ts3.1/fp/bindAll.d.ts +0 -2
  155. package/types/lodash/ts3.1/fp/bindKey.d.ts +0 -2
  156. package/types/lodash/ts3.1/fp/camelCase.d.ts +0 -2
  157. package/types/lodash/ts3.1/fp/capitalize.d.ts +0 -2
  158. package/types/lodash/ts3.1/fp/castArray.d.ts +0 -2
  159. package/types/lodash/ts3.1/fp/ceil.d.ts +0 -2
  160. package/types/lodash/ts3.1/fp/chunk.d.ts +0 -2
  161. package/types/lodash/ts3.1/fp/clamp.d.ts +0 -2
  162. package/types/lodash/ts3.1/fp/clone.d.ts +0 -2
  163. package/types/lodash/ts3.1/fp/cloneDeep.d.ts +0 -2
  164. package/types/lodash/ts3.1/fp/cloneDeepWith.d.ts +0 -2
  165. package/types/lodash/ts3.1/fp/cloneWith.d.ts +0 -2
  166. package/types/lodash/ts3.1/fp/compact.d.ts +0 -2
  167. package/types/lodash/ts3.1/fp/complement.d.ts +0 -2
  168. package/types/lodash/ts3.1/fp/compose.d.ts +0 -2
  169. package/types/lodash/ts3.1/fp/concat.d.ts +0 -2
  170. package/types/lodash/ts3.1/fp/cond.d.ts +0 -2
  171. package/types/lodash/ts3.1/fp/conforms.d.ts +0 -2
  172. package/types/lodash/ts3.1/fp/conformsTo.d.ts +0 -2
  173. package/types/lodash/ts3.1/fp/constant.d.ts +0 -2
  174. package/types/lodash/ts3.1/fp/contains.d.ts +0 -2
  175. package/types/lodash/ts3.1/fp/convert.d.ts +0 -15
  176. package/types/lodash/ts3.1/fp/countBy.d.ts +0 -2
  177. package/types/lodash/ts3.1/fp/create.d.ts +0 -2
  178. package/types/lodash/ts3.1/fp/curry.d.ts +0 -2
  179. package/types/lodash/ts3.1/fp/curryN.d.ts +0 -2
  180. package/types/lodash/ts3.1/fp/curryRight.d.ts +0 -2
  181. package/types/lodash/ts3.1/fp/curryRightN.d.ts +0 -2
  182. package/types/lodash/ts3.1/fp/debounce.d.ts +0 -2
  183. package/types/lodash/ts3.1/fp/deburr.d.ts +0 -2
  184. package/types/lodash/ts3.1/fp/defaultTo.d.ts +0 -2
  185. package/types/lodash/ts3.1/fp/defaults.d.ts +0 -2
  186. package/types/lodash/ts3.1/fp/defaultsAll.d.ts +0 -2
  187. package/types/lodash/ts3.1/fp/defaultsDeep.d.ts +0 -2
  188. package/types/lodash/ts3.1/fp/defaultsDeepAll.d.ts +0 -2
  189. package/types/lodash/ts3.1/fp/defer.d.ts +0 -2
  190. package/types/lodash/ts3.1/fp/delay.d.ts +0 -2
  191. package/types/lodash/ts3.1/fp/difference.d.ts +0 -2
  192. package/types/lodash/ts3.1/fp/differenceBy.d.ts +0 -2
  193. package/types/lodash/ts3.1/fp/differenceWith.d.ts +0 -2
  194. package/types/lodash/ts3.1/fp/dissoc.d.ts +0 -2
  195. package/types/lodash/ts3.1/fp/dissocPath.d.ts +0 -2
  196. package/types/lodash/ts3.1/fp/divide.d.ts +0 -2
  197. package/types/lodash/ts3.1/fp/drop.d.ts +0 -2
  198. package/types/lodash/ts3.1/fp/dropLast.d.ts +0 -2
  199. package/types/lodash/ts3.1/fp/dropLastWhile.d.ts +0 -2
  200. package/types/lodash/ts3.1/fp/dropRight.d.ts +0 -2
  201. package/types/lodash/ts3.1/fp/dropRightWhile.d.ts +0 -2
  202. package/types/lodash/ts3.1/fp/dropWhile.d.ts +0 -2
  203. package/types/lodash/ts3.1/fp/each.d.ts +0 -2
  204. package/types/lodash/ts3.1/fp/eachRight.d.ts +0 -2
  205. package/types/lodash/ts3.1/fp/endsWith.d.ts +0 -2
  206. package/types/lodash/ts3.1/fp/entries.d.ts +0 -2
  207. package/types/lodash/ts3.1/fp/entriesIn.d.ts +0 -2
  208. package/types/lodash/ts3.1/fp/eq.d.ts +0 -2
  209. package/types/lodash/ts3.1/fp/equals.d.ts +0 -2
  210. package/types/lodash/ts3.1/fp/escape.d.ts +0 -2
  211. package/types/lodash/ts3.1/fp/escapeRegExp.d.ts +0 -2
  212. package/types/lodash/ts3.1/fp/every.d.ts +0 -2
  213. package/types/lodash/ts3.1/fp/extend.d.ts +0 -2
  214. package/types/lodash/ts3.1/fp/extendAll.d.ts +0 -2
  215. package/types/lodash/ts3.1/fp/extendAllWith.d.ts +0 -2
  216. package/types/lodash/ts3.1/fp/extendWith.d.ts +0 -2
  217. package/types/lodash/ts3.1/fp/fill.d.ts +0 -2
  218. package/types/lodash/ts3.1/fp/filter.d.ts +0 -2
  219. package/types/lodash/ts3.1/fp/find.d.ts +0 -2
  220. package/types/lodash/ts3.1/fp/findFrom.d.ts +0 -2
  221. package/types/lodash/ts3.1/fp/findIndex.d.ts +0 -2
  222. package/types/lodash/ts3.1/fp/findIndexFrom.d.ts +0 -2
  223. package/types/lodash/ts3.1/fp/findKey.d.ts +0 -2
  224. package/types/lodash/ts3.1/fp/findLast.d.ts +0 -2
  225. package/types/lodash/ts3.1/fp/findLastFrom.d.ts +0 -2
  226. package/types/lodash/ts3.1/fp/findLastIndex.d.ts +0 -2
  227. package/types/lodash/ts3.1/fp/findLastIndexFrom.d.ts +0 -2
  228. package/types/lodash/ts3.1/fp/findLastKey.d.ts +0 -2
  229. package/types/lodash/ts3.1/fp/first.d.ts +0 -2
  230. package/types/lodash/ts3.1/fp/flatMap.d.ts +0 -2
  231. package/types/lodash/ts3.1/fp/flatMapDeep.d.ts +0 -2
  232. package/types/lodash/ts3.1/fp/flatMapDepth.d.ts +0 -2
  233. package/types/lodash/ts3.1/fp/flatten.d.ts +0 -2
  234. package/types/lodash/ts3.1/fp/flattenDeep.d.ts +0 -2
  235. package/types/lodash/ts3.1/fp/flattenDepth.d.ts +0 -2
  236. package/types/lodash/ts3.1/fp/flip.d.ts +0 -2
  237. package/types/lodash/ts3.1/fp/floor.d.ts +0 -2
  238. package/types/lodash/ts3.1/fp/flow.d.ts +0 -2
  239. package/types/lodash/ts3.1/fp/flowRight.d.ts +0 -2
  240. package/types/lodash/ts3.1/fp/forEach.d.ts +0 -2
  241. package/types/lodash/ts3.1/fp/forEachRight.d.ts +0 -2
  242. package/types/lodash/ts3.1/fp/forIn.d.ts +0 -2
  243. package/types/lodash/ts3.1/fp/forInRight.d.ts +0 -2
  244. package/types/lodash/ts3.1/fp/forOwn.d.ts +0 -2
  245. package/types/lodash/ts3.1/fp/forOwnRight.d.ts +0 -2
  246. package/types/lodash/ts3.1/fp/fromPairs.d.ts +0 -2
  247. package/types/lodash/ts3.1/fp/functions.d.ts +0 -2
  248. package/types/lodash/ts3.1/fp/functionsIn.d.ts +0 -2
  249. package/types/lodash/ts3.1/fp/get.d.ts +0 -2
  250. package/types/lodash/ts3.1/fp/getOr.d.ts +0 -2
  251. package/types/lodash/ts3.1/fp/groupBy.d.ts +0 -2
  252. package/types/lodash/ts3.1/fp/gt.d.ts +0 -2
  253. package/types/lodash/ts3.1/fp/gte.d.ts +0 -2
  254. package/types/lodash/ts3.1/fp/has.d.ts +0 -2
  255. package/types/lodash/ts3.1/fp/hasIn.d.ts +0 -2
  256. package/types/lodash/ts3.1/fp/head.d.ts +0 -2
  257. package/types/lodash/ts3.1/fp/identical.d.ts +0 -2
  258. package/types/lodash/ts3.1/fp/identity.d.ts +0 -2
  259. package/types/lodash/ts3.1/fp/inRange.d.ts +0 -2
  260. package/types/lodash/ts3.1/fp/includes.d.ts +0 -2
  261. package/types/lodash/ts3.1/fp/includesFrom.d.ts +0 -2
  262. package/types/lodash/ts3.1/fp/indexBy.d.ts +0 -2
  263. package/types/lodash/ts3.1/fp/indexOf.d.ts +0 -2
  264. package/types/lodash/ts3.1/fp/indexOfFrom.d.ts +0 -2
  265. package/types/lodash/ts3.1/fp/init.d.ts +0 -2
  266. package/types/lodash/ts3.1/fp/initial.d.ts +0 -2
  267. package/types/lodash/ts3.1/fp/intersection.d.ts +0 -2
  268. package/types/lodash/ts3.1/fp/intersectionBy.d.ts +0 -2
  269. package/types/lodash/ts3.1/fp/intersectionWith.d.ts +0 -2
  270. package/types/lodash/ts3.1/fp/invert.d.ts +0 -2
  271. package/types/lodash/ts3.1/fp/invertBy.d.ts +0 -2
  272. package/types/lodash/ts3.1/fp/invertObj.d.ts +0 -2
  273. package/types/lodash/ts3.1/fp/invoke.d.ts +0 -2
  274. package/types/lodash/ts3.1/fp/invokeArgs.d.ts +0 -2
  275. package/types/lodash/ts3.1/fp/invokeArgsMap.d.ts +0 -2
  276. package/types/lodash/ts3.1/fp/invokeMap.d.ts +0 -2
  277. package/types/lodash/ts3.1/fp/isArguments.d.ts +0 -2
  278. package/types/lodash/ts3.1/fp/isArray.d.ts +0 -2
  279. package/types/lodash/ts3.1/fp/isArrayBuffer.d.ts +0 -2
  280. package/types/lodash/ts3.1/fp/isArrayLike.d.ts +0 -2
  281. package/types/lodash/ts3.1/fp/isArrayLikeObject.d.ts +0 -2
  282. package/types/lodash/ts3.1/fp/isBoolean.d.ts +0 -2
  283. package/types/lodash/ts3.1/fp/isBuffer.d.ts +0 -2
  284. package/types/lodash/ts3.1/fp/isDate.d.ts +0 -2
  285. package/types/lodash/ts3.1/fp/isElement.d.ts +0 -2
  286. package/types/lodash/ts3.1/fp/isEmpty.d.ts +0 -2
  287. package/types/lodash/ts3.1/fp/isEqual.d.ts +0 -2
  288. package/types/lodash/ts3.1/fp/isEqualWith.d.ts +0 -2
  289. package/types/lodash/ts3.1/fp/isError.d.ts +0 -2
  290. package/types/lodash/ts3.1/fp/isFinite.d.ts +0 -2
  291. package/types/lodash/ts3.1/fp/isFunction.d.ts +0 -2
  292. package/types/lodash/ts3.1/fp/isInteger.d.ts +0 -2
  293. package/types/lodash/ts3.1/fp/isLength.d.ts +0 -2
  294. package/types/lodash/ts3.1/fp/isMap.d.ts +0 -2
  295. package/types/lodash/ts3.1/fp/isMatch.d.ts +0 -2
  296. package/types/lodash/ts3.1/fp/isMatchWith.d.ts +0 -2
  297. package/types/lodash/ts3.1/fp/isNaN.d.ts +0 -2
  298. package/types/lodash/ts3.1/fp/isNative.d.ts +0 -2
  299. package/types/lodash/ts3.1/fp/isNil.d.ts +0 -2
  300. package/types/lodash/ts3.1/fp/isNull.d.ts +0 -2
  301. package/types/lodash/ts3.1/fp/isNumber.d.ts +0 -2
  302. package/types/lodash/ts3.1/fp/isObject.d.ts +0 -2
  303. package/types/lodash/ts3.1/fp/isObjectLike.d.ts +0 -2
  304. package/types/lodash/ts3.1/fp/isPlainObject.d.ts +0 -2
  305. package/types/lodash/ts3.1/fp/isRegExp.d.ts +0 -2
  306. package/types/lodash/ts3.1/fp/isSafeInteger.d.ts +0 -2
  307. package/types/lodash/ts3.1/fp/isSet.d.ts +0 -2
  308. package/types/lodash/ts3.1/fp/isString.d.ts +0 -2
  309. package/types/lodash/ts3.1/fp/isSymbol.d.ts +0 -2
  310. package/types/lodash/ts3.1/fp/isTypedArray.d.ts +0 -2
  311. package/types/lodash/ts3.1/fp/isUndefined.d.ts +0 -2
  312. package/types/lodash/ts3.1/fp/isWeakMap.d.ts +0 -2
  313. package/types/lodash/ts3.1/fp/isWeakSet.d.ts +0 -2
  314. package/types/lodash/ts3.1/fp/iteratee.d.ts +0 -2
  315. package/types/lodash/ts3.1/fp/join.d.ts +0 -2
  316. package/types/lodash/ts3.1/fp/juxt.d.ts +0 -2
  317. package/types/lodash/ts3.1/fp/kebabCase.d.ts +0 -2
  318. package/types/lodash/ts3.1/fp/keyBy.d.ts +0 -2
  319. package/types/lodash/ts3.1/fp/keys.d.ts +0 -2
  320. package/types/lodash/ts3.1/fp/keysIn.d.ts +0 -2
  321. package/types/lodash/ts3.1/fp/last.d.ts +0 -2
  322. package/types/lodash/ts3.1/fp/lastIndexOf.d.ts +0 -2
  323. package/types/lodash/ts3.1/fp/lastIndexOfFrom.d.ts +0 -2
  324. package/types/lodash/ts3.1/fp/lowerCase.d.ts +0 -2
  325. package/types/lodash/ts3.1/fp/lowerFirst.d.ts +0 -2
  326. package/types/lodash/ts3.1/fp/lt.d.ts +0 -2
  327. package/types/lodash/ts3.1/fp/lte.d.ts +0 -2
  328. package/types/lodash/ts3.1/fp/map.d.ts +0 -2
  329. package/types/lodash/ts3.1/fp/mapKeys.d.ts +0 -2
  330. package/types/lodash/ts3.1/fp/mapValues.d.ts +0 -2
  331. package/types/lodash/ts3.1/fp/matches.d.ts +0 -2
  332. package/types/lodash/ts3.1/fp/matchesProperty.d.ts +0 -2
  333. package/types/lodash/ts3.1/fp/max.d.ts +0 -2
  334. package/types/lodash/ts3.1/fp/maxBy.d.ts +0 -2
  335. package/types/lodash/ts3.1/fp/mean.d.ts +0 -2
  336. package/types/lodash/ts3.1/fp/meanBy.d.ts +0 -2
  337. package/types/lodash/ts3.1/fp/memoize.d.ts +0 -2
  338. package/types/lodash/ts3.1/fp/merge.d.ts +0 -2
  339. package/types/lodash/ts3.1/fp/mergeAll.d.ts +0 -2
  340. package/types/lodash/ts3.1/fp/mergeAllWith.d.ts +0 -2
  341. package/types/lodash/ts3.1/fp/mergeWith.d.ts +0 -2
  342. package/types/lodash/ts3.1/fp/method.d.ts +0 -2
  343. package/types/lodash/ts3.1/fp/methodOf.d.ts +0 -2
  344. package/types/lodash/ts3.1/fp/min.d.ts +0 -2
  345. package/types/lodash/ts3.1/fp/minBy.d.ts +0 -2
  346. package/types/lodash/ts3.1/fp/multiply.d.ts +0 -2
  347. package/types/lodash/ts3.1/fp/nAry.d.ts +0 -2
  348. package/types/lodash/ts3.1/fp/negate.d.ts +0 -2
  349. package/types/lodash/ts3.1/fp/noConflict.d.ts +0 -2
  350. package/types/lodash/ts3.1/fp/noop.d.ts +0 -2
  351. package/types/lodash/ts3.1/fp/now.d.ts +0 -2
  352. package/types/lodash/ts3.1/fp/nth.d.ts +0 -2
  353. package/types/lodash/ts3.1/fp/nthArg.d.ts +0 -2
  354. package/types/lodash/ts3.1/fp/omit.d.ts +0 -2
  355. package/types/lodash/ts3.1/fp/omitAll.d.ts +0 -2
  356. package/types/lodash/ts3.1/fp/omitBy.d.ts +0 -2
  357. package/types/lodash/ts3.1/fp/once.d.ts +0 -2
  358. package/types/lodash/ts3.1/fp/orderBy.d.ts +0 -2
  359. package/types/lodash/ts3.1/fp/over.d.ts +0 -2
  360. package/types/lodash/ts3.1/fp/overArgs.d.ts +0 -2
  361. package/types/lodash/ts3.1/fp/overEvery.d.ts +0 -2
  362. package/types/lodash/ts3.1/fp/overSome.d.ts +0 -2
  363. package/types/lodash/ts3.1/fp/pad.d.ts +0 -2
  364. package/types/lodash/ts3.1/fp/padChars.d.ts +0 -2
  365. package/types/lodash/ts3.1/fp/padCharsEnd.d.ts +0 -2
  366. package/types/lodash/ts3.1/fp/padCharsStart.d.ts +0 -2
  367. package/types/lodash/ts3.1/fp/padEnd.d.ts +0 -2
  368. package/types/lodash/ts3.1/fp/padStart.d.ts +0 -2
  369. package/types/lodash/ts3.1/fp/parseInt.d.ts +0 -2
  370. package/types/lodash/ts3.1/fp/partial.d.ts +0 -2
  371. package/types/lodash/ts3.1/fp/partialRight.d.ts +0 -2
  372. package/types/lodash/ts3.1/fp/partition.d.ts +0 -2
  373. package/types/lodash/ts3.1/fp/path.d.ts +0 -2
  374. package/types/lodash/ts3.1/fp/pathEq.d.ts +0 -2
  375. package/types/lodash/ts3.1/fp/pathOr.d.ts +0 -2
  376. package/types/lodash/ts3.1/fp/paths.d.ts +0 -2
  377. package/types/lodash/ts3.1/fp/pick.d.ts +0 -2
  378. package/types/lodash/ts3.1/fp/pickAll.d.ts +0 -2
  379. package/types/lodash/ts3.1/fp/pickBy.d.ts +0 -2
  380. package/types/lodash/ts3.1/fp/pipe.d.ts +0 -2
  381. package/types/lodash/ts3.1/fp/placeholder.d.ts +0 -3
  382. package/types/lodash/ts3.1/fp/pluck.d.ts +0 -2
  383. package/types/lodash/ts3.1/fp/prop.d.ts +0 -2
  384. package/types/lodash/ts3.1/fp/propEq.d.ts +0 -2
  385. package/types/lodash/ts3.1/fp/propOr.d.ts +0 -2
  386. package/types/lodash/ts3.1/fp/property.d.ts +0 -2
  387. package/types/lodash/ts3.1/fp/propertyOf.d.ts +0 -2
  388. package/types/lodash/ts3.1/fp/props.d.ts +0 -2
  389. package/types/lodash/ts3.1/fp/pull.d.ts +0 -2
  390. package/types/lodash/ts3.1/fp/pullAll.d.ts +0 -2
  391. package/types/lodash/ts3.1/fp/pullAllBy.d.ts +0 -2
  392. package/types/lodash/ts3.1/fp/pullAllWith.d.ts +0 -2
  393. package/types/lodash/ts3.1/fp/pullAt.d.ts +0 -2
  394. package/types/lodash/ts3.1/fp/random.d.ts +0 -2
  395. package/types/lodash/ts3.1/fp/range.d.ts +0 -2
  396. package/types/lodash/ts3.1/fp/rangeRight.d.ts +0 -2
  397. package/types/lodash/ts3.1/fp/rangeStep.d.ts +0 -2
  398. package/types/lodash/ts3.1/fp/rangeStepRight.d.ts +0 -2
  399. package/types/lodash/ts3.1/fp/rearg.d.ts +0 -2
  400. package/types/lodash/ts3.1/fp/reduce.d.ts +0 -2
  401. package/types/lodash/ts3.1/fp/reduceRight.d.ts +0 -2
  402. package/types/lodash/ts3.1/fp/reject.d.ts +0 -2
  403. package/types/lodash/ts3.1/fp/remove.d.ts +0 -2
  404. package/types/lodash/ts3.1/fp/repeat.d.ts +0 -2
  405. package/types/lodash/ts3.1/fp/replace.d.ts +0 -2
  406. package/types/lodash/ts3.1/fp/rest.d.ts +0 -2
  407. package/types/lodash/ts3.1/fp/restFrom.d.ts +0 -2
  408. package/types/lodash/ts3.1/fp/result.d.ts +0 -2
  409. package/types/lodash/ts3.1/fp/reverse.d.ts +0 -2
  410. package/types/lodash/ts3.1/fp/round.d.ts +0 -2
  411. package/types/lodash/ts3.1/fp/runInContext.d.ts +0 -2
  412. package/types/lodash/ts3.1/fp/sample.d.ts +0 -2
  413. package/types/lodash/ts3.1/fp/sampleSize.d.ts +0 -2
  414. package/types/lodash/ts3.1/fp/set.d.ts +0 -2
  415. package/types/lodash/ts3.1/fp/setWith.d.ts +0 -2
  416. package/types/lodash/ts3.1/fp/shuffle.d.ts +0 -2
  417. package/types/lodash/ts3.1/fp/size.d.ts +0 -2
  418. package/types/lodash/ts3.1/fp/slice.d.ts +0 -2
  419. package/types/lodash/ts3.1/fp/snakeCase.d.ts +0 -2
  420. package/types/lodash/ts3.1/fp/some.d.ts +0 -2
  421. package/types/lodash/ts3.1/fp/sortBy.d.ts +0 -2
  422. package/types/lodash/ts3.1/fp/sortedIndex.d.ts +0 -2
  423. package/types/lodash/ts3.1/fp/sortedIndexBy.d.ts +0 -2
  424. package/types/lodash/ts3.1/fp/sortedIndexOf.d.ts +0 -2
  425. package/types/lodash/ts3.1/fp/sortedLastIndex.d.ts +0 -2
  426. package/types/lodash/ts3.1/fp/sortedLastIndexBy.d.ts +0 -2
  427. package/types/lodash/ts3.1/fp/sortedLastIndexOf.d.ts +0 -2
  428. package/types/lodash/ts3.1/fp/sortedUniq.d.ts +0 -2
  429. package/types/lodash/ts3.1/fp/sortedUniqBy.d.ts +0 -2
  430. package/types/lodash/ts3.1/fp/split.d.ts +0 -2
  431. package/types/lodash/ts3.1/fp/spread.d.ts +0 -2
  432. package/types/lodash/ts3.1/fp/spreadFrom.d.ts +0 -2
  433. package/types/lodash/ts3.1/fp/startCase.d.ts +0 -2
  434. package/types/lodash/ts3.1/fp/startsWith.d.ts +0 -2
  435. package/types/lodash/ts3.1/fp/stubArray.d.ts +0 -2
  436. package/types/lodash/ts3.1/fp/stubFalse.d.ts +0 -2
  437. package/types/lodash/ts3.1/fp/stubObject.d.ts +0 -2
  438. package/types/lodash/ts3.1/fp/stubString.d.ts +0 -2
  439. package/types/lodash/ts3.1/fp/stubTrue.d.ts +0 -2
  440. package/types/lodash/ts3.1/fp/subtract.d.ts +0 -2
  441. package/types/lodash/ts3.1/fp/sum.d.ts +0 -2
  442. package/types/lodash/ts3.1/fp/sumBy.d.ts +0 -2
  443. package/types/lodash/ts3.1/fp/symmetricDifference.d.ts +0 -2
  444. package/types/lodash/ts3.1/fp/symmetricDifferenceBy.d.ts +0 -2
  445. package/types/lodash/ts3.1/fp/symmetricDifferenceWith.d.ts +0 -2
  446. package/types/lodash/ts3.1/fp/tail.d.ts +0 -2
  447. package/types/lodash/ts3.1/fp/take.d.ts +0 -2
  448. package/types/lodash/ts3.1/fp/takeLast.d.ts +0 -2
  449. package/types/lodash/ts3.1/fp/takeLastWhile.d.ts +0 -2
  450. package/types/lodash/ts3.1/fp/takeRight.d.ts +0 -2
  451. package/types/lodash/ts3.1/fp/takeRightWhile.d.ts +0 -2
  452. package/types/lodash/ts3.1/fp/takeWhile.d.ts +0 -2
  453. package/types/lodash/ts3.1/fp/tap.d.ts +0 -2
  454. package/types/lodash/ts3.1/fp/template.d.ts +0 -2
  455. package/types/lodash/ts3.1/fp/throttle.d.ts +0 -2
  456. package/types/lodash/ts3.1/fp/thru.d.ts +0 -2
  457. package/types/lodash/ts3.1/fp/times.d.ts +0 -2
  458. package/types/lodash/ts3.1/fp/toArray.d.ts +0 -2
  459. package/types/lodash/ts3.1/fp/toFinite.d.ts +0 -2
  460. package/types/lodash/ts3.1/fp/toInteger.d.ts +0 -2
  461. package/types/lodash/ts3.1/fp/toLength.d.ts +0 -2
  462. package/types/lodash/ts3.1/fp/toLower.d.ts +0 -2
  463. package/types/lodash/ts3.1/fp/toNumber.d.ts +0 -2
  464. package/types/lodash/ts3.1/fp/toPairs.d.ts +0 -2
  465. package/types/lodash/ts3.1/fp/toPairsIn.d.ts +0 -2
  466. package/types/lodash/ts3.1/fp/toPath.d.ts +0 -2
  467. package/types/lodash/ts3.1/fp/toPlainObject.d.ts +0 -2
  468. package/types/lodash/ts3.1/fp/toSafeInteger.d.ts +0 -2
  469. package/types/lodash/ts3.1/fp/toString.d.ts +0 -2
  470. package/types/lodash/ts3.1/fp/toUpper.d.ts +0 -2
  471. package/types/lodash/ts3.1/fp/transform.d.ts +0 -2
  472. package/types/lodash/ts3.1/fp/trim.d.ts +0 -2
  473. package/types/lodash/ts3.1/fp/trimChars.d.ts +0 -2
  474. package/types/lodash/ts3.1/fp/trimCharsEnd.d.ts +0 -2
  475. package/types/lodash/ts3.1/fp/trimCharsStart.d.ts +0 -2
  476. package/types/lodash/ts3.1/fp/trimEnd.d.ts +0 -2
  477. package/types/lodash/ts3.1/fp/trimStart.d.ts +0 -2
  478. package/types/lodash/ts3.1/fp/truncate.d.ts +0 -2
  479. package/types/lodash/ts3.1/fp/unapply.d.ts +0 -2
  480. package/types/lodash/ts3.1/fp/unary.d.ts +0 -2
  481. package/types/lodash/ts3.1/fp/unescape.d.ts +0 -2
  482. package/types/lodash/ts3.1/fp/union.d.ts +0 -2
  483. package/types/lodash/ts3.1/fp/unionBy.d.ts +0 -2
  484. package/types/lodash/ts3.1/fp/unionWith.d.ts +0 -2
  485. package/types/lodash/ts3.1/fp/uniq.d.ts +0 -2
  486. package/types/lodash/ts3.1/fp/uniqBy.d.ts +0 -2
  487. package/types/lodash/ts3.1/fp/uniqWith.d.ts +0 -2
  488. package/types/lodash/ts3.1/fp/uniqueId.d.ts +0 -2
  489. package/types/lodash/ts3.1/fp/unnest.d.ts +0 -2
  490. package/types/lodash/ts3.1/fp/unset.d.ts +0 -2
  491. package/types/lodash/ts3.1/fp/unzip.d.ts +0 -2
  492. package/types/lodash/ts3.1/fp/unzipWith.d.ts +0 -2
  493. package/types/lodash/ts3.1/fp/update.d.ts +0 -2
  494. package/types/lodash/ts3.1/fp/updateWith.d.ts +0 -2
  495. package/types/lodash/ts3.1/fp/upperCase.d.ts +0 -2
  496. package/types/lodash/ts3.1/fp/upperFirst.d.ts +0 -2
  497. package/types/lodash/ts3.1/fp/useWith.d.ts +0 -2
  498. package/types/lodash/ts3.1/fp/values.d.ts +0 -2
  499. package/types/lodash/ts3.1/fp/valuesIn.d.ts +0 -2
  500. package/types/lodash/ts3.1/fp/where.d.ts +0 -2
  501. package/types/lodash/ts3.1/fp/whereEq.d.ts +0 -2
  502. package/types/lodash/ts3.1/fp/without.d.ts +0 -2
  503. package/types/lodash/ts3.1/fp/words.d.ts +0 -2
  504. package/types/lodash/ts3.1/fp/wrap.d.ts +0 -2
  505. package/types/lodash/ts3.1/fp/xor.d.ts +0 -2
  506. package/types/lodash/ts3.1/fp/xorBy.d.ts +0 -2
  507. package/types/lodash/ts3.1/fp/xorWith.d.ts +0 -2
  508. package/types/lodash/ts3.1/fp/zip.d.ts +0 -2
  509. package/types/lodash/ts3.1/fp/zipAll.d.ts +0 -2
  510. package/types/lodash/ts3.1/fp/zipObj.d.ts +0 -2
  511. package/types/lodash/ts3.1/fp/zipObject.d.ts +0 -2
  512. package/types/lodash/ts3.1/fp/zipObjectDeep.d.ts +0 -2
  513. package/types/lodash/ts3.1/fp/zipWith.d.ts +0 -2
  514. package/types/lodash/ts3.1/fp.d.ts +0 -4938
  515. package/types/lodash/ts3.1/fromPairs.d.ts +0 -2
  516. package/types/lodash/ts3.1/functions.d.ts +0 -2
  517. package/types/lodash/ts3.1/functionsIn.d.ts +0 -2
  518. package/types/lodash/ts3.1/get.d.ts +0 -2
  519. package/types/lodash/ts3.1/groupBy.d.ts +0 -2
  520. package/types/lodash/ts3.1/gt.d.ts +0 -2
  521. package/types/lodash/ts3.1/gte.d.ts +0 -2
  522. package/types/lodash/ts3.1/has.d.ts +0 -2
  523. package/types/lodash/ts3.1/hasIn.d.ts +0 -2
  524. package/types/lodash/ts3.1/head.d.ts +0 -2
  525. package/types/lodash/ts3.1/identity.d.ts +0 -2
  526. package/types/lodash/ts3.1/inRange.d.ts +0 -2
  527. package/types/lodash/ts3.1/includes.d.ts +0 -2
  528. package/types/lodash/ts3.1/index.d.ts +0 -33
  529. package/types/lodash/ts3.1/indexOf.d.ts +0 -2
  530. package/types/lodash/ts3.1/initial.d.ts +0 -2
  531. package/types/lodash/ts3.1/intersection.d.ts +0 -2
  532. package/types/lodash/ts3.1/intersectionBy.d.ts +0 -2
  533. package/types/lodash/ts3.1/intersectionWith.d.ts +0 -2
  534. package/types/lodash/ts3.1/invert.d.ts +0 -2
  535. package/types/lodash/ts3.1/invertBy.d.ts +0 -2
  536. package/types/lodash/ts3.1/invoke.d.ts +0 -2
  537. package/types/lodash/ts3.1/invokeMap.d.ts +0 -2
  538. package/types/lodash/ts3.1/isArguments.d.ts +0 -2
  539. package/types/lodash/ts3.1/isArray.d.ts +0 -2
  540. package/types/lodash/ts3.1/isArrayBuffer.d.ts +0 -2
  541. package/types/lodash/ts3.1/isArrayLike.d.ts +0 -2
  542. package/types/lodash/ts3.1/isArrayLikeObject.d.ts +0 -2
  543. package/types/lodash/ts3.1/isBoolean.d.ts +0 -2
  544. package/types/lodash/ts3.1/isBuffer.d.ts +0 -2
  545. package/types/lodash/ts3.1/isDate.d.ts +0 -2
  546. package/types/lodash/ts3.1/isElement.d.ts +0 -2
  547. package/types/lodash/ts3.1/isEmpty.d.ts +0 -2
  548. package/types/lodash/ts3.1/isEqual.d.ts +0 -2
  549. package/types/lodash/ts3.1/isEqualWith.d.ts +0 -2
  550. package/types/lodash/ts3.1/isError.d.ts +0 -2
  551. package/types/lodash/ts3.1/isFinite.d.ts +0 -2
  552. package/types/lodash/ts3.1/isFunction.d.ts +0 -2
  553. package/types/lodash/ts3.1/isInteger.d.ts +0 -2
  554. package/types/lodash/ts3.1/isLength.d.ts +0 -2
  555. package/types/lodash/ts3.1/isMap.d.ts +0 -2
  556. package/types/lodash/ts3.1/isMatch.d.ts +0 -2
  557. package/types/lodash/ts3.1/isMatchWith.d.ts +0 -2
  558. package/types/lodash/ts3.1/isNaN.d.ts +0 -2
  559. package/types/lodash/ts3.1/isNative.d.ts +0 -2
  560. package/types/lodash/ts3.1/isNil.d.ts +0 -2
  561. package/types/lodash/ts3.1/isNull.d.ts +0 -2
  562. package/types/lodash/ts3.1/isNumber.d.ts +0 -2
  563. package/types/lodash/ts3.1/isObject.d.ts +0 -2
  564. package/types/lodash/ts3.1/isObjectLike.d.ts +0 -2
  565. package/types/lodash/ts3.1/isPlainObject.d.ts +0 -2
  566. package/types/lodash/ts3.1/isRegExp.d.ts +0 -2
  567. package/types/lodash/ts3.1/isSafeInteger.d.ts +0 -2
  568. package/types/lodash/ts3.1/isSet.d.ts +0 -2
  569. package/types/lodash/ts3.1/isString.d.ts +0 -2
  570. package/types/lodash/ts3.1/isSymbol.d.ts +0 -2
  571. package/types/lodash/ts3.1/isTypedArray.d.ts +0 -2
  572. package/types/lodash/ts3.1/isUndefined.d.ts +0 -2
  573. package/types/lodash/ts3.1/isWeakMap.d.ts +0 -2
  574. package/types/lodash/ts3.1/isWeakSet.d.ts +0 -2
  575. package/types/lodash/ts3.1/iteratee.d.ts +0 -2
  576. package/types/lodash/ts3.1/join.d.ts +0 -2
  577. package/types/lodash/ts3.1/kebabCase.d.ts +0 -2
  578. package/types/lodash/ts3.1/keyBy.d.ts +0 -2
  579. package/types/lodash/ts3.1/keys.d.ts +0 -2
  580. package/types/lodash/ts3.1/keysIn.d.ts +0 -2
  581. package/types/lodash/ts3.1/last.d.ts +0 -2
  582. package/types/lodash/ts3.1/lastIndexOf.d.ts +0 -2
  583. package/types/lodash/ts3.1/lowerCase.d.ts +0 -2
  584. package/types/lodash/ts3.1/lowerFirst.d.ts +0 -2
  585. package/types/lodash/ts3.1/lt.d.ts +0 -2
  586. package/types/lodash/ts3.1/lte.d.ts +0 -2
  587. package/types/lodash/ts3.1/map.d.ts +0 -2
  588. package/types/lodash/ts3.1/mapKeys.d.ts +0 -2
  589. package/types/lodash/ts3.1/mapValues.d.ts +0 -2
  590. package/types/lodash/ts3.1/matches.d.ts +0 -2
  591. package/types/lodash/ts3.1/matchesProperty.d.ts +0 -2
  592. package/types/lodash/ts3.1/max.d.ts +0 -2
  593. package/types/lodash/ts3.1/maxBy.d.ts +0 -2
  594. package/types/lodash/ts3.1/mean.d.ts +0 -2
  595. package/types/lodash/ts3.1/meanBy.d.ts +0 -2
  596. package/types/lodash/ts3.1/memoize.d.ts +0 -2
  597. package/types/lodash/ts3.1/merge.d.ts +0 -2
  598. package/types/lodash/ts3.1/mergeWith.d.ts +0 -2
  599. package/types/lodash/ts3.1/method.d.ts +0 -2
  600. package/types/lodash/ts3.1/methodOf.d.ts +0 -2
  601. package/types/lodash/ts3.1/min.d.ts +0 -2
  602. package/types/lodash/ts3.1/minBy.d.ts +0 -2
  603. package/types/lodash/ts3.1/mixin.d.ts +0 -2
  604. package/types/lodash/ts3.1/multiply.d.ts +0 -2
  605. package/types/lodash/ts3.1/negate.d.ts +0 -2
  606. package/types/lodash/ts3.1/noConflict.d.ts +0 -2
  607. package/types/lodash/ts3.1/noop.d.ts +0 -2
  608. package/types/lodash/ts3.1/now.d.ts +0 -2
  609. package/types/lodash/ts3.1/nth.d.ts +0 -2
  610. package/types/lodash/ts3.1/nthArg.d.ts +0 -2
  611. package/types/lodash/ts3.1/omit.d.ts +0 -2
  612. package/types/lodash/ts3.1/omitBy.d.ts +0 -2
  613. package/types/lodash/ts3.1/once.d.ts +0 -2
  614. package/types/lodash/ts3.1/orderBy.d.ts +0 -2
  615. package/types/lodash/ts3.1/over.d.ts +0 -2
  616. package/types/lodash/ts3.1/overArgs.d.ts +0 -2
  617. package/types/lodash/ts3.1/overEvery.d.ts +0 -2
  618. package/types/lodash/ts3.1/overSome.d.ts +0 -2
  619. package/types/lodash/ts3.1/pad.d.ts +0 -2
  620. package/types/lodash/ts3.1/padEnd.d.ts +0 -2
  621. package/types/lodash/ts3.1/padStart.d.ts +0 -2
  622. package/types/lodash/ts3.1/parseInt.d.ts +0 -2
  623. package/types/lodash/ts3.1/partial.d.ts +0 -2
  624. package/types/lodash/ts3.1/partialRight.d.ts +0 -2
  625. package/types/lodash/ts3.1/partition.d.ts +0 -2
  626. package/types/lodash/ts3.1/pick.d.ts +0 -2
  627. package/types/lodash/ts3.1/pickBy.d.ts +0 -2
  628. package/types/lodash/ts3.1/property.d.ts +0 -2
  629. package/types/lodash/ts3.1/propertyOf.d.ts +0 -2
  630. package/types/lodash/ts3.1/pull.d.ts +0 -2
  631. package/types/lodash/ts3.1/pullAll.d.ts +0 -2
  632. package/types/lodash/ts3.1/pullAllBy.d.ts +0 -2
  633. package/types/lodash/ts3.1/pullAllWith.d.ts +0 -2
  634. package/types/lodash/ts3.1/pullAt.d.ts +0 -2
  635. package/types/lodash/ts3.1/random.d.ts +0 -2
  636. package/types/lodash/ts3.1/range.d.ts +0 -2
  637. package/types/lodash/ts3.1/rangeRight.d.ts +0 -2
  638. package/types/lodash/ts3.1/rearg.d.ts +0 -2
  639. package/types/lodash/ts3.1/reduce.d.ts +0 -2
  640. package/types/lodash/ts3.1/reduceRight.d.ts +0 -2
  641. package/types/lodash/ts3.1/reject.d.ts +0 -2
  642. package/types/lodash/ts3.1/remove.d.ts +0 -2
  643. package/types/lodash/ts3.1/repeat.d.ts +0 -2
  644. package/types/lodash/ts3.1/replace.d.ts +0 -2
  645. package/types/lodash/ts3.1/rest.d.ts +0 -2
  646. package/types/lodash/ts3.1/result.d.ts +0 -2
  647. package/types/lodash/ts3.1/reverse.d.ts +0 -2
  648. package/types/lodash/ts3.1/round.d.ts +0 -2
  649. package/types/lodash/ts3.1/runInContext.d.ts +0 -2
  650. package/types/lodash/ts3.1/sample.d.ts +0 -2
  651. package/types/lodash/ts3.1/sampleSize.d.ts +0 -2
  652. package/types/lodash/ts3.1/set.d.ts +0 -2
  653. package/types/lodash/ts3.1/setWith.d.ts +0 -2
  654. package/types/lodash/ts3.1/shuffle.d.ts +0 -2
  655. package/types/lodash/ts3.1/size.d.ts +0 -2
  656. package/types/lodash/ts3.1/slice.d.ts +0 -2
  657. package/types/lodash/ts3.1/snakeCase.d.ts +0 -2
  658. package/types/lodash/ts3.1/some.d.ts +0 -2
  659. package/types/lodash/ts3.1/sortBy.d.ts +0 -2
  660. package/types/lodash/ts3.1/sortedIndex.d.ts +0 -2
  661. package/types/lodash/ts3.1/sortedIndexBy.d.ts +0 -2
  662. package/types/lodash/ts3.1/sortedIndexOf.d.ts +0 -2
  663. package/types/lodash/ts3.1/sortedLastIndex.d.ts +0 -2
  664. package/types/lodash/ts3.1/sortedLastIndexBy.d.ts +0 -2
  665. package/types/lodash/ts3.1/sortedLastIndexOf.d.ts +0 -2
  666. package/types/lodash/ts3.1/sortedUniq.d.ts +0 -2
  667. package/types/lodash/ts3.1/sortedUniqBy.d.ts +0 -2
  668. package/types/lodash/ts3.1/split.d.ts +0 -2
  669. package/types/lodash/ts3.1/spread.d.ts +0 -2
  670. package/types/lodash/ts3.1/startCase.d.ts +0 -2
  671. package/types/lodash/ts3.1/startsWith.d.ts +0 -2
  672. package/types/lodash/ts3.1/stubFalse.d.ts +0 -2
  673. package/types/lodash/ts3.1/stubTrue.d.ts +0 -2
  674. package/types/lodash/ts3.1/subtract.d.ts +0 -2
  675. package/types/lodash/ts3.1/sum.d.ts +0 -2
  676. package/types/lodash/ts3.1/sumBy.d.ts +0 -2
  677. package/types/lodash/ts3.1/tail.d.ts +0 -2
  678. package/types/lodash/ts3.1/take.d.ts +0 -2
  679. package/types/lodash/ts3.1/takeRight.d.ts +0 -2
  680. package/types/lodash/ts3.1/takeRightWhile.d.ts +0 -2
  681. package/types/lodash/ts3.1/takeWhile.d.ts +0 -2
  682. package/types/lodash/ts3.1/tap.d.ts +0 -2
  683. package/types/lodash/ts3.1/template.d.ts +0 -2
  684. package/types/lodash/ts3.1/throttle.d.ts +0 -2
  685. package/types/lodash/ts3.1/thru.d.ts +0 -2
  686. package/types/lodash/ts3.1/times.d.ts +0 -2
  687. package/types/lodash/ts3.1/toArray.d.ts +0 -2
  688. package/types/lodash/ts3.1/toFinite.d.ts +0 -2
  689. package/types/lodash/ts3.1/toInteger.d.ts +0 -2
  690. package/types/lodash/ts3.1/toLength.d.ts +0 -2
  691. package/types/lodash/ts3.1/toLower.d.ts +0 -2
  692. package/types/lodash/ts3.1/toNumber.d.ts +0 -2
  693. package/types/lodash/ts3.1/toPairs.d.ts +0 -2
  694. package/types/lodash/ts3.1/toPairsIn.d.ts +0 -2
  695. package/types/lodash/ts3.1/toPath.d.ts +0 -2
  696. package/types/lodash/ts3.1/toPlainObject.d.ts +0 -2
  697. package/types/lodash/ts3.1/toSafeInteger.d.ts +0 -2
  698. package/types/lodash/ts3.1/toString.d.ts +0 -2
  699. package/types/lodash/ts3.1/toUpper.d.ts +0 -2
  700. package/types/lodash/ts3.1/transform.d.ts +0 -2
  701. package/types/lodash/ts3.1/trim.d.ts +0 -2
  702. package/types/lodash/ts3.1/trimEnd.d.ts +0 -2
  703. package/types/lodash/ts3.1/trimStart.d.ts +0 -2
  704. package/types/lodash/ts3.1/truncate.d.ts +0 -2
  705. package/types/lodash/ts3.1/unary.d.ts +0 -2
  706. package/types/lodash/ts3.1/unescape.d.ts +0 -2
  707. package/types/lodash/ts3.1/union.d.ts +0 -2
  708. package/types/lodash/ts3.1/unionBy.d.ts +0 -2
  709. package/types/lodash/ts3.1/unionWith.d.ts +0 -2
  710. package/types/lodash/ts3.1/uniq.d.ts +0 -2
  711. package/types/lodash/ts3.1/uniqBy.d.ts +0 -2
  712. package/types/lodash/ts3.1/uniqWith.d.ts +0 -2
  713. package/types/lodash/ts3.1/uniqueId.d.ts +0 -2
  714. package/types/lodash/ts3.1/unset.d.ts +0 -2
  715. package/types/lodash/ts3.1/unzip.d.ts +0 -2
  716. package/types/lodash/ts3.1/unzipWith.d.ts +0 -2
  717. package/types/lodash/ts3.1/update.d.ts +0 -2
  718. package/types/lodash/ts3.1/updateWith.d.ts +0 -2
  719. package/types/lodash/ts3.1/upperCase.d.ts +0 -2
  720. package/types/lodash/ts3.1/upperFirst.d.ts +0 -2
  721. package/types/lodash/ts3.1/values.d.ts +0 -2
  722. package/types/lodash/ts3.1/valuesIn.d.ts +0 -2
  723. package/types/lodash/ts3.1/without.d.ts +0 -2
  724. package/types/lodash/ts3.1/words.d.ts +0 -2
  725. package/types/lodash/ts3.1/wrap.d.ts +0 -2
  726. package/types/lodash/ts3.1/xor.d.ts +0 -2
  727. package/types/lodash/ts3.1/xorBy.d.ts +0 -2
  728. package/types/lodash/ts3.1/xorWith.d.ts +0 -2
  729. package/types/lodash/ts3.1/zip.d.ts +0 -2
  730. package/types/lodash/ts3.1/zipObject.d.ts +0 -2
  731. package/types/lodash/ts3.1/zipObjectDeep.d.ts +0 -2
  732. package/types/lodash/ts3.1/zipWith.d.ts +0 -2
@@ -1,7 +1,5 @@
1
1
  import _ = require("../index");
2
2
  declare module "../index" {
3
- // countBy
4
-
5
3
  interface LoDashStatic {
6
4
  /**
7
5
  * Creates an object composed of keys generated from the results of running each element of collection through
@@ -12,138 +10,150 @@ declare module "../index" {
12
10
  * @param iteratee The function invoked per iteration.
13
11
  * @return Returns the composed aggregate object.
14
12
  */
15
- countBy<T>(
16
- collection: List<T> | null | undefined,
17
- iteratee?: ValueIteratee<T>
18
- ): Dictionary<number>;
19
-
13
+ countBy<T>(collection: List<T> | null | undefined, iteratee?: ValueIteratee<T>): Dictionary<number>;
20
14
  /**
21
15
  * @see _.countBy
22
16
  */
23
- countBy<T extends object>(
24
- collection: T | null | undefined,
25
- iteratee?: ValueIteratee<T[keyof T]>
26
- ): Dictionary<number>;
17
+ countBy<T extends object>(collection: T | null | undefined, iteratee?: ValueIteratee<T[keyof T]>): Dictionary<number>;
27
18
  }
28
-
29
- interface LoDashImplicitWrapper<TValue> {
19
+ interface Object<T> {
30
20
  /**
31
21
  * @see _.countBy
32
22
  */
33
- countBy<T>(
34
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
35
- iteratee?: ValueIteratee<T>
36
- ): LoDashImplicitWrapper<Dictionary<number>>;
37
-
23
+ countBy(iteratee?: ValueIteratee<T[keyof T]>): Object<Dictionary<number>>;
24
+ }
25
+ interface String {
38
26
  /**
39
27
  * @see _.countBy
40
28
  */
41
- countBy<T extends object>(
42
- this: LoDashImplicitWrapper<T | null | undefined>,
43
- iteratee?: ValueIteratee<T[keyof T]>
44
- ): LoDashImplicitWrapper<Dictionary<number>>;
29
+ countBy(iteratee?: ValueIteratee<string>): Object<Dictionary<number>>;
45
30
  }
46
-
47
- interface LoDashExplicitWrapper<TValue> {
31
+ interface Collection<T> {
48
32
  /**
49
33
  * @see _.countBy
50
34
  */
51
- countBy<T>(
52
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
53
- iteratee?: ValueIteratee<T>
54
- ): LoDashExplicitWrapper<Dictionary<number>>;
55
-
35
+ countBy(iteratee?: ValueIteratee<T>): Object<Dictionary<number>>;
36
+ }
37
+ interface ObjectChain<T> {
56
38
  /**
57
39
  * @see _.countBy
58
40
  */
59
- countBy<T extends object>(
60
- this: LoDashExplicitWrapper<T | null | undefined>,
61
- iteratee?: ValueIteratee<T[keyof T]>
62
- ): LoDashExplicitWrapper<Dictionary<number>>;
41
+ countBy(iteratee?: ValueIteratee<T[keyof T]>): ObjectChain<Dictionary<number>>;
63
42
  }
64
-
65
- // each
66
-
67
- interface LoDashStatic {
68
- each: typeof _.forEach; // tslint:disable-line:no-unnecessary-qualifier
43
+ interface StringChain {
44
+ /**
45
+ * @see _.countBy
46
+ */
47
+ countBy(iteratee?: ValueIteratee<string>): ObjectChain<Dictionary<number>>;
69
48
  }
70
-
71
- interface LoDashWrapper<TValue> {
49
+ interface StringNullableChain {
72
50
  /**
73
- * @see _.forEach
51
+ * @see _.countBy
74
52
  */
75
- each<T>(
76
- this: LoDashWrapper<T[] | null | undefined>,
77
- iteratee?: ArrayIterator<T, any>
78
- ): this;
79
-
53
+ countBy(iteratee?: ValueIteratee<string>): ObjectChain<Dictionary<number>>;
54
+ }
55
+ interface CollectionChain<T> {
80
56
  /**
81
- * @see _.forEach
57
+ * @see _.countBy
82
58
  */
83
- each(
84
- this: LoDashWrapper<string | null | undefined>,
85
- iteratee?: StringIterator<any>
86
- ): this;
87
-
59
+ countBy(iteratee?: ValueIteratee<T>): ObjectChain<Dictionary<number>>;
60
+ }
61
+ interface LoDashStatic {
88
62
  /**
89
63
  * @see _.forEach
90
64
  */
91
- each<T>(
92
- this: LoDashWrapper<List<T> | null | undefined>,
93
- iteratee?: ListIterator<T, any>
94
- ): this;
95
-
65
+ each: LoDashStatic['forEach'];
66
+ }
67
+ interface String {
96
68
  /**
97
- * @see _.forEach
69
+ * @see _.each
98
70
  */
99
- each<T extends object>(
100
- this: LoDashWrapper<T | null | undefined>,
101
- iteratee?: ObjectIterator<T, any>
102
- ): this;
71
+ each: String['forEach'];
103
72
  }
104
-
105
- // eachRight
106
-
107
- interface LoDashStatic {
108
- eachRight: typeof _.forEachRight; // tslint:disable-line:no-unnecessary-qualifier
73
+ interface Collection<T> {
74
+ /**
75
+ * @see _.each
76
+ */
77
+ each: Collection<T>['forEach'];
109
78
  }
110
-
111
- interface LoDashWrapper<TValue> {
79
+ interface Object<T> {
112
80
  /**
113
- * @see _.forEachRight
81
+ * @see _.each
114
82
  */
115
- eachRight<T>(
116
- this: LoDashWrapper<T[] | null | undefined>,
117
- iteratee?: ArrayIterator<T, any>
118
- ): this;
119
-
83
+ each: Object<T>['forEach'];
84
+ }
85
+ interface StringChain {
120
86
  /**
121
- * @see _.forEachRight
87
+ * @see _.each
122
88
  */
123
- eachRight(
124
- this: LoDashWrapper<string | null | undefined>,
125
- iteratee?: StringIterator<any>
126
- ): this;
127
-
89
+ each: StringChain['forEach'];
90
+ }
91
+ interface StringNullableChain {
128
92
  /**
129
- * @see _.forEachRight
93
+ * @see _.each
130
94
  */
131
- eachRight<T>(
132
- this: LoDashWrapper<List<T> | null | undefined>,
133
- iteratee?: ListIterator<T, any>
134
- ): this;
135
-
95
+ each: StringNullableChain['forEach'];
96
+ }
97
+ interface CollectionChain<T> {
98
+ /**
99
+ * @see _.each
100
+ */
101
+ each: CollectionChain<T>['forEach'];
102
+ }
103
+ interface ObjectChain<T> {
104
+ /**
105
+ * @see _.each
106
+ */
107
+ each: ObjectChain<T>['forEach'];
108
+ }
109
+ interface LoDashStatic {
136
110
  /**
137
111
  * @see _.forEachRight
138
112
  */
139
- eachRight<T extends object>(
140
- this: LoDashWrapper<T | null | undefined>,
141
- iteratee?: ObjectIterator<T, any>
142
- ): this;
113
+ eachRight: LoDashStatic["forEachRight"];
114
+ }
115
+ interface String {
116
+ /**
117
+ * @see _.eachRight
118
+ */
119
+ eachRight: String['forEachRight'];
120
+ }
121
+ interface Collection<T> {
122
+ /**
123
+ * @see _.eachRight
124
+ */
125
+ eachRight: Collection<T>['forEachRight'];
126
+ }
127
+ interface Object<T> {
128
+ /**
129
+ * @see _.eachRight
130
+ */
131
+ eachRight: Object<T>['forEachRight'];
132
+ }
133
+ interface StringChain {
134
+ /**
135
+ * @see _.eachRight
136
+ */
137
+ eachRight: StringChain['forEachRight'];
138
+ }
139
+ interface StringNullableChain {
140
+ /**
141
+ * @see _.eachRight
142
+ */
143
+ eachRight: StringNullableChain['forEachRight'];
144
+ }
145
+ interface CollectionChain<T> {
146
+ /**
147
+ * @see _.eachRight
148
+ */
149
+ eachRight: CollectionChain<T>['forEachRight'];
150
+ }
151
+ interface ObjectChain<T> {
152
+ /**
153
+ * @see _.eachRight
154
+ */
155
+ eachRight: ObjectChain<T>['forEachRight'];
143
156
  }
144
-
145
- // every
146
-
147
157
  interface LoDashStatic {
148
158
  /**
149
159
  * Checks if predicate returns truthy for all elements of collection. Iteration is stopped once predicate
@@ -153,58 +163,36 @@ declare module "../index" {
153
163
  * @param predicate The function invoked per iteration.
154
164
  * @return Returns true if all elements pass the predicate check, else false.
155
165
  */
156
- every<T>(
157
- collection: List<T> | null | undefined,
158
- predicate?: ListIterateeCustom<T, boolean>
159
- ): boolean;
160
-
166
+ every<T>(collection: List<T> | null | undefined, predicate?: ListIterateeCustom<T, boolean>): boolean;
161
167
  /**
162
168
  * @see _.every
163
169
  */
164
- every<T extends object>(
165
- collection: T | null | undefined,
166
- predicate?: ObjectIterateeCustom<T, boolean>
167
- ): boolean;
170
+ every<T extends object>(collection: T | null | undefined, predicate?: ObjectIterateeCustom<T, boolean>): boolean;
168
171
  }
169
-
170
- interface LoDashImplicitWrapper<TValue> {
172
+ interface Collection<T> {
171
173
  /**
172
174
  * @see _.every
173
175
  */
174
- every<T>(
175
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
176
- predicate?: ListIterateeCustom<T, boolean>
177
- ): boolean;
178
-
176
+ every(predicate?: ListIterateeCustom<T, boolean>): boolean;
177
+ }
178
+ interface Object<T> {
179
179
  /**
180
180
  * @see _.every
181
181
  */
182
- every<T extends object>(
183
- this: LoDashImplicitWrapper<T | null | undefined>,
184
- predicate?: ObjectIterateeCustom<T, boolean>
185
- ): boolean;
182
+ every(predicate?: ObjectIterateeCustom<T, boolean>): boolean;
186
183
  }
187
-
188
- interface LoDashExplicitWrapper<TValue> {
184
+ interface CollectionChain<T> {
189
185
  /**
190
186
  * @see _.every
191
187
  */
192
- every<T>(
193
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
194
- predicate?: ListIterateeCustom<T, boolean>
195
- ): LoDashExplicitWrapper<boolean>;
196
-
188
+ every(predicate?: ListIterateeCustom<T, boolean>): PrimitiveChain<boolean>;
189
+ }
190
+ interface ObjectChain<T> {
197
191
  /**
198
192
  * @see _.every
199
193
  */
200
- every<T extends object>(
201
- this: LoDashExplicitWrapper<T | null | undefined>,
202
- predicate?: ObjectIterateeCustom<T, boolean>
203
- ): LoDashExplicitWrapper<boolean>;
194
+ every(predicate?: ObjectIterateeCustom<T, boolean>): PrimitiveChain<boolean>;
204
195
  }
205
-
206
- // filter
207
-
208
196
  interface LoDashStatic {
209
197
  /**
210
198
  * Iterates over elements of collection, returning an array of all elements predicate returns truthy for. The
@@ -214,130 +202,82 @@ declare module "../index" {
214
202
  * @param predicate The function invoked per iteration.
215
203
  * @return Returns the new filtered array.
216
204
  */
217
- filter(
218
- collection: string | null | undefined,
219
- predicate?: StringIterator<boolean>
220
- ): string[];
221
-
205
+ filter(collection: string | null | undefined, predicate?: StringIterator<boolean>): string[];
222
206
  /**
223
207
  * @see _.filter
224
208
  */
225
- filter<T, S extends T>(
226
- collection: List<T> | null | undefined,
227
- predicate: ListIteratorTypeGuard<T, S>
228
- ): S[];
229
-
209
+ filter<T, S extends T>(collection: List<T> | null | undefined, predicate: ListIteratorTypeGuard<T, S>): S[];
230
210
  /**
231
211
  * @see _.filter
232
212
  */
233
- filter<T>(
234
- collection: List<T> | null | undefined,
235
- predicate?: ListIterateeCustom<T, boolean>
236
- ): T[];
237
-
213
+ filter<T>(collection: List<T> | null | undefined, predicate?: ListIterateeCustom<T, boolean>): T[];
238
214
  /**
239
215
  * @see _.filter
240
216
  */
241
- filter<T extends object, S extends T[keyof T]>(
242
- collection: T | null | undefined,
243
- predicate: ObjectIteratorTypeGuard<T, S>
244
- ): S[];
245
-
217
+ filter<T extends object, S extends T[keyof T]>(collection: T | null | undefined, predicate: ObjectIteratorTypeGuard<T, S>): S[];
246
218
  /**
247
219
  * @see _.filter
248
220
  */
249
- filter<T extends object>(
250
- collection: T | null | undefined,
251
- predicate?: ObjectIterateeCustom<T, boolean>
252
- ): Array<T[keyof T]>;
221
+ filter<T extends object>(collection: T | null | undefined, predicate?: ObjectIterateeCustom<T, boolean>): Array<T[keyof T]>;
253
222
  }
254
-
255
- interface LoDashImplicitWrapper<TValue> {
223
+ interface String {
256
224
  /**
257
225
  * @see _.filter
258
226
  */
259
- filter(
260
- this: LoDashImplicitWrapper<string | null | undefined>,
261
- predicate?: StringIterator<boolean>
262
- ): LoDashImplicitWrapper<string[]>;
263
-
227
+ filter(predicate?: StringIterator<boolean>): Collection<string>;
228
+ }
229
+ interface Collection<T> {
264
230
  /**
265
231
  * @see _.filter
266
232
  */
267
- filter<T, S extends T>(
268
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
269
- predicate: ListIteratorTypeGuard<T, S>
270
- ): LoDashImplicitWrapper<S[]>;
271
-
233
+ filter<S extends T>(predicate: ListIteratorTypeGuard<T, S>): Collection<S>;
272
234
  /**
273
235
  * @see _.filter
274
236
  */
275
- filter<T>(
276
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
277
- predicate?: ListIterateeCustom<T, boolean>
278
- ): LoDashImplicitWrapper<T[]>;
279
-
237
+ filter(predicate?: ListIterateeCustom<T, boolean>): Collection<T>;
238
+ }
239
+ interface Object<T> {
280
240
  /**
281
241
  * @see _.filter
282
242
  */
283
- filter<T extends object, S extends T[keyof T]>(
284
- this: LoDashImplicitWrapper<T | null | undefined>,
285
- predicate: ObjectIteratorTypeGuard<T, S>
286
- ): LoDashImplicitWrapper<S[]>;
287
-
243
+ filter<S extends T[keyof T]>(predicate: ObjectIteratorTypeGuard<T, S>): Collection<S>;
288
244
  /**
289
245
  * @see _.filter
290
246
  */
291
- filter<T extends object>(
292
- this: LoDashImplicitWrapper<T | null | undefined>,
293
- predicate?: ObjectIterateeCustom<T, boolean>
294
- ): LoDashImplicitWrapper<Array<T[keyof T]>>;
247
+ filter(predicate?: ObjectIterateeCustom<T, boolean>): Collection<T[keyof T]>;
295
248
  }
296
-
297
- interface LoDashExplicitWrapper<TValue> {
249
+ interface StringChain {
298
250
  /**
299
251
  * @see _.filter
300
252
  */
301
- filter(
302
- this: LoDashExplicitWrapper<string | null | undefined>,
303
- predicate?: StringIterator<boolean>
304
- ): LoDashExplicitWrapper<string[]>;
305
-
253
+ filter(predicate?: StringIterator<boolean>): CollectionChain<string>;
254
+ }
255
+ interface StringNullableChain {
306
256
  /**
307
257
  * @see _.filter
308
258
  */
309
- filter<T, S extends T>(
310
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
311
- predicate: ListIteratorTypeGuard<T, S>
312
- ): LoDashExplicitWrapper<S[]>;
313
-
259
+ filter(predicate?: StringIterator<boolean>): CollectionChain<string>;
260
+ }
261
+ interface CollectionChain<T> {
314
262
  /**
315
263
  * @see _.filter
316
264
  */
317
- filter<T>(
318
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
319
- predicate?: ListIterateeCustom<T, boolean>
320
- ): LoDashExplicitWrapper<T[]>;
321
-
265
+ filter<S extends T>(predicate: ListIteratorTypeGuard<T, S>): CollectionChain<S>;
322
266
  /**
323
267
  * @see _.filter
324
268
  */
325
- filter<T extends object, S extends T[keyof T]>(
326
- this: LoDashExplicitWrapper<T | null | undefined>,
327
- predicate: ObjectIteratorTypeGuard<T, S>
328
- ): LoDashExplicitWrapper<S[]>;
329
-
269
+ filter(predicate?: ListIterateeCustom<T, boolean>): CollectionChain<T>;
270
+ }
271
+ interface ObjectChain<T> {
272
+ /**
273
+ * @see _.filter
274
+ */
275
+ filter<S extends T[keyof T]>(predicate: ObjectIteratorTypeGuard<T, S>): CollectionChain<S>;
330
276
  /**
331
277
  * @see _.filter
332
278
  */
333
- filter<T extends object>(
334
- this: LoDashExplicitWrapper<T | null | undefined>,
335
- predicate?: ObjectIterateeCustom<T, boolean>
336
- ): LoDashExplicitWrapper<Array<T[keyof T]>>;
279
+ filter(predicate?: ObjectIterateeCustom<T, boolean>): CollectionChain<T[keyof T]>;
337
280
  }
338
-
339
- // find
340
-
341
281
  interface LoDashStatic {
342
282
  /**
343
283
  * Iterates over elements of collection, returning the first element predicate returns truthy for.
@@ -348,118 +288,60 @@ declare module "../index" {
348
288
  * @param fromIndex The index to search from.
349
289
  * @return Returns the matched element, else undefined.
350
290
  */
351
- find<T, S extends T>(
352
- collection: List<T> | null | undefined,
353
- predicate: ListIteratorTypeGuard<T, S>,
354
- fromIndex?: number
355
- ): S|undefined;
356
-
291
+ find<T, S extends T>(collection: List<T> | null | undefined, predicate: ListIteratorTypeGuard<T, S>, fromIndex?: number): S|undefined;
357
292
  /**
358
293
  * @see _.find
359
294
  */
360
- find<T>(
361
- collection: List<T> | null | undefined,
362
- predicate?: ListIterateeCustom<T, boolean>,
363
- fromIndex?: number
364
- ): T|undefined;
365
-
295
+ find<T>(collection: List<T> | null | undefined, predicate?: ListIterateeCustom<T, boolean>, fromIndex?: number): T|undefined;
366
296
  /**
367
297
  * @see _.find
368
298
  */
369
- find<T extends object, S extends T[keyof T]>(
370
- collection: T | null | undefined,
371
- predicate: ObjectIteratorTypeGuard<T, S>,
372
- fromIndex?: number
373
- ): S|undefined;
374
-
299
+ find<T extends object, S extends T[keyof T]>(collection: T | null | undefined, predicate: ObjectIteratorTypeGuard<T, S>, fromIndex?: number): S|undefined;
375
300
  /**
376
301
  * @see _.find
377
302
  */
378
- find<T extends object>(
379
- collection: T | null | undefined,
380
- predicate?: ObjectIterateeCustom<T, boolean>,
381
- fromIndex?: number
382
- ): T[keyof T]|undefined;
303
+ find<T extends object>(collection: T | null | undefined, predicate?: ObjectIterateeCustom<T, boolean>, fromIndex?: number): T[keyof T]|undefined;
383
304
  }
384
-
385
- interface LoDashImplicitWrapper<TValue> {
305
+ interface Collection<T> {
386
306
  /**
387
307
  * @see _.find
388
308
  */
389
- find<T, S extends T>(
390
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
391
- predicate: ListIteratorTypeGuard<T, S>,
392
- fromIndex?: number
393
- ): S|undefined;
394
-
309
+ find<S extends T>(predicate: ListIteratorTypeGuard<T, S>, fromIndex?: number): S|undefined;
395
310
  /**
396
311
  * @see _.find
397
312
  */
398
- find<T>(
399
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
400
- predicate?: ListIterateeCustom<T, boolean>,
401
- fromIndex?: number
402
- ): T|undefined;
403
-
313
+ find(predicate?: ListIterateeCustom<T, boolean>, fromIndex?: number): T|undefined;
314
+ }
315
+ interface Object<T> {
404
316
  /**
405
317
  * @see _.find
406
318
  */
407
- find<T extends object, S extends T[keyof T]>(
408
- this: LoDashImplicitWrapper<T | null | undefined>,
409
- predicate: ObjectIteratorTypeGuard<T, S>,
410
- fromIndex?: number
411
- ): S|undefined;
412
-
319
+ find< S extends T[keyof T]>(predicate: ObjectIteratorTypeGuard<T, S>, fromIndex?: number): S|undefined;
413
320
  /**
414
321
  * @see _.find
415
322
  */
416
- find<T extends object>(
417
- this: LoDashImplicitWrapper<T | null | undefined>,
418
- predicate?: ObjectIterateeCustom<T, boolean>,
419
- fromIndex?: number
420
- ): T[keyof T]|undefined;
323
+ find(predicate?: ObjectIterateeCustom<T, boolean>, fromIndex?: number): T[keyof T]|undefined;
421
324
  }
422
-
423
- interface LoDashExplicitWrapper<TValue> {
325
+ interface CollectionChain<T> {
424
326
  /**
425
327
  * @see _.find
426
328
  */
427
- find<T, S extends T>(
428
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
429
- predicate: ListIteratorTypeGuard<T, S>,
430
- fromIndex?: number
431
- ): LoDashExplicitWrapper<S|undefined>;
432
-
329
+ find< S extends T>(predicate: ListIteratorTypeGuard<T, S>, fromIndex?: number): ExpChain<S|undefined>;
433
330
  /**
434
331
  * @see _.find
435
332
  */
436
- find<T>(
437
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
438
- predicate?: ListIterateeCustom<T, boolean>,
439
- fromIndex?: number
440
- ): LoDashExplicitWrapper<T|undefined>;
441
-
333
+ find(predicate?: ListIterateeCustom<T, boolean>, fromIndex?: number): ExpChain<T|undefined>;
334
+ }
335
+ interface ObjectChain<T> {
442
336
  /**
443
337
  * @see _.find
444
338
  */
445
- find<T extends object, S extends T[keyof T]>(
446
- this: LoDashExplicitWrapper<T | null | undefined>,
447
- predicate: ObjectIteratorTypeGuard<T, S>,
448
- fromIndex?: number
449
- ): LoDashExplicitWrapper<S|undefined>;
450
-
339
+ find< S extends T[keyof T]>(predicate: ObjectIteratorTypeGuard<T, S>, fromIndex?: number): ExpChain<S|undefined>;
451
340
  /**
452
341
  * @see _.find
453
342
  */
454
- find<T extends object>(
455
- this: LoDashExplicitWrapper<T | null | undefined>,
456
- predicate?: ObjectIterateeCustom<T, boolean>,
457
- fromIndex?: number
458
- ): LoDashExplicitWrapper<T[keyof T]|undefined>;
343
+ find(predicate?: ObjectIterateeCustom<T, boolean>, fromIndex?: number): ExpChain<T[keyof T]|undefined>;
459
344
  }
460
-
461
- // findLast
462
-
463
345
  interface LoDashStatic {
464
346
  /**
465
347
  * This method is like _.find except that it iterates over elements of a collection from
@@ -469,118 +351,60 @@ declare module "../index" {
469
351
  * @param fromIndex The index to search from.
470
352
  * @return The found element, else undefined.
471
353
  */
472
- findLast<T, S extends T>(
473
- collection: List<T> | null | undefined,
474
- predicate: ListIteratorTypeGuard<T, S>,
475
- fromIndex?: number
476
- ): S|undefined;
477
-
354
+ findLast<T, S extends T>(collection: List<T> | null | undefined, predicate: ListIteratorTypeGuard<T, S>, fromIndex?: number): S|undefined;
478
355
  /**
479
356
  * @see _.findLast
480
357
  */
481
- findLast<T>(
482
- collection: List<T> | null | undefined,
483
- predicate?: ListIterateeCustom<T, boolean>,
484
- fromIndex?: number
485
- ): T|undefined;
486
-
358
+ findLast<T>(collection: List<T> | null | undefined, predicate?: ListIterateeCustom<T, boolean>, fromIndex?: number): T|undefined;
487
359
  /**
488
360
  * @see _.findLast
489
361
  */
490
- findLast<T extends object, S extends T[keyof T]>(
491
- collection: T | null | undefined,
492
- predicate: ObjectIteratorTypeGuard<T, S>,
493
- fromIndex?: number
494
- ): S|undefined;
495
-
362
+ findLast<T extends object, S extends T[keyof T]>(collection: T | null | undefined, predicate: ObjectIteratorTypeGuard<T, S>, fromIndex?: number): S|undefined;
496
363
  /**
497
364
  * @see _.findLast
498
365
  */
499
- findLast<T extends object>(
500
- collection: T | null | undefined,
501
- predicate?: ObjectIterateeCustom<T, boolean>,
502
- fromIndex?: number
503
- ): T[keyof T]|undefined;
366
+ findLast<T extends object>(collection: T | null | undefined, predicate?: ObjectIterateeCustom<T, boolean>, fromIndex?: number): T[keyof T]|undefined;
504
367
  }
505
-
506
- interface LoDashImplicitWrapper<TValue> {
368
+ interface Collection<T> {
507
369
  /**
508
370
  * @see _.findLast
509
371
  */
510
- findLast<T, S extends T>(
511
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
512
- predicate: ListIteratorTypeGuard<T, S>,
513
- fromIndex?: number
514
- ): S | undefined;
515
-
372
+ findLast<S extends T>(predicate: ListIteratorTypeGuard<T, S>, fromIndex?: number): S|undefined;
516
373
  /**
517
374
  * @see _.findLast
518
375
  */
519
- findLast<T>(
520
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
521
- predicate?: ListIterateeCustom<T, boolean>,
522
- fromIndex?: number
523
- ): T | undefined;
524
-
376
+ findLast(predicate?: ListIterateeCustom<T, boolean>, fromIndex?: number): T|undefined;
377
+ }
378
+ interface Object<T> {
525
379
  /**
526
380
  * @see _.findLast
527
381
  */
528
- findLast<T extends object, S extends T[keyof T]>(
529
- this: LoDashImplicitWrapper<T | null | undefined>,
530
- predicate: ObjectIteratorTypeGuard<T, S>,
531
- fromIndex?: number
532
- ): S|undefined;
533
-
382
+ findLast< S extends T[keyof T]>(predicate: ObjectIteratorTypeGuard<T, S>, fromIndex?: number): S|undefined;
534
383
  /**
535
384
  * @see _.findLast
536
385
  */
537
- findLast<T extends object>(
538
- this: LoDashImplicitWrapper<T | null | undefined>,
539
- predicate?: ObjectIterateeCustom<T, boolean>,
540
- fromIndex?: number
541
- ): T[keyof T]|undefined;
386
+ findLast(predicate?: ObjectIterateeCustom<T, boolean>, fromIndex?: number): T[keyof T]|undefined;
542
387
  }
543
-
544
- interface LoDashExplicitWrapper<TValue> {
388
+ interface CollectionChain<T> {
545
389
  /**
546
390
  * @see _.findLast
547
391
  */
548
- findLast<T, S extends T>(
549
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
550
- predicate: ListIteratorTypeGuard<T, S>,
551
- fromIndex?: number
552
- ): LoDashExplicitWrapper<S | undefined>;
553
-
392
+ findLast< S extends T>(predicate: ListIteratorTypeGuard<T, S>, fromIndex?: number): ExpChain<S|undefined>;
554
393
  /**
555
394
  * @see _.findLast
556
395
  */
557
- findLast<T>(
558
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
559
- predicate?: ListIterateeCustom<T, boolean>,
560
- fromIndex?: number
561
- ): LoDashExplicitWrapper<T | undefined>;
562
-
396
+ findLast(predicate?: ListIterateeCustom<T, boolean>, fromIndex?: number): ExpChain<T|undefined>;
397
+ }
398
+ interface ObjectChain<T> {
563
399
  /**
564
400
  * @see _.findLast
565
401
  */
566
- findLast<T extends object, S extends T[keyof T]>(
567
- this: LoDashExplicitWrapper<T | null | undefined>,
568
- predicate: ObjectIteratorTypeGuard<T, S>,
569
- fromIndex?: number
570
- ): LoDashExplicitWrapper<S|undefined>;
571
-
402
+ findLast< S extends T[keyof T]>(predicate: ObjectIteratorTypeGuard<T, S>, fromIndex?: number): ExpChain<S|undefined>;
572
403
  /**
573
404
  * @see _.findLast
574
405
  */
575
- findLast<T extends object>(
576
- this: LoDashExplicitWrapper<T | null | undefined>,
577
- predicate?: ObjectIterateeCustom<T, boolean>,
578
- fromIndex?: number
579
- ): LoDashExplicitWrapper<T[keyof T]|undefined>;
406
+ findLast(predicate?: ObjectIterateeCustom<T, boolean>, fromIndex?: number): ExpChain<T[keyof T]|undefined>;
580
407
  }
581
-
582
- // flatMap
583
-
584
408
  interface LoDashStatic {
585
409
  /**
586
410
  * Creates an array of flattened values by running each element in collection through iteratee
@@ -591,136 +415,114 @@ declare module "../index" {
591
415
  * @param iteratee The function invoked per iteration.
592
416
  * @return Returns the new flattened array.
593
417
  */
594
- flatMap<T>(
595
- collection: List<Many<T>> | Dictionary<Many<T>> | NumericDictionary<Many<T>> | null | undefined
596
- ): T[];
597
-
418
+ flatMap<T>(collection: Dictionary<Many<T>> | NumericDictionary<Many<T>> | null | undefined): T[];
598
419
  /**
599
420
  * @see _.flatMap
600
421
  */
601
- flatMap(
602
- collection: object | null | undefined
603
- ): any[];
604
-
422
+ flatMap(collection: object | null | undefined): any[];
605
423
  /**
606
424
  * @see _.flatMap
607
425
  */
608
- flatMap<T, TResult>(
609
- collection: List<T> | null | undefined,
610
- iteratee: ListIterator<T, Many<TResult>>
611
- ): TResult[];
612
-
426
+ flatMap<T, TResult>(collection: List<T> | null | undefined, iteratee: ListIterator<T, Many<TResult>>): TResult[];
613
427
  /**
614
428
  * @see _.flatMap
615
429
  */
616
- flatMap<T extends object, TResult>(
617
- collection: T | null | undefined,
618
- iteratee: ObjectIterator<T, Many<TResult>>
619
- ): TResult[];
620
-
430
+ flatMap<T extends object, TResult>(collection: T | null | undefined, iteratee: ObjectIterator<T, Many<TResult>>): TResult[];
621
431
  /**
622
432
  * @see _.flatMap
623
433
  */
624
- flatMap(
625
- collection: object | null | undefined,
626
- iteratee: string
627
- ): any[];
628
-
434
+ flatMap(collection: object | null | undefined, iteratee: string): any[];
629
435
  /**
630
436
  * @see _.flatMap
631
437
  */
632
- flatMap(
633
- collection: object | null | undefined,
634
- iteratee: object
635
- ): boolean[];
438
+ flatMap(collection: object | null | undefined, iteratee: object): boolean[];
636
439
  }
637
-
638
- interface LoDashImplicitWrapper<TValue> {
440
+ interface String {
639
441
  /**
640
442
  * @see _.flatMap
641
443
  */
642
- flatMap<T>(this: LoDashImplicitWrapper<List<Many<T>> | Dictionary<Many<T>> | NumericDictionary<Many<T>> | null | undefined>): LoDashImplicitWrapper<T[]>;
643
-
444
+ flatMap<TResult>(iteratee: StringIterator<Many<TResult>>): Collection<TResult>;
644
445
  /**
645
446
  * @see _.flatMap
646
447
  */
647
- flatMap(): LoDashImplicitWrapper<any[]>;
648
-
448
+ flatMap(): Collection<string>;
449
+ }
450
+ interface Collection<T> {
649
451
  /**
650
452
  * @see _.flatMap
651
453
  */
652
- flatMap<T, TResult>(
653
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
654
- iteratee: ListIterator<T, Many<TResult>>
655
- ): LoDashImplicitWrapper<TResult[]>;
656
-
454
+ flatMap<TResult = any>(iteratee: ListIterator<T, Many<TResult>> | PropertyName): Collection<TResult>;
657
455
  /**
658
456
  * @see _.flatMap
659
457
  */
660
- flatMap<T extends object, TResult>(
661
- this: LoDashImplicitWrapper<T | null | undefined>,
662
- iteratee: ObjectIterator<T, Many<TResult>>
663
- ): LoDashImplicitWrapper<TResult[]>;
664
-
458
+ flatMap(iteratee: [PropertyName, any] | object): Collection<boolean>;
665
459
  /**
666
460
  * @see _.flatMap
667
461
  */
668
- flatMap(
669
- iteratee: string
670
- ): LoDashImplicitWrapper<any[]>;
671
-
462
+ flatMap(): T extends Many<infer U> ? Collection<U> : Collection<T>;
463
+ }
464
+ interface Object<T> {
465
+ /**
466
+ * @see _.flatMap
467
+ */
468
+ flatMap<TResult = any>(iteratee: ObjectIterator<T, Many<TResult>> | PropertyName): Collection<TResult>;
469
+ /**
470
+ * @see _.flatMap
471
+ */
472
+ flatMap(iteratee: [PropertyName, any] | object): Collection<boolean>;
672
473
  /**
673
474
  * @see _.flatMap
674
475
  */
675
- flatMap(
676
- iteratee: object
677
- ): LoDashImplicitWrapper<boolean[]>;
476
+ flatMap(): Collection<T[keyof T]>;
678
477
  }
679
-
680
- interface LoDashExplicitWrapper<TValue> {
478
+ interface StringChain {
681
479
  /**
682
480
  * @see _.flatMap
683
481
  */
684
- flatMap<T>(this: LoDashExplicitWrapper<List<Many<T>> | Dictionary<Many<T>> | NumericDictionary<Many<T>> | null | undefined>): LoDashExplicitWrapper<T[]>;
685
-
482
+ flatMap<TResult>(iteratee: StringIterator<Many<TResult>>): CollectionChain<TResult>;
686
483
  /**
687
484
  * @see _.flatMap
688
485
  */
689
- flatMap(): LoDashExplicitWrapper<any[]>;
690
-
486
+ flatMap(): CollectionChain<string>;
487
+ }
488
+ interface StringNullableChain {
691
489
  /**
692
490
  * @see _.flatMap
693
491
  */
694
- flatMap<T, TResult>(
695
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
696
- iteratee: ListIterator<T, Many<TResult>>
697
- ): LoDashExplicitWrapper<TResult[]>;
698
-
492
+ flatMap<TResult>(iteratee: StringIterator<Many<TResult>>): CollectionChain<TResult>;
699
493
  /**
700
494
  * @see _.flatMap
701
495
  */
702
- flatMap<T extends object, TResult>(
703
- this: LoDashExplicitWrapper<T | null | undefined>,
704
- iteratee: ObjectIterator<T, Many<TResult>>
705
- ): LoDashExplicitWrapper<TResult[]>;
706
-
496
+ flatMap(): CollectionChain<string>;
497
+ }
498
+ interface CollectionChain<T> {
707
499
  /**
708
500
  * @see _.flatMap
709
501
  */
710
- flatMap(
711
- iteratee: string
712
- ): LoDashExplicitWrapper<any[]>;
713
-
502
+ flatMap<TResult = any>(iteratee: ListIterator<T, Many<TResult>> | PropertyName): CollectionChain<TResult>;
503
+ /**
504
+ * @see _.flatMap
505
+ */
506
+ flatMap(iteratee: [PropertyName, any] | object): CollectionChain<boolean>;
714
507
  /**
715
508
  * @see _.flatMap
716
509
  */
717
- flatMap(
718
- iteratee: object
719
- ): LoDashExplicitWrapper<boolean[]>;
510
+ flatMap(): T extends Many<infer U> ? CollectionChain<U> : CollectionChain<T>;
511
+ }
512
+ interface ObjectChain<T> {
513
+ /**
514
+ * @see _.flatMap
515
+ */
516
+ flatMap<TResult = any>(iteratee: ObjectIterator<T, Many<TResult>> | PropertyName): CollectionChain<TResult>;
517
+ /**
518
+ * @see _.flatMap
519
+ */
520
+ flatMap(iteratee: [PropertyName, any] | object): CollectionChain<boolean>;
521
+ /**
522
+ * @see _.flatMap
523
+ */
524
+ flatMap(): CollectionChain<T[keyof T]>;
720
525
  }
721
-
722
- // flatMapDeep
723
-
724
526
  interface LoDashStatic {
725
527
  /**
726
528
  * This method is like `_.flatMap` except that it recursively flattens the
@@ -740,127 +542,110 @@ declare module "../index" {
740
542
  * _.flatMapDeep([1, 2], duplicate);
741
543
  * // => [1, 1, 2, 2]
742
544
  */
743
- flatMapDeep<T>(
744
- collection: List<ListOfRecursiveArraysOrValues<T> | T> | Dictionary<ListOfRecursiveArraysOrValues<T> | T> | NumericDictionary<ListOfRecursiveArraysOrValues<T> | T> | null | undefined
745
- ): T[];
746
-
545
+ flatMapDeep<T>(collection: Dictionary<ListOfRecursiveArraysOrValues<T> | T> | NumericDictionary<ListOfRecursiveArraysOrValues<T> | T> | null | undefined): T[];
747
546
  /**
748
547
  * @see _.flatMapDeep
749
548
  */
750
- flatMapDeep<T, TResult>(
751
- collection: List<T> | null | undefined,
752
- iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>
753
- ): TResult[];
754
-
549
+ flatMapDeep<T, TResult>(collection: List<T> | null | undefined, iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>): TResult[];
755
550
  /**
756
551
  * @see _.flatMapDeep
757
552
  */
758
- flatMapDeep<T extends object, TResult>(
759
- collection: T | null | undefined,
760
- iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>
761
- ): TResult[];
762
-
553
+ flatMapDeep<T extends object, TResult>(collection: T | null | undefined, iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>): TResult[];
763
554
  /**
764
555
  * @see _.flatMapDeep
765
556
  */
766
- flatMapDeep(
767
- collection: object | null | undefined,
768
- iteratee: string
769
- ): any[];
770
-
557
+ flatMapDeep(collection: object | null | undefined, iteratee: string): any[];
771
558
  /**
772
559
  * @see _.flatMapDeep
773
560
  */
774
- flatMapDeep(
775
- collection: object | null | undefined,
776
- iteratee: object
777
- ): boolean[];
561
+ flatMapDeep(collection: object | null | undefined, iteratee: object): boolean[];
778
562
  }
779
-
780
- interface LoDashImplicitWrapper<TValue> {
563
+ interface String {
781
564
  /**
782
565
  * @see _.flatMapDeep
783
566
  */
784
- flatMapDeep<T>(
785
- this: LoDashImplicitWrapper<List<ListOfRecursiveArraysOrValues<T> | T> | Dictionary<ListOfRecursiveArraysOrValues<T> | T> | NumericDictionary<ListOfRecursiveArraysOrValues<T> | T> | null | undefined>
786
- ): LoDashImplicitWrapper<T[]>;
787
-
567
+ flatMapDeep<TResult>(iteratee: StringIterator<ListOfRecursiveArraysOrValues<TResult> | TResult>): Collection<TResult>;
788
568
  /**
789
569
  * @see _.flatMapDeep
790
570
  */
791
- flatMapDeep<T, TResult>(
792
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
793
- iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>
794
- ): LoDashImplicitWrapper<TResult[]>;
795
-
571
+ flatMapDeep(): Collection<string>;
572
+ }
573
+ interface Collection<T> {
796
574
  /**
797
575
  * @see _.flatMapDeep
798
576
  */
799
- flatMapDeep<T extends object, TResult>(
800
- this: LoDashImplicitWrapper<T | null | undefined>,
801
- iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>
802
- ): LoDashImplicitWrapper<TResult[]>;
803
-
577
+ flatMapDeep<TResult = any>(iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult> | PropertyName): Collection<TResult>;
804
578
  /**
805
579
  * @see _.flatMapDeep
806
580
  */
807
- flatMapDeep(
808
- this: LoDashImplicitWrapper<object | null | undefined>,
809
- iteratee: string
810
- ): LoDashImplicitWrapper<any[]>;
811
-
581
+ flatMapDeep(iteratee: [PropertyName, any] | object): Collection<boolean>;
812
582
  /**
813
583
  * @see _.flatMapDeep
814
584
  */
815
- flatMapDeep(
816
- this: LoDashImplicitWrapper<object | null | undefined>,
817
- iteratee: object
818
- ): LoDashImplicitWrapper<boolean[]>;
585
+ flatMapDeep(): Collection<T>;
819
586
  }
820
-
821
- interface LoDashExplicitWrapper<TValue> {
587
+ interface Object<T> {
822
588
  /**
823
589
  * @see _.flatMapDeep
824
590
  */
825
- flatMapDeep<T>(
826
- this: LoDashExplicitWrapper<List<ListOfRecursiveArraysOrValues<T> | T> | Dictionary<ListOfRecursiveArraysOrValues<T> | T> | NumericDictionary<ListOfRecursiveArraysOrValues<T> | T> | null | undefined>
827
- ): LoDashExplicitWrapper<T[]>;
828
-
591
+ flatMapDeep<TResult = any>(iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult> | PropertyName): Collection<TResult>;
829
592
  /**
830
593
  * @see _.flatMapDeep
831
594
  */
832
- flatMapDeep<T, TResult>(
833
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
834
- iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>
835
- ): LoDashExplicitWrapper<TResult[]>;
836
-
595
+ flatMapDeep(iteratee: [PropertyName, any] | object): Collection<boolean>;
837
596
  /**
838
597
  * @see _.flatMapDeep
839
598
  */
840
- flatMapDeep<T extends object, TResult>(
841
- this: LoDashExplicitWrapper<T | null | undefined>,
842
- iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>
843
- ): LoDashExplicitWrapper<TResult[]>;
844
-
599
+ flatMapDeep(): Collection<T[keyof T]>;
600
+ }
601
+ interface StringChain {
845
602
  /**
846
603
  * @see _.flatMapDeep
847
604
  */
848
- flatMapDeep(
849
- this: LoDashExplicitWrapper<object | null | undefined>,
850
- iteratee: string
851
- ): LoDashExplicitWrapper<any[]>;
852
-
605
+ flatMapDeep<TResult>(iteratee: StringIterator<ListOfRecursiveArraysOrValues<TResult> | TResult>): CollectionChain<TResult>;
853
606
  /**
854
607
  * @see _.flatMapDeep
855
608
  */
856
- flatMapDeep(
857
- this: LoDashExplicitWrapper<object | null | undefined>,
858
- iteratee: object
859
- ): LoDashExplicitWrapper<boolean[]>;
609
+ flatMapDeep(): CollectionChain<string>;
610
+ }
611
+ interface StringNullableChain {
612
+ /**
613
+ * @see _.flatMapDeep
614
+ */
615
+ flatMapDeep<TResult>(iteratee: StringIterator<ListOfRecursiveArraysOrValues<TResult> | TResult>): CollectionChain<TResult>;
616
+ /**
617
+ * @see _.flatMapDeep
618
+ */
619
+ flatMapDeep(): CollectionChain<string>;
620
+ }
621
+ interface CollectionChain<T> {
622
+ /**
623
+ * @see _.flatMapDeep
624
+ */
625
+ flatMapDeep<TResult = any>(iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult> | PropertyName): CollectionChain<TResult>;
626
+ /**
627
+ * @see _.flatMapDeep
628
+ */
629
+ flatMapDeep(iteratee: [PropertyName, any] | object): CollectionChain<boolean>;
630
+ /**
631
+ * @see _.flatMapDeep
632
+ */
633
+ flatMapDeep(): CollectionChain<T>;
634
+ }
635
+ interface ObjectChain<T> {
636
+ /**
637
+ * @see _.flatMapDeep
638
+ */
639
+ flatMapDeep<TResult = any>(iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult> | PropertyName): CollectionChain<TResult>;
640
+ /**
641
+ * @see _.flatMapDeep
642
+ */
643
+ flatMapDeep(iteratee: [PropertyName, any] | object): CollectionChain<boolean>;
644
+ /**
645
+ * @see _.flatMapDeep
646
+ */
647
+ flatMapDeep(): CollectionChain<T[keyof T]>;
860
648
  }
861
-
862
- // flatMapDepth
863
-
864
649
  interface LoDashStatic {
865
650
  /**
866
651
  * This method is like `_.flatMap` except that it recursively flattens the
@@ -881,139 +666,110 @@ declare module "../index" {
881
666
  * _.flatMapDepth([1, 2], duplicate, 2);
882
667
  * // => [[1, 1], [2, 2]]
883
668
  */
884
- flatMapDepth<T>(
885
- collection: List<ListOfRecursiveArraysOrValues<T> | T> | Dictionary<ListOfRecursiveArraysOrValues<T> | T> | NumericDictionary<ListOfRecursiveArraysOrValues<T> | T> | null | undefined
886
- ): T[];
887
-
669
+ flatMapDepth<T>(collection: Dictionary<ListOfRecursiveArraysOrValues<T> | T> | NumericDictionary<ListOfRecursiveArraysOrValues<T> | T> | null | undefined): T[];
888
670
  /**
889
671
  * @see _.flatMapDepth
890
672
  */
891
- flatMapDepth<T, TResult>(
892
- collection: List<T> | null | undefined,
893
- iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>,
894
- depth?: number
895
- ): TResult[];
896
-
673
+ flatMapDepth<T, TResult>(collection: List<T> | null | undefined, iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>, depth?: number): TResult[];
897
674
  /**
898
675
  * @see _.flatMapDepth
899
676
  */
900
- flatMapDepth<T extends object, TResult>(
901
- collection: T | null | undefined,
902
- iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>,
903
- depth?: number
904
- ): TResult[];
905
-
677
+ flatMapDepth<T extends object, TResult>(collection: T | null | undefined, iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>, depth?: number): TResult[];
906
678
  /**
907
679
  * @see _.flatMapDepth
908
680
  */
909
- flatMapDepth(
910
- collection: object | null | undefined,
911
- iteratee: string,
912
- depth?: number
913
- ): any[];
914
-
681
+ flatMapDepth(collection: object | null | undefined, iteratee: string, depth?: number): any[];
915
682
  /**
916
683
  * @see _.flatMapDepth
917
684
  */
918
- flatMapDepth(
919
- collection: object | null | undefined,
920
- iteratee: object,
921
- depth?: number
922
- ): boolean[];
685
+ flatMapDepth(collection: object | null | undefined, iteratee: object, depth?: number): boolean[];
923
686
  }
924
-
925
- interface LoDashImplicitWrapper<TValue> {
687
+ interface String {
926
688
  /**
927
689
  * @see _.flatMapDepth
928
690
  */
929
- flatMapDepth<T>(
930
- this: LoDashImplicitWrapper<List<ListOfRecursiveArraysOrValues<T> | T> | Dictionary<ListOfRecursiveArraysOrValues<T> | T> | NumericDictionary<ListOfRecursiveArraysOrValues<T> | T> | null | undefined>
931
- ): LoDashImplicitWrapper<T[]>;
932
-
691
+ flatMapDepth<TResult>(iteratee: StringIterator<ListOfRecursiveArraysOrValues<TResult> | TResult>, depth?: number): Collection<TResult>;
933
692
  /**
934
693
  * @see _.flatMapDepth
935
694
  */
936
- flatMapDepth<T, TResult>(
937
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
938
- iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>,
939
- depth?: number
940
- ): LoDashImplicitWrapper<TResult[]>;
941
-
695
+ flatMapDepth(depth?: number): Collection<string>;
696
+ }
697
+ interface Collection<T> {
942
698
  /**
943
699
  * @see _.flatMapDepth
944
700
  */
945
- flatMapDepth<T extends object, TResult>(
946
- this: LoDashImplicitWrapper<T | null | undefined>,
947
- iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>,
948
- depth?: number
949
- ): LoDashImplicitWrapper<TResult[]>;
950
-
701
+ flatMapDepth<TResult = any>(iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult> | PropertyName, depth?: number): Collection<TResult>;
951
702
  /**
952
703
  * @see _.flatMapDepth
953
704
  */
954
- flatMapDepth(
955
- this: LoDashImplicitWrapper<object | null | undefined>,
956
- iteratee: string,
957
- depth?: number
958
- ): LoDashImplicitWrapper<any[]>;
959
-
705
+ flatMapDepth(iteratee: [PropertyName, any] | object, depth?: number): Collection<boolean>;
960
706
  /**
961
707
  * @see _.flatMapDepth
962
708
  */
963
- flatMapDepth(
964
- this: LoDashImplicitWrapper<object | null | undefined>,
965
- iteratee: object,
966
- depth?: number
967
- ): LoDashImplicitWrapper<boolean[]>;
709
+ flatMapDepth(depth?: number): Collection<T>;
968
710
  }
969
-
970
- interface LoDashExplicitWrapper<TValue> {
711
+ interface Object<T> {
971
712
  /**
972
713
  * @see _.flatMapDepth
973
714
  */
974
- flatMapDepth<T>(
975
- this: LoDashExplicitWrapper<List<ListOfRecursiveArraysOrValues<T> | T> | Dictionary<ListOfRecursiveArraysOrValues<T> | T> | NumericDictionary<ListOfRecursiveArraysOrValues<T> | T> | null | undefined>
976
- ): LoDashExplicitWrapper<T[]>;
977
-
715
+ flatMapDepth<TResult = any>(iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult> | PropertyName, depth?: number): Collection<TResult>;
978
716
  /**
979
717
  * @see _.flatMapDepth
980
718
  */
981
- flatMapDepth<T, TResult>(
982
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
983
- iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>,
984
- depth?: number
985
- ): LoDashExplicitWrapper<TResult[]>;
986
-
719
+ flatMapDepth(iteratee: [PropertyName, any] | object, depth?: number): Collection<boolean>;
987
720
  /**
988
721
  * @see _.flatMapDepth
989
722
  */
990
- flatMapDepth<T extends object, TResult>(
991
- this: LoDashExplicitWrapper<T | null | undefined>,
992
- iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult>,
993
- depth?: number
994
- ): LoDashExplicitWrapper<TResult[]>;
995
-
723
+ flatMapDepth(depth?: number): Collection<T[keyof T]>;
724
+ }
725
+ interface StringChain {
996
726
  /**
997
727
  * @see _.flatMapDepth
998
728
  */
999
- flatMapDepth(
1000
- this: LoDashExplicitWrapper<object | null | undefined>,
1001
- iteratee: string,
1002
- depth?: number
1003
- ): LoDashExplicitWrapper<any[]>;
1004
-
729
+ flatMapDepth<TResult>(iteratee: StringIterator<ListOfRecursiveArraysOrValues<TResult> | TResult>, depth?: number): CollectionChain<TResult>;
1005
730
  /**
1006
731
  * @see _.flatMapDepth
1007
732
  */
1008
- flatMapDepth(
1009
- this: LoDashExplicitWrapper<object | null | undefined>,
1010
- iteratee: object,
1011
- depth?: number
1012
- ): LoDashExplicitWrapper<boolean[]>;
733
+ flatMapDepth(depth?: number): CollectionChain<string>;
734
+ }
735
+ interface StringNullableChain {
736
+ /**
737
+ * @see _.flatMapDepth
738
+ */
739
+ flatMapDepth<TResult>(iteratee: StringIterator<ListOfRecursiveArraysOrValues<TResult> | TResult>, depth?: number): CollectionChain<TResult>;
740
+ /**
741
+ * @see _.flatMapDepth
742
+ */
743
+ flatMapDepth(depth?: number): CollectionChain<string>;
744
+ }
745
+ interface CollectionChain<T> {
746
+ /**
747
+ * @see _.flatMapDepth
748
+ */
749
+ flatMapDepth<TResult = any>(iteratee: ListIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult> | PropertyName, depth?: number): CollectionChain<TResult>;
750
+ /**
751
+ * @see _.flatMapDepth
752
+ */
753
+ flatMapDepth(iteratee: [PropertyName, any] | object, depth?: number): CollectionChain<boolean>;
754
+ /**
755
+ * @see _.flatMapDepth
756
+ */
757
+ flatMapDepth(depth?: number): CollectionChain<T>;
758
+ }
759
+ interface ObjectChain<T> {
760
+ /**
761
+ * @see _.flatMapDepth
762
+ */
763
+ flatMapDepth<TResult = any>(iteratee: ObjectIterator<T, ListOfRecursiveArraysOrValues<TResult> | TResult> | PropertyName, depth?: number): CollectionChain<TResult>;
764
+ /**
765
+ * @see _.flatMapDepth
766
+ */
767
+ flatMapDepth(iteratee: [PropertyName, any] | object, depth?: number): CollectionChain<boolean>;
768
+ /**
769
+ * @see _.flatMapDepth
770
+ */
771
+ flatMapDepth(depth?: number): CollectionChain<T[keyof T]>;
1013
772
  }
1014
-
1015
- // forEach
1016
-
1017
773
  interface LoDashStatic {
1018
774
  /**
1019
775
  * Iterates over elements of collection invoking iteratee for each element. The iteratee is invoked with three arguments:
@@ -1027,104 +783,78 @@ declare module "../index" {
1027
783
  * @param collection The collection to iterate over.
1028
784
  * @param iteratee The function invoked per iteration.
1029
785
  */
1030
- forEach<T>(
1031
- collection: T[],
1032
- iteratee?: ArrayIterator<T, any>
1033
- ): T[];
1034
-
786
+ forEach<T>(collection: T[], iteratee?: ArrayIterator<T, any>): T[];
1035
787
  /**
1036
788
  * @see _.forEach
1037
789
  */
1038
- forEach(
1039
- collection: string,
1040
- iteratee?: StringIterator<any>
1041
- ): string;
1042
-
790
+ forEach(collection: string, iteratee?: StringIterator<any>): string;
1043
791
  /**
1044
792
  * @see _.forEach
1045
793
  */
1046
- forEach<T>(
1047
- collection: List<T>,
1048
- iteratee?: ListIterator<T, any>
1049
- ): List<T>;
1050
-
794
+ forEach<T>(collection: List<T>, iteratee?: ListIterator<T, any>): List<T>;
1051
795
  /**
1052
796
  * @see _.forEach
1053
797
  */
1054
- forEach<T extends object>(
1055
- collection: T,
1056
- iteratee?: ObjectIterator<T, any>
1057
- ): T;
1058
-
798
+ forEach<T extends object>(collection: T, iteratee?: ObjectIterator<T, any>): T;
1059
799
  /**
1060
800
  * @see _.forEach
1061
801
  */
1062
- forEach<T, TArray extends T[] | null | undefined>(
1063
- collection: TArray & (T[] | null | undefined),
1064
- iteratee?: ArrayIterator<T, any>
1065
- ): TArray;
1066
-
802
+ forEach<T, TArray extends T[] | null | undefined>(collection: TArray & (T[] | null | undefined), iteratee?: ArrayIterator<T, any>): TArray;
1067
803
  /**
1068
804
  * @see _.forEach
1069
805
  */
1070
- forEach<TString extends string | null | undefined>(
1071
- collection: TString,
1072
- iteratee?: StringIterator<any>
1073
- ): TString;
1074
-
806
+ forEach<TString extends string | null | undefined>(collection: TString, iteratee?: StringIterator<any>): TString;
1075
807
  /**
1076
808
  * @see _.forEach
1077
809
  */
1078
- forEach<T, TList extends List<T> | null | undefined>(
1079
- collection: TList & (List<T> | null | undefined),
1080
- iteratee?: ListIterator<T, any>
1081
- ): TList;
1082
-
810
+ forEach<T, TList extends List<T> | null | undefined>(collection: TList & (List<T> | null | undefined), iteratee?: ListIterator<T, any>): TList;
1083
811
  /**
1084
812
  * @see _.forEach
1085
813
  */
1086
- forEach<T extends object>(
1087
- collection: T | null | undefined,
1088
- iteratee?: ObjectIterator<T, any>
1089
- ): T | null | undefined;
814
+ forEach<T extends object>(collection: T | null | undefined, iteratee?: ObjectIterator<T, any>): T | null | undefined;
1090
815
  }
1091
-
1092
- interface LoDashWrapper<TValue> {
816
+ interface String {
1093
817
  /**
1094
818
  * @see _.forEach
1095
819
  */
1096
- forEach<T>(
1097
- this: LoDashWrapper<T[] | null | undefined>,
1098
- iteratee?: ArrayIterator<T, any>
1099
- ): this;
1100
-
820
+ forEach(iteratee?: StringIterator<any>): String;
821
+ }
822
+ interface Object<T> {
1101
823
  /**
1102
824
  * @see _.forEach
1103
825
  */
1104
- forEach(
1105
- this: LoDashWrapper<string | null | undefined>,
1106
- iteratee?: StringIterator<any>
1107
- ): this;
1108
-
826
+ forEach(iteratee?: ObjectIterator<T, any>): Object<T>;
827
+ }
828
+ interface Collection<T> {
1109
829
  /**
1110
830
  * @see _.forEach
1111
831
  */
1112
- forEach<T>(
1113
- this: LoDashWrapper<List<T> | null | undefined>,
1114
- iteratee?: ListIterator<T, any>
1115
- ): this;
1116
-
832
+ forEach(iteratee?: ListIterator<T, any>): Collection<T>;
833
+ }
834
+ interface StringChain {
1117
835
  /**
1118
836
  * @see _.forEach
1119
837
  */
1120
- forEach<T extends object>(
1121
- this: LoDashWrapper<T | null | undefined>,
1122
- iteratee?: ObjectIterator<T, any>
1123
- ): this;
838
+ forEach(iteratee?: StringIterator<any>): StringChain;
839
+ }
840
+ interface StringNullableChain {
841
+ /**
842
+ * @see _.forEach
843
+ */
844
+ forEach(iteratee?: StringIterator<any>): StringNullableChain;
845
+ }
846
+ interface ObjectChain<T> {
847
+ /**
848
+ * @see _.forEach
849
+ */
850
+ forEach(iteratee?: ObjectIterator<T, any>): ObjectChain<T>;
851
+ }
852
+ interface CollectionChain<T> {
853
+ /**
854
+ * @see _.forEach
855
+ */
856
+ forEach(iteratee?: ListIterator<T, any>): CollectionChain<T>;
1124
857
  }
1125
-
1126
- // forEachRight
1127
-
1128
858
  interface LoDashStatic {
1129
859
  /**
1130
860
  * This method is like _.forEach except that it iterates over elements of collection from right to left.
@@ -1134,104 +864,78 @@ declare module "../index" {
1134
864
  * @param collection The collection to iterate over.
1135
865
  * @param iteratee The function called per iteration.
1136
866
  */
1137
- forEachRight<T>(
1138
- collection: T[],
1139
- iteratee?: ArrayIterator<T, any>
1140
- ): T[];
1141
-
867
+ forEachRight<T>(collection: T[], iteratee?: ArrayIterator<T, any>): T[];
1142
868
  /**
1143
869
  * @see _.forEachRight
1144
870
  */
1145
- forEachRight(
1146
- collection: string,
1147
- iteratee?: StringIterator<any>
1148
- ): string;
1149
-
871
+ forEachRight(collection: string, iteratee?: StringIterator<any>): string;
1150
872
  /**
1151
873
  * @see _.forEachRight
1152
874
  */
1153
- forEachRight<T>(
1154
- collection: List<T>,
1155
- iteratee?: ListIterator<T, any>
1156
- ): List<T>;
1157
-
875
+ forEachRight<T>(collection: List<T>, iteratee?: ListIterator<T, any>): List<T>;
1158
876
  /**
1159
877
  * @see _.forEachRight
1160
878
  */
1161
- forEachRight<T extends object>(
1162
- collection: T,
1163
- iteratee?: ObjectIterator<T, any>
1164
- ): T;
1165
-
879
+ forEachRight<T extends object>(collection: T, iteratee?: ObjectIterator<T, any>): T;
1166
880
  /**
1167
881
  * @see _.forEachRight
1168
882
  */
1169
- forEachRight<T, TArray extends T[] | null | undefined>(
1170
- collection: TArray & (T[] | null | undefined),
1171
- iteratee?: ArrayIterator<T, any>
1172
- ): TArray;
1173
-
883
+ forEachRight<T, TArray extends T[] | null | undefined>(collection: TArray & (T[] | null | undefined), iteratee?: ArrayIterator<T, any>): TArray;
1174
884
  /**
1175
885
  * @see _.forEachRight
1176
886
  */
1177
- forEachRight<TString extends string | null | undefined>(
1178
- collection: TString,
1179
- iteratee?: StringIterator<any>
1180
- ): TString;
1181
-
887
+ forEachRight<TString extends string | null | undefined>(collection: TString, iteratee?: StringIterator<any>): TString;
1182
888
  /**
1183
889
  * @see _.forEachRight
1184
890
  */
1185
- forEachRight<T, TList extends List<T> | null | undefined>(
1186
- collection: TList & (List<T> | null | undefined),
1187
- iteratee?: ListIterator<T, any>
1188
- ): TList;
1189
-
891
+ forEachRight<T, TList extends List<T> | null | undefined>(collection: TList & (List<T> | null | undefined), iteratee?: ListIterator<T, any>): TList;
1190
892
  /**
1191
893
  * @see _.forEachRight
1192
894
  */
1193
- forEachRight<T extends object>(
1194
- collection: T | null | undefined,
1195
- iteratee?: ObjectIterator<T, any>
1196
- ): T | null | undefined;
895
+ forEachRight<T extends object>(collection: T | null | undefined, iteratee?: ObjectIterator<T, any>): T | null | undefined;
1197
896
  }
1198
-
1199
- interface LoDashWrapper<TValue> {
897
+ interface String {
1200
898
  /**
1201
899
  * @see _.forEachRight
1202
900
  */
1203
- forEachRight<T>(
1204
- this: LoDashWrapper<T[] | null | undefined>,
1205
- iteratee?: ArrayIterator<T, any>
1206
- ): this;
1207
-
901
+ forEachRight(iteratee?: StringIterator<any>): String;
902
+ }
903
+ interface Object<T> {
1208
904
  /**
1209
905
  * @see _.forEachRight
1210
906
  */
1211
- forEachRight(
1212
- this: LoDashWrapper<string | null | undefined>,
1213
- iteratee?: StringIterator<any>
1214
- ): this;
1215
-
907
+ forEachRight(iteratee?: ObjectIterator<T, any>): Object<T>;
908
+ }
909
+ interface Collection<T> {
1216
910
  /**
1217
911
  * @see _.forEachRight
1218
912
  */
1219
- forEachRight<T>(
1220
- this: LoDashWrapper<List<T> | null | undefined>,
1221
- iteratee?: ListIterator<T, any>
1222
- ): this;
1223
-
913
+ forEachRight(iteratee?: ListIterator<T, any>): Collection<T>;
914
+ }
915
+ interface StringChain {
1224
916
  /**
1225
917
  * @see _.forEachRight
1226
918
  */
1227
- forEachRight<T extends object>(
1228
- this: LoDashWrapper<T | null | undefined>,
1229
- iteratee?: ObjectIterator<T, any>
1230
- ): this;
919
+ forEachRight(iteratee?: StringIterator<any>): StringChain;
920
+ }
921
+ interface StringNullableChain {
922
+ /**
923
+ * @see _.forEachRight
924
+ */
925
+ forEachRight(iteratee?: StringIterator<any>): StringNullableChain;
926
+ }
927
+ interface ObjectChain<T> {
928
+ /**
929
+ * @see _.forEachRight
930
+ */
931
+ forEachRight(iteratee?: ObjectIterator<T, any>): ObjectChain<T>;
932
+ }
933
+ interface CollectionChain<T> {
934
+ /**
935
+ * @see _.forEachRight
936
+ */
937
+ forEachRight(iteratee?: ListIterator<T, any>): CollectionChain<T>;
1231
938
  }
1232
-
1233
- // groupBy
1234
-
1235
939
  interface LoDashStatic {
1236
940
  /**
1237
941
  * Creates an object composed of keys generated from the results of running each element of collection through
@@ -1242,58 +946,54 @@ declare module "../index" {
1242
946
  * @param iteratee The function invoked per iteration.
1243
947
  * @return Returns the composed aggregate object.
1244
948
  */
1245
- groupBy<T>(
1246
- collection: List<T> | null | undefined,
1247
- iteratee?: ValueIteratee<T>
1248
- ): Dictionary<T[]>;
1249
-
949
+ groupBy<T>(collection: List<T> | null | undefined, iteratee?: ValueIteratee<T>): Dictionary<T[]>;
1250
950
  /**
1251
951
  * @see _.groupBy
1252
952
  */
1253
- groupBy<T extends object>(
1254
- collection: T | null | undefined,
1255
- iteratee?: ValueIteratee<T[keyof T]>
1256
- ): Dictionary<Array<T[keyof T]>>;
953
+ groupBy<T extends object>(collection: T | null | undefined, iteratee?: ValueIteratee<T[keyof T]>): Dictionary<Array<T[keyof T]>>;
1257
954
  }
1258
-
1259
- interface LoDashImplicitWrapper<TValue> {
955
+ interface String {
1260
956
  /**
1261
957
  * @see _.groupBy
1262
958
  */
1263
- groupBy<T>(
1264
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1265
- iteratee?: ValueIteratee<T>
1266
- ): LoDashImplicitWrapper<Dictionary<T[]>>;
1267
-
959
+ groupBy(iteratee?: ValueIteratee<string>): Object<Dictionary<string[]>>;
960
+ }
961
+ interface Collection<T> {
1268
962
  /**
1269
963
  * @see _.groupBy
1270
964
  */
1271
- groupBy<T extends object>(
1272
- this: LoDashImplicitWrapper<T | null | undefined>,
1273
- iteratee?: ValueIteratee<T[keyof T]>
1274
- ): LoDashImplicitWrapper<Dictionary<Array<T[keyof T]>>>;
965
+ groupBy(iteratee?: ValueIteratee<T>): Object<Dictionary<T[]>>;
1275
966
  }
1276
-
1277
- interface LoDashExplicitWrapper<TValue> {
967
+ interface Object<T> {
1278
968
  /**
1279
969
  * @see _.groupBy
1280
970
  */
1281
- groupBy<T>(
1282
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1283
- iteratee?: ValueIteratee<T>
1284
- ): LoDashExplicitWrapper<Dictionary<T[]>>;
1285
-
971
+ groupBy(iteratee?: ValueIteratee<T[keyof T]>): Object<Dictionary<Array<T[keyof T]>>>;
972
+ }
973
+ interface StringChain {
1286
974
  /**
1287
975
  * @see _.groupBy
1288
976
  */
1289
- groupBy<T extends object>(
1290
- this: LoDashExplicitWrapper<T | null | undefined>,
1291
- iteratee?: ValueIteratee<T[keyof T]>
1292
- ): LoDashExplicitWrapper<Dictionary<Array<T[keyof T]>>>;
977
+ groupBy(iteratee?: ValueIteratee<string>): ObjectChain<Dictionary<string[]>>;
978
+ }
979
+ interface StringNullableChain {
980
+ /**
981
+ * @see _.groupBy
982
+ */
983
+ groupBy(iteratee?: ValueIteratee<string>): ObjectChain<Dictionary<string>>;
984
+ }
985
+ interface CollectionChain<T> {
986
+ /**
987
+ * @see _.groupBy
988
+ */
989
+ groupBy(iteratee?: ValueIteratee<T>): ObjectChain<Dictionary<T[]>>;
990
+ }
991
+ interface ObjectChain<T> {
992
+ /**
993
+ * @see _.groupBy
994
+ */
995
+ groupBy(iteratee?: ValueIteratee<T[keyof T]>): ObjectChain<Dictionary<Array<T[keyof T]>>>;
1293
996
  }
1294
-
1295
- // includes
1296
-
1297
997
  interface LoDashStatic {
1298
998
  /**
1299
999
  * Checks if target is in collection using SameValueZero for equality comparisons. If fromIndex is negative,
@@ -1304,37 +1004,44 @@ declare module "../index" {
1304
1004
  * @param fromIndex The index to search from.
1305
1005
  * @return True if the target element is found, else false.
1306
1006
  */
1307
- includes<T>(
1308
- collection: List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined,
1309
- target: T,
1310
- fromIndex?: number
1311
- ): boolean;
1007
+ includes<T>(collection: Dictionary<T> | NumericDictionary<T> | null | undefined, target: T, fromIndex?: number): boolean;
1312
1008
  }
1313
-
1314
- interface LoDashImplicitWrapper<TValue> {
1009
+ interface Object<T> {
1315
1010
  /**
1316
1011
  * @see _.includes
1317
1012
  */
1318
- includes<T>(
1319
- this: LoDashImplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
1320
- target: T,
1321
- fromIndex?: number
1322
- ): boolean;
1013
+ includes(target: T[keyof T], fromIndex?: number): boolean;
1323
1014
  }
1324
-
1325
- interface LoDashExplicitWrapper<TValue> {
1015
+ interface Collection<T> {
1326
1016
  /**
1327
1017
  * @see _.includes
1328
1018
  */
1329
- includes<T>(
1330
- this: LoDashExplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
1331
- target: T,
1332
- fromIndex?: number
1333
- ): LoDashExplicitWrapper<boolean>;
1019
+ includes(target: T, fromIndex?: number): boolean;
1020
+ }
1021
+ interface String {
1022
+ /**
1023
+ * @see _.includes
1024
+ */
1025
+ includes(target: string, fromIndex?: number): boolean;
1026
+ }
1027
+ interface ObjectChain<T> {
1028
+ /**
1029
+ * @see _.includes
1030
+ */
1031
+ includes(target: T[keyof T], fromIndex?: number): PrimitiveChain<boolean>;
1032
+ }
1033
+ interface CollectionChain<T> {
1034
+ /**
1035
+ * @see _.includes
1036
+ */
1037
+ includes(target: T, fromIndex?: number): PrimitiveChain<boolean>;
1038
+ }
1039
+ interface StringChain {
1040
+ /**
1041
+ * @see _.includes
1042
+ */
1043
+ includes(target: string, fromIndex?: number): PrimitiveChain<boolean>;
1334
1044
  }
1335
-
1336
- // invokeMap
1337
-
1338
1045
  interface LoDashStatic {
1339
1046
  /**
1340
1047
  * Invokes the method named by methodName on each element in the collection returning
@@ -1344,55 +1051,33 @@ declare module "../index" {
1344
1051
  * @param collection The collection to iterate over.
1345
1052
  * @param methodName The name of the method to invoke.
1346
1053
  * @param args Arguments to invoke the method with.
1347
- **/
1348
- invokeMap(
1349
- collection: object | null | undefined,
1350
- methodName: string,
1351
- ...args: any[]): any[];
1352
-
1054
+ */
1055
+ invokeMap(collection: object | null | undefined, methodName: string, ...args: any[]): any[];
1353
1056
  /**
1354
- * @see _.invokeMap
1355
- **/
1356
- invokeMap<TResult>(
1357
- collection: object | null | undefined,
1358
- method: (...args: any[]) => TResult,
1359
- ...args: any[]): TResult[];
1057
+ * @see _.invokeMap
1058
+ */
1059
+ invokeMap<TResult>(collection: object | null | undefined, method: (...args: any[]) => TResult, ...args: any[]): TResult[];
1360
1060
  }
1361
-
1362
1061
  interface LoDashImplicitWrapper<TValue> {
1363
1062
  /**
1364
- * @see _.invokeMap
1365
- **/
1366
- invokeMap(
1367
- methodName: string,
1368
- ...args: any[]): LoDashImplicitWrapper<any[]>;
1369
-
1063
+ * @see _.invokeMap
1064
+ */
1065
+ invokeMap(methodName: string, ...args: any[]): Collection<any>;
1370
1066
  /**
1371
- * @see _.invokeMap
1372
- **/
1373
- invokeMap<TResult>(
1374
- method: (...args: any[]) => TResult,
1375
- ...args: any[]): LoDashImplicitWrapper<TResult[]>;
1067
+ * @see _.invokeMap
1068
+ */
1069
+ invokeMap<TResult>(method: (...args: any[]) => TResult, ...args: any[]): Collection<TResult>;
1376
1070
  }
1377
-
1378
1071
  interface LoDashExplicitWrapper<TValue> {
1379
1072
  /**
1380
- * @see _.invokeMap
1381
- **/
1382
- invokeMap(
1383
- methodName: string,
1384
- ...args: any[]): LoDashExplicitWrapper<any[]>;
1385
-
1073
+ * @see _.invokeMap
1074
+ */
1075
+ invokeMap(methodName: string, ...args: any[]): CollectionChain<any>;
1386
1076
  /**
1387
- * @see _.invokeMap
1388
- **/
1389
- invokeMap<TResult>(
1390
- method: (...args: any[]) => TResult,
1391
- ...args: any[]): LoDashExplicitWrapper<TResult[]>;
1077
+ * @see _.invokeMap
1078
+ */
1079
+ invokeMap<TResult>(method: (...args: any[]) => TResult, ...args: any[]): CollectionChain<TResult>;
1392
1080
  }
1393
-
1394
- // keyBy
1395
-
1396
1081
  interface LoDashStatic {
1397
1082
  /**
1398
1083
  * Creates an object composed of keys generated from the results of running each element of collection through
@@ -1403,58 +1088,54 @@ declare module "../index" {
1403
1088
  * @param iteratee The function invoked per iteration.
1404
1089
  * @return Returns the composed aggregate object.
1405
1090
  */
1406
- keyBy<T>(
1407
- collection: List<T> | null | undefined,
1408
- iteratee?: ValueIterateeCustom<T, PropertyName>
1409
- ): Dictionary<T>;
1410
-
1091
+ keyBy<T>(collection: List<T> | null | undefined, iteratee?: ValueIterateeCustom<T, PropertyName>): Dictionary<T>;
1411
1092
  /**
1412
1093
  * @see _.keyBy
1413
1094
  */
1414
- keyBy<T extends object>(
1415
- collection: T | null | undefined,
1416
- iteratee?: ValueIterateeCustom<T[keyof T], PropertyName>
1417
- ): Dictionary<T[keyof T]>;
1095
+ keyBy<T extends object>(collection: T | null | undefined, iteratee?: ValueIterateeCustom<T[keyof T], PropertyName>): Dictionary<T[keyof T]>;
1418
1096
  }
1419
-
1420
- interface LoDashImplicitWrapper<TValue> {
1097
+ interface String {
1421
1098
  /**
1422
1099
  * @see _.keyBy
1423
1100
  */
1424
- keyBy<T>(
1425
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1426
- iteratee?: ValueIterateeCustom<T, PropertyName>
1427
- ): LoDashImplicitWrapper<Dictionary<T>>;
1428
-
1101
+ keyBy(iteratee?: ValueIterateeCustom<string, PropertyName>): Object<Dictionary<string>>;
1102
+ }
1103
+ interface Collection<T> {
1429
1104
  /**
1430
1105
  * @see _.keyBy
1431
1106
  */
1432
- keyBy<T extends object>(
1433
- this: LoDashImplicitWrapper<T | null | undefined>,
1434
- iteratee?: ValueIterateeCustom<T[keyof T], PropertyName>
1435
- ): LoDashImplicitWrapper<Dictionary<T[keyof T]>>;
1107
+ keyBy(iteratee?: ValueIterateeCustom<T, PropertyName>): Object<Dictionary<T>>;
1436
1108
  }
1437
-
1438
- interface LoDashExplicitWrapper<TValue> {
1109
+ interface Object<T> {
1439
1110
  /**
1440
1111
  * @see _.keyBy
1441
1112
  */
1442
- keyBy<T>(
1443
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1444
- iteratee?: ValueIterateeCustom<T, PropertyName>
1445
- ): LoDashExplicitWrapper<Dictionary<T>>;
1446
-
1113
+ keyBy(iteratee?: ValueIterateeCustom<T[keyof T], PropertyName>): Object<Dictionary<T[keyof T]>>;
1114
+ }
1115
+ interface StringChain {
1447
1116
  /**
1448
1117
  * @see _.keyBy
1449
1118
  */
1450
- keyBy<T extends object>(
1451
- this: LoDashExplicitWrapper<T | null | undefined>,
1452
- iteratee?: ValueIterateeCustom<T[keyof T], PropertyName>
1453
- ): LoDashExplicitWrapper<Dictionary<T[keyof T]>>;
1119
+ keyBy(iteratee?: ValueIterateeCustom<string, PropertyName>): ObjectChain<Dictionary<string>>;
1120
+ }
1121
+ interface StringNullableChain {
1122
+ /**
1123
+ * @see _.keyBy
1124
+ */
1125
+ keyBy(iteratee?: ValueIterateeCustom<string, PropertyName>): ObjectChain<Dictionary<string>>;
1126
+ }
1127
+ interface CollectionChain<T> {
1128
+ /**
1129
+ * @see _.keyBy
1130
+ */
1131
+ keyBy(iteratee?: ValueIterateeCustom<T, PropertyName>): ObjectChain<Dictionary<T>>;
1132
+ }
1133
+ interface ObjectChain<T> {
1134
+ /**
1135
+ * @see _.keyBy
1136
+ */
1137
+ keyBy(iteratee?: ValueIterateeCustom<T[keyof T], PropertyName>): ObjectChain<Dictionary<T[keyof T]>>;
1454
1138
  }
1455
-
1456
- // map
1457
-
1458
1139
  interface LoDashStatic {
1459
1140
  /**
1460
1141
  * Creates an array of values by running each element in collection through iteratee. The iteratee is
@@ -1472,163 +1153,151 @@ declare module "../index" {
1472
1153
  * @param iteratee The function invoked per iteration.
1473
1154
  * @return Returns the new mapped array.
1474
1155
  */
1475
- map<T, TResult>(
1476
- collection: T[] | null | undefined,
1477
- iteratee: ArrayIterator<T, TResult>
1478
- ): TResult[];
1479
-
1156
+ map<T, TResult>(collection: T[] | null | undefined, iteratee: ArrayIterator<T, TResult>): TResult[];
1480
1157
  /**
1481
1158
  * @see _.map
1482
1159
  */
1483
- map<T, TResult>(
1484
- collection: List<T> | null | undefined,
1485
- iteratee: ListIterator<T, TResult>
1486
- ): TResult[];
1487
-
1160
+ map<T, TResult>(collection: List<T> | null | undefined, iteratee: ListIterator<T, TResult>): TResult[];
1488
1161
  /**
1489
1162
  * @see _.map
1490
1163
  */
1491
- map<T>(collection: List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined): T[];
1492
-
1164
+ map<T>(collection: Dictionary<T> | NumericDictionary<T> | null | undefined): T[];
1493
1165
  /**
1494
1166
  * @see _.map
1495
1167
  */
1496
- map<T extends object, TResult>(
1497
- collection: T | null | undefined,
1498
- iteratee: ObjectIterator<T, TResult>
1499
- ): TResult[];
1500
-
1501
- /** @see _.map */
1502
- map<T, K extends keyof T>(
1503
- collection: List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined,
1504
- iteratee: K
1505
- ): Array<T[K]>;
1506
-
1168
+ map<T extends object, TResult>(collection: T | null | undefined, iteratee: ObjectIterator<T, TResult>): TResult[];
1507
1169
  /**
1508
1170
  * @see _.map
1509
1171
  */
1510
- map<T>(
1511
- collection: List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined,
1512
- iteratee?: string
1513
- ): any[];
1514
-
1172
+ map<T, K extends keyof T>(collection: Dictionary<T> | NumericDictionary<T> | null | undefined, iteratee: K): Array<T[K]>;
1515
1173
  /**
1516
1174
  * @see _.map
1517
1175
  */
1518
- map<T>(
1519
- collection: List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined,
1520
- iteratee?: object
1521
- ): boolean[];
1176
+ map<T>(collection: Dictionary<T> | NumericDictionary<T> | null | undefined, iteratee?: string): any[];
1177
+ /**
1178
+ * @see _.map
1179
+ */
1180
+ map<T>(collection: Dictionary<T> | NumericDictionary<T> | null | undefined, iteratee?: object): boolean[];
1522
1181
  }
1523
1182
 
1524
- interface LoDashImplicitWrapper<TValue> {
1183
+ interface String {
1525
1184
  /**
1526
1185
  * @see _.map
1527
1186
  */
1528
- map<T, TResult>(
1529
- this: LoDashImplicitWrapper<T[] | null | undefined>,
1530
- iteratee: ArrayIterator<T, TResult>
1531
- ): LoDashImplicitWrapper<TResult[]>;
1532
-
1187
+ map<TResult>(iteratee: StringIterator<TResult>): Collection<TResult>;
1533
1188
  /**
1534
1189
  * @see _.map
1535
1190
  */
1536
- map<T, TResult>(
1537
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1538
- iteratee: ListIterator<T, TResult>
1539
- ): LoDashImplicitWrapper<TResult[]>;
1540
-
1191
+ map(): Collection<string>;
1192
+ }
1193
+ interface Collection<T> {
1541
1194
  /**
1542
1195
  * @see _.map
1543
1196
  */
1544
- map<T>(this: LoDashImplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>): LoDashImplicitWrapper<T[]>;
1545
-
1197
+ map<K extends keyof T>(key: K): Collection<T[K]>;
1546
1198
  /**
1547
1199
  * @see _.map
1548
1200
  */
1549
- map<T extends object, TResult>(
1550
- this: LoDashImplicitWrapper<T | null | undefined>,
1551
- iteratee: ObjectIterator<T, TResult>
1552
- ): LoDashImplicitWrapper<TResult[]>;
1553
-
1554
- /** @see _.map */
1555
- map<T, K extends keyof T>(
1556
- this: LoDashImplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
1557
- iteratee: K
1558
- ): LoDashImplicitWrapper<Array<T[K]>>;
1559
-
1201
+ map<TResult>(iteratee: ListIterator<T, TResult>): Collection<TResult>;
1560
1202
  /**
1561
1203
  * @see _.map
1562
1204
  */
1563
- map<T>(
1564
- this: LoDashImplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
1565
- iteratee?: string
1566
- ): LoDashImplicitWrapper<any[]>;
1567
-
1205
+ map(iteratee: PropertyName): Collection<any>;
1568
1206
  /**
1569
1207
  * @see _.map
1570
1208
  */
1571
- map<T>(
1572
- this: LoDashImplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
1573
- iteratee?: object
1574
- ): LoDashImplicitWrapper<boolean[]>;
1209
+ map(iteratee: [PropertyName, any] | object): Collection<boolean>;
1210
+ /**
1211
+ * @see _.map
1212
+ */
1213
+ map(): Collection<T>;
1575
1214
  }
1576
-
1577
- interface LoDashExplicitWrapper<TValue> {
1215
+ interface Object<T> {
1578
1216
  /**
1579
1217
  * @see _.map
1580
1218
  */
1581
- map<T, TResult>(
1582
- this: LoDashExplicitWrapper<T[] | null | undefined>,
1583
- iteratee: ArrayIterator<T, TResult>
1584
- ): LoDashExplicitWrapper<TResult[]>;
1585
-
1219
+ map<K extends keyof T[keyof T]>(key: K): Collection<T[keyof T][K]>;
1586
1220
  /**
1587
1221
  * @see _.map
1588
1222
  */
1589
- map<T, TResult>(
1590
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1591
- iteratee: ListIterator<T, TResult>
1592
- ): LoDashExplicitWrapper<TResult[]>;
1593
-
1223
+ map<TResult>(iteratee: ObjectIterator<T, TResult>): Collection<TResult>;
1594
1224
  /**
1595
1225
  * @see _.map
1596
1226
  */
1597
- map<T>(this: LoDashExplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>): LoDashExplicitWrapper<T[]>;
1598
-
1227
+ map(iteratee: PropertyName): Collection<any>;
1599
1228
  /**
1600
1229
  * @see _.map
1601
1230
  */
1602
- map<T extends object, TResult>(
1603
- this: LoDashExplicitWrapper<T | null | undefined>,
1604
- iteratee: ObjectIterator<T, TResult>
1605
- ): LoDashExplicitWrapper<TResult[]>;
1606
-
1607
- /** @see _.map */
1608
- map<T, K extends keyof T>(
1609
- this: LoDashExplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
1610
- iteratee: K
1611
- ): LoDashExplicitWrapper<Array<T[K]>>;
1612
-
1231
+ map(iteratee: [PropertyName, any] | object): Collection<boolean>;
1613
1232
  /**
1614
1233
  * @see _.map
1615
1234
  */
1616
- map<T>(
1617
- this: LoDashExplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
1618
- iteratee?: string
1619
- ): LoDashExplicitWrapper<any[]>;
1620
-
1235
+ map(): Collection<T[keyof T]>;
1236
+ }
1237
+ interface StringChain {
1621
1238
  /**
1622
1239
  * @see _.map
1623
1240
  */
1624
- map<T>(
1625
- this: LoDashExplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
1626
- iteratee?: object
1627
- ): LoDashExplicitWrapper<boolean[]>;
1241
+ map<TResult>(iteratee: StringIterator<TResult>): CollectionChain<TResult>;
1242
+ /**
1243
+ * @see _.map
1244
+ */
1245
+ map(): CollectionChain<string>;
1246
+ }
1247
+ interface StringNullableChain {
1248
+ /**
1249
+ * @see _.map
1250
+ */
1251
+ map<TResult>(iteratee: StringIterator<TResult>): CollectionChain<TResult>;
1252
+ /**
1253
+ * @see _.map
1254
+ */
1255
+ map(): CollectionChain<string>;
1256
+ }
1257
+ interface CollectionChain<T> {
1258
+ /**
1259
+ * @see _.map
1260
+ */
1261
+ map<K extends keyof T>(key: K): CollectionChain<T[K]>;
1262
+ /**
1263
+ * @see _.map
1264
+ */
1265
+ map<TResult>(iteratee: ListIterator<T, TResult>): CollectionChain<TResult>;
1266
+ /**
1267
+ * @see _.map
1268
+ */
1269
+ map(iteratee: PropertyName): CollectionChain<any>;
1270
+ /**
1271
+ * @see _.map
1272
+ */
1273
+ map(iteratee: [PropertyName, any] | object): CollectionChain<boolean>;
1274
+ /**
1275
+ * @see _.map
1276
+ */
1277
+ map(): CollectionChain<T>;
1278
+ }
1279
+ interface ObjectChain<T> {
1280
+ /**
1281
+ * @see _.map
1282
+ */
1283
+ map<K extends keyof T[keyof T]>(key: K): CollectionChain<T[keyof T][K]>;
1284
+ /**
1285
+ * @see _.map
1286
+ */
1287
+ map<TResult>(iteratee: ObjectIterator<T, TResult>): CollectionChain<TResult>;
1288
+ /**
1289
+ * @see _.map
1290
+ */
1291
+ map(iteratee: PropertyName): CollectionChain<any>;
1292
+ /**
1293
+ * @see _.map
1294
+ */
1295
+ map(iteratee: [PropertyName, any] | object): CollectionChain<boolean>;
1296
+ /**
1297
+ * @see _.map
1298
+ */
1299
+ map(): CollectionChain<T[keyof T]>;
1628
1300
  }
1629
-
1630
- // orderBy
1631
-
1632
1301
  interface LoDashStatic {
1633
1302
  /**
1634
1303
  * This method is like `_.sortBy` except that it allows specifying the sort
@@ -1655,118 +1324,44 @@ declare module "../index" {
1655
1324
  * _.orderBy(users, ['user', 'age'], ['asc', 'desc']);
1656
1325
  * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 42]]
1657
1326
  */
1658
- orderBy<T>(
1659
- collection: List<T> | null | undefined,
1660
- iteratees?: Many<ListIterator<T, NotVoid>>,
1661
- orders?: Many<boolean|"asc"|"desc">
1662
- ): T[];
1663
-
1327
+ orderBy<T>(collection: List<T> | null | undefined, iteratees?: Many<ListIterator<T, NotVoid>>, orders?: Many<boolean|"asc"|"desc">): T[];
1664
1328
  /**
1665
1329
  * @see _.orderBy
1666
1330
  */
1667
- orderBy<T>(
1668
- collection: List<T> | null | undefined,
1669
- iteratees?: Many<ListIteratee<T>>,
1670
- orders?: Many<boolean|"asc"|"desc">
1671
- ): T[];
1672
-
1331
+ orderBy<T>(collection: List<T> | null | undefined, iteratees?: Many<ListIteratee<T>>, orders?: Many<boolean|"asc"|"desc">): T[];
1673
1332
  /**
1674
1333
  * @see _.orderBy
1675
1334
  */
1676
- orderBy<T extends object>(
1677
- collection: T | null | undefined,
1678
- iteratees?: Many<ObjectIterator<T, NotVoid>>,
1679
- orders?: Many<boolean|"asc"|"desc">
1680
- ): Array<T[keyof T]>;
1681
-
1335
+ orderBy<T extends object>(collection: T | null | undefined, iteratees?: Many<ObjectIterator<T, NotVoid>>, orders?: Many<boolean|"asc"|"desc">): Array<T[keyof T]>;
1682
1336
  /**
1683
1337
  * @see _.orderBy
1684
1338
  */
1685
- orderBy<T extends object>(
1686
- collection: T | null | undefined,
1687
- iteratees?: Many<ObjectIteratee<T>>,
1688
- orders?: Many<boolean|"asc"|"desc">
1689
- ): Array<T[keyof T]>;
1339
+ orderBy<T extends object>(collection: T | null | undefined, iteratees?: Many<ObjectIteratee<T>>, orders?: Many<boolean|"asc"|"desc">): Array<T[keyof T]>;
1690
1340
  }
1691
-
1692
- interface LoDashImplicitWrapper<TValue> {
1341
+ interface Collection<T> {
1693
1342
  /**
1694
1343
  * @see _.orderBy
1695
1344
  */
1696
- orderBy<T>(
1697
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1698
- iteratees?: Many<ListIterator<T, NotVoid>>,
1699
- orders?: Many<boolean|"asc"|"desc">
1700
- ): LoDashImplicitWrapper<T[]>;
1701
-
1702
- /**
1703
- * @see _.orderBy
1704
- */
1705
- orderBy<T>(
1706
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1707
- iteratees?: Many<ListIteratee<T>>,
1708
- orders?: Many<boolean|"asc"|"desc">
1709
- ): LoDashImplicitWrapper<T[]>;
1710
-
1711
- /**
1712
- * @see _.orderBy
1713
- */
1714
- orderBy<T extends object>(
1715
- this: LoDashImplicitWrapper<T | null | undefined>,
1716
- iteratees?: Many<ObjectIterator<T, NotVoid>>,
1717
- orders?: Many<boolean|"asc"|"desc">
1718
- ): LoDashImplicitWrapper<Array<T[keyof T]>>;
1719
-
1720
- /**
1721
- * @see _.orderBy
1722
- */
1723
- orderBy<T extends object>(
1724
- this: LoDashImplicitWrapper<T | null | undefined>,
1725
- iteratees?: Many<ObjectIteratee<T>>,
1726
- orders?: Many<boolean|"asc"|"desc">
1727
- ): LoDashImplicitWrapper<Array<T[keyof T]>>;
1345
+ orderBy(iteratees?: Many<ListIterator<T, NotVoid> | PropertyName | PartialShallow<T>>, orders?: Many<boolean|"asc"|"desc">): Collection<T>;
1728
1346
  }
1729
-
1730
- interface LoDashExplicitWrapper<TValue> {
1731
- /**
1732
- * @see _.orderBy
1733
- */
1734
- orderBy<T>(
1735
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1736
- iteratees?: Many<ListIterator<T, NotVoid>>,
1737
- orders?: Many<boolean|"asc"|"desc">
1738
- ): LoDashExplicitWrapper<T[]>;
1739
-
1347
+ interface Object<T> {
1740
1348
  /**
1741
1349
  * @see _.orderBy
1742
1350
  */
1743
- orderBy<T>(
1744
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1745
- iteratees?: Many<ListIteratee<T>>,
1746
- orders?: Many<boolean|"asc"|"desc">
1747
- ): LoDashExplicitWrapper<T[]>;
1748
-
1351
+ orderBy(iteratees?: Many<ObjectIterator<T, NotVoid>>, orders?: Many<boolean|"asc"|"desc">): Collection<T[keyof T]>;
1352
+ }
1353
+ interface CollectionChain<T> {
1749
1354
  /**
1750
1355
  * @see _.orderBy
1751
1356
  */
1752
- orderBy<T extends object>(
1753
- this: LoDashExplicitWrapper<T | null | undefined>,
1754
- iteratees?: Many<ObjectIterator<T, NotVoid>>,
1755
- orders?: Many<boolean|"asc"|"desc">
1756
- ): LoDashExplicitWrapper<Array<T[keyof T]>>;
1757
-
1357
+ orderBy(iteratees?: Many<ListIterator<T, NotVoid> | PropertyName | PartialShallow<T>>, orders?: Many<boolean|"asc"|"desc">): CollectionChain<T>;
1358
+ }
1359
+ interface ObjectChain<T> {
1758
1360
  /**
1759
1361
  * @see _.orderBy
1760
1362
  */
1761
- orderBy<T extends object>(
1762
- this: LoDashExplicitWrapper<T | null | undefined>,
1763
- iteratees?: Many<ObjectIteratee<T>>,
1764
- orders?: Many<boolean|"asc"|"desc">
1765
- ): LoDashExplicitWrapper<Array<T[keyof T]>>;
1363
+ orderBy(iteratees?: Many<ObjectIterator<T, NotVoid>>, orders?: Many<boolean|"asc"|"desc">): CollectionChain<T[keyof T]>;
1766
1364
  }
1767
-
1768
- // partition
1769
-
1770
1365
  interface LoDashStatic {
1771
1366
  /**
1772
1367
  * Creates an array of elements split into two groups, the first of which contains elements predicate returns truthy for,
@@ -1776,71 +1371,67 @@ declare module "../index" {
1776
1371
  * @param collection The collection to iterate over.
1777
1372
  * @param callback The function called per iteration.
1778
1373
  * @return Returns the array of grouped elements.
1779
- **/
1780
- partition<T, U extends T>(
1781
- collection: List<T> | null | undefined,
1782
- callback: ValueIteratorTypeGuard<T, U>
1783
- ): [U[], Array<Exclude<T, U>>];
1784
- partition<T>(
1785
- collection: List<T> | null | undefined,
1786
- callback: ValueIteratee<T>
1787
- ): [T[], T[]];
1788
-
1374
+ */
1375
+ partition<T, U extends T>(collection: List<T> | null | undefined, callback: ValueIteratorTypeGuard<T, U>): [U[], Array<Exclude<T, U>>];
1789
1376
  /**
1790
1377
  * @see _.partition
1791
1378
  */
1792
- partition<T extends object>(
1793
- collection: T | null | undefined,
1794
- callback: ValueIteratee<T[keyof T]>
1795
- ): [Array<T[keyof T]>, Array<T[keyof T]>];
1379
+ partition<T>(collection: List<T> | null | undefined, callback: ValueIteratee<T>): [T[], T[]];
1380
+ /**
1381
+ * @see _.partition
1382
+ */
1383
+ partition<T extends object>(collection: T | null | undefined, callback: ValueIteratee<T[keyof T]>): [Array<T[keyof T]>, Array<T[keyof T]>];
1796
1384
  }
1797
-
1798
- interface LoDashImplicitWrapper<TValue> {
1385
+ interface String {
1799
1386
  /**
1800
1387
  * @see _.partition
1801
1388
  */
1802
- partition<T, U extends T>(
1803
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1804
- callback: ValueIteratorTypeGuard<T, U>
1805
- ): LoDashImplicitWrapper<[U[], Array<Exclude<T, U>>]>;
1806
- partition<T>(
1807
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1808
- callback: ValueIteratee<T>
1809
- ): LoDashImplicitWrapper<[T[], T[]]>;
1810
-
1389
+ partition(callback: StringIterator<NotVoid>): LoDashImplicitWrapper<[string[], string[]]>;
1390
+ }
1391
+ interface Collection<T> {
1392
+ /**
1393
+ * @see _.partition
1394
+ */
1395
+ partition<U extends T>(callback: ValueIteratorTypeGuard<T, U>): LoDashImplicitWrapper<[U[], Array<Exclude<T, U>>]>;
1811
1396
  /**
1812
1397
  * @see _.partition
1813
1398
  */
1814
- partition<T>(
1815
- this: LoDashImplicitWrapper<T | null | undefined>,
1816
- callback: ValueIteratee<T[keyof T]>
1817
- ): LoDashImplicitWrapper<[Array<T[keyof T]>, Array<T[keyof T]>]>;
1399
+ partition(callback: ValueIteratee<T>): LoDashImplicitWrapper<[T[], T[]]>;
1818
1400
  }
1819
-
1820
- interface LoDashExplicitWrapper<TValue> {
1401
+ interface Object<T> {
1821
1402
  /**
1822
1403
  * @see _.partition
1823
1404
  */
1824
- partition<T, U extends T>(
1825
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1826
- callback: ValueIteratorTypeGuard<T, U>
1827
- ): LoDashExplicitWrapper<[U[], Array<Exclude<T, U>>]>;
1828
- partition<T>(
1829
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1830
- callback: ValueIteratee<T>
1831
- ): LoDashExplicitWrapper<[T[], T[]]>;
1832
-
1405
+ partition(callback: ValueIteratee<T[keyof T]>): LoDashImplicitWrapper<[Array<T[keyof T]>, Array<T[keyof T]>]>;
1406
+ }
1407
+ interface StringChain {
1833
1408
  /**
1834
1409
  * @see _.partition
1835
1410
  */
1836
- partition<T>(
1837
- this: LoDashExplicitWrapper<T | null | undefined>,
1838
- callback: ValueIteratee<T[keyof T]>
1839
- ): LoDashExplicitWrapper<[Array<T[keyof T]>, Array<T[keyof T]>]>;
1411
+ partition(callback: StringIterator<NotVoid>): LoDashExplicitWrapper<[string[], string[]]>;
1412
+ }
1413
+ interface StringNullableChain {
1414
+ /**
1415
+ * @see _.partition
1416
+ */
1417
+ partition(callback: StringIterator<NotVoid>): LoDashExplicitWrapper<[string[], string[]]>;
1418
+ }
1419
+ interface CollectionChain<T> {
1420
+ /**
1421
+ * @see _.partition
1422
+ */
1423
+ partition<U extends T>(callback: ValueIteratorTypeGuard<T, U>): LoDashExplicitWrapper<[U[], Array<Exclude<T, U>>]>;
1424
+ /**
1425
+ * @see _.partition
1426
+ */
1427
+ partition(callback: ValueIteratee<T>): LoDashExplicitWrapper<[T[], T[]]>;
1428
+ }
1429
+ interface ObjectChain<T> {
1430
+ /**
1431
+ * @see _.partition
1432
+ */
1433
+ partition(callback: ValueIteratee<T[keyof T]>): LoDashExplicitWrapper<[Array<T[keyof T]>, Array<T[keyof T]>]>;
1840
1434
  }
1841
-
1842
- // reduce
1843
-
1844
1435
  interface LoDashStatic {
1845
1436
  /**
1846
1437
  * Reduces a collection to a value which is the accumulated result of running each
@@ -1852,164 +1443,69 @@ declare module "../index" {
1852
1443
  * @param callback The function called per iteration.
1853
1444
  * @param accumulator Initial value of the accumulator.
1854
1445
  * @return Returns the accumulated value.
1855
- **/
1856
- reduce<T, TResult>(
1857
- collection: T[] | null | undefined,
1858
- callback: MemoListIterator<T, TResult, T[]>,
1859
- accumulator: TResult
1860
- ): TResult;
1861
-
1446
+ */
1447
+ reduce<T, TResult>(collection: T[] | null | undefined, callback: MemoListIterator<T, TResult, T[]>, accumulator: TResult): TResult;
1862
1448
  /**
1863
- * @see _.reduce
1864
- **/
1865
- reduce<T, TResult>(
1866
- collection: List<T> | null | undefined,
1867
- callback: MemoListIterator<T, TResult, List<T>>,
1868
- accumulator: TResult
1869
- ): TResult;
1870
-
1449
+ * @see _.reduce
1450
+ */
1451
+ reduce<T, TResult>(collection: List<T> | null | undefined, callback: MemoListIterator<T, TResult, List<T>>, accumulator: TResult): TResult;
1871
1452
  /**
1872
- * @see _.reduce
1873
- **/
1874
- reduce<T extends object, TResult>(
1875
- collection: T | null | undefined,
1876
- callback: MemoObjectIterator<T[keyof T], TResult, T>,
1877
- accumulator: TResult
1878
- ): TResult;
1879
-
1453
+ * @see _.reduce
1454
+ */
1455
+ reduce<T extends object, TResult>(collection: T | null | undefined, callback: MemoObjectIterator<T[keyof T], TResult, T>, accumulator: TResult): TResult;
1880
1456
  /**
1881
- * @see _.reduce
1882
- **/
1883
- reduce<T>(
1884
- collection: T[] | null | undefined,
1885
- callback: MemoListIterator<T, T, T[]>
1886
- ): T | undefined;
1887
-
1457
+ * @see _.reduce
1458
+ */
1459
+ reduce<T>(collection: T[] | null | undefined, callback: MemoListIterator<T, T, T[]>): T | undefined;
1888
1460
  /**
1889
1461
  * @see _.reduce
1890
- **/
1891
- reduce<T>(
1892
- collection: List<T> | null | undefined,
1893
- callback: MemoListIterator<T, T, List<T>>
1894
- ): T | undefined;
1895
-
1462
+ */
1463
+ reduce<T>(collection: List<T> | null | undefined, callback: MemoListIterator<T, T, List<T>>): T | undefined;
1896
1464
  /**
1897
- * @see _.reduce
1898
- **/
1899
- reduce<T extends object>(
1900
- collection: T | null | undefined,
1901
- callback: MemoObjectIterator<T[keyof T], T[keyof T], T>
1902
- ): T[keyof T] | undefined;
1465
+ * @see _.reduce
1466
+ */
1467
+ reduce<T extends object>(collection: T | null | undefined, callback: MemoObjectIterator<T[keyof T], T[keyof T], T>): T[keyof T] | undefined;
1903
1468
  }
1904
-
1905
- interface LoDashImplicitWrapper<TValue> {
1906
- /**
1907
- * @see _.reduce
1908
- **/
1909
- reduce<T, TResult>(
1910
- this: LoDashImplicitWrapper<T[] | null | undefined>,
1911
- callback: MemoListIterator<T, TResult, T[]>,
1912
- accumulator: TResult
1913
- ): TResult;
1914
-
1469
+ interface Collection<T> {
1915
1470
  /**
1916
1471
  * @see _.reduce
1917
- **/
1918
- reduce<T, TResult>(
1919
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1920
- callback: MemoListIterator<T, TResult, List<T>>,
1921
- accumulator: TResult
1922
- ): TResult;
1923
-
1924
- /**
1925
- * @see _.reduce
1926
- **/
1927
- reduce<T extends object, TResult>(
1928
- this: LoDashImplicitWrapper<T | null | undefined>,
1929
- callback: MemoObjectIterator<T[keyof T], TResult, T>,
1930
- accumulator: TResult
1931
- ): TResult;
1932
-
1933
- /**
1934
- * @see _.reduce
1935
- **/
1936
- reduce<T>(
1937
- this: LoDashImplicitWrapper<T[] | null | undefined>,
1938
- callback: MemoListIterator<T, T, T[]>
1939
- ): T | undefined;
1940
-
1941
- /**
1942
- * @see _.reduce
1943
- **/
1944
- reduce<T>(
1945
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
1946
- callback: MemoListIterator<T, T, List<T>>
1947
- ): T | undefined;
1948
-
1472
+ */
1473
+ reduce<TResult>(callback: MemoListIterator<T, TResult, List<T>>, accumulator: TResult): TResult;
1949
1474
  /**
1950
- * @see _.reduce
1951
- **/
1952
- reduce<T extends object>(
1953
- this: LoDashImplicitWrapper<T | null | undefined>,
1954
- callback: MemoObjectIterator<T[keyof T], T[keyof T], T>
1955
- ): T[keyof T] | undefined;
1475
+ * @see _.reduce
1476
+ */
1477
+ reduce(callback: MemoListIterator<T, T, List<T>>): T | undefined;
1956
1478
  }
1957
-
1958
- interface LoDashExplicitWrapper<TValue> {
1479
+ interface Object<T> {
1959
1480
  /**
1960
- * @see _.reduce
1961
- **/
1962
- reduce<T, TResult>(
1963
- this: LoDashExplicitWrapper<T[] | null | undefined>,
1964
- callback: MemoListIterator<T, TResult, T[]>,
1965
- accumulator: TResult
1966
- ): LoDashExplicitWrapper<TResult>;
1967
-
1481
+ * @see _.reduce
1482
+ */
1483
+ reduce<TResult>(callback: MemoObjectIterator<T[keyof T], TResult, T>, accumulator: TResult): TResult;
1968
1484
  /**
1969
- * @see _.reduce
1970
- **/
1971
- reduce<T, TResult>(
1972
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1973
- callback: MemoListIterator<T, TResult, List<T>>,
1974
- accumulator: TResult
1975
- ): LoDashExplicitWrapper<TResult>;
1976
-
1485
+ * @see _.reduce
1486
+ */
1487
+ reduce(callback: MemoObjectIterator<T[keyof T], T[keyof T], T>): T[keyof T] | undefined;
1488
+ }
1489
+ interface CollectionChain<T> {
1977
1490
  /**
1978
- * @see _.reduce
1979
- **/
1980
- reduce<T extends object, TResult>(
1981
- this: LoDashExplicitWrapper<T | null | undefined>,
1982
- callback: MemoObjectIterator<T[keyof T], TResult, T>,
1983
- accumulator: TResult
1984
- ): LoDashExplicitWrapper<TResult>;
1985
-
1491
+ * @see _.reduce
1492
+ */
1493
+ reduce<TResult>(callback: MemoListIterator<T, TResult, List<T>>, accumulator: TResult): ExpChain<TResult>;
1986
1494
  /**
1987
- * @see _.reduce
1988
- **/
1989
- reduce<T>(
1990
- this: LoDashExplicitWrapper<T[] | null | undefined>,
1991
- callback: MemoListIterator<T, T, T[]>
1992
- ): LoDashExplicitWrapper<T | undefined>;
1993
-
1495
+ * @see _.reduce
1496
+ */
1497
+ reduce(callback: MemoListIterator<T, T, List<T>>): ExpChain<T | undefined>;
1498
+ }
1499
+ interface ObjectChain<T> {
1994
1500
  /**
1995
- * @see _.reduce
1996
- **/
1997
- reduce<T>(
1998
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
1999
- callback: MemoListIterator<T, T, List<T>>
2000
- ): LoDashExplicitWrapper<T | undefined>;
2001
-
1501
+ * @see _.reduce
1502
+ */
1503
+ reduce<TResult>(callback: MemoObjectIterator<T[keyof T], TResult, T>, accumulator: TResult): ExpChain<TResult>;
2002
1504
  /**
2003
- * @see _.reduce
2004
- **/
2005
- reduce<T extends object>(
2006
- this: LoDashExplicitWrapper<T | null | undefined>,
2007
- callback: MemoObjectIterator<T[keyof T], T[keyof T], T>
2008
- ): LoDashExplicitWrapper<T[keyof T] | undefined>;
1505
+ * @see _.reduce
1506
+ */
1507
+ reduce(callback: MemoObjectIterator<T[keyof T], T[keyof T], T>): ExpChain<T[keyof T] | undefined>;
2009
1508
  }
2010
-
2011
- // reduceRight
2012
-
2013
1509
  interface LoDashStatic {
2014
1510
  /**
2015
1511
  * This method is like _.reduce except that it iterates over elements of a collection from
@@ -2018,164 +1514,69 @@ declare module "../index" {
2018
1514
  * @param callback The function called per iteration.
2019
1515
  * @param accumulator Initial value of the accumulator.
2020
1516
  * @return The accumulated value.
2021
- **/
2022
- reduceRight<T, TResult>(
2023
- collection: T[] | null | undefined,
2024
- callback: MemoListIterator<T, TResult, T[]>,
2025
- accumulator: TResult
2026
- ): TResult;
2027
-
1517
+ */
1518
+ reduceRight<T, TResult>(collection: T[] | null | undefined, callback: MemoListIterator<T, TResult, T[]>, accumulator: TResult): TResult;
2028
1519
  /**
2029
- * @see _.reduceRight
2030
- **/
2031
- reduceRight<T, TResult>(
2032
- collection: List<T> | null | undefined,
2033
- callback: MemoListIterator<T, TResult, List<T>>,
2034
- accumulator: TResult
2035
- ): TResult;
2036
-
1520
+ * @see _.reduceRight
1521
+ */
1522
+ reduceRight<T, TResult>(collection: List<T> | null | undefined, callback: MemoListIterator<T, TResult, List<T>>, accumulator: TResult): TResult;
2037
1523
  /**
2038
- * @see _.reduceRight
2039
- **/
2040
- reduceRight<T extends object, TResult>(
2041
- collection: T | null | undefined,
2042
- callback: MemoObjectIterator<T[keyof T], TResult, T>,
2043
- accumulator: TResult
2044
- ): TResult;
2045
-
1524
+ * @see _.reduceRight
1525
+ */
1526
+ reduceRight<T extends object, TResult>(collection: T | null | undefined, callback: MemoObjectIterator<T[keyof T], TResult, T>, accumulator: TResult): TResult;
2046
1527
  /**
2047
- * @see _.reduceRight
2048
- **/
2049
- reduceRight<T>(
2050
- collection: T[] | null | undefined,
2051
- callback: MemoListIterator<T, T, T[]>
2052
- ): T | undefined;
2053
-
1528
+ * @see _.reduceRight
1529
+ */
1530
+ reduceRight<T>(collection: T[] | null | undefined, callback: MemoListIterator<T, T, T[]>): T | undefined;
2054
1531
  /**
2055
- * @see _.reduceRight
2056
- **/
2057
- reduceRight<T>(
2058
- collection: List<T> | null | undefined,
2059
- callback: MemoListIterator<T, T, List<T>>
2060
- ): T | undefined;
2061
-
1532
+ * @see _.reduceRight
1533
+ */
1534
+ reduceRight<T>(collection: List<T> | null | undefined, callback: MemoListIterator<T, T, List<T>>): T | undefined;
2062
1535
  /**
2063
- * @see _.reduceRight
2064
- **/
2065
- reduceRight<T extends object>(
2066
- collection: T | null | undefined,
2067
- callback: MemoObjectIterator<T[keyof T], T[keyof T], T>
2068
- ): T[keyof T] | undefined;
1536
+ * @see _.reduceRight
1537
+ */
1538
+ reduceRight<T extends object>(collection: T | null | undefined, callback: MemoObjectIterator<T[keyof T], T[keyof T], T>): T[keyof T] | undefined;
2069
1539
  }
2070
-
2071
- interface LoDashImplicitWrapper<TValue> {
2072
- /**
2073
- * @see _.reduceRight
2074
- **/
2075
- reduceRight<T, TResult>(
2076
- this: LoDashImplicitWrapper<T[] | null | undefined>,
2077
- callback: MemoListIterator<T, TResult, T[]>,
2078
- accumulator: TResult
2079
- ): TResult;
2080
-
2081
- /**
2082
- * @see _.reduceRight
2083
- **/
2084
- reduceRight<T, TResult>(
2085
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
2086
- callback: MemoListIterator<T, TResult, List<T>>,
2087
- accumulator: TResult
2088
- ): TResult;
2089
-
2090
- /**
2091
- * @see _.reduceRight
2092
- **/
2093
- reduceRight<T extends object, TResult>(
2094
- this: LoDashImplicitWrapper<T | null | undefined>,
2095
- callback: MemoObjectIterator<T[keyof T], TResult, T>,
2096
- accumulator: TResult
2097
- ): TResult;
2098
-
2099
- /**
2100
- * @see _.reduceRight
2101
- **/
2102
- reduceRight<T>(
2103
- this: LoDashImplicitWrapper<T[] | null | undefined>,
2104
- callback: MemoListIterator<T, T, T[]>
2105
- ): T | undefined;
2106
-
1540
+ interface Collection<T> {
2107
1541
  /**
2108
- * @see _.reduceRight
2109
- **/
2110
- reduceRight<T>(
2111
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
2112
- callback: MemoListIterator<T, T, List<T>>
2113
- ): T | undefined;
2114
-
1542
+ * @see _.reduceRight
1543
+ */
1544
+ reduceRight<TResult>(callback: MemoListIterator<T, TResult, List<T>>, accumulator: TResult): TResult;
2115
1545
  /**
2116
- * @see _.reduceRight
2117
- **/
2118
- reduceRight<T extends object>(
2119
- this: LoDashImplicitWrapper<T | null | undefined>,
2120
- callback: MemoObjectIterator<T[keyof T], T[keyof T], T>
2121
- ): T[keyof T] | undefined;
1546
+ * @see _.reduceRight
1547
+ */
1548
+ reduceRight(callback: MemoListIterator<T, T, List<T>>): T | undefined;
2122
1549
  }
2123
-
2124
- interface LoDashExplicitWrapper<TValue> {
1550
+ interface Object<T> {
2125
1551
  /**
2126
- * @see _.reduceRight
2127
- **/
2128
- reduceRight<T, TResult>(
2129
- this: LoDashExplicitWrapper<T[] | null | undefined>,
2130
- callback: MemoListIterator<T, TResult, T[]>,
2131
- accumulator: TResult
2132
- ): LoDashExplicitWrapper<TResult>;
2133
-
1552
+ * @see _.reduceRight
1553
+ */
1554
+ reduceRight<TResult>(callback: MemoObjectIterator<T[keyof T], TResult, T>, accumulator: TResult): TResult;
2134
1555
  /**
2135
- * @see _.reduceRight
2136
- **/
2137
- reduceRight<T, TResult>(
2138
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
2139
- callback: MemoListIterator<T, TResult, List<T>>,
2140
- accumulator: TResult
2141
- ): LoDashExplicitWrapper<TResult>;
2142
-
1556
+ * @see _.reduceRight
1557
+ */
1558
+ reduceRight(callback: MemoObjectIterator<T[keyof T], T[keyof T], T>): T[keyof T] | undefined;
1559
+ }
1560
+ interface CollectionChain<T> {
2143
1561
  /**
2144
- * @see _.reduceRight
2145
- **/
2146
- reduceRight<T extends object, TResult>(
2147
- this: LoDashExplicitWrapper<T | null | undefined>,
2148
- callback: MemoObjectIterator<T[keyof T], TResult, T>,
2149
- accumulator: TResult
2150
- ): LoDashExplicitWrapper<TResult>;
2151
-
1562
+ * @see _.reduceRight
1563
+ */
1564
+ reduceRight<TResult>(callback: MemoListIterator<T, TResult, List<T>>, accumulator: TResult): ExpChain<TResult>;
2152
1565
  /**
2153
- * @see _.reduceRight
2154
- **/
2155
- reduceRight<T>(
2156
- this: LoDashExplicitWrapper<T[] | null | undefined>,
2157
- callback: MemoListIterator<T, T, T[]>
2158
- ): LoDashExplicitWrapper<T | undefined>;
2159
-
1566
+ * @see _.reduceRight
1567
+ */
1568
+ reduceRight(callback: MemoListIterator<T, T, List<T>>): ExpChain<T | undefined>;
1569
+ }
1570
+ interface ObjectChain<T> {
2160
1571
  /**
2161
- * @see _.reduceRight
2162
- **/
2163
- reduceRight<T>(
2164
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
2165
- callback: MemoListIterator<T, T, List<T>>
2166
- ): LoDashExplicitWrapper<T | undefined>;
2167
-
1572
+ * @see _.reduceRight
1573
+ */
1574
+ reduceRight<TResult>(callback: MemoObjectIterator<T[keyof T], TResult, T>, accumulator: TResult): ExpChain<TResult>;
2168
1575
  /**
2169
- * @see _.reduceRight
2170
- **/
2171
- reduceRight<T extends object>(
2172
- this: LoDashExplicitWrapper<T | null | undefined>,
2173
- callback: MemoObjectIterator<T[keyof T], T[keyof T], T>
2174
- ): LoDashExplicitWrapper<T[keyof T] | undefined>;
1576
+ * @see _.reduceRight
1577
+ */
1578
+ reduceRight(callback: MemoObjectIterator<T[keyof T], T[keyof T], T>): ExpChain<T[keyof T] | undefined>;
2175
1579
  }
2176
-
2177
- // reject
2178
-
2179
1580
  interface LoDashStatic {
2180
1581
  /**
2181
1582
  * The opposite of _.filter; this method returns the elements of collection that predicate does not return
@@ -2185,82 +1586,58 @@ declare module "../index" {
2185
1586
  * @param predicate The function invoked per iteration.
2186
1587
  * @return Returns the new filtered array.
2187
1588
  */
2188
- reject(
2189
- collection: string | null | undefined,
2190
- predicate?: StringIterator<boolean>
2191
- ): string[];
2192
-
1589
+ reject(collection: string | null | undefined, predicate?: StringIterator<boolean>): string[];
2193
1590
  /**
2194
1591
  * @see _.reject
2195
1592
  */
2196
- reject<T>(
2197
- collection: List<T> | null | undefined,
2198
- predicate?: ListIterateeCustom<T, boolean>
2199
- ): T[];
2200
-
1593
+ reject<T>(collection: List<T> | null | undefined, predicate?: ListIterateeCustom<T, boolean>): T[];
2201
1594
  /**
2202
1595
  * @see _.reject
2203
1596
  */
2204
- reject<T extends object>(
2205
- collection: T | null | undefined,
2206
- predicate?: ObjectIterateeCustom<T, boolean>
2207
- ): Array<T[keyof T]>;
1597
+ reject<T extends object>(collection: T | null | undefined, predicate?: ObjectIterateeCustom<T, boolean>): Array<T[keyof T]>;
2208
1598
  }
2209
-
2210
- interface LoDashImplicitWrapper<TValue> {
1599
+ interface String {
2211
1600
  /**
2212
1601
  * @see _.reject
2213
1602
  */
2214
- reject(
2215
- this: LoDashImplicitWrapper<string | null | undefined>,
2216
- predicate?: StringIterator<boolean>
2217
- ): LoDashImplicitWrapper<string[]>;
2218
-
1603
+ reject(predicate?: StringIterator<boolean>): Collection<string>;
1604
+ }
1605
+ interface Collection<T> {
2219
1606
  /**
2220
1607
  * @see _.reject
2221
1608
  */
2222
- reject<T>(
2223
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
2224
- predicate?: ListIterateeCustom<T, boolean>
2225
- ): LoDashImplicitWrapper<T[]>;
2226
-
1609
+ reject(predicate?: ListIterateeCustom<T, boolean>): Collection<T>;
1610
+ }
1611
+ interface Object<T> {
2227
1612
  /**
2228
1613
  * @see _.reject
2229
1614
  */
2230
- reject<T extends object>(
2231
- this: LoDashImplicitWrapper<T | null | undefined>,
2232
- predicate?: ObjectIterateeCustom<T, boolean>
2233
- ): LoDashImplicitWrapper<Array<T[keyof T]>>;
1615
+ reject(predicate?: ObjectIterateeCustom<T, boolean>): Collection<T[keyof T]>;
2234
1616
  }
2235
-
2236
- interface LoDashExplicitWrapper<TValue> {
1617
+ interface StringChain {
2237
1618
  /**
2238
1619
  * @see _.reject
2239
1620
  */
2240
- reject(
2241
- this: LoDashExplicitWrapper<string | null | undefined>,
2242
- predicate?: StringIterator<boolean>
2243
- ): LoDashExplicitWrapper<string[]>;
2244
-
1621
+ reject(predicate?: StringIterator<boolean>): CollectionChain<string>;
1622
+ }
1623
+ interface StringNullableChain {
2245
1624
  /**
2246
1625
  * @see _.reject
2247
1626
  */
2248
- reject<T>(
2249
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
2250
- predicate?: ListIterateeCustom<T, boolean>
2251
- ): LoDashExplicitWrapper<T[]>;
2252
-
1627
+ reject(predicate?: StringIterator<boolean>): CollectionChain<string>;
1628
+ }
1629
+ interface CollectionChain<T> {
2253
1630
  /**
2254
1631
  * @see _.reject
2255
1632
  */
2256
- reject<T extends object>(
2257
- this: LoDashExplicitWrapper<T | null | undefined>,
2258
- predicate?: ObjectIterateeCustom<T, boolean>
2259
- ): LoDashExplicitWrapper<Array<T[keyof T]>>;
1633
+ reject(predicate?: ListIterateeCustom<T, boolean>): CollectionChain<T>;
1634
+ }
1635
+ interface ObjectChain<T> {
1636
+ /**
1637
+ * @see _.reject
1638
+ */
1639
+ reject(predicate?: ObjectIterateeCustom<T, boolean>): CollectionChain<T[keyof T]>;
2260
1640
  }
2261
-
2262
- // sample
2263
-
2264
1641
  interface LoDashStatic {
2265
1642
  /**
2266
1643
  * Gets a random element from collection.
@@ -2268,52 +1645,54 @@ declare module "../index" {
2268
1645
  * @param collection The collection to sample.
2269
1646
  * @return Returns the random element.
2270
1647
  */
2271
- sample<T>(
2272
- collection: List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined
2273
- ): T | undefined;
2274
-
1648
+ sample<T>(collection: Dictionary<T> | NumericDictionary<T> | null | undefined): T | undefined;
2275
1649
  /**
2276
1650
  * @see _.sample
2277
1651
  */
2278
- sample<T extends object>(
2279
- collection: T | null | undefined
2280
- ): T[keyof T] | undefined;
1652
+ sample<T extends object>(collection: T | null | undefined): T[keyof T] | undefined;
2281
1653
  }
2282
-
2283
- interface LoDashImplicitWrapper<TValue> {
1654
+ interface String {
2284
1655
  /**
2285
1656
  * @see _.sample
2286
1657
  */
2287
- sample<T>(
2288
- this: LoDashImplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>
2289
- ): T | undefined;
2290
-
1658
+ sample(): string | undefined;
1659
+ }
1660
+ interface Collection<T> {
2291
1661
  /**
2292
1662
  * @see _.sample
2293
1663
  */
2294
- sample<T extends object>(
2295
- this: LoDashImplicitWrapper<T | null | undefined>
2296
- ): T[keyof T] | undefined;
1664
+ sample(): T | undefined;
2297
1665
  }
2298
-
2299
- interface LoDashExplicitWrapper<TValue> {
1666
+ interface Object<T> {
2300
1667
  /**
2301
1668
  * @see _.sample
2302
1669
  */
2303
- sample<T>(
2304
- this: LoDashExplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>
2305
- ): LoDashExplicitWrapper<T | undefined>;
2306
-
1670
+ sample(): T[keyof T] | undefined;
1671
+ }
1672
+ interface StringChain {
2307
1673
  /**
2308
1674
  * @see _.sample
2309
1675
  */
2310
- sample<T extends object>(
2311
- this: LoDashExplicitWrapper<T | null | undefined>
2312
- ): LoDashExplicitWrapper<T[keyof T] | undefined>;
1676
+ sample(): StringNullableChain;
1677
+ }
1678
+ interface StringNullableChain {
1679
+ /**
1680
+ * @see _.sample
1681
+ */
1682
+ sample(): StringNullableChain;
1683
+ }
1684
+ interface CollectionChain<T> {
1685
+ /**
1686
+ * @see _.sample
1687
+ */
1688
+ sample(): ExpChain<T | undefined>;
1689
+ }
1690
+ interface ObjectChain<T> {
1691
+ /**
1692
+ * @see _.sample
1693
+ */
1694
+ sample(): ExpChain<T[keyof T] | undefined>;
2313
1695
  }
2314
-
2315
- // sampleSize
2316
-
2317
1696
  interface LoDashStatic {
2318
1697
  /**
2319
1698
  * Gets n random elements at unique keys from collection up to the size of collection.
@@ -2322,58 +1701,54 @@ declare module "../index" {
2322
1701
  * @param n The number of elements to sample.
2323
1702
  * @return Returns the random elements.
2324
1703
  */
2325
- sampleSize<T>(
2326
- collection: List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined,
2327
- n?: number
2328
- ): T[];
2329
-
1704
+ sampleSize<T>(collection: Dictionary<T> | NumericDictionary<T> | null | undefined, n?: number): T[];
2330
1705
  /**
2331
1706
  * @see _.sampleSize
2332
1707
  */
2333
- sampleSize<T extends object>(
2334
- collection: T | null | undefined,
2335
- n?: number
2336
- ): Array<T[keyof T]>;
1708
+ sampleSize<T extends object>(collection: T | null | undefined, n?: number): Array<T[keyof T]>;
2337
1709
  }
2338
-
2339
- interface LoDashImplicitWrapper<TValue> {
1710
+ interface String {
2340
1711
  /**
2341
1712
  * @see _.sampleSize
2342
1713
  */
2343
- sampleSize<T>(
2344
- this: LoDashImplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
2345
- n?: number
2346
- ): LoDashImplicitWrapper<T[]>;
2347
-
1714
+ sampleSize(n?: number): Collection<string>;
1715
+ }
1716
+ interface Collection<T> {
2348
1717
  /**
2349
1718
  * @see _.sampleSize
2350
1719
  */
2351
- sampleSize<T extends object>(
2352
- this: LoDashImplicitWrapper<T | null | undefined>,
2353
- n?: number
2354
- ): LoDashImplicitWrapper<Array<T[keyof T]>>;
1720
+ sampleSize(n?: number): Collection<T>;
2355
1721
  }
2356
-
2357
- interface LoDashExplicitWrapper<TValue> {
1722
+ interface Object<T> {
2358
1723
  /**
2359
1724
  * @see _.sampleSize
2360
1725
  */
2361
- sampleSize<T>(
2362
- this: LoDashExplicitWrapper<List<T> | Dictionary<T> | NumericDictionary<T> | null | undefined>,
2363
- n?: number
2364
- ): LoDashExplicitWrapper<T[]>;
2365
-
1726
+ sampleSize(n?: number): Collection<T[keyof T]>;
1727
+ }
1728
+ interface StringChain {
2366
1729
  /**
2367
1730
  * @see _.sampleSize
2368
1731
  */
2369
- sampleSize<T extends object>(
2370
- this: LoDashExplicitWrapper<T | null | undefined>,
2371
- n?: number
2372
- ): LoDashExplicitWrapper<Array<T[keyof T]>>;
1732
+ sampleSize(n?: number): CollectionChain<string>;
1733
+ }
1734
+ interface StringNullableChain {
1735
+ /**
1736
+ * @see _.sampleSize
1737
+ */
1738
+ sampleSize(n?: number): CollectionChain<string>;
1739
+ }
1740
+ interface CollectionChain<T> {
1741
+ /**
1742
+ * @see _.sampleSize
1743
+ */
1744
+ sampleSize(n?: number): CollectionChain<T>;
1745
+ }
1746
+ interface ObjectChain<T> {
1747
+ /**
1748
+ * @see _.sampleSize
1749
+ */
1750
+ sampleSize(n?: number): CollectionChain<T[keyof T]>;
2373
1751
  }
2374
-
2375
- // shuffle
2376
-
2377
1752
  interface LoDashStatic {
2378
1753
  /**
2379
1754
  * Creates an array of shuffled values, using a version of the Fisher-Yates shuffle.
@@ -2382,39 +1757,53 @@ declare module "../index" {
2382
1757
  * @return Returns the new shuffled array.
2383
1758
  */
2384
1759
  shuffle<T>(collection: List<T> | null | undefined): T[];
2385
-
2386
1760
  /**
2387
1761
  * @see _.shuffle
2388
1762
  */
2389
1763
  shuffle<T extends object>(collection: T | null | undefined): Array<T[keyof T]>;
2390
1764
  }
2391
-
2392
- interface LoDashImplicitWrapper<TValue> {
1765
+ interface String {
2393
1766
  /**
2394
1767
  * @see _.shuffle
2395
1768
  */
2396
- shuffle<T>(this: LoDashImplicitWrapper<List<T> | null | undefined>): LoDashImplicitWrapper<T[]>;
2397
-
1769
+ shuffle(): Collection<string>;
1770
+ }
1771
+ interface Collection<T> {
2398
1772
  /**
2399
1773
  * @see _.shuffle
2400
1774
  */
2401
- shuffle<T extends object>(this: LoDashImplicitWrapper<T | null | undefined>): LoDashImplicitWrapper<Array<T[keyof T]>>;
1775
+ shuffle(): Collection<T>;
2402
1776
  }
2403
-
2404
- interface LoDashExplicitWrapper<TValue> {
1777
+ interface Object<T> {
2405
1778
  /**
2406
1779
  * @see _.shuffle
2407
1780
  */
2408
- shuffle<T>(this: LoDashExplicitWrapper<List<T> | null | undefined>): LoDashExplicitWrapper<T[]>;
2409
-
1781
+ shuffle(): Collection<T[keyof T]>;
1782
+ }
1783
+ interface StringChain {
2410
1784
  /**
2411
1785
  * @see _.shuffle
2412
1786
  */
2413
- shuffle<T extends object>(this: LoDashExplicitWrapper<T | null | undefined>): LoDashExplicitWrapper<Array<T[keyof T]>>;
1787
+ shuffle(): CollectionChain<string>;
1788
+ }
1789
+ interface StringNullableChain {
1790
+ /**
1791
+ * @see _.shuffle
1792
+ */
1793
+ shuffle(): CollectionChain<string>;
1794
+ }
1795
+ interface CollectionChain<T> {
1796
+ /**
1797
+ * @see _.shuffle
1798
+ */
1799
+ shuffle(): CollectionChain<T>;
1800
+ }
1801
+ interface ObjectChain<T> {
1802
+ /**
1803
+ * @see _.shuffle
1804
+ */
1805
+ shuffle(): CollectionChain<T[keyof T]>;
2414
1806
  }
2415
-
2416
- // size
2417
-
2418
1807
  interface LoDashStatic {
2419
1808
  /**
2420
1809
  * Gets the size of collection by returning its length for array-like values or the number of own enumerable
@@ -2425,23 +1814,18 @@ declare module "../index" {
2425
1814
  */
2426
1815
  size(collection: object | string | null | undefined): number;
2427
1816
  }
2428
-
2429
1817
  interface LoDashImplicitWrapper<TValue> {
2430
1818
  /**
2431
1819
  * @see _.size
2432
1820
  */
2433
1821
  size(): number;
2434
1822
  }
2435
-
2436
1823
  interface LoDashExplicitWrapper<TValue> {
2437
1824
  /**
2438
1825
  * @see _.size
2439
1826
  */
2440
- size(): LoDashExplicitWrapper<number>;
1827
+ size(): PrimitiveChain<number>;
2441
1828
  }
2442
-
2443
- // some
2444
-
2445
1829
  interface LoDashStatic {
2446
1830
  /**
2447
1831
  * Checks if predicate returns truthy for any element of collection. Iteration is stopped once predicate
@@ -2451,58 +1835,36 @@ declare module "../index" {
2451
1835
  * @param predicate The function invoked per iteration.
2452
1836
  * @return Returns true if any element passes the predicate check, else false.
2453
1837
  */
2454
- some<T>(
2455
- collection: List<T> | null | undefined,
2456
- predicate?: ListIterateeCustom<T, boolean>
2457
- ): boolean;
2458
-
1838
+ some<T>(collection: List<T> | null | undefined, predicate?: ListIterateeCustom<T, boolean>): boolean;
2459
1839
  /**
2460
1840
  * @see _.some
2461
1841
  */
2462
- some<T extends object>(
2463
- collection: T | null | undefined,
2464
- predicate?: ObjectIterateeCustom<T, boolean>
2465
- ): boolean;
1842
+ some<T extends object>(collection: T | null | undefined, predicate?: ObjectIterateeCustom<T, boolean>): boolean;
2466
1843
  }
2467
-
2468
- interface LoDashImplicitWrapper<TValue> {
1844
+ interface Collection<T> {
2469
1845
  /**
2470
1846
  * @see _.some
2471
1847
  */
2472
- some<T>(
2473
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
2474
- predicate?: ListIterateeCustom<T, boolean>
2475
- ): boolean;
2476
-
1848
+ some(predicate?: ListIterateeCustom<T, boolean>): boolean;
1849
+ }
1850
+ interface Object<T> {
2477
1851
  /**
2478
1852
  * @see _.some
2479
1853
  */
2480
- some<T extends object>(
2481
- this: LoDashImplicitWrapper<T | null | undefined>,
2482
- predicate?: ObjectIterateeCustom<T, boolean>
2483
- ): boolean;
1854
+ some(predicate?: ObjectIterateeCustom<T, boolean>): boolean;
2484
1855
  }
2485
-
2486
- interface LoDashExplicitWrapper<TValue> {
1856
+ interface CollectionChain<T> {
2487
1857
  /**
2488
1858
  * @see _.some
2489
1859
  */
2490
- some<T>(
2491
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
2492
- predicate?: ListIterateeCustom<T, boolean>
2493
- ): LoDashExplicitWrapper<boolean>;
2494
-
1860
+ some(predicate?: ListIterateeCustom<T, boolean>): PrimitiveChain<boolean>;
1861
+ }
1862
+ interface ObjectChain<T> {
2495
1863
  /**
2496
1864
  * @see _.some
2497
1865
  */
2498
- some<T extends object>(
2499
- this: LoDashExplicitWrapper<T | null | undefined>,
2500
- predicate?: ObjectIterateeCustom<T, boolean>
2501
- ): LoDashExplicitWrapper<boolean>;
1866
+ some(predicate?: ObjectIterateeCustom<T, boolean>): PrimitiveChain<boolean>;
2502
1867
  }
2503
-
2504
- // sortBy
2505
-
2506
1868
  interface LoDashStatic {
2507
1869
  /**
2508
1870
  * Creates an array of elements, sorted in ascending order by the results of
@@ -2535,53 +1897,34 @@ declare module "../index" {
2535
1897
  * });
2536
1898
  * // => objects for [['barney', 36], ['barney', 34], ['fred', 48], ['fred', 42]]
2537
1899
  */
2538
- sortBy<T>(
2539
- collection: List<T> | null | undefined,
2540
- ...iteratees: Array<Many<ListIteratee<T>>>
2541
- ): T[];
2542
-
1900
+ sortBy<T>(collection: List<T> | null | undefined, ...iteratees: Array<Many<ListIteratee<T>>>): T[];
2543
1901
  /**
2544
1902
  * @see _.sortBy
2545
1903
  */
2546
- sortBy<T extends object>(
2547
- collection: T | null | undefined,
2548
- ...iteratees: Array<Many<ObjectIteratee<T>>>
2549
- ): Array<T[keyof T]>;
1904
+ sortBy<T extends object>(collection: T | null | undefined, ...iteratees: Array<Many<ObjectIteratee<T>>>): Array<T[keyof T]>;
2550
1905
  }
2551
-
2552
- interface LoDashImplicitWrapper<TValue> {
1906
+ interface Collection<T> {
2553
1907
  /**
2554
1908
  * @see _.sortBy
2555
1909
  */
2556
- sortBy<T>(
2557
- this: LoDashImplicitWrapper<List<T> | null | undefined>,
2558
- ...iteratees: Array<Many<ListIteratee<T>>>
2559
- ): LoDashImplicitWrapper<T[]>;
2560
-
1910
+ sortBy(...iteratees: Array<Many<ListIteratee<T>>>): Collection<T>;
1911
+ }
1912
+ interface Object<T> {
2561
1913
  /**
2562
1914
  * @see _.sortBy
2563
1915
  */
2564
- sortBy<T extends object>(
2565
- this: LoDashImplicitWrapper<T | null | undefined>,
2566
- ...iteratees: Array<Many<ObjectIteratee<T>>>
2567
- ): LoDashImplicitWrapper<Array<T[keyof T]>>;
1916
+ sortBy(...iteratees: Array<Many<ObjectIteratee<T>>>): Collection<T[keyof T]>;
2568
1917
  }
2569
-
2570
- interface LoDashExplicitWrapper<TValue> {
1918
+ interface CollectionChain<T> {
2571
1919
  /**
2572
1920
  * @see _.sortBy
2573
1921
  */
2574
- sortBy<T>(
2575
- this: LoDashExplicitWrapper<List<T> | null | undefined>,
2576
- ...iteratees: Array<Many<ListIteratee<T>>>
2577
- ): LoDashExplicitWrapper<T[]>;
2578
-
1922
+ sortBy(...iteratees: Array<Many<ListIteratee<T>>>): CollectionChain<T>;
1923
+ }
1924
+ interface ObjectChain<T> {
2579
1925
  /**
2580
1926
  * @see _.sortBy
2581
1927
  */
2582
- sortBy<T extends object>(
2583
- this: LoDashExplicitWrapper<T | null | undefined>,
2584
- ...iteratees: Array<Many<ObjectIteratee<T>>>
2585
- ): LoDashExplicitWrapper<Array<T[keyof T]>>;
1928
+ sortBy(...iteratees: Array<Many<ObjectIteratee<T>>>): CollectionChain<T[keyof T]>;
2586
1929
  }
2587
1930
  }