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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) 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 +7 -0
  12. package/dist/src/core/checker.js.map +1 -1
  13. package/dist/src/core/code-fixes.d.ts +6 -0
  14. package/dist/src/core/code-fixes.d.ts.map +1 -1
  15. package/dist/src/core/code-fixes.js +6 -0
  16. package/dist/src/core/code-fixes.js.map +1 -1
  17. package/dist/src/core/compiler-code-fixes/suppress.codefix.d.ts +7 -0
  18. package/dist/src/core/compiler-code-fixes/suppress.codefix.d.ts.map +1 -1
  19. package/dist/src/core/compiler-code-fixes/suppress.codefix.js +7 -0
  20. package/dist/src/core/compiler-code-fixes/suppress.codefix.js.map +1 -1
  21. package/dist/src/core/decorator-utils.d.ts +17 -0
  22. package/dist/src/core/decorator-utils.d.ts.map +1 -1
  23. package/dist/src/core/decorator-utils.js +5 -0
  24. package/dist/src/core/decorator-utils.js.map +1 -1
  25. package/dist/src/core/diagnostics.d.ts +9 -0
  26. package/dist/src/core/diagnostics.d.ts.map +1 -1
  27. package/dist/src/core/diagnostics.js +2 -0
  28. package/dist/src/core/diagnostics.js.map +1 -1
  29. package/dist/src/core/emitter-utils.d.ts +5 -0
  30. package/dist/src/core/emitter-utils.d.ts.map +1 -1
  31. package/dist/src/core/emitter-utils.js.map +1 -1
  32. package/dist/src/core/file-ref.d.ts +2 -0
  33. package/dist/src/core/file-ref.d.ts.map +1 -1
  34. package/dist/src/core/file-ref.js +1 -0
  35. package/dist/src/core/file-ref.js.map +1 -1
  36. package/dist/src/core/helpers/discriminator-utils.d.ts +14 -0
  37. package/dist/src/core/helpers/discriminator-utils.d.ts.map +1 -1
  38. package/dist/src/core/helpers/discriminator-utils.js +5 -0
  39. package/dist/src/core/helpers/discriminator-utils.js.map +1 -1
  40. package/dist/src/core/helpers/location-context.d.ts +1 -0
  41. package/dist/src/core/helpers/location-context.d.ts.map +1 -1
  42. package/dist/src/core/helpers/location-context.js +1 -0
  43. package/dist/src/core/helpers/location-context.js.map +1 -1
  44. package/dist/src/core/helpers/operation-utils.d.ts +1 -0
  45. package/dist/src/core/helpers/operation-utils.d.ts.map +1 -1
  46. package/dist/src/core/helpers/operation-utils.js.map +1 -1
  47. package/dist/src/core/helpers/type-name-utils.d.ts +7 -0
  48. package/dist/src/core/helpers/type-name-utils.d.ts.map +1 -1
  49. package/dist/src/core/helpers/type-name-utils.js +3 -0
  50. package/dist/src/core/helpers/type-name-utils.js.map +1 -1
  51. package/dist/src/core/helpers/usage-resolver.d.ts +9 -0
  52. package/dist/src/core/helpers/usage-resolver.d.ts.map +1 -1
  53. package/dist/src/core/helpers/usage-resolver.js +4 -0
  54. package/dist/src/core/helpers/usage-resolver.js.map +1 -1
  55. package/dist/src/core/intrinsic-type-state.d.ts +44 -17
  56. package/dist/src/core/intrinsic-type-state.d.ts.map +1 -1
  57. package/dist/src/core/intrinsic-type-state.js +41 -17
  58. package/dist/src/core/intrinsic-type-state.js.map +1 -1
  59. package/dist/src/core/library.d.ts +2 -0
  60. package/dist/src/core/library.d.ts.map +1 -1
  61. package/dist/src/core/library.js +2 -0
  62. package/dist/src/core/library.js.map +1 -1
  63. package/dist/src/core/logger/console-sink.d.ts +4 -0
  64. package/dist/src/core/logger/console-sink.d.ts.map +1 -1
  65. package/dist/src/core/logger/console-sink.js +1 -0
  66. package/dist/src/core/logger/console-sink.js.map +1 -1
  67. package/dist/src/core/numeric.d.ts +11 -1
  68. package/dist/src/core/numeric.d.ts.map +1 -1
  69. package/dist/src/core/numeric.js.map +1 -1
  70. package/dist/src/core/options.d.ts +8 -2
  71. package/dist/src/core/options.d.ts.map +1 -1
  72. package/dist/src/core/param-message.d.ts +9 -0
  73. package/dist/src/core/param-message.d.ts.map +1 -1
  74. package/dist/src/core/param-message.js +9 -0
  75. package/dist/src/core/param-message.js.map +1 -1
  76. package/dist/src/core/parser.d.ts +19 -0
  77. package/dist/src/core/parser.d.ts.map +1 -1
  78. package/dist/src/core/parser.js +18 -0
  79. package/dist/src/core/parser.js.map +1 -1
  80. package/dist/src/core/path-utils.d.ts +24 -0
  81. package/dist/src/core/path-utils.d.ts.map +1 -1
  82. package/dist/src/core/path-utils.js +9 -1
  83. package/dist/src/core/path-utils.js.map +1 -1
  84. package/dist/src/core/perf.d.ts +8 -1
  85. package/dist/src/core/perf.d.ts.map +1 -1
  86. package/dist/src/core/perf.js +8 -1
  87. package/dist/src/core/perf.js.map +1 -1
  88. package/dist/src/core/program.d.ts +31 -1
  89. package/dist/src/core/program.d.ts.map +1 -1
  90. package/dist/src/core/program.js +5 -0
  91. package/dist/src/core/program.js.map +1 -1
  92. package/dist/src/core/semantic-walker.d.ts +20 -5
  93. package/dist/src/core/semantic-walker.d.ts.map +1 -1
  94. package/dist/src/core/semantic-walker.js +13 -3
  95. package/dist/src/core/semantic-walker.js.map +1 -1
  96. package/dist/src/core/source-file.d.ts +2 -0
  97. package/dist/src/core/source-file.d.ts.map +1 -1
  98. package/dist/src/core/source-file.js +2 -0
  99. package/dist/src/core/source-file.js.map +1 -1
  100. package/dist/src/core/type-utils.d.ts +8 -0
  101. package/dist/src/core/type-utils.d.ts.map +1 -1
  102. package/dist/src/core/type-utils.js +8 -0
  103. package/dist/src/core/type-utils.js.map +1 -1
  104. package/dist/src/core/types.d.ts +1004 -46
  105. package/dist/src/core/types.d.ts.map +1 -1
  106. package/dist/src/core/types.js +130 -5
  107. package/dist/src/core/types.js.map +1 -1
  108. package/dist/src/experimental/mutators.d.ts +32 -3
  109. package/dist/src/experimental/mutators.d.ts.map +1 -1
  110. package/dist/src/experimental/mutators.js +11 -3
  111. package/dist/src/experimental/mutators.js.map +1 -1
  112. package/dist/src/experimental/realm.d.ts +34 -1
  113. package/dist/src/experimental/realm.d.ts.map +1 -1
  114. package/dist/src/experimental/realm.js +34 -1
  115. package/dist/src/experimental/realm.js.map +1 -1
  116. package/dist/src/init/core-templates.d.ts +3 -0
  117. package/dist/src/init/core-templates.d.ts.map +1 -1
  118. package/dist/src/init/core-templates.js.map +1 -1
  119. package/dist/src/init/init-template.d.ts +9 -0
  120. package/dist/src/init/init-template.d.ts.map +1 -1
  121. package/dist/src/init/init-template.js.map +1 -1
  122. package/dist/src/init/scaffold.d.ts +1 -0
  123. package/dist/src/init/scaffold.d.ts.map +1 -1
  124. package/dist/src/init/scaffold.js.map +1 -1
  125. package/dist/src/init/template-source/types.d.ts +2 -0
  126. package/dist/src/init/template-source/types.d.ts.map +1 -1
  127. package/dist/src/init/template-source/types.js.map +1 -1
  128. package/dist/src/lib/decorators.d.ts +84 -2
  129. package/dist/src/lib/decorators.d.ts.map +1 -1
  130. package/dist/src/lib/decorators.js +71 -7
  131. package/dist/src/lib/decorators.js.map +1 -1
  132. package/dist/src/lib/encoded-names.d.ts +4 -0
  133. package/dist/src/lib/encoded-names.d.ts.map +1 -1
  134. package/dist/src/lib/encoded-names.js +4 -0
  135. package/dist/src/lib/encoded-names.js.map +1 -1
  136. package/dist/src/lib/examples.d.ts +29 -2
  137. package/dist/src/lib/examples.d.ts.map +1 -1
  138. package/dist/src/lib/examples.js +25 -2
  139. package/dist/src/lib/examples.js.map +1 -1
  140. package/dist/src/lib/key.d.ts +2 -0
  141. package/dist/src/lib/key.d.ts.map +1 -1
  142. package/dist/src/lib/key.js +2 -0
  143. package/dist/src/lib/key.js.map +1 -1
  144. package/dist/src/lib/paging.d.ts +27 -0
  145. package/dist/src/lib/paging.d.ts.map +1 -1
  146. package/dist/src/lib/paging.js +7 -0
  147. package/dist/src/lib/paging.js.map +1 -1
  148. package/dist/src/lib/service.d.ts +9 -2
  149. package/dist/src/lib/service.d.ts.map +1 -1
  150. package/dist/src/lib/service.js +5 -2
  151. package/dist/src/lib/service.js.map +1 -1
  152. package/dist/src/lib/visibility.d.ts +44 -10
  153. package/dist/src/lib/visibility.d.ts.map +1 -1
  154. package/dist/src/lib/visibility.js +42 -10
  155. package/dist/src/lib/visibility.js.map +1 -1
  156. package/dist/src/manifest.d.ts +2 -0
  157. package/dist/src/manifest.d.ts.map +1 -1
  158. package/dist/src/manifest.js +1 -0
  159. package/dist/src/manifest.js.map +1 -1
  160. package/dist/src/module-resolver/module-resolver.d.ts +12 -1
  161. package/dist/src/module-resolver/module-resolver.d.ts.map +1 -1
  162. package/dist/src/module-resolver/module-resolver.js +7 -1
  163. package/dist/src/module-resolver/module-resolver.js.map +1 -1
  164. package/dist/src/module-resolver/types.d.ts +14 -1
  165. package/dist/src/module-resolver/types.d.ts.map +1 -1
  166. package/dist/src/server/client-config-provider.d.ts +14 -0
  167. package/dist/src/server/client-config-provider.d.ts.map +1 -1
  168. package/dist/src/server/client-config-provider.js.map +1 -1
  169. package/dist/src/server/server-compile-manager.d.ts +30 -4
  170. package/dist/src/server/server-compile-manager.d.ts.map +1 -1
  171. package/dist/src/server/server-compile-manager.js +21 -0
  172. package/dist/src/server/server-compile-manager.js.map +1 -1
  173. package/dist/src/server/serverlib.d.ts +9 -0
  174. package/dist/src/server/serverlib.d.ts.map +1 -1
  175. package/dist/src/server/serverlib.js +9 -0
  176. package/dist/src/server/serverlib.js.map +1 -1
  177. package/dist/src/server/types.d.ts +133 -0
  178. package/dist/src/server/types.d.ts.map +1 -1
  179. package/dist/src/server/types.js +26 -0
  180. package/dist/src/server/types.js.map +1 -1
  181. package/dist/src/server/update-manager.d.ts +24 -7
  182. package/dist/src/server/update-manager.d.ts.map +1 -1
  183. package/dist/src/server/update-manager.js +16 -7
  184. package/dist/src/server/update-manager.js.map +1 -1
  185. package/dist/src/testing/code-fix-testing.d.ts +2 -0
  186. package/dist/src/testing/code-fix-testing.d.ts.map +1 -1
  187. package/dist/src/testing/code-fix-testing.js.map +1 -1
  188. package/dist/src/testing/expect.d.ts +16 -10
  189. package/dist/src/testing/expect.d.ts.map +1 -1
  190. package/dist/src/testing/expect.js +9 -3
  191. package/dist/src/testing/expect.js.map +1 -1
  192. package/dist/src/testing/fourslash.d.ts +3 -3
  193. package/dist/src/testing/fourslash.d.ts.map +1 -1
  194. package/dist/src/testing/fs.d.ts +4 -0
  195. package/dist/src/testing/fs.d.ts.map +1 -1
  196. package/dist/src/testing/fs.js +4 -0
  197. package/dist/src/testing/fs.js.map +1 -1
  198. package/dist/src/testing/marked-template.d.ts +25 -2
  199. package/dist/src/testing/marked-template.d.ts.map +1 -1
  200. package/dist/src/testing/marked-template.js +7 -2
  201. package/dist/src/testing/marked-template.js.map +1 -1
  202. package/dist/src/testing/rule-tester.d.ts +22 -0
  203. package/dist/src/testing/rule-tester.d.ts.map +1 -1
  204. package/dist/src/testing/rule-tester.js +9 -0
  205. package/dist/src/testing/rule-tester.js.map +1 -1
  206. package/dist/src/testing/source-utils.d.ts +7 -2
  207. package/dist/src/testing/source-utils.d.ts.map +1 -1
  208. package/dist/src/testing/source-utils.js +2 -2
  209. package/dist/src/testing/source-utils.js.map +1 -1
  210. package/dist/src/testing/test-compiler-host.d.ts +8 -0
  211. package/dist/src/testing/test-compiler-host.d.ts.map +1 -1
  212. package/dist/src/testing/test-compiler-host.js +4 -0
  213. package/dist/src/testing/test-compiler-host.js.map +1 -1
  214. package/dist/src/testing/test-host.d.ts +4 -0
  215. package/dist/src/testing/test-host.d.ts.map +1 -1
  216. package/dist/src/testing/test-host.js +4 -0
  217. package/dist/src/testing/test-host.js.map +1 -1
  218. package/dist/src/testing/test-utils.d.ts +14 -2
  219. package/dist/src/testing/test-utils.d.ts.map +1 -1
  220. package/dist/src/testing/test-utils.js +9 -0
  221. package/dist/src/testing/test-utils.js.map +1 -1
  222. package/dist/src/testing/tester.d.ts +12 -0
  223. package/dist/src/testing/tester.d.ts.map +1 -1
  224. package/dist/src/testing/tester.js +7 -0
  225. package/dist/src/testing/tester.js.map +1 -1
  226. package/dist/src/testing/types.d.ts +101 -36
  227. package/dist/src/testing/types.d.ts.map +1 -1
  228. package/dist/src/testing/types.js +4 -1
  229. package/dist/src/testing/types.js.map +1 -1
  230. package/dist/src/typekit/define-kit.d.ts +6 -0
  231. package/dist/src/typekit/define-kit.d.ts.map +1 -1
  232. package/dist/src/typekit/define-kit.js.map +1 -1
  233. package/dist/src/typekit/kits/array.d.ts +3 -0
  234. package/dist/src/typekit/kits/array.d.ts.map +1 -1
  235. package/dist/src/typekit/kits/array.js.map +1 -1
  236. package/dist/src/typekit/kits/builtin.d.ts +3 -0
  237. package/dist/src/typekit/kits/builtin.d.ts.map +1 -1
  238. package/dist/src/typekit/kits/builtin.js.map +1 -1
  239. package/dist/src/typekit/kits/entity.d.ts +3 -0
  240. package/dist/src/typekit/kits/entity.d.ts.map +1 -1
  241. package/dist/src/typekit/kits/entity.js.map +1 -1
  242. package/dist/src/typekit/kits/enum-member.d.ts +3 -0
  243. package/dist/src/typekit/kits/enum-member.d.ts.map +1 -1
  244. package/dist/src/typekit/kits/enum-member.js.map +1 -1
  245. package/dist/src/typekit/kits/enum.d.ts +3 -0
  246. package/dist/src/typekit/kits/enum.d.ts.map +1 -1
  247. package/dist/src/typekit/kits/enum.js.map +1 -1
  248. package/dist/src/typekit/kits/intrinsic.d.ts +5 -0
  249. package/dist/src/typekit/kits/intrinsic.d.ts.map +1 -1
  250. package/dist/src/typekit/kits/intrinsic.js.map +1 -1
  251. package/dist/src/typekit/kits/model.d.ts +4 -0
  252. package/dist/src/typekit/kits/model.d.ts.map +1 -1
  253. package/dist/src/typekit/kits/model.js.map +1 -1
  254. package/dist/src/typekit/kits/record.d.ts +3 -0
  255. package/dist/src/typekit/kits/record.d.ts.map +1 -1
  256. package/dist/src/typekit/kits/record.js.map +1 -1
  257. package/dist/src/typekit/kits/scalar.d.ts +1 -1
  258. package/dist/src/typekit/kits/tuple.d.ts +5 -0
  259. package/dist/src/typekit/kits/tuple.d.ts.map +1 -1
  260. package/dist/src/typekit/kits/tuple.js.map +1 -1
  261. package/dist/src/typekit/kits/type.d.ts +5 -0
  262. package/dist/src/typekit/kits/type.d.ts.map +1 -1
  263. package/dist/src/typekit/kits/type.js.map +1 -1
  264. package/dist/src/typekit/kits/value.d.ts +8 -0
  265. package/dist/src/typekit/kits/value.d.ts.map +1 -1
  266. package/dist/src/typekit/kits/value.js.map +1 -1
  267. package/dist/src/types/package-json.d.ts +30 -0
  268. package/dist/src/types/package-json.d.ts.map +1 -1
  269. package/dist/src/utils/misc.d.ts +6 -0
  270. package/dist/src/utils/misc.d.ts.map +1 -1
  271. package/dist/src/utils/misc.js +6 -0
  272. package/dist/src/utils/misc.js.map +1 -1
  273. package/dist/src/utils/state-accessor.d.ts +10 -0
  274. package/dist/src/utils/state-accessor.d.ts.map +1 -1
  275. package/dist/src/utils/state-accessor.js +5 -0
  276. package/dist/src/utils/state-accessor.js.map +1 -1
  277. package/dist/src/yaml/types.d.ts +3 -0
  278. package/dist/src/yaml/types.d.ts.map +1 -1
  279. package/lib/std/decorators.tsp +16 -3
  280. package/lib/std/visibility.tsp +14 -0
  281. package/package.json +1 -1
@@ -1,15 +1,25 @@
1
+ /** An immutable numeric value that preserves precision beyond JavaScript's `number` range. */
1
2
  export interface Numeric {
2
3
  /**
3
- * Return the value as JavaScript number or null if it cannot be represented without loosing precision.
4
+ * Convert to a JavaScript number, returning null when a finite conversion loses precision.
5
+ * Throws on overflow to infinity. Use {@link Numeric.toString} to retain the precise value without conversion.
4
6
  */
5
7
  asNumber(): number | null;
8
+ /** Convert an integer to a signed bigint, or return null for a fractional value. */
6
9
  asBigInt(): bigint | null;
10
+ /** Format a base-10 value without exponential notation. */
7
11
  toString(): string;
12
+ /** Compare normalized digits and exponent; unlike ordering comparisons, this does not compare signs. */
8
13
  equals(value: Numeric): boolean;
14
+ /** Test strict greater-than ordering without converting to a JavaScript number. */
9
15
  gt(value: Numeric): boolean;
16
+ /** Test strict less-than ordering without converting to a JavaScript number. */
10
17
  lt(value: Numeric): boolean;
18
+ /** Test greater-than-or-equal ordering without converting to a JavaScript number. */
11
19
  gte(value: Numeric): boolean;
20
+ /** Test less-than-or-equal ordering without converting to a JavaScript number. */
12
21
  lte(value: Numeric): boolean;
22
+ /** Whether the value has no fractional component, regardless of its source notation. */
13
23
  readonly isInteger: boolean;
14
24
  }
15
25
  export declare class InvalidNumericError extends Error {
@@ -1 +1 @@
1
- {"version":3,"file":"numeric.d.ts","sourceRoot":"","sources":["../../../src/core/numeric.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,IAAI,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,IAAI,MAAM,CAAC;IACnB,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAChC,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,GAAG,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAC7B,GAAG,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAE7B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAI7B;AAcD,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,oBAAoB;CAClC;AAKD;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,OAAO,CAEtD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAcpD"}
1
+ {"version":3,"file":"numeric.d.ts","sourceRoot":"","sources":["../../../src/core/numeric.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,MAAM,WAAW,OAAO;IACtB;;;OAGG;IACH,QAAQ,IAAI,MAAM,GAAG,IAAI,CAAC;IAC1B,oFAAoF;IACpF,QAAQ,IAAI,MAAM,GAAG,IAAI,CAAC;IAC1B,2DAA2D;IAC3D,QAAQ,IAAI,MAAM,CAAC;IACnB,wGAAwG;IACxG,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAChC,mFAAmF;IACnF,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,gFAAgF;IAChF,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAC5B,qFAAqF;IACrF,GAAG,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAC7B,kFAAkF;IAClF,GAAG,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;IAE7B,wFAAwF;IACxF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAI7B;AAcD,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,oBAAoB;CAClC;AAKD;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,OAAO,CAEtD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAcpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"numeric.js","sourceRoot":"","sources":["../../../src/core/numeric.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"numeric.js","sourceRoot":"","sources":["../../../src/core/numeric.ts"],"names":[],"mappings":"AAyCA,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IACnC,IAAI,GAAG,gBAAgB,CAAC;CAClC;AAED,gBAAgB;AAChB,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAEjE;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,GAAY;IACpC,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,eAAe,IAAI,GAAG,CAAC;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,WAAmB;IACzC,IAAI,IAAI,MAAM,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;IAEhC,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,GAAG,GAAG;QACV,CAAC,eAAe,CAAC,EAAE,IAAI;QACvB,SAAS;KACV,CAAC;IACF,uJAAuJ;IACvJ,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,kBAAkB,CAAqC,GAAM,EAAE,SAAY;IAClF,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACtC,OAAO,GAAU,CAAC;AACpB,CAAC;AAED,SAAS,KAAK,CAAC,QAAgB;IAC7B,IAAI,WAAW,GAAG,QAAQ,CAAC;IAC3B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,IAAI,GAAW,CAAC,CAAC;IACrB,IAAI,CAAS,CAAC;IACd,IAAI,GAAuB,CAAC;IAC5B,IAAI,OAAO,GAAuB,SAAS,CAAC;IAC5C,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;QAC3B,KAAK,GAAG,CAAC,CAAC;QACV,IAAI,GAAG,CAAC,CAAC,CAAC;IACZ,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;IACrD,IAAI,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;QACvF,IAAI,CAAC;YACH,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC;YAC1B,OAAO,GAAG,CAAC,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,mBAAmB,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,kBAAkB;QAClB,OAAO,WAAW,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC;YAClC,KAAK,EAAE,CAAC;QACV,CAAC;QACD,MAAM,iBAAiB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnD,MAAM,kBAAkB,GAAG,iBAAiB,GAAG,KAAK,CAAC;QACrD,iBAAiB;QACjB,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,GAAG,kBAAkB,CAAC;YACzB,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,CAAS,CAAC;QAEd,IAAI,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,sBAAsB;YACtB,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;YAClB,CAAC;YACD,GAAG,IAAI,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACxC,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAC1C,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;QAClD,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YAC7B,WAAW;YACX,GAAG,GAAG,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC;YACjC,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,CAAC;QAED,IAAI,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC;QAC7B,OAAO,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,GAAG,kBAAkB,EAAE,CAAC;YAChE,GAAG,EAAE,CAAC;QACR,CAAC;QAED,gIAAgI;QAChI,IAAI,KAAK,KAAK,kBAAkB,GAAG,CAAC,EAAE,CAAC;YACrC,IAAI,GAAG,GAAG,kBAAkB,CAAC;YAC7B,OAAO,WAAW,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;gBAC7C,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,CAAC;YACR,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACxC,WAAW,GAAG,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,0CAA0C;YACzH,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;YACxB,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;gBACb,OAAO,GAAG,CAAC,CAAC;YACd,CAAC;iBAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACjC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,mBAAmB,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAED,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,SAAS,CAAC,KAAmB;IACpC,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE;QAAE,OAAO,GAAG,CAAC;IAE/B,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzF,OAAO,IAAI,GAAG,GAAG,GAAG,OAAO,CAAC;AAC9B,CAAC;AACD,MAAM,MAAM,GAAG,CAAC,CAAe,EAAE,CAAe,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAEhF,MAAM,OAAO,GAAG,CAAC,CAAe,EAAE,CAAe,EAAc,EAAE;IAC/D,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACd,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;SAAM,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAChB,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACd,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAQ,CAAC;IAC3B,CAAC;SAAM,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,CAAC,CAAC,GAAG,GAAG,CAAQ,CAAC;IAC1B,CAAC;IAED,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IACb,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAEb,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACd,EAAE,IAAI,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;SAAM,CAAC;QACN,EAAE,IAAI,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,EAAE,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAQ,CAAC;IACtC,IAAI,EAAE,GAAG,EAAE;QAAE,OAAO,CAAC,CAAC,GAAG,GAAG,CAAQ,CAAC;IACrC,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG;IACvB,QAAQ,EAAE;QACR,OAAO,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IAC1C,CAAC;IACD,QAAQ,EAAE;QACR,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrD,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9F,CAAC;IACD,QAAQ,EAAE;QACR,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IACD,MAAM,EAAE,UAAyB,KAAc;QAC7C,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,EAAE,EAAE,UAAyB,KAAc;QACzC,OAAO,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,GAAG,EAAE,UAAyB,KAAc;QAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IACD,EAAE,EAAE,UAAyB,KAAc;QACzC,OAAO,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC;IACtE,CAAC;IACD,GAAG,EAAE,UAAyB,KAAc;QAC1C,OAAO,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;CACF,CAAC;AACF,gBAAgB,CAAC,QAAQ,GAAG;IAC1B,OAAO,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;AAC1C,CAAC,CAAC"}
@@ -1,6 +1,8 @@
1
1
  import type { EmitterOptions } from "../config/types.js";
2
2
  import type { LinterRuleSet, ParseOptions } from "./types.js";
3
+ /** Configuration for a compilation, including source loading, diagnostics, linting, and emission. */
3
4
  export interface CompilerOptions {
5
+ /** Additional options made available to compiler integrations through program option lookup. */
4
6
  miscOptions?: Record<string, unknown>;
5
7
  /**
6
8
  * Default output directory used by emitters.
@@ -21,14 +23,15 @@ export interface CompilerOptions {
21
23
  */
22
24
  listFiles?: boolean;
23
25
  /**
24
- * Emitter options.
25
- * Key value pair where the key must be the emitter name.
26
+ * Emitter-specific settings keyed by the resolved library metadata name.
27
+ * Use the original emitter specifier only when no metadata name is available.
26
28
  */
27
29
  options?: Record<string, EmitterOptions>;
28
30
  /**
29
31
  * Suppress all `deprecated` warnings.
30
32
  */
31
33
  ignoreDeprecated?: boolean;
34
+ /** Skip loading the compiler's standard TypeSpec library. */
32
35
  nostdlib?: boolean;
33
36
  /**
34
37
  * Do not run emitters. Same as setting `emit: []`
@@ -40,7 +43,9 @@ export interface CompilerOptions {
40
43
  * Only runs emitters supporting this functionality
41
44
  */
42
45
  dryRun?: boolean;
46
+ /** Import these modules in addition to imports declared by the entry-point source. */
43
47
  additionalImports?: string[];
48
+ /** Promote unsuppressed warnings to errors, causing the compilation to fail. */
44
49
  warningAsError?: boolean;
45
50
  /**
46
51
  * When true, indicates that a compilation is being performed for live
@@ -51,6 +56,7 @@ export interface CompilerOptions {
51
56
  * Trace area to enable.
52
57
  */
53
58
  trace?: string[];
59
+ /** Parser settings applied when loading TypeSpec source files. */
54
60
  parseOptions?: ParseOptions;
55
61
  /** Ruleset to enable for linting. */
56
62
  linterRuleSet?: LinterRuleSet;
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/core/options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE9D,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEzC;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,qCAAqC;IACrC,aAAa,CAAC,EAAE,aAAa,CAAC;CAI/B"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/core/options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAkB,MAAM,oBAAoB,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE9D,qGAAqG;AACrG,MAAM,WAAW,eAAe;IAC9B,gGAAgG;IAChG,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAEzC;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,gFAAgF;IAChF,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjB,kEAAkE;IAClE,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B,qCAAqC;IACrC,aAAa,CAAC,EAAE,aAAa,CAAC;CAI/B"}
@@ -1,3 +1,12 @@
1
1
  import type { CallableMessage } from "./types.js";
2
+ /**
3
+ * Build a typed diagnostic-message formatter using a tagged template whose substitutions name parameters.
4
+ * The returned callable substitutes values from a dictionary and exposes the parameter names in `keys`.
5
+ * @example
6
+ * ```ts
7
+ * const message = paramMessage`Unknown type ${"name"}.`;
8
+ * message({ name: "Widget" }); // "Unknown type Widget."
9
+ * ```
10
+ */
2
11
  export declare function paramMessage<const T extends string[]>(strings: readonly string[], ...keys: T): CallableMessage<T>;
3
12
  //# sourceMappingURL=param-message.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"param-message.d.ts","sourceRoot":"","sources":["../../../src/core/param-message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,wBAAgB,YAAY,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,EACnD,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,GAAG,IAAI,EAAE,CAAC,GACT,eAAe,CAAC,CAAC,CAAC,CAcpB"}
1
+ {"version":3,"file":"param-message.d.ts","sourceRoot":"","sources":["../../../src/core/param-message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,EACnD,OAAO,EAAE,SAAS,MAAM,EAAE,EAC1B,GAAG,IAAI,EAAE,CAAC,GACT,eAAe,CAAC,CAAC,CAAC,CAcpB"}
@@ -1,3 +1,12 @@
1
+ /**
2
+ * Build a typed diagnostic-message formatter using a tagged template whose substitutions name parameters.
3
+ * The returned callable substitutes values from a dictionary and exposes the parameter names in `keys`.
4
+ * @example
5
+ * ```ts
6
+ * const message = paramMessage`Unknown type ${"name"}.`;
7
+ * message({ name: "Widget" }); // "Unknown type Widget."
8
+ * ```
9
+ */
1
10
  export function paramMessage(strings, ...keys) {
2
11
  const template = (dict) => {
3
12
  const result = [strings[0]];
@@ -1 +1 @@
1
- {"version":3,"file":"param-message.js","sourceRoot":"","sources":["../../../src/core/param-message.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,YAAY,CAC1B,OAA0B,EAC1B,GAAG,IAAO;IAEV,MAAM,QAAQ,GAAG,CAAC,IAA+B,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACtB,MAAM,KAAK,GAAI,IAAY,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"param-message.js","sourceRoot":"","sources":["../../../src/core/param-message.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAC1B,OAA0B,EAC1B,GAAG,IAAO;IAEV,MAAM,QAAQ,GAAG,CAAC,IAA+B,EAAE,EAAE;QACnD,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YACtB,MAAM,KAAK,GAAI,IAAY,CAAC,GAAG,CAAC,CAAC;YACjC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC,CAAC;IACF,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IACrB,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1,11 +1,22 @@
1
1
  import type { Diagnostic, Expression, IdentifierContext, IdentifierNode, ImportStatementNode, Node, ParseOptions, PositionDetail, SourceFile, TextRange, TypeReferenceNode, TypeSpecScriptNode } from "./types.js";
2
+ /**
3
+ * Parse TypeSpec source without binding or type checking it.
4
+ * Syntax errors are retained on the returned script as parse diagnostics and recovery nodes.
5
+ */
2
6
  export declare function parse(code: string | SourceFile, options?: ParseOptions): TypeSpecScriptNode;
7
+ /** Parse a type reference outside a script, returning the reference node and syntax diagnostics. */
3
8
  export declare function parseStandaloneTypeReference(code: string | SourceFile): [TypeReferenceNode, readonly Diagnostic[]];
9
+ /** Callback used to inspect a syntax node and optionally return a traversal result. */
4
10
  export type NodeCallback<T> = (c: Node) => T;
11
+ /** Check for an unqualified identifier reference with no template arguments. */
5
12
  export declare function exprIsBareIdentifier(expr: Expression): expr is TypeReferenceNode & {
6
13
  target: IdentifierNode;
7
14
  arguments: [];
8
15
  };
16
+ /**
17
+ * Visit a node's immediate syntactic children, including attached directives and documentation.
18
+ * Stops at the first truthy callback result and returns it; recurse explicitly to visit descendants.
19
+ */
9
20
  export declare function visitChildren<T>(node: Node, cb: NodeCallback<T>): T | undefined;
10
21
  /**
11
22
  * check whether a position belongs to a range (excluding the start and end pos)
@@ -15,6 +26,10 @@ export declare function visitChildren<T>(node: Node, cb: NodeCallback<T>): T | u
15
26
  * if range.end is -1 means no end point found, so return true if position is greater than range.pos
16
27
  */
17
28
  export declare function positionInRange(position: number, range: TextRange): boolean;
29
+ /**
30
+ * Find the innermost matching node and describe adjacent characters and trivia at a source offset.
31
+ * The filter distinguishes the current lookup from lookups before or after surrounding trivia.
32
+ */
18
33
  export declare function getNodeAtPositionDetail(script: TypeSpecScriptNode, position: number, filter?: (node: Node, flag: "cur" | "pre" | "post") => boolean): PositionDetail;
19
34
  /**
20
35
  * Resolve the node in the syntax tree that that is at the given position.
@@ -24,8 +39,12 @@ export declare function getNodeAtPositionDetail(script: TypeSpecScriptNode, posi
24
39
  */
25
40
  export declare function getNodeAtPosition(script: TypeSpecScriptNode, position: number, filter?: (node: Node) => boolean): Node | undefined;
26
41
  export declare function getNodeAtPosition<T extends Node>(script: TypeSpecScriptNode, position: number, filter: (node: Node) => node is T): T | undefined;
42
+ /** Test whether a node or any descendant has a parse error, caching descendant-error flags on the nodes. */
27
43
  export declare function hasParseError(node: Node): number | true;
44
+ /** Narrow a syntax node to an import statement by its syntax kind. */
28
45
  export declare function isImportStatement(node: Node): node is ImportStatementNode;
46
+ /** Find the nearest ancestor satisfying a predicate, optionally testing the node itself first. */
29
47
  export declare function getFirstAncestor(node: Node, test: NodeCallback<boolean>, includeSelf?: boolean): Node | undefined;
48
+ /** Classify a parent-linked identifier's syntactic role, treating member-expression chains as one context. */
30
49
  export declare function getIdentifierContext(id: IdentifierNode): IdentifierContext;
31
50
  //# sourceMappingURL=parser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/core/parser.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAeV,UAAU,EAmBV,UAAU,EAKV,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EAcnB,IAAI,EAQJ,YAAY,EACZ,cAAc,EAId,UAAU,EAWV,SAAS,EAGT,iBAAiB,EACjB,kBAAkB,EAOnB,MAAM,YAAY,CAAC;AAqNpB,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,kBAAkB,CAG/F;AAED,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,MAAM,GAAG,UAAU,GACxB,CAAC,iBAAiB,EAAE,SAAS,UAAU,EAAE,CAAC,CAI5C;AA+1FD,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC;AAE7C,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,GACf,IAAI,IAAI,iBAAiB,GAAG;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,SAAS,EAAE,EAAE,CAAA;CAAE,CAMvE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CA6P/E;AAoBD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,WAEjE;AAED,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,KAAK,OAAoB,GACzE,cAAc,CAgDhB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,GAC/B,IAAI,GAAG,SAAS,CAAC;AACpB,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,IAAI,EAC9C,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,CAAC,GAChC,CAAC,GAAG,SAAS,CAAC;AAuCjB,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,iBAOvC;AAyBD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAEzE;AAaD,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,EAC3B,WAAW,GAAE,OAAe,GAC3B,IAAI,GAAG,SAAS,CAUlB;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,cAAc,GAAG,iBAAiB,CAsD1E"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/core/parser.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAeV,UAAU,EAmBV,UAAU,EAKV,iBAAiB,EACjB,cAAc,EACd,mBAAmB,EAcnB,IAAI,EAQJ,YAAY,EACZ,cAAc,EAId,UAAU,EAWV,SAAS,EAGT,iBAAiB,EACjB,kBAAkB,EAOnB,MAAM,YAAY,CAAC;AAqNpB;;;GAGG;AACH,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,EAAE,OAAO,GAAE,YAAiB,GAAG,kBAAkB,CAG/F;AAED,oGAAoG;AACpG,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,MAAM,GAAG,UAAU,GACxB,CAAC,iBAAiB,EAAE,SAAS,UAAU,EAAE,CAAC,CAI5C;AA+1FD,uFAAuF;AACvF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,CAAC;AAE7C,gFAAgF;AAChF,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,UAAU,GACf,IAAI,IAAI,iBAAiB,GAAG;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,SAAS,EAAE,EAAE,CAAA;CAAE,CAMvE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CA6P/E;AAoBD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,WAEjE;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,KAAK,OAAoB,GACzE,cAAc,CAgDhB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,GAC/B,IAAI,GAAG,SAAS,CAAC;AACpB,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,IAAI,EAC9C,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,CAAC,GAChC,CAAC,GAAG,SAAS,CAAC;AAuCjB,4GAA4G;AAC5G,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,iBAOvC;AAyBD,sEAAsE;AACtE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,mBAAmB,CAEzE;AAaD,kGAAkG;AAClG,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,EAC3B,WAAW,GAAE,OAAe,GAC3B,IAAI,GAAG,SAAS,CAUlB;AAED,8GAA8G;AAC9G,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,cAAc,GAAG,iBAAiB,CAsD1E"}
@@ -134,10 +134,15 @@ var ParseMode;
134
134
  ParseMode[ParseMode["Syntax"] = 0] = "Syntax";
135
135
  ParseMode[ParseMode["Doc"] = 1] = "Doc";
136
136
  })(ParseMode || (ParseMode = {}));
137
+ /**
138
+ * Parse TypeSpec source without binding or type checking it.
139
+ * Syntax errors are retained on the returned script as parse diagnostics and recovery nodes.
140
+ */
137
141
  export function parse(code, options = {}) {
138
142
  const parser = createParser(code, options);
139
143
  return parser.parseTypeSpecScript();
140
144
  }
145
+ /** Parse a type reference outside a script, returning the reference node and syntax diagnostics. */
141
146
  export function parseStandaloneTypeReference(code) {
142
147
  const parser = createParser(code);
143
148
  const node = parser.parseStandaloneReferenceExpression();
@@ -2534,11 +2539,16 @@ function createParser(code, options = {}) {
2534
2539
  : undefined;
2535
2540
  }
2536
2541
  }
2542
+ /** Check for an unqualified identifier reference with no template arguments. */
2537
2543
  export function exprIsBareIdentifier(expr) {
2538
2544
  return (expr.kind === SyntaxKind.TypeReference &&
2539
2545
  expr.target.kind === SyntaxKind.Identifier &&
2540
2546
  expr.arguments.length === 0);
2541
2547
  }
2548
+ /**
2549
+ * Visit a node's immediate syntactic children, including attached directives and documentation.
2550
+ * Stops at the first truthy callback result and returns it; recurse explicitly to visit descendants.
2551
+ */
2542
2552
  export function visitChildren(node, cb) {
2543
2553
  if (node.directives) {
2544
2554
  const result = visitEach(cb, node.directives);
@@ -2775,6 +2785,10 @@ function visitEach(cb, nodes) {
2775
2785
  export function positionInRange(position, range) {
2776
2786
  return range.pos >= 0 && position > range.pos && (range.end === -1 || position < range.end);
2777
2787
  }
2788
+ /**
2789
+ * Find the innermost matching node and describe adjacent characters and trivia at a source offset.
2790
+ * The filter distinguishes the current lookup from lookups before or after surrounding trivia.
2791
+ */
2778
2792
  export function getNodeAtPositionDetail(script, position, filter = () => true) {
2779
2793
  const cur = getNodeAtPosition(script, position, (n) => filter(n, "cur"));
2780
2794
  const input = script.file.text;
@@ -2848,6 +2862,7 @@ export function getNodeAtPosition(script, position, filter = (node) => true) {
2848
2862
  return undefined;
2849
2863
  }
2850
2864
  }
2865
+ /** Test whether a node or any descendant has a parse error, caching descendant-error flags on the nodes. */
2851
2866
  export function hasParseError(node) {
2852
2867
  if (node.flags & NodeFlags.ThisNodeHasError) {
2853
2868
  return true;
@@ -2874,6 +2889,7 @@ function checkForDescendantErrors(node) {
2874
2889
  return false;
2875
2890
  });
2876
2891
  }
2892
+ /** Narrow a syntax node to an import statement by its syntax kind. */
2877
2893
  export function isImportStatement(node) {
2878
2894
  return node.kind === SyntaxKind.ImportStatement;
2879
2895
  }
@@ -2886,6 +2902,7 @@ function isBlocklessNamespace(node) {
2886
2902
  }
2887
2903
  return node.statements === undefined;
2888
2904
  }
2905
+ /** Find the nearest ancestor satisfying a predicate, optionally testing the node itself first. */
2889
2906
  export function getFirstAncestor(node, test, includeSelf = false) {
2890
2907
  if (includeSelf && test(node)) {
2891
2908
  return node;
@@ -2897,6 +2914,7 @@ export function getFirstAncestor(node, test, includeSelf = false) {
2897
2914
  }
2898
2915
  return undefined;
2899
2916
  }
2917
+ /** Classify a parent-linked identifier's syntactic role, treating member-expression chains as one context. */
2900
2918
  export function getIdentifierContext(id) {
2901
2919
  const node = getFirstAncestor(id, (n) => n.kind !== SyntaxKind.MemberExpression);
2902
2920
  compilerAssert(node, "Identifier with no non-member-expression ancestor.");