@duplojs/utils 1.3.32 → 1.4.33

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 (827) hide show
  1. package/dist/array/at/default.d.ts +32 -0
  2. package/dist/array/at/first.cjs +3 -0
  3. package/dist/array/at/first.d.ts +25 -0
  4. package/dist/array/at/first.mjs +3 -0
  5. package/dist/array/at/last.cjs +3 -0
  6. package/dist/array/at/last.d.ts +25 -0
  7. package/dist/array/at/last.mjs +3 -0
  8. package/dist/array/chunk.d.ts +27 -0
  9. package/dist/array/coalescing.cjs +3 -0
  10. package/dist/array/coalescing.d.ts +22 -0
  11. package/dist/array/coalescing.mjs +3 -0
  12. package/dist/array/concat.d.ts +28 -0
  13. package/dist/array/copyWithin.d.ts +31 -0
  14. package/dist/array/every.d.ts +37 -0
  15. package/dist/array/fill/all.d.ts +36 -0
  16. package/dist/array/fill/default.d.ts +36 -0
  17. package/dist/array/filter.d.ts +33 -0
  18. package/dist/array/find.d.ts +34 -0
  19. package/dist/array/findAndReplace.d.ts +40 -0
  20. package/dist/array/findAndSplice/delete.d.ts +40 -0
  21. package/dist/array/findAndSplice/insert.d.ts +40 -0
  22. package/dist/array/findAndSplice/replace.d.ts +40 -0
  23. package/dist/array/findIndex.d.ts +37 -0
  24. package/dist/array/findLast.d.ts +39 -0
  25. package/dist/array/findLastIndex.d.ts +37 -0
  26. package/dist/array/flat.d.ts +32 -0
  27. package/dist/array/flatMap.d.ts +37 -0
  28. package/dist/array/from.cjs +3 -0
  29. package/dist/array/from.d.ts +33 -0
  30. package/dist/array/from.mjs +3 -0
  31. package/dist/array/group.d.ts +67 -0
  32. package/dist/array/includes.d.ts +40 -0
  33. package/dist/array/index.cjs +3 -1
  34. package/dist/array/index.d.ts +27 -0
  35. package/dist/array/index.mjs +4 -0
  36. package/dist/array/indexOf.d.ts +38 -0
  37. package/dist/array/insert.d.ts +34 -0
  38. package/dist/array/is.cjs +3 -0
  39. package/dist/array/is.d.ts +25 -0
  40. package/dist/array/is.mjs +3 -0
  41. package/dist/array/isLastIndex.d.ts +28 -0
  42. package/dist/array/join.d.ts +35 -0
  43. package/dist/array/lastIndexOf.d.ts +37 -0
  44. package/dist/array/length.cjs +3 -0
  45. package/dist/array/length.d.ts +24 -0
  46. package/dist/array/length.mjs +3 -0
  47. package/dist/array/lengthEqual.d.ts +44 -0
  48. package/dist/array/map.d.ts +33 -0
  49. package/dist/array/maxElements.d.ts +33 -0
  50. package/dist/array/maxOf.cjs +3 -0
  51. package/dist/array/maxOf.d.ts +28 -0
  52. package/dist/array/maxOf.mjs +3 -0
  53. package/dist/array/minElements.d.ts +47 -0
  54. package/dist/array/minOf.cjs +3 -0
  55. package/dist/array/minOf.d.ts +28 -0
  56. package/dist/array/minOf.mjs +3 -0
  57. package/dist/array/notIncludes.d.ts +41 -0
  58. package/dist/array/pop.cjs +3 -0
  59. package/dist/array/pop.d.ts +31 -0
  60. package/dist/array/pop.mjs +3 -0
  61. package/dist/array/push.d.ts +38 -0
  62. package/dist/array/reduce.cjs +3 -0
  63. package/dist/array/reduce.d.ts +74 -0
  64. package/dist/array/reduce.mjs +3 -0
  65. package/dist/array/reduceRight.d.ts +39 -0
  66. package/dist/array/reverse.cjs +3 -0
  67. package/dist/array/reverse.d.ts +31 -0
  68. package/dist/array/reverse.mjs +3 -0
  69. package/dist/array/select.d.ts +39 -0
  70. package/dist/array/set.d.ts +39 -0
  71. package/dist/array/shift.cjs +3 -0
  72. package/dist/array/shift.d.ts +31 -0
  73. package/dist/array/shift.mjs +3 -0
  74. package/dist/array/slice.d.ts +36 -0
  75. package/dist/array/some.d.ts +44 -0
  76. package/dist/array/sort.d.ts +29 -0
  77. package/dist/array/splice/delete.d.ts +32 -0
  78. package/dist/array/splice/insert.d.ts +39 -0
  79. package/dist/array/splice/replace.d.ts +39 -0
  80. package/dist/array/sum.cjs +3 -0
  81. package/dist/array/sum.d.ts +22 -0
  82. package/dist/array/sum.mjs +3 -0
  83. package/dist/array/toTuple.d.ts +33 -0
  84. package/dist/array/unshift.d.ts +38 -0
  85. package/dist/clean/constraint/base.cjs +3 -0
  86. package/dist/clean/constraint/base.d.ts +106 -0
  87. package/dist/clean/constraint/base.mjs +3 -0
  88. package/dist/clean/constraint/defaultConstraint/number.cjs +9 -0
  89. package/dist/clean/constraint/defaultConstraint/number.d.ts +81 -0
  90. package/dist/clean/constraint/defaultConstraint/number.mjs +9 -0
  91. package/dist/clean/constraint/defaultConstraint/string.cjs +6 -0
  92. package/dist/clean/constraint/defaultConstraint/string.d.ts +54 -0
  93. package/dist/clean/constraint/defaultConstraint/string.mjs +6 -0
  94. package/dist/clean/entity.cjs +3 -0
  95. package/dist/clean/entity.d.ts +141 -0
  96. package/dist/clean/entity.mjs +3 -0
  97. package/dist/clean/flag.cjs +3 -0
  98. package/dist/clean/flag.d.ts +96 -0
  99. package/dist/clean/flag.mjs +3 -0
  100. package/dist/clean/index.cjs +3 -1
  101. package/dist/clean/index.d.ts +25 -0
  102. package/dist/clean/index.mjs +4 -0
  103. package/dist/clean/kind.cjs +3 -0
  104. package/dist/clean/kind.d.ts +33 -0
  105. package/dist/clean/kind.mjs +3 -0
  106. package/dist/clean/newType.cjs +3 -0
  107. package/dist/clean/newType.d.ts +106 -0
  108. package/dist/clean/newType.mjs +3 -0
  109. package/dist/clean/primitive/base.cjs +18 -0
  110. package/dist/clean/primitive/base.d.ts +242 -0
  111. package/dist/clean/primitive/base.mjs +18 -0
  112. package/dist/clean/primitive/operations/date/dateAddTime.d.ts +35 -0
  113. package/dist/clean/primitive/operations/date/dateGreaterThan.d.ts +24 -0
  114. package/dist/clean/primitive/operations/date/dateLessThan.d.ts +24 -0
  115. package/dist/clean/primitive/operations/date/dateMax.cjs +3 -0
  116. package/dist/clean/primitive/operations/date/dateMax.d.ts +36 -0
  117. package/dist/clean/primitive/operations/date/dateMax.mjs +3 -0
  118. package/dist/clean/primitive/operations/date/dateMin.cjs +3 -0
  119. package/dist/clean/primitive/operations/date/dateMin.d.ts +36 -0
  120. package/dist/clean/primitive/operations/date/dateMin.mjs +3 -0
  121. package/dist/clean/primitive/operations/date/dateSubtractTime.d.ts +35 -0
  122. package/dist/clean/primitive/operations/equal.d.ts +34 -0
  123. package/dist/clean/primitive/operations/number/add.d.ts +34 -0
  124. package/dist/clean/primitive/operations/number/divide.d.ts +34 -0
  125. package/dist/clean/primitive/operations/number/greaterThan.d.ts +25 -0
  126. package/dist/clean/primitive/operations/number/lessThan.d.ts +25 -0
  127. package/dist/clean/primitive/operations/number/max.cjs +3 -0
  128. package/dist/clean/primitive/operations/number/max.d.ts +33 -0
  129. package/dist/clean/primitive/operations/number/max.mjs +3 -0
  130. package/dist/clean/primitive/operations/number/min.cjs +3 -0
  131. package/dist/clean/primitive/operations/number/min.d.ts +33 -0
  132. package/dist/clean/primitive/operations/number/min.mjs +3 -0
  133. package/dist/clean/primitive/operations/number/multiply.d.ts +34 -0
  134. package/dist/clean/primitive/operations/number/subtract.d.ts +34 -0
  135. package/dist/clean/primitive/operations/sort.d.ts +38 -0
  136. package/dist/clean/primitive/operations/string/concat.d.ts +35 -0
  137. package/dist/clean/primitive/operations/string/length.cjs +3 -0
  138. package/dist/clean/primitive/operations/string/length.d.ts +27 -0
  139. package/dist/clean/primitive/operations/string/length.mjs +3 -0
  140. package/dist/clean/primitive/operations/string/lengthEqual.d.ts +25 -0
  141. package/dist/clean/primitive/operations/string/lengthGreaterThan.d.ts +25 -0
  142. package/dist/clean/primitive/operations/string/lengthLessThan.d.ts +25 -0
  143. package/dist/clean/primitive/operations/time/timeGreaterThan.d.ts +24 -0
  144. package/dist/clean/primitive/operations/time/timeLessThan.d.ts +24 -0
  145. package/dist/clean/primitive/operations/time/timeMax.cjs +3 -0
  146. package/dist/clean/primitive/operations/time/timeMax.d.ts +36 -0
  147. package/dist/clean/primitive/operations/time/timeMax.mjs +3 -0
  148. package/dist/clean/primitive/operations/time/timeMin.cjs +3 -0
  149. package/dist/clean/primitive/operations/time/timeMin.d.ts +36 -0
  150. package/dist/clean/primitive/operations/time/timeMin.mjs +3 -0
  151. package/dist/clean/repository.cjs +3 -0
  152. package/dist/clean/repository.d.ts +87 -0
  153. package/dist/clean/repository.mjs +3 -0
  154. package/dist/clean/useCase.cjs +6 -0
  155. package/dist/clean/useCase.d.ts +140 -0
  156. package/dist/clean/useCase.mjs +6 -0
  157. package/dist/common/addWrappedProperties.cjs +3 -0
  158. package/dist/common/addWrappedProperties.d.ts +12 -0
  159. package/dist/common/addWrappedProperties.mjs +3 -0
  160. package/dist/common/and.d.ts +53 -0
  161. package/dist/common/asyncInnerPipe.d.ts +49 -0
  162. package/dist/common/asyncLoop.cjs +3 -0
  163. package/dist/common/asyncLoop.d.ts +29 -0
  164. package/dist/common/asyncLoop.mjs +3 -0
  165. package/dist/common/asyncPipe.cjs +3 -0
  166. package/dist/common/asyncPipe.d.ts +35 -0
  167. package/dist/common/asyncPipe.mjs +3 -0
  168. package/dist/common/asyncRetry.cjs +6 -0
  169. package/dist/common/asyncRetry.d.ts +64 -0
  170. package/dist/common/asyncRetry.mjs +6 -0
  171. package/dist/common/builder.cjs +3 -0
  172. package/dist/common/builder.d.ts +88 -0
  173. package/dist/common/builder.mjs +3 -0
  174. package/dist/common/clone.cjs +3 -0
  175. package/dist/common/clone.d.ts +12 -0
  176. package/dist/common/clone.mjs +3 -0
  177. package/dist/common/enum.cjs +3 -0
  178. package/dist/common/enum.d.ts +34 -0
  179. package/dist/common/enum.mjs +3 -0
  180. package/dist/common/equal.d.ts +38 -0
  181. package/dist/common/escapeRegExp.cjs +3 -0
  182. package/dist/common/escapeRegExp.d.ts +20 -0
  183. package/dist/common/escapeRegExp.mjs +3 -0
  184. package/dist/common/externalPromise.cjs +3 -0
  185. package/dist/common/externalPromise.d.ts +20 -0
  186. package/dist/common/externalPromise.mjs +3 -0
  187. package/dist/common/falsy.cjs +3 -0
  188. package/dist/common/falsy.d.ts +27 -0
  189. package/dist/common/falsy.mjs +3 -0
  190. package/dist/common/forward.cjs +3 -0
  191. package/dist/common/forward.d.ts +23 -0
  192. package/dist/common/forward.mjs +3 -0
  193. package/dist/common/forwardLog.cjs +3 -0
  194. package/dist/common/forwardLog.d.ts +28 -0
  195. package/dist/common/forwardLog.mjs +3 -0
  196. package/dist/common/globalStore.cjs +3 -0
  197. package/dist/common/globalStore.d.ts +12 -0
  198. package/dist/common/globalStore.mjs +3 -0
  199. package/dist/common/hasKinds.d.ts +39 -0
  200. package/dist/common/hasSomeKinds.d.ts +39 -0
  201. package/dist/common/index.d.ts +27 -0
  202. package/dist/common/innerPipe.d.ts +35 -0
  203. package/dist/common/instanceOf.d.ts +33 -0
  204. package/dist/common/isType.d.ts +35 -0
  205. package/dist/common/justReturn.d.ts +43 -0
  206. package/dist/common/kind.cjs +6 -0
  207. package/dist/common/kind.d.ts +94 -0
  208. package/dist/common/kind.mjs +6 -0
  209. package/dist/common/loop.cjs +3 -0
  210. package/dist/common/loop.d.ts +26 -0
  211. package/dist/common/loop.mjs +3 -0
  212. package/dist/common/memo.cjs +3 -0
  213. package/dist/common/memo.d.ts +25 -0
  214. package/dist/common/memo.mjs +3 -0
  215. package/dist/common/or.d.ts +41 -0
  216. package/dist/common/override.cjs +3 -0
  217. package/dist/common/override.d.ts +45 -0
  218. package/dist/common/override.mjs +3 -0
  219. package/dist/common/pipe.d.ts +29 -0
  220. package/dist/common/promiseObject.cjs +3 -0
  221. package/dist/common/promiseObject.d.ts +26 -0
  222. package/dist/common/promiseObject.mjs +3 -0
  223. package/dist/common/simpleClone.cjs +3 -0
  224. package/dist/common/simpleClone.d.ts +23 -0
  225. package/dist/common/simpleClone.mjs +3 -0
  226. package/dist/common/sleep.cjs +3 -0
  227. package/dist/common/sleep.d.ts +21 -0
  228. package/dist/common/sleep.mjs +3 -0
  229. package/dist/common/stringToBytes.cjs +3 -0
  230. package/dist/common/stringToBytes.d.ts +17 -0
  231. package/dist/common/stringToBytes.mjs +3 -0
  232. package/dist/common/stringToMillisecond.cjs +3 -0
  233. package/dist/common/stringToMillisecond.d.ts +17 -0
  234. package/dist/common/stringToMillisecond.mjs +3 -0
  235. package/dist/common/toJSON.cjs +3 -0
  236. package/dist/common/toJSON.d.ts +35 -0
  237. package/dist/common/toJSON.mjs +3 -0
  238. package/dist/common/toString.cjs +3 -0
  239. package/dist/common/toString.d.ts +18 -0
  240. package/dist/common/toString.mjs +3 -0
  241. package/dist/common/toTransform.cjs +3 -0
  242. package/dist/common/toTransform.d.ts +41 -0
  243. package/dist/common/toTransform.mjs +3 -0
  244. package/dist/common/toWrappedValue.cjs +3 -0
  245. package/dist/common/toWrappedValue.d.ts +22 -0
  246. package/dist/common/toWrappedValue.mjs +3 -0
  247. package/dist/common/truthy.cjs +3 -0
  248. package/dist/common/truthy.d.ts +27 -0
  249. package/dist/common/truthy.mjs +3 -0
  250. package/dist/common/unwrap.d.ts +22 -0
  251. package/dist/common/when.d.ts +40 -0
  252. package/dist/common/whenElse.d.ts +42 -0
  253. package/dist/common/whenNot.d.ts +40 -0
  254. package/dist/common/wrapValue.cjs +9 -0
  255. package/dist/common/wrapValue.d.ts +55 -0
  256. package/dist/common/wrapValue.mjs +9 -0
  257. package/dist/dataParser/base.d.ts +104 -0
  258. package/dist/dataParser/baseExtended.d.ts +333 -0
  259. package/dist/dataParser/extended/array.cjs +3 -0
  260. package/dist/dataParser/extended/array.d.ts +84 -0
  261. package/dist/dataParser/extended/array.mjs +3 -0
  262. package/dist/dataParser/extended/bigint.cjs +3 -0
  263. package/dist/dataParser/extended/bigint.d.ts +84 -0
  264. package/dist/dataParser/extended/bigint.mjs +3 -0
  265. package/dist/dataParser/extended/boolean.cjs +3 -0
  266. package/dist/dataParser/extended/boolean.d.ts +28 -0
  267. package/dist/dataParser/extended/boolean.mjs +3 -0
  268. package/dist/dataParser/extended/date.cjs +3 -0
  269. package/dist/dataParser/extended/date.d.ts +28 -0
  270. package/dist/dataParser/extended/date.mjs +3 -0
  271. package/dist/dataParser/extended/empty.cjs +3 -0
  272. package/dist/dataParser/extended/empty.d.ts +27 -0
  273. package/dist/dataParser/extended/empty.mjs +3 -0
  274. package/dist/dataParser/extended/lazy.cjs +3 -0
  275. package/dist/dataParser/extended/lazy.d.ts +38 -0
  276. package/dist/dataParser/extended/lazy.mjs +3 -0
  277. package/dist/dataParser/extended/literal.cjs +3 -0
  278. package/dist/dataParser/extended/literal.d.ts +28 -0
  279. package/dist/dataParser/extended/literal.mjs +3 -0
  280. package/dist/dataParser/extended/nil.cjs +3 -0
  281. package/dist/dataParser/extended/nil.d.ts +28 -0
  282. package/dist/dataParser/extended/nil.mjs +3 -0
  283. package/dist/dataParser/extended/nullable.cjs +3 -0
  284. package/dist/dataParser/extended/nullable.d.ts +28 -0
  285. package/dist/dataParser/extended/nullable.mjs +3 -0
  286. package/dist/dataParser/extended/number.cjs +6 -0
  287. package/dist/dataParser/extended/number.d.ts +143 -0
  288. package/dist/dataParser/extended/number.mjs +6 -0
  289. package/dist/dataParser/extended/object.cjs +3 -0
  290. package/dist/dataParser/extended/object.d.ts +243 -0
  291. package/dist/dataParser/extended/object.mjs +3 -0
  292. package/dist/dataParser/extended/optional.cjs +3 -0
  293. package/dist/dataParser/extended/optional.d.ts +28 -0
  294. package/dist/dataParser/extended/optional.mjs +3 -0
  295. package/dist/dataParser/extended/pipe.cjs +3 -0
  296. package/dist/dataParser/extended/pipe.d.ts +28 -0
  297. package/dist/dataParser/extended/pipe.mjs +3 -0
  298. package/dist/dataParser/extended/record.cjs +3 -0
  299. package/dist/dataParser/extended/record.d.ts +38 -0
  300. package/dist/dataParser/extended/record.mjs +3 -0
  301. package/dist/dataParser/extended/recover.cjs +3 -0
  302. package/dist/dataParser/extended/recover.d.ts +27 -0
  303. package/dist/dataParser/extended/recover.mjs +3 -0
  304. package/dist/dataParser/extended/string.cjs +9 -0
  305. package/dist/dataParser/extended/string.d.ts +162 -0
  306. package/dist/dataParser/extended/string.mjs +9 -0
  307. package/dist/dataParser/extended/templateLiteral.cjs +3 -0
  308. package/dist/dataParser/extended/templateLiteral.d.ts +28 -0
  309. package/dist/dataParser/extended/templateLiteral.mjs +3 -0
  310. package/dist/dataParser/extended/time.cjs +3 -0
  311. package/dist/dataParser/extended/time.d.ts +84 -0
  312. package/dist/dataParser/extended/time.mjs +3 -0
  313. package/dist/dataParser/extended/transform.cjs +3 -0
  314. package/dist/dataParser/extended/transform.d.ts +28 -0
  315. package/dist/dataParser/extended/transform.mjs +3 -0
  316. package/dist/dataParser/extended/tuple.cjs +3 -0
  317. package/dist/dataParser/extended/tuple.d.ts +28 -0
  318. package/dist/dataParser/extended/tuple.mjs +3 -0
  319. package/dist/dataParser/extended/union.cjs +3 -0
  320. package/dist/dataParser/extended/union.d.ts +28 -0
  321. package/dist/dataParser/extended/union.mjs +3 -0
  322. package/dist/dataParser/extended/unknown.cjs +3 -0
  323. package/dist/dataParser/extended/unknown.d.ts +26 -0
  324. package/dist/dataParser/extended/unknown.mjs +3 -0
  325. package/dist/dataParser/parsers/array/index.cjs +3 -0
  326. package/dist/dataParser/parsers/array/index.d.ts +30 -0
  327. package/dist/dataParser/parsers/array/index.mjs +3 -0
  328. package/dist/dataParser/parsers/bigint/index.cjs +3 -0
  329. package/dist/dataParser/parsers/bigint/index.d.ts +30 -0
  330. package/dist/dataParser/parsers/bigint/index.mjs +3 -0
  331. package/dist/dataParser/parsers/boolean.cjs +3 -0
  332. package/dist/dataParser/parsers/boolean.d.ts +30 -0
  333. package/dist/dataParser/parsers/boolean.mjs +3 -0
  334. package/dist/dataParser/parsers/date.cjs +3 -0
  335. package/dist/dataParser/parsers/date.d.ts +30 -0
  336. package/dist/dataParser/parsers/date.mjs +3 -0
  337. package/dist/dataParser/parsers/empty.cjs +3 -0
  338. package/dist/dataParser/parsers/empty.d.ts +29 -0
  339. package/dist/dataParser/parsers/empty.mjs +3 -0
  340. package/dist/dataParser/parsers/lazy.cjs +3 -0
  341. package/dist/dataParser/parsers/lazy.d.ts +39 -0
  342. package/dist/dataParser/parsers/lazy.mjs +3 -0
  343. package/dist/dataParser/parsers/literal.cjs +3 -0
  344. package/dist/dataParser/parsers/literal.d.ts +29 -0
  345. package/dist/dataParser/parsers/literal.mjs +3 -0
  346. package/dist/dataParser/parsers/nil.cjs +3 -0
  347. package/dist/dataParser/parsers/nil.d.ts +30 -0
  348. package/dist/dataParser/parsers/nil.mjs +3 -0
  349. package/dist/dataParser/parsers/nullable.cjs +3 -0
  350. package/dist/dataParser/parsers/nullable.d.ts +30 -0
  351. package/dist/dataParser/parsers/nullable.mjs +3 -0
  352. package/dist/dataParser/parsers/number/index.cjs +3 -0
  353. package/dist/dataParser/parsers/number/index.d.ts +30 -0
  354. package/dist/dataParser/parsers/number/index.mjs +3 -0
  355. package/dist/dataParser/parsers/object/extends.cjs +3 -0
  356. package/dist/dataParser/parsers/object/extends.d.ts +50 -0
  357. package/dist/dataParser/parsers/object/extends.mjs +3 -0
  358. package/dist/dataParser/parsers/object/index.cjs +3 -0
  359. package/dist/dataParser/parsers/object/index.d.ts +39 -0
  360. package/dist/dataParser/parsers/object/index.mjs +3 -0
  361. package/dist/dataParser/parsers/object/omit.cjs +3 -0
  362. package/dist/dataParser/parsers/object/omit.d.ts +38 -0
  363. package/dist/dataParser/parsers/object/omit.mjs +3 -0
  364. package/dist/dataParser/parsers/object/partial.cjs +3 -0
  365. package/dist/dataParser/parsers/object/partial.d.ts +28 -0
  366. package/dist/dataParser/parsers/object/partial.mjs +3 -0
  367. package/dist/dataParser/parsers/object/pick.cjs +3 -0
  368. package/dist/dataParser/parsers/object/pick.d.ts +35 -0
  369. package/dist/dataParser/parsers/object/pick.mjs +3 -0
  370. package/dist/dataParser/parsers/object/required.cjs +3 -0
  371. package/dist/dataParser/parsers/object/required.d.ts +37 -0
  372. package/dist/dataParser/parsers/object/required.mjs +3 -0
  373. package/dist/dataParser/parsers/optional.cjs +3 -0
  374. package/dist/dataParser/parsers/optional.d.ts +30 -0
  375. package/dist/dataParser/parsers/optional.mjs +3 -0
  376. package/dist/dataParser/parsers/pipe.cjs +3 -0
  377. package/dist/dataParser/parsers/pipe.d.ts +31 -0
  378. package/dist/dataParser/parsers/pipe.mjs +3 -0
  379. package/dist/dataParser/parsers/record/index.cjs +3 -0
  380. package/dist/dataParser/parsers/record/index.d.ts +37 -0
  381. package/dist/dataParser/parsers/record/index.mjs +3 -0
  382. package/dist/dataParser/parsers/recover.cjs +3 -0
  383. package/dist/dataParser/parsers/recover.d.ts +30 -0
  384. package/dist/dataParser/parsers/recover.mjs +3 -0
  385. package/dist/dataParser/parsers/string/index.cjs +3 -0
  386. package/dist/dataParser/parsers/string/index.d.ts +30 -0
  387. package/dist/dataParser/parsers/string/index.mjs +3 -0
  388. package/dist/dataParser/parsers/templateLiteral/index.cjs +3 -0
  389. package/dist/dataParser/parsers/templateLiteral/index.d.ts +30 -0
  390. package/dist/dataParser/parsers/templateLiteral/index.mjs +3 -0
  391. package/dist/dataParser/parsers/time/index.cjs +3 -0
  392. package/dist/dataParser/parsers/time/index.d.ts +30 -0
  393. package/dist/dataParser/parsers/time/index.mjs +3 -0
  394. package/dist/dataParser/parsers/transform.cjs +3 -0
  395. package/dist/dataParser/parsers/transform.d.ts +29 -0
  396. package/dist/dataParser/parsers/transform.mjs +3 -0
  397. package/dist/dataParser/parsers/tuple.cjs +3 -0
  398. package/dist/dataParser/parsers/tuple.d.ts +26 -0
  399. package/dist/dataParser/parsers/tuple.mjs +3 -0
  400. package/dist/dataParser/parsers/union.cjs +3 -0
  401. package/dist/dataParser/parsers/union.d.ts +31 -0
  402. package/dist/dataParser/parsers/union.mjs +3 -0
  403. package/dist/dataParser/parsers/unknown.cjs +3 -0
  404. package/dist/dataParser/parsers/unknown.d.ts +30 -0
  405. package/dist/dataParser/parsers/unknown.mjs +3 -0
  406. package/dist/date/applyTimezone.d.ts +29 -0
  407. package/dist/date/closestTo.d.ts +35 -0
  408. package/dist/date/create.d.ts +52 -0
  409. package/dist/date/createOrThrow.d.ts +35 -0
  410. package/dist/date/createTheDate.cjs +3 -0
  411. package/dist/date/createTheDate.d.ts +26 -0
  412. package/dist/date/createTheDate.mjs +3 -0
  413. package/dist/date/createTheTime.cjs +3 -0
  414. package/dist/date/createTheTime.d.ts +23 -0
  415. package/dist/date/createTheTime.mjs +3 -0
  416. package/dist/date/createTime.d.ts +37 -0
  417. package/dist/date/createTimeOrThrow.cjs +3 -0
  418. package/dist/date/createTimeOrThrow.d.ts +35 -0
  419. package/dist/date/createTimeOrThrow.mjs +3 -0
  420. package/dist/date/each.cjs +3 -0
  421. package/dist/date/each.d.ts +32 -0
  422. package/dist/date/each.mjs +3 -0
  423. package/dist/date/format.cjs +2 -1
  424. package/dist/date/format.d.ts +29 -0
  425. package/dist/date/format.mjs +2 -1
  426. package/dist/date/formatTime.cjs +38 -0
  427. package/dist/date/formatTime.d.ts +35 -0
  428. package/dist/date/formatTime.mjs +36 -0
  429. package/dist/date/getTimezoneOffset.d.ts +29 -0
  430. package/dist/date/getters/getDayOfMonth.cjs +3 -0
  431. package/dist/date/getters/getDayOfMonth.d.ts +29 -0
  432. package/dist/date/getters/getDayOfMonth.mjs +3 -0
  433. package/dist/date/getters/getDayOfWeek.cjs +3 -0
  434. package/dist/date/getters/getDayOfWeek.d.ts +29 -0
  435. package/dist/date/getters/getDayOfWeek.mjs +3 -0
  436. package/dist/date/getters/getDayOfYear.cjs +3 -0
  437. package/dist/date/getters/getDayOfYear.d.ts +26 -0
  438. package/dist/date/getters/getDayOfYear.mjs +3 -0
  439. package/dist/date/getters/getFirstDayOfMonth.cjs +3 -0
  440. package/dist/date/getters/getFirstDayOfMonth.d.ts +24 -0
  441. package/dist/date/getters/getFirstDayOfMonth.mjs +3 -0
  442. package/dist/date/getters/getFirstDayOfWeek.cjs +3 -0
  443. package/dist/date/getters/getFirstDayOfWeek.d.ts +24 -0
  444. package/dist/date/getters/getFirstDayOfWeek.mjs +3 -0
  445. package/dist/date/getters/getHour.cjs +3 -0
  446. package/dist/date/getters/getHour.d.ts +29 -0
  447. package/dist/date/getters/getHour.mjs +3 -0
  448. package/dist/date/getters/getLastDayOfMonth.cjs +3 -0
  449. package/dist/date/getters/getLastDayOfMonth.d.ts +24 -0
  450. package/dist/date/getters/getLastDayOfMonth.mjs +3 -0
  451. package/dist/date/getters/getLastDayOfWeek.cjs +3 -0
  452. package/dist/date/getters/getLastDayOfWeek.d.ts +24 -0
  453. package/dist/date/getters/getLastDayOfWeek.mjs +3 -0
  454. package/dist/date/getters/getMilliseconds.cjs +3 -0
  455. package/dist/date/getters/getMilliseconds.d.ts +29 -0
  456. package/dist/date/getters/getMilliseconds.mjs +3 -0
  457. package/dist/date/getters/getMinute.cjs +3 -0
  458. package/dist/date/getters/getMinute.d.ts +29 -0
  459. package/dist/date/getters/getMinute.mjs +3 -0
  460. package/dist/date/getters/getMonth.cjs +3 -0
  461. package/dist/date/getters/getMonth.d.ts +29 -0
  462. package/dist/date/getters/getMonth.mjs +3 -0
  463. package/dist/date/getters/getSecond.cjs +3 -0
  464. package/dist/date/getters/getSecond.d.ts +29 -0
  465. package/dist/date/getters/getSecond.mjs +3 -0
  466. package/dist/date/getters/getWeekOfYear.cjs +3 -0
  467. package/dist/date/getters/getWeekOfYear.d.ts +26 -0
  468. package/dist/date/getters/getWeekOfYear.mjs +3 -0
  469. package/dist/date/getters/getYear.cjs +3 -0
  470. package/dist/date/getters/getYear.d.ts +29 -0
  471. package/dist/date/getters/getYear.mjs +3 -0
  472. package/dist/date/index.cjs +7 -1
  473. package/dist/date/index.d.ts +34 -0
  474. package/dist/date/index.mjs +6 -0
  475. package/dist/date/is.cjs +3 -0
  476. package/dist/date/is.d.ts +30 -0
  477. package/dist/date/is.mjs +3 -0
  478. package/dist/date/isSafeTimeValue.cjs +3 -0
  479. package/dist/date/isSafeTimeValue.d.ts +26 -0
  480. package/dist/date/isSafeTimeValue.mjs +3 -0
  481. package/dist/date/isSafeTimestamp.cjs +3 -0
  482. package/dist/date/isSafeTimestamp.d.ts +31 -0
  483. package/dist/date/isSafeTimestamp.mjs +3 -0
  484. package/dist/date/isTime.cjs +3 -0
  485. package/dist/date/isTime.d.ts +29 -0
  486. package/dist/date/isTime.mjs +3 -0
  487. package/dist/date/makeSafeTimeValue.cjs +3 -0
  488. package/dist/date/makeSafeTimeValue.d.ts +26 -0
  489. package/dist/date/makeSafeTimeValue.mjs +3 -0
  490. package/dist/date/makeSafeTimestamp.cjs +3 -0
  491. package/dist/date/makeSafeTimestamp.d.ts +26 -0
  492. package/dist/date/makeSafeTimestamp.mjs +3 -0
  493. package/dist/date/max.cjs +3 -0
  494. package/dist/date/max.d.ts +24 -0
  495. package/dist/date/max.mjs +3 -0
  496. package/dist/date/maxTime.cjs +3 -0
  497. package/dist/date/maxTime.d.ts +33 -0
  498. package/dist/date/maxTime.mjs +3 -0
  499. package/dist/date/min.cjs +3 -0
  500. package/dist/date/min.d.ts +24 -0
  501. package/dist/date/min.mjs +3 -0
  502. package/dist/date/minTime.cjs +3 -0
  503. package/dist/date/minTime.d.ts +33 -0
  504. package/dist/date/minTime.mjs +3 -0
  505. package/dist/date/now.cjs +3 -0
  506. package/dist/date/now.d.ts +18 -0
  507. package/dist/date/now.mjs +3 -0
  508. package/dist/date/operators/addDays.d.ts +26 -0
  509. package/dist/date/operators/addHours.d.ts +26 -0
  510. package/dist/date/operators/addMilliseconds.d.ts +26 -0
  511. package/dist/date/operators/addMinutes.d.ts +26 -0
  512. package/dist/date/operators/addMonths.d.ts +30 -0
  513. package/dist/date/operators/addSeconds.d.ts +26 -0
  514. package/dist/date/operators/addTime.d.ts +31 -0
  515. package/dist/date/operators/addWeeks.d.ts +26 -0
  516. package/dist/date/operators/addYears.d.ts +30 -0
  517. package/dist/date/operators/between.d.ts +32 -0
  518. package/dist/date/operators/betweenThan.d.ts +32 -0
  519. package/dist/date/operators/betweenThanTime.d.ts +36 -0
  520. package/dist/date/operators/betweenTime.d.ts +36 -0
  521. package/dist/date/operators/greater.d.ts +28 -0
  522. package/dist/date/operators/greaterThan.d.ts +28 -0
  523. package/dist/date/operators/greaterThanTime.d.ts +35 -0
  524. package/dist/date/operators/greaterTime.d.ts +35 -0
  525. package/dist/date/operators/less.d.ts +28 -0
  526. package/dist/date/operators/lessThan.d.ts +28 -0
  527. package/dist/date/operators/lessThanTime.d.ts +35 -0
  528. package/dist/date/operators/lessTime.d.ts +35 -0
  529. package/dist/date/operators/subtractDays.d.ts +26 -0
  530. package/dist/date/operators/subtractHours.d.ts +26 -0
  531. package/dist/date/operators/subtractMilliseconds.d.ts +26 -0
  532. package/dist/date/operators/subtractMinutes.d.ts +26 -0
  533. package/dist/date/operators/subtractMonths.d.ts +26 -0
  534. package/dist/date/operators/subtractSeconds.d.ts +26 -0
  535. package/dist/date/operators/subtractTime.d.ts +31 -0
  536. package/dist/date/operators/subtractWeeks.d.ts +26 -0
  537. package/dist/date/operators/subtractYears.d.ts +26 -0
  538. package/dist/date/round.cjs +3 -0
  539. package/dist/date/round.d.ts +35 -0
  540. package/dist/date/round.mjs +3 -0
  541. package/dist/date/sort.d.ts +29 -0
  542. package/dist/date/sortTimes.d.ts +36 -0
  543. package/dist/date/toISOString.cjs +3 -0
  544. package/dist/date/toISOString.d.ts +24 -0
  545. package/dist/date/toISOString.mjs +3 -0
  546. package/dist/date/toNative.cjs +3 -0
  547. package/dist/date/toNative.d.ts +24 -0
  548. package/dist/date/toNative.mjs +3 -0
  549. package/dist/date/toTimeValue.cjs +3 -0
  550. package/dist/date/toTimeValue.d.ts +24 -0
  551. package/dist/date/toTimeValue.mjs +3 -0
  552. package/dist/date/toTimestamp.cjs +3 -0
  553. package/dist/date/toTimestamp.d.ts +24 -0
  554. package/dist/date/toTimestamp.mjs +3 -0
  555. package/dist/date/today.cjs +3 -0
  556. package/dist/date/today.d.ts +18 -0
  557. package/dist/date/today.mjs +3 -0
  558. package/dist/date/tomorrow.cjs +3 -0
  559. package/dist/date/tomorrow.d.ts +18 -0
  560. package/dist/date/tomorrow.mjs +3 -0
  561. package/dist/date/types/isLeapYear.d.ts +8 -0
  562. package/dist/date/types/isSafeYear.d.ts +8 -0
  563. package/dist/date/types/theDate.d.ts +10 -0
  564. package/dist/date/types/theTime.d.ts +9 -0
  565. package/dist/date/yesterday.cjs +3 -0
  566. package/dist/date/yesterday.d.ts +18 -0
  567. package/dist/date/yesterday.mjs +3 -0
  568. package/dist/either/bool/create.d.ts +22 -0
  569. package/dist/either/bool/falsy.cjs +9 -0
  570. package/dist/either/bool/falsy.d.ts +69 -0
  571. package/dist/either/bool/falsy.mjs +9 -0
  572. package/dist/either/bool/truthy.cjs +9 -0
  573. package/dist/either/bool/truthy.d.ts +69 -0
  574. package/dist/either/bool/truthy.mjs +9 -0
  575. package/dist/either/future/create.cjs +3 -0
  576. package/dist/either/future/create.d.ts +23 -0
  577. package/dist/either/future/create.mjs +3 -0
  578. package/dist/either/future/error.cjs +3 -0
  579. package/dist/either/future/error.d.ts +18 -0
  580. package/dist/either/future/error.mjs +3 -0
  581. package/dist/either/future/success.cjs +3 -0
  582. package/dist/either/future/success.d.ts +18 -0
  583. package/dist/either/future/success.mjs +3 -0
  584. package/dist/either/hasInformation.d.ts +30 -0
  585. package/dist/either/index.cjs +3 -1
  586. package/dist/either/index.d.ts +24 -0
  587. package/dist/either/index.mjs +4 -0
  588. package/dist/either/left/create.cjs +3 -0
  589. package/dist/either/left/create.d.ts +29 -0
  590. package/dist/either/left/create.mjs +3 -0
  591. package/dist/either/left/error.cjs +3 -0
  592. package/dist/either/left/error.d.ts +28 -0
  593. package/dist/either/left/error.mjs +3 -0
  594. package/dist/either/left/fail.cjs +3 -0
  595. package/dist/either/left/fail.d.ts +29 -0
  596. package/dist/either/left/fail.mjs +3 -0
  597. package/dist/either/left/is.cjs +3 -0
  598. package/dist/either/left/is.d.ts +22 -0
  599. package/dist/either/left/is.mjs +3 -0
  600. package/dist/either/left/when.d.ts +26 -0
  601. package/dist/either/nullable/create.d.ts +18 -0
  602. package/dist/either/nullable/empty.cjs +9 -0
  603. package/dist/either/nullable/empty.d.ts +59 -0
  604. package/dist/either/nullable/empty.mjs +9 -0
  605. package/dist/either/nullable/filled.cjs +9 -0
  606. package/dist/either/nullable/filled.d.ts +61 -0
  607. package/dist/either/nullable/filled.mjs +9 -0
  608. package/dist/either/nullish/create.d.ts +20 -0
  609. package/dist/either/nullish/empty.cjs +9 -0
  610. package/dist/either/nullish/empty.d.ts +61 -0
  611. package/dist/either/nullish/empty.mjs +9 -0
  612. package/dist/either/nullish/filled.cjs +9 -0
  613. package/dist/either/nullish/filled.d.ts +61 -0
  614. package/dist/either/nullish/filled.mjs +9 -0
  615. package/dist/either/optional/create.d.ts +18 -0
  616. package/dist/either/optional/empty.cjs +9 -0
  617. package/dist/either/optional/empty.d.ts +59 -0
  618. package/dist/either/optional/empty.mjs +9 -0
  619. package/dist/either/optional/filled.cjs +9 -0
  620. package/dist/either/optional/filled.d.ts +61 -0
  621. package/dist/either/optional/filled.mjs +9 -0
  622. package/dist/either/right/asyncGroup.cjs +3 -0
  623. package/dist/either/right/asyncGroup.d.ts +29 -0
  624. package/dist/either/right/asyncGroup.mjs +3 -0
  625. package/dist/either/right/asyncPipe.d.ts +37 -0
  626. package/dist/either/right/create.cjs +3 -0
  627. package/dist/either/right/create.d.ts +36 -0
  628. package/dist/either/right/create.mjs +3 -0
  629. package/dist/either/right/group.cjs +3 -0
  630. package/dist/either/right/group.d.ts +26 -0
  631. package/dist/either/right/group.mjs +3 -0
  632. package/dist/either/right/is.cjs +3 -0
  633. package/dist/either/right/is.d.ts +22 -0
  634. package/dist/either/right/is.mjs +3 -0
  635. package/dist/either/right/ok.cjs +3 -0
  636. package/dist/either/right/ok.d.ts +25 -0
  637. package/dist/either/right/ok.mjs +3 -0
  638. package/dist/either/right/pipe.d.ts +33 -0
  639. package/dist/either/right/success.cjs +3 -0
  640. package/dist/either/right/success.d.ts +28 -0
  641. package/dist/either/right/success.mjs +3 -0
  642. package/dist/either/right/when.d.ts +26 -0
  643. package/dist/either/safeCallback.cjs +3 -0
  644. package/dist/either/safeCallback.d.ts +26 -0
  645. package/dist/either/safeCallback.mjs +3 -0
  646. package/dist/either/whenHasInformation.d.ts +36 -0
  647. package/dist/generator/asyncChunk.d.ts +34 -0
  648. package/dist/generator/asyncFilter.d.ts +50 -0
  649. package/dist/generator/asyncLoop.cjs +3 -0
  650. package/dist/generator/asyncLoop.d.ts +43 -0
  651. package/dist/generator/asyncLoop.mjs +3 -0
  652. package/dist/generator/asyncMap.d.ts +38 -0
  653. package/dist/generator/asyncReduce.d.ts +34 -0
  654. package/dist/generator/chunk.d.ts +27 -0
  655. package/dist/generator/execute.d.ts +33 -0
  656. package/dist/generator/filter.d.ts +40 -0
  657. package/dist/generator/index.cjs +3 -1
  658. package/dist/generator/index.d.ts +26 -0
  659. package/dist/generator/index.mjs +4 -0
  660. package/dist/generator/loop.cjs +3 -0
  661. package/dist/generator/loop.d.ts +35 -0
  662. package/dist/generator/loop.mjs +3 -0
  663. package/dist/generator/map.d.ts +35 -0
  664. package/dist/generator/reduce.cjs +3 -0
  665. package/dist/generator/reduce.d.ts +60 -0
  666. package/dist/generator/reduce.mjs +3 -0
  667. package/dist/metadata.json +9 -0
  668. package/dist/number/abs.cjs +3 -0
  669. package/dist/number/abs.d.ts +27 -0
  670. package/dist/number/abs.mjs +3 -0
  671. package/dist/number/acos.cjs +3 -0
  672. package/dist/number/acos.d.ts +27 -0
  673. package/dist/number/acos.mjs +3 -0
  674. package/dist/number/add.d.ts +24 -0
  675. package/dist/number/asin.cjs +3 -0
  676. package/dist/number/asin.d.ts +27 -0
  677. package/dist/number/asin.mjs +3 -0
  678. package/dist/number/atan.cjs +3 -0
  679. package/dist/number/atan.d.ts +27 -0
  680. package/dist/number/atan.mjs +3 -0
  681. package/dist/number/atan2.d.ts +3 -0
  682. package/dist/number/between.d.ts +33 -0
  683. package/dist/number/betweenThan.d.ts +33 -0
  684. package/dist/number/ceil.cjs +3 -0
  685. package/dist/number/ceil.d.ts +27 -0
  686. package/dist/number/ceil.mjs +3 -0
  687. package/dist/number/clamp.d.ts +32 -0
  688. package/dist/number/cos.cjs +3 -0
  689. package/dist/number/cos.d.ts +27 -0
  690. package/dist/number/cos.mjs +3 -0
  691. package/dist/number/divide.d.ts +30 -0
  692. package/dist/number/floor.cjs +3 -0
  693. package/dist/number/floor.d.ts +27 -0
  694. package/dist/number/floor.mjs +3 -0
  695. package/dist/number/greater.d.ts +30 -0
  696. package/dist/number/greaterThan.d.ts +30 -0
  697. package/dist/number/index.cjs +3 -1
  698. package/dist/number/index.d.ts +25 -0
  699. package/dist/number/index.mjs +4 -0
  700. package/dist/number/less.d.ts +30 -0
  701. package/dist/number/lessThan.d.ts +30 -0
  702. package/dist/number/max.cjs +3 -0
  703. package/dist/number/max.d.ts +26 -0
  704. package/dist/number/max.mjs +3 -0
  705. package/dist/number/min.cjs +3 -0
  706. package/dist/number/min.d.ts +26 -0
  707. package/dist/number/min.mjs +3 -0
  708. package/dist/number/modulo.d.ts +30 -0
  709. package/dist/number/multiply.d.ts +30 -0
  710. package/dist/number/negate.cjs +3 -0
  711. package/dist/number/negate.d.ts +25 -0
  712. package/dist/number/negate.mjs +3 -0
  713. package/dist/number/power.d.ts +30 -0
  714. package/dist/number/round.cjs +3 -0
  715. package/dist/number/round.d.ts +27 -0
  716. package/dist/number/round.mjs +3 -0
  717. package/dist/number/sin.cjs +3 -0
  718. package/dist/number/sin.d.ts +27 -0
  719. package/dist/number/sin.mjs +3 -0
  720. package/dist/number/sort.d.ts +32 -0
  721. package/dist/number/sqrt.cjs +3 -0
  722. package/dist/number/sqrt.d.ts +27 -0
  723. package/dist/number/sqrt.mjs +3 -0
  724. package/dist/number/subtract.d.ts +30 -0
  725. package/dist/number/tan.cjs +3 -0
  726. package/dist/number/tan.d.ts +27 -0
  727. package/dist/number/tan.mjs +3 -0
  728. package/dist/number/toFixed.d.ts +33 -0
  729. package/dist/number/trunc.cjs +3 -0
  730. package/dist/number/trunc.d.ts +27 -0
  731. package/dist/number/trunc.mjs +3 -0
  732. package/dist/object/assign.d.ts +40 -0
  733. package/dist/object/deepDiscriminate.d.ts +54 -0
  734. package/dist/object/discriminate.d.ts +53 -0
  735. package/dist/object/entries.cjs +3 -0
  736. package/dist/object/entries.d.ts +31 -0
  737. package/dist/object/entries.mjs +3 -0
  738. package/dist/object/entry.cjs +3 -0
  739. package/dist/object/entry.d.ts +29 -0
  740. package/dist/object/entry.mjs +3 -0
  741. package/dist/object/fromEntries.cjs +3 -0
  742. package/dist/object/fromEntries.d.ts +39 -0
  743. package/dist/object/fromEntries.mjs +3 -0
  744. package/dist/object/getDeepProperty.d.ts +46 -0
  745. package/dist/object/getProperty.d.ts +39 -0
  746. package/dist/object/hasKeys.d.ts +48 -0
  747. package/dist/object/index.cjs +3 -1
  748. package/dist/object/index.d.ts +25 -0
  749. package/dist/object/index.mjs +4 -0
  750. package/dist/object/keys.cjs +3 -0
  751. package/dist/object/keys.d.ts +33 -0
  752. package/dist/object/keys.mjs +3 -0
  753. package/dist/object/omit.d.ts +46 -0
  754. package/dist/object/override.d.ts +49 -0
  755. package/dist/object/pick.d.ts +47 -0
  756. package/dist/object/to.d.ts +43 -0
  757. package/dist/object/transformProperties.d.ts +46 -0
  758. package/dist/object/transformProperty.d.ts +41 -0
  759. package/dist/object/values.cjs +3 -0
  760. package/dist/object/values.d.ts +33 -0
  761. package/dist/object/values.mjs +3 -0
  762. package/dist/pattern/exhaustive.cjs +3 -0
  763. package/dist/pattern/exhaustive.d.ts +51 -0
  764. package/dist/pattern/exhaustive.mjs +3 -0
  765. package/dist/pattern/index.cjs +3 -1
  766. package/dist/pattern/index.d.ts +24 -0
  767. package/dist/pattern/index.mjs +4 -0
  768. package/dist/pattern/isMatch.d.ts +36 -0
  769. package/dist/pattern/match/index.d.ts +58 -0
  770. package/dist/pattern/otherwise.d.ts +56 -0
  771. package/dist/pattern/union.cjs +3 -0
  772. package/dist/pattern/union.d.ts +37 -0
  773. package/dist/pattern/union.mjs +3 -0
  774. package/dist/pattern/when.d.ts +43 -0
  775. package/dist/string/at/default.d.ts +30 -0
  776. package/dist/string/capitalize.cjs +3 -0
  777. package/dist/string/capitalize.d.ts +27 -0
  778. package/dist/string/capitalize.mjs +3 -0
  779. package/dist/string/charAt.d.ts +29 -0
  780. package/dist/string/concat.d.ts +31 -0
  781. package/dist/string/endsWith.d.ts +41 -0
  782. package/dist/string/includes.d.ts +41 -0
  783. package/dist/string/index.cjs +3 -1
  784. package/dist/string/index.d.ts +27 -0
  785. package/dist/string/index.mjs +4 -0
  786. package/dist/string/indexOf.d.ts +30 -0
  787. package/dist/string/isIn.d.ts +45 -0
  788. package/dist/string/isKeyof.d.ts +45 -0
  789. package/dist/string/lastIndexOf.d.ts +30 -0
  790. package/dist/string/length.cjs +3 -0
  791. package/dist/string/length.d.ts +24 -0
  792. package/dist/string/length.mjs +3 -0
  793. package/dist/string/match.d.ts +29 -0
  794. package/dist/string/matchAll.d.ts +36 -0
  795. package/dist/string/normalize.d.ts +29 -0
  796. package/dist/string/padEnd.d.ts +29 -0
  797. package/dist/string/padStart.d.ts +29 -0
  798. package/dist/string/repeat.d.ts +29 -0
  799. package/dist/string/replace.d.ts +30 -0
  800. package/dist/string/replaceAll.d.ts +29 -0
  801. package/dist/string/search.d.ts +30 -0
  802. package/dist/string/slice.d.ts +29 -0
  803. package/dist/string/sort.d.ts +42 -0
  804. package/dist/string/sortCompare.d.ts +33 -0
  805. package/dist/string/split.d.ts +29 -0
  806. package/dist/string/startsWith.d.ts +41 -0
  807. package/dist/string/substring.d.ts +29 -0
  808. package/dist/string/test.d.ts +29 -0
  809. package/dist/string/toLowerCase.cjs +3 -0
  810. package/dist/string/toLowerCase.d.ts +27 -0
  811. package/dist/string/toLowerCase.mjs +3 -0
  812. package/dist/string/toUpperCase.cjs +3 -0
  813. package/dist/string/toUpperCase.d.ts +27 -0
  814. package/dist/string/toUpperCase.mjs +3 -0
  815. package/dist/string/trim/default.cjs +3 -0
  816. package/dist/string/trim/default.d.ts +27 -0
  817. package/dist/string/trim/default.mjs +3 -0
  818. package/dist/string/trim/end.cjs +3 -0
  819. package/dist/string/trim/end.d.ts +27 -0
  820. package/dist/string/trim/end.mjs +3 -0
  821. package/dist/string/trim/start.cjs +3 -0
  822. package/dist/string/trim/start.d.ts +27 -0
  823. package/dist/string/trim/start.mjs +3 -0
  824. package/dist/string/uncapitalize.cjs +3 -0
  825. package/dist/string/uncapitalize.d.ts +27 -0
  826. package/dist/string/uncapitalize.mjs +3 -0
  827. package/package.json +1 -1
@@ -1,4 +1,28 @@
1
1
  import { type Time } from "../../base";
2
2
  import { type TheTime } from "../../../../date";
3
+ /**
4
+ * Checks whether a Time is less than a threshold.
5
+ *
6
+ * **Supported call styles:**
7
+ * - Classic: `timeLessThan(time, threshold)` -> returns a boolean
8
+ * - Curried: `timeLessThan(threshold)` -> returns a function waiting for the time
9
+ *
10
+ * Use it to compare wrapped durations or raw TheTime values.
11
+ *
12
+ * ```ts
13
+ * const duration = C.Time.createOrThrow(D.createTheTime(3_600_000));
14
+ * const threshold = D.createTheTime(7_200_000);
15
+ *
16
+ * if (C.timeLessThan(duration, threshold)) {
17
+ * // duration is less than threshold
18
+ * }
19
+ *
20
+ * ```
21
+ *
22
+ * @see https://utils.duplojs.dev/en/v1/api/clean/primitives/operators/timeLessThan
23
+ *
24
+ * @namespace C
25
+ *
26
+ */
3
27
  export declare function timeLessThan(threshold: Time | TheTime): (primitive: Time) => boolean;
4
28
  export declare function timeLessThan(primitive: Time, threshold: Time | TheTime): boolean;
@@ -5,6 +5,9 @@ var createTheTime = require('../../../../date/createTheTime.cjs');
5
5
  var unwrap = require('../../../../common/unwrap.cjs');
6
6
  var toTimeValue = require('../../../../date/toTimeValue.cjs');
7
7
 
8
+ /**
9
+ * {@include clean/timeMax/index.md}
10
+ */
8
11
  function timeMax(input) {
9
12
  return wrapValue.wrapValue(createTheTime.createTheTime(Math.max(...input.map(unwrap.unwrap).map(toTimeValue.toTimeValue))));
10
13
  }
@@ -1,4 +1,40 @@
1
1
  import { type TheTime } from "../../../../date";
2
2
  import { type Time } from "../../base";
3
3
  import { type AnyTuple } from "../../../../common";
4
+ /**
5
+ * Returns the largest duration from a tuple of Time values.
6
+ *
7
+ * **Supported call styles:**
8
+ * - Classic: `timeMax(input)` -> returns a Time
9
+ *
10
+ * The input can mix wrapped Times and raw TheTime values.
11
+ *
12
+ * ```ts
13
+ * const largest = C.timeMax([
14
+ * C.Time.createOrThrow(D.createTheTime(1_000)),
15
+ * D.createTheTime(500),
16
+ * D.createTheTime(2_000),
17
+ * ]);
18
+ * // largest: C.Time
19
+ *
20
+ * const fromRaw = C.timeMax([
21
+ * D.createTheTime(10),
22
+ * D.createTheTime(5),
23
+ * D.createTheTime(20),
24
+ * ]);
25
+ * // fromRaw: C.Time
26
+ *
27
+ * const mixed = C.timeMax([
28
+ * C.Time.createOrThrow(D.createTheTime(100)),
29
+ * D.createTheTime(50),
30
+ * ]);
31
+ * // mixed: C.Time
32
+ *
33
+ * ```
34
+ *
35
+ * @see https://utils.duplojs.dev/en/v1/api/clean/primitives/operators/timeMax
36
+ *
37
+ * @namespace C
38
+ *
39
+ */
4
40
  export declare function timeMax(input: AnyTuple<Time | TheTime>): Time;
@@ -3,6 +3,9 @@ import { createTheTime } from '../../../../date/createTheTime.mjs';
3
3
  import { unwrap } from '../../../../common/unwrap.mjs';
4
4
  import { toTimeValue } from '../../../../date/toTimeValue.mjs';
5
5
 
6
+ /**
7
+ * {@include clean/timeMax/index.md}
8
+ */
6
9
  function timeMax(input) {
7
10
  return wrapValue(createTheTime(Math.max(...input.map(unwrap).map(toTimeValue))));
8
11
  }
@@ -5,6 +5,9 @@ var wrapValue = require('../../../../common/wrapValue.cjs');
5
5
  var createTheTime = require('../../../../date/createTheTime.cjs');
6
6
  var unwrap = require('../../../../common/unwrap.cjs');
7
7
 
8
+ /**
9
+ * {@include clean/timeMin/index.md}
10
+ */
8
11
  function timeMin(input) {
9
12
  return wrapValue.wrapValue(createTheTime.createTheTime(Math.min(...input.map(unwrap.unwrap).map(toTimeValue.toTimeValue))));
10
13
  }
@@ -1,4 +1,40 @@
1
1
  import { type TheTime } from "../../../../date";
2
2
  import { type Time } from "../../base";
3
3
  import { type AnyTuple } from "../../../../common";
4
+ /**
5
+ * Returns the smallest duration from a tuple of Time values.
6
+ *
7
+ * **Supported call styles:**
8
+ * - Classic: `timeMin(input)` -> returns a Time
9
+ *
10
+ * The input can mix wrapped Times and raw TheTime values.
11
+ *
12
+ * ```ts
13
+ * const smallest = C.timeMin([
14
+ * C.Time.createOrThrow(D.createTheTime(1_000)),
15
+ * D.createTheTime(500),
16
+ * D.createTheTime(2_000),
17
+ * ]);
18
+ * // smallest: C.Time
19
+ *
20
+ * const fromRaw = C.timeMin([
21
+ * D.createTheTime(10),
22
+ * D.createTheTime(5),
23
+ * D.createTheTime(20),
24
+ * ]);
25
+ * // fromRaw: C.Time
26
+ *
27
+ * const mixed = C.timeMin([
28
+ * C.Time.createOrThrow(D.createTheTime(100)),
29
+ * D.createTheTime(50),
30
+ * ]);
31
+ * // mixed: C.Time
32
+ *
33
+ * ```
34
+ *
35
+ * @see https://utils.duplojs.dev/en/v1/api/clean/primitives/operators/timeMin
36
+ *
37
+ * @namespace C
38
+ *
39
+ */
4
40
  export declare function timeMin(input: AnyTuple<Time | TheTime>): Time;
@@ -3,6 +3,9 @@ import { wrapValue } from '../../../../common/wrapValue.mjs';
3
3
  import { createTheTime } from '../../../../date/createTheTime.mjs';
4
4
  import { unwrap } from '../../../../common/unwrap.mjs';
5
5
 
6
+ /**
7
+ * {@include clean/timeMin/index.md}
8
+ */
6
9
  function timeMin(input) {
7
10
  return wrapValue(createTheTime(Math.min(...input.map(unwrap).map(toTimeValue))));
8
11
  }
@@ -3,6 +3,9 @@
3
3
  var kind = require('./kind.cjs');
4
4
 
5
5
  const repositoryHandlerKind = kind.createCleanKind("repository-handler");
6
+ /**
7
+ * {@include clean/createRepository/index.md}
8
+ */
6
9
  function createRepository() {
7
10
  return repositoryHandlerKind.setTo({
8
11
  createImplementation(implementation) {
@@ -1,8 +1,95 @@
1
1
  import { type SimplifyTopLevel, type AnyFunction, type Kind } from "../common";
2
2
  export declare const repositoryHandlerKind: import("../common").KindHandler<import("../common").KindDefinition<"@DuplojsUtilsClean/repository-handler", unknown>>;
3
3
  export interface RepositoryHandler<GenericRepository extends object = object> extends Kind<typeof repositoryHandlerKind.definition> {
4
+ /**
5
+ * Returns the implementation after verifying it matches the repository contract.
6
+ *
7
+ * ```ts
8
+ * // Infrastructure Layer
9
+ * const userRepository = UserRepository.createImplementation({
10
+ * findById(userId) {
11
+ * // database call
12
+ * const user = User.Entity.mapOrThrow({
13
+ * id: unwrap(userId),
14
+ * nickname: "Daniel",
15
+ * roles: ["manager"],
16
+ * });
17
+ *
18
+ * return Promise.resolve(E.success(user));
19
+ * },
20
+ * });
21
+ * ```
22
+ *
23
+ */
4
24
  createImplementation(implementation: SimplifyTopLevel<{
5
25
  [Prop in keyof GenericRepository]: GenericRepository[Prop] extends AnyFunction ? (...args: Parameters<GenericRepository[Prop]>) => ReturnType<GenericRepository[Prop]> : GenericRepository[Prop];
6
26
  }>): GenericRepository;
7
27
  }
28
+ /**
29
+ * Creates a repository handler for a contract interface.
30
+ *
31
+ * **Supported call styles:**
32
+ * - Classic: `createRepository<Repository>()` -> returns a handler
33
+ *
34
+ * The handler enforces the repository contract at compile time and stays runtime-free. It is meant to be composed with use cases.
35
+ *
36
+ * ```ts
37
+ * // Domain Layer
38
+ * export namespace User {
39
+ * export const Id = C.createNewType("UserId", DP.number(), C.Positive);
40
+ * export type Id = C.GetNewType<typeof Id>;
41
+ *
42
+ * export const Nickname = C.createNewType("UserNickname", DP.string());
43
+ * export type Nickname = C.GetNewType<typeof Nickname>;
44
+ *
45
+ * export const Role = C.createNewType("UserRole", DP.literal(["admin", "client", "manager"]));
46
+ * export type Role = C.GetNewType<typeof Role>;
47
+ *
48
+ * export const Entity = C.createEntity("User", ({ array }) => ({
49
+ * id: Id,
50
+ * nickname: Nickname,
51
+ * roles: array(Role, { min: 1 }),
52
+ * }));
53
+ * export type Entity = C.GetEntity<typeof Entity>;
54
+ * }
55
+ *
56
+ * // Application Layer
57
+ * interface UserRepository {
58
+ * findById(id: User.Id): Promise<E.EitherSuccess<User.Entity> | E.EitherFail>;
59
+ * }
60
+ *
61
+ * const UserRepository = C.createRepository<UserRepository>();
62
+ *
63
+ * const FindUserUseCase = C.createUseCase(
64
+ * { UserRepository },
65
+ * (
66
+ * { userRepository },
67
+ * ) => (userId: User.Id) => userRepository.findById(userId),
68
+ * );
69
+ *
70
+ * // Infrastructure Layer
71
+ * const userRepository = UserRepository.createImplementation({
72
+ * findById(userId) {
73
+ * // database call
74
+ * const user = User.Entity.mapOrThrow({
75
+ * id: unwrap(userId),
76
+ * nickname: "Daniel",
77
+ * roles: ["manager"],
78
+ * });
79
+ *
80
+ * return Promise.resolve(E.success(user));
81
+ * },
82
+ * });
83
+ *
84
+ *
85
+ * ```
86
+ *
87
+ * @remarks
88
+ * - This helper adds no runtime logic; it only validates the contract at compile time.
89
+ *
90
+ * @see https://utils.duplojs.dev/en/v1/api/clean/repository
91
+ *
92
+ * @namespace C
93
+ *
94
+ */
8
95
  export declare function createRepository<GenericRepository extends object>(): RepositoryHandler<GenericRepository>;
@@ -1,6 +1,9 @@
1
1
  import { createCleanKind } from './kind.mjs';
2
2
 
3
3
  const repositoryHandlerKind = createCleanKind("repository-handler");
4
+ /**
5
+ * {@include clean/createRepository/index.md}
6
+ */
4
7
  function createRepository() {
5
8
  return repositoryHandlerKind.setTo({
6
9
  createImplementation(implementation) {
@@ -9,6 +9,9 @@ var entries = require('../object/entries.cjs');
9
9
  var fromEntries = require('../object/fromEntries.cjs');
10
10
 
11
11
  const useCaseHandlerKind = kind.createCleanKind("use-case-handler");
12
+ /**
13
+ * {@include clean/createUseCase/index.md}
14
+ */
12
15
  function createUseCase(dependencies, getUseCase) {
13
16
  return useCaseHandlerKind.setTo({
14
17
  dependencies,
@@ -17,6 +20,9 @@ function createUseCase(dependencies, getUseCase) {
17
20
  : repositories[uncapitalize.uncapitalize(key)])), fromEntries.fromEntries)),
18
21
  });
19
22
  }
23
+ /**
24
+ * {@include clean/useCaseInstances/index.md}
25
+ */
20
26
  function useCaseInstances(useCases, repositories) {
21
27
  return pipe.pipe(useCases, entries.entries, map.map(([key, useCase]) => entry.entry(uncapitalize.uncapitalize(key), useCase.getUseCase(repositories))), fromEntries.fromEntries);
22
28
  }
@@ -12,12 +12,152 @@ export type GetAllRepositories<GenericDependenciesValue extends UseCaseDependenc
12
12
  })[keyof GenericDependenciesValue] : never;
13
13
  export declare const useCaseHandlerKind: import("../common").KindHandler<import("../common").KindDefinition<"@DuplojsUtilsClean/use-case-handler", unknown>>;
14
14
  export interface UseCaseHandler<GenericDependencies extends UseCaseDependencies = any, GenericUseCase extends (input: any) => any = any> extends Kind<typeof useCaseHandlerKind.definition> {
15
+ /**
16
+ * The dependency definition (repository handlers and/or use case handlers).
17
+ *
18
+ */
15
19
  dependencies: GenericDependencies;
20
+ /**
21
+ * Instantiates the use case with repository implementations.
22
+ *
23
+ * ```ts
24
+ * // instance one use case
25
+ * const findUserUseCase = FindUserUseCase.getUseCase({ userRepository });
26
+ * ```
27
+ *
28
+ */
16
29
  getUseCase(repositories: (GetAllRepositories<GenericDependencies> extends infer InferredEntriesDependenciesValue extends ObjectEntry ? {
17
30
  [Entry in InferredEntriesDependenciesValue as InferredEntriesDependenciesValue[0]]: InferredEntriesDependenciesValue[1];
18
31
  } : never)): GenericUseCase;
19
32
  }
33
+ /**
34
+ * Creates a use case handler with explicit dependencies.
35
+ *
36
+ * **Supported call styles:**
37
+ * - Classic: `createUseCase(dependencies, getUseCase)` -> returns a handler
38
+ *
39
+ * This separates declaration (dependencies + factory) from instantiation (repositories). Sub-use-cases are resolved automatically during instantiation.
40
+ *
41
+ * ```ts
42
+ * // Domain Layer
43
+ * export namespace User {
44
+ * export const Id = C.createNewType("UserId", DP.number(), C.Positive);
45
+ * export type Id = C.GetNewType<typeof Id>;
46
+ *
47
+ * export const Nickname = C.createNewType("UserNickname", DP.string());
48
+ * export type Nickname = C.GetNewType<typeof Nickname>;
49
+ *
50
+ * export const Role = C.createNewType("UserRole", DP.literal(["admin", "client", "manager"]));
51
+ * export type Role = C.GetNewType<typeof Role>;
52
+ *
53
+ * export const Entity = C.createEntity("User", ({ array }) => ({
54
+ * id: Id,
55
+ * nickname: Nickname,
56
+ * roles: array(Role, { min: 1 }),
57
+ * }));
58
+ * export type Entity = C.GetEntity<typeof Entity>;
59
+ * }
60
+ *
61
+ * // Application Layer
62
+ * interface UserRepository {
63
+ * findById(id: User.Id): Promise<E.EitherSuccess<User.Entity> | E.EitherFail>;
64
+ * }
65
+ *
66
+ * const UserRepository = C.createRepository<UserRepository>();
67
+ *
68
+ * const FindUserUseCase = C.createUseCase(
69
+ * { UserRepository },
70
+ * (
71
+ * { userRepository },
72
+ * ) => (userId: User.Id) => userRepository.findById(userId),
73
+ * );
74
+ *
75
+ * // Infrastructure Layer
76
+ * const userRepository = UserRepository.createImplementation({
77
+ * findById(userId) {
78
+ * // database call
79
+ * const user = User.Entity.mapOrThrow({
80
+ * id: unwrap(userId),
81
+ * nickname: "Daniel",
82
+ * roles: ["manager"],
83
+ * });
84
+ *
85
+ * return Promise.resolve(E.success(user));
86
+ * },
87
+ * });
88
+ *
89
+ * // instance one use case
90
+ * const findUserUseCase = FindUserUseCase.getUseCase({ userRepository });
91
+ *
92
+ * // instance many use cases
93
+ * const useCases = C.useCaseInstances(
94
+ * {
95
+ * FindUserUseCase,
96
+ * //...
97
+ * },
98
+ * {
99
+ * userRepository,
100
+ * //...
101
+ * },
102
+ * );
103
+ *
104
+ * ```
105
+ *
106
+ * @see https://utils.duplojs.dev/en/v1/api/clean/useCase
107
+ *
108
+ * @namespace C
109
+ *
110
+ */
20
111
  export declare function createUseCase<const GenericDependencies extends UseCaseDependencies, GenericUseCase extends (input: any) => any>(dependencies: GenericDependencies, getUseCase: (dependenciesValue: UseCaseDependenciesValue<GenericDependencies>) => GenericUseCase): UseCaseHandler<GenericDependencies, GenericUseCase>;
112
+ /**
113
+ * Instantiates multiple use cases at once.
114
+ *
115
+ * **Supported call styles:**
116
+ * - Classic: `useCaseInstances(useCases, repositories)` -> returns use case functions
117
+ *
118
+ * It maps dependency handlers to their implementations and returns an object of executable use cases with matching keys.
119
+ *
120
+ * ```ts
121
+ * interface UserRepository {
122
+ * findById(id: number): Promise<string | null>;
123
+ * }
124
+ *
125
+ * const UserRepository = C.createRepository<UserRepository>();
126
+ *
127
+ * const FindUser = C.createUseCase(
128
+ * { UserRepository },
129
+ * ({ userRepository }) => async(id: number) => userRepository.findById(id),
130
+ * );
131
+ *
132
+ * const CountUser = C.createUseCase(
133
+ * { UserRepository },
134
+ * ({ userRepository }) => async() => (await userRepository.findById(1) ? 1 : 0),
135
+ * );
136
+ *
137
+ * const repository = UserRepository.createImplementation({
138
+ * findById(id) {
139
+ * return Promise.resolve(id === 1 ? "Ada" : null);
140
+ * },
141
+ * });
142
+ *
143
+ * const useCases = C.useCaseInstances(
144
+ * {
145
+ * FindUser,
146
+ * CountUser,
147
+ * },
148
+ * { userRepository: repository },
149
+ * );
150
+ *
151
+ * ```
152
+ *
153
+ * @remarks
154
+ * - Returned keys are the uncapitalized version of the handler keys.
155
+ *
156
+ * @see https://utils.duplojs.dev/en/v1/api/clean/useCase
157
+ *
158
+ * @namespace C
159
+ *
160
+ */
21
161
  export declare function useCaseInstances<GenericUseCases extends Record<string, UseCaseHandler>>(useCases: GenericUseCases, repositories: SimplifyTopLevel<UnionToIntersection<{
22
162
  [Prop in keyof GenericUseCases]: Parameters<GenericUseCases[Prop]["getUseCase"]>[0];
23
163
  }[keyof GenericUseCases]>>): UseCaseDependenciesValue<GenericUseCases>;
@@ -7,6 +7,9 @@ import { entries } from '../object/entries.mjs';
7
7
  import { fromEntries } from '../object/fromEntries.mjs';
8
8
 
9
9
  const useCaseHandlerKind = createCleanKind("use-case-handler");
10
+ /**
11
+ * {@include clean/createUseCase/index.md}
12
+ */
10
13
  function createUseCase(dependencies, getUseCase) {
11
14
  return useCaseHandlerKind.setTo({
12
15
  dependencies,
@@ -15,6 +18,9 @@ function createUseCase(dependencies, getUseCase) {
15
18
  : repositories[uncapitalize(key)])), fromEntries)),
16
19
  });
17
20
  }
21
+ /**
22
+ * {@include clean/useCaseInstances/index.md}
23
+ */
18
24
  function useCaseInstances(useCases, repositories) {
19
25
  return pipe(useCases, entries, map(([key, useCase]) => entry(uncapitalize(key), useCase.getUseCase(repositories))), fromEntries);
20
26
  }
@@ -1,5 +1,8 @@
1
1
  'use strict';
2
2
 
3
+ /**
4
+ * {@include common/addWrappedProperties/index.md}
5
+ */
3
6
  function addWrappedProperties(wrappedValue, getProperties) {
4
7
  const properties = getProperties({
5
8
  wrappedValue,
@@ -1,4 +1,16 @@
1
1
  export type GetWrappedProperties<GenericWrappedValue extends object = object, GenericProperties extends object = object> = (params: {
2
2
  wrappedValue: GenericWrappedValue;
3
3
  }) => GenericProperties;
4
+ /**
5
+ * The addWrappedProperties() function dynamically adds derived properties to a wrapped value while keeping the original type and extending the new type.
6
+ *
7
+ * Signature: `addWrappedProperties(input, properties)` → returns a value
8
+ *
9
+ * The input value is not mutated.
10
+ *
11
+ * @see https://utils.duplojs.dev/en/v1/api/common/addWrappedProperties
12
+ *
13
+ * @namespace C
14
+ *
15
+ */
4
16
  export declare function addWrappedProperties<GenericWrappedValue extends object, GenericGetWrappedProperties extends GetWrappedProperties<GenericWrappedValue>>(wrappedValue: GenericWrappedValue, getProperties: GenericGetWrappedProperties): GenericWrappedValue & ReturnType<GenericGetWrappedProperties>;
@@ -1,3 +1,6 @@
1
+ /**
2
+ * {@include common/addWrappedProperties/index.md}
3
+ */
1
4
  function addWrappedProperties(wrappedValue, getProperties) {
2
5
  const properties = getProperties({
3
6
  wrappedValue,
@@ -8,6 +8,59 @@ type ExtractPredicate<GenericInput extends unknown, GenericPredicatedInput exten
8
8
  ...infer InferredRest extends AnyFunction<any[], boolean>[]
9
9
  ] ? InferredRest extends readonly [] ? InferredPredicate : InferredPredicate | ExtractPredicate<GenericInput, InferredRest> : GenericInput;
10
10
  type ComputeResult<GenericInput extends unknown, GenericPredicatedInput extends AnyFunction<any[], boolean>[]> = ExtractIntersection<GenericInput, GenericPredicatedInput> extends infer InferredResult extends GenericInput ? IsEqual<InferredResult, never> extends true ? GenericInput & UnionToIntersection<ExtractPredicate<GenericInput, GenericPredicatedInput>> : InferredResult : never;
11
+ /**
12
+ * The and() function combines several predicates or type guards. All must succeed for the result to be true and the type to be narrowed to the intersection.
13
+ *
14
+ * **Supported call styles:**
15
+ * - Classic: `and(input, predicates)` → returns a value
16
+ * - Curried: `and(predicates)` → returns a function waiting for the input
17
+ * - Classic predicate: `and(input, predicates)` → narrows the input type
18
+ * - Curried predicate: `and(predicates)` → narrows the input type
19
+ *
20
+ * Predicate overloads (type guards) narrow the output type.
21
+ *
22
+ * ```ts
23
+ * interface Admin {
24
+ * type: "admin";
25
+ * status: "active";
26
+ * meta: {
27
+ * role: "super";
28
+ * };
29
+ * }
30
+ *
31
+ * interface Viewer {
32
+ * type: "viewer";
33
+ * status: "active";
34
+ * meta: {
35
+ * role: "reader";
36
+ * };
37
+ * }
38
+ *
39
+ * const result = pipe(
40
+ * {
41
+ * type: "admin",
42
+ * status: "active",
43
+ * meta: {
44
+ * role: "super",
45
+ * },
46
+ * } as Admin | Viewer,
47
+ * when(
48
+ * and([
49
+ * DObject.discriminate("type", "admin"),
50
+ * DObject.discriminate("status", "active"),
51
+ * ]),
52
+ * (value) => {
53
+ * // type: Admin
54
+ * },
55
+ * ),
56
+ * );
57
+ * ```
58
+ *
59
+ * @see https://utils.duplojs.dev/en/v1/api/common/and
60
+ *
61
+ * @namespace C
62
+ *
63
+ */
11
64
  export declare function and<GenericInput extends unknown, GenericArrayPredicatedInput extends [
12
65
  (input: GenericInput) => input is any,
13
66
  (input: GenericInput) => input is any,
@@ -2,6 +2,55 @@ import { type MaybeFutureEither } from "../either/future/maybeFutureEither";
2
2
  import { type MaybePromise, type EscapeVoid, type BreakGenericLink } from "./types";
3
3
  import { type AnyValue } from "./types/anyValue";
4
4
  type MaybePromiseLike<GenericValue extends unknown> = MaybePromise<GenericValue> | MaybeFutureEither<GenericValue>;
5
+ /**
6
+ * The asyncInnerPipe() method builds a reusable asynchronous pipeline. It returns a function that accepts a value or a promise, runs each step while waiting for the previous one, then returns a promise of the final result.
7
+ *
8
+ * Signature: `asyncInnerPipe(pipe1, pipe2)` → returns a value
9
+ *
10
+ * The input value is not mutated.
11
+ *
12
+ * ```ts
13
+ * const input = [
14
+ * {
15
+ * host: "api.local",
16
+ * retries: 1,
17
+ * },
18
+ * {
19
+ * host: "api.external",
20
+ * retries: 2,
21
+ * },
22
+ * ];
23
+ *
24
+ * const result = await asyncPipe(
25
+ * input,
26
+ * A.map(
27
+ * asyncInnerPipe(
28
+ * ({ host, retries }) => ({
29
+ * url: `https://${host}/health`,
30
+ * retries,
31
+ * }),
32
+ * // fake HTTP request
33
+ * async({ url, retries }) => Promise.resolve({
34
+ * url,
35
+ * status: 200,
36
+ * retries,
37
+ * }),
38
+ * ({ status, url, retries }) => `${status} on ${url} (retries: ${retries})`,
39
+ * ),
40
+ * ),
41
+ * );
42
+ * // result: [
43
+ * // "result: "200 on https://api.local/health (retries: 1)",
44
+ * // "result: "200 on https://api.external/health (retries: 2)"
45
+ * // ]
46
+ *
47
+ * ```
48
+ *
49
+ * @see https://utils.duplojs.dev/en/v1/api/common/asyncInnerPipe
50
+ *
51
+ * @namespace C
52
+ *
53
+ */
5
54
  export declare function asyncInnerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid>(pipe1: (input: GenericInput) => MaybePromiseLike<GenericOutputPipe1>): (input: MaybePromiseLike<GenericInput>) => Promise<Awaited<BreakGenericLink<GenericOutputPipe1>>>;
6
55
  export declare function asyncInnerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid>(pipe1: (input: GenericInput) => MaybePromiseLike<GenericOutputPipe1>, pipe2: (input: GenericOutputPipe1) => MaybePromiseLike<GenericOutputPipe2>): (input: MaybePromiseLike<GenericInput>) => Promise<Awaited<BreakGenericLink<GenericOutputPipe2>>>;
7
56
  export declare function asyncInnerPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue | EscapeVoid, GenericOutputPipe2 extends AnyValue | EscapeVoid, GenericOutputPipe3 extends AnyValue | EscapeVoid>(pipe1: (input: GenericInput) => MaybePromiseLike<GenericOutputPipe1>, pipe2: (input: GenericOutputPipe1) => MaybePromiseLike<GenericOutputPipe2>, pipe3: (input: GenericOutputPipe2) => MaybePromiseLike<GenericOutputPipe3>): (input: MaybePromiseLike<GenericInput>) => Promise<Awaited<BreakGenericLink<GenericOutputPipe3>>>;
@@ -1,5 +1,8 @@
1
1
  'use strict';
2
2
 
3
+ /**
4
+ * {@include common/asyncLoop/index.md}
5
+ */
3
6
  async function asyncLoop(loop) {
4
7
  let previousOutput = undefined;
5
8
  for (let count = 0; true; count++) {
@@ -6,5 +6,34 @@ interface LoopOutputExistResult<GenericOutput extends any> {
6
6
  interface LoopOutputNextResult<GenericOutput extends any> {
7
7
  "-nextData": GenericOutput;
8
8
  }
9
+ /**
10
+ * The asyncLoop() function is the asynchronous variant of loop. Each iteration can return a promise before deciding to continue (next) or exit (exit).
11
+ *
12
+ * Signature: `asyncLoop(from, theFunction)` → returns a value
13
+ *
14
+ * The input value is not mutated.
15
+ *
16
+ * ```ts
17
+ * const result = await asyncLoop<number, number>(
18
+ * async({ count, previousOutput, next, exit }) => {
19
+ * const current = (previousOutput ?? 0) + 1;
20
+ *
21
+ * await Promise.resolve();
22
+ *
23
+ * if (count >= 2) {
24
+ * return exit(current);
25
+ * }
26
+ *
27
+ * return next(current);
28
+ * },
29
+ * );
30
+ * // result: 3
31
+ * ```
32
+ *
33
+ * @see https://utils.duplojs.dev/en/v1/api/common/asyncLoop
34
+ *
35
+ * @namespace C
36
+ *
37
+ */
9
38
  export declare function asyncLoop<GenericRawExitOutput extends AnyValue = undefined, GenericRawNextOutput extends AnyValue = undefined>(loop: (params: LoopParams<GenericRawNextOutput>) => Promise<LoopOutputNextResult<GenericRawNextOutput | undefined> | LoopOutputExistResult<GenericRawExitOutput>>): Promise<GenericRawExitOutput>;
10
39
  export {};
@@ -1,3 +1,6 @@
1
+ /**
2
+ * {@include common/asyncLoop/index.md}
3
+ */
1
4
  async function asyncLoop(loop) {
2
5
  let previousOutput = undefined;
3
6
  for (let count = 0; true; count++) {