cypress 3.1.4 → 3.3.1

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