typescript 7.0.2 → 7.1.0-beta

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 (389) hide show
  1. package/NOTICE.txt +5 -36
  2. package/dist/api/async/api.d.ts +597 -122
  3. package/dist/api/async/api.d.ts.map +1 -1
  4. package/dist/api/async/api.js +1775 -333
  5. package/dist/api/async/api.js.map +1 -1
  6. package/dist/api/async/client.d.ts +18 -2
  7. package/dist/api/async/client.d.ts.map +1 -1
  8. package/dist/api/async/client.js +255 -68
  9. package/dist/api/async/client.js.map +1 -1
  10. package/dist/api/async/types.d.ts +99 -34
  11. package/dist/api/async/types.d.ts.map +1 -1
  12. package/dist/api/compilerOptions.generated.d.ts +123 -0
  13. package/dist/api/compilerOptions.generated.d.ts.map +1 -0
  14. package/dist/api/compilerOptions.generated.js +8 -0
  15. package/dist/api/compilerOptions.generated.js.map +1 -0
  16. package/dist/api/diagnosticFormatter.d.ts +9 -0
  17. package/dist/api/diagnosticFormatter.d.ts.map +1 -0
  18. package/dist/api/diagnosticFormatter.js +169 -0
  19. package/dist/api/diagnosticFormatter.js.map +1 -0
  20. package/dist/api/fs.d.ts +68 -13
  21. package/dist/api/fs.d.ts.map +1 -1
  22. package/dist/api/fs.js +62 -101
  23. package/dist/api/fs.js.map +1 -1
  24. package/dist/api/fsCallbacks.d.ts +27 -0
  25. package/dist/api/fsCallbacks.d.ts.map +1 -0
  26. package/dist/api/fsCallbacks.js +111 -0
  27. package/dist/api/fsCallbacks.js.map +1 -0
  28. package/dist/api/node/encoder.d.ts +3 -0
  29. package/dist/api/node/encoder.d.ts.map +1 -1
  30. package/dist/api/node/encoder.generated.js +2 -2
  31. package/dist/api/node/encoder.generated.js.map +1 -1
  32. package/dist/api/node/encoder.js +20 -15
  33. package/dist/api/node/encoder.js.map +1 -1
  34. package/dist/api/node/msgpack.d.ts.map +1 -1
  35. package/dist/api/node/msgpack.js +2 -3
  36. package/dist/api/node/msgpack.js.map +1 -1
  37. package/dist/api/node/node.d.ts +28 -9
  38. package/dist/api/node/node.d.ts.map +1 -1
  39. package/dist/api/node/node.generated.d.ts +9 -2
  40. package/dist/api/node/node.generated.d.ts.map +1 -1
  41. package/dist/api/node/node.generated.js +55 -6
  42. package/dist/api/node/node.generated.js.map +1 -1
  43. package/dist/api/node/node.infrastructure.d.ts +6 -4
  44. package/dist/api/node/node.infrastructure.d.ts.map +1 -1
  45. package/dist/api/node/node.infrastructure.js +20 -40
  46. package/dist/api/node/node.infrastructure.js.map +1 -1
  47. package/dist/api/node/node.js +178 -23
  48. package/dist/api/node/node.js.map +1 -1
  49. package/dist/api/node/protocol.d.ts +5 -2
  50. package/dist/api/node/protocol.d.ts.map +1 -1
  51. package/dist/api/node/protocol.generated.js +2 -2
  52. package/dist/api/node/protocol.generated.js.map +1 -1
  53. package/dist/api/node/protocol.js +5 -2
  54. package/dist/api/node/protocol.js.map +1 -1
  55. package/dist/api/node/wtf8.d.ts +6 -2
  56. package/dist/api/node/wtf8.d.ts.map +1 -1
  57. package/dist/api/node/wtf8.js +71 -2
  58. package/dist/api/node/wtf8.js.map +1 -1
  59. package/dist/api/options.d.ts +19 -7
  60. package/dist/api/options.d.ts.map +1 -1
  61. package/dist/api/options.js +21 -0
  62. package/dist/api/options.js.map +1 -1
  63. package/dist/api/path.d.ts +49 -39
  64. package/dist/api/path.d.ts.map +1 -1
  65. package/dist/api/path.js +409 -33
  66. package/dist/api/path.js.map +1 -1
  67. package/dist/api/prepareCompilerOptions.generated.d.ts +5 -0
  68. package/dist/api/prepareCompilerOptions.generated.d.ts.map +1 -0
  69. package/dist/api/prepareCompilerOptions.generated.js +24 -0
  70. package/dist/api/prepareCompilerOptions.generated.js.map +1 -0
  71. package/dist/api/proto.d.ts +58 -217
  72. package/dist/api/proto.d.ts.map +1 -1
  73. package/dist/api/proto.generated.d.ts +1419 -0
  74. package/dist/api/proto.generated.d.ts.map +1 -0
  75. package/dist/api/proto.generated.js +21 -0
  76. package/dist/api/proto.generated.js.map +1 -0
  77. package/dist/api/proto.js +28 -15
  78. package/dist/api/proto.js.map +1 -1
  79. package/dist/api/sourceFileCache.d.ts +51 -20
  80. package/dist/api/sourceFileCache.d.ts.map +1 -1
  81. package/dist/api/sourceFileCache.js +168 -37
  82. package/dist/api/sourceFileCache.js.map +1 -1
  83. package/dist/api/sync/api.d.ts +1365 -220
  84. package/dist/api/sync/api.d.ts.map +1 -1
  85. package/dist/api/sync/api.js +4673 -930
  86. package/dist/api/sync/api.js.map +1 -1
  87. package/dist/api/sync/client.d.ts +8 -2
  88. package/dist/api/sync/client.d.ts.map +1 -1
  89. package/dist/api/sync/client.js +80 -30
  90. package/dist/api/sync/client.js.map +1 -1
  91. package/dist/api/sync/generatorSupport.d.ts +32 -0
  92. package/dist/api/sync/generatorSupport.d.ts.map +1 -0
  93. package/dist/api/sync/generatorSupport.js +338 -0
  94. package/dist/api/sync/generatorSupport.js.map +1 -0
  95. package/dist/api/sync/types.d.ts +248 -56
  96. package/dist/api/sync/types.d.ts.map +1 -1
  97. package/dist/api/syncChannel.d.ts +3 -0
  98. package/dist/api/syncChannel.d.ts.map +1 -1
  99. package/dist/api/syncChannel.js +20 -2
  100. package/dist/api/syncChannel.js.map +1 -1
  101. package/dist/api/timing.d.ts +2 -2
  102. package/dist/api/timing.d.ts.map +1 -1
  103. package/dist/api/timing.js +1 -1
  104. package/dist/api/timing.js.map +1 -1
  105. package/dist/api/timingDump.d.ts +13 -0
  106. package/dist/api/timingDump.d.ts.map +1 -0
  107. package/dist/api/timingDump.js +38 -0
  108. package/dist/api/timingDump.js.map +1 -0
  109. package/dist/api/typedPaths.d.ts +3 -0
  110. package/dist/api/typedPaths.d.ts.map +1 -0
  111. package/dist/api/typedPaths.js +2 -0
  112. package/dist/api/typedPaths.js.map +1 -0
  113. package/dist/api/userPreferences.generated.d.ts +195 -0
  114. package/dist/api/userPreferences.generated.d.ts.map +1 -0
  115. package/dist/api/userPreferences.generated.js +3 -0
  116. package/dist/api/userPreferences.generated.js.map +1 -0
  117. package/dist/ast/ast.d.ts +90 -7
  118. package/dist/ast/ast.d.ts.map +1 -1
  119. package/dist/ast/ast.generated.d.ts +45 -39
  120. package/dist/ast/ast.generated.d.ts.map +1 -1
  121. package/dist/ast/ast.generated.js +1 -1
  122. package/dist/ast/ast.generated.js.map +1 -1
  123. package/dist/ast/ast.js +1 -0
  124. package/dist/ast/ast.js.map +1 -1
  125. package/dist/ast/astnav.d.ts +3 -2
  126. package/dist/ast/astnav.d.ts.map +1 -1
  127. package/dist/ast/astnav.js +148 -3
  128. package/dist/ast/astnav.js.map +1 -1
  129. package/dist/ast/factory.generated.d.ts +8 -154
  130. package/dist/ast/factory.generated.d.ts.map +1 -1
  131. package/dist/ast/factory.generated.js +2701 -7
  132. package/dist/ast/factory.generated.js.map +1 -1
  133. package/dist/ast/index.d.ts +5 -0
  134. package/dist/ast/index.d.ts.map +1 -1
  135. package/dist/ast/index.js +5 -0
  136. package/dist/ast/index.js.map +1 -1
  137. package/dist/ast/is.d.ts +2 -12
  138. package/dist/ast/is.d.ts.map +1 -1
  139. package/dist/ast/is.generated.d.ts +889 -1
  140. package/dist/ast/is.generated.d.ts.map +1 -1
  141. package/dist/ast/is.generated.js +300 -3
  142. package/dist/ast/is.generated.js.map +1 -1
  143. package/dist/ast/is.js +224 -1
  144. package/dist/ast/is.js.map +1 -1
  145. package/dist/ast/jsdoc.d.ts +2 -1
  146. package/dist/ast/jsdoc.d.ts.map +1 -1
  147. package/dist/ast/jsdoc.js +14 -8
  148. package/dist/ast/jsdoc.js.map +1 -1
  149. package/dist/ast/modifiers.d.ts +4 -0
  150. package/dist/ast/modifiers.d.ts.map +1 -0
  151. package/dist/ast/modifiers.js +41 -0
  152. package/dist/ast/modifiers.js.map +1 -0
  153. package/dist/ast/scanner.d.ts.map +1 -1
  154. package/dist/ast/scanner.js +2 -1
  155. package/dist/ast/scanner.js.map +1 -1
  156. package/dist/ast/spanMap.d.ts +88 -0
  157. package/dist/ast/spanMap.d.ts.map +1 -0
  158. package/dist/ast/spanMap.js +417 -0
  159. package/dist/ast/spanMap.js.map +1 -0
  160. package/dist/ast/utils.d.ts +14 -1
  161. package/dist/ast/utils.d.ts.map +1 -1
  162. package/dist/ast/utils.js +251 -0
  163. package/dist/ast/utils.js.map +1 -1
  164. package/dist/ast/visitor.d.ts +2 -0
  165. package/dist/ast/visitor.d.ts.map +1 -1
  166. package/dist/ast/visitor.generated.d.ts.map +1 -1
  167. package/dist/ast/visitor.generated.js +5 -4
  168. package/dist/ast/visitor.generated.js.map +1 -1
  169. package/dist/ast/visitor.js +40 -0
  170. package/dist/ast/visitor.js.map +1 -1
  171. package/dist/enums/caseSensitivity.d.ts +2 -0
  172. package/dist/enums/caseSensitivity.d.ts.map +1 -0
  173. package/dist/enums/caseSensitivity.enum.d.ts +5 -0
  174. package/dist/enums/caseSensitivity.enum.d.ts.map +1 -0
  175. package/dist/enums/caseSensitivity.enum.js +7 -0
  176. package/dist/enums/caseSensitivity.enum.js.map +1 -0
  177. package/dist/enums/caseSensitivity.js +7 -0
  178. package/dist/enums/caseSensitivity.js.map +1 -0
  179. package/dist/enums/checkFlags.d.ts +2 -0
  180. package/dist/enums/checkFlags.d.ts.map +1 -0
  181. package/dist/enums/checkFlags.enum.d.ts +34 -0
  182. package/dist/enums/checkFlags.enum.d.ts.map +1 -0
  183. package/dist/enums/checkFlags.enum.js +36 -0
  184. package/dist/enums/checkFlags.enum.js.map +1 -0
  185. package/dist/enums/checkFlags.js +36 -0
  186. package/dist/enums/checkFlags.js.map +1 -0
  187. package/dist/enums/completionItemKind.enum.js +1 -1
  188. package/dist/enums/completionItemKind.enum.js.map +1 -1
  189. package/dist/enums/completionItemKind.js +1 -1
  190. package/dist/enums/completionItemKind.js.map +1 -1
  191. package/dist/enums/diagnosticCategory.enum.js +1 -1
  192. package/dist/enums/diagnosticCategory.enum.js.map +1 -1
  193. package/dist/enums/diagnosticCategory.js +1 -1
  194. package/dist/enums/diagnosticCategory.js.map +1 -1
  195. package/dist/enums/diagnosticDirectivePolicy.d.ts +2 -0
  196. package/dist/enums/diagnosticDirectivePolicy.d.ts.map +1 -0
  197. package/dist/enums/diagnosticDirectivePolicy.enum.d.ts +5 -0
  198. package/dist/enums/diagnosticDirectivePolicy.enum.d.ts.map +1 -0
  199. package/dist/enums/diagnosticDirectivePolicy.enum.js +7 -0
  200. package/dist/enums/diagnosticDirectivePolicy.enum.js.map +1 -0
  201. package/dist/enums/diagnosticDirectivePolicy.js +7 -0
  202. package/dist/enums/diagnosticDirectivePolicy.js.map +1 -0
  203. package/dist/enums/elementFlags.enum.js +1 -1
  204. package/dist/enums/elementFlags.enum.js.map +1 -1
  205. package/dist/enums/elementFlags.js +1 -1
  206. package/dist/enums/elementFlags.js.map +1 -1
  207. package/dist/enums/emitOnly.d.ts +2 -0
  208. package/dist/enums/emitOnly.d.ts.map +1 -0
  209. package/dist/enums/emitOnly.enum.d.ts +6 -0
  210. package/dist/enums/emitOnly.enum.d.ts.map +1 -0
  211. package/dist/enums/emitOnly.enum.js +8 -0
  212. package/dist/enums/emitOnly.enum.js.map +1 -0
  213. package/dist/enums/emitOnly.js +8 -0
  214. package/dist/enums/emitOnly.js.map +1 -0
  215. package/dist/enums/indexKind.d.ts +2 -0
  216. package/dist/enums/indexKind.d.ts.map +1 -0
  217. package/dist/enums/indexKind.enum.d.ts +5 -0
  218. package/dist/enums/indexKind.enum.d.ts.map +1 -0
  219. package/dist/enums/indexKind.enum.js +7 -0
  220. package/dist/enums/indexKind.enum.js.map +1 -0
  221. package/dist/enums/indexKind.js +7 -0
  222. package/dist/enums/indexKind.js.map +1 -0
  223. package/dist/enums/internalSymbolName.enum.js +1 -1
  224. package/dist/enums/internalSymbolName.enum.js.map +1 -1
  225. package/dist/enums/internalSymbolName.js +1 -1
  226. package/dist/enums/internalSymbolName.js.map +1 -1
  227. package/dist/enums/jsDeclarationKind.d.ts +2 -0
  228. package/dist/enums/jsDeclarationKind.d.ts.map +1 -0
  229. package/dist/enums/jsDeclarationKind.enum.d.ts +10 -0
  230. package/dist/enums/jsDeclarationKind.enum.d.ts.map +1 -0
  231. package/dist/enums/jsDeclarationKind.enum.js +12 -0
  232. package/dist/enums/jsDeclarationKind.enum.js.map +1 -0
  233. package/dist/enums/jsDeclarationKind.js +12 -0
  234. package/dist/enums/jsDeclarationKind.js.map +1 -0
  235. package/dist/enums/jsxEmit.enum.d.ts +2 -2
  236. package/dist/enums/jsxEmit.enum.d.ts.map +1 -1
  237. package/dist/enums/jsxEmit.enum.js +3 -3
  238. package/dist/enums/jsxEmit.enum.js.map +1 -1
  239. package/dist/enums/jsxEmit.js +3 -3
  240. package/dist/enums/jsxEmit.js.map +1 -1
  241. package/dist/enums/modifierFlags.enum.js +1 -1
  242. package/dist/enums/modifierFlags.enum.js.map +1 -1
  243. package/dist/enums/modifierFlags.js +1 -1
  244. package/dist/enums/modifierFlags.js.map +1 -1
  245. package/dist/enums/moduleDetectionKind.enum.js +1 -1
  246. package/dist/enums/moduleDetectionKind.enum.js.map +1 -1
  247. package/dist/enums/moduleDetectionKind.js +1 -1
  248. package/dist/enums/moduleDetectionKind.js.map +1 -1
  249. package/dist/enums/moduleKind.enum.js +1 -1
  250. package/dist/enums/moduleKind.enum.js.map +1 -1
  251. package/dist/enums/moduleKind.js +1 -1
  252. package/dist/enums/moduleKind.js.map +1 -1
  253. package/dist/enums/moduleResolutionKind.enum.js +1 -1
  254. package/dist/enums/moduleResolutionKind.enum.js.map +1 -1
  255. package/dist/enums/moduleResolutionKind.js +1 -1
  256. package/dist/enums/moduleResolutionKind.js.map +1 -1
  257. package/dist/enums/newLineKind.enum.js +1 -1
  258. package/dist/enums/newLineKind.enum.js.map +1 -1
  259. package/dist/enums/newLineKind.js +1 -1
  260. package/dist/enums/newLineKind.js.map +1 -1
  261. package/dist/enums/nodeBuilderFlags.enum.js +1 -1
  262. package/dist/enums/nodeBuilderFlags.enum.js.map +1 -1
  263. package/dist/enums/nodeBuilderFlags.js +1 -1
  264. package/dist/enums/nodeBuilderFlags.js.map +1 -1
  265. package/dist/enums/nodeFlags.enum.js +1 -1
  266. package/dist/enums/nodeFlags.enum.js.map +1 -1
  267. package/dist/enums/nodeFlags.js +1 -1
  268. package/dist/enums/nodeFlags.js.map +1 -1
  269. package/dist/enums/objectFlags.enum.d.ts +3 -2
  270. package/dist/enums/objectFlags.enum.d.ts.map +1 -1
  271. package/dist/enums/objectFlags.enum.js +4 -3
  272. package/dist/enums/objectFlags.enum.js.map +1 -1
  273. package/dist/enums/objectFlags.js +4 -3
  274. package/dist/enums/objectFlags.js.map +1 -1
  275. package/dist/enums/outerExpressionKinds.enum.js +1 -1
  276. package/dist/enums/outerExpressionKinds.enum.js.map +1 -1
  277. package/dist/enums/outerExpressionKinds.js +1 -1
  278. package/dist/enums/outerExpressionKinds.js.map +1 -1
  279. package/dist/enums/scriptKind.d.ts.map +1 -1
  280. package/dist/enums/scriptKind.enum.d.ts +1 -3
  281. package/dist/enums/scriptKind.enum.d.ts.map +1 -1
  282. package/dist/enums/scriptKind.enum.js +1 -2
  283. package/dist/enums/scriptKind.enum.js.map +1 -1
  284. package/dist/enums/scriptKind.js +1 -2
  285. package/dist/enums/scriptKind.js.map +1 -1
  286. package/dist/enums/scriptTarget.d.ts.map +1 -1
  287. package/dist/enums/scriptTarget.enum.d.ts +1 -0
  288. package/dist/enums/scriptTarget.enum.d.ts.map +1 -1
  289. package/dist/enums/scriptTarget.enum.js +2 -0
  290. package/dist/enums/scriptTarget.enum.js.map +1 -1
  291. package/dist/enums/scriptTarget.js +2 -0
  292. package/dist/enums/scriptTarget.js.map +1 -1
  293. package/dist/enums/signatureFlags.enum.js +1 -1
  294. package/dist/enums/signatureFlags.enum.js.map +1 -1
  295. package/dist/enums/signatureFlags.js +1 -1
  296. package/dist/enums/signatureFlags.js.map +1 -1
  297. package/dist/enums/signatureKind.enum.js +1 -1
  298. package/dist/enums/signatureKind.enum.js.map +1 -1
  299. package/dist/enums/signatureKind.js +1 -1
  300. package/dist/enums/signatureKind.js.map +1 -1
  301. package/dist/enums/spanMapFeature.d.ts +2 -0
  302. package/dist/enums/spanMapFeature.d.ts.map +1 -0
  303. package/dist/enums/spanMapFeature.enum.d.ts +25 -0
  304. package/dist/enums/spanMapFeature.enum.d.ts.map +1 -0
  305. package/dist/enums/spanMapFeature.enum.js +27 -0
  306. package/dist/enums/spanMapFeature.enum.js.map +1 -0
  307. package/dist/enums/spanMapFeature.js +27 -0
  308. package/dist/enums/spanMapFeature.js.map +1 -0
  309. package/dist/enums/spanMapFidelity.d.ts +2 -0
  310. package/dist/enums/spanMapFidelity.d.ts.map +1 -0
  311. package/dist/enums/spanMapFidelity.enum.d.ts +7 -0
  312. package/dist/enums/spanMapFidelity.enum.d.ts.map +1 -0
  313. package/dist/enums/spanMapFidelity.enum.js +9 -0
  314. package/dist/enums/spanMapFidelity.enum.js.map +1 -0
  315. package/dist/enums/spanMapFidelity.js +9 -0
  316. package/dist/enums/spanMapFidelity.js.map +1 -0
  317. package/dist/enums/spanMapKind.d.ts +2 -0
  318. package/dist/enums/spanMapKind.d.ts.map +1 -0
  319. package/dist/enums/spanMapKind.enum.d.ts +6 -0
  320. package/dist/enums/spanMapKind.enum.d.ts.map +1 -0
  321. package/dist/enums/spanMapKind.enum.js +8 -0
  322. package/dist/enums/spanMapKind.enum.js.map +1 -0
  323. package/dist/enums/spanMapKind.js +8 -0
  324. package/dist/enums/spanMapKind.js.map +1 -0
  325. package/dist/enums/symbolFlags.enum.d.ts +1 -2
  326. package/dist/enums/symbolFlags.enum.d.ts.map +1 -1
  327. package/dist/enums/symbolFlags.enum.js +2 -3
  328. package/dist/enums/symbolFlags.enum.js.map +1 -1
  329. package/dist/enums/symbolFlags.js +2 -3
  330. package/dist/enums/symbolFlags.js.map +1 -1
  331. package/dist/enums/symbolOwnerKind.d.ts +2 -0
  332. package/dist/enums/symbolOwnerKind.d.ts.map +1 -0
  333. package/dist/enums/symbolOwnerKind.enum.d.ts +5 -0
  334. package/dist/enums/symbolOwnerKind.enum.d.ts.map +1 -0
  335. package/dist/enums/symbolOwnerKind.enum.js +7 -0
  336. package/dist/enums/symbolOwnerKind.enum.js.map +1 -0
  337. package/dist/enums/symbolOwnerKind.js +7 -0
  338. package/dist/enums/symbolOwnerKind.js.map +1 -0
  339. package/dist/enums/syntaxKind.enum.d.ts +198 -197
  340. package/dist/enums/syntaxKind.enum.d.ts.map +1 -1
  341. package/dist/enums/syntaxKind.enum.js +199 -198
  342. package/dist/enums/syntaxKind.enum.js.map +1 -1
  343. package/dist/enums/syntaxKind.js +199 -198
  344. package/dist/enums/syntaxKind.js.map +1 -1
  345. package/dist/enums/tokenFlags.enum.js +1 -1
  346. package/dist/enums/tokenFlags.enum.js.map +1 -1
  347. package/dist/enums/tokenFlags.js +1 -1
  348. package/dist/enums/tokenFlags.js.map +1 -1
  349. package/dist/enums/typeFlags.enum.js +1 -1
  350. package/dist/enums/typeFlags.enum.js.map +1 -1
  351. package/dist/enums/typeFlags.js +1 -1
  352. package/dist/enums/typeFlags.js.map +1 -1
  353. package/dist/enums/typeFormatFlags.d.ts +2 -0
  354. package/dist/enums/typeFormatFlags.d.ts.map +1 -0
  355. package/dist/enums/typeFormatFlags.enum.d.ts +29 -0
  356. package/dist/enums/typeFormatFlags.enum.d.ts.map +1 -0
  357. package/dist/enums/typeFormatFlags.enum.js +31 -0
  358. package/dist/enums/typeFormatFlags.enum.js.map +1 -0
  359. package/dist/enums/typeFormatFlags.js +31 -0
  360. package/dist/enums/typeFormatFlags.js.map +1 -0
  361. package/dist/enums/typePredicateKind.enum.js +1 -1
  362. package/dist/enums/typePredicateKind.enum.js.map +1 -1
  363. package/dist/enums/typePredicateKind.js +1 -1
  364. package/dist/enums/typePredicateKind.js.map +1 -1
  365. package/dist/internal/utils.js.map +1 -1
  366. package/dist/vscode/extensionApi.d.ts +101 -0
  367. package/dist/vscode/extensionApi.d.ts.map +1 -0
  368. package/dist/vscode/extensionApi.js +2 -0
  369. package/dist/vscode/extensionApi.js.map +1 -0
  370. package/dist/vscode/moduleLoader.d.ts +14 -0
  371. package/dist/vscode/moduleLoader.d.ts.map +1 -0
  372. package/dist/vscode/moduleLoader.js +36 -0
  373. package/dist/vscode/moduleLoader.js.map +1 -0
  374. package/dist/vscode/protocol.generated.d.ts +2886 -0
  375. package/dist/vscode/protocol.generated.d.ts.map +1 -0
  376. package/dist/vscode/protocol.generated.js +4 -0
  377. package/dist/vscode/protocol.generated.js.map +1 -0
  378. package/lib/getExePath.js +2 -2
  379. package/lib/version.cjs +1 -1
  380. package/lib/version.d.cts +1 -1
  381. package/package.json +40 -34
  382. package/schemas/jsconfig.schema.json +2207 -0
  383. package/schemas/tsconfig.schema.json +2206 -0
  384. package/vendor/vscode-jsonrpc/lib/node/main.js +1 -1
  385. package/vendor/vscode-jsonrpc/package.json +1 -1
  386. package/dist/api/compilerOptions.d.ts +0 -109
  387. package/dist/api/compilerOptions.d.ts.map +0 -1
  388. package/dist/api/compilerOptions.js +0 -2
  389. package/dist/api/compilerOptions.js.map +0 -1
@@ -1,7 +1,8 @@
1
1
  import { createMessageConnection, RequestType, SocketMessageReader, SocketMessageWriter, StreamMessageReader, StreamMessageWriter, } from "#vscode-jsonrpc/node";
2
- import { fsCallbackNames, } from "../fs.js";
3
- import { isSpawnOptions, resolveExePath, } from "../options.js";
2
+ import { configureFileSystemCallbacks, encodeFileSystemCallbackResult, } from "../fsCallbacks.js";
3
+ import { getAPIProcessArgs, isSpawnOptions, resolveExePath, } from "../options.js";
4
4
  import { combineTimingInfo, disabledServerTimingInfo, disabledTimingInfo, TimingCollector, } from "../timing.js";
5
+ import { TimingDump } from "../timingDump.js";
5
6
  /**
6
7
  * Client handles communication with the TypeScript API server
7
8
  * over STDIO (spawned process) or a Unix domain socket using JSON-RPC.
@@ -12,16 +13,36 @@ export class Client {
12
13
  connection;
13
14
  options;
14
15
  connected = false;
16
+ closed = false;
17
+ connecting;
15
18
  timing;
19
+ timingDump;
20
+ closing;
21
+ batchedRequests = [];
22
+ nextBatch;
16
23
  constructor(options) {
17
- this.options = options;
18
- if (isSpawnOptions(options) && options.collectTiming) {
24
+ this.timingDump = TimingDump.fromEnvironment("async", isSpawnOptions(options) ? "spawn" : "socket");
25
+ if (this.timingDump || isSpawnOptions(options) && options.collectTiming) {
19
26
  this.timing = new TimingCollector();
20
27
  }
28
+ if (this.timingDump && isSpawnOptions(options)) {
29
+ options = { ...options, collectTiming: true };
30
+ }
31
+ this.options = options;
32
+ if (isSpawnOptions(options)) {
33
+ configureFileSystemCallbacks(options.fs);
34
+ }
21
35
  }
22
- async connect() {
36
+ connect() {
37
+ if (this.closed)
38
+ return Promise.reject(new Error("Client is closed"));
23
39
  if (this.connected)
24
- return;
40
+ return Promise.resolve();
41
+ return this.connecting ??= this.connectWorker().finally(() => {
42
+ this.connecting = undefined;
43
+ });
44
+ }
45
+ async connectWorker() {
25
46
  if (isSpawnOptions(this.options)) {
26
47
  await this.connectViaSpawn(this.options);
27
48
  }
@@ -32,26 +53,10 @@ export class Client {
32
53
  async connectViaSpawn(options) {
33
54
  const { spawn } = await import("node:child_process");
34
55
  return new Promise((resolve, reject) => {
35
- const args = [
36
- "--api",
37
- "--async",
38
- "--cwd",
39
- options.cwd ?? process.cwd(),
40
- ];
41
- if (options.collectTiming) {
42
- args.push("--timing");
43
- }
44
- // Enable virtual FS callbacks for each provided FS function
45
- const enabledCallbacks = [];
46
- if (options.fs) {
47
- for (const name of fsCallbackNames) {
48
- if (options.fs[name]) {
49
- enabledCallbacks.push(name);
50
- }
51
- }
52
- }
53
- if (enabledCallbacks.length > 0) {
54
- args.push(`--callbacks=${enabledCallbacks.join(",")}`);
56
+ const args = getAPIProcessArgs(options, true);
57
+ const fsConfiguration = configureFileSystemCallbacks(options.fs);
58
+ if (fsConfiguration.arguments.length > 0) {
59
+ args.push(`--callbacks=${fsConfiguration.arguments.join(",")}`);
55
60
  }
56
61
  this.process = spawn(resolveExePath(options), args, {
57
62
  stdio: ["pipe", "pipe", "inherit"],
@@ -66,7 +71,7 @@ export class Client {
66
71
  const reader = new StreamMessageReader(this.process.stdout);
67
72
  const writer = new StreamMessageWriter(this.process.stdin);
68
73
  this.connection = createMessageConnection(reader, writer);
69
- this.registerFSCallbacks(this.connection, options.fs);
74
+ this.registerFSCallbacks(this.connection, options.fs, fsConfiguration);
70
75
  this.connection.listen();
71
76
  });
72
77
  }
@@ -86,35 +91,90 @@ export class Client {
86
91
  });
87
92
  });
88
93
  }
89
- registerFSCallbacks(connection, fs) {
94
+ registerFSCallbacks(connection, fs, configuration) {
90
95
  if (!fs)
91
96
  return;
92
- for (const name of fsCallbackNames) {
93
- const callback = fs[name];
94
- if (callback) {
95
- const requestType = new RequestType(name);
96
- connection.onRequest(requestType, (arg) => {
97
- const result = callback(arg);
98
- if (name === "readFile") {
99
- // readFile has 3 returns: string (content), null (not found), undefined (fall back).
100
- // JSON-RPC can't distinguish null from undefined, so wrap in object.
101
- if (result === undefined)
102
- return null;
103
- return { content: result };
104
- }
105
- return result ?? null;
106
- });
97
+ for (const name of configuration.callbackNames) {
98
+ switch (name) {
99
+ case "readFile": {
100
+ const callback = fs.readFile;
101
+ if (typeof callback !== "function")
102
+ throw new Error("Invalid readFile callback configuration");
103
+ connection.onRequest(new RequestType(name), fileName => {
104
+ return encodeFileSystemCallbackResult(name, callback(fileName));
105
+ });
106
+ break;
107
+ }
108
+ case "fileExists": {
109
+ const callback = fs.fileExists;
110
+ if (typeof callback !== "function")
111
+ throw new Error("Invalid fileExists callback configuration");
112
+ connection.onRequest(new RequestType(name), fileName => {
113
+ return encodeFileSystemCallbackResult(name, callback(fileName));
114
+ });
115
+ break;
116
+ }
117
+ case "directoryExists": {
118
+ const callback = fs.directoryExists;
119
+ if (typeof callback !== "function")
120
+ throw new Error("Invalid directoryExists callback configuration");
121
+ connection.onRequest(new RequestType(name), directoryName => {
122
+ return encodeFileSystemCallbackResult(name, callback(directoryName));
123
+ });
124
+ break;
125
+ }
126
+ case "getAccessibleEntries": {
127
+ const callback = fs.getAccessibleEntries;
128
+ if (typeof callback !== "function")
129
+ throw new Error("Invalid getAccessibleEntries callback configuration");
130
+ connection.onRequest(new RequestType(name), directoryName => {
131
+ return encodeFileSystemCallbackResult(name, callback(directoryName));
132
+ });
133
+ break;
134
+ }
135
+ case "realpath": {
136
+ const callback = fs.realpath;
137
+ if (typeof callback !== "function")
138
+ throw new Error("Invalid realpath callback configuration");
139
+ connection.onRequest(new RequestType(name), path => {
140
+ return encodeFileSystemCallbackResult(name, callback(path));
141
+ });
142
+ break;
143
+ }
144
+ case "stat": {
145
+ const callback = fs.stat;
146
+ if (typeof callback !== "function")
147
+ throw new Error("Invalid stat callback configuration");
148
+ connection.onRequest(new RequestType(name), path => {
149
+ return encodeFileSystemCallbackResult(name, callback(path));
150
+ });
151
+ break;
152
+ }
153
+ case "writeFile": {
154
+ const callback = fs.writeFile;
155
+ if (typeof callback !== "function")
156
+ throw new Error("Invalid writeFile callback configuration");
157
+ connection.onRequest(new RequestType(name), arg => {
158
+ return encodeFileSystemCallbackResult(name, callback(arg.path, arg.data));
159
+ });
160
+ break;
161
+ }
162
+ case "removeFile": {
163
+ const callback = fs.removeFile;
164
+ if (typeof callback !== "function")
165
+ throw new Error("Invalid removeFile callback configuration");
166
+ connection.onRequest(new RequestType(name), path => {
167
+ return encodeFileSystemCallbackResult(name, callback(path));
168
+ });
169
+ break;
170
+ }
107
171
  }
108
172
  }
109
173
  }
110
- async apiRequest(method, params) {
111
- if (!this.connected) {
112
- await this.connect();
113
- }
174
+ async sendRequestWithTiming(requestType, params) {
114
175
  if (!this.connection) {
115
176
  throw new Error("Connection not established");
116
177
  }
117
- const requestType = new RequestType(method);
118
178
  if (!this.timing) {
119
179
  return this.connection.sendRequest(requestType, params);
120
180
  }
@@ -127,7 +187,7 @@ export class Client {
127
187
  const result = await this.connection.sendRequest(requestType, params);
128
188
  const roundTripMs = performance.now() - start;
129
189
  this.timing.record({
130
- method,
190
+ method: requestType.method,
131
191
  roundTripMs,
132
192
  bytesSent,
133
193
  bytesReceived: result === undefined || result === null
@@ -136,6 +196,105 @@ export class Client {
136
196
  });
137
197
  return result;
138
198
  }
199
+ registerCallback(name, callback) {
200
+ if (!this.connection) {
201
+ throw new Error("Connection not established");
202
+ }
203
+ const disposable = this.connection.onRequest(new RequestType(name), callback);
204
+ return () => disposable.dispose();
205
+ }
206
+ async doBatch() {
207
+ this.nextBatch = undefined;
208
+ if (!this.batchedRequests.length)
209
+ return;
210
+ const requests = this.batchedRequests;
211
+ this.batchedRequests = [];
212
+ try {
213
+ if (!this.connected) {
214
+ await this.connect();
215
+ }
216
+ if (!this.connection) {
217
+ throw new Error("Connection not established");
218
+ }
219
+ if (requests.length === 1) {
220
+ // send single queued requests directly instead of as a batched request
221
+ const requestType = new RequestType(requests[0].method);
222
+ const response = await this.sendRequestWithTiming(requestType, requests[0].params);
223
+ requests[0].resolve(response);
224
+ return;
225
+ }
226
+ const requestType = new RequestType("batchRequests");
227
+ const params = { requests: requests.map(request => ({ method: request.method, params: request.params })) };
228
+ if (this.options.maxResponseBytesPerPage !== undefined) {
229
+ params.maxResponseBytesPerPage = this.options.maxResponseBytesPerPage;
230
+ }
231
+ const response = await this.sendRequestWithTiming(requestType, params);
232
+ let responses = response.responses;
233
+ let continuationToken = response.continuationToken;
234
+ while (continuationToken) {
235
+ const pageParams = {
236
+ requests: [],
237
+ continuationToken,
238
+ };
239
+ if (this.options.maxResponseBytesPerPage !== undefined) {
240
+ pageParams.maxResponseBytesPerPage = this.options.maxResponseBytesPerPage;
241
+ }
242
+ const page = await this.sendRequestWithTiming(requestType, pageParams);
243
+ responses = responses.concat(page.responses);
244
+ continuationToken = page.continuationToken;
245
+ }
246
+ for (let i = 0; i < requests.length; i++) {
247
+ const { resolve, reject } = requests[i];
248
+ const item = responses[i];
249
+ if (item.error !== undefined) {
250
+ reject(new Error(item.error));
251
+ }
252
+ else {
253
+ resolve(item.result);
254
+ }
255
+ }
256
+ }
257
+ catch (error) {
258
+ for (const { reject } of requests)
259
+ reject(error);
260
+ }
261
+ }
262
+ scheduleImmediateBatch() {
263
+ if (this.nextBatch)
264
+ return;
265
+ this.nextBatch = setImmediate(this.doBatch.bind(this));
266
+ }
267
+ batchContext() {
268
+ if (this.nextBatch === "manual") {
269
+ throw new Error("Already in a manual batch context");
270
+ }
271
+ if (this.nextBatch) {
272
+ clearImmediate(this.nextBatch);
273
+ this.doBatch(); // empty the queue before entering a manual batch context
274
+ }
275
+ this.nextBatch = "manual";
276
+ return {
277
+ [Symbol.dispose]: () => {
278
+ this.nextBatch = undefined;
279
+ this.scheduleImmediateBatch();
280
+ },
281
+ };
282
+ }
283
+ async apiRequest(method, params) {
284
+ if (this.closed)
285
+ throw new Error("Client is closed");
286
+ if (!this.connected) {
287
+ await this.connect();
288
+ }
289
+ if (!this.connection) {
290
+ throw new Error("Connection not established");
291
+ }
292
+ const resultPromise = new Promise((resolve, reject) => {
293
+ this.batchedRequests.push({ method, params, resolve, reject });
294
+ this.scheduleImmediateBatch();
295
+ });
296
+ return resultPromise;
297
+ }
139
298
  async apiRequestBinary(method, params) {
140
299
  const response = await this.apiRequest(method, params);
141
300
  if (!response)
@@ -187,25 +346,53 @@ export class Client {
187
346
  const requestType = new RequestType("getServerTiming");
188
347
  return this.connection.sendRequest(requestType, undefined);
189
348
  }
190
- async close() {
191
- if (this.connection) {
192
- this.connection.dispose();
193
- this.connection = undefined;
194
- }
195
- if (this.socket) {
196
- this.socket.destroy();
197
- this.socket = undefined;
198
- }
199
- if (this.process) {
200
- // Close stdin to unblock the server's read loop, allowing it to exit cleanly.
201
- // The server is blocked on stdin.Read(), so just sending SIGTERM would deadlock:
202
- // - Node won't exit while child is alive
203
- // - Child can't process SIGTERM while blocked on read
204
- // - Read won't error until stdin is closed
205
- this.process.stdin?.end();
206
- this.process = undefined;
207
- }
208
- this.connected = false;
349
+ close() {
350
+ return this.closing ??= this.closeWorker();
351
+ }
352
+ async closeWorker() {
353
+ await this.connecting?.catch(() => { }); // if connection is still in-progress, wait for it to finish before closing the connection
354
+ this.closed = true;
355
+ try {
356
+ if (this.timingDump && this.timing) {
357
+ const local = this.timing.getInfo();
358
+ let server;
359
+ let serverTimingError;
360
+ const connection = this.connection;
361
+ // Closing alone does not reject pending JSON-RPC requests.
362
+ const onClose = connection?.onClose(() => connection.dispose());
363
+ try {
364
+ if (this.connected)
365
+ server = await this.fetchServerTiming();
366
+ }
367
+ catch (error) {
368
+ serverTimingError = String(error);
369
+ }
370
+ finally {
371
+ onClose?.dispose();
372
+ }
373
+ this.timingDump.write(local, server, serverTimingError);
374
+ }
375
+ }
376
+ finally {
377
+ if (this.connection) {
378
+ this.connection.dispose();
379
+ this.connection = undefined;
380
+ }
381
+ if (this.socket) {
382
+ this.socket.destroy();
383
+ this.socket = undefined;
384
+ }
385
+ if (this.process) {
386
+ // Close stdin to unblock the server's read loop, allowing it to exit cleanly.
387
+ // The server is blocked on stdin.Read(), so just sending SIGTERM would deadlock:
388
+ // - Node won't exit while child is alive
389
+ // - Child can't process SIGTERM while blocked on read
390
+ // - Read won't error until stdin is closed
391
+ this.process.stdin?.end();
392
+ this.process = undefined;
393
+ }
394
+ this.connected = false;
395
+ }
209
396
  }
210
397
  }
211
398
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/async/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/async/client.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,13 @@
1
1
  import type { CompletionItemKind } from "#enums/completionItemKind";
2
- import type { DiagnosticCategory } from "#enums/diagnosticCategory";
3
2
  import type { ElementFlags } from "#enums/elementFlags";
4
3
  import type { ObjectFlags } from "#enums/objectFlags";
5
4
  import type { TypeFlags } from "#enums/typeFlags";
6
5
  import type { TypePredicateKind } from "#enums/typePredicateKind";
7
- import type { NodeHandle, Symbol } from "./api.ts";
6
+ import type { IndexSignatureDeclaration, NamedTupleMember, ParameterDeclaration } from "../../ast/ast.ts";
7
+ import type { RootedFilePath } from "../../ast/index.ts";
8
+ import type { Diagnostic, RequestFileSystem } from "../proto.ts";
9
+ import type { NodeHandle, Signature, Symbol } from "./api.ts";
10
+ export type { Diagnostic } from "../proto.ts";
8
11
  /**
9
12
  * A TypeScript type.
10
13
  *
@@ -24,6 +27,28 @@ export interface Type {
24
27
  readonly id: number;
25
28
  /** Get the symbol associated with this type, if any */
26
29
  getSymbol(): Promise<Symbol | undefined>;
30
+ /** Get the properties of this type. */
31
+ getProperties(): Promise<readonly Symbol[]>;
32
+ /** Get a named property of this type, if present. */
33
+ getProperty(propertyName: string): Promise<Symbol | undefined>;
34
+ /** Get the properties of the apparent type of this type. */
35
+ getApparentProperties(): Promise<readonly Symbol[]>;
36
+ /** Get the apparent type of this type. */
37
+ getApparentType(): Promise<Type>;
38
+ /** Get the reduced type of this type. */
39
+ getReducedType(): Promise<Type>;
40
+ /** Get the call signatures of this type. */
41
+ getCallSignatures(): Promise<readonly Signature[]>;
42
+ /** Get the construct signatures of this type. */
43
+ getConstructSignatures(): Promise<readonly Signature[]>;
44
+ /** Get this type with `null` and `undefined` removed. */
45
+ getNonNullableType(): Promise<Type>;
46
+ /** Get this type's string index value type, if present. */
47
+ getStringIndexType(): Promise<Type | undefined>;
48
+ /** Get this type's number index value type, if present. */
49
+ getNumberIndexType(): Promise<Type | undefined>;
50
+ /** Get all index information for this type. */
51
+ getIndexInfos(): Promise<readonly IndexInfo[]>;
27
52
  /** Get the type arguments of the type alias this type was instantiated from, if any */
28
53
  getAliasTypeArguments(): Promise<readonly Type[]>;
29
54
  /** Get the symbol of the type alias this type was instantiated from, if any */
@@ -60,8 +85,10 @@ export interface Type {
60
85
  isBooleanLiteralType(): this is BooleanLiteralType;
61
86
  /** Whether this type is a type reference */
62
87
  isTypeReference(): this is TypeReference;
63
- /** Whether this type is a tuple type */
64
- isTupleType(): this is TupleType;
88
+ /** Whether this type is a tuple type reference */
89
+ isTupleType(): this is TupleTypeReference;
90
+ /** Whether this type owns tuple metadata */
91
+ isTupleTypeTarget(): this is TupleType;
65
92
  /** Whether this type is an index type (`keyof T`) */
66
93
  isIndexType(): this is IndexType;
67
94
  /** Whether this type is an indexed access type (`T[K]`) */
@@ -76,6 +103,8 @@ export interface Type {
76
103
  isStringMappingType(): this is StringMappingType;
77
104
  /** Whether this type is a type parameter */
78
105
  isTypeParameter(): this is TypeParameter;
106
+ /** Whether this is a mapped type */
107
+ isMappedType(): this is MappedType;
79
108
  }
80
109
  /**
81
110
  * Freshable types (TypeFlags.Freshable) - literal types (TypeFlags.Literal) and computed enum types (TypeFlags.Enum).
@@ -116,10 +145,26 @@ export interface ObjectType extends Type {
116
145
  /** Object flags — use to determine the specific kind of object type. */
117
146
  readonly objectFlags: ObjectFlags;
118
147
  }
148
+ /** Mapped types (ObjectFlags.Mapped) */
149
+ export interface MappedType extends ObjectType {
150
+ /** Get the type parameter iterated by the mapped type */
151
+ getTypeParameter(): Promise<TypeParameter>;
152
+ /** Get the constraint over which the mapped type iterates */
153
+ getConstraintType(): Promise<Type>;
154
+ /** Get the remapped property name type, if present */
155
+ getNameType(): Promise<Type | undefined>;
156
+ /** Get the property value template type */
157
+ getTemplateType(): Promise<Type>;
158
+ }
119
159
  /** Type references (ObjectFlags.Reference) — e.g. Array<string>, Map<K, V> */
120
160
  export interface TypeReference extends ObjectType {
121
161
  /** Get the generic target type (e.g. Array for Array<string>) */
122
- getTarget(): Promise<Type>;
162
+ getTarget(): Promise<GenericType>;
163
+ }
164
+ /** References to tuple types */
165
+ export interface TupleTypeReference extends TypeReference {
166
+ /** Get the tuple type that describes this reference's shape */
167
+ getTarget(): Promise<TupleType>;
123
168
  }
124
169
  /** Interface types — classes and interfaces (ObjectFlags.ClassOrInterface) */
125
170
  export interface InterfaceType extends TypeReference {
@@ -129,15 +174,24 @@ export interface InterfaceType extends TypeReference {
129
174
  getOuterTypeParameters(): Promise<readonly TypeParameter[]>;
130
175
  /** Get local type parameters declared on this interface/class */
131
176
  getLocalTypeParameters(): Promise<readonly TypeParameter[]>;
177
+ /** Get the synthetic `this` type of this interface/class */
178
+ getThisType(): Promise<TypeParameter | undefined>;
179
+ }
180
+ /** Generic types */
181
+ export interface GenericType extends InterfaceType, TypeReference {
132
182
  }
133
- /** Tuple types (ObjectFlags.Tuple) */
134
- export interface TupleType extends InterfaceType {
183
+ /** Tuple type targets (ObjectFlags.Tuple) */
184
+ export interface TupleType extends GenericType {
185
+ /** Get this tuple target */
186
+ getTarget(): Promise<TupleType>;
135
187
  /** Per-element flags (Required, Optional, Rest, Variadic) */
136
188
  readonly elementFlags: readonly ElementFlags[];
137
189
  /** Number of initial required or optional elements */
138
190
  readonly fixedLength: number;
139
191
  /** Whether the tuple is readonly */
140
192
  readonly readonly: boolean;
193
+ /** Declarations providing tuple element names */
194
+ readonly labeledElementDeclarations?: readonly (NodeHandle<NamedTupleMember | ParameterDeclaration> | undefined)[];
141
195
  }
142
196
  /** Union or intersection types (TypeFlags.Union | TypeFlags.Intersection) */
143
197
  export interface UnionOrIntersectionType extends Type {
@@ -150,10 +204,16 @@ export interface UnionType extends UnionOrIntersectionType {
150
204
  /** Intersection types (TypeFlags.Intersection) */
151
205
  export interface IntersectionType extends UnionOrIntersectionType {
152
206
  }
207
+ /** Structured types (TypeFlags.StructuredType) */
208
+ export type StructuredType = ObjectType | UnionType | IntersectionType;
153
209
  /** Type parameters (TypeFlags.TypeParameter) */
154
210
  export interface TypeParameter extends Type {
155
211
  /** True if this is the synthetic `this` type of an interface, class, or tuple */
156
212
  readonly isThisType?: boolean | undefined;
213
+ /** Get the constraint (the `T` in `<U extends T>`), or undefined if it has none */
214
+ getConstraint(): Promise<Type | undefined>;
215
+ /** Get the default type (the `T` in `<U = T>`), or undefined if it has none */
216
+ getDefault(): Promise<Type | undefined>;
157
217
  }
158
218
  /** Index types — keyof T (TypeFlags.Index) */
159
219
  export interface IndexType extends Type {
@@ -244,7 +304,7 @@ export interface IndexInfo {
244
304
  /** Whether the index signature is readonly */
245
305
  readonly isReadonly: boolean;
246
306
  /** The index signature declaration, if any */
247
- readonly declaration?: NodeHandle | undefined;
307
+ readonly declaration?: NodeHandle<IndexSignatureDeclaration> | undefined;
248
308
  }
249
309
  /**
250
310
  * A single JSDoc tag attached to a symbol — e.g. `@param`, `@returns`.
@@ -259,13 +319,13 @@ export interface CompletionEntryLabelDetails {
259
319
  detail?: string | undefined;
260
320
  description?: string | undefined;
261
321
  }
262
- /** Options for {@link Checker.getCompletionsAtPosition}. */
322
+ /** Options for {@link LanguageService.getCompletionsAtPosition}. */
263
323
  export interface CompletionOptions {
264
324
  triggerCharacter?: string | undefined;
265
325
  /** Include a `symbol` property on each completion entry. Only populated for symbol-based completions (not keywords or literals). */
266
326
  includeSymbol?: boolean | undefined;
267
327
  }
268
- /** A single completion item returned by {@link Checker.getCompletionsAtPosition}. */
328
+ /** A single completion item returned by {@link LanguageService.getCompletionsAtPosition}. */
269
329
  export interface CompletionEntry {
270
330
  readonly name: string;
271
331
  readonly kind?: CompletionItemKind | undefined;
@@ -277,34 +337,39 @@ export interface CompletionEntry {
277
337
  /** The symbol associated with this completion entry. Only set when `includeSymbol: true` is passed and a symbol is available. */
278
338
  readonly symbol?: Symbol | undefined;
279
339
  }
280
- /** The result of {@link Checker.getCompletionsAtPosition}. */
340
+ /** The result of {@link LanguageService.getCompletionsAtPosition}. */
281
341
  export interface CompletionInfo {
282
342
  readonly isIncomplete: boolean;
283
343
  readonly entries: readonly CompletionEntry[];
284
344
  }
285
- /**
286
- * A diagnostic message from the TypeScript compiler.
287
- */
288
- export interface Diagnostic {
289
- /** File name of the source file this diagnostic belongs to, if any */
290
- readonly fileName?: string | undefined;
291
- /** Start position of the diagnostic */
292
- readonly pos: number;
293
- /** End position of the diagnostic */
294
- readonly end: number;
295
- /** Diagnostic error code */
296
- readonly code: number;
297
- /** Diagnostic category (error, warning, suggestion, message) */
298
- readonly category: DiagnosticCategory;
299
- /** Localized diagnostic message text */
345
+ export interface FormatDiagnosticsHost {
346
+ getCurrentDirectory(): string;
347
+ getCanonicalFileName(fileName: string): string;
348
+ getNewLine(): string;
349
+ }
350
+ export interface EmitOutputFile {
300
351
  readonly text: string;
301
- /** Whether this diagnostic highlights unnecessary code */
302
- readonly reportsUnnecessary?: boolean | undefined;
303
- /** Whether this diagnostic highlights deprecated code */
304
- readonly reportsDeprecated?: boolean | undefined;
305
- /** Chained diagnostic messages */
306
- readonly messageChain?: readonly Diagnostic[] | undefined;
307
- /** Related diagnostic information */
308
- readonly relatedInformation?: readonly Diagnostic[] | undefined;
352
+ readonly sourceFileName?: RootedFilePath | undefined;
353
+ }
354
+ export interface EmitResult {
355
+ readonly emitSkipped: boolean;
356
+ readonly diagnostics: readonly Diagnostic[];
357
+ readonly emittedFiles: readonly RootedFilePath[];
358
+ /** Emitted files captured as a filesystem layer suitable for {@link Snapshot.update}. */
359
+ readonly fileSystem?: RequestFileSystem | undefined;
360
+ }
361
+ export interface EmitOutput {
362
+ readonly emitSkipped: boolean;
363
+ readonly diagnostics: readonly Diagnostic[];
364
+ readonly outputFiles: ReadonlyMap<RootedFilePath, EmitOutputFile>;
365
+ }
366
+ export interface ImportSymbolAction {
367
+ readonly kind: "importSymbol";
368
+ readonly symbol: Symbol;
369
+ readonly isValidTypeOnlyUseSite?: boolean | undefined;
370
+ }
371
+ export type ImportAdderAction = ImportSymbolAction;
372
+ export interface GetImportEditsForSymbolsOptions {
373
+ readonly isValidTypeOnlyUseSite?: boolean | undefined;
309
374
  }
310
375
  //# sourceMappingURL=types.d.ts.map