@types/lodash 4.14.108 → 4.14.109

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (701) hide show
  1. lodash/LICENSE +21 -21
  2. lodash/README.md +2 -2
  3. lodash/add.d.ts +2 -2
  4. lodash/after.d.ts +2 -2
  5. lodash/ary.d.ts +2 -2
  6. lodash/assign.d.ts +2 -2
  7. lodash/assignIn.d.ts +2 -2
  8. lodash/assignInWith.d.ts +2 -2
  9. lodash/assignWith.d.ts +2 -2
  10. lodash/at.d.ts +2 -2
  11. lodash/attempt.d.ts +2 -2
  12. lodash/before.d.ts +2 -2
  13. lodash/bind.d.ts +2 -2
  14. lodash/bindAll.d.ts +2 -2
  15. lodash/bindKey.d.ts +2 -2
  16. lodash/camelCase.d.ts +2 -2
  17. lodash/capitalize.d.ts +2 -2
  18. lodash/castArray.d.ts +2 -2
  19. lodash/ceil.d.ts +2 -2
  20. lodash/chain.d.ts +2 -2
  21. lodash/chunk.d.ts +2 -2
  22. lodash/clamp.d.ts +2 -2
  23. lodash/clone.d.ts +2 -2
  24. lodash/cloneDeep.d.ts +2 -2
  25. lodash/cloneDeepWith.d.ts +2 -2
  26. lodash/cloneWith.d.ts +2 -2
  27. lodash/common/array.d.ts +3708 -3708
  28. lodash/common/collection.d.ts +2575 -2575
  29. lodash/common/common.d.ts +268 -266
  30. lodash/common/date.d.ts +27 -27
  31. lodash/common/function.d.ts +1473 -1473
  32. lodash/common/lang.d.ts +1936 -1936
  33. lodash/common/math.d.ts +532 -532
  34. lodash/common/number.d.ts +178 -178
  35. lodash/common/object.d.ts +3761 -3737
  36. lodash/common/seq.d.ts +196 -196
  37. lodash/common/string.d.ts +1059 -1059
  38. lodash/common/util.d.ts +1463 -1463
  39. lodash/compact.d.ts +2 -2
  40. lodash/concat.d.ts +2 -2
  41. lodash/cond.d.ts +2 -2
  42. lodash/conformsTo.d.ts +2 -2
  43. lodash/constant.d.ts +2 -2
  44. lodash/countBy.d.ts +2 -2
  45. lodash/create.d.ts +2 -2
  46. lodash/curry.d.ts +2 -2
  47. lodash/curryRight.d.ts +2 -2
  48. lodash/debounce.d.ts +2 -2
  49. lodash/deburr.d.ts +2 -2
  50. lodash/defaultTo.d.ts +2 -2
  51. lodash/defaults.d.ts +2 -2
  52. lodash/defaultsDeep.d.ts +2 -2
  53. lodash/defer.d.ts +2 -2
  54. lodash/delay.d.ts +2 -2
  55. lodash/difference.d.ts +2 -2
  56. lodash/differenceBy.d.ts +2 -2
  57. lodash/differenceWith.d.ts +2 -2
  58. lodash/divide.d.ts +2 -2
  59. lodash/drop.d.ts +2 -2
  60. lodash/dropRight.d.ts +2 -2
  61. lodash/dropRightWhile.d.ts +2 -2
  62. lodash/dropWhile.d.ts +2 -2
  63. lodash/each.d.ts +2 -2
  64. lodash/eachRight.d.ts +2 -2
  65. lodash/endsWith.d.ts +2 -2
  66. lodash/entries.d.ts +2 -2
  67. lodash/entriesIn.d.ts +2 -2
  68. lodash/eq.d.ts +2 -2
  69. lodash/escape.d.ts +2 -2
  70. lodash/escapeRegExp.d.ts +2 -2
  71. lodash/every.d.ts +2 -2
  72. lodash/extend.d.ts +2 -2
  73. lodash/extendWith.d.ts +2 -2
  74. lodash/fill.d.ts +2 -2
  75. lodash/filter.d.ts +2 -2
  76. lodash/find.d.ts +2 -2
  77. lodash/findIndex.d.ts +2 -2
  78. lodash/findKey.d.ts +2 -2
  79. lodash/findLast.d.ts +2 -2
  80. lodash/findLastIndex.d.ts +2 -2
  81. lodash/findLastKey.d.ts +2 -2
  82. lodash/first.d.ts +2 -2
  83. lodash/flatMap.d.ts +2 -2
  84. lodash/flatMapDeep.d.ts +2 -2
  85. lodash/flatMapDepth.d.ts +2 -2
  86. lodash/flatten.d.ts +2 -2
  87. lodash/flattenDeep.d.ts +2 -2
  88. lodash/flattenDepth.d.ts +2 -2
  89. lodash/flip.d.ts +2 -2
  90. lodash/floor.d.ts +2 -2
  91. lodash/flow.d.ts +2 -2
  92. lodash/flowRight.d.ts +2 -2
  93. lodash/forEach.d.ts +2 -2
  94. lodash/forEachRight.d.ts +2 -2
  95. lodash/forIn.d.ts +2 -2
  96. lodash/forInRight.d.ts +2 -2
  97. lodash/forOwn.d.ts +2 -2
  98. lodash/forOwnRight.d.ts +2 -2
  99. lodash/fp/F.d.ts +2 -2
  100. lodash/fp/T.d.ts +2 -2
  101. lodash/fp/__.d.ts +3 -3
  102. lodash/fp/add.d.ts +2 -2
  103. lodash/fp/after.d.ts +2 -2
  104. lodash/fp/all.d.ts +2 -2
  105. lodash/fp/allPass.d.ts +2 -2
  106. lodash/fp/always.d.ts +2 -2
  107. lodash/fp/any.d.ts +2 -2
  108. lodash/fp/anyPass.d.ts +2 -2
  109. lodash/fp/apply.d.ts +2 -2
  110. lodash/fp/ary.d.ts +2 -2
  111. lodash/fp/assign.d.ts +2 -2
  112. lodash/fp/assignAll.d.ts +2 -2
  113. lodash/fp/assignAllWith.d.ts +2 -2
  114. lodash/fp/assignIn.d.ts +2 -2
  115. lodash/fp/assignInAll.d.ts +2 -2
  116. lodash/fp/assignInAllWith.d.ts +2 -2
  117. lodash/fp/assignInWith.d.ts +2 -2
  118. lodash/fp/assignWith.d.ts +2 -2
  119. lodash/fp/assoc.d.ts +2 -2
  120. lodash/fp/assocPath.d.ts +2 -2
  121. lodash/fp/at.d.ts +2 -2
  122. lodash/fp/attempt.d.ts +2 -2
  123. lodash/fp/before.d.ts +2 -2
  124. lodash/fp/bind.d.ts +2 -2
  125. lodash/fp/bindAll.d.ts +2 -2
  126. lodash/fp/bindKey.d.ts +2 -2
  127. lodash/fp/camelCase.d.ts +2 -2
  128. lodash/fp/capitalize.d.ts +2 -2
  129. lodash/fp/castArray.d.ts +2 -2
  130. lodash/fp/ceil.d.ts +2 -2
  131. lodash/fp/chunk.d.ts +2 -2
  132. lodash/fp/clamp.d.ts +2 -2
  133. lodash/fp/clone.d.ts +2 -2
  134. lodash/fp/cloneDeep.d.ts +2 -2
  135. lodash/fp/cloneDeepWith.d.ts +2 -2
  136. lodash/fp/cloneWith.d.ts +2 -2
  137. lodash/fp/compact.d.ts +2 -2
  138. lodash/fp/complement.d.ts +2 -2
  139. lodash/fp/compose.d.ts +2 -2
  140. lodash/fp/concat.d.ts +2 -2
  141. lodash/fp/cond.d.ts +2 -2
  142. lodash/fp/conforms.d.ts +2 -2
  143. lodash/fp/conformsTo.d.ts +2 -2
  144. lodash/fp/constant.d.ts +2 -2
  145. lodash/fp/contains.d.ts +2 -2
  146. lodash/fp/convert.d.ts +15 -15
  147. lodash/fp/countBy.d.ts +2 -2
  148. lodash/fp/create.d.ts +2 -2
  149. lodash/fp/curry.d.ts +2 -2
  150. lodash/fp/curryN.d.ts +2 -2
  151. lodash/fp/curryRight.d.ts +2 -2
  152. lodash/fp/curryRightN.d.ts +2 -2
  153. lodash/fp/debounce.d.ts +2 -2
  154. lodash/fp/deburr.d.ts +2 -2
  155. lodash/fp/defaultTo.d.ts +2 -2
  156. lodash/fp/defaults.d.ts +2 -2
  157. lodash/fp/defaultsAll.d.ts +2 -2
  158. lodash/fp/defaultsDeep.d.ts +2 -2
  159. lodash/fp/defaultsDeepAll.d.ts +2 -2
  160. lodash/fp/defer.d.ts +2 -2
  161. lodash/fp/delay.d.ts +2 -2
  162. lodash/fp/difference.d.ts +2 -2
  163. lodash/fp/differenceBy.d.ts +2 -2
  164. lodash/fp/differenceWith.d.ts +2 -2
  165. lodash/fp/dissoc.d.ts +2 -2
  166. lodash/fp/dissocPath.d.ts +2 -2
  167. lodash/fp/divide.d.ts +2 -2
  168. lodash/fp/drop.d.ts +2 -2
  169. lodash/fp/dropLast.d.ts +2 -2
  170. lodash/fp/dropLastWhile.d.ts +2 -2
  171. lodash/fp/dropRight.d.ts +2 -2
  172. lodash/fp/dropRightWhile.d.ts +2 -2
  173. lodash/fp/dropWhile.d.ts +2 -2
  174. lodash/fp/each.d.ts +2 -2
  175. lodash/fp/eachRight.d.ts +2 -2
  176. lodash/fp/endsWith.d.ts +2 -2
  177. lodash/fp/entries.d.ts +2 -2
  178. lodash/fp/entriesIn.d.ts +2 -2
  179. lodash/fp/eq.d.ts +2 -2
  180. lodash/fp/equals.d.ts +2 -2
  181. lodash/fp/escape.d.ts +2 -2
  182. lodash/fp/escapeRegExp.d.ts +2 -2
  183. lodash/fp/every.d.ts +2 -2
  184. lodash/fp/extend.d.ts +2 -2
  185. lodash/fp/extendAll.d.ts +2 -2
  186. lodash/fp/extendAllWith.d.ts +2 -2
  187. lodash/fp/extendWith.d.ts +2 -2
  188. lodash/fp/fill.d.ts +2 -2
  189. lodash/fp/filter.d.ts +2 -2
  190. lodash/fp/find.d.ts +2 -2
  191. lodash/fp/findFrom.d.ts +2 -2
  192. lodash/fp/findIndex.d.ts +2 -2
  193. lodash/fp/findIndexFrom.d.ts +2 -2
  194. lodash/fp/findKey.d.ts +2 -2
  195. lodash/fp/findLast.d.ts +2 -2
  196. lodash/fp/findLastFrom.d.ts +2 -2
  197. lodash/fp/findLastIndex.d.ts +2 -2
  198. lodash/fp/findLastIndexFrom.d.ts +2 -2
  199. lodash/fp/findLastKey.d.ts +2 -2
  200. lodash/fp/first.d.ts +2 -2
  201. lodash/fp/flatMap.d.ts +2 -2
  202. lodash/fp/flatMapDeep.d.ts +2 -2
  203. lodash/fp/flatMapDepth.d.ts +2 -2
  204. lodash/fp/flatten.d.ts +2 -2
  205. lodash/fp/flattenDeep.d.ts +2 -2
  206. lodash/fp/flattenDepth.d.ts +2 -2
  207. lodash/fp/flip.d.ts +2 -2
  208. lodash/fp/floor.d.ts +2 -2
  209. lodash/fp/flow.d.ts +2 -2
  210. lodash/fp/flowRight.d.ts +2 -2
  211. lodash/fp/forEach.d.ts +2 -2
  212. lodash/fp/forEachRight.d.ts +2 -2
  213. lodash/fp/forIn.d.ts +2 -2
  214. lodash/fp/forInRight.d.ts +2 -2
  215. lodash/fp/forOwn.d.ts +2 -2
  216. lodash/fp/forOwnRight.d.ts +2 -2
  217. lodash/fp/fromPairs.d.ts +2 -2
  218. lodash/fp/functions.d.ts +2 -2
  219. lodash/fp/functionsIn.d.ts +2 -2
  220. lodash/fp/get.d.ts +2 -2
  221. lodash/fp/getOr.d.ts +2 -2
  222. lodash/fp/groupBy.d.ts +2 -2
  223. lodash/fp/gt.d.ts +2 -2
  224. lodash/fp/gte.d.ts +2 -2
  225. lodash/fp/has.d.ts +2 -2
  226. lodash/fp/hasIn.d.ts +2 -2
  227. lodash/fp/head.d.ts +2 -2
  228. lodash/fp/identical.d.ts +2 -2
  229. lodash/fp/identity.d.ts +2 -2
  230. lodash/fp/inRange.d.ts +2 -2
  231. lodash/fp/includes.d.ts +2 -2
  232. lodash/fp/includesFrom.d.ts +2 -2
  233. lodash/fp/indexBy.d.ts +2 -2
  234. lodash/fp/indexOf.d.ts +2 -2
  235. lodash/fp/indexOfFrom.d.ts +2 -2
  236. lodash/fp/init.d.ts +2 -2
  237. lodash/fp/initial.d.ts +2 -2
  238. lodash/fp/intersection.d.ts +2 -2
  239. lodash/fp/intersectionBy.d.ts +2 -2
  240. lodash/fp/intersectionWith.d.ts +2 -2
  241. lodash/fp/invert.d.ts +2 -2
  242. lodash/fp/invertBy.d.ts +2 -2
  243. lodash/fp/invertObj.d.ts +2 -2
  244. lodash/fp/invoke.d.ts +2 -2
  245. lodash/fp/invokeArgs.d.ts +2 -2
  246. lodash/fp/invokeArgsMap.d.ts +2 -2
  247. lodash/fp/invokeMap.d.ts +2 -2
  248. lodash/fp/isArguments.d.ts +2 -2
  249. lodash/fp/isArray.d.ts +2 -2
  250. lodash/fp/isArrayBuffer.d.ts +2 -2
  251. lodash/fp/isArrayLike.d.ts +2 -2
  252. lodash/fp/isArrayLikeObject.d.ts +2 -2
  253. lodash/fp/isBoolean.d.ts +2 -2
  254. lodash/fp/isBuffer.d.ts +2 -2
  255. lodash/fp/isDate.d.ts +2 -2
  256. lodash/fp/isElement.d.ts +2 -2
  257. lodash/fp/isEmpty.d.ts +2 -2
  258. lodash/fp/isEqual.d.ts +2 -2
  259. lodash/fp/isEqualWith.d.ts +2 -2
  260. lodash/fp/isError.d.ts +2 -2
  261. lodash/fp/isFinite.d.ts +2 -2
  262. lodash/fp/isFunction.d.ts +2 -2
  263. lodash/fp/isInteger.d.ts +2 -2
  264. lodash/fp/isLength.d.ts +2 -2
  265. lodash/fp/isMap.d.ts +2 -2
  266. lodash/fp/isMatch.d.ts +2 -2
  267. lodash/fp/isMatchWith.d.ts +2 -2
  268. lodash/fp/isNaN.d.ts +2 -2
  269. lodash/fp/isNative.d.ts +2 -2
  270. lodash/fp/isNil.d.ts +2 -2
  271. lodash/fp/isNull.d.ts +2 -2
  272. lodash/fp/isNumber.d.ts +2 -2
  273. lodash/fp/isObject.d.ts +2 -2
  274. lodash/fp/isObjectLike.d.ts +2 -2
  275. lodash/fp/isPlainObject.d.ts +2 -2
  276. lodash/fp/isRegExp.d.ts +2 -2
  277. lodash/fp/isSafeInteger.d.ts +2 -2
  278. lodash/fp/isSet.d.ts +2 -2
  279. lodash/fp/isString.d.ts +2 -2
  280. lodash/fp/isSymbol.d.ts +2 -2
  281. lodash/fp/isTypedArray.d.ts +2 -2
  282. lodash/fp/isUndefined.d.ts +2 -2
  283. lodash/fp/isWeakMap.d.ts +2 -2
  284. lodash/fp/isWeakSet.d.ts +2 -2
  285. lodash/fp/iteratee.d.ts +2 -2
  286. lodash/fp/join.d.ts +2 -2
  287. lodash/fp/juxt.d.ts +2 -2
  288. lodash/fp/kebabCase.d.ts +2 -2
  289. lodash/fp/keyBy.d.ts +2 -2
  290. lodash/fp/keys.d.ts +2 -2
  291. lodash/fp/keysIn.d.ts +2 -2
  292. lodash/fp/last.d.ts +2 -2
  293. lodash/fp/lastIndexOf.d.ts +2 -2
  294. lodash/fp/lastIndexOfFrom.d.ts +2 -2
  295. lodash/fp/lowerCase.d.ts +2 -2
  296. lodash/fp/lowerFirst.d.ts +2 -2
  297. lodash/fp/lt.d.ts +2 -2
  298. lodash/fp/lte.d.ts +2 -2
  299. lodash/fp/map.d.ts +2 -2
  300. lodash/fp/mapKeys.d.ts +2 -2
  301. lodash/fp/mapValues.d.ts +2 -2
  302. lodash/fp/matches.d.ts +2 -2
  303. lodash/fp/matchesProperty.d.ts +2 -2
  304. lodash/fp/max.d.ts +2 -2
  305. lodash/fp/maxBy.d.ts +2 -2
  306. lodash/fp/mean.d.ts +2 -2
  307. lodash/fp/meanBy.d.ts +2 -2
  308. lodash/fp/memoize.d.ts +2 -2
  309. lodash/fp/merge.d.ts +2 -2
  310. lodash/fp/mergeAll.d.ts +2 -2
  311. lodash/fp/mergeAllWith.d.ts +2 -2
  312. lodash/fp/mergeWith.d.ts +2 -2
  313. lodash/fp/method.d.ts +2 -2
  314. lodash/fp/methodOf.d.ts +2 -2
  315. lodash/fp/min.d.ts +2 -2
  316. lodash/fp/minBy.d.ts +2 -2
  317. lodash/fp/multiply.d.ts +2 -2
  318. lodash/fp/nAry.d.ts +2 -2
  319. lodash/fp/negate.d.ts +2 -2
  320. lodash/fp/noConflict.d.ts +2 -2
  321. lodash/fp/noop.d.ts +2 -2
  322. lodash/fp/now.d.ts +2 -2
  323. lodash/fp/nth.d.ts +2 -2
  324. lodash/fp/nthArg.d.ts +2 -2
  325. lodash/fp/omit.d.ts +2 -2
  326. lodash/fp/omitAll.d.ts +2 -2
  327. lodash/fp/omitBy.d.ts +2 -2
  328. lodash/fp/once.d.ts +2 -2
  329. lodash/fp/orderBy.d.ts +2 -2
  330. lodash/fp/over.d.ts +2 -2
  331. lodash/fp/overArgs.d.ts +2 -2
  332. lodash/fp/overEvery.d.ts +2 -2
  333. lodash/fp/overSome.d.ts +2 -2
  334. lodash/fp/pad.d.ts +2 -2
  335. lodash/fp/padChars.d.ts +2 -2
  336. lodash/fp/padCharsEnd.d.ts +2 -2
  337. lodash/fp/padCharsStart.d.ts +2 -2
  338. lodash/fp/padEnd.d.ts +2 -2
  339. lodash/fp/padStart.d.ts +2 -2
  340. lodash/fp/parseInt.d.ts +2 -2
  341. lodash/fp/partial.d.ts +2 -2
  342. lodash/fp/partialRight.d.ts +2 -2
  343. lodash/fp/partition.d.ts +2 -2
  344. lodash/fp/path.d.ts +2 -2
  345. lodash/fp/pathEq.d.ts +2 -2
  346. lodash/fp/pathOr.d.ts +2 -2
  347. lodash/fp/paths.d.ts +2 -2
  348. lodash/fp/pick.d.ts +2 -2
  349. lodash/fp/pickAll.d.ts +2 -2
  350. lodash/fp/pickBy.d.ts +2 -2
  351. lodash/fp/pipe.d.ts +2 -2
  352. lodash/fp/placeholder.d.ts +3 -3
  353. lodash/fp/pluck.d.ts +2 -2
  354. lodash/fp/prop.d.ts +2 -2
  355. lodash/fp/propEq.d.ts +2 -2
  356. lodash/fp/propOr.d.ts +2 -2
  357. lodash/fp/property.d.ts +2 -2
  358. lodash/fp/propertyOf.d.ts +2 -2
  359. lodash/fp/props.d.ts +2 -2
  360. lodash/fp/pull.d.ts +2 -2
  361. lodash/fp/pullAll.d.ts +2 -2
  362. lodash/fp/pullAllBy.d.ts +2 -2
  363. lodash/fp/pullAllWith.d.ts +2 -2
  364. lodash/fp/pullAt.d.ts +2 -2
  365. lodash/fp/random.d.ts +2 -2
  366. lodash/fp/range.d.ts +2 -2
  367. lodash/fp/rangeRight.d.ts +2 -2
  368. lodash/fp/rangeStep.d.ts +2 -2
  369. lodash/fp/rangeStepRight.d.ts +2 -2
  370. lodash/fp/rearg.d.ts +2 -2
  371. lodash/fp/reduce.d.ts +2 -2
  372. lodash/fp/reduceRight.d.ts +2 -2
  373. lodash/fp/reject.d.ts +2 -2
  374. lodash/fp/remove.d.ts +2 -2
  375. lodash/fp/repeat.d.ts +2 -2
  376. lodash/fp/replace.d.ts +2 -2
  377. lodash/fp/rest.d.ts +2 -2
  378. lodash/fp/restFrom.d.ts +2 -2
  379. lodash/fp/result.d.ts +2 -2
  380. lodash/fp/reverse.d.ts +2 -2
  381. lodash/fp/round.d.ts +2 -2
  382. lodash/fp/runInContext.d.ts +2 -2
  383. lodash/fp/sample.d.ts +2 -2
  384. lodash/fp/sampleSize.d.ts +2 -2
  385. lodash/fp/set.d.ts +2 -2
  386. lodash/fp/setWith.d.ts +2 -2
  387. lodash/fp/shuffle.d.ts +2 -2
  388. lodash/fp/size.d.ts +2 -2
  389. lodash/fp/slice.d.ts +2 -2
  390. lodash/fp/snakeCase.d.ts +2 -2
  391. lodash/fp/some.d.ts +2 -2
  392. lodash/fp/sortBy.d.ts +2 -2
  393. lodash/fp/sortedIndex.d.ts +2 -2
  394. lodash/fp/sortedIndexBy.d.ts +2 -2
  395. lodash/fp/sortedIndexOf.d.ts +2 -2
  396. lodash/fp/sortedLastIndex.d.ts +2 -2
  397. lodash/fp/sortedLastIndexBy.d.ts +2 -2
  398. lodash/fp/sortedLastIndexOf.d.ts +2 -2
  399. lodash/fp/sortedUniq.d.ts +2 -2
  400. lodash/fp/sortedUniqBy.d.ts +2 -2
  401. lodash/fp/split.d.ts +2 -2
  402. lodash/fp/spread.d.ts +2 -2
  403. lodash/fp/spreadFrom.d.ts +2 -2
  404. lodash/fp/startCase.d.ts +2 -2
  405. lodash/fp/startsWith.d.ts +2 -2
  406. lodash/fp/stubArray.d.ts +2 -2
  407. lodash/fp/stubFalse.d.ts +2 -2
  408. lodash/fp/stubObject.d.ts +2 -2
  409. lodash/fp/stubString.d.ts +2 -2
  410. lodash/fp/stubTrue.d.ts +2 -2
  411. lodash/fp/subtract.d.ts +2 -2
  412. lodash/fp/sum.d.ts +2 -2
  413. lodash/fp/sumBy.d.ts +2 -2
  414. lodash/fp/symmetricDifference.d.ts +2 -2
  415. lodash/fp/symmetricDifferenceBy.d.ts +2 -2
  416. lodash/fp/symmetricDifferenceWith.d.ts +2 -2
  417. lodash/fp/tail.d.ts +2 -2
  418. lodash/fp/take.d.ts +2 -2
  419. lodash/fp/takeLast.d.ts +2 -2
  420. lodash/fp/takeLastWhile.d.ts +2 -2
  421. lodash/fp/takeRight.d.ts +2 -2
  422. lodash/fp/takeRightWhile.d.ts +2 -2
  423. lodash/fp/takeWhile.d.ts +2 -2
  424. lodash/fp/tap.d.ts +2 -2
  425. lodash/fp/template.d.ts +2 -2
  426. lodash/fp/throttle.d.ts +2 -2
  427. lodash/fp/thru.d.ts +2 -2
  428. lodash/fp/times.d.ts +2 -2
  429. lodash/fp/toArray.d.ts +2 -2
  430. lodash/fp/toFinite.d.ts +2 -2
  431. lodash/fp/toInteger.d.ts +2 -2
  432. lodash/fp/toLength.d.ts +2 -2
  433. lodash/fp/toLower.d.ts +2 -2
  434. lodash/fp/toNumber.d.ts +2 -2
  435. lodash/fp/toPairs.d.ts +2 -2
  436. lodash/fp/toPairsIn.d.ts +2 -2
  437. lodash/fp/toPath.d.ts +2 -2
  438. lodash/fp/toPlainObject.d.ts +2 -2
  439. lodash/fp/toSafeInteger.d.ts +2 -2
  440. lodash/fp/toString.d.ts +2 -2
  441. lodash/fp/toUpper.d.ts +2 -2
  442. lodash/fp/transform.d.ts +2 -2
  443. lodash/fp/trim.d.ts +2 -2
  444. lodash/fp/trimChars.d.ts +2 -2
  445. lodash/fp/trimCharsEnd.d.ts +2 -2
  446. lodash/fp/trimCharsStart.d.ts +2 -2
  447. lodash/fp/trimEnd.d.ts +2 -2
  448. lodash/fp/trimStart.d.ts +2 -2
  449. lodash/fp/truncate.d.ts +2 -2
  450. lodash/fp/unapply.d.ts +2 -2
  451. lodash/fp/unary.d.ts +2 -2
  452. lodash/fp/unescape.d.ts +2 -2
  453. lodash/fp/union.d.ts +2 -2
  454. lodash/fp/unionBy.d.ts +2 -2
  455. lodash/fp/unionWith.d.ts +2 -2
  456. lodash/fp/uniq.d.ts +2 -2
  457. lodash/fp/uniqBy.d.ts +2 -2
  458. lodash/fp/uniqWith.d.ts +2 -2
  459. lodash/fp/uniqueId.d.ts +2 -2
  460. lodash/fp/unnest.d.ts +2 -2
  461. lodash/fp/unset.d.ts +2 -2
  462. lodash/fp/unzip.d.ts +2 -2
  463. lodash/fp/unzipWith.d.ts +2 -2
  464. lodash/fp/update.d.ts +2 -2
  465. lodash/fp/updateWith.d.ts +2 -2
  466. lodash/fp/upperCase.d.ts +2 -2
  467. lodash/fp/upperFirst.d.ts +2 -2
  468. lodash/fp/useWith.d.ts +2 -2
  469. lodash/fp/values.d.ts +2 -2
  470. lodash/fp/valuesIn.d.ts +2 -2
  471. lodash/fp/where.d.ts +2 -2
  472. lodash/fp/whereEq.d.ts +2 -2
  473. lodash/fp/without.d.ts +2 -2
  474. lodash/fp/words.d.ts +2 -2
  475. lodash/fp/wrap.d.ts +2 -2
  476. lodash/fp/xor.d.ts +2 -2
  477. lodash/fp/xorBy.d.ts +2 -2
  478. lodash/fp/xorWith.d.ts +2 -2
  479. lodash/fp/zip.d.ts +2 -2
  480. lodash/fp/zipAll.d.ts +2 -2
  481. lodash/fp/zipObj.d.ts +2 -2
  482. lodash/fp/zipObject.d.ts +2 -2
  483. lodash/fp/zipObjectDeep.d.ts +2 -2
  484. lodash/fp/zipWith.d.ts +2 -2
  485. lodash/fp.d.ts +4765 -4488
  486. lodash/fromPairs.d.ts +2 -2
  487. lodash/functions.d.ts +2 -2
  488. lodash/functionsIn.d.ts +2 -2
  489. lodash/get.d.ts +2 -2
  490. lodash/groupBy.d.ts +2 -2
  491. lodash/gt.d.ts +2 -2
  492. lodash/gte.d.ts +2 -2
  493. lodash/has.d.ts +2 -2
  494. lodash/hasIn.d.ts +2 -2
  495. lodash/head.d.ts +2 -2
  496. lodash/identity.d.ts +2 -2
  497. lodash/inRange.d.ts +2 -2
  498. lodash/includes.d.ts +2 -2
  499. lodash/index.d.ts +47 -47
  500. lodash/indexOf.d.ts +2 -2
  501. lodash/initial.d.ts +2 -2
  502. lodash/intersection.d.ts +2 -2
  503. lodash/intersectionBy.d.ts +2 -2
  504. lodash/intersectionWith.d.ts +2 -2
  505. lodash/invert.d.ts +2 -2
  506. lodash/invertBy.d.ts +2 -2
  507. lodash/invoke.d.ts +2 -2
  508. lodash/invokeMap.d.ts +2 -2
  509. lodash/isArguments.d.ts +2 -2
  510. lodash/isArray.d.ts +2 -2
  511. lodash/isArrayBuffer.d.ts +2 -2
  512. lodash/isArrayLike.d.ts +2 -2
  513. lodash/isArrayLikeObject.d.ts +2 -2
  514. lodash/isBoolean.d.ts +2 -2
  515. lodash/isBuffer.d.ts +2 -2
  516. lodash/isDate.d.ts +2 -2
  517. lodash/isElement.d.ts +2 -2
  518. lodash/isEmpty.d.ts +2 -2
  519. lodash/isEqual.d.ts +2 -2
  520. lodash/isEqualWith.d.ts +2 -2
  521. lodash/isError.d.ts +2 -2
  522. lodash/isFinite.d.ts +2 -2
  523. lodash/isFunction.d.ts +2 -2
  524. lodash/isInteger.d.ts +2 -2
  525. lodash/isLength.d.ts +2 -2
  526. lodash/isMap.d.ts +2 -2
  527. lodash/isMatch.d.ts +2 -2
  528. lodash/isMatchWith.d.ts +2 -2
  529. lodash/isNaN.d.ts +2 -2
  530. lodash/isNative.d.ts +2 -2
  531. lodash/isNil.d.ts +2 -2
  532. lodash/isNull.d.ts +2 -2
  533. lodash/isNumber.d.ts +2 -2
  534. lodash/isObject.d.ts +2 -2
  535. lodash/isObjectLike.d.ts +2 -2
  536. lodash/isPlainObject.d.ts +2 -2
  537. lodash/isRegExp.d.ts +2 -2
  538. lodash/isSafeInteger.d.ts +2 -2
  539. lodash/isSet.d.ts +2 -2
  540. lodash/isString.d.ts +2 -2
  541. lodash/isSymbol.d.ts +2 -2
  542. lodash/isTypedArray.d.ts +2 -2
  543. lodash/isUndefined.d.ts +2 -2
  544. lodash/isWeakMap.d.ts +2 -2
  545. lodash/isWeakSet.d.ts +2 -2
  546. lodash/iteratee.d.ts +2 -2
  547. lodash/join.d.ts +2 -2
  548. lodash/kebabCase.d.ts +2 -2
  549. lodash/keyBy.d.ts +2 -2
  550. lodash/keys.d.ts +2 -2
  551. lodash/keysIn.d.ts +2 -2
  552. lodash/last.d.ts +2 -2
  553. lodash/lastIndexOf.d.ts +2 -2
  554. lodash/lowerCase.d.ts +2 -2
  555. lodash/lowerFirst.d.ts +2 -2
  556. lodash/lt.d.ts +2 -2
  557. lodash/lte.d.ts +2 -2
  558. lodash/map.d.ts +2 -2
  559. lodash/mapKeys.d.ts +2 -2
  560. lodash/mapValues.d.ts +2 -2
  561. lodash/matches.d.ts +2 -2
  562. lodash/matchesProperty.d.ts +2 -2
  563. lodash/max.d.ts +2 -2
  564. lodash/maxBy.d.ts +2 -2
  565. lodash/mean.d.ts +2 -2
  566. lodash/meanBy.d.ts +2 -2
  567. lodash/memoize.d.ts +2 -2
  568. lodash/merge.d.ts +2 -2
  569. lodash/mergeWith.d.ts +2 -2
  570. lodash/method.d.ts +2 -2
  571. lodash/methodOf.d.ts +2 -2
  572. lodash/min.d.ts +2 -2
  573. lodash/minBy.d.ts +2 -2
  574. lodash/mixin.d.ts +2 -2
  575. lodash/negate.d.ts +2 -2
  576. lodash/noConflict.d.ts +2 -2
  577. lodash/noop.d.ts +2 -2
  578. lodash/now.d.ts +2 -2
  579. lodash/nth.d.ts +2 -2
  580. lodash/nthArg.d.ts +2 -2
  581. lodash/omit.d.ts +2 -2
  582. lodash/omitBy.d.ts +2 -2
  583. lodash/once.d.ts +2 -2
  584. lodash/orderBy.d.ts +2 -2
  585. lodash/over.d.ts +2 -2
  586. lodash/overArgs.d.ts +2 -2
  587. lodash/overEvery.d.ts +2 -2
  588. lodash/overSome.d.ts +2 -2
  589. lodash/package.json +3 -3
  590. lodash/pad.d.ts +2 -2
  591. lodash/padEnd.d.ts +2 -2
  592. lodash/padStart.d.ts +2 -2
  593. lodash/parseInt.d.ts +2 -2
  594. lodash/partial.d.ts +2 -2
  595. lodash/partialRight.d.ts +2 -2
  596. lodash/partition.d.ts +2 -2
  597. lodash/pick.d.ts +2 -2
  598. lodash/pickBy.d.ts +2 -2
  599. lodash/property.d.ts +2 -2
  600. lodash/propertyOf.d.ts +2 -2
  601. lodash/pull.d.ts +2 -2
  602. lodash/pullAll.d.ts +2 -2
  603. lodash/pullAllBy.d.ts +2 -2
  604. lodash/pullAllWith.d.ts +2 -2
  605. lodash/pullAt.d.ts +2 -2
  606. lodash/random.d.ts +2 -2
  607. lodash/range.d.ts +2 -2
  608. lodash/rangeRight.d.ts +2 -2
  609. lodash/rearg.d.ts +2 -2
  610. lodash/reduce.d.ts +2 -2
  611. lodash/reduceRight.d.ts +2 -2
  612. lodash/reject.d.ts +2 -2
  613. lodash/remove.d.ts +2 -2
  614. lodash/repeat.d.ts +2 -2
  615. lodash/replace.d.ts +2 -2
  616. lodash/rest.d.ts +2 -2
  617. lodash/result.d.ts +2 -2
  618. lodash/reverse.d.ts +2 -2
  619. lodash/round.d.ts +2 -2
  620. lodash/runInContext.d.ts +2 -2
  621. lodash/sample.d.ts +2 -2
  622. lodash/sampleSize.d.ts +2 -2
  623. lodash/set.d.ts +2 -2
  624. lodash/setWith.d.ts +2 -2
  625. lodash/shuffle.d.ts +2 -2
  626. lodash/size.d.ts +2 -2
  627. lodash/slice.d.ts +2 -2
  628. lodash/snakeCase.d.ts +2 -2
  629. lodash/some.d.ts +2 -2
  630. lodash/sortBy.d.ts +2 -2
  631. lodash/sortedIndex.d.ts +2 -2
  632. lodash/sortedIndexBy.d.ts +2 -2
  633. lodash/sortedIndexOf.d.ts +2 -2
  634. lodash/sortedLastIndex.d.ts +2 -2
  635. lodash/sortedLastIndexBy.d.ts +2 -2
  636. lodash/sortedLastIndexOf.d.ts +2 -2
  637. lodash/sortedUniq.d.ts +2 -2
  638. lodash/sortedUniqBy.d.ts +2 -2
  639. lodash/split.d.ts +2 -2
  640. lodash/spread.d.ts +2 -2
  641. lodash/startCase.d.ts +2 -2
  642. lodash/startsWith.d.ts +2 -2
  643. lodash/subtract.d.ts +2 -2
  644. lodash/sum.d.ts +2 -2
  645. lodash/sumBy.d.ts +2 -2
  646. lodash/tail.d.ts +2 -2
  647. lodash/take.d.ts +2 -2
  648. lodash/takeRight.d.ts +2 -2
  649. lodash/takeRightWhile.d.ts +2 -2
  650. lodash/takeWhile.d.ts +2 -2
  651. lodash/tap.d.ts +2 -2
  652. lodash/template.d.ts +2 -2
  653. lodash/throttle.d.ts +2 -2
  654. lodash/thru.d.ts +2 -2
  655. lodash/times.d.ts +2 -2
  656. lodash/toArray.d.ts +2 -2
  657. lodash/toFinite.d.ts +2 -2
  658. lodash/toInteger.d.ts +2 -2
  659. lodash/toLength.d.ts +2 -2
  660. lodash/toLower.d.ts +2 -2
  661. lodash/toNumber.d.ts +2 -2
  662. lodash/toPairs.d.ts +2 -2
  663. lodash/toPairsIn.d.ts +2 -2
  664. lodash/toPath.d.ts +2 -2
  665. lodash/toPlainObject.d.ts +2 -2
  666. lodash/toSafeInteger.d.ts +2 -2
  667. lodash/toString.d.ts +2 -2
  668. lodash/toUpper.d.ts +2 -2
  669. lodash/transform.d.ts +2 -2
  670. lodash/trim.d.ts +2 -2
  671. lodash/trimEnd.d.ts +2 -2
  672. lodash/trimStart.d.ts +2 -2
  673. lodash/truncate.d.ts +2 -2
  674. lodash/unary.d.ts +2 -2
  675. lodash/unescape.d.ts +2 -2
  676. lodash/union.d.ts +2 -2
  677. lodash/unionBy.d.ts +2 -2
  678. lodash/unionWith.d.ts +2 -2
  679. lodash/uniq.d.ts +2 -2
  680. lodash/uniqBy.d.ts +2 -2
  681. lodash/uniqWith.d.ts +2 -2
  682. lodash/uniqueId.d.ts +2 -2
  683. lodash/unset.d.ts +2 -2
  684. lodash/unzip.d.ts +2 -2
  685. lodash/unzipWith.d.ts +2 -2
  686. lodash/update.d.ts +2 -2
  687. lodash/updateWith.d.ts +2 -2
  688. lodash/upperCase.d.ts +2 -2
  689. lodash/upperFirst.d.ts +2 -2
  690. lodash/values.d.ts +2 -2
  691. lodash/valuesIn.d.ts +2 -2
  692. lodash/without.d.ts +2 -2
  693. lodash/words.d.ts +2 -2
  694. lodash/wrap.d.ts +2 -2
  695. lodash/xor.d.ts +2 -2
  696. lodash/xorBy.d.ts +2 -2
  697. lodash/xorWith.d.ts +2 -2
  698. lodash/zip.d.ts +2 -2
  699. lodash/zipObject.d.ts +2 -2
  700. lodash/zipObjectDeep.d.ts +2 -2
  701. lodash/zipWith.d.ts +2 -2
@@ -1,1473 +1,1473 @@
1
- import _ = require("../index");
2
- declare module "../index" {
3
- // after
4
-
5
- interface LoDashStatic {
6
- /**
7
- * The opposite of _.before; this method creates a function that invokes func once it’s called n or more times.
8
- *
9
- * @param n The number of calls before func is invoked.
10
- * @param func The function to restrict.
11
- * @return Returns the new restricted function.
12
- */
13
- after<TFunc extends (...args: any[]) => any>(
14
- n: number,
15
- func: TFunc
16
- ): TFunc;
17
- }
18
-
19
- interface LoDashImplicitWrapper<TValue> {
20
- /**
21
- * @see _.after
22
- **/
23
- after<TFunc extends (...args: any[]) => any>(func: TFunc): LoDashImplicitWrapper<TFunc>;
24
- }
25
-
26
- interface LoDashExplicitWrapper<TValue> {
27
- /**
28
- * @see _.after
29
- **/
30
- after<TFunc extends (...args: any[]) => any>(func: TFunc): LoDashExplicitWrapper<TFunc>;
31
- }
32
-
33
- // ary
34
-
35
- interface LoDashStatic {
36
- /**
37
- * Creates a function that accepts up to n arguments ignoring any additional arguments.
38
- *
39
- * @param func The function to cap arguments for.
40
- * @param n The arity cap.
41
- * @returns Returns the new function.
42
- */
43
- ary(
44
- func: (...args: any[]) => any,
45
- n?: number
46
- ): (...args: any[]) => any;
47
- }
48
-
49
- interface LoDashImplicitWrapper<TValue> {
50
- /**
51
- * @see _.ary
52
- */
53
- ary(n?: number): LoDashImplicitWrapper<(...args: any[]) => any>;
54
- }
55
-
56
- interface LoDashExplicitWrapper<TValue> {
57
- /**
58
- * @see _.ary
59
- */
60
- ary(n?: number): LoDashExplicitWrapper<(...args: any[]) => any>;
61
- }
62
-
63
- // before
64
-
65
- interface LoDashStatic {
66
- /**
67
- * Creates a function that invokes func, with the this binding and arguments of the created function, while
68
- * it’s called less than n times. Subsequent calls to the created function return the result of the last func
69
- * invocation.
70
- *
71
- * @param n The number of calls at which func is no longer invoked.
72
- * @param func The function to restrict.
73
- * @return Returns the new restricted function.
74
- */
75
- before<TFunc extends (...args: any[]) => any>(
76
- n: number,
77
- func: TFunc
78
- ): TFunc;
79
- }
80
-
81
- interface LoDashImplicitWrapper<TValue> {
82
- /**
83
- * @see _.before
84
- **/
85
- before<TFunc extends (...args: any[]) => any>(func: TFunc): LoDashImplicitWrapper<TFunc>;
86
- }
87
-
88
- interface LoDashExplicitWrapper<TValue> {
89
- /**
90
- * @see _.before
91
- **/
92
- before<TFunc extends (...args: any[]) => any>(func: TFunc): LoDashExplicitWrapper<TFunc>;
93
- }
94
-
95
- // bind
96
-
97
- interface FunctionBind {
98
- placeholder: __;
99
-
100
- (
101
- func: (...args: any[]) => any,
102
- thisArg: any,
103
- ...partials: any[]
104
- ): (...args: any[]) => any;
105
- }
106
-
107
- interface LoDashStatic {
108
- /**
109
- * Creates a function that invokes func with the this binding of thisArg and prepends any additional _.bind
110
- * arguments to those provided to the bound function.
111
- *
112
- * The _.bind.placeholder value, which defaults to _ in monolithic builds, may be used as a placeholder for
113
- * partially applied arguments.
114
- *
115
- * Note: Unlike native Function#bind this method does not set the "length" property of bound functions.
116
- *
117
- * @param func The function to bind.
118
- * @param thisArg The this binding of func.
119
- * @param partials The arguments to be partially applied.
120
- * @return Returns the new bound function.
121
- */
122
- bind: FunctionBind;
123
- }
124
-
125
- interface LoDashImplicitWrapper<TValue> {
126
- /**
127
- * @see _.bind
128
- */
129
- bind(
130
- thisArg: any,
131
- ...partials: any[]
132
- ): LoDashImplicitWrapper<(...args: any[]) => any>;
133
- }
134
-
135
- interface LoDashExplicitWrapper<TValue> {
136
- /**
137
- * @see _.bind
138
- */
139
- bind(
140
- thisArg: any,
141
- ...partials: any[]
142
- ): LoDashExplicitWrapper<(...args: any[]) => any>;
143
- }
144
-
145
- // bindKey
146
-
147
- interface FunctionBindKey {
148
- placeholder: __;
149
-
150
- (
151
- object: object,
152
- key: string,
153
- ...partials: any[]
154
- ): (...args: any[]) => any;
155
- }
156
-
157
- interface LoDashStatic {
158
- /**
159
- * Creates a function that invokes the method at object[key] and prepends any additional _.bindKey arguments
160
- * to those provided to the bound function.
161
- *
162
- * This method differs from _.bind by allowing bound functions to reference methods that may be redefined
163
- * or don’t yet exist. See Peter Michaux’s article for more details.
164
- *
165
- * The _.bindKey.placeholder value, which defaults to _ in monolithic builds, may be used as a placeholder
166
- * for partially applied arguments.
167
- *
168
- * @param object The object the method belongs to.
169
- * @param key The key of the method.
170
- * @param partials The arguments to be partially applied.
171
- * @return Returns the new bound function.
172
- */
173
- bindKey: FunctionBindKey;
174
- }
175
-
176
- interface LoDashImplicitWrapper<TValue> {
177
- /**
178
- * @see _.bindKey
179
- */
180
- bindKey(
181
- key: string,
182
- ...partials: any[]
183
- ): LoDashImplicitWrapper<(...args: any[]) => any>;
184
- }
185
-
186
- interface LoDashExplicitWrapper<TValue> {
187
- /**
188
- * @see _.bindKey
189
- */
190
- bindKey(
191
- key: string,
192
- ...partials: any[]
193
- ): LoDashExplicitWrapper<(...args: any[]) => any>;
194
- }
195
-
196
- // curry
197
-
198
- interface Curry {
199
- /**
200
- * Creates a function that accepts one or more arguments of func that when called either invokes func returning
201
- * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
202
- * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
203
- * @param func The function to curry.
204
- * @param arity The arity of func.
205
- * @return Returns the new curried function.
206
- */
207
- <T1, R>(func: (t1: T1) => R, arity?: number):
208
- CurriedFunction1<T1, R>;
209
- /**
210
- * Creates a function that accepts one or more arguments of func that when called either invokes func returning
211
- * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
212
- * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
213
- * @param func The function to curry.
214
- * @param arity The arity of func.
215
- * @return Returns the new curried function.
216
- */
217
- <T1, T2, R>(func: (t1: T1, t2: T2) => R, arity?: number):
218
- CurriedFunction2<T1, T2, R>;
219
- /**
220
- * Creates a function that accepts one or more arguments of func that when called either invokes func returning
221
- * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
222
- * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
223
- * @param func The function to curry.
224
- * @param arity The arity of func.
225
- * @return Returns the new curried function.
226
- */
227
- <T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3) => R, arity?: number):
228
- CurriedFunction3<T1, T2, T3, R>;
229
- /**
230
- * Creates a function that accepts one or more arguments of func that when called either invokes func returning
231
- * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
232
- * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
233
- * @param func The function to curry.
234
- * @param arity The arity of func.
235
- * @return Returns the new curried function.
236
- */
237
- <T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4) => R, arity?: number):
238
- CurriedFunction4<T1, T2, T3, T4, R>;
239
- /**
240
- * Creates a function that accepts one or more arguments of func that when called either invokes func returning
241
- * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
242
- * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
243
- * @param func The function to curry.
244
- * @param arity The arity of func.
245
- * @return Returns the new curried function.
246
- */
247
- <T1, T2, T3, T4, T5, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R, arity?: number):
248
- CurriedFunction5<T1, T2, T3, T4, T5, R>;
249
- /**
250
- * Creates a function that accepts one or more arguments of func that when called either invokes func returning
251
- * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
252
- * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
253
- * @param func The function to curry.
254
- * @param arity The arity of func.
255
- * @return Returns the new curried function.
256
- */
257
- (func: (...args: any[]) => any, arity?: number): (...args: any[]) => any;
258
-
259
- placeholder: __;
260
- }
261
-
262
- interface LoDashStatic {
263
- curry: Curry;
264
- }
265
-
266
- interface CurriedFunction1<T1, R> {
267
- (): CurriedFunction1<T1, R>;
268
- (t1: T1): R;
269
- }
270
-
271
- interface CurriedFunction2<T1, T2, R> {
272
- (): CurriedFunction2<T1, T2, R>;
273
- (t1: T1): CurriedFunction1<T2, R>;
274
- (t1: __, t2: T2): CurriedFunction1<T1, R>;
275
- (t1: T1, t2: T2): R;
276
- }
277
-
278
- interface CurriedFunction3<T1, T2, T3, R> {
279
- (): CurriedFunction3<T1, T2, T3, R>;
280
- (t1: T1): CurriedFunction2<T2, T3, R>;
281
- (t1: __, t2: T2): CurriedFunction2<T1, T3, R>;
282
- (t1: T1, t2: T2): CurriedFunction1<T3, R>;
283
- (t1: __, t2: __, t3: T3): CurriedFunction2<T1, T2, R>;
284
- (t1: T1, t2: __, t3: T3): CurriedFunction1<T2, R>;
285
- (t1: __, t2: T2, t3: T3): CurriedFunction1<T1, R>;
286
- (t1: T1, t2: T2, t3: T3): R;
287
- }
288
-
289
- interface CurriedFunction4<T1, T2, T3, T4, R> {
290
- (): CurriedFunction4<T1, T2, T3, T4, R>;
291
- (t1: T1): CurriedFunction3<T2, T3, T4, R>;
292
- (t1: __, t2: T2): CurriedFunction3<T1, T3, T4, R>;
293
- (t1: T1, t2: T2): CurriedFunction2<T3, T4, R>;
294
- (t1: __, t2: __, t3: T3): CurriedFunction3<T1, T2, T4, R>;
295
- (t1: __, t2: __, t3: T3): CurriedFunction2<T2, T4, R>;
296
- (t1: __, t2: T2, t3: T3): CurriedFunction2<T1, T4, R>;
297
- (t1: T1, t2: T2, t3: T3): CurriedFunction1<T4, R>;
298
- (t1: __, t2: __, t3: __, t4: T4): CurriedFunction3<T1, T2, T3, R>;
299
- (t1: T1, t2: __, t3: __, t4: T4): CurriedFunction2<T2, T3, R>;
300
- (t1: __, t2: T2, t3: __, t4: T4): CurriedFunction2<T1, T3, R>;
301
- (t1: __, t2: __, t3: T3, t4: T4): CurriedFunction2<T1, T2, R>;
302
- (t1: T1, t2: T2, t3: __, t4: T4): CurriedFunction1<T3, R>;
303
- (t1: T1, t2: __, t3: T3, t4: T4): CurriedFunction1<T2, R>;
304
- (t1: __, t2: T2, t3: T3, t4: T4): CurriedFunction1<T1, R>;
305
- (t1: T1, t2: T2, t3: T3, t4: T4): R;
306
- }
307
-
308
- interface CurriedFunction5<T1, T2, T3, T4, T5, R> {
309
- (): CurriedFunction5<T1, T2, T3, T4, T5, R>;
310
- (t1: T1): CurriedFunction4<T2, T3, T4, T5, R>;
311
- (t1: __, t2: T2): CurriedFunction4<T1, T3, T4, T5, R>;
312
- (t1: T1, t2: T2): CurriedFunction3<T3, T4, T5, R>;
313
- (t1: __, t2: __, t3: T3): CurriedFunction4<T1, T2, T4, T5, R>;
314
- (t1: T1, t2: __, t3: T3): CurriedFunction3<T2, T4, T5, R>;
315
- (t1: __, t2: T2, t3: T3): CurriedFunction3<T1, T4, T5, R>;
316
- (t1: T1, t2: T2, t3: T3): CurriedFunction2<T4, T5, R>;
317
- (t1: __, t2: __, t3: __, t4: T4): CurriedFunction4<T1, T2, T3, T5, R>;
318
- (t1: T1, t2: __, t3: __, t4: T4): CurriedFunction3<T2, T3, T5, R>;
319
- (t1: __, t2: T2, t3: __, t4: T4): CurriedFunction3<T1, T3, T5, R>;
320
- (t1: __, t2: __, t3: T3, t4: T4): CurriedFunction3<T1, T2, T5, R>;
321
- (t1: T1, t2: T2, t3: __, t4: T4): CurriedFunction2<T3, T5, R>;
322
- (t1: T1, t2: __, t3: T3, t4: T4): CurriedFunction2<T2, T5, R>;
323
- (t1: __, t2: T2, t3: T3, t4: T4): CurriedFunction2<T1, T5, R>;
324
- (t1: T1, t2: T2, t3: T3, t4: T4): CurriedFunction1<T5, R>;
325
- (t1: __, t2: __, t3: __, t4: __, t5: T5): CurriedFunction4<T1, T2, T3, T4, R>;
326
- (t1: T1, t2: __, t3: __, t4: __, t5: T5): CurriedFunction3<T2, T3, T4, R>;
327
- (t1: __, t2: T2, t3: __, t4: __, t5: T5): CurriedFunction3<T1, T3, T4, R>;
328
- (t1: __, t2: __, t3: T3, t4: __, t5: T5): CurriedFunction3<T1, T2, T4, R>;
329
- (t1: __, t2: __, t3: __, t4: T4, t5: T5): CurriedFunction3<T1, T2, T3, R>;
330
- (t1: T1, t2: T2, t3: __, t4: __, t5: T5): CurriedFunction2<T3, T4, R>;
331
- (t1: T1, t2: __, t3: T3, t4: __, t5: T5): CurriedFunction2<T2, T4, R>;
332
- (t1: T1, t2: __, t3: __, t4: T4, t5: T5): CurriedFunction2<T2, T3, R>;
333
- (t1: __, t2: T2, t3: T3, t4: __, t5: T5): CurriedFunction2<T1, T4, R>;
334
- (t1: __, t2: T2, t3: __, t4: T4, t5: T5): CurriedFunction2<T1, T3, R>;
335
- (t1: __, t2: __, t3: T3, t4: T4, t5: T5): CurriedFunction2<T1, T2, R>;
336
- (t1: T1, t2: T2, t3: T3, t4: __, t5: T5): CurriedFunction1<T4, R>;
337
- (t1: T1, t2: T2, t3: __, t4: T4, t5: T5): CurriedFunction1<T3, R>;
338
- (t1: T1, t2: __, t3: T3, t4: T4, t5: T5): CurriedFunction1<T2, R>;
339
- (t1: __, t2: T2, t3: T3, t4: T4, t5: T5): CurriedFunction1<T1, R>;
340
- (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5): R;
341
- }
342
-
343
- interface RightCurriedFunction1<T1, R> {
344
- (): RightCurriedFunction1<T1, R>;
345
- (t1: T1): R;
346
- }
347
-
348
- interface RightCurriedFunction2<T1, T2, R> {
349
- (): RightCurriedFunction2<T1, T2, R>;
350
- (t2: T2): RightCurriedFunction1<T1, R>;
351
- (t1: T1, t2: __): RightCurriedFunction1<T2, R>;
352
- (t1: T1, t2: T2): R;
353
- }
354
-
355
- interface RightCurriedFunction3<T1, T2, T3, R> {
356
- (): RightCurriedFunction3<T1, T2, T3, R>;
357
- (t3: T3): RightCurriedFunction2<T1, T2, R>;
358
- (t2: T2, t3: __): RightCurriedFunction2<T1, T3, R>;
359
- (t2: T2, t3: T3): RightCurriedFunction1<T1, R>;
360
- (t1: T1, t2: __, t3: __): RightCurriedFunction2<T2, T3, R>;
361
- (t1: T1, t2: T2, t3: __): RightCurriedFunction1<T3, R>;
362
- (t1: T1, t2: __, t3: T3): RightCurriedFunction1<T2, R>;
363
- (t1: T1, t2: T2, t3: T3): R;
364
- }
365
-
366
- interface RightCurriedFunction4<T1, T2, T3, T4, R> {
367
- (): RightCurriedFunction4<T1, T2, T3, T4, R>;
368
- (t4: T4): RightCurriedFunction3<T1, T2, T3, R>;
369
- (t3: T3, t4: __): RightCurriedFunction3<T1, T2, T4, R>;
370
- (t3: T3, t4: T4): RightCurriedFunction2<T1, T2, R>;
371
- (t2: T2, t3: __, t4: __): RightCurriedFunction3<T1, T3, T4, R>;
372
- (t2: T2, t3: T3, t4: __): RightCurriedFunction2<T1, T4, R>;
373
- (t2: T2, t3: __, t4: T4): RightCurriedFunction2<T1, T3, R>;
374
- (t2: T2, t3: T3, t4: T4): RightCurriedFunction1<T1, R>;
375
- (t1: T1, t2: __, t3: __, t4: __): RightCurriedFunction3<T2, T3, T4, R>;
376
- (t1: T1, t2: T2, t3: __, t4: __): RightCurriedFunction2<T3, T4, R>;
377
- (t1: T1, t2: __, t3: T3, t4: __): RightCurriedFunction2<T2, T4, R>;
378
- (t1: T1, t2: __, t3: __, t4: T4): RightCurriedFunction2<T2, T3, R>;
379
- (t1: T1, t2: T2, t3: T3, t4: __): RightCurriedFunction1<T4, R>;
380
- (t1: T1, t2: T2, t3: __, t4: T4): RightCurriedFunction1<T3, R>;
381
- (t1: T1, t2: __, t3: T3, t4: T4): RightCurriedFunction1<T2, R>;
382
- (t1: T1, t2: T2, t3: T3, t4: T4): R;
383
- }
384
-
385
- interface RightCurriedFunction5<T1, T2, T3, T4, T5, R> {
386
- (): RightCurriedFunction5<T1, T2, T3, T4, T5, R>;
387
- (t5: T5): RightCurriedFunction4<T1, T2, T3, T4, R>;
388
- (t4: T4, t5: __): RightCurriedFunction4<T1, T2, T3, T5, R>;
389
- (t4: T4, t5: T5): RightCurriedFunction3<T1, T2, T3, R>;
390
- (t3: T3, t4: __, t5: __): RightCurriedFunction4<T1, T2, T4, T5, R>;
391
- (t3: T3, t4: T4, t5: __): RightCurriedFunction3<T1, T2, T5, R>;
392
- (t3: T3, t4: __, t5: T5): RightCurriedFunction3<T1, T2, T4, R>;
393
- (t3: T3, t4: T4, t5: T5): RightCurriedFunction2<T1, T2, R>;
394
- (t2: T2, t3: __, t4: __, t5: __): RightCurriedFunction4<T1, T3, T4, T5, R>;
395
- (t2: T2, t3: T3, t4: __, t5: __): RightCurriedFunction3<T1, T4, T5, R>;
396
- (t2: T2, t3: __, t4: T4, t5: __): RightCurriedFunction3<T1, T3, T5, R>;
397
- (t2: T2, t3: __, t4: __, t5: T5): RightCurriedFunction3<T1, T3, T4, R>;
398
- (t2: T2, t3: T3, t4: T4, t5: __): RightCurriedFunction2<T1, T5, R>;
399
- (t2: T2, t3: T3, t4: __, t5: T5): RightCurriedFunction2<T1, T4, R>;
400
- (t2: T2, t3: __, t4: T4, t5: T5): RightCurriedFunction2<T1, T3, R>;
401
- (t2: T2, t3: T3, t4: T4, t5: T5): RightCurriedFunction1<T1, R>;
402
- (t1: T1, t2: __, t3: __, t4: __, t5: __): RightCurriedFunction4<T2, T3, T4, T5, R>;
403
- (t1: T1, t2: T2, t3: __, t4: __, t5: __): RightCurriedFunction3<T3, T4, T5, R>;
404
- (t1: T1, t2: __, t3: T3, t4: __, t5: __): RightCurriedFunction3<T2, T4, T5, R>;
405
- (t1: T1, t2: __, t3: __, t4: T4, t5: __): RightCurriedFunction3<T2, T3, T5, R>;
406
- (t1: T1, t2: __, t3: __, t4: __, t5: T5): RightCurriedFunction3<T2, T3, T4, R>;
407
- (t1: T1, t2: T2, t3: T3, t4: __, t5: __): RightCurriedFunction2<T4, T5, R>;
408
- (t1: T1, t2: T2, t3: __, t4: T4, t5: __): RightCurriedFunction2<T3, T5, R>;
409
- (t1: T1, t2: T2, t3: __, t4: __, t5: T5): RightCurriedFunction2<T3, T4, R>;
410
- (t1: T1, t2: __, t3: T3, t4: T4, t5: __): RightCurriedFunction2<T2, T5, R>;
411
- (t1: T1, t2: __, t3: T3, t4: __, t5: T5): RightCurriedFunction2<T2, T4, R>;
412
- (t1: T1, t2: __, t3: __, t4: T4, t5: T5): RightCurriedFunction2<T2, T3, R>;
413
- (t1: T1, t2: T2, t3: T3, t4: T4, t5: __): RightCurriedFunction1<T5, R>;
414
- (t1: T1, t2: T2, t3: T3, t4: __, t5: T5): RightCurriedFunction1<T4, R>;
415
- (t1: T1, t2: T2, t3: __, t4: T4, t5: T5): RightCurriedFunction1<T3, R>;
416
- (t1: T1, t2: __, t3: T3, t4: T4, t5: T5): RightCurriedFunction1<T2, R>;
417
- (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5): R;
418
- }
419
-
420
- interface LoDashImplicitWrapper<TValue> {
421
- /**
422
- * @see _.curry
423
- **/
424
- curry<T1, R>(this: LoDashImplicitWrapper<(t1: T1) => R>, arity?: number):
425
- LoDashImplicitWrapper<CurriedFunction1<T1, R>>;
426
-
427
- /**
428
- * @see _.curry
429
- **/
430
- curry<T1, T2, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2) => R>, arity?: number):
431
- LoDashImplicitWrapper<CurriedFunction2<T1, T2, R>>;
432
-
433
- /**
434
- * @see _.curry
435
- **/
436
- curry<T1, T2, T3, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3) => R>, arity?: number):
437
- LoDashImplicitWrapper<CurriedFunction3<T1, T2, T3, R>>;
438
-
439
- /**
440
- * @see _.curry
441
- **/
442
- curry<T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4) => R>, arity?: number):
443
- LoDashImplicitWrapper<CurriedFunction4<T1, T2, T3, T4, R>>;
444
-
445
- /**
446
- * @see _.curry
447
- **/
448
- curry<T1, T2, T3, T4, T5, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R>, arity?: number):
449
- LoDashImplicitWrapper<CurriedFunction5<T1, T2, T3, T4, T5, R>>;
450
-
451
- /**
452
- * @see _.curry
453
- **/
454
- curry(arity?: number): LoDashImplicitWrapper<(...args: any[]) => any>;
455
- }
456
-
457
- interface LoDashExplicitWrapper<TValue> {
458
- /**
459
- * @see _.curry
460
- **/
461
- curry<T1, R>(this: LoDashExplicitWrapper<(t1: T1) => R>):
462
- LoDashExplicitWrapper<CurriedFunction1<T1, R>>;
463
-
464
- /**
465
- * @see _.curry
466
- **/
467
- curry<T1, T2, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2) => R>):
468
- LoDashExplicitWrapper<CurriedFunction2<T1, T2, R>>;
469
-
470
- /**
471
- * @see _.curry
472
- **/
473
- curry<T1, T2, T3, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3) => R>):
474
- LoDashExplicitWrapper<CurriedFunction3<T1, T2, T3, R>>;
475
-
476
- /**
477
- * @see _.curry
478
- **/
479
- curry<T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4) => R>):
480
- LoDashExplicitWrapper<CurriedFunction4<T1, T2, T3, T4, R>>;
481
-
482
- /**
483
- * @see _.curry
484
- **/
485
- curry<T1, T2, T3, T4, T5, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R>):
486
- LoDashExplicitWrapper<CurriedFunction5<T1, T2, T3, T4, T5, R>>;
487
-
488
- /**
489
- * @see _.curry
490
- **/
491
- curry(arity?: number): LoDashExplicitWrapper<(...args: any[]) => any>;
492
- }
493
-
494
- // curryRight
495
-
496
- interface CurryRight {
497
- /**
498
- * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
499
- * instead of _.partial.
500
- * @param func The function to curry.
501
- * @param arity The arity of func.
502
- * @return Returns the new curried function.
503
- */
504
- <T1, R>(func: (t1: T1) => R, arity?: number):
505
- RightCurriedFunction1<T1, R>;
506
- /**
507
- * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
508
- * instead of _.partial.
509
- * @param func The function to curry.
510
- * @param arity The arity of func.
511
- * @return Returns the new curried function.
512
- */
513
- <T1, T2, R>(func: (t1: T1, t2: T2) => R, arity?: number):
514
- RightCurriedFunction2<T1, T2, R>;
515
- /**
516
- * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
517
- * instead of _.partial.
518
- * @param func The function to curry.
519
- * @param arity The arity of func.
520
- * @return Returns the new curried function.
521
- */
522
- <T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3) => R, arity?: number):
523
- RightCurriedFunction3<T1, T2, T3, R>;
524
- /**
525
- * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
526
- * instead of _.partial.
527
- * @param func The function to curry.
528
- * @param arity The arity of func.
529
- * @return Returns the new curried function.
530
- */
531
- <T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4) => R, arity?: number):
532
- RightCurriedFunction4<T1, T2, T3, T4, R>;
533
- /**
534
- * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
535
- * instead of _.partial.
536
- * @param func The function to curry.
537
- * @param arity The arity of func.
538
- * @return Returns the new curried function.
539
- */
540
- <T1, T2, T3, T4, T5, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R, arity?: number):
541
- RightCurriedFunction5<T1, T2, T3, T4, T5, R>;
542
- /**
543
- * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
544
- * instead of _.partial.
545
- * @param func The function to curry.
546
- * @param arity The arity of func.
547
- * @return Returns the new curried function.
548
- */
549
- (func: (...args: any[]) => any, arity?: number): (...args: any[]) => any;
550
-
551
- placeholder: __;
552
- }
553
-
554
- interface LoDashStatic {
555
- curryRight: CurryRight;
556
- }
557
-
558
- interface LoDashImplicitWrapper<TValue> {
559
- /**
560
- * @see _.curryRight
561
- **/
562
- curryRight<T1, R>(this: LoDashImplicitWrapper<(t1: T1) => R>, arity?: number):
563
- LoDashImplicitWrapper<RightCurriedFunction1<T1, R>>;
564
-
565
- /**
566
- * @see _.curryRight
567
- **/
568
- curryRight<T1, T2, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2) => R>, arity?: number):
569
- LoDashImplicitWrapper<RightCurriedFunction2<T1, T2, R>>;
570
-
571
- /**
572
- * @see _.curryRight
573
- **/
574
- curryRight<T1, T2, T3, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3) => R>, arity?: number):
575
- LoDashImplicitWrapper<RightCurriedFunction3<T1, T2, T3, R>>;
576
-
577
- /**
578
- * @see _.curryRight
579
- **/
580
- curryRight<T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4) => R>, arity?: number):
581
- LoDashImplicitWrapper<RightCurriedFunction4<T1, T2, T3, T4, R>>;
582
-
583
- /**
584
- * @see _.curryRight
585
- **/
586
- curryRight<T1, T2, T3, T4, T5, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R>, arity?: number):
587
- LoDashImplicitWrapper<RightCurriedFunction5<T1, T2, T3, T4, T5, R>>;
588
-
589
- /**
590
- * @see _.curryRight
591
- **/
592
- curryRight(arity?: number): LoDashImplicitWrapper<(...args: any[]) => any>;
593
- }
594
-
595
- interface LoDashExplicitWrapper<TValue> {
596
- /**
597
- * @see _.curryRight
598
- **/
599
- curryRight<T1, R>(this: LoDashExplicitWrapper<(t1: T1) => R>, arity?: number):
600
- LoDashExplicitWrapper<RightCurriedFunction1<T1, R>>;
601
-
602
- /**
603
- * @see _.curryRight
604
- **/
605
- curryRight<T1, T2, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2) => R>, arity?: number):
606
- LoDashExplicitWrapper<RightCurriedFunction2<T1, T2, R>>;
607
-
608
- /**
609
- * @see _.curryRight
610
- **/
611
- curryRight<T1, T2, T3, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3) => R>, arity?: number):
612
- LoDashExplicitWrapper<RightCurriedFunction3<T1, T2, T3, R>>;
613
-
614
- /**
615
- * @see _.curryRight
616
- **/
617
- curryRight<T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4) => R>, arity?: number):
618
- LoDashExplicitWrapper<RightCurriedFunction4<T1, T2, T3, T4, R>>;
619
-
620
- /**
621
- * @see _.curryRight
622
- **/
623
- curryRight<T1, T2, T3, T4, T5, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R>, arity?: number):
624
- LoDashExplicitWrapper<RightCurriedFunction5<T1, T2, T3, T4, T5, R>>;
625
-
626
- /**
627
- * @see _.curryRight
628
- **/
629
- curryRight(arity?: number): LoDashExplicitWrapper<(...args: any[]) => any>;
630
- }
631
-
632
- // debounce
633
-
634
- interface DebounceSettings {
635
- /**
636
- * Specify invoking on the leading edge of the timeout.
637
- */
638
- leading?: boolean;
639
-
640
- /**
641
- * The maximum time func is allowed to be delayed before it’s invoked.
642
- */
643
- maxWait?: number;
644
-
645
- /**
646
- * Specify invoking on the trailing edge of the timeout.
647
- */
648
- trailing?: boolean;
649
- }
650
-
651
- interface LoDashStatic {
652
- /**
653
- * Creates a debounced function that delays invoking func until after wait milliseconds have elapsed since
654
- * the last time the debounced function was invoked. The debounced function comes with a cancel method to
655
- * cancel delayed invocations and a flush method to immediately invoke them. Provide an options object to
656
- * indicate that func should be invoked on the leading and/or trailing edge of the wait timeout. Subsequent
657
- * calls to the debounced function return the result of the last func invocation.
658
- *
659
- * Note: If leading and trailing options are true, func is invoked on the trailing edge of the timeout only
660
- * if the the debounced function is invoked more than once during the wait timeout.
661
- *
662
- * See David Corbacho’s article for details over the differences between _.debounce and _.throttle.
663
- *
664
- * @param func The function to debounce.
665
- * @param wait The number of milliseconds to delay.
666
- * @param options The options object.
667
- * @param options.leading Specify invoking on the leading edge of the timeout.
668
- * @param options.maxWait The maximum time func is allowed to be delayed before it’s invoked.
669
- * @param options.trailing Specify invoking on the trailing edge of the timeout.
670
- * @return Returns the new debounced function.
671
- */
672
- debounce<T extends (...args: any[]) => any>(
673
- func: T,
674
- wait?: number,
675
- options?: DebounceSettings
676
- ): T & Cancelable;
677
- }
678
-
679
- interface LoDashImplicitWrapper<TValue> {
680
- /**
681
- * @see _.debounce
682
- */
683
- debounce(
684
- wait?: number,
685
- options?: DebounceSettings
686
- ): LoDashImplicitWrapper<TValue & Cancelable>;
687
- }
688
-
689
- interface LoDashExplicitWrapper<TValue> {
690
- /**
691
- * @see _.debounce
692
- */
693
- debounce(
694
- wait?: number,
695
- options?: DebounceSettings
696
- ): LoDashExplicitWrapper<TValue & Cancelable>;
697
- }
698
-
699
- // defer
700
-
701
- interface LoDashStatic {
702
- /**
703
- * Defers invoking the func until the current call stack has cleared. Any additional arguments are provided to
704
- * func when it’s invoked.
705
- *
706
- * @param func The function to defer.
707
- * @param args The arguments to invoke the function with.
708
- * @return Returns the timer id.
709
- */
710
- defer(
711
- func: (...args: any[]) => any,
712
- ...args: any[]
713
- ): number;
714
- }
715
-
716
- interface LoDashImplicitWrapper<TValue> {
717
- /**
718
- * @see _.defer
719
- */
720
- defer(...args: any[]): LoDashImplicitWrapper<number>;
721
- }
722
-
723
- interface LoDashExplicitWrapper<TValue> {
724
- /**
725
- * @see _.defer
726
- */
727
- defer(...args: any[]): LoDashExplicitWrapper<number>;
728
- }
729
-
730
- // delay
731
-
732
- interface LoDashStatic {
733
- /**
734
- * Invokes func after wait milliseconds. Any additional arguments are provided to func when it’s invoked.
735
- *
736
- * @param func The function to delay.
737
- * @param wait The number of milliseconds to delay invocation.
738
- * @param args The arguments to invoke the function with.
739
- * @return Returns the timer id.
740
- */
741
- delay(
742
- func: (...args: any[]) => any,
743
- wait: number,
744
- ...args: any[]
745
- ): number;
746
- }
747
-
748
- interface LoDashImplicitWrapper<TValue> {
749
- /**
750
- * @see _.delay
751
- */
752
- delay(
753
- wait: number,
754
- ...args: any[]
755
- ): LoDashImplicitWrapper<number>;
756
- }
757
-
758
- interface LoDashExplicitWrapper<TValue> {
759
- /**
760
- * @see _.delay
761
- */
762
- delay(
763
- wait: number,
764
- ...args: any[]
765
- ): LoDashExplicitWrapper<number>;
766
- }
767
-
768
- // flip
769
-
770
- interface LoDashStatic {
771
- /**
772
- * Creates a function that invokes `func` with arguments reversed.
773
- *
774
- * @category Function
775
- * @param func The function to flip arguments for.
776
- * @returns Returns the new function.
777
- * @example
778
- *
779
- * var flipped = _.flip(function() {
780
- * return _.toArray(arguments);
781
- * });
782
- *
783
- * flipped('a', 'b', 'c', 'd');
784
- * // => ['d', 'c', 'b', 'a']
785
- */
786
- flip<T extends (...args: any[]) => any>(func: T): T;
787
- }
788
-
789
- interface LoDashWrapper<TValue> {
790
- /**
791
- * @see _.flip
792
- */
793
- flip(): this;
794
- }
795
-
796
- // memoize
797
-
798
- interface MemoizedFunction {
799
- cache: MapCache;
800
- }
801
-
802
- interface LoDashStatic {
803
- /**
804
- * Creates a function that memoizes the result of func. If resolver is provided it determines the cache key for
805
- * storing the result based on the arguments provided to the memoized function. By default, the first argument
806
- * provided to the memoized function is coerced to a string and used as the cache key. The func is invoked with
807
- * the this binding of the memoized function.
808
- *
809
- * @param func The function to have its output memoized.
810
- * @param resolver The function to resolve the cache key.
811
- * @return Returns the new memoizing function.
812
- */
813
- memoize: {
814
- <T extends (...args: any[]) => any>(func: T, resolver?: (...args: any[]) => any): T & MemoizedFunction;
815
- Cache: MapCacheConstructor;
816
- };
817
- }
818
-
819
- interface LoDashImplicitWrapper<TValue> {
820
- /**
821
- * @see _.memoize
822
- */
823
- memoize(resolver?: (...args: any[]) => any): LoDashImplicitWrapper<TValue & MemoizedFunction>;
824
- }
825
-
826
- interface LoDashExplicitWrapper<TValue> {
827
- /**
828
- * @see _.memoize
829
- */
830
- memoize(resolver?: (...args: any[]) => any): LoDashExplicitWrapper<TValue & MemoizedFunction>;
831
- }
832
-
833
- // negate
834
-
835
- interface LoDashStatic {
836
- /**
837
- * Creates a function that negates the result of the predicate func. The func predicate is invoked with
838
- * the this binding and arguments of the created function.
839
- *
840
- * @param predicate The predicate to negate.
841
- * @return Returns the new function.
842
- */
843
- negate<T extends (...args: any[]) => any>(predicate: T): T;
844
- }
845
-
846
- interface LoDashWrapper<TValue> {
847
- /**
848
- * @see _.negate
849
- */
850
- negate(): this;
851
- }
852
-
853
- // once
854
-
855
- interface LoDashStatic {
856
- /**
857
- * Creates a function that is restricted to invoking func once. Repeat calls to the function return the value
858
- * of the first call. The func is invoked with the this binding and arguments of the created function.
859
- *
860
- * @param func The function to restrict.
861
- * @return Returns the new restricted function.
862
- */
863
- once<T extends (...args: any[]) => any>(func: T): T;
864
- }
865
-
866
- interface LoDashWrapper<TValue> {
867
- /**
868
- * @see _.once
869
- */
870
- once(): this;
871
- }
872
-
873
- // overArgs
874
-
875
- interface LoDashStatic {
876
- /**
877
- * Creates a function that runs each argument through a corresponding transform function.
878
- *
879
- * @param func The function to wrap.
880
- * @param transforms The functions to transform arguments, specified as individual functions or arrays
881
- * of functions.
882
- * @return Returns the new function.
883
- */
884
- overArgs(
885
- func: (...args: any[]) => any,
886
- ...transforms: Array<Many<(...args: any[]) => any>>
887
- ): (...args: any[]) => any;
888
- }
889
-
890
- interface LoDashImplicitWrapper<TValue> {
891
- /**
892
- * @see _.overArgs
893
- */
894
- overArgs(...transforms: Array<Many<(...args: any[]) => any>>): LoDashImplicitWrapper<(...args: any[]) => any>;
895
- }
896
-
897
- interface LoDashExplicitWrapper<TValue> {
898
- /**
899
- * @see _.overArgs
900
- */
901
- overArgs(...transforms: Array<Many<(...args: any[]) => any>>): LoDashExplicitWrapper<(...args: any[]) => any>;
902
- }
903
-
904
- // partial
905
-
906
- interface LoDashStatic {
907
- /**
908
- * Creates a function that, when called, invokes func with any additional partial arguments
909
- * prepended to those provided to the new function. This method is similar to _.bind except
910
- * it does not alter the this binding.
911
- * @param func The function to partially apply arguments to.
912
- * @param args Arguments to be partially applied.
913
- * @return The new partially applied function.
914
- **/
915
- partial: Partial;
916
- }
917
-
918
- interface LoDashImplicitWrapper<TValue> {
919
- /**
920
- * @see _.partial
921
- */
922
- partial: ImplicitPartial;
923
- }
924
-
925
- interface LoDashExplicitWrapper<TValue> {
926
- /**
927
- * @see _.partial
928
- */
929
- partial: ExplicitPartial;
930
- }
931
-
932
- /** The placeholder, to be used in curried functions */
933
- type __ = LoDashStatic;
934
-
935
- type Function0<R> = () => R;
936
- type Function1<T1, R> = (t1: T1) => R;
937
- type Function2<T1, T2, R> = (t1: T1, t2: T2) => R;
938
- type Function3<T1, T2, T3, R> = (t1: T1, t2: T2, t3: T3) => R;
939
- type Function4<T1, T2, T3, T4, R> = (t1: T1, t2: T2, t3: T3, t4: T4) => R;
940
-
941
- interface Partial {
942
- // arity 0
943
- <R>(func: Function0<R>): Function0<R>;
944
- // arity 1
945
- <T1, R>(func: Function1<T1, R>): Function1<T1, R>;
946
- <T1, R>(func: Function1<T1, R>, arg1: T1): Function0<R>;
947
- // arity 2
948
- <T1, T2, R>(func: Function2<T1, T2, R>): Function2<T1, T2, R>;
949
- <T1, T2, R>(func: Function2<T1, T2, R>, arg1: T1): Function1< T2, R>;
950
- <T1, T2, R>(func: Function2<T1, T2, R>, plc1: __, arg2: T2): Function1<T1, R>;
951
- <T1, T2, R>(func: Function2<T1, T2, R>, arg1: T1, arg2: T2): Function0< R>;
952
- // arity 3
953
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>): Function3<T1, T2, T3, R>;
954
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1): Function2< T2, T3, R>;
955
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, plc1: __, arg2: T2): Function2<T1, T3, R>;
956
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, arg2: T2): Function1< T3, R>;
957
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, plc1: __, plc2: __, arg3: T3): Function2<T1, T2, R>;
958
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, plc2: __, arg3: T3): Function1< T2, R>;
959
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, plc1: __, arg2: T2, arg3: T3): Function1<T1, R>;
960
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, arg2: T2, arg3: T3): Function0< R>;
961
- // arity 4
962
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>): Function4<T1, T2, T3, T4, R>;
963
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1): Function3< T2, T3, T4, R>;
964
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, arg2: T2): Function3<T1, T3, T4, R>;
965
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2): Function2< T3, T4, R>;
966
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, plc2: __, arg3: T3): Function3<T1, T2, T4, R>;
967
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, arg3: T3): Function2< T2, T4, R>;
968
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, arg2: T2, arg3: T3): Function2<T1, T4, R>;
969
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, arg3: T3): Function1< T4, R>;
970
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, plc2: __, plc3: __, arg4: T4): Function3<T1, T2, T3, R>;
971
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, plc3: __, arg4: T4): Function2< T2, T3, R>;
972
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, arg2: T2, plc3: __, arg4: T4): Function2<T1, T3, R>;
973
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, plc3: __, arg4: T4): Function1< T3, R>;
974
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, plc2: __, arg3: T3, arg4: T4): Function2<T1, T2, R>;
975
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, arg3: T3, arg4: T4): Function1< T2, R>;
976
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, arg2: T2, arg3: T3, arg4: T4): Function1<T1, R>;
977
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): Function0< R>;
978
- // catch-all
979
- (func: (...args: any[]) => any, ...args: any[]): (...args: any[]) => any;
980
-
981
- placeholder: __;
982
- }
983
-
984
- interface ImplicitPartial {
985
- // arity 0
986
- <R>(this: LoDashImplicitWrapper<Function0<R>>): LoDashImplicitWrapper<Function0<R>>;
987
- // arity 1
988
- <T1, R>(this: LoDashImplicitWrapper<Function1<T1, R>>): LoDashImplicitWrapper<Function1<T1, R>>;
989
- <T1, R>(this: LoDashImplicitWrapper<Function1<T1, R>>, arg1: T1): LoDashImplicitWrapper<Function0<R>>;
990
- // arity 2
991
- <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>): LoDashImplicitWrapper<Function2<T1, T2, R>>;
992
- <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg1: T1): LoDashImplicitWrapper<Function1< T2, R>>;
993
- <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, plc1: __, arg2: T2): LoDashImplicitWrapper<Function1<T1, R>>;
994
- <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg1: T1, arg2: T2): LoDashImplicitWrapper<Function0< R>>;
995
- // arity 3
996
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>): LoDashImplicitWrapper<Function3<T1, T2, T3, R>>;
997
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1): LoDashImplicitWrapper<Function2< T2, T3, R>>;
998
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, arg2: T2): LoDashImplicitWrapper<Function2<T1, T3, R>>;
999
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2): LoDashImplicitWrapper<Function1< T3, R>>;
1000
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, plc2: __, arg3: T3): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1001
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, arg3: T3): LoDashImplicitWrapper<Function1< T2, R>>;
1002
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function1<T1, R>>;
1003
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function0< R>>;
1004
- // arity 4
1005
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>): LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>;
1006
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1): LoDashImplicitWrapper<Function3< T2, T3, T4, R>>;
1007
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2): LoDashImplicitWrapper<Function3<T1, T3, T4, R>>;
1008
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2): LoDashImplicitWrapper<Function2< T3, T4, R>>;
1009
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, arg3: T3): LoDashImplicitWrapper<Function3<T1, T2, T4, R>>;
1010
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3): LoDashImplicitWrapper<Function2< T2, T4, R>>;
1011
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function2<T1, T4, R>>;
1012
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function1< T4, R>>;
1013
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, plc3: __, arg4: T4): LoDashImplicitWrapper<Function3<T1, T2, T3, R>>;
1014
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, arg4: T4): LoDashImplicitWrapper<Function2< T2, T3, R>>;
1015
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, plc3: __, arg4: T4): LoDashImplicitWrapper<Function2<T1, T3, R>>;
1016
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, arg4: T4): LoDashImplicitWrapper<Function1< T3, R>>;
1017
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1018
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function1< T2, R>>;
1019
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function1<T1, R>>;
1020
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function0< R>>;
1021
- // catch-all
1022
- (...args: any[]): LoDashImplicitWrapper<(...args: any[]) => any>;
1023
- }
1024
-
1025
- interface ExplicitPartial {
1026
- // arity 0
1027
- <R>(this: LoDashExplicitWrapper<Function0<R>>): LoDashExplicitWrapper<Function0<R>>;
1028
- // arity 1
1029
- <T1, R>(this: LoDashExplicitWrapper<Function1<T1, R>>): LoDashExplicitWrapper<Function1<T1, R>>;
1030
- <T1, R>(this: LoDashExplicitWrapper<Function1<T1, R>>, arg1: T1): LoDashExplicitWrapper<Function0<R>>;
1031
- // arity 2
1032
- <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1033
- <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg1: T1): LoDashExplicitWrapper<Function1< T2, R>>;
1034
- <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, plc1: __, arg2: T2): LoDashExplicitWrapper<Function1<T1, R>>;
1035
- <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg1: T1, arg2: T2): LoDashExplicitWrapper<Function0< R>>;
1036
- // arity 3
1037
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>): LoDashExplicitWrapper<Function3<T1, T2, T3, R>>;
1038
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1): LoDashExplicitWrapper<Function2< T2, T3, R>>;
1039
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, arg2: T2): LoDashExplicitWrapper<Function2<T1, T3, R>>;
1040
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2): LoDashExplicitWrapper<Function1< T3, R>>;
1041
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, plc2: __, arg3: T3): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1042
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, arg3: T3): LoDashExplicitWrapper<Function1< T2, R>>;
1043
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function1<T1, R>>;
1044
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function0< R>>;
1045
- // arity 4
1046
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>): LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>;
1047
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1): LoDashExplicitWrapper<Function3< T2, T3, T4, R>>;
1048
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2): LoDashExplicitWrapper<Function3<T1, T3, T4, R>>;
1049
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2): LoDashExplicitWrapper<Function2< T3, T4, R>>;
1050
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, arg3: T3): LoDashExplicitWrapper<Function3<T1, T2, T4, R>>;
1051
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3): LoDashExplicitWrapper<Function2< T2, T4, R>>;
1052
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function2<T1, T4, R>>;
1053
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function1< T4, R>>;
1054
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, plc3: __, arg4: T4): LoDashExplicitWrapper<Function3<T1, T2, T3, R>>;
1055
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, arg4: T4): LoDashExplicitWrapper<Function2< T2, T3, R>>;
1056
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, plc3: __, arg4: T4): LoDashExplicitWrapper<Function2<T1, T3, R>>;
1057
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, arg4: T4): LoDashExplicitWrapper<Function1< T3, R>>;
1058
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1059
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function1< T2, R>>;
1060
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function1<T1, R>>;
1061
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function0< R>>;
1062
- // catch-all
1063
- (...args: any[]): LoDashExplicitWrapper<(...args: any[]) => any>;
1064
- }
1065
-
1066
- // partialRight
1067
-
1068
- interface LoDashStatic {
1069
- /**
1070
- * This method is like _.partial except that partial arguments are appended to those provided
1071
- * to the new function.
1072
- * @param func The function to partially apply arguments to.
1073
- * @param args Arguments to be partially applied.
1074
- * @return The new partially applied function.
1075
- **/
1076
- partialRight: PartialRight;
1077
- }
1078
-
1079
- interface LoDashImplicitWrapper<TValue> {
1080
- /**
1081
- * @see _.partialRight
1082
- */
1083
- partialRight: ImplicitPartialRight;
1084
- }
1085
-
1086
- interface LoDashExplicitWrapper<TValue> {
1087
- /**
1088
- * @see _.partialRight
1089
- */
1090
- partialRight: ExplicitPartialRight;
1091
- }
1092
-
1093
- interface PartialRight {
1094
- // arity 0
1095
- <R>(func: Function0<R>): Function0<R>;
1096
- // arity 1
1097
- <T1, R>(func: Function1<T1, R>): Function1<T1, R>;
1098
- <T1, R>(func: Function1<T1, R>, arg1: T1): Function0<R>;
1099
- // arity 2
1100
- <T1, T2, R>(func: Function2<T1, T2, R>): Function2<T1, T2, R>;
1101
- <T1, T2, R>(func: Function2<T1, T2, R>, arg1: T1, plc2: __): Function1< T2, R>;
1102
- <T1, T2, R>(func: Function2<T1, T2, R>, arg2: T2): Function1<T1, R>;
1103
- <T1, T2, R>(func: Function2<T1, T2, R>, arg1: T1, arg2: T2): Function0< R>;
1104
- // arity 3
1105
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>): Function3<T1, T2, T3, R>;
1106
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, plc2: __, plc3: __): Function2< T2, T3, R>;
1107
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg2: T2, plc3: __): Function2<T1, T3, R>;
1108
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, arg2: T2, plc3: __): Function1< T3, R>;
1109
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg3: T3): Function2<T1, T2, R>;
1110
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, plc2: __, arg3: T3): Function1< T2, R>;
1111
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg2: T2, arg3: T3): Function1<T1, R>;
1112
- <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, arg2: T2, arg3: T3): Function0< R>;
1113
- // arity 4
1114
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>): Function4<T1, T2, T3, T4, R>;
1115
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, plc3: __, plc4: __): Function3< T2, T3, T4, R>;
1116
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg2: T2, plc3: __, plc4: __): Function3<T1, T3, T4, R>;
1117
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, plc3: __, plc4: __): Function2< T3, T4, R>;
1118
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg3: T3, plc4: __): Function3<T1, T2, T4, R>;
1119
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, arg3: T3, plc4: __): Function2< T2, T4, R>;
1120
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg2: T2, arg3: T3, plc4: __): Function2<T1, T4, R>;
1121
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, arg3: T3, plc4: __): Function1< T4, R>;
1122
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg4: T4): Function3<T1, T2, T3, R>;
1123
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, plc3: __, arg4: T4): Function2< T2, T3, R>;
1124
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg2: T2, plc3: __, arg4: T4): Function2<T1, T3, R>;
1125
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, plc3: __, arg4: T4): Function1< T3, R>;
1126
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg3: T3, arg4: T4): Function2<T1, T2, R>;
1127
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, arg3: T3, arg4: T4): Function1< T2, R>;
1128
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg2: T2, arg3: T3, arg4: T4): Function1<T1, R>;
1129
- <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): Function0< R>;
1130
- // catch-all
1131
- (func: (...args: any[]) => any, ...args: any[]): (...args: any[]) => any;
1132
-
1133
- placeholder: __;
1134
- }
1135
-
1136
- interface ImplicitPartialRight {
1137
- // arity 0
1138
- <R>(this: LoDashImplicitWrapper<Function0<R>>): LoDashImplicitWrapper<Function0<R>>;
1139
- // arity 1
1140
- <T1, R>(this: LoDashImplicitWrapper<Function1<T1, R>>): LoDashImplicitWrapper<Function1<T1, R>>;
1141
- <T1, R>(this: LoDashImplicitWrapper<Function1<T1, R>>, arg1: T1): LoDashImplicitWrapper<Function0<R>>;
1142
- // arity 2
1143
- <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1144
- <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg1: T1, plc2: __): LoDashImplicitWrapper<Function1< T2, R>>;
1145
- <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg2: T2): LoDashImplicitWrapper<Function1<T1, R>>;
1146
- <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg1: T1, arg2: T2): LoDashImplicitWrapper<Function0< R>>;
1147
- // arity 3
1148
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>): LoDashImplicitWrapper<Function3<T1, T2, T3, R>>;
1149
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, plc3: __): LoDashImplicitWrapper<Function2< T2, T3, R>>;
1150
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg2: T2, plc3: __): LoDashImplicitWrapper<Function2<T1, T3, R>>;
1151
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, plc3: __): LoDashImplicitWrapper<Function1< T3, R>>;
1152
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg3: T3): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1153
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, arg3: T3): LoDashImplicitWrapper<Function1< T2, R>>;
1154
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function1<T1, R>>;
1155
- <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function0< R>>;
1156
- // arity 4
1157
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>): LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>;
1158
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, plc4: __): LoDashImplicitWrapper<Function3< T2, T3, T4, R>>;
1159
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, plc3: __, plc4: __): LoDashImplicitWrapper<Function3<T1, T3, T4, R>>;
1160
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, plc4: __): LoDashImplicitWrapper<Function2< T3, T4, R>>;
1161
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg3: T3, plc4: __): LoDashImplicitWrapper<Function3<T1, T2, T4, R>>;
1162
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, plc4: __): LoDashImplicitWrapper<Function2< T2, T4, R>>;
1163
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, arg3: T3, plc4: __): LoDashImplicitWrapper<Function2<T1, T4, R>>;
1164
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, plc4: __): LoDashImplicitWrapper<Function1< T4, R>>;
1165
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg4: T4): LoDashImplicitWrapper<Function3<T1, T2, T3, R>>;
1166
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, arg4: T4): LoDashImplicitWrapper<Function2< T2, T3, R>>;
1167
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, plc3: __, arg4: T4): LoDashImplicitWrapper<Function2<T1, T3, R>>;
1168
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, arg4: T4): LoDashImplicitWrapper<Function1< T3, R>>;
1169
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1170
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function1< T2, R>>;
1171
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function1<T1, R>>;
1172
- <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function0< R>>;
1173
- // catch-all
1174
- (...args: any[]): LoDashImplicitWrapper<(...args: any[]) => any>;
1175
- }
1176
-
1177
- interface ExplicitPartialRight {
1178
- // arity 0
1179
- <R>(this: LoDashExplicitWrapper<Function0<R>>): LoDashExplicitWrapper<Function0<R>>;
1180
- // arity 1
1181
- <T1, R>(this: LoDashExplicitWrapper<Function1<T1, R>>): LoDashExplicitWrapper<Function1<T1, R>>;
1182
- <T1, R>(this: LoDashExplicitWrapper<Function1<T1, R>>, arg1: T1): LoDashExplicitWrapper<Function0<R>>;
1183
- // arity 2
1184
- <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1185
- <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg1: T1, plc2: __): LoDashExplicitWrapper<Function1< T2, R>>;
1186
- <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg2: T2): LoDashExplicitWrapper<Function1<T1, R>>;
1187
- <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg1: T1, arg2: T2): LoDashExplicitWrapper<Function0< R>>;
1188
- // arity 3
1189
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>): LoDashExplicitWrapper<Function3<T1, T2, T3, R>>;
1190
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, plc3: __): LoDashExplicitWrapper<Function2< T2, T3, R>>;
1191
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg2: T2, plc3: __): LoDashExplicitWrapper<Function2<T1, T3, R>>;
1192
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, plc3: __): LoDashExplicitWrapper<Function1< T3, R>>;
1193
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg3: T3): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1194
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, arg3: T3): LoDashExplicitWrapper<Function1< T2, R>>;
1195
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function1<T1, R>>;
1196
- <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function0< R>>;
1197
- // arity 4
1198
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>): LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>;
1199
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, plc4: __): LoDashExplicitWrapper<Function3< T2, T3, T4, R>>;
1200
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, plc3: __, plc4: __): LoDashExplicitWrapper<Function3<T1, T3, T4, R>>;
1201
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, plc4: __): LoDashExplicitWrapper<Function2< T3, T4, R>>;
1202
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg3: T3, plc4: __): LoDashExplicitWrapper<Function3<T1, T2, T4, R>>;
1203
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, plc4: __): LoDashExplicitWrapper<Function2< T2, T4, R>>;
1204
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, arg3: T3, plc4: __): LoDashExplicitWrapper<Function2<T1, T4, R>>;
1205
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, plc4: __): LoDashExplicitWrapper<Function1< T4, R>>;
1206
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg4: T4): LoDashExplicitWrapper<Function3<T1, T2, T3, R>>;
1207
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, arg4: T4): LoDashExplicitWrapper<Function2< T2, T3, R>>;
1208
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, plc3: __, arg4: T4): LoDashExplicitWrapper<Function2<T1, T3, R>>;
1209
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, arg4: T4): LoDashExplicitWrapper<Function1< T3, R>>;
1210
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1211
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function1< T2, R>>;
1212
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function1<T1, R>>;
1213
- <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function0< R>>;
1214
- // catch-all
1215
- (...args: any[]): LoDashExplicitWrapper<(...args: any[]) => any>;
1216
- }
1217
-
1218
- // rearg
1219
-
1220
- interface LoDashStatic {
1221
- /**
1222
- * Creates a function that invokes func with arguments arranged according to the specified indexes where the
1223
- * argument value at the first index is provided as the first argument, the argument value at the second index
1224
- * is provided as the second argument, and so on.
1225
- * @param func The function to rearrange arguments for.
1226
- * @param indexes The arranged argument indexes, specified as individual indexes or arrays of indexes.
1227
- * @return Returns the new function.
1228
- */
1229
- rearg(func: (...args: any[]) => any, ...indexes: Array<Many<number>>): (...args: any[]) => any;
1230
- }
1231
-
1232
- interface LoDashImplicitWrapper<TValue> {
1233
- /**
1234
- * @see _.rearg
1235
- */
1236
- rearg(...indexes: Array<Many<number>>): LoDashImplicitWrapper<(...args: any[]) => any>;
1237
- }
1238
-
1239
- interface LoDashExplicitWrapper<TValue> {
1240
- /**
1241
- * @see _.rearg
1242
- */
1243
- rearg(...indexes: Array<Many<number>>): LoDashExplicitWrapper<(...args: any[]) => any>;
1244
- }
1245
-
1246
- // rest
1247
-
1248
- interface LoDashStatic {
1249
- /**
1250
- * Creates a function that invokes func with the this binding of the created function and arguments from start
1251
- * and beyond provided as an array.
1252
- *
1253
- * Note: This method is based on the rest parameter.
1254
- *
1255
- * @param func The function to apply a rest parameter to.
1256
- * @param start The start position of the rest parameter.
1257
- * @return Returns the new function.
1258
- */
1259
- rest(
1260
- func: (...args: any[]) => any,
1261
- start?: number
1262
- ): (...args: any[]) => any;
1263
- }
1264
-
1265
- interface LoDashImplicitWrapper<TValue> {
1266
- /**
1267
- * @see _.rest
1268
- */
1269
- rest(start?: number): LoDashImplicitWrapper<(...args: any[]) => any>;
1270
- }
1271
-
1272
- interface LoDashExplicitWrapper<TValue> {
1273
- /**
1274
- * @see _.rest
1275
- */
1276
- rest(start?: number): LoDashExplicitWrapper<(...args: any[]) => any>;
1277
- }
1278
-
1279
- // spread
1280
-
1281
- interface LoDashStatic {
1282
- /**
1283
- * Creates a function that invokes func with the this binding of the created function and an array of arguments
1284
- * much like Function#apply.
1285
- *
1286
- * Note: This method is based on the spread operator.
1287
- *
1288
- * @param func The function to spread arguments over.
1289
- * @return Returns the new function.
1290
- */
1291
- spread<TResult>(func: (...args: any[]) => TResult): (...args: any[]) => TResult;
1292
-
1293
- /**
1294
- * @see _.spread
1295
- */
1296
- spread<TResult>(func: (...args: any[]) => TResult, start: number): (...args: any[]) => TResult;
1297
- }
1298
-
1299
- interface LoDashImplicitWrapper<TValue> {
1300
- /**
1301
- * @see _.spread
1302
- */
1303
- spread<TResult>(this: LoDashImplicitWrapper<(...args: any[]) => TResult>): LoDashImplicitWrapper<(...args: any[]) => TResult>;
1304
-
1305
- /**
1306
- * @see _.spread
1307
- */
1308
- spread<TResult>(this: LoDashImplicitWrapper<(...args: any[]) => TResult>, start: number): LoDashImplicitWrapper<(...args: any[]) => TResult>;
1309
- }
1310
-
1311
- interface LoDashExplicitWrapper<TValue> {
1312
- /**
1313
- * @see _.spread
1314
- */
1315
- spread<TResult>(this: LoDashExplicitWrapper<(...args: any[]) => TResult>): LoDashExplicitWrapper<(...args: any[]) => TResult>;
1316
-
1317
- /**
1318
- * @see _.spread
1319
- */
1320
- spread<TResult>(this: LoDashExplicitWrapper<(...args: any[]) => TResult>, start: number): LoDashExplicitWrapper<(...args: any[]) => TResult>;
1321
- }
1322
-
1323
- // throttle
1324
-
1325
- interface ThrottleSettings {
1326
- /**
1327
- * If you'd like to disable the leading-edge call, pass this as false.
1328
- */
1329
- leading?: boolean;
1330
-
1331
- /**
1332
- * If you'd like to disable the execution on the trailing-edge, pass false.
1333
- */
1334
- trailing?: boolean;
1335
- }
1336
-
1337
- interface LoDashStatic {
1338
- /**
1339
- * Creates a throttled function that only invokes func at most once per every wait milliseconds. The throttled
1340
- * function comes with a cancel method to cancel delayed invocations and a flush method to immediately invoke
1341
- * them. Provide an options object to indicate that func should be invoked on the leading and/or trailing edge
1342
- * of the wait timeout. Subsequent calls to the throttled function return the result of the last func call.
1343
- *
1344
- * Note: If leading and trailing options are true, func is invoked on the trailing edge of the timeout only if
1345
- * the the throttled function is invoked more than once during the wait timeout.
1346
- *
1347
- * @param func The function to throttle.
1348
- * @param wait The number of milliseconds to throttle invocations to.
1349
- * @param options The options object.
1350
- * @param options.leading Specify invoking on the leading edge of the timeout.
1351
- * @param options.trailing Specify invoking on the trailing edge of the timeout.
1352
- * @return Returns the new throttled function.
1353
- */
1354
- throttle<T extends (...args: any[]) => any>(
1355
- func: T,
1356
- wait?: number,
1357
- options?: ThrottleSettings
1358
- ): T & Cancelable;
1359
- }
1360
-
1361
- interface LoDashImplicitWrapper<TValue> {
1362
- /**
1363
- * @see _.throttle
1364
- */
1365
- throttle(
1366
- wait?: number,
1367
- options?: ThrottleSettings
1368
- ): LoDashImplicitWrapper<TValue & Cancelable>;
1369
- }
1370
-
1371
- interface LoDashExplicitWrapper<TValue> {
1372
- /**
1373
- * @see _.throttle
1374
- */
1375
- throttle(
1376
- wait?: number,
1377
- options?: ThrottleSettings
1378
- ): LoDashExplicitWrapper<TValue & Cancelable>;
1379
- }
1380
-
1381
- // unary
1382
-
1383
- interface LoDashStatic {
1384
- /**
1385
- * Creates a function that accepts up to one argument, ignoring any
1386
- * additional arguments.
1387
- *
1388
- * @category Function
1389
- * @param func The function to cap arguments for.
1390
- * @returns Returns the new function.
1391
- * @example
1392
- *
1393
- * _.map(['6', '8', '10'], _.unary(parseInt));
1394
- * // => [6, 8, 10]
1395
- */
1396
- unary<T, TResult>(func: (arg1: T, ...args: any[]) => TResult): (arg1: T) => TResult;
1397
- }
1398
-
1399
- interface LoDashImplicitWrapper<TValue> {
1400
- /**
1401
- * @see _.unary
1402
- */
1403
- unary<T, TResult>(this: LoDashImplicitWrapper<(arg1: T, ...args: any[]) => TResult>): LoDashImplicitWrapper<(arg1: T) => TResult>;
1404
- }
1405
-
1406
- interface LoDashExplicitWrapper<TValue> {
1407
- /**
1408
- * @see _.unary
1409
- */
1410
- unary<T, TResult>(this: LoDashExplicitWrapper<(arg1: T, ...args: any[]) => TResult>): LoDashExplicitWrapper<(arg1: T) => TResult>;
1411
- }
1412
-
1413
- // wrap
1414
-
1415
- interface LoDashStatic {
1416
- /**
1417
- * Creates a function that provides value to the wrapper function as its first argument. Any additional
1418
- * arguments provided to the function are appended to those provided to the wrapper function. The wrapper is
1419
- * invoked with the this binding of the created function.
1420
- *
1421
- * @param value The value to wrap.
1422
- * @param wrapper The wrapper function.
1423
- * @return Returns the new function.
1424
- */
1425
- wrap<T, TArgs, TResult>(
1426
- value: T,
1427
- wrapper: (value: T, ...args: TArgs[]) => TResult
1428
- ): (...args: TArgs[]) => TResult;
1429
-
1430
- /**
1431
- * @see _.wrap
1432
- */
1433
- wrap<T, TResult>(
1434
- value: T,
1435
- wrapper: (value: T, ...args: any[]) => TResult
1436
- ): (...args: any[]) => TResult;
1437
- }
1438
-
1439
- interface LoDashImplicitWrapper<TValue> {
1440
- /**
1441
- * @see _.wrap
1442
- */
1443
- wrap<TArgs, TResult>(
1444
- wrapper: (value: TValue, ...args: TArgs[]) => TResult
1445
- ): LoDashImplicitWrapper<(...args: TArgs[]) => TResult>;
1446
-
1447
- /**
1448
- * @see _.wrap
1449
- */
1450
- wrap<TResult>(
1451
- wrapper: (value: TValue, ...args: any[]) => TResult
1452
- ): LoDashImplicitWrapper<(...args: any[]) => TResult>;
1453
- }
1454
-
1455
- interface LoDashExplicitWrapper<TValue> {
1456
- /**
1457
- * @see _.wrap
1458
- */
1459
- /**
1460
- * @see _.wrap
1461
- */
1462
- wrap<TArgs, TResult>(
1463
- wrapper: (value: TValue, ...args: TArgs[]) => TResult
1464
- ): LoDashExplicitWrapper<(...args: TArgs[]) => TResult>;
1465
-
1466
- /**
1467
- * @see _.wrap
1468
- */
1469
- wrap<TResult>(
1470
- wrapper: (value: TValue, ...args: any[]) => TResult
1471
- ): LoDashExplicitWrapper<(...args: any[]) => TResult>;
1472
- }
1473
- }
1
+ import _ = require("../index");
2
+ declare module "../index" {
3
+ // after
4
+
5
+ interface LoDashStatic {
6
+ /**
7
+ * The opposite of _.before; this method creates a function that invokes func once it’s called n or more times.
8
+ *
9
+ * @param n The number of calls before func is invoked.
10
+ * @param func The function to restrict.
11
+ * @return Returns the new restricted function.
12
+ */
13
+ after<TFunc extends (...args: any[]) => any>(
14
+ n: number,
15
+ func: TFunc
16
+ ): TFunc;
17
+ }
18
+
19
+ interface LoDashImplicitWrapper<TValue> {
20
+ /**
21
+ * @see _.after
22
+ **/
23
+ after<TFunc extends (...args: any[]) => any>(func: TFunc): LoDashImplicitWrapper<TFunc>;
24
+ }
25
+
26
+ interface LoDashExplicitWrapper<TValue> {
27
+ /**
28
+ * @see _.after
29
+ **/
30
+ after<TFunc extends (...args: any[]) => any>(func: TFunc): LoDashExplicitWrapper<TFunc>;
31
+ }
32
+
33
+ // ary
34
+
35
+ interface LoDashStatic {
36
+ /**
37
+ * Creates a function that accepts up to n arguments ignoring any additional arguments.
38
+ *
39
+ * @param func The function to cap arguments for.
40
+ * @param n The arity cap.
41
+ * @returns Returns the new function.
42
+ */
43
+ ary(
44
+ func: (...args: any[]) => any,
45
+ n?: number
46
+ ): (...args: any[]) => any;
47
+ }
48
+
49
+ interface LoDashImplicitWrapper<TValue> {
50
+ /**
51
+ * @see _.ary
52
+ */
53
+ ary(n?: number): LoDashImplicitWrapper<(...args: any[]) => any>;
54
+ }
55
+
56
+ interface LoDashExplicitWrapper<TValue> {
57
+ /**
58
+ * @see _.ary
59
+ */
60
+ ary(n?: number): LoDashExplicitWrapper<(...args: any[]) => any>;
61
+ }
62
+
63
+ // before
64
+
65
+ interface LoDashStatic {
66
+ /**
67
+ * Creates a function that invokes func, with the this binding and arguments of the created function, while
68
+ * it’s called less than n times. Subsequent calls to the created function return the result of the last func
69
+ * invocation.
70
+ *
71
+ * @param n The number of calls at which func is no longer invoked.
72
+ * @param func The function to restrict.
73
+ * @return Returns the new restricted function.
74
+ */
75
+ before<TFunc extends (...args: any[]) => any>(
76
+ n: number,
77
+ func: TFunc
78
+ ): TFunc;
79
+ }
80
+
81
+ interface LoDashImplicitWrapper<TValue> {
82
+ /**
83
+ * @see _.before
84
+ **/
85
+ before<TFunc extends (...args: any[]) => any>(func: TFunc): LoDashImplicitWrapper<TFunc>;
86
+ }
87
+
88
+ interface LoDashExplicitWrapper<TValue> {
89
+ /**
90
+ * @see _.before
91
+ **/
92
+ before<TFunc extends (...args: any[]) => any>(func: TFunc): LoDashExplicitWrapper<TFunc>;
93
+ }
94
+
95
+ // bind
96
+
97
+ interface FunctionBind {
98
+ placeholder: __;
99
+
100
+ (
101
+ func: (...args: any[]) => any,
102
+ thisArg: any,
103
+ ...partials: any[]
104
+ ): (...args: any[]) => any;
105
+ }
106
+
107
+ interface LoDashStatic {
108
+ /**
109
+ * Creates a function that invokes func with the this binding of thisArg and prepends any additional _.bind
110
+ * arguments to those provided to the bound function.
111
+ *
112
+ * The _.bind.placeholder value, which defaults to _ in monolithic builds, may be used as a placeholder for
113
+ * partially applied arguments.
114
+ *
115
+ * Note: Unlike native Function#bind this method does not set the "length" property of bound functions.
116
+ *
117
+ * @param func The function to bind.
118
+ * @param thisArg The this binding of func.
119
+ * @param partials The arguments to be partially applied.
120
+ * @return Returns the new bound function.
121
+ */
122
+ bind: FunctionBind;
123
+ }
124
+
125
+ interface LoDashImplicitWrapper<TValue> {
126
+ /**
127
+ * @see _.bind
128
+ */
129
+ bind(
130
+ thisArg: any,
131
+ ...partials: any[]
132
+ ): LoDashImplicitWrapper<(...args: any[]) => any>;
133
+ }
134
+
135
+ interface LoDashExplicitWrapper<TValue> {
136
+ /**
137
+ * @see _.bind
138
+ */
139
+ bind(
140
+ thisArg: any,
141
+ ...partials: any[]
142
+ ): LoDashExplicitWrapper<(...args: any[]) => any>;
143
+ }
144
+
145
+ // bindKey
146
+
147
+ interface FunctionBindKey {
148
+ placeholder: __;
149
+
150
+ (
151
+ object: object,
152
+ key: string,
153
+ ...partials: any[]
154
+ ): (...args: any[]) => any;
155
+ }
156
+
157
+ interface LoDashStatic {
158
+ /**
159
+ * Creates a function that invokes the method at object[key] and prepends any additional _.bindKey arguments
160
+ * to those provided to the bound function.
161
+ *
162
+ * This method differs from _.bind by allowing bound functions to reference methods that may be redefined
163
+ * or don’t yet exist. See Peter Michaux’s article for more details.
164
+ *
165
+ * The _.bindKey.placeholder value, which defaults to _ in monolithic builds, may be used as a placeholder
166
+ * for partially applied arguments.
167
+ *
168
+ * @param object The object the method belongs to.
169
+ * @param key The key of the method.
170
+ * @param partials The arguments to be partially applied.
171
+ * @return Returns the new bound function.
172
+ */
173
+ bindKey: FunctionBindKey;
174
+ }
175
+
176
+ interface LoDashImplicitWrapper<TValue> {
177
+ /**
178
+ * @see _.bindKey
179
+ */
180
+ bindKey(
181
+ key: string,
182
+ ...partials: any[]
183
+ ): LoDashImplicitWrapper<(...args: any[]) => any>;
184
+ }
185
+
186
+ interface LoDashExplicitWrapper<TValue> {
187
+ /**
188
+ * @see _.bindKey
189
+ */
190
+ bindKey(
191
+ key: string,
192
+ ...partials: any[]
193
+ ): LoDashExplicitWrapper<(...args: any[]) => any>;
194
+ }
195
+
196
+ // curry
197
+
198
+ interface Curry {
199
+ /**
200
+ * Creates a function that accepts one or more arguments of func that when called either invokes func returning
201
+ * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
202
+ * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
203
+ * @param func The function to curry.
204
+ * @param arity The arity of func.
205
+ * @return Returns the new curried function.
206
+ */
207
+ <T1, R>(func: (t1: T1) => R, arity?: number):
208
+ CurriedFunction1<T1, R>;
209
+ /**
210
+ * Creates a function that accepts one or more arguments of func that when called either invokes func returning
211
+ * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
212
+ * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
213
+ * @param func The function to curry.
214
+ * @param arity The arity of func.
215
+ * @return Returns the new curried function.
216
+ */
217
+ <T1, T2, R>(func: (t1: T1, t2: T2) => R, arity?: number):
218
+ CurriedFunction2<T1, T2, R>;
219
+ /**
220
+ * Creates a function that accepts one or more arguments of func that when called either invokes func returning
221
+ * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
222
+ * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
223
+ * @param func The function to curry.
224
+ * @param arity The arity of func.
225
+ * @return Returns the new curried function.
226
+ */
227
+ <T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3) => R, arity?: number):
228
+ CurriedFunction3<T1, T2, T3, R>;
229
+ /**
230
+ * Creates a function that accepts one or more arguments of func that when called either invokes func returning
231
+ * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
232
+ * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
233
+ * @param func The function to curry.
234
+ * @param arity The arity of func.
235
+ * @return Returns the new curried function.
236
+ */
237
+ <T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4) => R, arity?: number):
238
+ CurriedFunction4<T1, T2, T3, T4, R>;
239
+ /**
240
+ * Creates a function that accepts one or more arguments of func that when called either invokes func returning
241
+ * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
242
+ * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
243
+ * @param func The function to curry.
244
+ * @param arity The arity of func.
245
+ * @return Returns the new curried function.
246
+ */
247
+ <T1, T2, T3, T4, T5, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R, arity?: number):
248
+ CurriedFunction5<T1, T2, T3, T4, T5, R>;
249
+ /**
250
+ * Creates a function that accepts one or more arguments of func that when called either invokes func returning
251
+ * its result, if all func arguments have been provided, or returns a function that accepts one or more of the
252
+ * remaining func arguments, and so on. The arity of func may be specified if func.length is not sufficient.
253
+ * @param func The function to curry.
254
+ * @param arity The arity of func.
255
+ * @return Returns the new curried function.
256
+ */
257
+ (func: (...args: any[]) => any, arity?: number): (...args: any[]) => any;
258
+
259
+ placeholder: __;
260
+ }
261
+
262
+ interface LoDashStatic {
263
+ curry: Curry;
264
+ }
265
+
266
+ interface CurriedFunction1<T1, R> {
267
+ (): CurriedFunction1<T1, R>;
268
+ (t1: T1): R;
269
+ }
270
+
271
+ interface CurriedFunction2<T1, T2, R> {
272
+ (): CurriedFunction2<T1, T2, R>;
273
+ (t1: T1): CurriedFunction1<T2, R>;
274
+ (t1: __, t2: T2): CurriedFunction1<T1, R>;
275
+ (t1: T1, t2: T2): R;
276
+ }
277
+
278
+ interface CurriedFunction3<T1, T2, T3, R> {
279
+ (): CurriedFunction3<T1, T2, T3, R>;
280
+ (t1: T1): CurriedFunction2<T2, T3, R>;
281
+ (t1: __, t2: T2): CurriedFunction2<T1, T3, R>;
282
+ (t1: T1, t2: T2): CurriedFunction1<T3, R>;
283
+ (t1: __, t2: __, t3: T3): CurriedFunction2<T1, T2, R>;
284
+ (t1: T1, t2: __, t3: T3): CurriedFunction1<T2, R>;
285
+ (t1: __, t2: T2, t3: T3): CurriedFunction1<T1, R>;
286
+ (t1: T1, t2: T2, t3: T3): R;
287
+ }
288
+
289
+ interface CurriedFunction4<T1, T2, T3, T4, R> {
290
+ (): CurriedFunction4<T1, T2, T3, T4, R>;
291
+ (t1: T1): CurriedFunction3<T2, T3, T4, R>;
292
+ (t1: __, t2: T2): CurriedFunction3<T1, T3, T4, R>;
293
+ (t1: T1, t2: T2): CurriedFunction2<T3, T4, R>;
294
+ (t1: __, t2: __, t3: T3): CurriedFunction3<T1, T2, T4, R>;
295
+ (t1: __, t2: __, t3: T3): CurriedFunction2<T2, T4, R>;
296
+ (t1: __, t2: T2, t3: T3): CurriedFunction2<T1, T4, R>;
297
+ (t1: T1, t2: T2, t3: T3): CurriedFunction1<T4, R>;
298
+ (t1: __, t2: __, t3: __, t4: T4): CurriedFunction3<T1, T2, T3, R>;
299
+ (t1: T1, t2: __, t3: __, t4: T4): CurriedFunction2<T2, T3, R>;
300
+ (t1: __, t2: T2, t3: __, t4: T4): CurriedFunction2<T1, T3, R>;
301
+ (t1: __, t2: __, t3: T3, t4: T4): CurriedFunction2<T1, T2, R>;
302
+ (t1: T1, t2: T2, t3: __, t4: T4): CurriedFunction1<T3, R>;
303
+ (t1: T1, t2: __, t3: T3, t4: T4): CurriedFunction1<T2, R>;
304
+ (t1: __, t2: T2, t3: T3, t4: T4): CurriedFunction1<T1, R>;
305
+ (t1: T1, t2: T2, t3: T3, t4: T4): R;
306
+ }
307
+
308
+ interface CurriedFunction5<T1, T2, T3, T4, T5, R> {
309
+ (): CurriedFunction5<T1, T2, T3, T4, T5, R>;
310
+ (t1: T1): CurriedFunction4<T2, T3, T4, T5, R>;
311
+ (t1: __, t2: T2): CurriedFunction4<T1, T3, T4, T5, R>;
312
+ (t1: T1, t2: T2): CurriedFunction3<T3, T4, T5, R>;
313
+ (t1: __, t2: __, t3: T3): CurriedFunction4<T1, T2, T4, T5, R>;
314
+ (t1: T1, t2: __, t3: T3): CurriedFunction3<T2, T4, T5, R>;
315
+ (t1: __, t2: T2, t3: T3): CurriedFunction3<T1, T4, T5, R>;
316
+ (t1: T1, t2: T2, t3: T3): CurriedFunction2<T4, T5, R>;
317
+ (t1: __, t2: __, t3: __, t4: T4): CurriedFunction4<T1, T2, T3, T5, R>;
318
+ (t1: T1, t2: __, t3: __, t4: T4): CurriedFunction3<T2, T3, T5, R>;
319
+ (t1: __, t2: T2, t3: __, t4: T4): CurriedFunction3<T1, T3, T5, R>;
320
+ (t1: __, t2: __, t3: T3, t4: T4): CurriedFunction3<T1, T2, T5, R>;
321
+ (t1: T1, t2: T2, t3: __, t4: T4): CurriedFunction2<T3, T5, R>;
322
+ (t1: T1, t2: __, t3: T3, t4: T4): CurriedFunction2<T2, T5, R>;
323
+ (t1: __, t2: T2, t3: T3, t4: T4): CurriedFunction2<T1, T5, R>;
324
+ (t1: T1, t2: T2, t3: T3, t4: T4): CurriedFunction1<T5, R>;
325
+ (t1: __, t2: __, t3: __, t4: __, t5: T5): CurriedFunction4<T1, T2, T3, T4, R>;
326
+ (t1: T1, t2: __, t3: __, t4: __, t5: T5): CurriedFunction3<T2, T3, T4, R>;
327
+ (t1: __, t2: T2, t3: __, t4: __, t5: T5): CurriedFunction3<T1, T3, T4, R>;
328
+ (t1: __, t2: __, t3: T3, t4: __, t5: T5): CurriedFunction3<T1, T2, T4, R>;
329
+ (t1: __, t2: __, t3: __, t4: T4, t5: T5): CurriedFunction3<T1, T2, T3, R>;
330
+ (t1: T1, t2: T2, t3: __, t4: __, t5: T5): CurriedFunction2<T3, T4, R>;
331
+ (t1: T1, t2: __, t3: T3, t4: __, t5: T5): CurriedFunction2<T2, T4, R>;
332
+ (t1: T1, t2: __, t3: __, t4: T4, t5: T5): CurriedFunction2<T2, T3, R>;
333
+ (t1: __, t2: T2, t3: T3, t4: __, t5: T5): CurriedFunction2<T1, T4, R>;
334
+ (t1: __, t2: T2, t3: __, t4: T4, t5: T5): CurriedFunction2<T1, T3, R>;
335
+ (t1: __, t2: __, t3: T3, t4: T4, t5: T5): CurriedFunction2<T1, T2, R>;
336
+ (t1: T1, t2: T2, t3: T3, t4: __, t5: T5): CurriedFunction1<T4, R>;
337
+ (t1: T1, t2: T2, t3: __, t4: T4, t5: T5): CurriedFunction1<T3, R>;
338
+ (t1: T1, t2: __, t3: T3, t4: T4, t5: T5): CurriedFunction1<T2, R>;
339
+ (t1: __, t2: T2, t3: T3, t4: T4, t5: T5): CurriedFunction1<T1, R>;
340
+ (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5): R;
341
+ }
342
+
343
+ interface RightCurriedFunction1<T1, R> {
344
+ (): RightCurriedFunction1<T1, R>;
345
+ (t1: T1): R;
346
+ }
347
+
348
+ interface RightCurriedFunction2<T1, T2, R> {
349
+ (): RightCurriedFunction2<T1, T2, R>;
350
+ (t2: T2): RightCurriedFunction1<T1, R>;
351
+ (t1: T1, t2: __): RightCurriedFunction1<T2, R>;
352
+ (t1: T1, t2: T2): R;
353
+ }
354
+
355
+ interface RightCurriedFunction3<T1, T2, T3, R> {
356
+ (): RightCurriedFunction3<T1, T2, T3, R>;
357
+ (t3: T3): RightCurriedFunction2<T1, T2, R>;
358
+ (t2: T2, t3: __): RightCurriedFunction2<T1, T3, R>;
359
+ (t2: T2, t3: T3): RightCurriedFunction1<T1, R>;
360
+ (t1: T1, t2: __, t3: __): RightCurriedFunction2<T2, T3, R>;
361
+ (t1: T1, t2: T2, t3: __): RightCurriedFunction1<T3, R>;
362
+ (t1: T1, t2: __, t3: T3): RightCurriedFunction1<T2, R>;
363
+ (t1: T1, t2: T2, t3: T3): R;
364
+ }
365
+
366
+ interface RightCurriedFunction4<T1, T2, T3, T4, R> {
367
+ (): RightCurriedFunction4<T1, T2, T3, T4, R>;
368
+ (t4: T4): RightCurriedFunction3<T1, T2, T3, R>;
369
+ (t3: T3, t4: __): RightCurriedFunction3<T1, T2, T4, R>;
370
+ (t3: T3, t4: T4): RightCurriedFunction2<T1, T2, R>;
371
+ (t2: T2, t3: __, t4: __): RightCurriedFunction3<T1, T3, T4, R>;
372
+ (t2: T2, t3: T3, t4: __): RightCurriedFunction2<T1, T4, R>;
373
+ (t2: T2, t3: __, t4: T4): RightCurriedFunction2<T1, T3, R>;
374
+ (t2: T2, t3: T3, t4: T4): RightCurriedFunction1<T1, R>;
375
+ (t1: T1, t2: __, t3: __, t4: __): RightCurriedFunction3<T2, T3, T4, R>;
376
+ (t1: T1, t2: T2, t3: __, t4: __): RightCurriedFunction2<T3, T4, R>;
377
+ (t1: T1, t2: __, t3: T3, t4: __): RightCurriedFunction2<T2, T4, R>;
378
+ (t1: T1, t2: __, t3: __, t4: T4): RightCurriedFunction2<T2, T3, R>;
379
+ (t1: T1, t2: T2, t3: T3, t4: __): RightCurriedFunction1<T4, R>;
380
+ (t1: T1, t2: T2, t3: __, t4: T4): RightCurriedFunction1<T3, R>;
381
+ (t1: T1, t2: __, t3: T3, t4: T4): RightCurriedFunction1<T2, R>;
382
+ (t1: T1, t2: T2, t3: T3, t4: T4): R;
383
+ }
384
+
385
+ interface RightCurriedFunction5<T1, T2, T3, T4, T5, R> {
386
+ (): RightCurriedFunction5<T1, T2, T3, T4, T5, R>;
387
+ (t5: T5): RightCurriedFunction4<T1, T2, T3, T4, R>;
388
+ (t4: T4, t5: __): RightCurriedFunction4<T1, T2, T3, T5, R>;
389
+ (t4: T4, t5: T5): RightCurriedFunction3<T1, T2, T3, R>;
390
+ (t3: T3, t4: __, t5: __): RightCurriedFunction4<T1, T2, T4, T5, R>;
391
+ (t3: T3, t4: T4, t5: __): RightCurriedFunction3<T1, T2, T5, R>;
392
+ (t3: T3, t4: __, t5: T5): RightCurriedFunction3<T1, T2, T4, R>;
393
+ (t3: T3, t4: T4, t5: T5): RightCurriedFunction2<T1, T2, R>;
394
+ (t2: T2, t3: __, t4: __, t5: __): RightCurriedFunction4<T1, T3, T4, T5, R>;
395
+ (t2: T2, t3: T3, t4: __, t5: __): RightCurriedFunction3<T1, T4, T5, R>;
396
+ (t2: T2, t3: __, t4: T4, t5: __): RightCurriedFunction3<T1, T3, T5, R>;
397
+ (t2: T2, t3: __, t4: __, t5: T5): RightCurriedFunction3<T1, T3, T4, R>;
398
+ (t2: T2, t3: T3, t4: T4, t5: __): RightCurriedFunction2<T1, T5, R>;
399
+ (t2: T2, t3: T3, t4: __, t5: T5): RightCurriedFunction2<T1, T4, R>;
400
+ (t2: T2, t3: __, t4: T4, t5: T5): RightCurriedFunction2<T1, T3, R>;
401
+ (t2: T2, t3: T3, t4: T4, t5: T5): RightCurriedFunction1<T1, R>;
402
+ (t1: T1, t2: __, t3: __, t4: __, t5: __): RightCurriedFunction4<T2, T3, T4, T5, R>;
403
+ (t1: T1, t2: T2, t3: __, t4: __, t5: __): RightCurriedFunction3<T3, T4, T5, R>;
404
+ (t1: T1, t2: __, t3: T3, t4: __, t5: __): RightCurriedFunction3<T2, T4, T5, R>;
405
+ (t1: T1, t2: __, t3: __, t4: T4, t5: __): RightCurriedFunction3<T2, T3, T5, R>;
406
+ (t1: T1, t2: __, t3: __, t4: __, t5: T5): RightCurriedFunction3<T2, T3, T4, R>;
407
+ (t1: T1, t2: T2, t3: T3, t4: __, t5: __): RightCurriedFunction2<T4, T5, R>;
408
+ (t1: T1, t2: T2, t3: __, t4: T4, t5: __): RightCurriedFunction2<T3, T5, R>;
409
+ (t1: T1, t2: T2, t3: __, t4: __, t5: T5): RightCurriedFunction2<T3, T4, R>;
410
+ (t1: T1, t2: __, t3: T3, t4: T4, t5: __): RightCurriedFunction2<T2, T5, R>;
411
+ (t1: T1, t2: __, t3: T3, t4: __, t5: T5): RightCurriedFunction2<T2, T4, R>;
412
+ (t1: T1, t2: __, t3: __, t4: T4, t5: T5): RightCurriedFunction2<T2, T3, R>;
413
+ (t1: T1, t2: T2, t3: T3, t4: T4, t5: __): RightCurriedFunction1<T5, R>;
414
+ (t1: T1, t2: T2, t3: T3, t4: __, t5: T5): RightCurriedFunction1<T4, R>;
415
+ (t1: T1, t2: T2, t3: __, t4: T4, t5: T5): RightCurriedFunction1<T3, R>;
416
+ (t1: T1, t2: __, t3: T3, t4: T4, t5: T5): RightCurriedFunction1<T2, R>;
417
+ (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5): R;
418
+ }
419
+
420
+ interface LoDashImplicitWrapper<TValue> {
421
+ /**
422
+ * @see _.curry
423
+ **/
424
+ curry<T1, R>(this: LoDashImplicitWrapper<(t1: T1) => R>, arity?: number):
425
+ LoDashImplicitWrapper<CurriedFunction1<T1, R>>;
426
+
427
+ /**
428
+ * @see _.curry
429
+ **/
430
+ curry<T1, T2, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2) => R>, arity?: number):
431
+ LoDashImplicitWrapper<CurriedFunction2<T1, T2, R>>;
432
+
433
+ /**
434
+ * @see _.curry
435
+ **/
436
+ curry<T1, T2, T3, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3) => R>, arity?: number):
437
+ LoDashImplicitWrapper<CurriedFunction3<T1, T2, T3, R>>;
438
+
439
+ /**
440
+ * @see _.curry
441
+ **/
442
+ curry<T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4) => R>, arity?: number):
443
+ LoDashImplicitWrapper<CurriedFunction4<T1, T2, T3, T4, R>>;
444
+
445
+ /**
446
+ * @see _.curry
447
+ **/
448
+ curry<T1, T2, T3, T4, T5, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R>, arity?: number):
449
+ LoDashImplicitWrapper<CurriedFunction5<T1, T2, T3, T4, T5, R>>;
450
+
451
+ /**
452
+ * @see _.curry
453
+ **/
454
+ curry(arity?: number): LoDashImplicitWrapper<(...args: any[]) => any>;
455
+ }
456
+
457
+ interface LoDashExplicitWrapper<TValue> {
458
+ /**
459
+ * @see _.curry
460
+ **/
461
+ curry<T1, R>(this: LoDashExplicitWrapper<(t1: T1) => R>):
462
+ LoDashExplicitWrapper<CurriedFunction1<T1, R>>;
463
+
464
+ /**
465
+ * @see _.curry
466
+ **/
467
+ curry<T1, T2, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2) => R>):
468
+ LoDashExplicitWrapper<CurriedFunction2<T1, T2, R>>;
469
+
470
+ /**
471
+ * @see _.curry
472
+ **/
473
+ curry<T1, T2, T3, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3) => R>):
474
+ LoDashExplicitWrapper<CurriedFunction3<T1, T2, T3, R>>;
475
+
476
+ /**
477
+ * @see _.curry
478
+ **/
479
+ curry<T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4) => R>):
480
+ LoDashExplicitWrapper<CurriedFunction4<T1, T2, T3, T4, R>>;
481
+
482
+ /**
483
+ * @see _.curry
484
+ **/
485
+ curry<T1, T2, T3, T4, T5, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R>):
486
+ LoDashExplicitWrapper<CurriedFunction5<T1, T2, T3, T4, T5, R>>;
487
+
488
+ /**
489
+ * @see _.curry
490
+ **/
491
+ curry(arity?: number): LoDashExplicitWrapper<(...args: any[]) => any>;
492
+ }
493
+
494
+ // curryRight
495
+
496
+ interface CurryRight {
497
+ /**
498
+ * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
499
+ * instead of _.partial.
500
+ * @param func The function to curry.
501
+ * @param arity The arity of func.
502
+ * @return Returns the new curried function.
503
+ */
504
+ <T1, R>(func: (t1: T1) => R, arity?: number):
505
+ RightCurriedFunction1<T1, R>;
506
+ /**
507
+ * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
508
+ * instead of _.partial.
509
+ * @param func The function to curry.
510
+ * @param arity The arity of func.
511
+ * @return Returns the new curried function.
512
+ */
513
+ <T1, T2, R>(func: (t1: T1, t2: T2) => R, arity?: number):
514
+ RightCurriedFunction2<T1, T2, R>;
515
+ /**
516
+ * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
517
+ * instead of _.partial.
518
+ * @param func The function to curry.
519
+ * @param arity The arity of func.
520
+ * @return Returns the new curried function.
521
+ */
522
+ <T1, T2, T3, R>(func: (t1: T1, t2: T2, t3: T3) => R, arity?: number):
523
+ RightCurriedFunction3<T1, T2, T3, R>;
524
+ /**
525
+ * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
526
+ * instead of _.partial.
527
+ * @param func The function to curry.
528
+ * @param arity The arity of func.
529
+ * @return Returns the new curried function.
530
+ */
531
+ <T1, T2, T3, T4, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4) => R, arity?: number):
532
+ RightCurriedFunction4<T1, T2, T3, T4, R>;
533
+ /**
534
+ * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
535
+ * instead of _.partial.
536
+ * @param func The function to curry.
537
+ * @param arity The arity of func.
538
+ * @return Returns the new curried function.
539
+ */
540
+ <T1, T2, T3, T4, T5, R>(func: (t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R, arity?: number):
541
+ RightCurriedFunction5<T1, T2, T3, T4, T5, R>;
542
+ /**
543
+ * This method is like _.curry except that arguments are applied to func in the manner of _.partialRight
544
+ * instead of _.partial.
545
+ * @param func The function to curry.
546
+ * @param arity The arity of func.
547
+ * @return Returns the new curried function.
548
+ */
549
+ (func: (...args: any[]) => any, arity?: number): (...args: any[]) => any;
550
+
551
+ placeholder: __;
552
+ }
553
+
554
+ interface LoDashStatic {
555
+ curryRight: CurryRight;
556
+ }
557
+
558
+ interface LoDashImplicitWrapper<TValue> {
559
+ /**
560
+ * @see _.curryRight
561
+ **/
562
+ curryRight<T1, R>(this: LoDashImplicitWrapper<(t1: T1) => R>, arity?: number):
563
+ LoDashImplicitWrapper<RightCurriedFunction1<T1, R>>;
564
+
565
+ /**
566
+ * @see _.curryRight
567
+ **/
568
+ curryRight<T1, T2, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2) => R>, arity?: number):
569
+ LoDashImplicitWrapper<RightCurriedFunction2<T1, T2, R>>;
570
+
571
+ /**
572
+ * @see _.curryRight
573
+ **/
574
+ curryRight<T1, T2, T3, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3) => R>, arity?: number):
575
+ LoDashImplicitWrapper<RightCurriedFunction3<T1, T2, T3, R>>;
576
+
577
+ /**
578
+ * @see _.curryRight
579
+ **/
580
+ curryRight<T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4) => R>, arity?: number):
581
+ LoDashImplicitWrapper<RightCurriedFunction4<T1, T2, T3, T4, R>>;
582
+
583
+ /**
584
+ * @see _.curryRight
585
+ **/
586
+ curryRight<T1, T2, T3, T4, T5, R>(this: LoDashImplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R>, arity?: number):
587
+ LoDashImplicitWrapper<RightCurriedFunction5<T1, T2, T3, T4, T5, R>>;
588
+
589
+ /**
590
+ * @see _.curryRight
591
+ **/
592
+ curryRight(arity?: number): LoDashImplicitWrapper<(...args: any[]) => any>;
593
+ }
594
+
595
+ interface LoDashExplicitWrapper<TValue> {
596
+ /**
597
+ * @see _.curryRight
598
+ **/
599
+ curryRight<T1, R>(this: LoDashExplicitWrapper<(t1: T1) => R>, arity?: number):
600
+ LoDashExplicitWrapper<RightCurriedFunction1<T1, R>>;
601
+
602
+ /**
603
+ * @see _.curryRight
604
+ **/
605
+ curryRight<T1, T2, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2) => R>, arity?: number):
606
+ LoDashExplicitWrapper<RightCurriedFunction2<T1, T2, R>>;
607
+
608
+ /**
609
+ * @see _.curryRight
610
+ **/
611
+ curryRight<T1, T2, T3, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3) => R>, arity?: number):
612
+ LoDashExplicitWrapper<RightCurriedFunction3<T1, T2, T3, R>>;
613
+
614
+ /**
615
+ * @see _.curryRight
616
+ **/
617
+ curryRight<T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4) => R>, arity?: number):
618
+ LoDashExplicitWrapper<RightCurriedFunction4<T1, T2, T3, T4, R>>;
619
+
620
+ /**
621
+ * @see _.curryRight
622
+ **/
623
+ curryRight<T1, T2, T3, T4, T5, R>(this: LoDashExplicitWrapper<(t1: T1, t2: T2, t3: T3, t4: T4, t5: T5) => R>, arity?: number):
624
+ LoDashExplicitWrapper<RightCurriedFunction5<T1, T2, T3, T4, T5, R>>;
625
+
626
+ /**
627
+ * @see _.curryRight
628
+ **/
629
+ curryRight(arity?: number): LoDashExplicitWrapper<(...args: any[]) => any>;
630
+ }
631
+
632
+ // debounce
633
+
634
+ interface DebounceSettings {
635
+ /**
636
+ * Specify invoking on the leading edge of the timeout.
637
+ */
638
+ leading?: boolean;
639
+
640
+ /**
641
+ * The maximum time func is allowed to be delayed before it’s invoked.
642
+ */
643
+ maxWait?: number;
644
+
645
+ /**
646
+ * Specify invoking on the trailing edge of the timeout.
647
+ */
648
+ trailing?: boolean;
649
+ }
650
+
651
+ interface LoDashStatic {
652
+ /**
653
+ * Creates a debounced function that delays invoking func until after wait milliseconds have elapsed since
654
+ * the last time the debounced function was invoked. The debounced function comes with a cancel method to
655
+ * cancel delayed invocations and a flush method to immediately invoke them. Provide an options object to
656
+ * indicate that func should be invoked on the leading and/or trailing edge of the wait timeout. Subsequent
657
+ * calls to the debounced function return the result of the last func invocation.
658
+ *
659
+ * Note: If leading and trailing options are true, func is invoked on the trailing edge of the timeout only
660
+ * if the the debounced function is invoked more than once during the wait timeout.
661
+ *
662
+ * See David Corbacho’s article for details over the differences between _.debounce and _.throttle.
663
+ *
664
+ * @param func The function to debounce.
665
+ * @param wait The number of milliseconds to delay.
666
+ * @param options The options object.
667
+ * @param options.leading Specify invoking on the leading edge of the timeout.
668
+ * @param options.maxWait The maximum time func is allowed to be delayed before it’s invoked.
669
+ * @param options.trailing Specify invoking on the trailing edge of the timeout.
670
+ * @return Returns the new debounced function.
671
+ */
672
+ debounce<T extends (...args: any[]) => any>(
673
+ func: T,
674
+ wait?: number,
675
+ options?: DebounceSettings
676
+ ): T & Cancelable;
677
+ }
678
+
679
+ interface LoDashImplicitWrapper<TValue> {
680
+ /**
681
+ * @see _.debounce
682
+ */
683
+ debounce(
684
+ wait?: number,
685
+ options?: DebounceSettings
686
+ ): LoDashImplicitWrapper<TValue & Cancelable>;
687
+ }
688
+
689
+ interface LoDashExplicitWrapper<TValue> {
690
+ /**
691
+ * @see _.debounce
692
+ */
693
+ debounce(
694
+ wait?: number,
695
+ options?: DebounceSettings
696
+ ): LoDashExplicitWrapper<TValue & Cancelable>;
697
+ }
698
+
699
+ // defer
700
+
701
+ interface LoDashStatic {
702
+ /**
703
+ * Defers invoking the func until the current call stack has cleared. Any additional arguments are provided to
704
+ * func when it’s invoked.
705
+ *
706
+ * @param func The function to defer.
707
+ * @param args The arguments to invoke the function with.
708
+ * @return Returns the timer id.
709
+ */
710
+ defer(
711
+ func: (...args: any[]) => any,
712
+ ...args: any[]
713
+ ): number;
714
+ }
715
+
716
+ interface LoDashImplicitWrapper<TValue> {
717
+ /**
718
+ * @see _.defer
719
+ */
720
+ defer(...args: any[]): LoDashImplicitWrapper<number>;
721
+ }
722
+
723
+ interface LoDashExplicitWrapper<TValue> {
724
+ /**
725
+ * @see _.defer
726
+ */
727
+ defer(...args: any[]): LoDashExplicitWrapper<number>;
728
+ }
729
+
730
+ // delay
731
+
732
+ interface LoDashStatic {
733
+ /**
734
+ * Invokes func after wait milliseconds. Any additional arguments are provided to func when it’s invoked.
735
+ *
736
+ * @param func The function to delay.
737
+ * @param wait The number of milliseconds to delay invocation.
738
+ * @param args The arguments to invoke the function with.
739
+ * @return Returns the timer id.
740
+ */
741
+ delay(
742
+ func: (...args: any[]) => any,
743
+ wait: number,
744
+ ...args: any[]
745
+ ): number;
746
+ }
747
+
748
+ interface LoDashImplicitWrapper<TValue> {
749
+ /**
750
+ * @see _.delay
751
+ */
752
+ delay(
753
+ wait: number,
754
+ ...args: any[]
755
+ ): LoDashImplicitWrapper<number>;
756
+ }
757
+
758
+ interface LoDashExplicitWrapper<TValue> {
759
+ /**
760
+ * @see _.delay
761
+ */
762
+ delay(
763
+ wait: number,
764
+ ...args: any[]
765
+ ): LoDashExplicitWrapper<number>;
766
+ }
767
+
768
+ // flip
769
+
770
+ interface LoDashStatic {
771
+ /**
772
+ * Creates a function that invokes `func` with arguments reversed.
773
+ *
774
+ * @category Function
775
+ * @param func The function to flip arguments for.
776
+ * @returns Returns the new function.
777
+ * @example
778
+ *
779
+ * var flipped = _.flip(function() {
780
+ * return _.toArray(arguments);
781
+ * });
782
+ *
783
+ * flipped('a', 'b', 'c', 'd');
784
+ * // => ['d', 'c', 'b', 'a']
785
+ */
786
+ flip<T extends (...args: any[]) => any>(func: T): T;
787
+ }
788
+
789
+ interface LoDashWrapper<TValue> {
790
+ /**
791
+ * @see _.flip
792
+ */
793
+ flip(): this;
794
+ }
795
+
796
+ // memoize
797
+
798
+ interface MemoizedFunction {
799
+ cache: MapCache;
800
+ }
801
+
802
+ interface LoDashStatic {
803
+ /**
804
+ * Creates a function that memoizes the result of func. If resolver is provided it determines the cache key for
805
+ * storing the result based on the arguments provided to the memoized function. By default, the first argument
806
+ * provided to the memoized function is coerced to a string and used as the cache key. The func is invoked with
807
+ * the this binding of the memoized function.
808
+ *
809
+ * @param func The function to have its output memoized.
810
+ * @param resolver The function to resolve the cache key.
811
+ * @return Returns the new memoizing function.
812
+ */
813
+ memoize: {
814
+ <T extends (...args: any[]) => any>(func: T, resolver?: (...args: any[]) => any): T & MemoizedFunction;
815
+ Cache: MapCacheConstructor;
816
+ };
817
+ }
818
+
819
+ interface LoDashImplicitWrapper<TValue> {
820
+ /**
821
+ * @see _.memoize
822
+ */
823
+ memoize(resolver?: (...args: any[]) => any): LoDashImplicitWrapper<TValue & MemoizedFunction>;
824
+ }
825
+
826
+ interface LoDashExplicitWrapper<TValue> {
827
+ /**
828
+ * @see _.memoize
829
+ */
830
+ memoize(resolver?: (...args: any[]) => any): LoDashExplicitWrapper<TValue & MemoizedFunction>;
831
+ }
832
+
833
+ // negate
834
+
835
+ interface LoDashStatic {
836
+ /**
837
+ * Creates a function that negates the result of the predicate func. The func predicate is invoked with
838
+ * the this binding and arguments of the created function.
839
+ *
840
+ * @param predicate The predicate to negate.
841
+ * @return Returns the new function.
842
+ */
843
+ negate<T extends (...args: any[]) => any>(predicate: T): T;
844
+ }
845
+
846
+ interface LoDashWrapper<TValue> {
847
+ /**
848
+ * @see _.negate
849
+ */
850
+ negate(): this;
851
+ }
852
+
853
+ // once
854
+
855
+ interface LoDashStatic {
856
+ /**
857
+ * Creates a function that is restricted to invoking func once. Repeat calls to the function return the value
858
+ * of the first call. The func is invoked with the this binding and arguments of the created function.
859
+ *
860
+ * @param func The function to restrict.
861
+ * @return Returns the new restricted function.
862
+ */
863
+ once<T extends (...args: any[]) => any>(func: T): T;
864
+ }
865
+
866
+ interface LoDashWrapper<TValue> {
867
+ /**
868
+ * @see _.once
869
+ */
870
+ once(): this;
871
+ }
872
+
873
+ // overArgs
874
+
875
+ interface LoDashStatic {
876
+ /**
877
+ * Creates a function that runs each argument through a corresponding transform function.
878
+ *
879
+ * @param func The function to wrap.
880
+ * @param transforms The functions to transform arguments, specified as individual functions or arrays
881
+ * of functions.
882
+ * @return Returns the new function.
883
+ */
884
+ overArgs(
885
+ func: (...args: any[]) => any,
886
+ ...transforms: Array<Many<(...args: any[]) => any>>
887
+ ): (...args: any[]) => any;
888
+ }
889
+
890
+ interface LoDashImplicitWrapper<TValue> {
891
+ /**
892
+ * @see _.overArgs
893
+ */
894
+ overArgs(...transforms: Array<Many<(...args: any[]) => any>>): LoDashImplicitWrapper<(...args: any[]) => any>;
895
+ }
896
+
897
+ interface LoDashExplicitWrapper<TValue> {
898
+ /**
899
+ * @see _.overArgs
900
+ */
901
+ overArgs(...transforms: Array<Many<(...args: any[]) => any>>): LoDashExplicitWrapper<(...args: any[]) => any>;
902
+ }
903
+
904
+ // partial
905
+
906
+ interface LoDashStatic {
907
+ /**
908
+ * Creates a function that, when called, invokes func with any additional partial arguments
909
+ * prepended to those provided to the new function. This method is similar to _.bind except
910
+ * it does not alter the this binding.
911
+ * @param func The function to partially apply arguments to.
912
+ * @param args Arguments to be partially applied.
913
+ * @return The new partially applied function.
914
+ **/
915
+ partial: Partial;
916
+ }
917
+
918
+ interface LoDashImplicitWrapper<TValue> {
919
+ /**
920
+ * @see _.partial
921
+ */
922
+ partial: ImplicitPartial;
923
+ }
924
+
925
+ interface LoDashExplicitWrapper<TValue> {
926
+ /**
927
+ * @see _.partial
928
+ */
929
+ partial: ExplicitPartial;
930
+ }
931
+
932
+ /** The placeholder, to be used in curried functions */
933
+ type __ = LoDashStatic;
934
+
935
+ type Function0<R> = () => R;
936
+ type Function1<T1, R> = (t1: T1) => R;
937
+ type Function2<T1, T2, R> = (t1: T1, t2: T2) => R;
938
+ type Function3<T1, T2, T3, R> = (t1: T1, t2: T2, t3: T3) => R;
939
+ type Function4<T1, T2, T3, T4, R> = (t1: T1, t2: T2, t3: T3, t4: T4) => R;
940
+
941
+ interface Partial {
942
+ // arity 0
943
+ <R>(func: Function0<R>): Function0<R>;
944
+ // arity 1
945
+ <T1, R>(func: Function1<T1, R>): Function1<T1, R>;
946
+ <T1, R>(func: Function1<T1, R>, arg1: T1): Function0<R>;
947
+ // arity 2
948
+ <T1, T2, R>(func: Function2<T1, T2, R>): Function2<T1, T2, R>;
949
+ <T1, T2, R>(func: Function2<T1, T2, R>, arg1: T1): Function1< T2, R>;
950
+ <T1, T2, R>(func: Function2<T1, T2, R>, plc1: __, arg2: T2): Function1<T1, R>;
951
+ <T1, T2, R>(func: Function2<T1, T2, R>, arg1: T1, arg2: T2): Function0< R>;
952
+ // arity 3
953
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>): Function3<T1, T2, T3, R>;
954
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1): Function2< T2, T3, R>;
955
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, plc1: __, arg2: T2): Function2<T1, T3, R>;
956
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, arg2: T2): Function1< T3, R>;
957
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, plc1: __, plc2: __, arg3: T3): Function2<T1, T2, R>;
958
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, plc2: __, arg3: T3): Function1< T2, R>;
959
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, plc1: __, arg2: T2, arg3: T3): Function1<T1, R>;
960
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, arg2: T2, arg3: T3): Function0< R>;
961
+ // arity 4
962
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>): Function4<T1, T2, T3, T4, R>;
963
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1): Function3< T2, T3, T4, R>;
964
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, arg2: T2): Function3<T1, T3, T4, R>;
965
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2): Function2< T3, T4, R>;
966
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, plc2: __, arg3: T3): Function3<T1, T2, T4, R>;
967
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, arg3: T3): Function2< T2, T4, R>;
968
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, arg2: T2, arg3: T3): Function2<T1, T4, R>;
969
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, arg3: T3): Function1< T4, R>;
970
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, plc2: __, plc3: __, arg4: T4): Function3<T1, T2, T3, R>;
971
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, plc3: __, arg4: T4): Function2< T2, T3, R>;
972
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, arg2: T2, plc3: __, arg4: T4): Function2<T1, T3, R>;
973
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, plc3: __, arg4: T4): Function1< T3, R>;
974
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, plc2: __, arg3: T3, arg4: T4): Function2<T1, T2, R>;
975
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, arg3: T3, arg4: T4): Function1< T2, R>;
976
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, plc1: __, arg2: T2, arg3: T3, arg4: T4): Function1<T1, R>;
977
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): Function0< R>;
978
+ // catch-all
979
+ (func: (...args: any[]) => any, ...args: any[]): (...args: any[]) => any;
980
+
981
+ placeholder: __;
982
+ }
983
+
984
+ interface ImplicitPartial {
985
+ // arity 0
986
+ <R>(this: LoDashImplicitWrapper<Function0<R>>): LoDashImplicitWrapper<Function0<R>>;
987
+ // arity 1
988
+ <T1, R>(this: LoDashImplicitWrapper<Function1<T1, R>>): LoDashImplicitWrapper<Function1<T1, R>>;
989
+ <T1, R>(this: LoDashImplicitWrapper<Function1<T1, R>>, arg1: T1): LoDashImplicitWrapper<Function0<R>>;
990
+ // arity 2
991
+ <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>): LoDashImplicitWrapper<Function2<T1, T2, R>>;
992
+ <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg1: T1): LoDashImplicitWrapper<Function1< T2, R>>;
993
+ <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, plc1: __, arg2: T2): LoDashImplicitWrapper<Function1<T1, R>>;
994
+ <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg1: T1, arg2: T2): LoDashImplicitWrapper<Function0< R>>;
995
+ // arity 3
996
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>): LoDashImplicitWrapper<Function3<T1, T2, T3, R>>;
997
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1): LoDashImplicitWrapper<Function2< T2, T3, R>>;
998
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, arg2: T2): LoDashImplicitWrapper<Function2<T1, T3, R>>;
999
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2): LoDashImplicitWrapper<Function1< T3, R>>;
1000
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, plc2: __, arg3: T3): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1001
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, arg3: T3): LoDashImplicitWrapper<Function1< T2, R>>;
1002
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function1<T1, R>>;
1003
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function0< R>>;
1004
+ // arity 4
1005
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>): LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>;
1006
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1): LoDashImplicitWrapper<Function3< T2, T3, T4, R>>;
1007
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2): LoDashImplicitWrapper<Function3<T1, T3, T4, R>>;
1008
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2): LoDashImplicitWrapper<Function2< T3, T4, R>>;
1009
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, arg3: T3): LoDashImplicitWrapper<Function3<T1, T2, T4, R>>;
1010
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3): LoDashImplicitWrapper<Function2< T2, T4, R>>;
1011
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function2<T1, T4, R>>;
1012
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function1< T4, R>>;
1013
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, plc3: __, arg4: T4): LoDashImplicitWrapper<Function3<T1, T2, T3, R>>;
1014
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, arg4: T4): LoDashImplicitWrapper<Function2< T2, T3, R>>;
1015
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, plc3: __, arg4: T4): LoDashImplicitWrapper<Function2<T1, T3, R>>;
1016
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, arg4: T4): LoDashImplicitWrapper<Function1< T3, R>>;
1017
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1018
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function1< T2, R>>;
1019
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function1<T1, R>>;
1020
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function0< R>>;
1021
+ // catch-all
1022
+ (...args: any[]): LoDashImplicitWrapper<(...args: any[]) => any>;
1023
+ }
1024
+
1025
+ interface ExplicitPartial {
1026
+ // arity 0
1027
+ <R>(this: LoDashExplicitWrapper<Function0<R>>): LoDashExplicitWrapper<Function0<R>>;
1028
+ // arity 1
1029
+ <T1, R>(this: LoDashExplicitWrapper<Function1<T1, R>>): LoDashExplicitWrapper<Function1<T1, R>>;
1030
+ <T1, R>(this: LoDashExplicitWrapper<Function1<T1, R>>, arg1: T1): LoDashExplicitWrapper<Function0<R>>;
1031
+ // arity 2
1032
+ <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1033
+ <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg1: T1): LoDashExplicitWrapper<Function1< T2, R>>;
1034
+ <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, plc1: __, arg2: T2): LoDashExplicitWrapper<Function1<T1, R>>;
1035
+ <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg1: T1, arg2: T2): LoDashExplicitWrapper<Function0< R>>;
1036
+ // arity 3
1037
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>): LoDashExplicitWrapper<Function3<T1, T2, T3, R>>;
1038
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1): LoDashExplicitWrapper<Function2< T2, T3, R>>;
1039
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, arg2: T2): LoDashExplicitWrapper<Function2<T1, T3, R>>;
1040
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2): LoDashExplicitWrapper<Function1< T3, R>>;
1041
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, plc2: __, arg3: T3): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1042
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, arg3: T3): LoDashExplicitWrapper<Function1< T2, R>>;
1043
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, plc1: __, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function1<T1, R>>;
1044
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function0< R>>;
1045
+ // arity 4
1046
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>): LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>;
1047
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1): LoDashExplicitWrapper<Function3< T2, T3, T4, R>>;
1048
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2): LoDashExplicitWrapper<Function3<T1, T3, T4, R>>;
1049
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2): LoDashExplicitWrapper<Function2< T3, T4, R>>;
1050
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, arg3: T3): LoDashExplicitWrapper<Function3<T1, T2, T4, R>>;
1051
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3): LoDashExplicitWrapper<Function2< T2, T4, R>>;
1052
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function2<T1, T4, R>>;
1053
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function1< T4, R>>;
1054
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, plc3: __, arg4: T4): LoDashExplicitWrapper<Function3<T1, T2, T3, R>>;
1055
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, arg4: T4): LoDashExplicitWrapper<Function2< T2, T3, R>>;
1056
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, plc3: __, arg4: T4): LoDashExplicitWrapper<Function2<T1, T3, R>>;
1057
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, arg4: T4): LoDashExplicitWrapper<Function1< T3, R>>;
1058
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, plc2: __, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1059
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function1< T2, R>>;
1060
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, plc1: __, arg2: T2, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function1<T1, R>>;
1061
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function0< R>>;
1062
+ // catch-all
1063
+ (...args: any[]): LoDashExplicitWrapper<(...args: any[]) => any>;
1064
+ }
1065
+
1066
+ // partialRight
1067
+
1068
+ interface LoDashStatic {
1069
+ /**
1070
+ * This method is like _.partial except that partial arguments are appended to those provided
1071
+ * to the new function.
1072
+ * @param func The function to partially apply arguments to.
1073
+ * @param args Arguments to be partially applied.
1074
+ * @return The new partially applied function.
1075
+ **/
1076
+ partialRight: PartialRight;
1077
+ }
1078
+
1079
+ interface LoDashImplicitWrapper<TValue> {
1080
+ /**
1081
+ * @see _.partialRight
1082
+ */
1083
+ partialRight: ImplicitPartialRight;
1084
+ }
1085
+
1086
+ interface LoDashExplicitWrapper<TValue> {
1087
+ /**
1088
+ * @see _.partialRight
1089
+ */
1090
+ partialRight: ExplicitPartialRight;
1091
+ }
1092
+
1093
+ interface PartialRight {
1094
+ // arity 0
1095
+ <R>(func: Function0<R>): Function0<R>;
1096
+ // arity 1
1097
+ <T1, R>(func: Function1<T1, R>): Function1<T1, R>;
1098
+ <T1, R>(func: Function1<T1, R>, arg1: T1): Function0<R>;
1099
+ // arity 2
1100
+ <T1, T2, R>(func: Function2<T1, T2, R>): Function2<T1, T2, R>;
1101
+ <T1, T2, R>(func: Function2<T1, T2, R>, arg1: T1, plc2: __): Function1< T2, R>;
1102
+ <T1, T2, R>(func: Function2<T1, T2, R>, arg2: T2): Function1<T1, R>;
1103
+ <T1, T2, R>(func: Function2<T1, T2, R>, arg1: T1, arg2: T2): Function0< R>;
1104
+ // arity 3
1105
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>): Function3<T1, T2, T3, R>;
1106
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, plc2: __, plc3: __): Function2< T2, T3, R>;
1107
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg2: T2, plc3: __): Function2<T1, T3, R>;
1108
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, arg2: T2, plc3: __): Function1< T3, R>;
1109
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg3: T3): Function2<T1, T2, R>;
1110
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, plc2: __, arg3: T3): Function1< T2, R>;
1111
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg2: T2, arg3: T3): Function1<T1, R>;
1112
+ <T1, T2, T3, R>(func: Function3<T1, T2, T3, R>, arg1: T1, arg2: T2, arg3: T3): Function0< R>;
1113
+ // arity 4
1114
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>): Function4<T1, T2, T3, T4, R>;
1115
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, plc3: __, plc4: __): Function3< T2, T3, T4, R>;
1116
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg2: T2, plc3: __, plc4: __): Function3<T1, T3, T4, R>;
1117
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, plc3: __, plc4: __): Function2< T3, T4, R>;
1118
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg3: T3, plc4: __): Function3<T1, T2, T4, R>;
1119
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, arg3: T3, plc4: __): Function2< T2, T4, R>;
1120
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg2: T2, arg3: T3, plc4: __): Function2<T1, T4, R>;
1121
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, arg3: T3, plc4: __): Function1< T4, R>;
1122
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg4: T4): Function3<T1, T2, T3, R>;
1123
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, plc3: __, arg4: T4): Function2< T2, T3, R>;
1124
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg2: T2, plc3: __, arg4: T4): Function2<T1, T3, R>;
1125
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, plc3: __, arg4: T4): Function1< T3, R>;
1126
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg3: T3, arg4: T4): Function2<T1, T2, R>;
1127
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, plc2: __, arg3: T3, arg4: T4): Function1< T2, R>;
1128
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg2: T2, arg3: T3, arg4: T4): Function1<T1, R>;
1129
+ <T1, T2, T3, T4, R>(func: Function4<T1, T2, T3, T4, R>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): Function0< R>;
1130
+ // catch-all
1131
+ (func: (...args: any[]) => any, ...args: any[]): (...args: any[]) => any;
1132
+
1133
+ placeholder: __;
1134
+ }
1135
+
1136
+ interface ImplicitPartialRight {
1137
+ // arity 0
1138
+ <R>(this: LoDashImplicitWrapper<Function0<R>>): LoDashImplicitWrapper<Function0<R>>;
1139
+ // arity 1
1140
+ <T1, R>(this: LoDashImplicitWrapper<Function1<T1, R>>): LoDashImplicitWrapper<Function1<T1, R>>;
1141
+ <T1, R>(this: LoDashImplicitWrapper<Function1<T1, R>>, arg1: T1): LoDashImplicitWrapper<Function0<R>>;
1142
+ // arity 2
1143
+ <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1144
+ <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg1: T1, plc2: __): LoDashImplicitWrapper<Function1< T2, R>>;
1145
+ <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg2: T2): LoDashImplicitWrapper<Function1<T1, R>>;
1146
+ <T1, T2, R>(this: LoDashImplicitWrapper<Function2<T1, T2, R>>, arg1: T1, arg2: T2): LoDashImplicitWrapper<Function0< R>>;
1147
+ // arity 3
1148
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>): LoDashImplicitWrapper<Function3<T1, T2, T3, R>>;
1149
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, plc3: __): LoDashImplicitWrapper<Function2< T2, T3, R>>;
1150
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg2: T2, plc3: __): LoDashImplicitWrapper<Function2<T1, T3, R>>;
1151
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, plc3: __): LoDashImplicitWrapper<Function1< T3, R>>;
1152
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg3: T3): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1153
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, arg3: T3): LoDashImplicitWrapper<Function1< T2, R>>;
1154
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function1<T1, R>>;
1155
+ <T1, T2, T3, R>(this: LoDashImplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashImplicitWrapper<Function0< R>>;
1156
+ // arity 4
1157
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>): LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>;
1158
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, plc4: __): LoDashImplicitWrapper<Function3< T2, T3, T4, R>>;
1159
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, plc3: __, plc4: __): LoDashImplicitWrapper<Function3<T1, T3, T4, R>>;
1160
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, plc4: __): LoDashImplicitWrapper<Function2< T3, T4, R>>;
1161
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg3: T3, plc4: __): LoDashImplicitWrapper<Function3<T1, T2, T4, R>>;
1162
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, plc4: __): LoDashImplicitWrapper<Function2< T2, T4, R>>;
1163
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, arg3: T3, plc4: __): LoDashImplicitWrapper<Function2<T1, T4, R>>;
1164
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, plc4: __): LoDashImplicitWrapper<Function1< T4, R>>;
1165
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg4: T4): LoDashImplicitWrapper<Function3<T1, T2, T3, R>>;
1166
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, arg4: T4): LoDashImplicitWrapper<Function2< T2, T3, R>>;
1167
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, plc3: __, arg4: T4): LoDashImplicitWrapper<Function2<T1, T3, R>>;
1168
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, arg4: T4): LoDashImplicitWrapper<Function1< T3, R>>;
1169
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function2<T1, T2, R>>;
1170
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function1< T2, R>>;
1171
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function1<T1, R>>;
1172
+ <T1, T2, T3, T4, R>(this: LoDashImplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): LoDashImplicitWrapper<Function0< R>>;
1173
+ // catch-all
1174
+ (...args: any[]): LoDashImplicitWrapper<(...args: any[]) => any>;
1175
+ }
1176
+
1177
+ interface ExplicitPartialRight {
1178
+ // arity 0
1179
+ <R>(this: LoDashExplicitWrapper<Function0<R>>): LoDashExplicitWrapper<Function0<R>>;
1180
+ // arity 1
1181
+ <T1, R>(this: LoDashExplicitWrapper<Function1<T1, R>>): LoDashExplicitWrapper<Function1<T1, R>>;
1182
+ <T1, R>(this: LoDashExplicitWrapper<Function1<T1, R>>, arg1: T1): LoDashExplicitWrapper<Function0<R>>;
1183
+ // arity 2
1184
+ <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1185
+ <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg1: T1, plc2: __): LoDashExplicitWrapper<Function1< T2, R>>;
1186
+ <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg2: T2): LoDashExplicitWrapper<Function1<T1, R>>;
1187
+ <T1, T2, R>(this: LoDashExplicitWrapper<Function2<T1, T2, R>>, arg1: T1, arg2: T2): LoDashExplicitWrapper<Function0< R>>;
1188
+ // arity 3
1189
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>): LoDashExplicitWrapper<Function3<T1, T2, T3, R>>;
1190
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, plc3: __): LoDashExplicitWrapper<Function2< T2, T3, R>>;
1191
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg2: T2, plc3: __): LoDashExplicitWrapper<Function2<T1, T3, R>>;
1192
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, plc3: __): LoDashExplicitWrapper<Function1< T3, R>>;
1193
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg3: T3): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1194
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, plc2: __, arg3: T3): LoDashExplicitWrapper<Function1< T2, R>>;
1195
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function1<T1, R>>;
1196
+ <T1, T2, T3, R>(this: LoDashExplicitWrapper<Function3<T1, T2, T3, R>>, arg1: T1, arg2: T2, arg3: T3): LoDashExplicitWrapper<Function0< R>>;
1197
+ // arity 4
1198
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>): LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>;
1199
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, plc4: __): LoDashExplicitWrapper<Function3< T2, T3, T4, R>>;
1200
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, plc3: __, plc4: __): LoDashExplicitWrapper<Function3<T1, T3, T4, R>>;
1201
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, plc4: __): LoDashExplicitWrapper<Function2< T3, T4, R>>;
1202
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg3: T3, plc4: __): LoDashExplicitWrapper<Function3<T1, T2, T4, R>>;
1203
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, plc4: __): LoDashExplicitWrapper<Function2< T2, T4, R>>;
1204
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, arg3: T3, plc4: __): LoDashExplicitWrapper<Function2<T1, T4, R>>;
1205
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, plc4: __): LoDashExplicitWrapper<Function1< T4, R>>;
1206
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg4: T4): LoDashExplicitWrapper<Function3<T1, T2, T3, R>>;
1207
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, plc3: __, arg4: T4): LoDashExplicitWrapper<Function2< T2, T3, R>>;
1208
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, plc3: __, arg4: T4): LoDashExplicitWrapper<Function2<T1, T3, R>>;
1209
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, plc3: __, arg4: T4): LoDashExplicitWrapper<Function1< T3, R>>;
1210
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function2<T1, T2, R>>;
1211
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, plc2: __, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function1< T2, R>>;
1212
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg2: T2, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function1<T1, R>>;
1213
+ <T1, T2, T3, T4, R>(this: LoDashExplicitWrapper<Function4<T1, T2, T3, T4, R>>, arg1: T1, arg2: T2, arg3: T3, arg4: T4): LoDashExplicitWrapper<Function0< R>>;
1214
+ // catch-all
1215
+ (...args: any[]): LoDashExplicitWrapper<(...args: any[]) => any>;
1216
+ }
1217
+
1218
+ // rearg
1219
+
1220
+ interface LoDashStatic {
1221
+ /**
1222
+ * Creates a function that invokes func with arguments arranged according to the specified indexes where the
1223
+ * argument value at the first index is provided as the first argument, the argument value at the second index
1224
+ * is provided as the second argument, and so on.
1225
+ * @param func The function to rearrange arguments for.
1226
+ * @param indexes The arranged argument indexes, specified as individual indexes or arrays of indexes.
1227
+ * @return Returns the new function.
1228
+ */
1229
+ rearg(func: (...args: any[]) => any, ...indexes: Array<Many<number>>): (...args: any[]) => any;
1230
+ }
1231
+
1232
+ interface LoDashImplicitWrapper<TValue> {
1233
+ /**
1234
+ * @see _.rearg
1235
+ */
1236
+ rearg(...indexes: Array<Many<number>>): LoDashImplicitWrapper<(...args: any[]) => any>;
1237
+ }
1238
+
1239
+ interface LoDashExplicitWrapper<TValue> {
1240
+ /**
1241
+ * @see _.rearg
1242
+ */
1243
+ rearg(...indexes: Array<Many<number>>): LoDashExplicitWrapper<(...args: any[]) => any>;
1244
+ }
1245
+
1246
+ // rest
1247
+
1248
+ interface LoDashStatic {
1249
+ /**
1250
+ * Creates a function that invokes func with the this binding of the created function and arguments from start
1251
+ * and beyond provided as an array.
1252
+ *
1253
+ * Note: This method is based on the rest parameter.
1254
+ *
1255
+ * @param func The function to apply a rest parameter to.
1256
+ * @param start The start position of the rest parameter.
1257
+ * @return Returns the new function.
1258
+ */
1259
+ rest(
1260
+ func: (...args: any[]) => any,
1261
+ start?: number
1262
+ ): (...args: any[]) => any;
1263
+ }
1264
+
1265
+ interface LoDashImplicitWrapper<TValue> {
1266
+ /**
1267
+ * @see _.rest
1268
+ */
1269
+ rest(start?: number): LoDashImplicitWrapper<(...args: any[]) => any>;
1270
+ }
1271
+
1272
+ interface LoDashExplicitWrapper<TValue> {
1273
+ /**
1274
+ * @see _.rest
1275
+ */
1276
+ rest(start?: number): LoDashExplicitWrapper<(...args: any[]) => any>;
1277
+ }
1278
+
1279
+ // spread
1280
+
1281
+ interface LoDashStatic {
1282
+ /**
1283
+ * Creates a function that invokes func with the this binding of the created function and an array of arguments
1284
+ * much like Function#apply.
1285
+ *
1286
+ * Note: This method is based on the spread operator.
1287
+ *
1288
+ * @param func The function to spread arguments over.
1289
+ * @return Returns the new function.
1290
+ */
1291
+ spread<TResult>(func: (...args: any[]) => TResult): (...args: any[]) => TResult;
1292
+
1293
+ /**
1294
+ * @see _.spread
1295
+ */
1296
+ spread<TResult>(func: (...args: any[]) => TResult, start: number): (...args: any[]) => TResult;
1297
+ }
1298
+
1299
+ interface LoDashImplicitWrapper<TValue> {
1300
+ /**
1301
+ * @see _.spread
1302
+ */
1303
+ spread<TResult>(this: LoDashImplicitWrapper<(...args: any[]) => TResult>): LoDashImplicitWrapper<(...args: any[]) => TResult>;
1304
+
1305
+ /**
1306
+ * @see _.spread
1307
+ */
1308
+ spread<TResult>(this: LoDashImplicitWrapper<(...args: any[]) => TResult>, start: number): LoDashImplicitWrapper<(...args: any[]) => TResult>;
1309
+ }
1310
+
1311
+ interface LoDashExplicitWrapper<TValue> {
1312
+ /**
1313
+ * @see _.spread
1314
+ */
1315
+ spread<TResult>(this: LoDashExplicitWrapper<(...args: any[]) => TResult>): LoDashExplicitWrapper<(...args: any[]) => TResult>;
1316
+
1317
+ /**
1318
+ * @see _.spread
1319
+ */
1320
+ spread<TResult>(this: LoDashExplicitWrapper<(...args: any[]) => TResult>, start: number): LoDashExplicitWrapper<(...args: any[]) => TResult>;
1321
+ }
1322
+
1323
+ // throttle
1324
+
1325
+ interface ThrottleSettings {
1326
+ /**
1327
+ * If you'd like to disable the leading-edge call, pass this as false.
1328
+ */
1329
+ leading?: boolean;
1330
+
1331
+ /**
1332
+ * If you'd like to disable the execution on the trailing-edge, pass false.
1333
+ */
1334
+ trailing?: boolean;
1335
+ }
1336
+
1337
+ interface LoDashStatic {
1338
+ /**
1339
+ * Creates a throttled function that only invokes func at most once per every wait milliseconds. The throttled
1340
+ * function comes with a cancel method to cancel delayed invocations and a flush method to immediately invoke
1341
+ * them. Provide an options object to indicate that func should be invoked on the leading and/or trailing edge
1342
+ * of the wait timeout. Subsequent calls to the throttled function return the result of the last func call.
1343
+ *
1344
+ * Note: If leading and trailing options are true, func is invoked on the trailing edge of the timeout only if
1345
+ * the the throttled function is invoked more than once during the wait timeout.
1346
+ *
1347
+ * @param func The function to throttle.
1348
+ * @param wait The number of milliseconds to throttle invocations to.
1349
+ * @param options The options object.
1350
+ * @param options.leading Specify invoking on the leading edge of the timeout.
1351
+ * @param options.trailing Specify invoking on the trailing edge of the timeout.
1352
+ * @return Returns the new throttled function.
1353
+ */
1354
+ throttle<T extends (...args: any[]) => any>(
1355
+ func: T,
1356
+ wait?: number,
1357
+ options?: ThrottleSettings
1358
+ ): T & Cancelable;
1359
+ }
1360
+
1361
+ interface LoDashImplicitWrapper<TValue> {
1362
+ /**
1363
+ * @see _.throttle
1364
+ */
1365
+ throttle(
1366
+ wait?: number,
1367
+ options?: ThrottleSettings
1368
+ ): LoDashImplicitWrapper<TValue & Cancelable>;
1369
+ }
1370
+
1371
+ interface LoDashExplicitWrapper<TValue> {
1372
+ /**
1373
+ * @see _.throttle
1374
+ */
1375
+ throttle(
1376
+ wait?: number,
1377
+ options?: ThrottleSettings
1378
+ ): LoDashExplicitWrapper<TValue & Cancelable>;
1379
+ }
1380
+
1381
+ // unary
1382
+
1383
+ interface LoDashStatic {
1384
+ /**
1385
+ * Creates a function that accepts up to one argument, ignoring any
1386
+ * additional arguments.
1387
+ *
1388
+ * @category Function
1389
+ * @param func The function to cap arguments for.
1390
+ * @returns Returns the new function.
1391
+ * @example
1392
+ *
1393
+ * _.map(['6', '8', '10'], _.unary(parseInt));
1394
+ * // => [6, 8, 10]
1395
+ */
1396
+ unary<T, TResult>(func: (arg1: T, ...args: any[]) => TResult): (arg1: T) => TResult;
1397
+ }
1398
+
1399
+ interface LoDashImplicitWrapper<TValue> {
1400
+ /**
1401
+ * @see _.unary
1402
+ */
1403
+ unary<T, TResult>(this: LoDashImplicitWrapper<(arg1: T, ...args: any[]) => TResult>): LoDashImplicitWrapper<(arg1: T) => TResult>;
1404
+ }
1405
+
1406
+ interface LoDashExplicitWrapper<TValue> {
1407
+ /**
1408
+ * @see _.unary
1409
+ */
1410
+ unary<T, TResult>(this: LoDashExplicitWrapper<(arg1: T, ...args: any[]) => TResult>): LoDashExplicitWrapper<(arg1: T) => TResult>;
1411
+ }
1412
+
1413
+ // wrap
1414
+
1415
+ interface LoDashStatic {
1416
+ /**
1417
+ * Creates a function that provides value to the wrapper function as its first argument. Any additional
1418
+ * arguments provided to the function are appended to those provided to the wrapper function. The wrapper is
1419
+ * invoked with the this binding of the created function.
1420
+ *
1421
+ * @param value The value to wrap.
1422
+ * @param wrapper The wrapper function.
1423
+ * @return Returns the new function.
1424
+ */
1425
+ wrap<T, TArgs, TResult>(
1426
+ value: T,
1427
+ wrapper: (value: T, ...args: TArgs[]) => TResult
1428
+ ): (...args: TArgs[]) => TResult;
1429
+
1430
+ /**
1431
+ * @see _.wrap
1432
+ */
1433
+ wrap<T, TResult>(
1434
+ value: T,
1435
+ wrapper: (value: T, ...args: any[]) => TResult
1436
+ ): (...args: any[]) => TResult;
1437
+ }
1438
+
1439
+ interface LoDashImplicitWrapper<TValue> {
1440
+ /**
1441
+ * @see _.wrap
1442
+ */
1443
+ wrap<TArgs, TResult>(
1444
+ wrapper: (value: TValue, ...args: TArgs[]) => TResult
1445
+ ): LoDashImplicitWrapper<(...args: TArgs[]) => TResult>;
1446
+
1447
+ /**
1448
+ * @see _.wrap
1449
+ */
1450
+ wrap<TResult>(
1451
+ wrapper: (value: TValue, ...args: any[]) => TResult
1452
+ ): LoDashImplicitWrapper<(...args: any[]) => TResult>;
1453
+ }
1454
+
1455
+ interface LoDashExplicitWrapper<TValue> {
1456
+ /**
1457
+ * @see _.wrap
1458
+ */
1459
+ /**
1460
+ * @see _.wrap
1461
+ */
1462
+ wrap<TArgs, TResult>(
1463
+ wrapper: (value: TValue, ...args: TArgs[]) => TResult
1464
+ ): LoDashExplicitWrapper<(...args: TArgs[]) => TResult>;
1465
+
1466
+ /**
1467
+ * @see _.wrap
1468
+ */
1469
+ wrap<TResult>(
1470
+ wrapper: (value: TValue, ...args: any[]) => TResult
1471
+ ): LoDashExplicitWrapper<(...args: any[]) => TResult>;
1472
+ }
1473
+ }