effect 4.0.5 → 4.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (985) hide show
  1. package/ai-docs/package.json +1 -1
  2. package/ai-docs/src/06_schedule/10_schedules.ts +5 -4
  3. package/ai-docs/tsconfig.json +3 -1
  4. package/dist/Array.d.ts +117 -52
  5. package/dist/Array.d.ts.map +1 -1
  6. package/dist/Array.js +41 -20
  7. package/dist/Array.js.map +1 -1
  8. package/dist/Bytes.d.ts +79 -0
  9. package/dist/Bytes.d.ts.map +1 -0
  10. package/dist/Bytes.js +109 -0
  11. package/dist/Bytes.js.map +1 -0
  12. package/dist/Channel.d.ts +181 -13
  13. package/dist/Channel.d.ts.map +1 -1
  14. package/dist/Channel.js +125 -30
  15. package/dist/Channel.js.map +1 -1
  16. package/dist/ChannelSchema.d.ts.map +1 -1
  17. package/dist/ChannelSchema.js.map +1 -1
  18. package/dist/Chunk.d.ts +39 -21
  19. package/dist/Chunk.d.ts.map +1 -1
  20. package/dist/Chunk.js +26 -17
  21. package/dist/Chunk.js.map +1 -1
  22. package/dist/Config.d.ts.map +1 -1
  23. package/dist/Config.js +8 -3
  24. package/dist/Config.js.map +1 -1
  25. package/dist/ConfigProvider.d.ts.map +1 -1
  26. package/dist/ConfigProvider.js +2 -1
  27. package/dist/ConfigProvider.js.map +1 -1
  28. package/dist/Cron.d.ts +2 -2
  29. package/dist/Cron.d.ts.map +1 -1
  30. package/dist/Cron.js +6 -3
  31. package/dist/Cron.js.map +1 -1
  32. package/dist/Duration.d.ts.map +1 -1
  33. package/dist/Duration.js +56 -16
  34. package/dist/Duration.js.map +1 -1
  35. package/dist/Effect.d.ts +487 -163
  36. package/dist/Effect.d.ts.map +1 -1
  37. package/dist/Effect.js +203 -37
  38. package/dist/Effect.js.map +1 -1
  39. package/dist/Equivalence.d.ts +2 -1
  40. package/dist/Equivalence.d.ts.map +1 -1
  41. package/dist/Equivalence.js +12 -8
  42. package/dist/Equivalence.js.map +1 -1
  43. package/dist/Exit.d.ts +24 -9
  44. package/dist/Exit.d.ts.map +1 -1
  45. package/dist/Exit.js +8 -3
  46. package/dist/Exit.js.map +1 -1
  47. package/dist/FiberHandle.d.ts +2 -0
  48. package/dist/FiberHandle.d.ts.map +1 -1
  49. package/dist/FiberHandle.js +9 -4
  50. package/dist/FiberHandle.js.map +1 -1
  51. package/dist/FiberMap.d.ts +2 -0
  52. package/dist/FiberMap.d.ts.map +1 -1
  53. package/dist/FiberMap.js +5 -2
  54. package/dist/FiberMap.js.map +1 -1
  55. package/dist/FileSystem.d.ts +5 -0
  56. package/dist/FileSystem.d.ts.map +1 -1
  57. package/dist/FileSystem.js +3 -0
  58. package/dist/FileSystem.js.map +1 -1
  59. package/dist/Graph.d.ts.map +1 -1
  60. package/dist/Graph.js.map +1 -1
  61. package/dist/HashSet.d.ts.map +1 -1
  62. package/dist/HashSet.js.map +1 -1
  63. package/dist/Iterable.d.ts.map +1 -1
  64. package/dist/Iterable.js +18 -17
  65. package/dist/Iterable.js.map +1 -1
  66. package/dist/JsonSchema.d.ts +9 -3
  67. package/dist/JsonSchema.d.ts.map +1 -1
  68. package/dist/JsonSchema.js +19 -3
  69. package/dist/JsonSchema.js.map +1 -1
  70. package/dist/Layer.d.ts.map +1 -1
  71. package/dist/Layer.js +2 -2
  72. package/dist/Layer.js.map +1 -1
  73. package/dist/ManagedRuntime.d.ts +19 -1
  74. package/dist/ManagedRuntime.d.ts.map +1 -1
  75. package/dist/ManagedRuntime.js +62 -6
  76. package/dist/ManagedRuntime.js.map +1 -1
  77. package/dist/Metric.d.ts +132 -0
  78. package/dist/Metric.d.ts.map +1 -1
  79. package/dist/Metric.js +197 -25
  80. package/dist/Metric.js.map +1 -1
  81. package/dist/MutableHashMap.d.ts.map +1 -1
  82. package/dist/MutableHashMap.js.map +1 -1
  83. package/dist/Number.js +2 -2
  84. package/dist/Number.js.map +1 -1
  85. package/dist/Optic.d.ts.map +1 -1
  86. package/dist/Optic.js.map +1 -1
  87. package/dist/Path.d.ts.map +1 -1
  88. package/dist/Path.js +8 -1
  89. package/dist/Path.js.map +1 -1
  90. package/dist/PubSub.d.ts.map +1 -1
  91. package/dist/PubSub.js +12 -7
  92. package/dist/PubSub.js.map +1 -1
  93. package/dist/Queue.d.ts +4 -1
  94. package/dist/Queue.d.ts.map +1 -1
  95. package/dist/Queue.js +4 -1
  96. package/dist/Queue.js.map +1 -1
  97. package/dist/Random.d.ts.map +1 -1
  98. package/dist/Random.js +1 -1
  99. package/dist/Random.js.map +1 -1
  100. package/dist/RcMap.d.ts +12 -7
  101. package/dist/RcMap.d.ts.map +1 -1
  102. package/dist/RcMap.js +9 -6
  103. package/dist/RcMap.js.map +1 -1
  104. package/dist/Record.d.ts +51 -0
  105. package/dist/Record.d.ts.map +1 -1
  106. package/dist/Record.js +17 -0
  107. package/dist/Record.js.map +1 -1
  108. package/dist/Ref.d.ts.map +1 -1
  109. package/dist/Ref.js.map +1 -1
  110. package/dist/References.d.ts +5 -4
  111. package/dist/References.d.ts.map +1 -1
  112. package/dist/References.js +5 -4
  113. package/dist/References.js.map +1 -1
  114. package/dist/RequestResolver.d.ts +31 -1
  115. package/dist/RequestResolver.d.ts.map +1 -1
  116. package/dist/RequestResolver.js +39 -4
  117. package/dist/RequestResolver.js.map +1 -1
  118. package/dist/Resource.js +1 -1
  119. package/dist/Resource.js.map +1 -1
  120. package/dist/Runtime.d.ts +3 -3
  121. package/dist/Runtime.d.ts.map +1 -1
  122. package/dist/Runtime.js +18 -15
  123. package/dist/Runtime.js.map +1 -1
  124. package/dist/Schedule.d.ts.map +1 -1
  125. package/dist/Schedule.js.map +1 -1
  126. package/dist/Schema.d.ts +384 -332
  127. package/dist/Schema.d.ts.map +1 -1
  128. package/dist/Schema.js +333 -19
  129. package/dist/Schema.js.map +1 -1
  130. package/dist/SchemaAST.d.ts +5 -5
  131. package/dist/SchemaAST.d.ts.map +1 -1
  132. package/dist/SchemaAST.js +24 -8
  133. package/dist/SchemaAST.js.map +1 -1
  134. package/dist/SchemaGetter.d.ts +8 -3
  135. package/dist/SchemaGetter.d.ts.map +1 -1
  136. package/dist/SchemaGetter.js +15 -5
  137. package/dist/SchemaGetter.js.map +1 -1
  138. package/dist/SchemaIssue.d.ts +4 -4
  139. package/dist/SchemaIssue.d.ts.map +1 -1
  140. package/dist/SchemaIssue.js +29 -51
  141. package/dist/SchemaIssue.js.map +1 -1
  142. package/dist/SchemaRepresentation.d.ts +56 -1
  143. package/dist/SchemaRepresentation.d.ts.map +1 -1
  144. package/dist/SchemaRepresentation.js +18 -0
  145. package/dist/SchemaRepresentation.js.map +1 -1
  146. package/dist/SchemaTransformation.d.ts +1 -1
  147. package/dist/SchemaTransformation.js +1 -1
  148. package/dist/Scope.d.ts +12 -2
  149. package/dist/Scope.d.ts.map +1 -1
  150. package/dist/Scope.js +5 -0
  151. package/dist/Scope.js.map +1 -1
  152. package/dist/ScopedCache.d.ts +10 -7
  153. package/dist/ScopedCache.d.ts.map +1 -1
  154. package/dist/ScopedCache.js +9 -5
  155. package/dist/ScopedCache.js.map +1 -1
  156. package/dist/SemVer.d.ts +1196 -0
  157. package/dist/SemVer.d.ts.map +1 -0
  158. package/dist/SemVer.js +756 -0
  159. package/dist/SemVer.js.map +1 -0
  160. package/dist/SemVerRange.d.ts +559 -0
  161. package/dist/SemVerRange.d.ts.map +1 -0
  162. package/dist/SemVerRange.js +551 -0
  163. package/dist/SemVerRange.js.map +1 -0
  164. package/dist/Sink.d.ts.map +1 -1
  165. package/dist/Sink.js +6 -2
  166. package/dist/Sink.js.map +1 -1
  167. package/dist/Stream.d.ts +235 -8
  168. package/dist/Stream.d.ts.map +1 -1
  169. package/dist/Stream.js +145 -60
  170. package/dist/Stream.js.map +1 -1
  171. package/dist/String.d.ts +4 -2
  172. package/dist/String.d.ts.map +1 -1
  173. package/dist/String.js +8 -6
  174. package/dist/String.js.map +1 -1
  175. package/dist/TextDiff.d.ts +399 -0
  176. package/dist/TextDiff.d.ts.map +1 -0
  177. package/dist/TextDiff.js +634 -0
  178. package/dist/TextDiff.js.map +1 -0
  179. package/dist/TxHashMap.d.ts.map +1 -1
  180. package/dist/TxHashMap.js.map +1 -1
  181. package/dist/TxHashSet.d.ts.map +1 -1
  182. package/dist/TxHashSet.js.map +1 -1
  183. package/dist/ai/AiError.d.ts +68 -4
  184. package/dist/ai/AiError.d.ts.map +1 -1
  185. package/dist/ai/AiError.js +50 -2
  186. package/dist/ai/AiError.js.map +1 -1
  187. package/dist/ai/Chat.d.ts +1 -2
  188. package/dist/ai/Chat.d.ts.map +1 -1
  189. package/dist/ai/Chat.js +6 -3
  190. package/dist/ai/Chat.js.map +1 -1
  191. package/dist/ai/Decision.d.ts +46 -1
  192. package/dist/ai/Decision.d.ts.map +1 -1
  193. package/dist/ai/Decision.js.map +1 -1
  194. package/dist/ai/DecisionModel.d.ts +129 -11
  195. package/dist/ai/DecisionModel.d.ts.map +1 -1
  196. package/dist/ai/DecisionModel.js +182 -94
  197. package/dist/ai/DecisionModel.js.map +1 -1
  198. package/dist/ai/EmbeddingModel.d.ts +10 -0
  199. package/dist/ai/EmbeddingModel.d.ts.map +1 -1
  200. package/dist/ai/EmbeddingModel.js +21 -7
  201. package/dist/ai/EmbeddingModel.js.map +1 -1
  202. package/dist/ai/McpClient.d.ts +289 -0
  203. package/dist/ai/McpClient.d.ts.map +1 -0
  204. package/dist/ai/McpClient.js +819 -0
  205. package/dist/ai/McpClient.js.map +1 -0
  206. package/dist/ai/McpClientError.d.ts +254 -0
  207. package/dist/ai/McpClientError.d.ts.map +1 -0
  208. package/dist/ai/McpClientError.js +260 -0
  209. package/dist/ai/McpClientError.js.map +1 -0
  210. package/dist/ai/McpProtocol.d.ts +2 -2
  211. package/dist/ai/McpProtocol.d.ts.map +1 -1
  212. package/dist/ai/McpSchema.d.ts +368 -235
  213. package/dist/ai/McpSchema.d.ts.map +1 -1
  214. package/dist/ai/McpSchema.js +94 -24
  215. package/dist/ai/McpSchema.js.map +1 -1
  216. package/dist/ai/McpServer.d.ts.map +1 -1
  217. package/dist/ai/McpServer.js +25 -22
  218. package/dist/ai/McpServer.js.map +1 -1
  219. package/dist/ai/Prompt.d.ts +22 -20
  220. package/dist/ai/Prompt.d.ts.map +1 -1
  221. package/dist/ai/Prompt.js +23 -1
  222. package/dist/ai/Prompt.js.map +1 -1
  223. package/dist/ai/Response.d.ts +147 -3
  224. package/dist/ai/Response.d.ts.map +1 -1
  225. package/dist/ai/Response.js +35 -37
  226. package/dist/ai/Response.js.map +1 -1
  227. package/dist/ai/Tool.d.ts +12 -4
  228. package/dist/ai/Tool.d.ts.map +1 -1
  229. package/dist/ai/Tool.js.map +1 -1
  230. package/dist/ai/Toolkit.d.ts +48 -1
  231. package/dist/ai/Toolkit.d.ts.map +1 -1
  232. package/dist/ai/Toolkit.js +65 -12
  233. package/dist/ai/Toolkit.js.map +1 -1
  234. package/dist/ai/index.d.ts +10 -0
  235. package/dist/ai/index.d.ts.map +1 -1
  236. package/dist/ai/index.js +10 -0
  237. package/dist/ai/index.js.map +1 -1
  238. package/dist/ai/internal/mcpCore.js.map +1 -1
  239. package/dist/ai/internal/mcpProtocol/v2024_11_05.js +1 -1
  240. package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
  241. package/dist/ai/internal/mcpProtocol/v2025_03_26.js +1 -1
  242. package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
  243. package/dist/ai/internal/mcpProtocol/v2025_06_18.js +2 -2
  244. package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
  245. package/dist/ai/internal/mcpProtocol/v2025_11_25.js +2 -2
  246. package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
  247. package/dist/ai/internal/mcpProtocol/v2026_07_28.js +4 -7
  248. package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
  249. package/dist/ai/internal/mcpProtocol.js +16 -2
  250. package/dist/ai/internal/mcpProtocol.js.map +1 -1
  251. package/dist/ai/internal/mcpRuntime.js +3 -4
  252. package/dist/ai/internal/mcpRuntime.js.map +1 -1
  253. package/dist/ai/internal/mcpSchema/v2024_11_05.js +19 -13
  254. package/dist/ai/internal/mcpSchema/v2024_11_05.js.map +1 -1
  255. package/dist/ai/internal/mcpSchema/v2025_03_26.js +3 -2
  256. package/dist/ai/internal/mcpSchema/v2025_03_26.js.map +1 -1
  257. package/dist/ai/internal/mcpSchema/v2025_06_18.js +7 -7
  258. package/dist/ai/internal/mcpSchema/v2025_06_18.js.map +1 -1
  259. package/dist/ai/internal/mcpSchema/v2025_11_25.js +8 -8
  260. package/dist/ai/internal/mcpSchema/v2025_11_25.js.map +1 -1
  261. package/dist/ai/internal/mcpSchema/v2026_07_28.js +43 -42
  262. package/dist/ai/internal/mcpSchema/v2026_07_28.js.map +1 -1
  263. package/dist/cli/CliError.d.ts +42 -2
  264. package/dist/cli/CliError.d.ts.map +1 -1
  265. package/dist/cli/CliError.js +44 -5
  266. package/dist/cli/CliError.js.map +1 -1
  267. package/dist/cli/Command.d.ts +286 -2
  268. package/dist/cli/Command.d.ts.map +1 -1
  269. package/dist/cli/Command.js +107 -6
  270. package/dist/cli/Command.js.map +1 -1
  271. package/dist/cli/Completions.d.ts +5 -0
  272. package/dist/cli/Completions.d.ts.map +1 -1
  273. package/dist/cli/Completions.js.map +1 -1
  274. package/dist/cli/Flag.d.ts +115 -0
  275. package/dist/cli/Flag.d.ts.map +1 -1
  276. package/dist/cli/Flag.js +56 -0
  277. package/dist/cli/Flag.js.map +1 -1
  278. package/dist/cli/GlobalFlag.d.ts.map +1 -1
  279. package/dist/cli/GlobalFlag.js +3 -3
  280. package/dist/cli/GlobalFlag.js.map +1 -1
  281. package/dist/cli/Param.d.ts +107 -0
  282. package/dist/cli/Param.d.ts.map +1 -1
  283. package/dist/cli/Param.js +56 -0
  284. package/dist/cli/Param.js.map +1 -1
  285. package/dist/cli/TerminalCapabilities.d.ts +84 -0
  286. package/dist/cli/TerminalCapabilities.d.ts.map +1 -0
  287. package/dist/cli/TerminalCapabilities.js +122 -0
  288. package/dist/cli/TerminalCapabilities.js.map +1 -0
  289. package/dist/cli/index.d.ts +5 -0
  290. package/dist/cli/index.d.ts.map +1 -1
  291. package/dist/cli/index.js +5 -0
  292. package/dist/cli/index.js.map +1 -1
  293. package/dist/cli/internal/command.d.ts +2 -1
  294. package/dist/cli/internal/command.d.ts.map +1 -1
  295. package/dist/cli/internal/command.js +5 -2
  296. package/dist/cli/internal/command.js.map +1 -1
  297. package/dist/cli/internal/completions/bash.js +4 -3
  298. package/dist/cli/internal/completions/bash.js.map +1 -1
  299. package/dist/cli/internal/completions/descriptor.js +9 -1
  300. package/dist/cli/internal/completions/descriptor.js.map +1 -1
  301. package/dist/cli/internal/completions/fish.js +10 -8
  302. package/dist/cli/internal/completions/fish.js.map +1 -1
  303. package/dist/cli/internal/completions/powershell.js +18 -9
  304. package/dist/cli/internal/completions/powershell.js.map +1 -1
  305. package/dist/cli/internal/completions/zsh.js +8 -5
  306. package/dist/cli/internal/completions/zsh.js.map +1 -1
  307. package/dist/cli/internal/formatter.d.ts +2 -0
  308. package/dist/cli/internal/formatter.d.ts.map +1 -0
  309. package/dist/cli/internal/formatter.js +15 -0
  310. package/dist/cli/internal/formatter.js.map +1 -0
  311. package/dist/cli/internal/lexer.js +24 -10
  312. package/dist/cli/internal/lexer.js.map +1 -1
  313. package/dist/cli/internal/parser.js +24 -12
  314. package/dist/cli/internal/parser.js.map +1 -1
  315. package/dist/cluster/ClusterCron.d.ts +29 -1
  316. package/dist/cluster/ClusterCron.d.ts.map +1 -1
  317. package/dist/cluster/ClusterCron.js +64 -32
  318. package/dist/cluster/ClusterCron.js.map +1 -1
  319. package/dist/cluster/ClusterMetrics.d.ts +143 -7
  320. package/dist/cluster/ClusterMetrics.d.ts.map +1 -1
  321. package/dist/cluster/ClusterMetrics.js +151 -7
  322. package/dist/cluster/ClusterMetrics.js.map +1 -1
  323. package/dist/cluster/ClusterWorkflowEngine.d.ts +1 -1
  324. package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  325. package/dist/cluster/ClusterWorkflowEngine.js +37 -11
  326. package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
  327. package/dist/cluster/Entity.d.ts +2 -0
  328. package/dist/cluster/Entity.d.ts.map +1 -1
  329. package/dist/cluster/Entity.js.map +1 -1
  330. package/dist/cluster/MessageStorage.d.ts +21 -0
  331. package/dist/cluster/MessageStorage.d.ts.map +1 -1
  332. package/dist/cluster/MessageStorage.js.map +1 -1
  333. package/dist/cluster/Runners.d.ts.map +1 -1
  334. package/dist/cluster/Runners.js +54 -15
  335. package/dist/cluster/Runners.js.map +1 -1
  336. package/dist/cluster/Sharding.d.ts +1 -0
  337. package/dist/cluster/Sharding.d.ts.map +1 -1
  338. package/dist/cluster/Sharding.js +95 -32
  339. package/dist/cluster/Sharding.js.map +1 -1
  340. package/dist/cluster/ShardingConfig.d.ts +20 -0
  341. package/dist/cluster/ShardingConfig.d.ts.map +1 -1
  342. package/dist/cluster/ShardingConfig.js +4 -0
  343. package/dist/cluster/ShardingConfig.js.map +1 -1
  344. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  345. package/dist/cluster/SqlMessageStorage.js +40 -50
  346. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  347. package/dist/cluster/SqlRunnerStorage.d.ts +2 -2
  348. package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
  349. package/dist/cluster/SqlRunnerStorage.js +10 -4
  350. package/dist/cluster/SqlRunnerStorage.js.map +1 -1
  351. package/dist/cluster/internal/entityManager.js +65 -8
  352. package/dist/cluster/internal/entityManager.js.map +1 -1
  353. package/dist/devtools/DevTools.d.ts +3 -2
  354. package/dist/devtools/DevTools.d.ts.map +1 -1
  355. package/dist/devtools/DevTools.js +3 -2
  356. package/dist/devtools/DevTools.js.map +1 -1
  357. package/dist/devtools/DevToolsClient.d.ts +11 -0
  358. package/dist/devtools/DevToolsClient.d.ts.map +1 -1
  359. package/dist/devtools/DevToolsClient.js +31 -4
  360. package/dist/devtools/DevToolsClient.js.map +1 -1
  361. package/dist/encoding/Base64Url.d.ts +29 -0
  362. package/dist/encoding/Base64Url.d.ts.map +1 -1
  363. package/dist/encoding/Base64Url.js +29 -0
  364. package/dist/encoding/Base64Url.js.map +1 -1
  365. package/dist/encoding/Ini.d.ts.map +1 -1
  366. package/dist/encoding/Ini.js +3 -0
  367. package/dist/encoding/Ini.js.map +1 -1
  368. package/dist/encoding/JsonArray.d.ts +270 -0
  369. package/dist/encoding/JsonArray.d.ts.map +1 -0
  370. package/dist/encoding/JsonArray.js +691 -0
  371. package/dist/encoding/JsonArray.js.map +1 -0
  372. package/dist/encoding/Ndjson.d.ts +43 -4
  373. package/dist/encoding/Ndjson.d.ts.map +1 -1
  374. package/dist/encoding/Ndjson.js +169 -18
  375. package/dist/encoding/Ndjson.js.map +1 -1
  376. package/dist/encoding/SchemaBinary.d.ts +9 -1
  377. package/dist/encoding/SchemaBinary.d.ts.map +1 -1
  378. package/dist/encoding/SchemaBinary.js +12 -19
  379. package/dist/encoding/SchemaBinary.js.map +1 -1
  380. package/dist/encoding/Tar.d.ts +309 -0
  381. package/dist/encoding/Tar.d.ts.map +1 -0
  382. package/dist/encoding/Tar.js +1182 -0
  383. package/dist/encoding/Tar.js.map +1 -0
  384. package/dist/encoding/Toml.js +3 -3
  385. package/dist/encoding/Toml.js.map +1 -1
  386. package/dist/encoding/Xml.d.ts +464 -0
  387. package/dist/encoding/Xml.d.ts.map +1 -0
  388. package/dist/encoding/Xml.js +1619 -0
  389. package/dist/encoding/Xml.js.map +1 -0
  390. package/dist/encoding/Yaml.d.ts +6 -2
  391. package/dist/encoding/Yaml.d.ts.map +1 -1
  392. package/dist/encoding/Yaml.js +97 -34
  393. package/dist/encoding/Yaml.js.map +1 -1
  394. package/dist/encoding/Zip.d.ts +413 -0
  395. package/dist/encoding/Zip.d.ts.map +1 -0
  396. package/dist/encoding/Zip.js +1255 -0
  397. package/dist/encoding/Zip.js.map +1 -0
  398. package/dist/encoding/index.d.ts +20 -0
  399. package/dist/encoding/index.d.ts.map +1 -1
  400. package/dist/encoding/index.js +20 -0
  401. package/dist/encoding/index.js.map +1 -1
  402. package/dist/eventlog/EventJournal.d.ts +90 -5
  403. package/dist/eventlog/EventJournal.d.ts.map +1 -1
  404. package/dist/eventlog/EventJournal.js +488 -228
  405. package/dist/eventlog/EventJournal.js.map +1 -1
  406. package/dist/eventlog/EventLog.d.ts +180 -12
  407. package/dist/eventlog/EventLog.d.ts.map +1 -1
  408. package/dist/eventlog/EventLog.js +394 -146
  409. package/dist/eventlog/EventLog.js.map +1 -1
  410. package/dist/eventlog/EventLogEncryption.d.ts +36 -30
  411. package/dist/eventlog/EventLogEncryption.d.ts.map +1 -1
  412. package/dist/eventlog/EventLogEncryption.js +97 -38
  413. package/dist/eventlog/EventLogEncryption.js.map +1 -1
  414. package/dist/eventlog/EventLogMessage.d.ts +74 -34
  415. package/dist/eventlog/EventLogMessage.d.ts.map +1 -1
  416. package/dist/eventlog/EventLogMessage.js +45 -11
  417. package/dist/eventlog/EventLogMessage.js.map +1 -1
  418. package/dist/eventlog/EventLogRemote.d.ts +45 -8
  419. package/dist/eventlog/EventLogRemote.d.ts.map +1 -1
  420. package/dist/eventlog/EventLogRemote.js +51 -14
  421. package/dist/eventlog/EventLogRemote.js.map +1 -1
  422. package/dist/eventlog/EventLogServer.d.ts +46 -3
  423. package/dist/eventlog/EventLogServer.d.ts.map +1 -1
  424. package/dist/eventlog/EventLogServer.js +119 -19
  425. package/dist/eventlog/EventLogServer.js.map +1 -1
  426. package/dist/eventlog/EventLogServerEncrypted.d.ts +23 -33
  427. package/dist/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  428. package/dist/eventlog/EventLogServerEncrypted.js +97 -70
  429. package/dist/eventlog/EventLogServerEncrypted.js.map +1 -1
  430. package/dist/eventlog/EventLogServerUnencrypted.d.ts +39 -5
  431. package/dist/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  432. package/dist/eventlog/EventLogServerUnencrypted.js +151 -69
  433. package/dist/eventlog/EventLogServerUnencrypted.js.map +1 -1
  434. package/dist/eventlog/EventRow.d.ts +288 -0
  435. package/dist/eventlog/EventRow.d.ts.map +1 -0
  436. package/dist/eventlog/EventRow.js +435 -0
  437. package/dist/eventlog/EventRow.js.map +1 -0
  438. package/dist/eventlog/SqlEventJournal.d.ts +18 -18
  439. package/dist/eventlog/SqlEventJournal.d.ts.map +1 -1
  440. package/dist/eventlog/SqlEventJournal.js +387 -159
  441. package/dist/eventlog/SqlEventJournal.js.map +1 -1
  442. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts +10 -18
  443. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  444. package/dist/eventlog/SqlEventLogServerEncrypted.js +179 -69
  445. package/dist/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  446. package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +23 -3
  447. package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  448. package/dist/eventlog/SqlEventLogServerUnencrypted.js +102 -51
  449. package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  450. package/dist/eventlog/index.d.ts +5 -0
  451. package/dist/eventlog/index.d.ts.map +1 -1
  452. package/dist/eventlog/index.js +5 -0
  453. package/dist/eventlog/index.js.map +1 -1
  454. package/dist/eventlog/internal/conflicts.d.ts +47 -0
  455. package/dist/eventlog/internal/conflicts.d.ts.map +1 -0
  456. package/dist/eventlog/internal/conflicts.js +92 -0
  457. package/dist/eventlog/internal/conflicts.js.map +1 -0
  458. package/dist/graphql/GraphQLClientError.d.ts +2 -2
  459. package/dist/graphql/GraphQLClientError.d.ts.map +1 -1
  460. package/dist/graphql/GraphQLClientError.js +4 -18
  461. package/dist/graphql/GraphQLClientError.js.map +1 -1
  462. package/dist/graphql/GraphQLProtocol.d.ts +12 -9
  463. package/dist/graphql/GraphQLProtocol.d.ts.map +1 -1
  464. package/dist/graphql/GraphQLProtocol.js +4 -3
  465. package/dist/graphql/GraphQLProtocol.js.map +1 -1
  466. package/dist/graphql/GraphQLResolver.d.ts +2 -0
  467. package/dist/graphql/GraphQLResolver.d.ts.map +1 -1
  468. package/dist/graphql/GraphQLResolver.js +74 -32
  469. package/dist/graphql/GraphQLResolver.js.map +1 -1
  470. package/dist/http/FetchHttpClient.d.ts +8 -1
  471. package/dist/http/FetchHttpClient.d.ts.map +1 -1
  472. package/dist/http/FetchHttpClient.js +51 -4
  473. package/dist/http/FetchHttpClient.js.map +1 -1
  474. package/dist/http/FindMyWay/internal/router.js +10 -0
  475. package/dist/http/FindMyWay/internal/router.js.map +1 -1
  476. package/dist/http/Headers.d.ts +227 -0
  477. package/dist/http/Headers.d.ts.map +1 -1
  478. package/dist/http/Headers.js +261 -0
  479. package/dist/http/Headers.js.map +1 -1
  480. package/dist/http/HttpClient.d.ts +93 -0
  481. package/dist/http/HttpClient.d.ts.map +1 -1
  482. package/dist/http/HttpClient.js +55 -16
  483. package/dist/http/HttpClient.js.map +1 -1
  484. package/dist/http/HttpClientRequest.d.ts +127 -3
  485. package/dist/http/HttpClientRequest.d.ts.map +1 -1
  486. package/dist/http/HttpClientRequest.js +44 -2
  487. package/dist/http/HttpClientRequest.js.map +1 -1
  488. package/dist/http/HttpClientResponse.d.ts +53 -0
  489. package/dist/http/HttpClientResponse.d.ts.map +1 -1
  490. package/dist/http/HttpClientResponse.js +47 -0
  491. package/dist/http/HttpClientResponse.js.map +1 -1
  492. package/dist/http/HttpEffect.d.ts +6 -2
  493. package/dist/http/HttpEffect.d.ts.map +1 -1
  494. package/dist/http/HttpEffect.js +21 -17
  495. package/dist/http/HttpEffect.js.map +1 -1
  496. package/dist/http/HttpIncomingMessage.d.ts +2 -1
  497. package/dist/http/HttpIncomingMessage.d.ts.map +1 -1
  498. package/dist/http/HttpIncomingMessage.js +3 -23
  499. package/dist/http/HttpIncomingMessage.js.map +1 -1
  500. package/dist/http/HttpMiddleware.d.ts +119 -2
  501. package/dist/http/HttpMiddleware.d.ts.map +1 -1
  502. package/dist/http/HttpMiddleware.js +159 -13
  503. package/dist/http/HttpMiddleware.js.map +1 -1
  504. package/dist/http/HttpRouter.d.ts.map +1 -1
  505. package/dist/http/HttpRouter.js +7 -2
  506. package/dist/http/HttpRouter.js.map +1 -1
  507. package/dist/http/HttpServerError.d.ts +5 -2
  508. package/dist/http/HttpServerError.d.ts.map +1 -1
  509. package/dist/http/HttpServerError.js +5 -3
  510. package/dist/http/HttpServerError.js.map +1 -1
  511. package/dist/http/HttpServerRequest.d.ts +25 -5
  512. package/dist/http/HttpServerRequest.d.ts.map +1 -1
  513. package/dist/http/HttpServerRequest.js +36 -10
  514. package/dist/http/HttpServerRequest.js.map +1 -1
  515. package/dist/http/HttpServerResponse.d.ts +17 -8
  516. package/dist/http/HttpServerResponse.d.ts.map +1 -1
  517. package/dist/http/HttpServerResponse.js +37 -21
  518. package/dist/http/HttpServerResponse.js.map +1 -1
  519. package/dist/http/HttpStaticServer.d.ts +0 -12
  520. package/dist/http/HttpStaticServer.d.ts.map +1 -1
  521. package/dist/http/HttpStaticServer.js +21 -7
  522. package/dist/http/HttpStaticServer.js.map +1 -1
  523. package/dist/http/MultipartParser/internal/contentType.d.ts +15 -1
  524. package/dist/http/MultipartParser/internal/contentType.d.ts.map +1 -1
  525. package/dist/http/MultipartParser/internal/contentType.js +87 -5
  526. package/dist/http/MultipartParser/internal/contentType.js.map +1 -1
  527. package/dist/http/MultipartParser/internal/headers.d.ts.map +1 -1
  528. package/dist/http/MultipartParser/internal/headers.js +4 -12
  529. package/dist/http/MultipartParser/internal/headers.js.map +1 -1
  530. package/dist/http/MultipartParser/internal/multipart.d.ts.map +1 -1
  531. package/dist/http/MultipartParser/internal/multipart.js +6 -27
  532. package/dist/http/MultipartParser/internal/multipart.js.map +1 -1
  533. package/dist/http/Url.d.ts.map +1 -1
  534. package/dist/http/Url.js +6 -1
  535. package/dist/http/Url.js.map +1 -1
  536. package/dist/http/internal/decompression.js +17 -11
  537. package/dist/http/internal/decompression.js.map +1 -1
  538. package/dist/http/internal/lazyStream.d.ts +2 -0
  539. package/dist/http/internal/lazyStream.d.ts.map +1 -0
  540. package/dist/http/internal/lazyStream.js +18 -0
  541. package/dist/http/internal/lazyStream.js.map +1 -0
  542. package/dist/http/internal/requestState.d.ts +2 -0
  543. package/dist/http/internal/requestState.d.ts.map +1 -0
  544. package/dist/http/internal/requestState.js +28 -0
  545. package/dist/http/internal/requestState.js.map +1 -0
  546. package/dist/http/internal/webResponse.d.ts +2 -0
  547. package/dist/http/internal/webResponse.d.ts.map +1 -0
  548. package/dist/http/internal/webResponse.js +12 -0
  549. package/dist/http/internal/webResponse.js.map +1 -0
  550. package/dist/http-api/HttpApi.js +1 -1
  551. package/dist/http-api/HttpApi.js.map +1 -1
  552. package/dist/http-api/HttpApiBuilder.d.ts.map +1 -1
  553. package/dist/http-api/HttpApiBuilder.js +121 -18
  554. package/dist/http-api/HttpApiBuilder.js.map +1 -1
  555. package/dist/http-api/HttpApiClient.d.ts +29 -4
  556. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  557. package/dist/http-api/HttpApiClient.js +83 -23
  558. package/dist/http-api/HttpApiClient.js.map +1 -1
  559. package/dist/http-api/HttpApiEndpoint.d.ts +55 -29
  560. package/dist/http-api/HttpApiEndpoint.d.ts.map +1 -1
  561. package/dist/http-api/HttpApiEndpoint.js +49 -5
  562. package/dist/http-api/HttpApiEndpoint.js.map +1 -1
  563. package/dist/http-api/HttpApiError.d.ts +58 -0
  564. package/dist/http-api/HttpApiError.d.ts.map +1 -1
  565. package/dist/http-api/HttpApiError.js +38 -12
  566. package/dist/http-api/HttpApiError.js.map +1 -1
  567. package/dist/http-api/HttpApiScalar.d.ts +2 -1
  568. package/dist/http-api/HttpApiScalar.d.ts.map +1 -1
  569. package/dist/http-api/HttpApiScalar.js +6 -3
  570. package/dist/http-api/HttpApiScalar.js.map +1 -1
  571. package/dist/http-api/HttpApiSchema.d.ts +191 -9
  572. package/dist/http-api/HttpApiSchema.d.ts.map +1 -1
  573. package/dist/http-api/HttpApiSchema.js +137 -4
  574. package/dist/http-api/HttpApiSchema.js.map +1 -1
  575. package/dist/http-api/HttpApiSwagger.d.ts +5 -0
  576. package/dist/http-api/HttpApiSwagger.d.ts.map +1 -1
  577. package/dist/http-api/HttpApiSwagger.js +14 -4
  578. package/dist/http-api/HttpApiSwagger.js.map +1 -1
  579. package/dist/http-api/HttpApiTest.d.ts +13 -2
  580. package/dist/http-api/HttpApiTest.d.ts.map +1 -1
  581. package/dist/http-api/HttpApiTest.js +30 -9
  582. package/dist/http-api/HttpApiTest.js.map +1 -1
  583. package/dist/http-api/OpenApi.d.ts +17 -3
  584. package/dist/http-api/OpenApi.d.ts.map +1 -1
  585. package/dist/http-api/OpenApi.js +57 -32
  586. package/dist/http-api/OpenApi.js.map +1 -1
  587. package/dist/http-api/internal/path.js +35 -10
  588. package/dist/http-api/internal/path.js.map +1 -1
  589. package/dist/index.d.ts +20 -0
  590. package/dist/index.d.ts.map +1 -1
  591. package/dist/index.js +20 -0
  592. package/dist/index.js.map +1 -1
  593. package/dist/internal/core.js +1 -1
  594. package/dist/internal/core.js.map +1 -1
  595. package/dist/internal/dateTime.js +19 -7
  596. package/dist/internal/dateTime.js.map +1 -1
  597. package/dist/internal/effect.js +85 -74
  598. package/dist/internal/effect.js.map +1 -1
  599. package/dist/internal/hashMap.js +2 -2
  600. package/dist/internal/hashMap.js.map +1 -1
  601. package/dist/internal/hydration.d.ts +2 -0
  602. package/dist/internal/hydration.d.ts.map +1 -0
  603. package/dist/internal/hydration.js +15 -0
  604. package/dist/internal/hydration.js.map +1 -0
  605. package/dist/internal/inflate.d.ts +2 -0
  606. package/dist/internal/inflate.d.ts.map +1 -0
  607. package/dist/internal/inflate.js +680 -0
  608. package/dist/internal/inflate.js.map +1 -0
  609. package/dist/internal/record.js +6 -0
  610. package/dist/internal/record.js.map +1 -1
  611. package/dist/internal/request.js +20 -7
  612. package/dist/internal/request.js.map +1 -1
  613. package/dist/internal/schedule.js +17 -22
  614. package/dist/internal/schedule.js.map +1 -1
  615. package/dist/internal/schema/fromJsonSchemaDocument.js +136 -126
  616. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
  617. package/dist/internal/schema/interpreter.js +51 -36
  618. package/dist/internal/schema/interpreter.js.map +1 -1
  619. package/dist/internal/schema/standardSchema.js +34 -33
  620. package/dist/internal/schema/standardSchema.js.map +1 -1
  621. package/dist/internal/schema/toCodeDocument.js +7 -2
  622. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  623. package/dist/internal/schema/toCodec.js +86 -1
  624. package/dist/internal/schema/toCodec.js.map +1 -1
  625. package/dist/internal/schema/toFormatter.js +5 -5
  626. package/dist/internal/schema/toFormatter.js.map +1 -1
  627. package/dist/internal/schema/toJsonSchemaDocument.js +60 -38
  628. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
  629. package/dist/internal/trie.js +1 -3
  630. package/dist/internal/trie.js.map +1 -1
  631. package/dist/internal/uuid.js +7 -3
  632. package/dist/internal/uuid.js.map +1 -1
  633. package/dist/internal/version.js +1 -1
  634. package/dist/net/NetAddress.d.ts.map +1 -1
  635. package/dist/net/NetAddress.js +2 -8
  636. package/dist/net/NetAddress.js.map +1 -1
  637. package/dist/observability/OtlpExporter.d.ts.map +1 -1
  638. package/dist/observability/OtlpExporter.js +5 -12
  639. package/dist/observability/OtlpExporter.js.map +1 -1
  640. package/dist/observability/OtlpMetrics.d.ts.map +1 -1
  641. package/dist/observability/OtlpMetrics.js +5 -3
  642. package/dist/observability/OtlpMetrics.js.map +1 -1
  643. package/dist/observability/OtlpResource.d.ts +3 -1
  644. package/dist/observability/OtlpResource.d.ts.map +1 -1
  645. package/dist/observability/OtlpResource.js +11 -4
  646. package/dist/observability/OtlpResource.js.map +1 -1
  647. package/dist/observability/OtlpSerialization.d.ts +5 -0
  648. package/dist/observability/OtlpSerialization.d.ts.map +1 -1
  649. package/dist/observability/OtlpSerialization.js +14 -3
  650. package/dist/observability/OtlpSerialization.js.map +1 -1
  651. package/dist/observability/internal/protobuf.d.ts +0 -9
  652. package/dist/observability/internal/protobuf.d.ts.map +1 -1
  653. package/dist/observability/internal/protobuf.js +2 -10
  654. package/dist/observability/internal/protobuf.js.map +1 -1
  655. package/dist/persistence/PersistedCache.d.ts.map +1 -1
  656. package/dist/persistence/PersistedCache.js +1 -1
  657. package/dist/persistence/PersistedCache.js.map +1 -1
  658. package/dist/persistence/PersistedQueue.d.ts +6 -2
  659. package/dist/persistence/PersistedQueue.d.ts.map +1 -1
  660. package/dist/persistence/PersistedQueue.js +162 -84
  661. package/dist/persistence/PersistedQueue.js.map +1 -1
  662. package/dist/persistence/Persistence.d.ts +28 -0
  663. package/dist/persistence/Persistence.d.ts.map +1 -1
  664. package/dist/persistence/Persistence.js +36 -8
  665. package/dist/persistence/Persistence.js.map +1 -1
  666. package/dist/persistence/RateLimiter.d.ts.map +1 -1
  667. package/dist/persistence/RateLimiter.js +8 -12
  668. package/dist/persistence/RateLimiter.js.map +1 -1
  669. package/dist/persistence/UserDirectories.d.ts +129 -0
  670. package/dist/persistence/UserDirectories.d.ts.map +1 -0
  671. package/dist/persistence/UserDirectories.js +178 -0
  672. package/dist/persistence/UserDirectories.js.map +1 -0
  673. package/dist/persistence/index.d.ts +5 -0
  674. package/dist/persistence/index.d.ts.map +1 -1
  675. package/dist/persistence/index.js +5 -0
  676. package/dist/persistence/index.js.map +1 -1
  677. package/dist/process/ChildProcess.d.ts +2 -1
  678. package/dist/process/ChildProcess.d.ts.map +1 -1
  679. package/dist/process/ChildProcess.js.map +1 -1
  680. package/dist/reactivity/AsyncResult.d.ts.map +1 -1
  681. package/dist/reactivity/AsyncResult.js +1 -1
  682. package/dist/reactivity/AsyncResult.js.map +1 -1
  683. package/dist/reactivity/Atom.d.ts +69 -30
  684. package/dist/reactivity/Atom.d.ts.map +1 -1
  685. package/dist/reactivity/Atom.js +40 -15
  686. package/dist/reactivity/Atom.js.map +1 -1
  687. package/dist/reactivity/AtomHttpApi.d.ts +5 -5
  688. package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
  689. package/dist/reactivity/AtomHttpApi.js +1 -1
  690. package/dist/reactivity/AtomHttpApi.js.map +1 -1
  691. package/dist/reactivity/AtomRegistry.d.ts +2 -2
  692. package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
  693. package/dist/reactivity/AtomRegistry.js +44 -9
  694. package/dist/reactivity/AtomRegistry.js.map +1 -1
  695. package/dist/reactivity/AtomRpc.d.ts +3 -3
  696. package/dist/reactivity/AtomRpc.d.ts.map +1 -1
  697. package/dist/reactivity/AtomRpc.js +1 -1
  698. package/dist/reactivity/AtomRpc.js.map +1 -1
  699. package/dist/reactivity/Hydration.d.ts.map +1 -1
  700. package/dist/reactivity/Hydration.js +46 -12
  701. package/dist/reactivity/Hydration.js.map +1 -1
  702. package/dist/reactivity/Reactivity.d.ts +71 -7
  703. package/dist/reactivity/Reactivity.d.ts.map +1 -1
  704. package/dist/reactivity/Reactivity.js +21 -12
  705. package/dist/reactivity/Reactivity.js.map +1 -1
  706. package/dist/rpc/Rpc.d.ts +18 -0
  707. package/dist/rpc/Rpc.d.ts.map +1 -1
  708. package/dist/rpc/Rpc.js +20 -0
  709. package/dist/rpc/Rpc.js.map +1 -1
  710. package/dist/rpc/RpcClient.d.ts +26 -2
  711. package/dist/rpc/RpcClient.d.ts.map +1 -1
  712. package/dist/rpc/RpcClient.js +196 -60
  713. package/dist/rpc/RpcClient.js.map +1 -1
  714. package/dist/rpc/RpcSerialization.d.ts +15 -0
  715. package/dist/rpc/RpcSerialization.d.ts.map +1 -1
  716. package/dist/rpc/RpcSerialization.js +21 -5
  717. package/dist/rpc/RpcSerialization.js.map +1 -1
  718. package/dist/rpc/RpcServer.d.ts.map +1 -1
  719. package/dist/rpc/RpcServer.js +9 -18
  720. package/dist/rpc/RpcServer.js.map +1 -1
  721. package/dist/schema/Model.d.ts +1 -1
  722. package/dist/schema/VariantSchema.d.ts +22 -3
  723. package/dist/schema/VariantSchema.d.ts.map +1 -1
  724. package/dist/schema/VariantSchema.js +32 -18
  725. package/dist/schema/VariantSchema.js.map +1 -1
  726. package/dist/socket/Socket.d.ts +23 -1
  727. package/dist/socket/Socket.d.ts.map +1 -1
  728. package/dist/socket/Socket.js +36 -3
  729. package/dist/socket/Socket.js.map +1 -1
  730. package/dist/sql/Migrator.d.ts.map +1 -1
  731. package/dist/sql/Migrator.js +15 -3
  732. package/dist/sql/Migrator.js.map +1 -1
  733. package/dist/sql/SqlClient.d.ts +143 -5
  734. package/dist/sql/SqlClient.d.ts.map +1 -1
  735. package/dist/sql/SqlClient.js +148 -27
  736. package/dist/sql/SqlClient.js.map +1 -1
  737. package/dist/sql/SqlResolver.d.ts +9 -0
  738. package/dist/sql/SqlResolver.d.ts.map +1 -1
  739. package/dist/sql/SqlResolver.js +9 -0
  740. package/dist/sql/SqlResolver.js.map +1 -1
  741. package/dist/sql/Statement.d.ts +3 -1
  742. package/dist/sql/Statement.d.ts.map +1 -1
  743. package/dist/sql/Statement.js +24 -5
  744. package/dist/sql/Statement.js.map +1 -1
  745. package/dist/testing/TestClock.d.ts.map +1 -1
  746. package/dist/testing/TestClock.js +4 -2
  747. package/dist/testing/TestClock.js.map +1 -1
  748. package/dist/testing/TestSchema.d.ts +7 -1
  749. package/dist/testing/TestSchema.d.ts.map +1 -1
  750. package/dist/testing/TestSchema.js +9 -3
  751. package/dist/testing/TestSchema.js.map +1 -1
  752. package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
  753. package/dist/workflow/WorkflowEngine.js +18 -4
  754. package/dist/workflow/WorkflowEngine.js.map +1 -1
  755. package/package.json +13 -3
  756. package/src/Array.ts +128 -55
  757. package/src/Bytes.ts +111 -0
  758. package/src/Channel.ts +263 -436
  759. package/src/ChannelSchema.ts +1 -49
  760. package/src/Chunk.ts +55 -61
  761. package/src/Config.ts +12 -86
  762. package/src/ConfigProvider.ts +2 -1
  763. package/src/Cron.ts +6 -3
  764. package/src/Duration.ts +66 -16
  765. package/src/Effect.ts +502 -167
  766. package/src/Equivalence.ts +7 -4
  767. package/src/Exit.ts +24 -9
  768. package/src/FiberHandle.ts +10 -9
  769. package/src/FiberMap.ts +13 -66
  770. package/src/FileSystem.ts +10 -0
  771. package/src/Graph.ts +171 -1263
  772. package/src/HashSet.ts +0 -60
  773. package/src/Iterable.ts +15 -14
  774. package/src/JsonSchema.ts +28 -3
  775. package/src/Layer.ts +2 -2
  776. package/src/ManagedRuntime.ts +72 -6
  777. package/src/Metric.ts +249 -507
  778. package/src/MutableHashMap.ts +4 -473
  779. package/src/Number.ts +2 -2
  780. package/src/Optic.ts +17 -332
  781. package/src/Path.ts +9 -1
  782. package/src/PubSub.ts +12 -7
  783. package/src/Queue.ts +5 -37
  784. package/src/Random.ts +1 -1
  785. package/src/RcMap.ts +14 -8
  786. package/src/Record.ts +51 -0
  787. package/src/Ref.ts +7 -104
  788. package/src/References.ts +5 -4
  789. package/src/RequestResolver.ts +46 -87
  790. package/src/Resource.ts +1 -1
  791. package/src/Runtime.ts +19 -18
  792. package/src/Schedule.ts +2 -94
  793. package/src/Schema.ts +591 -356
  794. package/src/SchemaAST.ts +20 -9
  795. package/src/SchemaGetter.ts +22 -5
  796. package/src/SchemaIssue.ts +44 -53
  797. package/src/SchemaRepresentation.ts +64 -1
  798. package/src/SchemaTransformation.ts +1 -1
  799. package/src/Scope.ts +12 -2
  800. package/src/ScopedCache.ts +17 -142
  801. package/src/SemVer.ts +1528 -0
  802. package/src/SemVerRange.ts +883 -0
  803. package/src/Sink.ts +6 -2
  804. package/src/Stream.ts +334 -1011
  805. package/src/String.ts +8 -8
  806. package/src/TextDiff.ts +766 -0
  807. package/src/TxHashMap.ts +1 -103
  808. package/src/TxHashSet.ts +48 -753
  809. package/src/ai/AiError.ts +66 -4
  810. package/src/ai/Chat.ts +10 -5
  811. package/src/ai/Decision.ts +49 -1
  812. package/src/ai/DecisionModel.ts +264 -108
  813. package/src/ai/EmbeddingModel.ts +25 -13
  814. package/src/ai/McpClient.ts +1211 -0
  815. package/src/ai/McpClientError.ts +329 -0
  816. package/src/ai/McpProtocol.ts +2 -2
  817. package/src/ai/McpSchema.ts +153 -35
  818. package/src/ai/McpServer.ts +217 -220
  819. package/src/ai/Prompt.ts +49 -35
  820. package/src/ai/Response.ts +195 -65
  821. package/src/ai/Tool.ts +12 -4
  822. package/src/ai/Toolkit.ts +78 -10
  823. package/src/ai/index.ts +12 -0
  824. package/src/ai/internal/mcpCore.ts +13 -14
  825. package/src/ai/internal/mcpProtocol/v2024_11_05.ts +1 -1
  826. package/src/ai/internal/mcpProtocol/v2025_03_26.ts +1 -1
  827. package/src/ai/internal/mcpProtocol/v2025_06_18.ts +3 -3
  828. package/src/ai/internal/mcpProtocol/v2025_11_25.ts +3 -3
  829. package/src/ai/internal/mcpProtocol/v2026_07_28.ts +12 -14
  830. package/src/ai/internal/mcpProtocol.ts +22 -2
  831. package/src/ai/internal/mcpRuntime.ts +3 -4
  832. package/src/ai/internal/mcpSchema/v2024_11_05.ts +20 -13
  833. package/src/ai/internal/mcpSchema/v2025_03_26.ts +4 -2
  834. package/src/ai/internal/mcpSchema/v2025_06_18.ts +7 -7
  835. package/src/ai/internal/mcpSchema/v2025_11_25.ts +8 -8
  836. package/src/ai/internal/mcpSchema/v2026_07_28.ts +44 -42
  837. package/src/cli/CliError.ts +49 -4
  838. package/src/cli/Command.ts +316 -9
  839. package/src/cli/Completions.ts +5 -0
  840. package/src/cli/Flag.ts +117 -0
  841. package/src/cli/GlobalFlag.ts +3 -3
  842. package/src/cli/Param.ts +122 -0
  843. package/src/cli/TerminalCapabilities.ts +156 -0
  844. package/src/cli/index.ts +6 -0
  845. package/src/cli/internal/command.ts +8 -3
  846. package/src/cli/internal/completions/bash.ts +4 -3
  847. package/src/cli/internal/completions/descriptor.ts +11 -1
  848. package/src/cli/internal/completions/fish.ts +10 -8
  849. package/src/cli/internal/completions/powershell.ts +23 -14
  850. package/src/cli/internal/completions/zsh.ts +8 -5
  851. package/src/cli/internal/formatter.ts +18 -0
  852. package/src/cli/internal/lexer.ts +12 -5
  853. package/src/cli/internal/parser.ts +31 -11
  854. package/src/cluster/ClusterCron.ts +94 -35
  855. package/src/cluster/ClusterMetrics.ts +149 -7
  856. package/src/cluster/ClusterWorkflowEngine.ts +84 -41
  857. package/src/cluster/Entity.ts +4 -0
  858. package/src/cluster/MessageStorage.ts +7 -0
  859. package/src/cluster/Runners.ts +76 -25
  860. package/src/cluster/Sharding.ts +118 -38
  861. package/src/cluster/ShardingConfig.ts +15 -0
  862. package/src/cluster/SqlMessageStorage.ts +58 -55
  863. package/src/cluster/SqlRunnerStorage.ts +10 -4
  864. package/src/cluster/internal/entityManager.ts +80 -10
  865. package/src/devtools/DevTools.ts +3 -2
  866. package/src/devtools/DevToolsClient.ts +27 -10
  867. package/src/encoding/Base64Url.ts +31 -0
  868. package/src/encoding/Ini.ts +3 -0
  869. package/src/encoding/JsonArray.ts +849 -0
  870. package/src/encoding/Ndjson.ts +211 -20
  871. package/src/encoding/SchemaBinary.ts +14 -48
  872. package/src/encoding/Tar.ts +1417 -0
  873. package/src/encoding/Toml.ts +3 -3
  874. package/src/encoding/Xml.ts +2037 -0
  875. package/src/encoding/Yaml.ts +108 -36
  876. package/src/encoding/Zip.ts +1558 -0
  877. package/src/encoding/index.ts +24 -0
  878. package/src/eventlog/EventJournal.ts +611 -227
  879. package/src/eventlog/EventLog.ts +496 -196
  880. package/src/eventlog/EventLogEncryption.ts +128 -43
  881. package/src/eventlog/EventLogMessage.ts +62 -11
  882. package/src/eventlog/EventLogRemote.ts +77 -21
  883. package/src/eventlog/EventLogServer.ts +162 -20
  884. package/src/eventlog/EventLogServerEncrypted.ts +121 -80
  885. package/src/eventlog/EventLogServerUnencrypted.ts +180 -77
  886. package/src/eventlog/EventRow.ts +706 -0
  887. package/src/eventlog/SqlEventJournal.ts +453 -173
  888. package/src/eventlog/SqlEventLogServerEncrypted.ts +212 -83
  889. package/src/eventlog/SqlEventLogServerUnencrypted.ts +141 -62
  890. package/src/eventlog/index.ts +6 -0
  891. package/src/eventlog/internal/conflicts.ts +123 -0
  892. package/src/graphql/GraphQLClientError.ts +5 -12
  893. package/src/graphql/GraphQLProtocol.ts +12 -9
  894. package/src/graphql/GraphQLResolver.ts +90 -239
  895. package/src/http/FetchHttpClient.ts +56 -6
  896. package/src/http/FindMyWay/internal/router.ts +11 -0
  897. package/src/http/Headers.ts +337 -154
  898. package/src/http/HttpClient.ts +126 -135
  899. package/src/http/HttpClientRequest.ts +142 -4
  900. package/src/http/HttpClientResponse.ts +71 -0
  901. package/src/http/HttpEffect.ts +25 -33
  902. package/src/http/HttpIncomingMessage.ts +3 -23
  903. package/src/http/HttpMiddleware.ts +180 -23
  904. package/src/http/HttpRouter.ts +8 -2
  905. package/src/http/HttpServerError.ts +6 -3
  906. package/src/http/HttpServerRequest.ts +71 -12
  907. package/src/http/HttpServerResponse.ts +49 -23
  908. package/src/http/HttpStaticServer.ts +25 -9
  909. package/src/http/MultipartParser/internal/contentType.ts +107 -6
  910. package/src/http/MultipartParser/internal/headers.ts +4 -16
  911. package/src/http/MultipartParser/internal/multipart.ts +10 -32
  912. package/src/http/Url.ts +6 -1
  913. package/src/http/internal/decompression.ts +26 -17
  914. package/src/http/internal/lazyStream.ts +25 -0
  915. package/src/http/internal/requestState.ts +33 -0
  916. package/src/http/internal/webResponse.ts +20 -0
  917. package/src/http-api/HttpApi.ts +1 -1
  918. package/src/http-api/HttpApiBuilder.ts +151 -23
  919. package/src/http-api/HttpApiClient.ts +158 -30
  920. package/src/http-api/HttpApiEndpoint.ts +144 -33
  921. package/src/http-api/HttpApiError.ts +55 -0
  922. package/src/http-api/HttpApiScalar.ts +4 -3
  923. package/src/http-api/HttpApiSchema.ts +275 -13
  924. package/src/http-api/HttpApiSwagger.ts +11 -4
  925. package/src/http-api/HttpApiTest.ts +33 -9
  926. package/src/http-api/OpenApi.ts +84 -42
  927. package/src/http-api/internal/path.ts +40 -12
  928. package/src/index.ts +24 -0
  929. package/src/internal/core.ts +1 -1
  930. package/src/internal/dateTime.ts +20 -7
  931. package/src/internal/effect.ts +120 -84
  932. package/src/internal/hashMap.ts +2 -2
  933. package/src/internal/hydration.ts +15 -0
  934. package/src/internal/inflate.ts +710 -0
  935. package/src/internal/record.ts +6 -0
  936. package/src/internal/request.ts +21 -6
  937. package/src/internal/schedule.ts +20 -39
  938. package/src/internal/schema/fromJsonSchemaDocument.ts +262 -193
  939. package/src/internal/schema/interpreter.ts +58 -45
  940. package/src/internal/schema/standardSchema.ts +32 -30
  941. package/src/internal/schema/toCodeDocument.ts +8 -3
  942. package/src/internal/schema/toCodec.ts +116 -1
  943. package/src/internal/schema/toFormatter.ts +6 -6
  944. package/src/internal/schema/toJsonSchemaDocument.ts +69 -39
  945. package/src/internal/trie.ts +1 -3
  946. package/src/internal/uuid.ts +15 -10
  947. package/src/internal/version.ts +1 -1
  948. package/src/net/NetAddress.ts +2 -9
  949. package/src/observability/OtlpExporter.ts +5 -12
  950. package/src/observability/OtlpMetrics.ts +5 -3
  951. package/src/observability/OtlpResource.ts +16 -6
  952. package/src/observability/OtlpSerialization.ts +17 -3
  953. package/src/observability/internal/protobuf.ts +2 -10
  954. package/src/persistence/PersistedCache.ts +3 -1
  955. package/src/persistence/PersistedQueue.ts +223 -153
  956. package/src/persistence/Persistence.ts +64 -30
  957. package/src/persistence/RateLimiter.ts +18 -21
  958. package/src/persistence/UserDirectories.ts +273 -0
  959. package/src/persistence/index.ts +6 -0
  960. package/src/process/ChildProcess.ts +2 -1
  961. package/src/reactivity/AsyncResult.ts +4 -38
  962. package/src/reactivity/Atom.ts +134 -166
  963. package/src/reactivity/AtomHttpApi.ts +10 -16
  964. package/src/reactivity/AtomRegistry.ts +50 -29
  965. package/src/reactivity/AtomRpc.ts +6 -22
  966. package/src/reactivity/Hydration.ts +53 -12
  967. package/src/reactivity/Reactivity.ts +97 -39
  968. package/src/rpc/Rpc.ts +21 -0
  969. package/src/rpc/RpcClient.ts +279 -103
  970. package/src/rpc/RpcSerialization.ts +21 -5
  971. package/src/rpc/RpcServer.ts +11 -20
  972. package/src/schema/VariantSchema.ts +86 -22
  973. package/src/socket/Socket.ts +45 -20
  974. package/src/sql/Migrator.ts +19 -9
  975. package/src/sql/SqlClient.ts +266 -29
  976. package/src/sql/SqlResolver.ts +9 -0
  977. package/src/sql/Statement.ts +35 -8
  978. package/src/testing/TestClock.ts +4 -1
  979. package/src/testing/TestSchema.ts +9 -3
  980. package/src/workflow/WorkflowEngine.ts +34 -10
  981. package/dist/http/internal/preResponseHandler.d.ts +0 -2
  982. package/dist/http/internal/preResponseHandler.d.ts.map +0 -1
  983. package/dist/http/internal/preResponseHandler.js +0 -14
  984. package/dist/http/internal/preResponseHandler.js.map +0 -1
  985. package/src/http/internal/preResponseHandler.ts +0 -19
package/dist/Schema.d.ts CHANGED
@@ -51,6 +51,8 @@ import * as SchemaGetter from "./SchemaGetter.ts";
51
51
  import * as SchemaIssue from "./SchemaIssue.ts";
52
52
  import * as SchemaParser from "./SchemaParser.ts";
53
53
  import type * as SchemaRepresentation from "./SchemaRepresentation.ts";
54
+ import * as SemVer_ from "./SemVer.ts";
55
+ import * as SemVerRange_ from "./SemVerRange.ts";
54
56
  import type { StandardJSONSchemaV1, StandardSchemaV1 } from "./StandardSchema.ts";
55
57
  import type { Assign, Lambda, Mutable, Simplify } from "./Struct.ts";
56
58
  import * as Struct_ from "./Struct.ts";
@@ -94,8 +96,8 @@ export type ConstructorDefault = "no-default" | "with-default";
94
96
  *
95
97
  * **When to use**
96
98
  *
97
- * Use when passing `disableChecks: true` to skip validation when you trust the
98
- * data. Pass `parseOptions` to control parsing behavior.
99
+ * Use when passing `disableChecks: true` to skip filters and checks while still
100
+ * parsing types and structure. Pass `parseOptions` to control parsing behavior.
99
101
  *
100
102
  * @see {@link BottomWithoutNew.makeEffect}
101
103
  * @see {@link BottomWithoutNew.make}
@@ -110,7 +112,8 @@ export interface MakeOptions {
110
112
  */
111
113
  readonly parseOptions?: SchemaAST.ParseOptions | undefined;
112
114
  /**
113
- * Whether to disable validation for the schema.
115
+ * Whether to skip filters and checks. Types and structure are still parsed,
116
+ * and constructor defaults still apply.
114
117
  */
115
118
  readonly disableChecks?: boolean | undefined;
116
119
  }
@@ -2424,8 +2427,8 @@ export interface Enum<A extends {
2424
2427
  readonly enums: A;
2425
2428
  }
2426
2429
  /**
2427
- * Creates a schema from a TypeScript enum object. Validates that the input is one of the enum's values.
2428
- * Numeric enum values must be finite.
2430
+ * Creates a schema from a TypeScript enum or an object mapping names to string or number values.
2431
+ * Validates that the input is one of those values. Numeric values must be finite.
2429
2432
  *
2430
2433
  * **Gotchas**
2431
2434
  *
@@ -2449,7 +2452,7 @@ export interface Enum<A extends {
2449
2452
  * @category constructors
2450
2453
  * @since 4.0.0
2451
2454
  */
2452
- export declare function Enum<A extends {
2455
+ export declare function Enum<const A extends {
2453
2456
  [x: string]: string | number;
2454
2457
  }>(enums: A): Enum<A>;
2455
2458
  /**
@@ -4629,8 +4632,8 @@ export interface compose<To extends Constraint, From extends Constraint> extends
4629
4632
  * **Gotchas**
4630
4633
  *
4631
4634
  * In a custom transformation, `decode` maps `From["Type"]` to `To["Encoded"]`
4632
- * and is used on the encoding path, while `encode` maps `To["Encoded"]` to
4633
- * `From["Type"]` and is used on the decoding path.
4635
+ * and is used on the decoding path, while `encode` maps `To["Encoded"]` to
4636
+ * `From["Type"]` and is used on the encoding path.
4634
4637
  *
4635
4638
  * **Example** (Transforming strings to numbers with a schema transformation)
4636
4639
  *
@@ -5145,8 +5148,6 @@ export declare function TaggedStruct<const Tag extends SchemaAST.LiteralValue, c
5145
5148
  * Recursively flatten any nested Schema.Union members into a single tuple of leaf schemas.
5146
5149
  */
5147
5150
  type Flatten<Schemas> = Schemas extends readonly [infer Head, ...infer Tail] ? Head extends Union<infer Inner> ? [...Flatten<Inner>, ...Flatten<Tail>] : [Head, ...Flatten<Tail>] : [];
5148
- type DiscriminantKey<T extends PropertyKey> = T extends number ? `${T}` : T;
5149
- type EnsureUniqueDiscriminants<Tags extends ReadonlyArray<PropertyKey>, Seen = never> = Tags extends readonly [infer Head extends PropertyKey, ...infer Tail extends ReadonlyArray<PropertyKey>] ? [DiscriminantKey<Head> & Seen] extends [never] ? EnsureUniqueDiscriminants<Tail, Seen | DiscriminantKey<Head>> : never : unknown;
5150
5151
  type MatchCasesResult<Cases> = {
5151
5152
  [K in keyof Cases]-?: NonNullable<Cases[K]> extends (...args: Array<any>) => infer R ? R : never;
5152
5153
  }[keyof Cases];
@@ -5222,10 +5223,9 @@ export type toTaggedUnion<Tag extends PropertyKey, Members extends ReadonlyArray
5222
5223
  *
5223
5224
  * **Gotchas**
5224
5225
  *
5225
- * Rejects overlapping discriminant types in known member tuples at compile
5226
- * time, including nested unions. Numeric and string values such as `1` and
5227
- * `"1"` count as duplicates. Also throws at runtime if multiple members use the
5228
- * same discriminant property key.
5226
+ * Throws when multiple members use the same discriminant property key,
5227
+ * including members of nested unions. Numeric and string values such as `1`
5228
+ * and `"1"` count as duplicates.
5229
5229
  *
5230
5230
  * **Example** (Adding tagged-union utilities to an existing union)
5231
5231
  *
@@ -5252,7 +5252,7 @@ export type toTaggedUnion<Tag extends PropertyKey, Members extends ReadonlyArray
5252
5252
  */
5253
5253
  export declare function toTaggedUnion<const Tag extends PropertyKey>(tag: Tag): <const Members extends ReadonlyArray<Constraint & {
5254
5254
  readonly Type: { readonly [K in Tag]: PropertyKey; };
5255
- }>>(self: Union<Members> & NoInfer<EnsureUniqueDiscriminants<TaggedUnionUtils<Tag, Members>["discriminants"]>>) => toTaggedUnion<Tag, Members>;
5255
+ }>>(self: Union<Members>) => toTaggedUnion<Tag, Members>;
5256
5256
  /**
5257
5257
  * Type-level representation returned by {@link TaggedUnion}.
5258
5258
  *
@@ -8362,6 +8362,42 @@ export interface DateTimeUtcFromString extends decodeTo<DateTimeUtc, String> {
8362
8362
  * @since 4.0.0
8363
8363
  */
8364
8364
  export declare const DateTimeUtcFromString: DateTimeUtcFromString;
8365
+ /**
8366
+ * Type-level representation of {@link DateTimeUtcFromHttpDate}.
8367
+ *
8368
+ * @stability unstable
8369
+ * @category models
8370
+ * @since 4.0.0
8371
+ */
8372
+ export interface DateTimeUtcFromHttpDate extends decodeTo<DateTimeUtc, String> {
8373
+ readonly "Rebuild": DateTimeUtcFromHttpDate;
8374
+ }
8375
+ /**
8376
+ * Schema for HTTP date header values, such as `Date`, `Last-Modified` and
8377
+ * `Expires`, decoded as `DateTime.Utc`.
8378
+ *
8379
+ * **When to use**
8380
+ *
8381
+ * Use with HTTP API header schemas that carry dates. Decoding accepts the
8382
+ * three formats of RFC 9110 §5.6.7 and reads them as UTC; encoding emits the
8383
+ * preferred IMF-fixdate form (`Sun, 06 Nov 1994 08:49:37 GMT`).
8384
+ *
8385
+ * **Example** (Decoding an HTTP date)
8386
+ *
8387
+ * ```ts
8388
+ * import { DateTime, Schema } from "effect"
8389
+ *
8390
+ * const date = Schema.decodeSync(Schema.DateTimeUtcFromHttpDate)("Sun, 06 Nov 1994 08:49:37 GMT")
8391
+ * const millis = DateTime.toEpochMillis(date) // => 784111777000
8392
+ * ```
8393
+ *
8394
+ * @see {@link DateTimeUtcFromString} for ISO 8601 strings
8395
+ *
8396
+ * @stability unstable
8397
+ * @category schemas
8398
+ * @since 4.0.0
8399
+ */
8400
+ export declare const DateTimeUtcFromHttpDate: DateTimeUtcFromHttpDate;
8365
8401
  /**
8366
8402
  * Type-level representation of {@link DateTimeUtcFromMillis}.
8367
8403
  *
@@ -10474,6 +10510,74 @@ export interface Headers extends declare<Headers_.Headers, {
10474
10510
  * @since 4.0.0
10475
10511
  */
10476
10512
  export declare const Headers: Headers;
10513
+ /**
10514
+ * Type-level representation of {@link RetryAfter}.
10515
+ *
10516
+ * @stability unstable
10517
+ * @category models
10518
+ * @since 4.0.0
10519
+ */
10520
+ export interface RetryAfter extends Union<readonly [
10521
+ Struct<{
10522
+ readonly _tag: tag<"Duration">;
10523
+ readonly duration: Duration;
10524
+ }>,
10525
+ Struct<{
10526
+ readonly _tag: tag<"DateTime">;
10527
+ readonly dateTime: DateTimeUtc;
10528
+ }>
10529
+ ]> {
10530
+ readonly "Rebuild": RetryAfter;
10531
+ }
10532
+ /**
10533
+ * Schema for parsed `Retry-After` header values.
10534
+ *
10535
+ * **Details**
10536
+ *
10537
+ * Matches `Headers.RetryAfter`: either `{ _tag: "Duration", duration }` or
10538
+ * `{ _tag: "DateTime", dateTime }`. The duration must be finite and
10539
+ * non-negative. Use {@link RetryAfterFromString} for the header string form.
10540
+ *
10541
+ * @stability unstable
10542
+ * @category schemas
10543
+ * @since 4.0.0
10544
+ */
10545
+ export declare const RetryAfter: RetryAfter;
10546
+ /**
10547
+ * Type-level representation of {@link RetryAfterFromString}.
10548
+ *
10549
+ * @stability unstable
10550
+ * @category models
10551
+ * @since 4.0.0
10552
+ */
10553
+ export interface RetryAfterFromString extends decodeTo<RetryAfter, String> {
10554
+ readonly "Rebuild": RetryAfterFromString;
10555
+ }
10556
+ /**
10557
+ * Schema for `Retry-After` header values, decoded with
10558
+ * `Headers.parseRetryAfter`.
10559
+ *
10560
+ * **When to use**
10561
+ *
10562
+ * Use with HTTP API header schemas that carry `Retry-After`. Decoding accepts
10563
+ * whole non-negative seconds or an HTTP date and rejects anything else;
10564
+ * encoding emits the delay as whole seconds, rounding a fractional second up,
10565
+ * or the date as an IMF-fixdate.
10566
+ *
10567
+ * **Example** (Decoding a Retry-After header)
10568
+ *
10569
+ * ```ts
10570
+ * import { Schema } from "effect"
10571
+ *
10572
+ * const value = Schema.decodeSync(Schema.RetryAfterFromString)("120")
10573
+ * // => { _tag: "Duration", duration: Duration.seconds(120) }
10574
+ * ```
10575
+ *
10576
+ * @stability unstable
10577
+ * @category schemas
10578
+ * @since 4.0.0
10579
+ */
10580
+ export declare const RetryAfterFromString: RetryAfterFromString;
10477
10581
  /**
10478
10582
  * Type-level representation of {@link UrlParams}.
10479
10583
  *
@@ -10755,6 +10859,102 @@ export type ResultIso<A extends Constraint, E extends Constraint> = {
10755
10859
  * @since 4.0.0
10756
10860
  */
10757
10861
  export declare function Result<A extends Constraint, E extends Constraint>(success: A, failure: E): Result<A, E>;
10862
+ /**
10863
+ * Type-level representation of {@link SemVer}.
10864
+ *
10865
+ * @stability unstable
10866
+ * @category models
10867
+ * @since 4.0.6
10868
+ */
10869
+ export interface SemVer extends declare<SemVer_.SemVer> {
10870
+ readonly "Rebuild": SemVer;
10871
+ }
10872
+ /**
10873
+ * Schema for `SemVer` values.
10874
+ *
10875
+ * **Details**
10876
+ *
10877
+ * The JSON and StringTree codecs encode a version as its canonical string,
10878
+ * including build metadata.
10879
+ *
10880
+ * @see {@link SemVerFromString} for parsing version strings
10881
+ * @stability unstable
10882
+ * @category schemas
10883
+ * @since 4.0.6
10884
+ */
10885
+ export declare const SemVer: SemVer;
10886
+ /**
10887
+ * Type-level representation of {@link SemVerFromString}.
10888
+ *
10889
+ * @stability unstable
10890
+ * @category models
10891
+ * @since 4.0.6
10892
+ */
10893
+ export interface SemVerFromString extends decodeTo<SemVer, String> {
10894
+ readonly "Rebuild": SemVerFromString;
10895
+ }
10896
+ /**
10897
+ * Schema that parses a Semantic Versioning 2.0.0 string into a `SemVer`.
10898
+ *
10899
+ * **Details**
10900
+ *
10901
+ * Decodes with `SemVer.parse`, rejecting a `v` prefix, surrounding whitespace,
10902
+ * partial versions, and leading zeros. Encodes with `SemVer.format`, including
10903
+ * build metadata.
10904
+ *
10905
+ * @see {@link SemVer} for validating values that are already SemVer values
10906
+ * @stability unstable
10907
+ * @category schemas
10908
+ * @since 4.0.6
10909
+ */
10910
+ export declare const SemVerFromString: SemVerFromString;
10911
+ /**
10912
+ * Type-level representation of {@link SemVerRange}.
10913
+ *
10914
+ * @stability unstable
10915
+ * @category models
10916
+ * @since 4.0.6
10917
+ */
10918
+ export interface SemVerRange extends declare<SemVerRange_.SemVerRange> {
10919
+ readonly "Rebuild": SemVerRange;
10920
+ }
10921
+ /**
10922
+ * Schema for `SemVerRange` values.
10923
+ *
10924
+ * **Details**
10925
+ *
10926
+ * The JSON and StringTree codecs encode a range with `SemVerRange.format`.
10927
+ *
10928
+ * @see {@link SemVerRangeFromString} for parsing range strings
10929
+ * @stability unstable
10930
+ * @category schemas
10931
+ * @since 4.0.6
10932
+ */
10933
+ export declare const SemVerRange: SemVerRange;
10934
+ /**
10935
+ * Type-level representation of {@link SemVerRangeFromString}.
10936
+ *
10937
+ * @stability unstable
10938
+ * @category models
10939
+ * @since 4.0.6
10940
+ */
10941
+ export interface SemVerRangeFromString extends decodeTo<SemVerRange, String> {
10942
+ readonly "Rebuild": SemVerRangeFromString;
10943
+ }
10944
+ /**
10945
+ * Schema that parses an npm-style version range string into a `SemVerRange`.
10946
+ *
10947
+ * **Details**
10948
+ *
10949
+ * Decodes with `SemVerRange.parse` and encodes with `SemVerRange.format`,
10950
+ * preserving parsed operators and normalizing wildcard spellings.
10951
+ *
10952
+ * @see {@link SemVerRange} for validating values that are already ranges
10953
+ * @stability unstable
10954
+ * @category schemas
10955
+ * @since 4.0.6
10956
+ */
10957
+ export declare const SemVerRangeFromString: SemVerRangeFromString;
10758
10958
  /**
10759
10959
  * Type-level representation returned by {@link Class}.
10760
10960
  *
@@ -10857,7 +11057,9 @@ type MissingSelfGeneric<Usage extends string> = `Missing \`Self\` generic - use
10857
11057
  *
10858
11058
  * **Gotchas**
10859
11059
  *
10860
- * Passing `disableChecks` in the options skips constructor validation.
11060
+ * Passing `disableChecks: true` skips filters and checks, not parsing of types
11061
+ * and structure. Wrong types and shapes are still rejected, and constructor
11062
+ * defaults still apply.
10861
11063
  *
10862
11064
  * **Example** (Defining a basic class)
10863
11065
  *
@@ -10928,7 +11130,9 @@ export declare const Class: {
10928
11130
  *
10929
11131
  * **Gotchas**
10930
11132
  *
10931
- * Passing `disableChecks` in the options skips constructor validation.
11133
+ * Passing `disableChecks: true` skips filters and checks, not parsing of types
11134
+ * and structure. Wrong types and shapes are still rejected, and constructor
11135
+ * defaults still apply.
10932
11136
  *
10933
11137
  * **Example** (Defining a basic class)
10934
11138
  *
@@ -10972,147 +11176,7 @@ export declare const Class: {
10972
11176
  * @since 3.10.0
10973
11177
  */
10974
11178
  <Self = never, Brand = {}>(identifier: string): {
10975
- /**
10976
- * Creates a schema-backed class whose constructor validates input against a
10977
- * {@link Struct} schema. Construction throws an `Error` with a
10978
- * `SchemaIssue.Issue` in its `cause` on invalid input.
10979
- *
10980
- * **When to use**
10981
- *
10982
- * Use when you need a schema-backed data class with validated construction,
10983
- * schema-derived decoding/encoding, and class-style methods or inheritance.
10984
- *
10985
- * **Details**
10986
- *
10987
- * Pass the desired class type as the first type parameter. The second optional
10988
- * type parameter can be used to add nominal brands.
10989
- *
10990
- * The `identifier` is the schema's stable runtime name. It is exposed on the
10991
- * class, stored in the schema AST, and used to label diagnostics and generated
10992
- * references as well as to format class instances.
10993
- *
10994
- * It also derives a runtime marker that recognizes instances across hot module
10995
- * reloads, where `instanceof` can fail because the constructor has been
10996
- * replaced. The identifier is explicit because the outer JavaScript class name
10997
- * is not available while the `extends` expression is evaluated and may change
10998
- * through renaming or minification.
10999
- *
11000
- * **Gotchas**
11001
- *
11002
- * Passing `disableChecks` in the options skips constructor validation.
11003
- *
11004
- * **Example** (Defining a basic class)
11005
- *
11006
- * ```ts import.meta.vitest
11007
- * import { Schema } from "effect"
11008
- *
11009
- * class Person extends Schema.Class<Person>("Person")({
11010
- * name: Schema.String,
11011
- * age: Schema.Number
11012
- * }) {}
11013
- *
11014
- * const alice = new Person({ name: "Alice", age: 30 })
11015
- * alice.name // => "Alice"
11016
- * String(alice) // => "Person({\"name\":\"Alice\",\"age\":30})"
11017
- * ```
11018
- *
11019
- * **Example** (Extending a class)
11020
- *
11021
- * ```ts import.meta.vitest
11022
- * import { Schema } from "effect"
11023
- *
11024
- * class Animal extends Schema.Class<Animal>("Animal")({
11025
- * name: Schema.String
11026
- * }) {}
11027
- *
11028
- * class Dog extends Animal.extend<Dog>("Dog")({
11029
- * breed: Schema.String
11030
- * }) {}
11031
- *
11032
- * const dog = new Dog({ name: "Rex", breed: "Labrador" })
11033
- * dog.name // => "Rex"
11034
- * dog.breed // => "Labrador"
11035
- * ```
11036
- *
11037
- * @see {@link TaggedClass} for adding a `_tag` literal field to the class schema
11038
- * @see {@link Error} for defining schema-backed error classes
11039
- * @see {@link TaggedError} for defining tagged schema-backed error classes
11040
- *
11041
- * @stability stable
11042
- * @category constructors
11043
- * @since 3.10.0
11044
- */
11045
11179
  <const Fields extends Struct.Fields>(fields: Fields, annotations?: Annotations.Declaration<Self, readonly [Struct<Fields>]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.Class"> : Class<Self, Struct<Fields>, Brand>;
11046
- /**
11047
- * Creates a schema-backed class whose constructor validates input against a
11048
- * {@link Struct} schema. Construction throws an `Error` with a
11049
- * `SchemaIssue.Issue` in its `cause` on invalid input.
11050
- *
11051
- * **When to use**
11052
- *
11053
- * Use when you need a schema-backed data class with validated construction,
11054
- * schema-derived decoding/encoding, and class-style methods or inheritance.
11055
- *
11056
- * **Details**
11057
- *
11058
- * Pass the desired class type as the first type parameter. The second optional
11059
- * type parameter can be used to add nominal brands.
11060
- *
11061
- * The `identifier` is the schema's stable runtime name. It is exposed on the
11062
- * class, stored in the schema AST, and used to label diagnostics and generated
11063
- * references as well as to format class instances.
11064
- *
11065
- * It also derives a runtime marker that recognizes instances across hot module
11066
- * reloads, where `instanceof` can fail because the constructor has been
11067
- * replaced. The identifier is explicit because the outer JavaScript class name
11068
- * is not available while the `extends` expression is evaluated and may change
11069
- * through renaming or minification.
11070
- *
11071
- * **Gotchas**
11072
- *
11073
- * Passing `disableChecks` in the options skips constructor validation.
11074
- *
11075
- * **Example** (Defining a basic class)
11076
- *
11077
- * ```ts import.meta.vitest
11078
- * import { Schema } from "effect"
11079
- *
11080
- * class Person extends Schema.Class<Person>("Person")({
11081
- * name: Schema.String,
11082
- * age: Schema.Number
11083
- * }) {}
11084
- *
11085
- * const alice = new Person({ name: "Alice", age: 30 })
11086
- * alice.name // => "Alice"
11087
- * String(alice) // => "Person({\"name\":\"Alice\",\"age\":30})"
11088
- * ```
11089
- *
11090
- * **Example** (Extending a class)
11091
- *
11092
- * ```ts import.meta.vitest
11093
- * import { Schema } from "effect"
11094
- *
11095
- * class Animal extends Schema.Class<Animal>("Animal")({
11096
- * name: Schema.String
11097
- * }) {}
11098
- *
11099
- * class Dog extends Animal.extend<Dog>("Dog")({
11100
- * breed: Schema.String
11101
- * }) {}
11102
- *
11103
- * const dog = new Dog({ name: "Rex", breed: "Labrador" })
11104
- * dog.name // => "Rex"
11105
- * dog.breed // => "Labrador"
11106
- * ```
11107
- *
11108
- * @see {@link TaggedClass} for adding a `_tag` literal field to the class schema
11109
- * @see {@link Error} for defining schema-backed error classes
11110
- * @see {@link TaggedError} for defining tagged schema-backed error classes
11111
- *
11112
- * @stability stable
11113
- * @category constructors
11114
- * @since 3.10.0
11115
- */
11116
11180
  <S extends Struct<Struct.Fields>>(schema: S, annotations?: Annotations.Declaration<Self, readonly [S]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.Class"> : Class<Self, S, Brand>;
11117
11181
  };
11118
11182
  };
@@ -11180,69 +11244,7 @@ export declare const TaggedClass: {
11180
11244
  * @since 3.10.0
11181
11245
  */
11182
11246
  <Self = never, Brand = {}>(identifier?: string): {
11183
- /**
11184
- * Defines a schema-backed class with an automatically populated `_tag` field.
11185
- *
11186
- * **When to use**
11187
- *
11188
- * Use to define class instances that are validated by a schema and participate
11189
- * in tagged union matching.
11190
- *
11191
- * **Details**
11192
- *
11193
- * The optional `identifier` parameter overrides the schema identifier;
11194
- * it defaults to the `tag` value.
11195
- *
11196
- * **Example** (Defining a tagged class)
11197
- *
11198
- * ```ts import.meta.vitest
11199
- * import { Schema } from "effect"
11200
- *
11201
- * class Circle extends Schema.TaggedClass<Circle>()("Circle", {
11202
- * radius: Schema.Number
11203
- * }) {}
11204
- *
11205
- * const c = new Circle({ radius: 5 })
11206
- * c._tag // => "Circle"
11207
- * c.radius // => 5
11208
- * ```
11209
- *
11210
- * @stability stable
11211
- * @category constructors
11212
- * @since 3.10.0
11213
- */
11214
11247
  <Tag extends string, const Fields extends Struct.Fields>(tag: Tag, fields: Fields, annotations?: Annotations.Declaration<Self, readonly [TaggedStruct<Tag, Fields>]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.TaggedClass"> : Class<Self, TaggedStruct<Tag, Fields>, Brand>;
11215
- /**
11216
- * Defines a schema-backed class with an automatically populated `_tag` field.
11217
- *
11218
- * **When to use**
11219
- *
11220
- * Use to define class instances that are validated by a schema and participate
11221
- * in tagged union matching.
11222
- *
11223
- * **Details**
11224
- *
11225
- * The optional `identifier` parameter overrides the schema identifier;
11226
- * it defaults to the `tag` value.
11227
- *
11228
- * **Example** (Defining a tagged class)
11229
- *
11230
- * ```ts import.meta.vitest
11231
- * import { Schema } from "effect"
11232
- *
11233
- * class Circle extends Schema.TaggedClass<Circle>()("Circle", {
11234
- * radius: Schema.Number
11235
- * }) {}
11236
- *
11237
- * const c = new Circle({ radius: 5 })
11238
- * c._tag // => "Circle"
11239
- * c.radius // => 5
11240
- * ```
11241
- *
11242
- * @stability stable
11243
- * @category constructors
11244
- * @since 3.10.0
11245
- */
11246
11248
  <Tag extends string, S extends Struct<Struct.Fields>>(tag: Tag, schema: S, annotations?: Annotations.Declaration<Self, readonly [Struct<Simplify<{
11247
11249
  readonly _tag: tag<Tag>;
11248
11250
  } & S["fields"]>>]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.TaggedClass"> : Class<Self, Struct<Simplify<{
@@ -11304,59 +11306,7 @@ export declare const Error: {
11304
11306
  * @since 4.0.0
11305
11307
  */
11306
11308
  <Self = never, Brand = {}>(identifier: string): {
11307
- /**
11308
- * Creates a schema-backed error class that can be used as a typed,
11309
- * yieldable error in Effect programs. Combines {@link Class} validation with
11310
- * the `YieldableError` interface so instances can be yielded directly inside
11311
- * `Effect.gen`.
11312
- *
11313
- * **Example** (Schema-backed error)
11314
- *
11315
- * ```ts import.meta.vitest
11316
- * import { Effect, Schema } from "effect"
11317
- *
11318
- * class NotFound extends Schema.Error<NotFound>("NotFound")({
11319
- * id: Schema.Number
11320
- * }) {}
11321
- *
11322
- * const program = Effect.gen(function*() {
11323
- * yield* new NotFound({ id: 1 })
11324
- * })
11325
- * const error = await Effect.runPromise(Effect.flip(program))
11326
- * error.id // => 1
11327
- * ```
11328
- *
11329
- * @stability stable
11330
- * @category constructors
11331
- * @since 4.0.0
11332
- */
11333
11309
  <const Fields extends Struct.Fields>(fields: Fields, annotations?: Annotations.Declaration<Self, readonly [Struct<Fields>]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.Error"> : Class<Self, Struct<Fields>, Cause_.YieldableError & Brand>;
11334
- /**
11335
- * Creates a schema-backed error class that can be used as a typed,
11336
- * yieldable error in Effect programs. Combines {@link Class} validation with
11337
- * the `YieldableError` interface so instances can be yielded directly inside
11338
- * `Effect.gen`.
11339
- *
11340
- * **Example** (Schema-backed error)
11341
- *
11342
- * ```ts import.meta.vitest
11343
- * import { Effect, Schema } from "effect"
11344
- *
11345
- * class NotFound extends Schema.Error<NotFound>("NotFound")({
11346
- * id: Schema.Number
11347
- * }) {}
11348
- *
11349
- * const program = Effect.gen(function*() {
11350
- * yield* new NotFound({ id: 1 })
11351
- * })
11352
- * const error = await Effect.runPromise(Effect.flip(program))
11353
- * error.id // => 1
11354
- * ```
11355
- *
11356
- * @stability stable
11357
- * @category constructors
11358
- * @since 4.0.0
11359
- */
11360
11310
  <S extends Struct<Struct.Fields>>(schema: S, annotations?: Annotations.Declaration<Self, readonly [S]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.Error"> : Class<Self, S, Cause_.YieldableError & Brand>;
11361
11311
  };
11362
11312
  };
@@ -11422,67 +11372,7 @@ export declare const TaggedError: {
11422
11372
  * @since 3.10.0
11423
11373
  */
11424
11374
  <Self = never, Brand = {}>(identifier?: string): {
11425
- /**
11426
- * Defines a schema-backed yieldable error class with an automatically populated
11427
- * `_tag` field.
11428
- *
11429
- * **When to use**
11430
- *
11431
- * Use to define typed errors that are schema validated, yielded in `Effect.gen`,
11432
- * and matched as tagged union members.
11433
- *
11434
- * **Example** (Defining a tagged error class)
11435
- *
11436
- * ```ts import.meta.vitest
11437
- * import { Effect, Schema } from "effect"
11438
- *
11439
- * class NotFound extends Schema.TaggedError<NotFound>()("NotFound", {
11440
- * id: Schema.Number
11441
- * }) {}
11442
- *
11443
- * const program = Effect.gen(function*() {
11444
- * yield* new NotFound({ id: 42 })
11445
- * })
11446
- * const error = await Effect.runPromise(Effect.flip(program))
11447
- * error._tag // => "NotFound"
11448
- * error.id // => 42
11449
- * ```
11450
- *
11451
- * @stability stable
11452
- * @category constructors
11453
- * @since 3.10.0
11454
- */
11455
11375
  <Tag extends string, const Fields extends Struct.Fields>(tag: Tag, fields: Fields, annotations?: Annotations.Declaration<Self, readonly [TaggedStruct<Tag, Fields>]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.TaggedError"> : Class<Self, TaggedStruct<Tag, Fields>, Cause_.YieldableError & Brand>;
11456
- /**
11457
- * Defines a schema-backed yieldable error class with an automatically populated
11458
- * `_tag` field.
11459
- *
11460
- * **When to use**
11461
- *
11462
- * Use to define typed errors that are schema validated, yielded in `Effect.gen`,
11463
- * and matched as tagged union members.
11464
- *
11465
- * **Example** (Defining a tagged error class)
11466
- *
11467
- * ```ts import.meta.vitest
11468
- * import { Effect, Schema } from "effect"
11469
- *
11470
- * class NotFound extends Schema.TaggedError<NotFound>()("NotFound", {
11471
- * id: Schema.Number
11472
- * }) {}
11473
- *
11474
- * const program = Effect.gen(function*() {
11475
- * yield* new NotFound({ id: 42 })
11476
- * })
11477
- * const error = await Effect.runPromise(Effect.flip(program))
11478
- * error._tag // => "NotFound"
11479
- * error.id // => 42
11480
- * ```
11481
- *
11482
- * @stability stable
11483
- * @category constructors
11484
- * @since 3.10.0
11485
- */
11486
11376
  <Tag extends string, S extends Struct<Struct.Fields>>(tag: Tag, schema: S, annotations?: Annotations.Declaration<Self, readonly [Struct<Simplify<{
11487
11377
  readonly _tag: tag<Tag>;
11488
11378
  } & S["fields"]>>]>): [Self] extends [never] ? MissingSelfGeneric<"Schema.TaggedError"> : Class<Self, Struct<Simplify<{
@@ -11975,6 +11865,168 @@ export declare const toCodecArrayFromSingle: {
11975
11865
  */
11976
11866
  <S extends Constraint>(schema: S): toCodecArrayFromSingle<S>;
11977
11867
  };
11868
+ /**
11869
+ * Type-level representation returned by {@link toCodecGoJson}.
11870
+ *
11871
+ * @stability unstable
11872
+ * @category converting
11873
+ * @since 4.0.6
11874
+ */
11875
+ export interface toCodecGoJson<S extends Constraint> extends BottomLazy<S["ast"], toCodecGoJson<S>, S["~type.parameters"], S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]> {
11876
+ readonly "Type": S["Type"];
11877
+ readonly "Encoded": Json;
11878
+ readonly "DecodingServices": S["DecodingServices"];
11879
+ readonly "EncodingServices": S["EncodingServices"];
11880
+ readonly "~type.make.in": S["~type.make.in"];
11881
+ readonly "~type.make": S["~type.make"];
11882
+ readonly "Iso": S["Iso"];
11883
+ readonly schema: S;
11884
+ }
11885
+ /**
11886
+ * Derives a JSON codec, like {@link toCodecJson}, that also accepts the
11887
+ * `null` values Go's `encoding/json` writes for nil pointers, slices, and maps.
11888
+ *
11889
+ * **When to use**
11890
+ *
11891
+ * Use when decoding JSON produced by a Go service (for example the Docker
11892
+ * Engine or Kubernetes APIs), where any field the API document describes as
11893
+ * optional, or any slice or map, may arrive as `null`.
11894
+ *
11895
+ * **Details**
11896
+ *
11897
+ * Decoding applies these rules at every level of the schema:
11898
+ *
11899
+ * - An optional key that is `null` decodes as a missing key.
11900
+ * - A required array (`Schema.Array`) that is `null` decodes as `[]`.
11901
+ * - A required record (`Schema.Record`) that is `null` decodes as `{}`.
11902
+ *
11903
+ * Array and record rules also apply at the top level and to nested collection
11904
+ * values. Tuples, non-empty arrays, and structs are not treated as collections;
11905
+ * collection checks still apply to the empty value.
11906
+ *
11907
+ * Encoding is unchanged from {@link toCodecJson}: the added rules only decode
11908
+ * `null` and do not emit it. A missing key stays missing.
11909
+ *
11910
+ * These rules also accept `encoding/json/v2` output. By default, v2 writes
11911
+ * nil slices and maps as `[]` and `{}`, but it can be configured to emit
11912
+ * `null` instead.
11913
+ *
11914
+ * **Gotchas**
11915
+ *
11916
+ * - Normalization deliberately discards the distinction between nil and empty
11917
+ * Go slices or maps. They are distinguishable in Go, and unmarshalling a
11918
+ * missing key, `null`, or an empty collection can affect existing values
11919
+ * differently. Use {@link toCodecJson} with explicit nullable schemas when
11920
+ * that distinction matters.
11921
+ * - A key whose schema already accepts `null` (for example
11922
+ * `Schema.NullOr(X)`, `Schema.Unknown`, or `Schema.Json`) keeps `null` as a
11923
+ * value.
11924
+ * - A required field that is not an array or a record (a nil pointer to a Go
11925
+ * struct, for example) still fails on `null`. Make it optional if the API
11926
+ * can omit it.
11927
+ * - A nil `[]byte` is written as `null` by `encoding/json` (and as `""` by
11928
+ * version 2), but its schema is a base64 string, not an array. A required
11929
+ * `[]byte` field that is `null` fails; make it optional if the API can send
11930
+ * `null`.
11931
+ * - Only these `null` rules are covered. Field formats such as durations,
11932
+ * base64 bytes, and numbers encoded as strings belong in the field schemas.
11933
+ *
11934
+ * **Example** (Decoding a Go response with nil fields)
11935
+ *
11936
+ * ```ts import.meta.vitest
11937
+ * import { Schema } from "effect"
11938
+ *
11939
+ * const Container = Schema.Struct({
11940
+ * Id: Schema.String,
11941
+ * Names: Schema.Array(Schema.String),
11942
+ * Labels: Schema.Record(Schema.String, Schema.String),
11943
+ * Status: Schema.optionalKey(Schema.String)
11944
+ * })
11945
+ *
11946
+ * const decode = Schema.decodeUnknownSync(Schema.toCodecGoJson(Container))
11947
+ *
11948
+ * decode({ Id: "a", Names: null, Labels: null, Status: null }) // => { Id: "a", Names: [], Labels: {} }
11949
+ * ```
11950
+ *
11951
+ * @see {@link toCodecJson} for the canonical JSON codec
11952
+ * @stability unstable
11953
+ * @category converting
11954
+ * @since 4.0.6
11955
+ */
11956
+ export declare const toCodecGoJson: {
11957
+ /**
11958
+ * Derives a JSON codec, like {@link toCodecJson}, that also accepts the
11959
+ * `null` values Go's `encoding/json` writes for nil pointers, slices, and maps.
11960
+ *
11961
+ * **When to use**
11962
+ *
11963
+ * Use when decoding JSON produced by a Go service (for example the Docker
11964
+ * Engine or Kubernetes APIs), where any field the API document describes as
11965
+ * optional, or any slice or map, may arrive as `null`.
11966
+ *
11967
+ * **Details**
11968
+ *
11969
+ * Decoding applies these rules at every level of the schema:
11970
+ *
11971
+ * - An optional key that is `null` decodes as a missing key.
11972
+ * - A required array (`Schema.Array`) that is `null` decodes as `[]`.
11973
+ * - A required record (`Schema.Record`) that is `null` decodes as `{}`.
11974
+ *
11975
+ * Array and record rules also apply at the top level and to nested collection
11976
+ * values. Tuples, non-empty arrays, and structs are not treated as collections;
11977
+ * collection checks still apply to the empty value.
11978
+ *
11979
+ * Encoding is unchanged from {@link toCodecJson}: the added rules only decode
11980
+ * `null` and do not emit it. A missing key stays missing.
11981
+ *
11982
+ * These rules also accept `encoding/json/v2` output. By default, v2 writes
11983
+ * nil slices and maps as `[]` and `{}`, but it can be configured to emit
11984
+ * `null` instead.
11985
+ *
11986
+ * **Gotchas**
11987
+ *
11988
+ * - Normalization deliberately discards the distinction between nil and empty
11989
+ * Go slices or maps. They are distinguishable in Go, and unmarshalling a
11990
+ * missing key, `null`, or an empty collection can affect existing values
11991
+ * differently. Use {@link toCodecJson} with explicit nullable schemas when
11992
+ * that distinction matters.
11993
+ * - A key whose schema already accepts `null` (for example
11994
+ * `Schema.NullOr(X)`, `Schema.Unknown`, or `Schema.Json`) keeps `null` as a
11995
+ * value.
11996
+ * - A required field that is not an array or a record (a nil pointer to a Go
11997
+ * struct, for example) still fails on `null`. Make it optional if the API
11998
+ * can omit it.
11999
+ * - A nil `[]byte` is written as `null` by `encoding/json` (and as `""` by
12000
+ * version 2), but its schema is a base64 string, not an array. A required
12001
+ * `[]byte` field that is `null` fails; make it optional if the API can send
12002
+ * `null`.
12003
+ * - Only these `null` rules are covered. Field formats such as durations,
12004
+ * base64 bytes, and numbers encoded as strings belong in the field schemas.
12005
+ *
12006
+ * **Example** (Decoding a Go response with nil fields)
12007
+ *
12008
+ * ```ts import.meta.vitest
12009
+ * import { Schema } from "effect"
12010
+ *
12011
+ * const Container = Schema.Struct({
12012
+ * Id: Schema.String,
12013
+ * Names: Schema.Array(Schema.String),
12014
+ * Labels: Schema.Record(Schema.String, Schema.String),
12015
+ * Status: Schema.optionalKey(Schema.String)
12016
+ * })
12017
+ *
12018
+ * const decode = Schema.decodeUnknownSync(Schema.toCodecGoJson(Container))
12019
+ *
12020
+ * decode({ Id: "a", Names: null, Labels: null, Status: null }) // => { Id: "a", Names: [], Labels: {} }
12021
+ * ```
12022
+ *
12023
+ * @see {@link toCodecJson} for the canonical JSON codec
12024
+ * @stability unstable
12025
+ * @category converting
12026
+ * @since 4.0.6
12027
+ */
12028
+ <S extends Constraint>(schema: S): toCodecGoJson<S>;
12029
+ };
11978
12030
  type XmlEncoderOptions = {
11979
12031
  /** Root element name for the returned XML string. Default: "root" */
11980
12032
  readonly rootName?: string | undefined;
@@ -12510,7 +12562,7 @@ export declare namespace Annotations {
12510
12562
  readonly toCode?: SchemaRepresentation.Generation.Declaration | undefined;
12511
12563
  }
12512
12564
  /**
12513
- * Annotations for filter schema nodes (created via `Schema.filter`). Extends
12565
+ * Annotations for filter checks (created via `Schema.makeFilter`). Extends
12514
12566
  * {@link Augment} with an optional error message, identifier, and metadata.
12515
12567
  * Filters are intentionally non-parametric to keep them covariant.
12516
12568
  *