@typespec/compiler 1.18.0-dev.4 → 1.18.0-dev.5

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 (280) hide show
  1. package/dist/generated-defs/TypeSpec.d.ts +69 -1
  2. package/dist/generated-defs/TypeSpec.d.ts.map +1 -1
  3. package/dist/manifest.js +2 -2
  4. package/dist/src/config/config-to-options.d.ts +2 -0
  5. package/dist/src/config/config-to-options.d.ts.map +1 -1
  6. package/dist/src/config/config-to-options.js.map +1 -1
  7. package/dist/src/config/types.d.ts +26 -1
  8. package/dist/src/config/types.d.ts.map +1 -1
  9. package/dist/src/core/checker.d.ts +23 -0
  10. package/dist/src/core/checker.d.ts.map +1 -1
  11. package/dist/src/core/checker.js.map +1 -1
  12. package/dist/src/core/code-fixes.d.ts +6 -0
  13. package/dist/src/core/code-fixes.d.ts.map +1 -1
  14. package/dist/src/core/code-fixes.js +6 -0
  15. package/dist/src/core/code-fixes.js.map +1 -1
  16. package/dist/src/core/compiler-code-fixes/suppress.codefix.d.ts +7 -0
  17. package/dist/src/core/compiler-code-fixes/suppress.codefix.d.ts.map +1 -1
  18. package/dist/src/core/compiler-code-fixes/suppress.codefix.js +7 -0
  19. package/dist/src/core/compiler-code-fixes/suppress.codefix.js.map +1 -1
  20. package/dist/src/core/decorator-utils.d.ts +17 -0
  21. package/dist/src/core/decorator-utils.d.ts.map +1 -1
  22. package/dist/src/core/decorator-utils.js +5 -0
  23. package/dist/src/core/decorator-utils.js.map +1 -1
  24. package/dist/src/core/diagnostics.d.ts +9 -0
  25. package/dist/src/core/diagnostics.d.ts.map +1 -1
  26. package/dist/src/core/diagnostics.js +2 -0
  27. package/dist/src/core/diagnostics.js.map +1 -1
  28. package/dist/src/core/emitter-utils.d.ts +5 -0
  29. package/dist/src/core/emitter-utils.d.ts.map +1 -1
  30. package/dist/src/core/emitter-utils.js.map +1 -1
  31. package/dist/src/core/file-ref.d.ts +2 -0
  32. package/dist/src/core/file-ref.d.ts.map +1 -1
  33. package/dist/src/core/file-ref.js +1 -0
  34. package/dist/src/core/file-ref.js.map +1 -1
  35. package/dist/src/core/helpers/discriminator-utils.d.ts +14 -0
  36. package/dist/src/core/helpers/discriminator-utils.d.ts.map +1 -1
  37. package/dist/src/core/helpers/discriminator-utils.js +5 -0
  38. package/dist/src/core/helpers/discriminator-utils.js.map +1 -1
  39. package/dist/src/core/helpers/location-context.d.ts +1 -0
  40. package/dist/src/core/helpers/location-context.d.ts.map +1 -1
  41. package/dist/src/core/helpers/location-context.js +1 -0
  42. package/dist/src/core/helpers/location-context.js.map +1 -1
  43. package/dist/src/core/helpers/operation-utils.d.ts +1 -0
  44. package/dist/src/core/helpers/operation-utils.d.ts.map +1 -1
  45. package/dist/src/core/helpers/operation-utils.js.map +1 -1
  46. package/dist/src/core/helpers/type-name-utils.d.ts +7 -0
  47. package/dist/src/core/helpers/type-name-utils.d.ts.map +1 -1
  48. package/dist/src/core/helpers/type-name-utils.js +3 -0
  49. package/dist/src/core/helpers/type-name-utils.js.map +1 -1
  50. package/dist/src/core/helpers/usage-resolver.d.ts +9 -0
  51. package/dist/src/core/helpers/usage-resolver.d.ts.map +1 -1
  52. package/dist/src/core/helpers/usage-resolver.js +4 -0
  53. package/dist/src/core/helpers/usage-resolver.js.map +1 -1
  54. package/dist/src/core/intrinsic-type-state.d.ts +44 -17
  55. package/dist/src/core/intrinsic-type-state.d.ts.map +1 -1
  56. package/dist/src/core/intrinsic-type-state.js +41 -17
  57. package/dist/src/core/intrinsic-type-state.js.map +1 -1
  58. package/dist/src/core/library.d.ts +2 -0
  59. package/dist/src/core/library.d.ts.map +1 -1
  60. package/dist/src/core/library.js +2 -0
  61. package/dist/src/core/library.js.map +1 -1
  62. package/dist/src/core/logger/console-sink.d.ts +4 -0
  63. package/dist/src/core/logger/console-sink.d.ts.map +1 -1
  64. package/dist/src/core/logger/console-sink.js +1 -0
  65. package/dist/src/core/logger/console-sink.js.map +1 -1
  66. package/dist/src/core/numeric.d.ts +11 -1
  67. package/dist/src/core/numeric.d.ts.map +1 -1
  68. package/dist/src/core/numeric.js.map +1 -1
  69. package/dist/src/core/options.d.ts +8 -2
  70. package/dist/src/core/options.d.ts.map +1 -1
  71. package/dist/src/core/param-message.d.ts +9 -0
  72. package/dist/src/core/param-message.d.ts.map +1 -1
  73. package/dist/src/core/param-message.js +9 -0
  74. package/dist/src/core/param-message.js.map +1 -1
  75. package/dist/src/core/parser.d.ts +19 -0
  76. package/dist/src/core/parser.d.ts.map +1 -1
  77. package/dist/src/core/parser.js +18 -0
  78. package/dist/src/core/parser.js.map +1 -1
  79. package/dist/src/core/path-utils.d.ts +24 -0
  80. package/dist/src/core/path-utils.d.ts.map +1 -1
  81. package/dist/src/core/path-utils.js +9 -1
  82. package/dist/src/core/path-utils.js.map +1 -1
  83. package/dist/src/core/perf.d.ts +8 -1
  84. package/dist/src/core/perf.d.ts.map +1 -1
  85. package/dist/src/core/perf.js +8 -1
  86. package/dist/src/core/perf.js.map +1 -1
  87. package/dist/src/core/program.d.ts +31 -1
  88. package/dist/src/core/program.d.ts.map +1 -1
  89. package/dist/src/core/program.js +5 -0
  90. package/dist/src/core/program.js.map +1 -1
  91. package/dist/src/core/semantic-walker.d.ts +20 -5
  92. package/dist/src/core/semantic-walker.d.ts.map +1 -1
  93. package/dist/src/core/semantic-walker.js +13 -3
  94. package/dist/src/core/semantic-walker.js.map +1 -1
  95. package/dist/src/core/source-file.d.ts +2 -0
  96. package/dist/src/core/source-file.d.ts.map +1 -1
  97. package/dist/src/core/source-file.js +2 -0
  98. package/dist/src/core/source-file.js.map +1 -1
  99. package/dist/src/core/type-utils.d.ts +8 -0
  100. package/dist/src/core/type-utils.d.ts.map +1 -1
  101. package/dist/src/core/type-utils.js +8 -0
  102. package/dist/src/core/type-utils.js.map +1 -1
  103. package/dist/src/core/types.d.ts +1004 -46
  104. package/dist/src/core/types.d.ts.map +1 -1
  105. package/dist/src/core/types.js +130 -5
  106. package/dist/src/core/types.js.map +1 -1
  107. package/dist/src/experimental/mutators.d.ts +32 -3
  108. package/dist/src/experimental/mutators.d.ts.map +1 -1
  109. package/dist/src/experimental/mutators.js +11 -3
  110. package/dist/src/experimental/mutators.js.map +1 -1
  111. package/dist/src/experimental/realm.d.ts +34 -1
  112. package/dist/src/experimental/realm.d.ts.map +1 -1
  113. package/dist/src/experimental/realm.js +34 -1
  114. package/dist/src/experimental/realm.js.map +1 -1
  115. package/dist/src/init/core-templates.d.ts +3 -0
  116. package/dist/src/init/core-templates.d.ts.map +1 -1
  117. package/dist/src/init/core-templates.js.map +1 -1
  118. package/dist/src/init/init-template.d.ts +9 -0
  119. package/dist/src/init/init-template.d.ts.map +1 -1
  120. package/dist/src/init/init-template.js.map +1 -1
  121. package/dist/src/init/scaffold.d.ts +1 -0
  122. package/dist/src/init/scaffold.d.ts.map +1 -1
  123. package/dist/src/init/scaffold.js.map +1 -1
  124. package/dist/src/init/template-source/types.d.ts +2 -0
  125. package/dist/src/init/template-source/types.d.ts.map +1 -1
  126. package/dist/src/init/template-source/types.js.map +1 -1
  127. package/dist/src/lib/decorators.d.ts +84 -2
  128. package/dist/src/lib/decorators.d.ts.map +1 -1
  129. package/dist/src/lib/decorators.js +71 -7
  130. package/dist/src/lib/decorators.js.map +1 -1
  131. package/dist/src/lib/encoded-names.d.ts +4 -0
  132. package/dist/src/lib/encoded-names.d.ts.map +1 -1
  133. package/dist/src/lib/encoded-names.js +4 -0
  134. package/dist/src/lib/encoded-names.js.map +1 -1
  135. package/dist/src/lib/examples.d.ts +29 -2
  136. package/dist/src/lib/examples.d.ts.map +1 -1
  137. package/dist/src/lib/examples.js +25 -2
  138. package/dist/src/lib/examples.js.map +1 -1
  139. package/dist/src/lib/key.d.ts +2 -0
  140. package/dist/src/lib/key.d.ts.map +1 -1
  141. package/dist/src/lib/key.js +2 -0
  142. package/dist/src/lib/key.js.map +1 -1
  143. package/dist/src/lib/paging.d.ts +27 -0
  144. package/dist/src/lib/paging.d.ts.map +1 -1
  145. package/dist/src/lib/paging.js +7 -0
  146. package/dist/src/lib/paging.js.map +1 -1
  147. package/dist/src/lib/service.d.ts +9 -2
  148. package/dist/src/lib/service.d.ts.map +1 -1
  149. package/dist/src/lib/service.js +5 -2
  150. package/dist/src/lib/service.js.map +1 -1
  151. package/dist/src/lib/visibility.d.ts +44 -10
  152. package/dist/src/lib/visibility.d.ts.map +1 -1
  153. package/dist/src/lib/visibility.js +42 -10
  154. package/dist/src/lib/visibility.js.map +1 -1
  155. package/dist/src/manifest.d.ts +2 -0
  156. package/dist/src/manifest.d.ts.map +1 -1
  157. package/dist/src/manifest.js +1 -0
  158. package/dist/src/manifest.js.map +1 -1
  159. package/dist/src/module-resolver/module-resolver.d.ts +12 -1
  160. package/dist/src/module-resolver/module-resolver.d.ts.map +1 -1
  161. package/dist/src/module-resolver/module-resolver.js +7 -1
  162. package/dist/src/module-resolver/module-resolver.js.map +1 -1
  163. package/dist/src/module-resolver/types.d.ts +14 -1
  164. package/dist/src/module-resolver/types.d.ts.map +1 -1
  165. package/dist/src/server/client-config-provider.d.ts +14 -0
  166. package/dist/src/server/client-config-provider.d.ts.map +1 -1
  167. package/dist/src/server/client-config-provider.js.map +1 -1
  168. package/dist/src/server/server-compile-manager.d.ts +30 -4
  169. package/dist/src/server/server-compile-manager.d.ts.map +1 -1
  170. package/dist/src/server/server-compile-manager.js +21 -0
  171. package/dist/src/server/server-compile-manager.js.map +1 -1
  172. package/dist/src/server/serverlib.d.ts +9 -0
  173. package/dist/src/server/serverlib.d.ts.map +1 -1
  174. package/dist/src/server/serverlib.js +9 -0
  175. package/dist/src/server/serverlib.js.map +1 -1
  176. package/dist/src/server/types.d.ts +133 -0
  177. package/dist/src/server/types.d.ts.map +1 -1
  178. package/dist/src/server/types.js +26 -0
  179. package/dist/src/server/types.js.map +1 -1
  180. package/dist/src/server/update-manager.d.ts +24 -7
  181. package/dist/src/server/update-manager.d.ts.map +1 -1
  182. package/dist/src/server/update-manager.js +16 -7
  183. package/dist/src/server/update-manager.js.map +1 -1
  184. package/dist/src/testing/code-fix-testing.d.ts +2 -0
  185. package/dist/src/testing/code-fix-testing.d.ts.map +1 -1
  186. package/dist/src/testing/code-fix-testing.js.map +1 -1
  187. package/dist/src/testing/expect.d.ts +16 -10
  188. package/dist/src/testing/expect.d.ts.map +1 -1
  189. package/dist/src/testing/expect.js +9 -3
  190. package/dist/src/testing/expect.js.map +1 -1
  191. package/dist/src/testing/fourslash.d.ts +3 -3
  192. package/dist/src/testing/fourslash.d.ts.map +1 -1
  193. package/dist/src/testing/fs.d.ts +4 -0
  194. package/dist/src/testing/fs.d.ts.map +1 -1
  195. package/dist/src/testing/fs.js +4 -0
  196. package/dist/src/testing/fs.js.map +1 -1
  197. package/dist/src/testing/marked-template.d.ts +25 -2
  198. package/dist/src/testing/marked-template.d.ts.map +1 -1
  199. package/dist/src/testing/marked-template.js +7 -2
  200. package/dist/src/testing/marked-template.js.map +1 -1
  201. package/dist/src/testing/rule-tester.d.ts +22 -0
  202. package/dist/src/testing/rule-tester.d.ts.map +1 -1
  203. package/dist/src/testing/rule-tester.js +9 -0
  204. package/dist/src/testing/rule-tester.js.map +1 -1
  205. package/dist/src/testing/source-utils.d.ts +7 -2
  206. package/dist/src/testing/source-utils.d.ts.map +1 -1
  207. package/dist/src/testing/source-utils.js +2 -2
  208. package/dist/src/testing/source-utils.js.map +1 -1
  209. package/dist/src/testing/test-compiler-host.d.ts +8 -0
  210. package/dist/src/testing/test-compiler-host.d.ts.map +1 -1
  211. package/dist/src/testing/test-compiler-host.js +4 -0
  212. package/dist/src/testing/test-compiler-host.js.map +1 -1
  213. package/dist/src/testing/test-host.d.ts +4 -0
  214. package/dist/src/testing/test-host.d.ts.map +1 -1
  215. package/dist/src/testing/test-host.js +4 -0
  216. package/dist/src/testing/test-host.js.map +1 -1
  217. package/dist/src/testing/test-utils.d.ts +14 -2
  218. package/dist/src/testing/test-utils.d.ts.map +1 -1
  219. package/dist/src/testing/test-utils.js +9 -0
  220. package/dist/src/testing/test-utils.js.map +1 -1
  221. package/dist/src/testing/tester.d.ts +12 -0
  222. package/dist/src/testing/tester.d.ts.map +1 -1
  223. package/dist/src/testing/tester.js +7 -0
  224. package/dist/src/testing/tester.js.map +1 -1
  225. package/dist/src/testing/types.d.ts +101 -36
  226. package/dist/src/testing/types.d.ts.map +1 -1
  227. package/dist/src/testing/types.js +4 -1
  228. package/dist/src/testing/types.js.map +1 -1
  229. package/dist/src/typekit/define-kit.d.ts +6 -0
  230. package/dist/src/typekit/define-kit.d.ts.map +1 -1
  231. package/dist/src/typekit/define-kit.js.map +1 -1
  232. package/dist/src/typekit/kits/array.d.ts +3 -0
  233. package/dist/src/typekit/kits/array.d.ts.map +1 -1
  234. package/dist/src/typekit/kits/array.js.map +1 -1
  235. package/dist/src/typekit/kits/builtin.d.ts +3 -0
  236. package/dist/src/typekit/kits/builtin.d.ts.map +1 -1
  237. package/dist/src/typekit/kits/builtin.js.map +1 -1
  238. package/dist/src/typekit/kits/entity.d.ts +3 -0
  239. package/dist/src/typekit/kits/entity.d.ts.map +1 -1
  240. package/dist/src/typekit/kits/entity.js.map +1 -1
  241. package/dist/src/typekit/kits/enum-member.d.ts +3 -0
  242. package/dist/src/typekit/kits/enum-member.d.ts.map +1 -1
  243. package/dist/src/typekit/kits/enum-member.js.map +1 -1
  244. package/dist/src/typekit/kits/enum.d.ts +3 -0
  245. package/dist/src/typekit/kits/enum.d.ts.map +1 -1
  246. package/dist/src/typekit/kits/enum.js.map +1 -1
  247. package/dist/src/typekit/kits/intrinsic.d.ts +5 -0
  248. package/dist/src/typekit/kits/intrinsic.d.ts.map +1 -1
  249. package/dist/src/typekit/kits/intrinsic.js.map +1 -1
  250. package/dist/src/typekit/kits/model.d.ts +4 -0
  251. package/dist/src/typekit/kits/model.d.ts.map +1 -1
  252. package/dist/src/typekit/kits/model.js.map +1 -1
  253. package/dist/src/typekit/kits/record.d.ts +3 -0
  254. package/dist/src/typekit/kits/record.d.ts.map +1 -1
  255. package/dist/src/typekit/kits/record.js.map +1 -1
  256. package/dist/src/typekit/kits/scalar.d.ts +1 -1
  257. package/dist/src/typekit/kits/tuple.d.ts +5 -0
  258. package/dist/src/typekit/kits/tuple.d.ts.map +1 -1
  259. package/dist/src/typekit/kits/tuple.js.map +1 -1
  260. package/dist/src/typekit/kits/type.d.ts +5 -0
  261. package/dist/src/typekit/kits/type.d.ts.map +1 -1
  262. package/dist/src/typekit/kits/type.js.map +1 -1
  263. package/dist/src/typekit/kits/value.d.ts +8 -0
  264. package/dist/src/typekit/kits/value.d.ts.map +1 -1
  265. package/dist/src/typekit/kits/value.js.map +1 -1
  266. package/dist/src/types/package-json.d.ts +30 -0
  267. package/dist/src/types/package-json.d.ts.map +1 -1
  268. package/dist/src/utils/misc.d.ts +6 -0
  269. package/dist/src/utils/misc.d.ts.map +1 -1
  270. package/dist/src/utils/misc.js +6 -0
  271. package/dist/src/utils/misc.js.map +1 -1
  272. package/dist/src/utils/state-accessor.d.ts +10 -0
  273. package/dist/src/utils/state-accessor.d.ts.map +1 -1
  274. package/dist/src/utils/state-accessor.js +5 -0
  275. package/dist/src/utils/state-accessor.js.map +1 -1
  276. package/dist/src/yaml/types.d.ts +3 -0
  277. package/dist/src/yaml/types.d.ts.map +1 -1
  278. package/lib/std/decorators.tsp +16 -3
  279. package/lib/std/visibility.tsp +14 -0
  280. package/package.json +1 -1
@@ -119,7 +119,14 @@ export type Mutator = {
119
119
  * @experimental
120
120
  */
121
121
  export type MutatorWithNamespace = Mutator & Partial<NamespaceMutator>;
122
+ /**
123
+ * The namespace handler mixed into {@link MutatorWithNamespace}.
124
+ * Namespace traversal is enabled by {@link mutateSubgraphWithNamespace}, not by {@link mutateSubgraph}.
125
+ */
122
126
  type NamespaceMutator = {
127
+ /**
128
+ * Filter, mutate, or replace namespace clones using the same record forms as other type kinds.
129
+ */
123
130
  Namespace?: MutatorRecord<Namespace>;
124
131
  };
125
132
  /**
@@ -176,14 +183,24 @@ export type MutableTypeWithNamespace = MutableType | Namespace;
176
183
  * @param mutators - An array of mutators to apply to the type graph rooted at `type`.
177
184
  * @param type - The type to mutate.
178
185
  *
179
- * @returns an object containing the mutated `type` and a nullable `Realm` in which the mutated type resides.
186
+ * @returns An object whose `type` is the resulting root (the original input if unchanged) and whose `realm` is the
187
+ * realm created for this traversal, or `null` if the returned root is the input type.
188
+ * Cached results can retain ownership in a realm from an earlier call; use {@link Realm.realmForType} to look up
189
+ * the returned type's last registered realm.
180
190
  *
181
191
  * @see {@link mutateSubgraph}
182
192
  *
183
193
  * @experimental
184
194
  */
185
195
  export declare function mutateSubgraphWithNamespace(program: Program, mutators: MutatorWithNamespace[], type: Namespace): {
196
+ /**
197
+ * The realm created for this traversal, or null when the root is unchanged.
198
+ * Cached results may belong to an earlier realm.
199
+ */
186
200
  realm: Realm | null;
201
+ /**
202
+ * The resulting root after namespace-aware traversal, or the unchanged input.
203
+ */
187
204
  type: MutableTypeWithNamespace;
188
205
  };
189
206
  /**
@@ -191,7 +208,9 @@ export declare function mutateSubgraphWithNamespace(program: Program, mutators:
191
208
  *
192
209
  * Mutators clone the input `type`, creating a new type instance that is mutated in place.
193
210
  *
194
- * The mutator returns the mutated type and optionally a `realm` in which the mutated clone resides.
211
+ * The mutator returns the resulting root type and a nullable traversal realm.
212
+ * Repeated calls for the same type and mutator instances within a program can reuse previous mutation results.
213
+ * The cache is not shared between programs.
195
214
  *
196
215
  * @see {@link Mutator}
197
216
  * @see {@link Realm}
@@ -207,12 +226,22 @@ export declare function mutateSubgraphWithNamespace(program: Program, mutators:
207
226
  * @param mutators - An array of mutators to apply to the type graph rooted at `type`.
208
227
  * @param type - The type to mutate.
209
228
  *
210
- * @returns an object containing the mutated `type` and a nullable `Realm` in which the mutated type resides.
229
+ * @returns An object whose `type` is the resulting root, which may be a clone, a replacement, or the unchanged input.
230
+ * Its `realm` is the realm created for this traversal, or `null` if the returned root is the input type.
231
+ * Cached results can retain ownership in a realm from an earlier call; use {@link Realm.realmForType} to look up
232
+ * the returned type's last registered realm.
211
233
  *
212
234
  * @experimental
213
235
  */
214
236
  export declare function mutateSubgraph<T extends MutableType>(program: Program, mutators: Mutator[], type: T): {
237
+ /**
238
+ * The realm created for this traversal, or null when the root is unchanged.
239
+ * Cached results may belong to an earlier realm.
240
+ */
215
241
  realm: Realm | null;
242
+ /**
243
+ * The cloned or replaced root, or the original input when the root is unchanged.
244
+ */
216
245
  type: MutableType;
217
246
  };
218
247
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"mutators.d.ts","sourceRoot":"","sources":["../../../src/experimental/mutators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutators.d.ts","sourceRoot":"","sources":["../../../src/experimental/mutators.ts"],"names":[],"mappings":"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"}
@@ -106,7 +106,10 @@ function getSeenCache(program) {
106
106
  * @param mutators - An array of mutators to apply to the type graph rooted at `type`.
107
107
  * @param type - The type to mutate.
108
108
  *
109
- * @returns an object containing the mutated `type` and a nullable `Realm` in which the mutated type resides.
109
+ * @returns An object whose `type` is the resulting root (the original input if unchanged) and whose `realm` is the
110
+ * realm created for this traversal, or `null` if the returned root is the input type.
111
+ * Cached results can retain ownership in a realm from an earlier call; use {@link Realm.realmForType} to look up
112
+ * the returned type's last registered realm.
110
113
  *
111
114
  * @see {@link mutateSubgraph}
112
115
  *
@@ -127,7 +130,9 @@ export function mutateSubgraphWithNamespace(program, mutators, type) {
127
130
  *
128
131
  * Mutators clone the input `type`, creating a new type instance that is mutated in place.
129
132
  *
130
- * The mutator returns the mutated type and optionally a `realm` in which the mutated clone resides.
133
+ * The mutator returns the resulting root type and a nullable traversal realm.
134
+ * Repeated calls for the same type and mutator instances within a program can reuse previous mutation results.
135
+ * The cache is not shared between programs.
131
136
  *
132
137
  * @see {@link Mutator}
133
138
  * @see {@link Realm}
@@ -143,7 +148,10 @@ export function mutateSubgraphWithNamespace(program, mutators, type) {
143
148
  * @param mutators - An array of mutators to apply to the type graph rooted at `type`.
144
149
  * @param type - The type to mutate.
145
150
  *
146
- * @returns an object containing the mutated `type` and a nullable `Realm` in which the mutated type resides.
151
+ * @returns An object whose `type` is the resulting root, which may be a clone, a replacement, or the unchanged input.
152
+ * Its `realm` is the realm created for this traversal, or `null` if the returned root is the input type.
153
+ * Cached results can retain ownership in a realm from an earlier call; use {@link Realm.realmForType} to look up
154
+ * the returned type's last registered realm.
147
155
  *
148
156
  * @experimental
149
157
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mutators.js","sourceRoot":"","sources":["../../../src/experimental/mutators.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutators.js","sourceRoot":"","sources":["../../../src/experimental/mutators.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ import type { Typekit } from "../typekit/index.js";
4
4
  /**
5
5
  * A Realm's view of a Program's state map for a given state key.
6
6
  *
7
- * For all operations, if a type was created within the realm, the realm's own state map is used. Otherwise, the owning'
7
+ * For keyed operations, if a type belongs to the realm, the realm's own state map is used. Otherwise, the owning
8
8
  * Program's state map is used.
9
9
  *
10
10
  * @experimental
@@ -12,16 +12,35 @@ import type { Typekit } from "../typekit/index.js";
12
12
  declare class StateMapRealmView<V> implements Map<Type, V> {
13
13
  #private;
14
14
  constructor(realm: Realm, realmState: Map<Type, V>, parentState: Map<Type, V>);
15
+ /**
16
+ * Check the realm's state for a type it owns, or the program's state for any other type.
17
+ */
15
18
  has(t: Type): boolean;
16
19
  set(t: Type, v: any): this;
17
20
  get(t: Type): V | undefined;
21
+ /**
22
+ * Delete from the realm's state for a type it owns, or from the program's state otherwise.
23
+ */
18
24
  delete(t: Type): boolean;
19
25
  forEach(cb: (value: V, key: Type, map: Map<Type, V>) => void, thisArg?: any): this;
26
+ /**
27
+ * The sum of the realm and program entry counts, without deduplicating shared keys.
28
+ */
20
29
  get size(): number;
30
+ /**
31
+ * Clear only the realm's state, leaving the program's entries intact.
32
+ */
21
33
  clear(): void;
34
+ /**
35
+ * Iterate the realm's entries first, then the program's entries, in each map's insertion order.
36
+ * A key present in both maps is yielded twice.
37
+ */
22
38
  entries(): MapIterator<[Type, V]>;
23
39
  values(): MapIterator<V>;
24
40
  keys(): MapIterator<Type>;
41
+ /**
42
+ * Iterate entries in the same realm-first order as {@link entries}.
43
+ */
25
44
  [Symbol.iterator](): MapIterator<[Type, V]>;
26
45
  [Symbol.toStringTag]: string;
27
46
  }
@@ -36,6 +55,9 @@ declare class StateMapRealmView<V> implements Map<Type, V> {
36
55
  */
37
56
  export declare class Realm {
38
57
  #private;
58
+ /**
59
+ * A symbol identifying this realm, created with the constructor's description.
60
+ */
39
61
  key: symbol;
40
62
  /**
41
63
  * Create a new realm in the given program.
@@ -60,6 +82,13 @@ export declare class Realm {
60
82
  * This state map is a view of the program's state map for the given state key, with modifications made to the realm's
61
83
  * own state.
62
84
  *
85
+ * Reads, writes, and deletes use realm-local state for types added to this realm, without falling back to program
86
+ * state for those types. For other types, these operations access the program's state directly, so modifying a
87
+ * shared original type's state is not isolated. Clone the type into the realm first when isolation is needed.
88
+ *
89
+ * Iteration yields realm entries followed by program entries without deduplicating keys; `size` counts both maps.
90
+ * `clear()` removes only realm-local entries.
91
+ *
63
92
  * @param stateKey - The symbol to use as the state key.
64
93
  * @returns The realm's state map for the given state key.
65
94
  */
@@ -94,6 +123,10 @@ export declare class Realm {
94
123
  * @param type - The type to add to this realm.
95
124
  */
96
125
  addType(type: Type): void;
126
+ /**
127
+ * Process-wide lookup of the last realm a type was added to, shared across loaded compiler instances.
128
+ * A type may belong to multiple realms; use {@link hasType} to test membership in a specific realm.
129
+ */
97
130
  static realmForType: WeakMap<Type, Realm>;
98
131
  }
99
132
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"realm.d.ts","sourceRoot":"","sources":["../../../src/experimental/realm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAGnD;;;;;;;GAOG;AACH,cAAM,iBAAiB,CAAC,CAAC,CAAE,YAAW,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;;IAKhD,YAAmB,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,EAInF;IAED,GAAG,CAAC,CAAC,EAAE,IAAI,WAEV;IAED,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,QAGlB;IAED,GAAG,CAAC,CAAC,EAAE,IAAI,iBAEV;IAED,MAAM,CAAC,CAAC,EAAE,IAAI,WAEb;IAED,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,QAM1E;IAED,IAAI,IAAI,WAEP;IAED,KAAK,SAEJ;IAEA,OAAO,IAAI,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAUjC;IAEA,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,CAMxB;IAEA,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,CAMzB;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAEhB;IAED,CAAC,MAAM,CAAC,WAAW,CAAC,SAAc;CASnC;AAED;;;;;;;;GAQG;AACH,qBAAa,KAAK;;IAeT,GAAG,EAAG,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,YAAY,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAGhD;IAID;;;;OAIG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,0BASxB;IAED;;;;;OAKG;IACH,KAAK,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAOhC;IAED;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAEvB;IAED;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAE3B;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAGxB;IAeD,MAAM,CAAC,YAAY,uBAAqE;CACzF"}
1
+ {"version":3,"file":"realm.d.ts","sourceRoot":"","sources":["../../../src/experimental/realm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAGnD;;;;;;;GAOG;AACH,cAAM,iBAAiB,CAAC,CAAC,CAAE,YAAW,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;;IAKhD,YAAmB,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,EAInF;IAED;;OAEG;IACH,GAAG,CAAC,CAAC,EAAE,IAAI,WAEV;IAED,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,QAGlB;IAED,GAAG,CAAC,CAAC,EAAE,IAAI,iBAEV;IAED;;OAEG;IACH,MAAM,CAAC,CAAC,EAAE,IAAI,WAEb;IAED,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,QAM1E;IAED;;OAEG;IACH,IAAI,IAAI,WAEP;IAED;;OAEG;IACH,KAAK,SAEJ;IAED;;;OAGG;IACF,OAAO,IAAI,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAUjC;IAEA,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,CAMxB;IAEA,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,CAMzB;IAED;;OAEG;IACH,CAAC,MAAM,CAAC,QAAQ,CAAC,2BAEhB;IAED,CAAC,MAAM,CAAC,WAAW,CAAC,SAAc;CASnC;AAED;;;;;;;;GAQG;AACH,qBAAa,KAAK;;IAehB;;OAEG;IACI,GAAG,EAAG,MAAM,CAAC;IAEpB;;;;;OAKG;IACH,YAAY,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAGhD;IAID;;;;OAIG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;OAEG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,0BASxB;IAED;;;;;OAKG;IACH,KAAK,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAOhC;IAED;;;;;OAKG;IACH,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAEvB;IAED;;;;;OAKG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAE3B;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAGxB;IAeD;;;OAGG;IACH,MAAM,CAAC,YAAY,uBAAqE;CACzF"}
@@ -4,7 +4,7 @@ import { createTypekit } from "./typekit/index.js";
4
4
  /**
5
5
  * A Realm's view of a Program's state map for a given state key.
6
6
  *
7
- * For all operations, if a type was created within the realm, the realm's own state map is used. Otherwise, the owning'
7
+ * For keyed operations, if a type belongs to the realm, the realm's own state map is used. Otherwise, the owning
8
8
  * Program's state map is used.
9
9
  *
10
10
  * @experimental
@@ -18,6 +18,9 @@ class StateMapRealmView {
18
18
  this.#parentState = parentState;
19
19
  this.#realmState = realmState;
20
20
  }
21
+ /**
22
+ * Check the realm's state for a type it owns, or the program's state for any other type.
23
+ */
21
24
  has(t) {
22
25
  return this.#select(t).has(t) ?? false;
23
26
  }
@@ -28,6 +31,9 @@ class StateMapRealmView {
28
31
  get(t) {
29
32
  return this.#select(t).get(t);
30
33
  }
34
+ /**
35
+ * Delete from the realm's state for a type it owns, or from the program's state otherwise.
36
+ */
31
37
  delete(t) {
32
38
  return this.#select(t).delete(t);
33
39
  }
@@ -37,12 +43,22 @@ class StateMapRealmView {
37
43
  }
38
44
  return this;
39
45
  }
46
+ /**
47
+ * The sum of the realm and program entry counts, without deduplicating shared keys.
48
+ */
40
49
  get size() {
41
50
  return this.#realmState.size + this.#parentState.size;
42
51
  }
52
+ /**
53
+ * Clear only the realm's state, leaving the program's entries intact.
54
+ */
43
55
  clear() {
44
56
  this.#realmState.clear();
45
57
  }
58
+ /**
59
+ * Iterate the realm's entries first, then the program's entries, in each map's insertion order.
60
+ * A key present in both maps is yielded twice.
61
+ */
46
62
  *entries() {
47
63
  for (const item of this.#realmState) {
48
64
  yield item;
@@ -64,6 +80,9 @@ class StateMapRealmView {
64
80
  }
65
81
  return undefined;
66
82
  }
83
+ /**
84
+ * Iterate entries in the same realm-first order as {@link entries}.
85
+ */
67
86
  [Symbol.iterator]() {
68
87
  return this.entries();
69
88
  }
@@ -96,6 +115,9 @@ export class Realm {
96
115
  */
97
116
  #deletedTypes = new WeakSet();
98
117
  #stateMaps = new Map();
118
+ /**
119
+ * A symbol identifying this realm, created with the constructor's description.
120
+ */
99
121
  key;
100
122
  /**
101
123
  * Create a new realm in the given program.
@@ -128,6 +150,13 @@ export class Realm {
128
150
  * This state map is a view of the program's state map for the given state key, with modifications made to the realm's
129
151
  * own state.
130
152
  *
153
+ * Reads, writes, and deletes use realm-local state for types added to this realm, without falling back to program
154
+ * state for those types. For other types, these operations access the program's state directly, so modifying a
155
+ * shared original type's state is not isolated. Clone the type into the realm first when isolation is needed.
156
+ *
157
+ * Iteration yields realm entries followed by program entries without deduplicating keys; `size` counts both maps.
158
+ * `clear()` removes only realm-local entries.
159
+ *
131
160
  * @param stateKey - The symbol to use as the state key.
132
161
  * @returns The realm's state map for the given state key.
133
162
  */
@@ -192,6 +221,10 @@ export class Realm {
192
221
  get types() {
193
222
  return this.#types;
194
223
  }
224
+ /**
225
+ * Process-wide lookup of the last realm a type was added to, shared across loaded compiler instances.
226
+ * A type may belong to multiple realms; use {@link hasType} to test membership in a specific realm.
227
+ */
195
228
  static realmForType = singleton("Realm.realmForType", () => new WeakMap());
196
229
  }
197
230
  _a = Realm;
@@ -1 +1 @@
1
- {"version":3,"file":"realm.js","sourceRoot":"","sources":["../../../src/experimental/realm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"realm.js","sourceRoot":"","sources":["../../../src/experimental/realm.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  import type { SystemHost } from "../core/types.js";
2
+ /** Built-in initialization templates advertised by the compiler to editor clients. */
2
3
  export interface LoadedCoreTemplates {
4
+ /** Base location identifying the source of the built-in template index. */
3
5
  readonly baseUri: string;
6
+ /** Template definitions keyed by their selection identifiers. */
4
7
  readonly templates: Record<string, any>;
5
8
  }
6
9
  export declare function getTypeSpecCoreTemplates(host: SystemHost): Promise<LoadedCoreTemplates>;
@@ -1 +1 @@
1
- {"version":3,"file":"core-templates.d.ts","sourceRoot":"","sources":["../../../src/init/core-templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACzC;AAGD,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAM7F"}
1
+ {"version":3,"file":"core-templates.d.ts","sourceRoot":"","sources":["../../../src/init/core-templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAGnD,sFAAsF;AACtF,MAAM,WAAW,mBAAmB;IAClC,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CACzC;AAGD,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAM7F"}
@@ -1 +1 @@
1
- {"version":3,"file":"core-templates.js","sourceRoot":"","sources":["../../../src/init/core-templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAO3E,IAAI,qBAAsD,CAAC;AAC3D,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,IAAgB;IAC7D,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,6BAA6B,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;QACrF,qBAAqB,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IACjD,CAAC;IACD,OAAO,qBAAqB,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"core-templates.js","sourceRoot":"","sources":["../../../src/init/core-templates.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAU3E,IAAI,qBAAsD,CAAC;AAC3D,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,IAAgB;IAC7D,IAAI,qBAAqB,KAAK,SAAS,EAAE,CAAC;QACxC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,MAAM,6BAA6B,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;QACrF,qBAAqB,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;IACjD,CAAC;IACD,OAAO,qBAAqB,CAAC;AAC/B,CAAC"}
@@ -1,15 +1,24 @@
1
1
  import type { JSONSchemaType } from "ajv";
2
2
  import type { TypeSpecRawConfig } from "../config/types.js";
3
+ /** A template file to render and copy into a newly initialized project. */
3
4
  export interface InitTemplateFile {
5
+ /** Path to read relative to the template source. */
4
6
  path: string;
7
+ /** Output path relative to the new project directory; must not escape that directory. */
5
8
  destination: string;
9
+ /** Skip this file and suppress any built-in generation for the same destination. */
6
10
  skipGeneration?: boolean;
7
11
  }
12
+ /** A text prompt whose answer becomes a custom template parameter. */
8
13
  export interface InitTemplateInput {
14
+ /** Prompt shown when asking for this parameter. */
9
15
  description: string;
16
+ /** Input control to present; currently only free-form text is supported. */
10
17
  type: "text";
18
+ /** Initial prompt value, which the user may replace. */
11
19
  initialValue: any;
12
20
  }
21
+ /** Project initialization recipe containing dependencies, emitter choices, configuration, and files. */
13
22
  export interface InitTemplate {
14
23
  /**
15
24
  * The kind of project this tempolate initialize. This will change things like where dependencies are added.
@@ -1 +1 @@
1
- {"version":3,"file":"init-template.d.ts","sourceRoot":"","sources":["../../../src/init/init-template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAE1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,GAAG,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAE/B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAElC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAE3C;;OAEG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAE3C;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;OAEG;IACH,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,uBAAuB,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,6BAA6B,EAAE,cAAc,CAAC,uBAAuB,CAQjF,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,cAAc,CAAC,YAAY,CA+D3D,CAAC"}
1
+ {"version":3,"file":"init-template.d.ts","sourceRoot":"","sources":["../../../src/init/init-template.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,KAAK,CAAC;AAE1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,2EAA2E;AAC3E,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,yFAAyF;IACzF,WAAW,EAAE,MAAM,CAAC;IACpB,oFAAoF;IACpF,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,sEAAsE;AACtE,MAAM,WAAW,iBAAiB;IAChC,mDAAmD;IACnD,WAAW,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,YAAY,EAAE,GAAG,CAAC;CACnB;AAED,wGAAwG;AACxG,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;IAE/B;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB,uCAAuC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAElC;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAE3C;;OAEG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IAE3C;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;OAEG;IACH,KAAK,CAAC,EAAE,gBAAgB,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,uBAAuB,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,6BAA6B,EAAE,cAAc,CAAC,uBAAuB,CAQjF,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,cAAc,CAAC,YAAY,CA+D3D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"init-template.js","sourceRoot":"","sources":["../../../src/init/init-template.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AA0GtE,MAAM,CAAC,MAAM,6BAA6B,GAA4C;IACpF,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACxB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC5C;IACD,QAAQ,EAAE,CAAC,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAiC;IAC9D,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,UAAU,EAAE;QACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC5F,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;QACnD,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,6BAA6B,CAAC;aAC3D;YACD,QAAQ,EAAE,IAAI;SACf;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oBACzC,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oBAC/C,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;oBAC7C,OAAO,EAAE,EAAS;oBAClB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;oBAC3C,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;iBAC5C;gBACD,QAAQ,EAAE,EAAE;aACb;YACD,QAAQ,EAAE,EAAE;SACb;QACD,mBAAmB,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;QACxD,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,wBAAwB,EAAE;QACvD,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,IAAI;YACd,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC/B,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;oBACxC,YAAY,EAAE,EAAS;iBACxB;gBACD,QAAQ,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC;aAClC;YACD,QAAQ,EAAE,EAAE;SACb;QACD,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC/B,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE;iBACpD;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,aAAa,CAAC;aAClC;SACF;KACF;IACD,QAAQ,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;CACnC,CAAC"}
1
+ {"version":3,"file":"init-template.js","sourceRoot":"","sources":["../../../src/init/init-template.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { SystemHost } from "../core/types.js";
2
2
  import type { InitTemplate, InitTemplateFile, InitTemplateLibrary, InitTemplateLibrarySpec } from "./init-template.js";
3
3
  import type { TemplateSource } from "./template-source/index.js";
4
4
  export declare const TypeSpecConfigFilename = "tspconfig.yaml";
5
+ /** Selected template, dependencies, and user inputs used to initialize a project directory. */
5
6
  export interface ScaffoldingConfig {
6
7
  /** Template used to resolve that config */
7
8
  template: InitTemplate;
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../../src/init/scaffold.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAQnD,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AAEvD,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,QAAQ,EAAE,YAAY,CAAC;IAEvB;;;OAGG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,EAAE,uBAAuB,EAAE,CAAC;IAErC;;OAEG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEhC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,uBAAuB,CAKtF;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACjC,iBAAiB,CAWnB;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,iBAOnF;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAOzF"}
1
+ {"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../../src/init/scaffold.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAQnD,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AAEvD,+FAA+F;AAC/F,MAAM,WAAW,iBAAiB;IAChC,2CAA2C;IAC3C,QAAQ,EAAE,YAAY,CAAC;IAEvB;;;OAGG;IACH,MAAM,CAAC,EAAE,cAAc,CAAC;IAExB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,EAAE,uBAAuB,EAAE,CAAC;IAErC;;OAEG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEhC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC/B;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,GAAG,uBAAuB,CAKtF;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,YAAY,EACtB,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,GACjC,iBAAiB,CAWnB;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,iBAOnF;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAOzF"}
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../../src/init/scaffold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../../src/init/scaffold.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,9 @@ export interface LoadedTemplateIndex {
15
15
  * {@link InMemoryTemplateSource} for a bundle addressed through the `internal:` scheme.
16
16
  */
17
17
  export interface TemplateSource {
18
+ /** Load the available template definitions together with their index source and base location. */
18
19
  loadIndex(): Promise<LoadedTemplateIndex>;
20
+ /** Read one template file relative to this source, preserving its path for diagnostics. */
19
21
  readFile(relativePath: string): Promise<SourceFile>;
20
22
  }
21
23
  export declare function validateTemplateRelativePath(path: string, kind: "path" | "destination"): string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/init/template-source/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,qGAAqG;AACrG,MAAM,WAAW,mBAAmB;IAClC,mCAAmC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACjD,sFAAsF;IACtF,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,wFAAwF;IACxF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACrD;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,CAU/F"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/init/template-source/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,qGAAqG;AACrG,MAAM,WAAW,mBAAmB;IAClC,mCAAmC;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACjD,sFAAsF;IACtF,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,wFAAwF;IACxF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,kGAAkG;IAClG,SAAS,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC1C,2FAA2F;IAC3F,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACrD;AAED,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,CAU/F"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/init/template-source/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAwBzE,MAAM,UAAU,4BAA4B,CAAC,IAAY,EAAE,IAA4B;IACrF,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3C,IACE,cAAc,CAAC,cAAc,CAAC;QAC9B,cAAc,KAAK,IAAI;QACvB,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,EAChC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,8BAA8B,IAAI,GAAG,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/init/template-source/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AA0BzE,MAAM,UAAU,4BAA4B,CAAC,IAAY,EAAE,IAA4B;IACrF,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC3C,IACE,cAAc,CAAC,cAAc,CAAC;QAC9B,cAAc,KAAK,IAAI;QACvB,cAAc,CAAC,UAAU,CAAC,KAAK,CAAC,EAChC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,8BAA8B,IAAI,GAAG,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC"}