effect 4.0.0-beta.73 → 4.0.0-beta.75

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 (930) hide show
  1. package/dist/Array.d.ts +745 -627
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +277 -217
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +37 -30
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +19 -16
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +34 -40
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +16 -16
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +10 -10
  14. package/dist/Boolean.js +6 -6
  15. package/dist/Brand.d.ts +13 -11
  16. package/dist/Brand.d.ts.map +1 -1
  17. package/dist/Brand.js +10 -8
  18. package/dist/Brand.js.map +1 -1
  19. package/dist/Cause.d.ts +21 -23
  20. package/dist/Cause.d.ts.map +1 -1
  21. package/dist/Cause.js +21 -23
  22. package/dist/Cause.js.map +1 -1
  23. package/dist/Channel.d.ts +282 -72
  24. package/dist/Channel.d.ts.map +1 -1
  25. package/dist/Channel.js +108 -28
  26. package/dist/Channel.js.map +1 -1
  27. package/dist/ChannelSchema.d.ts +11 -11
  28. package/dist/ChannelSchema.js +5 -5
  29. package/dist/Chunk.d.ts +86 -33
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +48 -13
  32. package/dist/Chunk.js.map +1 -1
  33. package/dist/Clock.d.ts +3 -3
  34. package/dist/Clock.js +3 -3
  35. package/dist/Combiner.d.ts +9 -13
  36. package/dist/Combiner.d.ts.map +1 -1
  37. package/dist/Combiner.js +9 -13
  38. package/dist/Combiner.js.map +1 -1
  39. package/dist/Config.d.ts +49 -56
  40. package/dist/Config.d.ts.map +1 -1
  41. package/dist/Config.js +40 -43
  42. package/dist/Config.js.map +1 -1
  43. package/dist/ConfigProvider.d.ts +34 -44
  44. package/dist/ConfigProvider.d.ts.map +1 -1
  45. package/dist/ConfigProvider.js +24 -32
  46. package/dist/ConfigProvider.js.map +1 -1
  47. package/dist/Console.d.ts +2 -2
  48. package/dist/Console.js +2 -2
  49. package/dist/Context.d.ts +63 -75
  50. package/dist/Context.d.ts.map +1 -1
  51. package/dist/Context.js +29 -33
  52. package/dist/Context.js.map +1 -1
  53. package/dist/Cron.d.ts +6 -6
  54. package/dist/Cron.js +6 -6
  55. package/dist/Crypto.d.ts +4 -4
  56. package/dist/Crypto.js +4 -4
  57. package/dist/Data.d.ts +21 -15
  58. package/dist/Data.d.ts.map +1 -1
  59. package/dist/Data.js +7 -7
  60. package/dist/Data.js.map +1 -1
  61. package/dist/DateTime.d.ts +35 -16
  62. package/dist/DateTime.d.ts.map +1 -1
  63. package/dist/DateTime.js +35 -8
  64. package/dist/DateTime.js.map +1 -1
  65. package/dist/Deferred.d.ts +61 -52
  66. package/dist/Deferred.d.ts.map +1 -1
  67. package/dist/Deferred.js +21 -18
  68. package/dist/Deferred.js.map +1 -1
  69. package/dist/Duration.d.ts +50 -37
  70. package/dist/Duration.d.ts.map +1 -1
  71. package/dist/Duration.js +24 -13
  72. package/dist/Duration.js.map +1 -1
  73. package/dist/Effect.d.ts +574 -474
  74. package/dist/Effect.d.ts.map +1 -1
  75. package/dist/Effect.js +273 -213
  76. package/dist/Effect.js.map +1 -1
  77. package/dist/Encoding.d.ts +5 -0
  78. package/dist/Encoding.d.ts.map +1 -1
  79. package/dist/Encoding.js +5 -0
  80. package/dist/Encoding.js.map +1 -1
  81. package/dist/Equal.d.ts +28 -41
  82. package/dist/Equal.d.ts.map +1 -1
  83. package/dist/Equal.js +12 -19
  84. package/dist/Equal.js.map +1 -1
  85. package/dist/Equivalence.d.ts +72 -100
  86. package/dist/Equivalence.d.ts.map +1 -1
  87. package/dist/Equivalence.js +54 -74
  88. package/dist/Equivalence.js.map +1 -1
  89. package/dist/ErrorReporter.d.ts +1 -1
  90. package/dist/ErrorReporter.js +1 -1
  91. package/dist/ExecutionPlan.d.ts +2 -2
  92. package/dist/ExecutionPlan.js +1 -1
  93. package/dist/Exit.d.ts +79 -96
  94. package/dist/Exit.d.ts.map +1 -1
  95. package/dist/Exit.js +57 -64
  96. package/dist/Exit.js.map +1 -1
  97. package/dist/Fiber.d.ts +8 -6
  98. package/dist/Fiber.d.ts.map +1 -1
  99. package/dist/Fiber.js +8 -6
  100. package/dist/Fiber.js.map +1 -1
  101. package/dist/FiberHandle.d.ts +25 -0
  102. package/dist/FiberHandle.d.ts.map +1 -1
  103. package/dist/FiberHandle.js +15 -0
  104. package/dist/FiberHandle.js.map +1 -1
  105. package/dist/FiberMap.d.ts +35 -0
  106. package/dist/FiberMap.d.ts.map +1 -1
  107. package/dist/FiberMap.js +15 -0
  108. package/dist/FiberMap.js.map +1 -1
  109. package/dist/FiberSet.d.ts +20 -0
  110. package/dist/FiberSet.d.ts.map +1 -1
  111. package/dist/FiberSet.js +10 -0
  112. package/dist/FiberSet.js.map +1 -1
  113. package/dist/FileSystem.d.ts +6 -6
  114. package/dist/FileSystem.js +2 -2
  115. package/dist/Filter.d.ts +4 -4
  116. package/dist/Filter.js +4 -4
  117. package/dist/Formatter.d.ts +14 -19
  118. package/dist/Formatter.d.ts.map +1 -1
  119. package/dist/Formatter.js +14 -19
  120. package/dist/Formatter.js.map +1 -1
  121. package/dist/Function.d.ts +20 -21
  122. package/dist/Function.d.ts.map +1 -1
  123. package/dist/Function.js +14 -15
  124. package/dist/Function.js.map +1 -1
  125. package/dist/Graph.d.ts +13 -13
  126. package/dist/Graph.js +7 -7
  127. package/dist/HKT.d.ts +3 -3
  128. package/dist/Hash.d.ts +2 -1
  129. package/dist/Hash.d.ts.map +1 -1
  130. package/dist/Hash.js +2 -1
  131. package/dist/Hash.js.map +1 -1
  132. package/dist/HashMap.d.ts +18 -3
  133. package/dist/HashMap.d.ts.map +1 -1
  134. package/dist/HashMap.js +5 -0
  135. package/dist/HashMap.js.map +1 -1
  136. package/dist/HashRing.d.ts +9 -9
  137. package/dist/HashRing.js +3 -3
  138. package/dist/HashSet.d.ts +1 -1
  139. package/dist/Iterable.d.ts +39 -27
  140. package/dist/Iterable.d.ts.map +1 -1
  141. package/dist/Iterable.js +21 -11
  142. package/dist/Iterable.js.map +1 -1
  143. package/dist/JsonPatch.d.ts +2 -3
  144. package/dist/JsonPatch.d.ts.map +1 -1
  145. package/dist/JsonPatch.js +2 -3
  146. package/dist/JsonPatch.js.map +1 -1
  147. package/dist/JsonPointer.d.ts +2 -6
  148. package/dist/JsonPointer.d.ts.map +1 -1
  149. package/dist/JsonPointer.js +2 -6
  150. package/dist/JsonPointer.js.map +1 -1
  151. package/dist/JsonSchema.d.ts +17 -13
  152. package/dist/JsonSchema.d.ts.map +1 -1
  153. package/dist/JsonSchema.js +17 -13
  154. package/dist/JsonSchema.js.map +1 -1
  155. package/dist/Latch.d.ts +4 -3
  156. package/dist/Latch.d.ts.map +1 -1
  157. package/dist/Latch.js +4 -3
  158. package/dist/Latch.js.map +1 -1
  159. package/dist/Layer.d.ts +108 -130
  160. package/dist/Layer.d.ts.map +1 -1
  161. package/dist/Layer.js +43 -51
  162. package/dist/Layer.js.map +1 -1
  163. package/dist/Logger.d.ts +16 -19
  164. package/dist/Logger.d.ts.map +1 -1
  165. package/dist/Logger.js +15 -18
  166. package/dist/Logger.js.map +1 -1
  167. package/dist/ManagedRuntime.d.ts +2 -2
  168. package/dist/Match.d.ts +22 -22
  169. package/dist/Match.js +18 -18
  170. package/dist/Metric.d.ts +105 -125
  171. package/dist/Metric.d.ts.map +1 -1
  172. package/dist/Metric.js +54 -64
  173. package/dist/Metric.js.map +1 -1
  174. package/dist/MutableHashMap.d.ts +21 -12
  175. package/dist/MutableHashMap.d.ts.map +1 -1
  176. package/dist/MutableHashMap.js +7 -4
  177. package/dist/MutableHashMap.js.map +1 -1
  178. package/dist/MutableList.d.ts +15 -0
  179. package/dist/MutableList.d.ts.map +1 -1
  180. package/dist/MutableList.js +15 -0
  181. package/dist/MutableList.js.map +1 -1
  182. package/dist/MutableRef.d.ts +56 -42
  183. package/dist/MutableRef.d.ts.map +1 -1
  184. package/dist/MutableRef.js +28 -22
  185. package/dist/MutableRef.js.map +1 -1
  186. package/dist/Newtype.d.ts +10 -7
  187. package/dist/Newtype.d.ts.map +1 -1
  188. package/dist/Newtype.js +10 -7
  189. package/dist/Newtype.js.map +1 -1
  190. package/dist/Number.d.ts +23 -11
  191. package/dist/Number.d.ts.map +1 -1
  192. package/dist/Number.js +9 -5
  193. package/dist/Number.js.map +1 -1
  194. package/dist/Optic.d.ts +16 -16
  195. package/dist/Optic.d.ts.map +1 -1
  196. package/dist/Optic.js +10 -9
  197. package/dist/Optic.js.map +1 -1
  198. package/dist/Option.d.ts +232 -204
  199. package/dist/Option.d.ts.map +1 -1
  200. package/dist/Option.js +113 -96
  201. package/dist/Option.js.map +1 -1
  202. package/dist/Order.d.ts +119 -180
  203. package/dist/Order.d.ts.map +1 -1
  204. package/dist/Order.js +93 -145
  205. package/dist/Order.js.map +1 -1
  206. package/dist/PartitionedSemaphore.d.ts +14 -14
  207. package/dist/PartitionedSemaphore.js +6 -6
  208. package/dist/Path.d.ts +3 -3
  209. package/dist/Path.js +3 -3
  210. package/dist/Pipeable.d.ts +3 -3
  211. package/dist/Pipeable.js +3 -3
  212. package/dist/PlatformError.d.ts +4 -4
  213. package/dist/PlatformError.js +4 -4
  214. package/dist/Pool.d.ts +7 -11
  215. package/dist/Pool.d.ts.map +1 -1
  216. package/dist/Pool.js +3 -5
  217. package/dist/Pool.js.map +1 -1
  218. package/dist/Predicate.d.ts +279 -268
  219. package/dist/Predicate.d.ts.map +1 -1
  220. package/dist/Predicate.js +128 -123
  221. package/dist/Predicate.js.map +1 -1
  222. package/dist/PubSub.d.ts +33 -23
  223. package/dist/PubSub.d.ts.map +1 -1
  224. package/dist/PubSub.js +21 -11
  225. package/dist/PubSub.js.map +1 -1
  226. package/dist/Pull.d.ts +4 -4
  227. package/dist/Pull.js +4 -4
  228. package/dist/Queue.d.ts +70 -31
  229. package/dist/Queue.d.ts.map +1 -1
  230. package/dist/Queue.js +66 -27
  231. package/dist/Queue.js.map +1 -1
  232. package/dist/RcRef.d.ts +0 -4
  233. package/dist/RcRef.d.ts.map +1 -1
  234. package/dist/RcRef.js.map +1 -1
  235. package/dist/Record.d.ts +15 -15
  236. package/dist/Record.js +5 -5
  237. package/dist/Redactable.d.ts +2 -2
  238. package/dist/Redactable.js +2 -2
  239. package/dist/Redacted.d.ts +5 -5
  240. package/dist/Redacted.js +4 -4
  241. package/dist/Reducer.d.ts +2 -3
  242. package/dist/Reducer.d.ts.map +1 -1
  243. package/dist/Reducer.js +2 -3
  244. package/dist/Reducer.js.map +1 -1
  245. package/dist/Ref.d.ts +23 -22
  246. package/dist/Ref.d.ts.map +1 -1
  247. package/dist/Ref.js +21 -20
  248. package/dist/Ref.js.map +1 -1
  249. package/dist/References.d.ts +4 -4
  250. package/dist/References.js +4 -4
  251. package/dist/RegExp.d.ts +1 -1
  252. package/dist/RegExp.js +1 -1
  253. package/dist/Request.d.ts +22 -22
  254. package/dist/Request.js +6 -6
  255. package/dist/RequestResolver.d.ts +6 -6
  256. package/dist/RequestResolver.js +2 -2
  257. package/dist/Resource.d.ts +3 -3
  258. package/dist/Resource.js +3 -3
  259. package/dist/Result.d.ts +95 -51
  260. package/dist/Result.d.ts.map +1 -1
  261. package/dist/Result.js +53 -30
  262. package/dist/Result.js.map +1 -1
  263. package/dist/Runtime.d.ts +11 -8
  264. package/dist/Runtime.d.ts.map +1 -1
  265. package/dist/Runtime.js +11 -8
  266. package/dist/Runtime.js.map +1 -1
  267. package/dist/Schedule.d.ts +151 -89
  268. package/dist/Schedule.d.ts.map +1 -1
  269. package/dist/Schedule.js +59 -47
  270. package/dist/Schedule.js.map +1 -1
  271. package/dist/Scheduler.d.ts +6 -4
  272. package/dist/Scheduler.d.ts.map +1 -1
  273. package/dist/Scheduler.js +6 -4
  274. package/dist/Scheduler.js.map +1 -1
  275. package/dist/Schema.d.ts +620 -830
  276. package/dist/Schema.d.ts.map +1 -1
  277. package/dist/Schema.js +543 -452
  278. package/dist/Schema.js.map +1 -1
  279. package/dist/SchemaAST.d.ts +43 -22
  280. package/dist/SchemaAST.d.ts.map +1 -1
  281. package/dist/SchemaAST.js +80 -59
  282. package/dist/SchemaAST.js.map +1 -1
  283. package/dist/SchemaGetter.d.ts +139 -119
  284. package/dist/SchemaGetter.d.ts.map +1 -1
  285. package/dist/SchemaGetter.js +133 -113
  286. package/dist/SchemaGetter.js.map +1 -1
  287. package/dist/SchemaIssue.d.ts +37 -39
  288. package/dist/SchemaIssue.d.ts.map +1 -1
  289. package/dist/SchemaIssue.js +16 -17
  290. package/dist/SchemaIssue.js.map +1 -1
  291. package/dist/SchemaParser.d.ts +75 -156
  292. package/dist/SchemaParser.d.ts.map +1 -1
  293. package/dist/SchemaParser.js +75 -148
  294. package/dist/SchemaParser.js.map +1 -1
  295. package/dist/SchemaRepresentation.d.ts +30 -21
  296. package/dist/SchemaRepresentation.d.ts.map +1 -1
  297. package/dist/SchemaRepresentation.js +26 -22
  298. package/dist/SchemaRepresentation.js.map +1 -1
  299. package/dist/SchemaTransformation.d.ts +169 -145
  300. package/dist/SchemaTransformation.d.ts.map +1 -1
  301. package/dist/SchemaTransformation.js +183 -159
  302. package/dist/SchemaTransformation.js.map +1 -1
  303. package/dist/SchemaUtils.js +2 -2
  304. package/dist/SchemaUtils.js.map +1 -1
  305. package/dist/Scope.d.ts +16 -1
  306. package/dist/Scope.d.ts.map +1 -1
  307. package/dist/Scope.js +16 -1
  308. package/dist/Scope.js.map +1 -1
  309. package/dist/ScopedCache.d.ts +1 -1
  310. package/dist/ScopedCache.js +1 -1
  311. package/dist/ScopedRef.d.ts +14 -18
  312. package/dist/ScopedRef.d.ts.map +1 -1
  313. package/dist/ScopedRef.js +6 -8
  314. package/dist/ScopedRef.js.map +1 -1
  315. package/dist/Semaphore.d.ts +9 -9
  316. package/dist/Semaphore.js +3 -3
  317. package/dist/Sink.d.ts +18 -18
  318. package/dist/Sink.d.ts.map +1 -1
  319. package/dist/Sink.js +12 -12
  320. package/dist/Sink.js.map +1 -1
  321. package/dist/Stdio.d.ts +4 -5
  322. package/dist/Stdio.d.ts.map +1 -1
  323. package/dist/Stdio.js +4 -5
  324. package/dist/Stdio.js.map +1 -1
  325. package/dist/Stream.d.ts +376 -99
  326. package/dist/Stream.d.ts.map +1 -1
  327. package/dist/Stream.js +158 -43
  328. package/dist/Stream.js.map +1 -1
  329. package/dist/String.d.ts +11 -14
  330. package/dist/String.d.ts.map +1 -1
  331. package/dist/String.js +5 -6
  332. package/dist/String.js.map +1 -1
  333. package/dist/Struct.d.ts +23 -21
  334. package/dist/Struct.d.ts.map +1 -1
  335. package/dist/Struct.js +14 -12
  336. package/dist/Struct.js.map +1 -1
  337. package/dist/SubscriptionRef.d.ts +24 -19
  338. package/dist/SubscriptionRef.d.ts.map +1 -1
  339. package/dist/SubscriptionRef.js +12 -7
  340. package/dist/SubscriptionRef.js.map +1 -1
  341. package/dist/SynchronizedRef.d.ts +145 -120
  342. package/dist/SynchronizedRef.d.ts.map +1 -1
  343. package/dist/SynchronizedRef.js +51 -42
  344. package/dist/SynchronizedRef.js.map +1 -1
  345. package/dist/Terminal.d.ts +1 -1
  346. package/dist/Terminal.js +1 -1
  347. package/dist/Tracer.d.ts +9 -9
  348. package/dist/Tracer.js +6 -6
  349. package/dist/Trie.d.ts +15 -0
  350. package/dist/Trie.d.ts.map +1 -1
  351. package/dist/Trie.js +5 -0
  352. package/dist/Trie.js.map +1 -1
  353. package/dist/Tuple.d.ts +39 -33
  354. package/dist/Tuple.d.ts.map +1 -1
  355. package/dist/Tuple.js +23 -19
  356. package/dist/Tuple.js.map +1 -1
  357. package/dist/TxHashMap.d.ts +3 -3
  358. package/dist/TxHashSet.d.ts +1 -1
  359. package/dist/TxReentrantLock.d.ts +6 -3
  360. package/dist/TxReentrantLock.d.ts.map +1 -1
  361. package/dist/TxReentrantLock.js +2 -1
  362. package/dist/TxReentrantLock.js.map +1 -1
  363. package/dist/TxRef.d.ts +16 -16
  364. package/dist/TxRef.js +8 -8
  365. package/dist/TxSubscriptionRef.d.ts +43 -27
  366. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  367. package/dist/TxSubscriptionRef.js +19 -13
  368. package/dist/TxSubscriptionRef.js.map +1 -1
  369. package/dist/Types.d.ts +12 -38
  370. package/dist/Types.d.ts.map +1 -1
  371. package/dist/Types.js +0 -2
  372. package/dist/UndefinedOr.d.ts +15 -14
  373. package/dist/UndefinedOr.d.ts.map +1 -1
  374. package/dist/UndefinedOr.js +11 -10
  375. package/dist/UndefinedOr.js.map +1 -1
  376. package/dist/Unify.d.ts +9 -9
  377. package/dist/Unify.js +1 -1
  378. package/dist/internal/schema/annotations.js.map +1 -1
  379. package/dist/internal/schema/arbitrary.js +9 -9
  380. package/dist/internal/schema/arbitrary.js.map +1 -1
  381. package/dist/internal/schema/equivalence.js +9 -9
  382. package/dist/internal/schema/equivalence.js.map +1 -1
  383. package/dist/internal/schema/representation.js +14 -14
  384. package/dist/internal/schema/representation.js.map +1 -1
  385. package/dist/internal/schema/schema.js +11 -11
  386. package/dist/internal/schema/schema.js.map +1 -1
  387. package/dist/testing/TestClock.d.ts +5 -5
  388. package/dist/testing/TestClock.js +4 -4
  389. package/dist/testing/TestConsole.d.ts +3 -3
  390. package/dist/testing/TestConsole.js +3 -3
  391. package/dist/testing/TestSchema.d.ts +10 -10
  392. package/dist/testing/TestSchema.d.ts.map +1 -1
  393. package/dist/testing/TestSchema.js +9 -9
  394. package/dist/testing/TestSchema.js.map +1 -1
  395. package/dist/unstable/ai/AiError.d.ts +4 -2
  396. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  397. package/dist/unstable/ai/AiError.js +4 -2
  398. package/dist/unstable/ai/AiError.js.map +1 -1
  399. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +17 -20
  400. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  401. package/dist/unstable/ai/AnthropicStructuredOutput.js +36 -39
  402. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  403. package/dist/unstable/ai/Chat.d.ts +6 -7
  404. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  405. package/dist/unstable/ai/Chat.js +6 -7
  406. package/dist/unstable/ai/Chat.js.map +1 -1
  407. package/dist/unstable/ai/EmbeddingModel.d.ts +5 -5
  408. package/dist/unstable/ai/EmbeddingModel.js +4 -4
  409. package/dist/unstable/ai/IdGenerator.d.ts +4 -5
  410. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  411. package/dist/unstable/ai/IdGenerator.js +3 -4
  412. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  413. package/dist/unstable/ai/LanguageModel.d.ts +7 -6
  414. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  415. package/dist/unstable/ai/LanguageModel.js +6 -5
  416. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  417. package/dist/unstable/ai/McpSchema.d.ts +14 -12
  418. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  419. package/dist/unstable/ai/McpSchema.js +19 -17
  420. package/dist/unstable/ai/McpSchema.js.map +1 -1
  421. package/dist/unstable/ai/McpServer.d.ts +11 -4
  422. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  423. package/dist/unstable/ai/McpServer.js +8 -5
  424. package/dist/unstable/ai/McpServer.js.map +1 -1
  425. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +20 -18
  426. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  427. package/dist/unstable/ai/OpenAiStructuredOutput.js +45 -43
  428. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  429. package/dist/unstable/ai/Prompt.d.ts +17 -17
  430. package/dist/unstable/ai/Prompt.js +4 -4
  431. package/dist/unstable/ai/Prompt.js.map +1 -1
  432. package/dist/unstable/ai/ResponseIdTracker.d.ts +3 -2
  433. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
  434. package/dist/unstable/ai/ResponseIdTracker.js +3 -2
  435. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  436. package/dist/unstable/ai/Telemetry.d.ts +26 -11
  437. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  438. package/dist/unstable/ai/Telemetry.js +9 -4
  439. package/dist/unstable/ai/Telemetry.js.map +1 -1
  440. package/dist/unstable/ai/Tokenizer.d.ts +1 -1
  441. package/dist/unstable/ai/Tokenizer.js +1 -1
  442. package/dist/unstable/ai/Tool.d.ts +13 -12
  443. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  444. package/dist/unstable/ai/Tool.js +14 -13
  445. package/dist/unstable/ai/Tool.js.map +1 -1
  446. package/dist/unstable/ai/Toolkit.d.ts +2 -2
  447. package/dist/unstable/ai/Toolkit.js +2 -2
  448. package/dist/unstable/cli/Command.d.ts +37 -16
  449. package/dist/unstable/cli/Command.d.ts.map +1 -1
  450. package/dist/unstable/cli/Command.js +16 -9
  451. package/dist/unstable/cli/Command.js.map +1 -1
  452. package/dist/unstable/cli/Completions.d.ts +1 -1
  453. package/dist/unstable/cli/Completions.js +1 -1
  454. package/dist/unstable/cli/Flag.d.ts +7 -6
  455. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  456. package/dist/unstable/cli/Flag.js +7 -6
  457. package/dist/unstable/cli/Flag.js.map +1 -1
  458. package/dist/unstable/cli/GlobalFlag.d.ts +6 -1
  459. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  460. package/dist/unstable/cli/GlobalFlag.js +7 -2
  461. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  462. package/dist/unstable/cli/Param.d.ts +4 -4
  463. package/dist/unstable/cli/Param.d.ts.map +1 -1
  464. package/dist/unstable/cli/Param.js +13 -10
  465. package/dist/unstable/cli/Param.js.map +1 -1
  466. package/dist/unstable/cli/Primitive.d.ts +6 -5
  467. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  468. package/dist/unstable/cli/Primitive.js +4 -3
  469. package/dist/unstable/cli/Primitive.js.map +1 -1
  470. package/dist/unstable/cli/Prompt.d.ts +11 -11
  471. package/dist/unstable/cli/internal/parser.js +145 -10
  472. package/dist/unstable/cli/internal/parser.js.map +1 -1
  473. package/dist/unstable/cluster/ClusterCron.d.ts +1 -2
  474. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  475. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  476. package/dist/unstable/cluster/ClusterMetrics.d.ts +5 -0
  477. package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
  478. package/dist/unstable/cluster/ClusterMetrics.js +5 -0
  479. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  480. package/dist/unstable/cluster/ClusterSchema.d.ts +3 -3
  481. package/dist/unstable/cluster/ClusterSchema.js +3 -3
  482. package/dist/unstable/cluster/ClusterWorkflowEngine.js +15 -15
  483. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  484. package/dist/unstable/cluster/Entity.d.ts +1 -1
  485. package/dist/unstable/cluster/Entity.js +1 -1
  486. package/dist/unstable/cluster/EntityResource.d.ts +10 -0
  487. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  488. package/dist/unstable/cluster/EntityResource.js +10 -0
  489. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  490. package/dist/unstable/cluster/Envelope.d.ts +2 -2
  491. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  492. package/dist/unstable/cluster/Envelope.js +2 -2
  493. package/dist/unstable/cluster/Envelope.js.map +1 -1
  494. package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
  495. package/dist/unstable/cluster/HttpRunner.js +2 -2
  496. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  497. package/dist/unstable/cluster/K8sHttpClient.js +1 -1
  498. package/dist/unstable/cluster/Reply.d.ts +2 -2
  499. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  500. package/dist/unstable/cluster/Reply.js +12 -12
  501. package/dist/unstable/cluster/Reply.js.map +1 -1
  502. package/dist/unstable/cluster/RunnerHealth.d.ts +2 -1
  503. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  504. package/dist/unstable/cluster/RunnerHealth.js +2 -1
  505. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  506. package/dist/unstable/cluster/RunnerServer.d.ts +2 -2
  507. package/dist/unstable/cluster/RunnerServer.js +2 -2
  508. package/dist/unstable/cluster/Runners.d.ts +4 -4
  509. package/dist/unstable/cluster/Runners.js +4 -4
  510. package/dist/unstable/cluster/ShardId.js +3 -3
  511. package/dist/unstable/cluster/ShardId.js.map +1 -1
  512. package/dist/unstable/cluster/Sharding.d.ts +4 -4
  513. package/dist/unstable/cluster/Sharding.js +4 -4
  514. package/dist/unstable/cluster/ShardingConfig.d.ts +4 -4
  515. package/dist/unstable/cluster/ShardingConfig.js +4 -4
  516. package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
  517. package/dist/unstable/cluster/SingletonAddress.js +1 -1
  518. package/dist/unstable/cluster/Snowflake.d.ts +6 -6
  519. package/dist/unstable/cluster/Snowflake.js +8 -8
  520. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  521. package/dist/unstable/cluster/internal/entityManager.js +2 -2
  522. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  523. package/dist/unstable/devtools/DevToolsClient.d.ts +1 -1
  524. package/dist/unstable/devtools/DevToolsClient.js +1 -1
  525. package/dist/unstable/encoding/Msgpack.d.ts +2 -2
  526. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  527. package/dist/unstable/encoding/Msgpack.js +5 -5
  528. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  529. package/dist/unstable/encoding/Ndjson.d.ts +5 -0
  530. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  531. package/dist/unstable/encoding/Ndjson.js +5 -0
  532. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  533. package/dist/unstable/encoding/Sse.d.ts +2 -2
  534. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  535. package/dist/unstable/encoding/Sse.js +2 -2
  536. package/dist/unstable/encoding/Sse.js.map +1 -1
  537. package/dist/unstable/eventlog/EventGroup.d.ts +2 -1
  538. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  539. package/dist/unstable/eventlog/EventGroup.js +2 -1
  540. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  541. package/dist/unstable/eventlog/EventJournal.d.ts +10 -0
  542. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  543. package/dist/unstable/eventlog/EventJournal.js +10 -0
  544. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  545. package/dist/unstable/eventlog/EventLog.d.ts +4 -4
  546. package/dist/unstable/eventlog/EventLog.js +4 -4
  547. package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
  548. package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
  549. package/dist/unstable/eventlog/EventLogRemote.d.ts +1 -1
  550. package/dist/unstable/eventlog/EventLogRemote.js +1 -1
  551. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +2 -3
  552. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  553. package/dist/unstable/eventlog/EventLogServerEncrypted.js +2 -3
  554. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  555. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +8 -10
  556. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  557. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +8 -10
  558. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  559. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +4 -4
  560. package/dist/unstable/eventlog/EventLogSessionAuth.js +4 -4
  561. package/dist/unstable/http/Cookies.d.ts +1 -1
  562. package/dist/unstable/http/Cookies.js +4 -4
  563. package/dist/unstable/http/Cookies.js.map +1 -1
  564. package/dist/unstable/http/Etag.d.ts +3 -4
  565. package/dist/unstable/http/Etag.d.ts.map +1 -1
  566. package/dist/unstable/http/Etag.js +3 -4
  567. package/dist/unstable/http/Etag.js.map +1 -1
  568. package/dist/unstable/http/FetchHttpClient.d.ts +2 -2
  569. package/dist/unstable/http/FetchHttpClient.js +2 -2
  570. package/dist/unstable/http/Headers.js +2 -2
  571. package/dist/unstable/http/Headers.js.map +1 -1
  572. package/dist/unstable/http/HttpBody.js +2 -2
  573. package/dist/unstable/http/HttpBody.js.map +1 -1
  574. package/dist/unstable/http/HttpClient.d.ts +3 -3
  575. package/dist/unstable/http/HttpClient.js +3 -3
  576. package/dist/unstable/http/HttpClientRequest.d.ts +32 -5
  577. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  578. package/dist/unstable/http/HttpClientRequest.js +10 -1
  579. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  580. package/dist/unstable/http/HttpMiddleware.d.ts +1 -1
  581. package/dist/unstable/http/HttpMiddleware.js +1 -1
  582. package/dist/unstable/http/HttpPlatform.d.ts +1 -1
  583. package/dist/unstable/http/HttpPlatform.js +1 -1
  584. package/dist/unstable/http/HttpRouter.d.ts +5 -5
  585. package/dist/unstable/http/HttpRouter.js +5 -5
  586. package/dist/unstable/http/HttpServerResponse.d.ts +28 -23
  587. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  588. package/dist/unstable/http/HttpServerResponse.js +13 -8
  589. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  590. package/dist/unstable/http/Multipart.js +3 -3
  591. package/dist/unstable/http/Multipart.js.map +1 -1
  592. package/dist/unstable/http/Url.d.ts +33 -33
  593. package/dist/unstable/http/Url.js +11 -11
  594. package/dist/unstable/http/UrlParams.d.ts +30 -0
  595. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  596. package/dist/unstable/http/UrlParams.js +16 -6
  597. package/dist/unstable/http/UrlParams.js.map +1 -1
  598. package/dist/unstable/httpapi/HttpApi.d.ts +4 -3
  599. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  600. package/dist/unstable/httpapi/HttpApi.js +4 -3
  601. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  602. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  603. package/dist/unstable/httpapi/HttpApiBuilder.js +10 -8
  604. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  605. package/dist/unstable/httpapi/HttpApiClient.js +15 -15
  606. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  607. package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
  608. package/dist/unstable/httpapi/HttpApiError.js +13 -13
  609. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +3 -3
  610. package/dist/unstable/httpapi/HttpApiMiddleware.js +3 -3
  611. package/dist/unstable/httpapi/HttpApiSchema.d.ts +2 -2
  612. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  613. package/dist/unstable/httpapi/HttpApiSchema.js +9 -9
  614. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  615. package/dist/unstable/httpapi/OpenApi.js +11 -11
  616. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  617. package/dist/unstable/observability/OtlpResource.d.ts +5 -0
  618. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  619. package/dist/unstable/observability/OtlpResource.js +5 -0
  620. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  621. package/dist/unstable/observability/PrometheusMetrics.d.ts +8 -6
  622. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  623. package/dist/unstable/observability/PrometheusMetrics.js +6 -4
  624. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  625. package/dist/unstable/persistence/KeyValueStore.d.ts +3 -3
  626. package/dist/unstable/persistence/KeyValueStore.js +1 -1
  627. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  628. package/dist/unstable/persistence/Persistable.js +2 -2
  629. package/dist/unstable/persistence/PersistedQueue.d.ts +8 -8
  630. package/dist/unstable/persistence/PersistedQueue.js +8 -8
  631. package/dist/unstable/persistence/RateLimiter.d.ts +1 -1
  632. package/dist/unstable/persistence/RateLimiter.js +1 -1
  633. package/dist/unstable/process/ChildProcess.d.ts +5 -5
  634. package/dist/unstable/process/ChildProcess.js +2 -2
  635. package/dist/unstable/reactivity/AsyncResult.d.ts +4 -4
  636. package/dist/unstable/reactivity/AsyncResult.js +1 -1
  637. package/dist/unstable/reactivity/Atom.d.ts +4 -4
  638. package/dist/unstable/reactivity/Atom.js +4 -4
  639. package/dist/unstable/reactivity/AtomRegistry.d.ts +1 -1
  640. package/dist/unstable/reactivity/AtomRegistry.js +1 -1
  641. package/dist/unstable/reactivity/Reactivity.d.ts +1 -1
  642. package/dist/unstable/reactivity/Reactivity.js +1 -1
  643. package/dist/unstable/rpc/Rpc.d.ts +5 -5
  644. package/dist/unstable/rpc/Rpc.js +1 -1
  645. package/dist/unstable/rpc/RpcMiddleware.d.ts +1 -1
  646. package/dist/unstable/rpc/RpcMiddleware.js +1 -1
  647. package/dist/unstable/rpc/RpcSchema.d.ts +5 -5
  648. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  649. package/dist/unstable/rpc/RpcSchema.js +2 -2
  650. package/dist/unstable/rpc/RpcSerialization.d.ts +2 -2
  651. package/dist/unstable/rpc/RpcSerialization.js +2 -2
  652. package/dist/unstable/schema/Model.d.ts +2 -2
  653. package/dist/unstable/schema/Model.js +6 -6
  654. package/dist/unstable/schema/Model.js.map +1 -1
  655. package/dist/unstable/schema/VariantSchema.d.ts +2 -2
  656. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  657. package/dist/unstable/socket/Socket.d.ts +3 -3
  658. package/dist/unstable/socket/Socket.js +3 -3
  659. package/dist/unstable/socket/SocketServer.d.ts +1 -1
  660. package/dist/unstable/socket/SocketServer.js +1 -1
  661. package/dist/unstable/sql/Migrator.d.ts +1 -1
  662. package/dist/unstable/sql/SqlClient.d.ts +3 -3
  663. package/dist/unstable/sql/SqlClient.js +2 -2
  664. package/dist/unstable/sql/SqlConnection.d.ts +1 -1
  665. package/dist/unstable/sql/SqlConnection.js +1 -1
  666. package/dist/unstable/sql/SqlSchema.d.ts +4 -4
  667. package/dist/unstable/sql/SqlSchema.js +4 -4
  668. package/dist/unstable/sql/Statement.d.ts +2 -2
  669. package/dist/unstable/sql/Statement.js +2 -2
  670. package/dist/unstable/workers/Transferable.d.ts +3 -3
  671. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  672. package/dist/unstable/workers/Transferable.js +6 -6
  673. package/dist/unstable/workers/Transferable.js.map +1 -1
  674. package/dist/unstable/workers/Worker.d.ts +1 -1
  675. package/dist/unstable/workers/Worker.js +1 -1
  676. package/dist/unstable/workflow/Activity.d.ts +1 -1
  677. package/dist/unstable/workflow/Activity.js +1 -1
  678. package/dist/unstable/workflow/DurableDeferred.d.ts +1 -1
  679. package/dist/unstable/workflow/DurableDeferred.js +8 -8
  680. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  681. package/dist/unstable/workflow/DurableQueue.d.ts +1 -2
  682. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  683. package/dist/unstable/workflow/DurableQueue.js +1 -2
  684. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  685. package/dist/unstable/workflow/Workflow.d.ts +35 -15
  686. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  687. package/dist/unstable/workflow/Workflow.js +94 -72
  688. package/dist/unstable/workflow/Workflow.js.map +1 -1
  689. package/dist/unstable/workflow/WorkflowEngine.d.ts +10 -2
  690. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  691. package/dist/unstable/workflow/WorkflowEngine.js +16 -8
  692. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  693. package/dist/unstable/workflow/WorkflowProxy.d.ts +2 -4
  694. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  695. package/dist/unstable/workflow/WorkflowProxy.js +9 -11
  696. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  697. package/dist/unstable/workflow/WorkflowProxyServer.js +7 -7
  698. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  699. package/package.json +1 -1
  700. package/src/Array.ts +745 -627
  701. package/src/BigDecimal.ts +37 -30
  702. package/src/BigInt.ts +34 -40
  703. package/src/Boolean.ts +10 -10
  704. package/src/Brand.ts +16 -14
  705. package/src/Cause.ts +21 -23
  706. package/src/Channel.ts +316 -76
  707. package/src/ChannelSchema.ts +11 -11
  708. package/src/Chunk.ts +87 -34
  709. package/src/Clock.ts +3 -3
  710. package/src/Combiner.ts +9 -13
  711. package/src/Config.ts +60 -67
  712. package/src/ConfigProvider.ts +34 -44
  713. package/src/Console.ts +2 -2
  714. package/src/Context.ts +64 -76
  715. package/src/Cron.ts +6 -6
  716. package/src/Crypto.ts +4 -4
  717. package/src/Data.ts +21 -15
  718. package/src/DateTime.ts +35 -16
  719. package/src/Deferred.ts +61 -52
  720. package/src/Duration.ts +50 -37
  721. package/src/Effect.ts +574 -474
  722. package/src/Encoding.ts +5 -0
  723. package/src/Equal.ts +28 -41
  724. package/src/Equivalence.ts +72 -100
  725. package/src/ErrorReporter.ts +1 -1
  726. package/src/ExecutionPlan.ts +2 -2
  727. package/src/Exit.ts +79 -96
  728. package/src/Fiber.ts +8 -6
  729. package/src/FiberHandle.ts +25 -0
  730. package/src/FiberMap.ts +35 -0
  731. package/src/FiberSet.ts +20 -0
  732. package/src/FileSystem.ts +6 -6
  733. package/src/Filter.ts +4 -4
  734. package/src/Formatter.ts +14 -19
  735. package/src/Function.ts +20 -21
  736. package/src/Graph.ts +13 -13
  737. package/src/HKT.ts +3 -3
  738. package/src/Hash.ts +2 -1
  739. package/src/HashMap.ts +18 -3
  740. package/src/HashRing.ts +9 -9
  741. package/src/HashSet.ts +1 -1
  742. package/src/Iterable.ts +39 -27
  743. package/src/JsonPatch.ts +2 -3
  744. package/src/JsonPointer.ts +2 -6
  745. package/src/JsonSchema.ts +17 -13
  746. package/src/Latch.ts +4 -3
  747. package/src/Layer.ts +108 -130
  748. package/src/Logger.ts +22 -25
  749. package/src/ManagedRuntime.ts +2 -2
  750. package/src/Match.ts +22 -22
  751. package/src/Metric.ts +129 -157
  752. package/src/MutableHashMap.ts +35 -20
  753. package/src/MutableList.ts +15 -0
  754. package/src/MutableRef.ts +56 -42
  755. package/src/Newtype.ts +10 -7
  756. package/src/Number.ts +23 -11
  757. package/src/Optic.ts +25 -22
  758. package/src/Option.ts +232 -204
  759. package/src/Order.ts +119 -180
  760. package/src/PartitionedSemaphore.ts +14 -14
  761. package/src/Path.ts +3 -3
  762. package/src/Pipeable.ts +3 -3
  763. package/src/PlatformError.ts +4 -4
  764. package/src/Pool.ts +7 -11
  765. package/src/Predicate.ts +279 -268
  766. package/src/PubSub.ts +33 -23
  767. package/src/Pull.ts +4 -4
  768. package/src/Queue.ts +70 -31
  769. package/src/RcRef.ts +0 -4
  770. package/src/Record.ts +15 -15
  771. package/src/Redactable.ts +2 -2
  772. package/src/Redacted.ts +5 -5
  773. package/src/Reducer.ts +2 -3
  774. package/src/Ref.ts +61 -58
  775. package/src/References.ts +4 -4
  776. package/src/RegExp.ts +1 -1
  777. package/src/Request.ts +22 -22
  778. package/src/RequestResolver.ts +8 -8
  779. package/src/Resource.ts +3 -3
  780. package/src/Result.ts +105 -51
  781. package/src/Runtime.ts +11 -8
  782. package/src/Schedule.ts +157 -90
  783. package/src/Scheduler.ts +6 -4
  784. package/src/Schema.ts +1020 -1108
  785. package/src/SchemaAST.ts +149 -118
  786. package/src/SchemaGetter.ts +155 -134
  787. package/src/SchemaIssue.ts +39 -41
  788. package/src/SchemaParser.ts +176 -232
  789. package/src/SchemaRepresentation.ts +38 -28
  790. package/src/SchemaTransformation.ts +233 -207
  791. package/src/SchemaUtils.ts +2 -2
  792. package/src/Scope.ts +16 -1
  793. package/src/ScopedCache.ts +1 -1
  794. package/src/ScopedRef.ts +14 -18
  795. package/src/Semaphore.ts +9 -9
  796. package/src/Sink.ts +18 -18
  797. package/src/Stdio.ts +4 -5
  798. package/src/Stream.ts +411 -114
  799. package/src/String.ts +11 -14
  800. package/src/Struct.ts +23 -21
  801. package/src/SubscriptionRef.ts +24 -19
  802. package/src/SynchronizedRef.ts +145 -120
  803. package/src/Terminal.ts +1 -1
  804. package/src/Tracer.ts +9 -9
  805. package/src/Trie.ts +15 -0
  806. package/src/Tuple.ts +39 -33
  807. package/src/TxHashMap.ts +3 -3
  808. package/src/TxHashSet.ts +1 -1
  809. package/src/TxReentrantLock.ts +6 -3
  810. package/src/TxRef.ts +16 -16
  811. package/src/TxSubscriptionRef.ts +43 -27
  812. package/src/Types.ts +12 -39
  813. package/src/UndefinedOr.ts +15 -14
  814. package/src/Unify.ts +9 -9
  815. package/src/internal/schema/annotations.ts +4 -4
  816. package/src/internal/schema/arbitrary.ts +16 -16
  817. package/src/internal/schema/equivalence.ts +11 -11
  818. package/src/internal/schema/representation.ts +23 -23
  819. package/src/internal/schema/schema.ts +17 -17
  820. package/src/testing/TestClock.ts +5 -5
  821. package/src/testing/TestConsole.ts +3 -3
  822. package/src/testing/TestSchema.ts +20 -20
  823. package/src/unstable/ai/AiError.ts +4 -2
  824. package/src/unstable/ai/AnthropicStructuredOutput.ts +59 -56
  825. package/src/unstable/ai/Chat.ts +6 -7
  826. package/src/unstable/ai/EmbeddingModel.ts +5 -5
  827. package/src/unstable/ai/IdGenerator.ts +4 -5
  828. package/src/unstable/ai/LanguageModel.ts +9 -8
  829. package/src/unstable/ai/McpSchema.ts +19 -17
  830. package/src/unstable/ai/McpServer.ts +14 -7
  831. package/src/unstable/ai/OpenAiStructuredOutput.ts +72 -61
  832. package/src/unstable/ai/Prompt.ts +20 -20
  833. package/src/unstable/ai/ResponseIdTracker.ts +3 -2
  834. package/src/unstable/ai/Telemetry.ts +26 -11
  835. package/src/unstable/ai/Tokenizer.ts +1 -1
  836. package/src/unstable/ai/Tool.ts +17 -16
  837. package/src/unstable/ai/Toolkit.ts +2 -2
  838. package/src/unstable/cli/Command.ts +42 -17
  839. package/src/unstable/cli/Completions.ts +1 -1
  840. package/src/unstable/cli/Flag.ts +7 -6
  841. package/src/unstable/cli/GlobalFlag.ts +7 -1
  842. package/src/unstable/cli/Param.ts +24 -19
  843. package/src/unstable/cli/Primitive.ts +6 -5
  844. package/src/unstable/cli/Prompt.ts +11 -11
  845. package/src/unstable/cli/internal/parser.ts +204 -10
  846. package/src/unstable/cluster/ClusterCron.ts +1 -2
  847. package/src/unstable/cluster/ClusterMetrics.ts +5 -0
  848. package/src/unstable/cluster/ClusterSchema.ts +3 -3
  849. package/src/unstable/cluster/ClusterWorkflowEngine.ts +15 -15
  850. package/src/unstable/cluster/Entity.ts +1 -1
  851. package/src/unstable/cluster/EntityResource.ts +10 -0
  852. package/src/unstable/cluster/Envelope.ts +3 -3
  853. package/src/unstable/cluster/HttpRunner.ts +2 -2
  854. package/src/unstable/cluster/K8sHttpClient.ts +1 -1
  855. package/src/unstable/cluster/Reply.ts +14 -12
  856. package/src/unstable/cluster/RunnerHealth.ts +2 -1
  857. package/src/unstable/cluster/RunnerServer.ts +2 -2
  858. package/src/unstable/cluster/Runners.ts +4 -4
  859. package/src/unstable/cluster/ShardId.ts +3 -3
  860. package/src/unstable/cluster/Sharding.ts +4 -4
  861. package/src/unstable/cluster/ShardingConfig.ts +4 -4
  862. package/src/unstable/cluster/SingletonAddress.ts +1 -1
  863. package/src/unstable/cluster/Snowflake.ts +8 -8
  864. package/src/unstable/cluster/internal/entityManager.ts +2 -2
  865. package/src/unstable/devtools/DevToolsClient.ts +1 -1
  866. package/src/unstable/encoding/Msgpack.ts +6 -6
  867. package/src/unstable/encoding/Ndjson.ts +5 -0
  868. package/src/unstable/encoding/Sse.ts +2 -2
  869. package/src/unstable/eventlog/EventGroup.ts +2 -1
  870. package/src/unstable/eventlog/EventJournal.ts +10 -0
  871. package/src/unstable/eventlog/EventLog.ts +4 -4
  872. package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
  873. package/src/unstable/eventlog/EventLogRemote.ts +1 -1
  874. package/src/unstable/eventlog/EventLogServerEncrypted.ts +2 -3
  875. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +8 -10
  876. package/src/unstable/eventlog/EventLogSessionAuth.ts +4 -4
  877. package/src/unstable/http/Cookies.ts +5 -5
  878. package/src/unstable/http/Etag.ts +3 -4
  879. package/src/unstable/http/FetchHttpClient.ts +2 -2
  880. package/src/unstable/http/Headers.ts +2 -2
  881. package/src/unstable/http/HttpBody.ts +2 -2
  882. package/src/unstable/http/HttpClient.ts +3 -3
  883. package/src/unstable/http/HttpClientRequest.ts +32 -5
  884. package/src/unstable/http/HttpMiddleware.ts +1 -1
  885. package/src/unstable/http/HttpPlatform.ts +1 -1
  886. package/src/unstable/http/HttpRouter.ts +5 -5
  887. package/src/unstable/http/HttpServerResponse.ts +28 -23
  888. package/src/unstable/http/Multipart.ts +3 -3
  889. package/src/unstable/http/Url.ts +33 -33
  890. package/src/unstable/http/UrlParams.ts +36 -6
  891. package/src/unstable/httpapi/HttpApi.ts +6 -5
  892. package/src/unstable/httpapi/HttpApiBuilder.ts +14 -13
  893. package/src/unstable/httpapi/HttpApiClient.ts +16 -16
  894. package/src/unstable/httpapi/HttpApiError.ts +13 -13
  895. package/src/unstable/httpapi/HttpApiMiddleware.ts +3 -3
  896. package/src/unstable/httpapi/HttpApiSchema.ts +15 -15
  897. package/src/unstable/httpapi/OpenApi.ts +18 -18
  898. package/src/unstable/observability/OtlpResource.ts +5 -0
  899. package/src/unstable/observability/PrometheusMetrics.ts +8 -6
  900. package/src/unstable/persistence/KeyValueStore.ts +3 -3
  901. package/src/unstable/persistence/Persistable.ts +2 -2
  902. package/src/unstable/persistence/PersistedQueue.ts +8 -8
  903. package/src/unstable/persistence/RateLimiter.ts +1 -1
  904. package/src/unstable/process/ChildProcess.ts +5 -5
  905. package/src/unstable/reactivity/AsyncResult.ts +4 -4
  906. package/src/unstable/reactivity/Atom.ts +4 -4
  907. package/src/unstable/reactivity/AtomRegistry.ts +1 -1
  908. package/src/unstable/reactivity/Reactivity.ts +1 -1
  909. package/src/unstable/rpc/Rpc.ts +5 -5
  910. package/src/unstable/rpc/RpcMiddleware.ts +1 -1
  911. package/src/unstable/rpc/RpcSchema.ts +5 -5
  912. package/src/unstable/rpc/RpcSerialization.ts +2 -2
  913. package/src/unstable/schema/Model.ts +7 -7
  914. package/src/unstable/schema/VariantSchema.ts +2 -2
  915. package/src/unstable/socket/Socket.ts +3 -3
  916. package/src/unstable/socket/SocketServer.ts +1 -1
  917. package/src/unstable/sql/Migrator.ts +1 -1
  918. package/src/unstable/sql/SqlClient.ts +3 -3
  919. package/src/unstable/sql/SqlConnection.ts +1 -1
  920. package/src/unstable/sql/SqlSchema.ts +4 -4
  921. package/src/unstable/sql/Statement.ts +2 -2
  922. package/src/unstable/workers/Transferable.ts +7 -7
  923. package/src/unstable/workers/Worker.ts +1 -1
  924. package/src/unstable/workflow/Activity.ts +1 -1
  925. package/src/unstable/workflow/DurableDeferred.ts +8 -8
  926. package/src/unstable/workflow/DurableQueue.ts +1 -2
  927. package/src/unstable/workflow/Workflow.ts +159 -114
  928. package/src/unstable/workflow/WorkflowEngine.ts +16 -8
  929. package/src/unstable/workflow/WorkflowProxy.ts +9 -11
  930. package/src/unstable/workflow/WorkflowProxyServer.ts +7 -7
package/dist/Schema.d.ts CHANGED
@@ -108,10 +108,10 @@ import * as Order from "./Order.ts";
108
108
  import * as Pipeable from "./Pipeable.ts";
109
109
  import * as Redacted_ from "./Redacted.ts";
110
110
  import * as Result_ from "./Result.ts";
111
- import * as AST from "./SchemaAST.ts";
112
- import * as Getter from "./SchemaGetter.ts";
113
- import * as Issue from "./SchemaIssue.ts";
114
- import * as Parser from "./SchemaParser.ts";
111
+ import * as SchemaAST from "./SchemaAST.ts";
112
+ import * as SchemaGetter from "./SchemaGetter.ts";
113
+ import * as SchemaIssue from "./SchemaIssue.ts";
114
+ import * as SchemaParser from "./SchemaParser.ts";
115
115
  import type * as SchemaRepresentation from "./SchemaRepresentation.ts";
116
116
  import type { Assign, Lambda, Mutable, Simplify } from "./Struct.ts";
117
117
  import * as Struct_ from "./Struct.ts";
@@ -159,14 +159,14 @@ export type ConstructorDefault = "no-default" | "with-default";
159
159
  * @see {@link Bottom.makeEffect}
160
160
  * @see {@link Bottom.make}
161
161
  *
162
- * @category models
162
+ * @category options
163
163
  * @since 3.13.4
164
164
  */
165
165
  export interface MakeOptions {
166
166
  /**
167
167
  * The parse options to use for the schema.
168
168
  */
169
- readonly parseOptions?: AST.ParseOptions | undefined;
169
+ readonly parseOptions?: SchemaAST.ParseOptions | undefined;
170
170
  /**
171
171
  * Whether to disable validation for the schema.
172
172
  */
@@ -191,7 +191,7 @@ export interface MakeOptions {
191
191
  * @category models
192
192
  * @since 4.0.0
193
193
  */
194
- export interface Bottom<out T, out E, out RD, out RE, out Ast extends AST.AST, out Rebuild extends Top, out TypeMakeIn = T, out Iso = T, in out TypeParameters extends ReadonlyArray<Top> = readonly [], out TypeMake = TypeMakeIn, out TypeMutability extends Mutability = "readonly", out TypeOptionality extends Optionality = "required", out TypeConstructorDefault extends ConstructorDefault = "no-default", out EncodedMutability extends Mutability = "readonly", out EncodedOptionality extends Optionality = "required"> extends Pipeable.Pipeable {
194
+ export interface Bottom<out T, out E, out RD, out RE, out Ast extends SchemaAST.AST, out Rebuild extends Top, out TypeMakeIn = T, out Iso = T, in out TypeParameters extends ReadonlyArray<Top> = readonly [], out TypeMake = TypeMakeIn, out TypeMutability extends Mutability = "readonly", out TypeOptionality extends Optionality = "required", out TypeConstructorDefault extends ConstructorDefault = "no-default", out EncodedMutability extends Mutability = "readonly", out EncodedOptionality extends Optionality = "required"> extends Pipeable.Pipeable {
195
195
  readonly [TypeId]: typeof TypeId;
196
196
  readonly "ast": Ast;
197
197
  readonly "Rebuild": Rebuild;
@@ -210,7 +210,7 @@ export interface Bottom<out T, out E, out RD, out RE, out Ast extends AST.AST, o
210
210
  readonly "~encoded.optionality": EncodedOptionality;
211
211
  annotate(annotations: Annotations.Bottom<this["Type"], this["~type.parameters"]>): this["Rebuild"];
212
212
  annotateKey(annotations: Annotations.Key<this["Type"]>): this["Rebuild"];
213
- check(...checks: readonly [AST.Check<this["Type"]>, ...Array<AST.Check<this["Type"]>>]): this["Rebuild"];
213
+ check(...checks: readonly [SchemaAST.Check<this["Type"]>, ...Array<SchemaAST.Check<this["Type"]>>]): this["Rebuild"];
214
214
  rebuild(ast: this["ast"]): this["Rebuild"];
215
215
  /**
216
216
  * Constructs a value from the make input representation synchronously.
@@ -267,20 +267,23 @@ export interface Bottom<out T, out E, out RD, out RE, out Ast extends AST.AST, o
267
267
  makeEffect(input: this["~type.make.in"], options?: MakeOptions): Effect.Effect<this["Type"], SchemaError>;
268
268
  }
269
269
  /**
270
- * The schema type returned by {@link declareConstructor}, tracking the decoded
271
- * type `T`, the encoded type `E`, and the list of type-parameter schemas
272
- * `TypeParameters`.
270
+ * Type-level representation returned by {@link declareConstructor}.
273
271
  *
274
272
  * @category constructors
275
273
  * @since 4.0.0
276
274
  */
277
- export interface declareConstructor<T, E, TypeParameters extends ReadonlyArray<Top>, Iso = T> extends Bottom<T, E, TypeParameters[number]["DecodingServices"], TypeParameters[number]["EncodingServices"], AST.Declaration, declareConstructor<T, E, TypeParameters, Iso>, T, Iso, TypeParameters> {
275
+ export interface declareConstructor<T, E, TypeParameters extends ReadonlyArray<Top>, Iso = T> extends Bottom<T, E, TypeParameters[number]["DecodingServices"], TypeParameters[number]["EncodingServices"], SchemaAST.Declaration, declareConstructor<T, E, TypeParameters, Iso>, T, Iso, TypeParameters> {
278
276
  }
279
277
  /**
280
278
  * Creates a schema for a **parametric** type (a generic container such as
281
279
  * `Array<A>`, `Option<A>`, etc.) by accepting a list of type-parameter schemas
282
280
  * and a decoder factory.
283
281
  *
282
+ * **When to use**
283
+ *
284
+ * Use when you are defining a schema for a generic container whose validation
285
+ * depends on one or more type-parameter schemas.
286
+ *
284
287
  * **Details**
285
288
  *
286
289
  * The outer call `declareConstructor<T, E, Iso>()` fixes the decoded type `T`,
@@ -310,7 +313,7 @@ export interface declareConstructor<T, E, TypeParameters extends ReadonlyArray<T
310
313
  * ([itemCodec]) =>
311
314
  * (u, ast, options) => {
312
315
  * if (!isBox(u)) {
313
- * return Effect.fail(new Issue.InvalidType(ast, Option.some(u)))
316
+ * return Effect.fail(new SchemaIssue.InvalidType(ast, Option.some(u)))
314
317
  * }
315
318
  * return Effect.map(
316
319
  * SchemaParser.decodeUnknownEffect(itemCodec)(u.value, options),
@@ -325,10 +328,9 @@ export interface declareConstructor<T, E, TypeParameters extends ReadonlyArray<T
325
328
  * @category constructors
326
329
  * @since 4.0.0
327
330
  */
328
- export declare function declareConstructor<T, E = T, Iso = T>(): <const TypeParameters extends ReadonlyArray<Top>>(typeParameters: TypeParameters, run: (typeParameters: { readonly [K in keyof TypeParameters]: Codec<TypeParameters[K]["Type"], TypeParameters[K]["Encoded"]>; }) => (u: unknown, self: AST.Declaration, options: AST.ParseOptions) => Effect.Effect<T, Issue.Issue>, annotations?: Annotations.Declaration<T, TypeParameters>) => declareConstructor<T, E, TypeParameters, Iso>;
331
+ export declare function declareConstructor<T, E = T, Iso = T>(): <const TypeParameters extends ReadonlyArray<Top>>(typeParameters: TypeParameters, run: (typeParameters: { readonly [K in keyof TypeParameters]: Codec<TypeParameters[K]["Type"], TypeParameters[K]["Encoded"]>; }) => (u: unknown, self: SchemaAST.Declaration, options: SchemaAST.ParseOptions) => Effect.Effect<T, SchemaIssue.Issue>, annotations?: Annotations.Declaration<T, TypeParameters>) => declareConstructor<T, E, TypeParameters, Iso>;
329
332
  /**
330
- * The schema type returned by {@link declare}, representing a non-parametric
331
- * opaque type `T` with no type parameters.
333
+ * Type-level representation returned by {@link declare}.
332
334
  *
333
335
  * @category constructors
334
336
  * @since 3.13.3
@@ -341,10 +343,10 @@ export interface declare<T, Iso = T> extends declareConstructor<T, T, readonly [
341
343
  * function. The schema accepts any unknown value and succeeds when `is` returns
342
344
  * `true`, failing with an `InvalidType` issue otherwise.
343
345
  *
344
- * **Details**
346
+ * **When to use**
345
347
  *
346
- * Use this when the type has no type parameters. For parametric types such as
347
- * `Option<A>` or `Array<A>`, use {@link declareConstructor} instead.
348
+ * Use when you are defining a schema for an opaque type with no type parameters
349
+ * and validation can be expressed as a type guard.
348
350
  *
349
351
  * **Example** (Schema for a custom `UserId` branded type)
350
352
  *
@@ -394,7 +396,7 @@ export declare function declare<T, Iso = T>(is: (u: unknown) => u is T, annotati
394
396
  * type E = typeof bottom["Encoded"] // string
395
397
  * ```
396
398
  *
397
- * @category utils
399
+ * @category utility types
398
400
  * @since 4.0.0
399
401
  */
400
402
  export declare function revealBottom<S extends Top>(bottom: S): Bottom<S["Type"], S["Encoded"], S["DecodingServices"], S["EncodingServices"], S["ast"], S["Rebuild"], S["~type.make.in"], S["Iso"], S["~type.parameters"], S["~type.make"], S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]>;
@@ -507,7 +509,7 @@ export declare function annotateKey<S extends Top>(annotations: Annotations.Key<
507
509
  * @category models
508
510
  * @since 4.0.0
509
511
  */
510
- export interface Top extends Bottom<unknown, unknown, unknown, unknown, AST.AST, Top, unknown, unknown, any, // this is because TypeParameters is invariant
512
+ export interface Top extends Bottom<unknown, unknown, unknown, unknown, SchemaAST.AST, Top, unknown, unknown, any, // this is because TypeParameters is invariant
511
513
  unknown, Mutability, Optionality, ConstructorDefault, Mutability, Optionality> {
512
514
  }
513
515
  /**
@@ -763,7 +765,7 @@ export interface Encoder<out E, out RE = never> extends Codec<unknown, E, unknow
763
765
  * type Enc = typeof codec["Encoded"] // string
764
766
  * ```
765
767
  *
766
- * @category utils
768
+ * @category utility types
767
769
  * @since 4.0.0
768
770
  */
769
771
  export declare function revealCodec<T, E, RD, RE>(codec: Codec<T, E, RD, RE>): Codec<T, E, RD, RE>;
@@ -774,7 +776,7 @@ export {
774
776
  *
775
777
  * **Details**
776
778
  *
777
- * The `issue` field contains a structured {@link Issue.Issue} tree describing
779
+ * The `issue` field contains a structured {@link SchemaIssue.Issue} tree describing
778
780
  * every validation failure, including the path to the problematic value,
779
781
  * expected types, and actual values received. `message` renders the issue tree
780
782
  * as a human-readable string.
@@ -885,9 +887,9 @@ export declare function isSchemaError(u: unknown): u is SchemaError;
885
887
  * @since 4.0.0
886
888
  */
887
889
  export declare function toStandardSchemaV1<S extends Decoder<unknown>>(self: S, options?: {
888
- readonly leafHook?: Issue.LeafHook | undefined;
889
- readonly checkHook?: Issue.CheckHook | undefined;
890
- readonly parseOptions?: AST.ParseOptions | undefined;
890
+ readonly leafHook?: SchemaIssue.LeafHook | undefined;
891
+ readonly checkHook?: SchemaIssue.CheckHook | undefined;
892
+ readonly parseOptions?: SchemaAST.ParseOptions | undefined;
891
893
  }): StandardSchemaV1<S["Encoded"], S["Type"]> & S;
892
894
  /**
893
895
  * Converts a schema to an experimental Standard JSON Schema V1 representation.
@@ -931,7 +933,7 @@ export declare function toStandardJSONSchemaV1<S extends Top>(self: S): Standard
931
933
  * @category guards
932
934
  * @since 3.10.0
933
935
  */
934
- export declare const is: typeof Parser.is;
936
+ export declare const is: typeof SchemaParser.is;
935
937
  /**
936
938
  * Creates an assertion function that throws an error if the input doesn't match
937
939
  * the schema.
@@ -939,7 +941,7 @@ export declare const is: typeof Parser.is;
939
941
  * **When to use**
940
942
  *
941
943
  * Use to validate unknown input at runtime while narrowing the value with a
942
- * TypeScript `asserts` predicate.
944
+ * TypeScript assertion signature.
943
945
  *
944
946
  * **Details**
945
947
  *
@@ -976,7 +978,8 @@ export declare const asserts: <S extends Top, I>(schema: S, input: I) => asserts
976
978
  *
977
979
  * **When to use**
978
980
  *
979
- * Use when decoding input whose type is not statically known.
981
+ * Use when you need to decode unknown input in an `Effect` whose failure
982
+ * channel is `SchemaError`.
980
983
  *
981
984
  * **Details**
982
985
  *
@@ -985,10 +988,12 @@ export declare const asserts: <S extends Top, I>(schema: S, input: I) => asserts
985
988
  * Options may be provided either when creating the decoder or when applying it;
986
989
  * application options override creation options.
987
990
  *
991
+ * @see {@link SchemaParser.decodeUnknownEffect} for the adapter that fails with `SchemaIssue.Issue` directly
992
+ *
988
993
  * @category decoding
989
994
  * @since 4.0.0
990
995
  */
991
- export declare function decodeUnknownEffect<S extends Top>(schema: S, options?: AST.ParseOptions): (input: unknown, options?: AST.ParseOptions) => Effect.Effect<S["Type"], SchemaError, S["DecodingServices"]>;
996
+ export declare function decodeUnknownEffect<S extends Top>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => Effect.Effect<S["Type"], SchemaError, S["DecodingServices"]>;
992
997
  /**
993
998
  * Decodes a typed input (the schema's `Encoded` type) against a schema,
994
999
  * returning an `Effect` that succeeds with the decoded value or fails with a
@@ -996,7 +1001,8 @@ export declare function decodeUnknownEffect<S extends Top>(schema: S, options?:
996
1001
  *
997
1002
  * **When to use**
998
1003
  *
999
- * Use when the input is already typed as the schema's `Encoded` type.
1004
+ * Use when you need to decode input already typed as the schema's `Encoded`
1005
+ * type in an `Effect` whose failure channel is `SchemaError`.
1000
1006
  *
1001
1007
  * **Details**
1002
1008
  *
@@ -1004,10 +1010,12 @@ export declare function decodeUnknownEffect<S extends Top>(schema: S, options?:
1004
1010
  * Options may be provided either when creating the decoder or when applying it;
1005
1011
  * application options override creation options.
1006
1012
  *
1013
+ * @see {@link SchemaParser.decodeEffect} for the adapter that fails with `SchemaIssue.Issue` directly
1014
+ *
1007
1015
  * @category decoding
1008
1016
  * @since 4.0.0
1009
1017
  */
1010
- export declare const decodeEffect: <S extends Top>(schema: S, options?: AST.ParseOptions) => (input: S["Encoded"], options?: AST.ParseOptions) => Effect.Effect<S["Type"], SchemaError, S["DecodingServices"]>;
1018
+ export declare const decodeEffect: <S extends Top>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Effect.Effect<S["Type"], SchemaError, S["DecodingServices"]>;
1011
1019
  /**
1012
1020
  * Decodes an `unknown` input against a schema synchronously, returning an
1013
1021
  * `Exit` that is either a `Success` with the decoded value or a `Failure` with
@@ -1015,8 +1023,8 @@ export declare const decodeEffect: <S extends Top>(schema: S, options?: AST.Pars
1015
1023
  *
1016
1024
  * **When to use**
1017
1025
  *
1018
- * Use when the input type is not statically known and decoding should return an
1019
- * `Exit` instead of failing or throwing.
1026
+ * Use when you need to decode unknown input into an `Exit` whose failure
1027
+ * contains `SchemaError`.
1020
1028
  *
1021
1029
  * **Details**
1022
1030
  *
@@ -1026,10 +1034,12 @@ export declare const decodeEffect: <S extends Top>(schema: S, options?: AST.Pars
1026
1034
  * Options may be provided either when creating the decoder or when applying it;
1027
1035
  * application options override creation options.
1028
1036
  *
1037
+ * @see {@link SchemaParser.decodeUnknownExit} for the adapter whose failure contains `SchemaIssue.Issue` directly
1038
+ *
1029
1039
  * @category decoding
1030
1040
  * @since 4.0.0
1031
1041
  */
1032
- export declare function decodeUnknownExit<S extends Decoder<unknown>>(schema: S, options?: AST.ParseOptions): (input: unknown, options?: AST.ParseOptions) => Exit_.Exit<S["Type"], SchemaError>;
1042
+ export declare function decodeUnknownExit<S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => Exit_.Exit<S["Type"], SchemaError>;
1033
1043
  /**
1034
1044
  * Decodes a typed input (the schema's `Encoded` type) against a schema
1035
1045
  * synchronously, returning an `Exit` that is either a `Success` with the
@@ -1037,8 +1047,8 @@ export declare function decodeUnknownExit<S extends Decoder<unknown>>(schema: S,
1037
1047
  *
1038
1048
  * **When to use**
1039
1049
  *
1040
- * Use when typed input should be decoded into an `Exit` instead of failing or
1041
- * throwing.
1050
+ * Use when you need to decode already typed `Encoded` input into an `Exit`
1051
+ * whose failure contains `SchemaError`.
1042
1052
  *
1043
1053
  * **Details**
1044
1054
  *
@@ -1047,30 +1057,33 @@ export declare function decodeUnknownExit<S extends Decoder<unknown>>(schema: S,
1047
1057
  * Options may be provided either when creating the decoder or when applying it;
1048
1058
  * application options override creation options.
1049
1059
  *
1060
+ * @see {@link SchemaParser.decodeExit} for the adapter whose failure contains `SchemaIssue.Issue` directly
1061
+ *
1050
1062
  * @category decoding
1051
1063
  * @since 4.0.0
1052
1064
  */
1053
- export declare const decodeExit: <S extends Decoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Encoded"], options?: AST.ParseOptions) => Exit_.Exit<S["Type"], SchemaError>;
1065
+ export declare const decodeExit: <S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Exit_.Exit<S["Type"], SchemaError>;
1054
1066
  /**
1055
1067
  * Decodes an `unknown` input against a schema, returning an `Option` that is
1056
1068
  * `Some` with the decoded value on success or `None` on failure.
1057
1069
  *
1058
1070
  * **When to use**
1059
1071
  *
1060
- * Use when the input type is not statically known and you only need to know
1072
+ * Use when you do not know the input type statically and only need to know
1061
1073
  * whether decoding succeeded.
1062
1074
  *
1063
1075
  * **Details**
1064
1076
  *
1065
1077
  * Prefer this over {@link decodeUnknownExit} or {@link decodeUnknownEffect}
1066
- * when you don't need error details. For typed input use {@link decodeOption}.
1078
+ * when you don't need error details. For input already typed as the schema's
1079
+ * `Encoded` type use {@link decodeOption}.
1067
1080
  * Options may be provided either when creating the decoder or when applying it;
1068
1081
  * application options override creation options.
1069
1082
  *
1070
1083
  * @category decoding
1071
1084
  * @since 3.10.0
1072
1085
  */
1073
- export declare const decodeUnknownOption: typeof Parser.decodeUnknownOption;
1086
+ export declare const decodeUnknownOption: <S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: unknown, options?: SchemaAST.ParseOptions) => Option_.Option<S["Type"]>;
1074
1087
  /**
1075
1088
  * Decodes a typed input (the schema's `Encoded` type) against a schema,
1076
1089
  * returning an `Option` that is `Some` with the decoded value on success or
@@ -1078,7 +1091,8 @@ export declare const decodeUnknownOption: typeof Parser.decodeUnknownOption;
1078
1091
  *
1079
1092
  * **When to use**
1080
1093
  *
1081
- * Use when typed input should be decoded and only success or failure matters.
1094
+ * Use when you already have input typed as the schema's `Encoded` type and
1095
+ * only need to know whether decoding succeeded.
1082
1096
  *
1083
1097
  * **Details**
1084
1098
  *
@@ -1089,35 +1103,38 @@ export declare const decodeUnknownOption: typeof Parser.decodeUnknownOption;
1089
1103
  * @category decoding
1090
1104
  * @since 3.10.0
1091
1105
  */
1092
- export declare const decodeOption: <S extends Decoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Encoded"], options?: AST.ParseOptions) => Option_.Option<S["Type"]>;
1106
+ export declare const decodeOption: <S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Option_.Option<S["Type"]>;
1093
1107
  /**
1094
1108
  * Decodes an `unknown` input against a schema, returning a `Result` that
1095
- * succeeds with the decoded value or fails with a schema issue.
1109
+ * succeeds with the decoded value or fails with a {@link SchemaError}.
1096
1110
  *
1097
1111
  * **When to use**
1098
1112
  *
1099
- * Use when the input type is not statically known and decoding should return a
1100
- * `Result` with structured issue data.
1113
+ * Use when you do not know the input type statically and want decoding to
1114
+ * return a `Result` with `SchemaError` failure data.
1101
1115
  *
1102
1116
  * **Details**
1103
1117
  *
1104
- * For typed input use {@link decodeResult}.
1118
+ * For input already typed as the schema's `Encoded` type use
1119
+ * {@link decodeResult}.
1105
1120
  * Options may be provided either when creating the decoder or when applying it;
1106
1121
  * application options override creation options.
1107
1122
  *
1123
+ * @see {@link SchemaParser.decodeUnknownResult} for the adapter that fails with `SchemaIssue.Issue` directly
1124
+ *
1108
1125
  * @category decoding
1109
1126
  * @since 4.0.0
1110
1127
  */
1111
- export declare const decodeUnknownResult: typeof Parser.decodeUnknownResult;
1128
+ export declare function decodeUnknownResult<S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => Result_.Result<S["Type"], SchemaError>;
1112
1129
  /**
1113
1130
  * Decodes a typed input (the schema's `Encoded` type) against a schema,
1114
1131
  * returning a `Result` that succeeds with the decoded value or fails with a
1115
- * schema issue.
1132
+ * {@link SchemaError}.
1116
1133
  *
1117
1134
  * **When to use**
1118
1135
  *
1119
- * Use when typed input should be decoded into a `Result` with structured issue
1120
- * data.
1136
+ * Use when you already have input typed as the schema's `Encoded` type and
1137
+ * want decoding to return a `Result` with `SchemaError` failure data.
1121
1138
  *
1122
1139
  * **Details**
1123
1140
  *
@@ -1125,36 +1142,44 @@ export declare const decodeUnknownResult: typeof Parser.decodeUnknownResult;
1125
1142
  * Options may be provided either when creating the decoder or when applying it;
1126
1143
  * application options override creation options.
1127
1144
  *
1145
+ * @see {@link SchemaParser.decodeResult} for the adapter that fails with `SchemaIssue.Issue` directly
1146
+ *
1128
1147
  * @category decoding
1129
1148
  * @since 4.0.0
1130
1149
  */
1131
- export declare const decodeResult: <S extends Decoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Encoded"], options?: AST.ParseOptions) => Result_.Result<S["Type"], Issue.Issue>;
1150
+ export declare const decodeResult: <S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Result_.Result<S["Type"], SchemaError>;
1132
1151
  /**
1133
1152
  * Decodes an `unknown` input against a schema, returning a `Promise` that
1134
- * resolves with the decoded value or rejects with a schema issue.
1153
+ * resolves with the decoded value or rejects with a {@link SchemaError}.
1135
1154
  *
1136
1155
  * **When to use**
1137
1156
  *
1138
- * Use when integrating unknown input validation with Promise-based APIs.
1157
+ * Use when you need decoding of unknown input to return a JavaScript `Promise`
1158
+ * that rejects with `SchemaError`.
1139
1159
  *
1140
1160
  * **Details**
1141
1161
  *
1142
- * For typed input use {@link decodePromise}.
1162
+ * For input already typed as the schema's `Encoded` type use
1163
+ * {@link decodePromise}.
1143
1164
  * Options may be provided either when creating the decoder or when applying it;
1144
1165
  * application options override creation options.
1145
1166
  *
1167
+ * @see {@link SchemaParser.decodeUnknownPromise} for the adapter that rejects with `SchemaIssue.Issue` directly
1168
+ *
1146
1169
  * @category decoding
1147
1170
  * @since 3.10.0
1148
1171
  */
1149
- export declare const decodeUnknownPromise: typeof Parser.decodeUnknownPromise;
1172
+ export declare function decodeUnknownPromise<S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => Promise<S["Type"]>;
1150
1173
  /**
1151
1174
  * Decodes a typed input (the schema's `Encoded` type) against a schema,
1152
1175
  * returning a `Promise` that resolves with the decoded value or rejects with a
1153
- * schema issue.
1176
+ * {@link SchemaError}.
1154
1177
  *
1155
1178
  * **When to use**
1156
1179
  *
1157
- * Use when integrating typed input decoding with Promise-based APIs.
1180
+ * Use when you already have input typed as the schema's `Encoded` type and
1181
+ * need decoding to return a JavaScript `Promise` that rejects with
1182
+ * `SchemaError`.
1158
1183
  *
1159
1184
  * **Details**
1160
1185
  *
@@ -1162,22 +1187,24 @@ export declare const decodeUnknownPromise: typeof Parser.decodeUnknownPromise;
1162
1187
  * Options may be provided either when creating the decoder or when applying it;
1163
1188
  * application options override creation options.
1164
1189
  *
1190
+ * @see {@link SchemaParser.decodePromise} for the adapter that rejects with `SchemaIssue.Issue` directly
1191
+ *
1165
1192
  * @category decoding
1166
1193
  * @since 3.10.0
1167
1194
  */
1168
- export declare const decodePromise: typeof Parser.decodePromise;
1195
+ export declare const decodePromise: <S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Encoded"], options?: SchemaAST.ParseOptions) => Promise<S["Type"]>;
1169
1196
  /**
1170
1197
  * Decodes an `unknown` input against a schema synchronously, returning the
1171
- * decoded value or throwing an `Error` whose cause contains the schema issue.
1198
+ * decoded value or throwing a {@link SchemaError}.
1172
1199
  *
1173
1200
  * **When to use**
1174
1201
  *
1175
- * Use when validating unknown data at a boundary and treating schema mismatches
1176
- * as exceptions.
1202
+ * Use when you need to validate unknown data at a synchronous boundary and want
1203
+ * schema mismatches to throw `SchemaError`.
1177
1204
  *
1178
1205
  * **Details**
1179
1206
  *
1180
- * For typed input use `decodeSync`.
1207
+ * For input already typed as the schema's `Encoded` type use `decodeSync`.
1181
1208
  * Only service-free schemas can be decoded synchronously. For non-throwing
1182
1209
  * alternatives see `decodeUnknownOption`, `decodeUnknownExit`, or
1183
1210
  * `decodeUnknownEffect`. Options may be provided either when creating the
@@ -1200,19 +1227,20 @@ export declare const decodePromise: typeof Parser.decodePromise;
1200
1227
  * // └─ Expected a numeric string, actual "not a number"
1201
1228
  * ```
1202
1229
  *
1230
+ * @see {@link SchemaParser.decodeUnknownSync} for the adapter that throws an `Error` whose cause is `SchemaIssue.Issue`
1231
+ *
1203
1232
  * @category decoding
1204
1233
  * @since 4.0.0
1205
1234
  */
1206
- export declare const decodeUnknownSync: typeof Parser.decodeUnknownSync;
1235
+ export declare function decodeUnknownSync<S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => S["Type"];
1207
1236
  /**
1208
1237
  * Decodes a typed input (the schema's `Encoded` type) against a schema
1209
- * synchronously, returning the decoded value or throwing an `Error` whose cause
1210
- * contains the schema issue.
1238
+ * synchronously, returning the decoded value or throwing a {@link SchemaError}.
1211
1239
  *
1212
1240
  * **When to use**
1213
1241
  *
1214
- * Use when typed input should be decoded synchronously and schema mismatches
1215
- * should throw.
1242
+ * Use when you already have input typed as the schema's `Encoded` type and
1243
+ * want schema mismatches to throw `SchemaError` synchronously.
1216
1244
  *
1217
1245
  * **Details**
1218
1246
  *
@@ -1221,21 +1249,24 @@ export declare const decodeUnknownSync: typeof Parser.decodeUnknownSync;
1221
1249
  * provided either when creating the decoder or when applying it; application
1222
1250
  * options override creation options.
1223
1251
  *
1252
+ * @see {@link SchemaParser.decodeSync} for the adapter that throws an `Error` whose cause is `SchemaIssue.Issue`
1253
+ *
1224
1254
  * @category decoding
1225
1255
  * @since 4.0.0
1226
1256
  */
1227
- export declare const decodeSync: <S extends Decoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Encoded"], options?: AST.ParseOptions) => S["Type"];
1257
+ export declare const decodeSync: <S extends Decoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Encoded"], options?: SchemaAST.ParseOptions) => S["Type"];
1228
1258
  /**
1229
1259
  * Encodes an `unknown` input against a schema, returning an `Effect` that
1230
1260
  * succeeds with the encoded value or fails with a {@link SchemaError}.
1231
1261
  *
1232
1262
  * **When to use**
1233
1263
  *
1234
- * Use when encoding input whose type is not statically known.
1264
+ * Use when you need to encode unknown input in an `Effect` whose failure
1265
+ * channel is `SchemaError`.
1235
1266
  *
1236
1267
  * **Details**
1237
1268
  *
1238
- * Prefer {@link encodeEffect} when the input is already typed as the schema's
1269
+ * Prefer {@link encodeEffect} when the value is already typed as the schema's
1239
1270
  * `Type`.
1240
1271
  * Options may be provided either when creating the encoder or when applying it;
1241
1272
  * application options override creation options.
@@ -1251,10 +1282,12 @@ export declare const decodeSync: <S extends Decoder<unknown>>(schema: S, options
1251
1282
  * // Output: "42"
1252
1283
  * ```
1253
1284
  *
1285
+ * @see {@link SchemaParser.encodeUnknownEffect} for the adapter that fails with `SchemaIssue.Issue` directly
1286
+ *
1254
1287
  * @category encoding
1255
1288
  * @since 4.0.0
1256
1289
  */
1257
- export declare function encodeUnknownEffect<S extends Top>(schema: S, options?: AST.ParseOptions): (input: unknown, options?: AST.ParseOptions) => Effect.Effect<S["Encoded"], SchemaError, S["EncodingServices"]>;
1290
+ export declare function encodeUnknownEffect<S extends Top>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => Effect.Effect<S["Encoded"], SchemaError, S["EncodingServices"]>;
1258
1291
  /**
1259
1292
  * Encodes a typed input (the schema's `Type`) against a schema, returning an
1260
1293
  * `Effect` that succeeds with the encoded value or fails with a
@@ -1262,7 +1295,8 @@ export declare function encodeUnknownEffect<S extends Top>(schema: S, options?:
1262
1295
  *
1263
1296
  * **When to use**
1264
1297
  *
1265
- * Use when the input is already typed as the schema's `Type`.
1298
+ * Use when you need to encode input already typed as the schema's `Type` in
1299
+ * an `Effect` whose failure channel is `SchemaError`.
1266
1300
  *
1267
1301
  * **Details**
1268
1302
  *
@@ -1270,10 +1304,12 @@ export declare function encodeUnknownEffect<S extends Top>(schema: S, options?:
1270
1304
  * Options may be provided either when creating the encoder or when applying it;
1271
1305
  * application options override creation options.
1272
1306
  *
1307
+ * @see {@link SchemaParser.encodeEffect} for the adapter that fails with `SchemaIssue.Issue` directly
1308
+ *
1273
1309
  * @category encoding
1274
1310
  * @since 4.0.0
1275
1311
  */
1276
- export declare const encodeEffect: <S extends Top>(schema: S, options?: AST.ParseOptions) => (input: S["Type"], options?: AST.ParseOptions) => Effect.Effect<S["Encoded"], SchemaError, S["EncodingServices"]>;
1312
+ export declare const encodeEffect: <S extends Top>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Type"], options?: SchemaAST.ParseOptions) => Effect.Effect<S["Encoded"], SchemaError, S["EncodingServices"]>;
1277
1313
  /**
1278
1314
  * Encodes an `unknown` input against a schema synchronously, returning an
1279
1315
  * `Exit` that is either a `Success` with the encoded value or a `Failure` with
@@ -1281,20 +1317,22 @@ export declare const encodeEffect: <S extends Top>(schema: S, options?: AST.Pars
1281
1317
  *
1282
1318
  * **When to use**
1283
1319
  *
1284
- * Use when the input type is not statically known and encoding should return an
1285
- * `Exit` instead of failing or throwing.
1320
+ * Use when you need to encode unknown input into an `Exit` whose failure
1321
+ * contains `SchemaError`.
1286
1322
  *
1287
1323
  * **Details**
1288
1324
  *
1289
1325
  * Only usable with schemas that have no `EncodingServices` requirement. Prefer
1290
- * {@link encodeExit} when the input is already typed as the schema's `Type`.
1326
+ * {@link encodeExit} when the value is already typed as the schema's `Type`.
1291
1327
  * Options may be provided either when creating the encoder or when applying it;
1292
1328
  * application options override creation options.
1293
1329
  *
1330
+ * @see {@link SchemaParser.encodeUnknownExit} for the adapter whose failure contains `SchemaIssue.Issue` directly
1331
+ *
1294
1332
  * @category encoding
1295
1333
  * @since 4.0.0
1296
1334
  */
1297
- export declare function encodeUnknownExit<S extends Encoder<unknown>>(schema: S, options?: AST.ParseOptions): (input: unknown, options?: AST.ParseOptions) => Exit_.Exit<S["Encoded"], SchemaError>;
1335
+ export declare function encodeUnknownExit<S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => Exit_.Exit<S["Encoded"], SchemaError>;
1298
1336
  /**
1299
1337
  * Encodes a typed input (the schema's `Type`) against a schema synchronously,
1300
1338
  * returning an `Exit` that is either a `Success` with the encoded value or a
@@ -1302,8 +1340,8 @@ export declare function encodeUnknownExit<S extends Encoder<unknown>>(schema: S,
1302
1340
  *
1303
1341
  * **When to use**
1304
1342
  *
1305
- * Use when typed input should be encoded into an `Exit` instead of failing or
1306
- * throwing.
1343
+ * Use when you need to encode already typed schema values into an `Exit` whose
1344
+ * failure contains `SchemaError`.
1307
1345
  *
1308
1346
  * **Details**
1309
1347
  *
@@ -1312,30 +1350,33 @@ export declare function encodeUnknownExit<S extends Encoder<unknown>>(schema: S,
1312
1350
  * Options may be provided either when creating the encoder or when applying it;
1313
1351
  * application options override creation options.
1314
1352
  *
1353
+ * @see {@link SchemaParser.encodeExit} for the adapter whose failure contains `SchemaIssue.Issue` directly
1354
+ *
1315
1355
  * @category encoding
1316
1356
  * @since 4.0.0
1317
1357
  */
1318
- export declare const encodeExit: <S extends Encoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Type"], options?: AST.ParseOptions) => Exit_.Exit<S["Encoded"], SchemaError>;
1358
+ export declare const encodeExit: <S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Type"], options?: SchemaAST.ParseOptions) => Exit_.Exit<S["Encoded"], SchemaError>;
1319
1359
  /**
1320
1360
  * Encodes an `unknown` input against a schema, returning an `Option` that is
1321
1361
  * `Some` with the encoded value on success or `None` on failure.
1322
1362
  *
1323
1363
  * **When to use**
1324
1364
  *
1325
- * Use when the input type is not statically known and you only need to know
1365
+ * Use when you do not know the input type statically and only need to know
1326
1366
  * whether encoding succeeded.
1327
1367
  *
1328
1368
  * **Details**
1329
1369
  *
1330
1370
  * Prefer this over {@link encodeUnknownExit} or {@link encodeUnknownEffect}
1331
- * when you don't need error details. For typed input use {@link encodeOption}.
1371
+ * when you don't need error details. For values already typed as the schema's
1372
+ * `Type` use {@link encodeOption}.
1332
1373
  * Options may be provided either when creating the encoder or when applying it;
1333
1374
  * application options override creation options.
1334
1375
  *
1335
1376
  * @category encoding
1336
1377
  * @since 3.10.0
1337
1378
  */
1338
- export declare const encodeUnknownOption: typeof Parser.encodeUnknownOption;
1379
+ export declare const encodeUnknownOption: <S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: unknown, options?: SchemaAST.ParseOptions) => Option_.Option<S["Encoded"]>;
1339
1380
  /**
1340
1381
  * Encodes a typed input (the schema's `Type`) against a schema, returning an
1341
1382
  * `Option` that is `Some` with the encoded value on success or `None` on
@@ -1343,7 +1384,8 @@ export declare const encodeUnknownOption: typeof Parser.encodeUnknownOption;
1343
1384
  *
1344
1385
  * **When to use**
1345
1386
  *
1346
- * Use when typed input should be encoded and only success or failure matters.
1387
+ * Use when you already have a value typed as the schema's `Type` and only need
1388
+ * to know whether encoding succeeded.
1347
1389
  *
1348
1390
  * **Details**
1349
1391
  *
@@ -1354,34 +1396,37 @@ export declare const encodeUnknownOption: typeof Parser.encodeUnknownOption;
1354
1396
  * @category encoding
1355
1397
  * @since 3.10.0
1356
1398
  */
1357
- export declare const encodeOption: <S extends Encoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Type"], options?: AST.ParseOptions) => Option_.Option<S["Encoded"]>;
1399
+ export declare const encodeOption: <S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Type"], options?: SchemaAST.ParseOptions) => Option_.Option<S["Encoded"]>;
1358
1400
  /**
1359
1401
  * Encodes an `unknown` input against a schema, returning a `Result` that
1360
- * succeeds with the encoded value or fails with a schema issue.
1402
+ * succeeds with the encoded value or fails with a {@link SchemaError}.
1361
1403
  *
1362
1404
  * **When to use**
1363
1405
  *
1364
- * Use when the input type is not statically known and encoding should return a
1365
- * `Result` with structured issue data.
1406
+ * Use when you do not know the input type statically and want encoding to
1407
+ * return a `Result` with `SchemaError` failure data.
1366
1408
  *
1367
1409
  * **Details**
1368
1410
  *
1369
- * For typed input use {@link encodeResult}.
1411
+ * For values already typed as the schema's `Type` use {@link encodeResult}.
1370
1412
  * Options may be provided either when creating the encoder or when applying it;
1371
1413
  * application options override creation options.
1372
1414
  *
1415
+ * @see {@link SchemaParser.encodeUnknownResult} for the adapter that fails with `SchemaIssue.Issue` directly
1416
+ *
1373
1417
  * @category encoding
1374
1418
  * @since 4.0.0
1375
1419
  */
1376
- export declare const encodeUnknownResult: typeof Parser.encodeUnknownResult;
1420
+ export declare function encodeUnknownResult<S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => Result_.Result<S["Encoded"], SchemaError>;
1377
1421
  /**
1378
1422
  * Encodes a typed input (the schema's `Type`) against a schema, returning a
1379
- * `Result` that succeeds with the encoded value or fails with a schema issue.
1423
+ * `Result` that succeeds with the encoded value or fails with a
1424
+ * {@link SchemaError}.
1380
1425
  *
1381
1426
  * **When to use**
1382
1427
  *
1383
- * Use when typed input should be encoded into a `Result` with structured issue
1384
- * data.
1428
+ * Use when you already have a value typed as the schema's `Type` and want
1429
+ * encoding to return a `Result` with `SchemaError` failure data.
1385
1430
  *
1386
1431
  * **Details**
1387
1432
  *
@@ -1389,28 +1434,33 @@ export declare const encodeUnknownResult: typeof Parser.encodeUnknownResult;
1389
1434
  * Options may be provided either when creating the encoder or when applying it;
1390
1435
  * application options override creation options.
1391
1436
  *
1437
+ * @see {@link SchemaParser.encodeResult} for the adapter that fails with `SchemaIssue.Issue` directly
1438
+ *
1392
1439
  * @category encoding
1393
1440
  * @since 4.0.0
1394
1441
  */
1395
- export declare const encodeResult: <S extends Encoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Type"], options?: AST.ParseOptions) => Result_.Result<S["Encoded"], Issue.Issue>;
1442
+ export declare const encodeResult: <S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Type"], options?: SchemaAST.ParseOptions) => Result_.Result<S["Encoded"], SchemaError>;
1396
1443
  /**
1397
1444
  * Encodes an `unknown` input against a schema, returning a `Promise` that
1398
- * resolves with the encoded value or rejects with a schema issue.
1445
+ * resolves with the encoded value or rejects with a {@link SchemaError}.
1399
1446
  *
1400
1447
  * **When to use**
1401
1448
  *
1402
- * Use when integrating unknown input serialization with Promise-based APIs.
1449
+ * Use when you need encoding of unknown input to return a JavaScript `Promise`
1450
+ * that rejects with `SchemaError`.
1403
1451
  *
1404
1452
  * **Details**
1405
1453
  *
1406
- * For typed input use {@link encodePromise}.
1454
+ * For values already typed as the schema's `Type` use {@link encodePromise}.
1407
1455
  * Options may be provided either when creating the encoder or when applying it;
1408
1456
  * application options override creation options.
1409
1457
  *
1458
+ * @see {@link SchemaParser.encodeUnknownPromise} for the adapter that rejects with `SchemaIssue.Issue` directly
1459
+ *
1410
1460
  * @category encoding
1411
1461
  * @since 3.10.0
1412
1462
  */
1413
- export declare const encodeUnknownPromise: <S extends Encoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: unknown, options?: AST.ParseOptions) => Promise<S["Encoded"]>;
1463
+ export declare function encodeUnknownPromise<S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => Promise<S["Encoded"]>;
1414
1464
  /**
1415
1465
  * Encodes a typed input (the schema's `Type`) against a schema, returning a
1416
1466
  * `Promise` that resolves with the encoded value or rejects with a
@@ -1418,7 +1468,8 @@ export declare const encodeUnknownPromise: <S extends Encoder<unknown>>(schema:
1418
1468
  *
1419
1469
  * **When to use**
1420
1470
  *
1421
- * Use when integrating typed input serialization with Promise-based APIs.
1471
+ * Use when you already have a value typed as the schema's `Type` and need
1472
+ * encoding to return a JavaScript `Promise` that rejects with `SchemaError`.
1422
1473
  *
1423
1474
  * **Details**
1424
1475
  *
@@ -1426,39 +1477,43 @@ export declare const encodeUnknownPromise: <S extends Encoder<unknown>>(schema:
1426
1477
  * Options may be provided either when creating the encoder or when applying it;
1427
1478
  * application options override creation options.
1428
1479
  *
1480
+ * @see {@link SchemaParser.encodePromise} for the adapter that rejects with `SchemaIssue.Issue` directly
1481
+ *
1429
1482
  * @category encoding
1430
1483
  * @since 3.10.0
1431
1484
  */
1432
- export declare const encodePromise: <S extends Encoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Type"], options?: AST.ParseOptions) => Promise<S["Encoded"]>;
1485
+ export declare const encodePromise: <S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Type"], options?: SchemaAST.ParseOptions) => Promise<S["Encoded"]>;
1433
1486
  /**
1434
1487
  * Encodes an `unknown` input against a schema synchronously, throwing a
1435
1488
  * {@link SchemaError} on failure.
1436
1489
  *
1437
1490
  * **When to use**
1438
1491
  *
1439
- * Use when serializing unknown data at a boundary and treating schema
1440
- * mismatches as unrecoverable errors.
1492
+ * Use when you need to serialize unknown data at a synchronous boundary and
1493
+ * want schema mismatches to throw `SchemaError`.
1441
1494
  *
1442
1495
  * **Details**
1443
1496
  *
1444
1497
  * For non-throwing alternatives see {@link encodeUnknownOption},
1445
- * {@link encodeUnknownExit}, or {@link encodeUnknownEffect}. For typed input
1446
- * use {@link encodeSync}.
1498
+ * {@link encodeUnknownExit}, or {@link encodeUnknownEffect}. For values
1499
+ * already typed as the schema's `Type` use {@link encodeSync}.
1447
1500
  * Options may be provided either when creating the encoder or when applying it;
1448
1501
  * application options override creation options.
1449
1502
  *
1503
+ * @see {@link SchemaParser.encodeUnknownSync} for the adapter that throws an `Error` whose cause is `SchemaIssue.Issue`
1504
+ *
1450
1505
  * @category encoding
1451
1506
  * @since 4.0.0
1452
1507
  */
1453
- export declare const encodeUnknownSync: typeof Parser.encodeUnknownSync;
1508
+ export declare function encodeUnknownSync<S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions): (input: unknown, options?: SchemaAST.ParseOptions) => S["Encoded"];
1454
1509
  /**
1455
1510
  * Encodes a typed input (the schema's `Type`) against a schema synchronously,
1456
1511
  * throwing a {@link SchemaError} on failure.
1457
1512
  *
1458
1513
  * **When to use**
1459
1514
  *
1460
- * Use when typed input should be encoded synchronously and schema mismatches
1461
- * should throw.
1515
+ * Use when you already have a value typed as the schema's `Type` and want
1516
+ * schema mismatches to throw `SchemaError` synchronously.
1462
1517
  *
1463
1518
  * **Details**
1464
1519
  *
@@ -1466,10 +1521,12 @@ export declare const encodeUnknownSync: typeof Parser.encodeUnknownSync;
1466
1521
  * Options may be provided either when creating the encoder or when applying it;
1467
1522
  * application options override creation options.
1468
1523
  *
1524
+ * @see {@link SchemaParser.encodeSync} for the adapter that throws an `Error` whose cause is `SchemaIssue.Issue`
1525
+ *
1469
1526
  * @category encoding
1470
1527
  * @since 4.0.0
1471
1528
  */
1472
- export declare const encodeSync: <S extends Encoder<unknown>>(schema: S, options?: AST.ParseOptions) => (input: S["Type"], options?: AST.ParseOptions) => S["Encoded"];
1529
+ export declare const encodeSync: <S extends Encoder<unknown>>(schema: S, options?: SchemaAST.ParseOptions) => (input: S["Type"], options?: SchemaAST.ParseOptions) => S["Encoded"];
1473
1530
  /**
1474
1531
  * Creates a schema from an AST (Abstract Syntax Tree) node.
1475
1532
  *
@@ -1520,9 +1577,7 @@ export declare function asClass<S extends Top>(schema: S): S & {
1520
1577
  */
1521
1578
  export declare function isSchema(u: unknown): u is Top;
1522
1579
  /**
1523
- * Companion type for an exact optional struct key. The key may be absent, but
1524
- * when present must match the wrapped schema (no implicit `undefined`).
1525
- * Produced by {@link optionalKey}.
1580
+ * Type-level representation returned by {@link optionalKey}.
1526
1581
  *
1527
1582
  * @category models
1528
1583
  * @since 4.0.0
@@ -1574,8 +1629,7 @@ interface requiredKeyLambda extends Lambda {
1574
1629
  */
1575
1630
  export declare const requiredKey: requiredKeyLambda;
1576
1631
  /**
1577
- * Companion type for an optional struct key that also accepts `undefined`.
1578
- * Equivalent to `optionalKey<UndefinedOr<S>>`. Produced by {@link optional}.
1632
+ * Type-level representation returned by {@link optional}.
1579
1633
  *
1580
1634
  * @category models
1581
1635
  * @since 3.10.0
@@ -1638,8 +1692,7 @@ interface requiredLambda extends Lambda {
1638
1692
  */
1639
1693
  export declare const required: requiredLambda;
1640
1694
  /**
1641
- * Companion type for a mutable struct key. The key's property is writable.
1642
- * Produced by {@link mutableKey}.
1695
+ * Type-level representation returned by {@link mutableKey}.
1643
1696
  *
1644
1697
  * @category models
1645
1698
  * @since 4.0.0
@@ -1676,8 +1729,7 @@ interface readonlyKeyLambda extends Lambda {
1676
1729
  */
1677
1730
  export declare const readonlyKey: readonlyKeyLambda;
1678
1731
  /**
1679
- * Schema type that collapses a transformation schema to its decoded `Type` on
1680
- * both sides (Type = Encoded = S["Type"]). Produced by {@link toType}.
1732
+ * Type-level representation returned by {@link toType}.
1681
1733
  *
1682
1734
  * @category transforming
1683
1735
  * @since 4.0.0
@@ -1697,13 +1749,12 @@ interface toTypeLambda extends Lambda {
1697
1749
  */
1698
1750
  export declare const toType: toTypeLambda;
1699
1751
  /**
1700
- * Schema type that collapses a transformation schema to its `Encoded` side on
1701
- * both sides (Type = Encoded = S["Encoded"]). Produced by {@link toEncoded}.
1752
+ * Type-level representation returned by {@link toEncoded}.
1702
1753
  *
1703
1754
  * @category transforming
1704
1755
  * @since 4.0.0
1705
1756
  */
1706
- export interface toEncoded<S extends Top> extends Bottom<S["Encoded"], S["Encoded"], never, never, AST.AST, toEncoded<S>, S["Encoded"], S["Encoded"], ReadonlyArray<Top>, S["Encoded"], S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]> {
1757
+ export interface toEncoded<S extends Top> extends Bottom<S["Encoded"], S["Encoded"], never, never, SchemaAST.AST, toEncoded<S>, S["Encoded"], S["Encoded"], ReadonlyArray<Top>, S["Encoded"], S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]> {
1707
1758
  }
1708
1759
  interface toEncodedLambda extends Lambda {
1709
1760
  <S extends Top>(self: S): toEncoded<S>;
@@ -1719,13 +1770,12 @@ interface toEncodedLambda extends Lambda {
1719
1770
  export declare const toEncoded: toEncodedLambda;
1720
1771
  declare const FlipTypeId = "~effect/Schema/flip";
1721
1772
  /**
1722
- * Schema type representing a flipped schema where `Type` and `Encoded` are
1723
- * swapped. Produced by {@link flip}.
1773
+ * Type-level representation returned by {@link flip}.
1724
1774
  *
1725
1775
  * @category transforming
1726
1776
  * @since 4.0.0
1727
1777
  */
1728
- export interface flip<S extends Top> extends Bottom<S["Encoded"], S["Type"], S["EncodingServices"], S["DecodingServices"], AST.AST, flip<S>, S["Encoded"], S["Encoded"], ReadonlyArray<Top>, S["Encoded"], S["~encoded.mutability"], S["~encoded.optionality"], ConstructorDefault, S["~type.mutability"], S["~type.optionality"]> {
1778
+ export interface flip<S extends Top> extends Bottom<S["Encoded"], S["Type"], S["EncodingServices"], S["DecodingServices"], SchemaAST.AST, flip<S>, S["Encoded"], S["Encoded"], ReadonlyArray<Top>, S["Encoded"], S["~encoded.mutability"], S["~encoded.optionality"], ConstructorDefault, S["~type.mutability"], S["~type.optionality"]> {
1729
1779
  readonly [FlipTypeId]: typeof FlipTypeId;
1730
1780
  readonly schema: S;
1731
1781
  }
@@ -1755,15 +1805,14 @@ export interface flip<S extends Top> extends Bottom<S["Encoded"], S["Type"], S["
1755
1805
  */
1756
1806
  export declare function flip<S extends Top>(schema: S): S extends flip<infer F> ? F["Rebuild"] : flip<S>;
1757
1807
  /**
1758
- * Represents a schema for a single literal value.
1808
+ * Type-level representation returned by {@link Literal}.
1759
1809
  *
1760
- * @see {@link Literal} for the constructor function.
1761
1810
  * @category models
1762
1811
  * @since 3.10.0
1763
1812
  */
1764
- export interface Literal<L extends AST.LiteralValue> extends Bottom<L, L, never, never, AST.Literal, Literal<L>> {
1813
+ export interface Literal<L extends SchemaAST.LiteralValue> extends Bottom<L, L, never, never, SchemaAST.Literal, Literal<L>> {
1765
1814
  readonly literal: L;
1766
- transform<L2 extends AST.LiteralValue>(to: L2): decodeTo<Literal<L2>, Literal<L>>;
1815
+ transform<L2 extends SchemaAST.LiteralValue>(to: L2): decodeTo<Literal<L2>, Literal<L>>;
1767
1816
  }
1768
1817
  /**
1769
1818
  * Creates a schema for a single literal value (string, number, bigint, boolean, or null).
@@ -1783,7 +1832,7 @@ export interface Literal<L extends AST.LiteralValue> extends Bottom<L, L, never,
1783
1832
  * @category constructors
1784
1833
  * @since 3.10.0
1785
1834
  */
1786
- export declare function Literal<L extends AST.LiteralValue>(literal: L): Literal<L>;
1835
+ export declare function Literal<L extends SchemaAST.LiteralValue>(literal: L): Literal<L>;
1787
1836
  /**
1788
1837
  * Namespace for {@link TemplateLiteral} helper types.
1789
1838
  *
@@ -1837,20 +1886,23 @@ export declare namespace TemplateLiteral {
1837
1886
  type Encoded<Parts> = Parts extends readonly [...infer Init, infer Last] ? AppendType<Encoded<Init>, Last> : ``;
1838
1887
  }
1839
1888
  /**
1840
- * Represents a schema that validates strings matching a template literal pattern.
1841
- * The encoded type is a string formed by concatenating the parts.
1889
+ * Type-level representation returned by {@link TemplateLiteral}.
1842
1890
  *
1843
- * @see {@link TemplateLiteral} for the constructor function.
1844
1891
  * @category models
1845
1892
  * @since 3.10.0
1846
1893
  */
1847
- export interface TemplateLiteral<Parts extends TemplateLiteral.Parts> extends Bottom<TemplateLiteral.Encoded<Parts>, TemplateLiteral.Encoded<Parts>, never, never, AST.TemplateLiteral, TemplateLiteral<Parts>> {
1894
+ export interface TemplateLiteral<Parts extends TemplateLiteral.Parts> extends Bottom<TemplateLiteral.Encoded<Parts>, TemplateLiteral.Encoded<Parts>, never, never, SchemaAST.TemplateLiteral, TemplateLiteral<Parts>> {
1848
1895
  readonly parts: Parts;
1849
1896
  }
1850
1897
  /**
1851
1898
  * Creates a schema that validates strings matching a template literal pattern. Each part can be
1852
1899
  * a literal string/number/bigint or a schema whose encoded type is a string, number, or bigint.
1853
1900
  *
1901
+ * **When to use**
1902
+ *
1903
+ * Use when the decoded value should remain the matched string and you do not
1904
+ * need the individual template parts parsed into a tuple.
1905
+ *
1854
1906
  * **Example** (URL path pattern)
1855
1907
  *
1856
1908
  * ```ts
@@ -1888,14 +1940,12 @@ export declare namespace TemplateLiteralParser {
1888
1940
  ] : [];
1889
1941
  }
1890
1942
  /**
1891
- * Represents a schema that validates strings matching a template literal pattern and decodes
1892
- * them into a tuple of typed values, one per schema part.
1943
+ * Type-level representation returned by {@link TemplateLiteralParser}.
1893
1944
  *
1894
- * @see {@link TemplateLiteralParser} for the constructor function.
1895
1945
  * @category models
1896
1946
  * @since 3.10.0
1897
1947
  */
1898
- export interface TemplateLiteralParser<Parts extends TemplateLiteral.Parts> extends Bottom<TemplateLiteralParser.Type<Parts>, TemplateLiteral.Encoded<Parts>, never, never, AST.Arrays, TemplateLiteralParser<Parts>> {
1948
+ export interface TemplateLiteralParser<Parts extends TemplateLiteral.Parts> extends Bottom<TemplateLiteralParser.Type<Parts>, TemplateLiteral.Encoded<Parts>, never, never, SchemaAST.Arrays, TemplateLiteralParser<Parts>> {
1899
1949
  readonly parts: Parts;
1900
1950
  }
1901
1951
  /**
@@ -1926,16 +1976,14 @@ export interface TemplateLiteralParser<Parts extends TemplateLiteral.Parts> exte
1926
1976
  */
1927
1977
  export declare function TemplateLiteralParser<const Parts extends TemplateLiteral.Parts>(parts: Parts): TemplateLiteralParser<Parts>;
1928
1978
  /**
1929
- * Represents a schema derived from a TypeScript enum object or an enum-like
1930
- * `as const` object, accepting any of its values.
1979
+ * Type-level representation returned by {@link Enum}.
1931
1980
  *
1932
- * @see {@link Enum} for the constructor function.
1933
1981
  * @category models
1934
1982
  * @since 4.0.0
1935
1983
  */
1936
1984
  export interface Enum<A extends {
1937
1985
  [x: string]: string | number;
1938
- }> extends Bottom<A[keyof A], A[keyof A], never, never, AST.Enum, Enum<A>> {
1986
+ }> extends Bottom<A[keyof A], A[keyof A], never, never, SchemaAST.Enum, Enum<A>> {
1939
1987
  readonly enums: A;
1940
1988
  }
1941
1989
  /**
@@ -1962,13 +2010,12 @@ export declare function Enum<A extends {
1962
2010
  [x: string]: string | number;
1963
2011
  }>(enums: A): Enum<A>;
1964
2012
  /**
1965
- * Schema for the `never` type. Always fails validation.
2013
+ * Type-level representation of {@link Never}.
1966
2014
  *
1967
- * @see {@link Never} for the schema value.
1968
2015
  * @category models
1969
2016
  * @since 3.10.0
1970
2017
  */
1971
- export interface Never extends Bottom<never, never, never, never, AST.Never, Never> {
2018
+ export interface Never extends Bottom<never, never, never, never, SchemaAST.Never, Never> {
1972
2019
  }
1973
2020
  /**
1974
2021
  * Schema for the `never` type. Always fails validation — no value satisfies it.
@@ -1978,13 +2025,12 @@ export interface Never extends Bottom<never, never, never, never, AST.Never, Nev
1978
2025
  */
1979
2026
  export declare const Never: Never;
1980
2027
  /**
1981
- * Schema for the `any` type. Accepts any value without validation.
2028
+ * Type-level representation of {@link Any}.
1982
2029
  *
1983
- * @see {@link Any} for the schema value.
1984
2030
  * @category models
1985
2031
  * @since 3.10.0
1986
2032
  */
1987
- export interface Any extends Bottom<any, any, never, never, AST.Any, Any> {
2033
+ export interface Any extends Bottom<any, any, never, never, SchemaAST.Any, Any> {
1988
2034
  }
1989
2035
  /**
1990
2036
  * Schema for the `any` type. Accepts any value without validation.
@@ -1995,30 +2041,33 @@ export interface Any extends Bottom<any, any, never, never, AST.Any, Any> {
1995
2041
  */
1996
2042
  export declare const Any: Any;
1997
2043
  /**
1998
- * Schema for the `unknown` type. Accepts any value without validation.
2044
+ * Type-level representation of {@link Unknown}.
1999
2045
  *
2000
- * @see {@link Unknown} for the schema value.
2001
2046
  * @category models
2002
2047
  * @since 3.10.0
2003
2048
  */
2004
- export interface Unknown extends Bottom<unknown, unknown, never, never, AST.Unknown, Unknown> {
2049
+ export interface Unknown extends Bottom<unknown, unknown, never, never, SchemaAST.Unknown, Unknown> {
2005
2050
  }
2006
2051
  /**
2007
2052
  * Schema for the `unknown` type. Accepts any value without validation.
2008
2053
  *
2054
+ * **When to use**
2055
+ *
2056
+ * Use as a top schema when you need to accept any input while preserving
2057
+ * TypeScript's `unknown` safety at use sites.
2058
+ *
2009
2059
  * @see {@link Any} for the `any` variant.
2010
2060
  * @category schemas
2011
2061
  * @since 3.10.0
2012
2062
  */
2013
2063
  export declare const Unknown: Unknown;
2014
2064
  /**
2015
- * Schema for the `null` literal. Validates that the input is strictly `null`.
2065
+ * Type-level representation of {@link Null}.
2016
2066
  *
2017
- * @see {@link Null} for the schema value.
2018
2067
  * @category models
2019
2068
  * @since 3.10.0
2020
2069
  */
2021
- export interface Null extends Bottom<null, null, never, never, AST.Null, Null> {
2070
+ export interface Null extends Bottom<null, null, never, never, SchemaAST.Null, Null> {
2022
2071
  }
2023
2072
  /**
2024
2073
  * Schema for the `null` literal. Validates that the input is strictly `null`.
@@ -2029,13 +2078,12 @@ export interface Null extends Bottom<null, null, never, never, AST.Null, Null> {
2029
2078
  */
2030
2079
  export declare const Null: Null;
2031
2080
  /**
2032
- * Schema for the `undefined` literal. Validates that the input is strictly `undefined`.
2081
+ * Type-level representation of {@link Undefined}.
2033
2082
  *
2034
- * @see {@link Undefined} for the schema value.
2035
2083
  * @category models
2036
2084
  * @since 3.10.0
2037
2085
  */
2038
- export interface Undefined extends Bottom<undefined, undefined, never, never, AST.Undefined, Undefined> {
2086
+ export interface Undefined extends Bottom<undefined, undefined, never, never, SchemaAST.Undefined, Undefined> {
2039
2087
  }
2040
2088
  /**
2041
2089
  * Schema for the `undefined` literal. Validates that the input is strictly `undefined`.
@@ -2046,13 +2094,12 @@ export interface Undefined extends Bottom<undefined, undefined, never, never, AS
2046
2094
  */
2047
2095
  export declare const Undefined: Undefined;
2048
2096
  /**
2049
- * Schema for `string` values.
2097
+ * Type-level representation of {@link String}.
2050
2098
  *
2051
- * @see {@link String} for the schema value.
2052
2099
  * @category models
2053
2100
  * @since 4.0.0
2054
2101
  */
2055
- export interface String extends Bottom<string, string, never, never, AST.String, String> {
2102
+ export interface String extends Bottom<string, string, never, never, SchemaAST.String, String> {
2056
2103
  }
2057
2104
  /**
2058
2105
  * Schema for `string` values. Validates that the input is `typeof` `"string"`.
@@ -2062,13 +2109,12 @@ export interface String extends Bottom<string, string, never, never, AST.String,
2062
2109
  */
2063
2110
  export declare const String: String;
2064
2111
  /**
2065
- * Schema for `number` values, including `NaN`, `Infinity`, and `-Infinity`.
2112
+ * Type-level representation of {@link Number}.
2066
2113
  *
2067
- * @see {@link Number} for the schema value.
2068
2114
  * @category models
2069
2115
  * @since 4.0.0
2070
2116
  */
2071
- export interface Number extends Bottom<number, number, never, never, AST.Number, Number> {
2117
+ export interface Number extends Bottom<number, number, never, never, SchemaAST.Number, Number> {
2072
2118
  }
2073
2119
  /**
2074
2120
  * Schema for `number` values, including `NaN`, `Infinity`, and `-Infinity`.
@@ -2086,13 +2132,12 @@ export interface Number extends Bottom<number, number, never, never, AST.Number,
2086
2132
  */
2087
2133
  export declare const Number: Number;
2088
2134
  /**
2089
- * Schema for `boolean` values.
2135
+ * Type-level representation of {@link Boolean}.
2090
2136
  *
2091
- * @see {@link Boolean} for the schema value.
2092
2137
  * @category models
2093
2138
  * @since 4.0.0
2094
2139
  */
2095
- export interface Boolean extends Bottom<boolean, boolean, never, never, AST.Boolean, Boolean> {
2140
+ export interface Boolean extends Bottom<boolean, boolean, never, never, SchemaAST.Boolean, Boolean> {
2096
2141
  }
2097
2142
  /**
2098
2143
  * Schema for `boolean` values. Validates that the input is `typeof` `"boolean"`.
@@ -2103,18 +2148,17 @@ export interface Boolean extends Bottom<boolean, boolean, never, never, AST.Bool
2103
2148
  *
2104
2149
  * @see {@link BooleanFromBit} for a schema that decodes bit literals `0` or `1` into a boolean
2105
2150
  *
2106
- * @category Boolean
2151
+ * @category boolean
2107
2152
  * @since 4.0.0
2108
2153
  */
2109
2154
  export declare const Boolean: Boolean;
2110
2155
  /**
2111
- * Schema for `symbol` values.
2156
+ * Type-level representation of {@link Symbol}.
2112
2157
  *
2113
- * @see {@link Symbol} for the schema value.
2114
2158
  * @category models
2115
2159
  * @since 4.0.0
2116
2160
  */
2117
- export interface Symbol extends Bottom<symbol, symbol, never, never, AST.Symbol, Symbol> {
2161
+ export interface Symbol extends Bottom<symbol, symbol, never, never, SchemaAST.Symbol, Symbol> {
2118
2162
  }
2119
2163
  /**
2120
2164
  * Schema for `symbol` values. Validates that the input is `typeof` `"symbol"`.
@@ -2125,13 +2169,12 @@ export interface Symbol extends Bottom<symbol, symbol, never, never, AST.Symbol,
2125
2169
  */
2126
2170
  export declare const Symbol: Symbol;
2127
2171
  /**
2128
- * Schema for `bigint` values.
2172
+ * Type-level representation of {@link BigInt}.
2129
2173
  *
2130
- * @see {@link BigInt} for the schema value.
2131
2174
  * @category models
2132
2175
  * @since 4.0.0
2133
2176
  */
2134
- export interface BigInt extends Bottom<bigint, bigint, never, never, AST.BigInt, BigInt> {
2177
+ export interface BigInt extends Bottom<bigint, bigint, never, never, SchemaAST.BigInt, BigInt> {
2135
2178
  }
2136
2179
  /**
2137
2180
  * Schema for `bigint` values. Validates that the input is `typeof` `"bigint"`.
@@ -2148,13 +2191,12 @@ export interface BigInt extends Bottom<bigint, bigint, never, never, AST.BigInt,
2148
2191
  */
2149
2192
  export declare const BigInt: BigInt;
2150
2193
  /**
2151
- * Schema for the `void` type.
2194
+ * Type-level representation of {@link Void}.
2152
2195
  *
2153
- * @see {@link Void} for the schema value.
2154
2196
  * @category models
2155
2197
  * @since 3.10.0
2156
2198
  */
2157
- export interface Void extends Bottom<void, void, never, never, AST.Void, Void> {
2199
+ export interface Void extends Bottom<void, void, never, never, SchemaAST.Void, Void> {
2158
2200
  }
2159
2201
  /**
2160
2202
  * Schema for the `void` type. Accepts `undefined` as the encoded value.
@@ -2164,13 +2206,12 @@ export interface Void extends Bottom<void, void, never, never, AST.Void, Void> {
2164
2206
  */
2165
2207
  export declare const Void: Void;
2166
2208
  /**
2167
- * Schema for the `object` type keyword.
2209
+ * Type-level representation of {@link ObjectKeyword}.
2168
2210
  *
2169
- * @see {@link ObjectKeyword} for the schema value.
2170
2211
  * @category models
2171
2212
  * @since 4.0.0
2172
2213
  */
2173
- export interface ObjectKeyword extends Bottom<object, object, never, never, AST.ObjectKeyword, ObjectKeyword> {
2214
+ export interface ObjectKeyword extends Bottom<object, object, never, never, SchemaAST.ObjectKeyword, ObjectKeyword> {
2174
2215
  }
2175
2216
  /**
2176
2217
  * Schema for the `object` type. Validates that the input is a non-null object or function
@@ -2181,13 +2222,12 @@ export interface ObjectKeyword extends Bottom<object, object, never, never, AST.
2181
2222
  */
2182
2223
  export declare const ObjectKeyword: ObjectKeyword;
2183
2224
  /**
2184
- * Represents a schema for a specific unique symbol.
2225
+ * Type-level representation returned by {@link UniqueSymbol}.
2185
2226
  *
2186
- * @see {@link UniqueSymbol} for the constructor function.
2187
2227
  * @category models
2188
2228
  * @since 4.0.0
2189
2229
  */
2190
- export interface UniqueSymbol<sym extends symbol> extends Bottom<sym, sym, never, never, AST.UniqueSymbol, UniqueSymbol<sym>> {
2230
+ export interface UniqueSymbol<sym extends symbol> extends Bottom<sym, sym, never, never, SchemaAST.UniqueSymbol, UniqueSymbol<sym>> {
2191
2231
  }
2192
2232
  /**
2193
2233
  * Creates a schema for a specific symbol. Only that exact symbol satisfies the schema.
@@ -2362,18 +2402,12 @@ export declare namespace Struct {
2362
2402
  type MakeIn<F extends Fields> = Simplify<MakeIn_<F>>;
2363
2403
  }
2364
2404
  /**
2365
- * Schema type returned by `Schema.Struct` for an object with a fixed set of
2366
- * schema-defined fields.
2367
- *
2368
- * **Details**
2369
- *
2370
- * The `fields` property exposes the original field map for reuse, and
2371
- * `mapFields` creates a new struct schema by transforming that field map.
2405
+ * Type-level representation returned by {@link Struct}.
2372
2406
  *
2373
2407
  * @category models
2374
2408
  * @since 3.10.0
2375
2409
  */
2376
- export interface Struct<Fields extends Struct.Fields> extends Bottom<Struct.Type<Fields>, Struct.Encoded<Fields>, Struct.DecodingServices<Fields>, Struct.EncodingServices<Fields>, AST.Objects, Struct<Fields>, Struct.MakeIn<Fields>, Struct.Iso<Fields>> {
2410
+ export interface Struct<Fields extends Struct.Fields> extends Bottom<Struct.Type<Fields>, Struct.Encoded<Fields>, Struct.DecodingServices<Fields>, Struct.EncodingServices<Fields>, SchemaAST.Objects, Struct<Fields>, Struct.MakeIn<Fields>, Struct.Iso<Fields>> {
2377
2411
  /**
2378
2412
  * The field definitions of this struct. Spread them into a new struct to
2379
2413
  * reuse fields across schemas.
@@ -2459,8 +2493,8 @@ interface fieldsAssign<NewFields extends Struct.Fields> extends Lambda {
2459
2493
  *
2460
2494
  * **When to use**
2461
2495
  *
2462
- * Use to add the same fields to an existing struct or to every struct member of
2463
- * a union.
2496
+ * Use to add the same fields to an existing struct or every struct member of a
2497
+ * union.
2464
2498
  *
2465
2499
  * **Details**
2466
2500
  *
@@ -2483,8 +2517,7 @@ interface fieldsAssign<NewFields extends Struct.Fields> extends Lambda {
2483
2517
  */
2484
2518
  export declare function fieldsAssign<const NewFields extends Struct.Fields>(fields: NewFields): fieldsAssign<NewFields>;
2485
2519
  /**
2486
- * Schema type for a struct with renamed encoded keys. Produced by
2487
- * {@link encodeKeys}.
2520
+ * Type-level representation returned by {@link encodeKeys}.
2488
2521
  *
2489
2522
  * @category transforming
2490
2523
  * @since 4.0.0
@@ -2715,21 +2748,12 @@ export declare namespace Record {
2715
2748
  };
2716
2749
  }
2717
2750
  /**
2718
- * Companion type for a key-value record (map) with a typed key and value schema.
2719
- * Produced by {@link Record}.
2720
- *
2721
- * **When to use**
2722
- *
2723
- * Use as the concrete schema type returned by `Record` when an API needs to
2724
- * accept or return a record schema with typed property keys and values.
2725
- *
2726
- * @see {@link Record} for constructing record schemas
2727
- * @see {@link StructWithRest} for combining fixed struct fields with record index signatures
2751
+ * Type-level representation returned by {@link Record}.
2728
2752
  *
2729
2753
  * @category models
2730
2754
  * @since 4.0.0
2731
2755
  */
2732
- export interface $Record<Key extends Record.Key, Value extends Top> extends Bottom<Record.Type<Key, Value>, Record.Encoded<Key, Value>, Record.DecodingServices<Key, Value>, Record.EncodingServices<Key, Value>, AST.Objects, $Record<Key, Value>, Simplify<Record.MakeIn<Key, Value>>, Record.Iso<Key, Value>> {
2756
+ export interface $Record<Key extends Record.Key, Value extends Top> extends Bottom<Record.Type<Key, Value>, Record.Encoded<Key, Value>, Record.DecodingServices<Key, Value>, Record.EncodingServices<Key, Value>, SchemaAST.Objects, $Record<Key, Value>, Simplify<Record.MakeIn<Key, Value>>, Record.Iso<Key, Value>> {
2733
2757
  readonly key: Key;
2734
2758
  readonly value: Value;
2735
2759
  }
@@ -2779,7 +2803,7 @@ export declare namespace StructWithRest {
2779
2803
  * @since 4.0.0
2780
2804
  */
2781
2805
  type Objects = Top & {
2782
- readonly ast: AST.Objects;
2806
+ readonly ast: SchemaAST.Objects;
2783
2807
  };
2784
2808
  /**
2785
2809
  * Readonly list of record schemas that provide the additional index signatures
@@ -2790,6 +2814,9 @@ export declare namespace StructWithRest {
2790
2814
  */
2791
2815
  type Records = ReadonlyArray<$Record<Record.Key, Top>>;
2792
2816
  type MergeTuple<T extends ReadonlyArray<unknown>> = T extends readonly [infer Head, ...infer Tail] ? Head & MergeTuple<Tail> : {};
2817
+ type Intersect<S extends Objects, Records extends StructWithRest.Records, Side extends "Type" | "Iso" | "Encoded" | "~type.make"> = S[Side] & MergeTuple<{
2818
+ readonly [K in keyof Records]: Records[K][Side];
2819
+ }>;
2793
2820
  /**
2794
2821
  * Computes the decoded type for `StructWithRest` by intersecting the base object
2795
2822
  * schema's decoded `Type` with the decoded types of all rest record schemas.
@@ -2797,9 +2824,7 @@ export declare namespace StructWithRest {
2797
2824
  * @category utility types
2798
2825
  * @since 3.10.0
2799
2826
  */
2800
- type Type<S extends Objects, Records extends StructWithRest.Records> = S["Type"] & MergeTuple<{
2801
- readonly [K in keyof Records]: Records[K]["Type"];
2802
- }>;
2827
+ type Type<S extends Objects, Records extends StructWithRest.Records> = Intersect<S, Records, "Type">;
2803
2828
  /**
2804
2829
  * Computes the iso type for `StructWithRest` by intersecting the base object
2805
2830
  * schema's `Iso` type with the `Iso` types of all rest record schemas.
@@ -2807,9 +2832,7 @@ export declare namespace StructWithRest {
2807
2832
  * @category utility types
2808
2833
  * @since 4.0.0
2809
2834
  */
2810
- type Iso<S extends Objects, Records extends StructWithRest.Records> = S["Iso"] & MergeTuple<{
2811
- readonly [K in keyof Records]: Records[K]["Iso"];
2812
- }>;
2835
+ type Iso<S extends Objects, Records extends StructWithRest.Records> = Intersect<S, Records, "Iso">;
2813
2836
  /**
2814
2837
  * Computes the encoded type for `StructWithRest` by intersecting the base object
2815
2838
  * schema's encoded type with the encoded types of all rest record schemas.
@@ -2817,9 +2840,19 @@ export declare namespace StructWithRest {
2817
2840
  * @category utility types
2818
2841
  * @since 3.10.0
2819
2842
  */
2820
- type Encoded<S extends Objects, Records extends StructWithRest.Records> = S["Encoded"] & MergeTuple<{
2821
- readonly [K in keyof Records]: Records[K]["Encoded"];
2822
- }>;
2843
+ type Encoded<S extends Objects, Records extends StructWithRest.Records> = Intersect<S, Records, "Encoded">;
2844
+ /**
2845
+ * Computes the input type accepted when constructing a `StructWithRest` value by
2846
+ * intersecting the base object's make input with the make inputs of all rest
2847
+ * record schemas.
2848
+ *
2849
+ * @category utility types
2850
+ * @since 4.0.0
2851
+ */
2852
+ type MakeIn<S extends Objects, Records extends StructWithRest.Records> = Intersect<S, Records, "~type.make">;
2853
+ type Services<S extends Objects, Records extends StructWithRest.Records, Side extends "DecodingServices" | "EncodingServices"> = S[Side] | {
2854
+ [K in keyof Records]: Records[K][Side];
2855
+ }[number];
2823
2856
  /**
2824
2857
  * Union of the decoding service requirements of the base object schema and all
2825
2858
  * rest record schemas.
@@ -2827,9 +2860,7 @@ export declare namespace StructWithRest {
2827
2860
  * @category utility types
2828
2861
  * @since 4.0.0
2829
2862
  */
2830
- type DecodingServices<S extends Objects, Records extends StructWithRest.Records> = S["DecodingServices"] | {
2831
- [K in keyof Records]: Records[K]["DecodingServices"];
2832
- }[number];
2863
+ type DecodingServices<S extends Objects, Records extends StructWithRest.Records> = Services<S, Records, "DecodingServices">;
2833
2864
  /**
2834
2865
  * Union of the encoding service requirements of the base object schema and all
2835
2866
  * rest record schemas.
@@ -2837,37 +2868,32 @@ export declare namespace StructWithRest {
2837
2868
  * @category utility types
2838
2869
  * @since 4.0.0
2839
2870
  */
2840
- type EncodingServices<S extends Objects, Records extends StructWithRest.Records> = S["EncodingServices"] | {
2841
- [K in keyof Records]: Records[K]["EncodingServices"];
2871
+ type EncodingServices<S extends Objects, Records extends StructWithRest.Records> = Services<S, Records, "EncodingServices">;
2872
+ type IncompatibleKeys<A, B, OK extends (keyof A & keyof B) = Extract<keyof A, keyof B>> = {
2873
+ [K in OK]: Required<Pick<A, K>>[K] extends B[K] ? never : K;
2874
+ }[OK];
2875
+ type IncompatibleSideKeys<S extends Objects, Records extends StructWithRest.Records, Side extends "Type" | "Encoded" | "Iso" | "~type.make"> = {
2876
+ [I in keyof Records]: Records[I][Side] extends object ? IncompatibleKeys<S[Side], Records[I][Side]> : never;
2842
2877
  }[number];
2843
2878
  /**
2844
- * Computes the input type accepted when constructing a `StructWithRest` value by
2845
- * intersecting the base object's make input with the make inputs of all rest
2846
- * record schemas.
2879
+ * Validates that the records are compatible with the struct.
2847
2880
  *
2848
2881
  * @category utility types
2849
2882
  * @since 4.0.0
2850
2883
  */
2851
- type MakeIn<S extends Objects, Records extends StructWithRest.Records> = S["~type.make"] & MergeTuple<{
2852
- readonly [K in keyof Records]: Records[K]["~type.make"];
2853
- }>;
2884
+ type ValidateRecords<S extends Objects, Records extends StructWithRest.Records> = [
2885
+ IncompatibleSideKeys<S, Records, "Type"> | IncompatibleSideKeys<S, Records, "Encoded"> | IncompatibleSideKeys<S, Records, "Iso"> | IncompatibleSideKeys<S, Records, "~type.make">
2886
+ ] extends [never] ? unknown : {
2887
+ "incompatible index signatures": IncompatibleSideKeys<S, Records, "Type"> | IncompatibleSideKeys<S, Records, "Encoded"> | IncompatibleSideKeys<S, Records, "Iso"> | IncompatibleSideKeys<S, Records, "~type.make">;
2888
+ };
2854
2889
  }
2855
2890
  /**
2856
- * Companion type for a struct combined with one or more record schemas. Produced
2857
- * by {@link StructWithRest}.
2858
- *
2859
- * **When to use**
2860
- *
2861
- * Use as the schema type when generic code needs to retain the base struct
2862
- * schema and all rest record schemas.
2863
- *
2864
- * @see {@link StructWithRest} for constructing this schema type
2865
- * @see {@link Record} for constructing record schemas used as rest index signatures
2891
+ * Type-level representation returned by {@link StructWithRest}.
2866
2892
  *
2867
2893
  * @category models
2868
2894
  * @since 4.0.0
2869
2895
  */
2870
- export interface StructWithRest<S extends StructWithRest.Objects, Records extends StructWithRest.Records> extends Bottom<Simplify<StructWithRest.Type<S, Records>>, Simplify<StructWithRest.Encoded<S, Records>>, StructWithRest.DecodingServices<S, Records>, StructWithRest.EncodingServices<S, Records>, AST.Objects, StructWithRest<S, Records>, Simplify<StructWithRest.MakeIn<S, Records>>, Simplify<StructWithRest.Iso<S, Records>>> {
2896
+ export interface StructWithRest<S extends StructWithRest.Objects, Records extends StructWithRest.Records> extends Bottom<Simplify<StructWithRest.Type<S, Records>>, Simplify<StructWithRest.Encoded<S, Records>>, StructWithRest.DecodingServices<S, Records>, StructWithRest.EncodingServices<S, Records>, SchemaAST.Objects, StructWithRest<S, Records>, Simplify<StructWithRest.MakeIn<S, Records>>, Simplify<StructWithRest.Iso<S, Records>>> {
2871
2897
  readonly schema: S;
2872
2898
  readonly records: Records;
2873
2899
  }
@@ -2882,17 +2908,17 @@ export interface StructWithRest<S extends StructWithRest.Objects, Records extend
2882
2908
  *
2883
2909
  * const schema = Schema.StructWithRest(
2884
2910
  * Schema.Struct({ id: Schema.Number }),
2885
- * [Schema.Record(Schema.String, Schema.String)]
2911
+ * [Schema.Record(Schema.String, Schema.Number)]
2886
2912
  * )
2887
2913
  *
2888
- * // { readonly id: number } & { readonly [x: string]: string }
2914
+ * // { readonly id: number, readonly [x: string]: number }
2889
2915
  * type T = typeof schema.Type
2890
2916
  * ```
2891
2917
  *
2892
2918
  * @category constructors
2893
2919
  * @since 4.0.0
2894
2920
  */
2895
- export declare function StructWithRest<const S extends StructWithRest.Objects, const Records extends StructWithRest.Records>(schema: S, records: Records): StructWithRest<S, Records>;
2921
+ export declare function StructWithRest<const S extends StructWithRest.Objects, const Records extends StructWithRest.Records>(schema: S, records: Records & StructWithRest.ValidateRecords<S, Records>): StructWithRest<S, Records>;
2896
2922
  /**
2897
2923
  * Namespace for `Tuple` type utilities.
2898
2924
  *
@@ -2998,12 +3024,12 @@ export declare namespace Tuple {
2998
3024
  type MakeIn<E extends Elements> = MakeIn_<E>;
2999
3025
  }
3000
3026
  /**
3001
- * Companion type for a fixed-length tuple. Produced by {@link Tuple}.
3027
+ * Type-level representation returned by {@link Tuple}.
3002
3028
  *
3003
3029
  * @category models
3004
3030
  * @since 3.10.0
3005
3031
  */
3006
- export interface Tuple<Elements extends Tuple.Elements> extends Bottom<Tuple.Type<Elements>, Tuple.Encoded<Elements>, Tuple.DecodingServices<Elements>, Tuple.EncodingServices<Elements>, AST.Arrays, Tuple<Elements>, Tuple.MakeIn<Elements>, Tuple.Iso<Elements>> {
3032
+ export interface Tuple<Elements extends Tuple.Elements> extends Bottom<Tuple.Type<Elements>, Tuple.Encoded<Elements>, Tuple.DecodingServices<Elements>, Tuple.EncodingServices<Elements>, SchemaAST.Arrays, Tuple<Elements>, Tuple.MakeIn<Elements>, Tuple.Iso<Elements>> {
3007
3033
  readonly elements: Elements;
3008
3034
  /**
3009
3035
  * Returns a new tuple with the elements modified by the provided function.
@@ -3067,7 +3093,7 @@ export declare namespace TupleWithRest {
3067
3093
  type TupleType = Top & {
3068
3094
  readonly Type: ReadonlyArray<unknown>;
3069
3095
  readonly Encoded: ReadonlyArray<unknown>;
3070
- readonly ast: AST.Arrays;
3096
+ readonly ast: SchemaAST.Arrays;
3071
3097
  readonly "~type.make": ReadonlyArray<unknown>;
3072
3098
  readonly "Iso": ReadonlyArray<unknown>;
3073
3099
  };
@@ -3161,13 +3187,12 @@ export declare namespace TupleWithRest {
3161
3187
  ] : M;
3162
3188
  }
3163
3189
  /**
3164
- * Companion type for a tuple with additional rest elements. Produced by
3165
- * {@link TupleWithRest}.
3190
+ * Type-level representation returned by {@link TupleWithRest}.
3166
3191
  *
3167
3192
  * @category models
3168
3193
  * @since 4.0.0
3169
3194
  */
3170
- export interface TupleWithRest<S extends TupleWithRest.TupleType, Rest extends TupleWithRest.Rest> extends Bottom<TupleWithRest.Type<S["Type"], Rest>, TupleWithRest.Encoded<S["Encoded"], Rest>, S["DecodingServices"] | Rest[number]["DecodingServices"], S["EncodingServices"] | Rest[number]["EncodingServices"], AST.Arrays, TupleWithRest<S, Rest>, TupleWithRest.MakeIn<S["~type.make"], Rest>, TupleWithRest.Iso<S["Iso"], Rest>> {
3195
+ export interface TupleWithRest<S extends TupleWithRest.TupleType, Rest extends TupleWithRest.Rest> extends Bottom<TupleWithRest.Type<S["Type"], Rest>, TupleWithRest.Encoded<S["Encoded"], Rest>, S["DecodingServices"] | Rest[number]["DecodingServices"], S["EncodingServices"] | Rest[number]["EncodingServices"], SchemaAST.Arrays, TupleWithRest<S, Rest>, TupleWithRest.MakeIn<S["~type.make"], Rest>, TupleWithRest.Iso<S["Iso"], Rest>> {
3171
3196
  readonly schema: S;
3172
3197
  readonly rest: Rest;
3173
3198
  }
@@ -3203,23 +3228,12 @@ export interface TupleWithRest<S extends TupleWithRest.TupleType, Rest extends T
3203
3228
  */
3204
3229
  export declare function TupleWithRest<S extends Tuple<Tuple.Elements>, const Rest extends TupleWithRest.Rest>(schema: S, rest: Rest): TupleWithRest<S, Rest>;
3205
3230
  /**
3206
- * Schema interface produced by `Schema.Array` for readonly arrays.
3207
- *
3208
- * **When to use**
3209
- *
3210
- * Use as the public companion type returned by `Schema.Array` when you need to
3211
- * refer to a readonly array schema built from an element schema.
3212
- *
3213
- * **Details**
3214
- *
3215
- * The decoded type is `ReadonlyArray<S["Type"]>`, the encoded type is
3216
- * `ReadonlyArray<S["Encoded"]>`, and the element schema is available as
3217
- * `value`.
3231
+ * Type-level representation returned by {@link Array}.
3218
3232
  *
3219
3233
  * @category models
3220
3234
  * @since 4.0.0
3221
3235
  */
3222
- export interface $Array<S extends Top> extends Bottom<ReadonlyArray<S["Type"]>, ReadonlyArray<S["Encoded"]>, S["DecodingServices"], S["EncodingServices"], AST.Arrays, $Array<S>, ReadonlyArray<S["~type.make"]>, ReadonlyArray<S["Iso"]>> {
3236
+ export interface $Array<S extends Top> extends Bottom<ReadonlyArray<S["Type"]>, ReadonlyArray<S["Encoded"]>, S["DecodingServices"], S["EncodingServices"], SchemaAST.Arrays, $Array<S>, ReadonlyArray<S["~type.make"]>, ReadonlyArray<S["Iso"]>> {
3223
3237
  readonly value: S;
3224
3238
  }
3225
3239
  interface ArrayLambda extends Lambda {
@@ -3252,18 +3266,12 @@ export {
3252
3266
  */
3253
3267
  ArraySchema as Array };
3254
3268
  /**
3255
- * Companion type for a non-empty `ReadonlyArray`. Produced by {@link NonEmptyArray}.
3256
- *
3257
- * **Details**
3258
- *
3259
- * The decoded type is `readonly [S["Type"], ...Array<S["Type"]>]`, the encoded type is
3260
- * `readonly [S["Encoded"], ...Array<S["Encoded"]>]`, and the element schema is available as
3261
- * `value`.
3269
+ * Type-level representation returned by {@link NonEmptyArray}.
3262
3270
  *
3263
3271
  * @category models
3264
3272
  * @since 3.10.0
3265
3273
  */
3266
- export interface NonEmptyArray<S extends Top> extends Bottom<readonly [S["Type"], ...Array<S["Type"]>], readonly [S["Encoded"], ...Array<S["Encoded"]>], S["DecodingServices"], S["EncodingServices"], AST.Arrays, NonEmptyArray<S>, readonly [S["~type.make"], ...Array<S["~type.make"]>], readonly [S["Iso"], ...Array<S["Iso"]>]> {
3274
+ export interface NonEmptyArray<S extends Top> extends Bottom<readonly [S["Type"], ...Array<S["Type"]>], readonly [S["Encoded"], ...Array<S["Encoded"]>], S["DecodingServices"], S["EncodingServices"], SchemaAST.Arrays, NonEmptyArray<S>, readonly [S["~type.make"], ...Array<S["~type.make"]>], readonly [S["Iso"], ...Array<S["Iso"]>]> {
3267
3275
  readonly value: S;
3268
3276
  }
3269
3277
  interface NonEmptyArrayLambda extends Lambda {
@@ -3290,20 +3298,7 @@ interface NonEmptyArrayLambda extends Lambda {
3290
3298
  */
3291
3299
  export declare const NonEmptyArray: NonEmptyArrayLambda;
3292
3300
  /**
3293
- * Schema interface returned by `ArrayEnsure`, which normalizes a single item or
3294
- * an array of items into a readonly array.
3295
- *
3296
- * **When to use**
3297
- *
3298
- * Use as the schema type when generic code needs to retain the original item
3299
- * schema.
3300
- *
3301
- * **Details**
3302
- *
3303
- * The schema decodes from `S` or `Schema.Array(S)` and produces
3304
- * `ReadonlyArray<S["Type"]>`.
3305
- *
3306
- * @see {@link ArrayEnsure} for constructing this schema type
3301
+ * Type-level representation returned by {@link ArrayEnsure}.
3307
3302
  *
3308
3303
  * @category constructors
3309
3304
  * @since 3.10.0
@@ -3339,7 +3334,7 @@ export interface ArrayEnsure<S extends Top> extends decodeTo<$Array<toType<S>>,
3339
3334
  */
3340
3335
  export declare function ArrayEnsure<S extends Top>(schema: S): ArrayEnsure<S>;
3341
3336
  /**
3342
- * Companion type for an array with unique elements. Produced by {@link UniqueArray}.
3337
+ * Type-level representation returned by {@link UniqueArray}.
3343
3338
  *
3344
3339
  * @category models
3345
3340
  * @since 4.0.0
@@ -3360,23 +3355,22 @@ export interface UniqueArray<S extends Top> extends $Array<S> {
3360
3355
  */
3361
3356
  export declare function UniqueArray<S extends Top>(item: S): UniqueArray<S>;
3362
3357
  /**
3363
- * Schema type that makes array or tuple elements mutable (removes `readonly`).
3364
- * Produced by {@link mutable}.
3358
+ * Type-level representation returned by {@link mutable}.
3365
3359
  *
3366
3360
  * @category transforming
3367
3361
  * @since 3.10.0
3368
3362
  */
3369
3363
  export interface mutable<S extends Top & {
3370
- readonly "ast": AST.Arrays;
3364
+ readonly "ast": SchemaAST.Arrays;
3371
3365
  }> extends Bottom<Mutable<S["Type"]>, Mutable<S["Encoded"]>, S["DecodingServices"], S["EncodingServices"], S["ast"], mutable<S>, S["~type.make.in"], S["Iso"], S["~type.parameters"], S["~type.make"], S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]> {
3372
3366
  readonly schema: S;
3373
3367
  }
3374
3368
  interface mutableLambda extends Lambda {
3375
3369
  <S extends Top & {
3376
- readonly "ast": AST.Arrays;
3370
+ readonly "ast": SchemaAST.Arrays;
3377
3371
  }>(self: S): mutable<S>;
3378
3372
  readonly "~lambda.out": this["~lambda.in"] extends Top & {
3379
- readonly "ast": AST.Arrays;
3373
+ readonly "ast": SchemaAST.Arrays;
3380
3374
  } ? mutable<this["~lambda.in"]> : "Error: schema not eligible for mutable";
3381
3375
  }
3382
3376
  /**
@@ -3398,7 +3392,7 @@ interface mutableLambda extends Lambda {
3398
3392
  */
3399
3393
  export declare const mutable: mutableLambda;
3400
3394
  /**
3401
- * Companion type for a union of multiple schemas. Produced by {@link Union}.
3395
+ * Type-level representation returned by {@link Union}.
3402
3396
  *
3403
3397
  * @category models
3404
3398
  * @since 3.10.0
@@ -3411,7 +3405,7 @@ export interface Union<Members extends ReadonlyArray<Top>> extends Bottom<{
3411
3405
  [K in keyof Members]: Members[K]["DecodingServices"];
3412
3406
  }[number], {
3413
3407
  [K in keyof Members]: Members[K]["EncodingServices"];
3414
- }[number], AST.Union<{
3408
+ }[number], SchemaAST.Union<{
3415
3409
  [K in keyof Members]: Members[K]["ast"];
3416
3410
  }[number]>, Union<Members>, {
3417
3411
  [K in keyof Members]: Members[K]["~type.make"];
@@ -3467,13 +3461,12 @@ export declare function Union<const Members extends ReadonlyArray<Top>>(members:
3467
3461
  mode?: "anyOf" | "oneOf";
3468
3462
  }): Union<Members>;
3469
3463
  /**
3470
- * Represents a union schema of multiple literal values.
3464
+ * Type-level representation returned by {@link Literals}.
3471
3465
  *
3472
- * @see {@link Literals} for the constructor function.
3473
3466
  * @category models
3474
3467
  * @since 4.0.0
3475
3468
  */
3476
- export interface Literals<L extends ReadonlyArray<AST.LiteralValue>> extends Bottom<L[number], L[number], never, never, AST.Union<AST.Literal>, Literals<L>> {
3469
+ export interface Literals<L extends ReadonlyArray<SchemaAST.LiteralValue>> extends Bottom<L[number], L[number], never, never, SchemaAST.Union<SchemaAST.Literal>, Literals<L>> {
3477
3470
  readonly literals: L;
3478
3471
  readonly members: {
3479
3472
  readonly [K in keyof L]: Literal<L[K]>;
@@ -3484,7 +3477,7 @@ export interface Literals<L extends ReadonlyArray<AST.LiteralValue>> extends Bot
3484
3477
  mapMembers<To extends ReadonlyArray<Top>>(f: (members: this["members"]) => To): Union<Simplify<Readonly<To>>>;
3485
3478
  pick<const L2 extends ReadonlyArray<L[number]>>(literals: L2): Literals<L2>;
3486
3479
  transform<const L2 extends {
3487
- readonly [I in keyof L]: AST.LiteralValue;
3480
+ readonly [I in keyof L]: SchemaAST.LiteralValue;
3488
3481
  }>(to: L2): Union<{
3489
3482
  [I in keyof L]: decodeTo<Literal<L2[I]>, Literal<L[I]>>;
3490
3483
  }>;
@@ -3505,9 +3498,9 @@ export interface Literals<L extends ReadonlyArray<AST.LiteralValue>> extends Bot
3505
3498
  * @category constructors
3506
3499
  * @since 4.0.0
3507
3500
  */
3508
- export declare function Literals<const L extends ReadonlyArray<AST.LiteralValue>>(literals: L): Literals<L>;
3501
+ export declare function Literals<const L extends ReadonlyArray<SchemaAST.LiteralValue>>(literals: L): Literals<L>;
3509
3502
  /**
3510
- * Companion type for `S | null`. Produced by {@link NullOr}.
3503
+ * Type-level representation returned by {@link NullOr}.
3511
3504
  *
3512
3505
  * @category models
3513
3506
  * @since 3.10.0
@@ -3527,7 +3520,7 @@ interface NullOrLambda extends Lambda {
3527
3520
  */
3528
3521
  export declare const NullOr: NullOrLambda;
3529
3522
  /**
3530
- * Companion type for `S | undefined`. Produced by {@link UndefinedOr}.
3523
+ * Type-level representation returned by {@link UndefinedOr}.
3531
3524
  *
3532
3525
  * @category models
3533
3526
  * @since 3.10.0
@@ -3547,7 +3540,7 @@ interface UndefinedOrLambda extends Lambda {
3547
3540
  */
3548
3541
  export declare const UndefinedOr: UndefinedOrLambda;
3549
3542
  /**
3550
- * Companion type for `S | null | undefined`. Produced by {@link NullishOr}.
3543
+ * Type-level representation returned by {@link NullishOr}.
3551
3544
  *
3552
3545
  * @category models
3553
3546
  * @since 3.10.0
@@ -3567,12 +3560,12 @@ interface NullishOrLambda extends Lambda {
3567
3560
  */
3568
3561
  export declare const NullishOr: NullishOrLambda;
3569
3562
  /**
3570
- * Schema type wrapping a lazily-evaluated schema. Produced by {@link suspend}.
3563
+ * Type-level representation returned by {@link suspend}.
3571
3564
  *
3572
3565
  * @category models
3573
3566
  * @since 3.10.0
3574
3567
  */
3575
- export interface suspend<S extends Top> extends Bottom<S["Type"], S["Encoded"], S["DecodingServices"], S["EncodingServices"], AST.Suspend, suspend<S>, S["~type.make.in"], S["Iso"], S["~type.parameters"], S["~type.make"], S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]> {
3568
+ export interface suspend<S extends Top> extends Bottom<S["Type"], S["Encoded"], S["DecodingServices"], S["EncodingServices"], SchemaAST.Suspend, suspend<S>, S["~type.make.in"], S["Iso"], S["~type.parameters"], S["~type.make"], S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]> {
3576
3569
  }
3577
3570
  /**
3578
3571
  * Creates a suspended schema that defers evaluation until needed. This is
@@ -3616,10 +3609,9 @@ export declare function suspend<S extends Top>(f: () => S): suspend<S>;
3616
3609
  * @category filtering
3617
3610
  * @since 4.0.0
3618
3611
  */
3619
- export declare function check<S extends Top>(...checks: readonly [AST.Check<S["Type"]>, ...Array<AST.Check<S["Type"]>>]): (self: S) => S["Rebuild"];
3612
+ export declare function check<S extends Top>(...checks: readonly [SchemaAST.Check<S["Type"]>, ...Array<SchemaAST.Check<S["Type"]>>]): (self: S) => S["Rebuild"];
3620
3613
  /**
3621
- * The output type of {@link refine}, narrowing the schema's `Type` to `T` via a
3622
- * type guard.
3614
+ * Type-level representation returned by {@link refine}.
3623
3615
  *
3624
3616
  * @category filtering
3625
3617
  * @since 3.10.0
@@ -3645,15 +3637,7 @@ export interface refine<T extends S["Type"], S extends Top> extends Bottom<T, S[
3645
3637
  export declare function refine<S extends Top, T extends S["Type"]>(refinement: (value: S["Type"]) => value is T, annotations?: Annotations.Filter): (schema: S) => refine<T, S>;
3646
3638
  type DistributeBrands<B> = UnionToIntersection<B extends infer U extends string ? Brand.Brand<U> : never>;
3647
3639
  /**
3648
- * The output type of {@link brand}, intersecting the schema's `Type` with one or
3649
- * more {@link Brand.Brand} tags.
3650
- *
3651
- * **When to use**
3652
- *
3653
- * Use as the schema type when generic code needs to retain the wrapped schema
3654
- * and nominal brand type.
3655
- *
3656
- * @see {@link brand} for adding the brand tag to an existing schema
3640
+ * Type-level representation returned by {@link brand}.
3657
3641
  *
3658
3642
  * @category branding
3659
3643
  * @since 3.10.0
@@ -3693,14 +3677,8 @@ export declare function fromBrand<A extends Brand.Brand<any>>(identifier: string
3693
3677
  readonly "Type": Brand.Brand.Unbranded<A>;
3694
3678
  }>(self: S) => brand<S["Rebuild"], Brand.Brand.Keys<A>>;
3695
3679
  /**
3696
- * A schema that wraps another schema and intercepts its decoding pipeline.
3697
- *
3698
- * **Details**
3680
+ * Type-level representation returned by {@link middlewareDecoding}.
3699
3681
  *
3700
- * The interceptor receives the full decoding `Effect` and may replace, modify,
3701
- * or augment it — including adding service requirements via `RD`.
3702
- *
3703
- * @see {@link middlewareDecoding} for the constructor
3704
3682
  * @category decoding
3705
3683
  * @since 4.0.0
3706
3684
  */
@@ -3732,16 +3710,10 @@ export interface middlewareDecoding<S extends Top, RD> extends Bottom<S["Type"],
3732
3710
  * @category decoding
3733
3711
  * @since 4.0.0
3734
3712
  */
3735
- export declare function middlewareDecoding<S extends Top, RD>(decode: (effect: Effect.Effect<Option_.Option<S["Type"]>, Issue.Issue, S["DecodingServices"]>, options: AST.ParseOptions) => Effect.Effect<Option_.Option<S["Type"]>, Issue.Issue, RD>): (schema: S) => middlewareDecoding<S, RD>;
3713
+ export declare function middlewareDecoding<S extends Top, RD>(decode: (effect: Effect.Effect<Option_.Option<S["Type"]>, SchemaIssue.Issue, S["DecodingServices"]>, options: SchemaAST.ParseOptions) => Effect.Effect<Option_.Option<S["Type"]>, SchemaIssue.Issue, RD>): (schema: S) => middlewareDecoding<S, RD>;
3736
3714
  /**
3737
- * A schema that wraps another schema and intercepts its encoding pipeline.
3738
- *
3739
- * **Details**
3715
+ * Type-level representation returned by {@link middlewareEncoding}.
3740
3716
  *
3741
- * The interceptor receives the full encoding `Effect` and may replace, modify,
3742
- * or augment it — including adding service requirements via `RE`.
3743
- *
3744
- * @see {@link middlewareEncoding} for the constructor
3745
3717
  * @category encoding
3746
3718
  * @since 4.0.0
3747
3719
  */
@@ -3773,7 +3745,7 @@ export interface middlewareEncoding<S extends Top, RE> extends Bottom<S["Type"],
3773
3745
  * @category encoding
3774
3746
  * @since 4.0.0
3775
3747
  */
3776
- export declare function middlewareEncoding<S extends Top, RE>(encode: (effect: Effect.Effect<Option_.Option<S["Encoded"]>, Issue.Issue, S["EncodingServices"]>, options: AST.ParseOptions) => Effect.Effect<Option_.Option<S["Encoded"]>, Issue.Issue, RE>): (schema: S) => middlewareEncoding<S, RE>;
3748
+ export declare function middlewareEncoding<S extends Top, RE>(encode: (effect: Effect.Effect<Option_.Option<S["Encoded"]>, SchemaIssue.Issue, S["EncodingServices"]>, options: SchemaAST.ParseOptions) => Effect.Effect<Option_.Option<S["Encoded"]>, SchemaIssue.Issue, RE>): (schema: S) => middlewareEncoding<S, RE>;
3777
3749
  /**
3778
3750
  * Recovers from a decoding error by providing a fallback value.
3779
3751
  *
@@ -3796,13 +3768,14 @@ export declare function middlewareEncoding<S extends Top, RE>(encode: (effect: E
3796
3768
  * @category error handling
3797
3769
  * @since 4.0.0
3798
3770
  */
3799
- export declare function catchDecoding<S extends Top>(f: (issue: Issue.Issue) => Effect.Effect<Option_.Option<S["Type"]>, Issue.Issue>): (self: S) => S["Rebuild"];
3771
+ export declare function catchDecoding<S extends Top>(f: (issue: SchemaIssue.Issue) => Effect.Effect<Option_.Option<S["Type"]>, SchemaIssue.Issue>): (self: S) => S["Rebuild"];
3800
3772
  /**
3801
3773
  * Recovers from a decoding error with a handler that may require Effect services.
3802
3774
  *
3803
3775
  * **When to use**
3804
3776
  *
3805
- * Use when decoding fallback logic needs services from the Effect context.
3777
+ * Use when you need decoding fallback logic to require services from the Effect
3778
+ * context.
3806
3779
  *
3807
3780
  * **Details**
3808
3781
  *
@@ -3816,7 +3789,7 @@ export declare function catchDecoding<S extends Top>(f: (issue: Issue.Issue) =>
3816
3789
  * @category error handling
3817
3790
  * @since 4.0.0
3818
3791
  */
3819
- export declare function catchDecodingWithContext<S extends Top, R = never>(f: (issue: Issue.Issue) => Effect.Effect<Option_.Option<S["Type"]>, Issue.Issue, R>): (self: S) => middlewareDecoding<S, S["DecodingServices"] | R>;
3792
+ export declare function catchDecodingWithContext<S extends Top, R = never>(f: (issue: SchemaIssue.Issue) => Effect.Effect<Option_.Option<S["Type"]>, SchemaIssue.Issue, R>): (self: S) => middlewareDecoding<S, S["DecodingServices"] | R>;
3820
3793
  /**
3821
3794
  * Recovers from an encoding error by providing a fallback value.
3822
3795
  *
@@ -3829,13 +3802,14 @@ export declare function catchDecodingWithContext<S extends Top, R = never>(f: (i
3829
3802
  * @category error handling
3830
3803
  * @since 4.0.0
3831
3804
  */
3832
- export declare function catchEncoding<S extends Top>(f: (issue: Issue.Issue) => Effect.Effect<Option_.Option<S["Encoded"]>, Issue.Issue>): (self: S) => S["Rebuild"];
3805
+ export declare function catchEncoding<S extends Top>(f: (issue: SchemaIssue.Issue) => Effect.Effect<Option_.Option<S["Encoded"]>, SchemaIssue.Issue>): (self: S) => S["Rebuild"];
3833
3806
  /**
3834
3807
  * Recovers from an encoding error with a handler that may require Effect services.
3835
3808
  *
3836
3809
  * **When to use**
3837
3810
  *
3838
- * Use when encoding fallback logic needs services from the Effect context.
3811
+ * Use when you need encoding fallback logic to require services from the Effect
3812
+ * context.
3839
3813
  *
3840
3814
  * **Details**
3841
3815
  *
@@ -3849,18 +3823,10 @@ export declare function catchEncoding<S extends Top>(f: (issue: Issue.Issue) =>
3849
3823
  * @category error handling
3850
3824
  * @since 4.0.0
3851
3825
  */
3852
- export declare function catchEncodingWithContext<S extends Top, R = never>(f: (issue: Issue.Issue) => Effect.Effect<Option_.Option<S["Encoded"]>, Issue.Issue, R>): (self: S) => middlewareEncoding<S, S["EncodingServices"] | R>;
3826
+ export declare function catchEncodingWithContext<S extends Top, R = never>(f: (issue: SchemaIssue.Issue) => Effect.Effect<Option_.Option<S["Encoded"]>, SchemaIssue.Issue, R>): (self: S) => middlewareEncoding<S, S["EncodingServices"] | R>;
3853
3827
  /**
3854
- * Schema type produced by `decodeTo` when a custom transformation composes a
3855
- * `From` schema with a `To` schema.
3856
- *
3857
- * **Details**
3828
+ * Type-level representation returned by {@link decodeTo}.
3858
3829
  *
3859
- * `Type` is `To["Type"]` and `Encoded` is `From["Encoded"]`. Decoding services
3860
- * are `To["DecodingServices"] | From["DecodingServices"] | RD`; encoding
3861
- * services are `To["EncodingServices"] | From["EncodingServices"] | RE`.
3862
- *
3863
- * @see {@link compose} for the passthrough (no transformation) variant
3864
3830
  * @category transforming
3865
3831
  * @since 4.0.0
3866
3832
  */
@@ -3869,14 +3835,8 @@ export interface decodeTo<To extends Top, From extends Top, RD = never, RE = nev
3869
3835
  readonly to: To;
3870
3836
  }
3871
3837
  /**
3872
- * The type produced by {@link decodeTo} when called without a custom transformation (passthrough composition).
3873
- *
3874
- * **Details**
3875
- *
3876
- * Equivalent to {@link decodeTo} with `RD = never` and `RE = never`, meaning the schemas
3877
- * are composed using their natural encoding/decoding chain.
3838
+ * Type-level representation returned by {@link decodeTo} without a custom transformation.
3878
3839
  *
3879
- * @see {@link decodeTo} for the transformation variant
3880
3840
  * @category transforming
3881
3841
  * @since 3.10.0
3882
3842
  */
@@ -3885,25 +3845,28 @@ export interface compose<To extends Top, From extends Top> extends decodeTo<To,
3885
3845
  /**
3886
3846
  * Creates a schema that transforms from a source schema to a target schema.
3887
3847
  *
3848
+ * **When to use**
3849
+ *
3850
+ * Use when decoding should change the schema's decoded type or encoded shape,
3851
+ * with an optional custom bidirectional transformation.
3852
+ *
3888
3853
  * **Details**
3889
3854
  *
3890
- * This is a curried function: call it with the target schema `to` (and optionally a transformation),
3891
- * then call the returned function with the source schema `from`. The resulting schema decodes from
3892
- * `From["Encoded"]` to `To["Type"]` and encodes from `To["Type"]` back to `From["Encoded"]`.
3855
+ * Call it with the target schema `to` and then pipe the source schema `from`
3856
+ * into the returned function. The resulting schema decodes from
3857
+ * `From["Encoded"]` to `To["Type"]` and encodes from `To["Type"]` back to
3858
+ * `From["Encoded"]`.
3893
3859
  *
3894
- * Key guarantees:
3895
- * - Resulting schema has `Type = To["Type"]` and `Encoded = From["Encoded"]`
3896
- * - When `transformation` is omitted, uses `Transformation.passthrough()` (schema composition)
3897
- * - Combines decoding/encoding services from both `from` and `to` schemas
3898
- * - Transformation `decode` maps `From["Type"]` → `To["Encoded"]` (used during encoding)
3899
- * - Transformation `encode` maps `To["Encoded"]` → `From["Type"]` (used during decoding)
3860
+ * When no transformation is provided, `SchemaTransformation.passthrough()` is
3861
+ * used, so `From["Type"]` must already be compatible with `To["Encoded"]`.
3862
+ * The resulting schema combines decoding and encoding services from both
3863
+ * schemas and any custom transformation.
3900
3864
  *
3901
- * Common mistakes:
3902
- * - **Direction confusion**: Remember `to` is the target (what you decode TO), `from` is the source (what you decode FROM)
3903
- * - **Currying**: This is curried - must use pipe: `from.pipe(Schema.decodeTo(to))`
3904
- * - **Transformation direction**: `decode` goes `From["Type"]` `To["Encoded"]`, `encode` goes `To["Encoded"]` → `From["Type"]`
3905
- * - **Passthrough assumption**: Without transformation, schemas must satisfy `To["Encoded"] === From["Type"]` or use passthrough helpers
3906
- * - **Service dependencies**: Resulting schema requires services from both schemas; use `Schema.provideService` if needed
3865
+ * **Gotchas**
3866
+ *
3867
+ * In a custom transformation, `decode` maps `From["Type"]` to `To["Encoded"]`
3868
+ * and is used on the encoding path, while `encode` maps `To["Encoded"]` to
3869
+ * `From["Type"]` and is used on the decoding path.
3907
3870
  *
3908
3871
  * **Example** (String to Number with transformation)
3909
3872
  *
@@ -3929,29 +3892,32 @@ export interface compose<To extends Top, From extends Top> extends decodeTo<To,
3929
3892
  */
3930
3893
  export declare function decodeTo<To extends Top>(to: To): <From extends Top>(from: From) => compose<To, From>;
3931
3894
  export declare function decodeTo<To extends Top, From extends Top, RD = never, RE = never>(to: To, transformation: {
3932
- readonly decode: Getter.Getter<NoInfer<To["Encoded"]>, NoInfer<From["Type"]>, RD>;
3933
- readonly encode: Getter.Getter<NoInfer<From["Type"]>, NoInfer<To["Encoded"]>, RE>;
3895
+ readonly decode: SchemaGetter.Getter<NoInfer<To["Encoded"]>, NoInfer<From["Type"]>, RD>;
3896
+ readonly encode: SchemaGetter.Getter<NoInfer<From["Type"]>, NoInfer<To["Encoded"]>, RE>;
3934
3897
  }): (from: From) => decodeTo<To, From, RD, RE>;
3935
3898
  /**
3936
3899
  * Applies a transformation to a schema, creating a new schema with the same type but transformed encoding/decoding.
3937
3900
  *
3901
+ * **When to use**
3902
+ *
3903
+ * Use when the decoded type stays the same and the transformation only
3904
+ * normalizes values during encoding and decoding.
3905
+ *
3938
3906
  * **Details**
3939
3907
  *
3940
- * This is a curried function: call it with a transformation object, then call the returned function with a schema.
3941
- * The resulting schema has `Type = S["Type"]` and `Encoded = S["Encoded"]`, with the transformation applied during
3942
- * encoding and decoding operations.
3908
+ * Call it with a transformation object and then pipe a schema into the returned
3909
+ * function. The resulting schema keeps the same `Type` and `Encoded` types as
3910
+ * the source schema, while applying the transformation during both decoding and
3911
+ * encoding.
3943
3912
  *
3944
- * Key guarantees:
3945
- * - Resulting schema has `Type = S["Type"]` and `Encoded = S["Encoded"]`
3946
- * - Uses `toType(self)` as the target schema internally (creates a schema where both Type and Encoded are `S["Type"]`)
3947
- * - Combines decoding/encoding services from the source schema and transformation
3948
- * - Transformation `decode` maps `S["Type"]` → `S["Type"]` (used during encoding)
3949
- * - Transformation `encode` maps `S["Type"]` → `S["Type"]` (used during decoding)
3913
+ * Internally this uses `toType(self)` as the target schema and combines service
3914
+ * requirements from the source schema and the transformation.
3950
3915
  *
3951
- * Common mistakes:
3952
- * - **Currying**: This is curried - must use pipe: `schema.pipe(Schema.decode(transformation))`
3953
- * - **Transformation direction**: `decode` and `encode` both operate on `S["Type"]` (same type, different values)
3954
- * - **Service dependencies**: Resulting schema requires services from the source schema and transformation; use `Schema.provideService` if needed
3916
+ * **Gotchas**
3917
+ *
3918
+ * Use {@link decodeTo} instead when the transformation should change the
3919
+ * decoded type. For this helper, both transformation getters operate on
3920
+ * `S["Type"]` values.
3955
3921
  *
3956
3922
  * **Example** (Trimming string values during encoding/decoding)
3957
3923
  *
@@ -3973,8 +3939,8 @@ export declare function decodeTo<To extends Top, From extends Top, RD = never, R
3973
3939
  * @since 3.10.0
3974
3940
  */
3975
3941
  export declare function decode<S extends Top, RD = never, RE = never>(transformation: {
3976
- readonly decode: Getter.Getter<S["Type"], S["Type"], RD>;
3977
- readonly encode: Getter.Getter<S["Type"], S["Type"], RE>;
3942
+ readonly decode: SchemaGetter.Getter<S["Type"], S["Type"], RD>;
3943
+ readonly encode: SchemaGetter.Getter<S["Type"], S["Type"], RE>;
3978
3944
  }): (self: S) => decodeTo<toType<S>, S, RD, RE>;
3979
3945
  /**
3980
3946
  * Reverses a schema transformation so the encoded schema is supplied first.
@@ -4007,8 +3973,8 @@ export declare function decode<S extends Top, RD = never, RE = never>(transforma
4007
3973
  */
4008
3974
  export declare function encodeTo<To extends Top>(to: To): <From extends Top>(from: From) => decodeTo<From, To>;
4009
3975
  export declare function encodeTo<To extends Top, From extends Top, RD = never, RE = never>(to: To, transformation: {
4010
- readonly decode: Getter.Getter<NoInfer<From["Encoded"]>, NoInfer<To["Type"]>, RD>;
4011
- readonly encode: Getter.Getter<NoInfer<To["Type"]>, NoInfer<From["Encoded"]>, RE>;
3976
+ readonly decode: SchemaGetter.Getter<NoInfer<From["Encoded"]>, NoInfer<To["Type"]>, RD>;
3977
+ readonly encode: SchemaGetter.Getter<NoInfer<To["Type"]>, NoInfer<From["Encoded"]>, RE>;
4012
3978
  }): (from: From) => decodeTo<From, To, RD, RE>;
4013
3979
  /**
4014
3980
  * Applies a transformation to a schema's encoded type, creating a new schema where encoding/decoding
@@ -4036,8 +4002,8 @@ export declare function encodeTo<To extends Top, From extends Top, RD = never, R
4036
4002
  * @since 3.10.0
4037
4003
  */
4038
4004
  export declare function encode<S extends Top, RD = never, RE = never>(transformation: {
4039
- readonly decode: Getter.Getter<S["Encoded"], S["Encoded"], RD>;
4040
- readonly encode: Getter.Getter<S["Encoded"], S["Encoded"], RE>;
4005
+ readonly decode: SchemaGetter.Getter<S["Encoded"], S["Encoded"], RD>;
4006
+ readonly encode: SchemaGetter.Getter<S["Encoded"], S["Encoded"], RE>;
4041
4007
  }): (self: S) => decodeTo<S, toEncoded<S>, RD, RE>;
4042
4008
  /**
4043
4009
  * Constraint used to ensure a schema field does not already have a constructor default.
@@ -4053,17 +4019,8 @@ export interface WithoutConstructorDefault {
4053
4019
  readonly "~type.constructor.default": "no-default";
4054
4020
  }
4055
4021
  /**
4056
- * Schema type returned by `withConstructorDefault` after attaching a default used
4057
- * by constructor helpers.
4058
- *
4059
- * **Details**
4060
- *
4061
- * The default affects `make` and related constructor helpers only; decoding and
4062
- * encoding still use the original schema behavior. The schema is marked as
4063
- * already having a constructor default so another constructor default cannot be
4064
- * added.
4022
+ * Type-level representation returned by {@link withConstructorDefault}.
4065
4023
  *
4066
- * @see {@link withConstructorDefault} for the constructor
4067
4024
  * @category constructors
4068
4025
  * @since 3.10.0
4069
4026
  */
@@ -4099,10 +4056,8 @@ export interface withConstructorDefault<S extends Top & WithoutConstructorDefaul
4099
4056
  */
4100
4057
  export declare function withConstructorDefault<S extends Top & WithoutConstructorDefault>(defaultValue: Effect.Effect<S["~type.make.in"], SchemaError>): (schema: S) => withConstructorDefault<S>;
4101
4058
  /**
4102
- * The type produced by {@link withDecodingDefaultKey}: a schema whose `Encoded`
4103
- * side is `optionalKey` and that fills in a default `Encoded` value during decoding.
4059
+ * Type-level representation returned by {@link withDecodingDefaultKey}.
4104
4060
  *
4105
- * @see {@link withDecodingDefaultKey} for the constructor
4106
4061
  * @category decoding
4107
4062
  * @since 4.0.0
4108
4063
  */
@@ -4118,7 +4073,7 @@ export interface withDecodingDefaultKey<S extends Top, R = never> extends decode
4118
4073
  * - `"passthrough"` (default): pass the value through during encoding
4119
4074
  * - `"omit"`: omit the key from the encoded output
4120
4075
  *
4121
- * @category models
4076
+ * @category options
4122
4077
  * @since 4.0.0
4123
4078
  */
4124
4079
  export type DecodingDefaultOptions = {
@@ -4160,11 +4115,8 @@ export type DecodingDefaultOptions = {
4160
4115
  */
4161
4116
  export declare function withDecodingDefaultKey<S extends Top, R = never>(defaultValue: Effect.Effect<S["Encoded"], SchemaError, R>, options?: DecodingDefaultOptions): (self: S) => withDecodingDefaultKey<S, R>;
4162
4117
  /**
4163
- * The type produced by {@link withDecodingDefaultTypeKey}: a schema whose
4164
- * `Encoded` side is `optionalKey` and that fills in a default `Type` value
4165
- * during decoding.
4118
+ * Type-level representation returned by {@link withDecodingDefaultTypeKey}.
4166
4119
  *
4167
- * @see {@link withDecodingDefaultTypeKey} for the constructor
4168
4120
  * @category decoding
4169
4121
  * @since 4.0.0
4170
4122
  */
@@ -4195,10 +4147,8 @@ export interface withDecodingDefaultTypeKey<S extends Top, R = never> extends de
4195
4147
  */
4196
4148
  export declare function withDecodingDefaultTypeKey<S extends Top, R = never>(defaultValue: Effect.Effect<S["Type"], SchemaError, R>, options?: DecodingDefaultOptions): (self: S) => withDecodingDefaultTypeKey<S, R>;
4197
4149
  /**
4198
- * The type produced by {@link withDecodingDefault}: a schema whose `Encoded`
4199
- * side is `optional` and that fills in a default `Encoded` value during decoding.
4150
+ * Type-level representation returned by {@link withDecodingDefault}.
4200
4151
  *
4201
- * @see {@link withDecodingDefault} for the constructor
4202
4152
  * @category decoding
4203
4153
  * @since 3.10.0
4204
4154
  */
@@ -4210,6 +4160,11 @@ export interface withDecodingDefault<S extends Top, R = never> extends decodeTo<
4210
4160
  * and provides a default `Encoded` value when the field is missing or
4211
4161
  * `undefined` during decoding.
4212
4162
  *
4163
+ * **When to use**
4164
+ *
4165
+ * Use when the default is expressed in the encoded representation, before the
4166
+ * field's decoding transformation runs.
4167
+ *
4213
4168
  * **Details**
4214
4169
  *
4215
4170
  * The default value is specified in terms of the `Encoded` type (before any
@@ -4241,11 +4196,8 @@ export interface withDecodingDefault<S extends Top, R = never> extends decodeTo<
4241
4196
  */
4242
4197
  export declare function withDecodingDefault<S extends Top, R = never>(defaultValue: Effect.Effect<S["Encoded"], SchemaError, R>, options?: DecodingDefaultOptions): (self: S) => withDecodingDefault<S, R>;
4243
4198
  /**
4244
- * The type produced by {@link withDecodingDefaultType}: a schema whose
4245
- * `Encoded` side is `optional` and that fills in a default `Type` value during
4246
- * decoding.
4199
+ * Type-level representation returned by {@link withDecodingDefaultType}.
4247
4200
  *
4248
- * @see {@link withDecodingDefaultType} for the constructor
4249
4201
  * @category decoding
4250
4202
  * @since 4.0.0
4251
4203
  */
@@ -4257,6 +4209,11 @@ export interface withDecodingDefaultType<S extends Top, R = never> extends decod
4257
4209
  * and provides a default `Type` value when the field is missing or
4258
4210
  * `undefined` during decoding.
4259
4211
  *
4212
+ * **When to use**
4213
+ *
4214
+ * Use when the default is already in the decoded representation and should not
4215
+ * pass through the field's decoding transformation.
4216
+ *
4260
4217
  * **Details**
4261
4218
  *
4262
4219
  * Unlike {@link withDecodingDefault}, the default value is specified in terms
@@ -4276,17 +4233,12 @@ export interface withDecodingDefaultType<S extends Top, R = never> extends decod
4276
4233
  */
4277
4234
  export declare function withDecodingDefaultType<S extends Top, R = never>(defaultValue: Effect.Effect<S["Type"], SchemaError, R>, options?: DecodingDefaultOptions): (self: S) => withDecodingDefaultType<S, R>;
4278
4235
  /**
4279
- * The type produced by {@link tag} — a literal schema with a constructor default.
4236
+ * Type-level representation returned by {@link tag}.
4280
4237
  *
4281
- * **Details**
4282
- *
4283
- * Used as the type of the `_tag` field in {@link TaggedStruct} and related helpers.
4284
- *
4285
- * @see {@link tag} for the constructor
4286
4238
  * @category constructors
4287
4239
  * @since 3.10.0
4288
4240
  */
4289
- export interface tag<Tag extends AST.LiteralValue> extends withConstructorDefault<Literal<Tag>> {
4241
+ export interface tag<Tag extends SchemaAST.LiteralValue> extends withConstructorDefault<Literal<Tag>> {
4290
4242
  }
4291
4243
  /**
4292
4244
  * Combines a {@link Literal} schema with {@link withConstructorDefault}, making it ideal
@@ -4310,7 +4262,7 @@ export interface tag<Tag extends AST.LiteralValue> extends withConstructorDefaul
4310
4262
  * @category constructors
4311
4263
  * @since 3.10.0
4312
4264
  */
4313
- export declare function tag<Tag extends AST.LiteralValue>(literal: Tag): tag<Tag>;
4265
+ export declare function tag<Tag extends SchemaAST.LiteralValue>(literal: Tag): tag<Tag>;
4314
4266
  /**
4315
4267
  * Creates a literal `_tag` schema that is omitted from encoded output.
4316
4268
  *
@@ -4343,15 +4295,14 @@ export declare function tag<Tag extends AST.LiteralValue>(literal: Tag): tag<Tag
4343
4295
  * @category constructors
4344
4296
  * @since 4.0.0
4345
4297
  */
4346
- export declare function tagDefaultOmit<Tag extends AST.LiteralValue>(literal: Tag): withDecodingDefaultKey<tag<Tag>, never>;
4298
+ export declare function tagDefaultOmit<Tag extends SchemaAST.LiteralValue>(literal: Tag): withDecodingDefaultKey<tag<Tag>, never>;
4347
4299
  /**
4348
- * The type produced by {@link TaggedStruct} — a {@link Struct} with an extra `_tag` field of type {@link tag}.
4300
+ * Type-level representation returned by {@link TaggedStruct}.
4349
4301
  *
4350
- * @see {@link TaggedStruct} for the constructor
4351
4302
  * @category models
4352
4303
  * @since 3.10.0
4353
4304
  */
4354
- export type TaggedStruct<Tag extends AST.LiteralValue, Fields extends Struct.Fields> = Struct<Simplify<{
4305
+ export type TaggedStruct<Tag extends SchemaAST.LiteralValue, Fields extends Struct.Fields> = Struct<Simplify<{
4355
4306
  readonly _tag: tag<Tag>;
4356
4307
  } & Fields>>;
4357
4308
  /**
@@ -4400,7 +4351,7 @@ export type TaggedStruct<Tag extends AST.LiteralValue, Fields extends Struct.Fie
4400
4351
  * @category constructors
4401
4352
  * @since 3.10.0
4402
4353
  */
4403
- export declare function TaggedStruct<const Tag extends AST.LiteralValue, const Fields extends Struct.Fields>(value: Tag, fields: Fields): TaggedStruct<Tag, Fields>;
4354
+ export declare function TaggedStruct<const Tag extends SchemaAST.LiteralValue, const Fields extends Struct.Fields>(value: Tag, fields: Fields): TaggedStruct<Tag, Fields>;
4404
4355
  /**
4405
4356
  * Recursively flatten any nested Schema.Union members into a single tuple of leaf schemas.
4406
4357
  */
@@ -4433,9 +4384,8 @@ type TaggedUnionUtils<Tag extends PropertyKey, Members extends ReadonlyArray<Top
4433
4384
  };
4434
4385
  };
4435
4386
  /**
4436
- * The type produced by {@link toTaggedUnion} — a {@link Union} augmented with `cases`, `guards`, `isAnyOf`, and `match` utilities.
4387
+ * Type-level representation returned by {@link toTaggedUnion}.
4437
4388
  *
4438
- * @see {@link toTaggedUnion} for the constructor
4439
4389
  * @category combinators
4440
4390
  * @since 4.0.0
4441
4391
  */
@@ -4472,10 +4422,8 @@ export declare function toTaggedUnion<const Tag extends PropertyKey>(tag: Tag):
4472
4422
  readonly Type: { readonly [K in Tag]: PropertyKey; };
4473
4423
  }>>(self: Union<Members>) => toTaggedUnion<Tag, Members>;
4474
4424
  /**
4475
- * A union schema that exposes `cases`, `guards`, `isAnyOf`, and `match` utilities keyed by the `_tag` discriminant.
4476
- * Produced by {@link TaggedUnion}.
4425
+ * Type-level representation returned by {@link TaggedUnion}.
4477
4426
  *
4478
- * @see {@link TaggedUnion} for the constructor
4479
4427
  * @category models
4480
4428
  * @since 4.0.0
4481
4429
  */
@@ -4487,7 +4435,7 @@ export interface TaggedUnion<Cases extends Record<string, Top>> extends Bottom<{
4487
4435
  [K in keyof Cases]: Cases[K]["DecodingServices"];
4488
4436
  }[keyof Cases], {
4489
4437
  [K in keyof Cases]: Cases[K]["EncodingServices"];
4490
- }[keyof Cases], AST.Union<AST.Objects>, TaggedUnion<Cases>, {
4438
+ }[keyof Cases], SchemaAST.Union<SchemaAST.Objects>, TaggedUnion<Cases>, {
4491
4439
  [K in keyof Cases]: Cases[K]["~type.make"];
4492
4440
  }[keyof Cases]> {
4493
4441
  readonly cases: Cases;
@@ -4536,11 +4484,8 @@ export declare function TaggedUnion<const CasesByTag extends Record<string, Stru
4536
4484
  readonly [K in keyof CasesByTag & string]: TaggedStruct<K, CasesByTag[K]>;
4537
4485
  }>;
4538
4486
  /**
4539
- * The interface type for schemas created by {@link Opaque}.
4540
- * Carries the same encoded/decoded shape as `S` but replaces `Type` with `Self & Brand`,
4541
- * making the decoded value nominally distinct.
4487
+ * Type-level representation returned by {@link Opaque}.
4542
4488
  *
4543
- * @see {@link Opaque} for the constructor
4544
4489
  * @category models
4545
4490
  * @since 4.0.0
4546
4491
  */
@@ -4573,9 +4518,8 @@ export interface Opaque<Self, S extends Top, Brand> extends Bottom<Self, S["Enco
4573
4518
  */
4574
4519
  export declare function Opaque<Self, Brand = {}>(): <S extends Top>(schema: S) => Opaque<Self, S, Brand> & Omit<S, keyof Top>;
4575
4520
  /**
4576
- * The type produced by {@link instanceOf} — a declaration schema that validates class instances.
4521
+ * Type-level representation returned by {@link instanceOf}.
4577
4522
  *
4578
- * @see {@link instanceOf} for the constructor
4579
4523
  * @category models
4580
4524
  * @since 3.10.0
4581
4525
  */
@@ -4602,16 +4546,16 @@ export interface instanceOf<T, Iso = T> extends declare<T, Iso> {
4602
4546
  */
4603
4547
  export declare function instanceOf<C extends abstract new (...args: any) => any, Iso = InstanceType<C>>(constructor: C, annotations?: Annotations.Declaration<InstanceType<C>> | undefined): instanceOf<InstanceType<C>, Iso>;
4604
4548
  /**
4605
- * Constructs an `AST.Link` that describes how a value of type `T` encodes to and decodes from a `To` schema.
4549
+ * Constructs an `SchemaAST.Link` that describes how a value of type `T` encodes to and decodes from a `To` schema.
4606
4550
  * Used when building low-level AST transformations that bridge two schema types.
4607
4551
  *
4608
4552
  * @category transforming
4609
4553
  * @since 4.0.0
4610
4554
  */
4611
4555
  export declare function link<T>(): <To extends Top>(encodeTo: To, transformation: {
4612
- readonly decode: Getter.Getter<T, NoInfer<To["Type"]>>;
4613
- readonly encode: Getter.Getter<NoInfer<To["Type"]>, T>;
4614
- }) => AST.Link;
4556
+ readonly decode: SchemaGetter.Getter<T, NoInfer<To["Type"]>>;
4557
+ readonly encode: SchemaGetter.Getter<NoInfer<To["Type"]>, T>;
4558
+ }) => SchemaAST.Link;
4615
4559
  /**
4616
4560
  * Creates a custom validation filter from a predicate function.
4617
4561
  *
@@ -4667,10 +4611,10 @@ export declare function link<T>(): <To extends Top>(encodeTo: To, transformation
4667
4611
  * // at ["c"])]))
4668
4612
  * ```
4669
4613
  *
4670
- * @category Checks Constructors
4614
+ * @category constructors
4671
4615
  * @since 4.0.0
4672
4616
  */
4673
- export declare const makeFilter: <T>(filter: (input: T, ast: AST.AST, options: AST.ParseOptions) => FilterOutput, annotations?: Annotations.Filter | undefined, abort?: boolean) => AST.Filter<T>;
4617
+ export declare const makeFilter: <T>(filter: (input: T, ast: SchemaAST.AST, options: SchemaAST.ParseOptions) => FilterOutput, annotations?: Annotations.Filter | undefined, abort?: boolean) => SchemaAST.Filter<T>;
4674
4618
  /**
4675
4619
  * A single failure reported by a filter predicate. Used as the element type
4676
4620
  * of the array arm of {@link FilterOutput}, and also accepted on its own.
@@ -4678,53 +4622,53 @@ export declare const makeFilter: <T>(filter: (input: T, ast: AST.AST, options: A
4678
4622
  * **Details**
4679
4623
  *
4680
4624
  * - `string`: failure with that string as the message. Produces an
4681
- * {@link Issue.InvalidValue} wrapping the input, with the string used as
4625
+ * {@link SchemaIssue.InvalidValue} wrapping the input, with the string used as
4682
4626
  * the issue's `message` annotation.
4683
- * - {@link Issue.Issue}: a fully-formed issue, returned as-is.
4627
+ * - {@link SchemaIssue.Issue}: a fully-formed issue, returned as-is.
4684
4628
  * - `{ path, issue }`: failure attached to a nested path. `issue` is either
4685
- * a `string` (wrapped in an {@link Issue.InvalidValue}) or a full
4686
- * {@link Issue.Issue}; the result is wrapped in an {@link Issue.Pointer}
4629
+ * a `string` (wrapped in an {@link SchemaIssue.InvalidValue}) or a full
4630
+ * {@link SchemaIssue.Issue}; the result is wrapped in an {@link SchemaIssue.Pointer}
4687
4631
  * at the given `path`.
4688
4632
  *
4689
4633
  * @category models
4690
4634
  * @since 3.10.0
4691
4635
  */
4692
- export type FilterIssue = string | Issue.Issue | {
4636
+ export type FilterIssue = string | SchemaIssue.Issue | {
4693
4637
  readonly path: ReadonlyArray<PropertyKey>;
4694
- readonly issue: string | Issue.Issue;
4638
+ readonly issue: string | SchemaIssue.Issue;
4695
4639
  };
4696
4640
  /**
4697
4641
  * The value a filter predicate (see {@link makeFilter}) may return.
4698
4642
  *
4699
4643
  * **Details**
4700
4644
  *
4701
- * Each shape is normalized into an {@link Issue.Issue} (or `undefined` for
4645
+ * Each shape is normalized into an {@link SchemaIssue.Issue} (or `undefined` for
4702
4646
  * success) before being attached to the parse result:
4703
4647
  *
4704
4648
  * - `undefined`: success. The input satisfies the filter.
4705
4649
  * - `true`: success. Equivalent to `undefined`, useful when the predicate is
4706
4650
  * a plain boolean expression.
4707
- * - `false`: generic failure. Produces an {@link Issue.InvalidValue} wrapping
4651
+ * - `false`: generic failure. Produces an {@link SchemaIssue.InvalidValue} wrapping
4708
4652
  * the input, with no custom message.
4709
4653
  * - {@link FilterIssue}: a single failure. See {@link FilterIssue} for the
4710
- * shapes (`string`, {@link Issue.Issue}, or `{ path, issue }`).
4654
+ * shapes (`string`, {@link SchemaIssue.Issue}, or `{ path, issue }`).
4711
4655
  * - `ReadonlyArray<FilterIssue>`: several failures reported together. An
4712
4656
  * empty array is treated as success; a single-element array is equivalent
4713
4657
  * to returning that element directly; otherwise the entries are grouped
4714
- * into an {@link Issue.Composite}.
4658
+ * into an {@link SchemaIssue.Composite}.
4715
4659
  *
4716
4660
  * @category models
4717
4661
  * @since 3.10.0
4718
4662
  */
4719
4663
  export type FilterOutput = undefined | boolean | FilterIssue | ReadonlyArray<FilterIssue>;
4720
4664
  /**
4721
- * Groups multiple checks into a single {@link AST.FilterGroup}, applying
4665
+ * Groups multiple checks into a single {@link SchemaAST.FilterGroup}, applying
4722
4666
  * optional shared annotations to the group as a whole.
4723
4667
  *
4724
- * @category Checks Constructors
4668
+ * @category constructors
4725
4669
  * @since 4.0.0
4726
4670
  */
4727
- export declare function makeFilterGroup<T>(checks: readonly [AST.Check<T>, ...Array<AST.Check<T>>], annotations?: Annotations.Filter | undefined): AST.FilterGroup<T>;
4671
+ export declare function makeFilterGroup<T>(checks: readonly [SchemaAST.Check<T>, ...Array<SchemaAST.Check<T>>], annotations?: Annotations.Filter | undefined): SchemaAST.FilterGroup<T>;
4728
4672
  /**
4729
4673
  * Validates that a string has no leading or trailing whitespace.
4730
4674
  *
@@ -4743,7 +4687,7 @@ export declare function makeFilterGroup<T>(checks: readonly [AST.Check<T>, ...Ar
4743
4687
  * @category String checks
4744
4688
  * @since 4.0.0
4745
4689
  */
4746
- export declare function isTrimmed(annotations?: Annotations.Filter): AST.Filter<string>;
4690
+ export declare function isTrimmed(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4747
4691
  /**
4748
4692
  * Validates that a string matches the specified regular expression pattern.
4749
4693
  *
@@ -4761,7 +4705,7 @@ export declare function isTrimmed(annotations?: Annotations.Filter): AST.Filter<
4761
4705
  * @category String checks
4762
4706
  * @since 4.0.0
4763
4707
  */
4764
- export declare const isPattern: (regExp: globalThis.RegExp, annotations?: Annotations.Filter) => AST.Filter<string>;
4708
+ export declare const isPattern: (regExp: globalThis.RegExp, annotations?: Annotations.Filter) => SchemaAST.Filter<string>;
4765
4709
  /**
4766
4710
  * Validates that a string represents a finite number.
4767
4711
  *
@@ -4780,7 +4724,7 @@ export declare const isPattern: (regExp: globalThis.RegExp, annotations?: Annota
4780
4724
  * @category String checks
4781
4725
  * @since 4.0.0
4782
4726
  */
4783
- export declare const isStringFinite: (annotations?: Annotations.Filter) => AST.Filter<string>;
4727
+ export declare const isStringFinite: (annotations?: Annotations.Filter) => SchemaAST.Filter<string>;
4784
4728
  /**
4785
4729
  * Validates that a string is a signed base-10 integer literal for Effect's
4786
4730
  * BigInt string encoding.
@@ -4798,7 +4742,7 @@ export declare const isStringFinite: (annotations?: Annotations.Filter) => AST.F
4798
4742
  * @category String checks
4799
4743
  * @since 4.0.0
4800
4744
  */
4801
- export declare const isStringBigInt: (annotations?: Annotations.Filter) => AST.Filter<string>;
4745
+ export declare const isStringBigInt: (annotations?: Annotations.Filter) => SchemaAST.Filter<string>;
4802
4746
  /**
4803
4747
  * Validates that a string has the `Symbol(description)` format used by Effect's
4804
4748
  * symbol string encoding.
@@ -4811,7 +4755,7 @@ export declare const isStringBigInt: (annotations?: Annotations.Filter) => AST.F
4811
4755
  * @category String checks
4812
4756
  * @since 4.0.0
4813
4757
  */
4814
- export declare const isStringSymbol: (annotations?: Annotations.Filter) => AST.Filter<string>;
4758
+ export declare const isStringSymbol: (annotations?: Annotations.Filter) => SchemaAST.Filter<string>;
4815
4759
  /**
4816
4760
  * Validates that a string is a valid Universally Unique Identifier (UUID).
4817
4761
  * Optionally specify a version (1-8) to validate against a specific UUID version.
@@ -4832,7 +4776,7 @@ export declare const isStringSymbol: (annotations?: Annotations.Filter) => AST.F
4832
4776
  * @category String checks
4833
4777
  * @since 4.0.0
4834
4778
  */
4835
- export declare function isUUID(version?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8, annotations?: Annotations.Filter): AST.Filter<string>;
4779
+ export declare function isUUID(version?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8, annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4836
4780
  /**
4837
4781
  * Validates that a string is a valid ULID (Universally Unique Lexicographically
4838
4782
  * Sortable Identifier).
@@ -4852,7 +4796,7 @@ export declare function isUUID(version?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8, annotati
4852
4796
  * @category String checks
4853
4797
  * @since 4.0.0
4854
4798
  */
4855
- export declare function isULID(annotations?: Annotations.Filter): AST.Filter<string>;
4799
+ export declare function isULID(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4856
4800
  /**
4857
4801
  * Validates that a string is valid Base64 encoded data.
4858
4802
  *
@@ -4871,7 +4815,7 @@ export declare function isULID(annotations?: Annotations.Filter): AST.Filter<str
4871
4815
  * @category String checks
4872
4816
  * @since 4.0.0
4873
4817
  */
4874
- export declare function isBase64(annotations?: Annotations.Filter): AST.Filter<string>;
4818
+ export declare function isBase64(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4875
4819
  /**
4876
4820
  * Validates that a string is valid Base64URL encoded data (Base64 with URL-safe
4877
4821
  * characters).
@@ -4891,7 +4835,7 @@ export declare function isBase64(annotations?: Annotations.Filter): AST.Filter<s
4891
4835
  * @category String checks
4892
4836
  * @since 4.0.0
4893
4837
  */
4894
- export declare function isBase64Url(annotations?: Annotations.Filter): AST.Filter<string>;
4838
+ export declare function isBase64Url(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4895
4839
  /**
4896
4840
  * Validates at runtime that a string starts with the specified literal prefix.
4897
4841
  *
@@ -4905,7 +4849,7 @@ export declare function isBase64Url(annotations?: Annotations.Filter): AST.Filte
4905
4849
  * @category String checks
4906
4850
  * @since 4.0.0
4907
4851
  */
4908
- export declare function isStartsWith(startsWith: string, annotations?: Annotations.Filter): AST.Filter<string>;
4852
+ export declare function isStartsWith(startsWith: string, annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4909
4853
  /**
4910
4854
  * Validates at runtime that a string ends with the specified literal suffix.
4911
4855
  *
@@ -4919,7 +4863,7 @@ export declare function isStartsWith(startsWith: string, annotations?: Annotatio
4919
4863
  * @category String checks
4920
4864
  * @since 4.0.0
4921
4865
  */
4922
- export declare function isEndsWith(endsWith: string, annotations?: Annotations.Filter): AST.Filter<string>;
4866
+ export declare function isEndsWith(endsWith: string, annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4923
4867
  /**
4924
4868
  * Validates at runtime that a string contains the specified literal substring.
4925
4869
  *
@@ -4933,7 +4877,7 @@ export declare function isEndsWith(endsWith: string, annotations?: Annotations.F
4933
4877
  * @category String checks
4934
4878
  * @since 4.0.0
4935
4879
  */
4936
- export declare function isIncludes(includes: string, annotations?: Annotations.Filter): AST.Filter<string>;
4880
+ export declare function isIncludes(includes: string, annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4937
4881
  /**
4938
4882
  * Validates that a string is unchanged by JavaScript's `toUpperCase()`.
4939
4883
  *
@@ -4946,7 +4890,7 @@ export declare function isIncludes(includes: string, annotations?: Annotations.F
4946
4890
  * @category String checks
4947
4891
  * @since 4.0.0
4948
4892
  */
4949
- export declare function isUppercased(annotations?: Annotations.Filter): AST.Filter<string>;
4893
+ export declare function isUppercased(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4950
4894
  /**
4951
4895
  * Validates that a string is unchanged by JavaScript's `toLowerCase()`.
4952
4896
  *
@@ -4959,7 +4903,7 @@ export declare function isUppercased(annotations?: Annotations.Filter): AST.Filt
4959
4903
  * @category String checks
4960
4904
  * @since 4.0.0
4961
4905
  */
4962
- export declare function isLowercased(annotations?: Annotations.Filter): AST.Filter<string>;
4906
+ export declare function isLowercased(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4963
4907
  /**
4964
4908
  * Validates that the first character of a string is unchanged by
4965
4909
  * `toUpperCase()`.
@@ -4972,7 +4916,7 @@ export declare function isLowercased(annotations?: Annotations.Filter): AST.Filt
4972
4916
  * @category String checks
4973
4917
  * @since 4.0.0
4974
4918
  */
4975
- export declare function isCapitalized(annotations?: Annotations.Filter): AST.Filter<string>;
4919
+ export declare function isCapitalized(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4976
4920
  /**
4977
4921
  * Validates that the first character of a string is unchanged by
4978
4922
  * `toLowerCase()`.
@@ -4985,7 +4929,7 @@ export declare function isCapitalized(annotations?: Annotations.Filter): AST.Fil
4985
4929
  * @category String checks
4986
4930
  * @since 4.0.0
4987
4931
  */
4988
- export declare function isUncapitalized(annotations?: Annotations.Filter): AST.Filter<string>;
4932
+ export declare function isUncapitalized(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
4989
4933
  /**
4990
4934
  * Validates that a number is finite (not `Infinity`, `-Infinity`, or `NaN`).
4991
4935
  *
@@ -5004,7 +4948,7 @@ export declare function isUncapitalized(annotations?: Annotations.Filter): AST.F
5004
4948
  * @category Number checks
5005
4949
  * @since 4.0.0
5006
4950
  */
5007
- export declare function isFinite(annotations?: Annotations.Filter): AST.Filter<number>;
4951
+ export declare function isFinite(annotations?: Annotations.Filter): SchemaAST.Filter<number>;
5008
4952
  /**
5009
4953
  * Creates a greater-than (`>`) check for any ordered type from an
5010
4954
  * `Order.Order` instance.
@@ -5016,7 +4960,7 @@ export declare function makeIsGreaterThan<T>(options: {
5016
4960
  readonly order: Order.Order<T>;
5017
4961
  readonly annotate?: ((exclusiveMinimum: T) => Annotations.Filter) | undefined;
5018
4962
  readonly formatter?: Formatter<T> | undefined;
5019
- }): (exclusiveMinimum: T, annotations?: Annotations.Filter) => AST.Filter<T>;
4963
+ }): (exclusiveMinimum: T, annotations?: Annotations.Filter) => SchemaAST.Filter<T>;
5020
4964
  /**
5021
4965
  * Creates a greater-than-or-equal-to (`>=`) check for any ordered type from an
5022
4966
  * `Order.Order` instance.
@@ -5028,7 +4972,7 @@ export declare function makeIsGreaterThanOrEqualTo<T>(options: {
5028
4972
  readonly order: Order.Order<T>;
5029
4973
  readonly annotate?: ((exclusiveMinimum: T) => Annotations.Filter) | undefined;
5030
4974
  readonly formatter?: Formatter<T> | undefined;
5031
- }): (minimum: T, annotations?: Annotations.Filter) => AST.Filter<T>;
4975
+ }): (minimum: T, annotations?: Annotations.Filter) => SchemaAST.Filter<T>;
5032
4976
  /**
5033
4977
  * Creates a less-than (`<`) check for any ordered type from an `Order.Order`
5034
4978
  * instance.
@@ -5040,7 +4984,7 @@ export declare function makeIsLessThan<T>(options: {
5040
4984
  readonly order: Order.Order<T>;
5041
4985
  readonly annotate?: ((exclusiveMaximum: T) => Annotations.Filter) | undefined;
5042
4986
  readonly formatter?: Formatter<T> | undefined;
5043
- }): (exclusiveMaximum: T, annotations?: Annotations.Filter) => AST.Filter<T>;
4987
+ }): (exclusiveMaximum: T, annotations?: Annotations.Filter) => SchemaAST.Filter<T>;
5044
4988
  /**
5045
4989
  * Creates a less-than-or-equal-to (`<=`) check for any ordered type from an
5046
4990
  * `Order.Order` instance.
@@ -5052,7 +4996,7 @@ export declare function makeIsLessThanOrEqualTo<T>(options: {
5052
4996
  readonly order: Order.Order<T>;
5053
4997
  readonly annotate?: ((exclusiveMaximum: T) => Annotations.Filter) | undefined;
5054
4998
  readonly formatter?: Formatter<T> | undefined;
5055
- }): (maximum: T, annotations?: Annotations.Filter) => AST.Filter<T>;
4999
+ }): (maximum: T, annotations?: Annotations.Filter) => SchemaAST.Filter<T>;
5056
5000
  /**
5057
5001
  * Creates an inclusive or exclusive range check for any ordered type from an
5058
5002
  * `Order.Order` instance.
@@ -5074,7 +5018,7 @@ export declare function makeIsBetween<T>(deriveOptions: {
5074
5018
  readonly maximum: T;
5075
5019
  readonly exclusiveMinimum?: boolean | undefined;
5076
5020
  readonly exclusiveMaximum?: boolean | undefined;
5077
- }, annotations?: Annotations.Filter) => AST.Filter<T>;
5021
+ }, annotations?: Annotations.Filter) => SchemaAST.Filter<T>;
5078
5022
  /**
5079
5023
  * Creates a divisibility check for any numeric type from a remainder function
5080
5024
  * and a zero value.
@@ -5087,7 +5031,7 @@ export declare function makeIsMultipleOf<T>(options: {
5087
5031
  readonly zero: NoInfer<T>;
5088
5032
  readonly annotate?: ((divisor: T) => Annotations.Filter) | undefined;
5089
5033
  readonly formatter?: Formatter<T> | undefined;
5090
- }): (divisor: T, annotations?: Annotations.Filter) => AST.Filter<T>;
5034
+ }): (divisor: T, annotations?: Annotations.Filter) => SchemaAST.Filter<T>;
5091
5035
  /**
5092
5036
  * Validates that a number is greater than the specified value (exclusive).
5093
5037
  *
@@ -5106,7 +5050,7 @@ export declare function makeIsMultipleOf<T>(options: {
5106
5050
  * @category Number checks
5107
5051
  * @since 4.0.0
5108
5052
  */
5109
- export declare const isGreaterThan: (exclusiveMinimum: number, annotations?: Annotations.Filter) => AST.Filter<number>;
5053
+ export declare const isGreaterThan: (exclusiveMinimum: number, annotations?: Annotations.Filter) => SchemaAST.Filter<number>;
5110
5054
  /**
5111
5055
  * Validates that a number is greater than or equal to the specified value
5112
5056
  * (inclusive).
@@ -5125,7 +5069,7 @@ export declare const isGreaterThan: (exclusiveMinimum: number, annotations?: Ann
5125
5069
  * @category Number checks
5126
5070
  * @since 4.0.0
5127
5071
  */
5128
- export declare const isGreaterThanOrEqualTo: (minimum: number, annotations?: Annotations.Filter) => AST.Filter<number>;
5072
+ export declare const isGreaterThanOrEqualTo: (minimum: number, annotations?: Annotations.Filter) => SchemaAST.Filter<number>;
5129
5073
  /**
5130
5074
  * Validates that a number is less than the specified value (exclusive).
5131
5075
  *
@@ -5144,7 +5088,7 @@ export declare const isGreaterThanOrEqualTo: (minimum: number, annotations?: Ann
5144
5088
  * @category Number checks
5145
5089
  * @since 4.0.0
5146
5090
  */
5147
- export declare const isLessThan: (exclusiveMaximum: number, annotations?: Annotations.Filter) => AST.Filter<number>;
5091
+ export declare const isLessThan: (exclusiveMaximum: number, annotations?: Annotations.Filter) => SchemaAST.Filter<number>;
5148
5092
  /**
5149
5093
  * Validates that a number is less than or equal to the specified value
5150
5094
  * (inclusive).
@@ -5163,7 +5107,7 @@ export declare const isLessThan: (exclusiveMaximum: number, annotations?: Annota
5163
5107
  * @category Number checks
5164
5108
  * @since 4.0.0
5165
5109
  */
5166
- export declare const isLessThanOrEqualTo: (maximum: number, annotations?: Annotations.Filter) => AST.Filter<number>;
5110
+ export declare const isLessThanOrEqualTo: (maximum: number, annotations?: Annotations.Filter) => SchemaAST.Filter<number>;
5167
5111
  /**
5168
5112
  * Validates that a number is within a specified range. The range boundaries can
5169
5113
  * be inclusive or exclusive based on the provided options.
@@ -5189,7 +5133,7 @@ export declare const isBetween: (options: {
5189
5133
  readonly maximum: number;
5190
5134
  readonly exclusiveMinimum?: boolean | undefined;
5191
5135
  readonly exclusiveMaximum?: boolean | undefined;
5192
- }, annotations?: Annotations.Filter) => AST.Filter<number>;
5136
+ }, annotations?: Annotations.Filter) => SchemaAST.Filter<number>;
5193
5137
  /**
5194
5138
  * Validates that a number is a multiple of the specified divisor.
5195
5139
  *
@@ -5207,7 +5151,7 @@ export declare const isBetween: (options: {
5207
5151
  * @category Number checks
5208
5152
  * @since 4.0.0
5209
5153
  */
5210
- export declare const isMultipleOf: (divisor: number, annotations?: Annotations.Filter) => AST.Filter<number>;
5154
+ export declare const isMultipleOf: (divisor: number, annotations?: Annotations.Filter) => SchemaAST.Filter<number>;
5211
5155
  /**
5212
5156
  * Validates that a number is a safe integer (within the safe integer range
5213
5157
  * that can be exactly represented in JavaScript).
@@ -5226,7 +5170,7 @@ export declare const isMultipleOf: (divisor: number, annotations?: Annotations.F
5226
5170
  * @category Integer checks
5227
5171
  * @since 4.0.0
5228
5172
  */
5229
- export declare function isInt(annotations?: Annotations.Filter): AST.Filter<number>;
5173
+ export declare function isInt(annotations?: Annotations.Filter): SchemaAST.Filter<number>;
5230
5174
  /**
5231
5175
  * Validates that a number is a 32-bit signed integer (range: -2,147,483,648 to
5232
5176
  * 2,147,483,647).
@@ -5246,7 +5190,7 @@ export declare function isInt(annotations?: Annotations.Filter): AST.Filter<numb
5246
5190
  * @category Integer checks
5247
5191
  * @since 4.0.0
5248
5192
  */
5249
- export declare function isInt32(annotations?: Annotations.Filter): AST.FilterGroup<number>;
5193
+ export declare function isInt32(annotations?: Annotations.Filter): SchemaAST.FilterGroup<number>;
5250
5194
  /**
5251
5195
  * Validates that a number is a 32-bit unsigned integer (range: 0 to
5252
5196
  * 4,294,967,295).
@@ -5266,7 +5210,7 @@ export declare function isInt32(annotations?: Annotations.Filter): AST.FilterGro
5266
5210
  * @category Integer checks
5267
5211
  * @since 4.0.0
5268
5212
  */
5269
- export declare function isUint32(annotations?: Annotations.Filter): AST.FilterGroup<number>;
5213
+ export declare function isUint32(annotations?: Annotations.Filter): SchemaAST.FilterGroup<number>;
5270
5214
  /**
5271
5215
  * Validates that a Date object represents a valid date (not an invalid date
5272
5216
  * like `new Date("invalid")`).
@@ -5286,7 +5230,7 @@ export declare function isUint32(annotations?: Annotations.Filter): AST.FilterGr
5286
5230
  * @category Date checks
5287
5231
  * @since 4.0.0
5288
5232
  */
5289
- export declare function isDateValid(annotations?: Annotations.Filter): AST.Filter<globalThis.Date>;
5233
+ export declare function isDateValid(annotations?: Annotations.Filter): SchemaAST.Filter<globalThis.Date>;
5290
5234
  /**
5291
5235
  * Validates that a Date is greater than the specified value (exclusive).
5292
5236
  *
@@ -5301,7 +5245,7 @@ export declare function isDateValid(annotations?: Annotations.Filter): AST.Filte
5301
5245
  * @category Date checks
5302
5246
  * @since 4.0.0
5303
5247
  */
5304
- export declare const isGreaterThanDate: (exclusiveMinimum: globalThis.Date, annotations?: Annotations.Filter) => AST.Filter<globalThis.Date>;
5248
+ export declare const isGreaterThanDate: (exclusiveMinimum: globalThis.Date, annotations?: Annotations.Filter) => SchemaAST.Filter<globalThis.Date>;
5305
5249
  /**
5306
5250
  * Validates that a Date is greater than or equal to the specified date
5307
5251
  * (inclusive).
@@ -5322,7 +5266,7 @@ export declare const isGreaterThanDate: (exclusiveMinimum: globalThis.Date, anno
5322
5266
  * @category Date checks
5323
5267
  * @since 4.0.0
5324
5268
  */
5325
- export declare const isGreaterThanOrEqualToDate: (minimum: globalThis.Date, annotations?: Annotations.Filter) => AST.Filter<globalThis.Date>;
5269
+ export declare const isGreaterThanOrEqualToDate: (minimum: globalThis.Date, annotations?: Annotations.Filter) => SchemaAST.Filter<globalThis.Date>;
5326
5270
  /**
5327
5271
  * Validates that a Date is less than the specified value (exclusive).
5328
5272
  *
@@ -5337,7 +5281,7 @@ export declare const isGreaterThanOrEqualToDate: (minimum: globalThis.Date, anno
5337
5281
  * @category Date checks
5338
5282
  * @since 4.0.0
5339
5283
  */
5340
- export declare const isLessThanDate: (exclusiveMaximum: globalThis.Date, annotations?: Annotations.Filter) => AST.Filter<globalThis.Date>;
5284
+ export declare const isLessThanDate: (exclusiveMaximum: globalThis.Date, annotations?: Annotations.Filter) => SchemaAST.Filter<globalThis.Date>;
5341
5285
  /**
5342
5286
  * Validates that a Date is less than or equal to the specified date
5343
5287
  * (inclusive).
@@ -5358,7 +5302,7 @@ export declare const isLessThanDate: (exclusiveMaximum: globalThis.Date, annotat
5358
5302
  * @category Date checks
5359
5303
  * @since 4.0.0
5360
5304
  */
5361
- export declare const isLessThanOrEqualToDate: (maximum: globalThis.Date, annotations?: Annotations.Filter) => AST.Filter<globalThis.Date>;
5305
+ export declare const isLessThanOrEqualToDate: (maximum: globalThis.Date, annotations?: Annotations.Filter) => SchemaAST.Filter<globalThis.Date>;
5362
5306
  /**
5363
5307
  * Validates that a Date is within a specified range. The range boundaries can
5364
5308
  * be inclusive or exclusive based on the provided options.
@@ -5384,7 +5328,7 @@ export declare const isBetweenDate: (options: {
5384
5328
  readonly maximum: globalThis.Date;
5385
5329
  readonly exclusiveMinimum?: boolean | undefined;
5386
5330
  readonly exclusiveMaximum?: boolean | undefined;
5387
- }, annotations?: Annotations.Filter) => AST.Filter<globalThis.Date>;
5331
+ }, annotations?: Annotations.Filter) => SchemaAST.Filter<globalThis.Date>;
5388
5332
  /**
5389
5333
  * Validates that a BigInt is greater than the specified value (exclusive).
5390
5334
  *
@@ -5399,7 +5343,7 @@ export declare const isBetweenDate: (options: {
5399
5343
  * @category BigInt checks
5400
5344
  * @since 4.0.0
5401
5345
  */
5402
- export declare const isGreaterThanBigInt: (exclusiveMinimum: bigint, annotations?: Annotations.Filter) => AST.Filter<bigint>;
5346
+ export declare const isGreaterThanBigInt: (exclusiveMinimum: bigint, annotations?: Annotations.Filter) => SchemaAST.Filter<bigint>;
5403
5347
  /**
5404
5348
  * Validates that a BigInt is greater than or equal to the specified value
5405
5349
  * (inclusive).
@@ -5415,7 +5359,7 @@ export declare const isGreaterThanBigInt: (exclusiveMinimum: bigint, annotations
5415
5359
  * @category BigInt checks
5416
5360
  * @since 4.0.0
5417
5361
  */
5418
- export declare const isGreaterThanOrEqualToBigInt: (minimum: bigint, annotations?: Annotations.Filter) => AST.Filter<bigint>;
5362
+ export declare const isGreaterThanOrEqualToBigInt: (minimum: bigint, annotations?: Annotations.Filter) => SchemaAST.Filter<bigint>;
5419
5363
  /**
5420
5364
  * Validates that a BigInt is less than the specified value (exclusive).
5421
5365
  *
@@ -5430,7 +5374,7 @@ export declare const isGreaterThanOrEqualToBigInt: (minimum: bigint, annotations
5430
5374
  * @category BigInt checks
5431
5375
  * @since 4.0.0
5432
5376
  */
5433
- export declare const isLessThanBigInt: (exclusiveMaximum: bigint, annotations?: Annotations.Filter) => AST.Filter<bigint>;
5377
+ export declare const isLessThanBigInt: (exclusiveMaximum: bigint, annotations?: Annotations.Filter) => SchemaAST.Filter<bigint>;
5434
5378
  /**
5435
5379
  * Validates that a BigInt is less than or equal to the specified value
5436
5380
  * (inclusive).
@@ -5446,7 +5390,7 @@ export declare const isLessThanBigInt: (exclusiveMaximum: bigint, annotations?:
5446
5390
  * @category BigInt checks
5447
5391
  * @since 4.0.0
5448
5392
  */
5449
- export declare const isLessThanOrEqualToBigInt: (maximum: bigint, annotations?: Annotations.Filter) => AST.Filter<bigint>;
5393
+ export declare const isLessThanOrEqualToBigInt: (maximum: bigint, annotations?: Annotations.Filter) => SchemaAST.Filter<bigint>;
5450
5394
  /**
5451
5395
  * Validates that a BigInt is within a specified range. The range boundaries can
5452
5396
  * be inclusive or exclusive based on the provided options.
@@ -5467,14 +5411,14 @@ export declare const isBetweenBigInt: (options: {
5467
5411
  readonly maximum: bigint;
5468
5412
  readonly exclusiveMinimum?: boolean | undefined;
5469
5413
  readonly exclusiveMaximum?: boolean | undefined;
5470
- }, annotations?: Annotations.Filter) => AST.Filter<bigint>;
5414
+ }, annotations?: Annotations.Filter) => SchemaAST.Filter<bigint>;
5471
5415
  /**
5472
5416
  * Validates that a BigDecimal is greater than the specified value (exclusive).
5473
5417
  *
5474
5418
  * @category BigDecimal checks
5475
5419
  * @since 4.0.0
5476
5420
  */
5477
- export declare const isGreaterThanBigDecimal: (exclusiveMinimum: BigDecimal_.BigDecimal, annotations?: Annotations.Filter) => AST.Filter<BigDecimal_.BigDecimal>;
5421
+ export declare const isGreaterThanBigDecimal: (exclusiveMinimum: BigDecimal_.BigDecimal, annotations?: Annotations.Filter) => SchemaAST.Filter<BigDecimal_.BigDecimal>;
5478
5422
  /**
5479
5423
  * Validates that a BigDecimal is greater than or equal to the specified value
5480
5424
  * (inclusive).
@@ -5482,14 +5426,14 @@ export declare const isGreaterThanBigDecimal: (exclusiveMinimum: BigDecimal_.Big
5482
5426
  * @category BigDecimal checks
5483
5427
  * @since 4.0.0
5484
5428
  */
5485
- export declare const isGreaterThanOrEqualToBigDecimal: (minimum: BigDecimal_.BigDecimal, annotations?: Annotations.Filter) => AST.Filter<BigDecimal_.BigDecimal>;
5429
+ export declare const isGreaterThanOrEqualToBigDecimal: (minimum: BigDecimal_.BigDecimal, annotations?: Annotations.Filter) => SchemaAST.Filter<BigDecimal_.BigDecimal>;
5486
5430
  /**
5487
5431
  * Validates that a BigDecimal is less than the specified value (exclusive).
5488
5432
  *
5489
5433
  * @category BigDecimal checks
5490
5434
  * @since 4.0.0
5491
5435
  */
5492
- export declare const isLessThanBigDecimal: (exclusiveMaximum: BigDecimal_.BigDecimal, annotations?: Annotations.Filter) => AST.Filter<BigDecimal_.BigDecimal>;
5436
+ export declare const isLessThanBigDecimal: (exclusiveMaximum: BigDecimal_.BigDecimal, annotations?: Annotations.Filter) => SchemaAST.Filter<BigDecimal_.BigDecimal>;
5493
5437
  /**
5494
5438
  * Validates that a BigDecimal is less than or equal to the specified value
5495
5439
  * (inclusive).
@@ -5497,7 +5441,7 @@ export declare const isLessThanBigDecimal: (exclusiveMaximum: BigDecimal_.BigDec
5497
5441
  * @category BigDecimal checks
5498
5442
  * @since 4.0.0
5499
5443
  */
5500
- export declare const isLessThanOrEqualToBigDecimal: (maximum: BigDecimal_.BigDecimal, annotations?: Annotations.Filter) => AST.Filter<BigDecimal_.BigDecimal>;
5444
+ export declare const isLessThanOrEqualToBigDecimal: (maximum: BigDecimal_.BigDecimal, annotations?: Annotations.Filter) => SchemaAST.Filter<BigDecimal_.BigDecimal>;
5501
5445
  /**
5502
5446
  * Validates that a `BigDecimal` is within a specified range.
5503
5447
  *
@@ -5514,7 +5458,7 @@ export declare const isBetweenBigDecimal: (options: {
5514
5458
  readonly maximum: BigDecimal_.BigDecimal;
5515
5459
  readonly exclusiveMinimum?: boolean | undefined;
5516
5460
  readonly exclusiveMaximum?: boolean | undefined;
5517
- }, annotations?: Annotations.Filter) => AST.Filter<BigDecimal_.BigDecimal>;
5461
+ }, annotations?: Annotations.Filter) => SchemaAST.Filter<BigDecimal_.BigDecimal>;
5518
5462
  /**
5519
5463
  * Validates that a value has at least the specified length. Works with strings
5520
5464
  * and arrays.
@@ -5544,7 +5488,7 @@ export declare const isBetweenBigDecimal: (options: {
5544
5488
  * @category Length checks
5545
5489
  * @since 4.0.0
5546
5490
  */
5547
- export declare function isMinLength(minLength: number, annotations?: Annotations.Filter): AST.Filter<{
5491
+ export declare function isMinLength(minLength: number, annotations?: Annotations.Filter): SchemaAST.Filter<{
5548
5492
  readonly length: number;
5549
5493
  }>;
5550
5494
  /**
@@ -5566,7 +5510,7 @@ export declare function isMinLength(minLength: number, annotations?: Annotations
5566
5510
  * @category Length checks
5567
5511
  * @since 4.0.0
5568
5512
  */
5569
- export declare function isNonEmpty(annotations?: Annotations.Filter): AST.Filter<{
5513
+ export declare function isNonEmpty(annotations?: Annotations.Filter): SchemaAST.Filter<{
5570
5514
  readonly length: number;
5571
5515
  }>;
5572
5516
  /**
@@ -5589,7 +5533,7 @@ export declare function isNonEmpty(annotations?: Annotations.Filter): AST.Filter
5589
5533
  * @category Length checks
5590
5534
  * @since 4.0.0
5591
5535
  */
5592
- export declare function isMaxLength(maxLength: number, annotations?: Annotations.Filter): AST.Filter<{
5536
+ export declare function isMaxLength(maxLength: number, annotations?: Annotations.Filter): SchemaAST.Filter<{
5593
5537
  readonly length: number;
5594
5538
  }>;
5595
5539
  /**
@@ -5612,7 +5556,7 @@ export declare function isMaxLength(maxLength: number, annotations?: Annotations
5612
5556
  * @category Length checks
5613
5557
  * @since 4.0.0
5614
5558
  */
5615
- export declare function isLengthBetween(minimum: number, maximum: number, annotations?: Annotations.Filter): AST.Filter<{
5559
+ export declare function isLengthBetween(minimum: number, maximum: number, annotations?: Annotations.Filter): SchemaAST.Filter<{
5616
5560
  readonly length: number;
5617
5561
  }>;
5618
5562
  /**
@@ -5635,7 +5579,7 @@ export declare function isLengthBetween(minimum: number, maximum: number, annota
5635
5579
  * @category Size checks
5636
5580
  * @since 4.0.0
5637
5581
  */
5638
- export declare function isMinSize(minSize: number, annotations?: Annotations.Filter): AST.Filter<{
5582
+ export declare function isMinSize(minSize: number, annotations?: Annotations.Filter): SchemaAST.Filter<{
5639
5583
  readonly size: number;
5640
5584
  }>;
5641
5585
  /**
@@ -5658,7 +5602,7 @@ export declare function isMinSize(minSize: number, annotations?: Annotations.Fil
5658
5602
  * @category Size checks
5659
5603
  * @since 4.0.0
5660
5604
  */
5661
- export declare function isMaxSize(maxSize: number, annotations?: Annotations.Filter): AST.Filter<{
5605
+ export declare function isMaxSize(maxSize: number, annotations?: Annotations.Filter): SchemaAST.Filter<{
5662
5606
  readonly size: number;
5663
5607
  }>;
5664
5608
  /**
@@ -5681,7 +5625,7 @@ export declare function isMaxSize(maxSize: number, annotations?: Annotations.Fil
5681
5625
  * @category Size checks
5682
5626
  * @since 4.0.0
5683
5627
  */
5684
- export declare function isSizeBetween(minimum: number, maximum: number, annotations?: Annotations.Filter): AST.Filter<{
5628
+ export declare function isSizeBetween(minimum: number, maximum: number, annotations?: Annotations.Filter): SchemaAST.Filter<{
5685
5629
  readonly size: number;
5686
5630
  }>;
5687
5631
  /**
@@ -5705,7 +5649,7 @@ export declare function isSizeBetween(minimum: number, maximum: number, annotati
5705
5649
  * @category Object checks
5706
5650
  * @since 4.0.0
5707
5651
  */
5708
- export declare function isMinProperties(minProperties: number, annotations?: Annotations.Filter): AST.Filter<object>;
5652
+ export declare function isMinProperties(minProperties: number, annotations?: Annotations.Filter): SchemaAST.Filter<object>;
5709
5653
  /**
5710
5654
  * Validates that an object contains at most the specified number of properties.
5711
5655
  * This includes both string and symbol keys when counting properties.
@@ -5726,7 +5670,7 @@ export declare function isMinProperties(minProperties: number, annotations?: Ann
5726
5670
  * @category Object checks
5727
5671
  * @since 4.0.0
5728
5672
  */
5729
- export declare function isMaxProperties(maxProperties: number, annotations?: Annotations.Filter): AST.Filter<object>;
5673
+ export declare function isMaxProperties(maxProperties: number, annotations?: Annotations.Filter): SchemaAST.Filter<object>;
5730
5674
  /**
5731
5675
  * Validates that an object contains between `minimum` and `maximum` properties (inclusive).
5732
5676
  * This includes both string and symbol keys when counting properties.
@@ -5747,7 +5691,7 @@ export declare function isMaxProperties(maxProperties: number, annotations?: Ann
5747
5691
  * @category Object checks
5748
5692
  * @since 4.0.0
5749
5693
  */
5750
- export declare function isPropertiesLengthBetween(minimum: number, maximum: number, annotations?: Annotations.Filter): AST.Filter<object>;
5694
+ export declare function isPropertiesLengthBetween(minimum: number, maximum: number, annotations?: Annotations.Filter): SchemaAST.Filter<object>;
5751
5695
  /**
5752
5696
  * Validates that every own property key of an object satisfies the encoded side
5753
5697
  * of the provided key schema.
@@ -5764,7 +5708,7 @@ export declare function isPropertiesLengthBetween(minimum: number, maximum: numb
5764
5708
  * @category Object checks
5765
5709
  * @since 4.0.0
5766
5710
  */
5767
- export declare function isPropertyNames(keySchema: Top, annotations?: Annotations.Filter): AST.Filter<object>;
5711
+ export declare function isPropertyNames(keySchema: Top, annotations?: Annotations.Filter): SchemaAST.Filter<object>;
5768
5712
  /**
5769
5713
  * Validates that all items in an array are unique according to Effect equality.
5770
5714
  *
@@ -5780,12 +5724,11 @@ export declare function isPropertyNames(keySchema: Top, annotations?: Annotation
5780
5724
  * @category Array checks
5781
5725
  * @since 4.0.0
5782
5726
  */
5783
- export declare function isUnique<T>(annotations?: Annotations.Filter): AST.Filter<readonly T[]>;
5727
+ export declare function isUnique<T>(annotations?: Annotations.Filter): SchemaAST.Filter<readonly T[]>;
5784
5728
  /**
5785
- * Type-level representation of the `NonEmptyString` schema, which validates
5786
- * strings with a length of at least one.
5729
+ * Type-level representation of {@link NonEmptyString}.
5787
5730
  *
5788
- * @category String
5731
+ * @category string
5789
5732
  * @since 3.10.0
5790
5733
  */
5791
5734
  export interface NonEmptyString extends String {
@@ -5795,15 +5738,14 @@ export interface NonEmptyString extends String {
5795
5738
  * Schema for non-empty strings. Validates that a string has at least one
5796
5739
  * character.
5797
5740
  *
5798
- * @category String
5741
+ * @category string
5799
5742
  * @since 3.10.0
5800
5743
  */
5801
5744
  export declare const NonEmptyString: NonEmptyString;
5802
5745
  /**
5803
- * Type-level representation of the `Char` schema, which validates strings whose
5804
- * length is exactly one.
5746
+ * Type-level representation of {@link Char}.
5805
5747
  *
5806
- * @category String
5748
+ * @category string
5807
5749
  * @since 3.10.0
5808
5750
  */
5809
5751
  export interface Char extends String {
@@ -5825,26 +5767,12 @@ export interface Char extends String {
5825
5767
  * @see {@link NonEmptyString} for strings with length greater than zero
5826
5768
  * @see {@link isLengthBetween} for the underlying length check
5827
5769
  *
5828
- * @category String
5770
+ * @category string
5829
5771
  * @since 3.10.0
5830
5772
  */
5831
5773
  export declare const Char: Char;
5832
5774
  /**
5833
- * Schema for the `Option<A>` type, representing an optional value that is
5834
- * either `None` or `Some<A>`.
5835
- *
5836
- * **Example** (Option schema)
5837
- *
5838
- * ```ts
5839
- * import { Option, Schema } from "effect"
5840
- *
5841
- * const schema = Schema.Option(Schema.Number)
5842
- *
5843
- * Schema.decodeUnknownSync(schema)(Option.some(1))
5844
- * // => Some(1)
5845
- * Schema.decodeUnknownSync(schema)(Option.none())
5846
- * // => None
5847
- * ```
5775
+ * Type-level representation returned by {@link Option}.
5848
5776
  *
5849
5777
  * @category Option
5850
5778
  * @since 3.10.0
@@ -5878,8 +5806,7 @@ export type OptionIso<A extends Top> = {
5878
5806
  */
5879
5807
  export declare function Option<A extends Top>(value: A): Option<A>;
5880
5808
  /**
5881
- * Type-level representation of a schema that decodes `null` as `None` and all
5882
- * other values as `Some`.
5809
+ * Type-level representation returned by {@link OptionFromNullOr}.
5883
5810
  *
5884
5811
  * @category Option
5885
5812
  * @since 3.10.0
@@ -5892,21 +5819,15 @@ export interface OptionFromNullOr<S extends Top> extends decodeTo<Option<toType<
5892
5819
  *
5893
5820
  * **Details**
5894
5821
  *
5895
- * Decoding:
5896
- * - `null` is decoded as `None`
5897
- * - other values are decoded as `Some`
5898
- *
5899
- * Encoding:
5900
- * - `None` is encoded as `null`
5901
- * - `Some` is encoded as the value
5822
+ * Decoding maps `null` to `None` and all other values to `Some`. Encoding maps
5823
+ * `None` to `null` and maps `Some` to its value.
5902
5824
  *
5903
5825
  * @category Option
5904
5826
  * @since 3.10.0
5905
5827
  */
5906
5828
  export declare function OptionFromNullOr<S extends Top>(schema: S): OptionFromNullOr<S>;
5907
5829
  /**
5908
- * Type-level representation of a schema that decodes `undefined` as `None` and
5909
- * all other values as `Some`.
5830
+ * Type-level representation returned by {@link OptionFromUndefinedOr}.
5910
5831
  *
5911
5832
  * @category Option
5912
5833
  * @since 3.10.0
@@ -5915,25 +5836,20 @@ export interface OptionFromUndefinedOr<S extends Top> extends decodeTo<Option<to
5915
5836
  readonly "Rebuild": OptionFromUndefinedOr<S>;
5916
5837
  }
5917
5838
  /**
5918
- * Decodes an undefined-or value `T` to a required `Option<T>` value.
5839
+ * Decodes a required value that may be `undefined` to a required `Option<T>`
5840
+ * value.
5919
5841
  *
5920
5842
  * **Details**
5921
5843
  *
5922
- * Decoding:
5923
- * - `undefined` is decoded as `None`
5924
- * - other values are decoded as `Some`
5925
- *
5926
- * Encoding:
5927
- * - `None` is encoded as `undefined`
5928
- * - `Some` is encoded as the value
5844
+ * Decoding maps `undefined` to `None` and all other values to `Some`. Encoding
5845
+ * maps `None` to `undefined` and maps `Some` to its value.
5929
5846
  *
5930
5847
  * @category Option
5931
5848
  * @since 3.10.0
5932
5849
  */
5933
5850
  export declare function OptionFromUndefinedOr<S extends Top>(schema: S): OptionFromUndefinedOr<S>;
5934
5851
  /**
5935
- * Type-level representation of a schema that decodes `null` or `undefined` as
5936
- * `None` and all other values as `Some`.
5852
+ * Type-level representation returned by {@link OptionFromNullishOr}.
5937
5853
  *
5938
5854
  * @category Option
5939
5855
  * @since 3.10.0
@@ -5946,13 +5862,10 @@ export interface OptionFromNullishOr<S extends Top> extends decodeTo<Option<toTy
5946
5862
  *
5947
5863
  * **Details**
5948
5864
  *
5949
- * Decoding:
5950
- * - `null` and `undefined` are decoded as `None`
5951
- * - other values are decoded as `Some`
5952
- *
5953
- * Encoding:
5954
- * - `None` is encoded as `null` or `undefined` depending on the provided `options.onNoneEncoding` (defaults to `undefined`)
5955
- * - `Some` is encoded as the value
5865
+ * Decoding maps `null` and `undefined` to `None` and all other values to
5866
+ * `Some`. Encoding maps `None` to `null` or `undefined` depending on
5867
+ * `options.onNoneEncoding`, which defaults to `undefined`, and maps `Some` to
5868
+ * its value.
5956
5869
  *
5957
5870
  * @category Option
5958
5871
  * @since 3.10.0
@@ -5961,8 +5874,7 @@ export declare function OptionFromNullishOr<S extends Top>(schema: S, options?:
5961
5874
  onNoneEncoding: null | undefined;
5962
5875
  }): OptionFromNullishOr<S>;
5963
5876
  /**
5964
- * Type-level representation of a schema that decodes a missing object key as
5965
- * `None` and a present key as `Some`.
5877
+ * Type-level representation returned by {@link OptionFromOptionalKey}.
5966
5878
  *
5967
5879
  * @category Option
5968
5880
  * @since 4.0.0
@@ -5975,21 +5887,15 @@ export interface OptionFromOptionalKey<S extends Top> extends decodeTo<Option<to
5975
5887
  *
5976
5888
  * **Details**
5977
5889
  *
5978
- * Decoding:
5979
- * - a missing key is decoded as `None`
5980
- * - a present value is decoded as `Some`
5981
- *
5982
- * Encoding:
5983
- * - `None` is encoded as missing key
5984
- * - `Some` is encoded as the value
5890
+ * Decoding maps a missing key to `None` and a present value to `Some`.
5891
+ * Encoding maps `None` to a missing key and maps `Some` to its value.
5985
5892
  *
5986
5893
  * @category Option
5987
5894
  * @since 4.0.0
5988
5895
  */
5989
5896
  export declare function OptionFromOptionalKey<S extends Top>(schema: S): OptionFromOptionalKey<S>;
5990
5897
  /**
5991
- * Type-level representation of a schema that decodes a missing key or
5992
- * `undefined` value as `None` and other present values as `Some`.
5898
+ * Type-level representation returned by {@link OptionFromOptional}.
5993
5899
  *
5994
5900
  * @category Option
5995
5901
  * @since 4.0.0
@@ -5998,27 +5904,21 @@ export interface OptionFromOptional<S extends Top> extends decodeTo<Option<toTyp
5998
5904
  readonly "Rebuild": OptionFromOptional<S>;
5999
5905
  }
6000
5906
  /**
6001
- * Decodes an optional or `undefined` value `A` to an required `Option<A>`
5907
+ * Decodes an optional or `undefined` value `A` to a required `Option<A>`
6002
5908
  * value.
6003
5909
  *
6004
5910
  * **Details**
6005
5911
  *
6006
- * Decoding:
6007
- * - a missing key is decoded as `None`
6008
- * - a present key with an `undefined` value is decoded as `None`
6009
- * - all other values are decoded as `Some`
6010
- *
6011
- * Encoding:
6012
- * - `None` is encoded as missing key
6013
- * - `Some` is encoded as the value
5912
+ * Decoding maps a missing key or a present `undefined` value to `None`, and
5913
+ * maps all other values to `Some`. Encoding maps `None` to a missing key and
5914
+ * maps `Some` to its value.
6014
5915
  *
6015
5916
  * @category Option
6016
5917
  * @since 4.0.0
6017
5918
  */
6018
5919
  export declare function OptionFromOptional<S extends Top>(schema: S): OptionFromOptional<S>;
6019
5920
  /**
6020
- * Type-level representation of a schema that decodes a missing key, `undefined`,
6021
- * or `null` as `None` and all other present values as `Some`.
5921
+ * Type-level representation returned by {@link OptionFromOptionalNullOr}.
6022
5922
  *
6023
5923
  * @category Option
6024
5924
  * @since 4.0.0
@@ -6032,17 +5932,10 @@ export interface OptionFromOptionalNullOr<S extends Top> extends decodeTo<Option
6032
5932
  *
6033
5933
  * **Details**
6034
5934
  *
6035
- * Decoding:
6036
- * - a missing key is decoded as `None`
6037
- * - a present key with an `undefined` value is decoded as `None`
6038
- * - a present key with a `null` value is decoded as `None`
6039
- * - all other values are decoded as `Some`
6040
- *
6041
- * Encoding (controlled by `options.onNoneEncoding`):
6042
- * - `"omit"` (default): `None` is encoded as a missing key
6043
- * - `null`: `None` is encoded as `null`
6044
- * - `undefined`: `None` is encoded as `undefined`
6045
- * - `Some` is always encoded as the value
5935
+ * Decoding maps a missing key, `undefined`, or `null` to `None`, and maps all
5936
+ * other values to `Some`. Encoding maps `Some` to its value. `None` is encoded
5937
+ * according to `options.onNoneEncoding`: `"omit"` encodes a missing key,
5938
+ * `null` encodes `null`, and `undefined` encodes `undefined`.
6046
5939
  *
6047
5940
  * @category Option
6048
5941
  * @since 4.0.0
@@ -6051,8 +5944,7 @@ export declare function OptionFromOptionalNullOr<S extends Top>(schema: S, optio
6051
5944
  readonly onNoneEncoding: "omit" | null | undefined;
6052
5945
  }): OptionFromOptionalNullOr<S>;
6053
5946
  /**
6054
- * Schema for the `Result<A, E>` type, representing a computation that either
6055
- * succeeds with `A` or fails with `E`.
5947
+ * Type-level representation returned by {@link Result}.
6056
5948
  *
6057
5949
  * @category schemas
6058
5950
  * @since 4.0.0
@@ -6088,8 +5980,7 @@ export type ResultIso<A extends Top, E extends Top> = {
6088
5980
  */
6089
5981
  export declare function Result<A extends Top, E extends Top>(success: A, failure: E): Result<A, E>;
6090
5982
  /**
6091
- * Schema for the `Redacted<A>` type, providing secure handling of sensitive
6092
- * values. The inner value is hidden from error messages.
5983
+ * Type-level representation returned by {@link Redacted}.
6093
5984
  *
6094
5985
  * @category Redacted
6095
5986
  * @since 3.10.0
@@ -6126,8 +6017,7 @@ export declare function Redacted<S extends Top>(value: S, options?: {
6126
6017
  readonly disallowJsonEncode?: boolean | undefined;
6127
6018
  }): Redacted<S>;
6128
6019
  /**
6129
- * Type-level representation of a schema that decodes a raw value with the
6130
- * provided schema and wraps the result in `Redacted`.
6020
+ * Type-level representation returned by {@link RedactedFromValue}.
6131
6021
  *
6132
6022
  * @category Redacted
6133
6023
  * @since 4.0.0
@@ -6156,22 +6046,7 @@ export declare function RedactedFromValue<S extends Top>(value: S, options?: {
6156
6046
  readonly disallowEncode?: boolean | undefined;
6157
6047
  }): RedactedFromValue<S>;
6158
6048
  /**
6159
- * Schema for a single `Cause.Reason`, representing one reason a fiber may fail:
6160
- * a typed error (`Fail`), an unexpected defect (`Die`), or an interrupt
6161
- * (`Interrupt`).
6162
- *
6163
- * **When to use**
6164
- *
6165
- * Use as the schema type when generic code needs to retain the typed failure
6166
- * and defect schemas for a single cause reason.
6167
- *
6168
- * **Details**
6169
- *
6170
- * The `error` schema validates typed failures and the `defect` schema validates
6171
- * unexpected defects.
6172
- *
6173
- * @see {@link CauseReason} for constructing this schema type
6174
- * @see {@link CauseReasonIso} for the ISO shape of each cause reason
6049
+ * Type-level representation returned by {@link CauseReason}.
6175
6050
  *
6176
6051
  * @category CauseReason
6177
6052
  * @since 4.0.0
@@ -6208,8 +6083,8 @@ export type CauseReasonIso<E extends Top, D extends Top> = {
6208
6083
  *
6209
6084
  * **When to use**
6210
6085
  *
6211
- * Use to validate, transform, or serialize individual `Cause.Reason` values
6212
- * when typed failures and unexpected defects need separate schemas.
6086
+ * Use when serializing or decoding individual cause reasons separately from a
6087
+ * full failure cause, with distinct schemas for typed errors and defects.
6213
6088
  *
6214
6089
  * **Details**
6215
6090
  *
@@ -6224,21 +6099,7 @@ export type CauseReasonIso<E extends Top, D extends Top> = {
6224
6099
  */
6225
6100
  export declare function CauseReason<E extends Top, D extends Top>(error: E, defect: D): CauseReason<E, D>;
6226
6101
  /**
6227
- * Schema for `Cause` values, represented as an ordered collection of failure
6228
- * reasons combining typed errors, defects, and interrupts.
6229
- *
6230
- * **When to use**
6231
- *
6232
- * Use as the schema type when generic code needs to retain the typed failure
6233
- * and defect schemas for a full cause.
6234
- *
6235
- * **Details**
6236
- *
6237
- * The `error` schema validates typed failures and the `defect` schema validates
6238
- * unexpected defects.
6239
- *
6240
- * @see {@link Cause} for constructing this schema type
6241
- * @see {@link CauseIso} for the ordered array representation used by the schema ISO
6102
+ * Type-level representation returned by {@link Cause}.
6242
6103
  *
6243
6104
  * @category Cause
6244
6105
  * @since 3.10.0
@@ -6287,7 +6148,7 @@ export type CauseIso<E extends Top, D extends Top> = ReadonlyArray<CauseReasonIs
6287
6148
  */
6288
6149
  export declare function Cause<E extends Top, D extends Top>(error: E, defect: D): Cause<E, D>;
6289
6150
  /**
6290
- * Type-level representation of the schema for JavaScript `Error` instances.
6151
+ * Type-level representation of {@link Error}.
6291
6152
  *
6292
6153
  * @category Error
6293
6154
  * @since 4.0.0
@@ -6324,8 +6185,7 @@ export declare const Error: Error;
6324
6185
  */
6325
6186
  export declare const ErrorWithStack: Error;
6326
6187
  /**
6327
- * Type-level representation of the `Defect` schema, which accepts JavaScript
6328
- * `Error` values and arbitrary unknown defect values.
6188
+ * Type-level representation of {@link Defect}.
6329
6189
  *
6330
6190
  * @category Defect
6331
6191
  * @since 3.10.0
@@ -6362,8 +6222,7 @@ export declare const Defect: Defect;
6362
6222
  */
6363
6223
  export declare const DefectWithStack: Defect;
6364
6224
  /**
6365
- * Schema for `Exit` values, representing either a success with value `A` or a
6366
- * failure with a `Cause` containing typed errors and defects.
6225
+ * Type-level representation returned by {@link Exit}.
6367
6226
  *
6368
6227
  * @category Exit
6369
6228
  * @since 3.10.0
@@ -6396,22 +6255,17 @@ export type ExitIso<A extends Top, E extends Top, D extends Top> = {
6396
6255
  * Creates a schema for `Exit` values using schemas for the success value, typed
6397
6256
  * failure, and unexpected defect channels.
6398
6257
  *
6258
+ * **When to use**
6259
+ *
6260
+ * Use when serializing or validating an effect outcome where success, typed
6261
+ * failure, and defects each need their own schema.
6262
+ *
6399
6263
  * @category Exit
6400
6264
  * @since 3.10.0
6401
6265
  */
6402
6266
  export declare function Exit<A extends Top, E extends Top, D extends Top>(value: A, error: E, defect: D): Exit<A, E, D>;
6403
6267
  /**
6404
- * Type-level representation of a `ReadonlyMap` schema whose keys and values are
6405
- * validated by the provided schemas.
6406
- *
6407
- * **When to use**
6408
- *
6409
- * Use as a type annotation for a `ReadonlyMap` schema when exposing or returning
6410
- * the schema while preserving its key schema, value schema, and ISO
6411
- * representation.
6412
- *
6413
- * @see {@link ReadonlyMap} for constructing this schema type from key and value schemas
6414
- * @see {@link ReadonlyMapIso} for the readonly tuple-array ISO representation used by this schema
6268
+ * Type-level representation returned by {@link ReadonlyMap}.
6415
6269
  *
6416
6270
  * @category ReadonlyMap
6417
6271
  * @since 4.0.0
@@ -6438,8 +6292,7 @@ export type ReadonlyMapIso<Key extends Top, Value extends Top> = ReadonlyArray<r
6438
6292
  */
6439
6293
  export declare function ReadonlyMap<Key extends Top, Value extends Top>(key: Key, value: Value): $ReadonlyMap<Key, Value>;
6440
6294
  /**
6441
- * Schema for an Effect `HashMap` where keys and values must conform to the
6442
- * provided schemas.
6295
+ * Type-level representation returned by {@link HashMap}.
6443
6296
  *
6444
6297
  * @category HashMap
6445
6298
  * @since 3.10.0
@@ -6465,16 +6318,7 @@ export type HashMapIso<Key extends Top, Value extends Top> = ReadonlyArray<reado
6465
6318
  */
6466
6319
  export declare function HashMap<Key extends Top, Value extends Top>(key: Key, value: Value): HashMap<Key, Value>;
6467
6320
  /**
6468
- * Type-level representation of a `ReadonlySet` schema whose values are validated
6469
- * by the provided element schema.
6470
- *
6471
- * **When to use**
6472
- *
6473
- * Use to name or constrain the schema type produced by `ReadonlySet` when
6474
- * generic code needs to retain the element schema type.
6475
- *
6476
- * @see {@link ReadonlySet} for constructing this schema type
6477
- * @see {@link ReadonlySetIso} for the array representation used by this schema's ISO
6321
+ * Type-level representation returned by {@link ReadonlySet}.
6478
6322
  *
6479
6323
  * @category ReadonlySet
6480
6324
  * @since 4.0.0
@@ -6499,8 +6343,7 @@ export type ReadonlySetIso<Value extends Top> = ReadonlyArray<Value["Iso"]>;
6499
6343
  */
6500
6344
  export declare function ReadonlySet<Value extends Top>(value: Value): $ReadonlySet<Value>;
6501
6345
  /**
6502
- * Schema for an Effect `HashSet` where values must conform to the provided
6503
- * schema.
6346
+ * Type-level representation returned by {@link HashSet}.
6504
6347
  *
6505
6348
  * @category HashSet
6506
6349
  * @since 3.10.0
@@ -6525,8 +6368,7 @@ export type HashSetIso<Value extends Top> = ReadonlyArray<Value["Iso"]>;
6525
6368
  */
6526
6369
  export declare function HashSet<Value extends Top>(value: Value): HashSet<Value>;
6527
6370
  /**
6528
- * Schema for an Effect `Chunk` (immutable array-like collection) where values
6529
- * must conform to the provided schema.
6371
+ * Type-level representation returned by {@link Chunk}.
6530
6372
  *
6531
6373
  * @category Chunk
6532
6374
  * @since 3.10.0
@@ -6558,7 +6400,7 @@ export type ChunkIso<Value extends Top> = ReadonlyArray<Value["Iso"]>;
6558
6400
  */
6559
6401
  export declare function Chunk<Value extends Top>(value: Value): Chunk<Value>;
6560
6402
  /**
6561
- * Type-level representation of the schema for JavaScript `RegExp` instances.
6403
+ * Type-level representation of {@link RegExp}.
6562
6404
  *
6563
6405
  * @category RegExp
6564
6406
  * @since 4.0.0
@@ -6578,7 +6420,7 @@ export interface RegExp extends instanceOf<globalThis.RegExp> {
6578
6420
  */
6579
6421
  export declare const RegExp: RegExp;
6580
6422
  /**
6581
- * Type-level representation of the schema for JavaScript `URL` instances.
6423
+ * Type-level representation of {@link URL}.
6582
6424
  *
6583
6425
  * @category URL
6584
6426
  * @since 4.0.0
@@ -6600,8 +6442,7 @@ export interface URL extends instanceOf<globalThis.URL> {
6600
6442
  */
6601
6443
  export declare const URL: URL;
6602
6444
  /**
6603
- * Type-level representation of a transformation schema that decodes valid URL
6604
- * strings into JavaScript `URL` instances.
6445
+ * Type-level representation of {@link URLFromString}.
6605
6446
  *
6606
6447
  * @category URL
6607
6448
  * @since 4.0.0
@@ -6625,8 +6466,7 @@ export interface URLFromString extends decodeTo<URL, String> {
6625
6466
  */
6626
6467
  export declare const URLFromString: URLFromString;
6627
6468
  /**
6628
- * Type-level representation of the schema for JavaScript `Date` instances,
6629
- * including invalid dates.
6469
+ * Type-level representation of {@link Date}.
6630
6470
  *
6631
6471
  * @category Date
6632
6472
  * @since 4.0.0
@@ -6639,8 +6479,8 @@ export interface Date extends instanceOf<globalThis.Date> {
6639
6479
  *
6640
6480
  * **When to use**
6641
6481
  *
6642
- * Use to validate in-memory values that must already be JavaScript `Date`
6643
- * instances.
6482
+ * Use to validate in-memory values that must already be JavaScript date
6483
+ * objects.
6644
6484
  *
6645
6485
  * **Details**
6646
6486
  *
@@ -6664,8 +6504,7 @@ export interface Date extends instanceOf<globalThis.Date> {
6664
6504
  */
6665
6505
  export declare const Date: Date;
6666
6506
  /**
6667
- * Type-level representation of a transformation schema that decodes strings into
6668
- * JavaScript `Date` instances.
6507
+ * Type-level representation of {@link DateFromString}.
6669
6508
  *
6670
6509
  * @category Date
6671
6510
  * @since 3.10.0
@@ -6702,8 +6541,7 @@ export interface DateFromString extends decodeTo<Date, String> {
6702
6541
  */
6703
6542
  export declare const DateFromString: DateFromString;
6704
6543
  /**
6705
- * Type-level representation of the `DateValid` schema, which accepts only valid
6706
- * JavaScript `Date` instances.
6544
+ * Type-level representation of {@link DateValid}.
6707
6545
  *
6708
6546
  * @category Date
6709
6547
  * @since 4.0.0
@@ -6724,7 +6562,7 @@ export interface DateValid extends Date {
6724
6562
  */
6725
6563
  export declare const DateValid: DateValid;
6726
6564
  /**
6727
- * Type-level representation of the schema for Effect `Duration` values.
6565
+ * Type-level representation of {@link Duration}.
6728
6566
  *
6729
6567
  * @category Duration
6730
6568
  * @since 3.10.0
@@ -6755,8 +6593,7 @@ export interface Duration extends declare<Duration_.Duration> {
6755
6593
  */
6756
6594
  export declare const Duration: Duration;
6757
6595
  /**
6758
- * Type-level representation of a transformation schema that decodes strings
6759
- * accepted by `Duration.fromInput` into `Duration` values.
6596
+ * Type-level representation of {@link DurationFromString}.
6760
6597
  *
6761
6598
  * @category Duration
6762
6599
  * @since 4.0.0
@@ -6781,8 +6618,7 @@ export interface DurationFromString extends decodeTo<Duration, String> {
6781
6618
  */
6782
6619
  export declare const DurationFromString: DurationFromString;
6783
6620
  /**
6784
- * Type-level representation of a transformation schema that decodes non-negative
6785
- * nanosecond `bigint` values into `Duration` values.
6621
+ * Type-level representation of {@link DurationFromNanos}.
6786
6622
  *
6787
6623
  * @category Duration
6788
6624
  * @since 3.10.0
@@ -6809,8 +6645,7 @@ export interface DurationFromNanos extends decodeTo<Duration, BigInt> {
6809
6645
  */
6810
6646
  export declare const DurationFromNanos: DurationFromNanos;
6811
6647
  /**
6812
- * Type-level representation of a transformation schema that decodes
6813
- * non-negative millisecond numbers into `Duration` values.
6648
+ * Type-level representation of {@link DurationFromMillis}.
6814
6649
  *
6815
6650
  * @category Duration
6816
6651
  * @since 3.10.0
@@ -6838,7 +6673,7 @@ export interface DurationFromMillis extends decodeTo<Duration, Number> {
6838
6673
  */
6839
6674
  export declare const DurationFromMillis: DurationFromMillis;
6840
6675
  /**
6841
- * Type-level representation of the schema for Effect `BigDecimal` values.
6676
+ * Type-level representation of {@link BigDecimal}.
6842
6677
  *
6843
6678
  * @category BigDecimal
6844
6679
  * @since 3.10.0
@@ -6851,7 +6686,7 @@ export interface BigDecimal extends declare<BigDecimal_.BigDecimal> {
6851
6686
  *
6852
6687
  * **When to use**
6853
6688
  *
6854
- * Use when values are already Effect decimal instances and need schema
6689
+ * Use when you already have Effect decimal instances and need schema
6855
6690
  * validation, formatting, equivalence, and JSON string serialization.
6856
6691
  *
6857
6692
  * **Details**
@@ -6867,8 +6702,7 @@ export interface BigDecimal extends declare<BigDecimal_.BigDecimal> {
6867
6702
  */
6868
6703
  export declare const BigDecimal: BigDecimal;
6869
6704
  /**
6870
- * Type-level representation of a transformation schema that decodes strings into
6871
- * `BigDecimal` values.
6705
+ * Type-level representation of {@link BigDecimalFromString}.
6872
6706
  *
6873
6707
  * @category BigDecimal
6874
6708
  * @since 4.0.0
@@ -6905,10 +6739,9 @@ export interface BigDecimalFromString extends decodeTo<BigDecimal, String> {
6905
6739
  */
6906
6740
  export declare const BigDecimalFromString: BigDecimalFromString;
6907
6741
  /**
6908
- * Type-level representation of a transformation schema that decodes
6909
- * JSON-encoded strings into `unknown` values.
6742
+ * Type-level representation of {@link UnknownFromJsonString}.
6910
6743
  *
6911
- * @category JSON
6744
+ * @category models
6912
6745
  * @since 4.0.0
6913
6746
  */
6914
6747
  export interface UnknownFromJsonString extends fromJsonString<Unknown> {
@@ -6936,15 +6769,14 @@ export interface UnknownFromJsonString extends fromJsonString<Unknown> {
6936
6769
  * // => { a: 1, b: 2 }
6937
6770
  * ```
6938
6771
  *
6939
- * @category JSON
6772
+ * @category schemas
6940
6773
  * @since 4.0.0
6941
6774
  */
6942
6775
  export declare const UnknownFromJsonString: UnknownFromJsonString;
6943
6776
  /**
6944
- * Type-level representation of a schema that parses a JSON string and then
6945
- * decodes the parsed value with the provided schema.
6777
+ * Type-level representation returned by {@link fromJsonString}.
6946
6778
  *
6947
- * @category JSON
6779
+ * @category models
6948
6780
  * @since 4.0.0
6949
6781
  */
6950
6782
  export interface fromJsonString<S extends Top> extends decodeTo<S, String> {
@@ -7013,14 +6845,14 @@ export interface fromJsonString<S extends Top> extends decodeTo<S, String> {
7013
6845
  * // }
7014
6846
  * ```
7015
6847
  *
7016
- * @category JSON
6848
+ * @category constructors
7017
6849
  * @since 4.0.0
7018
6850
  */
7019
6851
  export declare function fromJsonString<S extends Top>(schema: S): fromJsonString<S>;
7020
6852
  /**
7021
- * Type-level representation of the schema for JavaScript `File` instances.
6853
+ * Type-level representation of {@link File}.
7022
6854
  *
7023
- * @category File
6855
+ * @category file
7024
6856
  * @since 4.0.0
7025
6857
  */
7026
6858
  export interface File extends instanceOf<globalThis.File> {
@@ -7034,12 +6866,12 @@ export interface File extends instanceOf<globalThis.File> {
7034
6866
  * The default JSON serializer encodes a `File` as `{ data, type, name, lastModified }`
7035
6867
  * where `data` is base64-encoded.
7036
6868
  *
7037
- * @category File
6869
+ * @category file
7038
6870
  * @since 4.0.0
7039
6871
  */
7040
6872
  export declare const File: File;
7041
6873
  /**
7042
- * Type-level representation of the schema for JavaScript `FormData` instances.
6874
+ * Type-level representation of {@link FormData}.
7043
6875
  *
7044
6876
  * @category FormData
7045
6877
  * @since 4.0.0
@@ -7060,8 +6892,7 @@ export interface FormData extends instanceOf<globalThis.FormData> {
7060
6892
  */
7061
6893
  export declare const FormData: FormData;
7062
6894
  /**
7063
- * Type-level representation of a schema that parses `FormData` into a tree
7064
- * record and then decodes it with the provided schema.
6895
+ * Type-level representation returned by {@link fromFormData}.
7065
6896
  *
7066
6897
  * @category FormData
7067
6898
  * @since 4.0.0
@@ -7159,10 +6990,9 @@ export interface fromFormData<S extends Top> extends decodeTo<S, FormData> {
7159
6990
  */
7160
6991
  export declare function fromFormData<S extends Top>(schema: S): fromFormData<S>;
7161
6992
  /**
7162
- * Type-level representation of the schema for JavaScript `URLSearchParams`
7163
- * instances.
6993
+ * Type-level representation of {@link URLSearchParams}.
7164
6994
  *
7165
- * @category URLSearchParams
6995
+ * @category search params
7166
6996
  * @since 4.0.0
7167
6997
  */
7168
6998
  export interface URLSearchParams extends instanceOf<globalThis.URLSearchParams> {
@@ -7175,15 +7005,14 @@ export interface URLSearchParams extends instanceOf<globalThis.URLSearchParams>
7175
7005
  *
7176
7006
  * The default JSON serializer encodes a `URLSearchParams` as a query string.
7177
7007
  *
7178
- * @category URLSearchParams
7008
+ * @category search params
7179
7009
  * @since 4.0.0
7180
7010
  */
7181
7011
  export declare const URLSearchParams: URLSearchParams;
7182
7012
  /**
7183
- * Type-level representation of a schema that parses `URLSearchParams` into a
7184
- * tree record and then decodes it with the provided schema.
7013
+ * Type-level representation returned by {@link fromURLSearchParams}.
7185
7014
  *
7186
- * @category URLSearchParams
7015
+ * @category search params
7187
7016
  * @since 4.0.0
7188
7017
  */
7189
7018
  export interface fromURLSearchParams<S extends Top> extends decodeTo<S, URLSearchParams> {
@@ -7271,8 +7100,7 @@ export interface fromURLSearchParams<S extends Top> extends decodeTo<S, URLSearc
7271
7100
  */
7272
7101
  export declare function fromURLSearchParams<S extends Top>(schema: S): fromURLSearchParams<S>;
7273
7102
  /**
7274
- * Type-level representation of the `Finite` number schema, which rejects `NaN`,
7275
- * `Infinity`, and `-Infinity`.
7103
+ * Type-level representation of {@link Finite}.
7276
7104
  *
7277
7105
  * @category Number
7278
7106
  * @since 3.10.0
@@ -7288,8 +7116,7 @@ export interface Finite extends Number {
7288
7116
  */
7289
7117
  export declare const Finite: Finite;
7290
7118
  /**
7291
- * Type-level representation of the `Int` schema, which accepts only finite
7292
- * integer numbers.
7119
+ * Type-level representation of {@link Int}.
7293
7120
  *
7294
7121
  * @category Number
7295
7122
  * @since 3.10.0
@@ -7305,8 +7132,7 @@ export interface Int extends Number {
7305
7132
  */
7306
7133
  export declare const Int: Int;
7307
7134
  /**
7308
- * Type-level representation of a transformation schema that decodes strings into
7309
- * numbers using JavaScript number coercion.
7135
+ * Type-level representation of {@link NumberFromString}.
7310
7136
  *
7311
7137
  * @category Number
7312
7138
  * @since 3.10.0
@@ -7333,8 +7159,7 @@ export interface NumberFromString extends decodeTo<Finite, String> {
7333
7159
  */
7334
7160
  export declare const NumberFromString: NumberFromString;
7335
7161
  /**
7336
- * Type-level representation of a transformation schema that decodes strings into
7337
- * finite numbers.
7162
+ * Type-level representation of {@link FiniteFromString}.
7338
7163
  *
7339
7164
  * @category Number
7340
7165
  * @since 4.0.0
@@ -7359,8 +7184,7 @@ export interface FiniteFromString extends decodeTo<Finite, String> {
7359
7184
  */
7360
7185
  export declare const FiniteFromString: FiniteFromString;
7361
7186
  /**
7362
- * Type-level representation of a transformation schema that decodes strings into
7363
- * `bigint` values.
7187
+ * Type-level representation of {@link BigIntFromString}.
7364
7188
  *
7365
7189
  * @category BigInt
7366
7190
  * @since 4.0.0
@@ -7398,10 +7222,9 @@ export interface BigIntFromString extends decodeTo<BigInt, String> {
7398
7222
  */
7399
7223
  export declare const BigIntFromString: BigIntFromString;
7400
7224
  /**
7401
- * Schema interface for `Trimmed`, representing strings with no leading or
7402
- * trailing whitespace.
7225
+ * Type-level representation of {@link Trimmed}.
7403
7226
  *
7404
- * @category String
7227
+ * @category string
7405
7228
  * @since 3.10.0
7406
7229
  */
7407
7230
  export interface Trimmed extends String {
@@ -7410,15 +7233,14 @@ export interface Trimmed extends String {
7410
7233
  /**
7411
7234
  * Schema for strings that contains no leading or trailing whitespaces.
7412
7235
  *
7413
- * @category String
7236
+ * @category string
7414
7237
  * @since 3.10.0
7415
7238
  */
7416
7239
  export declare const Trimmed: Trimmed;
7417
7240
  /**
7418
- * Schema interface for `Trim`, a transformation that trims leading and trailing
7419
- * whitespace while decoding and encodes the trimmed string unchanged.
7241
+ * Type-level representation of {@link Trim}.
7420
7242
  *
7421
- * @category String
7243
+ * @category string
7422
7244
  * @since 3.10.0
7423
7245
  */
7424
7246
  export interface Trim extends decodeTo<Trimmed, String> {
@@ -7435,15 +7257,14 @@ export interface Trim extends decodeTo<Trimmed, String> {
7435
7257
  * Encoding:
7436
7258
  * - The trimmed string is encoded as is.
7437
7259
  *
7438
- * @category String
7260
+ * @category string
7439
7261
  * @since 3.10.0
7440
7262
  */
7441
7263
  export declare const Trim: Trim;
7442
7264
  /**
7443
- * Schema interface for `StringFromBase64`, a transformation between RFC4648
7444
- * base64-encoded strings and UTF-8 strings.
7265
+ * Type-level representation of {@link StringFromBase64}.
7445
7266
  *
7446
- * @category String
7267
+ * @category string
7447
7268
  * @since 3.10.0
7448
7269
  */
7449
7270
  export interface StringFromBase64 extends decodeTo<String, String> {
@@ -7460,15 +7281,14 @@ export interface StringFromBase64 extends decodeTo<String, String> {
7460
7281
  * Encoding:
7461
7282
  * - A `string` is encoded as a base64-encoded string.
7462
7283
  *
7463
- * @category String
7284
+ * @category string
7464
7285
  * @since 3.10.0
7465
7286
  */
7466
7287
  export declare const StringFromBase64: StringFromBase64;
7467
7288
  /**
7468
- * Schema interface for `StringFromBase64Url`, a transformation between URL-safe
7469
- * base64-encoded strings and UTF-8 strings.
7289
+ * Type-level representation of {@link StringFromBase64Url}.
7470
7290
  *
7471
- * @category String
7291
+ * @category string
7472
7292
  * @since 3.10.0
7473
7293
  */
7474
7294
  export interface StringFromBase64Url extends decodeTo<String, String> {
@@ -7485,15 +7305,14 @@ export interface StringFromBase64Url extends decodeTo<String, String> {
7485
7305
  * Encoding:
7486
7306
  * - A `string` is encoded as a base64 (URL) encoded string.
7487
7307
  *
7488
- * @category String
7308
+ * @category string
7489
7309
  * @since 3.10.0
7490
7310
  */
7491
7311
  export declare const StringFromBase64Url: StringFromBase64Url;
7492
7312
  /**
7493
- * Schema interface for `StringFromHex`, a transformation between hex-encoded
7494
- * strings and UTF-8 strings.
7313
+ * Type-level representation of {@link StringFromHex}.
7495
7314
  *
7496
- * @category String
7315
+ * @category string
7497
7316
  * @since 3.10.0
7498
7317
  */
7499
7318
  export interface StringFromHex extends decodeTo<String, String> {
@@ -7510,15 +7329,14 @@ export interface StringFromHex extends decodeTo<String, String> {
7510
7329
  * Encoding:
7511
7330
  * - A `string` is encoded as a hex string.
7512
7331
  *
7513
- * @category String
7332
+ * @category string
7514
7333
  * @since 3.10.0
7515
7334
  */
7516
7335
  export declare const StringFromHex: StringFromHex;
7517
7336
  /**
7518
- * Schema interface for `StringFromUriComponent`, a transformation between
7519
- * URI-component encoded strings and UTF-8 strings.
7337
+ * Type-level representation of {@link StringFromUriComponent}.
7520
7338
  *
7521
- * @category String
7339
+ * @category string
7522
7340
  * @since 3.12.0
7523
7341
  */
7524
7342
  export interface StringFromUriComponent extends decodeTo<String, String> {
@@ -7554,7 +7372,7 @@ export interface StringFromUriComponent extends decodeTo<String, String> {
7554
7372
  * // %7B%22maxItemPerPage%22%3A10%2C%22page%22%3A1%7D
7555
7373
  * ```
7556
7374
  *
7557
- * @category String
7375
+ * @category string
7558
7376
  * @since 3.12.0
7559
7377
  */
7560
7378
  export declare const StringFromUriComponent: StringFromUriComponent;
@@ -7574,7 +7392,7 @@ export declare const PropertyKey: Union<readonly [Finite, Symbol, String]>;
7574
7392
  * The result contains an `issues` array where each issue has a message and an
7575
7393
  * optional path made of property keys or keyed path segments.
7576
7394
  *
7577
- * @category StandardSchema
7395
+ * @category Standard Schema
7578
7396
  * @since 4.0.0
7579
7397
  */
7580
7398
  export declare const StandardSchemaV1FailureResult: Struct<{
@@ -7586,10 +7404,9 @@ export declare const StandardSchemaV1FailureResult: Struct<{
7586
7404
  }>>;
7587
7405
  }>;
7588
7406
  /**
7589
- * Schema interface for `BooleanFromBit`, a transformation between bit literals
7590
- * `0 | 1` and boolean values.
7407
+ * Type-level representation of {@link BooleanFromBit}.
7591
7408
  *
7592
- * @category Boolean
7409
+ * @category boolean
7593
7410
  * @since 4.0.0
7594
7411
  */
7595
7412
  export interface BooleanFromBit extends decodeTo<Boolean, Literals<readonly [0, 1]>> {
@@ -7611,13 +7428,12 @@ export interface BooleanFromBit extends decodeTo<Boolean, Literals<readonly [0,
7611
7428
  * @see {@link Boolean} for validating values that are already booleans
7612
7429
  * @see {@link Literals} for keeping bit literals instead of decoding them
7613
7430
  *
7614
- * @category Boolean
7431
+ * @category boolean
7615
7432
  * @since 4.0.0
7616
7433
  */
7617
7434
  export declare const BooleanFromBit: BooleanFromBit;
7618
7435
  /**
7619
- * Schema interface for `Uint8Array`, representing JavaScript `Uint8Array`
7620
- * instances with base64 JSON encoding.
7436
+ * Type-level representation of {@link Uint8Array}.
7621
7437
  *
7622
7438
  * @category Uint8Array
7623
7439
  * @since 4.0.0
@@ -7639,8 +7455,7 @@ export interface Uint8Array extends instanceOf<globalThis.Uint8Array<ArrayBuffer
7639
7455
  */
7640
7456
  export declare const Uint8Array: Uint8Array;
7641
7457
  /**
7642
- * Schema interface for `Uint8ArrayFromBase64`, a transformation between
7643
- * base64-encoded strings and `Uint8Array` values.
7458
+ * Type-level representation of {@link Uint8ArrayFromBase64}.
7644
7459
  *
7645
7460
  * @category Uint8Array
7646
7461
  * @since 3.10.0
@@ -7665,8 +7480,7 @@ export interface Uint8ArrayFromBase64 extends decodeTo<Uint8Array, String> {
7665
7480
  */
7666
7481
  export declare const Uint8ArrayFromBase64: Uint8ArrayFromBase64;
7667
7482
  /**
7668
- * Schema interface for `Uint8ArrayFromBase64Url`, a transformation between
7669
- * URL-safe base64-encoded strings and `Uint8Array` values.
7483
+ * Type-level representation of {@link Uint8ArrayFromBase64Url}.
7670
7484
  *
7671
7485
  * @category Uint8Array
7672
7486
  * @since 3.10.0
@@ -7691,8 +7505,7 @@ export interface Uint8ArrayFromBase64Url extends decodeTo<Uint8Array, String> {
7691
7505
  */
7692
7506
  export declare const Uint8ArrayFromBase64Url: Uint8ArrayFromBase64Url;
7693
7507
  /**
7694
- * Schema interface for `Uint8ArrayFromHex`, a transformation between
7695
- * hex-encoded strings and `Uint8Array` values.
7508
+ * Type-level representation of {@link Uint8ArrayFromHex}.
7696
7509
  *
7697
7510
  * @category Uint8Array
7698
7511
  * @since 3.10.0
@@ -7717,8 +7530,7 @@ export interface Uint8ArrayFromHex extends decodeTo<Uint8Array, String> {
7717
7530
  */
7718
7531
  export declare const Uint8ArrayFromHex: Uint8ArrayFromHex;
7719
7532
  /**
7720
- * Schema interface for `DateTimeUtc`, representing `DateTime.Utc` values with
7721
- * UTC ISO string JSON encoding.
7533
+ * Type-level representation of {@link DateTimeUtc}.
7722
7534
  *
7723
7535
  * @category DateTime
7724
7536
  * @since 3.10.0
@@ -7749,8 +7561,7 @@ export interface DateTimeUtc extends declare<DateTime.Utc> {
7749
7561
  */
7750
7562
  export declare const DateTimeUtc: DateTimeUtc;
7751
7563
  /**
7752
- * Schema interface for `DateTimeUtcFromDate`, a transformation from valid
7753
- * JavaScript `Date` values to `DateTime.Utc`.
7564
+ * Type-level representation of {@link DateTimeUtcFromDate}.
7754
7565
  *
7755
7566
  * @category DateTime
7756
7567
  * @since 3.12.0
@@ -7763,8 +7574,8 @@ export interface DateTimeUtcFromDate extends decodeTo<DateTimeUtc, Date> {
7763
7574
  *
7764
7575
  * **When to use**
7765
7576
  *
7766
- * Use when a boundary provides valid JavaScript `Date` objects but the decoded
7767
- * model should use `DateTime.Utc`.
7577
+ * Use when you need to decode valid JavaScript `Date` objects into
7578
+ * `DateTime.Utc` values.
7768
7579
  *
7769
7580
  * **Details**
7770
7581
  *
@@ -7784,8 +7595,7 @@ export interface DateTimeUtcFromDate extends decodeTo<DateTimeUtc, Date> {
7784
7595
  */
7785
7596
  export declare const DateTimeUtcFromDate: DateTimeUtcFromDate;
7786
7597
  /**
7787
- * Schema interface for `DateTimeUtcFromString`, a transformation from date-time
7788
- * strings to `DateTime.Utc`.
7598
+ * Type-level representation of {@link DateTimeUtcFromString}.
7789
7599
  *
7790
7600
  * @category DateTime
7791
7601
  * @since 4.0.0
@@ -7812,8 +7622,7 @@ export interface DateTimeUtcFromString extends decodeTo<DateTimeUtc, String> {
7812
7622
  */
7813
7623
  export declare const DateTimeUtcFromString: DateTimeUtcFromString;
7814
7624
  /**
7815
- * Schema interface for `DateTimeUtcFromMillis`, a transformation between epoch
7816
- * milliseconds and `DateTime.Utc` values.
7625
+ * Type-level representation of {@link DateTimeUtcFromMillis}.
7817
7626
  *
7818
7627
  * @category DateTime
7819
7628
  * @since 4.0.0
@@ -7837,8 +7646,7 @@ export interface DateTimeUtcFromMillis extends decodeTo<instanceOf<DateTime.Utc>
7837
7646
  */
7838
7647
  export declare const DateTimeUtcFromMillis: DateTimeUtcFromMillis;
7839
7648
  /**
7840
- * Schema interface for `TimeZoneOffset`, representing
7841
- * `DateTime.TimeZone.Offset` values encoded as offset milliseconds.
7649
+ * Type-level representation of {@link TimeZoneOffset}.
7842
7650
  *
7843
7651
  * @category DateTime
7844
7652
  * @since 3.10.0
@@ -7860,8 +7668,7 @@ export interface TimeZoneOffset extends declare<DateTime.TimeZone.Offset> {
7860
7668
  */
7861
7669
  export declare const TimeZoneOffset: TimeZoneOffset;
7862
7670
  /**
7863
- * Schema interface for `TimeZoneNamed`, representing
7864
- * `DateTime.TimeZone.Named` values encoded as IANA time zone identifiers.
7671
+ * Type-level representation of {@link TimeZoneNamed}.
7865
7672
  *
7866
7673
  * @category DateTime
7867
7674
  * @since 3.10.0
@@ -7883,8 +7690,7 @@ export interface TimeZoneNamed extends declare<DateTime.TimeZone.Named> {
7883
7690
  */
7884
7691
  export declare const TimeZoneNamed: TimeZoneNamed;
7885
7692
  /**
7886
- * Schema interface for `TimeZoneNamedFromString`, a transformation between IANA
7887
- * time zone identifier strings and `DateTime.TimeZone.Named` values.
7693
+ * Type-level representation of {@link TimeZoneNamedFromString}.
7888
7694
  *
7889
7695
  * @category DateTime
7890
7696
  * @since 4.0.0
@@ -7908,8 +7714,7 @@ export interface TimeZoneNamedFromString extends decodeTo<TimeZoneNamed, String>
7908
7714
  */
7909
7715
  export declare const TimeZoneNamedFromString: TimeZoneNamedFromString;
7910
7716
  /**
7911
- * Schema interface for `TimeZone`, representing `DateTime.TimeZone` values
7912
- * encoded as either IANA identifiers or numeric offset strings.
7717
+ * Type-level representation of {@link TimeZone}.
7913
7718
  *
7914
7719
  * @category DateTime
7915
7720
  * @since 3.10.0
@@ -7932,8 +7737,7 @@ export interface TimeZone extends declare<DateTime.TimeZone> {
7932
7737
  */
7933
7738
  export declare const TimeZone: TimeZone;
7934
7739
  /**
7935
- * Schema interface for `TimeZoneFromString`, a transformation from IANA
7936
- * identifier or offset strings to `DateTime.TimeZone` values.
7740
+ * Type-level representation of {@link TimeZoneFromString}.
7937
7741
  *
7938
7742
  * @category DateTime
7939
7743
  * @since 4.0.0
@@ -7957,8 +7761,7 @@ export interface TimeZoneFromString extends decodeTo<TimeZone, String> {
7957
7761
  */
7958
7762
  export declare const TimeZoneFromString: TimeZoneFromString;
7959
7763
  /**
7960
- * Schema interface for `DateTimeZoned`, representing `DateTime.Zoned` values
7961
- * with ISO offset or named-zone string JSON encoding.
7764
+ * Type-level representation of {@link DateTimeZoned}.
7962
7765
  *
7963
7766
  * @category DateTime
7964
7767
  * @since 3.10.0
@@ -7983,8 +7786,7 @@ export interface DateTimeZoned extends declare<DateTime.Zoned> {
7983
7786
  */
7984
7787
  export declare const DateTimeZoned: DateTimeZoned;
7985
7788
  /**
7986
- * Schema interface for `DateTimeZonedFromString`, a transformation between
7987
- * zoned date-time strings and `DateTime.Zoned` values.
7789
+ * Type-level representation of {@link DateTimeZonedFromString}.
7988
7790
  *
7989
7791
  * @category DateTime
7990
7792
  * @since 4.0.0
@@ -8008,22 +7810,14 @@ export interface DateTimeZonedFromString extends decodeTo<DateTimeZoned, String>
8008
7810
  */
8009
7811
  export declare const DateTimeZonedFromString: DateTimeZonedFromString;
8010
7812
  /**
8011
- * Interface for schema-backed classes created with {@link Class}.
8012
- *
8013
- * **Details**
8014
- *
8015
- * A `Class` is a TypeScript class whose constructor validates its input
8016
- * against a {@link Struct} schema. Instances are always structurally valid.
8017
- *
8018
- * The interface exposes the schema's `fields`, an `identifier` string, and
8019
- * helpers such as `mapFields`, `annotate`, `check`, and `extend`.
7813
+ * Type-level representation returned by {@link Class}.
8020
7814
  *
8021
7815
  * @category models
8022
7816
  * @since 3.10.0
8023
7817
  */
8024
7818
  export interface Class<Self, S extends Top & {
8025
7819
  readonly fields: Struct.Fields;
8026
- }, Inherited> extends Bottom<Self, S["Encoded"], S["DecodingServices"], S["EncodingServices"], AST.Declaration, decodeTo<declareConstructor<Self, S["Encoded"], readonly [S], S["Iso"]>, S>, RequiredKeys<S["~type.make.in"]> extends never ? void | S["~type.make.in"] : S["~type.make.in"], S["Iso"], readonly [S], Self, S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]> {
7820
+ }, Inherited> extends Bottom<Self, S["Encoded"], S["DecodingServices"], S["EncodingServices"], SchemaAST.Declaration, decodeTo<declareConstructor<Self, S["Encoded"], readonly [S], S["Iso"]>, S>, RequiredKeys<S["~type.make.in"]> extends never ? void | S["~type.make.in"] : S["~type.make.in"], S["Iso"], readonly [S], Self, S["~type.mutability"], S["~type.optionality"], S["~type.constructor.default"], S["~encoded.mutability"], S["~encoded.optionality"]> {
8027
7821
  new (...args: {} extends S["~type.make.in"] ? [props?: S["~type.make.in"], options?: MakeOptions] : [props: S["~type.make.in"], options?: MakeOptions]): S["Type"] & Inherited;
8028
7822
  readonly identifier: string;
8029
7823
  readonly fields: S["fields"];
@@ -8057,9 +7851,8 @@ type MissingSelfGeneric<Usage extends string> = `Missing \`Self\` generic - use
8057
7851
  *
8058
7852
  * **When to use**
8059
7853
  *
8060
- * Use to define a schema-backed data class when you want validated
8061
- * construction, schema-derived decoding/encoding, and class-style methods or
8062
- * inheritance.
7854
+ * Use when you need a schema-backed data class with validated construction,
7855
+ * schema-derived decoding/encoding, and class-style methods or inheritance.
8063
7856
  *
8064
7857
  * **Details**
8065
7858
  *
@@ -8118,9 +7911,8 @@ export declare const Class: {
8118
7911
  *
8119
7912
  * **When to use**
8120
7913
  *
8121
- * Use to define a schema-backed data class when you want validated
8122
- * construction, schema-derived decoding/encoding, and class-style methods or
8123
- * inheritance.
7914
+ * Use when you need a schema-backed data class with validated construction,
7915
+ * schema-derived decoding/encoding, and class-style methods or inheritance.
8124
7916
  *
8125
7917
  * **Details**
8126
7918
  *
@@ -8179,9 +7971,8 @@ export declare const Class: {
8179
7971
  *
8180
7972
  * **When to use**
8181
7973
  *
8182
- * Use to define a schema-backed data class when you want validated
8183
- * construction, schema-derived decoding/encoding, and class-style methods or
8184
- * inheritance.
7974
+ * Use when you need a schema-backed data class with validated construction,
7975
+ * schema-derived decoding/encoding, and class-style methods or inheritance.
8185
7976
  *
8186
7977
  * **Details**
8187
7978
  *
@@ -8240,9 +8031,8 @@ export declare const Class: {
8240
8031
  *
8241
8032
  * **When to use**
8242
8033
  *
8243
- * Use to define a schema-backed data class when you want validated
8244
- * construction, schema-derived decoding/encoding, and class-style methods or
8245
- * inheritance.
8034
+ * Use when you need a schema-backed data class with validated construction,
8035
+ * schema-derived decoding/encoding, and class-style methods or inheritance.
8246
8036
  *
8247
8037
  * **Details**
8248
8038
  *
@@ -8709,7 +8499,7 @@ export declare function overrideToFormatter<S extends Top>(toFormatter: () => Fo
8709
8499
  * @since 4.0.0
8710
8500
  */
8711
8501
  export declare function toFormatter<T>(schema: Schema<T>, options?: {
8712
- readonly onBefore?: ((ast: AST.AST, recur: (ast: AST.AST) => Formatter<any>) => Formatter<any> | undefined) | undefined;
8502
+ readonly onBefore?: ((ast: SchemaAST.AST, recur: (ast: SchemaAST.AST) => Formatter<any>) => Formatter<any> | undefined) | undefined;
8713
8503
  }): Formatter<T>;
8714
8504
  /**
8715
8505
  * Overrides the equivalence derivation for a schema by supplying a custom
@@ -8717,10 +8507,10 @@ export declare function toFormatter<T>(schema: Schema<T>, options?: {
8717
8507
  *
8718
8508
  * **When to use**
8719
8509
  *
8720
- * Use when the default structural equivalence derived by {@link toEquivalence}
8721
- * is not appropriate for a type.
8510
+ * Use when you need a custom equivalence instead of the default structural
8511
+ * equivalence derived by {@link toEquivalence}.
8722
8512
  *
8723
- * @category Equivalence
8513
+ * @category instances
8724
8514
  * @since 4.0.0
8725
8515
  */
8726
8516
  export declare function overrideToEquivalence<S extends Top>(toEquivalence: () => Equivalence.Equivalence<S["Type"]>): (self: S) => S["Rebuild"];
@@ -8740,7 +8530,7 @@ export declare function overrideToEquivalence<S extends Top>(toEquivalence: () =
8740
8530
  * console.log(eq({ id: 1, name: "Alice" }, { id: 2, name: "Alice" })) // false
8741
8531
  * ```
8742
8532
  *
8743
- * @category Equivalence
8533
+ * @category instances
8744
8534
  * @since 4.0.0
8745
8535
  */
8746
8536
  export declare function toEquivalence<T>(schema: Schema<T>): Equivalence.Equivalence<T>;
@@ -8756,7 +8546,7 @@ export declare function toRepresentation(schema: Top): SchemaRepresentation.Docu
8756
8546
  /**
8757
8547
  * Options for {@link toJsonSchemaDocument}.
8758
8548
  *
8759
- * @category JsonSchema
8549
+ * @category options
8760
8550
  * @since 4.0.0
8761
8551
  */
8762
8552
  export interface ToJsonSchemaOptions {
@@ -8835,7 +8625,7 @@ export interface ToJsonSchemaOptions {
8835
8625
  * properties and synthesized check descriptions; it does not change the draft
8836
8626
  * target.
8837
8627
  *
8838
- * @category JsonSchema
8628
+ * @category converting
8839
8629
  * @since 4.0.0
8840
8630
  */
8841
8631
  export declare function toJsonSchemaDocument(schema: Top, options?: ToJsonSchemaOptions): JsonSchema.Document<"draft-2020-12">;
@@ -8935,8 +8725,7 @@ export declare function toIsoSource<S extends Top>(_: S): Optic_.Iso<S["Type"],
8935
8725
  */
8936
8726
  export declare function toIsoFocus<S extends Top>(_: S): Optic_.Iso<S["Iso"], S["Iso"]>;
8937
8727
  /**
8938
- * The schema type returned by {@link overrideToCodecIso}. Carries a custom
8939
- * `Iso` type parameter and exposes the original `schema`.
8728
+ * Type-level representation returned by {@link overrideToCodecIso}.
8940
8729
  *
8941
8730
  * @category Optic
8942
8731
  * @since 4.0.0
@@ -8962,15 +8751,15 @@ export interface overrideToCodecIso<S extends Top, Iso> extends Bottom<S["Type"]
8962
8751
  * @since 4.0.0
8963
8752
  */
8964
8753
  export declare function overrideToCodecIso<S extends Top, Iso>(to: Codec<Iso>, transformation: {
8965
- readonly decode: Getter.Getter<S["Type"], Iso>;
8966
- readonly encode: Getter.Getter<Iso, S["Type"]>;
8754
+ readonly decode: SchemaGetter.Getter<S["Type"], Iso>;
8755
+ readonly encode: SchemaGetter.Getter<Iso, S["Type"]>;
8967
8756
  }): (schema: S) => overrideToCodecIso<S, Iso>;
8968
8757
  /**
8969
8758
  * Derives a JSON Patch differ from a codec. Serializes values to JSON (via
8970
8759
  * {@link toCodecJson}), computes RFC 6902 JSON Patch operations between old
8971
8760
  * and new values, and can apply patches back to the typed value.
8972
8761
  *
8973
- * @category JsonPatch
8762
+ * @category converting
8974
8763
  * @since 4.0.0
8975
8764
  */
8976
8765
  export declare function toDifferJsonPatch<T, E>(schema: Codec<T, E>): Differ<T, JsonPatch.JsonPatch>;
@@ -9007,14 +8796,14 @@ export declare function Tree<S extends Top>(node: S): Union<readonly [S, $Array<
9007
8796
  * readonly record of `string → Json`. For the corresponding schema, see the
9008
8797
  * {@link Json} const.
9009
8798
  *
9010
- * @category JSON
8799
+ * @category models
9011
8800
  * @since 4.0.0
9012
8801
  */
9013
8802
  export type Json = null | number | boolean | string | JsonArray | JsonObject;
9014
8803
  /**
9015
8804
  * A readonly array of {@link Json} values.
9016
8805
  *
9017
- * @category JSON
8806
+ * @category models
9018
8807
  * @since 4.0.0
9019
8808
  */
9020
8809
  export interface JsonArray extends ReadonlyArray<Json> {
@@ -9022,7 +8811,7 @@ export interface JsonArray extends ReadonlyArray<Json> {
9022
8811
  /**
9023
8812
  * A readonly record whose values are {@link Json} values.
9024
8813
  *
9025
- * @category JSON
8814
+ * @category models
9026
8815
  * @since 4.0.0
9027
8816
  */
9028
8817
  export interface JsonObject {
@@ -9040,7 +8829,7 @@ export interface JsonObject {
9040
8829
  * console.log(result._tag) // "Some"
9041
8830
  * ```
9042
8831
  *
9043
- * @category JSON
8832
+ * @category schemas
9044
8833
  * @since 4.0.0
9045
8834
  */
9046
8835
  export declare const Json: Codec<Json>;
@@ -9048,14 +8837,14 @@ export declare const Json: Codec<Json>;
9048
8837
  * Recursive TypeScript type for mutable JSON values: `null`, `number`,
9049
8838
  * `boolean`, `string`, mutable arrays, or mutable string-keyed records.
9050
8839
  *
9051
- * @category JSON
8840
+ * @category models
9052
8841
  * @since 4.0.0
9053
8842
  */
9054
8843
  export type MutableJson = null | number | boolean | string | MutableJsonArray | MutableJsonObject;
9055
8844
  /**
9056
8845
  * A mutable array of {@link MutableJson} values.
9057
8846
  *
9058
- * @category JSON
8847
+ * @category models
9059
8848
  * @since 4.0.0
9060
8849
  */
9061
8850
  export interface MutableJsonArray extends Array<MutableJson> {
@@ -9063,7 +8852,7 @@ export interface MutableJsonArray extends Array<MutableJson> {
9063
8852
  /**
9064
8853
  * A mutable record whose values are {@link MutableJson} values.
9065
8854
  *
9066
- * @category JSON
8855
+ * @category models
9067
8856
  * @since 4.0.0
9068
8857
  */
9069
8858
  export interface MutableJsonObject {
@@ -9073,7 +8862,7 @@ export interface MutableJsonObject {
9073
8862
  * Schema that accepts any mutable JSON-compatible value. See {@link Json} for
9074
8863
  * the immutable variant.
9075
8864
  *
9076
- * @category JSON
8865
+ * @category schemas
9077
8866
  * @since 4.0.0
9078
8867
  */
9079
8868
  export declare const MutableJson: Codec<MutableJson>;
@@ -9249,7 +9038,7 @@ export declare namespace Annotations {
9249
9038
  * filter/refinement instead.
9250
9039
  */
9251
9040
  readonly identifier?: string | undefined;
9252
- readonly parseOptions?: AST.ParseOptions | undefined;
9041
+ readonly parseOptions?: SchemaAST.ParseOptions | undefined;
9253
9042
  /**
9254
9043
  * Optional metadata used to identify or extend the filter with custom data.
9255
9044
  */
@@ -9298,14 +9087,15 @@ export declare namespace Annotations {
9298
9087
  * @since 4.0.0
9299
9088
  */
9300
9089
  interface Declaration<T, TypeParameters extends ReadonlyArray<Top> = readonly []> extends Bottom<T, TypeParameters> {
9301
- readonly toCodec?: ((typeParameters: TypeParameters.Encoded<TypeParameters>) => AST.Link) | undefined;
9302
- readonly toCodecJson?: ((typeParameters: TypeParameters.Encoded<TypeParameters>) => AST.Link) | undefined;
9303
- readonly toCodecIso?: ((typeParameters: TypeParameters.Type<TypeParameters>) => AST.Link) | undefined;
9090
+ readonly toCodec?: ((typeParameters: TypeParameters.Encoded<TypeParameters>) => SchemaAST.Link) | undefined;
9091
+ readonly toCodecJson?: ((typeParameters: TypeParameters.Encoded<TypeParameters>) => SchemaAST.Link) | undefined;
9092
+ readonly toCodecIso?: ((typeParameters: TypeParameters.Type<TypeParameters>) => SchemaAST.Link) | undefined;
9304
9093
  readonly toArbitrary?: ToArbitrary.Declaration<T, TypeParameters> | undefined;
9305
9094
  readonly toEquivalence?: ToEquivalence.Declaration<T, TypeParameters> | undefined;
9306
9095
  readonly toFormatter?: ToFormatter.Declaration<T, TypeParameters> | undefined;
9307
9096
  readonly typeConstructor?: {
9308
9097
  readonly _tag: string;
9098
+ readonly [key: string]: unknown;
9309
9099
  } | undefined;
9310
9100
  readonly generation?: {
9311
9101
  readonly runtime: string;
@@ -9711,7 +9501,7 @@ export declare namespace Annotations {
9711
9501
  };
9712
9502
  readonly isPropertyNames: {
9713
9503
  readonly _tag: "isPropertyNames";
9714
- readonly propertyNames: AST.AST;
9504
+ readonly propertyNames: SchemaAST.AST;
9715
9505
  };
9716
9506
  readonly isUnique: {
9717
9507
  readonly _tag: "isUnique";