@fncts/base 0.0.3 → 0.0.6

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 (812) hide show
  1. package/_cjs/collection/Iterable/api/traverseConc.cjs +21 -15
  2. package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
  3. package/_cjs/collection/Iterable/api.cjs +23 -37
  4. package/_cjs/collection/Iterable/api.cjs.map +1 -1
  5. package/_cjs/collection/compat/Array/api.cjs +1 -1
  6. package/_cjs/collection/compat/Array/api.cjs.map +1 -1
  7. package/_cjs/collection/immutable/Conc/api.cjs +41 -53
  8. package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
  9. package/_cjs/collection/immutable/Conc/definition.cjs +49 -39
  10. package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
  11. package/_cjs/collection/immutable/Dictionary/definition.cjs +4 -2
  12. package/_cjs/collection/immutable/Dictionary/definition.cjs.map +1 -1
  13. package/_cjs/collection/immutable/HashMap/api.cjs +35 -108
  14. package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
  15. package/_cjs/collection/immutable/HashMap/definition.cjs +19 -15
  16. package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
  17. package/_cjs/collection/immutable/HashSet/api.cjs +10 -10
  18. package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
  19. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs +22 -0
  20. package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -0
  21. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs +20 -0
  22. package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -0
  23. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs +20 -0
  24. package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -0
  25. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs +33 -0
  26. package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -0
  27. package/_cjs/collection/immutable/ImmutableArray/api.cjs +252 -409
  28. package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
  29. package/_cjs/collection/immutable/ImmutableArray/definition.cjs +12 -10
  30. package/_cjs/collection/immutable/ImmutableArray/definition.cjs.map +1 -1
  31. package/_cjs/collection/immutable/ImmutableArray/instances.cjs +153 -157
  32. package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
  33. package/_cjs/collection/immutable/ImmutableArray.cjs +52 -0
  34. package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
  35. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs +125 -184
  36. package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
  37. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs +2 -4
  38. package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
  39. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs +25 -2
  40. package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
  41. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs +5 -3
  42. package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
  43. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs +45 -81
  44. package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
  45. package/_cjs/collection/immutable/List/api.cjs +4 -7
  46. package/_cjs/collection/immutable/List/api.cjs.map +1 -1
  47. package/_cjs/collection/immutable/RoseTree/api.cjs +484 -0
  48. package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -0
  49. package/_cjs/collection/immutable/RoseTree/definition.cjs +58 -0
  50. package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -0
  51. package/_cjs/collection/immutable/RoseTree.cjs +32 -0
  52. package/_cjs/collection/immutable/RoseTree.cjs.map +1 -0
  53. package/_cjs/collection/immutable/SortedMap/api.cjs +65 -65
  54. package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
  55. package/_cjs/collection/immutable/Vector/api.cjs +70 -15
  56. package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
  57. package/_cjs/collection/immutable/Vector/definition.cjs +13 -11
  58. package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
  59. package/_cjs/collection/mutable/HashMap.cjs +5 -5
  60. package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
  61. package/_cjs/collection/mutable/HashSet.cjs +4 -4
  62. package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
  63. package/_cjs/control/Eval/api.cjs +6 -0
  64. package/_cjs/control/Eval/api.cjs.map +1 -1
  65. package/_cjs/control/Eval/definition.cjs +7 -0
  66. package/_cjs/control/Eval/definition.cjs.map +1 -1
  67. package/_cjs/control/Eval/instance.cjs +14 -25
  68. package/_cjs/control/Eval/instance.cjs.map +1 -1
  69. package/_cjs/control/Z/definition.cjs +9 -3
  70. package/_cjs/control/Z/definition.cjs.map +1 -1
  71. package/_cjs/control/Z/instances.cjs +6 -13
  72. package/_cjs/control/Z/instances.cjs.map +1 -1
  73. package/_cjs/data/Branded/definition.cjs +29 -0
  74. package/_cjs/data/Branded/definition.cjs.map +1 -0
  75. package/_cjs/data/Branded/derivations.cjs +58 -0
  76. package/_cjs/data/Branded/derivations.cjs.map +1 -0
  77. package/_cjs/data/Branded.cjs +32 -0
  78. package/_cjs/data/Branded.cjs.map +1 -0
  79. package/_cjs/data/CaseClass.cjs +4 -2
  80. package/_cjs/data/CaseClass.cjs.map +1 -1
  81. package/_cjs/data/Cause/api/fold.cjs +2 -0
  82. package/_cjs/data/Cause/api/fold.cjs.map +1 -1
  83. package/_cjs/data/Cause/api.cjs +23 -0
  84. package/_cjs/data/Cause/api.cjs.map +1 -1
  85. package/_cjs/data/Const/api.cjs +3 -7
  86. package/_cjs/data/Const/api.cjs.map +1 -1
  87. package/_cjs/data/Const/definition.cjs +19 -1
  88. package/_cjs/data/Const/definition.cjs.map +1 -1
  89. package/_cjs/data/Const/instances.cjs +9 -20
  90. package/_cjs/data/Const/instances.cjs.map +1 -1
  91. package/_cjs/data/DecodeError/definition.cjs +308 -0
  92. package/_cjs/data/DecodeError/definition.cjs.map +1 -0
  93. package/_cjs/data/DecodeError.cjs +19 -0
  94. package/_cjs/data/DecodeError.cjs.map +1 -0
  95. package/_cjs/data/Decoder/api.cjs +217 -0
  96. package/_cjs/data/Decoder/api.cjs.map +1 -0
  97. package/_cjs/data/Decoder/definition.cjs +41 -0
  98. package/_cjs/data/Decoder/definition.cjs.map +1 -0
  99. package/_cjs/data/Decoder.cjs +32 -0
  100. package/_cjs/data/Decoder.cjs.map +1 -0
  101. package/_cjs/data/Duration/api.cjs +22 -9
  102. package/_cjs/data/Duration/api.cjs.map +1 -1
  103. package/_cjs/data/Either/api/alignWith.cjs +2 -0
  104. package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
  105. package/_cjs/data/Either/api.cjs +105 -42
  106. package/_cjs/data/Either/api.cjs.map +1 -1
  107. package/_cjs/data/Either/definition.cjs +39 -10
  108. package/_cjs/data/Either/definition.cjs.map +1 -1
  109. package/_cjs/data/Either/destructors.cjs +2 -0
  110. package/_cjs/data/Either/destructors.cjs.map +1 -1
  111. package/_cjs/data/Either/instances.cjs +123 -40
  112. package/_cjs/data/Either/instances.cjs.map +1 -1
  113. package/_cjs/data/Environment/api.cjs +29 -8
  114. package/_cjs/data/Environment/api.cjs.map +1 -1
  115. package/_cjs/data/Identity/api.cjs +35 -6
  116. package/_cjs/data/Identity/api.cjs.map +1 -1
  117. package/_cjs/data/Identity/definition.cjs +10 -1
  118. package/_cjs/data/Identity/definition.cjs.map +1 -1
  119. package/_cjs/data/Identity/instances.cjs +11 -25
  120. package/_cjs/data/Identity/instances.cjs.map +1 -1
  121. package/_cjs/data/Interval.cjs +154 -0
  122. package/_cjs/data/Interval.cjs.map +1 -0
  123. package/_cjs/data/Maybe/api.cjs +30 -43
  124. package/_cjs/data/Maybe/api.cjs.map +1 -1
  125. package/_cjs/data/Maybe/definition.cjs +45 -18
  126. package/_cjs/data/Maybe/definition.cjs.map +1 -1
  127. package/_cjs/data/Maybe/destructors.cjs +1 -0
  128. package/_cjs/data/Maybe/destructors.cjs.map +1 -1
  129. package/_cjs/data/Maybe/instances.cjs +62 -42
  130. package/_cjs/data/Maybe/instances.cjs.map +1 -1
  131. package/_cjs/data/Newtype.cjs +5 -3
  132. package/_cjs/data/Newtype.cjs.map +1 -1
  133. package/_cjs/data/Patch/api.cjs +1 -1
  134. package/_cjs/data/Patch/api.cjs.map +1 -1
  135. package/_cjs/data/Refinement/api.cjs +0 -4
  136. package/_cjs/data/Refinement/api.cjs.map +1 -1
  137. package/_cjs/data/Struct/definition.cjs +4 -2
  138. package/_cjs/data/Struct/definition.cjs.map +1 -1
  139. package/_cjs/data/These/api.cjs +299 -0
  140. package/_cjs/data/These/api.cjs.map +1 -0
  141. package/_cjs/data/These/constructors.cjs +24 -4
  142. package/_cjs/data/These/constructors.cjs.map +1 -1
  143. package/_cjs/data/These/definition.cjs +16 -0
  144. package/_cjs/data/These/definition.cjs.map +1 -1
  145. package/_cjs/data/These/destructors.cjs +70 -0
  146. package/_cjs/data/These/destructors.cjs.map +1 -1
  147. package/_cjs/data/These/instances.cjs +54 -0
  148. package/_cjs/data/These/instances.cjs.map +1 -0
  149. package/_cjs/data/These.cjs +13 -0
  150. package/_cjs/data/These.cjs.map +1 -1
  151. package/_cjs/data/bigint/definition.cjs +6 -0
  152. package/_cjs/data/bigint/definition.cjs.map +1 -0
  153. package/_cjs/data/bigint/instances.cjs +24 -0
  154. package/_cjs/data/bigint/instances.cjs.map +1 -0
  155. package/_cjs/data/bigint.cjs +32 -0
  156. package/_cjs/data/bigint.cjs.map +1 -0
  157. package/_cjs/data/boolean/definition.cjs +6 -0
  158. package/_cjs/data/boolean/definition.cjs.map +1 -0
  159. package/_cjs/data/boolean/instances.cjs +24 -0
  160. package/_cjs/data/boolean/instances.cjs.map +1 -0
  161. package/_cjs/data/boolean.cjs +32 -0
  162. package/_cjs/data/boolean.cjs.map +1 -0
  163. package/_cjs/data/number/instances.cjs +18 -5
  164. package/_cjs/data/number/instances.cjs.map +1 -1
  165. package/_cjs/data/object/instances.cjs +24 -0
  166. package/_cjs/data/object/instances.cjs.map +1 -0
  167. package/_cjs/data/string/instances.cjs +24 -9
  168. package/_cjs/data/string/instances.cjs.map +1 -1
  169. package/_cjs/internal/Stack.cjs +4 -0
  170. package/_cjs/internal/Stack.cjs.map +1 -1
  171. package/_cjs/json/EitherJson.cjs +33 -0
  172. package/_cjs/json/EitherJson.cjs.map +1 -0
  173. package/_cjs/json/MaybeJson.cjs +31 -0
  174. package/_cjs/json/MaybeJson.cjs.map +1 -0
  175. package/_cjs/json/TheseJson.cjs +37 -0
  176. package/_cjs/json/TheseJson.cjs.map +1 -0
  177. package/_cjs/optics/Optional/definition.cjs +6 -4
  178. package/_cjs/optics/Optional/definition.cjs.map +1 -1
  179. package/_cjs/optics/Traversal/api/compose.cjs +1 -1
  180. package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
  181. package/_cjs/optics/Traversal/api/fromTraversable.cjs +4 -4
  182. package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
  183. package/_cjs/optics/Traversal/definition.cjs +17 -12
  184. package/_cjs/optics/Traversal/definition.cjs.map +1 -1
  185. package/_cjs/typeclass/Align.cjs +0 -20
  186. package/_cjs/typeclass/Align.cjs.map +1 -1
  187. package/_cjs/typeclass/Alt.cjs +5 -15
  188. package/_cjs/typeclass/Alt.cjs.map +1 -1
  189. package/_cjs/typeclass/Alternative.cjs +0 -23
  190. package/_cjs/typeclass/Alternative.cjs.map +1 -1
  191. package/_cjs/typeclass/Applicative.cjs +0 -22
  192. package/_cjs/typeclass/Applicative.cjs.map +1 -1
  193. package/_cjs/typeclass/ApplicativeExcept.cjs +40 -34
  194. package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
  195. package/_cjs/typeclass/Apply.cjs +93 -49
  196. package/_cjs/typeclass/Apply.cjs.map +1 -1
  197. package/_cjs/typeclass/Chain.cjs +40 -17
  198. package/_cjs/typeclass/Chain.cjs.map +1 -1
  199. package/_cjs/typeclass/Closure.cjs +1 -4
  200. package/_cjs/typeclass/Closure.cjs.map +1 -1
  201. package/_cjs/typeclass/Eq/definition.cjs +18 -0
  202. package/_cjs/typeclass/Eq/definition.cjs.map +1 -0
  203. package/_cjs/typeclass/Eq/derivations.cjs +59 -0
  204. package/_cjs/typeclass/Eq/derivations.cjs.map +1 -0
  205. package/_cjs/typeclass/Eq.cjs +11 -13
  206. package/_cjs/typeclass/Eq.cjs.map +1 -1
  207. package/_cjs/typeclass/Fail.cjs +6 -12
  208. package/_cjs/typeclass/Fail.cjs.map +1 -1
  209. package/_cjs/typeclass/Filterable.cjs +31 -18
  210. package/_cjs/typeclass/Filterable.cjs.map +1 -1
  211. package/_cjs/typeclass/FilterableWithIndex.cjs +0 -26
  212. package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
  213. package/_cjs/typeclass/Foldable.cjs +33 -19
  214. package/_cjs/typeclass/Foldable.cjs.map +1 -1
  215. package/_cjs/typeclass/FoldableWithIndex.cjs +33 -21
  216. package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
  217. package/_cjs/typeclass/Functor.cjs +19 -16
  218. package/_cjs/typeclass/Functor.cjs.map +1 -1
  219. package/_cjs/typeclass/FunctorWithIndex.cjs +0 -21
  220. package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
  221. package/_cjs/typeclass/Guard/api.cjs +40 -0
  222. package/_cjs/typeclass/Guard/api.cjs.map +1 -0
  223. package/_cjs/typeclass/Guard/definition.cjs +40 -0
  224. package/_cjs/typeclass/Guard/definition.cjs.map +1 -0
  225. package/_cjs/typeclass/Guard/derivations.cjs +85 -0
  226. package/_cjs/typeclass/Guard/derivations.cjs.map +1 -0
  227. package/_cjs/typeclass/Guard.cjs +32 -0
  228. package/_cjs/typeclass/Guard.cjs.map +1 -0
  229. package/_cjs/typeclass/HashEq.cjs +3 -3
  230. package/_cjs/typeclass/HashEq.cjs.map +1 -1
  231. package/_cjs/typeclass/Monad.cjs +0 -22
  232. package/_cjs/typeclass/Monad.cjs.map +1 -1
  233. package/_cjs/typeclass/MonadExcept.cjs +12 -19
  234. package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
  235. package/_cjs/typeclass/Monoid.cjs +56 -2
  236. package/_cjs/typeclass/Monoid.cjs.map +1 -1
  237. package/_cjs/typeclass/Nil.cjs +10 -0
  238. package/_cjs/typeclass/Nil.cjs.map +1 -1
  239. package/_cjs/typeclass/Ord/api/contramap.cjs +2 -4
  240. package/_cjs/typeclass/Ord/api/contramap.cjs.map +1 -1
  241. package/_cjs/typeclass/Ord/api/max.cjs +1 -1
  242. package/_cjs/typeclass/Ord/api/max.cjs.map +1 -1
  243. package/_cjs/typeclass/Ord/api/min.cjs +1 -1
  244. package/_cjs/typeclass/Ord/api/min.cjs.map +1 -1
  245. package/_cjs/typeclass/Ord/definition.cjs +2 -3
  246. package/_cjs/typeclass/Ord/definition.cjs.map +1 -1
  247. package/_cjs/typeclass/Ord/instances.cjs +7 -7
  248. package/_cjs/typeclass/Ord/instances.cjs.map +1 -1
  249. package/_cjs/typeclass/Pointed.cjs +6 -11
  250. package/_cjs/typeclass/Pointed.cjs.map +1 -1
  251. package/_cjs/typeclass/Semialign.cjs +77 -94
  252. package/_cjs/typeclass/Semialign.cjs.map +1 -1
  253. package/_cjs/typeclass/Semigroup/api.cjs +2 -2
  254. package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
  255. package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
  256. package/_cjs/typeclass/Semigroup/derivations.cjs +63 -0
  257. package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -0
  258. package/_cjs/typeclass/Semimonoidal.cjs +9 -13
  259. package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
  260. package/_cjs/typeclass/Showable/show.cjs +11 -11
  261. package/_cjs/typeclass/Showable/show.cjs.map +1 -1
  262. package/_cjs/typeclass/Traversable.cjs +26 -34
  263. package/_cjs/typeclass/Traversable.cjs.map +1 -1
  264. package/_cjs/typeclass/TraversableWithIndex.cjs +7 -38
  265. package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
  266. package/_cjs/typeclass/Witherable.cjs +41 -42
  267. package/_cjs/typeclass/Witherable.cjs.map +1 -1
  268. package/_cjs/typeclass/WitherableWithIndex.cjs +41 -50
  269. package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
  270. package/_cjs/typeclass.cjs +13 -0
  271. package/_cjs/typeclass.cjs.map +1 -1
  272. package/_cjs/util/predicates.cjs +5 -0
  273. package/_cjs/util/predicates.cjs.map +1 -1
  274. package/_mjs/collection/Iterable/api/traverseConc.mjs +20 -15
  275. package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
  276. package/_mjs/collection/Iterable/api.mjs +21 -31
  277. package/_mjs/collection/Iterable/api.mjs.map +1 -1
  278. package/_mjs/collection/compat/Array/api.mjs +1 -1
  279. package/_mjs/collection/compat/Array/api.mjs.map +1 -1
  280. package/_mjs/collection/immutable/Conc/api.mjs +35 -36
  281. package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
  282. package/_mjs/collection/immutable/Conc/definition.mjs +48 -39
  283. package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
  284. package/_mjs/collection/immutable/Dictionary/definition.mjs +3 -2
  285. package/_mjs/collection/immutable/Dictionary/definition.mjs.map +1 -1
  286. package/_mjs/collection/immutable/HashMap/api.mjs +26 -66
  287. package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
  288. package/_mjs/collection/immutable/HashMap/definition.mjs +18 -15
  289. package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
  290. package/_mjs/collection/immutable/HashSet/api.mjs +5 -5
  291. package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
  292. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs +10 -0
  293. package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -0
  294. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +9 -0
  295. package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -0
  296. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +9 -0
  297. package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -0
  298. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +21 -0
  299. package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -0
  300. package/_mjs/collection/immutable/ImmutableArray/api.mjs +229 -326
  301. package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
  302. package/_mjs/collection/immutable/ImmutableArray/definition.mjs +11 -10
  303. package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +1 -1
  304. package/_mjs/collection/immutable/ImmutableArray/instances.mjs +151 -138
  305. package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
  306. package/_mjs/collection/immutable/ImmutableArray.mjs +7 -1
  307. package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
  308. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +113 -145
  309. package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
  310. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs +7 -7
  311. package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
  312. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs +20 -2
  313. package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
  314. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +4 -3
  315. package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
  316. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs +46 -67
  317. package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
  318. package/_mjs/collection/immutable/List/api.mjs +4 -5
  319. package/_mjs/collection/immutable/List/api.mjs.map +1 -1
  320. package/_mjs/collection/immutable/RoseTree/api.mjs +447 -0
  321. package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -0
  322. package/_mjs/collection/immutable/RoseTree/definition.mjs +35 -0
  323. package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -0
  324. package/_mjs/collection/immutable/RoseTree.mjs +4 -0
  325. package/_mjs/collection/immutable/RoseTree.mjs.map +1 -0
  326. package/_mjs/collection/immutable/SortedMap/api.mjs +65 -65
  327. package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
  328. package/_mjs/collection/immutable/Vector/api.mjs +59 -15
  329. package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
  330. package/_mjs/collection/immutable/Vector/definition.mjs +12 -11
  331. package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
  332. package/_mjs/collection/mutable/HashMap.mjs +5 -5
  333. package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
  334. package/_mjs/collection/mutable/HashSet.mjs +4 -4
  335. package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
  336. package/_mjs/control/Eval/api.mjs +5 -2
  337. package/_mjs/control/Eval/api.mjs.map +1 -1
  338. package/_mjs/control/Eval/definition.mjs +1 -0
  339. package/_mjs/control/Eval/definition.mjs.map +1 -1
  340. package/_mjs/control/Eval/instance.mjs +15 -18
  341. package/_mjs/control/Eval/instance.mjs.map +1 -1
  342. package/_mjs/control/Z/definition.mjs +2 -0
  343. package/_mjs/control/Z/definition.mjs.map +1 -1
  344. package/_mjs/control/Z/instances.mjs +7 -8
  345. package/_mjs/control/Z/instances.mjs.map +1 -1
  346. package/_mjs/data/Branded/definition.mjs +18 -0
  347. package/_mjs/data/Branded/definition.mjs.map +1 -0
  348. package/_mjs/data/Branded/derivations.mjs +39 -0
  349. package/_mjs/data/Branded/derivations.mjs.map +1 -0
  350. package/_mjs/data/Branded.mjs +4 -0
  351. package/_mjs/data/Branded.mjs.map +1 -0
  352. package/_mjs/data/CaseClass.mjs +3 -2
  353. package/_mjs/data/CaseClass.mjs.map +1 -1
  354. package/_mjs/data/Cause/api/fold.mjs +2 -0
  355. package/_mjs/data/Cause/api/fold.mjs.map +1 -1
  356. package/_mjs/data/Cause/api.mjs +20 -0
  357. package/_mjs/data/Cause/api.mjs.map +1 -1
  358. package/_mjs/data/Const/api.mjs +3 -3
  359. package/_mjs/data/Const/api.mjs.map +1 -1
  360. package/_mjs/data/Const/definition.mjs +13 -1
  361. package/_mjs/data/Const/definition.mjs.map +1 -1
  362. package/_mjs/data/Const/instances.mjs +7 -15
  363. package/_mjs/data/Const/instances.mjs.map +1 -1
  364. package/_mjs/data/DecodeError/definition.mjs +226 -0
  365. package/_mjs/data/DecodeError/definition.mjs.map +1 -0
  366. package/_mjs/data/DecodeError.mjs +3 -0
  367. package/_mjs/data/DecodeError.mjs.map +1 -0
  368. package/_mjs/data/Decoder/api.mjs +179 -0
  369. package/_mjs/data/Decoder/api.mjs.map +1 -0
  370. package/_mjs/data/Decoder/definition.mjs +24 -0
  371. package/_mjs/data/Decoder/definition.mjs.map +1 -0
  372. package/_mjs/data/Decoder.mjs +4 -0
  373. package/_mjs/data/Decoder.mjs.map +1 -0
  374. package/_mjs/data/Duration/api.mjs +17 -8
  375. package/_mjs/data/Duration/api.mjs.map +1 -1
  376. package/_mjs/data/Either/api/alignWith.mjs +2 -0
  377. package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
  378. package/_mjs/data/Either/api.mjs +91 -21
  379. package/_mjs/data/Either/api.mjs.map +1 -1
  380. package/_mjs/data/Either/definition.mjs +25 -5
  381. package/_mjs/data/Either/definition.mjs.map +1 -1
  382. package/_mjs/data/Either/destructors.mjs +2 -0
  383. package/_mjs/data/Either/destructors.mjs.map +1 -1
  384. package/_mjs/data/Either/instances.mjs +109 -39
  385. package/_mjs/data/Either/instances.mjs.map +1 -1
  386. package/_mjs/data/Environment/api.mjs +23 -7
  387. package/_mjs/data/Environment/api.mjs.map +1 -1
  388. package/_mjs/data/Identity/api.mjs +24 -5
  389. package/_mjs/data/Identity/api.mjs.map +1 -1
  390. package/_mjs/data/Identity/definition.mjs +3 -1
  391. package/_mjs/data/Identity/definition.mjs.map +1 -1
  392. package/_mjs/data/Identity/instances.mjs +12 -18
  393. package/_mjs/data/Identity/instances.mjs.map +1 -1
  394. package/_mjs/data/Interval.mjs +114 -0
  395. package/_mjs/data/Interval.mjs.map +1 -0
  396. package/_mjs/data/Maybe/api.mjs +30 -35
  397. package/_mjs/data/Maybe/api.mjs.map +1 -1
  398. package/_mjs/data/Maybe/definition.mjs +37 -14
  399. package/_mjs/data/Maybe/definition.mjs.map +1 -1
  400. package/_mjs/data/Maybe/destructors.mjs +1 -0
  401. package/_mjs/data/Maybe/destructors.mjs.map +1 -1
  402. package/_mjs/data/Maybe/instances.mjs +56 -39
  403. package/_mjs/data/Maybe/instances.mjs.map +1 -1
  404. package/_mjs/data/Newtype.mjs +4 -3
  405. package/_mjs/data/Newtype.mjs.map +1 -1
  406. package/_mjs/data/Patch/api.mjs +1 -1
  407. package/_mjs/data/Patch/api.mjs.map +1 -1
  408. package/_mjs/data/Refinement/api.mjs +0 -4
  409. package/_mjs/data/Refinement/api.mjs.map +1 -1
  410. package/_mjs/data/Struct/definition.mjs +3 -2
  411. package/_mjs/data/Struct/definition.mjs.map +1 -1
  412. package/_mjs/data/These/api.mjs +262 -0
  413. package/_mjs/data/These/api.mjs.map +1 -0
  414. package/_mjs/data/These/constructors.mjs +14 -2
  415. package/_mjs/data/These/constructors.mjs.map +1 -1
  416. package/_mjs/data/These/definition.mjs +8 -0
  417. package/_mjs/data/These/definition.mjs.map +1 -1
  418. package/_mjs/data/These/destructors.mjs +53 -0
  419. package/_mjs/data/These/destructors.mjs.map +1 -1
  420. package/_mjs/data/These/instances.mjs +36 -0
  421. package/_mjs/data/These/instances.mjs.map +1 -0
  422. package/_mjs/data/These.mjs +1 -0
  423. package/_mjs/data/These.mjs.map +1 -1
  424. package/_mjs/data/bigint/definition.mjs +2 -0
  425. package/_mjs/data/bigint/definition.mjs.map +1 -0
  426. package/_mjs/data/bigint/instances.mjs +10 -0
  427. package/_mjs/data/bigint/instances.mjs.map +1 -0
  428. package/_mjs/data/bigint.mjs +4 -0
  429. package/_mjs/data/bigint.mjs.map +1 -0
  430. package/_mjs/data/boolean/definition.mjs +2 -0
  431. package/_mjs/data/boolean/definition.mjs.map +1 -0
  432. package/_mjs/data/boolean/instances.mjs +10 -0
  433. package/_mjs/data/boolean/instances.mjs.map +1 -0
  434. package/_mjs/data/boolean.mjs +4 -0
  435. package/_mjs/data/boolean.mjs.map +1 -0
  436. package/_mjs/data/number/instances.mjs +14 -4
  437. package/_mjs/data/number/instances.mjs.map +1 -1
  438. package/_mjs/data/object/instances.mjs +10 -0
  439. package/_mjs/data/object/instances.mjs.map +1 -0
  440. package/_mjs/data/string/instances.mjs +20 -8
  441. package/_mjs/data/string/instances.mjs.map +1 -1
  442. package/_mjs/internal/Stack.mjs +4 -0
  443. package/_mjs/internal/Stack.mjs.map +1 -1
  444. package/_mjs/json/EitherJson.mjs +18 -0
  445. package/_mjs/json/EitherJson.mjs.map +1 -0
  446. package/_mjs/json/MaybeJson.mjs +16 -0
  447. package/_mjs/json/MaybeJson.mjs.map +1 -0
  448. package/_mjs/json/TheseJson.mjs +22 -0
  449. package/_mjs/json/TheseJson.mjs.map +1 -0
  450. package/_mjs/optics/Optional/definition.mjs +5 -4
  451. package/_mjs/optics/Optional/definition.mjs.map +1 -1
  452. package/_mjs/optics/Traversal/api/compose.mjs +1 -1
  453. package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
  454. package/_mjs/optics/Traversal/api/fromTraversable.mjs +5 -4
  455. package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
  456. package/_mjs/optics/Traversal/definition.mjs +14 -12
  457. package/_mjs/optics/Traversal/definition.mjs.map +1 -1
  458. package/_mjs/typeclass/Align.mjs +0 -11
  459. package/_mjs/typeclass/Align.mjs.map +1 -1
  460. package/_mjs/typeclass/Alt.mjs +4 -7
  461. package/_mjs/typeclass/Alt.mjs.map +1 -1
  462. package/_mjs/typeclass/Alternative.mjs +0 -13
  463. package/_mjs/typeclass/Alternative.mjs.map +1 -1
  464. package/_mjs/typeclass/Applicative.mjs +0 -12
  465. package/_mjs/typeclass/Applicative.mjs.map +1 -1
  466. package/_mjs/typeclass/ApplicativeExcept.mjs +32 -24
  467. package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
  468. package/_mjs/typeclass/Apply.mjs +85 -42
  469. package/_mjs/typeclass/Apply.mjs.map +1 -1
  470. package/_mjs/typeclass/Chain.mjs +33 -12
  471. package/_mjs/typeclass/Chain.mjs.map +1 -1
  472. package/_mjs/typeclass/Closure.mjs +1 -4
  473. package/_mjs/typeclass/Closure.mjs.map +1 -1
  474. package/_mjs/typeclass/Eq/definition.mjs +9 -0
  475. package/_mjs/typeclass/Eq/definition.mjs.map +1 -0
  476. package/_mjs/typeclass/Eq/derivations.mjs +46 -0
  477. package/_mjs/typeclass/Eq/derivations.mjs.map +1 -0
  478. package/_mjs/typeclass/Eq.mjs +1 -11
  479. package/_mjs/typeclass/Eq.mjs.map +1 -1
  480. package/_mjs/typeclass/Fail.mjs +5 -7
  481. package/_mjs/typeclass/Fail.mjs.map +1 -1
  482. package/_mjs/typeclass/Filterable.mjs +27 -13
  483. package/_mjs/typeclass/Filterable.mjs.map +1 -1
  484. package/_mjs/typeclass/FilterableWithIndex.mjs +0 -16
  485. package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
  486. package/_mjs/typeclass/Foldable.mjs +29 -12
  487. package/_mjs/typeclass/Foldable.mjs.map +1 -1
  488. package/_mjs/typeclass/FoldableWithIndex.mjs +29 -13
  489. package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
  490. package/_mjs/typeclass/Functor.mjs +16 -9
  491. package/_mjs/typeclass/Functor.mjs.map +1 -1
  492. package/_mjs/typeclass/FunctorWithIndex.mjs +0 -12
  493. package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
  494. package/_mjs/typeclass/Guard/api.mjs +23 -0
  495. package/_mjs/typeclass/Guard/api.mjs.map +1 -0
  496. package/_mjs/typeclass/Guard/definition.mjs +23 -0
  497. package/_mjs/typeclass/Guard/definition.mjs.map +1 -0
  498. package/_mjs/typeclass/Guard/derivations.mjs +67 -0
  499. package/_mjs/typeclass/Guard/derivations.mjs.map +1 -0
  500. package/_mjs/typeclass/Guard.mjs +4 -0
  501. package/_mjs/typeclass/Guard.mjs.map +1 -0
  502. package/_mjs/typeclass/HashEq.mjs +3 -3
  503. package/_mjs/typeclass/HashEq.mjs.map +1 -1
  504. package/_mjs/typeclass/Monad.mjs +0 -12
  505. package/_mjs/typeclass/Monad.mjs.map +1 -1
  506. package/_mjs/typeclass/MonadExcept.mjs +9 -13
  507. package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
  508. package/_mjs/typeclass/Monoid.mjs +50 -1
  509. package/_mjs/typeclass/Monoid.mjs.map +1 -1
  510. package/_mjs/typeclass/Nil.mjs +8 -1
  511. package/_mjs/typeclass/Nil.mjs.map +1 -1
  512. package/_mjs/typeclass/Ord/api/contramap.mjs +2 -4
  513. package/_mjs/typeclass/Ord/api/contramap.mjs.map +1 -1
  514. package/_mjs/typeclass/Ord/api/max.mjs +1 -1
  515. package/_mjs/typeclass/Ord/api/max.mjs.map +1 -1
  516. package/_mjs/typeclass/Ord/api/min.mjs +1 -1
  517. package/_mjs/typeclass/Ord/api/min.mjs.map +1 -1
  518. package/_mjs/typeclass/Ord/definition.mjs +2 -3
  519. package/_mjs/typeclass/Ord/definition.mjs.map +1 -1
  520. package/_mjs/typeclass/Ord/instances.mjs +7 -7
  521. package/_mjs/typeclass/Ord/instances.mjs.map +1 -1
  522. package/_mjs/typeclass/Pointed.mjs +5 -4
  523. package/_mjs/typeclass/Pointed.mjs.map +1 -1
  524. package/_mjs/typeclass/Semialign.mjs +67 -74
  525. package/_mjs/typeclass/Semialign.mjs.map +1 -1
  526. package/_mjs/typeclass/Semigroup/api.mjs +2 -2
  527. package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
  528. package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
  529. package/_mjs/typeclass/Semigroup/derivations.mjs +50 -0
  530. package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -0
  531. package/_mjs/typeclass/Semigroup.mjs +1 -1
  532. package/_mjs/typeclass/Semimonoidal.mjs +8 -6
  533. package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
  534. package/_mjs/typeclass/Showable/show.mjs +11 -11
  535. package/_mjs/typeclass/Showable/show.mjs.map +1 -1
  536. package/_mjs/typeclass/Traversable.mjs +25 -24
  537. package/_mjs/typeclass/Traversable.mjs.map +1 -1
  538. package/_mjs/typeclass/TraversableWithIndex.mjs +6 -24
  539. package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
  540. package/_mjs/typeclass/Witherable.mjs +39 -32
  541. package/_mjs/typeclass/Witherable.mjs.map +1 -1
  542. package/_mjs/typeclass/WitherableWithIndex.mjs +39 -37
  543. package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
  544. package/_mjs/typeclass.mjs +1 -0
  545. package/_mjs/typeclass.mjs.map +1 -1
  546. package/_mjs/util/predicates.mjs +3 -0
  547. package/_mjs/util/predicates.mjs.map +1 -1
  548. package/_src/collection/Iterable/api/traverseConc.ts +21 -29
  549. package/_src/collection/Iterable/api.ts +20 -34
  550. package/_src/collection/compat/Array/api.ts +1 -1
  551. package/_src/collection/immutable/Conc/api.ts +26 -46
  552. package/_src/collection/immutable/Conc/definition.ts +19 -8
  553. package/_src/collection/immutable/Dictionary/definition.ts +1 -1
  554. package/_src/collection/immutable/HashMap/api.ts +24 -81
  555. package/_src/collection/immutable/HashMap/definition.ts +7 -9
  556. package/_src/collection/immutable/HashMap/internal.ts +1 -1
  557. package/_src/collection/immutable/HashSet/api.ts +4 -4
  558. package/_src/collection/immutable/ImmutableArray/api/chunksOf.ts +6 -0
  559. package/_src/collection/immutable/ImmutableArray/api/slice.ts +6 -0
  560. package/_src/collection/immutable/ImmutableArray/api/splitAt.ts +6 -0
  561. package/_src/collection/immutable/ImmutableArray/api/splitWhere.ts +18 -0
  562. package/_src/collection/immutable/ImmutableArray/api.ts +181 -267
  563. package/_src/collection/immutable/ImmutableArray/definition.ts +6 -8
  564. package/_src/collection/immutable/ImmutableArray/instances.ts +156 -134
  565. package/_src/collection/immutable/ImmutableArray.ts +7 -0
  566. package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +87 -157
  567. package/_src/collection/immutable/ImmutableNonEmptyArray/constructors.ts +2 -0
  568. package/_src/collection/immutable/ImmutableNonEmptyArray/definition.ts +18 -6
  569. package/_src/collection/immutable/ImmutableNonEmptyArray/instances.ts +39 -49
  570. package/_src/collection/immutable/List/api.ts +2 -6
  571. package/_src/collection/immutable/RoseTree/api.ts +272 -0
  572. package/_src/collection/immutable/RoseTree/definition.ts +29 -0
  573. package/_src/collection/immutable/RoseTree.ts +4 -0
  574. package/_src/collection/immutable/SortedMap/api.ts +56 -53
  575. package/_src/collection/immutable/Vector/api.ts +57 -17
  576. package/_src/collection/immutable/Vector/definition.ts +10 -0
  577. package/_src/collection/mutable/HashMap.ts +5 -5
  578. package/_src/collection/mutable/HashSet.ts +4 -4
  579. package/_src/control/Eval/api.ts +5 -1
  580. package/_src/control/Eval/definition.ts +5 -8
  581. package/_src/control/Eval/instance.ts +16 -15
  582. package/_src/control/Z/definition.ts +26 -19
  583. package/_src/control/Z/instances.ts +9 -8
  584. package/_src/data/Branded/definition.ts +47 -0
  585. package/_src/data/Branded/derivations.ts +57 -0
  586. package/_src/data/Branded.ts +4 -0
  587. package/_src/data/CaseClass.ts +2 -2
  588. package/_src/data/Cause/api/fold.ts +1 -0
  589. package/_src/data/Cause/api.ts +18 -0
  590. package/_src/data/Const/api.ts +3 -3
  591. package/_src/data/Const/definition.ts +22 -5
  592. package/_src/data/Const/instances.ts +12 -21
  593. package/_src/data/DecodeError/definition.ts +227 -0
  594. package/_src/data/DecodeError.ts +3 -0
  595. package/_src/data/Decoder/api.ts +198 -0
  596. package/_src/data/Decoder/definition.ts +25 -0
  597. package/_src/data/Decoder.ts +4 -0
  598. package/_src/data/Duration/api.ts +21 -14
  599. package/_src/data/Either/api/alignWith.ts +2 -0
  600. package/_src/data/Either/api.ts +85 -30
  601. package/_src/data/Either/definition.ts +41 -19
  602. package/_src/data/Either/destructors.ts +1 -0
  603. package/_src/data/Either/instances.ts +102 -51
  604. package/_src/data/Environment/api.ts +19 -4
  605. package/_src/data/Identity/api.ts +19 -4
  606. package/_src/data/Identity/definition.ts +7 -3
  607. package/_src/data/Identity/instances.ts +15 -8
  608. package/_src/data/Interval.ts +103 -0
  609. package/_src/data/Maybe/api.ts +21 -31
  610. package/_src/data/Maybe/definition.ts +31 -19
  611. package/_src/data/Maybe/destructors.ts +1 -0
  612. package/_src/data/Maybe/instances.ts +61 -34
  613. package/_src/data/Newtype.ts +11 -32
  614. package/_src/data/Patch/api.ts +1 -1
  615. package/_src/data/Refinement/api.ts +4 -2
  616. package/_src/data/Struct/definition.ts +1 -1
  617. package/_src/data/These/api.ts +184 -0
  618. package/_src/data/These/constructors.ts +10 -0
  619. package/_src/data/These/definition.ts +7 -0
  620. package/_src/data/These/destructors.ts +45 -0
  621. package/_src/data/These/instances.ts +43 -0
  622. package/_src/data/These.ts +1 -0
  623. package/_src/data/bigint/definition.ts +13 -0
  624. package/_src/data/bigint/instances.ts +8 -0
  625. package/_src/data/bigint.ts +4 -0
  626. package/_src/data/boolean/definition.ts +13 -0
  627. package/_src/data/boolean/instances.ts +8 -0
  628. package/_src/data/boolean.ts +4 -0
  629. package/_src/data/number/instances.ts +13 -3
  630. package/_src/data/object/instances.ts +7 -0
  631. package/_src/data/string/instances.ts +17 -5
  632. package/_src/internal/Stack.ts +4 -0
  633. package/_src/json/EitherJson.ts +28 -0
  634. package/_src/json/MaybeJson.ts +27 -0
  635. package/_src/json/TheseJson.ts +31 -0
  636. package/_src/optics/Optional/definition.ts +2 -2
  637. package/_src/optics/Traversal/api/compose.ts +1 -1
  638. package/_src/optics/Traversal/api/fromTraversable.ts +15 -41
  639. package/_src/optics/Traversal/definition.ts +21 -23
  640. package/_src/typeclass/Align.ts +4 -18
  641. package/_src/typeclass/Alt.ts +59 -90
  642. package/_src/typeclass/Alternative.ts +4 -20
  643. package/_src/typeclass/Applicative.ts +3 -23
  644. package/_src/typeclass/ApplicativeExcept.ts +94 -193
  645. package/_src/typeclass/Apply.ts +319 -509
  646. package/_src/typeclass/Chain.ts +127 -199
  647. package/_src/typeclass/Closure.ts +4 -20
  648. package/_src/typeclass/Eq/definition.ts +20 -0
  649. package/_src/typeclass/Eq/derivations.ts +61 -0
  650. package/_src/typeclass/Eq.ts +2 -36
  651. package/_src/typeclass/Fail.ts +28 -27
  652. package/_src/typeclass/Filterable.ts +70 -117
  653. package/_src/typeclass/FilterableWithIndex.ts +27 -131
  654. package/_src/typeclass/Foldable.ts +35 -52
  655. package/_src/typeclass/FoldableWithIndex.ts +40 -75
  656. package/_src/typeclass/Functor.ts +21 -59
  657. package/_src/typeclass/FunctorWithIndex.ts +6 -34
  658. package/_src/typeclass/Guard/api.ts +32 -0
  659. package/_src/typeclass/Guard/definition.ts +23 -0
  660. package/_src/typeclass/Guard/derivations.ts +80 -0
  661. package/_src/typeclass/Guard.ts +5 -0
  662. package/_src/typeclass/HashEq.ts +3 -4
  663. package/_src/typeclass/Monad.ts +3 -18
  664. package/_src/typeclass/MonadExcept.ts +9 -32
  665. package/_src/typeclass/Monoid.ts +60 -2
  666. package/_src/typeclass/Nil.ts +26 -17
  667. package/_src/typeclass/Ord/api/contramap.ts +2 -4
  668. package/_src/typeclass/Ord/api/max.ts +1 -1
  669. package/_src/typeclass/Ord/api/min.ts +1 -1
  670. package/_src/typeclass/Ord/definition.ts +3 -19
  671. package/_src/typeclass/Ord/instances.ts +6 -6
  672. package/_src/typeclass/Pointed.ts +29 -25
  673. package/_src/typeclass/Semialign.ts +308 -444
  674. package/_src/typeclass/Semigroup/api.ts +2 -2
  675. package/_src/typeclass/Semigroup/definition.ts +2 -6
  676. package/_src/typeclass/Semigroup/derivations.ts +64 -0
  677. package/_src/typeclass/Semigroup.ts +1 -1
  678. package/_src/typeclass/Semimonoidal.ts +55 -84
  679. package/_src/typeclass/Showable/show.ts +6 -8
  680. package/_src/typeclass/Traversable.ts +67 -157
  681. package/_src/typeclass/TraversableWithIndex.ts +37 -127
  682. package/_src/typeclass/Witherable.ts +120 -279
  683. package/_src/typeclass/WitherableWithIndex.ts +129 -337
  684. package/_src/typeclass.ts +2 -0
  685. package/_src/util/predicates.ts +4 -0
  686. package/collection/Iterable/api/traverseConc.d.ts +6 -4
  687. package/collection/Iterable/api.d.ts +5 -13
  688. package/collection/immutable/Conc/api.d.ts +15 -23
  689. package/collection/immutable/Conc/definition.d.ts +14 -7
  690. package/collection/immutable/Dictionary/definition.d.ts +1 -1
  691. package/collection/immutable/HashMap/api.d.ts +15 -27
  692. package/collection/immutable/HashMap/definition.d.ts +7 -9
  693. package/collection/immutable/HashMap/internal.d.ts +2 -2
  694. package/collection/immutable/HashSet/definition.d.ts +1 -0
  695. package/collection/immutable/ImmutableArray/api/chunksOf.d.ts +6 -0
  696. package/collection/immutable/ImmutableArray/api/slice.d.ts +6 -0
  697. package/collection/immutable/ImmutableArray/api/splitAt.d.ts +6 -0
  698. package/collection/immutable/ImmutableArray/api/splitWhere.d.ts +7 -0
  699. package/collection/immutable/ImmutableArray/api.d.ts +42 -119
  700. package/collection/immutable/ImmutableArray/definition.d.ts +6 -7
  701. package/collection/immutable/ImmutableArray/instances.d.ts +86 -17
  702. package/collection/immutable/ImmutableArray.d.ts +4 -0
  703. package/collection/immutable/ImmutableNonEmptyArray/api.d.ts +27 -48
  704. package/collection/immutable/ImmutableNonEmptyArray/constructors.d.ts +2 -1
  705. package/collection/immutable/ImmutableNonEmptyArray/definition.d.ts +15 -7
  706. package/collection/immutable/ImmutableNonEmptyArray/instances.d.ts +1 -1
  707. package/collection/immutable/List/api.d.ts +1 -2
  708. package/collection/immutable/RoseTree/api.d.ts +63 -0
  709. package/collection/immutable/RoseTree/definition.d.ts +24 -0
  710. package/collection/immutable/RoseTree.d.ts +2 -0
  711. package/collection/immutable/SortedMap/api.d.ts +2 -1
  712. package/collection/immutable/SortedMap/iterator.d.ts +1 -1
  713. package/collection/immutable/Vector/api.d.ts +31 -8
  714. package/collection/immutable/Vector/definition.d.ts +13 -0
  715. package/collection/mutable/HashMap.d.ts +2 -1
  716. package/collection/mutable/HashSet.d.ts +1 -0
  717. package/collection/mutable/ListBuffer.d.ts +1 -0
  718. package/control/Eval/api.d.ts +1 -0
  719. package/control/Eval/definition.d.ts +5 -7
  720. package/control/Eval/instance.d.ts +4 -1
  721. package/control/Z/definition.d.ts +23 -17
  722. package/control/Z/instances.d.ts +4 -3
  723. package/data/Branded/definition.d.ts +36 -0
  724. package/data/Branded/derivations.d.ts +24 -0
  725. package/data/Branded.d.ts +2 -0
  726. package/data/Cause/api.d.ts +7 -1
  727. package/data/Const/api.d.ts +1 -1
  728. package/data/Const/definition.d.ts +24 -7
  729. package/data/Const/instances.d.ts +4 -12
  730. package/data/DecodeError/definition.d.ts +141 -0
  731. package/data/DecodeError.d.ts +1 -0
  732. package/data/Decoder/api.d.ts +65 -0
  733. package/data/Decoder/definition.d.ts +25 -0
  734. package/data/Decoder.d.ts +2 -0
  735. package/data/Duration/api.d.ts +12 -8
  736. package/data/Either/api.d.ts +29 -17
  737. package/data/Either/definition.d.ts +32 -14
  738. package/data/Either/instances.d.ts +26 -11
  739. package/data/Environment/api.d.ts +5 -0
  740. package/data/Exit/definition.d.ts +1 -0
  741. package/data/Identity/api.d.ts +11 -0
  742. package/data/Identity/definition.d.ts +8 -2
  743. package/data/Identity/instances.d.ts +5 -9
  744. package/data/Interval.d.ts +71 -0
  745. package/data/Maybe/api.d.ts +3 -17
  746. package/data/Maybe/definition.d.ts +23 -14
  747. package/data/Maybe/instances.d.ts +14 -8
  748. package/data/Newtype.d.ts +8 -9
  749. package/data/Refinement/api.d.ts +2 -0
  750. package/data/Struct/definition.d.ts +1 -1
  751. package/data/These/api.d.ts +73 -0
  752. package/data/These/constructors.d.ts +7 -1
  753. package/data/These/definition.d.ts +5 -0
  754. package/data/These/destructors.d.ts +27 -1
  755. package/data/These/instances.d.ts +13 -0
  756. package/data/These.d.ts +1 -0
  757. package/data/bigint/definition.d.ts +13 -0
  758. package/data/bigint/instances.d.ts +7 -0
  759. package/data/bigint.d.ts +2 -0
  760. package/data/boolean/definition.d.ts +13 -0
  761. package/data/boolean/instances.d.ts +7 -0
  762. package/data/boolean.d.ts +2 -0
  763. package/data/number/instances.d.ts +8 -0
  764. package/data/object/instances.d.ts +7 -0
  765. package/data/string/instances.d.ts +10 -0
  766. package/internal/Stack.d.ts +1 -0
  767. package/json/EitherJson.d.ts +24 -0
  768. package/json/MaybeJson.d.ts +23 -0
  769. package/json/TheseJson.d.ts +26 -0
  770. package/optics/Traversal/api/fromTraversable.d.ts +1 -1
  771. package/optics/Traversal/definition.d.ts +4 -9
  772. package/package.json +2 -2
  773. package/typeclass/Align.d.ts +3 -10
  774. package/typeclass/Alt.d.ts +6 -19
  775. package/typeclass/Alternative.d.ts +4 -12
  776. package/typeclass/Applicative.d.ts +3 -12
  777. package/typeclass/ApplicativeExcept.d.ts +14 -39
  778. package/typeclass/Apply.d.ts +41 -72
  779. package/typeclass/Chain.d.ts +18 -28
  780. package/typeclass/Closure.d.ts +2 -12
  781. package/typeclass/Eq/definition.d.ts +17 -0
  782. package/typeclass/Eq/derivations.d.ts +24 -0
  783. package/typeclass/Eq.d.ts +2 -27
  784. package/typeclass/Fail.d.ts +4 -10
  785. package/typeclass/Filterable.d.ts +30 -51
  786. package/typeclass/FilterableWithIndex.d.ts +10 -53
  787. package/typeclass/Foldable.d.ts +19 -31
  788. package/typeclass/FoldableWithIndex.d.ts +20 -33
  789. package/typeclass/Functor.d.ts +11 -22
  790. package/typeclass/FunctorWithIndex.d.ts +3 -19
  791. package/typeclass/Guard/api.d.ts +20 -0
  792. package/typeclass/Guard/definition.d.ts +23 -0
  793. package/typeclass/Guard/derivations.d.ts +36 -0
  794. package/typeclass/Guard.d.ts +2 -0
  795. package/typeclass/HashEq.d.ts +1 -2
  796. package/typeclass/Monad.d.ts +3 -11
  797. package/typeclass/MonadExcept.d.ts +6 -17
  798. package/typeclass/Monoid.d.ts +24 -2
  799. package/typeclass/Nil.d.ts +7 -8
  800. package/typeclass/Ord/definition.d.ts +2 -14
  801. package/typeclass/Pointed.d.ts +4 -10
  802. package/typeclass/Semialign.d.ts +51 -63
  803. package/typeclass/Semigroup/definition.d.ts +3 -5
  804. package/typeclass/Semigroup/derivations.d.ts +25 -0
  805. package/typeclass/Semimonoidal.d.ts +5 -14
  806. package/typeclass/Showable/show.d.ts +1 -0
  807. package/typeclass/Traversable.d.ts +17 -57
  808. package/typeclass/TraversableWithIndex.d.ts +9 -52
  809. package/typeclass/Witherable.d.ts +22 -82
  810. package/typeclass/WitherableWithIndex.d.ts +26 -98
  811. package/typeclass.d.ts +1 -0
  812. package/util/predicates.d.ts +1 -0
@@ -1,10 +1,9 @@
1
- import { HKT } from "@fncts/typelevel/HKT";
2
1
  import { Hashable } from "@fncts/base/typeclass/Hashable";
3
2
  import { Equatable } from "@fncts/base/typeclass/Equatable";
4
- export interface ConcF extends HKT {
5
- readonly type: Conc<this["A"]>;
6
- readonly index: number;
7
- }
3
+ import { HKT } from "@fncts/typelevel/HKT";
4
+ import { isByte } from "@fncts/base/util/predicates";
5
+ import { IndexOutOfBoundsError, ArrayIndexOutOfBoundsError } from "@fncts/base/data/exceptions";
6
+ import { unsafeCoerce } from "@fncts/base/data/function/api";
8
7
  export declare const BUFFER_SIZE = 64;
9
8
  export declare const UPDATE_BUFFER_SIZE = 256;
10
9
  export declare const ConcTypeId: unique symbol;
@@ -20,19 +19,27 @@ export declare const enum ConcTag {
20
19
  Chunk = "Chunk",
21
20
  ByteChunk = "ByteChunk"
22
21
  }
22
+ export interface ConcF extends Conc<any> {
23
+ }
23
24
  /**
24
25
  * @tsplus type fncts.Conc
25
26
  * @tsplus companion fncts.ConcOps
26
27
  */
27
28
  export declare abstract class Conc<A> implements Iterable<A>, Hashable, Equatable {
29
+ [HKT.F]?: ConcF;
30
+ [HKT.A]?: () => A;
31
+ [HKT.T]?: Conc<HKT._A<this>>;
32
+ [HKT.Ix]?: number;
28
33
  readonly _typeId: ConcTypeId;
29
- readonly _A: () => A;
30
34
  abstract readonly length: number;
31
35
  abstract [Symbol.iterator](): Iterator<A>;
32
36
  get [Symbol.hash](): number;
33
37
  [Symbol.equals](that: unknown): boolean;
34
38
  }
35
- declare abstract class ConcImplementation<A> extends Conc<A> {
39
+ declare abstract class ConcImplementation<A> implements Iterable<A> {
40
+ readonly _typeId: ConcTypeId;
41
+ get [Symbol.hash](): number;
42
+ [Symbol.equals](that: unknown): boolean;
36
43
  abstract readonly length: number;
37
44
  abstract readonly binary: boolean;
38
45
  abstract get(n: number): A;
@@ -1,7 +1,7 @@
1
1
  import { HKT } from "@fncts/typelevel/HKT";
2
2
  import { Newtype, NewtypeIso } from "@fncts/base/data/Newtype";
3
3
  interface DictionaryN extends HKT {
4
- readonly type: Dictionary<this["A"]>;
4
+ readonly [HKT.T]: Dictionary<HKT._A<this>>;
5
5
  }
6
6
  /**
7
7
  * @tsplus type fncts.Dictionary
@@ -37,7 +37,7 @@ export declare function makeDefault<K, V>(): HashMap<K, V>;
37
37
  * @tsplus fluent fncts.HashMapOps fromFoldable
38
38
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
39
39
  */
40
- export declare function fromFoldable<F extends HKT, C, K, A>(config: P.HashEq<K>, S: P.Semigroup<A>, F: P.Foldable<F, C>): <K_, Q, W, X, I, S, R, E>(fka: import("@fncts/typelevel/HKT.js").HKT.Kind<F, C, K_, Q, W, X, I, S, R, E, readonly [K, A]>) => HashMap<K, A>;
40
+ export declare function fromFoldable<F extends HKT, C, K, A>(config: P.HashEq<K>, S: P.Semigroup<A>, F: P.Foldable<F>): <K_, Q, W, X, I, S, R, E>(fka: import("@fncts/typelevel/HKT.js").HKT.Kind<F, K_, Q, W, X, I, S, R, E, readonly [K, A]>) => HashMap<K, A>;
41
41
  /**
42
42
  * Lookup the value for `key` in `map` using custom hash.
43
43
  * @tsplus fluent fncts.HashMap getHash
@@ -272,53 +272,41 @@ export declare function foldLeftWithIndex_<K, V, Z>(map: HashMap<K, V>, z: Z, f:
272
272
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
273
273
  */
274
274
  export declare function foldLeft_<K, V, Z>(map: HashMap<K, V>, z: Z, f: (z: Z, v: V) => Z): Z;
275
- export declare const traverseWithIndex_: P.traverseWithIndex_<HashMapF>;
276
- export declare const traverseWithIndex: P.traverseWithIndex<HashMapF>;
277
275
  /**
278
- * @tsplus getter fncts.HashMap traverseWithIndex
276
+ * @tsplus fluent fncts.HashMap traverseWithIndex
279
277
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
280
278
  */
281
- export declare const traverseWithIndexSelf: P.traverseWithIndexSelf<HashMapF>;
282
- export declare const traverse_: P.traverse_<HashMapF>;
283
- export declare const traverse: P.traverse<HashMapF>;
279
+ export declare const traverseWithIndex_: P.TraversableWithIndex<HashMapF>["traverseWithIndex"];
284
280
  /**
285
- * @tsplus fluent fncts.HashMap unsafeGet
281
+ * @tsplus fluent fncts.HashMap traverse
286
282
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
287
283
  */
288
- export declare function unsafeGet_<K, V>(self: HashMap<K, V>, key: K): V | undefined;
284
+ export declare const traverse_: P.Traversable<HashMapF>["traverse"];
289
285
  /**
290
- * @tsplus getter fncts.HashMap traverse
286
+ * @tsplus fluent fncts.HashMap unsafeGet
291
287
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
292
288
  */
293
- export declare const traverseSelf: P.traverseSelf<HashMapF>;
294
- export declare const witherWithIndex_: P.witherWithIndex_<HashMapF>;
295
- export declare const witherWithIndex: P.witherWithIndex<HashMapF>;
289
+ export declare function unsafeGet_<K, V>(self: HashMap<K, V>, key: K): V | undefined;
296
290
  /**
297
- * @tsplus getter fncts.HashMap witherWithIndex
291
+ * @tsplus fluent fncts.HashMap witherWithIndex
298
292
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
299
293
  */
300
- export declare const witherWithIndexSelf: P.witherWithIndexSelf<HashMapF>;
301
- export declare const wither_: P.wither_<HashMapF>;
302
- export declare const wither: P.wither<HashMapF>;
294
+ export declare const witherWithIndex_: P.WitherableWithIndex<HashMapF>["witherWithIndex"];
303
295
  /**
304
- * @tsplus getter fncts.HashMap wither
296
+ * @tsplus fluent fncts.HashMap wither
305
297
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
306
298
  */
307
- export declare const witherSelf: P.witherSelf<HashMapF>;
308
- export declare const wiltWithIndex_: P.wiltWithIndex_<HashMapF>;
309
- export declare const wiltWithIndex: P.wiltWithIndex<HashMapF>;
299
+ export declare const wither_: P.Witherable<HashMapF>["wither"];
310
300
  /**
311
- * @tsplus getter fncts.HashMap wiltWithIndex
301
+ * @tsplus fluent fncts.HashMap wiltWithIndex
312
302
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
313
303
  */
314
- export declare const wiltWithIndexSelf: P.wiltWithIndexSelf<HashMapF>;
315
- export declare const wilt_: P.wilt_<HashMapF>;
316
- export declare const wilt: P.wilt<HashMapF>;
304
+ export declare const wiltWithIndex_: P.WitherableWithIndex<HashMapF>["wiltWithIndex"];
317
305
  /**
318
- * @tsplus getter fncts.HashMap wilt
306
+ * @tsplus fluent fncts.HashMap wilt
319
307
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
320
308
  */
321
- export declare const wiltSelf: P.wiltSelf<HashMapF>;
309
+ export declare const wilt_: P.Witherable<HashMapF>["wilt"];
322
310
  /**
323
311
  * @tsplus fluent fncts.HashMap unionWith
324
312
  * @tsplus location "@fncts/base/collection/immutable/HashMap/api"
@@ -1,15 +1,10 @@
1
- import { HKT } from "@fncts/typelevel/HKT";
2
1
  import { Hashable } from "@fncts/base/typeclass/Hashable";
3
2
  import { Equatable } from "@fncts/base/typeclass/Equatable";
3
+ import { HKT } from "@fncts/typelevel/HKT";
4
4
  import { Maybe } from "@fncts/base/data/Maybe/definition";
5
5
  import type { Node } from "@fncts/base/collection/immutable/HashMap/internal";
6
6
  import type { HashEq } from "@fncts/base/typeclass";
7
- export interface HashMapF extends HKT {
8
- readonly type: HashMap<this["K"], this["A"]>;
9
- readonly variance: {
10
- K: "_";
11
- A: "+";
12
- };
7
+ export interface HashMapF extends HashMap<any, any> {
13
8
  }
14
9
  /**
15
10
  * @tsplus type fncts.HashMap
@@ -21,8 +16,11 @@ export declare class HashMap<K, V> implements Iterable<readonly [K, V]>, Hashabl
21
16
  readonly config: HashEq<K>;
22
17
  root: Node<K, V>;
23
18
  size: number;
24
- readonly _K: () => K;
25
- readonly _V: () => V;
19
+ readonly [HKT.F]: HashMapF;
20
+ readonly [HKT.K]: () => K;
21
+ readonly [HKT.A]: () => V;
22
+ readonly [HKT.T]: HashMap<HKT._K<this>, HKT._A<this>>;
23
+ readonly [HKT.Ix]: K;
26
24
  constructor(editable: boolean, edit: number, config: HashEq<K>, root: Node<K, V>, size: number);
27
25
  [Symbol.iterator](): Iterator<readonly [K, V]>;
28
26
  get [Symbol.hash](): number;
@@ -1,4 +1,4 @@
1
- import { Maybe } from "@fncts/base/data/Maybe/definition";
1
+ import { Nothing, Maybe } from "@fncts/base/data/Maybe/definition";
2
2
  import type { Eq } from "@fncts/base/typeclass";
3
3
  export declare const SIZE = 5;
4
4
  export declare const BUCKET_SIZE: number;
@@ -29,7 +29,7 @@ export declare const _EmptyNode: EmptyNode<never, never>;
29
29
  export declare function isEmptyNode(a: unknown): a is EmptyNode<unknown, unknown>;
30
30
  export declare function isLeaf<K, V>(node: Node<K, V>): node is EmptyNode<K, V> | LeafNode<K, V> | CollisionNode<K, V>;
31
31
  export declare function canEditNode<K, V>(edit: number, node: Node<K, V>): boolean;
32
- export declare type KeyEq<K> = Eq<K>["equals_"];
32
+ export declare type KeyEq<K> = Eq<K>["equals"];
33
33
  export declare type UpdateFn<V> = (v: Maybe<V>) => Maybe<V>;
34
34
  export declare class LeafNode<K, V> {
35
35
  readonly edit: number;
@@ -1,3 +1,4 @@
1
+ import { Hashable } from "@fncts/base/typeclass/Hashable";
1
2
  import * as P from "@fncts/base/typeclass";
2
3
  /**
3
4
  * @tsplus type fncts.HashSet
@@ -0,0 +1,6 @@
1
+ import { ImmutableArray } from "@fncts/base/collection/immutable/ImmutableArray/definition";
2
+ /**
3
+ * @tsplus fluent fncts.ImmutableArray chunksOf
4
+ * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api/chunksOf"
5
+ */
6
+ export declare function chunksOf_<A>(self: ImmutableArray<A>, n: number): ImmutableArray<ImmutableArray<A>>;
@@ -0,0 +1,6 @@
1
+ import { ImmutableArray } from "@fncts/base/collection/immutable/ImmutableArray/definition";
2
+ /**
3
+ * @tsplus fluent fncts.ImmutableArray slice
4
+ * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api/slice"
5
+ */
6
+ export declare function slice_<A>(self: ImmutableArray<A>, start?: number, end?: number): ImmutableArray<A>;
@@ -0,0 +1,6 @@
1
+ import { ImmutableArray } from "@fncts/base/collection/immutable/ImmutableArray/definition";
2
+ /**
3
+ * @tsplus fluent fncts.ImmutableArray splitAt
4
+ * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api/splitAt"
5
+ */
6
+ export declare function splitAt_<A>(as: ImmutableArray<A>, n: number): readonly [ImmutableArray<A>, ImmutableArray<A>];
@@ -0,0 +1,7 @@
1
+ import { ImmutableArray } from "@fncts/base/collection/immutable/ImmutableArray/definition";
2
+ import { Predicate } from "@fncts/base/data/Predicate/definition";
3
+ /**
4
+ * @tsplus fluent fncts.ImmutableArray splitWhere
5
+ * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api/splitWhere"
6
+ */
7
+ export declare function splitWhere_<A>(self: ImmutableArray<A>, p: Predicate<A>): readonly [ImmutableArray<A>, ImmutableArray<A>];
@@ -1,5 +1,5 @@
1
1
  import { ImmutableArray } from "@fncts/base/collection/immutable/ImmutableArray/definition";
2
- import { These } from "@fncts/base/data/These/definition";
2
+ import { These } from "@fncts/base/data/These";
3
3
  import { Lazy } from "@fncts/base/data/function/definition";
4
4
  import { Either } from "@fncts/base/data/Either/definition";
5
5
  import { ImmutableNonEmptyArray, NonEmptyArray } from "@fncts/base/collection/immutable/ImmutableNonEmptyArray/definition";
@@ -7,6 +7,7 @@ import { Maybe } from "@fncts/base/data/Maybe/definition";
7
7
  import { Eval } from "@fncts/base/control/Eval/definition";
8
8
  import { Predicate, PredicateWithIndex } from "@fncts/base/data/Predicate/definition";
9
9
  import { Refinement, RefinementWithIndex } from "@fncts/base/data/Refinement/definition";
10
+ import { HKT } from "@fncts/typelevel/HKT";
10
11
  import type { ImmutableArrayF } from "@fncts/base/collection/immutable/ImmutableArray/definition";
11
12
  import type { Monoid } from "@fncts/base/typeclass";
12
13
  import * as P from "@fncts/base/typeclass";
@@ -40,6 +41,11 @@ export declare function append_<A, B>(self: ImmutableArray<A>, last: B): Immutab
40
41
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
41
42
  */
42
43
  export declare function crossWith_<A, B, C>(self: ImmutableArray<A>, fb: ImmutableArray<B>, f: (a: A, b: B) => C): ImmutableArray<C>;
44
+ /**
45
+ * @tsplus fluent fncts.ImmutableArray cross
46
+ * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
47
+ */
48
+ export declare function cross_<A, B>(self: ImmutableArray<A>, fb: ImmutableArray<B>): ImmutableArray<readonly [A, B]>;
43
49
  /**
44
50
  * @tsplus static fncts.ImmutableArrayOps chainRecDepthFirst
45
51
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -78,11 +84,6 @@ export declare function chop_<A, B>(as: ImmutableArray<A>, f: (as: ImmutableNonE
78
84
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
79
85
  */
80
86
  export declare const chop: <A, B>(f: (as: import("../ImmutableNonEmptyArray").ImmutableNonEmptyArray<A>) => readonly [B, import("@fncts/base/collection/immutable/ImmutableArray/definition").ImmutableArray<A>]) => (as: import("@fncts/base/collection/immutable/ImmutableArray/definition").ImmutableArray<A>) => import("@fncts/base/collection/immutable/ImmutableArray/definition").ImmutableArray<B>;
81
- /**
82
- * @tsplus fluent fncts.ImmutableArray chunksOf
83
- * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
84
- */
85
- export declare function chunksOf_<A>(self: ImmutableArray<A>, n: number): ImmutableArray<ImmutableArray<A>>;
86
87
  /**
87
88
  * @tsplus fluent fncts.ImmutableArray collectWhile
88
89
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -99,7 +100,6 @@ export declare function comprehension<A, R>(input: [ImmutableArray<A>], f: (a: A
99
100
  /**
100
101
  * @tsplus fluent fncts.ImmutableArray concat
101
102
  * @tsplus operator fncts.ImmutableArray +
102
- * @tsplus operator fncts.base.MutableArray +
103
103
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
104
104
  */
105
105
  export declare function concat_<A, B>(self: ImmutableArray<A>, that: ImmutableArray<B>): ImmutableArray<A | B>;
@@ -109,14 +109,11 @@ export declare function concat_<A, B>(self: ImmutableArray<A>, that: ImmutableAr
109
109
  */
110
110
  export declare function deleteAt_<A>(as: ImmutableArray<A>, i: number): Maybe<ImmutableArray<A>>;
111
111
  /**
112
- * @constrained
113
- */
114
- export declare function difference_<A>(E: P.Eq<A>): (self: ImmutableArray<A>, ys: ImmutableArray<A>) => ImmutableArray<A>;
115
- /**
116
- * @tsplus getter fncts.ImmutableArray difference
112
+ * @tsplus fluent fncts.ImmutableArray difference
117
113
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
118
114
  */
119
- export declare function differenceSelf<A>(self: ImmutableArray<A>): (E: P.Eq<A>) => (that: ImmutableArray<A>) => ImmutableArray<A>;
115
+ export declare function difference_<A>(self: ImmutableArray<A>, ys: ImmutableArray<A>,
116
+ /** @tsplus auto */ E: P.Eq<A>): ImmutableArray<A>;
120
117
  /**
121
118
  * @tsplus fluent fncts.ImmutableArray drop
122
119
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -141,18 +138,10 @@ export declare function dropLastWhile_<A>(as: ImmutableArray<A>, p: Predicate<A>
141
138
  * Test if a value is a member of an array. Takes an `Eq<A>` as a single
142
139
  * argument which returns the function to use to search for a value of type `A` in
143
140
  * an array of type `ImmutableArray<A>`.
144
- *
145
- * @constrained
146
- */
147
- export declare function elem_<A>(E: P.Eq<A>): (as: ImmutableArray<A>, a: A) => boolean;
148
- /**
149
- * Test if a value is a member of an array. Takes an `Eq<A>` as a single
150
- * argument which returns the function to use to search for a value of type `A` in
151
- * an array of type `ImmutableArray<A>`.
152
- * @tsplus getter fncts.ImmutableArray elem
141
+ * @tsplus fluent fncts.ImmutableArray elem
153
142
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
154
143
  */
155
- export declare function elemSelf<A>(self: ImmutableArray<A>): (E: P.Eq<A>) => (a: A) => boolean;
144
+ export declare function elem_<A>(as: ImmutableArray<A>, a: A, /** @tsplus auto */ E: P.Eq<A>): boolean;
156
145
  /**
157
146
  * @tsplus fluent fncts.ImmutableArray every
158
147
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -264,54 +253,39 @@ export declare function foldLeftWhile_<A, B>(self: ImmutableArray<A>, b: B, p: P
264
253
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
265
254
  */
266
255
  export declare function foldLeftWithIndexWhile_<A, B>(self: ImmutableArray<A>, b: B, p: Predicate<B>, f: (i: number, b: B, a: A) => B): B;
267
- export declare function fold<M>(M: Monoid<M>): (self: ImmutableArray<M>) => M;
268
256
  /**
269
257
  * @tsplus fluent fncts.ImmutableArray fold
270
- * @tsplus fluent fncts.base.MutableArray fold
271
258
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
272
259
  */
273
- export declare function foldSelf<M>(self: ImmutableArray<M>, M: Monoid<M>): M;
274
- /**
275
- * @constrained
276
- */
277
- export declare function foldMapWithIndex_<M>(M: Monoid<M>): <A>(self: import("@fncts/base/collection/immutable/ImmutableArray/definition").ImmutableArray<A>, f: (i: number, a: A) => M) => M;
260
+ export declare function fold<M>(self: ImmutableArray<M>, /** @tsplus auto */ M: Monoid<M>): M;
278
261
  /**
279
- * @tsplus getter fncts.ImmutableArray foldMapWithIndex
280
- * @tsplus getter fncts.base.MutableArray foldMapWithIndex
262
+ * @tsplus fluent fncts.ImmutableArray foldMapWithIndex
281
263
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
282
264
  */
283
- export declare function foldMapWithIndexSelf<A>(self: ImmutableArray<A>): <M>(M: Monoid<M>) => (f: (i: number, a: A) => M) => M;
265
+ export declare function foldMapWithIndex_<A, M>(self: ImmutableArray<A>, f: (i: number, a: A) => M,
266
+ /** @tsplus auto */ M: Monoid<M>): M;
284
267
  /**
285
- * @constrained
286
- */
287
- export declare function foldMap_<M>(M: Monoid<M>): <A>(self: import("@fncts/base/collection/immutable/ImmutableArray/definition").ImmutableArray<A>, f: (a: A) => M) => M;
288
- /**
289
- * @tsplus getter fncts.ImmutableArray foldMap
290
- * @tsplus getter fncts.base.MutableArray foldMap
268
+ * @tsplus fluent fncts.ImmutableArray foldMap
291
269
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
292
270
  */
293
- export declare function foldMapSelf<A>(self: ImmutableArray<A>): <M>(M: Monoid<M>) => (f: (a: A) => M) => M;
271
+ export declare function foldMap_<A, M>(self: ImmutableArray<A>, f: (a: A) => M, /** @tsplus auto */ M: Monoid<M>): M;
294
272
  /**
295
273
  * @tsplus fluent fncts.ImmutableArray foldRightWithIndex
296
- * @tsplus fluent fncts.base.MutableArray foldRightWithIndex
297
274
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
298
275
  */
299
276
  export declare function foldRightWithIndex_<A, B>(self: ImmutableArray<A>, b: B, f: (i: number, a: A, b: B) => B): B;
300
277
  /**
301
278
  * @tsplus fluent fncts.ImmutableArray foldRight
302
- * @tsplus fluent fncts.base.MutableArray foldRight
303
279
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
304
280
  */
305
281
  export declare function foldRight_<A, B>(self: ImmutableArray<A>, b: B, f: (a: A, b: B) => B): B;
306
282
  /**
307
283
  * @tsplus fluent fncts.ImmutableArray foldRighWhile
308
- * @tsplus fluent fncts.base.MutableArray foldRightWhile
309
284
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
310
285
  */
311
286
  export declare function foldRightWhile_<A, B>(self: ImmutableArray<A>, b: B, p: Predicate<B>, f: (a: A, b: B) => B): B;
312
287
  /**
313
288
  * @tsplus fluent fncts.ImmutableArray foldRightWithIndexWhile
314
- * @tsplus fluent fncts.base.MutableArray foldRightWithIndexWhile
315
289
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
316
290
  */
317
291
  export declare function foldRightWithIndexWhile_<A, B>(self: ImmutableArray<A>, b: B, predicate: Predicate<B>, f: (i: number, a: A, b: B) => B): B;
@@ -352,23 +326,18 @@ export declare function init<A>(self: ImmutableArray<A>): Maybe<ImmutableArray<A
352
326
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
353
327
  */
354
328
  export declare function insertAt_<A>(self: ImmutableArray<A>, i: number, a: A): Maybe<ImmutableNonEmptyArray<A>>;
355
- export declare function intersection_<A>(E: P.Eq<A>): (self: ImmutableArray<A>, that: ImmutableArray<A>) => ImmutableArray<A>;
356
329
  /**
357
- * @tsplus getter fncts.ImmutableArray intersection
330
+ * @tsplus fluent fncts.ImmutableArray intersection
358
331
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
359
332
  */
360
- export declare function intersectionSelf<A>(self: ImmutableArray<A>): (E: P.Eq<A>) => (that: ImmutableArray<A>) => ImmutableArray<A>;
333
+ export declare function intersection_<A>(self: ImmutableArray<A>, that: ImmutableArray<A>,
334
+ /** @tsplus auto */ E: P.Eq<A>): ImmutableArray<A>;
361
335
  export declare function intersperse_<A>(self: ImmutableArray<A>, a: A): ImmutableArray<A>;
362
336
  /**
363
337
  * @tsplus fluent fncts.ImmutableArray isEmpty
364
338
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
365
339
  */
366
340
  export declare function isEmpty<A>(self: ImmutableArray<A>): boolean;
367
- /**
368
- * @tsplus fluent fncts.ImmutableArray isNonEmpty
369
- * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
370
- */
371
- export declare function isNonEmpty<A>(self: ImmutableArray<A>): self is ImmutableNonEmptyArray<A>;
372
341
  /**
373
342
  * @tsplus fluent fncts.ImmutableArray isOutOfBound
374
343
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -486,12 +455,12 @@ export declare function scanRight_<A, B>(self: ImmutableArray<A>, b: B, f: (a: A
486
455
  * @tsplus fluent fncts.ImmutableArray sort
487
456
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
488
457
  */
489
- export declare function sort<A extends B, B>(self: ImmutableArray<A>, O: P.Ord<B>): ImmutableArray<A>;
458
+ export declare function sort<A>(self: ImmutableArray<A>, /** @tsplus auto */ O: P.Ord<A>): ImmutableArray<A>;
490
459
  /**
491
460
  * @tsplus fluent fncts.ImmutableArray sortBy
492
461
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
493
462
  */
494
- export declare function sortBy<A extends B, B>(self: ImmutableArray<A>, Os: ImmutableArray<P.Ord<B>>): ImmutableArray<A>;
463
+ export declare function sortBy<A>(self: ImmutableArray<A>, Os: ImmutableArray<P.Ord<A>>): ImmutableArray<A>;
495
464
  /**
496
465
  * @tsplus fluent fncts.ImmutableArray spanLeft
497
466
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -514,27 +483,6 @@ export declare function spanIndexLeft_<A>(self: ImmutableArray<A>, p: Predicate<
514
483
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
515
484
  */
516
485
  export declare function spanIndexRight_<A>(as: ImmutableArray<A>, predicate: Predicate<A>): number;
517
- /**
518
- * @tsplus fluent fncts.ImmutableArray slice
519
- * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
520
- */
521
- export declare function slice_<A>(self: ImmutableArray<A>, start?: number, end?: number): ImmutableArray<A>;
522
- /**
523
- * @tsplus fluent fncts.ImmutableArray splitAt
524
- * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
525
- */
526
- export declare function splitAt_<A>(as: ImmutableArray<A>, n: number): readonly [ImmutableArray<A>, ImmutableArray<A>];
527
- /**
528
- * @tsplus fluent fncts.ImmutableArray splitWhere
529
- * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
530
- */
531
- export declare function splitWhere_<A>(self: ImmutableArray<A>, p: Predicate<A>): readonly [ImmutableArray<A>, ImmutableArray<A>];
532
- export declare const sequence: P.sequence<ImmutableArrayF>;
533
- /**
534
- * @tsplus getter fncts.ImmutableArray sequence
535
- * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
536
- */
537
- export declare const sequenceSelf: P.sequenceSelf<ImmutableArrayF>;
538
486
  /**
539
487
  * @tsplus getter fncts.ImmutableArray tail
540
488
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -556,33 +504,27 @@ export declare function takeLast_<A>(as: ImmutableArray<A>, n: number): Immutabl
556
504
  */
557
505
  export declare function takeWhile_<A, B extends A>(self: ImmutableArray<A>, p: Refinement<A, B>): ImmutableArray<B>;
558
506
  export declare function takeWhile_<A>(self: ImmutableArray<A>, p: Predicate<A>): ImmutableArray<A>;
559
- export declare const traverseWithIndex_: P.traverseWithIndex_<ImmutableArrayF>;
560
- /**
561
- * @tsplus dataFirst traverseWithIndex_
562
- */
563
- export declare const traverseWithIndex: P.traverseWithIndex<ImmutableArrayF>;
564
507
  /**
565
- * @tsplus getter fncts.ImmutableArray traverseWithIndex
508
+ * @tsplus fluent fncts.ImmutableArray traverseWithIndex
566
509
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
567
510
  */
568
- export declare const traverseWithIndexSelf: P.traverseWithIndexSelf<ImmutableArrayF>;
569
- export declare const traverse_: P.traverse_<ImmutableArrayF>;
511
+ export declare const traverseWithIndex_: P.TraversableWithIndex<ImmutableArrayF>["traverseWithIndex"];
570
512
  /**
571
- * @tsplus dataFirst traverse_
513
+ * @tsplus fluent fncts.ImmutableArray traverse
514
+ * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
572
515
  */
573
- export declare const traverse: P.traverse<ImmutableArrayF>;
516
+ export declare const traverse_: P.Traversable<ImmutableArrayF>["traverse"];
574
517
  /**
575
- * @tsplus getter fncts.ImmutableArray traverse
518
+ * @tsplus fluent fncts.ImmutableArray union
576
519
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
577
520
  */
578
- export declare const traverseSelf: P.traverseSelf<ImmutableArrayF>;
579
- export declare function union_<A>(E: P.Eq<A>): (self: ImmutableArray<A>, that: ImmutableArray<A>) => ImmutableArray<A>;
580
- export declare function uniq<A>(E: P.Eq<A>): (self: ImmutableArray<A>) => ImmutableArray<A>;
521
+ export declare function union_<A>(self: ImmutableArray<A>, that: ImmutableArray<A>,
522
+ /** @tsplus auto */ E: P.Eq<A>): ImmutableArray<A>;
581
523
  /**
582
524
  * @tsplus fluent fncts.ImmutableArray uniq
583
525
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
584
526
  */
585
- export declare function uniqSelf<A>(self: ImmutableArray<A>, E: P.Eq<A>): ImmutableArray<A>;
527
+ export declare function uniq<A>(self: ImmutableArray<A>, /** @tsplus auto */ E: P.Eq<A>): ImmutableArray<A>;
586
528
  /**
587
529
  * @tsplus getter fncts.ImmutableArray unprepend
588
530
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -627,47 +569,28 @@ export declare function unzip<A, B>(self: ImmutableArray<readonly [A, B]>): read
627
569
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
628
570
  */
629
571
  export declare function updateAt_<A>(as: ImmutableArray<A>, i: number, a: A): Maybe<ImmutableArray<A>>;
630
- export declare const wilt_: P.wilt_<ImmutableArrayF>;
631
- /**
632
- * @tsplus pipeable fncts.ImmutableArray wilt_
633
- * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
634
- */
635
- export declare const wilt: P.wilt<ImmutableArrayF>;
636
572
  /**
637
573
  * @tsplus fluent fncts.ImmutableArray wilt
638
574
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
639
575
  */
640
- export declare const wiltSelf: P.wiltSelf<ImmutableArrayF>;
641
- export declare const wiltWithIndex_: P.wiltWithIndex_<ImmutableArrayF>;
642
- /**
643
- * @tsplus dataFirst wiltWithIndex_
644
- */
645
- export declare const wiltWithIndex: P.wiltWithIndex<ImmutableArrayF>;
646
- /**
647
- * @tsplus getter fncts.ImmutableArray wiltWithIndex
648
- * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
649
- */
650
- export declare const wiltWithIndexSelf: P.wiltWithIndexSelf<ImmutableArrayF>;
651
- export declare const wither_: P.wither_<ImmutableArrayF>;
652
- /**
653
- * @tsplus dataFirst wither_
654
- */
655
- export declare const wither: P.wither<ImmutableArrayF>;
576
+ export declare function wilt_<G extends HKT, KG, QG, WG, XG, IG, SG, RG, EG, B1, A, B>(self: ImmutableArray<A>, f: (a: A) => HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, Either<B, B1>>,
577
+ /** @tsplus auto */
578
+ G: P.Applicative<G>): HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, readonly [ImmutableArray<B>, ImmutableArray<B1>]>;
579
+ export declare function wiltWithIndex_<G extends HKT, KG, QG, WG, XG, IG, SG, RG, EG, B1, A, B>(self: ImmutableArray<A>, f: (i: number, a: A) => HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, Either<B, B1>>,
580
+ /** @tsplus auto */
581
+ G: P.Applicative<G>): HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, readonly [ImmutableArray<B>, ImmutableArray<B1>]>;
656
582
  /**
657
583
  * @tsplus fluent fncts.ImmutableArray wither
658
584
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
659
585
  */
660
- export declare const witherSelf: P.witherSelf<ImmutableArrayF>;
661
- export declare const witherWithIndex_: P.witherWithIndex_<ImmutableArrayF>;
662
- /**
663
- * @tsplus dataFirst witherWithIndex_
664
- */
665
- export declare const witherWithIndex: P.witherWithIndex<ImmutableArrayF>;
586
+ export declare function wither_<G extends HKT, KG, QG, WG, XG, IG, SG, RG, EG, A, B>(self: ImmutableArray<A>, f: (a: A) => HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, Maybe<B>>,
587
+ /** @tsplus auto */ G: P.Applicative<G>): HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, ImmutableArray<B>>;
666
588
  /**
667
589
  * @tsplus fluent fncts.ImmutableArray witherWithIndex
668
590
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
669
591
  */
670
- export declare const witherWithIndexSelf: P.witherWithIndexSelf<ImmutableArrayF>;
592
+ export declare function witherWithIndex_<G extends HKT, KG, QG, WG, XG, IG, SG, RG, EG, A, B>(self: ImmutableArray<A>, f: (k: number, a: A) => HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, Maybe<B>>,
593
+ /** @tsplus auto */ G: P.Applicative<G>): HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, ImmutableArray<B>>;
671
594
  /**
672
595
  * @tsplus fluent fncts.ImmutableArray zip
673
596
  * @tsplus location "@fncts/base/collection/immutable/ImmutableArray/api"
@@ -3,6 +3,8 @@ import { Hashable } from "@fncts/base/typeclass/Hashable";
3
3
  import { HKT } from "@fncts/typelevel/HKT";
4
4
  export declare const ImmutableArrayTypeId: unique symbol;
5
5
  export declare type ImmutableArrayTypeId = typeof ImmutableArrayTypeId;
6
+ export interface ImmutableArrayF extends ImmutableArray<any> {
7
+ }
6
8
  /**
7
9
  * @tsplus type fncts.ImmutableArray
8
10
  * @tsplus companion fncts.ImmutableArrayOps
@@ -10,16 +12,13 @@ export declare type ImmutableArrayTypeId = typeof ImmutableArrayTypeId;
10
12
  export declare class ImmutableArray<A> implements Equatable, Hashable, Iterable<A> {
11
13
  readonly _array: ReadonlyArray<A>;
12
14
  readonly _typeId: ImmutableArrayTypeId;
15
+ [HKT.F]?: ImmutableArrayF;
16
+ [HKT.A]?: () => A;
17
+ [HKT.T]?: ImmutableArray<HKT._A<this>>;
18
+ [HKT.Ix]?: number;
13
19
  constructor(_array: ReadonlyArray<A>);
14
20
  [Symbol.equals](that: unknown): boolean;
15
21
  get [Symbol.hash](): number;
16
22
  [Symbol.iterator](): IterableIterator<A>;
17
23
  }
18
24
  export declare function isImmutableArray(u: unknown): u is ImmutableArray<unknown>;
19
- export interface ImmutableArrayF extends HKT {
20
- readonly type: ImmutableArray<this["A"]>;
21
- readonly variance: {
22
- readonly A: "+";
23
- };
24
- readonly index: number;
25
- }