effect-app 4.0.0-beta.27 → 4.0.0-beta.272

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 (342) hide show
  1. package/CHANGELOG.md +1275 -0
  2. package/dist/Array.d.ts +2 -1
  3. package/dist/Array.d.ts.map +1 -1
  4. package/dist/Array.js +4 -4
  5. package/dist/Chunk.d.ts.map +1 -1
  6. package/dist/Config/SecretURL.d.ts +3 -1
  7. package/dist/Config/SecretURL.d.ts.map +1 -1
  8. package/dist/Config/SecretURL.js +3 -6
  9. package/dist/Config/internal/configSecretURL.d.ts.map +1 -1
  10. package/dist/Config/internal/configSecretURL.js +2 -2
  11. package/dist/Config.d.ts +2 -0
  12. package/dist/Config.d.ts.map +1 -0
  13. package/dist/Config.js +8 -0
  14. package/dist/ConfigProvider.d.ts +2 -0
  15. package/dist/ConfigProvider.d.ts.map +1 -0
  16. package/dist/ConfigProvider.js +6 -0
  17. package/dist/{ServiceMap.d.ts → Context.d.ts} +18 -20
  18. package/dist/Context.d.ts.map +1 -0
  19. package/dist/Context.js +67 -0
  20. package/dist/Effect.d.ts +10 -9
  21. package/dist/Effect.d.ts.map +1 -1
  22. package/dist/Effect.js +5 -8
  23. package/dist/Emailer.d.ts +51 -0
  24. package/dist/Emailer.d.ts.map +1 -0
  25. package/dist/Emailer.js +7 -0
  26. package/dist/Function.d.ts.map +1 -1
  27. package/dist/Layer.d.ts +10 -6
  28. package/dist/Layer.d.ts.map +1 -1
  29. package/dist/Layer.js +3 -2
  30. package/dist/Model/Repository/Registry.d.ts +22 -0
  31. package/dist/Model/Repository/Registry.d.ts.map +1 -0
  32. package/dist/Model/Repository/Registry.js +18 -0
  33. package/dist/Model/Repository/ext.d.ts +60 -0
  34. package/dist/Model/Repository/ext.d.ts.map +1 -0
  35. package/dist/Model/Repository/ext.js +122 -0
  36. package/dist/Model/Repository/internal/internal.d.ts +63 -0
  37. package/dist/Model/Repository/internal/internal.d.ts.map +1 -0
  38. package/dist/Model/Repository/internal/internal.js +430 -0
  39. package/dist/Model/Repository/legacy.d.ts +21 -0
  40. package/dist/Model/Repository/legacy.d.ts.map +1 -0
  41. package/dist/Model/Repository/legacy.js +2 -0
  42. package/dist/Model/Repository/makeRepo.d.ts +54 -0
  43. package/dist/Model/Repository/makeRepo.d.ts.map +1 -0
  44. package/dist/Model/Repository/makeRepo.js +27 -0
  45. package/dist/Model/Repository/service.d.ts +121 -0
  46. package/dist/Model/Repository/service.d.ts.map +1 -0
  47. package/dist/Model/Repository/service.js +2 -0
  48. package/dist/Model/Repository/validation.d.ts +58 -0
  49. package/dist/Model/Repository/validation.d.ts.map +1 -0
  50. package/dist/Model/Repository/validation.js +32 -0
  51. package/dist/Model/Repository.d.ts +7 -0
  52. package/dist/Model/Repository.d.ts.map +1 -0
  53. package/dist/Model/Repository.js +7 -0
  54. package/dist/Model/dsl.d.ts +33 -0
  55. package/dist/Model/dsl.d.ts.map +1 -0
  56. package/dist/Model/dsl.js +43 -0
  57. package/dist/Model/filter/filterApi.d.ts +30 -0
  58. package/dist/Model/filter/filterApi.d.ts.map +1 -0
  59. package/dist/Model/filter/filterApi.js +2 -0
  60. package/dist/Model/filter/types/errors.d.ts +29 -0
  61. package/dist/Model/filter/types/errors.d.ts.map +1 -0
  62. package/dist/Model/filter/types/errors.js +2 -0
  63. package/dist/Model/filter/types/fields.d.ts +15 -0
  64. package/dist/Model/filter/types/fields.d.ts.map +1 -0
  65. package/dist/Model/filter/types/fields.js +2 -0
  66. package/dist/Model/filter/types/path/common.d.ts +316 -0
  67. package/dist/Model/filter/types/path/common.d.ts.map +1 -0
  68. package/dist/Model/filter/types/path/common.js +2 -0
  69. package/dist/Model/filter/types/path/eager.d.ts +94 -0
  70. package/dist/Model/filter/types/path/eager.d.ts.map +1 -0
  71. package/dist/Model/filter/types/path/eager.js +36 -0
  72. package/dist/Model/filter/types/path/index.d.ts +4 -0
  73. package/dist/Model/filter/types/path/index.d.ts.map +1 -0
  74. package/dist/Model/filter/types/path/index.js +3 -0
  75. package/dist/Model/filter/types/utils.d.ts +79 -0
  76. package/dist/Model/filter/types/utils.d.ts.map +1 -0
  77. package/dist/Model/filter/types/utils.js +2 -0
  78. package/dist/Model/filter/types/validator.d.ts +30 -0
  79. package/dist/Model/filter/types/validator.d.ts.map +1 -0
  80. package/dist/Model/filter/types/validator.js +2 -0
  81. package/dist/Model/filter/types.d.ts +5 -0
  82. package/dist/Model/filter/types.d.ts.map +1 -0
  83. package/dist/Model/filter/types.js +7 -0
  84. package/dist/Model/query/dsl.d.ts +493 -0
  85. package/dist/Model/query/dsl.d.ts.map +1 -0
  86. package/dist/Model/query/dsl.js +376 -0
  87. package/dist/Model/query/new-kid-interpreter.d.ts +136 -0
  88. package/dist/Model/query/new-kid-interpreter.d.ts.map +1 -0
  89. package/dist/Model/query/new-kid-interpreter.js +336 -0
  90. package/dist/Model/query.d.ts +15 -0
  91. package/dist/Model/query.d.ts.map +1 -0
  92. package/dist/Model/query.js +3 -0
  93. package/dist/Model.d.ts +5 -0
  94. package/dist/Model.d.ts.map +1 -0
  95. package/dist/Model.js +5 -0
  96. package/dist/NonEmptySet.d.ts +3 -1
  97. package/dist/NonEmptySet.d.ts.map +1 -1
  98. package/dist/NonEmptySet.js +2 -2
  99. package/dist/Option.d.ts +1 -0
  100. package/dist/Option.d.ts.map +1 -1
  101. package/dist/Option.js +3 -1
  102. package/dist/Pure.d.ts +7 -5
  103. package/dist/Pure.d.ts.map +1 -1
  104. package/dist/Pure.js +17 -14
  105. package/dist/QueueMaker.d.ts +13 -0
  106. package/dist/QueueMaker.d.ts.map +1 -0
  107. package/dist/QueueMaker.js +4 -0
  108. package/dist/RequestContext.d.ts +154 -0
  109. package/dist/RequestContext.d.ts.map +1 -0
  110. package/dist/RequestContext.js +54 -0
  111. package/dist/Schema/Class.d.ts +160 -19
  112. package/dist/Schema/Class.d.ts.map +1 -1
  113. package/dist/Schema/Class.js +260 -17
  114. package/dist/Schema/FastCheck.d.ts.map +1 -1
  115. package/dist/Schema/SchemaParser.d.ts +5 -0
  116. package/dist/Schema/SchemaParser.d.ts.map +1 -0
  117. package/dist/Schema/SchemaParser.js +6 -0
  118. package/dist/Schema/SpecialJsonSchema.d.ts +34 -0
  119. package/dist/Schema/SpecialJsonSchema.d.ts.map +1 -0
  120. package/dist/Schema/SpecialJsonSchema.js +118 -0
  121. package/dist/Schema/SpecialOpenApi.d.ts +32 -0
  122. package/dist/Schema/SpecialOpenApi.d.ts.map +1 -0
  123. package/dist/Schema/SpecialOpenApi.js +123 -0
  124. package/dist/Schema/brand.d.ts +4 -2
  125. package/dist/Schema/brand.d.ts.map +1 -1
  126. package/dist/Schema/brand.js +3 -1
  127. package/dist/Schema/email.d.ts.map +1 -1
  128. package/dist/Schema/email.js +7 -4
  129. package/dist/Schema/ext.d.ts +338 -55
  130. package/dist/Schema/ext.d.ts.map +1 -1
  131. package/dist/Schema/ext.js +358 -53
  132. package/dist/Schema/moreStrings.d.ts +82 -36
  133. package/dist/Schema/moreStrings.d.ts.map +1 -1
  134. package/dist/Schema/moreStrings.js +49 -42
  135. package/dist/Schema/numbers.d.ts +34 -21
  136. package/dist/Schema/numbers.d.ts.map +1 -1
  137. package/dist/Schema/numbers.js +55 -12
  138. package/dist/Schema/phoneNumber.d.ts.map +1 -1
  139. package/dist/Schema/phoneNumber.js +6 -3
  140. package/dist/Schema/strings.d.ts +18 -4
  141. package/dist/Schema/strings.d.ts.map +1 -1
  142. package/dist/Schema/strings.js +1 -5
  143. package/dist/Schema.d.ts +213 -7
  144. package/dist/Schema.d.ts.map +1 -1
  145. package/dist/Schema.js +190 -11
  146. package/dist/Set.d.ts +4 -1
  147. package/dist/Set.d.ts.map +1 -1
  148. package/dist/Set.js +3 -2
  149. package/dist/Store.d.ts +170 -0
  150. package/dist/Store.d.ts.map +1 -0
  151. package/dist/Store.js +121 -0
  152. package/dist/_ext/Array.d.ts +1 -1
  153. package/dist/_ext/Array.d.ts.map +1 -1
  154. package/dist/_ext/Array.js +4 -2
  155. package/dist/_ext/misc.d.ts +4 -1
  156. package/dist/_ext/misc.d.ts.map +1 -1
  157. package/dist/_ext/misc.js +4 -2
  158. package/dist/_ext/ord.ext.d.ts +2 -1
  159. package/dist/_ext/ord.ext.d.ts.map +1 -1
  160. package/dist/_ext/ord.ext.js +2 -2
  161. package/dist/client/InvalidationKeys.d.ts +29 -0
  162. package/dist/client/InvalidationKeys.d.ts.map +1 -0
  163. package/dist/client/InvalidationKeys.js +33 -0
  164. package/dist/client/apiClientFactory.d.ts +19 -31
  165. package/dist/client/apiClientFactory.d.ts.map +1 -1
  166. package/dist/client/apiClientFactory.js +104 -34
  167. package/dist/client/clientFor.d.ts +52 -18
  168. package/dist/client/clientFor.d.ts.map +1 -1
  169. package/dist/client/clientFor.js +9 -1
  170. package/dist/client/errors.d.ts +82 -27
  171. package/dist/client/errors.d.ts.map +1 -1
  172. package/dist/client/errors.js +75 -19
  173. package/dist/client/makeClient.d.ts +494 -32
  174. package/dist/client/makeClient.d.ts.map +1 -1
  175. package/dist/client/makeClient.js +66 -24
  176. package/dist/client.d.ts +1 -0
  177. package/dist/client.d.ts.map +1 -1
  178. package/dist/client.js +2 -1
  179. package/dist/faker.d.ts.map +1 -1
  180. package/dist/http/Request.d.ts +1 -1
  181. package/dist/http/Request.d.ts.map +1 -1
  182. package/dist/http/Request.js +2 -2
  183. package/dist/ids.d.ts +42 -14
  184. package/dist/ids.d.ts.map +1 -1
  185. package/dist/ids.js +30 -5
  186. package/dist/index.d.ts +6 -7
  187. package/dist/index.d.ts.map +1 -1
  188. package/dist/index.js +8 -8
  189. package/dist/middleware.d.ts +13 -7
  190. package/dist/middleware.d.ts.map +1 -1
  191. package/dist/middleware.js +14 -8
  192. package/dist/rpc/Invalidation.d.ts +420 -0
  193. package/dist/rpc/Invalidation.d.ts.map +1 -0
  194. package/dist/rpc/Invalidation.js +168 -0
  195. package/dist/rpc/MiddlewareMaker.d.ts +11 -7
  196. package/dist/rpc/MiddlewareMaker.d.ts.map +1 -1
  197. package/dist/rpc/MiddlewareMaker.js +59 -38
  198. package/dist/rpc/RpcContextMap.d.ts +3 -3
  199. package/dist/rpc/RpcContextMap.d.ts.map +1 -1
  200. package/dist/rpc/RpcContextMap.js +4 -4
  201. package/dist/rpc/RpcMiddleware.d.ts +14 -10
  202. package/dist/rpc/RpcMiddleware.d.ts.map +1 -1
  203. package/dist/rpc/RpcMiddleware.js +1 -1
  204. package/dist/rpc.d.ts +1 -1
  205. package/dist/rpc.d.ts.map +1 -1
  206. package/dist/rpc.js +2 -2
  207. package/dist/runtime.d.ts +19 -0
  208. package/dist/runtime.d.ts.map +1 -0
  209. package/dist/runtime.js +40 -0
  210. package/dist/setupRequest.d.ts +19 -0
  211. package/dist/setupRequest.d.ts.map +1 -0
  212. package/dist/setupRequest.js +69 -0
  213. package/dist/toast.d.ts +51 -0
  214. package/dist/toast.d.ts.map +1 -0
  215. package/dist/toast.js +34 -0
  216. package/dist/transform.d.ts +1 -1
  217. package/dist/transform.d.ts.map +1 -1
  218. package/dist/transform.js +4 -5
  219. package/dist/utils/effectify.d.ts +1 -1
  220. package/dist/utils/effectify.d.ts.map +1 -1
  221. package/dist/utils/effectify.js +2 -2
  222. package/dist/utils/extend.d.ts.map +1 -1
  223. package/dist/utils/gen.d.ts +4 -4
  224. package/dist/utils/gen.d.ts.map +1 -1
  225. package/dist/utils/logLevel.d.ts +2 -2
  226. package/dist/utils/logLevel.d.ts.map +1 -1
  227. package/dist/utils/logger.d.ts +4 -3
  228. package/dist/utils/logger.d.ts.map +1 -1
  229. package/dist/utils/logger.js +4 -4
  230. package/dist/utils.d.ts +34 -39
  231. package/dist/utils.d.ts.map +1 -1
  232. package/dist/utils.js +33 -37
  233. package/dist/validation/validators.d.ts.map +1 -1
  234. package/dist/validation.d.ts.map +1 -1
  235. package/dist/withToast.d.ts +30 -0
  236. package/dist/withToast.d.ts.map +1 -0
  237. package/dist/withToast.js +64 -0
  238. package/package.json +22 -247
  239. package/src/Array.ts +5 -5
  240. package/src/Chunk.ts +3 -3
  241. package/src/Config/SecretURL.ts +6 -3
  242. package/src/Config/internal/configSecretURL.ts +2 -2
  243. package/src/Config.ts +7 -0
  244. package/src/ConfigProvider.ts +5 -0
  245. package/src/{ServiceMap.ts → Context.ts} +56 -63
  246. package/src/Effect.ts +14 -16
  247. package/src/Emailer.ts +51 -0
  248. package/src/Inputify.type.ts +1 -1
  249. package/src/Layer.ts +11 -7
  250. package/src/Model/Repository/Registry.ts +35 -0
  251. package/src/Model/Repository/ext.ts +375 -0
  252. package/src/Model/Repository/internal/internal.ts +741 -0
  253. package/src/Model/Repository/legacy.ts +29 -0
  254. package/src/Model/Repository/makeRepo.ts +145 -0
  255. package/src/Model/Repository/service.ts +676 -0
  256. package/src/Model/Repository/validation.ts +31 -0
  257. package/src/Model/Repository.ts +6 -0
  258. package/src/Model/dsl.ts +129 -0
  259. package/src/Model/filter/filterApi.ts +60 -0
  260. package/src/Model/filter/types/errors.ts +47 -0
  261. package/src/Model/filter/types/fields.ts +50 -0
  262. package/src/Model/filter/types/path/common.ts +404 -0
  263. package/src/Model/filter/types/path/eager.ts +329 -0
  264. package/src/Model/filter/types/path/index.ts +4 -0
  265. package/src/Model/filter/types/utils.ts +128 -0
  266. package/src/Model/filter/types/validator.ts +46 -0
  267. package/src/Model/filter/types.ts +6 -0
  268. package/src/Model/query/dsl.ts +2694 -0
  269. package/src/Model/query/new-kid-interpreter.ts +484 -0
  270. package/src/Model/query.ts +13 -0
  271. package/src/Model.ts +4 -0
  272. package/src/NonEmptySet.ts +6 -4
  273. package/src/Option.ts +2 -0
  274. package/src/Pure.ts +22 -20
  275. package/src/QueueMaker.ts +19 -0
  276. package/src/RequestContext.ts +95 -0
  277. package/src/Schema/Class.ts +593 -59
  278. package/src/Schema/SchemaParser.ts +12 -0
  279. package/src/Schema/SpecialJsonSchema.ts +139 -0
  280. package/src/Schema/SpecialOpenApi.ts +130 -0
  281. package/src/Schema/brand.ts +22 -2
  282. package/src/Schema/email.ts +9 -4
  283. package/src/Schema/ext.ts +446 -91
  284. package/src/Schema/moreStrings.ts +147 -68
  285. package/src/Schema/numbers.ts +97 -28
  286. package/src/Schema/phoneNumber.ts +9 -5
  287. package/src/Schema/strings.ts +23 -14
  288. package/src/Schema.ts +389 -25
  289. package/src/Set.ts +6 -2
  290. package/src/Store.ts +277 -0
  291. package/src/_ext/Array.ts +4 -2
  292. package/src/_ext/misc.ts +4 -1
  293. package/src/_ext/ord.ext.ts +2 -1
  294. package/src/client/InvalidationKeys.ts +50 -0
  295. package/src/client/apiClientFactory.ts +234 -135
  296. package/src/client/clientFor.ts +105 -34
  297. package/src/client/errors.ts +100 -29
  298. package/src/client/makeClient.ts +594 -73
  299. package/src/client.ts +5 -4
  300. package/src/http/Request.ts +3 -3
  301. package/src/http.ts +1 -1
  302. package/src/ids.ts +33 -6
  303. package/src/index.ts +20 -23
  304. package/src/middleware.ts +13 -9
  305. package/src/rpc/Invalidation.ts +261 -0
  306. package/src/rpc/MiddlewareMaker.ts +88 -80
  307. package/src/rpc/README.md +2 -2
  308. package/src/rpc/RpcContextMap.ts +7 -6
  309. package/src/rpc/RpcMiddleware.ts +19 -13
  310. package/src/rpc.ts +4 -4
  311. package/src/runtime.ts +56 -0
  312. package/src/setupRequest.ts +134 -0
  313. package/src/toast.ts +54 -0
  314. package/src/transform.ts +4 -4
  315. package/src/utils/effectify.ts +1 -1
  316. package/src/utils/gen.ts +8 -8
  317. package/src/utils/logLevel.ts +1 -1
  318. package/src/utils/logger.ts +4 -3
  319. package/src/utils.ts +85 -158
  320. package/src/validation.ts +2 -2
  321. package/src/withToast.ts +133 -0
  322. package/test/dist/rpc.test.d.ts.map +1 -1
  323. package/test/dist/secretURL.test.d.ts.map +1 -0
  324. package/test/dist/special.test.d.ts.map +1 -0
  325. package/test/moreStrings.test.ts +1 -1
  326. package/test/rpc.test.ts +46 -6
  327. package/test/schema.test.ts +459 -30
  328. package/test/secretURL.test.ts +160 -0
  329. package/test/special.test.ts +1258 -0
  330. package/test/utils.test.ts +7 -7
  331. package/tsconfig.base.json +6 -5
  332. package/tsconfig.json +3 -1
  333. package/tsconfig.json.bak +2 -2
  334. package/tsconfig.src.json +29 -29
  335. package/tsconfig.test.json +2 -2
  336. package/dist/Operations.d.ts +0 -123
  337. package/dist/Operations.d.ts.map +0 -1
  338. package/dist/Operations.js +0 -29
  339. package/dist/ServiceMap.d.ts.map +0 -1
  340. package/dist/ServiceMap.js +0 -91
  341. package/eslint.config.mjs +0 -26
  342. package/src/Operations.ts +0 -55
@@ -1,19 +1,33 @@
1
1
  import type * as B from "effect/Brand";
2
2
  import * as S from "effect/Schema";
3
+ import type * as SchemaAST from "effect/SchemaAST";
3
4
  import type { Simplify } from "effect/Types";
5
+ import { type BrandedSchema } from "./brand.js";
4
6
  export type NonEmptyStringBrand = B.Brand<"NonEmptyString">;
5
7
  export type NonEmptyString = string & NonEmptyStringBrand;
6
- export declare const NonEmptyString: import("./ext.js").WithDefaults<S.brand<S.String, "NonEmptyString">> & S.brand<S.String, "NonEmptyString">;
8
+ export interface NonEmptyStringSchema extends BrandedSchema<S.NonEmptyString, NonEmptyString> {
9
+ (i: string, options?: SchemaAST.ParseOptions): NonEmptyString;
10
+ }
11
+ export declare const NonEmptyString: NonEmptyStringSchema;
7
12
  export interface NonEmptyString64kBrand extends Simplify<B.Brand<"NonEmptyString64k"> & NonEmptyStringBrand> {
8
13
  }
9
14
  export type NonEmptyString64k = string & NonEmptyString64kBrand;
10
- export declare const NonEmptyString64k: import("./ext.js").WithDefaults<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k">> & S.brand<S.String, "NonEmptyString" | "NonEmptyString64k">;
15
+ export interface NonEmptyString64kSchema extends BrandedSchema<S.NonEmptyString, NonEmptyString64k> {
16
+ (i: string, options?: SchemaAST.ParseOptions): NonEmptyString64k;
17
+ }
18
+ export declare const NonEmptyString64k: NonEmptyString64kSchema;
11
19
  export interface NonEmptyString2kBrand extends Simplify<B.Brand<"NonEmptyString2k"> & NonEmptyString64kBrand> {
12
20
  }
13
21
  export type NonEmptyString2k = string & NonEmptyString2kBrand;
14
- export declare const NonEmptyString2k: import("./ext.js").WithDefaults<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k">> & S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k">;
22
+ export interface NonEmptyString2kSchema extends BrandedSchema<S.NonEmptyString, NonEmptyString2k> {
23
+ (i: string, options?: SchemaAST.ParseOptions): NonEmptyString2k;
24
+ }
25
+ export declare const NonEmptyString2k: NonEmptyString2kSchema;
15
26
  export interface NonEmptyString255Brand extends Simplify<B.Brand<"NonEmptyString255"> & NonEmptyString2kBrand> {
16
27
  }
17
28
  export type NonEmptyString255 = string & NonEmptyString255Brand;
18
- export declare const NonEmptyString255: import("./ext.js").WithDefaults<S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255">> & S.brand<S.String, "NonEmptyString" | "NonEmptyString64k" | "NonEmptyString2k" | "NonEmptyString255">;
29
+ export interface NonEmptyString255Schema extends BrandedSchema<S.NonEmptyString, NonEmptyString255> {
30
+ (i: string, options?: SchemaAST.ParseOptions): NonEmptyString255;
31
+ }
32
+ export declare const NonEmptyString255: NonEmptyString255Schema;
19
33
  //# sourceMappingURL=strings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../../src/Schema/strings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,CAAC,MAAM,eAAe,CAAA;AAClC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAI5C,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;AAC3D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,mBAAmB,CAAA;AACzD,eAAO,MAAM,cAAc,4GASxB,CAAA;AAEH,MAAM,WAAW,sBAAuB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,mBAAmB,CAAC;CAAG;AAC/G,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,sBAAsB,CAAA;AAC/D,eAAO,MAAM,iBAAiB,wJAU3B,CAAA;AAEH,MAAM,WAAW,qBAAsB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,sBAAsB,CAAC;CAAG;AAChH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,qBAAqB,CAAA;AAC7D,eAAO,MAAM,gBAAgB,kMAU1B,CAAA;AAEH,MAAM,WAAW,sBAAuB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,qBAAqB,CAAC;CAAG;AACjH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,sBAAsB,CAAA;AAC/D,eAAO,MAAM,iBAAiB,8OAU3B,CAAA"}
1
+ {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../../src/Schema/strings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,CAAC,MAAM,cAAc,CAAA;AACtC,OAAO,KAAK,CAAC,MAAM,eAAe,CAAA;AAClC,OAAO,KAAK,KAAK,SAAS,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,KAAK,aAAa,EAAsB,MAAM,YAAY,CAAA;AAGnE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAA;AAC3D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,mBAAmB,CAAA;AACzD,MAAM,WAAW,oBAAqB,SAAQ,aAAa,CAAC,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC;IAC3F,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,YAAY,GAAG,cAAc,CAAA;CAC9D;AACD,eAAO,MAAM,cAAc,EAAE,oBAQ1B,CAAA;AAEH,MAAM,WAAW,sBAAuB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,mBAAmB,CAAC;CAAG;AAC/G,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,sBAAsB,CAAA;AAC/D,MAAM,WAAW,uBAAwB,SAAQ,aAAa,CAAC,CAAC,CAAC,cAAc,EAAE,iBAAiB,CAAC;IACjG,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,YAAY,GAAG,iBAAiB,CAAA;CACjE;AACD,eAAO,MAAM,iBAAiB,EAAE,uBAS7B,CAAA;AAEH,MAAM,WAAW,qBAAsB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,sBAAsB,CAAC;CAAG;AAChH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,qBAAqB,CAAA;AAC7D,MAAM,WAAW,sBAAuB,SAAQ,aAAa,CAAC,CAAC,CAAC,cAAc,EAAE,gBAAgB,CAAC;IAC/F,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,YAAY,GAAG,gBAAgB,CAAA;CAChE;AACD,eAAO,MAAM,gBAAgB,EAAE,sBAS5B,CAAA;AAEH,MAAM,WAAW,sBAAuB,SAAQ,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,GAAG,qBAAqB,CAAC;CAAG;AACjH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,sBAAsB,CAAA;AAC/D,MAAM,WAAW,uBAAwB,SAAQ,aAAa,CAAC,CAAC,CAAC,cAAc,EAAE,iBAAiB,CAAC;IACjG,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,YAAY,GAAG,iBAAiB,CAAA;CACjE;AACD,eAAO,MAAM,iBAAiB,EAAE,uBAS7B,CAAA"}
@@ -5,28 +5,24 @@ export const NonEmptyString = S
5
5
  .NonEmptyString
6
6
  .pipe(fromBrand(nominal(), {
7
7
  identifier: "NonEmptyString",
8
- title: "NonEmptyString",
9
8
  jsonSchema: {}
10
9
  }), withDefaultMake);
11
10
  export const NonEmptyString64k = S
12
11
  .NonEmptyString
13
12
  .pipe(S.check(S.isMaxLength(64 * 1024)), fromBrand(nominal(), {
14
13
  identifier: "NonEmptyString64k",
15
- title: "NonEmptyString64k",
16
14
  jsonSchema: {}
17
15
  }), withDefaultMake);
18
16
  export const NonEmptyString2k = S
19
17
  .NonEmptyString
20
18
  .pipe(S.check(S.isMaxLength(2 * 1024)), fromBrand(nominal(), {
21
19
  identifier: "NonEmptyString2k",
22
- title: "NonEmptyString2k",
23
20
  jsonSchema: {}
24
21
  }), withDefaultMake);
25
22
  export const NonEmptyString255 = S
26
23
  .NonEmptyString
27
24
  .pipe(S.check(S.isMaxLength(255)), fromBrand(nominal(), {
28
25
  identifier: "NonEmptyString255",
29
- title: "NonEmptyString255",
30
26
  jsonSchema: {}
31
27
  }), withDefaultMake);
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TY2hlbWEvc3RyaW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssQ0FBQyxNQUFNLGVBQWUsQ0FBQTtBQUVsQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBSTFDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDO0tBQzVCLGNBQWM7S0FDZCxJQUFJLENBQ0gsU0FBUyxDQUFDLE9BQU8sRUFBa0IsRUFBRTtJQUNuQyxVQUFVLEVBQUUsZ0JBQWdCO0lBQzVCLEtBQUssRUFBRSxnQkFBZ0I7SUFDdkIsVUFBVSxFQUFFLEVBQUU7Q0FDZixDQUFDLEVBQ0YsZUFBZSxDQUNoQixDQUFBO0FBSUgsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQztLQUMvQixjQUFjO0tBQ2QsSUFBSSxDQUNILENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsRUFDakMsU0FBUyxDQUFDLE9BQU8sRUFBcUIsRUFBRTtJQUN0QyxVQUFVLEVBQUUsbUJBQW1CO0lBQy9CLEtBQUssRUFBRSxtQkFBbUI7SUFDMUIsVUFBVSxFQUFFLEVBQUU7Q0FDZixDQUFDLEVBQ0YsZUFBZSxDQUNoQixDQUFBO0FBSUgsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQztLQUM5QixjQUFjO0tBQ2QsSUFBSSxDQUNILENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsRUFDaEMsU0FBUyxDQUFDLE9BQU8sRUFBb0IsRUFBRTtJQUNyQyxVQUFVLEVBQUUsa0JBQWtCO0lBQzlCLEtBQUssRUFBRSxrQkFBa0I7SUFDekIsVUFBVSxFQUFFLEVBQUU7Q0FDZixDQUFDLEVBQ0YsZUFBZSxDQUNoQixDQUFBO0FBSUgsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsQ0FBQztLQUMvQixjQUFjO0tBQ2QsSUFBSSxDQUNILENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUMzQixTQUFTLENBQUMsT0FBTyxFQUFxQixFQUFFO0lBQ3RDLFVBQVUsRUFBRSxtQkFBbUI7SUFDL0IsS0FBSyxFQUFFLG1CQUFtQjtJQUMxQixVQUFVLEVBQUUsRUFBRTtDQUNmLENBQUMsRUFDRixlQUFlLENBQ2hCLENBQUEifQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9TY2hlbWEvc3RyaW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssQ0FBQyxNQUFNLGVBQWUsQ0FBQTtBQUdsQyxPQUFPLEVBQXNCLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDbkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQU8xQyxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQXlCLENBQUM7S0FDbEQsY0FBYztLQUNkLElBQUksQ0FDSCxTQUFTLENBQWlCLE9BQU8sRUFBa0IsRUFBRTtJQUNuRCxVQUFVLEVBQUUsZ0JBQWdCO0lBQzVCLFVBQVUsRUFBRSxFQUFFO0NBQ2YsQ0FBQyxFQUNGLGVBQWUsQ0FDaEIsQ0FBQTtBQU9ILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUE0QixDQUFDO0tBQ3hELGNBQWM7S0FDZCxJQUFJLENBQ0gsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUNqQyxTQUFTLENBQW9CLE9BQU8sRUFBcUIsRUFBRTtJQUN6RCxVQUFVLEVBQUUsbUJBQW1CO0lBQy9CLFVBQVUsRUFBRSxFQUFFO0NBQ2YsQ0FBQyxFQUNGLGVBQWUsQ0FDaEIsQ0FBQTtBQU9ILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUEyQixDQUFDO0tBQ3RELGNBQWM7S0FDZCxJQUFJLENBQ0gsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUNoQyxTQUFTLENBQW1CLE9BQU8sRUFBb0IsRUFBRTtJQUN2RCxVQUFVLEVBQUUsa0JBQWtCO0lBQzlCLFVBQVUsRUFBRSxFQUFFO0NBQ2YsQ0FBQyxFQUNGLGVBQWUsQ0FDaEIsQ0FBQTtBQU9ILE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUE0QixDQUFDO0tBQ3hELGNBQWM7S0FDZCxJQUFJLENBQ0gsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQzNCLFNBQVMsQ0FBb0IsT0FBTyxFQUFxQixFQUFFO0lBQ3pELFVBQVUsRUFBRSxtQkFBbUI7SUFDL0IsVUFBVSxFQUFFLEVBQUU7Q0FDZixDQUFDLEVBQ0YsZUFBZSxDQUNoQixDQUFBIn0=
package/dist/Schema.d.ts CHANGED
@@ -1,14 +1,88 @@
1
- import { type Tracer } from "effect";
2
1
  import * as S from "effect/Schema";
2
+ import * as SchemaAST from "effect/SchemaAST";
3
+ import { type Simplify } from "effect/Struct";
4
+ import type * as Tracer from "effect/Tracer";
5
+ import type { RequiredKeys } from "effect/Types";
3
6
  import type { NonEmptyReadonlyArray } from "./Array.js";
4
7
  import { Email as EmailT, type Email as EmailType } from "./Schema/email.js";
5
8
  import { PhoneNumber as PhoneNumberT, type PhoneNumber as PhoneNumberType } from "./Schema/phoneNumber.js";
9
+ import { type AST } from "./Schema/schema.js";
10
+ import { type StructuralCopyOrigin } from "./utils.js";
11
+ /**
12
+ * Attach a default value used **only** when constructing a value (e.g. via
13
+ * `.make(...)` or struct constructors) and the field is omitted from input.
14
+ *
15
+ * **Not applied during decode.** Decoding a payload that is missing the
16
+ * field will still raise a parse error. Do **not** rely on this to migrate
17
+ * database fields just-in-time — see the section header above.
18
+ *
19
+ * @see {@link withDecodingDefault} / {@link withDecodingDefaultType} —
20
+ * decode-time variants (discouraged for persisted data; use explicit,
21
+ * versioned migrations instead).
22
+ */
23
+ export { withConstructorDefault } from "effect/Schema";
24
+ /**
25
+ * Attach a default value used during decode when the field's `Encoded` value
26
+ * is missing **or** `undefined`. The default is specified as an `Encoded`
27
+ * value and threaded through the schema's decode step.
28
+ *
29
+ * **Discouraged for persisted data.** A missing field in a stored record is
30
+ * just as likely to be data corruption as it is an old-shape document;
31
+ * silently substituting a default hides the problem. Prefer an explicit,
32
+ * preferably versioned migration of database data — see the section header
33
+ * above.
34
+ *
35
+ * @see {@link withDecodingDefaultKey} — key-absent-only variant
36
+ * @see {@link withDecodingDefaultType} — `Type`-side variant
37
+ * @see {@link withConstructorDefault} — for `.make(...)`-time defaults
38
+ */
39
+ export { withDecodingDefault } from "effect/Schema";
40
+ /**
41
+ * Attach a default value used during decode when the field **key is absent**
42
+ * (note: not when present and `undefined`). The default is an `Encoded`
43
+ * value.
44
+ *
45
+ * **Discouraged for persisted data** — same reasoning as
46
+ * {@link withDecodingDefault}. Use explicit, preferably versioned migrations
47
+ * over decode-time fallbacks.
48
+ *
49
+ * @see {@link withDecodingDefault} — value-absent-or-undefined variant
50
+ * @see {@link withDecodingDefaultTypeKey} — `Type`-side variant
51
+ * @see {@link withConstructorDefault} — for `.make(...)`-time defaults
52
+ */
53
+ export { withDecodingDefaultKey } from "effect/Schema";
54
+ /**
55
+ * Attach a default value used during decode when the field is missing **or**
56
+ * `undefined`. The default is specified as a `Type` value (i.e. on the
57
+ * decoded side).
58
+ *
59
+ * **Discouraged for persisted data** — same reasoning as
60
+ * {@link withDecodingDefault}. Use explicit, preferably versioned migrations
61
+ * over decode-time fallbacks.
62
+ *
63
+ * @see {@link withDecodingDefault} — `Encoded`-side variant
64
+ * @see {@link withDecodingDefaultTypeKey} — key-absent-only variant
65
+ * @see {@link withConstructorDefault} — for `.make(...)`-time defaults
66
+ */
67
+ export { withDecodingDefaultType } from "effect/Schema";
68
+ /**
69
+ * Attach a default value used during decode when the field **key is absent**
70
+ * (note: not when present and `undefined`). The default is a `Type` value.
71
+ *
72
+ * **Discouraged for persisted data** — same reasoning as
73
+ * {@link withDecodingDefault}. Use explicit, preferably versioned migrations
74
+ * over decode-time fallbacks.
75
+ *
76
+ * @see {@link withDecodingDefaultKey} — `Encoded`-side variant
77
+ * @see {@link withDecodingDefaultType} — value-absent-or-undefined variant
78
+ * @see {@link withConstructorDefault} — for `.make(...)`-time defaults
79
+ */
80
+ export { withDecodingDefaultTypeKey } from "effect/Schema";
6
81
  export * from "effect/Schema";
7
- export { TaggedErrorClass as TaggedError } from "effect/Schema";
8
82
  export * from "./Schema/Class.js";
9
- export { Class, TaggedClass } from "./Schema/Class.js";
83
+ export { Class, ErrorClass, Opaque, OpaqueErrorFacadeClass, OpaqueFacade, OpaqueShape, OpaqueType, TaggedClass, TaggedErrorClass } from "./Schema/Class.js";
10
84
  export { fromBrand, nominal } from "./Schema/brand.js";
11
- export { Array, Boolean, Date, Literal, Map, NullOr, Number, ReadonlyMap, ReadonlySet } from "./Schema/ext.js";
85
+ export { Array, Boolean, Date, DateFromString, DateValid, Finite, Literals, NullOr, Number, ReadonlyMap, ReadonlySet } from "./Schema/ext.js";
12
86
  export { Int, NonNegativeInt } from "./Schema/numbers.js";
13
87
  export * from "./Schema/email.js";
14
88
  export * from "./Schema/ext.js";
@@ -16,11 +90,112 @@ export * from "./Schema/moreStrings.js";
16
90
  export * from "./Schema/numbers.js";
17
91
  export * from "./Schema/phoneNumber.js";
18
92
  export * from "./Schema/schema.js";
93
+ export * from "./Schema/SpecialJsonSchema.js";
94
+ export * from "./Schema/SpecialOpenApi.js";
19
95
  export * from "./Schema/strings.js";
20
96
  export { NonEmptyString } from "./Schema/strings.js";
21
97
  export * as SchemaIssue from "effect/SchemaIssue";
22
- export * as SchemaParser from "effect/SchemaParser";
98
+ export declare const decodeEffectConcurrently: typeof S.decodeEffect;
99
+ export declare const decodeUnknownEffectConcurrently: typeof S.decodeUnknownEffect;
100
+ export * as SchemaParser from "./Schema/SchemaParser.js";
23
101
  export { Void as Void_ } from "effect/Schema";
102
+ export declare function Struct<const Fields extends S.Struct.Fields>(fields: Fields): Struct<Fields>;
103
+ export interface Struct<Fields extends S.Struct.Fields> extends S.Bottom<Struct.Type<Fields>, Struct.Encoded<Fields>, Struct.DecodingServices<Fields>, Struct.EncodingServices<Fields>, AST.Objects, Struct<Fields>, Struct.MakeIn<Fields>, Struct.Iso<Fields>> {
104
+ /**
105
+ * The field definitions of this struct. Spread them into a new struct to
106
+ * reuse fields across schemas.
107
+ *
108
+ * **Example** (Reusing fields across structs)
109
+ *
110
+ * ```ts
111
+ * import * as Schema from "effect/Schema"
112
+ *
113
+ * const Timestamped = Schema.Struct({
114
+ * createdAt: Schema.Date,
115
+ * updatedAt: Schema.Date
116
+ * })
117
+ *
118
+ * const User = Schema.Struct({
119
+ * ...Timestamped.fields,
120
+ * name: Schema.String,
121
+ * email: Schema.String
122
+ * })
123
+ * ```
124
+ */
125
+ readonly fields: Fields;
126
+ /**
127
+ * Returns a new struct with the fields modified by the provided function.
128
+ *
129
+ * **Options**
130
+ *
131
+ * - `unsafePreserveChecks` - if `true`, keep any `.check(...)` constraints
132
+ * that were attached to the original union. Defaults to `false`.
133
+ *
134
+ * **Warning**: This is an unsafe operation. Since `mapFields`
135
+ * transformations change the schema type, the original refinement functions
136
+ * may no longer be valid or safe to apply to the transformed schema. Only
137
+ * use this option if you have verified that your refinements remain correct
138
+ * after the transformation.
139
+ */
140
+ mapFields<To extends Struct.Fields>(f: (fields: Fields) => To, options?: {
141
+ readonly unsafePreserveChecks?: boolean | undefined;
142
+ } | undefined): Struct<Simplify<Readonly<To>>>;
143
+ readonly copy: StructuralCopyOrigin<Struct.Type<Fields>>;
144
+ }
145
+ export declare namespace Struct {
146
+ type Fields = S.Struct.Fields;
147
+ type Type<F extends S.Struct.Fields> = S.Struct.Type<F>;
148
+ type Encoded<F extends S.Struct.Fields> = S.Struct.Encoded<F>;
149
+ type DecodingServices<F extends S.Struct.Fields> = S.Struct.DecodingServices<F>;
150
+ type EncodingServices<F extends S.Struct.Fields> = S.Struct.EncodingServices<F>;
151
+ type MakeIn<F extends S.Struct.Fields> = RequiredKeys<S.Struct.MakeIn<F>> extends never ? void | S.Struct.MakeIn<F> : S.Struct.MakeIn<F>;
152
+ type Iso<F extends S.Struct.Fields> = S.Struct.Iso<F>;
153
+ }
154
+ export type StructNestedEncodedError<T> = {
155
+ readonly _tag: "StructNestedEncodedError";
156
+ readonly message: "Expected a Struct schema or a schema with from.Encoded";
157
+ readonly schema: T;
158
+ };
159
+ export type StructNestedEncoded<T> = T extends {
160
+ fields: infer Fields extends S.Struct.Fields;
161
+ } ? Struct.Encoded<Fields> : T extends {
162
+ readonly from: {
163
+ readonly Encoded: infer Encoded;
164
+ };
165
+ } ? Encoded : StructNestedEncodedError<T>;
166
+ export declare function NonEmptyArray<Value extends S.Top>(value: Value): S.NonEmptyArray<Value>;
167
+ export declare function TaggedStruct<const Tag extends SchemaAST.LiteralValue, const Fields extends S.Struct.Fields>(value: Tag, fields: Fields): TaggedStruct<Tag, Fields>;
168
+ export interface TaggedStruct<Tag extends SchemaAST.LiteralValue, Fields extends S.Struct.Fields> extends Struct<{
169
+ readonly _tag: S.tag<Tag>;
170
+ } & Fields> {
171
+ }
172
+ export declare namespace TaggedStruct {
173
+ type Fields = S.Struct.Fields;
174
+ type Type<Tag extends SchemaAST.LiteralValue, F extends S.Struct.Fields> = S.Struct.Type<{
175
+ readonly _tag: S.tag<Tag>;
176
+ } & F>;
177
+ type Encoded<Tag extends SchemaAST.LiteralValue, F extends S.Struct.Fields> = S.Struct.Encoded<{
178
+ readonly _tag: S.tag<Tag>;
179
+ } & F>;
180
+ type DecodingServices<Tag extends SchemaAST.LiteralValue, F extends S.Struct.Fields> = S.Struct.DecodingServices<{
181
+ readonly _tag: S.tag<Tag>;
182
+ } & F>;
183
+ type EncodingServices<Tag extends SchemaAST.LiteralValue, F extends S.Struct.Fields> = S.Struct.EncodingServices<{
184
+ readonly _tag: S.tag<Tag>;
185
+ } & F>;
186
+ type MakeIn<Tag extends SchemaAST.LiteralValue, F extends S.Struct.Fields> = S.Struct.MakeIn<{
187
+ readonly _tag: S.tag<Tag>;
188
+ } & F>;
189
+ type Iso<Tag extends SchemaAST.LiteralValue, F extends S.Struct.Fields> = S.Struct.Iso<{
190
+ readonly _tag: S.tag<Tag>;
191
+ } & F>;
192
+ }
193
+ export declare function Record<Key extends S.Record.Key, Value extends S.Top>(key: Key, value: Value): S.$Record<Key, Value>;
194
+ export declare namespace Record {
195
+ type Key = S.Record.Key;
196
+ type Type<K extends S.Record.Key, V extends S.Top> = S.Record.Type<K, V>;
197
+ type Encoded<K extends S.Record.Key, V extends S.Top> = S.Record.Encoded<K, V>;
198
+ }
24
199
  export declare const SpanId: unique symbol;
25
200
  export type SpanId = typeof SpanId;
26
201
  export interface WithOptionalSpan {
@@ -28,7 +203,7 @@ export interface WithOptionalSpan {
28
203
  }
29
204
  export declare const Email: import("./Schema/ext.js").WithDefaults<S.refine<EmailT, S.String>> & S.refine<EmailT, S.String>;
30
205
  export type Email = EmailType;
31
- export declare const PhoneNumber: import("./Schema/ext.js").WithDefaults<import("./Schema/ext.js").WithDefaults<S.refine<PhoneNumberT, S.String>> & S.refine<PhoneNumberT, S.String>> & import("./Schema/ext.js").WithDefaults<S.refine<PhoneNumberT, S.String>> & S.refine<PhoneNumberT, S.String>;
206
+ export declare const PhoneNumber: import("./Schema/ext.js").WithDefaults<S.refine<PhoneNumberT, S.String>> & S.refine<PhoneNumberT, S.String>;
32
207
  export type PhoneNumber = PhoneNumberType;
33
208
  export declare const tags: <Members extends NonEmptyReadonlyArray<(S.Top & {
34
209
  readonly Type: {
@@ -43,9 +218,40 @@ type TaggedUnionMembers = NonEmptyReadonlyArray<S.Top & {
43
218
  type TaggedUnionTags<Members extends TaggedUnionMembers> = S.Literals<{
44
219
  [Index in keyof Members]: Members[Index]["Type"]["_tag"];
45
220
  }>;
221
+ type TaggedPropertyKeys<A, Members extends TaggedUnionMembers> = {
222
+ [K in keyof A & string]: A[K] extends Members[number]["Type"] ? K : never;
223
+ }[keyof A & string];
224
+ type PropertyGuardsFor<Members extends TaggedUnionMembers, K extends string, A> = {
225
+ readonly [M in Members[number] as `is${M["Type"]["_tag"]}`]: (target: A) => target is A & {
226
+ readonly [P in K]: M["Type"];
227
+ };
228
+ } & {
229
+ readonly isAnyOf: <const Tags extends ReadonlyArray<Members[number]["Type"]["_tag"]>>(tags: Tags) => (target: A) => target is A & {
230
+ readonly [P in K]: Extract<Members[number]["Type"], {
231
+ readonly _tag: Tags[number];
232
+ }>;
233
+ };
234
+ };
235
+ type PropertyGuards<Members extends TaggedUnionMembers, K extends string> = {
236
+ readonly [M in Members[number] as `is${M["Type"]["_tag"]}`]: <T extends {
237
+ readonly [P in K]: Members[number]["Type"];
238
+ }>(target: T) => target is T & {
239
+ readonly [P in K]: M["Type"];
240
+ };
241
+ } & {
242
+ readonly isAnyOf: <const Tags extends ReadonlyArray<Members[number]["Type"]["_tag"]>>(tags: Tags) => <T extends {
243
+ readonly [P in K]: Members[number]["Type"];
244
+ }>(target: T) => target is T & {
245
+ readonly [P in K]: Extract<Members[number]["Type"], {
246
+ readonly _tag: Tags[number];
247
+ }>;
248
+ };
249
+ };
46
250
  type TaggedUnionWithTags<Members extends TaggedUnionMembers> = S.toTaggedUnion<"_tag", Members> & {
47
251
  readonly tags: TaggedUnionTags<Members>;
252
+ readonly generateGuards: <K extends string>(property: K) => PropertyGuards<Members, K>;
253
+ readonly generateGuardsFor: <A>() => <K extends TaggedPropertyKeys<A, Members>>(property: K) => PropertyGuardsFor<Members, K, A>;
48
254
  };
49
255
  export declare const ExtendTaggedUnion: <Members extends TaggedUnionMembers>(schema: S.Union<Members>) => TaggedUnionWithTags<Members>;
50
- export declare const TaggedUnion: <Members extends TaggedUnionMembers>(...a: Members) => TaggedUnionWithTags<Members>;
256
+ export declare const TaggedUnion: <Members extends TaggedUnionMembers>(members: Members) => TaggedUnionWithTags<Members>;
51
257
  //# sourceMappingURL=Schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Schema.d.ts","sourceRoot":"","sources":["../src/Schema.ts"],"names":[],"mappings":"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"}
package/dist/Schema.js CHANGED
@@ -1,17 +1,105 @@
1
- import { SchemaAST } from "effect";
2
1
  import * as S from "effect/Schema";
2
+ import * as SchemaAST from "effect/SchemaAST";
3
3
  import { fakerArb } from "./faker.js";
4
4
  import { Email as EmailT } from "./Schema/email.js";
5
- import { withDefaultMake } from "./Schema/ext.js";
5
+ import { concurrencyUnbounded, withDefaultMake, withDefaultParseOptions } from "./Schema/ext.js";
6
6
  import { PhoneNumber as PhoneNumberT } from "./Schema/phoneNumber.js";
7
- import { extendM } from "./utils.js";
7
+ import { copy, extendM } from "./utils.js";
8
+ // ---------------------------------------------------------------------------
9
+ // Default helpers — re-exported from effect/Schema
10
+ //
11
+ // The five helpers below are surfaced explicitly so the (important) policy
12
+ // around them lives next to the export. See also the file-level note in
13
+ // `./Schema/ext.ts` and the documented wrappers in
14
+ // `./Schema/ext.ts`, `./Schema/numbers.ts`, `./Schema/moreStrings.ts`,
15
+ // and `./ids.ts`.
16
+ //
17
+ // **Construction-only**: `withConstructorDefault` fills the field when it
18
+ // is omitted from `.make(...)` input. It is NOT applied during decode, so
19
+ // it CANNOT be used to just-in-time migrate database fields. A stored
20
+ // record missing the field will still fail to decode.
21
+ //
22
+ // **`withDecodingDefault*` is discouraged**: a missing field in persisted
23
+ // data is just as likely to be data corruption as it is an old-shape
24
+ // document; silently substituting a default hides the problem and can
25
+ // poison downstream aggregates. Prefer an explicit, preferably versioned
26
+ // migration of database data over shoving missing fields under the rug.
27
+ // ---------------------------------------------------------------------------
28
+ /**
29
+ * Attach a default value used **only** when constructing a value (e.g. via
30
+ * `.make(...)` or struct constructors) and the field is omitted from input.
31
+ *
32
+ * **Not applied during decode.** Decoding a payload that is missing the
33
+ * field will still raise a parse error. Do **not** rely on this to migrate
34
+ * database fields just-in-time — see the section header above.
35
+ *
36
+ * @see {@link withDecodingDefault} / {@link withDecodingDefaultType} —
37
+ * decode-time variants (discouraged for persisted data; use explicit,
38
+ * versioned migrations instead).
39
+ */
40
+ export { withConstructorDefault } from "effect/Schema";
41
+ /**
42
+ * Attach a default value used during decode when the field's `Encoded` value
43
+ * is missing **or** `undefined`. The default is specified as an `Encoded`
44
+ * value and threaded through the schema's decode step.
45
+ *
46
+ * **Discouraged for persisted data.** A missing field in a stored record is
47
+ * just as likely to be data corruption as it is an old-shape document;
48
+ * silently substituting a default hides the problem. Prefer an explicit,
49
+ * preferably versioned migration of database data — see the section header
50
+ * above.
51
+ *
52
+ * @see {@link withDecodingDefaultKey} — key-absent-only variant
53
+ * @see {@link withDecodingDefaultType} — `Type`-side variant
54
+ * @see {@link withConstructorDefault} — for `.make(...)`-time defaults
55
+ */
56
+ export { withDecodingDefault } from "effect/Schema";
57
+ /**
58
+ * Attach a default value used during decode when the field **key is absent**
59
+ * (note: not when present and `undefined`). The default is an `Encoded`
60
+ * value.
61
+ *
62
+ * **Discouraged for persisted data** — same reasoning as
63
+ * {@link withDecodingDefault}. Use explicit, preferably versioned migrations
64
+ * over decode-time fallbacks.
65
+ *
66
+ * @see {@link withDecodingDefault} — value-absent-or-undefined variant
67
+ * @see {@link withDecodingDefaultTypeKey} — `Type`-side variant
68
+ * @see {@link withConstructorDefault} — for `.make(...)`-time defaults
69
+ */
70
+ export { withDecodingDefaultKey } from "effect/Schema";
71
+ /**
72
+ * Attach a default value used during decode when the field is missing **or**
73
+ * `undefined`. The default is specified as a `Type` value (i.e. on the
74
+ * decoded side).
75
+ *
76
+ * **Discouraged for persisted data** — same reasoning as
77
+ * {@link withDecodingDefault}. Use explicit, preferably versioned migrations
78
+ * over decode-time fallbacks.
79
+ *
80
+ * @see {@link withDecodingDefault} — `Encoded`-side variant
81
+ * @see {@link withDecodingDefaultTypeKey} — key-absent-only variant
82
+ * @see {@link withConstructorDefault} — for `.make(...)`-time defaults
83
+ */
84
+ export { withDecodingDefaultType } from "effect/Schema";
85
+ /**
86
+ * Attach a default value used during decode when the field **key is absent**
87
+ * (note: not when present and `undefined`). The default is a `Type` value.
88
+ *
89
+ * **Discouraged for persisted data** — same reasoning as
90
+ * {@link withDecodingDefault}. Use explicit, preferably versioned migrations
91
+ * over decode-time fallbacks.
92
+ *
93
+ * @see {@link withDecodingDefaultKey} — `Encoded`-side variant
94
+ * @see {@link withDecodingDefaultType} — value-absent-or-undefined variant
95
+ * @see {@link withConstructorDefault} — for `.make(...)`-time defaults
96
+ */
97
+ export { withDecodingDefaultTypeKey } from "effect/Schema";
8
98
  export * from "effect/Schema";
9
- // v4: TaggedError renamed to TaggedErrorClass
10
- export { TaggedErrorClass as TaggedError } from "effect/Schema";
11
99
  export * from "./Schema/Class.js";
12
- export { Class, TaggedClass } from "./Schema/Class.js";
100
+ export { Class, ErrorClass, Opaque, OpaqueErrorFacadeClass, OpaqueFacade, OpaqueShape, OpaqueType, TaggedClass, TaggedErrorClass } from "./Schema/Class.js";
13
101
  export { fromBrand, nominal } from "./Schema/brand.js";
14
- export { Array, Boolean, Date, Literal, Map, NullOr, Number, ReadonlyMap, ReadonlySet } from "./Schema/ext.js";
102
+ export { Array, Boolean, Date, DateFromString, DateValid, Finite, Literals, NullOr, Number, ReadonlyMap, ReadonlySet } from "./Schema/ext.js";
15
103
  export { Int, NonNegativeInt } from "./Schema/numbers.js";
16
104
  export * from "./Schema/email.js";
17
105
  export * from "./Schema/ext.js";
@@ -19,11 +107,83 @@ export * from "./Schema/moreStrings.js";
19
107
  export * from "./Schema/numbers.js";
20
108
  export * from "./Schema/phoneNumber.js";
21
109
  export * from "./Schema/schema.js";
110
+ export * from "./Schema/SpecialJsonSchema.js";
111
+ export * from "./Schema/SpecialOpenApi.js";
22
112
  export * from "./Schema/strings.js";
23
113
  export { NonEmptyString } from "./Schema/strings.js";
24
114
  export * as SchemaIssue from "effect/SchemaIssue";
25
- export * as SchemaParser from "effect/SchemaParser";
115
+ export const decodeEffectConcurrently = withDefaultParseOptions(S.decodeEffect);
116
+ export const decodeUnknownEffectConcurrently = withDefaultParseOptions(S.decodeUnknownEffect);
117
+ export * as SchemaParser from "./Schema/SchemaParser.js";
26
118
  export { Void as Void_ } from "effect/Schema";
119
+ // ---------------------------------------------------------------------------
120
+ // Struct / NonEmptyArray / Record
121
+ // ---------------------------------------------------------------------------
122
+ export function Struct(fields) {
123
+ const result = S.Struct(fields).annotate(concurrencyUnbounded);
124
+ const allowVoidMake = (schema) => {
125
+ // Normalize omitted input to an empty object so optional/default-only structs can be constructed with make().
126
+ const origMake = schema.make;
127
+ const origMakeOption = schema.makeOption;
128
+ const origMakeEffect = schema.makeEffect;
129
+ schema.make = function (input, options) {
130
+ return origMake.call(this, input === undefined ? {} : input, options);
131
+ };
132
+ schema.makeOption = function (input, options) {
133
+ return origMakeOption.call(this, input === undefined ? {} : input, options);
134
+ };
135
+ schema.makeEffect = function (input, options) {
136
+ return origMakeEffect.call(this, input === undefined ? {} : input, options);
137
+ };
138
+ return schema;
139
+ };
140
+ // eslint-disable-next-line @typescript-eslint/unbound-method, @typescript-eslint/no-unsafe-assignment
141
+ const origMapFields = result.mapFields;
142
+ // eslint-disable-next-line @typescript-eslint/unbound-method, @typescript-eslint/no-unsafe-assignment
143
+ const origAnnotate = result.annotate;
144
+ // eslint-disable-next-line @typescript-eslint/unbound-method, @typescript-eslint/no-unsafe-assignment
145
+ const origAnnotateKey = result.annotateKey;
146
+ const preserveCopyAndMethods = (schema) => {
147
+ schema.copy = copy;
148
+ schema.mapFields = function (f, options) {
149
+ return result.mapFields.call(this, f, options);
150
+ };
151
+ schema.annotate = function (annotations) {
152
+ return result.annotate.call(this, annotations);
153
+ };
154
+ schema.annotateKey = function (annotations) {
155
+ return result.annotateKey.call(this, annotations);
156
+ };
157
+ return allowVoidMake(schema);
158
+ };
159
+ result.mapFields = function (f, options) {
160
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
161
+ const mapped = origMapFields.call(this, f, options).annotate(concurrencyUnbounded);
162
+ return preserveCopyAndMethods(mapped);
163
+ };
164
+ result.annotate = function (annotations) {
165
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
166
+ const annotated = origAnnotate.call(this, annotations);
167
+ return preserveCopyAndMethods(annotated);
168
+ };
169
+ result.annotateKey = function (annotations) {
170
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
171
+ const annotated = origAnnotateKey.call(this, annotations);
172
+ return preserveCopyAndMethods(annotated);
173
+ };
174
+ result.copy = copy;
175
+ allowVoidMake(result);
176
+ return result;
177
+ }
178
+ export function NonEmptyArray(value) {
179
+ return S.NonEmptyArray(value).annotate(concurrencyUnbounded);
180
+ }
181
+ export function TaggedStruct(value, fields) {
182
+ return Struct({ _tag: S.tag(value), ...fields });
183
+ }
184
+ export function Record(key, value) {
185
+ return S.Record(key, value).annotate(concurrencyUnbounded);
186
+ }
27
187
  export const SpanId = Symbol();
28
188
  const makeEmail = S.decodeSync(EmailT);
29
189
  const makePhoneNumber = S.decodeSync(PhoneNumberT);
@@ -71,7 +231,26 @@ function collectSentinelsFromAST(ast) {
71
231
  }
72
232
  }
73
233
  export const tags = (self) => S.Literals(self.map(getTagFromAST));
74
- const extendTaggedUnionWithTags = (schema) => extendM(schema.pipe(S.toTaggedUnion("_tag")), () => ({ tags: tags(schema.members) }));
234
+ const extendTaggedUnionWithTags = (schema) => extendM(schema.pipe(S.toTaggedUnion("_tag")), (tagged) => {
235
+ const makeGuards = (property) => {
236
+ const result = {};
237
+ const guards = tagged.guards;
238
+ for (const tag of Object.keys(guards)) {
239
+ const guard = guards[tag];
240
+ result[`is${tag}`] = (target) => guard(target[property]);
241
+ }
242
+ result.isAnyOf = (memberTags) => {
243
+ const check = tagged.isAnyOf(memberTags);
244
+ return (target) => check(target[property]);
245
+ };
246
+ return result;
247
+ };
248
+ return {
249
+ tags: tags(schema.members),
250
+ generateGuards: makeGuards,
251
+ generateGuardsFor: () => makeGuards
252
+ };
253
+ });
75
254
  export const ExtendTaggedUnion = (schema) => extendTaggedUnionWithTags(schema);
76
- export const TaggedUnion = (...a) => extendTaggedUnionWithTags(S.Union(a));
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFlLE1BQU0sUUFBUSxDQUFBO0FBQy9DLE9BQU8sS0FBSyxDQUFDLE1BQU0sZUFBZSxDQUFBO0FBRWxDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDckMsT0FBTyxFQUFFLEtBQUssSUFBSSxNQUFNLEVBQTJCLE1BQU0sbUJBQW1CLENBQUE7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ2pELE9BQU8sRUFBRSxXQUFXLElBQUksWUFBWSxFQUF1QyxNQUFNLHlCQUF5QixDQUFBO0FBQzFHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFcEMsY0FBYyxlQUFlLENBQUE7QUFDN0IsOENBQThDO0FBQzlDLE9BQU8sRUFBRSxnQkFBZ0IsSUFBSSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFFL0QsY0FBYyxtQkFBbUIsQ0FBQTtBQUNqQyxPQUFPLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBRXRELE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUE7QUFDdEQsT0FBTyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUcsT0FBTyxFQUFFLEdBQUcsRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUV6RCxjQUFjLG1CQUFtQixDQUFBO0FBQ2pDLGNBQWMsaUJBQWlCLENBQUE7QUFDL0IsY0FBYyx5QkFBeUIsQ0FBQTtBQUN2QyxjQUFjLHFCQUFxQixDQUFBO0FBQ25D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
255
+ export const TaggedUnion = (members) => extendTaggedUnionWithTags(S.Union(members));
256
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssQ0FBQyxNQUFNLGVBQWUsQ0FBQTtBQUNsQyxPQUFPLEtBQUssU0FBUyxNQUFNLGtCQUFrQixDQUFBO0FBSzdDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFDckMsT0FBTyxFQUFFLEtBQUssSUFBSSxNQUFNLEVBQTJCLE1BQU0sbUJBQW1CLENBQUE7QUFDNUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLGVBQWUsRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlCQUFpQixDQUFBO0FBQ2hHLE9BQU8sRUFBRSxXQUFXLElBQUksWUFBWSxFQUF1QyxNQUFNLHlCQUF5QixDQUFBO0FBRTFHLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUE2QixNQUFNLFlBQVksQ0FBQTtBQUVyRSw4RUFBOEU7QUFDOUUsbURBQW1EO0FBQ25ELEVBQUU7QUFDRiwyRUFBMkU7QUFDM0Usd0VBQXdFO0FBQ3hFLG1EQUFtRDtBQUNuRCx1RUFBdUU7QUFDdkUsa0JBQWtCO0FBQ2xCLEVBQUU7QUFDRiwwRUFBMEU7QUFDMUUsMEVBQTBFO0FBQzFFLHNFQUFzRTtBQUN0RSxzREFBc0Q7QUFDdEQsRUFBRTtBQUNGLDBFQUEwRTtBQUMxRSxxRUFBcUU7QUFDckUsc0VBQXNFO0FBQ3RFLHlFQUF5RTtBQUN6RSx3RUFBd0U7QUFDeEUsOEVBQThFO0FBRTlFOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRXREOzs7Ozs7Ozs7Ozs7OztHQWNHO0FBQ0gsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBRW5EOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUV0RDs7Ozs7Ozs7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
package/dist/Set.d.ts CHANGED
@@ -1,4 +1,7 @@
1
- import { type Equivalence, Option, type Order, type Result } from "effect";
1
+ import type * as Equivalence from "effect/Equivalence";
2
+ import * as Option from "effect/Option";
3
+ import type * as Order from "effect/Order";
4
+ import type * as Result from "effect/Result";
2
5
  import { type Predicate, type Refinement } from "./Function.js";
3
6
  export declare function find_<A, B extends A>(as: ReadonlySet<A>, refinement: Refinement<A, B>): B | undefined;
4
7
  export declare function find_<A>(set: ReadonlySet<A>, predicate: Predicate<A>): A | undefined;