@duplojs/utils 0.3.0 → 1.0.0

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 (716) hide show
  1. package/dist/array/at/default.cjs +12 -0
  2. package/dist/array/at/default.d.ts +5 -0
  3. package/dist/array/at/default.mjs +10 -0
  4. package/dist/array/at/first.cjs +7 -0
  5. package/dist/array/at/first.d.ts +2 -0
  6. package/dist/array/at/first.mjs +5 -0
  7. package/dist/array/at/index.d.ts +3 -0
  8. package/dist/array/at/last.cjs +7 -0
  9. package/dist/array/at/last.d.ts +1 -0
  10. package/dist/array/at/last.mjs +5 -0
  11. package/dist/array/concat.cjs +12 -0
  12. package/dist/array/concat.d.ts +2 -0
  13. package/dist/array/concat.mjs +10 -0
  14. package/dist/array/copyWithin.cjs +12 -0
  15. package/dist/array/copyWithin.d.ts +2 -0
  16. package/dist/array/copyWithin.mjs +10 -0
  17. package/dist/array/every.cjs +12 -0
  18. package/dist/array/every.d.ts +6 -0
  19. package/dist/array/every.mjs +10 -0
  20. package/dist/array/fill/all.cjs +12 -0
  21. package/dist/array/fill/all.d.ts +2 -0
  22. package/dist/array/fill/all.mjs +10 -0
  23. package/dist/array/fill/default.cjs +12 -0
  24. package/dist/array/fill/default.d.ts +2 -0
  25. package/dist/array/fill/default.mjs +10 -0
  26. package/dist/array/fill/index.d.ts +2 -0
  27. package/dist/array/filter.cjs +12 -0
  28. package/dist/array/filter.d.ts +8 -0
  29. package/dist/array/filter.mjs +10 -0
  30. package/dist/array/find.cjs +12 -0
  31. package/dist/array/find.d.ts +8 -0
  32. package/dist/array/find.mjs +10 -0
  33. package/dist/array/findAndReplace.cjs +19 -0
  34. package/dist/array/findAndReplace.d.ts +7 -0
  35. package/dist/array/findAndReplace.mjs +17 -0
  36. package/dist/array/findAndSplice/delete.cjs +19 -0
  37. package/dist/array/findAndSplice/delete.d.ts +6 -0
  38. package/dist/array/findAndSplice/delete.mjs +17 -0
  39. package/dist/array/findAndSplice/index.d.ts +3 -0
  40. package/dist/array/findAndSplice/insert.cjs +19 -0
  41. package/dist/array/findAndSplice/insert.d.ts +6 -0
  42. package/dist/array/findAndSplice/insert.mjs +17 -0
  43. package/dist/array/findAndSplice/replace.cjs +19 -0
  44. package/dist/array/findAndSplice/replace.d.ts +6 -0
  45. package/dist/array/findAndSplice/replace.mjs +17 -0
  46. package/dist/array/findIndex.cjs +17 -0
  47. package/dist/array/findIndex.d.ts +6 -0
  48. package/dist/array/findIndex.mjs +15 -0
  49. package/dist/array/findLast.cjs +18 -0
  50. package/dist/array/findLast.d.ts +8 -0
  51. package/dist/array/findLast.mjs +16 -0
  52. package/dist/array/findLastIndex.cjs +18 -0
  53. package/dist/array/findLastIndex.d.ts +6 -0
  54. package/dist/array/findLastIndex.mjs +16 -0
  55. package/dist/array/flat.cjs +19 -0
  56. package/dist/array/flat.d.ts +4 -0
  57. package/dist/array/flat.mjs +17 -0
  58. package/dist/array/flatMap.cjs +12 -0
  59. package/dist/array/flatMap.d.ts +6 -0
  60. package/dist/array/flatMap.mjs +10 -0
  61. package/dist/array/from.cjs +16 -0
  62. package/dist/array/from.d.ts +1 -0
  63. package/dist/array/from.mjs +14 -0
  64. package/dist/array/group.cjs +37 -0
  65. package/dist/array/group.d.ts +16 -0
  66. package/dist/array/group.mjs +34 -0
  67. package/dist/array/includes.cjs +12 -0
  68. package/dist/array/includes.d.ts +2 -0
  69. package/dist/array/includes.mjs +10 -0
  70. package/dist/array/index.cjs +102 -0
  71. package/dist/array/index.d.ts +40 -0
  72. package/dist/array/index.mjs +48 -0
  73. package/dist/array/indexOf.cjs +23 -0
  74. package/dist/array/indexOf.d.ts +2 -0
  75. package/dist/array/indexOf.mjs +21 -0
  76. package/dist/array/is.cjs +7 -0
  77. package/dist/array/is.d.ts +1 -0
  78. package/dist/array/is.mjs +5 -0
  79. package/dist/array/join.cjs +12 -0
  80. package/dist/array/join.d.ts +8 -0
  81. package/dist/array/join.mjs +10 -0
  82. package/dist/array/lastIndexOf.cjs +23 -0
  83. package/dist/array/lastIndexOf.d.ts +2 -0
  84. package/dist/array/lastIndexOf.mjs +21 -0
  85. package/dist/array/map.cjs +12 -0
  86. package/dist/array/map.d.ts +6 -0
  87. package/dist/array/map.mjs +10 -0
  88. package/dist/array/maxElements.cjs +12 -0
  89. package/dist/array/maxElements.d.ts +2 -0
  90. package/dist/array/maxElements.mjs +10 -0
  91. package/dist/array/maxOf.cjs +17 -0
  92. package/dist/array/maxOf.d.ts +1 -0
  93. package/dist/array/maxOf.mjs +15 -0
  94. package/dist/array/minElements.cjs +12 -0
  95. package/dist/array/minElements.d.ts +3 -0
  96. package/dist/array/minElements.mjs +10 -0
  97. package/dist/array/minOf.cjs +17 -0
  98. package/dist/array/minOf.d.ts +1 -0
  99. package/dist/array/minOf.mjs +15 -0
  100. package/dist/array/pop.cjs +7 -0
  101. package/dist/array/pop.d.ts +3 -0
  102. package/dist/array/pop.mjs +5 -0
  103. package/dist/array/push.cjs +12 -0
  104. package/dist/array/push.d.ts +2 -0
  105. package/dist/array/push.mjs +10 -0
  106. package/dist/array/reduce.cjs +41 -0
  107. package/dist/array/reduce.d.ts +30 -0
  108. package/dist/array/reduce.mjs +39 -0
  109. package/dist/array/reduceRight.cjs +41 -0
  110. package/dist/array/reduceRight.d.ts +30 -0
  111. package/dist/array/reduceRight.mjs +39 -0
  112. package/dist/array/reverse.cjs +7 -0
  113. package/dist/array/reverse.d.ts +3 -0
  114. package/dist/array/reverse.mjs +5 -0
  115. package/dist/array/set.cjs +14 -0
  116. package/dist/array/set.d.ts +2 -0
  117. package/dist/array/set.mjs +12 -0
  118. package/dist/array/shift.cjs +7 -0
  119. package/dist/array/shift.d.ts +3 -0
  120. package/dist/array/shift.mjs +5 -0
  121. package/dist/array/slice.cjs +12 -0
  122. package/dist/array/slice.d.ts +2 -0
  123. package/dist/array/slice.mjs +10 -0
  124. package/dist/array/some.cjs +12 -0
  125. package/dist/array/some.d.ts +6 -0
  126. package/dist/array/some.mjs +10 -0
  127. package/dist/array/sort/default.cjs +12 -0
  128. package/dist/array/sort/default.d.ts +2 -0
  129. package/dist/array/sort/default.mjs +10 -0
  130. package/dist/array/sort/index.d.ts +3 -0
  131. package/dist/array/sort/number.cjs +14 -0
  132. package/dist/array/sort/number.d.ts +4 -0
  133. package/dist/array/sort/number.mjs +12 -0
  134. package/dist/array/sort/string.cjs +24 -0
  135. package/dist/array/sort/string.d.ts +4 -0
  136. package/dist/array/sort/string.mjs +22 -0
  137. package/dist/array/splice/delete.cjs +14 -0
  138. package/dist/array/splice/delete.d.ts +2 -0
  139. package/dist/array/splice/delete.mjs +12 -0
  140. package/dist/array/splice/index.d.ts +3 -0
  141. package/dist/array/splice/insert.cjs +14 -0
  142. package/dist/array/splice/insert.d.ts +2 -0
  143. package/dist/array/splice/insert.mjs +12 -0
  144. package/dist/array/splice/replace.cjs +14 -0
  145. package/dist/array/splice/replace.d.ts +2 -0
  146. package/dist/array/splice/replace.mjs +12 -0
  147. package/dist/array/sum.cjs +11 -0
  148. package/dist/array/sum.d.ts +1 -0
  149. package/dist/array/sum.mjs +9 -0
  150. package/dist/array/types/atTuple.d.ts +1 -0
  151. package/dist/array/types/excludeTuple.d.ts +29 -0
  152. package/dist/array/types/extractTuple.d.ts +38 -0
  153. package/dist/array/types/index.d.ts +7 -0
  154. package/dist/array/types/mergeUnionTuple.d.ts +7 -0
  155. package/dist/array/types/popTuple.d.ts +2 -0
  156. package/dist/array/types/reverseTuple.d.ts +2 -0
  157. package/dist/array/types/shiftTuple.d.ts +2 -0
  158. package/dist/array/types/tupleHasSpread.d.ts +2 -0
  159. package/dist/array/unshift.cjs +12 -0
  160. package/dist/array/unshift.d.ts +2 -0
  161. package/dist/array/unshift.mjs +10 -0
  162. package/dist/common/addWrappedProperties.cjs +13 -0
  163. package/dist/common/addWrappedProperties.d.ts +4 -0
  164. package/dist/common/addWrappedProperties.mjs +11 -0
  165. package/dist/common/asyncInnerPipe.cjs +14 -0
  166. package/dist/common/asyncInnerPipe.d.ts +15 -0
  167. package/dist/common/asyncInnerPipe.mjs +12 -0
  168. package/dist/common/asyncLoop.cjs +19 -0
  169. package/dist/common/asyncLoop.d.ts +10 -0
  170. package/dist/common/asyncLoop.mjs +17 -0
  171. package/dist/common/asyncPipe.cjs +11 -0
  172. package/dist/common/asyncPipe.d.ts +16 -0
  173. package/dist/common/asyncPipe.mjs +9 -0
  174. package/dist/common/asyncRetry.cjs +25 -0
  175. package/dist/common/asyncRetry.d.ts +8 -0
  176. package/dist/common/asyncRetry.mjs +22 -0
  177. package/dist/common/clone.cjs +24 -0
  178. package/dist/{clone.d.ts → common/clone.d.ts} +1 -1
  179. package/dist/common/clone.mjs +22 -0
  180. package/dist/common/enum.cjs +11 -0
  181. package/dist/common/enum.d.ts +9 -0
  182. package/dist/common/enum.mjs +9 -0
  183. package/dist/common/escapeRegExp.cjs +7 -0
  184. package/dist/common/escapeRegExp.mjs +5 -0
  185. package/dist/common/externalPromise.cjs +17 -0
  186. package/dist/common/externalPromise.d.ts +5 -0
  187. package/dist/common/externalPromise.mjs +15 -0
  188. package/dist/common/forward.cjs +7 -0
  189. package/dist/common/forward.d.ts +1 -0
  190. package/dist/common/forward.mjs +5 -0
  191. package/dist/common/index.d.ts +27 -0
  192. package/dist/common/innerPipe.cjs +13 -0
  193. package/dist/common/innerPipe.d.ts +12 -0
  194. package/dist/common/innerPipe.mjs +11 -0
  195. package/dist/common/interpolation.cjs +9 -0
  196. package/dist/{interpolation.d.ts → common/interpolation.d.ts} +3 -3
  197. package/dist/common/interpolation.mjs +7 -0
  198. package/dist/common/kind.cjs +29 -0
  199. package/dist/common/kind.d.ts +26 -0
  200. package/dist/common/kind.mjs +26 -0
  201. package/dist/common/loop.cjs +19 -0
  202. package/dist/common/loop.d.ts +15 -0
  203. package/dist/common/loop.mjs +17 -0
  204. package/dist/common/pipe.cjs +11 -0
  205. package/dist/common/pipe.d.ts +12 -0
  206. package/dist/common/pipe.mjs +9 -0
  207. package/dist/common/promiseObject.cjs +12 -0
  208. package/dist/common/promiseObject.d.ts +7 -0
  209. package/dist/common/promiseObject.mjs +10 -0
  210. package/dist/common/simpleClone.cjs +25 -0
  211. package/dist/common/simpleClone.d.ts +1 -0
  212. package/dist/common/simpleClone.mjs +23 -0
  213. package/dist/common/sleep.cjs +7 -0
  214. package/dist/common/sleep.d.ts +1 -0
  215. package/dist/common/sleep.mjs +5 -0
  216. package/dist/common/stringToBytes.cjs +43 -0
  217. package/dist/{stringToBytes.d.ts → common/stringToBytes.d.ts} +3 -0
  218. package/dist/common/stringToBytes.mjs +40 -0
  219. package/dist/common/stringToMillisecond.cjs +48 -0
  220. package/dist/common/stringToMillisecond.d.ts +18 -0
  221. package/dist/common/stringToMillisecond.mjs +45 -0
  222. package/dist/common/toJson.cjs +34 -0
  223. package/dist/common/toJson.d.ts +11 -0
  224. package/dist/common/toJson.mjs +32 -0
  225. package/dist/common/toString.cjs +7 -0
  226. package/dist/common/toString.d.ts +1 -0
  227. package/dist/common/toString.mjs +5 -0
  228. package/dist/common/toTransform.cjs +34 -0
  229. package/dist/common/toTransform.d.ts +11 -0
  230. package/dist/common/toTransform.mjs +32 -0
  231. package/dist/common/toWrappedValue.cjs +11 -0
  232. package/dist/common/toWrappedValue.d.ts +4 -0
  233. package/dist/common/toWrappedValue.mjs +9 -0
  234. package/dist/common/types/IsExtends.d.ts +1 -0
  235. package/dist/common/types/adaptor.d.ts +1 -0
  236. package/dist/common/types/addOne.d.ts +23 -0
  237. package/dist/common/types/and.d.ts +2 -0
  238. package/dist/common/types/anyFunction.d.ts +1 -0
  239. package/dist/common/types/anyObject.d.ts +4 -0
  240. package/dist/common/types/anyTuple.d.ts +1 -0
  241. package/dist/common/types/anyValue.d.ts +2 -0
  242. package/dist/common/types/breakGenericLink.d.ts +1 -0
  243. package/dist/common/types/createTupleFromLength.d.ts +6 -0
  244. package/dist/common/types/deepPartial.d.ts +3 -0
  245. package/dist/common/types/deepRemoveReadonly.d.ts +3 -0
  246. package/dist/common/types/escapeAny.d.ts +1 -0
  247. package/dist/common/types/escapeVoid.d.ts +1 -0
  248. package/dist/common/types/expectType.d.ts +6 -0
  249. package/dist/common/types/fixDeepFunctionInfer.d.ts +2 -0
  250. package/dist/common/types/forcePredicate.d.ts +3 -0
  251. package/dist/common/types/index.d.ts +37 -0
  252. package/dist/common/types/isStringLIteral.d.ts +2 -0
  253. package/dist/common/types/isUnion.d.ts +2 -0
  254. package/dist/common/types/lastUnionElement.d.ts +2 -0
  255. package/dist/common/types/maybeArray.d.ts +1 -0
  256. package/dist/common/types/maybePromise.d.ts +1 -0
  257. package/dist/common/types/maybeWrapped.d.ts +2 -0
  258. package/dist/common/types/neverCoalescing.d.ts +2 -0
  259. package/dist/common/types/not.d.ts +1 -0
  260. package/dist/common/types/objectEntry.d.ts +2 -0
  261. package/dist/common/types/objectKey.d.ts +1 -0
  262. package/dist/common/types/or.d.ts +2 -0
  263. package/dist/common/types/removeDuplicateInUnion.d.ts +4 -0
  264. package/dist/common/types/removeReadonly.d.ts +3 -0
  265. package/dist/common/types/simplifyTopLevel.d.ts +3 -0
  266. package/dist/common/types/simplifyType.d.ts +3 -0
  267. package/dist/common/types/simplifyTypeForce.d.ts +3 -0
  268. package/dist/common/types/toLargeEnsemble.d.ts +6 -0
  269. package/dist/common/types/unionContain.d.ts +2 -0
  270. package/dist/common/types/unionToIntersection.d.ts +1 -0
  271. package/dist/common/types/unionToTuple.d.ts +5 -0
  272. package/dist/common/unwrap.cjs +11 -0
  273. package/dist/common/unwrap.d.ts +4 -0
  274. package/dist/common/unwrap.mjs +9 -0
  275. package/dist/common/when.d.ts +5 -0
  276. package/dist/common/whenNot.d.ts +5 -0
  277. package/dist/common/wrapValue.cjs +15 -0
  278. package/dist/common/wrapValue.d.ts +9 -0
  279. package/dist/common/wrapValue.mjs +11 -0
  280. package/dist/either/base.cjs +7 -0
  281. package/dist/either/base.d.ts +1 -0
  282. package/dist/either/base.mjs +5 -0
  283. package/dist/either/bool/base.cjs +7 -0
  284. package/dist/either/bool/base.d.ts +1 -0
  285. package/dist/either/bool/base.mjs +5 -0
  286. package/dist/either/bool/create.cjs +16 -0
  287. package/dist/either/bool/create.d.ts +4 -0
  288. package/dist/either/bool/create.mjs +14 -0
  289. package/dist/either/bool/falsy.cjs +44 -0
  290. package/dist/either/bool/falsy.d.ts +16 -0
  291. package/dist/either/bool/falsy.mjs +39 -0
  292. package/dist/either/bool/index.d.ts +4 -0
  293. package/dist/either/bool/truthy.cjs +44 -0
  294. package/dist/either/bool/truthy.d.ts +15 -0
  295. package/dist/either/bool/truthy.mjs +39 -0
  296. package/dist/either/future/MaybeFutureEither.d.ts +2 -0
  297. package/dist/either/future/base.cjs +7 -0
  298. package/dist/either/future/base.d.ts +1 -0
  299. package/dist/either/future/base.mjs +5 -0
  300. package/dist/either/future/create.cjs +49 -0
  301. package/dist/either/future/create.d.ts +25 -0
  302. package/dist/either/future/create.mjs +46 -0
  303. package/dist/either/future/error.cjs +13 -0
  304. package/dist/either/future/error.d.ts +6 -0
  305. package/dist/either/future/error.mjs +10 -0
  306. package/dist/either/future/index.d.ts +4 -0
  307. package/dist/either/future/success.cjs +13 -0
  308. package/dist/either/future/success.d.ts +6 -0
  309. package/dist/either/future/success.mjs +10 -0
  310. package/dist/either/hasInformation.cjs +10 -0
  311. package/dist/either/hasInformation.d.ts +7 -0
  312. package/dist/either/hasInformation.mjs +8 -0
  313. package/dist/either/index.cjs +108 -0
  314. package/dist/either/index.d.ts +10 -0
  315. package/dist/either/index.mjs +35 -0
  316. package/dist/either/left/create.cjs +13 -0
  317. package/dist/either/left/create.d.ts +6 -0
  318. package/dist/either/left/create.mjs +10 -0
  319. package/dist/either/left/error.cjs +12 -0
  320. package/dist/either/left/error.d.ts +5 -0
  321. package/dist/either/left/error.mjs +9 -0
  322. package/dist/either/left/fail.cjs +12 -0
  323. package/dist/either/left/fail.d.ts +5 -0
  324. package/dist/either/left/fail.mjs +9 -0
  325. package/dist/either/left/index.d.ts +5 -0
  326. package/dist/either/left/is.cjs +13 -0
  327. package/dist/either/left/is.d.ts +2 -0
  328. package/dist/either/left/is.mjs +11 -0
  329. package/dist/either/left/when.cjs +18 -0
  330. package/dist/either/left/when.d.ts +4 -0
  331. package/dist/either/left/when.mjs +16 -0
  332. package/dist/either/nullable/base.cjs +7 -0
  333. package/dist/either/nullable/base.d.ts +1 -0
  334. package/dist/either/nullable/base.mjs +5 -0
  335. package/dist/either/nullable/create.cjs +12 -0
  336. package/dist/either/nullable/create.d.ts +3 -0
  337. package/dist/either/nullable/create.mjs +10 -0
  338. package/dist/either/nullable/empty.cjs +44 -0
  339. package/dist/either/nullable/empty.d.ts +15 -0
  340. package/dist/either/nullable/empty.mjs +39 -0
  341. package/dist/either/nullable/filled.cjs +44 -0
  342. package/dist/either/nullable/filled.d.ts +15 -0
  343. package/dist/either/nullable/filled.mjs +39 -0
  344. package/dist/either/nullable/index.d.ts +4 -0
  345. package/dist/either/nullish/base.cjs +7 -0
  346. package/dist/either/nullish/base.d.ts +1 -0
  347. package/dist/either/nullish/base.mjs +5 -0
  348. package/dist/either/nullish/create.cjs +12 -0
  349. package/dist/either/nullish/create.d.ts +3 -0
  350. package/dist/either/nullish/create.mjs +10 -0
  351. package/dist/either/nullish/empty.cjs +44 -0
  352. package/dist/either/nullish/empty.d.ts +16 -0
  353. package/dist/either/nullish/empty.mjs +39 -0
  354. package/dist/either/nullish/filled.cjs +44 -0
  355. package/dist/either/nullish/filled.d.ts +15 -0
  356. package/dist/either/nullish/filled.mjs +39 -0
  357. package/dist/either/nullish/index.d.ts +4 -0
  358. package/dist/either/optional/base.cjs +7 -0
  359. package/dist/either/optional/base.d.ts +1 -0
  360. package/dist/either/optional/base.mjs +5 -0
  361. package/dist/either/optional/create.cjs +12 -0
  362. package/dist/either/optional/create.d.ts +3 -0
  363. package/dist/either/optional/create.mjs +10 -0
  364. package/dist/either/optional/empty.cjs +43 -0
  365. package/dist/either/optional/empty.d.ts +15 -0
  366. package/dist/either/optional/empty.mjs +38 -0
  367. package/dist/either/optional/filled.cjs +44 -0
  368. package/dist/either/optional/filled.d.ts +15 -0
  369. package/dist/either/optional/filled.mjs +39 -0
  370. package/dist/either/optional/index.d.ts +4 -0
  371. package/dist/either/right/asyncPipe.cjs +28 -0
  372. package/dist/either/right/asyncPipe.d.ts +22 -0
  373. package/dist/either/right/asyncPipe.mjs +26 -0
  374. package/dist/either/right/create.cjs +13 -0
  375. package/dist/either/right/create.d.ts +6 -0
  376. package/dist/either/right/create.mjs +10 -0
  377. package/dist/either/right/index.d.ts +7 -0
  378. package/dist/either/right/is.cjs +13 -0
  379. package/dist/either/right/is.d.ts +2 -0
  380. package/dist/either/right/is.mjs +11 -0
  381. package/dist/either/right/ok.cjs +12 -0
  382. package/dist/either/right/ok.d.ts +5 -0
  383. package/dist/either/right/ok.mjs +9 -0
  384. package/dist/either/right/pipe.cjs +22 -0
  385. package/dist/either/right/pipe.d.ts +19 -0
  386. package/dist/either/right/pipe.mjs +20 -0
  387. package/dist/either/right/success.cjs +12 -0
  388. package/dist/either/right/success.d.ts +5 -0
  389. package/dist/either/right/success.mjs +9 -0
  390. package/dist/either/right/when.cjs +18 -0
  391. package/dist/either/right/when.d.ts +4 -0
  392. package/dist/either/right/when.mjs +16 -0
  393. package/dist/either/whenHasInformation.cjs +24 -0
  394. package/dist/either/whenHasInformation.d.ts +8 -0
  395. package/dist/either/whenHasInformation.mjs +22 -0
  396. package/dist/generator/asyncFilter.cjs +20 -0
  397. package/dist/generator/asyncFilter.d.ts +8 -0
  398. package/dist/generator/asyncFilter.mjs +18 -0
  399. package/dist/generator/asyncLoop.cjs +26 -0
  400. package/dist/generator/asyncLoop.d.ts +10 -0
  401. package/dist/generator/asyncLoop.mjs +24 -0
  402. package/dist/generator/asyncMap.cjs +18 -0
  403. package/dist/generator/asyncMap.d.ts +6 -0
  404. package/dist/generator/asyncMap.mjs +16 -0
  405. package/dist/generator/asyncReduce.cjs +44 -0
  406. package/dist/generator/asyncReduce.d.ts +30 -0
  407. package/dist/generator/asyncReduce.mjs +42 -0
  408. package/dist/generator/execute.cjs +17 -0
  409. package/dist/generator/execute.d.ts +2 -0
  410. package/dist/generator/execute.mjs +15 -0
  411. package/dist/generator/filter.cjs +20 -0
  412. package/dist/generator/filter.d.ts +8 -0
  413. package/dist/generator/filter.mjs +18 -0
  414. package/dist/generator/index.cjs +23 -0
  415. package/dist/generator/index.d.ts +9 -0
  416. package/dist/generator/index.mjs +9 -0
  417. package/dist/generator/loop.cjs +26 -0
  418. package/dist/generator/loop.d.ts +15 -0
  419. package/dist/generator/loop.mjs +24 -0
  420. package/dist/generator/map.cjs +18 -0
  421. package/dist/generator/map.d.ts +6 -0
  422. package/dist/generator/map.mjs +16 -0
  423. package/dist/generator/reduce.cjs +42 -0
  424. package/dist/generator/reduce.d.ts +30 -0
  425. package/dist/generator/reduce.mjs +40 -0
  426. package/dist/index.cjs +79 -133
  427. package/dist/index.d.ts +15 -25
  428. package/dist/index.mjs +47 -124
  429. package/dist/number/abs.cjs +7 -0
  430. package/dist/number/abs.d.ts +1 -0
  431. package/dist/number/abs.mjs +5 -0
  432. package/dist/number/acos.cjs +7 -0
  433. package/dist/number/acos.d.ts +1 -0
  434. package/dist/number/acos.mjs +5 -0
  435. package/dist/number/add.cjs +12 -0
  436. package/dist/number/add.d.ts +2 -0
  437. package/dist/number/add.mjs +10 -0
  438. package/dist/number/asin.cjs +7 -0
  439. package/dist/number/asin.d.ts +1 -0
  440. package/dist/number/asin.mjs +5 -0
  441. package/dist/number/atan.cjs +7 -0
  442. package/dist/number/atan.d.ts +1 -0
  443. package/dist/number/atan.mjs +5 -0
  444. package/dist/number/atan2.cjs +12 -0
  445. package/dist/number/atan2.d.ts +2 -0
  446. package/dist/number/atan2.mjs +10 -0
  447. package/dist/number/ceil.cjs +7 -0
  448. package/dist/number/ceil.d.ts +1 -0
  449. package/dist/number/ceil.mjs +5 -0
  450. package/dist/number/clamp.cjs +14 -0
  451. package/dist/number/clamp.d.ts +2 -0
  452. package/dist/number/clamp.mjs +12 -0
  453. package/dist/number/cos.cjs +7 -0
  454. package/dist/number/cos.d.ts +1 -0
  455. package/dist/number/cos.mjs +5 -0
  456. package/dist/number/divide.cjs +12 -0
  457. package/dist/number/divide.d.ts +2 -0
  458. package/dist/number/divide.mjs +10 -0
  459. package/dist/number/floor.cjs +7 -0
  460. package/dist/number/floor.d.ts +1 -0
  461. package/dist/number/floor.mjs +5 -0
  462. package/dist/number/index.cjs +49 -0
  463. package/dist/number/index.d.ts +22 -0
  464. package/dist/number/index.mjs +22 -0
  465. package/dist/number/max.cjs +12 -0
  466. package/dist/number/max.d.ts +2 -0
  467. package/dist/number/max.mjs +10 -0
  468. package/dist/number/min.cjs +12 -0
  469. package/dist/number/min.d.ts +2 -0
  470. package/dist/number/min.mjs +10 -0
  471. package/dist/number/modulo.cjs +12 -0
  472. package/dist/number/modulo.d.ts +2 -0
  473. package/dist/number/modulo.mjs +10 -0
  474. package/dist/number/multiply.cjs +12 -0
  475. package/dist/number/multiply.d.ts +2 -0
  476. package/dist/number/multiply.mjs +10 -0
  477. package/dist/number/negate.cjs +7 -0
  478. package/dist/number/negate.d.ts +1 -0
  479. package/dist/number/negate.mjs +5 -0
  480. package/dist/number/power.cjs +12 -0
  481. package/dist/number/power.d.ts +2 -0
  482. package/dist/number/power.mjs +10 -0
  483. package/dist/number/round.cjs +7 -0
  484. package/dist/number/round.d.ts +1 -0
  485. package/dist/number/round.mjs +5 -0
  486. package/dist/number/sin.cjs +7 -0
  487. package/dist/number/sin.d.ts +1 -0
  488. package/dist/number/sin.mjs +5 -0
  489. package/dist/number/subtract.cjs +12 -0
  490. package/dist/number/subtract.d.ts +2 -0
  491. package/dist/number/subtract.mjs +10 -0
  492. package/dist/number/tan.cjs +7 -0
  493. package/dist/number/tan.d.ts +1 -0
  494. package/dist/number/tan.mjs +5 -0
  495. package/dist/number/trunc.cjs +7 -0
  496. package/dist/number/trunc.d.ts +1 -0
  497. package/dist/number/trunc.mjs +5 -0
  498. package/dist/object/assign.cjs +15 -0
  499. package/dist/object/assign.d.ts +4 -0
  500. package/dist/object/assign.mjs +13 -0
  501. package/dist/object/entries.cjs +10 -0
  502. package/dist/object/entries.d.ts +7 -0
  503. package/dist/object/entries.mjs +8 -0
  504. package/dist/object/fromEntries.cjs +7 -0
  505. package/dist/object/fromEntries.d.ts +6 -0
  506. package/dist/object/fromEntries.mjs +5 -0
  507. package/dist/object/getProperty.cjs +12 -0
  508. package/dist/object/getProperty.d.ts +8 -0
  509. package/dist/object/getProperty.mjs +10 -0
  510. package/dist/object/hasKeys.cjs +18 -0
  511. package/dist/object/hasKeys.d.ts +3 -0
  512. package/dist/object/hasKeys.mjs +16 -0
  513. package/dist/object/index.cjs +31 -0
  514. package/dist/object/index.d.ts +14 -0
  515. package/dist/object/index.mjs +13 -0
  516. package/dist/object/keys.cjs +7 -0
  517. package/dist/object/keys.d.ts +1 -0
  518. package/dist/object/keys.mjs +5 -0
  519. package/dist/object/omit.cjs +24 -0
  520. package/dist/object/omit.d.ts +8 -0
  521. package/dist/object/omit.mjs +22 -0
  522. package/dist/object/override.cjs +18 -0
  523. package/dist/object/override.d.ts +2 -0
  524. package/dist/object/override.mjs +16 -0
  525. package/dist/object/pick.cjs +24 -0
  526. package/dist/object/pick.d.ts +7 -0
  527. package/dist/object/pick.mjs +22 -0
  528. package/dist/object/to.cjs +16 -0
  529. package/dist/object/to.d.ts +10 -0
  530. package/dist/object/to.mjs +14 -0
  531. package/dist/object/transformProperties.cjs +18 -0
  532. package/dist/object/transformProperties.d.ts +10 -0
  533. package/dist/object/transformProperties.mjs +16 -0
  534. package/dist/object/transformProperty.cjs +15 -0
  535. package/dist/object/transformProperty.d.ts +7 -0
  536. package/dist/object/transformProperty.mjs +13 -0
  537. package/dist/object/types/UnionObjectToIntersection.d.ts +2 -0
  538. package/dist/object/types/assignObjects.d.ts +2 -0
  539. package/dist/object/types/flatObject.d.ts +25 -0
  540. package/dist/object/types/getPropsWithValue.d.ts +4 -0
  541. package/dist/object/types/index.d.ts +6 -0
  542. package/dist/object/types/partialKeys.d.ts +2 -0
  543. package/dist/object/types/requiredKeys.d.ts +2 -0
  544. package/dist/object/values.cjs +7 -0
  545. package/dist/object/values.d.ts +4 -0
  546. package/dist/object/values.mjs +5 -0
  547. package/dist/pattern/exhaustive.cjs +9 -0
  548. package/dist/pattern/exhaustive.d.ts +3 -0
  549. package/dist/pattern/exhaustive.mjs +7 -0
  550. package/dist/pattern/index.cjs +22 -0
  551. package/dist/pattern/index.d.ts +8 -0
  552. package/dist/pattern/index.mjs +8 -0
  553. package/dist/pattern/isMatch.cjs +44 -0
  554. package/dist/pattern/isMatch.d.ts +2 -0
  555. package/dist/pattern/isMatch.mjs +42 -0
  556. package/dist/pattern/match.cjs +18 -0
  557. package/dist/pattern/match.d.ts +6 -0
  558. package/dist/pattern/match.mjs +16 -0
  559. package/dist/pattern/matchPrimitive.cjs +17 -0
  560. package/dist/pattern/matchPrimitive.d.ts +3 -0
  561. package/dist/pattern/matchPrimitive.mjs +15 -0
  562. package/dist/pattern/otherwise.cjs +17 -0
  563. package/dist/pattern/otherwise.d.ts +4 -0
  564. package/dist/pattern/otherwise.mjs +15 -0
  565. package/dist/pattern/result.cjs +13 -0
  566. package/dist/pattern/result.d.ts +7 -0
  567. package/dist/pattern/result.mjs +10 -0
  568. package/dist/pattern/types/complexMatchedValue/array.d.ts +40 -0
  569. package/dist/pattern/types/complexMatchedValue/index.d.ts +6 -0
  570. package/dist/pattern/types/complexMatchedValue/maybeAll.d.ts +3 -0
  571. package/dist/pattern/types/complexMatchedValue/object.d.ts +11 -0
  572. package/dist/pattern/types/complexMatchedValue/primitive.d.ts +9 -0
  573. package/dist/pattern/types/complexUnMatchedValue/array.d.ts +27 -0
  574. package/dist/pattern/types/complexUnMatchedValue/getIncompleteUnion.d.ts +66 -0
  575. package/dist/pattern/types/complexUnMatchedValue/index.d.ts +9 -0
  576. package/dist/pattern/types/complexUnMatchedValue/maybeAll.d.ts +3 -0
  577. package/dist/pattern/types/complexUnMatchedValue/object.d.ts +17 -0
  578. package/dist/pattern/types/complexUnMatchedValue/primitive.d.ts +8 -0
  579. package/dist/pattern/types/complexUnMatchedValue/unionObject.d.ts +3 -0
  580. package/dist/pattern/types/index.d.ts +3 -0
  581. package/dist/pattern/types/pattern.cjs +5 -0
  582. package/dist/pattern/types/pattern.d.ts +37 -0
  583. package/dist/pattern/types/pattern.mjs +3 -0
  584. package/dist/pattern/union.cjs +20 -0
  585. package/dist/pattern/union.d.ts +6 -0
  586. package/dist/pattern/union.mjs +18 -0
  587. package/dist/string/at/default.cjs +12 -0
  588. package/dist/string/at/default.d.ts +2 -0
  589. package/dist/string/at/default.mjs +10 -0
  590. package/dist/string/at/first.cjs +7 -0
  591. package/dist/string/at/first.d.ts +2 -0
  592. package/dist/string/at/first.mjs +5 -0
  593. package/dist/string/at/index.d.ts +3 -0
  594. package/dist/string/at/last.cjs +9 -0
  595. package/dist/string/at/last.d.ts +2 -0
  596. package/dist/string/at/last.mjs +7 -0
  597. package/dist/string/capitalize.cjs +7 -0
  598. package/dist/string/capitalize.d.ts +1 -0
  599. package/dist/string/capitalize.mjs +5 -0
  600. package/dist/string/charAt.cjs +12 -0
  601. package/dist/string/charAt.d.ts +2 -0
  602. package/dist/string/charAt.mjs +10 -0
  603. package/dist/string/concat.cjs +12 -0
  604. package/dist/string/concat.d.ts +2 -0
  605. package/dist/string/concat.mjs +10 -0
  606. package/dist/string/endsWith.cjs +12 -0
  607. package/dist/string/endsWith.d.ts +2 -0
  608. package/dist/string/endsWith.mjs +10 -0
  609. package/dist/string/includes.cjs +12 -0
  610. package/dist/string/includes.d.ts +2 -0
  611. package/dist/string/includes.mjs +10 -0
  612. package/dist/string/index.cjs +67 -0
  613. package/dist/string/index.d.ts +28 -0
  614. package/dist/string/index.mjs +31 -0
  615. package/dist/string/indexOf.cjs +13 -0
  616. package/dist/string/indexOf.d.ts +2 -0
  617. package/dist/string/indexOf.mjs +11 -0
  618. package/dist/string/isKeyof.cjs +12 -0
  619. package/dist/string/isKeyof.d.ts +3 -0
  620. package/dist/string/isKeyof.mjs +10 -0
  621. package/dist/string/lastIndexOf.cjs +13 -0
  622. package/dist/string/lastIndexOf.d.ts +2 -0
  623. package/dist/string/lastIndexOf.mjs +11 -0
  624. package/dist/string/match.cjs +13 -0
  625. package/dist/string/match.d.ts +2 -0
  626. package/dist/string/match.mjs +11 -0
  627. package/dist/string/matchAll.cjs +12 -0
  628. package/dist/string/matchAll.d.ts +2 -0
  629. package/dist/string/matchAll.mjs +10 -0
  630. package/dist/string/normalize.cjs +12 -0
  631. package/dist/string/normalize.d.ts +3 -0
  632. package/dist/string/normalize.mjs +10 -0
  633. package/dist/string/padEnd.cjs +12 -0
  634. package/dist/string/padEnd.d.ts +2 -0
  635. package/dist/string/padEnd.mjs +10 -0
  636. package/dist/string/padStart.cjs +12 -0
  637. package/dist/string/padStart.d.ts +2 -0
  638. package/dist/string/padStart.mjs +10 -0
  639. package/dist/string/repeat.cjs +15 -0
  640. package/dist/string/repeat.d.ts +2 -0
  641. package/dist/string/repeat.mjs +13 -0
  642. package/dist/string/replace.cjs +12 -0
  643. package/dist/string/replace.d.ts +2 -0
  644. package/dist/string/replace.mjs +10 -0
  645. package/dist/string/replaceAll.cjs +12 -0
  646. package/dist/string/replaceAll.d.ts +2 -0
  647. package/dist/string/replaceAll.mjs +10 -0
  648. package/dist/string/search.cjs +13 -0
  649. package/dist/string/search.d.ts +2 -0
  650. package/dist/string/search.mjs +11 -0
  651. package/dist/string/slice.cjs +12 -0
  652. package/dist/string/slice.d.ts +2 -0
  653. package/dist/string/slice.mjs +10 -0
  654. package/dist/string/split.cjs +16 -0
  655. package/dist/string/split.d.ts +9 -0
  656. package/dist/string/split.mjs +14 -0
  657. package/dist/string/startsWith.cjs +12 -0
  658. package/dist/string/startsWith.d.ts +2 -0
  659. package/dist/string/startsWith.mjs +10 -0
  660. package/dist/string/substring.cjs +12 -0
  661. package/dist/string/substring.d.ts +2 -0
  662. package/dist/string/substring.mjs +10 -0
  663. package/dist/string/test.cjs +12 -0
  664. package/dist/string/test.d.ts +2 -0
  665. package/dist/string/test.mjs +10 -0
  666. package/dist/string/toLowerCase.cjs +7 -0
  667. package/dist/string/toLowerCase.d.ts +1 -0
  668. package/dist/string/toLowerCase.mjs +5 -0
  669. package/dist/string/toUpperCase.cjs +7 -0
  670. package/dist/string/toUpperCase.d.ts +1 -0
  671. package/dist/string/toUpperCase.mjs +5 -0
  672. package/dist/string/trim/default.cjs +7 -0
  673. package/dist/string/trim/default.d.ts +1 -0
  674. package/dist/string/trim/default.mjs +5 -0
  675. package/dist/string/trim/end.cjs +7 -0
  676. package/dist/string/trim/end.d.ts +1 -0
  677. package/dist/string/trim/end.mjs +5 -0
  678. package/dist/string/trim/index.d.ts +3 -0
  679. package/dist/string/trim/start.cjs +7 -0
  680. package/dist/string/trim/start.d.ts +1 -0
  681. package/dist/string/trim/start.mjs +5 -0
  682. package/dist/string/types/NormalizeForm.d.ts +1 -0
  683. package/dist/string/types/endsWith.d.ts +1 -0
  684. package/dist/string/types/first.d.ts +2 -0
  685. package/dist/string/types/includes.d.ts +1 -0
  686. package/dist/string/types/index.d.ts +5 -0
  687. package/dist/string/types/last.d.ts +2 -0
  688. package/dist/string/types/split.d.ts +9 -0
  689. package/dist/string/types/startsWith.d.ts +1 -0
  690. package/dist/string/uncapitalize.cjs +7 -0
  691. package/dist/string/uncapitalize.d.ts +1 -0
  692. package/dist/string/uncapitalize.mjs +5 -0
  693. package/package.json +20 -27
  694. package/dist/addThis.d.ts +0 -2
  695. package/dist/entryUseMapper.d.ts +0 -6
  696. package/dist/expectType.d.ts +0 -6
  697. package/dist/getLastOfUnion.d.ts +0 -2
  698. package/dist/getPropsWithTrueValue.d.ts +0 -3
  699. package/dist/getTypedEntries.d.ts +0 -6
  700. package/dist/getTypedKeys.d.ts +0 -1
  701. package/dist/hasKey.d.ts +0 -2
  702. package/dist/incremente.d.ts +0 -33
  703. package/dist/mergeObjects.d.ts +0 -4
  704. package/dist/overrideInterface.d.ts +0 -1
  705. package/dist/partialKeys.d.ts +0 -2
  706. package/dist/requiredKeys.d.ts +0 -2
  707. package/dist/simpleClone.d.ts +0 -1
  708. package/dist/simplifyType.d.ts +0 -9
  709. package/dist/sleep.d.ts +0 -1
  710. package/dist/types.d.ts +0 -4
  711. package/dist/unPartial.d.ts +0 -10
  712. package/dist/unionToIntersection.d.ts +0 -1
  713. package/dist/unionToTuple.d.ts +0 -4
  714. package/dist/uniqueGeneric.d.ts +0 -5
  715. /package/dist/{escapeRegExp.d.ts → common/escapeRegExp.d.ts} +0 -0
  716. /package/dist/{isEqual.d.ts → common/types/isEqual.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ export declare const eitherBoolKind: import("../../common").KindHandler<import("../../common").KindDefinition<"either-bool", unknown>>;
@@ -0,0 +1,5 @@
1
+ import { createKind } from '../../common/kind.mjs';
2
+
3
+ const eitherBoolKind = createKind("either-bool");
4
+
5
+ export { eitherBoolKind };
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var falsy = require('./falsy.cjs');
4
+ var truthy = require('./truthy.cjs');
5
+
6
+ function bool(value) {
7
+ return value === undefined
8
+ || value === null
9
+ || value === 0
10
+ || value === ""
11
+ || value === false
12
+ ? falsy.boolFalsy(value)
13
+ : truthy.boolTruthy(value);
14
+ }
15
+
16
+ exports.bool = bool;
@@ -0,0 +1,4 @@
1
+ import { type IsEqual } from "../../common";
2
+ import { type BoolFalsyValue, type EitherBoolFalsy } from "./falsy";
3
+ import { type EitherBoolTruthy } from "./truthy";
4
+ export declare function bool<const GenericValue extends unknown = undefined>(value: GenericValue): GenericValue extends BoolFalsyValue ? EitherBoolFalsy<GenericValue> : IsEqual<GenericValue, number> extends true ? EitherBoolTruthy<GenericValue> | EitherBoolFalsy<0> : IsEqual<GenericValue, string> extends true ? EitherBoolTruthy<GenericValue> | EitherBoolFalsy<""> : EitherBoolTruthy<GenericValue>;
@@ -0,0 +1,14 @@
1
+ import { boolFalsy } from './falsy.mjs';
2
+ import { boolTruthy } from './truthy.mjs';
3
+
4
+ function bool(value) {
5
+ return value === undefined
6
+ || value === null
7
+ || value === 0
8
+ || value === ""
9
+ || value === false
10
+ ? boolFalsy(value)
11
+ : boolTruthy(value);
12
+ }
13
+
14
+ export { bool };
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ var kind = require('../../common/kind.cjs');
4
+ var unwrap = require('../../common/unwrap.cjs');
5
+ var create = require('../left/create.cjs');
6
+ var is = require('../left/is.cjs');
7
+ var is$1 = require('../right/is.cjs');
8
+ var create$1 = require('./create.cjs');
9
+ var base = require('./base.cjs');
10
+
11
+ const eitherBoolFalsyKind = kind.createKind("either-bool-falsy");
12
+ function boolFalsy(value = undefined) {
13
+ return base.eitherBoolKind.addTo(eitherBoolFalsyKind.addTo(create.left("bool", value)));
14
+ }
15
+ function isBoolFalsy(input) {
16
+ return is.isLeft(input)
17
+ && base.eitherBoolKind.has(input)
18
+ && eitherBoolFalsyKind.has(input);
19
+ }
20
+ function whenIsBoolFalsy(...args) {
21
+ if (args.length === 1) {
22
+ const [theFunction] = args;
23
+ return (input) => whenIsBoolFalsy(input, theFunction);
24
+ }
25
+ const [input, theFunction] = args;
26
+ if (is$1.isRight(input)) {
27
+ return input;
28
+ }
29
+ else if (!isBoolFalsy(input) && is.isLeft(input)) {
30
+ return input;
31
+ }
32
+ const either = is$1.isRight(input) || is.isLeft(input)
33
+ ? input
34
+ : create$1.bool(input);
35
+ if (isBoolFalsy(either)) {
36
+ return theFunction(unwrap.unwrap(either));
37
+ }
38
+ return either;
39
+ }
40
+
41
+ exports.boolFalsy = boolFalsy;
42
+ exports.eitherBoolFalsyKind = eitherBoolFalsyKind;
43
+ exports.isBoolFalsy = isBoolFalsy;
44
+ exports.whenIsBoolFalsy = whenIsBoolFalsy;
@@ -0,0 +1,16 @@
1
+ import { type EscapeVoid, type AnyValue, type Unwrap } from "../../common";
2
+ import { type EitherLeft } from "../left";
3
+ import { type EitherRight } from "../right";
4
+ import { bool } from "./create";
5
+ import { type Kind } from "../../common/kind";
6
+ import { eitherBoolKind } from "./base";
7
+ export type BoolFalsyValue = 0 | "" | undefined | null | false;
8
+ export declare const eitherBoolFalsyKind: import("../../common").KindHandler<import("../../common").KindDefinition<"either-bool-falsy", unknown>>;
9
+ export type EitherBoolFalsy<GenericValue extends BoolFalsyValue = BoolFalsyValue> = (EitherLeft<"bool", GenericValue> & Kind<typeof eitherBoolKind.definition> & Kind<typeof eitherBoolFalsyKind.definition>);
10
+ export declare function boolFalsy<const GenericValue extends BoolFalsyValue = undefined>(value?: GenericValue): EitherBoolFalsy<GenericValue>;
11
+ type Either = EitherRight | EitherLeft;
12
+ export declare function isBoolFalsy<GenericInput extends unknown>(input: GenericInput): input is Extract<GenericInput, EitherBoolFalsy>;
13
+ type ToEither<GenericValue extends unknown> = GenericValue extends Either ? GenericValue : ReturnType<typeof bool<GenericValue>>;
14
+ export declare function whenIsBoolFalsy<const GenericInput extends unknown, const GenericOutput extends AnyValue | EscapeVoid>(theFunction: (eitherValue: Unwrap<Extract<ToEither<GenericInput>, EitherBoolFalsy>>) => GenericOutput): (input: GenericInput) => GenericOutput | Exclude<ToEither<GenericInput>, EitherBoolFalsy>;
15
+ export declare function whenIsBoolFalsy<const GenericInput extends unknown, const GenericOutput extends AnyValue | EscapeVoid>(input: GenericInput, theFunction: (eitherValue: Unwrap<Extract<ToEither<GenericInput>, EitherBoolFalsy>>) => GenericOutput): GenericOutput | Exclude<ToEither<GenericInput>, EitherBoolFalsy>;
16
+ export {};
@@ -0,0 +1,39 @@
1
+ import { createKind } from '../../common/kind.mjs';
2
+ import { unwrap } from '../../common/unwrap.mjs';
3
+ import { left } from '../left/create.mjs';
4
+ import { isLeft } from '../left/is.mjs';
5
+ import { isRight } from '../right/is.mjs';
6
+ import { bool } from './create.mjs';
7
+ import { eitherBoolKind } from './base.mjs';
8
+
9
+ const eitherBoolFalsyKind = createKind("either-bool-falsy");
10
+ function boolFalsy(value = undefined) {
11
+ return eitherBoolKind.addTo(eitherBoolFalsyKind.addTo(left("bool", value)));
12
+ }
13
+ function isBoolFalsy(input) {
14
+ return isLeft(input)
15
+ && eitherBoolKind.has(input)
16
+ && eitherBoolFalsyKind.has(input);
17
+ }
18
+ function whenIsBoolFalsy(...args) {
19
+ if (args.length === 1) {
20
+ const [theFunction] = args;
21
+ return (input) => whenIsBoolFalsy(input, theFunction);
22
+ }
23
+ const [input, theFunction] = args;
24
+ if (isRight(input)) {
25
+ return input;
26
+ }
27
+ else if (!isBoolFalsy(input) && isLeft(input)) {
28
+ return input;
29
+ }
30
+ const either = isRight(input) || isLeft(input)
31
+ ? input
32
+ : bool(input);
33
+ if (isBoolFalsy(either)) {
34
+ return theFunction(unwrap(either));
35
+ }
36
+ return either;
37
+ }
38
+
39
+ export { boolFalsy, eitherBoolFalsyKind, isBoolFalsy, whenIsBoolFalsy };
@@ -0,0 +1,4 @@
1
+ export * from "./create";
2
+ export * from "./falsy";
3
+ export * from "./truthy";
4
+ export * from "./base";
@@ -0,0 +1,44 @@
1
+ 'use strict';
2
+
3
+ var kind = require('../../common/kind.cjs');
4
+ var unwrap = require('../../common/unwrap.cjs');
5
+ var is$1 = require('../left/is.cjs');
6
+ var create = require('../right/create.cjs');
7
+ var is = require('../right/is.cjs');
8
+ var create$1 = require('./create.cjs');
9
+ var base = require('./base.cjs');
10
+
11
+ const eitherBoolTruthyKind = kind.createKind("either-bool-truthy");
12
+ function boolTruthy(value) {
13
+ return base.eitherBoolKind.addTo(eitherBoolTruthyKind.addTo(create.right("bool", value)));
14
+ }
15
+ function isBoolTruthy(input) {
16
+ return is.isRight(input)
17
+ && base.eitherBoolKind.has(input)
18
+ && eitherBoolTruthyKind.has(input);
19
+ }
20
+ function whenIsBoolTruthy(...args) {
21
+ if (args.length === 1) {
22
+ const [theFunction] = args;
23
+ return (input) => whenIsBoolTruthy(input, theFunction);
24
+ }
25
+ const [input, theFunction] = args;
26
+ if (is$1.isLeft(input)) {
27
+ return input;
28
+ }
29
+ else if (!isBoolTruthy(input) && is.isRight(input)) {
30
+ return input;
31
+ }
32
+ const either = is.isRight(input) || is$1.isLeft(input)
33
+ ? input
34
+ : create$1.bool(input);
35
+ if (isBoolTruthy(either)) {
36
+ return theFunction(unwrap.unwrap(either));
37
+ }
38
+ return either;
39
+ }
40
+
41
+ exports.boolTruthy = boolTruthy;
42
+ exports.eitherBoolTruthyKind = eitherBoolTruthyKind;
43
+ exports.isBoolTruthy = isBoolTruthy;
44
+ exports.whenIsBoolTruthy = whenIsBoolTruthy;
@@ -0,0 +1,15 @@
1
+ import { type EitherRight } from "../right";
2
+ import { bool } from "./create";
3
+ import { type EitherLeft } from "../left";
4
+ import { type Kind } from "../../common/kind";
5
+ import { type EscapeVoid, type AnyValue, type Unwrap } from "../../common";
6
+ import { eitherBoolKind } from "./base";
7
+ export declare const eitherBoolTruthyKind: import("../../common").KindHandler<import("../../common").KindDefinition<"either-bool-truthy", unknown>>;
8
+ export type EitherBoolTruthy<GenericValue extends unknown = unknown> = (EitherRight<"bool", GenericValue> & Kind<typeof eitherBoolKind.definition> & Kind<typeof eitherBoolTruthyKind.definition>);
9
+ export declare function boolTruthy<const GenericValue extends unknown>(value: GenericValue): EitherBoolTruthy<GenericValue>;
10
+ type Either = EitherRight | EitherLeft;
11
+ export declare function isBoolTruthy<GenericInput extends unknown>(input: GenericInput): input is Extract<GenericInput, EitherBoolTruthy>;
12
+ type ToEither<GenericValue extends unknown> = GenericValue extends Either ? GenericValue : ReturnType<typeof bool<GenericValue>>;
13
+ export declare function whenIsBoolTruthy<const GenericInput extends unknown, const GenericOutput extends AnyValue | EscapeVoid>(theFunction: (eitherValue: Unwrap<Extract<ToEither<GenericInput>, EitherBoolTruthy>>) => GenericOutput): (input: GenericInput) => GenericOutput | Exclude<ToEither<GenericInput>, EitherBoolTruthy>;
14
+ export declare function whenIsBoolTruthy<const GenericInput extends unknown, const GenericOutput extends AnyValue | EscapeVoid>(input: GenericInput, theFunction: (eitherValue: Unwrap<Extract<ToEither<GenericInput>, EitherBoolTruthy>>) => GenericOutput): GenericOutput | Exclude<ToEither<GenericInput>, EitherBoolTruthy>;
15
+ export {};
@@ -0,0 +1,39 @@
1
+ import { createKind } from '../../common/kind.mjs';
2
+ import { unwrap } from '../../common/unwrap.mjs';
3
+ import { isLeft } from '../left/is.mjs';
4
+ import { right } from '../right/create.mjs';
5
+ import { isRight } from '../right/is.mjs';
6
+ import { bool } from './create.mjs';
7
+ import { eitherBoolKind } from './base.mjs';
8
+
9
+ const eitherBoolTruthyKind = createKind("either-bool-truthy");
10
+ function boolTruthy(value) {
11
+ return eitherBoolKind.addTo(eitherBoolTruthyKind.addTo(right("bool", value)));
12
+ }
13
+ function isBoolTruthy(input) {
14
+ return isRight(input)
15
+ && eitherBoolKind.has(input)
16
+ && eitherBoolTruthyKind.has(input);
17
+ }
18
+ function whenIsBoolTruthy(...args) {
19
+ if (args.length === 1) {
20
+ const [theFunction] = args;
21
+ return (input) => whenIsBoolTruthy(input, theFunction);
22
+ }
23
+ const [input, theFunction] = args;
24
+ if (isLeft(input)) {
25
+ return input;
26
+ }
27
+ else if (!isBoolTruthy(input) && isRight(input)) {
28
+ return input;
29
+ }
30
+ const either = isRight(input) || isLeft(input)
31
+ ? input
32
+ : bool(input);
33
+ if (isBoolTruthy(either)) {
34
+ return theFunction(unwrap(either));
35
+ }
36
+ return either;
37
+ }
38
+
39
+ export { boolTruthy, eitherBoolTruthyKind, isBoolTruthy, whenIsBoolTruthy };
@@ -0,0 +1,2 @@
1
+ import { type Future } from "./create";
2
+ export type MaybeFutureEither<GenericValue extends unknown> = Future<GenericValue> | GenericValue;
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+
3
+ var kind = require('../../common/kind.cjs');
4
+
5
+ const eitherFutureKind = kind.createKind("either-future");
6
+
7
+ exports.eitherFutureKind = eitherFutureKind;
@@ -0,0 +1 @@
1
+ export declare const eitherFutureKind: import("../../common").KindHandler<import("../../common").KindDefinition<"either-future", unknown>>;
@@ -0,0 +1,5 @@
1
+ import { createKind } from '../../common/kind.mjs';
2
+
3
+ const eitherFutureKind = createKind("either-future");
4
+
5
+ export { eitherFutureKind };
@@ -0,0 +1,49 @@
1
+ 'use strict';
2
+
3
+ var is$1 = require('../left/is.cjs');
4
+ var success = require('./success.cjs');
5
+ var error = require('./error.cjs');
6
+ var is = require('../right/is.cjs');
7
+
8
+ const kind = "kind-future-either";
9
+ class Future extends Promise {
10
+ constructor(value) {
11
+ super((resolve) => void resolve((value instanceof Promise
12
+ ? value
13
+ : Promise.resolve(value))
14
+ .then((value) => {
15
+ if (is.isRight(value)) {
16
+ return value;
17
+ }
18
+ else if (is$1.isLeft(value)) {
19
+ return value;
20
+ }
21
+ else {
22
+ return success.futureSuccess(value);
23
+ }
24
+ })
25
+ .catch((error$1) => error.futureError(error$1))));
26
+ }
27
+ [kind] = null;
28
+ // @ts-expect-error override signature error
29
+ then(theFunction) {
30
+ return new Future(super.then(theFunction));
31
+ }
32
+ static get [Symbol.species]() {
33
+ return Promise;
34
+ }
35
+ static instanceof(value) {
36
+ return typeof value === "object"
37
+ && value?.constructor?.name === "Future"
38
+ && kind in value;
39
+ }
40
+ static all(values) {
41
+ return new Future(Promise.all(values.map((value) => new Future(value))));
42
+ }
43
+ }
44
+ function future(value) {
45
+ return new Future(value);
46
+ }
47
+
48
+ exports.Future = Future;
49
+ exports.future = future;
@@ -0,0 +1,25 @@
1
+ import { type EitherLeft } from "../left";
2
+ import { type EitherRight } from "../right";
3
+ import { type EitherFutureSuccess } from "./success";
4
+ import { type EitherFutureError } from "./error";
5
+ import { type IsEqual } from "../../common/types/isEqual";
6
+ import { type MaybePromise } from "../../common/types/maybePromise";
7
+ import { type AnyValue } from "../../common";
8
+ type Either = EitherRight | EitherLeft;
9
+ type ComputeEitherFutureSuccessResult<GenericValue extends unknown> = IsEqual<never, Exclude<GenericValue, Either>> extends false ? EitherFutureSuccess<Exclude<GenericValue, Either>> : never;
10
+ type ComputeEitherFutureErrorResult<GenericValue extends unknown> = GenericValue extends Promise<unknown> ? EitherFutureError : never;
11
+ type ComputeFutureEitherResult<GenericValue extends unknown = unknown> = Extract<Awaited<GenericValue>, Either> | ComputeEitherFutureSuccessResult<Awaited<GenericValue>> | ComputeEitherFutureErrorResult<GenericValue>;
12
+ export type FutureEitherAllResult<GenericArray extends readonly unknown[] | []> = Future<{
13
+ -readonly [Prop in keyof GenericArray]: Awaited<Future<GenericArray[Prop]>>;
14
+ }>;
15
+ declare const kind = "kind-future-either";
16
+ export declare class Future<const GenericValue extends unknown = unknown> extends Promise<ComputeFutureEitherResult<GenericValue>> {
17
+ constructor(value: GenericValue);
18
+ [kind]: unknown;
19
+ then<const GenericOutput extends AnyValue>(theFunction: (result: Extract<ComputeFutureEitherResult<GenericValue>, any>) => MaybePromise<GenericOutput>): Future<GenericOutput>;
20
+ static get [Symbol.species](): PromiseConstructor;
21
+ static instanceof<GenericValue extends unknown>(value: GenericValue): value is Extract<GenericValue, Future<any>>;
22
+ static all<const GenericValue extends unknown, GenericArray extends readonly GenericValue[] | []>(values: GenericArray): FutureEitherAllResult<GenericArray>;
23
+ }
24
+ export declare function future<const GenericEither extends unknown>(value: GenericEither): Future<GenericEither>;
25
+ export {};
@@ -0,0 +1,46 @@
1
+ import { isLeft } from '../left/is.mjs';
2
+ import { futureSuccess } from './success.mjs';
3
+ import { futureError } from './error.mjs';
4
+ import { isRight } from '../right/is.mjs';
5
+
6
+ const kind = "kind-future-either";
7
+ class Future extends Promise {
8
+ constructor(value) {
9
+ super((resolve) => void resolve((value instanceof Promise
10
+ ? value
11
+ : Promise.resolve(value))
12
+ .then((value) => {
13
+ if (isRight(value)) {
14
+ return value;
15
+ }
16
+ else if (isLeft(value)) {
17
+ return value;
18
+ }
19
+ else {
20
+ return futureSuccess(value);
21
+ }
22
+ })
23
+ .catch((error) => futureError(error))));
24
+ }
25
+ [kind] = null;
26
+ // @ts-expect-error override signature error
27
+ then(theFunction) {
28
+ return new Future(super.then(theFunction));
29
+ }
30
+ static get [Symbol.species]() {
31
+ return Promise;
32
+ }
33
+ static instanceof(value) {
34
+ return typeof value === "object"
35
+ && value?.constructor?.name === "Future"
36
+ && kind in value;
37
+ }
38
+ static all(values) {
39
+ return new Future(Promise.all(values.map((value) => new Future(value))));
40
+ }
41
+ }
42
+ function future(value) {
43
+ return new Future(value);
44
+ }
45
+
46
+ export { Future, future };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var kind = require('../../common/kind.cjs');
4
+ var create = require('../left/create.cjs');
5
+ var base = require('./base.cjs');
6
+
7
+ const eitherFutureErrorKind = kind.createKind("either-future-error");
8
+ function futureError(value) {
9
+ return base.eitherFutureKind.addTo(eitherFutureErrorKind.addTo(create.left("future", value)));
10
+ }
11
+
12
+ exports.eitherFutureErrorKind = eitherFutureErrorKind;
13
+ exports.futureError = futureError;
@@ -0,0 +1,6 @@
1
+ import { type Kind } from "../../common/kind";
2
+ import { type EitherLeft } from "../left";
3
+ import { eitherFutureKind } from "./base";
4
+ export declare const eitherFutureErrorKind: import("../../common/kind").KindHandler<import("../../common/kind").KindDefinition<"either-future-error", unknown>>;
5
+ export type EitherFutureError = (EitherLeft<"future", unknown> & Kind<typeof eitherFutureKind.definition> & Kind<typeof eitherFutureErrorKind.definition>);
6
+ export declare function futureError(value: unknown): EitherFutureError;
@@ -0,0 +1,10 @@
1
+ import { createKind } from '../../common/kind.mjs';
2
+ import { left } from '../left/create.mjs';
3
+ import { eitherFutureKind } from './base.mjs';
4
+
5
+ const eitherFutureErrorKind = createKind("either-future-error");
6
+ function futureError(value) {
7
+ return eitherFutureKind.addTo(eitherFutureErrorKind.addTo(left("future", value)));
8
+ }
9
+
10
+ export { eitherFutureErrorKind, futureError };
@@ -0,0 +1,4 @@
1
+ export * from "./create";
2
+ export * from "./error";
3
+ export * from "./success";
4
+ export * from "./base";
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ var kind = require('../../common/kind.cjs');
4
+ var base = require('./base.cjs');
5
+ var create = require('../right/create.cjs');
6
+
7
+ const eitherFutureSuccessKind = kind.createKind("either-future-success");
8
+ function futureSuccess(value) {
9
+ return base.eitherFutureKind.addTo(eitherFutureSuccessKind.addTo(create.right("future", value)));
10
+ }
11
+
12
+ exports.eitherFutureSuccessKind = eitherFutureSuccessKind;
13
+ exports.futureSuccess = futureSuccess;
@@ -0,0 +1,6 @@
1
+ import { type EitherRight } from "../right";
2
+ import { type Kind } from "../../common/kind";
3
+ import { eitherFutureKind } from "./base";
4
+ export declare const eitherFutureSuccessKind: import("../../common/kind").KindHandler<import("../../common/kind").KindDefinition<"either-future-success", unknown>>;
5
+ export type EitherFutureSuccess<GenericValue extends unknown = unknown> = (EitherRight<"future", GenericValue> & Kind<typeof eitherFutureKind.definition> & Kind<typeof eitherFutureSuccessKind.definition>);
6
+ export declare function futureSuccess<const GenericValue extends unknown>(value: GenericValue): EitherFutureSuccess<GenericValue>;
@@ -0,0 +1,10 @@
1
+ import { createKind } from '../../common/kind.mjs';
2
+ import { eitherFutureKind } from './base.mjs';
3
+ import { right } from '../right/create.mjs';
4
+
5
+ const eitherFutureSuccessKind = createKind("either-future-success");
6
+ function futureSuccess(value) {
7
+ return eitherFutureKind.addTo(eitherFutureSuccessKind.addTo(right("future", value)));
8
+ }
9
+
10
+ export { eitherFutureSuccessKind, futureSuccess };
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ var base = require('./base.cjs');
4
+
5
+ function hasInformation(input, information) {
6
+ return base.eitherInformationKind.has(input)
7
+ && base.eitherInformationKind.getValue(input) === information;
8
+ }
9
+
10
+ exports.hasInformation = hasInformation;
@@ -0,0 +1,7 @@
1
+ import { type Kind } from "../common";
2
+ import { type EitherLeft } from "./left";
3
+ import { type EitherRight } from "./right";
4
+ import { eitherInformationKind } from "./base";
5
+ type Either = EitherRight | EitherLeft;
6
+ export declare function hasInformation<const GenericInput extends unknown, GenericInformation extends (GenericInput extends Either ? ReturnType<typeof eitherInformationKind.getValue<GenericInput>> : never)>(input: GenericInput, information: GenericInformation): input is Extract<GenericInput, Kind<typeof eitherInformationKind.definition, GenericInformation>>;
7
+ export {};
@@ -0,0 +1,8 @@
1
+ import { eitherInformationKind } from './base.mjs';
2
+
3
+ function hasInformation(input, information) {
4
+ return eitherInformationKind.has(input)
5
+ && eitherInformationKind.getValue(input) === information;
6
+ }
7
+
8
+ export { hasInformation };
@@ -0,0 +1,108 @@
1
+ 'use strict';
2
+
3
+ var create = require('./bool/create.cjs');
4
+ var falsy = require('./bool/falsy.cjs');
5
+ var truthy = require('./bool/truthy.cjs');
6
+ var base = require('./bool/base.cjs');
7
+ var create$1 = require('./future/create.cjs');
8
+ var error = require('./future/error.cjs');
9
+ var success = require('./future/success.cjs');
10
+ var base$1 = require('./future/base.cjs');
11
+ var create$2 = require('./left/create.cjs');
12
+ var error$1 = require('./left/error.cjs');
13
+ var fail = require('./left/fail.cjs');
14
+ var is = require('./left/is.cjs');
15
+ var when = require('./left/when.cjs');
16
+ var create$3 = require('./nullable/create.cjs');
17
+ var empty = require('./nullable/empty.cjs');
18
+ var filled = require('./nullable/filled.cjs');
19
+ var base$2 = require('./nullable/base.cjs');
20
+ var create$4 = require('./nullish/create.cjs');
21
+ var empty$1 = require('./nullish/empty.cjs');
22
+ var filled$1 = require('./nullish/filled.cjs');
23
+ var base$3 = require('./nullish/base.cjs');
24
+ var create$5 = require('./optional/create.cjs');
25
+ var empty$2 = require('./optional/empty.cjs');
26
+ var filled$2 = require('./optional/filled.cjs');
27
+ var base$4 = require('./optional/base.cjs');
28
+ var asyncPipe = require('./right/asyncPipe.cjs');
29
+ var create$6 = require('./right/create.cjs');
30
+ var is$1 = require('./right/is.cjs');
31
+ var ok = require('./right/ok.cjs');
32
+ var pipe = require('./right/pipe.cjs');
33
+ var success$1 = require('./right/success.cjs');
34
+ var when$1 = require('./right/when.cjs');
35
+ var hasInformation = require('./hasInformation.cjs');
36
+ var whenHasInformation = require('./whenHasInformation.cjs');
37
+ var base$5 = require('./base.cjs');
38
+
39
+
40
+
41
+ exports.bool = create.bool;
42
+ exports.boolFalsy = falsy.boolFalsy;
43
+ exports.eitherBoolFalsyKind = falsy.eitherBoolFalsyKind;
44
+ exports.isBoolFalsy = falsy.isBoolFalsy;
45
+ exports.whenIsBoolFalsy = falsy.whenIsBoolFalsy;
46
+ exports.boolTruthy = truthy.boolTruthy;
47
+ exports.eitherBoolTruthyKind = truthy.eitherBoolTruthyKind;
48
+ exports.isBoolTruthy = truthy.isBoolTruthy;
49
+ exports.whenIsBoolTruthy = truthy.whenIsBoolTruthy;
50
+ exports.eitherBoolKind = base.eitherBoolKind;
51
+ exports.Future = create$1.Future;
52
+ exports.future = create$1.future;
53
+ exports.eitherFutureErrorKind = error.eitherFutureErrorKind;
54
+ exports.futureError = error.futureError;
55
+ exports.eitherFutureSuccessKind = success.eitherFutureSuccessKind;
56
+ exports.futureSuccess = success.futureSuccess;
57
+ exports.eitherFutureKind = base$1.eitherFutureKind;
58
+ exports.eitherLeftKind = create$2.eitherLeftKind;
59
+ exports.left = create$2.left;
60
+ exports.eitherErrorKind = error$1.eitherErrorKind;
61
+ exports.error = error$1.error;
62
+ exports.eitherFailKind = fail.eitherFailKind;
63
+ exports.fail = fail.fail;
64
+ exports.isLeft = is.isLeft;
65
+ exports.whenIsLeft = when.whenIsLeft;
66
+ exports.nullable = create$3.nullable;
67
+ exports.eitherNullableEmptyKind = empty.eitherNullableEmptyKind;
68
+ exports.isNullableEmpty = empty.isNullableEmpty;
69
+ exports.nullableEmpty = empty.nullableEmpty;
70
+ exports.whenIsNullableEmpty = empty.whenIsNullableEmpty;
71
+ exports.eitherNullableFilledKind = filled.eitherNullableFilledKind;
72
+ exports.isNullableFilled = filled.isNullableFilled;
73
+ exports.nullableFilled = filled.nullableFilled;
74
+ exports.whenIsNullableFilled = filled.whenIsNullableFilled;
75
+ exports.eitherNullableKind = base$2.eitherNullableKind;
76
+ exports.nullish = create$4.nullish;
77
+ exports.eitherNullishEmptyKind = empty$1.eitherNullishEmptyKind;
78
+ exports.isNullishEmpty = empty$1.isNullishEmpty;
79
+ exports.nullishEmpty = empty$1.nullishEmpty;
80
+ exports.whenIsNullishEmpty = empty$1.whenIsNullishEmpty;
81
+ exports.eitherNullishFilledKind = filled$1.eitherNullishFilledKind;
82
+ exports.isNullishFilled = filled$1.isNullishFilled;
83
+ exports.nullishFilled = filled$1.nullishFilled;
84
+ exports.whenIsNullishFilled = filled$1.whenIsNullishFilled;
85
+ exports.eitherNullishKind = base$3.eitherNullishKind;
86
+ exports.optional = create$5.optional;
87
+ exports.eitherOptionalEmptyKind = empty$2.eitherOptionalEmptyKind;
88
+ exports.isOptionalEmpty = empty$2.isOptionalEmpty;
89
+ exports.optionalEmpty = empty$2.optionalEmpty;
90
+ exports.whenIsOptionalEmpty = empty$2.whenIsOptionalEmpty;
91
+ exports.eitherOptionalFilledKind = filled$2.eitherOptionalFilledKind;
92
+ exports.isOptionalFilled = filled$2.isOptionalFilled;
93
+ exports.optionalFilled = filled$2.optionalFilled;
94
+ exports.whenIsOptionalFilled = filled$2.whenIsOptionalFilled;
95
+ exports.eitherOptionalKind = base$4.eitherOptionalKind;
96
+ exports.rightAsyncPipe = asyncPipe.rightAsyncPipe;
97
+ exports.eitherRightKind = create$6.eitherRightKind;
98
+ exports.right = create$6.right;
99
+ exports.isRight = is$1.isRight;
100
+ exports.eitherOkKind = ok.eitherOkKind;
101
+ exports.ok = ok.ok;
102
+ exports.rightPipe = pipe.rightPipe;
103
+ exports.eitherSuccessKind = success$1.eitherSuccessKind;
104
+ exports.success = success$1.success;
105
+ exports.whenIsRight = when$1.whenIsRight;
106
+ exports.hasInformation = hasInformation.hasInformation;
107
+ exports.whenHasInformation = whenHasInformation.whenHasInformation;
108
+ exports.eitherInformationKind = base$5.eitherInformationKind;
@@ -0,0 +1,10 @@
1
+ export * from "./bool";
2
+ export * from "./future";
3
+ export * from "./left";
4
+ export * from "./nullable";
5
+ export * from "./nullish";
6
+ export * from "./optional";
7
+ export * from "./right";
8
+ export * from "./hasInformation";
9
+ export * from "./whenHasInformation";
10
+ export * from "./base";