@tsc-rs/typescript 0.0.0-placeholder → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (555) hide show
  1. package/LICENSE +21 -0
  2. package/NOTICE.txt +599 -0
  3. package/README.md +111 -0
  4. package/bin/tsc +2 -0
  5. package/dist/api/async/api.d.ts +1041 -0
  6. package/dist/api/async/api.d.ts.map +1 -0
  7. package/dist/api/async/api.js +3143 -0
  8. package/dist/api/async/api.js.map +1 -0
  9. package/dist/api/async/client.d.ts +52 -0
  10. package/dist/api/async/client.d.ts.map +1 -0
  11. package/dist/api/async/client.js +365 -0
  12. package/dist/api/async/client.js.map +1 -0
  13. package/dist/api/async/types.d.ts +375 -0
  14. package/dist/api/async/types.d.ts.map +1 -0
  15. package/dist/api/async/types.js +2 -0
  16. package/dist/api/async/types.js.map +1 -0
  17. package/dist/api/compilerOptions.generated.d.ts +123 -0
  18. package/dist/api/compilerOptions.generated.d.ts.map +1 -0
  19. package/dist/api/compilerOptions.generated.js +8 -0
  20. package/dist/api/compilerOptions.generated.js.map +1 -0
  21. package/dist/api/diagnosticFormatter.d.ts +9 -0
  22. package/dist/api/diagnosticFormatter.d.ts.map +1 -0
  23. package/dist/api/diagnosticFormatter.js +169 -0
  24. package/dist/api/diagnosticFormatter.js.map +1 -0
  25. package/dist/api/fs.d.ts +78 -0
  26. package/dist/api/fs.d.ts.map +1 -0
  27. package/dist/api/fs.js +70 -0
  28. package/dist/api/fs.js.map +1 -0
  29. package/dist/api/fsCallbacks.d.ts +27 -0
  30. package/dist/api/fsCallbacks.d.ts.map +1 -0
  31. package/dist/api/fsCallbacks.js +111 -0
  32. package/dist/api/fsCallbacks.js.map +1 -0
  33. package/dist/api/node/encoder.d.ts +18 -0
  34. package/dist/api/node/encoder.d.ts.map +1 -0
  35. package/dist/api/node/encoder.generated.d.ts +5 -0
  36. package/dist/api/node/encoder.generated.d.ts.map +1 -0
  37. package/dist/api/node/encoder.generated.js +74 -0
  38. package/dist/api/node/encoder.generated.js.map +1 -0
  39. package/dist/api/node/encoder.js +292 -0
  40. package/dist/api/node/encoder.js.map +1 -0
  41. package/dist/api/node/msgpack.d.ts +32 -0
  42. package/dist/api/node/msgpack.d.ts.map +1 -0
  43. package/dist/api/node/msgpack.js +212 -0
  44. package/dist/api/node/msgpack.js.map +1 -0
  45. package/dist/api/node/node.d.ts +102 -0
  46. package/dist/api/node/node.d.ts.map +1 -0
  47. package/dist/api/node/node.generated.d.ts +189 -0
  48. package/dist/api/node/node.generated.d.ts.map +1 -0
  49. package/dist/api/node/node.generated.js +884 -0
  50. package/dist/api/node/node.generated.js.map +1 -0
  51. package/dist/api/node/node.infrastructure.d.ts +64 -0
  52. package/dist/api/node/node.infrastructure.d.ts.map +1 -0
  53. package/dist/api/node/node.infrastructure.js +102 -0
  54. package/dist/api/node/node.infrastructure.js.map +1 -0
  55. package/dist/api/node/node.js +454 -0
  56. package/dist/api/node/node.js.map +1 -0
  57. package/dist/api/node/protocol.d.ts +32 -0
  58. package/dist/api/node/protocol.d.ts.map +1 -0
  59. package/dist/api/node/protocol.generated.d.ts +4 -0
  60. package/dist/api/node/protocol.generated.d.ts.map +1 -0
  61. package/dist/api/node/protocol.generated.js +241 -0
  62. package/dist/api/node/protocol.generated.js.map +1 -0
  63. package/dist/api/node/protocol.js +33 -0
  64. package/dist/api/node/protocol.js.map +1 -0
  65. package/dist/api/node/wtf8.d.ts +10 -0
  66. package/dist/api/node/wtf8.d.ts.map +1 -0
  67. package/dist/api/node/wtf8.js +130 -0
  68. package/dist/api/node/wtf8.js.map +1 -0
  69. package/dist/api/options.d.ts +41 -0
  70. package/dist/api/options.d.ts.map +1 -0
  71. package/dist/api/options.js +32 -0
  72. package/dist/api/options.js.map +1 -0
  73. package/dist/api/path.d.ts +149 -0
  74. package/dist/api/path.d.ts.map +1 -0
  75. package/dist/api/path.js +884 -0
  76. package/dist/api/path.js.map +1 -0
  77. package/dist/api/prepareCompilerOptions.generated.d.ts +5 -0
  78. package/dist/api/prepareCompilerOptions.generated.d.ts.map +1 -0
  79. package/dist/api/prepareCompilerOptions.generated.js +24 -0
  80. package/dist/api/prepareCompilerOptions.generated.js.map +1 -0
  81. package/dist/api/proto.d.ts +95 -0
  82. package/dist/api/proto.d.ts.map +1 -0
  83. package/dist/api/proto.generated.d.ts +1423 -0
  84. package/dist/api/proto.generated.d.ts.map +1 -0
  85. package/dist/api/proto.generated.js +21 -0
  86. package/dist/api/proto.generated.js.map +1 -0
  87. package/dist/api/proto.js +65 -0
  88. package/dist/api/proto.js.map +1 -0
  89. package/dist/api/sourceFileCache.d.ts +110 -0
  90. package/dist/api/sourceFileCache.d.ts.map +1 -0
  91. package/dist/api/sourceFileCache.js +300 -0
  92. package/dist/api/sourceFileCache.js.map +1 -0
  93. package/dist/api/sync/api.d.ts +1729 -0
  94. package/dist/api/sync/api.d.ts.map +1 -0
  95. package/dist/api/sync/api.js +5484 -0
  96. package/dist/api/sync/api.js.map +1 -0
  97. package/dist/api/sync/client.d.ts +34 -0
  98. package/dist/api/sync/client.d.ts.map +1 -0
  99. package/dist/api/sync/client.js +148 -0
  100. package/dist/api/sync/client.js.map +1 -0
  101. package/dist/api/sync/generatorSupport.d.ts +32 -0
  102. package/dist/api/sync/generatorSupport.d.ts.map +1 -0
  103. package/dist/api/sync/generatorSupport.js +323 -0
  104. package/dist/api/sync/generatorSupport.js.map +1 -0
  105. package/dist/api/sync/types.d.ts +502 -0
  106. package/dist/api/sync/types.d.ts.map +1 -0
  107. package/dist/api/sync/types.js +2 -0
  108. package/dist/api/sync/types.js.map +1 -0
  109. package/dist/api/syncChannel.d.ts +115 -0
  110. package/dist/api/syncChannel.d.ts.map +1 -0
  111. package/dist/api/syncChannel.js +511 -0
  112. package/dist/api/syncChannel.js.map +1 -0
  113. package/dist/api/timing.d.ts +175 -0
  114. package/dist/api/timing.d.ts.map +1 -0
  115. package/dist/api/timing.js +149 -0
  116. package/dist/api/timing.js.map +1 -0
  117. package/dist/api/typedPaths.d.ts +3 -0
  118. package/dist/api/typedPaths.d.ts.map +1 -0
  119. package/dist/api/typedPaths.js +2 -0
  120. package/dist/api/typedPaths.js.map +1 -0
  121. package/dist/api/userPreferences.generated.d.ts +195 -0
  122. package/dist/api/userPreferences.generated.d.ts.map +1 -0
  123. package/dist/api/userPreferences.generated.js +3 -0
  124. package/dist/api/userPreferences.generated.js.map +1 -0
  125. package/dist/ast/ast.d.ts +186 -0
  126. package/dist/ast/ast.d.ts.map +1 -0
  127. package/dist/ast/ast.generated.d.ts +1167 -0
  128. package/dist/ast/ast.generated.d.ts.map +1 -0
  129. package/dist/ast/ast.generated.js +4 -0
  130. package/dist/ast/ast.generated.js.map +1 -0
  131. package/dist/ast/ast.js +7 -0
  132. package/dist/ast/ast.js.map +1 -0
  133. package/dist/ast/astnav.d.ts +22 -0
  134. package/dist/ast/astnav.d.ts.map +1 -0
  135. package/dist/ast/astnav.js +741 -0
  136. package/dist/ast/astnav.js.map +1 -0
  137. package/dist/ast/clone.d.ts +16 -0
  138. package/dist/ast/clone.d.ts.map +1 -0
  139. package/dist/ast/clone.js +104 -0
  140. package/dist/ast/clone.js.map +1 -0
  141. package/dist/ast/factory.generated.d.ts +533 -0
  142. package/dist/ast/factory.generated.d.ts.map +1 -0
  143. package/dist/ast/factory.generated.js +5750 -0
  144. package/dist/ast/factory.generated.js.map +1 -0
  145. package/dist/ast/index.d.ts +25 -0
  146. package/dist/ast/index.d.ts.map +1 -0
  147. package/dist/ast/index.js +25 -0
  148. package/dist/ast/index.js.map +1 -0
  149. package/dist/ast/is.d.ts +36 -0
  150. package/dist/ast/is.d.ts.map +1 -0
  151. package/dist/ast/is.generated.d.ts +1217 -0
  152. package/dist/ast/is.generated.d.ts.map +1 -0
  153. package/dist/ast/is.generated.js +1400 -0
  154. package/dist/ast/is.generated.js.map +1 -0
  155. package/dist/ast/is.js +456 -0
  156. package/dist/ast/is.js.map +1 -0
  157. package/dist/ast/jsdoc.d.ts +12 -0
  158. package/dist/ast/jsdoc.d.ts.map +1 -0
  159. package/dist/ast/jsdoc.js +208 -0
  160. package/dist/ast/jsdoc.js.map +1 -0
  161. package/dist/ast/modifiers.d.ts +4 -0
  162. package/dist/ast/modifiers.d.ts.map +1 -0
  163. package/dist/ast/modifiers.js +41 -0
  164. package/dist/ast/modifiers.js.map +1 -0
  165. package/dist/ast/scanner.d.ts +97 -0
  166. package/dist/ast/scanner.d.ts.map +1 -0
  167. package/dist/ast/scanner.js +2231 -0
  168. package/dist/ast/scanner.js.map +1 -0
  169. package/dist/ast/spanMap.d.ts +88 -0
  170. package/dist/ast/spanMap.d.ts.map +1 -0
  171. package/dist/ast/spanMap.js +417 -0
  172. package/dist/ast/spanMap.js.map +1 -0
  173. package/dist/ast/utils.d.ts +30 -0
  174. package/dist/ast/utils.d.ts.map +1 -0
  175. package/dist/ast/utils.js +318 -0
  176. package/dist/ast/utils.js.map +1 -0
  177. package/dist/ast/visitor.d.ts +16 -0
  178. package/dist/ast/visitor.d.ts.map +1 -0
  179. package/dist/ast/visitor.generated.d.ts +50 -0
  180. package/dist/ast/visitor.generated.d.ts.map +1 -0
  181. package/dist/ast/visitor.generated.js +979 -0
  182. package/dist/ast/visitor.generated.js.map +1 -0
  183. package/dist/ast/visitor.js +87 -0
  184. package/dist/ast/visitor.js.map +1 -0
  185. package/dist/enums/caseSensitivity.d.ts +2 -0
  186. package/dist/enums/caseSensitivity.d.ts.map +1 -0
  187. package/dist/enums/caseSensitivity.enum.d.ts +5 -0
  188. package/dist/enums/caseSensitivity.enum.d.ts.map +1 -0
  189. package/dist/enums/caseSensitivity.enum.js +7 -0
  190. package/dist/enums/caseSensitivity.enum.js.map +1 -0
  191. package/dist/enums/caseSensitivity.js +7 -0
  192. package/dist/enums/caseSensitivity.js.map +1 -0
  193. package/dist/enums/characterCodes.d.ts +2 -0
  194. package/dist/enums/characterCodes.d.ts.map +1 -0
  195. package/dist/enums/characterCodes.enum.d.ts +129 -0
  196. package/dist/enums/characterCodes.enum.d.ts.map +1 -0
  197. package/dist/enums/characterCodes.enum.js +132 -0
  198. package/dist/enums/characterCodes.enum.js.map +1 -0
  199. package/dist/enums/characterCodes.js +130 -0
  200. package/dist/enums/characterCodes.js.map +1 -0
  201. package/dist/enums/checkFlags.d.ts +2 -0
  202. package/dist/enums/checkFlags.d.ts.map +1 -0
  203. package/dist/enums/checkFlags.enum.d.ts +34 -0
  204. package/dist/enums/checkFlags.enum.d.ts.map +1 -0
  205. package/dist/enums/checkFlags.enum.js +36 -0
  206. package/dist/enums/checkFlags.enum.js.map +1 -0
  207. package/dist/enums/checkFlags.js +36 -0
  208. package/dist/enums/checkFlags.js.map +1 -0
  209. package/dist/enums/commentDirectiveType.d.ts +2 -0
  210. package/dist/enums/commentDirectiveType.d.ts.map +1 -0
  211. package/dist/enums/commentDirectiveType.enum.d.ts +5 -0
  212. package/dist/enums/commentDirectiveType.enum.d.ts.map +1 -0
  213. package/dist/enums/commentDirectiveType.enum.js +6 -0
  214. package/dist/enums/commentDirectiveType.enum.js.map +1 -0
  215. package/dist/enums/commentDirectiveType.js +6 -0
  216. package/dist/enums/commentDirectiveType.js.map +1 -0
  217. package/dist/enums/completionItemKind.d.ts +2 -0
  218. package/dist/enums/completionItemKind.d.ts.map +1 -0
  219. package/dist/enums/completionItemKind.enum.d.ts +28 -0
  220. package/dist/enums/completionItemKind.enum.d.ts.map +1 -0
  221. package/dist/enums/completionItemKind.enum.js +30 -0
  222. package/dist/enums/completionItemKind.enum.js.map +1 -0
  223. package/dist/enums/completionItemKind.js +30 -0
  224. package/dist/enums/completionItemKind.js.map +1 -0
  225. package/dist/enums/diagnosticCategory.d.ts +2 -0
  226. package/dist/enums/diagnosticCategory.d.ts.map +1 -0
  227. package/dist/enums/diagnosticCategory.enum.d.ts +7 -0
  228. package/dist/enums/diagnosticCategory.enum.d.ts.map +1 -0
  229. package/dist/enums/diagnosticCategory.enum.js +9 -0
  230. package/dist/enums/diagnosticCategory.enum.js.map +1 -0
  231. package/dist/enums/diagnosticCategory.js +9 -0
  232. package/dist/enums/diagnosticCategory.js.map +1 -0
  233. package/dist/enums/diagnosticDirectivePolicy.d.ts +2 -0
  234. package/dist/enums/diagnosticDirectivePolicy.d.ts.map +1 -0
  235. package/dist/enums/diagnosticDirectivePolicy.enum.d.ts +5 -0
  236. package/dist/enums/diagnosticDirectivePolicy.enum.d.ts.map +1 -0
  237. package/dist/enums/diagnosticDirectivePolicy.enum.js +7 -0
  238. package/dist/enums/diagnosticDirectivePolicy.enum.js.map +1 -0
  239. package/dist/enums/diagnosticDirectivePolicy.js +7 -0
  240. package/dist/enums/diagnosticDirectivePolicy.js.map +1 -0
  241. package/dist/enums/elementFlags.d.ts +2 -0
  242. package/dist/enums/elementFlags.d.ts.map +1 -0
  243. package/dist/enums/elementFlags.enum.d.ts +12 -0
  244. package/dist/enums/elementFlags.enum.d.ts.map +1 -0
  245. package/dist/enums/elementFlags.enum.js +14 -0
  246. package/dist/enums/elementFlags.enum.js.map +1 -0
  247. package/dist/enums/elementFlags.js +14 -0
  248. package/dist/enums/elementFlags.js.map +1 -0
  249. package/dist/enums/emitOnly.d.ts +2 -0
  250. package/dist/enums/emitOnly.d.ts.map +1 -0
  251. package/dist/enums/emitOnly.enum.d.ts +6 -0
  252. package/dist/enums/emitOnly.enum.d.ts.map +1 -0
  253. package/dist/enums/emitOnly.enum.js +8 -0
  254. package/dist/enums/emitOnly.enum.js.map +1 -0
  255. package/dist/enums/emitOnly.js +8 -0
  256. package/dist/enums/emitOnly.js.map +1 -0
  257. package/dist/enums/indexKind.d.ts +2 -0
  258. package/dist/enums/indexKind.d.ts.map +1 -0
  259. package/dist/enums/indexKind.enum.d.ts +5 -0
  260. package/dist/enums/indexKind.enum.d.ts.map +1 -0
  261. package/dist/enums/indexKind.enum.js +7 -0
  262. package/dist/enums/indexKind.enum.js.map +1 -0
  263. package/dist/enums/indexKind.js +7 -0
  264. package/dist/enums/indexKind.js.map +1 -0
  265. package/dist/enums/internalSymbolName.d.ts +2 -0
  266. package/dist/enums/internalSymbolName.d.ts.map +1 -0
  267. package/dist/enums/internalSymbolName.enum.d.ts +23 -0
  268. package/dist/enums/internalSymbolName.enum.d.ts.map +1 -0
  269. package/dist/enums/internalSymbolName.enum.js +25 -0
  270. package/dist/enums/internalSymbolName.enum.js.map +1 -0
  271. package/dist/enums/internalSymbolName.js +25 -0
  272. package/dist/enums/internalSymbolName.js.map +1 -0
  273. package/dist/enums/jsDeclarationKind.d.ts +2 -0
  274. package/dist/enums/jsDeclarationKind.d.ts.map +1 -0
  275. package/dist/enums/jsDeclarationKind.enum.d.ts +10 -0
  276. package/dist/enums/jsDeclarationKind.enum.d.ts.map +1 -0
  277. package/dist/enums/jsDeclarationKind.enum.js +12 -0
  278. package/dist/enums/jsDeclarationKind.enum.js.map +1 -0
  279. package/dist/enums/jsDeclarationKind.js +12 -0
  280. package/dist/enums/jsDeclarationKind.js.map +1 -0
  281. package/dist/enums/jsxEmit.d.ts +2 -0
  282. package/dist/enums/jsxEmit.d.ts.map +1 -0
  283. package/dist/enums/jsxEmit.enum.d.ts +9 -0
  284. package/dist/enums/jsxEmit.enum.d.ts.map +1 -0
  285. package/dist/enums/jsxEmit.enum.js +11 -0
  286. package/dist/enums/jsxEmit.enum.js.map +1 -0
  287. package/dist/enums/jsxEmit.js +11 -0
  288. package/dist/enums/jsxEmit.js.map +1 -0
  289. package/dist/enums/languageVariant.d.ts +2 -0
  290. package/dist/enums/languageVariant.d.ts.map +1 -0
  291. package/dist/enums/languageVariant.enum.d.ts +5 -0
  292. package/dist/enums/languageVariant.enum.d.ts.map +1 -0
  293. package/dist/enums/languageVariant.enum.js +6 -0
  294. package/dist/enums/languageVariant.enum.js.map +1 -0
  295. package/dist/enums/languageVariant.js +6 -0
  296. package/dist/enums/languageVariant.js.map +1 -0
  297. package/dist/enums/modifierFlags.d.ts +2 -0
  298. package/dist/enums/modifierFlags.d.ts.map +1 -0
  299. package/dist/enums/modifierFlags.enum.d.ts +42 -0
  300. package/dist/enums/modifierFlags.enum.d.ts.map +1 -0
  301. package/dist/enums/modifierFlags.enum.js +44 -0
  302. package/dist/enums/modifierFlags.enum.js.map +1 -0
  303. package/dist/enums/modifierFlags.js +44 -0
  304. package/dist/enums/modifierFlags.js.map +1 -0
  305. package/dist/enums/moduleDetectionKind.d.ts +2 -0
  306. package/dist/enums/moduleDetectionKind.d.ts.map +1 -0
  307. package/dist/enums/moduleDetectionKind.enum.d.ts +7 -0
  308. package/dist/enums/moduleDetectionKind.enum.d.ts.map +1 -0
  309. package/dist/enums/moduleDetectionKind.enum.js +9 -0
  310. package/dist/enums/moduleDetectionKind.enum.js.map +1 -0
  311. package/dist/enums/moduleDetectionKind.js +9 -0
  312. package/dist/enums/moduleDetectionKind.js.map +1 -0
  313. package/dist/enums/moduleKind.d.ts +2 -0
  314. package/dist/enums/moduleKind.d.ts.map +1 -0
  315. package/dist/enums/moduleKind.enum.d.ts +17 -0
  316. package/dist/enums/moduleKind.enum.d.ts.map +1 -0
  317. package/dist/enums/moduleKind.enum.js +19 -0
  318. package/dist/enums/moduleKind.enum.js.map +1 -0
  319. package/dist/enums/moduleKind.js +19 -0
  320. package/dist/enums/moduleKind.js.map +1 -0
  321. package/dist/enums/moduleResolutionKind.d.ts +2 -0
  322. package/dist/enums/moduleResolutionKind.d.ts.map +1 -0
  323. package/dist/enums/moduleResolutionKind.enum.d.ts +9 -0
  324. package/dist/enums/moduleResolutionKind.enum.d.ts.map +1 -0
  325. package/dist/enums/moduleResolutionKind.enum.js +11 -0
  326. package/dist/enums/moduleResolutionKind.enum.js.map +1 -0
  327. package/dist/enums/moduleResolutionKind.js +11 -0
  328. package/dist/enums/moduleResolutionKind.js.map +1 -0
  329. package/dist/enums/newLineKind.d.ts +2 -0
  330. package/dist/enums/newLineKind.d.ts.map +1 -0
  331. package/dist/enums/newLineKind.enum.d.ts +6 -0
  332. package/dist/enums/newLineKind.enum.d.ts.map +1 -0
  333. package/dist/enums/newLineKind.enum.js +8 -0
  334. package/dist/enums/newLineKind.enum.js.map +1 -0
  335. package/dist/enums/newLineKind.js +8 -0
  336. package/dist/enums/newLineKind.js.map +1 -0
  337. package/dist/enums/nodeBuilderFlags.d.ts +2 -0
  338. package/dist/enums/nodeBuilderFlags.d.ts.map +1 -0
  339. package/dist/enums/nodeBuilderFlags.enum.d.ts +36 -0
  340. package/dist/enums/nodeBuilderFlags.enum.d.ts.map +1 -0
  341. package/dist/enums/nodeBuilderFlags.enum.js +38 -0
  342. package/dist/enums/nodeBuilderFlags.enum.js.map +1 -0
  343. package/dist/enums/nodeBuilderFlags.js +38 -0
  344. package/dist/enums/nodeBuilderFlags.js.map +1 -0
  345. package/dist/enums/nodeFlags.d.ts +2 -0
  346. package/dist/enums/nodeFlags.d.ts.map +1 -0
  347. package/dist/enums/nodeFlags.enum.d.ts +44 -0
  348. package/dist/enums/nodeFlags.enum.d.ts.map +1 -0
  349. package/dist/enums/nodeFlags.enum.js +46 -0
  350. package/dist/enums/nodeFlags.enum.js.map +1 -0
  351. package/dist/enums/nodeFlags.js +46 -0
  352. package/dist/enums/nodeFlags.js.map +1 -0
  353. package/dist/enums/objectFlags.d.ts +2 -0
  354. package/dist/enums/objectFlags.d.ts.map +1 -0
  355. package/dist/enums/objectFlags.enum.d.ts +51 -0
  356. package/dist/enums/objectFlags.enum.d.ts.map +1 -0
  357. package/dist/enums/objectFlags.enum.js +53 -0
  358. package/dist/enums/objectFlags.enum.js.map +1 -0
  359. package/dist/enums/objectFlags.js +53 -0
  360. package/dist/enums/objectFlags.js.map +1 -0
  361. package/dist/enums/outerExpressionKinds.d.ts +2 -0
  362. package/dist/enums/outerExpressionKinds.d.ts.map +1 -0
  363. package/dist/enums/outerExpressionKinds.enum.d.ts +16 -0
  364. package/dist/enums/outerExpressionKinds.enum.d.ts.map +1 -0
  365. package/dist/enums/outerExpressionKinds.enum.js +18 -0
  366. package/dist/enums/outerExpressionKinds.enum.js.map +1 -0
  367. package/dist/enums/outerExpressionKinds.js +18 -0
  368. package/dist/enums/outerExpressionKinds.js.map +1 -0
  369. package/dist/enums/regularExpressionFlags.d.ts +2 -0
  370. package/dist/enums/regularExpressionFlags.d.ts.map +1 -0
  371. package/dist/enums/regularExpressionFlags.enum.d.ts +13 -0
  372. package/dist/enums/regularExpressionFlags.enum.d.ts.map +1 -0
  373. package/dist/enums/regularExpressionFlags.enum.js +14 -0
  374. package/dist/enums/regularExpressionFlags.enum.js.map +1 -0
  375. package/dist/enums/regularExpressionFlags.js +14 -0
  376. package/dist/enums/regularExpressionFlags.js.map +1 -0
  377. package/dist/enums/scriptKind.d.ts +2 -0
  378. package/dist/enums/scriptKind.d.ts.map +1 -0
  379. package/dist/enums/scriptKind.enum.d.ts +9 -0
  380. package/dist/enums/scriptKind.enum.d.ts.map +1 -0
  381. package/dist/enums/scriptKind.enum.js +11 -0
  382. package/dist/enums/scriptKind.enum.js.map +1 -0
  383. package/dist/enums/scriptKind.js +11 -0
  384. package/dist/enums/scriptKind.js.map +1 -0
  385. package/dist/enums/scriptTarget.d.ts +2 -0
  386. package/dist/enums/scriptTarget.d.ts.map +1 -0
  387. package/dist/enums/scriptTarget.enum.d.ts +18 -0
  388. package/dist/enums/scriptTarget.enum.d.ts.map +1 -0
  389. package/dist/enums/scriptTarget.enum.js +20 -0
  390. package/dist/enums/scriptTarget.enum.js.map +1 -0
  391. package/dist/enums/scriptTarget.js +20 -0
  392. package/dist/enums/scriptTarget.js.map +1 -0
  393. package/dist/enums/signatureFlags.d.ts +2 -0
  394. package/dist/enums/signatureFlags.d.ts.map +1 -0
  395. package/dist/enums/signatureFlags.enum.d.ts +15 -0
  396. package/dist/enums/signatureFlags.enum.d.ts.map +1 -0
  397. package/dist/enums/signatureFlags.enum.js +17 -0
  398. package/dist/enums/signatureFlags.enum.js.map +1 -0
  399. package/dist/enums/signatureFlags.js +17 -0
  400. package/dist/enums/signatureFlags.js.map +1 -0
  401. package/dist/enums/signatureKind.d.ts +2 -0
  402. package/dist/enums/signatureKind.d.ts.map +1 -0
  403. package/dist/enums/signatureKind.enum.d.ts +5 -0
  404. package/dist/enums/signatureKind.enum.d.ts.map +1 -0
  405. package/dist/enums/signatureKind.enum.js +7 -0
  406. package/dist/enums/signatureKind.enum.js.map +1 -0
  407. package/dist/enums/signatureKind.js +7 -0
  408. package/dist/enums/signatureKind.js.map +1 -0
  409. package/dist/enums/spanMapFeature.d.ts +2 -0
  410. package/dist/enums/spanMapFeature.d.ts.map +1 -0
  411. package/dist/enums/spanMapFeature.enum.d.ts +25 -0
  412. package/dist/enums/spanMapFeature.enum.d.ts.map +1 -0
  413. package/dist/enums/spanMapFeature.enum.js +27 -0
  414. package/dist/enums/spanMapFeature.enum.js.map +1 -0
  415. package/dist/enums/spanMapFeature.js +27 -0
  416. package/dist/enums/spanMapFeature.js.map +1 -0
  417. package/dist/enums/spanMapFidelity.d.ts +2 -0
  418. package/dist/enums/spanMapFidelity.d.ts.map +1 -0
  419. package/dist/enums/spanMapFidelity.enum.d.ts +7 -0
  420. package/dist/enums/spanMapFidelity.enum.d.ts.map +1 -0
  421. package/dist/enums/spanMapFidelity.enum.js +9 -0
  422. package/dist/enums/spanMapFidelity.enum.js.map +1 -0
  423. package/dist/enums/spanMapFidelity.js +9 -0
  424. package/dist/enums/spanMapFidelity.js.map +1 -0
  425. package/dist/enums/spanMapKind.d.ts +2 -0
  426. package/dist/enums/spanMapKind.d.ts.map +1 -0
  427. package/dist/enums/spanMapKind.enum.d.ts +6 -0
  428. package/dist/enums/spanMapKind.enum.d.ts.map +1 -0
  429. package/dist/enums/spanMapKind.enum.js +8 -0
  430. package/dist/enums/spanMapKind.enum.js.map +1 -0
  431. package/dist/enums/spanMapKind.js +8 -0
  432. package/dist/enums/spanMapKind.js.map +1 -0
  433. package/dist/enums/symbolFlags.d.ts +2 -0
  434. package/dist/enums/symbolFlags.d.ts.map +1 -0
  435. package/dist/enums/symbolFlags.enum.d.ts +70 -0
  436. package/dist/enums/symbolFlags.enum.d.ts.map +1 -0
  437. package/dist/enums/symbolFlags.enum.js +72 -0
  438. package/dist/enums/symbolFlags.enum.js.map +1 -0
  439. package/dist/enums/symbolFlags.js +72 -0
  440. package/dist/enums/symbolFlags.js.map +1 -0
  441. package/dist/enums/symbolOwnerKind.d.ts +2 -0
  442. package/dist/enums/symbolOwnerKind.d.ts.map +1 -0
  443. package/dist/enums/symbolOwnerKind.enum.d.ts +5 -0
  444. package/dist/enums/symbolOwnerKind.enum.d.ts.map +1 -0
  445. package/dist/enums/symbolOwnerKind.enum.js +7 -0
  446. package/dist/enums/symbolOwnerKind.enum.js.map +1 -0
  447. package/dist/enums/symbolOwnerKind.js +7 -0
  448. package/dist/enums/symbolOwnerKind.js.map +1 -0
  449. package/dist/enums/syntaxKind.d.ts +2 -0
  450. package/dist/enums/syntaxKind.d.ts.map +1 -0
  451. package/dist/enums/syntaxKind.enum.d.ts +390 -0
  452. package/dist/enums/syntaxKind.enum.d.ts.map +1 -0
  453. package/dist/enums/syntaxKind.enum.js +392 -0
  454. package/dist/enums/syntaxKind.enum.js.map +1 -0
  455. package/dist/enums/syntaxKind.js +392 -0
  456. package/dist/enums/syntaxKind.js.map +1 -0
  457. package/dist/enums/tokenFlags.d.ts +2 -0
  458. package/dist/enums/tokenFlags.d.ts.map +1 -0
  459. package/dist/enums/tokenFlags.enum.d.ts +30 -0
  460. package/dist/enums/tokenFlags.enum.d.ts.map +1 -0
  461. package/dist/enums/tokenFlags.enum.js +32 -0
  462. package/dist/enums/tokenFlags.enum.js.map +1 -0
  463. package/dist/enums/tokenFlags.js +32 -0
  464. package/dist/enums/tokenFlags.js.map +1 -0
  465. package/dist/enums/typeFlags.d.ts +2 -0
  466. package/dist/enums/typeFlags.d.ts.map +1 -0
  467. package/dist/enums/typeFlags.enum.d.ts +76 -0
  468. package/dist/enums/typeFlags.enum.d.ts.map +1 -0
  469. package/dist/enums/typeFlags.enum.js +78 -0
  470. package/dist/enums/typeFlags.enum.js.map +1 -0
  471. package/dist/enums/typeFlags.js +78 -0
  472. package/dist/enums/typeFlags.js.map +1 -0
  473. package/dist/enums/typeFormatFlags.d.ts +2 -0
  474. package/dist/enums/typeFormatFlags.d.ts.map +1 -0
  475. package/dist/enums/typeFormatFlags.enum.d.ts +29 -0
  476. package/dist/enums/typeFormatFlags.enum.d.ts.map +1 -0
  477. package/dist/enums/typeFormatFlags.enum.js +31 -0
  478. package/dist/enums/typeFormatFlags.enum.js.map +1 -0
  479. package/dist/enums/typeFormatFlags.js +31 -0
  480. package/dist/enums/typeFormatFlags.js.map +1 -0
  481. package/dist/enums/typePredicateKind.d.ts +2 -0
  482. package/dist/enums/typePredicateKind.d.ts.map +1 -0
  483. package/dist/enums/typePredicateKind.enum.d.ts +7 -0
  484. package/dist/enums/typePredicateKind.enum.d.ts.map +1 -0
  485. package/dist/enums/typePredicateKind.enum.js +9 -0
  486. package/dist/enums/typePredicateKind.enum.js.map +1 -0
  487. package/dist/enums/typePredicateKind.js +9 -0
  488. package/dist/enums/typePredicateKind.js.map +1 -0
  489. package/dist/internal/utils.d.ts +23 -0
  490. package/dist/internal/utils.d.ts.map +1 -0
  491. package/dist/internal/utils.js +25 -0
  492. package/dist/internal/utils.js.map +1 -0
  493. package/dist/vscode/extensionApi.d.ts +100 -0
  494. package/dist/vscode/extensionApi.d.ts.map +1 -0
  495. package/dist/vscode/extensionApi.js +2 -0
  496. package/dist/vscode/extensionApi.js.map +1 -0
  497. package/dist/vscode/moduleLoader.d.ts +14 -0
  498. package/dist/vscode/moduleLoader.d.ts.map +1 -0
  499. package/dist/vscode/moduleLoader.js +36 -0
  500. package/dist/vscode/moduleLoader.js.map +1 -0
  501. package/dist/vscode/protocol.generated.d.ts +2886 -0
  502. package/dist/vscode/protocol.generated.d.ts.map +1 -0
  503. package/dist/vscode/protocol.generated.js +4 -0
  504. package/dist/vscode/protocol.generated.js.map +1 -0
  505. package/lib/getExePath.d.ts +2 -0
  506. package/lib/getExePath.js +70 -0
  507. package/lib/install.js +108 -0
  508. package/lib/tsc.js +28 -0
  509. package/lib/version.cjs +5 -0
  510. package/lib/version.d.cts +2 -0
  511. package/package.json +79 -6
  512. package/schemas/jsconfig.schema.json +2207 -0
  513. package/schemas/tsconfig.schema.json +2206 -0
  514. package/vendor/vscode-jsonrpc/License.txt +11 -0
  515. package/vendor/vscode-jsonrpc/README.md +54 -0
  516. package/vendor/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
  517. package/vendor/vscode-jsonrpc/lib/browser/main.js +83 -0
  518. package/vendor/vscode-jsonrpc/lib/browser/ril.d.ts +22 -0
  519. package/vendor/vscode-jsonrpc/lib/browser/ril.js +210 -0
  520. package/vendor/vscode-jsonrpc/lib/common/api.d.ts +14 -0
  521. package/vendor/vscode-jsonrpc/lib/common/api.js +87 -0
  522. package/vendor/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
  523. package/vendor/vscode-jsonrpc/lib/common/cancellation.js +132 -0
  524. package/vendor/vscode-jsonrpc/lib/common/connection.d.ts +367 -0
  525. package/vendor/vscode-jsonrpc/lib/common/connection.js +1271 -0
  526. package/vendor/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
  527. package/vendor/vscode-jsonrpc/lib/common/disposable.js +16 -0
  528. package/vendor/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
  529. package/vendor/vscode-jsonrpc/lib/common/encoding.js +70 -0
  530. package/vendor/vscode-jsonrpc/lib/common/events.d.ts +39 -0
  531. package/vendor/vscode-jsonrpc/lib/common/events.js +135 -0
  532. package/vendor/vscode-jsonrpc/lib/common/is.d.ts +7 -0
  533. package/vendor/vscode-jsonrpc/lib/common/is.js +34 -0
  534. package/vendor/vscode-jsonrpc/lib/common/linkedMap.d.ts +55 -0
  535. package/vendor/vscode-jsonrpc/lib/common/linkedMap.js +412 -0
  536. package/vendor/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
  537. package/vendor/vscode-jsonrpc/lib/common/messageBuffer.js +155 -0
  538. package/vendor/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
  539. package/vendor/vscode-jsonrpc/lib/common/messageReader.js +246 -0
  540. package/vendor/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
  541. package/vendor/vscode-jsonrpc/lib/common/messageWriter.js +157 -0
  542. package/vendor/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
  543. package/vendor/vscode-jsonrpc/lib/common/messages.js +436 -0
  544. package/vendor/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
  545. package/vendor/vscode-jsonrpc/lib/common/ral.js +23 -0
  546. package/vendor/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
  547. package/vendor/vscode-jsonrpc/lib/common/semaphore.js +74 -0
  548. package/vendor/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
  549. package/vendor/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +77 -0
  550. package/vendor/vscode-jsonrpc/lib/node/main.d.ts +58 -0
  551. package/vendor/vscode-jsonrpc/lib/node/main.js +289 -0
  552. package/vendor/vscode-jsonrpc/lib/node/ril.d.ts +12 -0
  553. package/vendor/vscode-jsonrpc/lib/node/ril.js +163 -0
  554. package/vendor/vscode-jsonrpc/package.json +54 -0
  555. package/vendor/vscode-jsonrpc/typings/thenable.d.ts +5 -0
@@ -0,0 +1,318 @@
1
+ import { CharacterCodes } from "#enums/characterCodes";
2
+ import { JSDeclarationKind } from "#enums/jsDeclarationKind";
3
+ import { ModifierFlags } from "#enums/modifierFlags";
4
+ import { NodeFlags } from "#enums/nodeFlags";
5
+ import { OuterExpressionKinds } from "#enums/outerExpressionKinds";
6
+ import { SyntaxKind } from "#enums/syntaxKind";
7
+ import { isAccessExpression, isIdentifier, isNumericLiteral, isStringLiteralLikeNode, } from "./is.generated.js";
8
+ import { skipOuterExpressions } from "./is.js";
9
+ import { modifierToFlag } from "./modifiers.js";
10
+ let syntaxKindNames;
11
+ function getSyntaxKindNames() {
12
+ if (!syntaxKindNames) {
13
+ syntaxKindNames = new Map();
14
+ for (const name of Object.keys(SyntaxKind)) {
15
+ const val = SyntaxKind[name];
16
+ if (typeof val === "number" && !syntaxKindNames.has(val)) {
17
+ syntaxKindNames.set(val, name);
18
+ }
19
+ }
20
+ syntaxKindNames.set(SyntaxKind.EndOfFile, "EndOfFileToken");
21
+ }
22
+ return syntaxKindNames;
23
+ }
24
+ export function formatSyntaxKind(kind) {
25
+ return getSyntaxKindNames().get(kind) ?? `Unknown(${kind})`;
26
+ }
27
+ /**
28
+ * Remove one extra leading underscore from an identifier name, recovering the
29
+ * display form from its escaped {@link __String} key.
30
+ */
31
+ export function unescapeLeadingUnderscores(identifier) {
32
+ const id = identifier;
33
+ return id.length >= 3 && id.charCodeAt(0) === CharacterCodes._ && id.charCodeAt(1) === CharacterCodes._ && id.charCodeAt(2) === CharacterCodes._
34
+ ? id.slice(1)
35
+ : id;
36
+ }
37
+ /**
38
+ * Add an extra leading underscore to a display name that already begins with
39
+ * `__`, producing its escaped {@link __String} key.
40
+ */
41
+ export function escapeLeadingUnderscores(identifier) {
42
+ return (identifier.length >= 2 && identifier.charCodeAt(0) === CharacterCodes._ && identifier.charCodeAt(1) === CharacterCodes._
43
+ ? "_" + identifier
44
+ : identifier);
45
+ }
46
+ /**
47
+ * Gets the module specifier represented by an ambient module symbol's escaped
48
+ * name, or `undefined` when the name does not identify an ambient module.
49
+ */
50
+ export function tryGetAmbientModuleNameFromSymbolName(name) {
51
+ const text = name;
52
+ if (text.charCodeAt(0) === CharacterCodes.doubleQuote && text.charCodeAt(text.length - 1) === CharacterCodes.doubleQuote) {
53
+ return text.slice(1, -1);
54
+ }
55
+ const patternPrefix = '__"';
56
+ if (!text.startsWith(patternPrefix))
57
+ return undefined;
58
+ const markerIndex = text.lastIndexOf('"pattern@');
59
+ return markerIndex > patternPrefix.length ? text.slice(patternPrefix.length, markerIndex) : undefined;
60
+ }
61
+ export function tryCast(value, test) {
62
+ return value !== undefined && test(value) ? value : undefined;
63
+ }
64
+ export function cast(value, test) {
65
+ if (value !== undefined && test(value))
66
+ return value;
67
+ throw new Error(`Invalid cast. The supplied value ${value} did not pass the test '${test.name}'.`);
68
+ }
69
+ export function hasExpression(node) {
70
+ return "expression" in node;
71
+ }
72
+ export function hasInitializer(node) {
73
+ return "initializer" in node;
74
+ }
75
+ export function hasObjectAssignmentInitializer(node) {
76
+ return "objectAssignmentInitializer" in node;
77
+ }
78
+ export function isExternalModule(file) {
79
+ return file.externalModuleIndicator !== undefined;
80
+ }
81
+ function getRootDeclaration(node) {
82
+ while (node.kind === SyntaxKind.BindingElement) {
83
+ node = node.parent.parent;
84
+ }
85
+ return node;
86
+ }
87
+ function getModifierFlags(node) {
88
+ const modifiers = "modifiers" in node
89
+ ? node.modifiers
90
+ : undefined;
91
+ let flags = ModifierFlags.None;
92
+ if (modifiers) {
93
+ for (const modifier of modifiers) {
94
+ flags |= modifierToFlag(modifier.kind);
95
+ }
96
+ }
97
+ return flags;
98
+ }
99
+ export function getCombinedModifierFlags(node) {
100
+ let current = getRootDeclaration(node);
101
+ let flags = getModifierFlags(current);
102
+ if (current.kind === SyntaxKind.VariableDeclaration) {
103
+ current = current.parent;
104
+ }
105
+ if (current?.kind === SyntaxKind.VariableDeclarationList) {
106
+ flags |= getModifierFlags(current);
107
+ current = current.parent;
108
+ }
109
+ if (current?.kind === SyntaxKind.VariableStatement) {
110
+ flags |= getModifierFlags(current);
111
+ }
112
+ return flags;
113
+ }
114
+ function skipParentheses(node) {
115
+ return skipOuterExpressions(node, OuterExpressionKinds.Parentheses);
116
+ }
117
+ function isStringOrNumericLiteralLike(node) {
118
+ return isStringLiteralLikeNode(node) || isNumericLiteral(node);
119
+ }
120
+ function getElementOrPropertyAccessName(node) {
121
+ if (node.kind === SyntaxKind.PropertyAccessExpression) {
122
+ return isIdentifier(node.name) ? node.name : undefined;
123
+ }
124
+ const argument = skipParentheses(node.argumentExpression);
125
+ return isStringOrNumericLiteralLike(argument) ? argument : undefined;
126
+ }
127
+ function getNameText(node) {
128
+ return node && "text" in node && typeof node.text === "string" ? node.text : undefined;
129
+ }
130
+ function isEntityNameExpression(node, allowJS = false) {
131
+ if (isIdentifier(node))
132
+ return true;
133
+ if (node.kind === SyntaxKind.PropertyAccessExpression) {
134
+ const access = node;
135
+ return isIdentifier(access.name) && isEntityNameExpression(access.expression, allowJS);
136
+ }
137
+ if (!allowJS)
138
+ return false;
139
+ if (node.kind === SyntaxKind.ThisKeyword)
140
+ return true;
141
+ if (node.kind !== SyntaxKind.ElementAccessExpression)
142
+ return false;
143
+ const access = node;
144
+ return isStringOrNumericLiteralLike(access.argumentExpression) &&
145
+ isEntityNameExpression(access.expression, true);
146
+ }
147
+ function isBindableStaticAccessExpression(node, excludeThisKeyword) {
148
+ if (node.kind === SyntaxKind.PropertyAccessExpression) {
149
+ const access = node;
150
+ return !excludeThisKeyword && access.expression.kind === SyntaxKind.ThisKeyword ||
151
+ isIdentifier(access.name) && isBindableStaticNameExpression(access.expression, true);
152
+ }
153
+ if (node.kind !== SyntaxKind.ElementAccessExpression)
154
+ return false;
155
+ const access = node;
156
+ return isStringOrNumericLiteralLike(access.argumentExpression) &&
157
+ (!excludeThisKeyword && access.expression.kind === SyntaxKind.ThisKeyword ||
158
+ isEntityNameExpression(access.expression) ||
159
+ isBindableStaticAccessExpression(access.expression, true));
160
+ }
161
+ function isBindableStaticNameExpression(node, excludeThisKeyword) {
162
+ return isEntityNameExpression(node) || isBindableStaticAccessExpression(node, excludeThisKeyword);
163
+ }
164
+ function isModuleExportsAccessExpression(node) {
165
+ return isAccessExpression(node) &&
166
+ isIdentifier(node.expression) &&
167
+ node.expression.text === "module" &&
168
+ getNameText(getElementOrPropertyAccessName(node)) === "exports";
169
+ }
170
+ function isBindableObjectDefinePropertyCall(node) {
171
+ if (node.arguments.length !== 3)
172
+ return false;
173
+ const expression = node.expression;
174
+ if (expression.kind !== SyntaxKind.PropertyAccessExpression)
175
+ return false;
176
+ const access = expression;
177
+ return isIdentifier(access.expression) &&
178
+ access.expression.text === "Object" &&
179
+ access.name.text === "defineProperty" &&
180
+ isStringOrNumericLiteralLike(node.arguments[1]) &&
181
+ isBindableStaticNameExpression(node.arguments[0], true);
182
+ }
183
+ function getAssignmentDeclarationKind(node) {
184
+ if (node.kind === SyntaxKind.BinaryExpression) {
185
+ if (node.operatorToken.kind !== SyntaxKind.EqualsToken || !isAccessExpression(node.left)) {
186
+ return JSDeclarationKind.None;
187
+ }
188
+ const left = node.left;
189
+ const isInJSFile = (left.flags & NodeFlags.JavaScriptFile) !== 0;
190
+ if (isInJSFile) {
191
+ if (isModuleExportsAccessExpression(left) && !(isIdentifier(node.right) && node.right.text === "exports")) {
192
+ return JSDeclarationKind.ModuleExports;
193
+ }
194
+ if ((isModuleExportsAccessExpression(left.expression) ||
195
+ isIdentifier(left.expression) && left.expression.text === "exports") &&
196
+ getElementOrPropertyAccessName(left)) {
197
+ return JSDeclarationKind.ExportsProperty;
198
+ }
199
+ if (left.expression.kind === SyntaxKind.ThisKeyword) {
200
+ return JSDeclarationKind.ThisProperty;
201
+ }
202
+ }
203
+ if (left.kind === SyntaxKind.PropertyAccessExpression &&
204
+ isEntityNameExpression(left.expression, isInJSFile) &&
205
+ isIdentifier(left.name) ||
206
+ left.kind === SyntaxKind.ElementAccessExpression &&
207
+ isEntityNameExpression(left.expression, isInJSFile)) {
208
+ return JSDeclarationKind.Property;
209
+ }
210
+ return JSDeclarationKind.None;
211
+ }
212
+ if ((node.flags & NodeFlags.JavaScriptFile) !== 0 &&
213
+ isBindableObjectDefinePropertyCall(node)) {
214
+ const entityName = node.arguments[0];
215
+ return isIdentifier(entityName) && entityName.text === "exports" ||
216
+ isModuleExportsAccessExpression(entityName)
217
+ ? JSDeclarationKind.ObjectDefinePropertyExports
218
+ : JSDeclarationKind.ObjectDefinePropertyValue;
219
+ }
220
+ return JSDeclarationKind.None;
221
+ }
222
+ function getDeclaredName(declaration) {
223
+ return declaration.name;
224
+ }
225
+ function getNonAssignedNameOfDeclaration(declaration) {
226
+ if (declaration.kind === SyntaxKind.BinaryExpression || declaration.kind === SyntaxKind.CallExpression) {
227
+ switch (getAssignmentDeclarationKind(declaration)) {
228
+ case JSDeclarationKind.Property:
229
+ case JSDeclarationKind.ThisProperty:
230
+ case JSDeclarationKind.ExportsProperty: {
231
+ const left = declaration.left;
232
+ return getElementOrPropertyAccessName(left) ?? left;
233
+ }
234
+ case JSDeclarationKind.ObjectDefinePropertyValue:
235
+ case JSDeclarationKind.ObjectDefinePropertyExports:
236
+ return declaration.arguments[1];
237
+ default:
238
+ return undefined;
239
+ }
240
+ }
241
+ if (declaration.kind === SyntaxKind.ExportAssignment) {
242
+ const expression = declaration.expression;
243
+ return isIdentifier(expression) ? expression : undefined;
244
+ }
245
+ return getDeclaredName(declaration);
246
+ }
247
+ function getAssignedName(node) {
248
+ const parent = node.parent;
249
+ if (!parent)
250
+ return undefined;
251
+ switch (parent.kind) {
252
+ case SyntaxKind.PropertyAssignment:
253
+ return parent.name;
254
+ case SyntaxKind.BindingElement:
255
+ return parent.name;
256
+ case SyntaxKind.BinaryExpression: {
257
+ const binary = parent;
258
+ if (node !== binary.right)
259
+ return undefined;
260
+ const left = binary.left;
261
+ if (isIdentifier(left))
262
+ return left;
263
+ if (left.kind === SyntaxKind.PropertyAccessExpression)
264
+ return left.name;
265
+ if (left.kind === SyntaxKind.ElementAccessExpression) {
266
+ const argument = skipParentheses(left.argumentExpression);
267
+ return isStringOrNumericLiteralLike(argument) ? argument : undefined;
268
+ }
269
+ return undefined;
270
+ }
271
+ case SyntaxKind.VariableDeclaration: {
272
+ const name = parent.name;
273
+ return isIdentifier(name) ? name : undefined;
274
+ }
275
+ default:
276
+ return undefined;
277
+ }
278
+ }
279
+ export function getNameOfDeclaration(declaration) {
280
+ if (declaration === undefined)
281
+ return undefined;
282
+ const nonAssignedName = getNonAssignedNameOfDeclaration(declaration);
283
+ if (nonAssignedName !== undefined)
284
+ return nonAssignedName;
285
+ return declaration.kind === SyntaxKind.FunctionExpression ||
286
+ declaration.kind === SyntaxKind.ArrowFunction ||
287
+ declaration.kind === SyntaxKind.ClassExpression
288
+ ? getAssignedName(declaration)
289
+ : undefined;
290
+ }
291
+ export function cloneSourceFileData(sourceFile) {
292
+ return {
293
+ statements: sourceFile.statements,
294
+ endOfFileToken: sourceFile.endOfFileToken,
295
+ text: sourceFile.text,
296
+ originalText: sourceFile.originalText,
297
+ spanMap: sourceFile.spanMap,
298
+ contentMapper: sourceFile.contentMapper,
299
+ virtualFileName: sourceFile.virtualFileName,
300
+ diagnosticDirectives: sourceFile.diagnosticDirectives,
301
+ supplementalSourceFileNames: sourceFile.supplementalSourceFileNames,
302
+ canonicalSourceFileName: sourceFile.canonicalSourceFileName,
303
+ fileName: sourceFile.fileName,
304
+ path: sourceFile.path,
305
+ languageVariant: sourceFile.languageVariant,
306
+ scriptKind: sourceFile.scriptKind,
307
+ isDeclarationFile: sourceFile.isDeclarationFile,
308
+ referencedFiles: sourceFile.referencedFiles,
309
+ typeReferenceDirectives: sourceFile.typeReferenceDirectives,
310
+ libReferenceDirectives: sourceFile.libReferenceDirectives,
311
+ imports: sourceFile.imports,
312
+ moduleAugmentations: sourceFile.moduleAugmentations,
313
+ ambientModuleNames: sourceFile.ambientModuleNames,
314
+ externalModuleIndicator: sourceFile.externalModuleIndicator,
315
+ tokenCache: undefined,
316
+ };
317
+ }
318
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/ast/utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Hand-written visitor implementations for nodes with runtime-dependent
3
+ * child ordering. Generated code in visitor.generated.ts and factory.generated.ts
4
+ * delegates to these functions.
5
+ */
6
+ import type { JSDocParameterOrPropertyTag, Node, NodeArray } from "./ast.ts";
7
+ import type { Visitor } from "./visitor.generated.ts";
8
+ export type { Visitor };
9
+ export { visitEachChild, visitNode, visitNodes, visitNodesArray } from "./visitor.generated.ts";
10
+ declare function forEachChildOfJSDocParameterOrPropertyTag<T>(data: any, cbNode: (node: Node) => T, cbNodes: ((nodes: NodeArray<Node>) => T) | undefined): T | undefined;
11
+ export { forEachChildOfJSDocParameterOrPropertyTag as forEachChildOfJSDocParameterTag, forEachChildOfJSDocParameterOrPropertyTag as forEachChildOfJSDocPropertyTag };
12
+ declare function yieldEachChildOfJSDocParameterOrPropertyTag<T>(data: any): Generator<Node, T | undefined, T>;
13
+ export { yieldEachChildOfJSDocParameterOrPropertyTag as yieldEachChildOfJSDocParameterTag, yieldEachChildOfJSDocParameterOrPropertyTag as yieldEachChildOfJSDocPropertyTag };
14
+ declare function visitEachChildOfJSDocParameterOrPropertyTag(node: JSDocParameterOrPropertyTag, visitor: Visitor): JSDocParameterOrPropertyTag;
15
+ export { visitEachChildOfJSDocParameterOrPropertyTag as visitEachChildOfJSDocParameterTag, visitEachChildOfJSDocParameterOrPropertyTag as visitEachChildOfJSDocPropertyTag };
16
+ //# sourceMappingURL=visitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visitor.d.ts","sourceRoot":"","sources":["../../src/ast/visitor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAER,2BAA2B,EAG3B,IAAI,EACJ,SAAS,EACZ,MAAM,UAAU,CAAC;AAUlB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAMtD,YAAY,EAAE,OAAO,EAAE,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAoBhG,iBAAS,yCAAyC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS,GAAG,CAAC,GAAG,SAAS,CAM/J;AAED,OAAO,EAAE,yCAAyC,IAAI,+BAA+B,EAAE,yCAAyC,IAAI,8BAA8B,EAAE,CAAC;AAIrK,iBAAU,2CAA2C,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,CA+BrG;AAED,OAAO,EAAE,2CAA2C,IAAI,iCAAiC,EAAE,2CAA2C,IAAI,gCAAgC,EAAE,CAAC;AAI7K,iBAAS,2CAA2C,CAAC,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,OAAO,GAAG,2BAA2B,CAQrI;AAED,OAAO,EAAE,2CAA2C,IAAI,iCAAiC,EAAE,2CAA2C,IAAI,gCAAgC,EAAE,CAAC"}
@@ -0,0 +1,50 @@
1
+ import type { Node, NodeArray } from "./ast.ts";
2
+ /**
3
+ * A callback that receives a node and returns a visited node (or undefined to remove it).
4
+ */
5
+ export type Visitor = (node: Node) => Node | undefined;
6
+ /**
7
+ * Visits a Node using the supplied visitor, possibly returning a new Node in its place.
8
+ *
9
+ * - If the input node is undefined, then the output is undefined.
10
+ * - If the visitor returns undefined, then the output is undefined.
11
+ * - If the output node is not undefined, then it will satisfy the test function.
12
+ * - In order to obtain a return type that is more specific than `Node`, a test
13
+ * function must be provided, and that function must be a type predicate.
14
+ *
15
+ * @param node The Node to visit.
16
+ * @param visitor The callback used to visit the Node.
17
+ * @param test A callback to execute to verify the Node is valid.
18
+ */
19
+ export declare function visitNode<TIn extends Node | undefined, TOut extends Node>(node: TIn, visitor: Visitor, test: (node: Node) => node is TOut): TOut | (TIn & undefined);
20
+ /**
21
+ * Visits a Node using the supplied visitor, possibly returning a new Node in its place.
22
+ *
23
+ * - If the input node is undefined, then the output is undefined.
24
+ * - If the visitor returns undefined, then the output is undefined.
25
+ *
26
+ * @param node The Node to visit.
27
+ * @param visitor The callback used to visit the Node.
28
+ * @param test An optional callback to execute to verify the Node is valid.
29
+ */
30
+ export declare function visitNode<TIn extends Node | undefined>(node: TIn, visitor: Visitor, test?: (node: Node) => boolean): Node | (TIn & undefined);
31
+ /**
32
+ * Visits a NodeArray using the supplied visitor, possibly returning a new NodeArray in its place.
33
+ *
34
+ * - If the input node array is undefined, the output is undefined.
35
+ * - If the visitor returns undefined for a node, that node is dropped from the result.
36
+ */
37
+ export declare function visitNodes<T extends Node>(nodes: NodeArray<T>, visitor: Visitor): NodeArray<T>;
38
+ export declare function visitNodes<T extends Node>(nodes: NodeArray<T> | undefined, visitor: Visitor): NodeArray<T> | undefined;
39
+ export declare function visitNodesArray<T extends Node>(nodes: readonly T[], visitor: Visitor): readonly T[];
40
+ export declare function visitNodesArray<T extends Node>(nodes: readonly T[] | undefined, visitor: Visitor): readonly T[] | undefined;
41
+ /**
42
+ * Visits each child of a Node using the supplied visitor, possibly returning a new Node of the same kind in its place.
43
+ *
44
+ * @param node The Node whose children will be visited.
45
+ * @param visitor The callback used to visit each child.
46
+ * @returns The original node if no children changed, or a new node with visited children.
47
+ */
48
+ export declare function visitEachChild<T extends Node>(node: T, visitor: Visitor): T;
49
+ export declare function visitEachChild<T extends Node>(node: T | undefined, visitor: Visitor): T | undefined;
50
+ //# sourceMappingURL=visitor.generated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visitor.generated.d.ts","sourceRoot":"","sources":["../../src/ast/visitor.generated.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAwHR,IAAI,EACJ,SAAS,EAqDZ,MAAM,UAAU,CAAC;AA6OlB;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,GAAG,SAAS,CAAC;AAEvD;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,GAAG,SAAS,IAAI,GAAG,SAAS,EAAE,IAAI,SAAS,IAAI,EACrE,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,IAAI,IAAI,GACnC,IAAI,GAAG,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC;AAC5B;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,GAAG,SAAS,IAAI,GAAG,SAAS,EAClD,IAAI,EAAE,GAAG,EACT,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,GAC/B,IAAI,GAAG,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC;AAU5B;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AAChG,wBAAgB,UAAU,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;AAUxH,wBAAgB,eAAe,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC,EAAE,CAAC;AACrG,wBAAgB,eAAe,CAAC,CAAC,SAAS,IAAI,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC,EAAE,GAAG,SAAS,CAAC;AAmB7H;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,CAAC,CAAC;AAC7E,wBAAgB,cAAc,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,CAAC,GAAG,SAAS,CAAC"}