@ts-runtypes/core 0.10.0 → 0.12.0

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 (366) hide show
  1. package/README.md +31 -0
  2. package/dist/builders/atomic.d.ts.map +1 -0
  3. package/dist/builders/atomic.js.map +1 -0
  4. package/dist/{schema → builders}/compose.d.ts +30 -8
  5. package/dist/builders/compose.d.ts.map +1 -0
  6. package/dist/builders/compose.js +97 -0
  7. package/dist/builders/compose.js.map +1 -0
  8. package/dist/{schema → builders}/index.d.ts +2 -2
  9. package/dist/builders/index.d.ts.map +1 -0
  10. package/dist/{schema → builders}/index.js +1 -1
  11. package/dist/builders/index.js.map +1 -0
  12. package/dist/builders/static.d.ts +141 -0
  13. package/dist/builders/static.d.ts.map +1 -0
  14. package/dist/{schema → builders}/static.js.map +1 -1
  15. package/dist/builders/utility.d.ts.map +1 -0
  16. package/dist/builders/utility.js.map +1 -0
  17. package/dist/cjs/{schema → builders}/compose.d.ts +30 -8
  18. package/dist/cjs/{schema → builders}/compose.js +52 -33
  19. package/dist/cjs/{schema → builders}/index.d.ts +2 -2
  20. package/dist/cjs/{schema → builders}/index.js +3 -1
  21. package/dist/cjs/builders/static.d.ts +140 -0
  22. package/dist/cjs/createRTFBinary.d.ts +10 -10
  23. package/dist/cjs/createRTFBinary.js +22 -22
  24. package/dist/cjs/createRTFunctions.d.ts +11 -10
  25. package/dist/cjs/createRTFunctions.js +15 -15
  26. package/dist/cjs/enrich/createFriendlyText.js +19 -0
  27. package/dist/cjs/enrich/friendlyText.d.ts +2 -1
  28. package/dist/cjs/fnHash.d.ts +1 -0
  29. package/dist/cjs/fnHash.js +10 -1
  30. package/dist/cjs/formats/bigintFormats.d.ts +4 -0
  31. package/dist/cjs/formats/datetime/dateTime-pure-fns.js +90 -3
  32. package/dist/cjs/formats/datetime/dateTimeParams.d.ts +4 -0
  33. package/dist/cjs/formats/datetime/temporalFormats.d.ts +34 -20
  34. package/dist/cjs/formats/index.d.ts +2 -1
  35. package/dist/cjs/formats/index.js +21 -2
  36. package/dist/cjs/formats/numberFormats.d.ts +4 -0
  37. package/dist/cjs/formats/string/string-formats-pure-fns.js +392 -2
  38. package/dist/cjs/formats/string/string-patterns.d.ts +52 -0
  39. package/dist/cjs/formats/string/string-patterns.js +53 -1
  40. package/dist/cjs/formats/string/stringFormats.d.ts +233 -72
  41. package/dist/cjs/formats/string/stringFormats.js +48 -27
  42. package/dist/cjs/formats/structural.d.ts +96 -0
  43. package/dist/cjs/formats/structural.js +5 -0
  44. package/dist/cjs/getRunType.d.ts +1 -1
  45. package/dist/cjs/go-generated/fnHashes.generated.d.ts +55 -1
  46. package/dist/cjs/go-generated/fnHashes.generated.js +71 -2
  47. package/dist/cjs/go-generated/typeFormats.generated.d.ts +88 -0
  48. package/dist/cjs/go-generated/typeFormats.generated.js +26 -0
  49. package/dist/cjs/index.d.ts +14 -6
  50. package/dist/cjs/index.js +29 -13
  51. package/dist/cjs/markers.d.ts +2 -1
  52. package/dist/cjs/mocking/binarySize.d.ts +2 -1
  53. package/dist/cjs/mocking/binarySize.js +2 -2
  54. package/dist/cjs/mocking/childMatch.d.ts +3 -0
  55. package/dist/cjs/mocking/childMatch.js +351 -0
  56. package/dist/cjs/mocking/constants.mock.js +1 -0
  57. package/dist/cjs/mocking/createMockData.d.ts +6 -3
  58. package/dist/cjs/mocking/createMockData.js +10 -5
  59. package/dist/cjs/mocking/mockBigIntFormat.js +5 -7
  60. package/dist/cjs/mocking/mockDateTimeBounds.d.ts +5 -4
  61. package/dist/cjs/mocking/mockDateTimeBounds.js +23 -23
  62. package/dist/cjs/mocking/mockInvalid.d.ts +2 -1
  63. package/dist/cjs/mocking/mockInvalid.js +8 -6
  64. package/dist/cjs/mocking/mockNumberFormat.js +18 -10
  65. package/dist/cjs/mocking/mockOversized.js +12 -9
  66. package/dist/cjs/mocking/mockRandom.d.ts +20 -0
  67. package/dist/cjs/mocking/mockRandom.js +106 -0
  68. package/dist/cjs/mocking/mockRegistry.d.ts +2 -1
  69. package/dist/cjs/mocking/mockStringFormat.d.ts +2 -1
  70. package/dist/cjs/mocking/mockStringFormat.js +76 -84
  71. package/dist/cjs/mocking/mockTemporal.d.ts +2 -1
  72. package/dist/cjs/mocking/mockTemporal.js +46 -47
  73. package/dist/cjs/mocking/mockType.js +285 -40
  74. package/dist/cjs/mocking/mockTypes.d.ts +3 -0
  75. package/dist/cjs/mocking/structuralFormat.d.ts +5 -0
  76. package/dist/cjs/mocking/structuralFormat.js +65 -0
  77. package/dist/cjs/runtypes/dataOnly.d.ts +10 -1
  78. package/dist/cjs/runtypes/entryTuple.d.ts +1 -1
  79. package/dist/cjs/runtypes/entryTuple.js +12 -11
  80. package/dist/cjs/runtypes/formatPattern.d.ts +3 -2
  81. package/dist/cjs/runtypes/formatPattern.js +1 -1
  82. package/dist/cjs/runtypes/jsonShape.d.ts +22 -0
  83. package/dist/cjs/runtypes/jsonShape.js +2 -0
  84. package/dist/cjs/runtypes/pure-fns-utils.d.ts +1 -0
  85. package/dist/cjs/runtypes/pure-fns-utils.js +51 -1
  86. package/dist/cjs/runtypes/rtUtils.d.ts +1 -1
  87. package/dist/cjs/runtypes/rtUtils.js +0 -0
  88. package/dist/cjs/runtypes/sentinelKeys.d.ts +7 -0
  89. package/dist/cjs/runtypes/sentinelKeys.js +2 -0
  90. package/dist/cjs/runtypes/stripRunTypeMeta.d.ts +47 -0
  91. package/dist/cjs/runtypes/stripRunTypeMeta.js +2 -0
  92. package/dist/cjs/runtypes/typeFormat.d.ts +4 -3
  93. package/dist/cjs/runtypes/types.d.ts +14 -1
  94. package/dist/cjs/standard/createJsonSchemaFn.d.ts +8 -0
  95. package/dist/cjs/standard/createJsonSchemaFn.js +16 -0
  96. package/dist/cjs/standard/createStandardSchema.d.ts +4 -3
  97. package/dist/cjs/standard/createStandardSchema.js +8 -3
  98. package/dist/cjs/standard/issueMapping.js +5 -1
  99. package/dist/cjs/standard/jsonSchemaDoc.d.ts +7 -0
  100. package/dist/cjs/standard/jsonSchemaDoc.js +95 -0
  101. package/dist/cjs/standard/spec.d.ts +17 -0
  102. package/dist/createRTFBinary.d.ts +10 -10
  103. package/dist/createRTFBinary.d.ts.map +1 -1
  104. package/dist/createRTFBinary.js +20 -20
  105. package/dist/createRTFBinary.js.map +1 -1
  106. package/dist/createRTFunctions.d.ts +11 -10
  107. package/dist/createRTFunctions.d.ts.map +1 -1
  108. package/dist/createRTFunctions.js +13 -13
  109. package/dist/createRTFunctions.js.map +1 -1
  110. package/dist/enrich/createFriendlyText.d.ts.map +1 -1
  111. package/dist/enrich/createFriendlyText.js +19 -0
  112. package/dist/enrich/createFriendlyText.js.map +1 -1
  113. package/dist/enrich/friendlyText.d.ts +2 -1
  114. package/dist/enrich/friendlyText.d.ts.map +1 -1
  115. package/dist/fnHash.d.ts +1 -0
  116. package/dist/fnHash.d.ts.map +1 -1
  117. package/dist/fnHash.js +10 -1
  118. package/dist/fnHash.js.map +1 -1
  119. package/dist/formats/bigintFormats.d.ts +4 -0
  120. package/dist/formats/bigintFormats.d.ts.map +1 -1
  121. package/dist/formats/bigintFormats.js.map +1 -1
  122. package/dist/formats/datetime/dateTime-pure-fns.js +90 -3
  123. package/dist/formats/datetime/dateTime-pure-fns.js.map +1 -1
  124. package/dist/formats/datetime/dateTimeParams.d.ts +4 -0
  125. package/dist/formats/datetime/dateTimeParams.d.ts.map +1 -1
  126. package/dist/formats/datetime/temporalFormats.d.ts +34 -20
  127. package/dist/formats/datetime/temporalFormats.d.ts.map +1 -1
  128. package/dist/formats/datetime/temporalFormats.js.map +1 -1
  129. package/dist/formats/index.d.ts +2 -1
  130. package/dist/formats/index.d.ts.map +1 -1
  131. package/dist/formats/index.js +1 -1
  132. package/dist/formats/index.js.map +1 -1
  133. package/dist/formats/numberFormats.d.ts +4 -0
  134. package/dist/formats/numberFormats.d.ts.map +1 -1
  135. package/dist/formats/numberFormats.js.map +1 -1
  136. package/dist/formats/string/string-formats-pure-fns.js +392 -2
  137. package/dist/formats/string/string-formats-pure-fns.js.map +1 -1
  138. package/dist/formats/string/string-patterns.d.ts +52 -0
  139. package/dist/formats/string/string-patterns.d.ts.map +1 -1
  140. package/dist/formats/string/string-patterns.js +52 -0
  141. package/dist/formats/string/string-patterns.js.map +1 -1
  142. package/dist/formats/string/stringFormats.d.ts +233 -72
  143. package/dist/formats/string/stringFormats.d.ts.map +1 -1
  144. package/dist/formats/string/stringFormats.js +47 -25
  145. package/dist/formats/string/stringFormats.js.map +1 -1
  146. package/dist/formats/structural.d.ts +97 -0
  147. package/dist/formats/structural.d.ts.map +1 -0
  148. package/dist/formats/structural.js +3 -0
  149. package/dist/formats/structural.js.map +1 -0
  150. package/dist/getRunType.d.ts +1 -1
  151. package/dist/getRunType.d.ts.map +1 -1
  152. package/dist/go-generated/fnHashes.generated.d.ts +55 -1
  153. package/dist/go-generated/fnHashes.generated.d.ts.map +1 -1
  154. package/dist/go-generated/fnHashes.generated.js +71 -2
  155. package/dist/go-generated/fnHashes.generated.js.map +1 -1
  156. package/dist/go-generated/typeFormats.generated.d.ts +89 -0
  157. package/dist/go-generated/typeFormats.generated.d.ts.map +1 -0
  158. package/dist/go-generated/typeFormats.generated.js +24 -0
  159. package/dist/go-generated/typeFormats.generated.js.map +1 -0
  160. package/dist/index.d.ts +14 -6
  161. package/dist/index.d.ts.map +1 -1
  162. package/dist/index.js +8 -3
  163. package/dist/index.js.map +1 -1
  164. package/dist/markers.d.ts +2 -1
  165. package/dist/markers.d.ts.map +1 -1
  166. package/dist/mocking/binarySize.d.ts +2 -1
  167. package/dist/mocking/binarySize.d.ts.map +1 -1
  168. package/dist/mocking/binarySize.js +2 -2
  169. package/dist/mocking/binarySize.js.map +1 -1
  170. package/dist/mocking/childMatch.d.ts +4 -0
  171. package/dist/mocking/childMatch.d.ts.map +1 -0
  172. package/dist/mocking/childMatch.js +348 -0
  173. package/dist/mocking/childMatch.js.map +1 -0
  174. package/dist/mocking/constants.mock.d.ts.map +1 -1
  175. package/dist/mocking/constants.mock.js +1 -0
  176. package/dist/mocking/constants.mock.js.map +1 -1
  177. package/dist/mocking/createMockData.d.ts +6 -3
  178. package/dist/mocking/createMockData.d.ts.map +1 -1
  179. package/dist/mocking/createMockData.js +10 -5
  180. package/dist/mocking/createMockData.js.map +1 -1
  181. package/dist/mocking/mockBigIntFormat.js +5 -7
  182. package/dist/mocking/mockBigIntFormat.js.map +1 -1
  183. package/dist/mocking/mockDateTimeBounds.d.ts +5 -4
  184. package/dist/mocking/mockDateTimeBounds.d.ts.map +1 -1
  185. package/dist/mocking/mockDateTimeBounds.js +23 -23
  186. package/dist/mocking/mockDateTimeBounds.js.map +1 -1
  187. package/dist/mocking/mockInvalid.d.ts +2 -1
  188. package/dist/mocking/mockInvalid.d.ts.map +1 -1
  189. package/dist/mocking/mockInvalid.js +8 -6
  190. package/dist/mocking/mockInvalid.js.map +1 -1
  191. package/dist/mocking/mockNumberFormat.js +18 -10
  192. package/dist/mocking/mockNumberFormat.js.map +1 -1
  193. package/dist/mocking/mockOversized.d.ts.map +1 -1
  194. package/dist/mocking/mockOversized.js +12 -9
  195. package/dist/mocking/mockOversized.js.map +1 -1
  196. package/dist/mocking/mockRandom.d.ts +21 -0
  197. package/dist/mocking/mockRandom.d.ts.map +1 -0
  198. package/dist/mocking/mockRandom.js +102 -0
  199. package/dist/mocking/mockRandom.js.map +1 -0
  200. package/dist/mocking/mockRegistry.d.ts +2 -1
  201. package/dist/mocking/mockRegistry.d.ts.map +1 -1
  202. package/dist/mocking/mockRegistry.js.map +1 -1
  203. package/dist/mocking/mockStringFormat.d.ts +2 -1
  204. package/dist/mocking/mockStringFormat.d.ts.map +1 -1
  205. package/dist/mocking/mockStringFormat.js +76 -84
  206. package/dist/mocking/mockStringFormat.js.map +1 -1
  207. package/dist/mocking/mockTemporal.d.ts +2 -1
  208. package/dist/mocking/mockTemporal.d.ts.map +1 -1
  209. package/dist/mocking/mockTemporal.js +46 -47
  210. package/dist/mocking/mockTemporal.js.map +1 -1
  211. package/dist/mocking/mockType.d.ts.map +1 -1
  212. package/dist/mocking/mockType.js +285 -40
  213. package/dist/mocking/mockType.js.map +1 -1
  214. package/dist/mocking/mockTypes.d.ts +3 -0
  215. package/dist/mocking/mockTypes.d.ts.map +1 -1
  216. package/dist/mocking/structuralFormat.d.ts +6 -0
  217. package/dist/mocking/structuralFormat.d.ts.map +1 -0
  218. package/dist/mocking/structuralFormat.js +60 -0
  219. package/dist/mocking/structuralFormat.js.map +1 -0
  220. package/dist/runtypes/dataOnly.d.ts +10 -1
  221. package/dist/runtypes/dataOnly.d.ts.map +1 -1
  222. package/dist/runtypes/entryTuple.d.ts +1 -1
  223. package/dist/runtypes/entryTuple.d.ts.map +1 -1
  224. package/dist/runtypes/entryTuple.js +12 -11
  225. package/dist/runtypes/entryTuple.js.map +1 -1
  226. package/dist/runtypes/formatPattern.d.ts +3 -2
  227. package/dist/runtypes/formatPattern.d.ts.map +1 -1
  228. package/dist/runtypes/formatPattern.js +1 -1
  229. package/dist/runtypes/formatPattern.js.map +1 -1
  230. package/dist/runtypes/jsonShape.d.ts +23 -0
  231. package/dist/runtypes/jsonShape.d.ts.map +1 -0
  232. package/dist/runtypes/jsonShape.js +2 -0
  233. package/dist/runtypes/jsonShape.js.map +1 -0
  234. package/dist/runtypes/pure-fns-utils.d.ts +1 -0
  235. package/dist/runtypes/pure-fns-utils.d.ts.map +1 -1
  236. package/dist/runtypes/pure-fns-utils.js +50 -0
  237. package/dist/runtypes/pure-fns-utils.js.map +1 -1
  238. package/dist/runtypes/rtUtils.d.ts +1 -1
  239. package/dist/runtypes/rtUtils.d.ts.map +1 -1
  240. package/dist/runtypes/rtUtils.js +0 -0
  241. package/dist/runtypes/rtUtils.js.map +1 -1
  242. package/dist/runtypes/sentinelKeys.d.ts +8 -0
  243. package/dist/runtypes/sentinelKeys.d.ts.map +1 -0
  244. package/dist/runtypes/sentinelKeys.js +2 -0
  245. package/dist/runtypes/sentinelKeys.js.map +1 -0
  246. package/dist/runtypes/stripRunTypeMeta.d.ts +48 -0
  247. package/dist/runtypes/stripRunTypeMeta.d.ts.map +1 -0
  248. package/dist/runtypes/stripRunTypeMeta.js +2 -0
  249. package/dist/runtypes/stripRunTypeMeta.js.map +1 -0
  250. package/dist/runtypes/typeFormat.d.ts +4 -3
  251. package/dist/runtypes/typeFormat.d.ts.map +1 -1
  252. package/dist/runtypes/types.d.ts +14 -1
  253. package/dist/runtypes/types.d.ts.map +1 -1
  254. package/dist/standard/createJsonSchemaFn.d.ts +9 -0
  255. package/dist/standard/createJsonSchemaFn.d.ts.map +1 -0
  256. package/dist/standard/createJsonSchemaFn.js +12 -0
  257. package/dist/standard/createJsonSchemaFn.js.map +1 -0
  258. package/dist/standard/createStandardSchema.d.ts +4 -3
  259. package/dist/standard/createStandardSchema.d.ts.map +1 -1
  260. package/dist/standard/createStandardSchema.js +9 -4
  261. package/dist/standard/createStandardSchema.js.map +1 -1
  262. package/dist/standard/issueMapping.d.ts.map +1 -1
  263. package/dist/standard/issueMapping.js +5 -1
  264. package/dist/standard/issueMapping.js.map +1 -1
  265. package/dist/standard/jsonSchemaDoc.d.ts +8 -0
  266. package/dist/standard/jsonSchemaDoc.d.ts.map +1 -0
  267. package/dist/standard/jsonSchemaDoc.js +90 -0
  268. package/dist/standard/jsonSchemaDoc.js.map +1 -0
  269. package/dist/standard/spec.d.ts +17 -0
  270. package/dist/standard/spec.d.ts.map +1 -1
  271. package/package.json +18 -7
  272. package/skills/rt-enrich-types/SKILL.md +48 -31
  273. package/skills/runtypes-friendly-type/SKILL.md +30 -28
  274. package/skills/runtypes-mock-data/SKILL.md +16 -16
  275. package/src/{schema → builders}/atomic.ts +8 -8
  276. package/src/{schema → builders}/compose.ts +226 -110
  277. package/src/{schema → builders}/index.ts +15 -3
  278. package/src/builders/static.ts +647 -0
  279. package/src/{schema → builders}/utility.ts +3 -3
  280. package/src/createRTFBinary.ts +56 -47
  281. package/src/createRTFunctions.ts +70 -61
  282. package/src/enrich/createFriendlyText.ts +30 -1
  283. package/src/enrich/friendlyText.ts +3 -1
  284. package/src/enrich/mockData.ts +1 -1
  285. package/src/fnHash.ts +16 -1
  286. package/src/formats/bigintFormats.ts +9 -1
  287. package/src/formats/datetime/dateTime-pure-fns.ts +158 -54
  288. package/src/formats/datetime/dateTimeParams.ts +8 -0
  289. package/src/formats/datetime/temporalFormats.ts +65 -31
  290. package/src/formats/index.ts +32 -0
  291. package/src/formats/numberFormats.ts +9 -1
  292. package/src/formats/scalars.ts +1 -1
  293. package/src/formats/string/string-formats-pure-fns.ts +499 -42
  294. package/src/formats/string/string-patterns.ts +90 -1
  295. package/src/formats/string/stringFormats.ts +511 -96
  296. package/src/formats/structural.ts +211 -0
  297. package/src/getRunType.ts +10 -10
  298. package/src/go-generated/README.md +4 -4
  299. package/src/go-generated/fnHashes.generated.ts +71 -2
  300. package/src/go-generated/runTypeKind.generated.ts +2 -2
  301. package/src/go-generated/typeFormats.generated.ts +58 -0
  302. package/src/index.ts +70 -17
  303. package/src/markers.ts +34 -12
  304. package/src/mocking/binarySize.ts +4 -3
  305. package/src/mocking/childMatch.ts +369 -0
  306. package/src/mocking/constants.mock.ts +3 -0
  307. package/src/mocking/createMockData.ts +37 -11
  308. package/src/mocking/mockBigIntFormat.ts +6 -9
  309. package/src/mocking/mockDateTimeBounds.ts +31 -23
  310. package/src/mocking/mockInvalid.ts +18 -6
  311. package/src/mocking/mockNumberFormat.ts +25 -12
  312. package/src/mocking/mockOversized.ts +13 -9
  313. package/src/mocking/mockRandom.ts +181 -0
  314. package/src/mocking/mockRegistry.ts +8 -2
  315. package/src/mocking/mockStringFormat.ts +113 -94
  316. package/src/mocking/mockTemporal.ts +47 -47
  317. package/src/mocking/mockType.ts +365 -59
  318. package/src/mocking/mockTypes.ts +19 -4
  319. package/src/mocking/structuralFormat.ts +67 -0
  320. package/src/runtypes/dataOnly.ts +76 -44
  321. package/src/runtypes/dataView.ts +1 -1
  322. package/src/runtypes/entryTuple.ts +15 -12
  323. package/src/runtypes/formatAnnotation.ts +1 -1
  324. package/src/runtypes/formatPattern.ts +24 -11
  325. package/src/runtypes/jsonShape.ts +202 -0
  326. package/src/runtypes/pure-fns-utils.ts +91 -5
  327. package/src/runtypes/rtUtils.ts +0 -0
  328. package/src/runtypes/sentinelKeys.ts +46 -0
  329. package/src/runtypes/stripRunTypeMeta.ts +328 -0
  330. package/src/runtypes/typeFormat.ts +7 -4
  331. package/src/runtypes/types.ts +60 -5
  332. package/src/standard/createJsonSchemaFn.ts +51 -0
  333. package/src/standard/createStandardSchema.ts +36 -18
  334. package/src/standard/issueMapping.ts +10 -3
  335. package/src/standard/jsonSchemaDoc.ts +152 -0
  336. package/src/standard/spec.ts +41 -0
  337. package/dist/cjs/mocking/mockUtils.d.ts +0 -10
  338. package/dist/cjs/mocking/mockUtils.js +0 -58
  339. package/dist/cjs/schema/static.d.ts +0 -87
  340. package/dist/mocking/mockUtils.d.ts +0 -11
  341. package/dist/mocking/mockUtils.d.ts.map +0 -1
  342. package/dist/mocking/mockUtils.js +0 -47
  343. package/dist/mocking/mockUtils.js.map +0 -1
  344. package/dist/schema/atomic.d.ts.map +0 -1
  345. package/dist/schema/atomic.js.map +0 -1
  346. package/dist/schema/compose.d.ts.map +0 -1
  347. package/dist/schema/compose.js +0 -80
  348. package/dist/schema/compose.js.map +0 -1
  349. package/dist/schema/index.d.ts.map +0 -1
  350. package/dist/schema/index.js.map +0 -1
  351. package/dist/schema/static.d.ts +0 -88
  352. package/dist/schema/static.d.ts.map +0 -1
  353. package/dist/schema/utility.d.ts.map +0 -1
  354. package/dist/schema/utility.js.map +0 -1
  355. package/src/mocking/mockUtils.ts +0 -64
  356. package/src/schema/static.ts +0 -292
  357. /package/dist/{schema → builders}/atomic.d.ts +0 -0
  358. /package/dist/{schema → builders}/atomic.js +0 -0
  359. /package/dist/{schema → builders}/static.js +0 -0
  360. /package/dist/{schema → builders}/utility.d.ts +0 -0
  361. /package/dist/{schema → builders}/utility.js +0 -0
  362. /package/dist/cjs/{schema → builders}/atomic.d.ts +0 -0
  363. /package/dist/cjs/{schema → builders}/atomic.js +0 -0
  364. /package/dist/cjs/{schema → builders}/static.js +0 -0
  365. /package/dist/cjs/{schema → builders}/utility.d.ts +0 -0
  366. /package/dist/cjs/{schema → builders}/utility.js +0 -0
package/README.md ADDED
@@ -0,0 +1,31 @@
1
+ # @ts-runtypes/core
2
+
3
+ **Compile-time runtime types for TypeScript 7 / typescript-go (tsgo).**
4
+
5
+ TypeScript throws your types away before your code ever runs. RunTypes reads them
6
+ first, at build time, and hands the runtime back what it lost: validators, JSON and
7
+ binary (de)serializers, mock data, and reflection.
8
+
9
+ This is the runtime package: the sentinel markers the compiler looks for, plus the
10
+ small helper runtime the generated code calls into. It has **zero dependencies**.
11
+ The build-time half lives in
12
+ [`@ts-runtypes/devtools`](https://www.npmjs.com/package/@ts-runtypes/devtools).
13
+
14
+ ## Documentation
15
+
16
+ Install, guides, the factory reference, and benchmarks live at
17
+ **[runtypes.pages.dev](https://runtypes.pages.dev/)**.
18
+
19
+ - [Quick start](https://runtypes.pages.dev/introduction/quick-start)
20
+ - [Configuration](https://runtypes.pages.dev/introduction/configuration)
21
+ - [Source and issues](https://github.com/MionKit/ts-run-types)
22
+
23
+ ## Status
24
+
25
+ Experimental.
26
+
27
+ ## License
28
+
29
+ Proprietary — all rights reserved. No use, copying, or distribution without prior
30
+ written authorization. See
31
+ [LICENSE](https://github.com/MionKit/ts-run-types/blob/main/LICENSE).
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atomic.d.ts","sourceRoot":"","sources":["../../src/builders/atomic.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAInD,wBAAgB,OAAO,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAEvE;AAOD,wBAAgB,OAAO,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,EAC3F,KAAK,EAAE,CAAC,EACR,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GACtB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAQD,wBAAgB,MAAM,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAEpE;AAOD,wBAAgB,MAAM,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAEpE;AASD,wBAAgB,GAAG,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAE3D;AAID,wBAAgB,OAAO,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAEvE;AAID,wBAAgB,KAAK,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAEjE;AAKD,wBAAgB,QAAQ,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAElE;AAUD,wBAAgB,SAAS,CAAC,QAAQ,EAChC,IAAI,EAAE,QAAQ,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,QAAQ,EAC/C,EAAE,CAAC,EAAE,eAAe,CAAC,QAAQ,CAAC,GAC7B,OAAO,CAAC,QAAQ,CAAC,CAEnB;AAkBD,wBAAgB,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtE,UAAU,EAAE,CAAC,EACb,EAAE,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAC/B,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAErB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"atomic.js","sourceRoot":"","sources":["../../src/builders/atomic.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAC,aAAa,EAAC,MAAM,4BAA4B,CAAC;AAMzD,MAAM,UAAU,OAAO,CAAC,EAA6B;IACnD,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAC;AAChE,CAAC;AAOD,MAAM,UAAU,OAAO,CACrB,KAAQ,EACR,EAAuB;IAEvB,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAC,CAAC,CAAC;AAC9D,CAAC;AAQD,MAAM,UAAU,MAAM,CAAC,EAA4B;IACjD,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAC;AAC/D,CAAC;AAOD,MAAM,UAAU,MAAM,CAAC,EAA4B;IACjD,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAC;AAC/D,CAAC;AASD,MAAM,UAAU,GAAG,CAAC,EAAyB;IAC3C,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAC;AAC5D,CAAC;AAID,MAAM,UAAU,OAAO,CAAC,EAA6B;IACnD,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAC;AAChE,CAAC;AAID,MAAM,UAAU,KAAK,CAAC,EAA2B;IAC/C,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAC;AAC9D,CAAC;AAKD,MAAM,UAAU,QAAQ,CAAC,EAA0B;IACjD,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,EAAC,CAAC,CAAC;AAC7D,CAAC;AAUD,MAAM,UAAU,SAAS,CACvB,IAA+C,EAC/C,EAA8B;IAE9B,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC;AAClD,CAAC;AAkBD,MAAM,UAAU,QAAQ,CACtB,UAAa,EACb,EAAgC;IAEhC,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAC,CAAC,CAAC;AAChE,CAAC"}
@@ -1,12 +1,21 @@
1
1
  import type { RunType } from '../runtypes/types.ts';
2
2
  import type { ExactParams } from '../runtypes/builderTypes.ts';
3
3
  import type { InjectRunTypeId, CompTimeArgs } from '../markers.ts';
4
- import type { InferType, MapTuple, UnionOf, IntersectionOf, TemplatePart, AssembleTemplate, ObjectType, PropModifiers, PropModCarrier, Self, Recursive } from './static.ts';
4
+ import type { FormattedArrayParamsValueFirst, FormattedObjectParamsValueFirst, FormattedArrayFrom, FormattedObjectFrom } from '../formats/structural.ts';
5
+ import type { InferType, UnionOf, IntersectionOf, TemplatePart, AssembleTemplate, ObjectType, PropModifiers, PropModCarrier, Self, Recursive, LabeledTuple, SlotCarrier, TupleFromGroups, LabeledTupleFromGroups, FuncFromParams } from './static.ts';
5
6
  export declare function array<T>(item: CompTimeArgs<RunType<T>>, id?: InjectRunTypeId<T[]>): RunType<T[]>;
6
- export declare function tuple<const T extends readonly RunType[]>(items: CompTimeArgs<T>, id?: InjectRunTypeId<MapTuple<T>>): RunType<MapTuple<T>>;
7
- export declare function tuple<const T extends readonly RunType[], const O extends readonly RunType[]>(items: CompTimeArgs<T>, optionalItems: CompTimeArgs<O>, id?: InjectRunTypeId<[...MapTuple<T>, ...Partial<MapTuple<O>>]>): RunType<[...MapTuple<T>, ...Partial<MapTuple<O>>]>;
8
- export declare function tuple<const T extends readonly RunType[], const O extends readonly RunType[], R>(items: CompTimeArgs<T>, optionalItems: CompTimeArgs<O>, rest: CompTimeArgs<RunType<R>>, id?: InjectRunTypeId<[...MapTuple<T>, ...Partial<MapTuple<O>>, ...R[]]>): RunType<[...MapTuple<T>, ...Partial<MapTuple<O>>, ...R[]]>;
9
- export declare function tuple<const T extends readonly RunType[], R>(items: CompTimeArgs<T>, rest: CompTimeArgs<RunType<R>>, id?: InjectRunTypeId<[...MapTuple<T>, ...R[]]>): RunType<[...MapTuple<T>, ...R[]]>;
7
+ export declare function array<T, const P extends FormattedArrayParamsValueFirst>(item: CompTimeArgs<RunType<T>>, params: CompTimeArgs<ExactParams<P, FormattedArrayParamsValueFirst>>, id?: InjectRunTypeId<FormattedArrayFrom<T[], P>>): RunType<FormattedArrayFrom<T[], P>>;
8
+ export declare function slot<const Label extends string, Value>(label: CompTimeArgs<Label>, value: CompTimeArgs<RunType<Value>>): SlotCarrier<Label, Value>;
9
+ export declare function tuple<const T extends readonly RunType[] = [], const O extends readonly RunType[] = [], RestValue = never>(parts: CompTimeArgs<{
10
+ readonly required?: T;
11
+ readonly optional?: O;
12
+ readonly rest?: RunType<RestValue>;
13
+ }>, id?: InjectRunTypeId<TupleFromGroups<T, O, RestValue>>): RunType<TupleFromGroups<T, O, RestValue>>;
14
+ export declare function tuple<const T extends readonly SlotCarrier<string, unknown>[] = [], const O extends readonly SlotCarrier<string, unknown>[] = [], const RestLabel extends string = never, RestValue = never>(parts: CompTimeArgs<{
15
+ readonly required?: T;
16
+ readonly optional?: O;
17
+ readonly rest?: SlotCarrier<RestLabel, RestValue>;
18
+ }>, id?: InjectRunTypeId<LabeledTupleFromGroups<T, O, RestLabel, RestValue>>): RunType<LabeledTupleFromGroups<T, O, RestLabel, RestValue>>;
10
19
  export declare function union<A, B>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>]>, id?: InjectRunTypeId<A | B>): RunType<A | B>;
11
20
  export declare function union<A, B, C>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>, RunType<C>]>, id?: InjectRunTypeId<A | B | C>): RunType<A | B | C>;
12
21
  export declare function union<A, B, C, D>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>, RunType<C>, RunType<D>]>, id?: InjectRunTypeId<A | B | C | D>): RunType<A | B | C | D>;
@@ -15,18 +24,30 @@ export declare function union<A, B, C, D, E, F>(members: CompTimeArgs<readonly [
15
24
  export declare function union<A, B, C, D, E, F, G>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>, RunType<C>, RunType<D>, RunType<E>, RunType<F>, RunType<G>]>, id?: InjectRunTypeId<A | B | C | D | E | F | G>): RunType<A | B | C | D | E | F | G>;
16
25
  export declare function union<A, B, C, D, E, F, G, H>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>, RunType<C>, RunType<D>, RunType<E>, RunType<F>, RunType<G>, RunType<H>]>, id?: InjectRunTypeId<A | B | C | D | E | F | G | H>): RunType<A | B | C | D | E | F | G | H>;
17
26
  export declare function union<const T extends readonly RunType[]>(members: CompTimeArgs<T>, id?: InjectRunTypeId<UnionOf<T>>): RunType<UnionOf<T>>;
27
+ export declare const anyOf: typeof union;
18
28
  export declare function intersection<A, B = unknown, C = unknown, D = unknown>(a: CompTimeArgs<RunType<A>>, b?: CompTimeArgs<RunType<B>>, c?: CompTimeArgs<RunType<C>>, d?: CompTimeArgs<RunType<D>>, id?: InjectRunTypeId<A & B & C & D>): RunType<A & B & C & D>;
19
29
  export declare function intersection<const T extends readonly RunType[]>(members: CompTimeArgs<T>, id?: InjectRunTypeId<IntersectionOf<T>>): RunType<IntersectionOf<T>>;
20
30
  export declare function record<V>(valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Record<string, V>>): RunType<Record<string, V>>;
31
+ export declare function record<V, const P extends FormattedObjectParamsValueFirst>(valueSchema: CompTimeArgs<RunType<V>>, params: CompTimeArgs<ExactParams<P, FormattedObjectParamsValueFirst>>, id?: InjectRunTypeId<FormattedObjectFrom<Record<string, V>, P>>): RunType<FormattedObjectFrom<Record<string, V>, P>>;
21
32
  export declare function record<K extends string | number, V>(keySchema: CompTimeArgs<RunType<K>>, valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Record<K, V>>): RunType<Record<K, V>>;
33
+ export declare function record<K extends string | number, V, const P extends FormattedObjectParamsValueFirst>(keySchema: CompTimeArgs<RunType<K>>, valueSchema: CompTimeArgs<RunType<V>>, params: CompTimeArgs<ExactParams<P, FormattedObjectParamsValueFirst>>, id?: InjectRunTypeId<FormattedObjectFrom<Record<K, V>, P>>): RunType<FormattedObjectFrom<Record<K, V>, P>>;
22
34
  export declare function map<K, V>(keySchema: CompTimeArgs<RunType<K>>, valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Map<K, V>>): RunType<Map<K, V>>;
23
35
  export declare function set<V>(valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Set<V>>): RunType<Set<V>>;
24
36
  export declare function self(id?: InjectRunTypeId<Self>): RunType<Self>;
25
37
  export declare function circular<Body>(body: CompTimeArgs<RunType<Body>>, id?: InjectRunTypeId<Recursive<Body>>): RunType<Recursive<Body>>;
26
38
  export declare function promise<V>(valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Promise<V>>): RunType<Promise<V>>;
27
- export declare function func<R extends RunType = RunType<void>>(params?: CompTimeArgs<readonly []>, ret?: CompTimeArgs<R>, id?: InjectRunTypeId<() => InferType<R>>): RunType<() => InferType<R>>;
28
- export declare function func<const P extends readonly RunType[] = [], R extends RunType = RunType<void>>(params?: CompTimeArgs<P>, ret?: CompTimeArgs<R>, id?: InjectRunTypeId<(...args: MapTuple<P>) => InferType<R>>): RunType<(...args: MapTuple<P>) => InferType<R>>;
29
- export declare function func<T extends readonly unknown[], R extends RunType = RunType<void>>(paramsTuple: CompTimeArgs<RunType<T>>, ret?: CompTimeArgs<R>, id?: InjectRunTypeId<(...args: T) => InferType<R>>): RunType<(...args: T) => InferType<R>>;
39
+ export declare function func<const P extends readonly RunType[] = [], R extends RunType = RunType<void>>(parts?: CompTimeArgs<{
40
+ readonly params?: P;
41
+ readonly ret?: R;
42
+ }>, id?: InjectRunTypeId<FuncFromParams<P, InferType<R>>>): RunType<FuncFromParams<P, InferType<R>>>;
43
+ export declare function func<const P extends readonly SlotCarrier<string, unknown>[], R extends RunType = RunType<void>>(parts: CompTimeArgs<{
44
+ readonly params: P;
45
+ readonly ret?: R;
46
+ }>, id?: InjectRunTypeId<(...args: LabeledTuple<P>) => InferType<R>>): RunType<(...args: LabeledTuple<P>) => InferType<R>>;
47
+ export declare function func<T extends readonly unknown[], R extends RunType = RunType<void>>(parts: CompTimeArgs<{
48
+ readonly params: RunType<T>;
49
+ readonly ret?: R;
50
+ }>, id?: InjectRunTypeId<(...args: T) => InferType<R>>): RunType<(...args: T) => InferType<R>>;
30
51
  export declare function callable<Fn, Props>(fn: CompTimeArgs<RunType<Fn>>, iface: CompTimeArgs<RunType<Props>>, id?: InjectRunTypeId<Fn & Props>): RunType<Fn & Props>;
31
52
  export declare function templateLiteral<const P extends readonly TemplatePart[]>(parts: CompTimeArgs<P>, id?: InjectRunTypeId<AssembleTemplate<P>>): RunType<AssembleTemplate<P>>;
32
53
  export declare function propMod<const M extends PropModifiers, const F>(modifiers: CompTimeArgs<ExactParams<M, PropModifiers>>, field: CompTimeArgs<F>): PropModCarrier<M, F>;
@@ -34,4 +55,5 @@ export declare function optional<const F>(field: CompTimeArgs<F>): PropModCarrie
34
55
  optional: true;
35
56
  }, F>;
36
57
  export declare function object<const C extends Record<string, unknown>>(config: CompTimeArgs<C>, id?: InjectRunTypeId<ObjectType<C>>): RunType<ObjectType<C>>;
58
+ export declare function object<const C extends Record<string, unknown>, const P extends FormattedObjectParamsValueFirst>(config: CompTimeArgs<C>, params: CompTimeArgs<ExactParams<P, FormattedObjectParamsValueFirst>>, id?: InjectRunTypeId<FormattedObjectFrom<ObjectType<C>, P>>): RunType<FormattedObjectFrom<ObjectType<C>, P>>;
37
59
  //# sourceMappingURL=compose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/builders/compose.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ import { builderResult } from "../runtypes/builderCore.js";
2
+ function isRunTypeLike(arg) {
3
+ return typeof arg === 'object' && arg !== null && !Array.isArray(arg) && ('kind' in arg || 'type' in arg || '__rtType' in arg);
4
+ }
5
+ function isFormatParams(arg) {
6
+ return typeof arg === 'object' && arg !== null && !Array.isArray(arg) && !isRunTypeLike(arg);
7
+ }
8
+ function isSlotCarrier(arg) {
9
+ return typeof arg === 'object' && arg !== null && typeof arg.__slotLabel === 'string';
10
+ }
11
+ function slotChild(arg) {
12
+ return isSlotCarrier(arg) ? arg.__slotValue : arg;
13
+ }
14
+ export function array(item, arg2, arg3) {
15
+ const base = { type: 'array', child: item };
16
+ if (isFormatParams(arg2)) {
17
+ return builderResult(arg3, base);
18
+ }
19
+ return builderResult(arg2, base);
20
+ }
21
+ export function slot(label, value) {
22
+ return { __slotLabel: label, __slotValue: value };
23
+ }
24
+ export function tuple(parts, id) {
25
+ return builderResult(id, {
26
+ type: 'tuple',
27
+ children: (parts.required ?? []).map(slotChild),
28
+ optionalChildren: parts.optional?.map(slotChild),
29
+ rest: parts.rest === undefined ? undefined : slotChild(parts.rest),
30
+ });
31
+ }
32
+ export function union(members, id) {
33
+ return builderResult(id, { type: 'union', children: members });
34
+ }
35
+ export const anyOf = union;
36
+ export function intersection(arg1, arg2, arg3, arg4, arg5) {
37
+ if (Array.isArray(arg1)) {
38
+ return builderResult(arg2, { type: 'intersection', children: arg1 });
39
+ }
40
+ return builderResult(arg5, {
41
+ type: 'intersection',
42
+ children: [arg1, arg2, arg3, arg4],
43
+ });
44
+ }
45
+ export function record(arg1, arg2, arg3, arg4) {
46
+ if (isRunTypeLike(arg2)) {
47
+ const base = { type: 'record', index: arg1, child: arg2 };
48
+ if (isFormatParams(arg3)) {
49
+ return builderResult(arg4, base);
50
+ }
51
+ return builderResult(arg3, base);
52
+ }
53
+ const base = { type: 'record', child: arg1 };
54
+ if (isFormatParams(arg2)) {
55
+ return builderResult(arg3, base);
56
+ }
57
+ return builderResult(arg2, base);
58
+ }
59
+ export function map(keySchema, valueSchema, id) {
60
+ return builderResult(id, { type: 'map', index: keySchema, child: valueSchema });
61
+ }
62
+ export function set(valueSchema, id) {
63
+ return builderResult(id, { type: 'set', child: valueSchema });
64
+ }
65
+ export function self(id) {
66
+ return builderResult(id, { type: 'self' });
67
+ }
68
+ export function circular(body, id) {
69
+ return builderResult(id, { type: 'circular', child: body });
70
+ }
71
+ export function promise(valueSchema, id) {
72
+ return builderResult(id, { type: 'promise', child: valueSchema });
73
+ }
74
+ export function func(parts, id) {
75
+ const params = parts?.params;
76
+ const parameters = Array.isArray(params) ? params.map(slotChild) : (params ?? []);
77
+ return builderResult(id, { type: 'function', parameters, return: parts?.ret });
78
+ }
79
+ export function callable(fn, iface, id) {
80
+ return builderResult(id, { type: 'intersection', children: [fn, iface] });
81
+ }
82
+ export function templateLiteral(parts, id) {
83
+ return builderResult(id, { type: 'templateLiteral', children: parts });
84
+ }
85
+ export function propMod(modifiers, field) {
86
+ return { __propMod: modifiers, __field: field };
87
+ }
88
+ export function optional(field) {
89
+ return propMod({ optional: true }, field);
90
+ }
91
+ export function object(config, arg2, arg3) {
92
+ if (isFormatParams(arg2)) {
93
+ return builderResult(arg3, config);
94
+ }
95
+ return builderResult(arg2, config);
96
+ }
97
+ //# sourceMappingURL=compose.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/builders/compose.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export { boolean, literal, regexp, symbol, any, unknown, never, voidType, voidType as void, classType, enumType, enumType as enum, } from './atomic.ts';
2
- export { object, array, tuple, union, intersection, record, map, set, promise, circular, self, func, callable, templateLiteral, propMod, optional, } from './compose.ts';
2
+ export { object, array, tuple, slot, union, anyOf, intersection, record, map, set, promise, circular, self, func, callable, templateLiteral, propMod, optional, } from './compose.ts';
3
3
  export { partial, required, pick, omit, exclude, extract, nonNullable, readonlyType, readonlyType as readonly, returnType, parameters, } from './utility.ts';
4
- export type { PropModifiers, MapTuple, TemplatePart, AssembleTemplate } from './static.ts';
4
+ export type { PropModifiers, MapTuple, TemplatePart, AssembleTemplate, AnyOf } from './static.ts';
5
5
  import '../runtypes/pure-fns-utils.ts';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/builders/index.ts"],"names":[],"mappings":"AA2BA,OAAO,EACL,OAAO,EACP,OAAO,EACP,MAAM,EACN,MAAM,EACN,GAAG,EACH,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,IAAI,IAAI,EAChB,SAAS,EACT,QAAQ,EACR,QAAQ,IAAI,IAAI,GACjB,MAAM,aAAa,CAAC;AAQrB,OAAO,EACL,MAAM,EACN,KAAK,EACL,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,YAAY,EACZ,MAAM,EACN,GAAG,EACH,GAAG,EACH,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,eAAe,EACf,OAAO,EACP,QAAQ,GACT,MAAM,cAAc,CAAC;AAOtB,OAAO,EACL,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,OAAO,EACP,WAAW,EACX,YAAY,EACZ,YAAY,IAAI,QAAQ,EACxB,UAAU,EACV,UAAU,GACX,MAAM,cAAc,CAAC;AAKtB,YAAY,EAAC,aAAa,EAAE,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAC,MAAM,aAAa,CAAC;AAQhG,OAAO,+BAA+B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  export { boolean, literal, regexp, symbol, any, unknown, never, voidType, voidType as void, classType, enumType, enumType as enum, } from "./atomic.js";
2
- export { object, array, tuple, union, intersection, record, map, set, promise, circular, self, func, callable, templateLiteral, propMod, optional, } from "./compose.js";
2
+ export { object, array, tuple, slot, union, anyOf, intersection, record, map, set, promise, circular, self, func, callable, templateLiteral, propMod, optional, } from "./compose.js";
3
3
  export { partial, required, pick, omit, exclude, extract, nonNullable, readonlyType, readonlyType as readonly, returnType, parameters, } from "./utility.js";
4
4
  import "../runtypes/pure-fns-utils.js";
5
5
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/builders/index.ts"],"names":[],"mappings":"AA2BA,OAAO,EACL,OAAO,EACP,OAAO,EACP,MAAM,EACN,MAAM,EACN,GAAG,EACH,OAAO,EACP,KAAK,EACL,QAAQ,EACR,QAAQ,IAAI,IAAI,EAChB,SAAS,EACT,QAAQ,EACR,QAAQ,IAAI,IAAI,GACjB,MAAM,aAAa,CAAC;AAQrB,OAAO,EACL,MAAM,EACN,KAAK,EACL,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,YAAY,EACZ,MAAM,EACN,GAAG,EACH,GAAG,EACH,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,eAAe,EACf,OAAO,EACP,QAAQ,GACT,MAAM,cAAc,CAAC;AAOtB,OAAO,EACL,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,OAAO,EACP,WAAW,EACX,YAAY,EACZ,YAAY,IAAI,QAAQ,EACxB,UAAU,EACV,UAAU,GACX,MAAM,cAAc,CAAC;AAatB,OAAO,+BAA+B,CAAC"}
@@ -0,0 +1,141 @@
1
+ import type { __rtFormatName, __rtFormatParams, __rtFormatBrand, __rtContains, __rtPatternProps, __rtPropNames, __rtLabels } from '../runtypes/sentinelKeys.ts';
2
+ import type { RunType } from '../runtypes/types.ts';
3
+ import type { InferType } from '../runtypes/builderTypes.ts';
4
+ export type { InferType, LeafType, LeafTypeByFormatName, LeafFormatName, BrandArg, TemporalFormatByTag, TemporalBaseByTag, TemporalBuilderFn, } from '../runtypes/builderTypes.ts';
5
+ export interface PropModifiers {
6
+ optional?: true;
7
+ readonly?: true;
8
+ }
9
+ export interface PropModCarrier<M extends PropModifiers, F> {
10
+ readonly __propMod: M;
11
+ readonly __field: F;
12
+ }
13
+ export type FieldOf<V> = V extends {
14
+ __propMod: PropModifiers;
15
+ __field: unknown;
16
+ } ? InferType<V['__field']> : InferType<V>;
17
+ export type IsOptional<V> = V extends {
18
+ __propMod: {
19
+ optional: true;
20
+ };
21
+ } ? true : false;
22
+ export type IsReadonly<V> = V extends {
23
+ __propMod: {
24
+ readonly: true;
25
+ };
26
+ } ? true : false;
27
+ type Flatten<T> = {
28
+ [K in keyof T]: T[K];
29
+ };
30
+ type AnyOptional<C> = true extends {
31
+ [K in keyof C]: IsOptional<C[K]>;
32
+ }[keyof C] ? true : false;
33
+ type AnyReadonly<C> = true extends {
34
+ [K in keyof C]: IsReadonly<C[K]>;
35
+ }[keyof C] ? true : false;
36
+ type ObjectOptionalOnly<C> = Flatten<{
37
+ -readonly [K in keyof C as IsOptional<C[K]> extends true ? never : K]: FieldOf<C[K]>;
38
+ } & {
39
+ -readonly [K in keyof C as IsOptional<C[K]> extends true ? K : never]?: FieldOf<C[K]>;
40
+ }>;
41
+ type ObjectReadonlyOnly<C> = Flatten<{
42
+ -readonly [K in keyof C as IsReadonly<C[K]> extends true ? never : K]: FieldOf<C[K]>;
43
+ } & {
44
+ readonly [K in keyof C as IsReadonly<C[K]> extends true ? K : never]: FieldOf<C[K]>;
45
+ }>;
46
+ type ObjectMixed<C> = Flatten<{
47
+ -readonly [K in keyof C as IsOptional<C[K]> extends true ? never : IsReadonly<C[K]> extends true ? never : K]: FieldOf<C[K]>;
48
+ } & {
49
+ readonly [K in keyof C as IsOptional<C[K]> extends true ? never : IsReadonly<C[K]> extends true ? K : never]: FieldOf<C[K]>;
50
+ } & {
51
+ -readonly [K in keyof C as IsOptional<C[K]> extends true ? (IsReadonly<C[K]> extends true ? never : K) : never]?: FieldOf<C[K]>;
52
+ } & {
53
+ readonly [K in keyof C as IsOptional<C[K]> extends true ? (IsReadonly<C[K]> extends true ? K : never) : never]?: FieldOf<C[K]>;
54
+ }>;
55
+ export type ObjectType<C> = AnyOptional<C> extends false ? AnyReadonly<C> extends false ? {
56
+ -readonly [K in keyof C]: FieldOf<C[K]>;
57
+ } : ObjectReadonlyOnly<C> : AnyReadonly<C> extends false ? ObjectOptionalOnly<C> : ObjectMixed<C>;
58
+ export type MapTuple<T extends readonly RunType[]> = {
59
+ -readonly [K in keyof T]: InferType<T[K]>;
60
+ };
61
+ export interface SlotCarrier<Label extends string, Value> {
62
+ readonly __slotLabel: Label;
63
+ readonly __slotValue: RunType<Value>;
64
+ }
65
+ export type SlotValues<Slots extends readonly SlotCarrier<string, unknown>[]> = {
66
+ -readonly [K in keyof Slots]: InferType<Slots[K]['__slotValue']>;
67
+ };
68
+ export type SlotLabels<Slots extends readonly SlotCarrier<string, unknown>[]> = {
69
+ -readonly [K in keyof Slots]: Slots[K]['__slotLabel'];
70
+ };
71
+ export type LabeledTuple<Slots extends readonly SlotCarrier<string, unknown>[], OptionalSlots extends readonly SlotCarrier<string, unknown>[] = []> = [...SlotValues<Slots>, ...Partial<SlotValues<OptionalSlots>>] & {
72
+ readonly [__rtLabels]?: readonly [...SlotLabels<Slots>, ...SlotLabels<OptionalSlots>];
73
+ };
74
+ export type LabeledRestTuple<Slots extends readonly SlotCarrier<string, unknown>[], OptionalSlots extends readonly SlotCarrier<string, unknown>[], RestLabel extends string, Rest> = [...SlotValues<Slots>, ...Partial<SlotValues<OptionalSlots>>, ...Rest[]] & {
75
+ readonly [__rtLabels]?: readonly [...SlotLabels<Slots>, ...SlotLabels<OptionalSlots>, RestLabel];
76
+ };
77
+ export type TupleFromGroups<Items extends readonly RunType[], OptionalItems extends readonly RunType[], Rest> = [Rest] extends [
78
+ never
79
+ ] ? [...MapTuple<Items>, ...Partial<MapTuple<OptionalItems>>] : [...MapTuple<Items>, ...Partial<MapTuple<OptionalItems>>, ...Rest[]];
80
+ export type LabeledTupleFromGroups<Slots extends readonly SlotCarrier<string, unknown>[], OptionalSlots extends readonly SlotCarrier<string, unknown>[], RestLabel extends string, Rest> = [RestLabel] extends [never] ? LabeledTuple<Slots, OptionalSlots> : LabeledRestTuple<Slots, OptionalSlots, RestLabel, Rest>;
81
+ export type FuncFromParams<Params extends readonly RunType[], Return> = Params extends readonly [] ? () => Return : (...args: MapTuple<Params>) => Return;
82
+ export type UnionOf<T extends readonly RunType[]> = T extends readonly [
83
+ infer Head extends RunType,
84
+ ...infer Tail extends readonly RunType[]
85
+ ] ? InferType<Head> | UnionOf<Tail> : never;
86
+ export type AnyOf<Branches extends readonly [unknown, ...unknown[]]> = Branches[number];
87
+ export type IntersectionOf<T extends readonly RunType[]> = T extends readonly [
88
+ infer Head extends RunType,
89
+ ...infer Tail extends readonly RunType[]
90
+ ] ? InferType<Head> & IntersectionOf<Tail> : unknown;
91
+ export type TemplatePart = string | RunType;
92
+ type Interpolatable = string | number | bigint | boolean | null | undefined;
93
+ type Unbrand<X> = typeof __rtFormatName extends keyof X ? X extends string ? string : X extends number ? number : X extends bigint ? bigint : X & Interpolatable : X & Interpolatable;
94
+ type PartText<Part extends TemplatePart> = Part extends RunType ? Unbrand<InferType<Part>> : Part & Interpolatable;
95
+ export type AssembleTemplate<P extends readonly TemplatePart[]> = P extends readonly [
96
+ infer Head extends TemplatePart,
97
+ ...infer Tail extends readonly TemplatePart[]
98
+ ] ? `${PartText<Head>}${AssembleTemplate<Tail>}` : '';
99
+ declare const SelfBrand: unique symbol;
100
+ export type Self = {
101
+ readonly [SelfBrand]: true;
102
+ };
103
+ export type CarriedKey = typeof __rtFormatName | typeof __rtFormatParams | typeof __rtFormatBrand | typeof __rtContains | typeof __rtPatternProps | typeof __rtPropNames | typeof __rtLabels;
104
+ type HasCarried<T> = [Extract<keyof T, CarriedKey>] extends [never] ? false : true;
105
+ type CarrySlots<T, P extends [unknown]> = {
106
+ readonly [K in Extract<keyof T, CarriedKey>]?: SubstituteSelf<NonNullable<T[K]>, P>;
107
+ };
108
+ type ContainsSelf<T, Depth extends unknown[] = []> = AnyTrue<ContainsSelfIn<T, Depth>>;
109
+ type AnyTrue<B> = [B] extends [never] ? false : [B] extends [false] ? false : true;
110
+ type ContainsSelfIn<T, Depth extends unknown[]> = Depth['length'] extends 24 ? false : 0 extends 1 & T ? false : T extends Self ? true : T extends string | number | boolean | bigint | symbol | null | undefined ? false : T extends Date | RegExp ? false : T extends Map<any, any> ? T extends Map<infer K, infer V> ? AnyTrue<ContainsSelfIn<K, Next<Depth>> | ContainsSelfIn<V, Next<Depth>>> : false : T extends Set<any> ? T extends Set<infer E> ? ContainsSelf<E, Next<Depth>> : false : T extends Promise<infer E> ? ContainsSelf<E, Next<Depth>> : T extends (...args: infer A extends readonly unknown[]) => infer R ? AnyTrue<ContainsSelfIn<A[number], Next<Depth>> | ContainsSelfIn<R, Next<Depth>>> : T extends readonly unknown[] ? number extends T['length'] ? ContainsSelf<T[number], Next<Depth>> : AnyTrue<MembersContainSelf<MemberBoxes<T>[number], Depth>> : T extends object ? AnyTrue<MembersContainSelf<MemberBoxes<T>[keyof T], Depth>> : false;
111
+ type Next<Depth extends unknown[]> = [...Depth, unknown];
112
+ type MemberBoxes<T> = {
113
+ [K in keyof T]: [T[K]];
114
+ };
115
+ type MembersContainSelf<Boxed, Depth extends unknown[]> = Boxed extends [infer Member] ? ContainsSelf<Member, Next<Depth>> : false;
116
+ type SubstituteSelf<T, P extends [unknown]> = T extends Self ? P[0] : T extends string | number | boolean | bigint | symbol | null | undefined ? T : T extends Date | RegExp ? T : ContainsSelf<T> extends false ? T : SubstituteInto<T, P>;
117
+ type SubstituteInto<T, P extends [unknown]> = T extends Map<any, any> ? T extends Map<infer K, infer V> ? CarryOnto<Map<SubstituteSelf<K, P>, SubstituteSelf<V, P>>, T, P> : never : T extends Set<any> ? T extends Set<infer E> ? CarryOnto<Set<SubstituteSelf<E, P>>, T, P> : never : T extends Promise<infer E> ? Promise<SubstituteSelf<E, P>> : T extends (...args: infer A extends readonly unknown[]) => infer R ? (...args: SubstituteTuple<A, P>) => SubstituteSelf<R, P> : T extends readonly unknown[] ? number extends T['length'] ? T extends readonly (infer E)[] ? CarryOnto<SubstituteSelf<E, P>[], T, P> : never : SubstituteTuple<T, P> : T extends object ? HasCarried<T> extends true ? {
118
+ [K in keyof T as K extends CarriedKey ? never : K]: SubstituteSelf<T[K], P>;
119
+ } & CarrySlots<T, P> : {
120
+ [K in keyof T]: SubstituteSelf<T[K], P>;
121
+ } : T;
122
+ type CarryOnto<Base, Source, P extends [unknown]> = HasCarried<Source> extends true ? Base & CarrySlots<Source, P> : Base;
123
+ type SubstituteTuple<T extends readonly unknown[], P extends [unknown]> = HasCarried<T> extends true ? IsFixedArity<T> extends true ? TupleFromIndexes<T, P, RequiredArity<T>> & CarrySlots<T, P> : [
124
+ ...TupleFromIndexes<T, P, RequiredArity<T>>,
125
+ ...Partial<OptionalSlots<T, P> extends infer Slots extends unknown[] ? Slots : []>
126
+ ] & CarrySlots<T, P> : {
127
+ -readonly [K in keyof T]: SubstituteSelf<T[K], P>;
128
+ };
129
+ type IsFixedArity<T extends readonly unknown[]> = IsUnion<T['length']> extends true ? false : true;
130
+ type IsUnion<X, All = X> = X extends unknown ? ([All] extends [X] ? false : true) : never;
131
+ type RequiredArity<T extends readonly unknown[], Acc extends unknown[] = []> = Acc['length'] extends T['length'] ? Acc : RequiredArity<T, [...Acc, unknown]>;
132
+ type TotalArity<T extends readonly unknown[], Acc extends unknown[] = RequiredArity<T>> = [
133
+ ...Acc,
134
+ unknown
135
+ ]['length'] extends T['length'] ? TotalArity<T, [...Acc, unknown]> : Acc;
136
+ type TupleFromIndexes<T, P extends [unknown], Stop extends unknown[], Acc extends unknown[] = []> = Acc['length'] extends Stop['length'] ? Acc : TupleFromIndexes<T, P, Stop, [...Acc, SubstituteSelf<T[Acc['length'] & keyof T], P>]>;
137
+ type OptionalSlots<T extends readonly unknown[], P extends [unknown]> = DropRequired<OptionalCandidates<T, P, TotalArity<T>>, RequiredArity<T>>;
138
+ type OptionalCandidates<T, P extends [unknown], Stop extends unknown[], Acc extends unknown[] = []> = Acc['length'] extends Stop['length'] ? Acc : OptionalCandidates<T, P, Stop, [...Acc, SubstituteSelf<NonNullable<T[Acc['length'] & keyof T]>, P>]>;
139
+ type DropRequired<All extends unknown[], Skip extends unknown[]> = Skip['length'] extends 0 ? All : All extends [unknown, ...infer Rest] ? Skip extends [unknown, ...infer SkipRest] ? DropRequired<Rest, SkipRest extends unknown[] ? SkipRest : []> : All : [];
140
+ export type Recursive<Body> = SubstituteSelf<Body, [Recursive<Body>]>;
141
+ //# sourceMappingURL=static.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static.d.ts","sourceRoot":"","sources":["../../src/builders/static.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,UAAU,EACX,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,sBAAsB,CAAC;AAClD,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,6BAA6B,CAAC;AAK3D,YAAY,EACV,SAAS,EACT,QAAQ,EACR,oBAAoB,EACpB,cAAc,EACd,QAAQ,EACR,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AASrC,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC;CACjB;AAKD,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,aAAa,EAAE,CAAC;IACxD,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;CACrB;AAOD,MAAM,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS;IAAC,SAAS,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAEzH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS;IAAC,SAAS,EAAE;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAC,CAAA;CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AACnF,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS;IAAC,SAAS,EAAE;QAAC,QAAQ,EAAE,IAAI,CAAA;KAAC,CAAA;CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAgBnF,KAAK,OAAO,CAAC,CAAC,IAAI;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AAsBzC,KAAK,WAAW,CAAC,CAAC,IAAI,IAAI,SAAS;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAC9F,KAAK,WAAW,CAAC,CAAC,IAAI,IAAI,SAAS;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AAG9F,KAAK,kBAAkB,CAAC,CAAC,IAAI,OAAO,CAClC;IACE,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrF,GAAG;IACF,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACtF,CACF,CAAC;AAGF,KAAK,kBAAkB,CAAC,CAAC,IAAI,OAAO,CAClC;IACE,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACrF,GAAG;IACF,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACpF,CACF,CAAC;AAGF,KAAK,WAAW,CAAC,CAAC,IAAI,OAAO,CAC3B;IACE,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC7H,GAAG;IACF,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5H,GAAG;IACF,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,OAAO,CACvH,CAAC,CAAC,CAAC,CAAC,CACL;CACF,GAAG;IACF,QAAQ,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,OAAO,CACtH,CAAC,CAAC,CAAC,CAAC,CACL;CACF,CACF,CAAC;AACF,MAAM,MAAM,UAAU,CAAC,CAAC,IACtB,WAAW,CAAC,CAAC,CAAC,SAAS,KAAK,GACxB,WAAW,CAAC,CAAC,CAAC,SAAS,KAAK,GAC1B;IAAC,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAC,GACzC,kBAAkB,CAAC,CAAC,CAAC,GACvB,WAAW,CAAC,CAAC,CAAC,SAAS,KAAK,GAC1B,kBAAkB,CAAC,CAAC,CAAC,GACrB,WAAW,CAAC,CAAC,CAAC,CAAC;AAUvB,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,IAAI;IAAC,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AA6BjG,MAAM,WAAW,WAAW,CAAC,KAAK,SAAS,MAAM,EAAE,KAAK;IACtD,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;CACtC;AAKD,MAAM,MAAM,UAAU,CAAC,KAAK,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI;IAC9E,CAAC,UAAU,CAAC,IAAI,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;CACjE,CAAC;AAGF,MAAM,MAAM,UAAU,CAAC,KAAK,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI;IAC9E,CAAC,UAAU,CAAC,IAAI,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;CACtD,CAAC;AAMF,MAAM,MAAM,YAAY,CACtB,KAAK,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACrD,aAAa,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,IAChE,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG;IAClE,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;CACvF,CAAC;AAMF,MAAM,MAAM,gBAAgB,CAC1B,KAAK,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACrD,aAAa,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC7D,SAAS,SAAS,MAAM,EACxB,IAAI,IACF,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,GAAG;IAC7E,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,UAAU,CAAC,aAAa,CAAC,EAAE,SAAS,CAAC,CAAC;CAClG,CAAC;AAcF,MAAM,MAAM,eAAe,CAAC,KAAK,SAAS,SAAS,OAAO,EAAE,EAAE,aAAa,SAAS,SAAS,OAAO,EAAE,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS;IAC7H,KAAK;CACN,GACG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,GACzD,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;AAIzE,MAAM,MAAM,sBAAsB,CAChC,KAAK,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACrD,aAAa,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC7D,SAAS,SAAS,MAAM,EACxB,IAAI,IACF,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,KAAK,EAAE,aAAa,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AAM/H,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,SAAS,OAAO,EAAE,EAAE,MAAM,IAAI,MAAM,SAAS,SAAS,EAAE,GAC9F,MAAM,MAAM,GACZ,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC;AAe1C,MAAM,MAAM,OAAO,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,IAAI,CAAC,SAAS,SAAS;IACrE,MAAM,IAAI,SAAS,OAAO;IAC1B,GAAG,MAAM,IAAI,SAAS,SAAS,OAAO,EAAE;CACzC,GACG,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,GAC/B,KAAK,CAAC;AAKV,MAAM,MAAM,KAAK,CAAC,QAAQ,SAAS,SAAS,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC;AAQxF,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,IAAI,CAAC,SAAS,SAAS;IAC5E,MAAM,IAAI,SAAS,OAAO;IAC1B,GAAG,MAAM,IAAI,SAAS,SAAS,OAAO,EAAE;CACzC,GACG,SAAS,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,GACtC,OAAO,CAAC;AAGZ,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;AAK5C,KAAK,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAa5E,KAAK,OAAO,CAAC,CAAC,IAAI,OAAO,cAAc,SAAS,MAAM,CAAC,GACnD,CAAC,SAAS,MAAM,GACd,MAAM,GACN,CAAC,SAAS,MAAM,GACd,MAAM,GACN,CAAC,SAAS,MAAM,GACd,MAAM,GACN,CAAC,GAAG,cAAc,GACxB,CAAC,GAAG,cAAc,CAAC;AACvB,KAAK,QAAQ,CAAC,IAAI,SAAS,YAAY,IAAI,IAAI,SAAS,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,GAAG,cAAc,CAAC;AAUnH,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,SAAS,YAAY,EAAE,IAAI,CAAC,SAAS,SAAS;IACnF,MAAM,IAAI,SAAS,YAAY;IAC/B,GAAG,MAAM,IAAI,SAAS,SAAS,YAAY,EAAE;CAC9C,GACG,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,EAAE,GAC5C,EAAE,CAAC;AAoBP,OAAO,CAAC,MAAM,SAAS,EAAE,OAAO,MAAM,CAAC;AACvC,MAAM,MAAM,IAAI,GAAG;IAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,EAAE,IAAI,CAAA;CAAC,CAAC;AAWhD,MAAM,MAAM,UAAU,GAClB,OAAO,cAAc,GACrB,OAAO,gBAAgB,GACvB,OAAO,eAAe,GACtB,OAAO,YAAY,GACnB,OAAO,gBAAgB,GACvB,OAAO,aAAa,GACpB,OAAO,UAAU,CAAC;AAwBtB,KAAK,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;AAKnF,KAAK,UAAU,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI;IACxC,QAAQ,EAAE,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CACpF,CAAC;AAwBF,KAAK,YAAY,CAAC,CAAC,EAAE,KAAK,SAAS,OAAO,EAAE,GAAG,EAAE,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AAIvF,KAAK,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC;AAEnF,KAAK,cAAc,CAAC,CAAC,EAAE,KAAK,SAAS,OAAO,EAAE,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,GAOxE,KAAK,GACL,CAAC,SAAS,CAAC,GAAG,CAAC,GACb,KAAK,GACL,CAAC,SAAS,IAAI,GACZ,IAAI,GACJ,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GACtE,KAAK,GACL,CAAC,SAAS,IAAI,GAAG,MAAM,GACrB,KAAK,GACL,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GACrB,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAC7B,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GACxE,KAAK,GACP,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,GAChB,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,CAAC,GACpB,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAC5B,KAAK,GACP,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GACxB,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAC5B,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,SAAS,SAAS,OAAO,EAAE,KAAK,MAAM,CAAC,GAChE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAChF,CAAC,SAAS,SAAS,OAAO,EAAE,GAC1B,MAAM,SAAS,CAAC,CAAC,QAAQ,CAAC,GACxB,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GACpC,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC,GAC5D,CAAC,SAAS,MAAM,GACd,OAAO,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,GAC3D,KAAK,CAAC;AAE9B,KAAK,IAAI,CAAC,KAAK,SAAS,OAAO,EAAE,IAAI,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC;AAUzD,KAAK,WAAW,CAAC,CAAC,IAAI;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAC,CAAC;AAE/C,KAAK,kBAAkB,CAAC,KAAK,EAAE,KAAK,SAAS,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC,MAAM,MAAM,CAAC,GAClF,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GACjC,KAAK,CAAC;AAmBV,KAAK,cAAc,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,GACxD,CAAC,CAAC,CAAC,CAAC,GACJ,CAAC,SAAS,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GACtE,CAAC,GACD,CAAC,SAAS,IAAI,GAAG,MAAM,GACrB,CAAC,GAED,YAAY,CAAC,CAAC,CAAC,SAAS,KAAK,GAC3B,CAAC,GACD,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAG/B,KAAK,cAAc,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,IAGxC,CAAC,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GACnB,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,GAC7B,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAChE,KAAK,GACP,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,GAChB,CAAC,SAAS,GAAG,CAAC,MAAM,CAAC,CAAC,GACpB,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAC1C,KAAK,GACP,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GACxB,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAC7B,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,MAAM,CAAC,SAAS,SAAS,OAAO,EAAE,KAAK,MAAM,CAAC,GAGhE,CAAC,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,GACxD,CAAC,SAAS,SAAS,OAAO,EAAE,GAC1B,MAAM,SAAS,CAAC,CAAC,QAAQ,CAAC,GACxB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,GAC5B,SAAS,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,GACvC,KAAK,GACP,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,GACvB,CAAC,SAAS,MAAM,GACd,UAAU,CAAC,CAAC,CAAC,SAAS,IAAI,GACxB;KAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,UAAU,GAAG,KAAK,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAChG;KAAE,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CAAC,GAC3C,CAAC,CAAC;AAQlB,KAAK,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;AAW1H,KAAK,eAAe,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,IACpE,UAAU,CAAC,CAAC,CAAC,SAAS,IAAI,GACtB,YAAY,CAAC,CAAC,CAAC,SAAS,IAAI,GAC1B,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3D;IACE,GAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC;IAC3C,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,SAAS,OAAO,EAAE,GAAG,KAAK,GAAG,EAAE,CAAC;CACnF,GACC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,GACpB;IAAC,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CAAC,CAAC;AAM1D,KAAK,YAAY,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,IAAI,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC;AAEnG,KAAK,OAAO,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC;AAI1F,KAAK,aAAa,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,GAAG,SAAS,OAAO,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GAC5G,GAAG,GACH,aAAa,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;AAKxC,KAAK,UAAU,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,GAAG,SAAS,OAAO,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI;IACxF,GAAG,GAAG;IACN,OAAO;CACR,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GAC3B,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,GAChC,GAAG,CAAC;AAKR,KAAK,gBAAgB,CACnB,CAAC,EACD,CAAC,SAAS,CAAC,OAAO,CAAC,EACnB,IAAI,SAAS,OAAO,EAAE,EACtB,GAAG,SAAS,OAAO,EAAE,GAAG,EAAE,IACxB,GAAG,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,GACpC,GAAG,GACH,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAI1F,KAAK,aAAa,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,YAAY,CAClF,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EACvC,aAAa,CAAC,CAAC,CAAC,CACjB,CAAC;AAEF,KAAK,kBAAkB,CACrB,CAAC,EACD,CAAC,SAAS,CAAC,OAAO,CAAC,EACnB,IAAI,SAAS,OAAO,EAAE,EACtB,GAAG,SAAS,OAAO,EAAE,GAAG,EAAE,IACxB,GAAG,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,GACpC,GAAG,GACH,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAEzG,KAAK,YAAY,CAAC,GAAG,SAAS,OAAO,EAAE,EAAE,IAAI,SAAS,OAAO,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GACvF,GAAG,GACH,GAAG,SAAS,CAAC,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,GAClC,IAAI,SAAS,CAAC,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,GACvC,YAAY,CAAC,IAAI,EAAE,QAAQ,SAAS,OAAO,EAAE,GAAG,QAAQ,GAAG,EAAE,CAAC,GAC9D,GAAG,GACL,EAAE,CAAC;AAQT,MAAM,MAAM,SAAS,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"static.js","sourceRoot":"","sources":["../../src/schema/static.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"static.js","sourceRoot":"","sources":["../../src/builders/static.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utility.d.ts","sourceRoot":"","sources":["../../src/builders/utility.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utility.js","sourceRoot":"","sources":["../../src/builders/utility.ts"],"names":[],"mappings":"AAWA,OAAO,EAAC,aAAa,EAAC,MAAM,4BAA4B,CAAC;AAazD,MAAM,UAAU,OAAO,CAAI,KAA+B,EAAE,EAAgC;IAC1F,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;AAC5D,CAAC;AAGD,MAAM,UAAU,QAAQ,CAAI,KAA+B,EAAE,EAAiC;IAC5F,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;AAC7D,CAAC;AAMD,MAAM,UAAU,YAAY,CAAI,KAA+B,EAAE,EAAiC;IAChG,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;AAC7D,CAAC;AAGD,MAAM,UAAU,WAAW,CAAI,EAA4B,EAAE,EAAoC;IAC/F,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAC,CAAC,CAAC;AAC7D,CAAC;AAKD,MAAM,UAAU,UAAU,CACxB,IAA8B,EAC9B,EAAmC;IAEnC,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;AAC9D,CAAC;AAKD,MAAM,UAAU,IAAI,CAClB,KAA+B,EAC/B,IAAqB,EACrB,EAAwC;IAExC,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;AAC/D,CAAC;AAGD,MAAM,UAAU,IAAI,CAClB,KAA+B,EAC/B,IAAqB,EACrB,EAAwC;IAExC,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;AAC/D,CAAC;AAMD,MAAM,UAAU,OAAO,CACrB,KAA+B,EAC/B,OAAiC,EACjC,EAAmC;IAEnC,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAC,CAAC,CAAC;AAC/E,CAAC;AAGD,MAAM,UAAU,OAAO,CACrB,KAA+B,EAC/B,SAAmC,EACnC,EAAmC;IAEnC,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAC,CAAC,CAAC;AACvE,CAAC;AAQD,MAAM,UAAU,UAAU,CACxB,IAA8B,EAC9B,EAAmC;IAEnC,OAAO,aAAa,CAAC,EAAE,EAAE,EAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAC,CAAC,CAAC;AAC9D,CAAC"}
@@ -1,12 +1,21 @@
1
1
  import type { RunType } from '../runtypes/types.ts';
2
2
  import type { ExactParams } from '../runtypes/builderTypes.ts';
3
3
  import type { InjectRunTypeId, CompTimeArgs } from '../markers.ts';
4
- import type { InferType, MapTuple, UnionOf, IntersectionOf, TemplatePart, AssembleTemplate, ObjectType, PropModifiers, PropModCarrier, Self, Recursive } from './static.ts';
4
+ import type { FormattedArrayParamsValueFirst, FormattedObjectParamsValueFirst, FormattedArrayFrom, FormattedObjectFrom } from '../formats/structural.ts';
5
+ import type { InferType, UnionOf, IntersectionOf, TemplatePart, AssembleTemplate, ObjectType, PropModifiers, PropModCarrier, Self, Recursive, LabeledTuple, SlotCarrier, TupleFromGroups, LabeledTupleFromGroups, FuncFromParams } from './static.ts';
5
6
  export declare function array<T>(item: CompTimeArgs<RunType<T>>, id?: InjectRunTypeId<T[]>): RunType<T[]>;
6
- export declare function tuple<const T extends readonly RunType[]>(items: CompTimeArgs<T>, id?: InjectRunTypeId<MapTuple<T>>): RunType<MapTuple<T>>;
7
- export declare function tuple<const T extends readonly RunType[], const O extends readonly RunType[]>(items: CompTimeArgs<T>, optionalItems: CompTimeArgs<O>, id?: InjectRunTypeId<[...MapTuple<T>, ...Partial<MapTuple<O>>]>): RunType<[...MapTuple<T>, ...Partial<MapTuple<O>>]>;
8
- export declare function tuple<const T extends readonly RunType[], const O extends readonly RunType[], R>(items: CompTimeArgs<T>, optionalItems: CompTimeArgs<O>, rest: CompTimeArgs<RunType<R>>, id?: InjectRunTypeId<[...MapTuple<T>, ...Partial<MapTuple<O>>, ...R[]]>): RunType<[...MapTuple<T>, ...Partial<MapTuple<O>>, ...R[]]>;
9
- export declare function tuple<const T extends readonly RunType[], R>(items: CompTimeArgs<T>, rest: CompTimeArgs<RunType<R>>, id?: InjectRunTypeId<[...MapTuple<T>, ...R[]]>): RunType<[...MapTuple<T>, ...R[]]>;
7
+ export declare function array<T, const P extends FormattedArrayParamsValueFirst>(item: CompTimeArgs<RunType<T>>, params: CompTimeArgs<ExactParams<P, FormattedArrayParamsValueFirst>>, id?: InjectRunTypeId<FormattedArrayFrom<T[], P>>): RunType<FormattedArrayFrom<T[], P>>;
8
+ export declare function slot<const Label extends string, Value>(label: CompTimeArgs<Label>, value: CompTimeArgs<RunType<Value>>): SlotCarrier<Label, Value>;
9
+ export declare function tuple<const T extends readonly RunType[] = [], const O extends readonly RunType[] = [], RestValue = never>(parts: CompTimeArgs<{
10
+ readonly required?: T;
11
+ readonly optional?: O;
12
+ readonly rest?: RunType<RestValue>;
13
+ }>, id?: InjectRunTypeId<TupleFromGroups<T, O, RestValue>>): RunType<TupleFromGroups<T, O, RestValue>>;
14
+ export declare function tuple<const T extends readonly SlotCarrier<string, unknown>[] = [], const O extends readonly SlotCarrier<string, unknown>[] = [], const RestLabel extends string = never, RestValue = never>(parts: CompTimeArgs<{
15
+ readonly required?: T;
16
+ readonly optional?: O;
17
+ readonly rest?: SlotCarrier<RestLabel, RestValue>;
18
+ }>, id?: InjectRunTypeId<LabeledTupleFromGroups<T, O, RestLabel, RestValue>>): RunType<LabeledTupleFromGroups<T, O, RestLabel, RestValue>>;
10
19
  export declare function union<A, B>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>]>, id?: InjectRunTypeId<A | B>): RunType<A | B>;
11
20
  export declare function union<A, B, C>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>, RunType<C>]>, id?: InjectRunTypeId<A | B | C>): RunType<A | B | C>;
12
21
  export declare function union<A, B, C, D>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>, RunType<C>, RunType<D>]>, id?: InjectRunTypeId<A | B | C | D>): RunType<A | B | C | D>;
@@ -15,18 +24,30 @@ export declare function union<A, B, C, D, E, F>(members: CompTimeArgs<readonly [
15
24
  export declare function union<A, B, C, D, E, F, G>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>, RunType<C>, RunType<D>, RunType<E>, RunType<F>, RunType<G>]>, id?: InjectRunTypeId<A | B | C | D | E | F | G>): RunType<A | B | C | D | E | F | G>;
16
25
  export declare function union<A, B, C, D, E, F, G, H>(members: CompTimeArgs<readonly [RunType<A>, RunType<B>, RunType<C>, RunType<D>, RunType<E>, RunType<F>, RunType<G>, RunType<H>]>, id?: InjectRunTypeId<A | B | C | D | E | F | G | H>): RunType<A | B | C | D | E | F | G | H>;
17
26
  export declare function union<const T extends readonly RunType[]>(members: CompTimeArgs<T>, id?: InjectRunTypeId<UnionOf<T>>): RunType<UnionOf<T>>;
27
+ export declare const anyOf: typeof union;
18
28
  export declare function intersection<A, B = unknown, C = unknown, D = unknown>(a: CompTimeArgs<RunType<A>>, b?: CompTimeArgs<RunType<B>>, c?: CompTimeArgs<RunType<C>>, d?: CompTimeArgs<RunType<D>>, id?: InjectRunTypeId<A & B & C & D>): RunType<A & B & C & D>;
19
29
  export declare function intersection<const T extends readonly RunType[]>(members: CompTimeArgs<T>, id?: InjectRunTypeId<IntersectionOf<T>>): RunType<IntersectionOf<T>>;
20
30
  export declare function record<V>(valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Record<string, V>>): RunType<Record<string, V>>;
31
+ export declare function record<V, const P extends FormattedObjectParamsValueFirst>(valueSchema: CompTimeArgs<RunType<V>>, params: CompTimeArgs<ExactParams<P, FormattedObjectParamsValueFirst>>, id?: InjectRunTypeId<FormattedObjectFrom<Record<string, V>, P>>): RunType<FormattedObjectFrom<Record<string, V>, P>>;
21
32
  export declare function record<K extends string | number, V>(keySchema: CompTimeArgs<RunType<K>>, valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Record<K, V>>): RunType<Record<K, V>>;
33
+ export declare function record<K extends string | number, V, const P extends FormattedObjectParamsValueFirst>(keySchema: CompTimeArgs<RunType<K>>, valueSchema: CompTimeArgs<RunType<V>>, params: CompTimeArgs<ExactParams<P, FormattedObjectParamsValueFirst>>, id?: InjectRunTypeId<FormattedObjectFrom<Record<K, V>, P>>): RunType<FormattedObjectFrom<Record<K, V>, P>>;
22
34
  export declare function map<K, V>(keySchema: CompTimeArgs<RunType<K>>, valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Map<K, V>>): RunType<Map<K, V>>;
23
35
  export declare function set<V>(valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Set<V>>): RunType<Set<V>>;
24
36
  export declare function self(id?: InjectRunTypeId<Self>): RunType<Self>;
25
37
  export declare function circular<Body>(body: CompTimeArgs<RunType<Body>>, id?: InjectRunTypeId<Recursive<Body>>): RunType<Recursive<Body>>;
26
38
  export declare function promise<V>(valueSchema: CompTimeArgs<RunType<V>>, id?: InjectRunTypeId<Promise<V>>): RunType<Promise<V>>;
27
- export declare function func<R extends RunType = RunType<void>>(params?: CompTimeArgs<readonly []>, ret?: CompTimeArgs<R>, id?: InjectRunTypeId<() => InferType<R>>): RunType<() => InferType<R>>;
28
- export declare function func<const P extends readonly RunType[] = [], R extends RunType = RunType<void>>(params?: CompTimeArgs<P>, ret?: CompTimeArgs<R>, id?: InjectRunTypeId<(...args: MapTuple<P>) => InferType<R>>): RunType<(...args: MapTuple<P>) => InferType<R>>;
29
- export declare function func<T extends readonly unknown[], R extends RunType = RunType<void>>(paramsTuple: CompTimeArgs<RunType<T>>, ret?: CompTimeArgs<R>, id?: InjectRunTypeId<(...args: T) => InferType<R>>): RunType<(...args: T) => InferType<R>>;
39
+ export declare function func<const P extends readonly RunType[] = [], R extends RunType = RunType<void>>(parts?: CompTimeArgs<{
40
+ readonly params?: P;
41
+ readonly ret?: R;
42
+ }>, id?: InjectRunTypeId<FuncFromParams<P, InferType<R>>>): RunType<FuncFromParams<P, InferType<R>>>;
43
+ export declare function func<const P extends readonly SlotCarrier<string, unknown>[], R extends RunType = RunType<void>>(parts: CompTimeArgs<{
44
+ readonly params: P;
45
+ readonly ret?: R;
46
+ }>, id?: InjectRunTypeId<(...args: LabeledTuple<P>) => InferType<R>>): RunType<(...args: LabeledTuple<P>) => InferType<R>>;
47
+ export declare function func<T extends readonly unknown[], R extends RunType = RunType<void>>(parts: CompTimeArgs<{
48
+ readonly params: RunType<T>;
49
+ readonly ret?: R;
50
+ }>, id?: InjectRunTypeId<(...args: T) => InferType<R>>): RunType<(...args: T) => InferType<R>>;
30
51
  export declare function callable<Fn, Props>(fn: CompTimeArgs<RunType<Fn>>, iface: CompTimeArgs<RunType<Props>>, id?: InjectRunTypeId<Fn & Props>): RunType<Fn & Props>;
31
52
  export declare function templateLiteral<const P extends readonly TemplatePart[]>(parts: CompTimeArgs<P>, id?: InjectRunTypeId<AssembleTemplate<P>>): RunType<AssembleTemplate<P>>;
32
53
  export declare function propMod<const M extends PropModifiers, const F>(modifiers: CompTimeArgs<ExactParams<M, PropModifiers>>, field: CompTimeArgs<F>): PropModCarrier<M, F>;
@@ -34,3 +55,4 @@ export declare function optional<const F>(field: CompTimeArgs<F>): PropModCarrie
34
55
  optional: true;
35
56
  }, F>;
36
57
  export declare function object<const C extends Record<string, unknown>>(config: CompTimeArgs<C>, id?: InjectRunTypeId<ObjectType<C>>): RunType<ObjectType<C>>;
58
+ export declare function object<const C extends Record<string, unknown>, const P extends FormattedObjectParamsValueFirst>(config: CompTimeArgs<C>, params: CompTimeArgs<ExactParams<P, FormattedObjectParamsValueFirst>>, id?: InjectRunTypeId<FormattedObjectFrom<ObjectType<C>, P>>): RunType<FormattedObjectFrom<ObjectType<C>, P>>;