effect 4.0.0-beta.102 → 4.0.0-beta.103

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 (1451) hide show
  1. package/dist/Array.d.ts +971 -1037
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +381 -407
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +433 -756
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +200 -325
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +207 -267
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +107 -135
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +146 -188
  14. package/dist/Boolean.d.ts.map +1 -1
  15. package/dist/Boolean.js +64 -84
  16. package/dist/Boolean.js.map +1 -1
  17. package/dist/Brand.js.map +1 -1
  18. package/dist/Cache.d.ts +405 -254
  19. package/dist/Cache.d.ts.map +1 -1
  20. package/dist/Cache.js +166 -101
  21. package/dist/Cache.js.map +1 -1
  22. package/dist/Cause.d.ts +167 -277
  23. package/dist/Cause.d.ts.map +1 -1
  24. package/dist/Cause.js +122 -176
  25. package/dist/Cause.js.map +1 -1
  26. package/dist/Channel.d.ts +729 -768
  27. package/dist/Channel.d.ts.map +1 -1
  28. package/dist/Channel.js +514 -440
  29. package/dist/Channel.js.map +1 -1
  30. package/dist/ChannelSchema.d.ts +1 -1
  31. package/dist/ChannelSchema.d.ts.map +1 -1
  32. package/dist/ChannelSchema.js.map +1 -1
  33. package/dist/Chunk.d.ts +834 -1173
  34. package/dist/Chunk.d.ts.map +1 -1
  35. package/dist/Chunk.js +326 -439
  36. package/dist/Chunk.js.map +1 -1
  37. package/dist/Clock.d.ts +180 -49
  38. package/dist/Clock.d.ts.map +1 -1
  39. package/dist/Clock.js +96 -31
  40. package/dist/Clock.js.map +1 -1
  41. package/dist/Combiner.d.ts +20 -33
  42. package/dist/Combiner.d.ts.map +1 -1
  43. package/dist/Combiner.js +18 -30
  44. package/dist/Combiner.js.map +1 -1
  45. package/dist/Config.d.ts +225 -173
  46. package/dist/Config.d.ts.map +1 -1
  47. package/dist/Config.js +336 -265
  48. package/dist/Config.js.map +1 -1
  49. package/dist/ConfigProvider.d.ts +194 -68
  50. package/dist/ConfigProvider.d.ts.map +1 -1
  51. package/dist/ConfigProvider.js +115 -80
  52. package/dist/ConfigProvider.js.map +1 -1
  53. package/dist/Console.d.ts +233 -33
  54. package/dist/Console.d.ts.map +1 -1
  55. package/dist/Console.js +232 -32
  56. package/dist/Console.js.map +1 -1
  57. package/dist/Context.d.ts +151 -274
  58. package/dist/Context.d.ts.map +1 -1
  59. package/dist/Context.js +171 -214
  60. package/dist/Context.js.map +1 -1
  61. package/dist/Cron.d.ts +68 -77
  62. package/dist/Cron.d.ts.map +1 -1
  63. package/dist/Cron.js +57 -66
  64. package/dist/Cron.js.map +1 -1
  65. package/dist/Crypto.d.ts +13 -15
  66. package/dist/Crypto.d.ts.map +1 -1
  67. package/dist/Crypto.js +9 -10
  68. package/dist/Crypto.js.map +1 -1
  69. package/dist/Data.d.ts +60 -80
  70. package/dist/Data.d.ts.map +1 -1
  71. package/dist/Data.js +16 -23
  72. package/dist/Data.js.map +1 -1
  73. package/dist/DateTime.d.ts +562 -660
  74. package/dist/DateTime.d.ts.map +1 -1
  75. package/dist/DateTime.js +307 -362
  76. package/dist/DateTime.js.map +1 -1
  77. package/dist/Deferred.d.ts +253 -256
  78. package/dist/Deferred.d.ts.map +1 -1
  79. package/dist/Deferred.js +104 -96
  80. package/dist/Deferred.js.map +1 -1
  81. package/dist/Duration.d.ts +216 -308
  82. package/dist/Duration.d.ts.map +1 -1
  83. package/dist/Duration.js +132 -186
  84. package/dist/Duration.js.map +1 -1
  85. package/dist/Effect.d.ts +2841 -3247
  86. package/dist/Effect.d.ts.map +1 -1
  87. package/dist/Effect.js +1322 -1546
  88. package/dist/Effect.js.map +1 -1
  89. package/dist/Effectable.js.map +1 -1
  90. package/dist/Encoding.d.ts +22 -40
  91. package/dist/Encoding.d.ts.map +1 -1
  92. package/dist/Encoding.js +22 -40
  93. package/dist/Encoding.js.map +1 -1
  94. package/dist/Equal.d.ts +33 -37
  95. package/dist/Equal.d.ts.map +1 -1
  96. package/dist/Equal.js +29 -21
  97. package/dist/Equal.js.map +1 -1
  98. package/dist/Equivalence.d.ts +103 -105
  99. package/dist/Equivalence.d.ts.map +1 -1
  100. package/dist/Equivalence.js +77 -79
  101. package/dist/Equivalence.js.map +1 -1
  102. package/dist/ErrorReporter.d.ts +51 -27
  103. package/dist/ErrorReporter.d.ts.map +1 -1
  104. package/dist/ErrorReporter.js +50 -26
  105. package/dist/ErrorReporter.js.map +1 -1
  106. package/dist/ExecutionPlan.d.ts +13 -55
  107. package/dist/ExecutionPlan.d.ts.map +1 -1
  108. package/dist/ExecutionPlan.js +7 -28
  109. package/dist/ExecutionPlan.js.map +1 -1
  110. package/dist/Exit.d.ts +116 -192
  111. package/dist/Exit.d.ts.map +1 -1
  112. package/dist/Exit.js +82 -130
  113. package/dist/Exit.js.map +1 -1
  114. package/dist/Fiber.d.ts +82 -146
  115. package/dist/Fiber.d.ts.map +1 -1
  116. package/dist/Fiber.js +48 -87
  117. package/dist/Fiber.js.map +1 -1
  118. package/dist/FiberHandle.d.ts +152 -105
  119. package/dist/FiberHandle.d.ts.map +1 -1
  120. package/dist/FiberHandle.js +106 -73
  121. package/dist/FiberHandle.js.map +1 -1
  122. package/dist/FiberMap.d.ts +213 -168
  123. package/dist/FiberMap.d.ts.map +1 -1
  124. package/dist/FiberMap.js +114 -89
  125. package/dist/FiberMap.js.map +1 -1
  126. package/dist/FiberSet.d.ts +123 -81
  127. package/dist/FiberSet.d.ts.map +1 -1
  128. package/dist/FiberSet.js +85 -59
  129. package/dist/FiberSet.js.map +1 -1
  130. package/dist/FileSystem.d.ts +153 -264
  131. package/dist/FileSystem.d.ts.map +1 -1
  132. package/dist/FileSystem.js +42 -147
  133. package/dist/FileSystem.js.map +1 -1
  134. package/dist/Filter.d.ts +61 -33
  135. package/dist/Filter.d.ts.map +1 -1
  136. package/dist/Filter.js +26 -15
  137. package/dist/Filter.js.map +1 -1
  138. package/dist/Formatter.d.ts +25 -33
  139. package/dist/Formatter.d.ts.map +1 -1
  140. package/dist/Formatter.js +48 -49
  141. package/dist/Formatter.js.map +1 -1
  142. package/dist/Function.d.ts +76 -145
  143. package/dist/Function.d.ts.map +1 -1
  144. package/dist/Function.js +40 -57
  145. package/dist/Function.js.map +1 -1
  146. package/dist/Graph.d.ts +360 -714
  147. package/dist/Graph.d.ts.map +1 -1
  148. package/dist/Graph.js +168 -297
  149. package/dist/Graph.js.map +1 -1
  150. package/dist/HKT.d.ts +12 -6
  151. package/dist/HKT.d.ts.map +1 -1
  152. package/dist/Hash.d.ts +47 -83
  153. package/dist/Hash.d.ts.map +1 -1
  154. package/dist/Hash.js +46 -68
  155. package/dist/Hash.js.map +1 -1
  156. package/dist/HashMap.d.ts +319 -411
  157. package/dist/HashMap.d.ts.map +1 -1
  158. package/dist/HashMap.js +122 -166
  159. package/dist/HashMap.js.map +1 -1
  160. package/dist/HashRing.d.ts.map +1 -1
  161. package/dist/HashRing.js +1 -0
  162. package/dist/HashRing.js.map +1 -1
  163. package/dist/HashSet.d.ts +177 -284
  164. package/dist/HashSet.d.ts.map +1 -1
  165. package/dist/HashSet.js +68 -109
  166. package/dist/HashSet.js.map +1 -1
  167. package/dist/Inspectable.d.ts +12 -12
  168. package/dist/Inspectable.js +8 -8
  169. package/dist/Inspectable.js.map +1 -1
  170. package/dist/Iterable.d.ts +620 -786
  171. package/dist/Iterable.d.ts.map +1 -1
  172. package/dist/Iterable.js +228 -306
  173. package/dist/Iterable.js.map +1 -1
  174. package/dist/JsonPatch.d.ts +11 -13
  175. package/dist/JsonPatch.d.ts.map +1 -1
  176. package/dist/JsonPatch.js +44 -102
  177. package/dist/JsonPatch.js.map +1 -1
  178. package/dist/JsonPointer.d.ts +8 -8
  179. package/dist/JsonPointer.js +8 -8
  180. package/dist/JsonPointer.js.map +1 -1
  181. package/dist/JsonSchema.d.ts +98 -44
  182. package/dist/JsonSchema.d.ts.map +1 -1
  183. package/dist/JsonSchema.js +297 -234
  184. package/dist/JsonSchema.js.map +1 -1
  185. package/dist/Latch.d.ts +23 -35
  186. package/dist/Latch.d.ts.map +1 -1
  187. package/dist/Latch.js +16 -28
  188. package/dist/Latch.js.map +1 -1
  189. package/dist/Layer.d.ts +359 -260
  190. package/dist/Layer.d.ts.map +1 -1
  191. package/dist/Layer.js +195 -175
  192. package/dist/Layer.js.map +1 -1
  193. package/dist/LayerMap.d.ts +42 -29
  194. package/dist/LayerMap.d.ts.map +1 -1
  195. package/dist/LayerMap.js +31 -21
  196. package/dist/LayerMap.js.map +1 -1
  197. package/dist/LayerRef.d.ts +6 -2
  198. package/dist/LayerRef.d.ts.map +1 -1
  199. package/dist/LayerRef.js +6 -2
  200. package/dist/LayerRef.js.map +1 -1
  201. package/dist/LogLevel.d.ts +114 -214
  202. package/dist/LogLevel.d.ts.map +1 -1
  203. package/dist/LogLevel.js +41 -76
  204. package/dist/LogLevel.js.map +1 -1
  205. package/dist/Logger.d.ts +218 -467
  206. package/dist/Logger.d.ts.map +1 -1
  207. package/dist/Logger.js +204 -450
  208. package/dist/Logger.js.map +1 -1
  209. package/dist/ManagedRuntime.d.ts +7 -5
  210. package/dist/ManagedRuntime.d.ts.map +1 -1
  211. package/dist/ManagedRuntime.js +7 -5
  212. package/dist/ManagedRuntime.js.map +1 -1
  213. package/dist/Match.d.ts +217 -252
  214. package/dist/Match.d.ts.map +1 -1
  215. package/dist/Match.js +150 -183
  216. package/dist/Match.js.map +1 -1
  217. package/dist/Metric.d.ts +442 -993
  218. package/dist/Metric.d.ts.map +1 -1
  219. package/dist/Metric.js +198 -642
  220. package/dist/Metric.js.map +1 -1
  221. package/dist/MutableHashMap.d.ts +144 -173
  222. package/dist/MutableHashMap.d.ts.map +1 -1
  223. package/dist/MutableHashMap.js +68 -79
  224. package/dist/MutableHashMap.js.map +1 -1
  225. package/dist/MutableHashSet.d.ts +84 -89
  226. package/dist/MutableHashSet.d.ts.map +1 -1
  227. package/dist/MutableHashSet.js +44 -47
  228. package/dist/MutableHashSet.js.map +1 -1
  229. package/dist/MutableList.d.ts +71 -370
  230. package/dist/MutableList.d.ts.map +1 -1
  231. package/dist/MutableList.js +59 -284
  232. package/dist/MutableList.js.map +1 -1
  233. package/dist/MutableRef.d.ts +420 -243
  234. package/dist/MutableRef.d.ts.map +1 -1
  235. package/dist/MutableRef.js +209 -120
  236. package/dist/MutableRef.js.map +1 -1
  237. package/dist/Newtype.d.ts +21 -14
  238. package/dist/Newtype.d.ts.map +1 -1
  239. package/dist/Newtype.js +15 -13
  240. package/dist/Newtype.js.map +1 -1
  241. package/dist/NonEmptyIterable.d.ts +7 -137
  242. package/dist/NonEmptyIterable.d.ts.map +1 -1
  243. package/dist/NonEmptyIterable.js +5 -93
  244. package/dist/NonEmptyIterable.js.map +1 -1
  245. package/dist/Number.d.ts +196 -233
  246. package/dist/Number.d.ts.map +1 -1
  247. package/dist/Number.js +90 -109
  248. package/dist/Number.js.map +1 -1
  249. package/dist/Optic.d.ts +97 -189
  250. package/dist/Optic.d.ts.map +1 -1
  251. package/dist/Optic.js +187 -290
  252. package/dist/Optic.js.map +1 -1
  253. package/dist/Option.d.ts +447 -812
  254. package/dist/Option.d.ts.map +1 -1
  255. package/dist/Option.js +211 -392
  256. package/dist/Option.js.map +1 -1
  257. package/dist/Order.d.ts +109 -109
  258. package/dist/Order.js +91 -91
  259. package/dist/Order.js.map +1 -1
  260. package/dist/Ordering.d.ts +20 -23
  261. package/dist/Ordering.d.ts.map +1 -1
  262. package/dist/Ordering.js +8 -9
  263. package/dist/Ordering.js.map +1 -1
  264. package/dist/PartitionedSemaphore.js.map +1 -1
  265. package/dist/Path.d.ts +38 -41
  266. package/dist/Path.d.ts.map +1 -1
  267. package/dist/Path.js +3 -4
  268. package/dist/Path.js.map +1 -1
  269. package/dist/Pipeable.d.ts +6 -5
  270. package/dist/Pipeable.d.ts.map +1 -1
  271. package/dist/Pipeable.js +2 -2
  272. package/dist/Pipeable.js.map +1 -1
  273. package/dist/PlatformError.d.ts +4 -4
  274. package/dist/PlatformError.js +3 -3
  275. package/dist/PlatformError.js.map +1 -1
  276. package/dist/Pool.d.ts +4 -2
  277. package/dist/Pool.d.ts.map +1 -1
  278. package/dist/Pool.js +4 -2
  279. package/dist/Pool.js.map +1 -1
  280. package/dist/Predicate.d.ts +200 -181
  281. package/dist/Predicate.d.ts.map +1 -1
  282. package/dist/Predicate.js +100 -108
  283. package/dist/Predicate.js.map +1 -1
  284. package/dist/PrimaryKey.d.ts +7 -7
  285. package/dist/PrimaryKey.js +5 -5
  286. package/dist/PrimaryKey.js.map +1 -1
  287. package/dist/PubSub.d.ts +425 -494
  288. package/dist/PubSub.d.ts.map +1 -1
  289. package/dist/PubSub.js +373 -362
  290. package/dist/PubSub.js.map +1 -1
  291. package/dist/Pull.d.ts +24 -18
  292. package/dist/Pull.d.ts.map +1 -1
  293. package/dist/Pull.js +11 -9
  294. package/dist/Pull.js.map +1 -1
  295. package/dist/Queue.d.ts +200 -159
  296. package/dist/Queue.d.ts.map +1 -1
  297. package/dist/Queue.js +162 -132
  298. package/dist/Queue.js.map +1 -1
  299. package/dist/Random.d.ts +49 -74
  300. package/dist/Random.d.ts.map +1 -1
  301. package/dist/Random.js +35 -54
  302. package/dist/Random.js.map +1 -1
  303. package/dist/RcMap.d.ts +121 -63
  304. package/dist/RcMap.d.ts.map +1 -1
  305. package/dist/RcMap.js +42 -21
  306. package/dist/RcMap.js.map +1 -1
  307. package/dist/RcRef.d.ts +24 -13
  308. package/dist/RcRef.d.ts.map +1 -1
  309. package/dist/RcRef.js +15 -9
  310. package/dist/RcRef.js.map +1 -1
  311. package/dist/Record.d.ts +291 -488
  312. package/dist/Record.d.ts.map +1 -1
  313. package/dist/Record.js +111 -202
  314. package/dist/Record.js.map +1 -1
  315. package/dist/Redactable.d.ts +6 -2
  316. package/dist/Redactable.d.ts.map +1 -1
  317. package/dist/Redactable.js +7 -2
  318. package/dist/Redactable.js.map +1 -1
  319. package/dist/Redacted.d.ts +25 -25
  320. package/dist/Redacted.d.ts.map +1 -1
  321. package/dist/Redacted.js +19 -20
  322. package/dist/Redacted.js.map +1 -1
  323. package/dist/Reducer.d.ts +8 -15
  324. package/dist/Reducer.d.ts.map +1 -1
  325. package/dist/Reducer.js +6 -12
  326. package/dist/Reducer.js.map +1 -1
  327. package/dist/Ref.d.ts +95 -165
  328. package/dist/Ref.d.ts.map +1 -1
  329. package/dist/Ref.js +75 -122
  330. package/dist/Ref.js.map +1 -1
  331. package/dist/References.d.ts +102 -168
  332. package/dist/References.d.ts.map +1 -1
  333. package/dist/References.js +102 -168
  334. package/dist/References.js.map +1 -1
  335. package/dist/RegExp.d.ts +10 -14
  336. package/dist/RegExp.d.ts.map +1 -1
  337. package/dist/RegExp.js +10 -14
  338. package/dist/RegExp.js.map +1 -1
  339. package/dist/Request.d.ts +31 -21
  340. package/dist/Request.d.ts.map +1 -1
  341. package/dist/Request.js +16 -13
  342. package/dist/Request.js.map +1 -1
  343. package/dist/RequestResolver.d.ts +201 -90
  344. package/dist/RequestResolver.d.ts.map +1 -1
  345. package/dist/RequestResolver.js +87 -41
  346. package/dist/RequestResolver.js.map +1 -1
  347. package/dist/Resource.js.map +1 -1
  348. package/dist/Result.d.ts +302 -470
  349. package/dist/Result.d.ts.map +1 -1
  350. package/dist/Result.js +133 -217
  351. package/dist/Result.js.map +1 -1
  352. package/dist/Runtime.d.ts +50 -75
  353. package/dist/Runtime.d.ts.map +1 -1
  354. package/dist/Runtime.js +39 -60
  355. package/dist/Runtime.js.map +1 -1
  356. package/dist/Schedule.d.ts +290 -1636
  357. package/dist/Schedule.d.ts.map +1 -1
  358. package/dist/Schedule.js +162 -803
  359. package/dist/Schedule.js.map +1 -1
  360. package/dist/Scheduler.d.ts +5 -5
  361. package/dist/Scheduler.d.ts.map +1 -1
  362. package/dist/Scheduler.js +18 -6
  363. package/dist/Scheduler.js.map +1 -1
  364. package/dist/Schema.d.ts +644 -642
  365. package/dist/Schema.d.ts.map +1 -1
  366. package/dist/Schema.js +491 -527
  367. package/dist/Schema.js.map +1 -1
  368. package/dist/SchemaAST.d.ts +27 -50
  369. package/dist/SchemaAST.d.ts.map +1 -1
  370. package/dist/SchemaAST.js +366 -279
  371. package/dist/SchemaAST.js.map +1 -1
  372. package/dist/SchemaError.d.ts +7 -6
  373. package/dist/SchemaError.d.ts.map +1 -1
  374. package/dist/SchemaError.js +7 -6
  375. package/dist/SchemaError.js.map +1 -1
  376. package/dist/SchemaGetter.d.ts +217 -174
  377. package/dist/SchemaGetter.d.ts.map +1 -1
  378. package/dist/SchemaGetter.js +218 -185
  379. package/dist/SchemaGetter.js.map +1 -1
  380. package/dist/SchemaIssue.d.ts +62 -190
  381. package/dist/SchemaIssue.d.ts.map +1 -1
  382. package/dist/SchemaIssue.js +73 -265
  383. package/dist/SchemaIssue.js.map +1 -1
  384. package/dist/SchemaParser.d.ts +2 -2
  385. package/dist/SchemaParser.d.ts.map +1 -1
  386. package/dist/SchemaParser.js +123 -75
  387. package/dist/SchemaParser.js.map +1 -1
  388. package/dist/SchemaRepresentation.d.ts +22 -36
  389. package/dist/SchemaRepresentation.d.ts.map +1 -1
  390. package/dist/SchemaRepresentation.js +20 -26
  391. package/dist/SchemaRepresentation.js.map +1 -1
  392. package/dist/SchemaTransformation.d.ts +114 -74
  393. package/dist/SchemaTransformation.d.ts.map +1 -1
  394. package/dist/SchemaTransformation.js +120 -85
  395. package/dist/SchemaTransformation.js.map +1 -1
  396. package/dist/Scope.d.ts +123 -151
  397. package/dist/Scope.d.ts.map +1 -1
  398. package/dist/Scope.js +72 -92
  399. package/dist/Scope.js.map +1 -1
  400. package/dist/ScopedCache.js.map +1 -1
  401. package/dist/ScopedRef.d.ts +3 -3
  402. package/dist/ScopedRef.js +2 -2
  403. package/dist/ScopedRef.js.map +1 -1
  404. package/dist/Semaphore.d.ts +96 -10
  405. package/dist/Semaphore.d.ts.map +1 -1
  406. package/dist/Semaphore.js +78 -39
  407. package/dist/Semaphore.js.map +1 -1
  408. package/dist/Sink.d.ts +117 -107
  409. package/dist/Sink.d.ts.map +1 -1
  410. package/dist/Sink.js +107 -100
  411. package/dist/Sink.js.map +1 -1
  412. package/dist/Stdio.d.ts +1 -1
  413. package/dist/Stdio.js.map +1 -1
  414. package/dist/Stream.d.ts +2415 -2949
  415. package/dist/Stream.d.ts.map +1 -1
  416. package/dist/Stream.js +1078 -1381
  417. package/dist/Stream.js.map +1 -1
  418. package/dist/String.d.ts +262 -308
  419. package/dist/String.d.ts.map +1 -1
  420. package/dist/String.js +184 -215
  421. package/dist/String.js.map +1 -1
  422. package/dist/Struct.d.ts +109 -114
  423. package/dist/Struct.d.ts.map +1 -1
  424. package/dist/Struct.js +41 -50
  425. package/dist/Struct.js.map +1 -1
  426. package/dist/SubscriptionRef.d.ts +282 -250
  427. package/dist/SubscriptionRef.d.ts.map +1 -1
  428. package/dist/SubscriptionRef.js +104 -92
  429. package/dist/SubscriptionRef.js.map +1 -1
  430. package/dist/Symbol.d.ts +3 -3
  431. package/dist/Symbol.js +3 -3
  432. package/dist/Symbol.js.map +1 -1
  433. package/dist/SynchronizedRef.js.map +1 -1
  434. package/dist/Take.js.map +1 -1
  435. package/dist/Terminal.d.ts +2 -2
  436. package/dist/Terminal.js +1 -1
  437. package/dist/Terminal.js.map +1 -1
  438. package/dist/Tracer.d.ts +100 -54
  439. package/dist/Tracer.d.ts.map +1 -1
  440. package/dist/Tracer.js +41 -24
  441. package/dist/Tracer.js.map +1 -1
  442. package/dist/Trie.d.ts +287 -679
  443. package/dist/Trie.d.ts.map +1 -1
  444. package/dist/Trie.js +109 -251
  445. package/dist/Trie.js.map +1 -1
  446. package/dist/Tuple.d.ts +92 -127
  447. package/dist/Tuple.d.ts.map +1 -1
  448. package/dist/Tuple.js +42 -57
  449. package/dist/Tuple.js.map +1 -1
  450. package/dist/TxChunk.d.ts +201 -121
  451. package/dist/TxChunk.d.ts.map +1 -1
  452. package/dist/TxChunk.js +85 -56
  453. package/dist/TxChunk.js.map +1 -1
  454. package/dist/TxDeferred.d.ts +62 -46
  455. package/dist/TxDeferred.d.ts.map +1 -1
  456. package/dist/TxDeferred.js +30 -22
  457. package/dist/TxDeferred.js.map +1 -1
  458. package/dist/TxHashMap.d.ts +631 -779
  459. package/dist/TxHashMap.d.ts.map +1 -1
  460. package/dist/TxHashMap.js +268 -330
  461. package/dist/TxHashMap.js.map +1 -1
  462. package/dist/TxHashSet.d.ts +297 -236
  463. package/dist/TxHashSet.d.ts.map +1 -1
  464. package/dist/TxHashSet.js +130 -100
  465. package/dist/TxHashSet.js.map +1 -1
  466. package/dist/TxPriorityQueue.d.ts +126 -95
  467. package/dist/TxPriorityQueue.d.ts.map +1 -1
  468. package/dist/TxPriorityQueue.js +74 -56
  469. package/dist/TxPriorityQueue.js.map +1 -1
  470. package/dist/TxPubSub.d.ts +101 -88
  471. package/dist/TxPubSub.d.ts.map +1 -1
  472. package/dist/TxPubSub.js +87 -66
  473. package/dist/TxPubSub.js.map +1 -1
  474. package/dist/TxQueue.d.ts +200 -180
  475. package/dist/TxQueue.d.ts.map +1 -1
  476. package/dist/TxQueue.js +160 -136
  477. package/dist/TxQueue.js.map +1 -1
  478. package/dist/TxReentrantLock.d.ts +97 -66
  479. package/dist/TxReentrantLock.d.ts.map +1 -1
  480. package/dist/TxReentrantLock.js +67 -45
  481. package/dist/TxReentrantLock.js.map +1 -1
  482. package/dist/TxRef.d.ts +51 -32
  483. package/dist/TxRef.d.ts.map +1 -1
  484. package/dist/TxRef.js +23 -15
  485. package/dist/TxRef.js.map +1 -1
  486. package/dist/TxSemaphore.d.ts +129 -95
  487. package/dist/TxSemaphore.d.ts.map +1 -1
  488. package/dist/TxSemaphore.js +85 -70
  489. package/dist/TxSemaphore.js.map +1 -1
  490. package/dist/TxSubscriptionRef.d.ts +97 -70
  491. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  492. package/dist/TxSubscriptionRef.js +44 -34
  493. package/dist/TxSubscriptionRef.js.map +1 -1
  494. package/dist/Types.d.ts +126 -67
  495. package/dist/Types.d.ts.map +1 -1
  496. package/dist/UndefinedOr.js.map +1 -1
  497. package/dist/Unify.d.ts +45 -65
  498. package/dist/Unify.d.ts.map +1 -1
  499. package/dist/Unify.js +6 -9
  500. package/dist/Unify.js.map +1 -1
  501. package/dist/Utils.d.ts +23 -16
  502. package/dist/Utils.d.ts.map +1 -1
  503. package/dist/Utils.js +3 -7
  504. package/dist/Utils.js.map +1 -1
  505. package/dist/index.js.map +1 -1
  506. package/dist/internal/array.js.map +1 -1
  507. package/dist/internal/core.js +1 -1
  508. package/dist/internal/core.js.map +1 -1
  509. package/dist/internal/dateTime.js +4 -0
  510. package/dist/internal/dateTime.js.map +1 -1
  511. package/dist/internal/doNotation.js.map +1 -1
  512. package/dist/internal/effect.js +77 -40
  513. package/dist/internal/effect.js.map +1 -1
  514. package/dist/internal/equal.js.map +1 -1
  515. package/dist/internal/errors.js.map +1 -1
  516. package/dist/internal/executionPlan.js.map +1 -1
  517. package/dist/internal/hashMap.js.map +1 -1
  518. package/dist/internal/hashSet.js.map +1 -1
  519. package/dist/internal/layer.js.map +1 -1
  520. package/dist/internal/matcher.js.map +1 -1
  521. package/dist/internal/metric.js.map +1 -1
  522. package/dist/internal/option.js.map +1 -1
  523. package/dist/internal/persistence.d.ts +2 -0
  524. package/dist/internal/persistence.d.ts.map +1 -0
  525. package/dist/internal/persistence.js +3 -0
  526. package/dist/internal/persistence.js.map +1 -0
  527. package/dist/internal/random.js.map +1 -1
  528. package/dist/internal/rcRef.js.map +1 -1
  529. package/dist/internal/record.js.map +1 -1
  530. package/dist/internal/redacted.js.map +1 -1
  531. package/dist/internal/references.js +3 -0
  532. package/dist/internal/references.js.map +1 -1
  533. package/dist/internal/request.js.map +1 -1
  534. package/dist/internal/result.js.map +1 -1
  535. package/dist/internal/schedule.js.map +1 -1
  536. package/dist/internal/schema/annotations.js.map +1 -1
  537. package/dist/internal/schema/cause.js.map +1 -1
  538. package/dist/internal/schema/fromJsonSchemaDocument.js +13 -11
  539. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
  540. package/dist/internal/schema/fromRepresentation.js +8 -15
  541. package/dist/internal/schema/fromRepresentation.js.map +1 -1
  542. package/dist/internal/schema/parser.d.ts +14 -0
  543. package/dist/internal/schema/parser.d.ts.map +1 -0
  544. package/dist/internal/schema/parser.js +13 -0
  545. package/dist/internal/schema/parser.js.map +1 -0
  546. package/dist/internal/schema/schema.js.map +1 -1
  547. package/dist/internal/schema/toArbitrary.js.map +1 -1
  548. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  549. package/dist/internal/schema/toEquivalence.js.map +1 -1
  550. package/dist/internal/schema/toJsonSchemaDocument.js +48 -6
  551. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
  552. package/dist/internal/schema/toRepresentation.js +87 -107
  553. package/dist/internal/schema/toRepresentation.js.map +1 -1
  554. package/dist/internal/stackTraceLimit.js.map +1 -1
  555. package/dist/internal/stream.js.map +1 -1
  556. package/dist/internal/tracer.js.map +1 -1
  557. package/dist/internal/trie.js +13 -9
  558. package/dist/internal/trie.js.map +1 -1
  559. package/dist/testing/FastCheck.d.ts +8 -7
  560. package/dist/testing/FastCheck.d.ts.map +1 -1
  561. package/dist/testing/FastCheck.js +8 -7
  562. package/dist/testing/FastCheck.js.map +1 -1
  563. package/dist/testing/TestClock.d.ts +57 -28
  564. package/dist/testing/TestClock.d.ts.map +1 -1
  565. package/dist/testing/TestClock.js +50 -18
  566. package/dist/testing/TestClock.js.map +1 -1
  567. package/dist/testing/TestConsole.d.ts +32 -31
  568. package/dist/testing/TestConsole.d.ts.map +1 -1
  569. package/dist/testing/TestConsole.js +24 -22
  570. package/dist/testing/TestConsole.js.map +1 -1
  571. package/dist/testing/TestSchema.d.ts +29 -29
  572. package/dist/testing/TestSchema.js +25 -25
  573. package/dist/testing/TestSchema.js.map +1 -1
  574. package/dist/testing/index.js.map +1 -1
  575. package/dist/unstable/ai/AiError.d.ts +95 -118
  576. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  577. package/dist/unstable/ai/AiError.js +94 -117
  578. package/dist/unstable/ai/AiError.js.map +1 -1
  579. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  580. package/dist/unstable/ai/AnthropicStructuredOutput.js +1 -1
  581. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  582. package/dist/unstable/ai/Chat.d.ts +132 -97
  583. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  584. package/dist/unstable/ai/Chat.js +55 -51
  585. package/dist/unstable/ai/Chat.js.map +1 -1
  586. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  587. package/dist/unstable/ai/IdGenerator.d.ts +32 -28
  588. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  589. package/dist/unstable/ai/IdGenerator.js +26 -21
  590. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  591. package/dist/unstable/ai/LanguageModel.d.ts +107 -67
  592. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  593. package/dist/unstable/ai/LanguageModel.js +104 -64
  594. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  595. package/dist/unstable/ai/McpProtocol.d.ts +30 -0
  596. package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
  597. package/dist/unstable/ai/McpProtocol.js +20 -0
  598. package/dist/unstable/ai/McpProtocol.js.map +1 -0
  599. package/dist/unstable/ai/McpSchema.d.ts +141 -75
  600. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  601. package/dist/unstable/ai/McpSchema.js +58 -50
  602. package/dist/unstable/ai/McpSchema.js.map +1 -1
  603. package/dist/unstable/ai/McpServer.d.ts +68 -59
  604. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  605. package/dist/unstable/ai/McpServer.js +694 -241
  606. package/dist/unstable/ai/McpServer.js.map +1 -1
  607. package/dist/unstable/ai/Model.d.ts +8 -19
  608. package/dist/unstable/ai/Model.d.ts.map +1 -1
  609. package/dist/unstable/ai/Model.js +9 -20
  610. package/dist/unstable/ai/Model.js.map +1 -1
  611. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  612. package/dist/unstable/ai/OpenAiStructuredOutput.js +1 -1
  613. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  614. package/dist/unstable/ai/Prompt.d.ts +112 -38
  615. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  616. package/dist/unstable/ai/Prompt.js +53 -17
  617. package/dist/unstable/ai/Prompt.js.map +1 -1
  618. package/dist/unstable/ai/Response.d.ts +28 -14
  619. package/dist/unstable/ai/Response.d.ts.map +1 -1
  620. package/dist/unstable/ai/Response.js +9 -4
  621. package/dist/unstable/ai/Response.js.map +1 -1
  622. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  623. package/dist/unstable/ai/Telemetry.d.ts +46 -13
  624. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  625. package/dist/unstable/ai/Telemetry.js +18 -7
  626. package/dist/unstable/ai/Telemetry.js.map +1 -1
  627. package/dist/unstable/ai/Tokenizer.d.ts +14 -3
  628. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  629. package/dist/unstable/ai/Tokenizer.js +10 -2
  630. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  631. package/dist/unstable/ai/Tool.d.ts +59 -44
  632. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  633. package/dist/unstable/ai/Tool.js +48 -39
  634. package/dist/unstable/ai/Tool.js.map +1 -1
  635. package/dist/unstable/ai/Toolkit.d.ts +26 -8
  636. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  637. package/dist/unstable/ai/Toolkit.js +18 -4
  638. package/dist/unstable/ai/Toolkit.js.map +1 -1
  639. package/dist/unstable/ai/index.d.ts +4 -0
  640. package/dist/unstable/ai/index.d.ts.map +1 -1
  641. package/dist/unstable/ai/index.js +4 -0
  642. package/dist/unstable/ai/index.js.map +1 -1
  643. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  644. package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
  645. package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
  646. package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
  647. package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
  648. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
  649. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
  650. package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
  651. package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
  652. package/dist/unstable/ai/internal/structured-output.js +14 -15
  653. package/dist/unstable/ai/internal/structured-output.js.map +1 -1
  654. package/dist/unstable/cli/Argument.d.ts +273 -69
  655. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  656. package/dist/unstable/cli/Argument.js +111 -33
  657. package/dist/unstable/cli/Argument.js.map +1 -1
  658. package/dist/unstable/cli/CliConfig.js.map +1 -1
  659. package/dist/unstable/cli/CliError.d.ts +69 -76
  660. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  661. package/dist/unstable/cli/CliError.js +57 -61
  662. package/dist/unstable/cli/CliError.js.map +1 -1
  663. package/dist/unstable/cli/CliOutput.d.ts +35 -54
  664. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  665. package/dist/unstable/cli/CliOutput.js +26 -42
  666. package/dist/unstable/cli/CliOutput.js.map +1 -1
  667. package/dist/unstable/cli/Command.d.ts +705 -107
  668. package/dist/unstable/cli/Command.d.ts.map +1 -1
  669. package/dist/unstable/cli/Command.js +238 -42
  670. package/dist/unstable/cli/Command.js.map +1 -1
  671. package/dist/unstable/cli/Completions.js.map +1 -1
  672. package/dist/unstable/cli/Flag.d.ts +418 -138
  673. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  674. package/dist/unstable/cli/Flag.js +197 -71
  675. package/dist/unstable/cli/Flag.js.map +1 -1
  676. package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
  677. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  678. package/dist/unstable/cli/HelpDoc.d.ts +12 -4
  679. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  680. package/dist/unstable/cli/Param.d.ts +292 -78
  681. package/dist/unstable/cli/Param.d.ts.map +1 -1
  682. package/dist/unstable/cli/Param.js +128 -46
  683. package/dist/unstable/cli/Param.js.map +1 -1
  684. package/dist/unstable/cli/Primitive.d.ts +370 -149
  685. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  686. package/dist/unstable/cli/Primitive.js +344 -136
  687. package/dist/unstable/cli/Primitive.js.map +1 -1
  688. package/dist/unstable/cli/Prompt.d.ts +23 -14
  689. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  690. package/dist/unstable/cli/Prompt.js +23 -14
  691. package/dist/unstable/cli/Prompt.js.map +1 -1
  692. package/dist/unstable/cli/index.js.map +1 -1
  693. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  694. package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
  695. package/dist/unstable/cli/internal/command.js.map +1 -1
  696. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  697. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
  698. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  699. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  700. package/dist/unstable/cli/internal/config.js.map +1 -1
  701. package/dist/unstable/cli/internal/help.js.map +1 -1
  702. package/dist/unstable/cli/internal/lexer.js +17 -7
  703. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  704. package/dist/unstable/cli/internal/parser.js +2 -2
  705. package/dist/unstable/cli/internal/parser.js.map +1 -1
  706. package/dist/unstable/cli/internal/wizard.js.map +1 -1
  707. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  708. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  709. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  710. package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
  711. package/dist/unstable/cluster/ClusterSchema.js +8 -8
  712. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  713. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  714. package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -1
  715. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  716. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  717. package/dist/unstable/cluster/Entity.d.ts +10 -10
  718. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  719. package/dist/unstable/cluster/Entity.js +8 -8
  720. package/dist/unstable/cluster/Entity.js.map +1 -1
  721. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  722. package/dist/unstable/cluster/EntityId.js.map +1 -1
  723. package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
  724. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  725. package/dist/unstable/cluster/EntityProxy.js +4 -2
  726. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  727. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  728. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  729. package/dist/unstable/cluster/EntityResource.js +2 -2
  730. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  731. package/dist/unstable/cluster/EntityType.js.map +1 -1
  732. package/dist/unstable/cluster/Envelope.d.ts +3 -3
  733. package/dist/unstable/cluster/Envelope.js +3 -3
  734. package/dist/unstable/cluster/Envelope.js.map +1 -1
  735. package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
  736. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  737. package/dist/unstable/cluster/HttpRunner.js +6 -4
  738. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  739. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  740. package/dist/unstable/cluster/MachineId.js.map +1 -1
  741. package/dist/unstable/cluster/Message.d.ts +9 -9
  742. package/dist/unstable/cluster/Message.js +6 -6
  743. package/dist/unstable/cluster/Message.js.map +1 -1
  744. package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
  745. package/dist/unstable/cluster/MessageStorage.js +5 -5
  746. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  747. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  748. package/dist/unstable/cluster/Reply.js +4 -4
  749. package/dist/unstable/cluster/Reply.js.map +1 -1
  750. package/dist/unstable/cluster/Runner.js.map +1 -1
  751. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  752. package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
  753. package/dist/unstable/cluster/RunnerHealth.js +1 -1
  754. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  755. package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
  756. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  757. package/dist/unstable/cluster/RunnerServer.js +16 -16
  758. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  759. package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
  760. package/dist/unstable/cluster/RunnerStorage.js +1 -1
  761. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  762. package/dist/unstable/cluster/Runners.d.ts +6 -6
  763. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  764. package/dist/unstable/cluster/Runners.js +19 -10
  765. package/dist/unstable/cluster/Runners.js.map +1 -1
  766. package/dist/unstable/cluster/ShardId.js.map +1 -1
  767. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  768. package/dist/unstable/cluster/Sharding.js +3 -2
  769. package/dist/unstable/cluster/Sharding.js.map +1 -1
  770. package/dist/unstable/cluster/ShardingConfig.d.ts +3 -3
  771. package/dist/unstable/cluster/ShardingConfig.js +3 -3
  772. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  773. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  774. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  775. package/dist/unstable/cluster/Singleton.js.map +1 -1
  776. package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
  777. package/dist/unstable/cluster/SingletonAddress.js +1 -1
  778. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  779. package/dist/unstable/cluster/Snowflake.d.ts +8 -8
  780. package/dist/unstable/cluster/Snowflake.js +8 -8
  781. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  782. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  783. package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
  784. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  785. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  786. package/dist/unstable/cluster/SqlRunnerStorage.js +20 -5
  787. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  788. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  789. package/dist/unstable/cluster/index.js.map +1 -1
  790. package/dist/unstable/cluster/internal/entityManager.js +5 -5
  791. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  792. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  793. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  794. package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
  795. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  796. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  797. package/dist/unstable/cluster/internal/shardLock.js.map +1 -1
  798. package/dist/unstable/devtools/DevTools.js.map +1 -1
  799. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  800. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  801. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  802. package/dist/unstable/devtools/index.js.map +1 -1
  803. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  804. package/dist/unstable/encoding/Msgpack.js +6 -8
  805. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  806. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  807. package/dist/unstable/encoding/Sse.d.ts +72 -8
  808. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  809. package/dist/unstable/encoding/Sse.js +58 -8
  810. package/dist/unstable/encoding/Sse.js.map +1 -1
  811. package/dist/unstable/encoding/index.js.map +1 -1
  812. package/dist/unstable/eventlog/Event.d.ts +20 -20
  813. package/dist/unstable/eventlog/Event.js.map +1 -1
  814. package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
  815. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  816. package/dist/unstable/eventlog/EventJournal.d.ts +15 -15
  817. package/dist/unstable/eventlog/EventJournal.js +13 -13
  818. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  819. package/dist/unstable/eventlog/EventLog.d.ts +3 -3
  820. package/dist/unstable/eventlog/EventLog.js +3 -3
  821. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  822. package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
  823. package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
  824. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  825. package/dist/unstable/eventlog/EventLogMessage.d.ts +2 -2
  826. package/dist/unstable/eventlog/EventLogMessage.js +1 -1
  827. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  828. package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
  829. package/dist/unstable/eventlog/EventLogRemote.js +1 -1
  830. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  831. package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
  832. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  833. package/dist/unstable/eventlog/EventLogServer.js +45 -21
  834. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  835. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
  836. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  837. package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
  838. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  839. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
  840. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  841. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
  842. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  843. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
  844. package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
  845. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  846. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  847. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  848. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  849. package/dist/unstable/eventlog/index.js.map +1 -1
  850. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  851. package/dist/unstable/http/Cookies.d.ts +2 -2
  852. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  853. package/dist/unstable/http/Cookies.js +30 -18
  854. package/dist/unstable/http/Cookies.js.map +1 -1
  855. package/dist/unstable/http/Etag.d.ts +1 -1
  856. package/dist/unstable/http/Etag.js +1 -1
  857. package/dist/unstable/http/Etag.js.map +1 -1
  858. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  859. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  860. package/dist/unstable/http/Headers.d.ts +2 -2
  861. package/dist/unstable/http/Headers.js +2 -2
  862. package/dist/unstable/http/Headers.js.map +1 -1
  863. package/dist/unstable/http/HttpBody.d.ts +5 -3
  864. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  865. package/dist/unstable/http/HttpBody.js +11 -5
  866. package/dist/unstable/http/HttpBody.js.map +1 -1
  867. package/dist/unstable/http/HttpClient.d.ts +51 -44
  868. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  869. package/dist/unstable/http/HttpClient.js +46 -17
  870. package/dist/unstable/http/HttpClient.js.map +1 -1
  871. package/dist/unstable/http/HttpClientError.js.map +1 -1
  872. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  873. package/dist/unstable/http/HttpClientRequest.js +2 -0
  874. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  875. package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
  876. package/dist/unstable/http/HttpClientResponse.js +2 -2
  877. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  878. package/dist/unstable/http/HttpEffect.d.ts +6 -6
  879. package/dist/unstable/http/HttpEffect.js +3 -3
  880. package/dist/unstable/http/HttpEffect.js.map +1 -1
  881. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  882. package/dist/unstable/http/HttpMethod.d.ts +6 -9
  883. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  884. package/dist/unstable/http/HttpMethod.js +6 -9
  885. package/dist/unstable/http/HttpMethod.js.map +1 -1
  886. package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
  887. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  888. package/dist/unstable/http/HttpMiddleware.js +164 -39
  889. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  890. package/dist/unstable/http/HttpPlatform.d.ts +76 -0
  891. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  892. package/dist/unstable/http/HttpPlatform.js +32 -0
  893. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  894. package/dist/unstable/http/HttpRouter.d.ts +88 -89
  895. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  896. package/dist/unstable/http/HttpRouter.js +78 -79
  897. package/dist/unstable/http/HttpRouter.js.map +1 -1
  898. package/dist/unstable/http/HttpServer.d.ts +13 -13
  899. package/dist/unstable/http/HttpServer.js +6 -6
  900. package/dist/unstable/http/HttpServer.js.map +1 -1
  901. package/dist/unstable/http/HttpServerError.d.ts +2 -2
  902. package/dist/unstable/http/HttpServerError.js +2 -2
  903. package/dist/unstable/http/HttpServerError.js.map +1 -1
  904. package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
  905. package/dist/unstable/http/HttpServerRequest.js +4 -4
  906. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  907. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  908. package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
  909. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  910. package/dist/unstable/http/HttpServerResponse.js +10 -0
  911. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  912. package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
  913. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  914. package/dist/unstable/http/HttpStaticServer.js +35 -7
  915. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  916. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  917. package/dist/unstable/http/Multipart.d.ts +6 -6
  918. package/dist/unstable/http/Multipart.js +5 -5
  919. package/dist/unstable/http/Multipart.js.map +1 -1
  920. package/dist/unstable/http/Template.js.map +1 -1
  921. package/dist/unstable/http/Url.d.ts +33 -63
  922. package/dist/unstable/http/Url.d.ts.map +1 -1
  923. package/dist/unstable/http/Url.js +14 -28
  924. package/dist/unstable/http/Url.js.map +1 -1
  925. package/dist/unstable/http/UrlParams.d.ts +10 -18
  926. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  927. package/dist/unstable/http/UrlParams.js +9 -17
  928. package/dist/unstable/http/UrlParams.js.map +1 -1
  929. package/dist/unstable/http/index.js.map +1 -1
  930. package/dist/unstable/http/internal/compression.d.ts +2 -0
  931. package/dist/unstable/http/internal/compression.d.ts.map +1 -0
  932. package/dist/unstable/http/internal/compression.js +155 -0
  933. package/dist/unstable/http/internal/compression.js.map +1 -0
  934. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
  935. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  936. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
  937. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  938. package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
  939. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  940. package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
  941. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  942. package/dist/unstable/httpapi/HttpApiClient.js +11 -13
  943. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  944. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
  945. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  946. package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
  947. package/dist/unstable/httpapi/HttpApiError.js +13 -13
  948. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  949. package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
  950. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  951. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
  952. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  953. package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
  954. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  955. package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
  956. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  957. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  958. package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
  959. package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
  960. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  961. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  962. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  963. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  964. package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
  965. package/dist/unstable/httpapi/OpenApi.js +13 -13
  966. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  967. package/dist/unstable/httpapi/index.js.map +1 -1
  968. package/dist/unstable/httpapi/internal/html.js.map +1 -1
  969. package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
  970. package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
  971. package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
  972. package/dist/unstable/observability/Otlp.js.map +1 -1
  973. package/dist/unstable/observability/OtlpExporter.d.ts +12 -14
  974. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  975. package/dist/unstable/observability/OtlpExporter.js +17 -4
  976. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  977. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  978. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -1
  979. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  980. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  981. package/dist/unstable/observability/OtlpResource.d.ts +16 -7
  982. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  983. package/dist/unstable/observability/OtlpResource.js +21 -12
  984. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  985. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  986. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  987. package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
  988. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  989. package/dist/unstable/observability/PrometheusMetrics.js +10 -3
  990. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  991. package/dist/unstable/observability/index.js.map +1 -1
  992. package/dist/unstable/observability/internal/otlpEnv.js +1 -1
  993. package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
  994. package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
  995. package/dist/unstable/observability/internal/protobuf.js +3 -0
  996. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  997. package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
  998. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  999. package/dist/unstable/persistence/KeyValueStore.js +22 -13
  1000. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1001. package/dist/unstable/persistence/Persistable.d.ts +8 -8
  1002. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1003. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1004. package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
  1005. package/dist/unstable/persistence/PersistedQueue.js +6 -6
  1006. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1007. package/dist/unstable/persistence/Persistence.d.ts +3 -3
  1008. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1009. package/dist/unstable/persistence/Persistence.js +91 -15
  1010. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1011. package/dist/unstable/persistence/RateLimiter.d.ts +26 -15
  1012. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1013. package/dist/unstable/persistence/RateLimiter.js +24 -13
  1014. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1015. package/dist/unstable/persistence/Redis.d.ts +2 -2
  1016. package/dist/unstable/persistence/Redis.js +1 -1
  1017. package/dist/unstable/persistence/Redis.js.map +1 -1
  1018. package/dist/unstable/persistence/index.js.map +1 -1
  1019. package/dist/unstable/process/ChildProcess.d.ts +64 -21
  1020. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1021. package/dist/unstable/process/ChildProcess.js +14 -5
  1022. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1023. package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
  1024. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1025. package/dist/unstable/process/ChildProcessSpawner.js +1 -1
  1026. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1027. package/dist/unstable/process/index.js.map +1 -1
  1028. package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
  1029. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1030. package/dist/unstable/reactivity/AsyncResult.js +10 -10
  1031. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1032. package/dist/unstable/reactivity/Atom.d.ts +25 -22
  1033. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1034. package/dist/unstable/reactivity/Atom.js +14 -13
  1035. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1036. package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
  1037. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1038. package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
  1039. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1040. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1041. package/dist/unstable/reactivity/AtomRegistry.js +24 -3
  1042. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1043. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  1044. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1045. package/dist/unstable/reactivity/AtomRpc.js +4 -1
  1046. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1047. package/dist/unstable/reactivity/Hydration.d.ts +1 -1
  1048. package/dist/unstable/reactivity/Hydration.js +1 -1
  1049. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1050. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1051. package/dist/unstable/reactivity/index.js.map +1 -1
  1052. package/dist/unstable/rpc/Rpc.d.ts +35 -33
  1053. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1054. package/dist/unstable/rpc/Rpc.js +4 -2
  1055. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1056. package/dist/unstable/rpc/RpcClient.d.ts +12 -12
  1057. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1058. package/dist/unstable/rpc/RpcClient.js +12 -11
  1059. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1060. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1061. package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
  1062. package/dist/unstable/rpc/RpcGroup.js +1 -1
  1063. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1064. package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
  1065. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1066. package/dist/unstable/rpc/RpcMessage.js +6 -6
  1067. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1068. package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
  1069. package/dist/unstable/rpc/RpcMiddleware.js +1 -1
  1070. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1071. package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
  1072. package/dist/unstable/rpc/RpcSchema.js +3 -3
  1073. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1074. package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
  1075. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1076. package/dist/unstable/rpc/RpcSerialization.js +175 -96
  1077. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1078. package/dist/unstable/rpc/RpcServer.d.ts +13 -13
  1079. package/dist/unstable/rpc/RpcServer.js +17 -13
  1080. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1081. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1082. package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
  1083. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1084. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1085. package/dist/unstable/rpc/Utils.js.map +1 -1
  1086. package/dist/unstable/rpc/index.js.map +1 -1
  1087. package/dist/unstable/schema/Model.d.ts +52 -50
  1088. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1089. package/dist/unstable/schema/Model.js +35 -33
  1090. package/dist/unstable/schema/Model.js.map +1 -1
  1091. package/dist/unstable/schema/VariantSchema.d.ts +5 -5
  1092. package/dist/unstable/schema/VariantSchema.js +2 -2
  1093. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1094. package/dist/unstable/schema/index.js.map +1 -1
  1095. package/dist/unstable/socket/Socket.d.ts +11 -3
  1096. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1097. package/dist/unstable/socket/Socket.js +9 -4
  1098. package/dist/unstable/socket/Socket.js.map +1 -1
  1099. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1100. package/dist/unstable/socket/index.js.map +1 -1
  1101. package/dist/unstable/sql/Migrator.js.map +1 -1
  1102. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  1103. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1104. package/dist/unstable/sql/SqlClient.js +2 -2
  1105. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1106. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1107. package/dist/unstable/sql/SqlError.js.map +1 -1
  1108. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  1109. package/dist/unstable/sql/SqlModel.js +2 -2
  1110. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1111. package/dist/unstable/sql/SqlResolver.d.ts +5 -5
  1112. package/dist/unstable/sql/SqlResolver.js +2 -2
  1113. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1114. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1115. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1116. package/dist/unstable/sql/Statement.d.ts +6 -6
  1117. package/dist/unstable/sql/Statement.js +15 -15
  1118. package/dist/unstable/sql/Statement.js.map +1 -1
  1119. package/dist/unstable/sql/index.js.map +1 -1
  1120. package/dist/unstable/workers/Transferable.d.ts +1 -1
  1121. package/dist/unstable/workers/Transferable.js +1 -1
  1122. package/dist/unstable/workers/Transferable.js.map +1 -1
  1123. package/dist/unstable/workers/Worker.d.ts +2 -2
  1124. package/dist/unstable/workers/Worker.js +2 -2
  1125. package/dist/unstable/workers/Worker.js.map +1 -1
  1126. package/dist/unstable/workers/WorkerError.d.ts +7 -7
  1127. package/dist/unstable/workers/WorkerError.js +6 -6
  1128. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1129. package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
  1130. package/dist/unstable/workers/WorkerRunner.js +1 -1
  1131. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1132. package/dist/unstable/workers/index.js.map +1 -1
  1133. package/dist/unstable/workflow/Activity.d.ts +2 -2
  1134. package/dist/unstable/workflow/Activity.js +2 -2
  1135. package/dist/unstable/workflow/Activity.js.map +1 -1
  1136. package/dist/unstable/workflow/DurableClock.d.ts +1 -1
  1137. package/dist/unstable/workflow/DurableClock.js +1 -1
  1138. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1139. package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
  1140. package/dist/unstable/workflow/DurableDeferred.js +5 -5
  1141. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1142. package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
  1143. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  1144. package/dist/unstable/workflow/DurableQueue.js +22 -20
  1145. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  1146. package/dist/unstable/workflow/Workflow.d.ts +21 -21
  1147. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1148. package/dist/unstable/workflow/Workflow.js +13 -14
  1149. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1150. package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
  1151. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1152. package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
  1153. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1154. package/dist/unstable/workflow/WorkflowProxy.js +4 -2
  1155. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1156. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1157. package/dist/unstable/workflow/index.js.map +1 -1
  1158. package/dist/unstable/workflow/internal/crypto.js.map +1 -1
  1159. package/package.json +5 -6
  1160. package/src/Array.ts +982 -1045
  1161. package/src/BigDecimal.ts +433 -756
  1162. package/src/BigInt.ts +213 -269
  1163. package/src/Boolean.ts +146 -188
  1164. package/src/Cache.ts +409 -255
  1165. package/src/Cause.ts +167 -277
  1166. package/src/Channel.ts +891 -816
  1167. package/src/ChannelSchema.ts +1 -1
  1168. package/src/Chunk.ts +841 -1181
  1169. package/src/Clock.ts +181 -49
  1170. package/src/Combiner.ts +20 -33
  1171. package/src/Config.ts +615 -332
  1172. package/src/ConfigProvider.ts +214 -120
  1173. package/src/Console.ts +289 -39
  1174. package/src/Context.ts +319 -378
  1175. package/src/Cron.ts +68 -77
  1176. package/src/Crypto.ts +13 -15
  1177. package/src/Data.ts +60 -80
  1178. package/src/DateTime.ts +564 -660
  1179. package/src/Deferred.ts +253 -256
  1180. package/src/Duration.ts +216 -308
  1181. package/src/Effect.ts +2893 -3279
  1182. package/src/Encoding.ts +22 -40
  1183. package/src/Equal.ts +49 -39
  1184. package/src/Equivalence.ts +103 -105
  1185. package/src/ErrorReporter.ts +51 -27
  1186. package/src/ExecutionPlan.ts +13 -55
  1187. package/src/Exit.ts +116 -192
  1188. package/src/Fiber.ts +81 -148
  1189. package/src/FiberHandle.ts +152 -105
  1190. package/src/FiberMap.ts +225 -174
  1191. package/src/FiberSet.ts +124 -82
  1192. package/src/FileSystem.ts +155 -263
  1193. package/src/Filter.ts +61 -33
  1194. package/src/Formatter.ts +54 -56
  1195. package/src/Function.ts +76 -145
  1196. package/src/Graph.ts +416 -770
  1197. package/src/HKT.ts +12 -6
  1198. package/src/Hash.ts +52 -83
  1199. package/src/HashMap.ts +319 -411
  1200. package/src/HashRing.ts +1 -0
  1201. package/src/HashSet.ts +177 -284
  1202. package/src/Inspectable.ts +12 -12
  1203. package/src/Iterable.ts +620 -786
  1204. package/src/JsonPatch.ts +58 -112
  1205. package/src/JsonPointer.ts +8 -8
  1206. package/src/JsonSchema.ts +402 -244
  1207. package/src/Latch.ts +23 -35
  1208. package/src/Layer.ts +359 -260
  1209. package/src/LayerMap.ts +49 -29
  1210. package/src/LayerRef.ts +6 -2
  1211. package/src/LogLevel.ts +114 -214
  1212. package/src/Logger.ts +344 -697
  1213. package/src/ManagedRuntime.ts +7 -5
  1214. package/src/Match.ts +217 -252
  1215. package/src/Metric.ts +516 -1089
  1216. package/src/MutableHashMap.ts +218 -255
  1217. package/src/MutableHashSet.ts +84 -89
  1218. package/src/MutableList.ts +73 -370
  1219. package/src/MutableRef.ts +420 -243
  1220. package/src/Newtype.ts +21 -14
  1221. package/src/NonEmptyIterable.ts +7 -137
  1222. package/src/Number.ts +196 -233
  1223. package/src/Optic.ts +243 -383
  1224. package/src/Option.ts +447 -812
  1225. package/src/Order.ts +109 -109
  1226. package/src/Ordering.ts +20 -23
  1227. package/src/Path.ts +38 -41
  1228. package/src/Pipeable.ts +6 -5
  1229. package/src/PlatformError.ts +4 -4
  1230. package/src/Pool.ts +4 -2
  1231. package/src/Predicate.ts +200 -181
  1232. package/src/PrimaryKey.ts +7 -7
  1233. package/src/PubSub.ts +526 -552
  1234. package/src/Pull.ts +24 -18
  1235. package/src/Queue.ts +200 -159
  1236. package/src/Random.ts +49 -74
  1237. package/src/RcMap.ts +121 -63
  1238. package/src/RcRef.ts +24 -13
  1239. package/src/Record.ts +291 -488
  1240. package/src/Redactable.ts +10 -3
  1241. package/src/Redacted.ts +25 -25
  1242. package/src/Reducer.ts +8 -15
  1243. package/src/Ref.ts +221 -361
  1244. package/src/References.ts +102 -168
  1245. package/src/RegExp.ts +10 -14
  1246. package/src/Request.ts +31 -21
  1247. package/src/RequestResolver.ts +202 -91
  1248. package/src/Result.ts +312 -484
  1249. package/src/Runtime.ts +50 -75
  1250. package/src/Schedule.ts +308 -1734
  1251. package/src/Scheduler.ts +20 -7
  1252. package/src/Schema.ts +716 -745
  1253. package/src/SchemaAST.ts +466 -358
  1254. package/src/SchemaError.ts +7 -6
  1255. package/src/SchemaGetter.ts +242 -190
  1256. package/src/SchemaIssue.ts +89 -275
  1257. package/src/SchemaParser.ts +180 -93
  1258. package/src/SchemaRepresentation.ts +22 -40
  1259. package/src/SchemaTransformation.ts +129 -88
  1260. package/src/Scope.ts +123 -151
  1261. package/src/ScopedRef.ts +4 -4
  1262. package/src/Semaphore.ts +152 -51
  1263. package/src/Sink.ts +128 -113
  1264. package/src/Stdio.ts +1 -1
  1265. package/src/Stream.ts +2602 -3123
  1266. package/src/String.ts +275 -312
  1267. package/src/Struct.ts +109 -114
  1268. package/src/SubscriptionRef.ts +284 -252
  1269. package/src/Symbol.ts +3 -3
  1270. package/src/Terminal.ts +2 -2
  1271. package/src/Tracer.ts +102 -55
  1272. package/src/Trie.ts +287 -679
  1273. package/src/Tuple.ts +92 -127
  1274. package/src/TxChunk.ts +201 -121
  1275. package/src/TxDeferred.ts +62 -46
  1276. package/src/TxHashMap.ts +645 -799
  1277. package/src/TxHashSet.ts +443 -356
  1278. package/src/TxPriorityQueue.ts +130 -98
  1279. package/src/TxPubSub.ts +107 -80
  1280. package/src/TxQueue.ts +214 -183
  1281. package/src/TxReentrantLock.ts +97 -66
  1282. package/src/TxRef.ts +51 -32
  1283. package/src/TxSemaphore.ts +129 -95
  1284. package/src/TxSubscriptionRef.ts +97 -70
  1285. package/src/Types.ts +126 -67
  1286. package/src/Unify.ts +45 -65
  1287. package/src/Utils.ts +23 -16
  1288. package/src/internal/core.ts +2 -2
  1289. package/src/internal/dateTime.ts +6 -0
  1290. package/src/internal/effect.ts +93 -48
  1291. package/src/internal/persistence.ts +2 -0
  1292. package/src/internal/references.ts +3 -2
  1293. package/src/internal/schema/fromJsonSchemaDocument.ts +15 -13
  1294. package/src/internal/schema/fromRepresentation.ts +10 -16
  1295. package/src/internal/schema/parser.ts +22 -0
  1296. package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
  1297. package/src/internal/schema/toRepresentation.ts +104 -119
  1298. package/src/internal/trie.ts +10 -11
  1299. package/src/testing/FastCheck.ts +8 -7
  1300. package/src/testing/TestClock.ts +72 -30
  1301. package/src/testing/TestConsole.ts +32 -31
  1302. package/src/testing/TestSchema.ts +29 -29
  1303. package/src/unstable/ai/AiError.ts +95 -118
  1304. package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
  1305. package/src/unstable/ai/Chat.ts +132 -97
  1306. package/src/unstable/ai/IdGenerator.ts +32 -28
  1307. package/src/unstable/ai/LanguageModel.ts +107 -67
  1308. package/src/unstable/ai/McpProtocol.ts +48 -0
  1309. package/src/unstable/ai/McpSchema.ts +60 -50
  1310. package/src/unstable/ai/McpServer.ts +930 -304
  1311. package/src/unstable/ai/Model.ts +9 -20
  1312. package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
  1313. package/src/unstable/ai/Prompt.ts +145 -43
  1314. package/src/unstable/ai/Response.ts +28 -14
  1315. package/src/unstable/ai/Telemetry.ts +46 -13
  1316. package/src/unstable/ai/Tokenizer.ts +14 -3
  1317. package/src/unstable/ai/Tool.ts +59 -44
  1318. package/src/unstable/ai/Toolkit.ts +26 -8
  1319. package/src/unstable/ai/index.ts +5 -0
  1320. package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
  1321. package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
  1322. package/src/unstable/ai/internal/structured-output.ts +13 -18
  1323. package/src/unstable/cli/Argument.ts +273 -69
  1324. package/src/unstable/cli/CliError.ts +69 -76
  1325. package/src/unstable/cli/CliOutput.ts +44 -58
  1326. package/src/unstable/cli/Command.ts +705 -107
  1327. package/src/unstable/cli/Flag.ts +418 -138
  1328. package/src/unstable/cli/GlobalFlag.ts +1 -1
  1329. package/src/unstable/cli/HelpDoc.ts +12 -4
  1330. package/src/unstable/cli/Param.ts +292 -78
  1331. package/src/unstable/cli/Primitive.ts +370 -149
  1332. package/src/unstable/cli/Prompt.ts +28 -14
  1333. package/src/unstable/cli/internal/lexer.ts +8 -2
  1334. package/src/unstable/cli/internal/parser.ts +2 -2
  1335. package/src/unstable/cluster/ClusterSchema.ts +8 -8
  1336. package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -1
  1337. package/src/unstable/cluster/Entity.ts +15 -16
  1338. package/src/unstable/cluster/EntityProxy.ts +4 -2
  1339. package/src/unstable/cluster/EntityResource.ts +2 -2
  1340. package/src/unstable/cluster/Envelope.ts +3 -3
  1341. package/src/unstable/cluster/HttpRunner.ts +6 -4
  1342. package/src/unstable/cluster/Message.ts +9 -9
  1343. package/src/unstable/cluster/MessageStorage.ts +15 -15
  1344. package/src/unstable/cluster/Reply.ts +4 -6
  1345. package/src/unstable/cluster/RunnerHealth.ts +1 -1
  1346. package/src/unstable/cluster/RunnerServer.ts +41 -8
  1347. package/src/unstable/cluster/RunnerStorage.ts +2 -2
  1348. package/src/unstable/cluster/Runners.ts +23 -12
  1349. package/src/unstable/cluster/Sharding.ts +7 -8
  1350. package/src/unstable/cluster/ShardingConfig.ts +3 -3
  1351. package/src/unstable/cluster/SingletonAddress.ts +1 -1
  1352. package/src/unstable/cluster/Snowflake.ts +8 -8
  1353. package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
  1354. package/src/unstable/cluster/SqlRunnerStorage.ts +21 -5
  1355. package/src/unstable/cluster/internal/entityManager.ts +11 -15
  1356. package/src/unstable/encoding/Msgpack.ts +6 -8
  1357. package/src/unstable/encoding/Sse.ts +98 -16
  1358. package/src/unstable/eventlog/Event.ts +20 -20
  1359. package/src/unstable/eventlog/EventGroup.ts +4 -4
  1360. package/src/unstable/eventlog/EventJournal.ts +15 -15
  1361. package/src/unstable/eventlog/EventLog.ts +3 -3
  1362. package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
  1363. package/src/unstable/eventlog/EventLogMessage.ts +2 -2
  1364. package/src/unstable/eventlog/EventLogRemote.ts +1 -1
  1365. package/src/unstable/eventlog/EventLogServer.ts +41 -7
  1366. package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
  1367. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
  1368. package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
  1369. package/src/unstable/http/Cookies.ts +35 -21
  1370. package/src/unstable/http/Etag.ts +1 -1
  1371. package/src/unstable/http/FetchHttpClient.ts +3 -1
  1372. package/src/unstable/http/Headers.ts +2 -2
  1373. package/src/unstable/http/HttpBody.ts +20 -5
  1374. package/src/unstable/http/HttpClient.ts +83 -55
  1375. package/src/unstable/http/HttpClientRequest.ts +2 -0
  1376. package/src/unstable/http/HttpClientResponse.ts +4 -4
  1377. package/src/unstable/http/HttpEffect.ts +8 -8
  1378. package/src/unstable/http/HttpMethod.ts +6 -9
  1379. package/src/unstable/http/HttpMiddleware.ts +202 -39
  1380. package/src/unstable/http/HttpPlatform.ts +95 -0
  1381. package/src/unstable/http/HttpRouter.ts +102 -98
  1382. package/src/unstable/http/HttpServer.ts +13 -13
  1383. package/src/unstable/http/HttpServerError.ts +2 -2
  1384. package/src/unstable/http/HttpServerRequest.ts +4 -4
  1385. package/src/unstable/http/HttpServerResponse.ts +30 -0
  1386. package/src/unstable/http/HttpStaticServer.ts +35 -7
  1387. package/src/unstable/http/Multipart.ts +6 -6
  1388. package/src/unstable/http/Url.ts +33 -63
  1389. package/src/unstable/http/UrlParams.ts +10 -18
  1390. package/src/unstable/http/internal/compression.ts +196 -0
  1391. package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
  1392. package/src/unstable/httpapi/HttpApiClient.ts +14 -14
  1393. package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
  1394. package/src/unstable/httpapi/HttpApiError.ts +13 -13
  1395. package/src/unstable/httpapi/HttpApiGroup.ts +15 -15
  1396. package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
  1397. package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
  1398. package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
  1399. package/src/unstable/httpapi/OpenApi.ts +13 -13
  1400. package/src/unstable/observability/OtlpExporter.ts +31 -19
  1401. package/src/unstable/observability/OtlpMetrics.ts +4 -1
  1402. package/src/unstable/observability/OtlpResource.ts +26 -17
  1403. package/src/unstable/observability/PrometheusMetrics.ts +13 -4
  1404. package/src/unstable/observability/internal/otlpEnv.ts +1 -1
  1405. package/src/unstable/observability/internal/protobuf.ts +3 -0
  1406. package/src/unstable/persistence/KeyValueStore.ts +72 -49
  1407. package/src/unstable/persistence/Persistable.ts +8 -8
  1408. package/src/unstable/persistence/PersistedQueue.ts +6 -6
  1409. package/src/unstable/persistence/Persistence.ts +126 -19
  1410. package/src/unstable/persistence/RateLimiter.ts +26 -15
  1411. package/src/unstable/persistence/Redis.ts +2 -2
  1412. package/src/unstable/process/ChildProcess.ts +64 -21
  1413. package/src/unstable/process/ChildProcessSpawner.ts +21 -10
  1414. package/src/unstable/reactivity/AsyncResult.ts +12 -13
  1415. package/src/unstable/reactivity/Atom.ts +28 -25
  1416. package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
  1417. package/src/unstable/reactivity/AtomRegistry.ts +24 -3
  1418. package/src/unstable/reactivity/AtomRpc.ts +5 -4
  1419. package/src/unstable/reactivity/Hydration.ts +1 -1
  1420. package/src/unstable/rpc/Rpc.ts +35 -33
  1421. package/src/unstable/rpc/RpcClient.ts +16 -15
  1422. package/src/unstable/rpc/RpcGroup.ts +8 -8
  1423. package/src/unstable/rpc/RpcMessage.ts +31 -30
  1424. package/src/unstable/rpc/RpcMiddleware.ts +10 -10
  1425. package/src/unstable/rpc/RpcSchema.ts +4 -4
  1426. package/src/unstable/rpc/RpcSerialization.ts +167 -68
  1427. package/src/unstable/rpc/RpcServer.ts +18 -15
  1428. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1429. package/src/unstable/schema/Model.ts +52 -50
  1430. package/src/unstable/schema/VariantSchema.ts +5 -5
  1431. package/src/unstable/socket/Socket.ts +17 -4
  1432. package/src/unstable/sql/SqlClient.ts +5 -6
  1433. package/src/unstable/sql/SqlModel.ts +2 -2
  1434. package/src/unstable/sql/SqlResolver.ts +5 -5
  1435. package/src/unstable/sql/Statement.ts +24 -23
  1436. package/src/unstable/workers/Transferable.ts +1 -1
  1437. package/src/unstable/workers/Worker.ts +2 -2
  1438. package/src/unstable/workers/WorkerError.ts +7 -7
  1439. package/src/unstable/workers/WorkerRunner.ts +1 -1
  1440. package/src/unstable/workflow/Activity.ts +2 -2
  1441. package/src/unstable/workflow/DurableClock.ts +1 -1
  1442. package/src/unstable/workflow/DurableDeferred.ts +10 -10
  1443. package/src/unstable/workflow/DurableQueue.ts +22 -20
  1444. package/src/unstable/workflow/Workflow.ts +23 -23
  1445. package/src/unstable/workflow/WorkflowEngine.ts +1 -1
  1446. package/src/unstable/workflow/WorkflowProxy.ts +4 -2
  1447. package/dist/internal/version.d.ts +0 -3
  1448. package/dist/internal/version.d.ts.map +0 -1
  1449. package/dist/internal/version.js +0 -2
  1450. package/dist/internal/version.js.map +0 -1
  1451. package/src/internal/version.ts +0 -2
package/src/String.ts CHANGED
@@ -46,12 +46,11 @@ export const String = globalThis.String
46
46
  *
47
47
  * **Example** (Checking for strings)
48
48
  *
49
- * ```ts
49
+ * ```ts import.meta.vitest
50
50
  * import { String } from "effect"
51
- * import * as assert from "node:assert"
52
51
  *
53
- * assert.deepStrictEqual(String.isString("a"), true)
54
- * assert.deepStrictEqual(String.isString(1), false)
52
+ * String.isString("a") // => true
53
+ * String.isString(1) // => false
55
54
  * ```
56
55
  *
57
56
  * @category guards
@@ -65,12 +64,12 @@ export const isString: Refinement<unknown, string> = predicate.isString
65
64
  *
66
65
  * **Example** (Comparing strings lexicographically)
67
66
  *
68
- * ```ts
67
+ * ```ts import.meta.vitest
69
68
  * import { String } from "effect"
70
69
  *
71
- * console.log(String.Order("apple", "banana")) // -1
72
- * console.log(String.Order("banana", "apple")) // 1
73
- * console.log(String.Order("apple", "apple")) // 0
70
+ * String.Order("apple", "banana") // => -1
71
+ * String.Order("banana", "apple") // => 1
72
+ * String.Order("apple", "apple") // => 0
74
73
  * ```
75
74
  *
76
75
  * @category instances
@@ -83,11 +82,11 @@ export const Order: order.Order<string> = order.String
83
82
  *
84
83
  * **Example** (Comparing strings for equality)
85
84
  *
86
- * ```ts
85
+ * ```ts import.meta.vitest
87
86
  * import { String } from "effect"
88
87
  *
89
- * console.log(String.Equivalence("hello", "hello")) // true
90
- * console.log(String.Equivalence("hello", "world")) // false
88
+ * String.Equivalence("hello", "hello") // => true
89
+ * String.Equivalence("hello", "world") // => false
91
90
  * ```
92
91
  *
93
92
  * @category instances
@@ -104,11 +103,11 @@ export const Equivalence: Equ.Equivalence<string> = Equ.String
104
103
  *
105
104
  * **Example** (Referencing the empty string)
106
105
  *
107
- * ```ts
106
+ * ```ts import.meta.vitest
108
107
  * import { String } from "effect"
109
108
  *
110
- * console.log(String.empty) // ""
111
- * console.log(String.isEmpty(String.empty)) // true
109
+ * String.empty // => ""
110
+ * String.isEmpty(String.empty) // => true
112
111
  * ```
113
112
  *
114
113
  * @category constants
@@ -121,11 +120,13 @@ export const empty: "" = "" as const
121
120
  *
122
121
  * **Example** (Concatenating string literal types)
123
122
  *
124
- * ```ts
123
+ * ```ts import.meta.vitest
125
124
  * import type { String } from "effect"
126
125
  *
127
126
  * // Type-level concatenation
128
127
  * type Result = String.Concat<"hello", "world"> // "helloworld"
128
+ *
129
+ * const witness: Result = "helloworld"
129
130
  * ```
130
131
  *
131
132
  * @category models
@@ -138,14 +139,11 @@ export type Concat<A extends string, B extends string> = `${A}${B}`
138
139
  *
139
140
  * **Example** (Concatenating strings)
140
141
  *
141
- * ```ts
142
+ * ```ts import.meta.vitest
142
143
  * import { pipe, String } from "effect"
143
144
  *
144
- * const result1 = String.concat("hello", "world")
145
- * console.log(result1) // "helloworld"
146
- *
147
- * const result2 = pipe("hello", String.concat("world"))
148
- * console.log(result2) // "helloworld"
145
+ * String.concat("hello", "world") // => "helloworld"
146
+ * pipe("hello", String.concat("world")) // => "helloworld"
149
147
  * ```
150
148
  *
151
149
  * @category combining
@@ -157,14 +155,11 @@ export const concat: {
157
155
  *
158
156
  * **Example** (Concatenating strings)
159
157
  *
160
- * ```ts
158
+ * ```ts import.meta.vitest
161
159
  * import { pipe, String } from "effect"
162
160
  *
163
- * const result1 = String.concat("hello", "world")
164
- * console.log(result1) // "helloworld"
165
- *
166
- * const result2 = pipe("hello", String.concat("world"))
167
- * console.log(result2) // "helloworld"
161
+ * String.concat("hello", "world") // => "helloworld"
162
+ * pipe("hello", String.concat("world")) // => "helloworld"
168
163
  * ```
169
164
  *
170
165
  * @category combining
@@ -176,14 +171,11 @@ export const concat: {
176
171
  *
177
172
  * **Example** (Concatenating strings)
178
173
  *
179
- * ```ts
174
+ * ```ts import.meta.vitest
180
175
  * import { pipe, String } from "effect"
181
176
  *
182
- * const result1 = String.concat("hello", "world")
183
- * console.log(result1) // "helloworld"
184
- *
185
- * const result2 = pipe("hello", String.concat("world"))
186
- * console.log(result2) // "helloworld"
177
+ * String.concat("hello", "world") // => "helloworld"
178
+ * pipe("hello", String.concat("world")) // => "helloworld"
187
179
  * ```
188
180
  *
189
181
  * @category combining
@@ -197,12 +189,11 @@ export const concat: {
197
189
  *
198
190
  * **Example** (Converting strings to uppercase)
199
191
  *
200
- * ```ts
192
+ * ```ts import.meta.vitest
201
193
  * import { pipe, String } from "effect"
202
- * import * as assert from "node:assert"
203
194
  *
204
- * assert.deepStrictEqual(pipe("a", String.toUpperCase), "A")
205
- * assert.deepStrictEqual(String.toUpperCase("hello"), "HELLO")
195
+ * pipe("a", String.toUpperCase) // => "A"
196
+ * String.toUpperCase("hello") // => "HELLO"
206
197
  * ```
207
198
  *
208
199
  * @category transforming
@@ -215,12 +206,11 @@ export const toUpperCase = <S extends string>(self: S): Uppercase<S> => self.toU
215
206
  *
216
207
  * **Example** (Converting strings to lowercase)
217
208
  *
218
- * ```ts
209
+ * ```ts import.meta.vitest
219
210
  * import { pipe, String } from "effect"
220
- * import * as assert from "node:assert"
221
211
  *
222
- * assert.deepStrictEqual(pipe("A", String.toLowerCase), "a")
223
- * assert.deepStrictEqual(String.toLowerCase("HELLO"), "hello")
212
+ * pipe("A", String.toLowerCase) // => "a"
213
+ * String.toLowerCase("HELLO") // => "hello"
224
214
  * ```
225
215
  *
226
216
  * @category transforming
@@ -233,12 +223,11 @@ export const toLowerCase = <T extends string>(self: T): Lowercase<T> => self.toL
233
223
  *
234
224
  * **Example** (Capitalizing a string)
235
225
  *
236
- * ```ts
226
+ * ```ts import.meta.vitest
237
227
  * import { pipe, String } from "effect"
238
- * import * as assert from "node:assert"
239
228
  *
240
- * assert.deepStrictEqual(pipe("abc", String.capitalize), "Abc")
241
- * assert.deepStrictEqual(String.capitalize("hello"), "Hello")
229
+ * pipe("abc", String.capitalize) // => "Abc"
230
+ * String.capitalize("hello") // => "Hello"
242
231
  * ```
243
232
  *
244
233
  * @category transforming
@@ -255,12 +244,11 @@ export const capitalize = <T extends string>(self: T): Capitalize<T> => {
255
244
  *
256
245
  * **Example** (Uncapitalizing a string)
257
246
  *
258
- * ```ts
247
+ * ```ts import.meta.vitest
259
248
  * import { pipe, String } from "effect"
260
- * import * as assert from "node:assert"
261
249
  *
262
- * assert.deepStrictEqual(pipe("ABC", String.uncapitalize), "aBC")
263
- * assert.deepStrictEqual(String.uncapitalize("Hello"), "hello")
250
+ * pipe("ABC", String.uncapitalize) // => "aBC"
251
+ * String.uncapitalize("Hello") // => "hello"
264
252
  * ```
265
253
  *
266
254
  * @category transforming
@@ -282,15 +270,11 @@ export const uncapitalize = <T extends string>(self: T): Uncapitalize<T> => {
282
270
  *
283
271
  * **Example** (Replacing a substring)
284
272
  *
285
- * ```ts
273
+ * ```ts import.meta.vitest
286
274
  * import { pipe, String } from "effect"
287
- * import * as assert from "node:assert"
288
275
  *
289
- * assert.deepStrictEqual(pipe("abc", String.replace("b", "d")), "adc")
290
- * assert.deepStrictEqual(
291
- * pipe("hello world", String.replace("world", "Effect")),
292
- * "hello Effect"
293
- * )
276
+ * pipe("abc", String.replace("b", "d")) // => "adc"
277
+ * pipe("hello world", String.replace("world", "Effect")) // => "hello Effect"
294
278
  * ```
295
279
  *
296
280
  * @category transforming
@@ -304,10 +288,12 @@ export const replace = (searchValue: string | RegExp, replaceValue: string) => (
304
288
  *
305
289
  * **Example** (Trimming whitespace at the type level)
306
290
  *
307
- * ```ts
291
+ * ```ts import.meta.vitest
308
292
  * import type { String } from "effect"
309
293
  *
310
294
  * type Result = String.Trim<" hello "> // "hello"
295
+ *
296
+ * const witness: Result = "hello"
311
297
  * ```
312
298
  *
313
299
  * @category models
@@ -320,12 +306,11 @@ export type Trim<A extends string> = TrimEnd<TrimStart<A>>
320
306
  *
321
307
  * **Example** (Trimming whitespace)
322
308
  *
323
- * ```ts
309
+ * ```ts import.meta.vitest
324
310
  * import { String } from "effect"
325
- * import * as assert from "node:assert"
326
311
  *
327
- * assert.deepStrictEqual(String.trim(" a "), "a")
328
- * assert.deepStrictEqual(String.trim(" hello world "), "hello world")
312
+ * String.trim(" a ") // => "a"
313
+ * String.trim(" hello world ") // => "hello world"
329
314
  * ```
330
315
  *
331
316
  * @category transforming
@@ -338,10 +323,12 @@ export const trim = <A extends string>(self: A): Trim<A> => self.trim() as Trim<
338
323
  *
339
324
  * **Example** (Trimming leading whitespace at the type level)
340
325
  *
341
- * ```ts
326
+ * ```ts import.meta.vitest
342
327
  * import type { String } from "effect"
343
328
  *
344
329
  * type Result = String.TrimStart<" hello"> // "hello"
330
+ *
331
+ * const witness: Result = "hello"
345
332
  * ```
346
333
  *
347
334
  * @category models
@@ -354,12 +341,11 @@ export type TrimStart<A extends string> = A extends `${" " | "\n" | "\t" | "\r"}
354
341
  *
355
342
  * **Example** (Trimming leading whitespace)
356
343
  *
357
- * ```ts
344
+ * ```ts import.meta.vitest
358
345
  * import { String } from "effect"
359
- * import * as assert from "node:assert"
360
346
  *
361
- * assert.deepStrictEqual(String.trimStart(" a "), "a ")
362
- * assert.deepStrictEqual(String.trimStart(" hello world"), "hello world")
347
+ * String.trimStart(" a ") // => "a "
348
+ * String.trimStart(" hello world") // => "hello world"
363
349
  * ```
364
350
  *
365
351
  * @category transforming
@@ -372,10 +358,12 @@ export const trimStart = <A extends string>(self: A): TrimStart<A> => self.trimS
372
358
  *
373
359
  * **Example** (Trimming trailing whitespace at the type level)
374
360
  *
375
- * ```ts
361
+ * ```ts import.meta.vitest
376
362
  * import type { String } from "effect"
377
363
  *
378
364
  * type Result = String.TrimEnd<"hello "> // "hello"
365
+ *
366
+ * const witness: Result = "hello"
379
367
  * ```
380
368
  *
381
369
  * @category models
@@ -388,12 +376,11 @@ export type TrimEnd<A extends string> = A extends `${infer B}${" " | "\n" | "\t"
388
376
  *
389
377
  * **Example** (Trimming trailing whitespace)
390
378
  *
391
- * ```ts
379
+ * ```ts import.meta.vitest
392
380
  * import { String } from "effect"
393
- * import * as assert from "node:assert"
394
381
  *
395
- * assert.deepStrictEqual(String.trimEnd(" a "), " a")
396
- * assert.deepStrictEqual(String.trimEnd("hello world "), "hello world")
382
+ * String.trimEnd(" a ") // => " a"
383
+ * String.trimEnd("hello world ") // => "hello world"
397
384
  * ```
398
385
  *
399
386
  * @category transforming
@@ -406,12 +393,11 @@ export const trimEnd = <A extends string>(self: A): TrimEnd<A> => self.trimEnd()
406
393
  *
407
394
  * **Example** (Slicing strings)
408
395
  *
409
- * ```ts
396
+ * ```ts import.meta.vitest
410
397
  * import { pipe, String } from "effect"
411
- * import * as assert from "node:assert"
412
398
  *
413
- * assert.deepStrictEqual(pipe("abcd", String.slice(1, 3)), "bc")
414
- * assert.deepStrictEqual(pipe("hello world", String.slice(0, 5)), "hello")
399
+ * pipe("abcd", String.slice(1, 3)) // => "bc"
400
+ * pipe("hello world", String.slice(0, 5)) // => "hello"
415
401
  * ```
416
402
  *
417
403
  * @category transforming
@@ -424,15 +410,14 @@ export const slice = (start?: number, end?: number) => (self: string): string =>
424
410
  *
425
411
  * **Example** (Checking for empty strings)
426
412
  *
427
- * ```ts
413
+ * ```ts import.meta.vitest
428
414
  * import { String } from "effect"
429
- * import * as assert from "node:assert"
430
415
  *
431
- * assert.deepStrictEqual(String.isEmpty(""), true)
432
- * assert.deepStrictEqual(String.isEmpty("a"), false)
416
+ * String.isEmpty("") // => true
417
+ * String.isEmpty("a") // => false
433
418
  * ```
434
419
  *
435
- * @category predicates
420
+ * @category guards
436
421
  * @since 2.0.0
437
422
  */
438
423
  export const isEmpty = (self: string): self is "" => self.length === 0
@@ -442,15 +427,14 @@ export const isEmpty = (self: string): self is "" => self.length === 0
442
427
  *
443
428
  * **Example** (Checking for non-empty strings)
444
429
  *
445
- * ```ts
430
+ * ```ts import.meta.vitest
446
431
  * import { String } from "effect"
447
- * import * as assert from "node:assert"
448
432
  *
449
- * assert.deepStrictEqual(String.isNonEmpty(""), false)
450
- * assert.deepStrictEqual(String.isNonEmpty("a"), true)
433
+ * String.isNonEmpty("") // => false
434
+ * String.isNonEmpty("a") // => true
451
435
  * ```
452
436
  *
453
- * @category guards
437
+ * @category predicates
454
438
  * @since 2.0.0
455
439
  */
456
440
  export const isNonEmpty = (self: string): boolean => self.length > 0
@@ -460,11 +444,10 @@ export const isNonEmpty = (self: string): boolean => self.length > 0
460
444
  *
461
445
  * **Example** (Getting string length)
462
446
  *
463
- * ```ts
447
+ * ```ts import.meta.vitest
464
448
  * import { String } from "effect"
465
- * import * as assert from "node:assert"
466
449
  *
467
- * assert.deepStrictEqual(String.length("abc"), 3)
450
+ * String.length("abc") // => 3
468
451
  * ```
469
452
  *
470
453
  * @category getters
@@ -477,13 +460,12 @@ export const length = (self: string): number => self.length
477
460
  *
478
461
  * **Example** (Splitting strings)
479
462
  *
480
- * ```ts
463
+ * ```ts import.meta.vitest
481
464
  * import { pipe, String } from "effect"
482
- * import * as assert from "node:assert"
483
465
  *
484
- * assert.deepStrictEqual(pipe("abc", String.split("")), ["a", "b", "c"])
485
- * assert.deepStrictEqual(pipe("", String.split("")), [""])
486
- * assert.deepStrictEqual(String.split("hello,world", ","), ["hello", "world"])
466
+ * pipe("abc", String.split("")) // => ["a", "b", "c"]
467
+ * pipe("", String.split("")) // => [""]
468
+ * String.split("hello,world", ",") // => ["hello", "world"]
487
469
  * ```
488
470
  *
489
471
  * @category transforming
@@ -495,13 +477,12 @@ export const split: {
495
477
  *
496
478
  * **Example** (Splitting strings)
497
479
  *
498
- * ```ts
480
+ * ```ts import.meta.vitest
499
481
  * import { pipe, String } from "effect"
500
- * import * as assert from "node:assert"
501
482
  *
502
- * assert.deepStrictEqual(pipe("abc", String.split("")), ["a", "b", "c"])
503
- * assert.deepStrictEqual(pipe("", String.split("")), [""])
504
- * assert.deepStrictEqual(String.split("hello,world", ","), ["hello", "world"])
483
+ * pipe("abc", String.split("")) // => ["a", "b", "c"]
484
+ * pipe("", String.split("")) // => [""]
485
+ * String.split("hello,world", ",") // => ["hello", "world"]
505
486
  * ```
506
487
  *
507
488
  * @category transforming
@@ -513,13 +494,12 @@ export const split: {
513
494
  *
514
495
  * **Example** (Splitting strings)
515
496
  *
516
- * ```ts
497
+ * ```ts import.meta.vitest
517
498
  * import { pipe, String } from "effect"
518
- * import * as assert from "node:assert"
519
499
  *
520
- * assert.deepStrictEqual(pipe("abc", String.split("")), ["a", "b", "c"])
521
- * assert.deepStrictEqual(pipe("", String.split("")), [""])
522
- * assert.deepStrictEqual(String.split("hello,world", ","), ["hello", "world"])
500
+ * pipe("abc", String.split("")) // => ["a", "b", "c"]
501
+ * pipe("", String.split("")) // => [""]
502
+ * String.split("hello,world", ",") // => ["hello", "world"]
523
503
  * ```
524
504
  *
525
505
  * @category transforming
@@ -537,12 +517,11 @@ export const split: {
537
517
  *
538
518
  * **Example** (Checking for substrings)
539
519
  *
540
- * ```ts
520
+ * ```ts import.meta.vitest
541
521
  * import { pipe, String } from "effect"
542
- * import * as assert from "node:assert"
543
522
  *
544
- * assert.deepStrictEqual(pipe("hello world", String.includes("world")), true)
545
- * assert.deepStrictEqual(pipe("hello world", String.includes("foo")), false)
523
+ * pipe("hello world", String.includes("world")) // => true
524
+ * pipe("hello world", String.includes("foo")) // => false
546
525
  * ```
547
526
  *
548
527
  * @category predicates
@@ -556,12 +535,11 @@ export const includes = (searchString: string, position?: number) => (self: stri
556
535
  *
557
536
  * **Example** (Checking string prefixes)
558
537
  *
559
- * ```ts
538
+ * ```ts import.meta.vitest
560
539
  * import { pipe, String } from "effect"
561
- * import * as assert from "node:assert"
562
540
  *
563
- * assert.deepStrictEqual(pipe("hello world", String.startsWith("hello")), true)
564
- * assert.deepStrictEqual(pipe("hello world", String.startsWith("world")), false)
541
+ * pipe("hello world", String.startsWith("hello")) // => true
542
+ * pipe("hello world", String.startsWith("world")) // => false
565
543
  * ```
566
544
  *
567
545
  * @category predicates
@@ -575,12 +553,11 @@ export const startsWith = (searchString: string, position?: number) => (self: st
575
553
  *
576
554
  * **Example** (Checking string suffixes)
577
555
  *
578
- * ```ts
556
+ * ```ts import.meta.vitest
579
557
  * import { pipe, String } from "effect"
580
- * import * as assert from "node:assert"
581
558
  *
582
- * assert.deepStrictEqual(pipe("hello world", String.endsWith("world")), true)
583
- * assert.deepStrictEqual(pipe("hello world", String.endsWith("hello")), false)
559
+ * pipe("hello world", String.endsWith("world")) // => true
560
+ * pipe("hello world", String.endsWith("hello")) // => false
584
561
  * ```
585
562
  *
586
563
  * @category predicates
@@ -594,14 +571,14 @@ export const endsWith = (searchString: string, position?: number) => (self: stri
594
571
  *
595
572
  * **Example** (Reading character codes)
596
573
  *
597
- * ```ts
598
- * import { String } from "effect"
574
+ * ```ts import.meta.vitest
575
+ * import { Option, String } from "effect"
599
576
  *
600
- * String.charCodeAt("abc", 1) // Option.some(98)
601
- * String.charCodeAt("abc", 4) // Option.none()
577
+ * String.charCodeAt("abc", 1) // => Option.some(98)
578
+ * String.charCodeAt("abc", 4) // => Option.none()
602
579
  * ```
603
580
  *
604
- * @category elements
581
+ * @category getters
605
582
  * @since 2.0.0
606
583
  */
607
584
  export const charCodeAt: {
@@ -610,14 +587,14 @@ export const charCodeAt: {
610
587
  *
611
588
  * **Example** (Reading character codes)
612
589
  *
613
- * ```ts
614
- * import { String } from "effect"
590
+ * ```ts import.meta.vitest
591
+ * import { Option, String } from "effect"
615
592
  *
616
- * String.charCodeAt("abc", 1) // Option.some(98)
617
- * String.charCodeAt("abc", 4) // Option.none()
593
+ * String.charCodeAt("abc", 1) // => Option.some(98)
594
+ * String.charCodeAt("abc", 4) // => Option.none()
618
595
  * ```
619
596
  *
620
- * @category elements
597
+ * @category getters
621
598
  * @since 2.0.0
622
599
  */
623
600
  (index: number): (self: string) => Option.Option<number>
@@ -626,14 +603,14 @@ export const charCodeAt: {
626
603
  *
627
604
  * **Example** (Reading character codes)
628
605
  *
629
- * ```ts
630
- * import { String } from "effect"
606
+ * ```ts import.meta.vitest
607
+ * import { Option, String } from "effect"
631
608
  *
632
- * String.charCodeAt("abc", 1) // Option.some(98)
633
- * String.charCodeAt("abc", 4) // Option.none()
609
+ * String.charCodeAt("abc", 1) // => Option.some(98)
610
+ * String.charCodeAt("abc", 4) // => Option.none()
634
611
  * ```
635
612
  *
636
- * @category elements
613
+ * @category getters
637
614
  * @since 2.0.0
638
615
  */
639
616
  (self: string, index: number): Option.Option<number>
@@ -648,11 +625,11 @@ export const charCodeAt: {
648
625
  *
649
626
  * **Example** (Extracting substrings)
650
627
  *
651
- * ```ts
628
+ * ```ts import.meta.vitest
652
629
  * import { pipe, String } from "effect"
653
630
  *
654
- * pipe("abcd", String.substring(1)) // "bcd"
655
- * pipe("abcd", String.substring(1, 3)) // "bc"
631
+ * pipe("abcd", String.substring(1)) // => "bcd"
632
+ * pipe("abcd", String.substring(1, 3)) // => "bc"
656
633
  * ```
657
634
  *
658
635
  * @category transforming
@@ -665,14 +642,14 @@ export const substring = (start: number, end?: number) => (self: string): string
665
642
  *
666
643
  * **Example** (Accessing characters safely)
667
644
  *
668
- * ```ts
669
- * import { pipe, String } from "effect"
645
+ * ```ts import.meta.vitest
646
+ * import { Option, pipe, String } from "effect"
670
647
  *
671
- * pipe("abc", String.at(1)) // Option.some("b")
672
- * pipe("abc", String.at(4)) // Option.none()
648
+ * pipe("abc", String.at(1)) // => Option.some("b")
649
+ * pipe("abc", String.at(4)) // => Option.none()
673
650
  * ```
674
651
  *
675
- * @category elements
652
+ * @category getters
676
653
  * @since 2.0.0
677
654
  */
678
655
  export const at: {
@@ -681,14 +658,14 @@ export const at: {
681
658
  *
682
659
  * **Example** (Accessing characters safely)
683
660
  *
684
- * ```ts
685
- * import { pipe, String } from "effect"
661
+ * ```ts import.meta.vitest
662
+ * import { Option, pipe, String } from "effect"
686
663
  *
687
- * pipe("abc", String.at(1)) // Option.some("b")
688
- * pipe("abc", String.at(4)) // Option.none()
664
+ * pipe("abc", String.at(1)) // => Option.some("b")
665
+ * pipe("abc", String.at(4)) // => Option.none()
689
666
  * ```
690
667
  *
691
- * @category elements
668
+ * @category getters
692
669
  * @since 2.0.0
693
670
  */
694
671
  (index: number): (self: string) => Option.Option<string>
@@ -697,14 +674,14 @@ export const at: {
697
674
  *
698
675
  * **Example** (Accessing characters safely)
699
676
  *
700
- * ```ts
701
- * import { pipe, String } from "effect"
677
+ * ```ts import.meta.vitest
678
+ * import { Option, pipe, String } from "effect"
702
679
  *
703
- * pipe("abc", String.at(1)) // Option.some("b")
704
- * pipe("abc", String.at(4)) // Option.none()
680
+ * pipe("abc", String.at(1)) // => Option.some("b")
681
+ * pipe("abc", String.at(4)) // => Option.none()
705
682
  * ```
706
683
  *
707
- * @category elements
684
+ * @category getters
708
685
  * @since 2.0.0
709
686
  */
710
687
  (self: string, index: number): Option.Option<string>
@@ -715,14 +692,14 @@ export const at: {
715
692
  *
716
693
  * **Example** (Reading characters safely)
717
694
  *
718
- * ```ts
719
- * import { pipe, String } from "effect"
695
+ * ```ts import.meta.vitest
696
+ * import { Option, pipe, String } from "effect"
720
697
  *
721
- * pipe("abc", String.charAt(1)) // Option.some("b")
722
- * pipe("abc", String.charAt(4)) // Option.none()
698
+ * pipe("abc", String.charAt(1)) // => Option.some("b")
699
+ * pipe("abc", String.charAt(4)) // => Option.none()
723
700
  * ```
724
701
  *
725
- * @category elements
702
+ * @category getters
726
703
  * @since 2.0.0
727
704
  */
728
705
  export const charAt: {
@@ -731,14 +708,14 @@ export const charAt: {
731
708
  *
732
709
  * **Example** (Reading characters safely)
733
710
  *
734
- * ```ts
735
- * import { pipe, String } from "effect"
711
+ * ```ts import.meta.vitest
712
+ * import { Option, pipe, String } from "effect"
736
713
  *
737
- * pipe("abc", String.charAt(1)) // Option.some("b")
738
- * pipe("abc", String.charAt(4)) // Option.none()
714
+ * pipe("abc", String.charAt(1)) // => Option.some("b")
715
+ * pipe("abc", String.charAt(4)) // => Option.none()
739
716
  * ```
740
717
  *
741
- * @category elements
718
+ * @category getters
742
719
  * @since 2.0.0
743
720
  */
744
721
  (index: number): (self: string) => Option.Option<string>
@@ -747,14 +724,14 @@ export const charAt: {
747
724
  *
748
725
  * **Example** (Reading characters safely)
749
726
  *
750
- * ```ts
751
- * import { pipe, String } from "effect"
727
+ * ```ts import.meta.vitest
728
+ * import { Option, pipe, String } from "effect"
752
729
  *
753
- * pipe("abc", String.charAt(1)) // Option.some("b")
754
- * pipe("abc", String.charAt(4)) // Option.none()
730
+ * pipe("abc", String.charAt(1)) // => Option.some("b")
731
+ * pipe("abc", String.charAt(4)) // => Option.none()
755
732
  * ```
756
733
  *
757
- * @category elements
734
+ * @category getters
758
735
  * @since 2.0.0
759
736
  */
760
737
  (self: string, index: number): Option.Option<string>
@@ -768,14 +745,14 @@ export const charAt: {
768
745
  *
769
746
  * **Example** (Reading code points)
770
747
  *
771
- * ```ts
772
- * import { pipe, String } from "effect"
748
+ * ```ts import.meta.vitest
749
+ * import { Option, pipe, String } from "effect"
773
750
  *
774
- * pipe("abc", String.codePointAt(1)) // Option.some(98)
775
- * pipe("abc", String.codePointAt(10)) // Option.none()
751
+ * pipe("abc", String.codePointAt(1)) // => Option.some(98)
752
+ * pipe("abc", String.codePointAt(10)) // => Option.none()
776
753
  * ```
777
754
  *
778
- * @category elements
755
+ * @category getters
779
756
  * @since 2.0.0
780
757
  */
781
758
  export const codePointAt: {
@@ -784,14 +761,14 @@ export const codePointAt: {
784
761
  *
785
762
  * **Example** (Reading code points)
786
763
  *
787
- * ```ts
788
- * import { pipe, String } from "effect"
764
+ * ```ts import.meta.vitest
765
+ * import { Option, pipe, String } from "effect"
789
766
  *
790
- * pipe("abc", String.codePointAt(1)) // Option.some(98)
791
- * pipe("abc", String.codePointAt(10)) // Option.none()
767
+ * pipe("abc", String.codePointAt(1)) // => Option.some(98)
768
+ * pipe("abc", String.codePointAt(10)) // => Option.none()
792
769
  * ```
793
770
  *
794
- * @category elements
771
+ * @category getters
795
772
  * @since 2.0.0
796
773
  */
797
774
  (index: number): (self: string) => Option.Option<number>
@@ -800,14 +777,14 @@ export const codePointAt: {
800
777
  *
801
778
  * **Example** (Reading code points)
802
779
  *
803
- * ```ts
804
- * import { pipe, String } from "effect"
780
+ * ```ts import.meta.vitest
781
+ * import { Option, pipe, String } from "effect"
805
782
  *
806
- * pipe("abc", String.codePointAt(1)) // Option.some(98)
807
- * pipe("abc", String.codePointAt(10)) // Option.none()
783
+ * pipe("abc", String.codePointAt(1)) // => Option.some(98)
784
+ * pipe("abc", String.codePointAt(10)) // => Option.none()
808
785
  * ```
809
786
  *
810
- * @category elements
787
+ * @category getters
811
788
  * @since 2.0.0
812
789
  */
813
790
  (self: string, index: number): Option.Option<number>
@@ -818,11 +795,11 @@ export const codePointAt: {
818
795
  *
819
796
  * **Example** (Finding the first substring index)
820
797
  *
821
- * ```ts
822
- * import { pipe, String } from "effect"
798
+ * ```ts import.meta.vitest
799
+ * import { Option, pipe, String } from "effect"
823
800
  *
824
- * pipe("abbbc", String.indexOf("b")) // Option.some(1)
825
- * pipe("abbbc", String.indexOf("z")) // Option.none()
801
+ * pipe("abbbc", String.indexOf("b")) // => Option.some(1)
802
+ * pipe("abbbc", String.indexOf("z")) // => Option.none()
826
803
  * ```
827
804
  *
828
805
  * @category searching
@@ -836,11 +813,11 @@ export const indexOf = (searchString: string) => (self: string): Option.Option<n
836
813
  *
837
814
  * **Example** (Finding the last substring index)
838
815
  *
839
- * ```ts
840
- * import { pipe, String } from "effect"
816
+ * ```ts import.meta.vitest
817
+ * import { Option, pipe, String } from "effect"
841
818
  *
842
- * pipe("abbbc", String.lastIndexOf("b")) // Option.some(3)
843
- * pipe("abbbc", String.lastIndexOf("d")) // Option.none()
819
+ * pipe("abbbc", String.lastIndexOf("b")) // => Option.some(3)
820
+ * pipe("abbbc", String.lastIndexOf("d")) // => Option.none()
844
821
  * ```
845
822
  *
846
823
  * @category searching
@@ -856,16 +833,15 @@ export const lastIndexOf = (searchString: string) => (self: string): Option.Opti
856
833
  *
857
834
  * **Example** (Comparing strings by locale)
858
835
  *
859
- * ```ts
836
+ * ```ts import.meta.vitest
860
837
  * import { pipe, String } from "effect"
861
- * import * as assert from "node:assert"
862
838
  *
863
- * assert.deepStrictEqual(pipe("a", String.localeCompare("b")), -1)
864
- * assert.deepStrictEqual(pipe("b", String.localeCompare("a")), 1)
865
- * assert.deepStrictEqual(pipe("a", String.localeCompare("a")), 0)
839
+ * pipe("a", String.localeCompare("b")) // => -1
840
+ * pipe("b", String.localeCompare("a")) // => 1
841
+ * pipe("a", String.localeCompare("a")) // => 0
866
842
  * ```
867
843
  *
868
- * @category comparing
844
+ * @category comparisons
869
845
  * @since 2.0.0
870
846
  */
871
847
  export const localeCompare =
@@ -878,16 +854,15 @@ export const localeCompare =
878
854
  *
879
855
  * **Example** (Matching regular expressions)
880
856
  *
881
- * ```ts
857
+ * ```ts import.meta.vitest
882
858
  * import { Option, pipe, String } from "effect"
883
859
  *
884
- * const match = pipe("hello", String.match(/l+/))
885
- *
886
- * if (Option.isSome(match)) {
887
- * console.log(`${match.value[0]}@${match.value.index}`) // "ll@2"
888
- * }
889
- *
890
- * console.log(Option.isNone(pipe("hello", String.match(/x/)))) // true
860
+ * pipe(
861
+ * "hello",
862
+ * String.match(/l+/),
863
+ * Option.map((match) => [match[0], match.index])
864
+ * ) // => Option.some(["ll", 2])
865
+ * pipe("hello", String.match(/x/)) // => Option.none()
891
866
  * ```
892
867
  *
893
868
  * @category searching
@@ -902,13 +877,12 @@ export const match = (regExp: RegExp | string) => (self: string): Option.Option<
902
877
  *
903
878
  * **Example** (Iterating regular expression matches)
904
879
  *
905
- * ```ts
880
+ * ```ts import.meta.vitest
906
881
  * import { pipe, String } from "effect"
907
882
  *
908
883
  * const matches = pipe("hello world", String.matchAll(/l/g))
909
- * console.log(
910
- * Array.from(matches, (match) => `${match[0]}@${match.index}`).join(", ")
911
- * ) // "l@2, l@3, l@9"
884
+ *
885
+ * Array.from(matches, (match) => [match[0], match.index]) // => [["l", 2], ["l", 3], ["l", 9]]
912
886
  * ```
913
887
  *
914
888
  * @category searching
@@ -921,19 +895,21 @@ export const matchAll = (regExp: RegExp) => (self: string): IterableIterator<Reg
921
895
  *
922
896
  * **Example** (Normalizing Unicode strings)
923
897
  *
924
- * ```ts
898
+ * ```ts import.meta.vitest
925
899
  * import { pipe, String } from "effect"
926
- * import * as assert from "node:assert"
927
900
  *
928
901
  * const str = "\u1E9B\u0323"
929
- * assert.deepStrictEqual(pipe(str, String.normalize()), "\u1E9B\u0323")
930
- * assert.deepStrictEqual(pipe(str, String.normalize("NFC")), "\u1E9B\u0323")
931
- * assert.deepStrictEqual(pipe(str, String.normalize("NFD")), "\u017F\u0323\u0307")
932
- * assert.deepStrictEqual(pipe(str, String.normalize("NFKC")), "\u1E69")
933
- * assert.deepStrictEqual(
902
+ * Array.from(pipe(str, String.normalize()), (character) => character.codePointAt(0)) // => [0x1e9b, 0x323]
903
+ * Array.from(pipe(str, String.normalize("NFC")), (character) => character.codePointAt(0)) // => [0x1e9b, 0x323]
904
+ * Array.from(
905
+ * pipe(str, String.normalize("NFD")),
906
+ * (character) => character.codePointAt(0)
907
+ * ) // => [0x17f, 0x323, 0x307]
908
+ * Array.from(pipe(str, String.normalize("NFKC")), (character) => character.codePointAt(0)) // => [0x1e69]
909
+ * Array.from(
934
910
  * pipe(str, String.normalize("NFKD")),
935
- * "\u0073\u0323\u0307"
936
- * )
911
+ * (character) => character.codePointAt(0)
912
+ * ) // => [0x73, 0x323, 0x307]
937
913
  * ```
938
914
  *
939
915
  * @category transforming
@@ -946,12 +922,11 @@ export const normalize = (form?: "NFC" | "NFD" | "NFKC" | "NFKD") => (self: stri
946
922
  *
947
923
  * **Example** (Padding strings at the end)
948
924
  *
949
- * ```ts
925
+ * ```ts import.meta.vitest
950
926
  * import { pipe, String } from "effect"
951
- * import * as assert from "node:assert"
952
927
  *
953
- * assert.deepStrictEqual(pipe("a", String.padEnd(5)), "a ")
954
- * assert.deepStrictEqual(pipe("a", String.padEnd(5, "_")), "a____")
928
+ * pipe("a", String.padEnd(5)) // => "a "
929
+ * pipe("a", String.padEnd(5, "_")) // => "a____"
955
930
  * ```
956
931
  *
957
932
  * @category transforming
@@ -965,12 +940,11 @@ export const padEnd = (maxLength: number, fillString?: string) => (self: string)
965
940
  *
966
941
  * **Example** (Padding strings at the start)
967
942
  *
968
- * ```ts
943
+ * ```ts import.meta.vitest
969
944
  * import { pipe, String } from "effect"
970
- * import * as assert from "node:assert"
971
945
  *
972
- * assert.deepStrictEqual(pipe("a", String.padStart(5)), " a")
973
- * assert.deepStrictEqual(pipe("a", String.padStart(5, "_")), "____a")
946
+ * pipe("a", String.padStart(5)) // => " a"
947
+ * pipe("a", String.padStart(5, "_")) // => "____a"
974
948
  * ```
975
949
  *
976
950
  * @category transforming
@@ -984,12 +958,11 @@ export const padStart = (maxLength: number, fillString?: string) => (self: strin
984
958
  *
985
959
  * **Example** (Repeating strings)
986
960
  *
987
- * ```ts
961
+ * ```ts import.meta.vitest
988
962
  * import { pipe, String } from "effect"
989
- * import * as assert from "node:assert"
990
963
  *
991
- * assert.deepStrictEqual(pipe("a", String.repeat(5)), "aaaaa")
992
- * assert.deepStrictEqual(pipe("hello", String.repeat(3)), "hellohellohello")
964
+ * pipe("a", String.repeat(5)) // => "aaaaa"
965
+ * pipe("hello", String.repeat(3)) // => "hellohellohello"
993
966
  * ```
994
967
  *
995
968
  * @category transforming
@@ -1002,12 +975,11 @@ export const repeat = (count: number) => (self: string): string => self.repeat(c
1002
975
  *
1003
976
  * **Example** (Replacing all matches)
1004
977
  *
1005
- * ```ts
978
+ * ```ts import.meta.vitest
1006
979
  * import { pipe, String } from "effect"
1007
- * import * as assert from "node:assert"
1008
980
  *
1009
- * assert.deepStrictEqual(pipe("ababb", String.replaceAll("b", "c")), "acacc")
1010
- * assert.deepStrictEqual(pipe("ababb", String.replaceAll(/ba/g, "cc")), "accbb")
981
+ * pipe("ababb", String.replaceAll("b", "c")) // => "acacc"
982
+ * pipe("ababb", String.replaceAll(/ba/g, "cc")) // => "accbb"
1011
983
  * ```
1012
984
  *
1013
985
  * @category transforming
@@ -1022,12 +994,12 @@ export const replaceAll = (searchValue: string | RegExp, replaceValue: string) =
1022
994
  *
1023
995
  * **Example** (Searching strings)
1024
996
  *
1025
- * ```ts
1026
- * import { String } from "effect"
997
+ * ```ts import.meta.vitest
998
+ * import { Option, String } from "effect"
1027
999
  *
1028
- * String.search("ababb", "b") // Option.some(1)
1029
- * String.search("ababb", /abb/) // Option.some(2)
1030
- * String.search("ababb", "d") // Option.none()
1000
+ * String.search("ababb", "b") // => Option.some(1)
1001
+ * String.search("ababb", /abb/) // => Option.some(2)
1002
+ * String.search("ababb", "d") // => Option.none()
1031
1003
  * ```
1032
1004
  *
1033
1005
  * @category searching
@@ -1040,12 +1012,12 @@ export const search: {
1040
1012
  *
1041
1013
  * **Example** (Searching strings)
1042
1014
  *
1043
- * ```ts
1044
- * import { String } from "effect"
1015
+ * ```ts import.meta.vitest
1016
+ * import { Option, String } from "effect"
1045
1017
  *
1046
- * String.search("ababb", "b") // Option.some(1)
1047
- * String.search("ababb", /abb/) // Option.some(2)
1048
- * String.search("ababb", "d") // Option.none()
1018
+ * String.search("ababb", "b") // => Option.some(1)
1019
+ * String.search("ababb", /abb/) // => Option.some(2)
1020
+ * String.search("ababb", "d") // => Option.none()
1049
1021
  * ```
1050
1022
  *
1051
1023
  * @category searching
@@ -1058,12 +1030,12 @@ export const search: {
1058
1030
  *
1059
1031
  * **Example** (Searching strings)
1060
1032
  *
1061
- * ```ts
1062
- * import { String } from "effect"
1033
+ * ```ts import.meta.vitest
1034
+ * import { Option, String } from "effect"
1063
1035
  *
1064
- * String.search("ababb", "b") // Option.some(1)
1065
- * String.search("ababb", /abb/) // Option.some(2)
1066
- * String.search("ababb", "d") // Option.none()
1036
+ * String.search("ababb", "b") // => Option.some(1)
1037
+ * String.search("ababb", /abb/) // => Option.some(2)
1038
+ * String.search("ababb", "d") // => Option.none()
1067
1039
  * ```
1068
1040
  *
1069
1041
  * @category searching
@@ -1081,12 +1053,11 @@ export const search: {
1081
1053
  *
1082
1054
  * **Example** (Lowercasing strings by locale)
1083
1055
  *
1084
- * ```ts
1056
+ * ```ts import.meta.vitest
1085
1057
  * import { pipe, String } from "effect"
1086
- * import * as assert from "node:assert"
1087
1058
  *
1088
1059
  * const str = "\u0130"
1089
- * assert.deepStrictEqual(pipe(str, String.toLocaleLowerCase("tr")), "i")
1060
+ * pipe(str, String.toLocaleLowerCase("tr")) // => "i"
1090
1061
  * ```
1091
1062
  *
1092
1063
  * @category transforming
@@ -1100,12 +1071,11 @@ export const toLocaleLowerCase = (locale?: string | Array<string>) => (self: str
1100
1071
  *
1101
1072
  * **Example** (Uppercasing strings by locale)
1102
1073
  *
1103
- * ```ts
1074
+ * ```ts import.meta.vitest
1104
1075
  * import { pipe, String } from "effect"
1105
- * import * as assert from "node:assert"
1106
1076
  *
1107
1077
  * const str = "i\u0307"
1108
- * assert.deepStrictEqual(pipe(str, String.toLocaleUpperCase("lt-LT")), "I")
1078
+ * pipe(str, String.toLocaleUpperCase("lt-LT")) // => "I"
1109
1079
  * ```
1110
1080
  *
1111
1081
  * @category transforming
@@ -1128,11 +1098,10 @@ export const toLocaleUpperCase = (locale?: string | Array<string>) => (self: str
1128
1098
  *
1129
1099
  * **Example** (Taking characters from the start)
1130
1100
  *
1131
- * ```ts
1101
+ * ```ts import.meta.vitest
1132
1102
  * import { String } from "effect"
1133
- * import * as assert from "node:assert"
1134
1103
  *
1135
- * assert.deepStrictEqual(String.takeLeft("Hello World", 5), "Hello")
1104
+ * String.takeLeft("Hello World", 5) // => "Hello"
1136
1105
  * ```
1137
1106
  *
1138
1107
  * @category transforming
@@ -1153,11 +1122,10 @@ export const takeLeft: {
1153
1122
  *
1154
1123
  * **Example** (Taking characters from the start)
1155
1124
  *
1156
- * ```ts
1125
+ * ```ts import.meta.vitest
1157
1126
  * import { String } from "effect"
1158
- * import * as assert from "node:assert"
1159
1127
  *
1160
- * assert.deepStrictEqual(String.takeLeft("Hello World", 5), "Hello")
1128
+ * String.takeLeft("Hello World", 5) // => "Hello"
1161
1129
  * ```
1162
1130
  *
1163
1131
  * @category transforming
@@ -1178,11 +1146,10 @@ export const takeLeft: {
1178
1146
  *
1179
1147
  * **Example** (Taking characters from the start)
1180
1148
  *
1181
- * ```ts
1149
+ * ```ts import.meta.vitest
1182
1150
  * import { String } from "effect"
1183
- * import * as assert from "node:assert"
1184
1151
  *
1185
- * assert.deepStrictEqual(String.takeLeft("Hello World", 5), "Hello")
1152
+ * String.takeLeft("Hello World", 5) // => "Hello"
1186
1153
  * ```
1187
1154
  *
1188
1155
  * @category transforming
@@ -1205,11 +1172,10 @@ export const takeLeft: {
1205
1172
  *
1206
1173
  * **Example** (Taking characters from the end)
1207
1174
  *
1208
- * ```ts
1175
+ * ```ts import.meta.vitest
1209
1176
  * import { String } from "effect"
1210
- * import * as assert from "node:assert"
1211
1177
  *
1212
- * assert.deepStrictEqual(String.takeRight("Hello World", 5), "World")
1178
+ * String.takeRight("Hello World", 5) // => "World"
1213
1179
  * ```
1214
1180
  *
1215
1181
  * @category transforming
@@ -1230,11 +1196,10 @@ export const takeRight: {
1230
1196
  *
1231
1197
  * **Example** (Taking characters from the end)
1232
1198
  *
1233
- * ```ts
1199
+ * ```ts import.meta.vitest
1234
1200
  * import { String } from "effect"
1235
- * import * as assert from "node:assert"
1236
1201
  *
1237
- * assert.deepStrictEqual(String.takeRight("Hello World", 5), "World")
1202
+ * String.takeRight("Hello World", 5) // => "World"
1238
1203
  * ```
1239
1204
  *
1240
1205
  * @category transforming
@@ -1255,11 +1220,10 @@ export const takeRight: {
1255
1220
  *
1256
1221
  * **Example** (Taking characters from the end)
1257
1222
  *
1258
- * ```ts
1223
+ * ```ts import.meta.vitest
1259
1224
  * import { String } from "effect"
1260
- * import * as assert from "node:assert"
1261
1225
  *
1262
- * assert.deepStrictEqual(String.takeRight("Hello World", 5), "World")
1226
+ * String.takeRight("Hello World", 5) // => "World"
1263
1227
  * ```
1264
1228
  *
1265
1229
  * @category transforming
@@ -1280,11 +1244,10 @@ const LF = 0x0a
1280
1244
  *
1281
1245
  * **Example** (Iterating lines without separators)
1282
1246
  *
1283
- * ```ts
1247
+ * ```ts import.meta.vitest
1284
1248
  * import { String } from "effect"
1285
1249
  *
1286
- * const lines = String.linesIterator("hello\nworld\n")
1287
- * console.log(Array.from(lines)) // ["hello", "world"]
1250
+ * Array.from(String.linesIterator("hello\nworld\n")) // => ["hello", "world"]
1288
1251
  * ```
1289
1252
  *
1290
1253
  * @category splitting
@@ -1298,11 +1261,10 @@ export const linesIterator = (self: string): LinesIterator => linesSeparated(sel
1298
1261
  *
1299
1262
  * **Example** (Iterating lines with separators)
1300
1263
  *
1301
- * ```ts
1264
+ * ```ts import.meta.vitest
1302
1265
  * import { String } from "effect"
1303
1266
  *
1304
- * const lines = String.linesWithSeparators("hello\nworld\n")
1305
- * console.log(Array.from(lines)) // ["hello\n", "world\n"]
1267
+ * Array.from(String.linesWithSeparators("hello\nworld\n")) // => ["hello\n", "world\n"]
1306
1268
  * ```
1307
1269
  *
1308
1270
  * @category splitting
@@ -1316,12 +1278,10 @@ export const linesWithSeparators = (s: string): LinesIterator => linesSeparated(
1316
1278
  *
1317
1279
  * **Example** (Stripping custom margins)
1318
1280
  *
1319
- * ```ts
1281
+ * ```ts import.meta.vitest
1320
1282
  * import { String } from "effect"
1321
1283
  *
1322
- * const text = " |hello\n |world"
1323
- * const result = String.stripMarginWith(text, "|")
1324
- * console.log(result) // "hello\nworld"
1284
+ * String.stripMarginWith(" |hello\n |world", "|") // => "hello\nworld"
1325
1285
  * ```
1326
1286
  *
1327
1287
  * @category transforming
@@ -1334,12 +1294,10 @@ export const stripMarginWith: {
1334
1294
  *
1335
1295
  * **Example** (Stripping custom margins)
1336
1296
  *
1337
- * ```ts
1297
+ * ```ts import.meta.vitest
1338
1298
  * import { String } from "effect"
1339
1299
  *
1340
- * const text = " |hello\n |world"
1341
- * const result = String.stripMarginWith(text, "|")
1342
- * console.log(result) // "hello\nworld"
1300
+ * String.stripMarginWith(" |hello\n |world", "|") // => "hello\nworld"
1343
1301
  * ```
1344
1302
  *
1345
1303
  * @category transforming
@@ -1352,12 +1310,10 @@ export const stripMarginWith: {
1352
1310
  *
1353
1311
  * **Example** (Stripping custom margins)
1354
1312
  *
1355
- * ```ts
1313
+ * ```ts import.meta.vitest
1356
1314
  * import { String } from "effect"
1357
1315
  *
1358
- * const text = " |hello\n |world"
1359
- * const result = String.stripMarginWith(text, "|")
1360
- * console.log(result) // "hello\nworld"
1316
+ * String.stripMarginWith(" |hello\n |world", "|") // => "hello\nworld"
1361
1317
  * ```
1362
1318
  *
1363
1319
  * @category transforming
@@ -1389,12 +1345,10 @@ export const stripMarginWith: {
1389
1345
  *
1390
1346
  * **Example** (Stripping pipe margins)
1391
1347
  *
1392
- * ```ts
1348
+ * ```ts import.meta.vitest
1393
1349
  * import { String } from "effect"
1394
1350
  *
1395
- * const text = " |hello\n |world"
1396
- * const result = String.stripMargin(text)
1397
- * console.log(result) // "hello\nworld"
1351
+ * String.stripMargin(" |hello\n |world") // => "hello\nworld"
1398
1352
  * ```
1399
1353
  *
1400
1354
  * @category transforming
@@ -1407,17 +1361,18 @@ export const stripMargin = (self: string): string => stripMarginWith(self, "|")
1407
1361
  *
1408
1362
  * **Example** (Converting snake_case to camelCase)
1409
1363
  *
1410
- * ```ts
1364
+ * ```ts import.meta.vitest
1411
1365
  * import { String } from "effect"
1412
1366
  *
1413
- * console.log(String.snakeToCamel("hello_world")) // "helloWorld"
1414
- * console.log(String.snakeToCamel("foo_bar_baz")) // "fooBarBaz"
1367
+ * String.snakeToCamel("hello_world") // => "helloWorld"
1368
+ * String.snakeToCamel("foo_bar_baz") // => "fooBarBaz"
1415
1369
  * ```
1416
1370
  *
1417
1371
  * @category transforming
1418
1372
  * @since 2.0.0
1419
1373
  */
1420
1374
  export const snakeToCamel = (self: string): string => {
1375
+ if (self.length === 0) return self
1421
1376
  let str = self[0]
1422
1377
  for (let i = 1; i < self.length; i++) {
1423
1378
  str += self[i] === "_" ? self[++i].toUpperCase() : self[i]
@@ -1430,17 +1385,18 @@ export const snakeToCamel = (self: string): string => {
1430
1385
  *
1431
1386
  * **Example** (Converting snake_case to PascalCase)
1432
1387
  *
1433
- * ```ts
1388
+ * ```ts import.meta.vitest
1434
1389
  * import { String } from "effect"
1435
1390
  *
1436
- * console.log(String.snakeToPascal("hello_world")) // "HelloWorld"
1437
- * console.log(String.snakeToPascal("foo_bar_baz")) // "FooBarBaz"
1391
+ * String.snakeToPascal("hello_world") // => "HelloWorld"
1392
+ * String.snakeToPascal("foo_bar_baz") // => "FooBarBaz"
1438
1393
  * ```
1439
1394
  *
1440
1395
  * @category transforming
1441
1396
  * @since 2.0.0
1442
1397
  */
1443
1398
  export const snakeToPascal = (self: string): string => {
1399
+ if (self.length === 0) return self
1444
1400
  let str = self[0].toUpperCase()
1445
1401
  for (let i = 1; i < self.length; i++) {
1446
1402
  str += self[i] === "_" ? self[++i].toUpperCase() : self[i]
@@ -1453,11 +1409,11 @@ export const snakeToPascal = (self: string): string => {
1453
1409
  *
1454
1410
  * **Example** (Converting snake_case to kebab-case)
1455
1411
  *
1456
- * ```ts
1412
+ * ```ts import.meta.vitest
1457
1413
  * import { String } from "effect"
1458
1414
  *
1459
- * console.log(String.snakeToKebab("hello_world")) // "hello-world"
1460
- * console.log(String.snakeToKebab("foo_bar_baz")) // "foo-bar-baz"
1415
+ * String.snakeToKebab("hello_world") // => "hello-world"
1416
+ * String.snakeToKebab("foo_bar_baz") // => "foo-bar-baz"
1461
1417
  * ```
1462
1418
  *
1463
1419
  * @category transforming
@@ -1470,11 +1426,11 @@ export const snakeToKebab = (self: string): string => self.replace(/_/g, "-")
1470
1426
  *
1471
1427
  * **Example** (Converting camelCase to snake_case)
1472
1428
  *
1473
- * ```ts
1429
+ * ```ts import.meta.vitest
1474
1430
  * import { String } from "effect"
1475
1431
  *
1476
- * console.log(String.camelToSnake("helloWorld")) // "hello_world"
1477
- * console.log(String.camelToSnake("fooBarBaz")) // "foo_bar_baz"
1432
+ * String.camelToSnake("helloWorld") // => "hello_world"
1433
+ * String.camelToSnake("fooBarBaz") // => "foo_bar_baz"
1478
1434
  * ```
1479
1435
  *
1480
1436
  * @category transforming
@@ -1487,11 +1443,11 @@ export const camelToSnake = (self: string): string => self.replace(/([A-Z])/g, "
1487
1443
  *
1488
1444
  * **Example** (Converting PascalCase to snake_case)
1489
1445
  *
1490
- * ```ts
1446
+ * ```ts import.meta.vitest
1491
1447
  * import { String } from "effect"
1492
1448
  *
1493
- * console.log(String.pascalToSnake("HelloWorld")) // "hello_world"
1494
- * console.log(String.pascalToSnake("FooBarBaz")) // "foo_bar_baz"
1449
+ * String.pascalToSnake("HelloWorld") // => "hello_world"
1450
+ * String.pascalToSnake("FooBarBaz") // => "foo_bar_baz"
1495
1451
  * ```
1496
1452
  *
1497
1453
  * @category transforming
@@ -1505,11 +1461,11 @@ export const pascalToSnake = (self: string): string =>
1505
1461
  *
1506
1462
  * **Example** (Converting kebab-case to snake_case)
1507
1463
  *
1508
- * ```ts
1464
+ * ```ts import.meta.vitest
1509
1465
  * import { String } from "effect"
1510
1466
  *
1511
- * console.log(String.kebabToSnake("hello-world")) // "hello_world"
1512
- * console.log(String.kebabToSnake("foo-bar-baz")) // "foo_bar_baz"
1467
+ * String.kebabToSnake("hello-world") // => "hello_world"
1468
+ * String.kebabToSnake("foo-bar-baz") // => "foo_bar_baz"
1513
1469
  * ```
1514
1470
  *
1515
1471
  * @category transforming
@@ -1659,15 +1615,20 @@ export const noCase: {
1659
1615
  readonly delimiter?: string | undefined
1660
1616
  readonly transform?: (part: string, index: number, parts: ReadonlyArray<string>) => string
1661
1617
  }): string => {
1618
+ const splitRegExp = toRegExpArray(options?.splitRegExp ?? SPLIT_REGEXP)
1619
+ const stripRegExp = toRegExpArray(options?.stripRegExp ?? STRIP_REGEXP)
1662
1620
  const delimiter = options?.delimiter ?? " "
1663
1621
  const transform = options?.transform ?? toLowerCase
1664
- return normalizeCase(input, SPLIT_REGEXP, STRIP_REGEXP, delimiter, transform)
1622
+ return normalizeCase(input, splitRegExp, stripRegExp, delimiter, transform)
1665
1623
  })
1666
1624
 
1625
+ const toRegExpArray = (regexp: RegExp | ReadonlyArray<RegExp>): ReadonlyArray<RegExp> =>
1626
+ predicate.isRegExp(regexp) ? [regexp] : regexp
1627
+
1667
1628
  const normalizeCase = (
1668
1629
  input: string,
1669
1630
  splitRegExp: ReadonlyArray<RegExp>,
1670
- stripRegExp: RegExp,
1631
+ stripRegExp: ReadonlyArray<RegExp>,
1671
1632
  delimiter: string,
1672
1633
  transform: (part: string, index: number, parts: ReadonlyArray<string>) => string
1673
1634
  ): string => {
@@ -1675,7 +1636,9 @@ const normalizeCase = (
1675
1636
  for (const regexp of splitRegExp) {
1676
1637
  result = result.replace(regexp, "$1\0$2")
1677
1638
  }
1678
- result = result.replace(stripRegExp, "\0")
1639
+ for (const regexp of stripRegExp) {
1640
+ result = result.replace(regexp, "\0")
1641
+ }
1679
1642
  let start = 0
1680
1643
  let end = result.length
1681
1644
  // Trim the delimiter from around the output string.
@@ -1795,7 +1758,7 @@ export const constantCase: (self: string) => string = noCase({
1795
1758
  * @since 4.0.0
1796
1759
  */
1797
1760
  export const configCase: (self: string) => string = (self) =>
1798
- normalizeCase(self, CONFIG_SPLIT_REGEXP, STRIP_REGEXP, "_", toUpperCase)
1761
+ normalizeCase(self, CONFIG_SPLIT_REGEXP, [STRIP_REGEXP], "_", toUpperCase)
1799
1762
 
1800
1763
  /**
1801
1764
  * Converts a string to kebab-case (lowercase with hyphens).