@duplojs/utils 1.4.32 → 1.4.34

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 (842) 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/createKindIdentifier.d.ts +2 -2
  178. package/dist/common/enum.cjs +3 -0
  179. package/dist/common/enum.d.ts +34 -0
  180. package/dist/common/enum.mjs +3 -0
  181. package/dist/common/equal.d.ts +38 -0
  182. package/dist/common/escapeRegExp.cjs +3 -0
  183. package/dist/common/escapeRegExp.d.ts +20 -0
  184. package/dist/common/escapeRegExp.mjs +3 -0
  185. package/dist/common/externalPromise.cjs +3 -0
  186. package/dist/common/externalPromise.d.ts +20 -0
  187. package/dist/common/externalPromise.mjs +3 -0
  188. package/dist/common/falsy.cjs +3 -0
  189. package/dist/common/falsy.d.ts +27 -0
  190. package/dist/common/falsy.mjs +3 -0
  191. package/dist/common/forward.cjs +3 -0
  192. package/dist/common/forward.d.ts +23 -0
  193. package/dist/common/forward.mjs +3 -0
  194. package/dist/common/forwardLog.cjs +3 -0
  195. package/dist/common/forwardLog.d.ts +28 -0
  196. package/dist/common/forwardLog.mjs +3 -0
  197. package/dist/common/globalStore.cjs +3 -0
  198. package/dist/common/globalStore.d.ts +12 -0
  199. package/dist/common/globalStore.mjs +3 -0
  200. package/dist/common/hasKinds.d.ts +39 -0
  201. package/dist/common/hasSomeKinds.d.ts +39 -0
  202. package/dist/common/index.d.ts +27 -0
  203. package/dist/common/innerPipe.d.ts +35 -0
  204. package/dist/common/instanceOf.d.ts +33 -0
  205. package/dist/common/isType.d.ts +35 -0
  206. package/dist/common/justReturn.d.ts +43 -0
  207. package/dist/common/kind.cjs +6 -0
  208. package/dist/common/kind.d.ts +94 -0
  209. package/dist/common/kind.mjs +6 -0
  210. package/dist/common/loop.cjs +3 -0
  211. package/dist/common/loop.d.ts +26 -0
  212. package/dist/common/loop.mjs +3 -0
  213. package/dist/common/memo.cjs +3 -0
  214. package/dist/common/memo.d.ts +25 -0
  215. package/dist/common/memo.mjs +3 -0
  216. package/dist/common/or.d.ts +41 -0
  217. package/dist/common/override.cjs +3 -0
  218. package/dist/common/override.d.ts +45 -0
  219. package/dist/common/override.mjs +3 -0
  220. package/dist/common/pipe.d.ts +29 -0
  221. package/dist/common/promiseObject.cjs +3 -0
  222. package/dist/common/promiseObject.d.ts +26 -0
  223. package/dist/common/promiseObject.mjs +3 -0
  224. package/dist/common/simpleClone.cjs +3 -0
  225. package/dist/common/simpleClone.d.ts +23 -0
  226. package/dist/common/simpleClone.mjs +3 -0
  227. package/dist/common/sleep.cjs +3 -0
  228. package/dist/common/sleep.d.ts +21 -0
  229. package/dist/common/sleep.mjs +3 -0
  230. package/dist/common/stringToBytes.cjs +3 -0
  231. package/dist/common/stringToBytes.d.ts +17 -0
  232. package/dist/common/stringToBytes.mjs +3 -0
  233. package/dist/common/stringToMillisecond.cjs +3 -0
  234. package/dist/common/stringToMillisecond.d.ts +17 -0
  235. package/dist/common/stringToMillisecond.mjs +3 -0
  236. package/dist/common/toJSON.cjs +3 -0
  237. package/dist/common/toJSON.d.ts +35 -0
  238. package/dist/common/toJSON.mjs +3 -0
  239. package/dist/common/toString.cjs +3 -0
  240. package/dist/common/toString.d.ts +18 -0
  241. package/dist/common/toString.mjs +3 -0
  242. package/dist/common/toTransform.cjs +3 -0
  243. package/dist/common/toTransform.d.ts +41 -0
  244. package/dist/common/toTransform.mjs +3 -0
  245. package/dist/common/toWrappedValue.cjs +3 -0
  246. package/dist/common/toWrappedValue.d.ts +22 -0
  247. package/dist/common/toWrappedValue.mjs +3 -0
  248. package/dist/common/truthy.cjs +3 -0
  249. package/dist/common/truthy.d.ts +27 -0
  250. package/dist/common/truthy.mjs +3 -0
  251. package/dist/common/unwrap.d.ts +22 -0
  252. package/dist/common/when.d.ts +40 -0
  253. package/dist/common/whenElse.d.ts +42 -0
  254. package/dist/common/whenNot.d.ts +40 -0
  255. package/dist/common/wrapValue.cjs +9 -0
  256. package/dist/common/wrapValue.d.ts +55 -0
  257. package/dist/common/wrapValue.mjs +9 -0
  258. package/dist/dataParser/base.cjs +0 -1
  259. package/dist/dataParser/base.d.ts +103 -3
  260. package/dist/dataParser/base.mjs +0 -1
  261. package/dist/dataParser/baseExtended.cjs +0 -3
  262. package/dist/dataParser/baseExtended.d.ts +333 -4
  263. package/dist/dataParser/baseExtended.mjs +0 -3
  264. package/dist/dataParser/extended/array.cjs +3 -0
  265. package/dist/dataParser/extended/array.d.ts +85 -11
  266. package/dist/dataParser/extended/array.mjs +3 -0
  267. package/dist/dataParser/extended/bigint.cjs +3 -0
  268. package/dist/dataParser/extended/bigint.d.ts +85 -11
  269. package/dist/dataParser/extended/bigint.mjs +3 -0
  270. package/dist/dataParser/extended/boolean.cjs +3 -0
  271. package/dist/dataParser/extended/boolean.d.ts +29 -7
  272. package/dist/dataParser/extended/boolean.mjs +3 -0
  273. package/dist/dataParser/extended/date.cjs +3 -0
  274. package/dist/dataParser/extended/date.d.ts +29 -7
  275. package/dist/dataParser/extended/date.mjs +3 -0
  276. package/dist/dataParser/extended/empty.cjs +3 -0
  277. package/dist/dataParser/extended/empty.d.ts +28 -7
  278. package/dist/dataParser/extended/empty.mjs +3 -0
  279. package/dist/dataParser/extended/lazy.cjs +3 -0
  280. package/dist/dataParser/extended/lazy.d.ts +39 -7
  281. package/dist/dataParser/extended/lazy.mjs +3 -0
  282. package/dist/dataParser/extended/literal.cjs +3 -0
  283. package/dist/dataParser/extended/literal.d.ts +29 -7
  284. package/dist/dataParser/extended/literal.mjs +3 -0
  285. package/dist/dataParser/extended/nil.cjs +3 -0
  286. package/dist/dataParser/extended/nil.d.ts +29 -7
  287. package/dist/dataParser/extended/nil.mjs +3 -0
  288. package/dist/dataParser/extended/nullable.cjs +3 -0
  289. package/dist/dataParser/extended/nullable.d.ts +29 -7
  290. package/dist/dataParser/extended/nullable.mjs +3 -0
  291. package/dist/dataParser/extended/number.cjs +6 -0
  292. package/dist/dataParser/extended/number.d.ts +145 -14
  293. package/dist/dataParser/extended/number.mjs +6 -0
  294. package/dist/dataParser/extended/object.cjs +3 -0
  295. package/dist/dataParser/extended/object.d.ts +242 -5
  296. package/dist/dataParser/extended/object.mjs +3 -0
  297. package/dist/dataParser/extended/optional.cjs +3 -0
  298. package/dist/dataParser/extended/optional.d.ts +29 -7
  299. package/dist/dataParser/extended/optional.mjs +3 -0
  300. package/dist/dataParser/extended/pipe.cjs +3 -0
  301. package/dist/dataParser/extended/pipe.d.ts +29 -7
  302. package/dist/dataParser/extended/pipe.mjs +3 -0
  303. package/dist/dataParser/extended/record.cjs +3 -0
  304. package/dist/dataParser/extended/record.d.ts +39 -7
  305. package/dist/dataParser/extended/record.mjs +3 -0
  306. package/dist/dataParser/extended/recover.cjs +3 -0
  307. package/dist/dataParser/extended/recover.d.ts +28 -7
  308. package/dist/dataParser/extended/recover.mjs +3 -0
  309. package/dist/dataParser/extended/string.cjs +9 -0
  310. package/dist/dataParser/extended/string.d.ts +164 -14
  311. package/dist/dataParser/extended/string.mjs +9 -0
  312. package/dist/dataParser/extended/templateLiteral.cjs +3 -0
  313. package/dist/dataParser/extended/templateLiteral.d.ts +29 -7
  314. package/dist/dataParser/extended/templateLiteral.mjs +3 -0
  315. package/dist/dataParser/extended/time.cjs +3 -0
  316. package/dist/dataParser/extended/time.d.ts +85 -11
  317. package/dist/dataParser/extended/time.mjs +3 -0
  318. package/dist/dataParser/extended/transform.cjs +3 -0
  319. package/dist/dataParser/extended/transform.d.ts +29 -7
  320. package/dist/dataParser/extended/transform.mjs +3 -0
  321. package/dist/dataParser/extended/tuple.cjs +3 -0
  322. package/dist/dataParser/extended/tuple.d.ts +31 -13
  323. package/dist/dataParser/extended/tuple.mjs +3 -0
  324. package/dist/dataParser/extended/union.cjs +3 -0
  325. package/dist/dataParser/extended/union.d.ts +29 -7
  326. package/dist/dataParser/extended/union.mjs +3 -0
  327. package/dist/dataParser/extended/unknown.cjs +3 -0
  328. package/dist/dataParser/extended/unknown.d.ts +27 -7
  329. package/dist/dataParser/extended/unknown.mjs +3 -0
  330. package/dist/dataParser/identifier.d.ts +2 -2
  331. package/dist/dataParser/parsers/array/index.cjs +3 -0
  332. package/dist/dataParser/parsers/array/index.d.ts +30 -4
  333. package/dist/dataParser/parsers/array/index.mjs +3 -0
  334. package/dist/dataParser/parsers/bigint/index.cjs +3 -0
  335. package/dist/dataParser/parsers/bigint/index.d.ts +30 -4
  336. package/dist/dataParser/parsers/bigint/index.mjs +3 -0
  337. package/dist/dataParser/parsers/boolean.cjs +3 -0
  338. package/dist/dataParser/parsers/boolean.d.ts +30 -4
  339. package/dist/dataParser/parsers/boolean.mjs +3 -0
  340. package/dist/dataParser/parsers/date.cjs +3 -0
  341. package/dist/dataParser/parsers/date.d.ts +30 -4
  342. package/dist/dataParser/parsers/date.mjs +3 -0
  343. package/dist/dataParser/parsers/empty.cjs +3 -0
  344. package/dist/dataParser/parsers/empty.d.ts +29 -4
  345. package/dist/dataParser/parsers/empty.mjs +3 -0
  346. package/dist/dataParser/parsers/lazy.cjs +3 -0
  347. package/dist/dataParser/parsers/lazy.d.ts +39 -4
  348. package/dist/dataParser/parsers/lazy.mjs +3 -0
  349. package/dist/dataParser/parsers/literal.cjs +3 -0
  350. package/dist/dataParser/parsers/literal.d.ts +29 -4
  351. package/dist/dataParser/parsers/literal.mjs +3 -0
  352. package/dist/dataParser/parsers/nil.cjs +3 -0
  353. package/dist/dataParser/parsers/nil.d.ts +30 -4
  354. package/dist/dataParser/parsers/nil.mjs +3 -0
  355. package/dist/dataParser/parsers/nullable.cjs +3 -0
  356. package/dist/dataParser/parsers/nullable.d.ts +30 -4
  357. package/dist/dataParser/parsers/nullable.mjs +3 -0
  358. package/dist/dataParser/parsers/number/index.cjs +3 -0
  359. package/dist/dataParser/parsers/number/index.d.ts +30 -4
  360. package/dist/dataParser/parsers/number/index.mjs +3 -0
  361. package/dist/dataParser/parsers/object/extends.cjs +3 -0
  362. package/dist/dataParser/parsers/object/extends.d.ts +50 -0
  363. package/dist/dataParser/parsers/object/extends.mjs +3 -0
  364. package/dist/dataParser/parsers/object/index.cjs +3 -0
  365. package/dist/dataParser/parsers/object/index.d.ts +39 -4
  366. package/dist/dataParser/parsers/object/index.mjs +3 -0
  367. package/dist/dataParser/parsers/object/omit.cjs +3 -0
  368. package/dist/dataParser/parsers/object/omit.d.ts +38 -0
  369. package/dist/dataParser/parsers/object/omit.mjs +3 -0
  370. package/dist/dataParser/parsers/object/partial.cjs +3 -0
  371. package/dist/dataParser/parsers/object/partial.d.ts +28 -0
  372. package/dist/dataParser/parsers/object/partial.mjs +3 -0
  373. package/dist/dataParser/parsers/object/pick.cjs +3 -0
  374. package/dist/dataParser/parsers/object/pick.d.ts +35 -0
  375. package/dist/dataParser/parsers/object/pick.mjs +3 -0
  376. package/dist/dataParser/parsers/object/required.cjs +3 -0
  377. package/dist/dataParser/parsers/object/required.d.ts +37 -0
  378. package/dist/dataParser/parsers/object/required.mjs +3 -0
  379. package/dist/dataParser/parsers/optional.cjs +3 -0
  380. package/dist/dataParser/parsers/optional.d.ts +30 -4
  381. package/dist/dataParser/parsers/optional.mjs +3 -0
  382. package/dist/dataParser/parsers/pipe.cjs +3 -0
  383. package/dist/dataParser/parsers/pipe.d.ts +31 -4
  384. package/dist/dataParser/parsers/pipe.mjs +3 -0
  385. package/dist/dataParser/parsers/record/index.cjs +3 -0
  386. package/dist/dataParser/parsers/record/index.d.ts +37 -4
  387. package/dist/dataParser/parsers/record/index.mjs +3 -0
  388. package/dist/dataParser/parsers/recover.cjs +3 -0
  389. package/dist/dataParser/parsers/recover.d.ts +30 -4
  390. package/dist/dataParser/parsers/recover.mjs +3 -0
  391. package/dist/dataParser/parsers/string/index.cjs +3 -0
  392. package/dist/dataParser/parsers/string/index.d.ts +30 -4
  393. package/dist/dataParser/parsers/string/index.mjs +3 -0
  394. package/dist/dataParser/parsers/templateLiteral/createTemplateLiteralPattern.cjs +2 -2
  395. package/dist/dataParser/parsers/templateLiteral/createTemplateLiteralPattern.mjs +2 -2
  396. package/dist/dataParser/parsers/templateLiteral/index.cjs +3 -0
  397. package/dist/dataParser/parsers/templateLiteral/index.d.ts +41 -15
  398. package/dist/dataParser/parsers/templateLiteral/index.mjs +3 -0
  399. package/dist/dataParser/parsers/time/index.cjs +3 -0
  400. package/dist/dataParser/parsers/time/index.d.ts +30 -4
  401. package/dist/dataParser/parsers/time/index.mjs +3 -0
  402. package/dist/dataParser/parsers/transform.cjs +3 -0
  403. package/dist/dataParser/parsers/transform.d.ts +29 -4
  404. package/dist/dataParser/parsers/transform.mjs +3 -0
  405. package/dist/dataParser/parsers/tuple.cjs +3 -0
  406. package/dist/dataParser/parsers/tuple.d.ts +26 -4
  407. package/dist/dataParser/parsers/tuple.mjs +3 -0
  408. package/dist/dataParser/parsers/union.cjs +3 -0
  409. package/dist/dataParser/parsers/union.d.ts +31 -4
  410. package/dist/dataParser/parsers/union.mjs +3 -0
  411. package/dist/dataParser/parsers/unknown.cjs +3 -0
  412. package/dist/dataParser/parsers/unknown.d.ts +30 -4
  413. package/dist/dataParser/parsers/unknown.mjs +3 -0
  414. package/dist/dataParser/types/addCheckersToDefinition.d.ts +2 -2
  415. package/dist/date/applyTimezone.d.ts +29 -0
  416. package/dist/date/closestTo.d.ts +35 -0
  417. package/dist/date/create.d.ts +52 -0
  418. package/dist/date/createOrThrow.d.ts +35 -0
  419. package/dist/date/createTheDate.cjs +3 -0
  420. package/dist/date/createTheDate.d.ts +26 -0
  421. package/dist/date/createTheDate.mjs +3 -0
  422. package/dist/date/createTheTime.cjs +3 -0
  423. package/dist/date/createTheTime.d.ts +23 -0
  424. package/dist/date/createTheTime.mjs +3 -0
  425. package/dist/date/createTime.d.ts +37 -0
  426. package/dist/date/createTimeOrThrow.cjs +3 -0
  427. package/dist/date/createTimeOrThrow.d.ts +35 -0
  428. package/dist/date/createTimeOrThrow.mjs +3 -0
  429. package/dist/date/each.cjs +3 -0
  430. package/dist/date/each.d.ts +32 -0
  431. package/dist/date/each.mjs +3 -0
  432. package/dist/date/format.cjs +2 -1
  433. package/dist/date/format.d.ts +29 -0
  434. package/dist/date/format.mjs +2 -1
  435. package/dist/date/formatTime.cjs +38 -0
  436. package/dist/date/formatTime.d.ts +35 -0
  437. package/dist/date/formatTime.mjs +36 -0
  438. package/dist/date/getTimezoneOffset.d.ts +29 -0
  439. package/dist/date/getters/getDayOfMonth.cjs +3 -0
  440. package/dist/date/getters/getDayOfMonth.d.ts +29 -0
  441. package/dist/date/getters/getDayOfMonth.mjs +3 -0
  442. package/dist/date/getters/getDayOfWeek.cjs +3 -0
  443. package/dist/date/getters/getDayOfWeek.d.ts +29 -0
  444. package/dist/date/getters/getDayOfWeek.mjs +3 -0
  445. package/dist/date/getters/getDayOfYear.cjs +3 -0
  446. package/dist/date/getters/getDayOfYear.d.ts +26 -0
  447. package/dist/date/getters/getDayOfYear.mjs +3 -0
  448. package/dist/date/getters/getFirstDayOfMonth.cjs +3 -0
  449. package/dist/date/getters/getFirstDayOfMonth.d.ts +24 -0
  450. package/dist/date/getters/getFirstDayOfMonth.mjs +3 -0
  451. package/dist/date/getters/getFirstDayOfWeek.cjs +3 -0
  452. package/dist/date/getters/getFirstDayOfWeek.d.ts +24 -0
  453. package/dist/date/getters/getFirstDayOfWeek.mjs +3 -0
  454. package/dist/date/getters/getHour.cjs +3 -0
  455. package/dist/date/getters/getHour.d.ts +29 -0
  456. package/dist/date/getters/getHour.mjs +3 -0
  457. package/dist/date/getters/getLastDayOfMonth.cjs +3 -0
  458. package/dist/date/getters/getLastDayOfMonth.d.ts +24 -0
  459. package/dist/date/getters/getLastDayOfMonth.mjs +3 -0
  460. package/dist/date/getters/getLastDayOfWeek.cjs +3 -0
  461. package/dist/date/getters/getLastDayOfWeek.d.ts +24 -0
  462. package/dist/date/getters/getLastDayOfWeek.mjs +3 -0
  463. package/dist/date/getters/getMilliseconds.cjs +3 -0
  464. package/dist/date/getters/getMilliseconds.d.ts +29 -0
  465. package/dist/date/getters/getMilliseconds.mjs +3 -0
  466. package/dist/date/getters/getMinute.cjs +3 -0
  467. package/dist/date/getters/getMinute.d.ts +29 -0
  468. package/dist/date/getters/getMinute.mjs +3 -0
  469. package/dist/date/getters/getMonth.cjs +3 -0
  470. package/dist/date/getters/getMonth.d.ts +29 -0
  471. package/dist/date/getters/getMonth.mjs +3 -0
  472. package/dist/date/getters/getSecond.cjs +3 -0
  473. package/dist/date/getters/getSecond.d.ts +29 -0
  474. package/dist/date/getters/getSecond.mjs +3 -0
  475. package/dist/date/getters/getWeekOfYear.cjs +3 -0
  476. package/dist/date/getters/getWeekOfYear.d.ts +26 -0
  477. package/dist/date/getters/getWeekOfYear.mjs +3 -0
  478. package/dist/date/getters/getYear.cjs +3 -0
  479. package/dist/date/getters/getYear.d.ts +29 -0
  480. package/dist/date/getters/getYear.mjs +3 -0
  481. package/dist/date/index.cjs +7 -1
  482. package/dist/date/index.d.ts +34 -0
  483. package/dist/date/index.mjs +6 -0
  484. package/dist/date/is.cjs +3 -0
  485. package/dist/date/is.d.ts +30 -0
  486. package/dist/date/is.mjs +3 -0
  487. package/dist/date/isSafeTimeValue.cjs +3 -0
  488. package/dist/date/isSafeTimeValue.d.ts +26 -0
  489. package/dist/date/isSafeTimeValue.mjs +3 -0
  490. package/dist/date/isSafeTimestamp.cjs +3 -0
  491. package/dist/date/isSafeTimestamp.d.ts +31 -0
  492. package/dist/date/isSafeTimestamp.mjs +3 -0
  493. package/dist/date/isTime.cjs +3 -0
  494. package/dist/date/isTime.d.ts +29 -0
  495. package/dist/date/isTime.mjs +3 -0
  496. package/dist/date/makeSafeTimeValue.cjs +3 -0
  497. package/dist/date/makeSafeTimeValue.d.ts +26 -0
  498. package/dist/date/makeSafeTimeValue.mjs +3 -0
  499. package/dist/date/makeSafeTimestamp.cjs +3 -0
  500. package/dist/date/makeSafeTimestamp.d.ts +26 -0
  501. package/dist/date/makeSafeTimestamp.mjs +3 -0
  502. package/dist/date/max.cjs +3 -0
  503. package/dist/date/max.d.ts +24 -0
  504. package/dist/date/max.mjs +3 -0
  505. package/dist/date/maxTime.cjs +3 -0
  506. package/dist/date/maxTime.d.ts +33 -0
  507. package/dist/date/maxTime.mjs +3 -0
  508. package/dist/date/min.cjs +3 -0
  509. package/dist/date/min.d.ts +24 -0
  510. package/dist/date/min.mjs +3 -0
  511. package/dist/date/minTime.cjs +3 -0
  512. package/dist/date/minTime.d.ts +33 -0
  513. package/dist/date/minTime.mjs +3 -0
  514. package/dist/date/now.cjs +3 -0
  515. package/dist/date/now.d.ts +18 -0
  516. package/dist/date/now.mjs +3 -0
  517. package/dist/date/operators/addDays.d.ts +26 -0
  518. package/dist/date/operators/addHours.d.ts +26 -0
  519. package/dist/date/operators/addMilliseconds.d.ts +26 -0
  520. package/dist/date/operators/addMinutes.d.ts +26 -0
  521. package/dist/date/operators/addMonths.d.ts +30 -0
  522. package/dist/date/operators/addSeconds.d.ts +26 -0
  523. package/dist/date/operators/addTime.d.ts +31 -0
  524. package/dist/date/operators/addWeeks.d.ts +26 -0
  525. package/dist/date/operators/addYears.d.ts +30 -0
  526. package/dist/date/operators/between.d.ts +32 -0
  527. package/dist/date/operators/betweenThan.d.ts +32 -0
  528. package/dist/date/operators/betweenThanTime.d.ts +36 -0
  529. package/dist/date/operators/betweenTime.d.ts +36 -0
  530. package/dist/date/operators/greater.d.ts +28 -0
  531. package/dist/date/operators/greaterThan.d.ts +28 -0
  532. package/dist/date/operators/greaterThanTime.d.ts +35 -0
  533. package/dist/date/operators/greaterTime.d.ts +35 -0
  534. package/dist/date/operators/less.d.ts +28 -0
  535. package/dist/date/operators/lessThan.d.ts +28 -0
  536. package/dist/date/operators/lessThanTime.d.ts +35 -0
  537. package/dist/date/operators/lessTime.d.ts +35 -0
  538. package/dist/date/operators/subtractDays.d.ts +26 -0
  539. package/dist/date/operators/subtractHours.d.ts +26 -0
  540. package/dist/date/operators/subtractMilliseconds.d.ts +26 -0
  541. package/dist/date/operators/subtractMinutes.d.ts +26 -0
  542. package/dist/date/operators/subtractMonths.d.ts +26 -0
  543. package/dist/date/operators/subtractSeconds.d.ts +26 -0
  544. package/dist/date/operators/subtractTime.d.ts +31 -0
  545. package/dist/date/operators/subtractWeeks.d.ts +26 -0
  546. package/dist/date/operators/subtractYears.d.ts +26 -0
  547. package/dist/date/round.cjs +3 -0
  548. package/dist/date/round.d.ts +35 -0
  549. package/dist/date/round.mjs +3 -0
  550. package/dist/date/sort.d.ts +29 -0
  551. package/dist/date/sortTimes.d.ts +36 -0
  552. package/dist/date/toISOString.cjs +3 -0
  553. package/dist/date/toISOString.d.ts +24 -0
  554. package/dist/date/toISOString.mjs +3 -0
  555. package/dist/date/toNative.cjs +3 -0
  556. package/dist/date/toNative.d.ts +24 -0
  557. package/dist/date/toNative.mjs +3 -0
  558. package/dist/date/toTimeValue.cjs +3 -0
  559. package/dist/date/toTimeValue.d.ts +24 -0
  560. package/dist/date/toTimeValue.mjs +3 -0
  561. package/dist/date/toTimestamp.cjs +3 -0
  562. package/dist/date/toTimestamp.d.ts +24 -0
  563. package/dist/date/toTimestamp.mjs +3 -0
  564. package/dist/date/today.cjs +3 -0
  565. package/dist/date/today.d.ts +18 -0
  566. package/dist/date/today.mjs +3 -0
  567. package/dist/date/tomorrow.cjs +3 -0
  568. package/dist/date/tomorrow.d.ts +18 -0
  569. package/dist/date/tomorrow.mjs +3 -0
  570. package/dist/date/types/isLeapYear.d.ts +8 -0
  571. package/dist/date/types/isSafeYear.d.ts +8 -0
  572. package/dist/date/types/theDate.d.ts +10 -0
  573. package/dist/date/types/theTime.d.ts +9 -0
  574. package/dist/date/yesterday.cjs +3 -0
  575. package/dist/date/yesterday.d.ts +18 -0
  576. package/dist/date/yesterday.mjs +3 -0
  577. package/dist/either/bool/create.d.ts +22 -0
  578. package/dist/either/bool/falsy.cjs +9 -0
  579. package/dist/either/bool/falsy.d.ts +69 -0
  580. package/dist/either/bool/falsy.mjs +9 -0
  581. package/dist/either/bool/truthy.cjs +9 -0
  582. package/dist/either/bool/truthy.d.ts +69 -0
  583. package/dist/either/bool/truthy.mjs +9 -0
  584. package/dist/either/future/create.cjs +3 -0
  585. package/dist/either/future/create.d.ts +25 -2
  586. package/dist/either/future/create.mjs +3 -0
  587. package/dist/either/future/error.cjs +3 -0
  588. package/dist/either/future/error.d.ts +18 -0
  589. package/dist/either/future/error.mjs +3 -0
  590. package/dist/either/future/success.cjs +3 -0
  591. package/dist/either/future/success.d.ts +18 -0
  592. package/dist/either/future/success.mjs +3 -0
  593. package/dist/either/hasInformation.d.ts +30 -0
  594. package/dist/either/index.cjs +3 -1
  595. package/dist/either/index.d.ts +24 -0
  596. package/dist/either/index.mjs +4 -0
  597. package/dist/either/left/create.cjs +3 -0
  598. package/dist/either/left/create.d.ts +29 -0
  599. package/dist/either/left/create.mjs +3 -0
  600. package/dist/either/left/error.cjs +3 -0
  601. package/dist/either/left/error.d.ts +28 -0
  602. package/dist/either/left/error.mjs +3 -0
  603. package/dist/either/left/fail.cjs +3 -0
  604. package/dist/either/left/fail.d.ts +29 -0
  605. package/dist/either/left/fail.mjs +3 -0
  606. package/dist/either/left/is.cjs +3 -0
  607. package/dist/either/left/is.d.ts +22 -0
  608. package/dist/either/left/is.mjs +3 -0
  609. package/dist/either/left/when.d.ts +26 -0
  610. package/dist/either/nullable/create.d.ts +18 -0
  611. package/dist/either/nullable/empty.cjs +9 -0
  612. package/dist/either/nullable/empty.d.ts +59 -0
  613. package/dist/either/nullable/empty.mjs +9 -0
  614. package/dist/either/nullable/filled.cjs +9 -0
  615. package/dist/either/nullable/filled.d.ts +61 -0
  616. package/dist/either/nullable/filled.mjs +9 -0
  617. package/dist/either/nullish/create.d.ts +20 -0
  618. package/dist/either/nullish/empty.cjs +9 -0
  619. package/dist/either/nullish/empty.d.ts +61 -0
  620. package/dist/either/nullish/empty.mjs +9 -0
  621. package/dist/either/nullish/filled.cjs +9 -0
  622. package/dist/either/nullish/filled.d.ts +61 -0
  623. package/dist/either/nullish/filled.mjs +9 -0
  624. package/dist/either/optional/create.d.ts +18 -0
  625. package/dist/either/optional/empty.cjs +9 -0
  626. package/dist/either/optional/empty.d.ts +59 -0
  627. package/dist/either/optional/empty.mjs +9 -0
  628. package/dist/either/optional/filled.cjs +9 -0
  629. package/dist/either/optional/filled.d.ts +61 -0
  630. package/dist/either/optional/filled.mjs +9 -0
  631. package/dist/either/right/asyncGroup.cjs +3 -0
  632. package/dist/either/right/asyncGroup.d.ts +29 -0
  633. package/dist/either/right/asyncGroup.mjs +3 -0
  634. package/dist/either/right/asyncPipe.d.ts +33 -0
  635. package/dist/either/right/create.cjs +3 -0
  636. package/dist/either/right/create.d.ts +36 -0
  637. package/dist/either/right/create.mjs +3 -0
  638. package/dist/either/right/group.cjs +3 -0
  639. package/dist/either/right/group.d.ts +26 -0
  640. package/dist/either/right/group.mjs +3 -0
  641. package/dist/either/right/is.cjs +3 -0
  642. package/dist/either/right/is.d.ts +22 -0
  643. package/dist/either/right/is.mjs +3 -0
  644. package/dist/either/right/ok.cjs +3 -0
  645. package/dist/either/right/ok.d.ts +25 -0
  646. package/dist/either/right/ok.mjs +3 -0
  647. package/dist/either/right/pipe.d.ts +33 -0
  648. package/dist/either/right/success.cjs +3 -0
  649. package/dist/either/right/success.d.ts +28 -0
  650. package/dist/either/right/success.mjs +3 -0
  651. package/dist/either/right/when.d.ts +26 -0
  652. package/dist/either/safeCallback.cjs +3 -0
  653. package/dist/either/safeCallback.d.ts +26 -0
  654. package/dist/either/safeCallback.mjs +3 -0
  655. package/dist/either/whenHasInformation.d.ts +36 -0
  656. package/dist/generator/asyncChunk.d.ts +34 -0
  657. package/dist/generator/asyncFilter.d.ts +50 -0
  658. package/dist/generator/asyncLoop.cjs +3 -0
  659. package/dist/generator/asyncLoop.d.ts +43 -0
  660. package/dist/generator/asyncLoop.mjs +3 -0
  661. package/dist/generator/asyncMap.d.ts +38 -0
  662. package/dist/generator/asyncReduce.d.ts +34 -0
  663. package/dist/generator/chunk.d.ts +27 -0
  664. package/dist/generator/execute.d.ts +33 -0
  665. package/dist/generator/filter.d.ts +40 -0
  666. package/dist/generator/index.cjs +3 -1
  667. package/dist/generator/index.d.ts +26 -0
  668. package/dist/generator/index.mjs +4 -0
  669. package/dist/generator/loop.cjs +3 -0
  670. package/dist/generator/loop.d.ts +35 -0
  671. package/dist/generator/loop.mjs +3 -0
  672. package/dist/generator/map.d.ts +35 -0
  673. package/dist/generator/reduce.cjs +3 -0
  674. package/dist/generator/reduce.d.ts +60 -0
  675. package/dist/generator/reduce.mjs +3 -0
  676. package/dist/metadata.json +18 -0
  677. package/dist/number/abs.cjs +3 -0
  678. package/dist/number/abs.d.ts +27 -0
  679. package/dist/number/abs.mjs +3 -0
  680. package/dist/number/acos.cjs +3 -0
  681. package/dist/number/acos.d.ts +27 -0
  682. package/dist/number/acos.mjs +3 -0
  683. package/dist/number/add.d.ts +24 -0
  684. package/dist/number/asin.cjs +3 -0
  685. package/dist/number/asin.d.ts +27 -0
  686. package/dist/number/asin.mjs +3 -0
  687. package/dist/number/atan.cjs +3 -0
  688. package/dist/number/atan.d.ts +27 -0
  689. package/dist/number/atan.mjs +3 -0
  690. package/dist/number/atan2.d.ts +3 -0
  691. package/dist/number/between.d.ts +33 -0
  692. package/dist/number/betweenThan.d.ts +33 -0
  693. package/dist/number/ceil.cjs +3 -0
  694. package/dist/number/ceil.d.ts +27 -0
  695. package/dist/number/ceil.mjs +3 -0
  696. package/dist/number/clamp.d.ts +32 -0
  697. package/dist/number/cos.cjs +3 -0
  698. package/dist/number/cos.d.ts +27 -0
  699. package/dist/number/cos.mjs +3 -0
  700. package/dist/number/divide.d.ts +30 -0
  701. package/dist/number/floor.cjs +3 -0
  702. package/dist/number/floor.d.ts +27 -0
  703. package/dist/number/floor.mjs +3 -0
  704. package/dist/number/greater.d.ts +30 -0
  705. package/dist/number/greaterThan.d.ts +30 -0
  706. package/dist/number/index.cjs +3 -1
  707. package/dist/number/index.d.ts +25 -0
  708. package/dist/number/index.mjs +4 -0
  709. package/dist/number/less.d.ts +30 -0
  710. package/dist/number/lessThan.d.ts +30 -0
  711. package/dist/number/max.cjs +3 -0
  712. package/dist/number/max.d.ts +26 -0
  713. package/dist/number/max.mjs +3 -0
  714. package/dist/number/min.cjs +3 -0
  715. package/dist/number/min.d.ts +26 -0
  716. package/dist/number/min.mjs +3 -0
  717. package/dist/number/modulo.d.ts +30 -0
  718. package/dist/number/multiply.d.ts +30 -0
  719. package/dist/number/negate.cjs +3 -0
  720. package/dist/number/negate.d.ts +25 -0
  721. package/dist/number/negate.mjs +3 -0
  722. package/dist/number/power.d.ts +30 -0
  723. package/dist/number/round.cjs +3 -0
  724. package/dist/number/round.d.ts +27 -0
  725. package/dist/number/round.mjs +3 -0
  726. package/dist/number/sin.cjs +3 -0
  727. package/dist/number/sin.d.ts +27 -0
  728. package/dist/number/sin.mjs +3 -0
  729. package/dist/number/sort.d.ts +32 -0
  730. package/dist/number/sqrt.cjs +3 -0
  731. package/dist/number/sqrt.d.ts +27 -0
  732. package/dist/number/sqrt.mjs +3 -0
  733. package/dist/number/subtract.d.ts +30 -0
  734. package/dist/number/tan.cjs +3 -0
  735. package/dist/number/tan.d.ts +27 -0
  736. package/dist/number/tan.mjs +3 -0
  737. package/dist/number/toFixed.d.ts +33 -0
  738. package/dist/number/trunc.cjs +3 -0
  739. package/dist/number/trunc.d.ts +27 -0
  740. package/dist/number/trunc.mjs +3 -0
  741. package/dist/object/assign.d.ts +40 -0
  742. package/dist/object/countKeys.cjs +3 -0
  743. package/dist/object/countKeys.d.ts +27 -0
  744. package/dist/object/countKeys.mjs +3 -0
  745. package/dist/object/deepDiscriminate.d.ts +54 -0
  746. package/dist/object/discriminate.d.ts +53 -0
  747. package/dist/object/entries.cjs +3 -0
  748. package/dist/object/entries.d.ts +31 -0
  749. package/dist/object/entries.mjs +3 -0
  750. package/dist/object/entry.cjs +3 -0
  751. package/dist/object/entry.d.ts +29 -0
  752. package/dist/object/entry.mjs +3 -0
  753. package/dist/object/fromEntries.cjs +3 -0
  754. package/dist/object/fromEntries.d.ts +39 -0
  755. package/dist/object/fromEntries.mjs +3 -0
  756. package/dist/object/getDeepProperty.d.ts +46 -0
  757. package/dist/object/getProperty.d.ts +39 -0
  758. package/dist/object/hasKeys.d.ts +48 -0
  759. package/dist/object/index.cjs +3 -1
  760. package/dist/object/index.d.ts +25 -0
  761. package/dist/object/index.mjs +4 -0
  762. package/dist/object/keys.cjs +3 -0
  763. package/dist/object/keys.d.ts +33 -0
  764. package/dist/object/keys.mjs +3 -0
  765. package/dist/object/omit.d.ts +46 -0
  766. package/dist/object/override.d.ts +49 -0
  767. package/dist/object/pick.d.ts +47 -0
  768. package/dist/object/to.d.ts +43 -0
  769. package/dist/object/transformProperties.d.ts +46 -0
  770. package/dist/object/transformProperty.d.ts +41 -0
  771. package/dist/object/values.cjs +3 -0
  772. package/dist/object/values.d.ts +33 -0
  773. package/dist/object/values.mjs +3 -0
  774. package/dist/pattern/exhaustive.cjs +3 -0
  775. package/dist/pattern/exhaustive.d.ts +51 -0
  776. package/dist/pattern/exhaustive.mjs +3 -0
  777. package/dist/pattern/index.cjs +5 -1
  778. package/dist/pattern/index.d.ts +25 -0
  779. package/dist/pattern/index.mjs +5 -0
  780. package/dist/pattern/isMatch.d.ts +36 -0
  781. package/dist/pattern/match/index.d.ts +58 -0
  782. package/dist/pattern/otherwise.d.ts +56 -0
  783. package/dist/pattern/union.cjs +3 -0
  784. package/dist/pattern/union.d.ts +37 -0
  785. package/dist/pattern/union.mjs +3 -0
  786. package/dist/pattern/when.d.ts +43 -0
  787. package/dist/pattern/whenNot.cjs +17 -0
  788. package/dist/pattern/whenNot.d.ts +49 -0
  789. package/dist/pattern/whenNot.mjs +15 -0
  790. package/dist/string/at/default.d.ts +30 -0
  791. package/dist/string/capitalize.cjs +3 -0
  792. package/dist/string/capitalize.d.ts +27 -0
  793. package/dist/string/capitalize.mjs +3 -0
  794. package/dist/string/charAt.d.ts +29 -0
  795. package/dist/string/concat.d.ts +31 -0
  796. package/dist/string/endsWith.d.ts +41 -0
  797. package/dist/string/includes.d.ts +41 -0
  798. package/dist/string/index.cjs +3 -1
  799. package/dist/string/index.d.ts +27 -0
  800. package/dist/string/index.mjs +4 -0
  801. package/dist/string/indexOf.d.ts +30 -0
  802. package/dist/string/isIn.d.ts +45 -0
  803. package/dist/string/isKeyof.d.ts +45 -0
  804. package/dist/string/lastIndexOf.d.ts +30 -0
  805. package/dist/string/length.cjs +3 -0
  806. package/dist/string/length.d.ts +24 -0
  807. package/dist/string/length.mjs +3 -0
  808. package/dist/string/match.d.ts +29 -0
  809. package/dist/string/matchAll.d.ts +36 -0
  810. package/dist/string/normalize.d.ts +29 -0
  811. package/dist/string/padEnd.d.ts +29 -0
  812. package/dist/string/padStart.d.ts +29 -0
  813. package/dist/string/repeat.d.ts +29 -0
  814. package/dist/string/replace.d.ts +30 -0
  815. package/dist/string/replaceAll.d.ts +29 -0
  816. package/dist/string/search.d.ts +30 -0
  817. package/dist/string/slice.d.ts +29 -0
  818. package/dist/string/sort.d.ts +42 -0
  819. package/dist/string/sortCompare.d.ts +33 -0
  820. package/dist/string/split.d.ts +29 -0
  821. package/dist/string/startsWith.d.ts +41 -0
  822. package/dist/string/substring.d.ts +29 -0
  823. package/dist/string/test.d.ts +29 -0
  824. package/dist/string/toLowerCase.cjs +3 -0
  825. package/dist/string/toLowerCase.d.ts +27 -0
  826. package/dist/string/toLowerCase.mjs +3 -0
  827. package/dist/string/toUpperCase.cjs +3 -0
  828. package/dist/string/toUpperCase.d.ts +27 -0
  829. package/dist/string/toUpperCase.mjs +3 -0
  830. package/dist/string/trim/default.cjs +3 -0
  831. package/dist/string/trim/default.d.ts +27 -0
  832. package/dist/string/trim/default.mjs +3 -0
  833. package/dist/string/trim/end.cjs +3 -0
  834. package/dist/string/trim/end.d.ts +27 -0
  835. package/dist/string/trim/end.mjs +3 -0
  836. package/dist/string/trim/start.cjs +3 -0
  837. package/dist/string/trim/start.d.ts +27 -0
  838. package/dist/string/trim/start.mjs +3 -0
  839. package/dist/string/uncapitalize.cjs +3 -0
  840. package/dist/string/uncapitalize.d.ts +27 -0
  841. package/dist/string/uncapitalize.mjs +3 -0
  842. package/package.json +1 -1
@@ -8,5 +8,34 @@ type ComputeResult<GenericGroup extends Record<string, MayBeGetter<Either>>> = P
8
8
  }>> | {
9
9
  [Prop in keyof GenericGroup]: GenericGroup[Prop] extends AnyFunction ? Extract<Awaited<ReturnType<GenericGroup[Prop]>>, EitherLeft> : Extract<Awaited<GenericGroup[Prop]>, EitherLeft>;
10
10
  }[keyof GenericGroup]>;
11
+ /**
12
+ * The asyncGroup() function runs synchronous or asynchronous Either values in parallel (promises, Future) and returns the first Left encountered. If all are Right, it aggregates their values into a typed object.
13
+ *
14
+ * Signature: `asyncGroup(group)` → returns a value
15
+ *
16
+ * The input value is not mutated.
17
+ *
18
+ * ```ts
19
+ * const asyncLoad = E.future(Promise.resolve(E.right("user.loaded", { id: 1 })));
20
+ * const callbackRights = () => E.right("rights.loaded", ["read"]);
21
+ * const promiseProfile = Promise.resolve(E.right("profile.loaded", { name: "Ada" }));
22
+ *
23
+ * const result = await E.asyncGroup({
24
+ * user: asyncLoad,
25
+ * rights: callbackRights,
26
+ * profile: promiseProfile,
27
+ * });
28
+ *
29
+ * // type: E.EitherFutureError
30
+ * ```
31
+ *
32
+ * @remarks
33
+ * - Stops at the first Left and forwards it as-is.
34
+ *
35
+ * @see https://utils.duplojs.dev/en/v1/api/either/asyncGroup
36
+ *
37
+ * @namespace E
38
+ *
39
+ */
11
40
  export declare function asyncGroup<GenericGroup extends Record<string, MayBeGetter<Either>>>(group: GenericGroup): Extract<ComputeResult<GenericGroup>, any>;
12
41
  export {};
@@ -9,6 +9,9 @@ import { when } from '../../common/when.mjs';
9
9
  import { isType } from '../../common/isType.mjs';
10
10
  import { whenIsRight } from './when.mjs';
11
11
 
12
+ /**
13
+ * {@include either/asyncGroup/index.md}
14
+ */
12
15
  function asyncGroup(group) {
13
16
  return asyncPipe(group, entries, asyncReduce(reduceFrom({}), ({ element: [key, value], lastValue, nextWithObject, exit }) => asyncPipe(value, when(isType("function"), (getter) => getter()), when(isLeft, exit), whenIsRight((data) => nextWithObject(lastValue, { [key]: data })))), whenNot(isLeft, success));
14
17
  }
@@ -7,6 +7,39 @@ import { type AnyValue, type Unwrap } from "../../common";
7
7
  type Either = EitherRight | EitherLeft;
8
8
  export type EitherRightAsyncPipeFunction<GenericInput extends AnyValue = AnyValue, GenericOutput extends MaybeFutureEither<AnyValue> = MaybeFutureEither<AnyValue>> = (input: Awaited<GenericInput> extends infer InferredInput ? InferredInput extends Either ? Unwrap<Exclude<InferredInput, EitherLeft>> : InferredInput : never) => GenericOutput;
9
9
  export type EitherRightAsyncPipeResult<GenericPipeOutputs extends AnyValue, GenericLastPipeOutput extends AnyValue> = Extract<Awaited<GenericPipeOutputs>, EitherLeft> | (Awaited<GenericLastPipeOutput> extends infer InferredLastResult ? Exclude<InferredLastResult extends Either ? InferredLastResult : EitherSuccess<InferredLastResult>, EitherLeft> : never);
10
+ /**
11
+ * Asynchronous version of rightPipe. Automatically handles promises, Future, and Either, and short-circuits on the first Left.
12
+ *
13
+ * Signature: `rightAsyncPipe(input, pipe1, pipe2)` → returns a value
14
+ *
15
+ * The input value is not mutated.
16
+ *
17
+ * ```ts
18
+ * import { E } from "../..";
19
+ *
20
+ * const input: Promise<
21
+ * | E.EitherFail
22
+ * | E.EitherNullableEmpty
23
+ * | E.EitherRight<"right", 1>
24
+ * > = Promise.resolve(E.right("right", 1));
25
+ *
26
+ * const result = E.rightAsyncPipe(
27
+ * input,
28
+ * (value) => {
29
+ * // type: 1 | 2
30
+ * return value;
31
+ * },
32
+ * );
33
+ * ```
34
+ *
35
+ * @remarks
36
+ * - Stops at the first Left and forwards it as-is.
37
+ *
38
+ * @see https://utils.duplojs.dev/en/v1/api/either/rightAsyncPipe
39
+ *
40
+ * @namespace E
41
+ *
42
+ */
10
43
  export declare function rightAsyncPipe<GenericInput extends MaybeFutureEither<AnyValue>, GenericOutputPipe1 extends MaybeFutureEither<AnyValue>>(input: GenericInput, pipe1: EitherRightAsyncPipeFunction<GenericInput, GenericOutputPipe1>): Future<Extract<EitherRightAsyncPipeResult<GenericInput | GenericOutputPipe1, GenericOutputPipe1>, any>>;
11
44
  export declare function rightAsyncPipe<GenericInput extends MaybeFutureEither<AnyValue>, GenericOutputPipe1 extends MaybeFutureEither<AnyValue>, GenericOutputPipe2 extends MaybeFutureEither<AnyValue>>(input: GenericInput, pipe1: EitherRightAsyncPipeFunction<GenericInput, GenericOutputPipe1>, pipe2: EitherRightAsyncPipeFunction<GenericOutputPipe1, GenericOutputPipe2>): Future<Extract<EitherRightAsyncPipeResult<GenericInput | GenericOutputPipe1 | GenericOutputPipe2, GenericOutputPipe2>, any>>;
12
45
  export declare function rightAsyncPipe<GenericInput extends MaybeFutureEither<AnyValue>, GenericOutputPipe1 extends MaybeFutureEither<AnyValue>, GenericOutputPipe2 extends MaybeFutureEither<AnyValue>, GenericOutputPipe3 extends MaybeFutureEither<AnyValue>>(input: GenericInput, pipe1: EitherRightAsyncPipeFunction<GenericInput, GenericOutputPipe1>, pipe2: EitherRightAsyncPipeFunction<GenericOutputPipe1, GenericOutputPipe2>, pipe3: EitherRightAsyncPipeFunction<GenericOutputPipe2, GenericOutputPipe3>): Future<Extract<EitherRightAsyncPipeResult<GenericInput | GenericOutputPipe1 | GenericOutputPipe2 | GenericOutputPipe3, GenericOutputPipe3>, any>>;
@@ -4,6 +4,9 @@ var wrapValue = require('../../common/wrapValue.cjs');
4
4
  var kind = require('../kind.cjs');
5
5
 
6
6
  const eitherRightKind = kind.createEitherKind("right");
7
+ /**
8
+ * {@include either/right/index.md}
9
+ */
7
10
  function right(information, value = undefined) {
8
11
  return eitherRightKind.setTo(kind.eitherInformationKind.setTo(wrapValue.wrapValue(value), information));
9
12
  }
@@ -5,5 +5,41 @@ export declare const eitherRightKind: import("../../common/kind").KindHandler<im
5
5
  type _EitherRight<GenericInformation extends string = string, GenericValue extends unknown = unknown> = (Kind<typeof eitherRightKind.definition> & Kind<typeof eitherInformationKind.definition, GenericInformation> & WrappedValue<GenericValue>);
6
6
  export interface EitherRight<GenericInformation extends string = string, GenericValue extends unknown = unknown> extends _EitherRight<GenericInformation, GenericValue> {
7
7
  }
8
+ /**
9
+ * Builds an EitherRight by associating mandatory business information (literal string) and an optional payload. This is the basic brick to signal a contextualized success.
10
+ *
11
+ * Signature: `right(information, value)` → returns a value
12
+ *
13
+ * The input value is not mutated.
14
+ *
15
+ * ```ts
16
+ * const input = "SAVE-15" as string;
17
+ *
18
+ * const result = pipe(
19
+ * input,
20
+ * P.when(
21
+ * S.startsWith("SAVE"),
22
+ * (code) => E.right(
23
+ * "coupon.applied",
24
+ * {
25
+ * code,
26
+ * percent: 15,
27
+ * },
28
+ * ),
29
+ * ),
30
+ * P.otherwise(
31
+ * (value) => E.left("coupon.invalid", value),
32
+ * ),
33
+ * );
34
+ *
35
+ * // type: E.EitherRight< "coupon.applied", { readonly code: `SAVE${string}`; readonly percent: 15; } >
36
+ * // | E.EitherLeft< "coupon.invalid", string >
37
+ * ```
38
+ *
39
+ * @see https://utils.duplojs.dev/en/v1/api/either/right
40
+ *
41
+ * @namespace E
42
+ *
43
+ */
8
44
  export declare function right<GenericInformation extends string, const GenericValue extends unknown = undefined>(information: GenericInformation, value?: GenericValue): EitherRight<GenericInformation, GenericValue>;
9
45
  export {};
@@ -2,6 +2,9 @@ import { wrapValue } from '../../common/wrapValue.mjs';
2
2
  import { createEitherKind, eitherInformationKind } from '../kind.mjs';
3
3
 
4
4
  const eitherRightKind = createEitherKind("right");
5
+ /**
6
+ * {@include either/right/index.md}
7
+ */
5
8
  function right(information, value = undefined) {
6
9
  return eitherRightKind.setTo(eitherInformationKind.setTo(wrapValue(value), information));
7
10
  }
@@ -10,6 +10,9 @@ var entries = require('../../object/entries.cjs');
10
10
  var success = require('./success.cjs');
11
11
  var is = require('../left/is.cjs');
12
12
 
13
+ /**
14
+ * {@include either/group/index.md}
15
+ */
13
16
  function group(group) {
14
17
  return pipe.pipe(group, entries.entries, reduce.reduce(reduce.reduceFrom({}), ({ element: [key, value], lastValue, nextWithObject, exit }) => pipe.pipe(value, when.when(isType.isType("function"), (getter) => getter()), when.when(is.isLeft, exit), when$1.whenIsRight((data) => nextWithObject(lastValue, { [key]: data })))), whenNot.whenNot(is.isLeft, success.success));
15
18
  }
@@ -8,5 +8,31 @@ type ComputeResult<GenericGroup extends Record<string, MayBeGetter<Either>>> = (
8
8
  }>> | {
9
9
  [Prop in keyof GenericGroup]: GenericGroup[Prop] extends AnyFunction ? Extract<ReturnType<GenericGroup[Prop]>, EitherLeft> : Extract<GenericGroup[Prop], EitherLeft>;
10
10
  }[keyof GenericGroup]);
11
+ /**
12
+ * The group() function runs several Either values (or functions returning an Either) and returns the first Left encountered. If all are Right, it aggregates their values into a typed object.
13
+ *
14
+ * Signature: `group(group)` → returns a value
15
+ *
16
+ * The input value is not mutated.
17
+ *
18
+ * ```ts
19
+ * const result = E.group({
20
+ * user: E.right("user.loaded", { id: 1 }),
21
+ * rights: E.right("rights.loaded", ["read", "write"]),
22
+ * profile: E.left("profile.missing", null),
23
+ * });
24
+ *
25
+ * // type: E.EitherLeft<"profile.missing", null>
26
+ * // | E.EitherSuccess<{ user: { readonly id: 1; }; rights: readonly ["read", "write"]; profile: never; }>
27
+ * ```
28
+ *
29
+ * @remarks
30
+ * - Stops at the first Left and forwards it as-is.
31
+ *
32
+ * @see https://utils.duplojs.dev/en/v1/api/either/group
33
+ *
34
+ * @namespace E
35
+ *
36
+ */
11
37
  export declare function group<GenericGroup extends Record<string, MayBeGetter<Either>>>(group: GenericGroup): Extract<ComputeResult<GenericGroup>, any>;
12
38
  export {};
@@ -8,6 +8,9 @@ import { entries } from '../../object/entries.mjs';
8
8
  import { success } from './success.mjs';
9
9
  import { isLeft } from '../left/is.mjs';
10
10
 
11
+ /**
12
+ * {@include either/group/index.md}
13
+ */
11
14
  function group(group) {
12
15
  return pipe(group, entries, reduce(reduceFrom({}), ({ element: [key, value], lastValue, nextWithObject, exit }) => pipe(value, when(isType("function"), (getter) => getter()), when(isLeft, exit), whenIsRight((data) => nextWithObject(lastValue, { [key]: data })))), whenNot(isLeft, success));
13
16
  }
@@ -4,6 +4,9 @@ var kind = require('../kind.cjs');
4
4
  var create = require('./create.cjs');
5
5
  var wrapValue = require('../../common/wrapValue.cjs');
6
6
 
7
+ /**
8
+ * {@include either/isRight/index.md}
9
+ */
7
10
  function isRight(input) {
8
11
  return create.eitherRightKind.has(input)
9
12
  && kind.eitherInformationKind.has(input)
@@ -1,2 +1,24 @@
1
1
  import { type EitherRight } from "./create";
2
+ /**
3
+ * Type guard that checks whether a value is an EitherRight. Allows accessing the payload without explicit conversion.
4
+ *
5
+ * Signature: `isRight(input)` → returns a value
6
+ *
7
+ * Acts as a type guard and narrows the input type when true.
8
+ *
9
+ * ```ts
10
+ * const result = true
11
+ * ? E.ok()
12
+ * : E.fail();
13
+ *
14
+ * if (E.isRight(result)) {
15
+ * // type: E.EitherOk
16
+ * }
17
+ * ```
18
+ *
19
+ * @see https://utils.duplojs.dev/en/v1/api/either/isRight
20
+ *
21
+ * @namespace E
22
+ *
23
+ */
2
24
  export declare function isRight<GenericInput extends unknown>(input: GenericInput): input is Extract<GenericInput, EitherRight>;
@@ -2,6 +2,9 @@ import { eitherInformationKind } from '../kind.mjs';
2
2
  import { eitherRightKind } from './create.mjs';
3
3
  import { isWrappedValue } from '../../common/wrapValue.mjs';
4
4
 
5
+ /**
6
+ * {@include either/isRight/index.md}
7
+ */
5
8
  function isRight(input) {
6
9
  return eitherRightKind.has(input)
7
10
  && eitherInformationKind.has(input)
@@ -4,6 +4,9 @@ var kind = require('../kind.cjs');
4
4
  var create = require('./create.cjs');
5
5
 
6
6
  const eitherOkKind = kind.createEitherKind("ok");
7
+ /**
8
+ * {@include either/ok/index.md}
9
+ */
7
10
  function ok() {
8
11
  return eitherOkKind.setTo(create.right("ok", undefined));
9
12
  }
@@ -4,5 +4,30 @@ export declare const eitherOkKind: import("../../common/kind").KindHandler<impor
4
4
  type _EitherOk = (EitherRight<"ok", never> & Kind<typeof eitherOkKind.definition>);
5
5
  export interface EitherOk extends _EitherOk {
6
6
  }
7
+ /**
8
+ * Returns an EitherRight<"ok", never>: an empty success that confirms an operation went fine without extra data.
9
+ *
10
+ * Signature: `ok()` → returns a value
11
+ *
12
+ * ```ts
13
+ * const input = "hello@duplo.dev" as string;
14
+ *
15
+ * const result = pipe(
16
+ * input,
17
+ * whenElse(
18
+ * S.includes("@"),
19
+ * E.ok,
20
+ * E.fail,
21
+ * ),
22
+ * );
23
+ *
24
+ * // type: E.EitherOk | E.EitherFail
25
+ * ```
26
+ *
27
+ * @see https://utils.duplojs.dev/en/v1/api/either/ok
28
+ *
29
+ * @namespace E
30
+ *
31
+ */
7
32
  export declare function ok(): EitherOk;
8
33
  export {};
@@ -2,6 +2,9 @@ import { createEitherKind } from '../kind.mjs';
2
2
  import { right } from './create.mjs';
3
3
 
4
4
  const eitherOkKind = createEitherKind("ok");
5
+ /**
6
+ * {@include either/ok/index.md}
7
+ */
5
8
  function ok() {
6
9
  return eitherOkKind.setTo(right("ok", undefined));
7
10
  }
@@ -5,6 +5,39 @@ import { type AnyValue, type Unwrap } from "../../common";
5
5
  type Either = EitherRight | EitherLeft;
6
6
  export type EitherRightPipeFunction<GenericInput extends AnyValue = AnyValue, GenericOutput extends AnyValue = AnyValue> = (input: GenericInput extends Either ? Unwrap<Exclude<GenericInput, EitherLeft>> : GenericInput) => GenericOutput;
7
7
  export type EitherRightPipeResult<GenericPipeOutputs extends AnyValue, GenericLastPipeOutput extends AnyValue> = Extract<GenericPipeOutputs, EitherLeft> | Exclude<GenericLastPipeOutput extends Either ? GenericLastPipeOutput : EitherSuccess<GenericLastPipeOutput>, EitherLeft>;
8
+ /**
9
+ * Chains synchronous transformations on an Either as long as it remains Right. The pipeline stops as soon as a Left is returned.
10
+ *
11
+ * Signature: `rightPipe(input, pipe1, pipe2)` → returns a value
12
+ *
13
+ * The input value is not mutated.
14
+ *
15
+ * ```ts
16
+ * import { E } from "../..";
17
+ *
18
+ * const input: (
19
+ * | E.EitherFail
20
+ * | E.EitherNullableEmpty
21
+ * | E.EitherRight<"right", 1>
22
+ * ) = E.right("right", 1);
23
+ *
24
+ * const result = E.rightPipe(
25
+ * input,
26
+ * (value) => {
27
+ * // type: 1 | 2
28
+ * return value;
29
+ * },
30
+ * );
31
+ * ```
32
+ *
33
+ * @remarks
34
+ * - Stops at the first Left and forwards it as-is.
35
+ *
36
+ * @see https://utils.duplojs.dev/en/v1/api/either/rightPipe
37
+ *
38
+ * @namespace E
39
+ *
40
+ */
8
41
  export declare function rightPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue>(input: GenericInput, pipe1: EitherRightPipeFunction<GenericInput, GenericOutputPipe1>): Extract<EitherRightPipeResult<GenericInput | GenericOutputPipe1, GenericOutputPipe1>, any>;
9
42
  export declare function rightPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue, GenericOutputPipe2 extends AnyValue>(input: GenericInput, pipe1: EitherRightPipeFunction<GenericInput, GenericOutputPipe1>, pipe2: EitherRightPipeFunction<GenericOutputPipe1, GenericOutputPipe2>): Extract<EitherRightPipeResult<GenericInput | GenericOutputPipe1 | GenericOutputPipe2, GenericOutputPipe2>, any>;
10
43
  export declare function rightPipe<GenericInput extends AnyValue, GenericOutputPipe1 extends AnyValue, GenericOutputPipe2 extends AnyValue, GenericOutputPipe3 extends AnyValue>(input: GenericInput, pipe1: EitherRightPipeFunction<GenericInput, GenericOutputPipe1>, pipe2: EitherRightPipeFunction<GenericOutputPipe1, GenericOutputPipe2>, pipe3: EitherRightPipeFunction<GenericOutputPipe2, GenericOutputPipe3>): Extract<EitherRightPipeResult<GenericInput | GenericOutputPipe1 | GenericOutputPipe2 | GenericOutputPipe3, GenericOutputPipe3>, any>;
@@ -4,6 +4,9 @@ var kind = require('../kind.cjs');
4
4
  var create = require('./create.cjs');
5
5
 
6
6
  const eitherSuccessKind = kind.createEitherKind("success");
7
+ /**
8
+ * {@include either/success/index.md}
9
+ */
7
10
  function success(value) {
8
11
  return eitherSuccessKind.setTo(create.right("success", value));
9
12
  }
@@ -4,5 +4,33 @@ export declare const eitherSuccessKind: import("../../common/kind").KindHandler<
4
4
  type _EitherSuccess<GenericValue extends unknown = unknown> = (EitherRight<"success", GenericValue> & Kind<typeof eitherSuccessKind.definition>);
5
5
  export interface EitherSuccess<GenericValue extends unknown = unknown> extends _EitherSuccess<GenericValue> {
6
6
  }
7
+ /**
8
+ * Readable shortcut to create an EitherRight with the literal info "success". Ideal for functions that return only one type of success.
9
+ *
10
+ * Signature: `success(value)` → returns a value
11
+ *
12
+ * The input value is not mutated.
13
+ *
14
+ * ```ts
15
+ * const input = " duplo ";
16
+ *
17
+ * const result = pipe(
18
+ * input,
19
+ * S.trim,
20
+ * whenElse(
21
+ * (value) => equal(S.length(value), 0),
22
+ * E.error,
23
+ * E.success,
24
+ * ),
25
+ * );
26
+ *
27
+ * // type: E.EitherError<string> | E.EitherSuccess<string>
28
+ * ```
29
+ *
30
+ * @see https://utils.duplojs.dev/en/v1/api/either/success
31
+ *
32
+ * @namespace E
33
+ *
34
+ */
7
35
  export declare function success<const GenericValue extends unknown>(value: GenericValue): EitherSuccess<GenericValue>;
8
36
  export {};
@@ -2,6 +2,9 @@ import { createEitherKind } from '../kind.mjs';
2
2
  import { right } from './create.mjs';
3
3
 
4
4
  const eitherSuccessKind = createEitherKind("success");
5
+ /**
6
+ * {@include either/success/index.md}
7
+ */
5
8
  function success(value) {
6
9
  return eitherSuccessKind.setTo(right("success", value));
7
10
  }
@@ -1,4 +1,30 @@
1
1
  import { type EscapeVoid, type AnyValue, type Unwrap, type BreakGenericLink } from "../../common";
2
2
  import { type EitherRight } from "./create";
3
+ /**
4
+ * Applies a function only when the input is an EitherRight. Otherwise, the original value is returned as-is.
5
+ *
6
+ * **Supported call styles:**
7
+ * - Classic: `whenIsRight(input, theFunction)` → returns a value
8
+ * - Curried: `whenIsRight(theFunction)` → returns a function waiting for the input
9
+ *
10
+ * If the condition matches, the callback runs; otherwise the original value is returned.
11
+ *
12
+ * ```ts
13
+ * pipe(
14
+ * true
15
+ * ? E.success("true")
16
+ * : E.error("false"),
17
+ *
18
+ * E.whenIsRight((value) => {
19
+ * // type: "true"
20
+ * }),
21
+ * );
22
+ * ```
23
+ *
24
+ * @see https://utils.duplojs.dev/en/v1/api/either/whenIsRight
25
+ *
26
+ * @namespace E
27
+ *
28
+ */
3
29
  export declare function whenIsRight<const GenericInput extends unknown, const GenericOutput extends AnyValue | EscapeVoid>(theFunction: (eitherValue: Unwrap<Extract<BreakGenericLink<GenericInput>, EitherRight>>) => GenericOutput): (input: GenericInput) => Exclude<BreakGenericLink<GenericInput>, EitherRight> | GenericOutput;
4
30
  export declare function whenIsRight<const GenericInput extends unknown, const GenericOutput extends AnyValue | EscapeVoid>(input: GenericInput, theFunction: (eitherValue: Unwrap<Extract<BreakGenericLink<GenericInput>, EitherRight>>) => GenericOutput): Exclude<GenericInput, EitherRight> | GenericOutput;
@@ -4,6 +4,9 @@ var kind = require('./kind.cjs');
4
4
  var create = require('./left/create.cjs');
5
5
 
6
6
  const eitherCallbackErrorKind = kind.createEitherKind("callback-error");
7
+ /**
8
+ * {@include either/safeCallback/index.md}
9
+ */
7
10
  function callbackError(value) {
8
11
  return eitherCallbackErrorKind.setTo(create.left("callback", value));
9
12
  }
@@ -4,6 +4,32 @@ export declare const eitherCallbackErrorKind: import("../common").KindHandler<im
4
4
  type _EitherCallbackError = (EitherLeft<"callback", unknown> & Kind<typeof eitherCallbackErrorKind.definition>);
5
5
  export interface EitherCallbackError extends _EitherCallbackError {
6
6
  }
7
+ /**
8
+ * Runs a callback in a safe block. If the callback throws, the function returns a "callback" typed EitherLeft instead of propagating the exception.
9
+ *
10
+ * Signature: `safeCallback(theFunction)` → returns a value
11
+ *
12
+ * The input value is not mutated.
13
+ *
14
+ * ```ts
15
+ * const success = E.safeCallback(() => 42);
16
+ *
17
+ * const failure = E.safeCallback(() => {
18
+ * throw new Error("boom");
19
+ * });
20
+ *
21
+ * const isFailure = E.isLeft(failure);
22
+ * ```
23
+ *
24
+ * @remarks
25
+ * - Catches exceptions thrown by the callback and wraps them in an `EitherLeft<"callback">`
26
+ * - Useful for working in an unsafe environment (3rd party libraries, user code, etc.)
27
+ *
28
+ * @see https://utils.duplojs.dev/en/v1/api/either/safeCallback
29
+ *
30
+ * @namespace E
31
+ *
32
+ */
7
33
  export declare function callbackError(value: unknown): EitherCallbackError;
8
34
  export declare function safeCallback<GenericOutput extends unknown>(theFunction: () => GenericOutput): GenericOutput | EitherCallbackError;
9
35
  export {};
@@ -2,6 +2,9 @@ import { createEitherKind } from './kind.mjs';
2
2
  import { left } from './left/create.mjs';
3
3
 
4
4
  const eitherCallbackErrorKind = createEitherKind("callback-error");
5
+ /**
6
+ * {@include either/safeCallback/index.md}
7
+ */
5
8
  function callbackError(value) {
6
9
  return eitherCallbackErrorKind.setTo(left("callback", value));
7
10
  }
@@ -3,6 +3,42 @@ import { type EitherRight } from "./right";
3
3
  import { type EitherLeft } from "./left";
4
4
  import { eitherInformationKind } from "./kind";
5
5
  type Either = EitherRight | EitherLeft;
6
+ /**
7
+ * Functional pattern matching based on the literal information of an Either. The function is executed only when the information (or one of the informations) matches.
8
+ *
9
+ * **Supported call styles:**
10
+ * - Classic: `whenHasInformation(input, information, theFunction)` → returns a value
11
+ * - Curried: `whenHasInformation(information, theFunction)` → returns a function waiting for the input
12
+ *
13
+ * If the condition matches, the callback runs; otherwise the original value is returned.
14
+ *
15
+ * ```ts
16
+ * const input = true
17
+ * ? false
18
+ * ? E.right("right-1", 1)
19
+ * : E.left("left-2", 2)
20
+ * : E.left("left-3", 3);
21
+ *
22
+ * const result = pipe(
23
+ * input,
24
+ * E.whenHasInformation("right-1", (value) => {
25
+ * // type: 1
26
+ * return value;
27
+ * }),
28
+ * E.whenHasInformation("left-2", (value) => {
29
+ * // type: 2
30
+ * return value;
31
+ * }),
32
+ * );
33
+ *
34
+ * // type: 1 | 2 | E.EitherLeft<"left-3", 3>
35
+ * ```
36
+ *
37
+ * @see https://utils.duplojs.dev/en/v1/api/either/whenHasInformation
38
+ *
39
+ * @namespace E
40
+ *
41
+ */
6
42
  export declare function whenHasInformation<const GenericInput extends unknown, GenericInformation extends (GenericInput extends Either ? ReturnType<typeof eitherInformationKind.getValue<GenericInput>> : never), const GenericOutput extends AnyValue>(information: GenericInformation | GenericInformation[], theFunction: (value: Unwrap<Extract<BreakGenericLink<GenericInput>, Kind<typeof eitherInformationKind.definition, GenericInformation> & WrappedValue>>) => GenericOutput): (input: GenericInput) => GenericOutput | Exclude<BreakGenericLink<GenericInput>, Kind<typeof eitherInformationKind.definition, GenericInformation>>;
7
43
  export declare function whenHasInformation<const GenericInput extends unknown, GenericInformation extends (GenericInput extends Either ? ReturnType<typeof eitherInformationKind.getValue<GenericInput>> : never), const GenericOutput extends AnyValue>(input: GenericInput, information: GenericInformation | GenericInformation[], theFunction: (value: Unwrap<Extract<BreakGenericLink<GenericInput>, Kind<typeof eitherInformationKind.definition, GenericInformation> & WrappedValue>>) => GenericOutput): GenericOutput | Exclude<GenericInput, Kind<typeof eitherInformationKind.definition, GenericInformation>>;
8
44
  export {};
@@ -1,2 +1,36 @@
1
+ /**
2
+ * Splits an async iterable into fixed-size chunks.
3
+ *
4
+ * **Supported call styles:**
5
+ * - Classic: `asyncChunk(iterator, size)` → returns an async generator of arrays
6
+ * - Curried: `asyncChunk(size)` → returns a function waiting for the iterator
7
+ *
8
+ * The last chunk may be smaller than the size.
9
+ * The input iterator is not mutated.
10
+ *
11
+ * ```ts
12
+ * const input = [1, 2, 3, 4];
13
+ *
14
+ * const iterator = G.asyncMap(
15
+ * input,
16
+ * async(value) => Promise.resolve(value * 2),
17
+ * );
18
+ *
19
+ * const result = await pipe(
20
+ * G.asyncChunk(
21
+ * iterator,
22
+ * 2,
23
+ * ),
24
+ * A.from,
25
+ * );
26
+ * // number[][]
27
+ * ```
28
+ *
29
+ * @see [`G.chunk`](https://utils.duplojs.dev/en/v1/api/generator/chunk) For sync iterables
30
+ * @see https://utils.duplojs.dev/en/v1/api/generator/asyncChunk
31
+ *
32
+ * @namespace G
33
+ *
34
+ */
1
35
  export declare function asyncChunk<const GenericElement extends unknown>(size: number): (input: AsyncIterable<GenericElement>) => AsyncGenerator<GenericElement[], unknown, unknown>;
2
36
  export declare function asyncChunk<const GenericElement extends unknown>(input: AsyncIterable<GenericElement>, size: number): AsyncGenerator<GenericElement[], unknown, unknown>;
@@ -1,6 +1,56 @@
1
1
  interface AsyncGeneratorFilterParams {
2
2
  index: number;
3
3
  }
4
+ /**
5
+ * Filters values from an iterable with async support.
6
+ *
7
+ * **Supported call styles:**
8
+ * - Classic: `asyncFilter(iterator, predicate)` → returns an async generator
9
+ * - Curried: `asyncFilter(predicate)` → returns a function waiting for the iterator
10
+ * - Classic predicate: `asyncFilter(iterator, isType)` → narrows item types
11
+ * - Curried predicate: `asyncFilter(isType)` → narrows item types
12
+ *
13
+ * The predicate receives `(item, { index })`.
14
+ * The input iterator is not mutated.
15
+ *
16
+ * ```ts
17
+ * const ids = [201, 202, 203, 204];
18
+ *
19
+ * const response = await fetch("https://api.example.com/orders/status");
20
+ * const { statuses } = await response.json() as {
21
+ * statuses: {
22
+ * id: number;
23
+ * status: string;
24
+ * }[];
25
+ * };
26
+ * const statusById = new Map(statuses.map(({ id: orderId, status }) => [
27
+ * orderId,
28
+ * status,
29
+ * ]));
30
+ *
31
+ * const iterator = G.asyncFilter(ids, (orderId) => statusById.get(orderId) === "paid");
32
+ *
33
+ * const result = await G.asyncReduce(
34
+ * iterator,
35
+ * G.reduceFrom<number[]>([]),
36
+ * ({ element, lastValue, next }) => next([
37
+ * ...lastValue,
38
+ * element,
39
+ * ]),
40
+ * );
41
+ *
42
+ * ```
43
+ *
44
+ * @remarks
45
+ * - Predicate overloads (type guards) narrow the output type
46
+ *
47
+ * @see [`G.filter`](https://utils.duplojs.dev/en/v1/api/generator/filter) For sync iterables
48
+ * @see [`G.asyncMap`](https://utils.duplojs.dev/en/v1/api/generator/asyncMap) For mapping values
49
+ * @see https://utils.duplojs.dev/en/v1/api/generator/asyncFilter
50
+ *
51
+ * @namespace G
52
+ *
53
+ */
4
54
  export declare function asyncFilter<GenericElement extends unknown, GenericOutput extends GenericElement>(predicate: (item: GenericElement, params: AsyncGeneratorFilterParams) => item is GenericOutput): (iterator: Iterable<GenericElement> | AsyncIterable<GenericElement>) => AsyncGenerator<GenericOutput, unknown, unknown>;
5
55
  export declare function asyncFilter<GenericElement extends unknown, GenericOutput extends GenericElement>(iterator: Iterable<GenericElement> | AsyncIterable<GenericElement>, predicate: (item: GenericElement, params: AsyncGeneratorFilterParams) => item is GenericOutput): AsyncGenerator<GenericOutput, unknown, unknown>;
6
56
  export declare function asyncFilter<GenericElement extends unknown>(predicate: (item: GenericElement, params: AsyncGeneratorFilterParams) => boolean): (iterator: Iterable<GenericElement> | AsyncIterable<GenericElement>) => AsyncGenerator<GenericElement, unknown, unknown>;
@@ -1,5 +1,8 @@
1
1
  'use strict';
2
2
 
3
+ /**
4
+ * {@include generator/asyncLoop/index.md}
5
+ */
3
6
  async function* asyncLoop(loop) {
4
7
  let previousOutput = undefined;
5
8
  for (let count = 0; true; count++) {