effect 4.0.1 → 4.0.3

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 (1085) hide show
  1. package/ai-docs/package.json +2 -2
  2. package/ai-docs/tsconfig.json +2 -1
  3. package/dist/Array.d.ts +339 -0
  4. package/dist/Array.d.ts.map +1 -1
  5. package/dist/Array.js +143 -3
  6. package/dist/Array.js.map +1 -1
  7. package/dist/BigDecimal.d.ts +88 -0
  8. package/dist/BigDecimal.d.ts.map +1 -1
  9. package/dist/BigDecimal.js +44 -0
  10. package/dist/BigDecimal.js.map +1 -1
  11. package/dist/BigInt.d.ts +68 -0
  12. package/dist/BigInt.d.ts.map +1 -1
  13. package/dist/BigInt.js +36 -0
  14. package/dist/BigInt.js.map +1 -1
  15. package/dist/Boolean.d.ts +34 -0
  16. package/dist/Boolean.d.ts.map +1 -1
  17. package/dist/Boolean.js +18 -0
  18. package/dist/Boolean.js.map +1 -1
  19. package/dist/Brand.d.ts +9 -0
  20. package/dist/Brand.d.ts.map +1 -1
  21. package/dist/Brand.js +6 -0
  22. package/dist/Brand.js.map +1 -1
  23. package/dist/ByteSize.d.ts +86 -0
  24. package/dist/ByteSize.d.ts.map +1 -1
  25. package/dist/ByteSize.js +51 -0
  26. package/dist/ByteSize.js.map +1 -1
  27. package/dist/Cache.d.ts +38 -1
  28. package/dist/Cache.d.ts.map +1 -1
  29. package/dist/Cache.js +27 -7
  30. package/dist/Cache.js.map +1 -1
  31. package/dist/Cause.d.ts +82 -0
  32. package/dist/Cause.d.ts.map +1 -1
  33. package/dist/Cause.js +60 -0
  34. package/dist/Cause.js.map +1 -1
  35. package/dist/Channel.d.ts +327 -4
  36. package/dist/Channel.d.ts.map +1 -1
  37. package/dist/Channel.js +168 -8
  38. package/dist/Channel.js.map +1 -1
  39. package/dist/ChannelSchema.d.ts +11 -0
  40. package/dist/ChannelSchema.d.ts.map +1 -1
  41. package/dist/ChannelSchema.js +6 -0
  42. package/dist/ChannelSchema.js.map +1 -1
  43. package/dist/Chunk.d.ts +192 -0
  44. package/dist/Chunk.d.ts.map +1 -1
  45. package/dist/Chunk.js +78 -0
  46. package/dist/Chunk.js.map +1 -1
  47. package/dist/Clock.d.ts +7 -0
  48. package/dist/Clock.d.ts.map +1 -1
  49. package/dist/Clock.js +5 -0
  50. package/dist/Clock.js.map +1 -1
  51. package/dist/Combiner.d.ts +10 -0
  52. package/dist/Combiner.d.ts.map +1 -1
  53. package/dist/Combiner.js +8 -0
  54. package/dist/Combiner.js.map +1 -1
  55. package/dist/Config.d.ts +52 -12
  56. package/dist/Config.d.ts.map +1 -1
  57. package/dist/Config.js +55 -5
  58. package/dist/Config.js.map +1 -1
  59. package/dist/ConfigProvider.d.ts +28 -0
  60. package/dist/ConfigProvider.d.ts.map +1 -1
  61. package/dist/ConfigProvider.js +19 -0
  62. package/dist/ConfigProvider.js.map +1 -1
  63. package/dist/Console.d.ts +22 -0
  64. package/dist/Console.d.ts.map +1 -1
  65. package/dist/Console.js +20 -0
  66. package/dist/Console.js.map +1 -1
  67. package/dist/Context.d.ts +50 -0
  68. package/dist/Context.d.ts.map +1 -1
  69. package/dist/Context.js +24 -3
  70. package/dist/Context.js.map +1 -1
  71. package/dist/Cron.d.ts +16 -0
  72. package/dist/Cron.d.ts.map +1 -1
  73. package/dist/Cron.js +26 -1
  74. package/dist/Cron.js.map +1 -1
  75. package/dist/Crypto.d.ts +38 -5
  76. package/dist/Crypto.d.ts.map +1 -1
  77. package/dist/Crypto.js +11 -2
  78. package/dist/Crypto.js.map +1 -1
  79. package/dist/Data.d.ts +13 -0
  80. package/dist/Data.d.ts.map +1 -1
  81. package/dist/Data.js +5 -0
  82. package/dist/Data.js.map +1 -1
  83. package/dist/DateTime.d.ts +180 -6
  84. package/dist/DateTime.d.ts.map +1 -1
  85. package/dist/DateTime.js +98 -6
  86. package/dist/DateTime.js.map +1 -1
  87. package/dist/Deferred.d.ts +51 -0
  88. package/dist/Deferred.d.ts.map +1 -1
  89. package/dist/Deferred.js +22 -0
  90. package/dist/Deferred.js.map +1 -1
  91. package/dist/Differ.d.ts +2 -0
  92. package/dist/Differ.d.ts.map +1 -1
  93. package/dist/Differ.js +1 -0
  94. package/dist/Duration.d.ts +96 -6
  95. package/dist/Duration.d.ts.map +1 -1
  96. package/dist/Duration.js +80 -8
  97. package/dist/Duration.js.map +1 -1
  98. package/dist/Effect.d.ts +527 -0
  99. package/dist/Effect.d.ts.map +1 -1
  100. package/dist/Effect.js +240 -5
  101. package/dist/Effect.js.map +1 -1
  102. package/dist/Effectable.d.ts +4 -0
  103. package/dist/Effectable.d.ts.map +1 -1
  104. package/dist/Effectable.js +3 -0
  105. package/dist/Effectable.js.map +1 -1
  106. package/dist/Equal.d.ts +8 -0
  107. package/dist/Equal.d.ts.map +1 -1
  108. package/dist/Equal.js +9 -1
  109. package/dist/Equal.js.map +1 -1
  110. package/dist/Equivalence.d.ts +21 -0
  111. package/dist/Equivalence.d.ts.map +1 -1
  112. package/dist/Equivalence.js +16 -0
  113. package/dist/Equivalence.js.map +1 -1
  114. package/dist/ErrorReporter.d.ts +36 -0
  115. package/dist/ErrorReporter.d.ts.map +1 -1
  116. package/dist/ErrorReporter.js +11 -0
  117. package/dist/ErrorReporter.js.map +1 -1
  118. package/dist/ExecutionPlan.d.ts +49 -8
  119. package/dist/ExecutionPlan.d.ts.map +1 -1
  120. package/dist/ExecutionPlan.js +7 -0
  121. package/dist/ExecutionPlan.js.map +1 -1
  122. package/dist/Exit.d.ts +40 -0
  123. package/dist/Exit.d.ts.map +1 -1
  124. package/dist/Exit.js +27 -0
  125. package/dist/Exit.js.map +1 -1
  126. package/dist/Fiber.d.ts +20 -0
  127. package/dist/Fiber.d.ts.map +1 -1
  128. package/dist/Fiber.js +11 -0
  129. package/dist/Fiber.js.map +1 -1
  130. package/dist/FiberHandle.d.ts +21 -0
  131. package/dist/FiberHandle.d.ts.map +1 -1
  132. package/dist/FiberHandle.js +21 -4
  133. package/dist/FiberHandle.js.map +1 -1
  134. package/dist/FiberMap.d.ts +35 -0
  135. package/dist/FiberMap.d.ts.map +1 -1
  136. package/dist/FiberMap.js +19 -0
  137. package/dist/FiberMap.js.map +1 -1
  138. package/dist/FiberSet.d.ts +20 -0
  139. package/dist/FiberSet.d.ts.map +1 -1
  140. package/dist/FiberSet.js +14 -0
  141. package/dist/FiberSet.js.map +1 -1
  142. package/dist/FileSystem.d.ts +59 -2
  143. package/dist/FileSystem.d.ts.map +1 -1
  144. package/dist/FileSystem.js +8 -0
  145. package/dist/FileSystem.js.map +1 -1
  146. package/dist/Filter.d.ts +55 -0
  147. package/dist/Filter.d.ts.map +1 -1
  148. package/dist/Filter.js +28 -0
  149. package/dist/Filter.js.map +1 -1
  150. package/dist/Formatter.d.ts +3 -0
  151. package/dist/Formatter.d.ts.map +1 -1
  152. package/dist/Formatter.js +39 -1
  153. package/dist/Formatter.js.map +1 -1
  154. package/dist/Function.d.ts +30 -0
  155. package/dist/Function.d.ts.map +1 -1
  156. package/dist/Function.js +20 -0
  157. package/dist/Function.js.map +1 -1
  158. package/dist/Graph.d.ts +247 -12
  159. package/dist/Graph.d.ts.map +1 -1
  160. package/dist/Graph.js +149 -28
  161. package/dist/Graph.js.map +1 -1
  162. package/dist/HKT.d.ts +5 -0
  163. package/dist/HKT.d.ts.map +1 -1
  164. package/dist/Hash.d.ts +14 -0
  165. package/dist/Hash.d.ts.map +1 -1
  166. package/dist/Hash.js +12 -0
  167. package/dist/Hash.js.map +1 -1
  168. package/dist/HashMap.d.ts +91 -0
  169. package/dist/HashMap.d.ts.map +1 -1
  170. package/dist/HashMap.js +39 -0
  171. package/dist/HashMap.js.map +1 -1
  172. package/dist/HashRing.d.ts +17 -0
  173. package/dist/HashRing.d.ts.map +1 -1
  174. package/dist/HashRing.js +9 -0
  175. package/dist/HashRing.js.map +1 -1
  176. package/dist/HashSet.d.ts +49 -0
  177. package/dist/HashSet.d.ts.map +1 -1
  178. package/dist/HashSet.js +19 -0
  179. package/dist/HashSet.js.map +1 -1
  180. package/dist/Inspectable.d.ts +7 -0
  181. package/dist/Inspectable.d.ts.map +1 -1
  182. package/dist/Inspectable.js +6 -0
  183. package/dist/Inspectable.js.map +1 -1
  184. package/dist/Iterable.d.ts +127 -0
  185. package/dist/Iterable.d.ts.map +1 -1
  186. package/dist/Iterable.js +51 -0
  187. package/dist/Iterable.js.map +1 -1
  188. package/dist/JsonPatch.d.ts +4 -0
  189. package/dist/JsonPatch.d.ts.map +1 -1
  190. package/dist/JsonPatch.js +3 -0
  191. package/dist/JsonPatch.js.map +1 -1
  192. package/dist/JsonPointer.d.ts +5 -0
  193. package/dist/JsonPointer.d.ts.map +1 -1
  194. package/dist/JsonPointer.js +5 -0
  195. package/dist/JsonPointer.js.map +1 -1
  196. package/dist/JsonSchema.d.ts +16 -0
  197. package/dist/JsonSchema.d.ts.map +1 -1
  198. package/dist/JsonSchema.js +11 -0
  199. package/dist/JsonSchema.js.map +1 -1
  200. package/dist/Latch.d.ts +14 -0
  201. package/dist/Latch.d.ts.map +1 -1
  202. package/dist/Latch.js +10 -0
  203. package/dist/Latch.js.map +1 -1
  204. package/dist/Layer.d.ts +100 -0
  205. package/dist/Layer.d.ts.map +1 -1
  206. package/dist/Layer.js +45 -1
  207. package/dist/Layer.js.map +1 -1
  208. package/dist/LayerMap.d.ts +7 -0
  209. package/dist/LayerMap.d.ts.map +1 -1
  210. package/dist/LayerMap.js +4 -0
  211. package/dist/LayerMap.js.map +1 -1
  212. package/dist/LayerRef.d.ts +5 -0
  213. package/dist/LayerRef.d.ts.map +1 -1
  214. package/dist/LayerRef.js +3 -0
  215. package/dist/LayerRef.js.map +1 -1
  216. package/dist/LogLevel.d.ts +20 -0
  217. package/dist/LogLevel.d.ts.map +1 -1
  218. package/dist/LogLevel.js +9 -0
  219. package/dist/LogLevel.js.map +1 -1
  220. package/dist/Logger.d.ts +25 -0
  221. package/dist/Logger.d.ts.map +1 -1
  222. package/dist/Logger.js +30 -4
  223. package/dist/Logger.js.map +1 -1
  224. package/dist/ManagedRuntime.d.ts +5 -0
  225. package/dist/ManagedRuntime.d.ts.map +1 -1
  226. package/dist/ManagedRuntime.js +9 -1
  227. package/dist/ManagedRuntime.js.map +1 -1
  228. package/dist/Match.d.ts +51 -0
  229. package/dist/Match.d.ts.map +1 -1
  230. package/dist/Match.js +39 -0
  231. package/dist/Match.js.map +1 -1
  232. package/dist/Metric.d.ts +59 -0
  233. package/dist/Metric.d.ts.map +1 -1
  234. package/dist/Metric.js +31 -0
  235. package/dist/Metric.js.map +1 -1
  236. package/dist/MutableHashMap.d.ts +32 -0
  237. package/dist/MutableHashMap.d.ts.map +1 -1
  238. package/dist/MutableHashMap.js +16 -0
  239. package/dist/MutableHashMap.js.map +1 -1
  240. package/dist/MutableHashSet.d.ts +16 -0
  241. package/dist/MutableHashSet.d.ts.map +1 -1
  242. package/dist/MutableHashSet.js +10 -0
  243. package/dist/MutableHashSet.js.map +1 -1
  244. package/dist/MutableList.d.ts +20 -0
  245. package/dist/MutableList.d.ts.map +1 -1
  246. package/dist/MutableList.js +18 -0
  247. package/dist/MutableList.js.map +1 -1
  248. package/dist/MutableRef.d.ts +31 -0
  249. package/dist/MutableRef.d.ts.map +1 -1
  250. package/dist/MutableRef.js +17 -0
  251. package/dist/MutableRef.js.map +1 -1
  252. package/dist/Newtype.d.ts +9 -0
  253. package/dist/Newtype.d.ts.map +1 -1
  254. package/dist/Newtype.js +6 -0
  255. package/dist/Newtype.js.map +1 -1
  256. package/dist/NonEmptyIterable.d.ts +4 -0
  257. package/dist/NonEmptyIterable.d.ts.map +1 -1
  258. package/dist/NonEmptyIterable.js +2 -0
  259. package/dist/NonEmptyIterable.js.map +1 -1
  260. package/dist/Number.d.ts +61 -0
  261. package/dist/Number.d.ts.map +1 -1
  262. package/dist/Number.js +31 -0
  263. package/dist/Number.js.map +1 -1
  264. package/dist/Optic.d.ts +41 -0
  265. package/dist/Optic.d.ts.map +1 -1
  266. package/dist/Optic.js +20 -0
  267. package/dist/Optic.js.map +1 -1
  268. package/dist/Option.d.ts +134 -0
  269. package/dist/Option.d.ts.map +1 -1
  270. package/dist/Option.js +61 -0
  271. package/dist/Option.js.map +1 -1
  272. package/dist/Order.d.ts +29 -0
  273. package/dist/Order.d.ts.map +1 -1
  274. package/dist/Order.js +24 -0
  275. package/dist/Order.js.map +1 -1
  276. package/dist/Ordering.d.ts +7 -0
  277. package/dist/Ordering.d.ts.map +1 -1
  278. package/dist/Ordering.js +3 -0
  279. package/dist/Ordering.js.map +1 -1
  280. package/dist/PartitionedSemaphore.d.ts +24 -0
  281. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  282. package/dist/PartitionedSemaphore.js +47 -21
  283. package/dist/PartitionedSemaphore.js.map +1 -1
  284. package/dist/Path.d.ts +6 -0
  285. package/dist/Path.d.ts.map +1 -1
  286. package/dist/Path.js +4 -0
  287. package/dist/Path.js.map +1 -1
  288. package/dist/Pipeable.d.ts +7 -0
  289. package/dist/Pipeable.d.ts.map +1 -1
  290. package/dist/Pipeable.js +5 -0
  291. package/dist/Pipeable.js.map +1 -1
  292. package/dist/PlatformError.d.ts +8 -0
  293. package/dist/PlatformError.d.ts.map +1 -1
  294. package/dist/PlatformError.js +7 -0
  295. package/dist/PlatformError.js.map +1 -1
  296. package/dist/Pool.d.ts +19 -0
  297. package/dist/Pool.d.ts.map +1 -1
  298. package/dist/Pool.js +8 -1
  299. package/dist/Pool.js.map +1 -1
  300. package/dist/Predicate.d.ts +84 -0
  301. package/dist/Predicate.d.ts.map +1 -1
  302. package/dist/Predicate.js +48 -0
  303. package/dist/Predicate.js.map +1 -1
  304. package/dist/PrimaryKey.d.ts +5 -0
  305. package/dist/PrimaryKey.d.ts.map +1 -1
  306. package/dist/PrimaryKey.js +4 -0
  307. package/dist/PrimaryKey.js.map +1 -1
  308. package/dist/PubSub.d.ts +67 -5
  309. package/dist/PubSub.d.ts.map +1 -1
  310. package/dist/PubSub.js +60 -8
  311. package/dist/PubSub.js.map +1 -1
  312. package/dist/Pull.d.ts +20 -0
  313. package/dist/Pull.d.ts.map +1 -1
  314. package/dist/Pull.js +10 -0
  315. package/dist/Pull.js.map +1 -1
  316. package/dist/Queue.d.ts +60 -0
  317. package/dist/Queue.d.ts.map +1 -1
  318. package/dist/Queue.js +58 -8
  319. package/dist/Queue.js.map +1 -1
  320. package/dist/Random.d.ts +13 -0
  321. package/dist/Random.d.ts.map +1 -1
  322. package/dist/Random.js +9 -0
  323. package/dist/Random.js.map +1 -1
  324. package/dist/RcMap.d.ts +23 -0
  325. package/dist/RcMap.d.ts.map +1 -1
  326. package/dist/RcMap.js +8 -0
  327. package/dist/RcMap.js.map +1 -1
  328. package/dist/RcRef.d.ts +6 -0
  329. package/dist/RcRef.d.ts.map +1 -1
  330. package/dist/RcRef.js +3 -0
  331. package/dist/RcRef.js.map +1 -1
  332. package/dist/Record.d.ts +100 -0
  333. package/dist/Record.d.ts.map +1 -1
  334. package/dist/Record.js +43 -0
  335. package/dist/Record.js.map +1 -1
  336. package/dist/Redactable.d.ts +6 -0
  337. package/dist/Redactable.d.ts.map +1 -1
  338. package/dist/Redactable.js +4 -0
  339. package/dist/Redactable.js.map +1 -1
  340. package/dist/Redacted.d.ts +8 -0
  341. package/dist/Redacted.d.ts.map +1 -1
  342. package/dist/Redacted.js +6 -0
  343. package/dist/Redacted.js.map +1 -1
  344. package/dist/Reducer.d.ts +4 -0
  345. package/dist/Reducer.d.ts.map +1 -1
  346. package/dist/Reducer.js +3 -0
  347. package/dist/Reducer.js.map +1 -1
  348. package/dist/Ref.d.ts +20 -0
  349. package/dist/Ref.d.ts.map +1 -1
  350. package/dist/Ref.js +16 -0
  351. package/dist/Ref.js.map +1 -1
  352. package/dist/References.d.ts +21 -0
  353. package/dist/References.d.ts.map +1 -1
  354. package/dist/References.js +19 -0
  355. package/dist/References.js.map +1 -1
  356. package/dist/RegExp.d.ts +3 -0
  357. package/dist/RegExp.d.ts.map +1 -1
  358. package/dist/RegExp.js +4 -0
  359. package/dist/RegExp.js.map +1 -1
  360. package/dist/Request.d.ts +32 -0
  361. package/dist/Request.d.ts.map +1 -1
  362. package/dist/Request.js +12 -0
  363. package/dist/Request.js.map +1 -1
  364. package/dist/RequestResolver.d.ts +42 -0
  365. package/dist/RequestResolver.d.ts.map +1 -1
  366. package/dist/RequestResolver.js +27 -6
  367. package/dist/RequestResolver.js.map +1 -1
  368. package/dist/Resource.d.ts +6 -0
  369. package/dist/Resource.d.ts.map +1 -1
  370. package/dist/Resource.js +6 -0
  371. package/dist/Resource.js.map +1 -1
  372. package/dist/Result.d.ts +91 -0
  373. package/dist/Result.d.ts.map +1 -1
  374. package/dist/Result.js +41 -0
  375. package/dist/Result.js.map +1 -1
  376. package/dist/Runtime.d.ts +9 -0
  377. package/dist/Runtime.d.ts.map +1 -1
  378. package/dist/Runtime.js +7 -0
  379. package/dist/Runtime.js.map +1 -1
  380. package/dist/Schedule.d.ts +57 -0
  381. package/dist/Schedule.d.ts.map +1 -1
  382. package/dist/Schedule.js +32 -0
  383. package/dist/Schedule.js.map +1 -1
  384. package/dist/Scheduler.d.ts +7 -0
  385. package/dist/Scheduler.d.ts.map +1 -1
  386. package/dist/Scheduler.js +5 -0
  387. package/dist/Scheduler.js.map +1 -1
  388. package/dist/Schema.d.ts +969 -2
  389. package/dist/Schema.d.ts.map +1 -1
  390. package/dist/Schema.js +635 -5
  391. package/dist/Schema.js.map +1 -1
  392. package/dist/SchemaAST.d.ts +107 -0
  393. package/dist/SchemaAST.d.ts.map +1 -1
  394. package/dist/SchemaAST.js +81 -1
  395. package/dist/SchemaAST.js.map +1 -1
  396. package/dist/SchemaGetter.d.ts +69 -2
  397. package/dist/SchemaGetter.d.ts.map +1 -1
  398. package/dist/SchemaGetter.js +63 -4
  399. package/dist/SchemaGetter.js.map +1 -1
  400. package/dist/SchemaIssue.d.ts +33 -0
  401. package/dist/SchemaIssue.d.ts.map +1 -1
  402. package/dist/SchemaIssue.js +18 -0
  403. package/dist/SchemaIssue.js.map +1 -1
  404. package/dist/SchemaParser.d.ts +25 -0
  405. package/dist/SchemaParser.d.ts.map +1 -1
  406. package/dist/SchemaParser.js +26 -0
  407. package/dist/SchemaParser.js.map +1 -1
  408. package/dist/SchemaRepresentation.d.ts +147 -0
  409. package/dist/SchemaRepresentation.d.ts.map +1 -1
  410. package/dist/SchemaRepresentation.js +99 -0
  411. package/dist/SchemaRepresentation.js.map +1 -1
  412. package/dist/SchemaTransformation.d.ts +53 -0
  413. package/dist/SchemaTransformation.d.ts.map +1 -1
  414. package/dist/SchemaTransformation.js +46 -0
  415. package/dist/SchemaTransformation.js.map +1 -1
  416. package/dist/Scope.d.ts +19 -0
  417. package/dist/Scope.d.ts.map +1 -1
  418. package/dist/Scope.js +12 -0
  419. package/dist/Scope.js.map +1 -1
  420. package/dist/ScopedCache.d.ts +34 -0
  421. package/dist/ScopedCache.d.ts.map +1 -1
  422. package/dist/ScopedCache.js +26 -3
  423. package/dist/ScopedCache.js.map +1 -1
  424. package/dist/ScopedRef.d.ts +9 -0
  425. package/dist/ScopedRef.d.ts.map +1 -1
  426. package/dist/ScopedRef.js +6 -0
  427. package/dist/ScopedRef.js.map +1 -1
  428. package/dist/Semaphore.d.ts +26 -0
  429. package/dist/Semaphore.d.ts.map +1 -1
  430. package/dist/Semaphore.js +10 -0
  431. package/dist/Semaphore.js.map +1 -1
  432. package/dist/Sink.d.ts +125 -1
  433. package/dist/Sink.d.ts.map +1 -1
  434. package/dist/Sink.js +75 -1
  435. package/dist/Sink.js.map +1 -1
  436. package/dist/StandardSchema.d.ts +1 -0
  437. package/dist/StandardSchema.d.ts.map +1 -1
  438. package/dist/StandardSchema.js +1 -0
  439. package/dist/Stdio.d.ts +14 -1
  440. package/dist/Stdio.d.ts.map +1 -1
  441. package/dist/Stdio.js +6 -0
  442. package/dist/Stdio.js.map +1 -1
  443. package/dist/Stream.d.ts +569 -11
  444. package/dist/Stream.d.ts.map +1 -1
  445. package/dist/Stream.js +266 -18
  446. package/dist/Stream.js.map +1 -1
  447. package/dist/String.d.ts +87 -0
  448. package/dist/String.d.ts.map +1 -1
  449. package/dist/String.js +61 -0
  450. package/dist/String.js.map +1 -1
  451. package/dist/Struct.d.ts +46 -0
  452. package/dist/Struct.d.ts.map +1 -1
  453. package/dist/Struct.js +19 -0
  454. package/dist/Struct.js.map +1 -1
  455. package/dist/SubscriptionRef.d.ts +65 -0
  456. package/dist/SubscriptionRef.d.ts.map +1 -1
  457. package/dist/SubscriptionRef.js +25 -0
  458. package/dist/SubscriptionRef.js.map +1 -1
  459. package/dist/Symbol.d.ts +2 -0
  460. package/dist/Symbol.d.ts.map +1 -1
  461. package/dist/Symbol.js +2 -0
  462. package/dist/Symbol.js.map +1 -1
  463. package/dist/SynchronizedRef.d.ts +63 -0
  464. package/dist/SynchronizedRef.d.ts.map +1 -1
  465. package/dist/SynchronizedRef.js +24 -0
  466. package/dist/SynchronizedRef.js.map +1 -1
  467. package/dist/Take.d.ts +3 -0
  468. package/dist/Take.d.ts.map +1 -1
  469. package/dist/Take.js +1 -0
  470. package/dist/Take.js.map +1 -1
  471. package/dist/Terminal.d.ts +8 -0
  472. package/dist/Terminal.d.ts.map +1 -1
  473. package/dist/Terminal.js +4 -0
  474. package/dist/Terminal.js.map +1 -1
  475. package/dist/Tracer.d.ts +23 -0
  476. package/dist/Tracer.d.ts.map +1 -1
  477. package/dist/Tracer.js +12 -0
  478. package/dist/Tracer.js.map +1 -1
  479. package/dist/Trie.d.ts +68 -0
  480. package/dist/Trie.d.ts.map +1 -1
  481. package/dist/Trie.js +28 -0
  482. package/dist/Trie.js.map +1 -1
  483. package/dist/Tuple.d.ts +38 -0
  484. package/dist/Tuple.d.ts.map +1 -1
  485. package/dist/Tuple.js +18 -0
  486. package/dist/Tuple.js.map +1 -1
  487. package/dist/TxChunk.d.ts +52 -0
  488. package/dist/TxChunk.d.ts.map +1 -1
  489. package/dist/TxChunk.js +23 -0
  490. package/dist/TxChunk.js.map +1 -1
  491. package/dist/TxDeferred.d.ts +15 -0
  492. package/dist/TxDeferred.d.ts.map +1 -1
  493. package/dist/TxDeferred.js +8 -0
  494. package/dist/TxDeferred.js.map +1 -1
  495. package/dist/TxHashMap.d.ts +83 -0
  496. package/dist/TxHashMap.d.ts.map +1 -1
  497. package/dist/TxHashMap.js +52 -7
  498. package/dist/TxHashMap.js.map +1 -1
  499. package/dist/TxHashSet.d.ts +51 -0
  500. package/dist/TxHashSet.d.ts.map +1 -1
  501. package/dist/TxHashSet.js +29 -4
  502. package/dist/TxHashSet.js.map +1 -1
  503. package/dist/TxPriorityQueue.d.ts +30 -0
  504. package/dist/TxPriorityQueue.d.ts.map +1 -1
  505. package/dist/TxPriorityQueue.js +22 -1
  506. package/dist/TxPriorityQueue.js.map +1 -1
  507. package/dist/TxPubSub.d.ts +25 -0
  508. package/dist/TxPubSub.d.ts.map +1 -1
  509. package/dist/TxPubSub.js +19 -0
  510. package/dist/TxPubSub.js.map +1 -1
  511. package/dist/TxQueue.d.ts +51 -0
  512. package/dist/TxQueue.d.ts.map +1 -1
  513. package/dist/TxQueue.js +30 -0
  514. package/dist/TxQueue.js.map +1 -1
  515. package/dist/TxReentrantLock.d.ts +24 -0
  516. package/dist/TxReentrantLock.d.ts.map +1 -1
  517. package/dist/TxReentrantLock.js +32 -18
  518. package/dist/TxReentrantLock.js.map +1 -1
  519. package/dist/TxRef.d.ts +14 -0
  520. package/dist/TxRef.d.ts.map +1 -1
  521. package/dist/TxRef.js +7 -0
  522. package/dist/TxRef.js.map +1 -1
  523. package/dist/TxSemaphore.d.ts +25 -0
  524. package/dist/TxSemaphore.d.ts.map +1 -1
  525. package/dist/TxSemaphore.js +29 -13
  526. package/dist/TxSemaphore.js.map +1 -1
  527. package/dist/TxSubscriptionRef.d.ts +25 -0
  528. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  529. package/dist/TxSubscriptionRef.js +12 -0
  530. package/dist/TxSubscriptionRef.js.map +1 -1
  531. package/dist/Types.d.ts +36 -0
  532. package/dist/Types.d.ts.map +1 -1
  533. package/dist/Types.js +1 -0
  534. package/dist/UndefinedOr.d.ts +15 -0
  535. package/dist/UndefinedOr.d.ts.map +1 -1
  536. package/dist/UndefinedOr.js +9 -0
  537. package/dist/UndefinedOr.js.map +1 -1
  538. package/dist/Unify.d.ts +15 -0
  539. package/dist/Unify.d.ts.map +1 -1
  540. package/dist/Unify.js +2 -0
  541. package/dist/Unify.js.map +1 -1
  542. package/dist/Utils.d.ts +4 -0
  543. package/dist/Utils.d.ts.map +1 -1
  544. package/dist/Utils.js +1 -0
  545. package/dist/Utils.js.map +1 -1
  546. package/dist/Version.d.ts +26 -0
  547. package/dist/Version.d.ts.map +1 -0
  548. package/dist/Version.js +36 -0
  549. package/dist/Version.js.map +1 -0
  550. package/dist/ai/Chat.js +1 -1
  551. package/dist/ai/Chat.js.map +1 -1
  552. package/dist/ai/DecisionModel.d.ts +22 -0
  553. package/dist/ai/DecisionModel.d.ts.map +1 -1
  554. package/dist/ai/DecisionModel.js +22 -4
  555. package/dist/ai/DecisionModel.js.map +1 -1
  556. package/dist/ai/LanguageModel.d.ts.map +1 -1
  557. package/dist/ai/LanguageModel.js +14 -13
  558. package/dist/ai/LanguageModel.js.map +1 -1
  559. package/dist/ai/McpServer.d.ts +38 -11
  560. package/dist/ai/McpServer.d.ts.map +1 -1
  561. package/dist/ai/McpServer.js +276 -190
  562. package/dist/ai/McpServer.js.map +1 -1
  563. package/dist/ai/Telemetry.d.ts +49 -41
  564. package/dist/ai/Telemetry.d.ts.map +1 -1
  565. package/dist/ai/Telemetry.js +6 -8
  566. package/dist/ai/Telemetry.js.map +1 -1
  567. package/dist/ai/internal/mcpProtocol/v2026_07_28.js +5 -0
  568. package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
  569. package/dist/ai/internal/mcpProtocol.js.map +1 -1
  570. package/dist/ai/internal/mcpRuntime.js +80 -46
  571. package/dist/ai/internal/mcpRuntime.js.map +1 -1
  572. package/dist/ai/internal/mcpStatefulRuntime.js +1 -0
  573. package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
  574. package/dist/cli/CliOutput.d.ts +27 -0
  575. package/dist/cli/CliOutput.d.ts.map +1 -1
  576. package/dist/cli/CliOutput.js +33 -10
  577. package/dist/cli/CliOutput.js.map +1 -1
  578. package/dist/cli/Command.d.ts.map +1 -1
  579. package/dist/cli/Command.js +6 -3
  580. package/dist/cli/Command.js.map +1 -1
  581. package/dist/cli/Completions.d.ts +3 -3
  582. package/dist/cli/Completions.d.ts.map +1 -1
  583. package/dist/cli/Completions.js +8 -5
  584. package/dist/cli/Completions.js.map +1 -1
  585. package/dist/cli/GlobalFlag.d.ts +5 -4
  586. package/dist/cli/GlobalFlag.d.ts.map +1 -1
  587. package/dist/cli/GlobalFlag.js +3 -3
  588. package/dist/cli/GlobalFlag.js.map +1 -1
  589. package/dist/cli/Prompt.d.ts +17 -1
  590. package/dist/cli/Prompt.d.ts.map +1 -1
  591. package/dist/cli/Prompt.js +119 -114
  592. package/dist/cli/Prompt.js.map +1 -1
  593. package/dist/cli/internal/ansi.d.ts +0 -1
  594. package/dist/cli/internal/ansi.d.ts.map +1 -1
  595. package/dist/cli/internal/ansi.js +20 -3
  596. package/dist/cli/internal/ansi.js.map +1 -1
  597. package/dist/cli/internal/completions/powershell.d.ts +2 -0
  598. package/dist/cli/internal/completions/powershell.d.ts.map +1 -0
  599. package/dist/cli/internal/completions/powershell.js +273 -0
  600. package/dist/cli/internal/completions/powershell.js.map +1 -0
  601. package/dist/cli/internal/completions/zsh.js +3 -2
  602. package/dist/cli/internal/completions/zsh.js.map +1 -1
  603. package/dist/cli/internal/wizard.d.ts +3 -3
  604. package/dist/cli/internal/wizard.d.ts.map +1 -1
  605. package/dist/cli/internal/wizard.js +21 -18
  606. package/dist/cli/internal/wizard.js.map +1 -1
  607. package/dist/cluster/ClusterSchema.d.ts +28 -0
  608. package/dist/cluster/ClusterSchema.d.ts.map +1 -1
  609. package/dist/cluster/ClusterSchema.js +30 -0
  610. package/dist/cluster/ClusterSchema.js.map +1 -1
  611. package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  612. package/dist/cluster/ClusterWorkflowEngine.js +10 -18
  613. package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
  614. package/dist/cluster/K8sHttpClient.d.ts.map +1 -1
  615. package/dist/cluster/K8sHttpClient.js +5 -2
  616. package/dist/cluster/K8sHttpClient.js.map +1 -1
  617. package/dist/cluster/MessageStorage.d.ts +18 -3
  618. package/dist/cluster/MessageStorage.d.ts.map +1 -1
  619. package/dist/cluster/MessageStorage.js +31 -11
  620. package/dist/cluster/MessageStorage.js.map +1 -1
  621. package/dist/cluster/Runners.d.ts.map +1 -1
  622. package/dist/cluster/Runners.js +8 -2
  623. package/dist/cluster/Runners.js.map +1 -1
  624. package/dist/cluster/Sharding.d.ts.map +1 -1
  625. package/dist/cluster/Sharding.js +181 -62
  626. package/dist/cluster/Sharding.js.map +1 -1
  627. package/dist/cluster/SqlMessageStorage.d.ts +59 -19
  628. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  629. package/dist/cluster/SqlMessageStorage.js +84 -55
  630. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  631. package/dist/cluster/SqlRunnerStorage.d.ts +68 -19
  632. package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
  633. package/dist/cluster/SqlRunnerStorage.js +191 -113
  634. package/dist/cluster/SqlRunnerStorage.js.map +1 -1
  635. package/dist/cluster/internal/entityManager.js +104 -37
  636. package/dist/cluster/internal/entityManager.js.map +1 -1
  637. package/dist/encoding/Base64.d.ts +4 -0
  638. package/dist/encoding/Base64.d.ts.map +1 -1
  639. package/dist/encoding/Base64.js +4 -0
  640. package/dist/encoding/Base64.js.map +1 -1
  641. package/dist/encoding/Base64Url.d.ts +4 -0
  642. package/dist/encoding/Base64Url.d.ts.map +1 -1
  643. package/dist/encoding/Base64Url.js +4 -0
  644. package/dist/encoding/Base64Url.js.map +1 -1
  645. package/dist/encoding/EncodingError.d.ts +4 -0
  646. package/dist/encoding/EncodingError.d.ts.map +1 -1
  647. package/dist/encoding/EncodingError.js +4 -0
  648. package/dist/encoding/EncodingError.js.map +1 -1
  649. package/dist/encoding/Hex.d.ts +5 -0
  650. package/dist/encoding/Hex.d.ts.map +1 -1
  651. package/dist/encoding/Hex.js +5 -0
  652. package/dist/encoding/Hex.js.map +1 -1
  653. package/dist/encoding/Toml.js +2 -2
  654. package/dist/encoding/Toml.js.map +1 -1
  655. package/dist/encoding/Yaml.d.ts.map +1 -1
  656. package/dist/encoding/Yaml.js +6 -4
  657. package/dist/encoding/Yaml.js.map +1 -1
  658. package/dist/encoding/index.d.ts +4 -0
  659. package/dist/encoding/index.d.ts.map +1 -1
  660. package/dist/encoding/index.js +4 -0
  661. package/dist/encoding/index.js.map +1 -1
  662. package/dist/eventlog/SqlEventJournal.js +8 -4
  663. package/dist/eventlog/SqlEventJournal.js.map +1 -1
  664. package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +27 -10
  665. package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  666. package/dist/eventlog/SqlEventLogServerUnencrypted.js +49 -7
  667. package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  668. package/dist/http/FindMyWay/internal/router.js +3 -6
  669. package/dist/http/FindMyWay/internal/router.js.map +1 -1
  670. package/dist/http/Headers.d.ts +3 -1
  671. package/dist/http/Headers.d.ts.map +1 -1
  672. package/dist/http/Headers.js +4 -2
  673. package/dist/http/Headers.js.map +1 -1
  674. package/dist/http/HttpClient.d.ts +15 -0
  675. package/dist/http/HttpClient.d.ts.map +1 -1
  676. package/dist/http/HttpClient.js +79 -23
  677. package/dist/http/HttpClient.js.map +1 -1
  678. package/dist/http/HttpClientResponse.js +3 -1
  679. package/dist/http/HttpClientResponse.js.map +1 -1
  680. package/dist/http/HttpEffect.d.ts +3 -0
  681. package/dist/http/HttpEffect.d.ts.map +1 -1
  682. package/dist/http/HttpEffect.js +5 -2
  683. package/dist/http/HttpEffect.js.map +1 -1
  684. package/dist/http/HttpMiddleware.d.ts +17 -0
  685. package/dist/http/HttpMiddleware.d.ts.map +1 -1
  686. package/dist/http/HttpMiddleware.js +56 -39
  687. package/dist/http/HttpMiddleware.js.map +1 -1
  688. package/dist/http/HttpServer.d.ts +1 -1
  689. package/dist/http/HttpServer.d.ts.map +1 -1
  690. package/dist/http/HttpTraceContext.d.ts.map +1 -1
  691. package/dist/http/HttpTraceContext.js +4 -2
  692. package/dist/http/HttpTraceContext.js.map +1 -1
  693. package/dist/http/internal/tracing.d.ts +2 -0
  694. package/dist/http/internal/tracing.d.ts.map +1 -0
  695. package/dist/http/internal/tracing.js +37 -0
  696. package/dist/http/internal/tracing.js.map +1 -0
  697. package/dist/http-api/HttpApiBuilder.js +2 -1
  698. package/dist/http-api/HttpApiBuilder.js.map +1 -1
  699. package/dist/http-api/HttpApiClient.d.ts +12 -3
  700. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  701. package/dist/http-api/HttpApiClient.js.map +1 -1
  702. package/dist/http-api/HttpApiError.d.ts +4 -3
  703. package/dist/http-api/HttpApiError.d.ts.map +1 -1
  704. package/dist/http-api/HttpApiError.js +7 -4
  705. package/dist/http-api/HttpApiError.js.map +1 -1
  706. package/dist/http-api/HttpApiSecurity.d.ts +8 -8
  707. package/dist/http-api/HttpApiSecurity.js +8 -8
  708. package/dist/index.d.ts +155 -0
  709. package/dist/index.d.ts.map +1 -1
  710. package/dist/index.js +155 -0
  711. package/dist/index.js.map +1 -1
  712. package/dist/internal/arbitrary/array.js +3 -3
  713. package/dist/internal/arbitrary/array.js.map +1 -1
  714. package/dist/internal/arbitrary/model.js +26 -11
  715. package/dist/internal/arbitrary/model.js.map +1 -1
  716. package/dist/internal/arbitrary/runner.js +8 -8
  717. package/dist/internal/arbitrary/runner.js.map +1 -1
  718. package/dist/internal/arbitrary/schema.js +4 -5
  719. package/dist/internal/arbitrary/schema.js.map +1 -1
  720. package/dist/internal/effect.js +53 -46
  721. package/dist/internal/effect.js.map +1 -1
  722. package/dist/internal/schedule.js +7 -5
  723. package/dist/internal/schedule.js.map +1 -1
  724. package/dist/internal/schema/standardSchema.js +2 -2
  725. package/dist/internal/schema/standardSchema.js.map +1 -1
  726. package/dist/internal/version.d.ts +2 -0
  727. package/dist/internal/version.d.ts.map +1 -0
  728. package/dist/internal/version.js +3 -0
  729. package/dist/internal/version.js.map +1 -0
  730. package/dist/net/AddressResolver.d.ts +145 -0
  731. package/dist/net/AddressResolver.d.ts.map +1 -0
  732. package/dist/net/AddressResolver.js +114 -0
  733. package/dist/net/AddressResolver.js.map +1 -0
  734. package/dist/net/Dns.d.ts +596 -0
  735. package/dist/net/Dns.d.ts.map +1 -0
  736. package/dist/net/Dns.js +549 -0
  737. package/dist/net/Dns.js.map +1 -0
  738. package/dist/net/Host.d.ts +320 -0
  739. package/dist/net/Host.d.ts.map +1 -0
  740. package/dist/net/Host.js +342 -0
  741. package/dist/net/Host.js.map +1 -0
  742. package/dist/net/IpInterface.d.ts +76 -3
  743. package/dist/net/IpInterface.d.ts.map +1 -1
  744. package/dist/net/IpInterface.js +53 -4
  745. package/dist/net/IpInterface.js.map +1 -1
  746. package/dist/net/IpNetwork.d.ts +82 -8
  747. package/dist/net/IpNetwork.d.ts.map +1 -1
  748. package/dist/net/IpNetwork.js +60 -4
  749. package/dist/net/IpNetwork.js.map +1 -1
  750. package/dist/net/NetAddress.d.ts +388 -35
  751. package/dist/net/NetAddress.d.ts.map +1 -1
  752. package/dist/net/NetAddress.js +350 -34
  753. package/dist/net/NetAddress.js.map +1 -1
  754. package/dist/net/index.d.ts +15 -0
  755. package/dist/net/index.d.ts.map +1 -1
  756. package/dist/net/index.js +15 -0
  757. package/dist/net/index.js.map +1 -1
  758. package/dist/observability/OtlpExporter.d.ts.map +1 -1
  759. package/dist/observability/OtlpExporter.js +5 -6
  760. package/dist/observability/OtlpExporter.js.map +1 -1
  761. package/dist/observability/OtlpLogger.d.ts.map +1 -1
  762. package/dist/observability/OtlpLogger.js +23 -27
  763. package/dist/observability/OtlpLogger.js.map +1 -1
  764. package/dist/observability/OtlpMetrics.d.ts +5 -3
  765. package/dist/observability/OtlpMetrics.d.ts.map +1 -1
  766. package/dist/observability/OtlpMetrics.js +36 -115
  767. package/dist/observability/OtlpMetrics.js.map +1 -1
  768. package/dist/observability/OtlpResource.d.ts +4 -3
  769. package/dist/observability/OtlpResource.d.ts.map +1 -1
  770. package/dist/observability/OtlpResource.js +20 -23
  771. package/dist/observability/OtlpResource.js.map +1 -1
  772. package/dist/observability/OtlpTracer.d.ts +1 -0
  773. package/dist/observability/OtlpTracer.d.ts.map +1 -1
  774. package/dist/observability/OtlpTracer.js +32 -36
  775. package/dist/observability/OtlpTracer.js.map +1 -1
  776. package/dist/observability/PrometheusMetrics.js +1 -0
  777. package/dist/observability/PrometheusMetrics.js.map +1 -1
  778. package/dist/observability/internal/otlpProtobuf.js +32 -1
  779. package/dist/observability/internal/otlpProtobuf.js.map +1 -1
  780. package/dist/persistence/PersistedQueue.d.ts +32 -3
  781. package/dist/persistence/PersistedQueue.d.ts.map +1 -1
  782. package/dist/persistence/PersistedQueue.js +75 -16
  783. package/dist/persistence/PersistedQueue.js.map +1 -1
  784. package/dist/reactivity/AsyncResult.d.ts +1 -1
  785. package/dist/reactivity/Atom.d.ts +5 -5
  786. package/dist/reactivity/Atom.d.ts.map +1 -1
  787. package/dist/reactivity/Atom.js +9 -5
  788. package/dist/reactivity/Atom.js.map +1 -1
  789. package/dist/reactivity/AtomHttpApi.d.ts +2 -2
  790. package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
  791. package/dist/reactivity/AtomRegistry.d.ts +8 -0
  792. package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
  793. package/dist/reactivity/AtomRegistry.js.map +1 -1
  794. package/dist/rpc/RpcClient.d.ts +41 -7
  795. package/dist/rpc/RpcClient.d.ts.map +1 -1
  796. package/dist/rpc/RpcClient.js +50 -25
  797. package/dist/rpc/RpcClient.js.map +1 -1
  798. package/dist/rpc/RpcServer.d.ts +6 -0
  799. package/dist/rpc/RpcServer.d.ts.map +1 -1
  800. package/dist/rpc/RpcServer.js +59 -40
  801. package/dist/rpc/RpcServer.js.map +1 -1
  802. package/dist/rpc/internal/tracing.d.ts +2 -0
  803. package/dist/rpc/internal/tracing.d.ts.map +1 -0
  804. package/dist/rpc/internal/tracing.js +18 -0
  805. package/dist/rpc/internal/tracing.js.map +1 -0
  806. package/dist/schema/SchemaCompiler/runtime.js +9 -1
  807. package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
  808. package/dist/socket/DatagramSocket.d.ts +456 -0
  809. package/dist/socket/DatagramSocket.d.ts.map +1 -0
  810. package/dist/socket/DatagramSocket.js +535 -0
  811. package/dist/socket/DatagramSocket.js.map +1 -0
  812. package/dist/socket/Socket.d.ts +14 -1
  813. package/dist/socket/Socket.d.ts.map +1 -1
  814. package/dist/socket/Socket.js +9 -1
  815. package/dist/socket/Socket.js.map +1 -1
  816. package/dist/socket/index.d.ts +5 -0
  817. package/dist/socket/index.d.ts.map +1 -1
  818. package/dist/socket/index.js +5 -0
  819. package/dist/socket/index.js.map +1 -1
  820. package/dist/sql/Migrator.d.ts.map +1 -1
  821. package/dist/sql/Migrator.js +7 -2
  822. package/dist/sql/Migrator.js.map +1 -1
  823. package/dist/sql/SqlClient.d.ts +7 -1
  824. package/dist/sql/SqlClient.d.ts.map +1 -1
  825. package/dist/sql/SqlClient.js +35 -10
  826. package/dist/sql/SqlClient.js.map +1 -1
  827. package/dist/sql/Statement.d.ts +21 -1
  828. package/dist/sql/Statement.d.ts.map +1 -1
  829. package/dist/sql/Statement.js +55 -7
  830. package/dist/sql/Statement.js.map +1 -1
  831. package/dist/testing/TestClock.d.ts +8 -0
  832. package/dist/testing/TestClock.d.ts.map +1 -1
  833. package/dist/testing/TestClock.js +7 -0
  834. package/dist/testing/TestClock.js.map +1 -1
  835. package/dist/testing/TestConsole.d.ts +7 -0
  836. package/dist/testing/TestConsole.d.ts.map +1 -1
  837. package/dist/testing/TestConsole.js +6 -0
  838. package/dist/testing/TestConsole.js.map +1 -1
  839. package/dist/testing/TestCrypto.d.ts +73 -0
  840. package/dist/testing/TestCrypto.d.ts.map +1 -0
  841. package/dist/testing/TestCrypto.js +87 -0
  842. package/dist/testing/TestCrypto.js.map +1 -0
  843. package/dist/testing/index.d.ts +8 -0
  844. package/dist/testing/index.d.ts.map +1 -1
  845. package/dist/testing/index.js +8 -0
  846. package/dist/testing/index.js.map +1 -1
  847. package/dist/workflow/DurableDeferred.d.ts +54 -0
  848. package/dist/workflow/DurableDeferred.d.ts.map +1 -1
  849. package/dist/workflow/DurableDeferred.js +78 -49
  850. package/dist/workflow/DurableDeferred.js.map +1 -1
  851. package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
  852. package/dist/workflow/WorkflowEngine.js +2 -1
  853. package/dist/workflow/WorkflowEngine.js.map +1 -1
  854. package/package.json +3 -3
  855. package/src/Array.ts +351 -3
  856. package/src/BigDecimal.ts +88 -0
  857. package/src/BigInt.ts +68 -0
  858. package/src/Boolean.ts +34 -0
  859. package/src/Brand.ts +10 -0
  860. package/src/ByteSize.ts +87 -0
  861. package/src/Cache.ts +50 -8
  862. package/src/Cause.ts +82 -0
  863. package/src/Channel.ts +368 -18
  864. package/src/ChannelSchema.ts +13 -0
  865. package/src/Chunk.ts +193 -0
  866. package/src/Clock.ts +7 -0
  867. package/src/Combiner.ts +10 -0
  868. package/src/Config.ts +82 -8
  869. package/src/ConfigProvider.ts +28 -0
  870. package/src/Console.ts +26 -0
  871. package/src/Context.ts +53 -3
  872. package/src/Cron.ts +32 -1
  873. package/src/Crypto.ts +48 -9
  874. package/src/Data.ts +13 -0
  875. package/src/DateTime.ts +180 -6
  876. package/src/Deferred.ts +51 -0
  877. package/src/Differ.ts +2 -0
  878. package/src/Duration.ts +126 -16
  879. package/src/Effect.ts +539 -5
  880. package/src/Effectable.ts +4 -0
  881. package/src/Equal.ts +12 -1
  882. package/src/Equivalence.ts +22 -0
  883. package/src/ErrorReporter.ts +36 -0
  884. package/src/ExecutionPlan.ts +58 -14
  885. package/src/Exit.ts +40 -0
  886. package/src/Fiber.ts +20 -0
  887. package/src/FiberHandle.ts +29 -4
  888. package/src/FiberMap.ts +38 -0
  889. package/src/FiberSet.ts +21 -0
  890. package/src/FileSystem.ts +64 -2
  891. package/src/Filter.ts +55 -0
  892. package/src/Formatter.ts +42 -1
  893. package/src/Function.ts +30 -0
  894. package/src/Graph.ts +317 -36
  895. package/src/HKT.ts +5 -0
  896. package/src/Hash.ts +15 -0
  897. package/src/HashMap.ts +91 -0
  898. package/src/HashRing.ts +18 -0
  899. package/src/HashSet.ts +53 -0
  900. package/src/Inspectable.ts +8 -0
  901. package/src/Iterable.ts +127 -0
  902. package/src/JsonPatch.ts +5 -0
  903. package/src/JsonPointer.ts +5 -0
  904. package/src/JsonSchema.ts +17 -0
  905. package/src/Latch.ts +14 -0
  906. package/src/Layer.ts +101 -1
  907. package/src/LayerMap.ts +7 -0
  908. package/src/LayerRef.ts +5 -0
  909. package/src/LogLevel.ts +20 -0
  910. package/src/Logger.ts +41 -5
  911. package/src/ManagedRuntime.ts +12 -1
  912. package/src/Match.ts +52 -0
  913. package/src/Metric.ts +69 -0
  914. package/src/MutableHashMap.ts +44 -0
  915. package/src/MutableHashSet.ts +17 -0
  916. package/src/MutableList.ts +21 -0
  917. package/src/MutableRef.ts +32 -0
  918. package/src/Newtype.ts +9 -0
  919. package/src/NonEmptyIterable.ts +4 -0
  920. package/src/Number.ts +61 -0
  921. package/src/Optic.ts +57 -0
  922. package/src/Option.ts +134 -0
  923. package/src/Order.ts +30 -0
  924. package/src/Ordering.ts +7 -0
  925. package/src/PartitionedSemaphore.ts +61 -22
  926. package/src/Path.ts +6 -0
  927. package/src/Pipeable.ts +7 -0
  928. package/src/PlatformError.ts +8 -0
  929. package/src/Pool.ts +20 -1
  930. package/src/Predicate.ts +85 -0
  931. package/src/PrimaryKey.ts +5 -0
  932. package/src/PubSub.ts +90 -9
  933. package/src/Pull.ts +20 -0
  934. package/src/Queue.ts +80 -10
  935. package/src/Random.ts +13 -0
  936. package/src/RcMap.ts +23 -0
  937. package/src/RcRef.ts +6 -0
  938. package/src/Record.ts +100 -0
  939. package/src/Redactable.ts +6 -0
  940. package/src/Redacted.ts +8 -0
  941. package/src/Reducer.ts +4 -0
  942. package/src/Ref.ts +42 -0
  943. package/src/References.ts +21 -0
  944. package/src/RegExp.ts +4 -0
  945. package/src/Request.ts +32 -0
  946. package/src/RequestResolver.ts +59 -10
  947. package/src/Resource.ts +7 -0
  948. package/src/Result.ts +93 -0
  949. package/src/Runtime.ts +10 -0
  950. package/src/Schedule.ts +61 -0
  951. package/src/Scheduler.ts +7 -0
  952. package/src/Schema.ts +1168 -9
  953. package/src/SchemaAST.ts +115 -1
  954. package/src/SchemaGetter.ts +80 -4
  955. package/src/SchemaIssue.ts +34 -0
  956. package/src/SchemaParser.ts +26 -0
  957. package/src/SchemaRepresentation.ts +148 -0
  958. package/src/SchemaTransformation.ts +53 -0
  959. package/src/Scope.ts +19 -0
  960. package/src/ScopedCache.ts +55 -3
  961. package/src/ScopedRef.ts +9 -0
  962. package/src/Semaphore.ts +26 -0
  963. package/src/Sink.ts +126 -2
  964. package/src/StandardSchema.ts +1 -0
  965. package/src/Stdio.ts +16 -2
  966. package/src/Stream.ts +633 -26
  967. package/src/String.ts +87 -0
  968. package/src/Struct.ts +46 -0
  969. package/src/SubscriptionRef.ts +65 -0
  970. package/src/Symbol.ts +2 -0
  971. package/src/SynchronizedRef.ts +63 -0
  972. package/src/Take.ts +3 -0
  973. package/src/Terminal.ts +8 -0
  974. package/src/Tracer.ts +23 -0
  975. package/src/Trie.ts +68 -0
  976. package/src/Tuple.ts +38 -0
  977. package/src/TxChunk.ts +52 -0
  978. package/src/TxDeferred.ts +15 -0
  979. package/src/TxHashMap.ts +97 -6
  980. package/src/TxHashSet.ts +83 -3
  981. package/src/TxPriorityQueue.ts +34 -2
  982. package/src/TxPubSub.ts +26 -0
  983. package/src/TxQueue.ts +51 -0
  984. package/src/TxReentrantLock.ts +53 -36
  985. package/src/TxRef.ts +14 -0
  986. package/src/TxSemaphore.ts +47 -31
  987. package/src/TxSubscriptionRef.ts +25 -0
  988. package/src/Types.ts +36 -0
  989. package/src/UndefinedOr.ts +15 -0
  990. package/src/Unify.ts +15 -0
  991. package/src/Utils.ts +4 -0
  992. package/src/Version.ts +38 -0
  993. package/src/ai/Chat.ts +1 -1
  994. package/src/ai/DecisionModel.ts +42 -1
  995. package/src/ai/LanguageModel.ts +16 -19
  996. package/src/ai/McpServer.ts +169 -58
  997. package/src/ai/Telemetry.ts +62 -58
  998. package/src/ai/internal/mcpProtocol/v2026_07_28.ts +5 -0
  999. package/src/ai/internal/mcpProtocol.ts +3 -0
  1000. package/src/ai/internal/mcpRuntime.ts +86 -43
  1001. package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
  1002. package/src/cli/CliOutput.ts +33 -16
  1003. package/src/cli/Command.ts +4 -3
  1004. package/src/cli/Completions.ts +9 -6
  1005. package/src/cli/GlobalFlag.ts +19 -11
  1006. package/src/cli/Prompt.ts +159 -149
  1007. package/src/cli/internal/ansi.ts +26 -3
  1008. package/src/cli/internal/completions/powershell.ts +322 -0
  1009. package/src/cli/internal/completions/zsh.ts +4 -2
  1010. package/src/cli/internal/wizard.ts +34 -26
  1011. package/src/cluster/ClusterSchema.ts +32 -0
  1012. package/src/cluster/ClusterWorkflowEngine.ts +13 -24
  1013. package/src/cluster/K8sHttpClient.ts +12 -2
  1014. package/src/cluster/MessageStorage.ts +45 -14
  1015. package/src/cluster/Runners.ts +8 -2
  1016. package/src/cluster/Sharding.ts +207 -49
  1017. package/src/cluster/SqlMessageStorage.ts +118 -84
  1018. package/src/cluster/SqlRunnerStorage.ts +224 -128
  1019. package/src/cluster/internal/entityManager.ts +151 -55
  1020. package/src/encoding/Base64.ts +4 -0
  1021. package/src/encoding/Base64Url.ts +4 -0
  1022. package/src/encoding/EncodingError.ts +5 -0
  1023. package/src/encoding/Hex.ts +5 -0
  1024. package/src/encoding/Toml.ts +2 -2
  1025. package/src/encoding/Yaml.ts +8 -4
  1026. package/src/encoding/index.ts +4 -0
  1027. package/src/eventlog/SqlEventJournal.ts +18 -4
  1028. package/src/eventlog/SqlEventLogServerUnencrypted.ts +282 -235
  1029. package/src/http/FindMyWay/internal/router.ts +4 -7
  1030. package/src/http/Headers.ts +8 -2
  1031. package/src/http/HttpClient.ts +100 -29
  1032. package/src/http/HttpClientResponse.ts +3 -1
  1033. package/src/http/HttpEffect.ts +11 -2
  1034. package/src/http/HttpMiddleware.ts +60 -45
  1035. package/src/http/HttpServer.ts +1 -1
  1036. package/src/http/HttpTraceContext.ts +8 -2
  1037. package/src/http/internal/tracing.ts +52 -0
  1038. package/src/http-api/HttpApiBuilder.ts +5 -1
  1039. package/src/http-api/HttpApiClient.ts +13 -4
  1040. package/src/http-api/HttpApiError.ts +8 -4
  1041. package/src/http-api/HttpApiSecurity.ts +8 -8
  1042. package/src/index.ts +156 -0
  1043. package/src/internal/arbitrary/array.ts +3 -3
  1044. package/src/internal/arbitrary/model.ts +37 -14
  1045. package/src/internal/arbitrary/runner.ts +7 -7
  1046. package/src/internal/arbitrary/schema.ts +4 -3
  1047. package/src/internal/effect.ts +62 -58
  1048. package/src/internal/schedule.ts +23 -17
  1049. package/src/internal/schema/standardSchema.ts +2 -2
  1050. package/src/internal/version.ts +2 -0
  1051. package/src/net/AddressResolver.ts +222 -0
  1052. package/src/net/Dns.ts +1035 -0
  1053. package/src/net/Host.ts +472 -0
  1054. package/src/net/IpInterface.ts +117 -7
  1055. package/src/net/IpNetwork.ts +116 -17
  1056. package/src/net/NetAddress.ts +611 -76
  1057. package/src/net/index.ts +18 -0
  1058. package/src/observability/OtlpExporter.ts +9 -6
  1059. package/src/observability/OtlpLogger.ts +20 -21
  1060. package/src/observability/OtlpMetrics.ts +46 -116
  1061. package/src/observability/OtlpResource.ts +18 -27
  1062. package/src/observability/OtlpTracer.ts +34 -40
  1063. package/src/observability/PrometheusMetrics.ts +1 -0
  1064. package/src/observability/internal/otlpProtobuf.ts +60 -0
  1065. package/src/persistence/PersistedQueue.ts +146 -53
  1066. package/src/reactivity/AsyncResult.ts +1 -1
  1067. package/src/reactivity/Atom.ts +10 -6
  1068. package/src/reactivity/AtomHttpApi.ts +2 -4
  1069. package/src/reactivity/AtomRegistry.ts +7 -0
  1070. package/src/rpc/RpcClient.ts +87 -41
  1071. package/src/rpc/RpcServer.ts +85 -48
  1072. package/src/rpc/internal/tracing.ts +22 -0
  1073. package/src/schema/SchemaCompiler/runtime.ts +4 -1
  1074. package/src/socket/DatagramSocket.ts +919 -0
  1075. package/src/socket/Socket.ts +22 -2
  1076. package/src/socket/index.ts +6 -0
  1077. package/src/sql/Migrator.ts +21 -5
  1078. package/src/sql/SqlClient.ts +43 -19
  1079. package/src/sql/Statement.ts +59 -7
  1080. package/src/testing/TestClock.ts +9 -0
  1081. package/src/testing/TestConsole.ts +8 -0
  1082. package/src/testing/TestCrypto.ts +94 -0
  1083. package/src/testing/index.ts +9 -0
  1084. package/src/workflow/DurableDeferred.ts +123 -48
  1085. package/src/workflow/WorkflowEngine.ts +2 -1
@@ -0,0 +1,320 @@
1
+ /**
2
+ * Host names and unresolved host and port endpoints.
3
+ *
4
+ * A `Host` is either a numeric IP address, an IPv6 literal with a zone such as
5
+ * `fe80::1%eth0`, or a DNS domain name. Numeric addresses are parsed directly
6
+ * into `NetAddress` values. The `AddressResolver` service turns a `HostPort`
7
+ * into internet addresses, looking up domain names with the `Dns` service.
8
+ *
9
+ * @stability experimental
10
+ * @since 4.0.0
11
+ */
12
+ import type * as Brand from "../Brand.ts";
13
+ import * as Equal from "../Equal.ts";
14
+ import * as Hash from "../Hash.ts";
15
+ import * as Inspectable from "../Inspectable.ts";
16
+ import * as Result from "../Result.ts";
17
+ import * as NetAddress from "./NetAddress.ts";
18
+ declare const TypeId: "~effect/net/Host";
19
+ /**
20
+ * A syntactically valid DNS domain name in lowercase ASCII form.
21
+ *
22
+ * **Details**
23
+ *
24
+ * Names follow the rules used by Go's resolver: at most 253 characters, labels
25
+ * of 1 to 63 letters, digits, hyphens, or underscores, and no label starting or
26
+ * ending with a hyphen. Underscores are allowed so that service names such as
27
+ * `_http._tcp.example.com` are valid. The last label must not be numeric, which
28
+ * keeps IPv4-like strings out. A trailing dot marks a fully qualified name and
29
+ * is preserved. The root name `.` is valid.
30
+ *
31
+ * Internationalized names are stored in their ASCII (`xn--`) form.
32
+ *
33
+ * @see {@link domainNameFromString} for parsing and normalizing domain names
34
+ * @stability experimental
35
+ * @category models
36
+ * @since 4.0.0
37
+ */
38
+ export type DomainName = Brand.Branded<string, "~effect/net/Host/DomainName">;
39
+ /**
40
+ * A domain name or a string to parse and normalize.
41
+ *
42
+ * @stability experimental
43
+ * @category models
44
+ * @since 4.0.0
45
+ */
46
+ export type DomainNameInput = DomainName | string;
47
+ /**
48
+ * A host as written in configuration or a URL authority: a numeric IP address,
49
+ * a scoped IPv6 literal, or a domain name.
50
+ *
51
+ * @see {@link hostFromString} for parsing hosts
52
+ * @stability experimental
53
+ * @category models
54
+ * @since 4.0.0
55
+ */
56
+ export type Host = NetAddress.IpAddress | NetAddress.ScopedIpv6Literal | DomainName;
57
+ /**
58
+ * A host, or a string or any `IpAddressInput` to convert to one.
59
+ *
60
+ * @stability experimental
61
+ * @category models
62
+ * @since 4.0.0
63
+ */
64
+ export type HostInput = Host | NetAddress.IpAddressInput;
65
+ /**
66
+ * An unresolved host and port.
67
+ *
68
+ * @see {@link hostPortFromString} for parsing `host:port` strings
69
+ * @see {@link formatHostPort} for formatting `host:port` strings
70
+ * @stability experimental
71
+ * @category models
72
+ * @since 4.0.0
73
+ */
74
+ export interface HostPort extends Equal.Equal, Hash.Hash, Inspectable.Inspectable {
75
+ readonly _tag: "HostPort";
76
+ readonly host: Host;
77
+ readonly port: number;
78
+ readonly [TypeId]: typeof TypeId;
79
+ }
80
+ /**
81
+ * The host and port of an endpoint.
82
+ *
83
+ * @see {@link hostPort} for the checked constructor
84
+ * @stability experimental
85
+ * @category models
86
+ * @since 4.0.0
87
+ */
88
+ export interface HostPortParts {
89
+ readonly host: HostInput;
90
+ readonly port: number;
91
+ }
92
+ /**
93
+ * An endpoint, or a `host:port` string or parts to convert to one.
94
+ *
95
+ * @stability experimental
96
+ * @category models
97
+ * @since 4.0.0
98
+ */
99
+ export type HostPortInput = HostPort | string | HostPortParts;
100
+ /**
101
+ * Returns `true` when a value is a valid, normalized domain name.
102
+ *
103
+ * @stability experimental
104
+ * @category guards
105
+ * @since 4.0.0
106
+ */
107
+ export declare const isDomainName: (u: unknown) => u is DomainName;
108
+ /**
109
+ * Returns `true` when a value is a host.
110
+ *
111
+ * @stability experimental
112
+ * @category guards
113
+ * @since 4.0.0
114
+ */
115
+ export declare const isHost: (u: unknown) => u is Host;
116
+ /**
117
+ * Returns `true` when a value is an unresolved host and port.
118
+ *
119
+ * @stability experimental
120
+ * @category guards
121
+ * @since 4.0.0
122
+ */
123
+ export declare const isHostPort: (u: unknown) => u is HostPort;
124
+ /**
125
+ * Parses and normalizes a domain name.
126
+ *
127
+ * **Details**
128
+ *
129
+ * ASCII names are lowercased. Names containing non-ASCII characters are
130
+ * converted to their ASCII (`xn--`) form using the WHATWG URL host parser, then
131
+ * validated with the same rules as ASCII names. A trailing dot is preserved.
132
+ *
133
+ * **Example** (Normalizing domain names)
134
+ *
135
+ * ```ts import.meta.vitest
136
+ * import { Result } from "effect"
137
+ * import { Host } from "effect/net"
138
+ *
139
+ * Result.getOrThrow(Host.domainNameFromString("Example.COM")) // => "example.com"
140
+ * Result.getOrThrow(Host.domainNameFromString("bücher.example")) // => "xn--bcher-kva.example"
141
+ * Result.isFailure(Host.domainNameFromString("1.2.3.4")) // => true
142
+ * ```
143
+ *
144
+ * @stability experimental
145
+ * @category decoding
146
+ * @since 4.0.0
147
+ */
148
+ export declare const domainNameFromString: (input: string) => Result.Result<DomainName, NetAddress.NetAddressError>;
149
+ /**
150
+ * Parses a trusted domain name, throwing on failure.
151
+ *
152
+ * @stability experimental
153
+ * @category unsafe
154
+ * @since 4.0.0
155
+ */
156
+ export declare const domainNameFromStringUnsafe: (input: string) => DomainName;
157
+ /**
158
+ * Converts a `DomainNameInput` to a domain name, parsing and normalizing it like
159
+ * `domainNameFromString`.
160
+ *
161
+ * **Details**
162
+ *
163
+ * Domain names are strings, so every input is parsed.
164
+ *
165
+ * @stability experimental
166
+ * @category constructors
167
+ * @since 4.0.0
168
+ */
169
+ export declare const domainNameFromInput: (input: DomainNameInput) => Result.Result<DomainName, NetAddress.NetAddressError>;
170
+ /**
171
+ * Converts a trusted `DomainNameInput` to a domain name, throwing on failure.
172
+ *
173
+ * @stability experimental
174
+ * @category unsafe
175
+ * @since 4.0.0
176
+ */
177
+ export declare const domainNameFromInputUnsafe: (input: DomainNameInput) => DomainName;
178
+ /**
179
+ * Parses a host as a numeric IP address, a scoped IPv6 literal, or a domain
180
+ * name, in that order.
181
+ *
182
+ * **Example** (Parsing hosts)
183
+ *
184
+ * ```ts import.meta.vitest
185
+ * import { Result } from "effect"
186
+ * import { Host, NetAddress } from "effect/net"
187
+ *
188
+ * NetAddress.isIpAddress(Result.getOrThrow(Host.hostFromString("10.0.0.5"))) // => true
189
+ * Result.getOrThrow(Host.hostFromString("fe80::1%eth0")) // => "fe80::1%eth0"
190
+ * Result.getOrThrow(Host.hostFromString("DB.internal")) // => "db.internal"
191
+ * ```
192
+ *
193
+ * @stability experimental
194
+ * @category decoding
195
+ * @since 4.0.0
196
+ */
197
+ export declare const hostFromString: (input: string) => Result.Result<Host, NetAddress.NetAddressError>;
198
+ /**
199
+ * Parses a trusted host, throwing on failure.
200
+ *
201
+ * @stability experimental
202
+ * @category unsafe
203
+ * @since 4.0.0
204
+ */
205
+ export declare const hostFromStringUnsafe: (input: string) => Host;
206
+ /**
207
+ * Converts a `HostInput` to a host, parsing strings like `hostFromString` and
208
+ * converting other inputs like `NetAddress.ipFromInput`.
209
+ *
210
+ * @stability experimental
211
+ * @category constructors
212
+ * @since 4.0.0
213
+ */
214
+ export declare const hostFromInput: (input: HostInput) => Result.Result<Host, NetAddress.NetAddressError>;
215
+ /**
216
+ * Converts a trusted `HostInput` to a host, throwing on failure.
217
+ *
218
+ * @stability experimental
219
+ * @category unsafe
220
+ * @since 4.0.0
221
+ */
222
+ export declare const hostFromInputUnsafe: (input: HostInput) => Host;
223
+ /**
224
+ * Formats a host without brackets.
225
+ *
226
+ * @stability experimental
227
+ * @category encoding
228
+ * @since 4.0.0
229
+ */
230
+ export declare const formatHost: (self: Host) => string;
231
+ /**
232
+ * Returns `true` when a domain name ends with a dot, which excludes it from
233
+ * resolver search domains.
234
+ *
235
+ * @stability experimental
236
+ * @category predicates
237
+ * @since 4.0.0
238
+ */
239
+ export declare const isFullyQualified: (self: DomainName) => boolean;
240
+ /**
241
+ * Creates a checked host and port.
242
+ *
243
+ * @stability experimental
244
+ * @category constructors
245
+ * @since 4.0.0
246
+ */
247
+ export declare const hostPort: (host: Host, port: number) => Result.Result<HostPort, NetAddress.NetAddressError>;
248
+ /**
249
+ * Creates a trusted host and port, throwing on failure.
250
+ *
251
+ * @stability experimental
252
+ * @category unsafe
253
+ * @since 4.0.0
254
+ */
255
+ export declare const hostPortUnsafe: (host: Host, port: number) => HostPort;
256
+ /**
257
+ * Parses `host:port`, `[IPv6]:port`, or `[IPv6%zone]:port`.
258
+ *
259
+ * **Details**
260
+ *
261
+ * IPv6 hosts must be bracketed and other hosts must not be. The port is
262
+ * required and must be an unpadded decimal integer from 0 through 65535. A
263
+ * zone follows the `%` directly; the percent-encoded `%25` separator of RFC
264
+ * 6874 URLs is not decoded, because `[fe80::1%253]:80` would be ambiguous.
265
+ *
266
+ * **Example** (Parsing host and port strings)
267
+ *
268
+ * ```ts import.meta.vitest
269
+ * import { Result } from "effect"
270
+ * import { Host } from "effect/net"
271
+ *
272
+ * const endpoint = Result.getOrThrow(Host.hostPortFromString("DB.internal:5432"))
273
+ * endpoint.host // => "db.internal"
274
+ * endpoint.port // => 5432
275
+ * Host.formatHostPort(Result.getOrThrow(Host.hostPortFromString("[::1]:80"))) // => "[::1]:80"
276
+ * ```
277
+ *
278
+ * @see {@link formatHostPort} for the inverse operation
279
+ * @stability experimental
280
+ * @category decoding
281
+ * @since 4.0.0
282
+ */
283
+ export declare const hostPortFromString: (input: string) => Result.Result<HostPort, NetAddress.NetAddressError>;
284
+ /**
285
+ * Parses a trusted `host:port` string, throwing on failure.
286
+ *
287
+ * @stability experimental
288
+ * @category unsafe
289
+ * @since 4.0.0
290
+ */
291
+ export declare const hostPortFromStringUnsafe: (input: string) => HostPort;
292
+ /**
293
+ * Converts a `HostPortInput` to an endpoint, parsing strings like
294
+ * `hostPortFromString`, converting parts like `hostPort`, and returning
295
+ * endpoints unchanged.
296
+ *
297
+ * @stability experimental
298
+ * @category constructors
299
+ * @since 4.0.0
300
+ */
301
+ export declare const hostPortFromInput: (input: HostPortInput) => Result.Result<HostPort, NetAddress.NetAddressError>;
302
+ /**
303
+ * Converts a trusted `HostPortInput` to an endpoint, throwing on failure.
304
+ *
305
+ * @stability experimental
306
+ * @category unsafe
307
+ * @since 4.0.0
308
+ */
309
+ export declare const hostPortFromInputUnsafe: (input: HostPortInput) => HostPort;
310
+ /**
311
+ * Formats a host and port, bracketing IPv6 hosts.
312
+ *
313
+ * @see {@link hostPortFromString} for the inverse operation
314
+ * @stability experimental
315
+ * @category encoding
316
+ * @since 4.0.0
317
+ */
318
+ export declare const formatHostPort: (self: HostPort) => string;
319
+ export {};
320
+ //# sourceMappingURL=Host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Host.d.ts","sourceRoot":"","sources":["../../src/net/Host.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,342 @@
1
+ import * as Equal from "../Equal.js";
2
+ import * as Hash from "../Hash.js";
3
+ import * as Inspectable from "../Inspectable.js";
4
+ import { hasProperty } from "../Predicate.js";
5
+ import * as Result from "../Result.js";
6
+ import * as NetAddress from "./NetAddress.js";
7
+ const TypeId = "~effect/net/Host";
8
+ const hostError = (input, message) => Result.fail(new NetAddress.NetAddressError({
9
+ input,
10
+ message
11
+ }));
12
+ const asciiNameCharacter = /^[a-z0-9_.-]$/i;
13
+ const labelPattern = /^[a-z0-9_](?:[a-z0-9_-]{0,61}[a-z0-9_])?$/;
14
+ const numericLabel = /^(?:\d+|0x[0-9a-f]*)$/;
15
+ const validateDomainName = name => {
16
+ if (name === ".") return undefined;
17
+ const relative = name.endsWith(".") ? name.slice(0, -1) : name;
18
+ if (relative.length === 0) return "domain name must not be empty";
19
+ if (relative.length > 253) return "domain name must be at most 253 characters";
20
+ const labels = relative.split(".");
21
+ for (const label of labels) {
22
+ if (label.length === 0) return "domain name labels must not be empty";
23
+ if (label.length > 63) return "domain name labels must be at most 63 characters";
24
+ if (!labelPattern.test(label)) {
25
+ return "domain name labels must contain only letters, digits, hyphens, or underscores and must not start or end with a hyphen";
26
+ }
27
+ }
28
+ if (numericLabel.test(labels[labels.length - 1])) {
29
+ return "the last domain name label must not be numeric";
30
+ }
31
+ return undefined;
32
+ };
33
+ const toAsciiDomainName = input => {
34
+ let ascii = true;
35
+ for (const character of input) {
36
+ if (character.charCodeAt(0) < 0x80) {
37
+ if (!asciiNameCharacter.test(character)) return undefined;
38
+ } else {
39
+ ascii = false;
40
+ }
41
+ }
42
+ if (ascii) return input.toLowerCase();
43
+ try {
44
+ return new URL(`http://${input}`).hostname;
45
+ } catch {
46
+ return undefined;
47
+ }
48
+ };
49
+ /**
50
+ * Returns `true` when a value is a valid, normalized domain name.
51
+ *
52
+ * @stability experimental
53
+ * @category guards
54
+ * @since 4.0.0
55
+ */
56
+ export const isDomainName = u => typeof u === "string" && /^[a-z0-9_.-]+$/.test(u) && validateDomainName(u) === undefined;
57
+ /**
58
+ * Returns `true` when a value is a host.
59
+ *
60
+ * @stability experimental
61
+ * @category guards
62
+ * @since 4.0.0
63
+ */
64
+ export const isHost = u => NetAddress.isIpAddress(u) || NetAddress.isScopedIpv6Literal(u) || isDomainName(u);
65
+ /**
66
+ * Returns `true` when a value is an unresolved host and port.
67
+ *
68
+ * @stability experimental
69
+ * @category guards
70
+ * @since 4.0.0
71
+ */
72
+ export const isHostPort = u => hasProperty(u, TypeId);
73
+ /**
74
+ * Parses and normalizes a domain name.
75
+ *
76
+ * **Details**
77
+ *
78
+ * ASCII names are lowercased. Names containing non-ASCII characters are
79
+ * converted to their ASCII (`xn--`) form using the WHATWG URL host parser, then
80
+ * validated with the same rules as ASCII names. A trailing dot is preserved.
81
+ *
82
+ * **Example** (Normalizing domain names)
83
+ *
84
+ * ```ts import.meta.vitest
85
+ * import { Result } from "effect"
86
+ * import { Host } from "effect/net"
87
+ *
88
+ * Result.getOrThrow(Host.domainNameFromString("Example.COM")) // => "example.com"
89
+ * Result.getOrThrow(Host.domainNameFromString("bücher.example")) // => "xn--bcher-kva.example"
90
+ * Result.isFailure(Host.domainNameFromString("1.2.3.4")) // => true
91
+ * ```
92
+ *
93
+ * @stability experimental
94
+ * @category decoding
95
+ * @since 4.0.0
96
+ */
97
+ export const domainNameFromString = input => {
98
+ const name = toAsciiDomainName(input);
99
+ if (name === undefined) return hostError(input, "invalid domain name");
100
+ const error = validateDomainName(name);
101
+ return error === undefined ? Result.succeed(name) : hostError(input, error);
102
+ };
103
+ /**
104
+ * Parses a trusted domain name, throwing on failure.
105
+ *
106
+ * @stability experimental
107
+ * @category unsafe
108
+ * @since 4.0.0
109
+ */
110
+ export const domainNameFromStringUnsafe = input => Result.getOrThrow(domainNameFromString(input));
111
+ /**
112
+ * Converts a `DomainNameInput` to a domain name, parsing and normalizing it like
113
+ * `domainNameFromString`.
114
+ *
115
+ * **Details**
116
+ *
117
+ * Domain names are strings, so every input is parsed.
118
+ *
119
+ * @stability experimental
120
+ * @category constructors
121
+ * @since 4.0.0
122
+ */
123
+ export const domainNameFromInput = input => domainNameFromString(input);
124
+ /**
125
+ * Converts a trusted `DomainNameInput` to a domain name, throwing on failure.
126
+ *
127
+ * @stability experimental
128
+ * @category unsafe
129
+ * @since 4.0.0
130
+ */
131
+ export const domainNameFromInputUnsafe = input => Result.getOrThrow(domainNameFromInput(input));
132
+ /**
133
+ * Parses a host as a numeric IP address, a scoped IPv6 literal, or a domain
134
+ * name, in that order.
135
+ *
136
+ * **Example** (Parsing hosts)
137
+ *
138
+ * ```ts import.meta.vitest
139
+ * import { Result } from "effect"
140
+ * import { Host, NetAddress } from "effect/net"
141
+ *
142
+ * NetAddress.isIpAddress(Result.getOrThrow(Host.hostFromString("10.0.0.5"))) // => true
143
+ * Result.getOrThrow(Host.hostFromString("fe80::1%eth0")) // => "fe80::1%eth0"
144
+ * Result.getOrThrow(Host.hostFromString("DB.internal")) // => "db.internal"
145
+ * ```
146
+ *
147
+ * @stability experimental
148
+ * @category decoding
149
+ * @since 4.0.0
150
+ */
151
+ export const hostFromString = input => {
152
+ if (input.includes("%")) return NetAddress.scopedIpv6LiteralFromString(input);
153
+ if (input.includes(":")) return NetAddress.ipFromString(input);
154
+ if (/^[\d.]+$/.test(input)) {
155
+ const address = NetAddress.ipFromString(input);
156
+ if (Result.isSuccess(address)) return address;
157
+ }
158
+ return domainNameFromString(input);
159
+ };
160
+ /**
161
+ * Parses a trusted host, throwing on failure.
162
+ *
163
+ * @stability experimental
164
+ * @category unsafe
165
+ * @since 4.0.0
166
+ */
167
+ export const hostFromStringUnsafe = input => Result.getOrThrow(hostFromString(input));
168
+ /**
169
+ * Converts a `HostInput` to a host, parsing strings like `hostFromString` and
170
+ * converting other inputs like `NetAddress.ipFromInput`.
171
+ *
172
+ * @stability experimental
173
+ * @category constructors
174
+ * @since 4.0.0
175
+ */
176
+ export const hostFromInput = input => typeof input === "string" ? hostFromString(input) : NetAddress.ipFromInput(input);
177
+ /**
178
+ * Converts a trusted `HostInput` to a host, throwing on failure.
179
+ *
180
+ * @stability experimental
181
+ * @category unsafe
182
+ * @since 4.0.0
183
+ */
184
+ export const hostFromInputUnsafe = input => Result.getOrThrow(hostFromInput(input));
185
+ /**
186
+ * Formats a host without brackets.
187
+ *
188
+ * @stability experimental
189
+ * @category encoding
190
+ * @since 4.0.0
191
+ */
192
+ export const formatHost = self => typeof self === "string" ? self : NetAddress.formatIp(self);
193
+ /**
194
+ * Returns `true` when a domain name ends with a dot, which excludes it from
195
+ * resolver search domains.
196
+ *
197
+ * @stability experimental
198
+ * @category predicates
199
+ * @since 4.0.0
200
+ */
201
+ export const isFullyQualified = self => self.endsWith(".");
202
+ const HostPortProto = {
203
+ ...Inspectable.BaseProto,
204
+ _tag: "HostPort",
205
+ [TypeId]: TypeId,
206
+ [Equal.symbol](that) {
207
+ return isHostPort(that) && this.port === that.port && Equal.equals(this.host, that.host);
208
+ },
209
+ [Hash.symbol]() {
210
+ return Hash.combine(Hash.hash(this.host), Hash.number(this.port));
211
+ },
212
+ toString() {
213
+ return formatHostPort(this);
214
+ },
215
+ toJSON() {
216
+ return this.toString();
217
+ }
218
+ };
219
+ const isPort = port => Number.isInteger(port) && port >= 0 && port <= 0xffff;
220
+ const makeHostPort = (host, port) => {
221
+ const self = Object.create(HostPortProto);
222
+ self.host = host;
223
+ self.port = port;
224
+ return Object.freeze(self);
225
+ };
226
+ /**
227
+ * Creates a checked host and port.
228
+ *
229
+ * @stability experimental
230
+ * @category constructors
231
+ * @since 4.0.0
232
+ */
233
+ export const hostPort = (host, port) => {
234
+ if (!isHost(host)) return hostError(host, "expected a host");
235
+ if (!isPort(port)) return hostError(port, "port must be an integer from 0 through 65535");
236
+ return Result.succeed(makeHostPort(host, port));
237
+ };
238
+ /**
239
+ * Creates a trusted host and port, throwing on failure.
240
+ *
241
+ * @stability experimental
242
+ * @category unsafe
243
+ * @since 4.0.0
244
+ */
245
+ export const hostPortUnsafe = (host, port) => Result.getOrThrow(hostPort(host, port));
246
+ /**
247
+ * Parses `host:port`, `[IPv6]:port`, or `[IPv6%zone]:port`.
248
+ *
249
+ * **Details**
250
+ *
251
+ * IPv6 hosts must be bracketed and other hosts must not be. The port is
252
+ * required and must be an unpadded decimal integer from 0 through 65535. A
253
+ * zone follows the `%` directly; the percent-encoded `%25` separator of RFC
254
+ * 6874 URLs is not decoded, because `[fe80::1%253]:80` would be ambiguous.
255
+ *
256
+ * **Example** (Parsing host and port strings)
257
+ *
258
+ * ```ts import.meta.vitest
259
+ * import { Result } from "effect"
260
+ * import { Host } from "effect/net"
261
+ *
262
+ * const endpoint = Result.getOrThrow(Host.hostPortFromString("DB.internal:5432"))
263
+ * endpoint.host // => "db.internal"
264
+ * endpoint.port // => 5432
265
+ * Host.formatHostPort(Result.getOrThrow(Host.hostPortFromString("[::1]:80"))) // => "[::1]:80"
266
+ * ```
267
+ *
268
+ * @see {@link formatHostPort} for the inverse operation
269
+ * @stability experimental
270
+ * @category decoding
271
+ * @since 4.0.0
272
+ */
273
+ export const hostPortFromString = input => {
274
+ let hostText;
275
+ let portText;
276
+ if (input.startsWith("[")) {
277
+ const end = input.indexOf("]");
278
+ if (end === -1 || input[end + 1] !== ":") return hostError(input, "expected [IPv6]:port");
279
+ hostText = input.slice(1, end);
280
+ portText = input.slice(end + 2);
281
+ if (!hostText.includes(":")) return hostError(input, "only IPv6 addresses use brackets");
282
+ } else {
283
+ const separator = input.lastIndexOf(":");
284
+ if (separator === -1) return hostError(input, "expected host:port");
285
+ if (input.indexOf(":") !== separator) return hostError(input, "IPv6 addresses must be bracketed");
286
+ hostText = input.slice(0, separator);
287
+ portText = input.slice(separator + 1);
288
+ }
289
+ if (!/^(0|[1-9]\d*)$/.test(portText)) {
290
+ return hostError(input, "port must be an unpadded decimal integer");
291
+ }
292
+ const port = Number(portText);
293
+ if (!isPort(port)) return hostError(input, "port must be an integer from 0 through 65535");
294
+ return Result.map(hostFromString(hostText), host => makeHostPort(host, port));
295
+ };
296
+ /**
297
+ * Parses a trusted `host:port` string, throwing on failure.
298
+ *
299
+ * @stability experimental
300
+ * @category unsafe
301
+ * @since 4.0.0
302
+ */
303
+ export const hostPortFromStringUnsafe = input => Result.getOrThrow(hostPortFromString(input));
304
+ /**
305
+ * Converts a `HostPortInput` to an endpoint, parsing strings like
306
+ * `hostPortFromString`, converting parts like `hostPort`, and returning
307
+ * endpoints unchanged.
308
+ *
309
+ * @stability experimental
310
+ * @category constructors
311
+ * @since 4.0.0
312
+ */
313
+ export const hostPortFromInput = input => {
314
+ if (isHostPort(input)) return Result.succeed(input);
315
+ if (typeof input === "string") return hostPortFromString(input);
316
+ if (!hasProperty(input, "host") || !hasProperty(input, "port")) {
317
+ return hostError(input, "expected a host and port");
318
+ }
319
+ const port = input.port;
320
+ return Result.flatMap(hostFromInput(input.host), host => hostPort(host, port));
321
+ };
322
+ /**
323
+ * Converts a trusted `HostPortInput` to an endpoint, throwing on failure.
324
+ *
325
+ * @stability experimental
326
+ * @category unsafe
327
+ * @since 4.0.0
328
+ */
329
+ export const hostPortFromInputUnsafe = input => Result.getOrThrow(hostPortFromInput(input));
330
+ /**
331
+ * Formats a host and port, bracketing IPv6 hosts.
332
+ *
333
+ * @see {@link hostPortFromString} for the inverse operation
334
+ * @stability experimental
335
+ * @category encoding
336
+ * @since 4.0.0
337
+ */
338
+ export const formatHostPort = self => {
339
+ const host = formatHost(self.host);
340
+ return host.includes(":") ? `[${host}]:${self.port}` : `${host}:${self.port}`;
341
+ };
342
+ //# sourceMappingURL=Host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Host.js","names":[],"sources":["../../src/net/Host.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}