tsc-ts 0.0.4 → 0.0.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 (584) hide show
  1. package/README.md +34 -2
  2. package/dist/api/compiler/ast-utilities.d.ts +82 -0
  3. package/dist/api/compiler/ast-utilities.js +462 -0
  4. package/dist/api/compiler/ast.d.ts +2351 -0
  5. package/dist/api/compiler/ast.js +11212 -0
  6. package/dist/api/compiler/astnav.d.ts +37 -0
  7. package/dist/api/compiler/astnav.js +767 -0
  8. package/dist/api/compiler/binder-utilities.d.ts +182 -0
  9. package/dist/api/compiler/binder-utilities.js +1241 -0
  10. package/dist/api/compiler/binder.d.ts +33 -0
  11. package/dist/api/compiler/binder.js +2359 -0
  12. package/dist/api/compiler/character-codes.d.ts +161 -0
  13. package/dist/api/compiler/character-codes.js +160 -0
  14. package/dist/api/compiler/checker-calls.d.ts +46 -0
  15. package/dist/api/compiler/checker-calls.js +1641 -0
  16. package/dist/api/compiler/checker-classes.d.ts +30 -0
  17. package/dist/api/compiler/checker-classes.js +582 -0
  18. package/dist/api/compiler/checker-contextual.d.ts +77 -0
  19. package/dist/api/compiler/checker-contextual.js +1136 -0
  20. package/dist/api/compiler/checker-declaration-order.d.ts +12 -0
  21. package/dist/api/compiler/checker-declaration-order.js +357 -0
  22. package/dist/api/compiler/checker-declarations.d.ts +33 -0
  23. package/dist/api/compiler/checker-declarations.js +888 -0
  24. package/dist/api/compiler/checker-declared-types.d.ts +48 -0
  25. package/dist/api/compiler/checker-declared-types.js +788 -0
  26. package/dist/api/compiler/checker-decorators.d.ts +26 -0
  27. package/dist/api/compiler/checker-decorators.js +562 -0
  28. package/dist/api/compiler/checker-deprecation.d.ts +33 -0
  29. package/dist/api/compiler/checker-deprecation.js +314 -0
  30. package/dist/api/compiler/checker-destructuring.d.ts +34 -0
  31. package/dist/api/compiler/checker-destructuring.js +584 -0
  32. package/dist/api/compiler/checker-elaboration.d.ts +15 -0
  33. package/dist/api/compiler/checker-elaboration.js +291 -0
  34. package/dist/api/compiler/checker-emit-helpers.d.ts +58 -0
  35. package/dist/api/compiler/checker-emit-helpers.js +154 -0
  36. package/dist/api/compiler/checker-emit-resolver.d.ts +75 -0
  37. package/dist/api/compiler/checker-emit-resolver.js +580 -0
  38. package/dist/api/compiler/checker-evaluator.d.ts +27 -0
  39. package/dist/api/compiler/checker-evaluator.js +188 -0
  40. package/dist/api/compiler/checker-expressions.d.ts +67 -0
  41. package/dist/api/compiler/checker-expressions.js +1351 -0
  42. package/dist/api/compiler/checker-features.d.ts +6 -0
  43. package/dist/api/compiler/checker-features.js +354 -0
  44. package/dist/api/compiler/checker-flow.d.ts +86 -0
  45. package/dist/api/compiler/checker-flow.js +169 -0
  46. package/dist/api/compiler/checker-functions.d.ts +43 -0
  47. package/dist/api/compiler/checker-functions.js +1002 -0
  48. package/dist/api/compiler/checker-generated-code.d.ts +25 -0
  49. package/dist/api/compiler/checker-generated-code.js +168 -0
  50. package/dist/api/compiler/checker-globals.d.ts +14 -0
  51. package/dist/api/compiler/checker-globals.js +37 -0
  52. package/dist/api/compiler/checker-grammar.d.ts +35 -0
  53. package/dist/api/compiler/checker-grammar.js +2587 -0
  54. package/dist/api/compiler/checker-heritage.d.ts +28 -0
  55. package/dist/api/compiler/checker-heritage.js +901 -0
  56. package/dist/api/compiler/checker-inference.d.ts +179 -0
  57. package/dist/api/compiler/checker-inference.js +2105 -0
  58. package/dist/api/compiler/checker-iteration.d.ts +115 -0
  59. package/dist/api/compiler/checker-iteration.js +857 -0
  60. package/dist/api/compiler/checker-javascript.d.ts +42 -0
  61. package/dist/api/compiler/checker-javascript.js +442 -0
  62. package/dist/api/compiler/checker-jsdoc.d.ts +30 -0
  63. package/dist/api/compiler/checker-jsdoc.js +320 -0
  64. package/dist/api/compiler/checker-jsx.d.ts +94 -0
  65. package/dist/api/compiler/checker-jsx.js +1433 -0
  66. package/dist/api/compiler/checker-literals.d.ts +6 -0
  67. package/dist/api/compiler/checker-literals.js +43 -0
  68. package/dist/api/compiler/checker-members.d.ts +200 -0
  69. package/dist/api/compiler/checker-members.js +2148 -0
  70. package/dist/api/compiler/checker-modules.d.ts +85 -0
  71. package/dist/api/compiler/checker-modules.js +2141 -0
  72. package/dist/api/compiler/checker-narrowing.d.ts +120 -0
  73. package/dist/api/compiler/checker-narrowing.js +2797 -0
  74. package/dist/api/compiler/checker-object-literals.d.ts +14 -0
  75. package/dist/api/compiler/checker-object-literals.js +483 -0
  76. package/dist/api/compiler/checker-operators.d.ts +33 -0
  77. package/dist/api/compiler/checker-operators.js +1040 -0
  78. package/dist/api/compiler/checker-overloads.d.ts +7 -0
  79. package/dist/api/compiler/checker-overloads.js +271 -0
  80. package/dist/api/compiler/checker-property-access.d.ts +34 -0
  81. package/dist/api/compiler/checker-property-access.js +672 -0
  82. package/dist/api/compiler/checker-services.d.ts +49 -0
  83. package/dist/api/compiler/checker-services.js +995 -0
  84. package/dist/api/compiler/checker-signatures.d.ts +55 -0
  85. package/dist/api/compiler/checker-signatures.js +789 -0
  86. package/dist/api/compiler/checker-source-file.d.ts +27 -0
  87. package/dist/api/compiler/checker-source-file.js +619 -0
  88. package/dist/api/compiler/checker-statements.d.ts +18 -0
  89. package/dist/api/compiler/checker-statements.js +226 -0
  90. package/dist/api/compiler/checker-super.d.ts +13 -0
  91. package/dist/api/compiler/checker-super.js +241 -0
  92. package/dist/api/compiler/checker-symbol-types.d.ts +51 -0
  93. package/dist/api/compiler/checker-symbol-types.js +955 -0
  94. package/dist/api/compiler/checker-symbols.d.ts +181 -0
  95. package/dist/api/compiler/checker-symbols.js +1784 -0
  96. package/dist/api/compiler/checker-type-factory.d.ts +142 -0
  97. package/dist/api/compiler/checker-type-factory.js +2542 -0
  98. package/dist/api/compiler/checker-type-nodes.d.ts +26 -0
  99. package/dist/api/compiler/checker-type-nodes.js +828 -0
  100. package/dist/api/compiler/checker-type-operators.d.ts +109 -0
  101. package/dist/api/compiler/checker-type-operators.js +1842 -0
  102. package/dist/api/compiler/checker-types.d.ts +1093 -0
  103. package/dist/api/compiler/checker-types.js +1874 -0
  104. package/dist/api/compiler/checker-unused.d.ts +19 -0
  105. package/dist/api/compiler/checker-unused.js +524 -0
  106. package/dist/api/compiler/checker-utilities.d.ts +33 -0
  107. package/dist/api/compiler/checker-utilities.js +141 -0
  108. package/dist/api/compiler/checker.d.ts +512 -0
  109. package/dist/api/compiler/checker.js +932 -0
  110. package/dist/api/compiler/command-line.d.ts +32 -0
  111. package/dist/api/compiler/command-line.js +383 -0
  112. package/dist/api/compiler/compile-program.d.ts +118 -0
  113. package/dist/api/compiler/compile-program.js +384 -0
  114. package/dist/api/compiler/diagnostic-locales.d.ts +22 -0
  115. package/dist/api/compiler/diagnostic-locales.js +64 -0
  116. package/dist/api/compiler/diagnostic-messages.d.ts +2166 -0
  117. package/dist/api/compiler/diagnostic-messages.js +184 -0
  118. package/dist/api/compiler/diagnostics.d.ts +161 -0
  119. package/dist/api/compiler/diagnostics.js +784 -0
  120. package/dist/api/compiler/emitter.d.ts +71 -0
  121. package/dist/api/compiler/emitter.js +327 -0
  122. package/dist/api/compiler/file-include.d.ts +144 -0
  123. package/dist/api/compiler/file-include.js +599 -0
  124. package/dist/api/compiler/file-loader.d.ts +290 -0
  125. package/dist/api/compiler/file-loader.js +1323 -0
  126. package/dist/api/compiler/file-system.d.ts +51 -0
  127. package/dist/api/compiler/file-system.js +132 -0
  128. package/dist/api/compiler/flow.d.ts +60 -0
  129. package/dist/api/compiler/flow.js +45 -0
  130. package/dist/api/compiler/instantiation.d.ts +74 -0
  131. package/dist/api/compiler/instantiation.js +835 -0
  132. package/dist/api/compiler/jsdoc.d.ts +75 -0
  133. package/dist/api/compiler/jsdoc.js +1229 -0
  134. package/dist/api/compiler/link-tables.d.ts +105 -0
  135. package/dist/api/compiler/link-tables.js +319 -0
  136. package/dist/api/compiler/locale-data.d.ts +24 -0
  137. package/dist/api/compiler/locale-data.js +183 -0
  138. package/dist/api/compiler/locale.d.ts +4 -0
  139. package/dist/api/compiler/locale.js +317 -0
  140. package/dist/api/compiler/locales/cs-CZ.d.ts +2 -0
  141. package/dist/api/compiler/locales/cs-CZ.js +3 -0
  142. package/dist/api/compiler/locales/de-DE.d.ts +2 -0
  143. package/dist/api/compiler/locales/de-DE.js +3 -0
  144. package/dist/api/compiler/locales/es-ES.d.ts +2 -0
  145. package/dist/api/compiler/locales/es-ES.js +3 -0
  146. package/dist/api/compiler/locales/fr-FR.d.ts +2 -0
  147. package/dist/api/compiler/locales/fr-FR.js +3 -0
  148. package/dist/api/compiler/locales/it-IT.d.ts +2 -0
  149. package/dist/api/compiler/locales/it-IT.js +3 -0
  150. package/dist/api/compiler/locales/ja-JP.d.ts +2 -0
  151. package/dist/api/compiler/locales/ja-JP.js +3 -0
  152. package/dist/api/compiler/locales/ko-KR.d.ts +2 -0
  153. package/dist/api/compiler/locales/ko-KR.js +3 -0
  154. package/dist/api/compiler/locales/pl-PL.d.ts +2 -0
  155. package/dist/api/compiler/locales/pl-PL.js +3 -0
  156. package/dist/api/compiler/locales/pt-BR.d.ts +2 -0
  157. package/dist/api/compiler/locales/pt-BR.js +3 -0
  158. package/dist/api/compiler/locales/ru-RU.d.ts +2 -0
  159. package/dist/api/compiler/locales/ru-RU.js +3 -0
  160. package/dist/api/compiler/locales/tr-TR.d.ts +2 -0
  161. package/dist/api/compiler/locales/tr-TR.js +3 -0
  162. package/dist/api/compiler/locales/zh-CN.d.ts +2 -0
  163. package/dist/api/compiler/locales/zh-CN.js +3 -0
  164. package/dist/api/compiler/locales/zh-TW.d.ts +2 -0
  165. package/dist/api/compiler/locales/zh-TW.js +3 -0
  166. package/dist/api/compiler/module-resolution-types.d.ts +83 -0
  167. package/dist/api/compiler/module-resolution-types.js +176 -0
  168. package/dist/api/compiler/module-resolution.d.ts +71 -0
  169. package/dist/api/compiler/module-resolution.js +1598 -0
  170. package/dist/api/compiler/module-specifiers.d.ts +64 -0
  171. package/dist/api/compiler/module-specifiers.js +1101 -0
  172. package/dist/api/compiler/name-resolver.d.ts +43 -0
  173. package/dist/api/compiler/name-resolver.js +509 -0
  174. package/dist/api/compiler/node-builder-names.d.ts +32 -0
  175. package/dist/api/compiler/node-builder-names.js +854 -0
  176. package/dist/api/compiler/node-builder-pseudo.d.ts +36 -0
  177. package/dist/api/compiler/node-builder-pseudo.js +745 -0
  178. package/dist/api/compiler/node-builder-reuse.d.ts +4 -0
  179. package/dist/api/compiler/node-builder-reuse.js +647 -0
  180. package/dist/api/compiler/node-builder.d.ts +270 -0
  181. package/dist/api/compiler/node-builder.js +2645 -0
  182. package/dist/api/compiler/option-declarations.d.ts +90 -0
  183. package/dist/api/compiler/option-declarations.js +1460 -0
  184. package/dist/api/compiler/options.d.ts +289 -0
  185. package/dist/api/compiler/options.js +1197 -0
  186. package/dist/api/compiler/output-paths.d.ts +42 -0
  187. package/dist/api/compiler/output-paths.js +195 -0
  188. package/dist/api/compiler/package-json.d.ts +175 -0
  189. package/dist/api/compiler/package-json.js +1015 -0
  190. package/dist/api/compiler/parallel-parse.d.ts +221 -0
  191. package/dist/api/compiler/parallel-parse.js +541 -0
  192. package/dist/api/compiler/parser.d.ts +604 -0
  193. package/dist/api/compiler/parser.js +6426 -0
  194. package/dist/api/compiler/path.d.ts +91 -0
  195. package/dist/api/compiler/path.js +705 -0
  196. package/dist/api/compiler/printer/async-helpers.d.ts +22 -0
  197. package/dist/api/compiler/printer/async-helpers.js +91 -0
  198. package/dist/api/compiler/printer/auto-generate.d.ts +13 -0
  199. package/dist/api/compiler/printer/auto-generate.js +20 -0
  200. package/dist/api/compiler/printer/decorator-helpers.d.ts +24 -0
  201. package/dist/api/compiler/printer/decorator-helpers.js +118 -0
  202. package/dist/api/compiler/printer/emit-context.d.ts +157 -0
  203. package/dist/api/compiler/printer/emit-context.js +582 -0
  204. package/dist/api/compiler/printer/emit-flags.d.ts +60 -0
  205. package/dist/api/compiler/printer/emit-flags.js +2 -0
  206. package/dist/api/compiler/printer/factory-base.d.ts +171 -0
  207. package/dist/api/compiler/printer/factory-base.js +1505 -0
  208. package/dist/api/compiler/printer/factory.d.ts +147 -0
  209. package/dist/api/compiler/printer/factory.js +542 -0
  210. package/dist/api/compiler/printer/helpers.d.ts +27 -0
  211. package/dist/api/compiler/printer/helpers.js +164 -0
  212. package/dist/api/compiler/printer/name-generator.d.ts +41 -0
  213. package/dist/api/compiler/printer/name-generator.js +283 -0
  214. package/dist/api/compiler/printer/printer.d.ts +411 -0
  215. package/dist/api/compiler/printer/printer.js +4517 -0
  216. package/dist/api/compiler/printer/text-writer.d.ts +46 -0
  217. package/dist/api/compiler/printer/text-writer.js +172 -0
  218. package/dist/api/compiler/printer/utilities.d.ts +82 -0
  219. package/dist/api/compiler/printer/utilities.js +817 -0
  220. package/dist/api/compiler/program-checker.d.ts +156 -0
  221. package/dist/api/compiler/program-checker.js +529 -0
  222. package/dist/api/compiler/program-utilities.d.ts +52 -0
  223. package/dist/api/compiler/program-utilities.js +365 -0
  224. package/dist/api/compiler/program.d.ts +180 -0
  225. package/dist/api/compiler/program.js +1019 -0
  226. package/dist/api/compiler/pseudo-bigint.d.ts +5 -0
  227. package/dist/api/compiler/pseudo-bigint.js +61 -0
  228. package/dist/api/compiler/regexp-checker.d.ts +38 -0
  229. package/dist/api/compiler/regexp-checker.js +942 -0
  230. package/dist/api/compiler/relations.d.ts +263 -0
  231. package/dist/api/compiler/relations.js +4002 -0
  232. package/dist/api/compiler/reparser.d.ts +48 -0
  233. package/dist/api/compiler/reparser.js +1323 -0
  234. package/dist/api/compiler/scanner.d.ts +256 -0
  235. package/dist/api/compiler/scanner.js +2853 -0
  236. package/dist/api/compiler/side-state.d.ts +16 -0
  237. package/dist/api/compiler/side-state.js +89 -0
  238. package/dist/api/compiler/sourcemap.d.ts +55 -0
  239. package/dist/api/compiler/sourcemap.js +340 -0
  240. package/dist/api/compiler/spelling.d.ts +14 -0
  241. package/dist/api/compiler/spelling.js +128 -0
  242. package/dist/api/compiler/symbol-accessibility.d.ts +57 -0
  243. package/dist/api/compiler/symbol-accessibility.js +991 -0
  244. package/dist/api/compiler/symbol.d.ts +282 -0
  245. package/dist/api/compiler/symbol.js +339 -0
  246. package/dist/api/compiler/symlinks.d.ts +32 -0
  247. package/dist/api/compiler/symlinks.js +114 -0
  248. package/dist/api/compiler/syntax-kind.d.ts +389 -0
  249. package/dist/api/compiler/syntax-kind.js +2 -0
  250. package/dist/api/compiler/timeline.d.ts +9 -0
  251. package/dist/api/compiler/timeline.js +54 -0
  252. package/dist/api/compiler/transformers/alias-references.d.ts +39 -0
  253. package/dist/api/compiler/transformers/alias-references.js +677 -0
  254. package/dist/api/compiler/transformers/async-utilities.d.ts +51 -0
  255. package/dist/api/compiler/transformers/async-utilities.js +260 -0
  256. package/dist/api/compiler/transformers/async.d.ts +53 -0
  257. package/dist/api/compiler/transformers/async.js +645 -0
  258. package/dist/api/compiler/transformers/class-fields.d.ts +206 -0
  259. package/dist/api/compiler/transformers/class-fields.js +2418 -0
  260. package/dist/api/compiler/transformers/class-utilities.d.ts +46 -0
  261. package/dist/api/compiler/transformers/class-utilities.js +261 -0
  262. package/dist/api/compiler/transformers/commonjs-module.d.ts +103 -0
  263. package/dist/api/compiler/transformers/commonjs-module.js +1180 -0
  264. package/dist/api/compiler/transformers/const-enum-inliner.d.ts +11 -0
  265. package/dist/api/compiler/transformers/const-enum-inliner.js +36 -0
  266. package/dist/api/compiler/transformers/declarations-diagnostics.d.ts +52 -0
  267. package/dist/api/compiler/transformers/declarations-diagnostics.js +539 -0
  268. package/dist/api/compiler/transformers/declarations-pseudo.d.ts +160 -0
  269. package/dist/api/compiler/transformers/declarations-pseudo.js +799 -0
  270. package/dist/api/compiler/transformers/declarations-resolver.d.ts +152 -0
  271. package/dist/api/compiler/transformers/declarations-resolver.js +35 -0
  272. package/dist/api/compiler/transformers/declarations-syntactic.d.ts +119 -0
  273. package/dist/api/compiler/transformers/declarations-syntactic.js +1582 -0
  274. package/dist/api/compiler/transformers/declarations-tracker.d.ts +46 -0
  275. package/dist/api/compiler/transformers/declarations-tracker.js +198 -0
  276. package/dist/api/compiler/transformers/declarations.d.ts +175 -0
  277. package/dist/api/compiler/transformers/declarations.js +2381 -0
  278. package/dist/api/compiler/transformers/decorator-metadata.d.ts +54 -0
  279. package/dist/api/compiler/transformers/decorator-metadata.js +554 -0
  280. package/dist/api/compiler/transformers/decorator-utilities.d.ts +38 -0
  281. package/dist/api/compiler/transformers/decorator-utilities.js +238 -0
  282. package/dist/api/compiler/transformers/destructuring.d.ts +25 -0
  283. package/dist/api/compiler/transformers/destructuring.js +626 -0
  284. package/dist/api/compiler/transformers/downlevel.d.ts +6 -0
  285. package/dist/api/compiler/transformers/downlevel.js +45 -0
  286. package/dist/api/compiler/transformers/emit-resolver.d.ts +61 -0
  287. package/dist/api/compiler/transformers/emit-resolver.js +197 -0
  288. package/dist/api/compiler/transformers/es-decorators.d.ts +118 -0
  289. package/dist/api/compiler/transformers/es-decorators.js +1901 -0
  290. package/dist/api/compiler/transformers/exponentiation.d.ts +11 -0
  291. package/dist/api/compiler/transformers/exponentiation.js +76 -0
  292. package/dist/api/compiler/transformers/external-module-info.d.ts +35 -0
  293. package/dist/api/compiler/transformers/external-module-info.js +351 -0
  294. package/dist/api/compiler/transformers/for-await.d.ts +43 -0
  295. package/dist/api/compiler/transformers/for-await.js +469 -0
  296. package/dist/api/compiler/transformers/import-elision.d.ts +16 -0
  297. package/dist/api/compiler/transformers/import-elision.js +124 -0
  298. package/dist/api/compiler/transformers/jsx-entities.d.ts +1 -0
  299. package/dist/api/compiler/transformers/jsx-entities.js +256 -0
  300. package/dist/api/compiler/transformers/jsx.d.ts +71 -0
  301. package/dist/api/compiler/transformers/jsx.js +700 -0
  302. package/dist/api/compiler/transformers/legacy-decorators.d.ts +56 -0
  303. package/dist/api/compiler/transformers/legacy-decorators.js +564 -0
  304. package/dist/api/compiler/transformers/logical-assignment.d.ts +14 -0
  305. package/dist/api/compiler/transformers/logical-assignment.js +62 -0
  306. package/dist/api/compiler/transformers/module-utilities.d.ts +9 -0
  307. package/dist/api/compiler/transformers/module-utilities.js +36 -0
  308. package/dist/api/compiler/transformers/module.d.ts +49 -0
  309. package/dist/api/compiler/transformers/module.js +296 -0
  310. package/dist/api/compiler/transformers/named-evaluation.d.ts +26 -0
  311. package/dist/api/compiler/transformers/named-evaluation.js +266 -0
  312. package/dist/api/compiler/transformers/nullish-coalescing.d.ts +9 -0
  313. package/dist/api/compiler/transformers/nullish-coalescing.js +26 -0
  314. package/dist/api/compiler/transformers/object-rest-spread.d.ts +34 -0
  315. package/dist/api/compiler/transformers/object-rest-spread.js +411 -0
  316. package/dist/api/compiler/transformers/optional-catch.d.ts +9 -0
  317. package/dist/api/compiler/transformers/optional-catch.js +20 -0
  318. package/dist/api/compiler/transformers/optional-chain.d.ts +14 -0
  319. package/dist/api/compiler/transformers/optional-chain.js +188 -0
  320. package/dist/api/compiler/transformers/reference-resolver.d.ts +129 -0
  321. package/dist/api/compiler/transformers/reference-resolver.js +1157 -0
  322. package/dist/api/compiler/transformers/runtime-syntax.d.ts +71 -0
  323. package/dist/api/compiler/transformers/runtime-syntax.js +753 -0
  324. package/dist/api/compiler/transformers/subtree-facts.d.ts +10 -0
  325. package/dist/api/compiler/transformers/subtree-facts.js +205 -0
  326. package/dist/api/compiler/transformers/syntax-facts.d.ts +52 -0
  327. package/dist/api/compiler/transformers/syntax-facts.js +258 -0
  328. package/dist/api/compiler/transformers/tagged-template.d.ts +17 -0
  329. package/dist/api/compiler/transformers/tagged-template.js +148 -0
  330. package/dist/api/compiler/transformers/transformer.d.ts +17 -0
  331. package/dist/api/compiler/transformers/transformer.js +54 -0
  332. package/dist/api/compiler/transformers/type-eraser.d.ts +21 -0
  333. package/dist/api/compiler/transformers/type-eraser.js +346 -0
  334. package/dist/api/compiler/transformers/type-serialization.d.ts +20 -0
  335. package/dist/api/compiler/transformers/type-serialization.js +347 -0
  336. package/dist/api/compiler/transformers/using.d.ts +56 -0
  337. package/dist/api/compiler/transformers/using.js +453 -0
  338. package/dist/api/compiler/transformers/utilities.d.ts +50 -0
  339. package/dist/api/compiler/transformers/utilities.js +347 -0
  340. package/dist/api/compiler/transformers/visitor-base.d.ts +6 -0
  341. package/dist/api/compiler/transformers/visitor-base.js +817 -0
  342. package/dist/api/compiler/transformers/visitor-hooks.d.ts +29 -0
  343. package/dist/api/compiler/transformers/visitor-hooks.js +189 -0
  344. package/dist/api/compiler/tsconfig.d.ts +177 -0
  345. package/dist/api/compiler/tsconfig.js +1311 -0
  346. package/dist/api/compiler/type-printer.d.ts +15 -0
  347. package/dist/api/compiler/type-printer.js +74 -0
  348. package/dist/api/compiler/types.d.ts +87 -0
  349. package/dist/api/compiler/types.js +23 -0
  350. package/dist/api/compiler/unicode-identifiers.d.ts +2 -0
  351. package/dist/api/compiler/unicode-identifiers.js +209 -0
  352. package/dist/api/compiler/unicode-properties.d.ts +8 -0
  353. package/dist/api/compiler/unicode-properties.js +531 -0
  354. package/dist/api/compiler/vfs-match.d.ts +24 -0
  355. package/dist/api/compiler/vfs-match.js +587 -0
  356. package/dist/api/library/ast.d.ts +3 -2
  357. package/dist/api/library/ast.generated.d.ts +127 -139
  358. package/dist/api/library/checker.d.ts +51 -0
  359. package/dist/api/library/checker.js +318 -0
  360. package/dist/api/library/diagnostics.d.ts +13 -0
  361. package/dist/api/library/diagnostics.js +50 -0
  362. package/dist/api/library/disk.d.ts +13 -0
  363. package/dist/api/library/disk.js +66 -0
  364. package/dist/api/library/errors.d.ts +13 -0
  365. package/dist/api/library/errors.js +24 -0
  366. package/dist/api/library/host.d.ts +24 -0
  367. package/dist/api/library/host.js +52 -0
  368. package/dist/api/library/index.d.ts +5 -1
  369. package/dist/api/library/index.js +4 -0
  370. package/dist/api/library/nodes.d.ts +51 -0
  371. package/dist/api/library/nodes.js +196 -0
  372. package/dist/api/library/options.d.ts +144 -0
  373. package/dist/api/library/options.js +308 -0
  374. package/dist/api/library/parse.d.ts +19 -0
  375. package/dist/api/library/parse.js +41 -0
  376. package/dist/api/library/program.d.ts +21 -0
  377. package/dist/api/library/program.js +234 -0
  378. package/dist/api/library/types.d.ts +14 -1
  379. package/package.json +12 -8
  380. package/src/compiler/ast-utilities.ts +548 -0
  381. package/src/compiler/ast.ts +12870 -0
  382. package/src/compiler/astnav.ts +799 -0
  383. package/src/compiler/binder-utilities.ts +1392 -0
  384. package/src/compiler/binder.ts +2707 -0
  385. package/src/compiler/build-info.ts +1197 -0
  386. package/src/compiler/character-codes.ts +323 -0
  387. package/src/compiler/checker-calls.ts +2155 -0
  388. package/src/compiler/checker-classes.ts +706 -0
  389. package/src/compiler/checker-contextual.ts +1457 -0
  390. package/src/compiler/checker-declaration-order.ts +438 -0
  391. package/src/compiler/checker-declarations.ts +1201 -0
  392. package/src/compiler/checker-declared-types.ts +919 -0
  393. package/src/compiler/checker-decorators.ts +694 -0
  394. package/src/compiler/checker-deprecation.ts +355 -0
  395. package/src/compiler/checker-destructuring.ts +805 -0
  396. package/src/compiler/checker-elaboration.ts +477 -0
  397. package/src/compiler/checker-emit-helpers.ts +224 -0
  398. package/src/compiler/checker-emit-resolver.ts +769 -0
  399. package/src/compiler/checker-evaluator.ts +243 -0
  400. package/src/compiler/checker-expressions.ts +1831 -0
  401. package/src/compiler/checker-features.ts +361 -0
  402. package/src/compiler/checker-flow.ts +394 -0
  403. package/src/compiler/checker-functions.ts +1296 -0
  404. package/src/compiler/checker-generated-code.ts +227 -0
  405. package/src/compiler/checker-globals.ts +52 -0
  406. package/src/compiler/checker-grammar.ts +3596 -0
  407. package/src/compiler/checker-heritage.ts +1240 -0
  408. package/src/compiler/checker-inference.ts +2584 -0
  409. package/src/compiler/checker-iteration.ts +1206 -0
  410. package/src/compiler/checker-javascript.ts +502 -0
  411. package/src/compiler/checker-jsdoc.ts +360 -0
  412. package/src/compiler/checker-jsx.ts +1928 -0
  413. package/src/compiler/checker-literals.ts +61 -0
  414. package/src/compiler/checker-members.ts +2480 -0
  415. package/src/compiler/checker-modules.ts +2896 -0
  416. package/src/compiler/checker-narrowing.ts +3230 -0
  417. package/src/compiler/checker-object-literals.ts +591 -0
  418. package/src/compiler/checker-operators.ts +1422 -0
  419. package/src/compiler/checker-overloads.ts +328 -0
  420. package/src/compiler/checker-property-access.ts +906 -0
  421. package/src/compiler/checker-services.ts +1149 -0
  422. package/src/compiler/checker-signatures.ts +1032 -0
  423. package/src/compiler/checker-source-file.ts +732 -0
  424. package/src/compiler/checker-statements.ts +292 -0
  425. package/src/compiler/checker-super.ts +261 -0
  426. package/src/compiler/checker-symbol-types.ts +1187 -0
  427. package/src/compiler/checker-symbols.ts +2157 -0
  428. package/src/compiler/checker-type-factory.ts +2616 -0
  429. package/src/compiler/checker-type-nodes.ts +1033 -0
  430. package/src/compiler/checker-type-operators.ts +2510 -0
  431. package/src/compiler/checker-types.ts +2520 -0
  432. package/src/compiler/checker-unused.ts +642 -0
  433. package/src/compiler/checker-utilities.ts +161 -0
  434. package/src/compiler/checker.ts +1138 -0
  435. package/src/compiler/command-line.ts +436 -0
  436. package/src/compiler/compile-program.ts +439 -0
  437. package/src/compiler/decoder.ts +1209 -0
  438. package/src/compiler/diagnostic-locales.ts +86 -0
  439. package/src/compiler/diagnostic-messages.ts +2349 -0
  440. package/src/compiler/diagnostics.ts +858 -0
  441. package/src/compiler/emitter.ts +434 -0
  442. package/src/compiler/encoder.ts +1945 -0
  443. package/src/compiler/file-include.ts +741 -0
  444. package/src/compiler/file-loader.ts +1597 -0
  445. package/src/compiler/file-system.ts +143 -0
  446. package/src/compiler/flow.ts +89 -0
  447. package/src/compiler/help.ts +473 -0
  448. package/src/compiler/incremental.ts +2818 -0
  449. package/src/compiler/init.ts +141 -0
  450. package/src/compiler/instantiation.ts +938 -0
  451. package/src/compiler/jsdoc.ts +1386 -0
  452. package/src/compiler/link-tables.ts +343 -0
  453. package/src/compiler/locale-data.ts +203 -0
  454. package/src/compiler/locale.ts +307 -0
  455. package/src/compiler/locales/cs-CZ.ts +5 -0
  456. package/src/compiler/locales/de-DE.ts +5 -0
  457. package/src/compiler/locales/es-ES.ts +5 -0
  458. package/src/compiler/locales/fr-FR.ts +5 -0
  459. package/src/compiler/locales/it-IT.ts +5 -0
  460. package/src/compiler/locales/ja-JP.ts +5 -0
  461. package/src/compiler/locales/ko-KR.ts +5 -0
  462. package/src/compiler/locales/pl-PL.ts +5 -0
  463. package/src/compiler/locales/pt-BR.ts +5 -0
  464. package/src/compiler/locales/ru-RU.ts +5 -0
  465. package/src/compiler/locales/tr-TR.ts +5 -0
  466. package/src/compiler/locales/zh-CN.ts +5 -0
  467. package/src/compiler/locales/zh-TW.ts +5 -0
  468. package/src/compiler/module-resolution-types.ts +243 -0
  469. package/src/compiler/module-resolution.ts +2072 -0
  470. package/src/compiler/module-specifiers.ts +1491 -0
  471. package/src/compiler/name-resolver.ts +646 -0
  472. package/src/compiler/node-builder-names.ts +1071 -0
  473. package/src/compiler/node-builder-pseudo.ts +892 -0
  474. package/src/compiler/node-builder-reuse.ts +764 -0
  475. package/src/compiler/node-builder.ts +3433 -0
  476. package/src/compiler/option-declarations.ts +1560 -0
  477. package/src/compiler/options.ts +1576 -0
  478. package/src/compiler/output-paths.ts +334 -0
  479. package/src/compiler/package-json.ts +1083 -0
  480. package/src/compiler/parallel-check.ts +1954 -0
  481. package/src/compiler/parallel-parse.ts +595 -0
  482. package/src/compiler/parse-thread.ts +136 -0
  483. package/src/compiler/parser.ts +7766 -0
  484. package/src/compiler/path.ts +717 -0
  485. package/src/compiler/printer/async-helpers.ts +183 -0
  486. package/src/compiler/printer/auto-generate.ts +27 -0
  487. package/src/compiler/printer/decorator-helpers.ts +218 -0
  488. package/src/compiler/printer/emit-context.ts +684 -0
  489. package/src/compiler/printer/emit-flags.ts +64 -0
  490. package/src/compiler/printer/factory-base.ts +2577 -0
  491. package/src/compiler/printer/factory.ts +764 -0
  492. package/src/compiler/printer/helpers.ts +291 -0
  493. package/src/compiler/printer/name-generator.ts +372 -0
  494. package/src/compiler/printer/printer.ts +5072 -0
  495. package/src/compiler/printer/text-writer.ts +183 -0
  496. package/src/compiler/printer/utilities.ts +884 -0
  497. package/src/compiler/program-checker.ts +594 -0
  498. package/src/compiler/program-utilities.ts +435 -0
  499. package/src/compiler/program.ts +1426 -0
  500. package/src/compiler/pseudo-bigint.ts +62 -0
  501. package/src/compiler/regexp-checker.ts +1142 -0
  502. package/src/compiler/relations.ts +5149 -0
  503. package/src/compiler/reparser.ts +1566 -0
  504. package/src/compiler/scanner.ts +2951 -0
  505. package/src/compiler/show-config.ts +239 -0
  506. package/src/compiler/side-state.ts +125 -0
  507. package/src/compiler/sourcemap.ts +366 -0
  508. package/src/compiler/spelling.ts +122 -0
  509. package/src/compiler/symbol-accessibility.ts +1166 -0
  510. package/src/compiler/symbol.ts +557 -0
  511. package/src/compiler/symlinks.ts +137 -0
  512. package/src/compiler/syntax-kind.ts +391 -0
  513. package/src/compiler/thread-entry.ts +191 -0
  514. package/src/compiler/timeline.ts +53 -0
  515. package/src/compiler/transformers/alias-references.ts +757 -0
  516. package/src/compiler/transformers/async-utilities.ts +335 -0
  517. package/src/compiler/transformers/async.ts +838 -0
  518. package/src/compiler/transformers/class-fields.ts +2967 -0
  519. package/src/compiler/transformers/class-utilities.ts +324 -0
  520. package/src/compiler/transformers/commonjs-module.ts +1621 -0
  521. package/src/compiler/transformers/const-enum-inliner.ts +50 -0
  522. package/src/compiler/transformers/declarations-diagnostics.ts +833 -0
  523. package/src/compiler/transformers/declarations-pseudo.ts +969 -0
  524. package/src/compiler/transformers/declarations-resolver.ts +249 -0
  525. package/src/compiler/transformers/declarations-syntactic.ts +1867 -0
  526. package/src/compiler/transformers/declarations-tracker.ts +269 -0
  527. package/src/compiler/transformers/declarations.ts +3120 -0
  528. package/src/compiler/transformers/decorator-metadata.ts +697 -0
  529. package/src/compiler/transformers/decorator-utilities.ts +283 -0
  530. package/src/compiler/transformers/destructuring.ts +708 -0
  531. package/src/compiler/transformers/downlevel.ts +50 -0
  532. package/src/compiler/transformers/emit-resolver.ts +258 -0
  533. package/src/compiler/transformers/es-decorators.ts +2682 -0
  534. package/src/compiler/transformers/exponentiation.ts +80 -0
  535. package/src/compiler/transformers/external-module-info.ts +412 -0
  536. package/src/compiler/transformers/for-await.ts +687 -0
  537. package/src/compiler/transformers/import-elision.ts +152 -0
  538. package/src/compiler/transformers/jsx-entities.ts +256 -0
  539. package/src/compiler/transformers/jsx.ts +824 -0
  540. package/src/compiler/transformers/legacy-decorators.ts +726 -0
  541. package/src/compiler/transformers/logical-assignment.ts +75 -0
  542. package/src/compiler/transformers/module-utilities.ts +42 -0
  543. package/src/compiler/transformers/module.ts +474 -0
  544. package/src/compiler/transformers/named-evaluation.ts +389 -0
  545. package/src/compiler/transformers/nullish-coalescing.ts +35 -0
  546. package/src/compiler/transformers/object-rest-spread.ts +577 -0
  547. package/src/compiler/transformers/optional-catch.ts +29 -0
  548. package/src/compiler/transformers/optional-chain.ts +246 -0
  549. package/src/compiler/transformers/reference-resolver.ts +1213 -0
  550. package/src/compiler/transformers/runtime-syntax.ts +942 -0
  551. package/src/compiler/transformers/subtree-facts.ts +253 -0
  552. package/src/compiler/transformers/syntax-facts.ts +358 -0
  553. package/src/compiler/transformers/tagged-template.ts +167 -0
  554. package/src/compiler/transformers/transformer.ts +56 -0
  555. package/src/compiler/transformers/type-eraser.ts +520 -0
  556. package/src/compiler/transformers/type-serialization.ts +374 -0
  557. package/src/compiler/transformers/using.ts +613 -0
  558. package/src/compiler/transformers/utilities.ts +419 -0
  559. package/src/compiler/transformers/visitor-base.ts +1601 -0
  560. package/src/compiler/transformers/visitor-hooks.ts +252 -0
  561. package/src/compiler/tsc-build.ts +1422 -0
  562. package/src/compiler/tsc-cli.ts +669 -0
  563. package/src/compiler/tsc-compile.ts +446 -0
  564. package/src/compiler/tsc-watch.ts +922 -0
  565. package/src/compiler/tsconfig.ts +1574 -0
  566. package/src/compiler/type-printer.ts +110 -0
  567. package/src/compiler/types.ts +115 -0
  568. package/src/compiler/unicode-identifiers.ts +212 -0
  569. package/src/compiler/unicode-properties.ts +537 -0
  570. package/src/compiler/vfs-match.ts +597 -0
  571. package/src/compiler/xxh3.ts +650 -0
  572. package/src/library/ast.generated.ts +141 -167
  573. package/src/library/ast.ts +4 -1
  574. package/src/library/checker.ts +384 -0
  575. package/src/library/diagnostics.ts +72 -0
  576. package/src/library/disk.ts +73 -0
  577. package/src/library/errors.ts +26 -0
  578. package/src/library/host.ts +63 -0
  579. package/src/library/index.ts +21 -0
  580. package/src/library/nodes.ts +232 -0
  581. package/src/library/options.ts +449 -0
  582. package/src/library/parse.ts +63 -0
  583. package/src/library/program.ts +293 -0
  584. package/src/library/types.ts +14 -1
@@ -0,0 +1,308 @@
1
+ // Compiler options of tsc-ts's public API and `tsc-ts --api`: tsc-ts's options as tsgo's API returns them,
2
+ // and back.
3
+ import { getLibFileName } from '../compiler/program-utilities.js';
4
+ /** Compiler options as `tsc-ts --api` returns them: unset strings, enums and path mappings are undefined. */
5
+ export function compilerOptionsOf(o) {
6
+ return {
7
+ allowJs: o.allowJs,
8
+ allowArbitraryExtensions: o.allowArbitraryExtensions,
9
+ allowImportingTsExtensions: o.allowImportingTsExtensions,
10
+ allowNonTsExtensions: o.allowNonTsExtensions,
11
+ allowUmdGlobalAccess: o.allowUmdGlobalAccess,
12
+ allowUnreachableCode: o.allowUnreachableCode,
13
+ allowUnusedLabels: o.allowUnusedLabels,
14
+ assumeChangesOnlyAffectDirectDependencies: o.assumeChangesOnlyAffectDirectDependencies,
15
+ checkJs: o.checkJs,
16
+ customConditions: o.customConditions,
17
+ composite: o.composite,
18
+ emitDeclarationOnly: o.emitDeclarationOnly,
19
+ emitBOM: o.emitBOM,
20
+ emitDecoratorMetadata: o.emitDecoratorMetadata,
21
+ declaration: o.declaration,
22
+ declarationDir: text(o.declarationDir),
23
+ declarationMap: o.declarationMap,
24
+ deduplicatePackages: o.deduplicatePackages,
25
+ disableSizeLimit: o.disableSizeLimit,
26
+ disableSourceOfProjectReferenceRedirect: o.disableSourceOfProjectReferenceRedirect,
27
+ disableSolutionSearching: o.disableSolutionSearching,
28
+ disableReferencedProjectLoad: o.disableReferencedProjectLoad,
29
+ erasableSyntaxOnly: o.erasableSyntaxOnly,
30
+ exactOptionalPropertyTypes: o.exactOptionalPropertyTypes,
31
+ experimentalDecorators: o.experimentalDecorators,
32
+ forceConsistentCasingInFileNames: o.forceConsistentCasingInFileNames,
33
+ isolatedModules: o.isolatedModules,
34
+ isolatedDeclarations: o.isolatedDeclarations,
35
+ ignoreConfig: o.ignoreConfig,
36
+ ignoreDeprecations: text(o.ignoreDeprecations),
37
+ importHelpers: o.importHelpers,
38
+ inlineSourceMap: o.inlineSourceMap,
39
+ inlineSources: o.inlineSources,
40
+ init: o.init,
41
+ incremental: o.incremental,
42
+ jsx: enumValue(o.jsx),
43
+ jsxFactory: text(o.jsxFactory),
44
+ jsxFragmentFactory: text(o.jsxFragmentFactory),
45
+ jsxImportSource: text(o.jsxImportSource),
46
+ lib: o.lib,
47
+ libReplacement: o.libReplacement,
48
+ locale: text(o.locale),
49
+ mapRoot: text(o.mapRoot),
50
+ module: enumValue(o.module),
51
+ moduleResolution: enumValue(o.moduleResolution),
52
+ moduleSuffixes: o.moduleSuffixes,
53
+ moduleDetection: enumValue(o.moduleDetection),
54
+ newLine: enumValue(o.newLine),
55
+ noEmit: o.noEmit,
56
+ noCheck: o.noCheck,
57
+ noErrorTruncation: o.noErrorTruncation,
58
+ noFallthroughCasesInSwitch: o.noFallthroughCasesInSwitch,
59
+ noImplicitAny: o.noImplicitAny,
60
+ noImplicitThis: o.noImplicitThis,
61
+ noImplicitReturns: o.noImplicitReturns,
62
+ noEmitHelpers: o.noEmitHelpers,
63
+ noLib: o.noLib,
64
+ noPropertyAccessFromIndexSignature: o.noPropertyAccessFromIndexSignature,
65
+ noUncheckedIndexedAccess: o.noUncheckedIndexedAccess,
66
+ noEmitOnError: o.noEmitOnError,
67
+ noUnusedLocals: o.noUnusedLocals,
68
+ noUnusedParameters: o.noUnusedParameters,
69
+ noResolve: o.noResolve,
70
+ noImplicitOverride: o.noImplicitOverride,
71
+ noUncheckedSideEffectImports: o.noUncheckedSideEffectImports,
72
+ outDir: text(o.outDir),
73
+ paths: pathMappings(o.paths),
74
+ preserveConstEnums: o.preserveConstEnums,
75
+ preserveSymlinks: o.preserveSymlinks,
76
+ project: text(o.project),
77
+ resolveJsonModule: o.resolveJsonModule,
78
+ resolvePackageJsonExports: o.resolvePackageJsonExports,
79
+ resolvePackageJsonImports: o.resolvePackageJsonImports,
80
+ removeComments: o.removeComments,
81
+ rewriteRelativeImportExtensions: o.rewriteRelativeImportExtensions,
82
+ reactNamespace: text(o.reactNamespace),
83
+ rootDir: text(o.rootDir),
84
+ rootDirs: o.rootDirs,
85
+ skipLibCheck: o.skipLibCheck,
86
+ stableTypeOrdering: o.stableTypeOrdering,
87
+ strict: o.strict,
88
+ strictBindCallApply: o.strictBindCallApply,
89
+ strictBuiltinIteratorReturn: o.strictBuiltinIteratorReturn,
90
+ strictFunctionTypes: o.strictFunctionTypes,
91
+ strictNullChecks: o.strictNullChecks,
92
+ strictPropertyInitialization: o.strictPropertyInitialization,
93
+ stripInternal: o.stripInternal,
94
+ skipDefaultLibCheck: o.skipDefaultLibCheck,
95
+ sourceMap: o.sourceMap,
96
+ sourceRoot: text(o.sourceRoot),
97
+ suppressOutputPathCheck: o.suppressOutputPathCheck,
98
+ target: enumValue(o.target),
99
+ traceResolution: o.traceResolution,
100
+ tsBuildInfoFile: text(o.tsBuildInfoFile),
101
+ typeRoots: o.typeRoots,
102
+ types: o.types,
103
+ useDefineForClassFields: o.useDefineForClassFields,
104
+ useUnknownInCatchVariables: o.useUnknownInCatchVariables,
105
+ verbatimModuleSyntax: o.verbatimModuleSyntax,
106
+ maxNodeModuleJsDepth: o.maxNodeModuleJsDepth,
107
+ allowSyntheticDefaultImports: o.allowSyntheticDefaultImports,
108
+ alwaysStrict: o.alwaysStrict,
109
+ baseUrl: text(o.baseUrl),
110
+ downlevelIteration: o.downlevelIteration,
111
+ esModuleInterop: o.esModuleInterop,
112
+ outFile: text(o.outFile),
113
+ configFilePath: text(o.configFilePath),
114
+ noDtsResolution: o.noDtsResolution,
115
+ pathsBasePath: text(o.pathsBasePath),
116
+ diagnostics: o.diagnostics,
117
+ extendedDiagnostics: o.extendedDiagnostics,
118
+ generateCpuProfile: text(o.generateCpuProfile),
119
+ generateTrace: text(o.generateTrace),
120
+ listEmittedFiles: o.listEmittedFiles,
121
+ listFiles: o.listFiles,
122
+ explainFiles: o.explainFiles,
123
+ listFilesOnly: o.listFilesOnly,
124
+ noEmitForJsFiles: o.noEmitForJsFiles,
125
+ preserveWatchOutput: o.preserveWatchOutput,
126
+ pretty: o.pretty,
127
+ version: o.version,
128
+ watch: o.watch,
129
+ showConfig: o.showConfig,
130
+ build: o.build,
131
+ help: o.help,
132
+ all: o.all,
133
+ pprofDir: text(o.pprofDir),
134
+ singleThreaded: o.singleThreaded,
135
+ quiet: o.quiet,
136
+ checkers: o.checkers,
137
+ };
138
+ }
139
+ function text(value) {
140
+ return value === '' ? undefined : value;
141
+ }
142
+ function enumValue(value) {
143
+ return value === 0 ? undefined : value;
144
+ }
145
+ function pathMappings(paths) {
146
+ if (paths === undefined)
147
+ return undefined;
148
+ const mappings = {};
149
+ for (const [pattern, substitutions] of paths)
150
+ mappings[pattern] = substitutions ?? [];
151
+ return mappings;
152
+ }
153
+ /**
154
+ * tsc-ts's compiler options for options in the form tsgo's API returns them (`compilerOptionsOf`). `lib`
155
+ * may name libraries as in tsconfig.json (`es2025`) or by file name (`lib.es2025.d.ts`).
156
+ */
157
+ export function compilerOptionsFromApi(o) {
158
+ return {
159
+ allowJs: o.allowJs,
160
+ allowArbitraryExtensions: o.allowArbitraryExtensions,
161
+ allowImportingTsExtensions: o.allowImportingTsExtensions,
162
+ allowNonTsExtensions: o.allowNonTsExtensions,
163
+ allowUmdGlobalAccess: o.allowUmdGlobalAccess,
164
+ allowUnreachableCode: o.allowUnreachableCode,
165
+ allowUnusedLabels: o.allowUnusedLabels,
166
+ assumeChangesOnlyAffectDirectDependencies: o.assumeChangesOnlyAffectDirectDependencies,
167
+ checkJs: o.checkJs,
168
+ customConditions: o.customConditions,
169
+ composite: o.composite,
170
+ emitDeclarationOnly: o.emitDeclarationOnly,
171
+ emitBOM: o.emitBOM,
172
+ emitDecoratorMetadata: o.emitDecoratorMetadata,
173
+ declaration: o.declaration,
174
+ declarationDir: o.declarationDir,
175
+ declarationMap: o.declarationMap,
176
+ deduplicatePackages: o.deduplicatePackages,
177
+ disableSizeLimit: o.disableSizeLimit,
178
+ disableSourceOfProjectReferenceRedirect: o.disableSourceOfProjectReferenceRedirect,
179
+ disableSolutionSearching: o.disableSolutionSearching,
180
+ disableReferencedProjectLoad: o.disableReferencedProjectLoad,
181
+ erasableSyntaxOnly: o.erasableSyntaxOnly,
182
+ exactOptionalPropertyTypes: o.exactOptionalPropertyTypes,
183
+ experimentalDecorators: o.experimentalDecorators,
184
+ forceConsistentCasingInFileNames: o.forceConsistentCasingInFileNames,
185
+ isolatedModules: o.isolatedModules,
186
+ isolatedDeclarations: o.isolatedDeclarations,
187
+ ignoreConfig: o.ignoreConfig,
188
+ ignoreDeprecations: o.ignoreDeprecations,
189
+ importHelpers: o.importHelpers,
190
+ inlineSourceMap: o.inlineSourceMap,
191
+ inlineSources: o.inlineSources,
192
+ init: o.init,
193
+ incremental: o.incremental,
194
+ jsx: o.jsx,
195
+ jsxFactory: o.jsxFactory,
196
+ jsxFragmentFactory: o.jsxFragmentFactory,
197
+ jsxImportSource: o.jsxImportSource,
198
+ lib: libFileNames(o.lib),
199
+ libReplacement: o.libReplacement,
200
+ locale: o.locale,
201
+ mapRoot: o.mapRoot,
202
+ module: o.module,
203
+ moduleResolution: o.moduleResolution,
204
+ moduleSuffixes: o.moduleSuffixes,
205
+ moduleDetection: o.moduleDetection,
206
+ newLine: o.newLine,
207
+ noEmit: o.noEmit,
208
+ noCheck: o.noCheck,
209
+ noErrorTruncation: o.noErrorTruncation,
210
+ noFallthroughCasesInSwitch: o.noFallthroughCasesInSwitch,
211
+ noImplicitAny: o.noImplicitAny,
212
+ noImplicitThis: o.noImplicitThis,
213
+ noImplicitReturns: o.noImplicitReturns,
214
+ noEmitHelpers: o.noEmitHelpers,
215
+ noLib: o.noLib,
216
+ noPropertyAccessFromIndexSignature: o.noPropertyAccessFromIndexSignature,
217
+ noUncheckedIndexedAccess: o.noUncheckedIndexedAccess,
218
+ noEmitOnError: o.noEmitOnError,
219
+ noUnusedLocals: o.noUnusedLocals,
220
+ noUnusedParameters: o.noUnusedParameters,
221
+ noResolve: o.noResolve,
222
+ noImplicitOverride: o.noImplicitOverride,
223
+ noUncheckedSideEffectImports: o.noUncheckedSideEffectImports,
224
+ outDir: o.outDir,
225
+ paths: pathMap(o.paths),
226
+ preserveConstEnums: o.preserveConstEnums,
227
+ preserveSymlinks: o.preserveSymlinks,
228
+ project: o.project,
229
+ resolveJsonModule: o.resolveJsonModule,
230
+ resolvePackageJsonExports: o.resolvePackageJsonExports,
231
+ resolvePackageJsonImports: o.resolvePackageJsonImports,
232
+ removeComments: o.removeComments,
233
+ rewriteRelativeImportExtensions: o.rewriteRelativeImportExtensions,
234
+ reactNamespace: o.reactNamespace,
235
+ rootDir: o.rootDir,
236
+ rootDirs: o.rootDirs,
237
+ skipLibCheck: o.skipLibCheck,
238
+ stableTypeOrdering: o.stableTypeOrdering,
239
+ strict: o.strict,
240
+ strictBindCallApply: o.strictBindCallApply,
241
+ strictBuiltinIteratorReturn: o.strictBuiltinIteratorReturn,
242
+ strictFunctionTypes: o.strictFunctionTypes,
243
+ strictNullChecks: o.strictNullChecks,
244
+ strictPropertyInitialization: o.strictPropertyInitialization,
245
+ stripInternal: o.stripInternal,
246
+ skipDefaultLibCheck: o.skipDefaultLibCheck,
247
+ sourceMap: o.sourceMap,
248
+ sourceRoot: o.sourceRoot,
249
+ suppressOutputPathCheck: o.suppressOutputPathCheck,
250
+ target: o.target,
251
+ traceResolution: o.traceResolution,
252
+ tsBuildInfoFile: o.tsBuildInfoFile,
253
+ typeRoots: o.typeRoots,
254
+ types: o.types,
255
+ useDefineForClassFields: o.useDefineForClassFields,
256
+ useUnknownInCatchVariables: o.useUnknownInCatchVariables,
257
+ verbatimModuleSyntax: o.verbatimModuleSyntax,
258
+ maxNodeModuleJsDepth: o.maxNodeModuleJsDepth,
259
+ allowSyntheticDefaultImports: o.allowSyntheticDefaultImports,
260
+ alwaysStrict: o.alwaysStrict,
261
+ baseUrl: o.baseUrl,
262
+ downlevelIteration: o.downlevelIteration,
263
+ esModuleInterop: o.esModuleInterop,
264
+ outFile: o.outFile,
265
+ configFilePath: o.configFilePath,
266
+ noDtsResolution: o.noDtsResolution,
267
+ pathsBasePath: o.pathsBasePath,
268
+ diagnostics: o.diagnostics,
269
+ extendedDiagnostics: o.extendedDiagnostics,
270
+ generateCpuProfile: o.generateCpuProfile,
271
+ generateTrace: o.generateTrace,
272
+ listEmittedFiles: o.listEmittedFiles,
273
+ listFiles: o.listFiles,
274
+ explainFiles: o.explainFiles,
275
+ listFilesOnly: o.listFilesOnly,
276
+ noEmitForJsFiles: o.noEmitForJsFiles,
277
+ preserveWatchOutput: o.preserveWatchOutput,
278
+ pretty: o.pretty,
279
+ version: o.version,
280
+ watch: o.watch,
281
+ showConfig: o.showConfig,
282
+ build: o.build,
283
+ help: o.help,
284
+ all: o.all,
285
+ pprofDir: o.pprofDir,
286
+ singleThreaded: o.singleThreaded,
287
+ quiet: o.quiet,
288
+ checkers: o.checkers,
289
+ };
290
+ }
291
+ function pathMap(paths) {
292
+ if (paths === undefined)
293
+ return undefined;
294
+ const map = new Map();
295
+ for (const pattern of Object.keys(paths))
296
+ map.set(pattern, paths[pattern].slice());
297
+ return map;
298
+ }
299
+ function libFileNames(lib) {
300
+ if (lib === undefined)
301
+ return undefined;
302
+ const fileNames = [];
303
+ for (const name of lib) {
304
+ const fileName = getLibFileName(name);
305
+ fileNames.push(fileName !== '' ? fileName : name);
306
+ }
307
+ return fileNames;
308
+ }
@@ -0,0 +1,19 @@
1
+ import type { SourceFile } from './ast.js';
2
+ import type { CompilerOptions } from './compiler-options.generated.js';
3
+ import { ScriptKind } from './enums.generated.js';
4
+ import type { ProgramHost } from './types.js';
5
+ export interface ParseSourceFileOptions {
6
+ /** The options of the program the file would be in: they decide what makes it a module. */
7
+ readonly compilerOptions?: CompilerOptions;
8
+ /** Where the nearest package.json of the file is looked up; the disk without a host. */
9
+ readonly host?: ProgramHost;
10
+ /** The script kind; by default, the kind the file name's extension implies. */
11
+ readonly scriptKind?: ScriptKind;
12
+ }
13
+ /**
14
+ * `fileName` (absolute, or relative to the host's current directory) with the contents `text`, parsed
15
+ * as a program with `compilerOptions` parses it: the same tree `tsc-ts --api` gives for the file in a
16
+ * project of that file alone, with parents set. Whether the file is a module depends on its nearest
17
+ * package.json, as in a program. The tree is not bound.
18
+ */
19
+ export declare function parseSourceFile(fileName: string, text: string, options?: ParseSourceFileOptions): SourceFile;
@@ -0,0 +1,41 @@
1
+ // Parsing one file with tsc-ts's public API.
2
+ import { ParseOptions } from '../compiler/ast.js';
3
+ import { CompilerHost, sourceFileMetadataOf } from '../compiler/file-loader.js';
4
+ import { CachedFileSystem } from '../compiler/file-system.js';
5
+ import { Resolver } from '../compiler/module-resolution.js';
6
+ import { parseSourceFile as parse } from '../compiler/parser.js';
7
+ import { getNormalizedAbsolutePath, toPath } from '../compiler/path.js';
8
+ import { getExternalModuleIndicatorOptions } from '../compiler/program-utilities.js';
9
+ import { ScriptKind } from './enums.generated.js';
10
+ import { internalError } from './errors.js';
11
+ import { HostFileSystem } from './host.js';
12
+ import { compilerOptionsFromApi } from './options.js';
13
+ /**
14
+ * `fileName` (absolute, or relative to the host's current directory) with the contents `text`, parsed
15
+ * as a program with `compilerOptions` parses it: the same tree `tsc-ts --api` gives for the file in a
16
+ * project of that file alone, with parents set. Whether the file is a module depends on its nearest
17
+ * package.json, as in a program. The tree is not bound.
18
+ */
19
+ export function parseSourceFile(fileName, text, options = {}) {
20
+ try {
21
+ const host = options.host ?? diskHost();
22
+ const currentDirectory = host.getCurrentDirectory();
23
+ const compilerOptions = compilerOptionsFromApi((options.compilerOptions ?? {}));
24
+ const normalized = getNormalizedAbsolutePath(fileName, currentDirectory);
25
+ const path = toPath(normalized, currentDirectory, host.useCaseSensitiveFileNames());
26
+ const compilerHost = new CompilerHost(new CachedFileSystem(new HostFileSystem(host)), currentDirectory, host.getDefaultLibraryDirectory());
27
+ const metadata = sourceFileMetadataOf(new Resolver(compilerHost, compilerOptions), compilerOptions, normalized);
28
+ const parseOptions = new ParseOptions(path, (options.scriptKind ?? ScriptKind.Unknown), getExternalModuleIndicatorOptions(normalized, compilerOptions, metadata));
29
+ return parse(normalized, text, parseOptions);
30
+ }
31
+ catch (e) {
32
+ throw internalError(e);
33
+ }
34
+ }
35
+ function diskHost() {
36
+ return {
37
+ getCurrentDirectory: () => process.cwd(),
38
+ useCaseSensitiveFileNames: () => process.platform !== 'win32' && process.platform !== 'darwin',
39
+ getDefaultLibraryDirectory: () => '',
40
+ };
41
+ }
@@ -0,0 +1,21 @@
1
+ import type { SourceFile } from './ast.js';
2
+ import type { CreateProgramOptions, Diagnostic, ParsedConfigFile, Program, ProgramHost } from './types.js';
3
+ /**
4
+ * A program of `rootNames` with `options`, reading files through `host`. It loads its files as `tsc-ts`
5
+ * loads a project's: resolving imports and references from the root files, with the default libraries of
6
+ * the options from the host's default library directory.
7
+ */
8
+ export declare function createProgram(options: CreateProgramOptions): Program;
9
+ /** The program of a config file (`parseConfigFile`'s options and files), reading files through `host`. */
10
+ export declare function createProgramFromConfigFile(configFileName: string, host: ProgramHost): Program;
11
+ /**
12
+ * The options and root files of a config file, with the diagnostics of reading it, as `tsc-ts --api`'s
13
+ * parseConfigFile returns them. A config file that can't be read gives one diagnostic and no files.
14
+ */
15
+ export declare function parseConfigFile(configFileName: string, host: ProgramHost): ParsedConfigFile;
16
+ /**
17
+ * TypeScript's `getPreEmitDiagnostics`: the config file parsing, program, syntactic, global and semantic
18
+ * diagnostics of `program` (of `sourceFile` only, for the syntactic and semantic ones), sorted and without
19
+ * duplicates as tsc-ts sorts them. `program` must be one tsc-ts/api created.
20
+ */
21
+ export declare function getPreEmitDiagnostics(program: Program, sourceFile?: SourceFile): readonly Diagnostic[];
@@ -0,0 +1,234 @@
1
+ // Programs of tsc-ts's public API: createProgram, parseConfigFile and Program.
2
+ // The emit pipeline, loaded first as tsc-ts's command line loads it: programs and checked programs refer to its
3
+ // classes (EmitIndexes, EmitResult), which scriptc compiles only when the program imports their modules as values.
4
+ // CheckedProgram is imported through it, not as a side effect, so that the declarations of tsc-ts/api don't import
5
+ // the compiler's modules.
6
+ import { CheckedProgram } from '../compiler/compile-program.js';
7
+ import { dropLibGlobals } from '../compiler/checker-symbols.js';
8
+ import { CachedFileSystem } from '../compiler/file-system.js';
9
+ import { getNormalizedAbsolutePath } from '../compiler/path.js';
10
+ import { Program as CompilerProgram, sortAndDeduplicateDiagnostics } from '../compiler/program.js';
11
+ import { ConfigParser, ParsedCommandLine } from '../compiler/tsconfig.js';
12
+ import { LibraryTypeChecker } from './checker.js';
13
+ import { diagnosticOf, programDiagnostics } from './diagnostics.js';
14
+ import { DisposedProgramError, internalError } from './errors.js';
15
+ import { HostFileSystem, LibraryCompilerHost } from './host.js';
16
+ import { compilerOptionsFromApi, compilerOptionsOf } from './options.js';
17
+ /**
18
+ * A program of `rootNames` with `options`, reading files through `host`. It loads its files as `tsc-ts`
19
+ * loads a project's: resolving imports and references from the root files, with the default libraries of
20
+ * the options from the host's default library directory.
21
+ */
22
+ export function createProgram(options) {
23
+ try {
24
+ const host = options.host;
25
+ const currentDirectory = host.getCurrentDirectory();
26
+ const rootNames = options.rootNames.map((name) => getNormalizedAbsolutePath(name, currentDirectory));
27
+ const config = new ParsedCommandLine(compilerOptionsFromApi(options.options), undefined, rootNames, [], undefined, [], currentDirectory, host.useCaseSensitiveFileNames(), rootNames.length);
28
+ return programOf(config, host);
29
+ }
30
+ catch (e) {
31
+ throw internalError(e);
32
+ }
33
+ }
34
+ /** The program of a config file (`parseConfigFile`'s options and files), reading files through `host`. */
35
+ export function createProgramFromConfigFile(configFileName, host) {
36
+ try {
37
+ return programOf(parsedConfig(configFileName, host).config, host);
38
+ }
39
+ catch (e) {
40
+ throw internalError(e);
41
+ }
42
+ }
43
+ /**
44
+ * The options and root files of a config file, with the diagnostics of reading it, as `tsc-ts --api`'s
45
+ * parseConfigFile returns them. A config file that can't be read gives one diagnostic and no files.
46
+ */
47
+ export function parseConfigFile(configFileName, host) {
48
+ try {
49
+ const { config, errors } = parsedConfig(configFileName, host);
50
+ return {
51
+ options: compilerOptionsOf(config.options),
52
+ fileNames: config.fileNames.slice(),
53
+ diagnostics: errors.map(diagnosticOf),
54
+ };
55
+ }
56
+ catch (e) {
57
+ throw internalError(e);
58
+ }
59
+ }
60
+ function parsedConfig(configFileName, host) {
61
+ const currentDirectory = host.getCurrentDirectory();
62
+ const errors = [];
63
+ const config = new ConfigParser(new HostFileSystem(host), currentDirectory).parseConfigFile(getNormalizedAbsolutePath(configFileName, currentDirectory), undefined, undefined, errors) ??
64
+ new ParsedCommandLine({}, undefined, [], [], undefined, errors, currentDirectory, host.useCaseSensitiveFileNames(), 0);
65
+ return { config, errors: config.errors };
66
+ }
67
+ function programOf(config, host) {
68
+ const fs = new CachedFileSystem(new HostFileSystem(host));
69
+ const compilerHost = new LibraryCompilerHost(fs, host.getCurrentDirectory(), host.getDefaultLibraryDirectory());
70
+ return new LibraryProgram(new CheckedProgram(new CompilerProgram(config, compilerHost)));
71
+ }
72
+ /**
73
+ * TypeScript's `getPreEmitDiagnostics`: the config file parsing, program, syntactic, global and semantic
74
+ * diagnostics of `program` (of `sourceFile` only, for the syntactic and semantic ones), sorted and without
75
+ * duplicates as tsc-ts sorts them. `program` must be one tsc-ts/api created.
76
+ */
77
+ export function getPreEmitDiagnostics(program, sourceFile) {
78
+ if (!(program instanceof LibraryProgram))
79
+ throw new TypeError('getPreEmitDiagnostics takes a program created by tsc-ts/api');
80
+ return program.preEmitDiagnostics(sourceFile);
81
+ }
82
+ class LibraryProgram {
83
+ checked;
84
+ options = undefined;
85
+ typeChecker = undefined;
86
+ disposed = false;
87
+ constructor(checked) {
88
+ this.checked = checked;
89
+ }
90
+ get program() {
91
+ this.checkNotDisposed();
92
+ return this.checked.program;
93
+ }
94
+ checkNotDisposed() {
95
+ if (this.disposed)
96
+ throw new DisposedProgramError();
97
+ }
98
+ getCompilerOptions() {
99
+ try {
100
+ this.options ??= compilerOptionsOf(this.program.options);
101
+ return this.options;
102
+ }
103
+ catch (e) {
104
+ throw internalError(e);
105
+ }
106
+ }
107
+ getSourceFile(fileName) {
108
+ try {
109
+ return this.program.getSourceFile(fileName);
110
+ }
111
+ catch (e) {
112
+ throw internalError(e);
113
+ }
114
+ }
115
+ getSourceFiles() {
116
+ try {
117
+ return this.program.getSourceFiles();
118
+ }
119
+ catch (e) {
120
+ throw internalError(e);
121
+ }
122
+ }
123
+ getSourceFileNames() {
124
+ try {
125
+ return this.program.getSourceFiles().map((file) => file.fileName);
126
+ }
127
+ catch (e) {
128
+ throw internalError(e);
129
+ }
130
+ }
131
+ getSourceFileMetadata(fileName) {
132
+ try {
133
+ const program = this.program;
134
+ const file = program.getSourceFile(fileName);
135
+ if (file === undefined)
136
+ return undefined;
137
+ const metadata = program.sourceFileMetadata(file.path);
138
+ return {
139
+ isDefaultLibrary: program.isSourceFileDefaultLibrary(file.path),
140
+ isFromExternalLibrary: program.isSourceFileFromExternalLibrary(file),
141
+ packageJsonType: metadata.packageJsonType,
142
+ packageJsonDirectory: metadata.packageJsonDirectory,
143
+ impliedNodeFormat: metadata.impliedNodeFormat,
144
+ };
145
+ }
146
+ catch (e) {
147
+ throw internalError(e);
148
+ }
149
+ }
150
+ isSourceFileDefaultLibrary(file) {
151
+ try {
152
+ return this.program.isSourceFileDefaultLibrary(file.path);
153
+ }
154
+ catch (e) {
155
+ throw internalError(e);
156
+ }
157
+ }
158
+ isSourceFileFromExternalLibrary(file) {
159
+ try {
160
+ return this.program.isSourceFileFromExternalLibrary(file);
161
+ }
162
+ catch (e) {
163
+ throw internalError(e);
164
+ }
165
+ }
166
+ getTypeChecker() {
167
+ try {
168
+ if (this.typeChecker === undefined) {
169
+ this.checkNotDisposed();
170
+ this.typeChecker = new LibraryTypeChecker(this.checked.createChecker());
171
+ }
172
+ return this.typeChecker;
173
+ }
174
+ catch (e) {
175
+ throw internalError(e);
176
+ }
177
+ }
178
+ diagnostics(kind, file) {
179
+ try {
180
+ this.checkNotDisposed();
181
+ return programDiagnostics(this.checked, kind, file).map(diagnosticOf);
182
+ }
183
+ catch (e) {
184
+ throw internalError(e);
185
+ }
186
+ }
187
+ preEmitDiagnostics(file) {
188
+ try {
189
+ this.checkNotDisposed();
190
+ const compilerFile = file;
191
+ const all = [];
192
+ for (const kind of ['config', 'program', 'syntactic', 'global', 'semantic'])
193
+ for (const d of programDiagnostics(this.checked, kind, kind === 'syntactic' || kind === 'semantic' ? compilerFile : undefined))
194
+ all.push(d);
195
+ return sortAndDeduplicateDiagnostics(all).map(diagnosticOf);
196
+ }
197
+ catch (e) {
198
+ throw internalError(e);
199
+ }
200
+ }
201
+ getSyntacticDiagnostics(file) {
202
+ return this.diagnostics('syntactic', file);
203
+ }
204
+ getBindDiagnostics(file) {
205
+ return this.diagnostics('bind', file);
206
+ }
207
+ getSemanticDiagnostics(file) {
208
+ return this.diagnostics('semantic', file);
209
+ }
210
+ getSuggestionDiagnostics(file) {
211
+ return this.diagnostics('suggestion', file);
212
+ }
213
+ getDeclarationDiagnostics(file) {
214
+ return this.diagnostics('declaration', file);
215
+ }
216
+ getProgramDiagnostics() {
217
+ return this.diagnostics('program', undefined);
218
+ }
219
+ getGlobalDiagnostics() {
220
+ return this.diagnostics('global', undefined);
221
+ }
222
+ getConfigFileParsingDiagnostics() {
223
+ return this.diagnostics('config', undefined);
224
+ }
225
+ dispose() {
226
+ if (this.disposed)
227
+ return;
228
+ this.typeChecker?.dispose();
229
+ this.typeChecker = undefined;
230
+ this.checked.disposeCheckers();
231
+ dropLibGlobals(this.checked.program.getSourceFiles());
232
+ this.disposed = true;
233
+ }
234
+ }
@@ -34,6 +34,11 @@ export interface Symbol {
34
34
  */
35
35
  export interface Type {
36
36
  readonly flags: TypeFlags;
37
+ /**
38
+ * The object flags of an object type (TypeFlags.Object). Other types carry flags the checker keeps for
39
+ * itself, such as ObjectFlags.PrimitiveUnion, where TypeScript 7's API gives 0. Flags the checker
40
+ * caches, such as ObjectFlags.MembersResolved, are set as queries compute them.
41
+ */
37
42
  readonly objectFlags: ObjectFlags;
38
43
  readonly id: number;
39
44
  getSymbol(): Symbol | undefined;
@@ -118,6 +123,9 @@ export interface TupleType extends InterfaceType {
118
123
  readonly fixedLength: number;
119
124
  readonly readonly: boolean;
120
125
  }
126
+ /** A reference to a tuple type (`[string, number]`): `getTarget()` is the TupleType (`isTupleType()`). */
127
+ export interface TupleTypeReference extends TypeReference {
128
+ }
121
129
  export interface UnionOrIntersectionType extends Type {
122
130
  }
123
131
  export interface UnionType extends UnionOrIntersectionType {
@@ -266,6 +274,7 @@ export interface TypeChecker {
266
274
  /** The type of a symbol as narrowed at `location`. */
267
275
  getTypeOfSymbolAtLocation(symbol: Symbol, location: Node): Type;
268
276
  getTypeArguments(type: TypeReference): readonly Type[];
277
+ /** The target of an alias (SymbolFlags.Alias); throws an InternalCompilerError for any other symbol. */
269
278
  getAliasedSymbol(symbol: Symbol): Symbol;
270
279
  getPropertyOfType(type: Type, name: string): Symbol | undefined;
271
280
  getPropertiesOfType(type: Type): readonly Symbol[];
@@ -287,8 +296,12 @@ export interface TypeChecker {
287
296
  isArrayLikeType(type: Type): boolean;
288
297
  isTypeAssignableTo(source: Type, target: Type): boolean;
289
298
  resolveName(name: string, meaning: SymbolFlags, location?: Node, excludeGlobals?: boolean): Symbol | undefined;
299
+ /** The value `node` names where it is: `resolveName(node.text, SymbolFlags.Value | SymbolFlags.ExportValue, node)`. */
290
300
  getResolvedSymbol(node: Identifier): Symbol | undefined;
291
- /** The text TypeScript 7's API gives for `type`, printed in `enclosingDeclaration` with `flags`. */
301
+ /**
302
+ * The text TypeScript 7's API gives for `type`, printed in `enclosingDeclaration` with `flags`; without
303
+ * flags, or with 0, with TypeFormatFlags.AllowUniqueESSymbolType and UseAliasDefinedOutsideCurrentScope.
304
+ */
292
305
  typeToString(type: Type, enclosingDeclaration?: Node, flags?: TypeFormatFlags): string;
293
306
  getAnyType(): Type;
294
307
  getUnknownType(): Type;