brighterscript 1.0.0-alpha.5 → 1.0.0-alpha.50

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 (715) hide show
  1. package/README.md +76 -138
  2. package/bsconfig.schema.json +121 -5
  3. package/dist/ActionPipeline.d.ts +10 -0
  4. package/dist/ActionPipeline.js +40 -0
  5. package/dist/ActionPipeline.js.map +1 -0
  6. package/dist/AstValidationSegmenter.d.ts +45 -0
  7. package/dist/AstValidationSegmenter.js +322 -0
  8. package/dist/AstValidationSegmenter.js.map +1 -0
  9. package/dist/BsConfig.d.ts +72 -39
  10. package/dist/BusyStatusTracker.d.ts +61 -0
  11. package/dist/BusyStatusTracker.js +148 -0
  12. package/dist/BusyStatusTracker.js.map +1 -0
  13. package/dist/Cache.d.ts +3 -8
  14. package/dist/Cache.js +9 -14
  15. package/dist/Cache.js.map +1 -1
  16. package/dist/CacheVerifier.d.ts +7 -0
  17. package/dist/CacheVerifier.js +20 -0
  18. package/dist/CacheVerifier.js.map +1 -0
  19. package/dist/CodeActionUtil.d.ts +12 -4
  20. package/dist/CodeActionUtil.js +22 -5
  21. package/dist/CodeActionUtil.js.map +1 -1
  22. package/dist/CommentFlagProcessor.d.ts +7 -6
  23. package/dist/CommentFlagProcessor.js +11 -8
  24. package/dist/CommentFlagProcessor.js.map +1 -1
  25. package/dist/CrossScopeValidator.d.ts +68 -0
  26. package/dist/CrossScopeValidator.js +642 -0
  27. package/dist/CrossScopeValidator.js.map +1 -0
  28. package/dist/DependencyGraph.d.ts +8 -3
  29. package/dist/DependencyGraph.js +49 -16
  30. package/dist/DependencyGraph.js.map +1 -1
  31. package/dist/DiagnosticCollection.d.ts +21 -5
  32. package/dist/DiagnosticCollection.js +77 -24
  33. package/dist/DiagnosticCollection.js.map +1 -1
  34. package/dist/DiagnosticFilterer.d.ts +27 -6
  35. package/dist/DiagnosticFilterer.js +273 -60
  36. package/dist/DiagnosticFilterer.js.map +1 -1
  37. package/dist/DiagnosticManager.d.ts +82 -0
  38. package/dist/DiagnosticManager.js +406 -0
  39. package/dist/DiagnosticManager.js.map +1 -0
  40. package/dist/DiagnosticMessages.d.ts +558 -196
  41. package/dist/DiagnosticMessages.js +870 -340
  42. package/dist/DiagnosticMessages.js.map +1 -1
  43. package/dist/DiagnosticSeverityAdjuster.d.ts +7 -0
  44. package/dist/DiagnosticSeverityAdjuster.js +45 -0
  45. package/dist/DiagnosticSeverityAdjuster.js.map +1 -0
  46. package/dist/FunctionScope.d.ts +28 -0
  47. package/dist/FunctionScope.js +52 -0
  48. package/dist/FunctionScope.js.map +1 -0
  49. package/dist/KeyedThrottler.d.ts +3 -3
  50. package/dist/KeyedThrottler.js +3 -3
  51. package/dist/KeyedThrottler.js.map +1 -1
  52. package/dist/LanguageServer.d.ts +100 -105
  53. package/dist/LanguageServer.js +444 -745
  54. package/dist/LanguageServer.js.map +1 -1
  55. package/dist/Logger.d.ts +17 -13
  56. package/dist/Logger.js +64 -34
  57. package/dist/Logger.js.map +1 -1
  58. package/dist/PluginInterface.d.ts +32 -10
  59. package/dist/PluginInterface.js +117 -7
  60. package/dist/PluginInterface.js.map +1 -1
  61. package/dist/Program.d.ts +241 -98
  62. package/dist/Program.js +1432 -717
  63. package/dist/Program.js.map +1 -1
  64. package/dist/ProgramBuilder.d.ts +47 -23
  65. package/dist/ProgramBuilder.js +224 -178
  66. package/dist/ProgramBuilder.js.map +1 -1
  67. package/dist/Scope.d.ts +149 -109
  68. package/dist/Scope.js +557 -550
  69. package/dist/Scope.js.map +1 -1
  70. package/dist/SemanticTokenUtils.js +5 -1
  71. package/dist/SemanticTokenUtils.js.map +1 -1
  72. package/dist/Stopwatch.d.ts +4 -0
  73. package/dist/Stopwatch.js +8 -1
  74. package/dist/Stopwatch.js.map +1 -1
  75. package/dist/SymbolTable.d.ts +136 -24
  76. package/dist/SymbolTable.js +565 -64
  77. package/dist/SymbolTable.js.map +1 -1
  78. package/dist/SymbolTypeFlag.d.ts +9 -0
  79. package/dist/SymbolTypeFlag.js +14 -0
  80. package/dist/SymbolTypeFlag.js.map +1 -0
  81. package/dist/Throttler.d.ts +12 -0
  82. package/dist/Throttler.js +39 -0
  83. package/dist/Throttler.js.map +1 -1
  84. package/dist/Watcher.d.ts +0 -3
  85. package/dist/Watcher.js +0 -3
  86. package/dist/Watcher.js.map +1 -1
  87. package/dist/XmlScope.d.ts +5 -15
  88. package/dist/XmlScope.js +34 -90
  89. package/dist/XmlScope.js.map +1 -1
  90. package/dist/astUtils/CachedLookups.d.ts +50 -0
  91. package/dist/astUtils/CachedLookups.js +334 -0
  92. package/dist/astUtils/CachedLookups.js.map +1 -0
  93. package/dist/astUtils/CachedLookups.spec.js +39 -0
  94. package/dist/astUtils/CachedLookups.spec.js.map +1 -0
  95. package/dist/astUtils/Editor.d.ts +69 -0
  96. package/dist/astUtils/Editor.js +245 -0
  97. package/dist/astUtils/Editor.js.map +1 -0
  98. package/dist/astUtils/Editor.spec.js +258 -0
  99. package/dist/astUtils/Editor.spec.js.map +1 -0
  100. package/dist/astUtils/creators.d.ts +54 -19
  101. package/dist/astUtils/creators.js +242 -42
  102. package/dist/astUtils/creators.js.map +1 -1
  103. package/dist/astUtils/creators.spec.js +5 -5
  104. package/dist/astUtils/creators.spec.js.map +1 -1
  105. package/dist/astUtils/reflection.d.ts +196 -85
  106. package/dist/astUtils/reflection.js +497 -144
  107. package/dist/astUtils/reflection.js.map +1 -1
  108. package/dist/astUtils/reflection.spec.js +267 -167
  109. package/dist/astUtils/reflection.spec.js.map +1 -1
  110. package/dist/astUtils/stackedVisitor.js.map +1 -1
  111. package/dist/astUtils/stackedVisitor.spec.js +14 -14
  112. package/dist/astUtils/stackedVisitor.spec.js.map +1 -1
  113. package/dist/astUtils/visitors.d.ts +116 -53
  114. package/dist/astUtils/visitors.js +95 -15
  115. package/dist/astUtils/visitors.js.map +1 -1
  116. package/dist/astUtils/visitors.spec.js +629 -51
  117. package/dist/astUtils/visitors.spec.js.map +1 -1
  118. package/dist/astUtils/xml.d.ts +9 -8
  119. package/dist/astUtils/xml.js +12 -7
  120. package/dist/astUtils/xml.js.map +1 -1
  121. package/dist/bscPlugin/BscPlugin.d.ts +24 -4
  122. package/dist/bscPlugin/BscPlugin.js +88 -4
  123. package/dist/bscPlugin/BscPlugin.js.map +1 -1
  124. package/dist/bscPlugin/CallExpressionInfo.d.ts +36 -0
  125. package/dist/bscPlugin/CallExpressionInfo.js +143 -0
  126. package/dist/bscPlugin/CallExpressionInfo.js.map +1 -0
  127. package/dist/bscPlugin/FileWriter.d.ts +6 -0
  128. package/dist/bscPlugin/FileWriter.js +24 -0
  129. package/dist/bscPlugin/FileWriter.js.map +1 -0
  130. package/dist/bscPlugin/SignatureHelpUtil.d.ts +10 -0
  131. package/dist/bscPlugin/SignatureHelpUtil.js +137 -0
  132. package/dist/bscPlugin/SignatureHelpUtil.js.map +1 -0
  133. package/dist/bscPlugin/codeActions/CodeActionsProcessor.d.ts +6 -5
  134. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js +173 -27
  135. package/dist/bscPlugin/codeActions/CodeActionsProcessor.js.map +1 -1
  136. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js +138 -21
  137. package/dist/bscPlugin/codeActions/CodeActionsProcessor.spec.js.map +1 -1
  138. package/dist/bscPlugin/completions/CompletionsProcessor.d.ts +65 -0
  139. package/dist/bscPlugin/completions/CompletionsProcessor.js +633 -0
  140. package/dist/bscPlugin/completions/CompletionsProcessor.js.map +1 -0
  141. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js +2512 -0
  142. package/dist/bscPlugin/completions/CompletionsProcessor.spec.js.map +1 -0
  143. package/dist/bscPlugin/definition/DefinitionProvider.d.ts +13 -0
  144. package/dist/bscPlugin/definition/DefinitionProvider.js +212 -0
  145. package/dist/bscPlugin/definition/DefinitionProvider.js.map +1 -0
  146. package/dist/bscPlugin/definition/DefinitionProvider.spec.js +87 -0
  147. package/dist/bscPlugin/definition/DefinitionProvider.spec.js.map +1 -0
  148. package/dist/bscPlugin/fileProviders/FileProvider.d.ts +9 -0
  149. package/dist/bscPlugin/fileProviders/FileProvider.js +51 -0
  150. package/dist/bscPlugin/fileProviders/FileProvider.js.map +1 -0
  151. package/dist/bscPlugin/hover/HoverProcessor.d.ts +18 -0
  152. package/dist/bscPlugin/hover/HoverProcessor.js +230 -0
  153. package/dist/bscPlugin/hover/HoverProcessor.js.map +1 -0
  154. package/dist/bscPlugin/hover/HoverProcessor.spec.js +991 -0
  155. package/dist/bscPlugin/hover/HoverProcessor.spec.js.map +1 -0
  156. package/dist/bscPlugin/references/ReferencesProvider.d.ts +12 -0
  157. package/dist/bscPlugin/references/ReferencesProvider.js +57 -0
  158. package/dist/bscPlugin/references/ReferencesProvider.js.map +1 -0
  159. package/dist/bscPlugin/references/ReferencesProvider.spec.d.ts +1 -0
  160. package/dist/bscPlugin/references/ReferencesProvider.spec.js +51 -0
  161. package/dist/bscPlugin/references/ReferencesProvider.spec.js.map +1 -0
  162. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.d.ts +14 -0
  163. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js +164 -0
  164. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.js.map +1 -0
  165. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.d.ts +1 -0
  166. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js +564 -0
  167. package/dist/bscPlugin/semanticTokens/BrsFileSemanticTokensProcessor.spec.js.map +1 -0
  168. package/dist/bscPlugin/serialize/BslibInjector.spec.d.ts +1 -0
  169. package/dist/bscPlugin/serialize/BslibInjector.spec.js +33 -0
  170. package/dist/bscPlugin/serialize/BslibInjector.spec.js.map +1 -0
  171. package/dist/bscPlugin/serialize/BslibManager.d.ts +12 -0
  172. package/dist/bscPlugin/serialize/BslibManager.js +46 -0
  173. package/dist/bscPlugin/serialize/BslibManager.js.map +1 -0
  174. package/dist/bscPlugin/serialize/FileSerializer.d.ts +9 -0
  175. package/dist/bscPlugin/serialize/FileSerializer.js +75 -0
  176. package/dist/bscPlugin/serialize/FileSerializer.js.map +1 -0
  177. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.d.ts +7 -0
  178. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.js +22 -0
  179. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.js.map +1 -0
  180. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.d.ts +1 -0
  181. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js +291 -0
  182. package/dist/bscPlugin/symbols/DocumentSymbolProcessor.spec.js.map +1 -0
  183. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.d.ts +7 -0
  184. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.js +26 -0
  185. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.js.map +1 -0
  186. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.d.ts +1 -0
  187. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js +245 -0
  188. package/dist/bscPlugin/symbols/WorkspaceSymbolProcessor.spec.js.map +1 -0
  189. package/dist/bscPlugin/symbols/symbolUtils.d.ts +5 -0
  190. package/dist/bscPlugin/symbols/symbolUtils.js +141 -0
  191. package/dist/bscPlugin/symbols/symbolUtils.js.map +1 -0
  192. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.d.ts +27 -0
  193. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js +418 -0
  194. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.js.map +1 -0
  195. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.d.ts +1 -0
  196. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js +75 -0
  197. package/dist/bscPlugin/transpile/BrsFileTranspileProcessor.spec.js.map +1 -0
  198. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.d.ts +12 -0
  199. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js +99 -0
  200. package/dist/bscPlugin/transpile/XmlFilePreTranspileProcessor.js.map +1 -0
  201. package/dist/bscPlugin/validation/BrsFileAfterValidator.d.ts +7 -0
  202. package/dist/bscPlugin/validation/BrsFileAfterValidator.js +18 -0
  203. package/dist/bscPlugin/validation/BrsFileAfterValidator.js.map +1 -0
  204. package/dist/bscPlugin/validation/BrsFileValidator.d.ts +37 -0
  205. package/dist/bscPlugin/validation/BrsFileValidator.js +638 -0
  206. package/dist/bscPlugin/validation/BrsFileValidator.js.map +1 -0
  207. package/dist/bscPlugin/validation/BrsFileValidator.spec.d.ts +1 -0
  208. package/dist/bscPlugin/validation/BrsFileValidator.spec.js +1517 -0
  209. package/dist/bscPlugin/validation/BrsFileValidator.spec.js.map +1 -0
  210. package/dist/bscPlugin/validation/ProgramValidator.d.ts +11 -0
  211. package/dist/bscPlugin/validation/ProgramValidator.js +33 -0
  212. package/dist/bscPlugin/validation/ProgramValidator.js.map +1 -0
  213. package/dist/bscPlugin/validation/ScopeValidator.d.ts +141 -0
  214. package/dist/bscPlugin/validation/ScopeValidator.js +1323 -0
  215. package/dist/bscPlugin/validation/ScopeValidator.js.map +1 -0
  216. package/dist/bscPlugin/validation/ScopeValidator.spec.d.ts +1 -0
  217. package/dist/bscPlugin/validation/ScopeValidator.spec.js +6135 -0
  218. package/dist/bscPlugin/validation/ScopeValidator.spec.js.map +1 -0
  219. package/dist/bscPlugin/validation/XmlFileValidator.d.ts +8 -0
  220. package/dist/bscPlugin/validation/XmlFileValidator.js +36 -0
  221. package/dist/bscPlugin/validation/XmlFileValidator.js.map +1 -0
  222. package/dist/cli.js +126 -27
  223. package/dist/cli.js.map +1 -1
  224. package/dist/common/Sequencer.d.ts +53 -0
  225. package/dist/common/Sequencer.js +233 -0
  226. package/dist/common/Sequencer.js.map +1 -0
  227. package/dist/common/Sequencer.spec.d.ts +1 -0
  228. package/dist/common/Sequencer.spec.js +75 -0
  229. package/dist/common/Sequencer.spec.js.map +1 -0
  230. package/dist/deferred.d.ts +5 -3
  231. package/dist/deferred.js +10 -0
  232. package/dist/deferred.js.map +1 -1
  233. package/dist/diagnosticUtils.d.ts +10 -3
  234. package/dist/diagnosticUtils.js +64 -25
  235. package/dist/diagnosticUtils.js.map +1 -1
  236. package/dist/examples/plugins/removePrint.d.ts +2 -2
  237. package/dist/examples/plugins/removePrint.js +8 -12
  238. package/dist/examples/plugins/removePrint.js.map +1 -1
  239. package/dist/files/AssetFile.d.ts +24 -0
  240. package/dist/files/AssetFile.js +25 -0
  241. package/dist/files/AssetFile.js.map +1 -0
  242. package/dist/files/BrsFile.Class.spec.js +1213 -259
  243. package/dist/files/BrsFile.Class.spec.js.map +1 -1
  244. package/dist/files/BrsFile.d.ts +145 -87
  245. package/dist/files/BrsFile.js +836 -934
  246. package/dist/files/BrsFile.js.map +1 -1
  247. package/dist/files/BrsFile.spec.js +4226 -902
  248. package/dist/files/BrsFile.spec.js.map +1 -1
  249. package/dist/files/BscFile.d.ts +102 -0
  250. package/dist/files/BscFile.js +15 -0
  251. package/dist/files/BscFile.js.map +1 -0
  252. package/dist/files/Factory.d.ts +25 -0
  253. package/dist/files/Factory.js +22 -0
  254. package/dist/files/Factory.js.map +1 -0
  255. package/dist/files/LazyFileData.d.ts +21 -0
  256. package/dist/files/LazyFileData.js +54 -0
  257. package/dist/files/LazyFileData.js.map +1 -0
  258. package/dist/files/LazyFileData.spec.d.ts +1 -0
  259. package/dist/files/LazyFileData.spec.js +27 -0
  260. package/dist/files/LazyFileData.spec.js.map +1 -0
  261. package/dist/files/XmlFile.d.ts +80 -41
  262. package/dist/files/XmlFile.js +161 -137
  263. package/dist/files/XmlFile.js.map +1 -1
  264. package/dist/files/XmlFile.spec.js +444 -336
  265. package/dist/files/XmlFile.spec.js.map +1 -1
  266. package/dist/files/tests/imports.spec.js +62 -52
  267. package/dist/files/tests/imports.spec.js.map +1 -1
  268. package/dist/files/tests/optionalChaning.spec.d.ts +1 -0
  269. package/dist/files/tests/optionalChaning.spec.js +152 -0
  270. package/dist/files/tests/optionalChaning.spec.js.map +1 -0
  271. package/dist/globalCallables.d.ts +3 -1
  272. package/dist/globalCallables.js +424 -184
  273. package/dist/globalCallables.js.map +1 -1
  274. package/dist/index.d.ts +32 -4
  275. package/dist/index.js +54 -7
  276. package/dist/index.js.map +1 -1
  277. package/dist/interfaces.d.ts +942 -125
  278. package/dist/interfaces.js +21 -0
  279. package/dist/interfaces.js.map +1 -1
  280. package/dist/lexer/Character.spec.js +5 -5
  281. package/dist/lexer/Character.spec.js.map +1 -1
  282. package/dist/lexer/Lexer.d.ts +51 -12
  283. package/dist/lexer/Lexer.js +215 -65
  284. package/dist/lexer/Lexer.js.map +1 -1
  285. package/dist/lexer/Lexer.spec.js +812 -568
  286. package/dist/lexer/Lexer.spec.js.map +1 -1
  287. package/dist/lexer/Token.d.ts +27 -11
  288. package/dist/lexer/Token.js +10 -2
  289. package/dist/lexer/Token.js.map +1 -1
  290. package/dist/lexer/TokenKind.d.ts +40 -2
  291. package/dist/lexer/TokenKind.js +147 -10
  292. package/dist/lexer/TokenKind.js.map +1 -1
  293. package/dist/logging.d.ts +14 -0
  294. package/dist/logging.js +29 -0
  295. package/dist/logging.js.map +1 -0
  296. package/dist/lsp/ActionQueue.d.ts +35 -0
  297. package/dist/lsp/ActionQueue.js +115 -0
  298. package/dist/lsp/ActionQueue.js.map +1 -0
  299. package/dist/lsp/ActionQueue.spec.d.ts +1 -0
  300. package/dist/lsp/ActionQueue.spec.js +80 -0
  301. package/dist/lsp/ActionQueue.spec.js.map +1 -0
  302. package/dist/lsp/DocumentManager.d.ts +63 -0
  303. package/dist/lsp/DocumentManager.js +122 -0
  304. package/dist/lsp/DocumentManager.js.map +1 -0
  305. package/dist/lsp/DocumentManager.spec.d.ts +1 -0
  306. package/dist/lsp/DocumentManager.spec.js +103 -0
  307. package/dist/lsp/DocumentManager.spec.js.map +1 -0
  308. package/dist/lsp/LspProject.d.ts +239 -0
  309. package/dist/lsp/LspProject.js +3 -0
  310. package/dist/lsp/LspProject.js.map +1 -0
  311. package/dist/lsp/PathFilterer.d.ts +75 -0
  312. package/dist/lsp/PathFilterer.js +196 -0
  313. package/dist/lsp/PathFilterer.js.map +1 -0
  314. package/dist/lsp/PathFilterer.spec.d.ts +1 -0
  315. package/dist/lsp/PathFilterer.spec.js +182 -0
  316. package/dist/lsp/PathFilterer.spec.js.map +1 -0
  317. package/dist/lsp/Project.d.ts +168 -0
  318. package/dist/lsp/Project.js +437 -0
  319. package/dist/lsp/Project.js.map +1 -0
  320. package/dist/lsp/Project.spec.d.ts +1 -0
  321. package/dist/lsp/Project.spec.js +267 -0
  322. package/dist/lsp/Project.spec.js.map +1 -0
  323. package/dist/lsp/ProjectManager.d.ts +242 -0
  324. package/dist/lsp/ProjectManager.js +824 -0
  325. package/dist/lsp/ProjectManager.js.map +1 -0
  326. package/dist/lsp/ProjectManager.spec.d.ts +1 -0
  327. package/dist/lsp/ProjectManager.spec.js +913 -0
  328. package/dist/lsp/ProjectManager.spec.js.map +1 -0
  329. package/dist/lsp/ReaderWriterManager.d.ts +21 -0
  330. package/dist/lsp/ReaderWriterManager.js +60 -0
  331. package/dist/lsp/ReaderWriterManager.js.map +1 -0
  332. package/dist/lsp/worker/MessageHandler.d.ts +99 -0
  333. package/dist/lsp/worker/MessageHandler.js +138 -0
  334. package/dist/lsp/worker/MessageHandler.js.map +1 -0
  335. package/dist/lsp/worker/MessageHandler.spec.d.ts +1 -0
  336. package/dist/lsp/worker/MessageHandler.spec.js +64 -0
  337. package/dist/lsp/worker/MessageHandler.spec.js.map +1 -0
  338. package/dist/lsp/worker/WorkerPool.d.ts +38 -0
  339. package/dist/lsp/worker/WorkerPool.js +78 -0
  340. package/dist/lsp/worker/WorkerPool.js.map +1 -0
  341. package/dist/lsp/worker/WorkerPool.spec.d.ts +1 -0
  342. package/dist/lsp/worker/WorkerPool.spec.js +59 -0
  343. package/dist/lsp/worker/WorkerPool.spec.js.map +1 -0
  344. package/dist/lsp/worker/WorkerThreadProject.d.ts +143 -0
  345. package/dist/lsp/worker/WorkerThreadProject.js +189 -0
  346. package/dist/lsp/worker/WorkerThreadProject.js.map +1 -0
  347. package/dist/lsp/worker/WorkerThreadProject.spec.d.ts +2 -0
  348. package/dist/lsp/worker/WorkerThreadProject.spec.js +71 -0
  349. package/dist/lsp/worker/WorkerThreadProject.spec.js.map +1 -0
  350. package/dist/lsp/worker/WorkerThreadProjectRunner.d.ts +15 -0
  351. package/dist/lsp/worker/WorkerThreadProjectRunner.js +58 -0
  352. package/dist/lsp/worker/WorkerThreadProjectRunner.js.map +1 -0
  353. package/dist/lsp/worker/run.d.ts +1 -0
  354. package/dist/lsp/worker/run.js +14 -0
  355. package/dist/lsp/worker/run.js.map +1 -0
  356. package/dist/parser/AstNode.d.ts +203 -0
  357. package/dist/parser/AstNode.js +303 -0
  358. package/dist/parser/AstNode.js.map +1 -0
  359. package/dist/parser/AstNode.spec.d.ts +1 -0
  360. package/dist/parser/AstNode.spec.js +1455 -0
  361. package/dist/parser/AstNode.spec.js.map +1 -0
  362. package/dist/parser/BrightScriptDocParser.d.ts +56 -0
  363. package/dist/parser/BrightScriptDocParser.js +294 -0
  364. package/dist/parser/BrightScriptDocParser.js.map +1 -0
  365. package/dist/parser/BrightScriptDocParser.spec.d.ts +1 -0
  366. package/dist/parser/BrightScriptDocParser.spec.js +310 -0
  367. package/dist/parser/BrightScriptDocParser.spec.js.map +1 -0
  368. package/dist/parser/BrsTranspileState.d.ts +22 -3
  369. package/dist/parser/BrsTranspileState.js +19 -0
  370. package/dist/parser/BrsTranspileState.js.map +1 -1
  371. package/dist/parser/Expression.d.ts +553 -221
  372. package/dist/parser/Expression.js +1414 -505
  373. package/dist/parser/Expression.js.map +1 -1
  374. package/dist/parser/Expression.spec.d.ts +1 -0
  375. package/dist/parser/Expression.spec.js +40 -0
  376. package/dist/parser/Expression.spec.js.map +1 -0
  377. package/dist/parser/Parser.Class.spec.js +255 -125
  378. package/dist/parser/Parser.Class.spec.js.map +1 -1
  379. package/dist/parser/Parser.d.ts +117 -124
  380. package/dist/parser/Parser.js +1669 -982
  381. package/dist/parser/Parser.js.map +1 -1
  382. package/dist/parser/Parser.spec.d.ts +3 -1
  383. package/dist/parser/Parser.spec.js +2111 -525
  384. package/dist/parser/Parser.spec.js.map +1 -1
  385. package/dist/parser/SGParser.d.ts +29 -13
  386. package/dist/parser/SGParser.js +85 -56
  387. package/dist/parser/SGParser.js.map +1 -1
  388. package/dist/parser/SGParser.spec.js +30 -45
  389. package/dist/parser/SGParser.spec.js.map +1 -1
  390. package/dist/parser/SGTypes.d.ts +134 -46
  391. package/dist/parser/SGTypes.js +206 -115
  392. package/dist/parser/SGTypes.js.map +1 -1
  393. package/dist/parser/Statement.d.ts +849 -267
  394. package/dist/parser/Statement.js +2412 -625
  395. package/dist/parser/Statement.js.map +1 -1
  396. package/dist/parser/Statement.spec.js +133 -36
  397. package/dist/parser/Statement.spec.js.map +1 -1
  398. package/dist/parser/TranspileState.d.ts +26 -12
  399. package/dist/parser/TranspileState.js +115 -24
  400. package/dist/parser/TranspileState.js.map +1 -1
  401. package/dist/parser/tests/Parser.spec.d.ts +3 -9
  402. package/dist/parser/tests/Parser.spec.js +7 -13
  403. package/dist/parser/tests/Parser.spec.js.map +1 -1
  404. package/dist/parser/tests/controlFlow/For.spec.js +83 -75
  405. package/dist/parser/tests/controlFlow/For.spec.js.map +1 -1
  406. package/dist/parser/tests/controlFlow/ForEach.spec.js +85 -51
  407. package/dist/parser/tests/controlFlow/ForEach.spec.js.map +1 -1
  408. package/dist/parser/tests/controlFlow/If.spec.js +382 -239
  409. package/dist/parser/tests/controlFlow/If.spec.js.map +1 -1
  410. package/dist/parser/tests/controlFlow/While.spec.js +52 -45
  411. package/dist/parser/tests/controlFlow/While.spec.js.map +1 -1
  412. package/dist/parser/tests/expression/Additive.spec.js +51 -43
  413. package/dist/parser/tests/expression/Additive.spec.js.map +1 -1
  414. package/dist/parser/tests/expression/ArrayLiterals.spec.js +192 -142
  415. package/dist/parser/tests/expression/ArrayLiterals.spec.js.map +1 -1
  416. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js +236 -160
  417. package/dist/parser/tests/expression/AssociativeArrayLiterals.spec.js.map +1 -1
  418. package/dist/parser/tests/expression/Boolean.spec.js +41 -34
  419. package/dist/parser/tests/expression/Boolean.spec.js.map +1 -1
  420. package/dist/parser/tests/expression/Call.spec.js +173 -55
  421. package/dist/parser/tests/expression/Call.spec.js.map +1 -1
  422. package/dist/parser/tests/expression/Exponential.spec.js +20 -20
  423. package/dist/parser/tests/expression/Exponential.spec.js.map +1 -1
  424. package/dist/parser/tests/expression/Function.spec.js +291 -282
  425. package/dist/parser/tests/expression/Function.spec.js.map +1 -1
  426. package/dist/parser/tests/expression/Indexing.spec.js +193 -110
  427. package/dist/parser/tests/expression/Indexing.spec.js.map +1 -1
  428. package/dist/parser/tests/expression/Multiplicative.spec.js +42 -42
  429. package/dist/parser/tests/expression/Multiplicative.spec.js.map +1 -1
  430. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js +260 -115
  431. package/dist/parser/tests/expression/NullCoalescenceExpression.spec.js.map +1 -1
  432. package/dist/parser/tests/expression/PrefixUnary.spec.js +58 -52
  433. package/dist/parser/tests/expression/PrefixUnary.spec.js.map +1 -1
  434. package/dist/parser/tests/expression/Primary.spec.js +76 -60
  435. package/dist/parser/tests/expression/Primary.spec.js.map +1 -1
  436. package/dist/parser/tests/expression/RegexLiteralExpression.spec.d.ts +1 -0
  437. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js +171 -0
  438. package/dist/parser/tests/expression/RegexLiteralExpression.spec.js.map +1 -0
  439. package/dist/parser/tests/expression/Relational.spec.js +50 -50
  440. package/dist/parser/tests/expression/Relational.spec.js.map +1 -1
  441. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js +31 -31
  442. package/dist/parser/tests/expression/SourceLiteralExpression.spec.js.map +1 -1
  443. package/dist/parser/tests/expression/TemplateStringExpression.spec.js +281 -94
  444. package/dist/parser/tests/expression/TemplateStringExpression.spec.js.map +1 -1
  445. package/dist/parser/tests/expression/TernaryExpression.spec.js +747 -192
  446. package/dist/parser/tests/expression/TernaryExpression.spec.js.map +1 -1
  447. package/dist/parser/tests/expression/TypeExpression.spec.d.ts +1 -0
  448. package/dist/parser/tests/expression/TypeExpression.spec.js +126 -0
  449. package/dist/parser/tests/expression/TypeExpression.spec.js.map +1 -0
  450. package/dist/parser/tests/expression/UnaryExpression.spec.d.ts +1 -0
  451. package/dist/parser/tests/expression/UnaryExpression.spec.js +52 -0
  452. package/dist/parser/tests/expression/UnaryExpression.spec.js.map +1 -0
  453. package/dist/parser/tests/statement/AssignmentOperators.spec.js +44 -44
  454. package/dist/parser/tests/statement/AssignmentOperators.spec.js.map +1 -1
  455. package/dist/parser/tests/statement/ConstStatement.spec.d.ts +1 -0
  456. package/dist/parser/tests/statement/ConstStatement.spec.js +500 -0
  457. package/dist/parser/tests/statement/ConstStatement.spec.js.map +1 -0
  458. package/dist/parser/tests/statement/Continue.spec.d.ts +1 -0
  459. package/dist/parser/tests/statement/Continue.spec.js +119 -0
  460. package/dist/parser/tests/statement/Continue.spec.js.map +1 -0
  461. package/dist/parser/tests/statement/Declaration.spec.js +61 -55
  462. package/dist/parser/tests/statement/Declaration.spec.js.map +1 -1
  463. package/dist/parser/tests/statement/Dim.spec.js +29 -22
  464. package/dist/parser/tests/statement/Dim.spec.js.map +1 -1
  465. package/dist/parser/tests/statement/Enum.spec.d.ts +1 -0
  466. package/dist/parser/tests/statement/Enum.spec.js +744 -0
  467. package/dist/parser/tests/statement/Enum.spec.js.map +1 -0
  468. package/dist/parser/tests/statement/For.spec.d.ts +1 -0
  469. package/dist/parser/tests/statement/For.spec.js +45 -0
  470. package/dist/parser/tests/statement/For.spec.js.map +1 -0
  471. package/dist/parser/tests/statement/ForEach.spec.d.ts +1 -0
  472. package/dist/parser/tests/statement/ForEach.spec.js +36 -0
  473. package/dist/parser/tests/statement/ForEach.spec.js.map +1 -0
  474. package/dist/parser/tests/statement/Function.spec.js +226 -215
  475. package/dist/parser/tests/statement/Function.spec.js.map +1 -1
  476. package/dist/parser/tests/statement/Goto.spec.js +16 -15
  477. package/dist/parser/tests/statement/Goto.spec.js.map +1 -1
  478. package/dist/parser/tests/statement/Increment.spec.js +64 -61
  479. package/dist/parser/tests/statement/Increment.spec.js.map +1 -1
  480. package/dist/parser/tests/statement/InterfaceStatement.spec.d.ts +1 -0
  481. package/dist/parser/tests/statement/InterfaceStatement.spec.js +110 -0
  482. package/dist/parser/tests/statement/InterfaceStatement.spec.js.map +1 -0
  483. package/dist/parser/tests/statement/LibraryStatement.spec.js +22 -22
  484. package/dist/parser/tests/statement/LibraryStatement.spec.js.map +1 -1
  485. package/dist/parser/tests/statement/Misc.spec.js +127 -168
  486. package/dist/parser/tests/statement/Misc.spec.js.map +1 -1
  487. package/dist/parser/tests/statement/PrintStatement.spec.js +133 -114
  488. package/dist/parser/tests/statement/PrintStatement.spec.js.map +1 -1
  489. package/dist/parser/tests/statement/ReturnStatement.spec.js +57 -54
  490. package/dist/parser/tests/statement/ReturnStatement.spec.js.map +1 -1
  491. package/dist/parser/tests/statement/Set.spec.js +131 -117
  492. package/dist/parser/tests/statement/Set.spec.js.map +1 -1
  493. package/dist/parser/tests/statement/Stop.spec.js +14 -13
  494. package/dist/parser/tests/statement/Stop.spec.js.map +1 -1
  495. package/dist/parser/tests/statement/Throw.spec.js +11 -8
  496. package/dist/parser/tests/statement/Throw.spec.js.map +1 -1
  497. package/dist/parser/tests/statement/TryCatch.spec.js +26 -15
  498. package/dist/parser/tests/statement/TryCatch.spec.js.map +1 -1
  499. package/dist/preprocessor/Manifest.d.ts +6 -6
  500. package/dist/preprocessor/Manifest.js +17 -38
  501. package/dist/preprocessor/Manifest.js.map +1 -1
  502. package/dist/preprocessor/Manifest.spec.d.ts +1 -0
  503. package/dist/preprocessor/Manifest.spec.js +78 -103
  504. package/dist/preprocessor/Manifest.spec.js.map +1 -1
  505. package/dist/roku-types/data.json +20347 -0
  506. package/dist/roku-types/index.d.ts +5726 -0
  507. package/dist/roku-types/index.js +11 -0
  508. package/dist/roku-types/index.js.map +1 -0
  509. package/dist/types/ArrayType.d.ts +12 -5
  510. package/dist/types/ArrayType.js +89 -24
  511. package/dist/types/ArrayType.js.map +1 -1
  512. package/dist/types/ArrayType.spec.js +39 -11
  513. package/dist/types/ArrayType.spec.js.map +1 -1
  514. package/dist/types/AssociativeArrayType.d.ts +15 -0
  515. package/dist/types/AssociativeArrayType.js +64 -0
  516. package/dist/types/AssociativeArrayType.js.map +1 -0
  517. package/dist/types/BaseFunctionType.d.ts +10 -0
  518. package/dist/types/BaseFunctionType.js +26 -0
  519. package/dist/types/BaseFunctionType.js.map +1 -0
  520. package/dist/types/BooleanType.d.ts +9 -5
  521. package/dist/types/BooleanType.js +19 -8
  522. package/dist/types/BooleanType.js.map +1 -1
  523. package/dist/types/BooleanType.spec.js +10 -4
  524. package/dist/types/BooleanType.spec.js.map +1 -1
  525. package/dist/types/BscType.d.ts +41 -3
  526. package/dist/types/BscType.js +152 -0
  527. package/dist/types/BscType.js.map +1 -1
  528. package/dist/types/BscTypeKind.d.ts +28 -0
  529. package/dist/types/BscTypeKind.js +33 -0
  530. package/dist/types/BscTypeKind.js.map +1 -0
  531. package/dist/types/BuiltInInterfaceAdder.d.ts +28 -0
  532. package/dist/types/BuiltInInterfaceAdder.js +212 -0
  533. package/dist/types/BuiltInInterfaceAdder.js.map +1 -0
  534. package/dist/types/BuiltInInterfaceAdder.spec.d.ts +1 -0
  535. package/dist/types/BuiltInInterfaceAdder.spec.js +115 -0
  536. package/dist/types/BuiltInInterfaceAdder.spec.js.map +1 -0
  537. package/dist/types/CallFuncableType.d.ts +24 -0
  538. package/dist/types/CallFuncableType.js +91 -0
  539. package/dist/types/CallFuncableType.js.map +1 -0
  540. package/dist/types/ClassType.d.ts +17 -0
  541. package/dist/types/ClassType.js +60 -0
  542. package/dist/types/ClassType.js.map +1 -0
  543. package/dist/types/ClassType.spec.d.ts +1 -0
  544. package/dist/types/ClassType.spec.js +76 -0
  545. package/dist/types/ClassType.spec.js.map +1 -0
  546. package/dist/types/ComponentType.d.ts +22 -0
  547. package/dist/types/ComponentType.js +107 -0
  548. package/dist/types/ComponentType.js.map +1 -0
  549. package/dist/types/DoubleType.d.ts +10 -5
  550. package/dist/types/DoubleType.js +21 -17
  551. package/dist/types/DoubleType.js.map +1 -1
  552. package/dist/types/DoubleType.spec.js +12 -4
  553. package/dist/types/DoubleType.spec.js.map +1 -1
  554. package/dist/types/DynamicType.d.ts +13 -5
  555. package/dist/types/DynamicType.js +26 -5
  556. package/dist/types/DynamicType.js.map +1 -1
  557. package/dist/types/DynamicType.spec.js +16 -5
  558. package/dist/types/DynamicType.spec.js.map +1 -1
  559. package/dist/types/EnumType.d.ts +42 -0
  560. package/dist/types/EnumType.js +98 -0
  561. package/dist/types/EnumType.js.map +1 -0
  562. package/dist/types/EnumType.spec.d.ts +1 -0
  563. package/dist/types/EnumType.spec.js +33 -0
  564. package/dist/types/EnumType.spec.js.map +1 -0
  565. package/dist/types/FloatType.d.ts +10 -5
  566. package/dist/types/FloatType.js +21 -17
  567. package/dist/types/FloatType.js.map +1 -1
  568. package/dist/types/FloatType.spec.js +4 -4
  569. package/dist/types/FloatType.spec.js.map +1 -1
  570. package/dist/types/FunctionType.d.ts +8 -22
  571. package/dist/types/FunctionType.js +25 -63
  572. package/dist/types/FunctionType.js.map +1 -1
  573. package/dist/types/InheritableType.d.ts +29 -0
  574. package/dist/types/InheritableType.js +173 -0
  575. package/dist/types/InheritableType.js.map +1 -0
  576. package/dist/types/InlineInterfaceType.d.ts +5 -0
  577. package/dist/types/InlineInterfaceType.js +17 -0
  578. package/dist/types/InlineInterfaceType.js.map +1 -0
  579. package/dist/types/IntegerType.d.ts +10 -5
  580. package/dist/types/IntegerType.js +21 -17
  581. package/dist/types/IntegerType.js.map +1 -1
  582. package/dist/types/IntegerType.spec.js +8 -4
  583. package/dist/types/IntegerType.spec.js.map +1 -1
  584. package/dist/types/InterfaceType.d.ts +14 -6
  585. package/dist/types/InterfaceType.js +30 -15
  586. package/dist/types/InterfaceType.js.map +1 -1
  587. package/dist/types/InterfaceType.spec.d.ts +1 -0
  588. package/dist/types/InterfaceType.spec.js +227 -0
  589. package/dist/types/InterfaceType.spec.js.map +1 -0
  590. package/dist/types/IntersectionType.d.ts +29 -0
  591. package/dist/types/IntersectionType.js +253 -0
  592. package/dist/types/IntersectionType.js.map +1 -0
  593. package/dist/types/IntersectionType.spec.d.ts +1 -0
  594. package/dist/types/IntersectionType.spec.js +150 -0
  595. package/dist/types/IntersectionType.spec.js.map +1 -0
  596. package/dist/types/InvalidType.d.ts +10 -5
  597. package/dist/types/InvalidType.js +21 -9
  598. package/dist/types/InvalidType.js.map +1 -1
  599. package/dist/types/InvalidType.spec.js +8 -4
  600. package/dist/types/InvalidType.spec.js.map +1 -1
  601. package/dist/types/LongIntegerType.d.ts +10 -5
  602. package/dist/types/LongIntegerType.js +21 -17
  603. package/dist/types/LongIntegerType.js.map +1 -1
  604. package/dist/types/LongIntegerType.spec.js +10 -4
  605. package/dist/types/LongIntegerType.spec.js.map +1 -1
  606. package/dist/types/NamespaceType.d.ts +12 -0
  607. package/dist/types/NamespaceType.js +28 -0
  608. package/dist/types/NamespaceType.js.map +1 -0
  609. package/dist/types/ObjectType.d.ts +12 -5
  610. package/dist/types/ObjectType.js +25 -8
  611. package/dist/types/ObjectType.js.map +1 -1
  612. package/dist/types/ObjectType.spec.js +3 -3
  613. package/dist/types/ObjectType.spec.js.map +1 -1
  614. package/dist/types/ReferenceType.d.ts +123 -0
  615. package/dist/types/ReferenceType.js +720 -0
  616. package/dist/types/ReferenceType.js.map +1 -0
  617. package/dist/types/ReferenceType.spec.d.ts +1 -0
  618. package/dist/types/ReferenceType.spec.js +151 -0
  619. package/dist/types/ReferenceType.spec.js.map +1 -0
  620. package/dist/types/StringType.d.ts +12 -5
  621. package/dist/types/StringType.js +23 -8
  622. package/dist/types/StringType.js.map +1 -1
  623. package/dist/types/StringType.spec.js +3 -3
  624. package/dist/types/StringType.spec.js.map +1 -1
  625. package/dist/types/TypeStatementType.d.ts +18 -0
  626. package/dist/types/TypeStatementType.js +45 -0
  627. package/dist/types/TypeStatementType.js.map +1 -0
  628. package/dist/types/TypedFunctionType.d.ts +34 -0
  629. package/dist/types/TypedFunctionType.js +147 -0
  630. package/dist/types/TypedFunctionType.js.map +1 -0
  631. package/dist/types/TypedFunctionType.spec.d.ts +1 -0
  632. package/dist/types/TypedFunctionType.spec.js +122 -0
  633. package/dist/types/TypedFunctionType.spec.js.map +1 -0
  634. package/dist/types/UninitializedType.d.ts +11 -6
  635. package/dist/types/UninitializedType.js +20 -11
  636. package/dist/types/UninitializedType.js.map +1 -1
  637. package/dist/types/UnionType.d.ts +27 -0
  638. package/dist/types/UnionType.js +193 -0
  639. package/dist/types/UnionType.js.map +1 -0
  640. package/dist/types/UnionType.spec.d.ts +1 -0
  641. package/dist/types/UnionType.spec.js +205 -0
  642. package/dist/types/UnionType.spec.js.map +1 -0
  643. package/dist/types/VoidType.d.ts +11 -5
  644. package/dist/types/VoidType.js +22 -8
  645. package/dist/types/VoidType.js.map +1 -1
  646. package/dist/types/VoidType.spec.js +3 -3
  647. package/dist/types/VoidType.spec.js.map +1 -1
  648. package/dist/types/helper.spec.d.ts +1 -0
  649. package/dist/types/helper.spec.js +174 -0
  650. package/dist/types/helper.spec.js.map +1 -0
  651. package/dist/types/helpers.d.ts +51 -0
  652. package/dist/types/helpers.js +323 -0
  653. package/dist/types/helpers.js.map +1 -0
  654. package/dist/types/index.d.ts +22 -0
  655. package/dist/types/index.js +39 -0
  656. package/dist/types/index.js.map +1 -0
  657. package/dist/types/roFunctionType.d.ts +11 -0
  658. package/dist/types/roFunctionType.js +37 -0
  659. package/dist/types/roFunctionType.js.map +1 -0
  660. package/dist/types/roFunctionType.spec.d.ts +1 -0
  661. package/dist/types/roFunctionType.spec.js +20 -0
  662. package/dist/types/roFunctionType.spec.js.map +1 -0
  663. package/dist/util.d.ts +288 -187
  664. package/dist/util.js +2018 -575
  665. package/dist/util.js.map +1 -1
  666. package/dist/validators/ClassValidator.d.ts +9 -15
  667. package/dist/validators/ClassValidator.js +93 -138
  668. package/dist/validators/ClassValidator.js.map +1 -1
  669. package/package.json +185 -138
  670. package/CHANGELOG.md +0 -1188
  671. package/dist/astUtils/index.d.ts +0 -7
  672. package/dist/astUtils/index.js +0 -26
  673. package/dist/astUtils/index.js.map +0 -1
  674. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.d.ts +0 -7
  675. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.js +0 -63
  676. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.js.map +0 -1
  677. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.spec.js +0 -45
  678. package/dist/bscPlugin/semanticTokens/SemanticTokensProcessor.spec.js.map +0 -1
  679. package/dist/lexer/index.d.ts +0 -3
  680. package/dist/lexer/index.js +0 -17
  681. package/dist/lexer/index.js.map +0 -1
  682. package/dist/parser/SGTypes.spec.js +0 -351
  683. package/dist/parser/SGTypes.spec.js.map +0 -1
  684. package/dist/parser/index.d.ts +0 -3
  685. package/dist/parser/index.js +0 -16
  686. package/dist/parser/index.js.map +0 -1
  687. package/dist/preprocessor/Chunk.d.ts +0 -82
  688. package/dist/preprocessor/Chunk.js +0 -77
  689. package/dist/preprocessor/Chunk.js.map +0 -1
  690. package/dist/preprocessor/Preprocessor.d.ts +0 -60
  691. package/dist/preprocessor/Preprocessor.js +0 -156
  692. package/dist/preprocessor/Preprocessor.js.map +0 -1
  693. package/dist/preprocessor/Preprocessor.spec.js +0 -152
  694. package/dist/preprocessor/Preprocessor.spec.js.map +0 -1
  695. package/dist/preprocessor/PreprocessorParser.d.ts +0 -61
  696. package/dist/preprocessor/PreprocessorParser.js +0 -194
  697. package/dist/preprocessor/PreprocessorParser.js.map +0 -1
  698. package/dist/preprocessor/PreprocessorParser.spec.js +0 -116
  699. package/dist/preprocessor/PreprocessorParser.spec.js.map +0 -1
  700. package/dist/preprocessor/index.d.ts +0 -3
  701. package/dist/preprocessor/index.js +0 -16
  702. package/dist/preprocessor/index.js.map +0 -1
  703. package/dist/types/CustomType.d.ts +0 -10
  704. package/dist/types/CustomType.js +0 -35
  705. package/dist/types/CustomType.js.map +0 -1
  706. package/dist/types/FunctionType.spec.js +0 -29
  707. package/dist/types/FunctionType.spec.js.map +0 -1
  708. package/dist/types/LazyType.d.ts +0 -15
  709. package/dist/types/LazyType.js +0 -32
  710. package/dist/types/LazyType.js.map +0 -1
  711. /package/dist/{bscPlugin/semanticTokens/SemanticTokensProcessor.spec.d.ts → astUtils/CachedLookups.spec.d.ts} +0 -0
  712. /package/dist/{parser/SGTypes.spec.d.ts → astUtils/Editor.spec.d.ts} +0 -0
  713. /package/dist/{preprocessor/Preprocessor.spec.d.ts → bscPlugin/completions/CompletionsProcessor.spec.d.ts} +0 -0
  714. /package/dist/{preprocessor/PreprocessorParser.spec.d.ts → bscPlugin/definition/DefinitionProvider.spec.d.ts} +0 -0
  715. /package/dist/{types/FunctionType.spec.d.ts → bscPlugin/hover/HoverProcessor.spec.d.ts} +0 -0
@@ -1,646 +1,1008 @@
1
1
  import type { Position } from 'vscode-languageserver';
2
2
  import { DiagnosticSeverity } from 'vscode-languageserver';
3
- import type { BsDiagnostic } from './interfaces';
4
- import type { TokenKind } from './lexer/TokenKind';
3
+ import type { BsDiagnostic, TypeCompatibilityData } from './interfaces';
4
+ import { TokenKind } from './lexer/TokenKind';
5
+ import { SymbolTypeFlag } from './SymbolTypeFlag';
6
+ import type { BscType } from './types/BscType';
7
+ export declare const DiagnosticCodeRegex: RegExp;
5
8
  /**
6
9
  * An object that keeps track of all possible error messages.
7
10
  */
8
11
  export declare let DiagnosticMessages: {
9
12
  genericParserMessage: (message: string) => {
10
13
  message: string;
11
- code: number;
14
+ legacyCode: number;
12
15
  severity: 1;
16
+ code: string;
13
17
  };
14
- callToUnknownFunction: (name: string, scopeName: string) => {
18
+ /**
19
+ *
20
+ * @param name for local vars, it's the var name. for namespaced parts, it's the specific part that's unknown (`alpha.beta.charlie` would result in "cannot find name 'charlie')
21
+ * @param fullName if a namespaced name, this is the full name `alpha.beta.charlie`, otherwise it's the same as `name`
22
+ * @param typeName if 'name' refers to a member, what is the the type it is a member of?
23
+ * @param typeDescriptor defaults to 'type' ... could also be 'namespace', etc.
24
+ */
25
+ cannotFindName: (name: string, fullName?: string, typeName?: string, typeDescriptor?: string) => {
15
26
  message: string;
16
- code: number;
27
+ legacyCode: number;
17
28
  data: {
18
- functionName: string;
29
+ name: string;
30
+ fullName: string;
31
+ typeName: string;
19
32
  };
20
33
  severity: 1;
34
+ code: string;
21
35
  };
22
36
  mismatchArgumentCount: (expectedCount: number | string, actualCount: number) => {
23
37
  message: string;
24
- code: number;
38
+ legacyCode: number;
25
39
  severity: 1;
40
+ code: string;
26
41
  };
27
- duplicateFunctionImplementation: (functionName: string, scopeName: string) => {
42
+ duplicateFunctionImplementation: (functionName: string) => {
28
43
  message: string;
29
- code: number;
44
+ legacyCode: number;
30
45
  severity: 1;
46
+ code: string;
31
47
  };
32
48
  referencedFileDoesNotExist: () => {
33
49
  message: string;
34
- code: number;
50
+ legacyCode: number;
35
51
  severity: 1;
52
+ code: string;
36
53
  };
37
54
  xmlComponentMissingComponentDeclaration: () => {
38
55
  message: string;
39
- code: number;
56
+ legacyCode: number;
40
57
  severity: 1;
58
+ code: string;
41
59
  };
42
60
  xmlComponentMissingNameAttribute: () => {
43
61
  message: string;
44
- code: number;
62
+ legacyCode: number;
45
63
  severity: 1;
64
+ code: string;
46
65
  };
47
66
  xmlComponentMissingExtendsAttribute: () => {
48
67
  message: string;
49
- code: number;
68
+ legacyCode: number;
50
69
  severity: 2;
70
+ code: string;
51
71
  };
52
- xmlGenericParseError: (message: string) => {
72
+ syntaxError: (message: string) => {
53
73
  message: string;
54
- code: number;
74
+ legacyCode: number;
55
75
  severity: 1;
76
+ code: string;
56
77
  };
57
78
  unnecessaryScriptImportInChildFromParent: (parentComponentName: string) => {
58
79
  message: string;
59
- code: number;
80
+ legacyCode: number;
60
81
  severity: 2;
82
+ code: string;
61
83
  };
62
84
  overridesAncestorFunction: (callableName: string, currentScopeName: string, parentFilePath: string, parentScopeName: string) => {
63
85
  message: string;
64
- code: number;
86
+ legacyCode: number;
65
87
  severity: 4;
88
+ code: string;
66
89
  };
67
90
  localVarFunctionShadowsParentFunction: (scopeName: 'stdlib' | 'scope') => {
68
91
  message: string;
69
- code: number;
92
+ legacyCode: number;
70
93
  severity: 2;
94
+ code: string;
71
95
  };
72
96
  scriptImportCaseMismatch: (correctFilePath: string) => {
73
97
  message: string;
74
- code: number;
98
+ legacyCode: number;
75
99
  severity: 2;
100
+ code: string;
76
101
  };
77
102
  fileNotReferencedByAnyOtherFile: () => {
78
103
  message: string;
79
- code: number;
104
+ legacyCode: number;
80
105
  severity: 2;
106
+ code: string;
81
107
  };
82
- unknownDiagnosticCode: (theUnknownCode: number) => {
108
+ unknownDiagnosticCode: (theUnknownCode: number | string) => {
83
109
  message: string;
84
- code: number;
110
+ legacyCode: number;
85
111
  severity: 2;
112
+ code: string;
86
113
  };
87
114
  scriptSrcCannotBeEmpty: () => {
88
115
  message: string;
89
- code: number;
116
+ legacyCode: number;
90
117
  severity: 1;
118
+ code: string;
91
119
  };
92
- expectedIdentifierAfterKeyword: (keywordText: string) => {
120
+ expectedIdentifier: (preceedingTokenText?: string) => {
93
121
  message: string;
94
- code: number;
122
+ legacyCode: number;
95
123
  severity: 1;
124
+ code: string;
96
125
  };
97
126
  missingCallableKeyword: () => {
98
127
  message: string;
99
- code: number;
128
+ legacyCode: number;
100
129
  severity: 1;
130
+ code: string;
101
131
  };
102
- expectedValidTypeToFollowAsKeyword: () => {
132
+ __unused12: () => {
103
133
  message: string;
104
- code: number;
134
+ legacyCode: number;
105
135
  severity: 1;
136
+ code: string;
106
137
  };
107
138
  bsFeatureNotSupportedInBrsFiles: (featureName: any) => {
108
139
  message: string;
109
- code: number;
140
+ legacyCode: number;
110
141
  severity: 1;
142
+ code: string;
111
143
  };
112
- brsConfigJsonIsDeprecated: () => {
144
+ __ununsed12: () => {
113
145
  message: string;
114
- code: number;
146
+ legacyCode: number;
115
147
  severity: 2;
148
+ code: string;
116
149
  };
117
150
  bsConfigJsonHasSyntaxErrors: (message: string) => {
118
151
  message: string;
119
- code: number;
152
+ legacyCode: number;
120
153
  severity: 1;
154
+ code: string;
121
155
  };
122
- namespacedClassCannotShareNamewithNonNamespacedClass: (nonNamespacedClassName: string) => {
156
+ itemIsDeprecated: (itemName?: string, deprecatedDescription?: string) => {
123
157
  message: string;
124
- code: number;
125
- severity: 1;
158
+ legacyCode: number;
159
+ severity: 4;
160
+ code: string;
126
161
  };
127
162
  cannotUseOverrideKeywordOnConstructorFunction: () => {
128
163
  message: string;
129
- code: number;
164
+ legacyCode: number;
130
165
  severity: 1;
166
+ code: string;
131
167
  };
132
- importStatementMustBeDeclaredAtTopOfFile: () => {
168
+ unexpectedStatementLocation: (statementKeyword: string, locationText: string) => {
133
169
  message: string;
134
- code: number;
170
+ legacyCode: number;
135
171
  severity: 1;
172
+ code: string;
136
173
  };
137
- methodDoesNotExistOnType: (methodName: string, className: string) => {
174
+ __unused8: (methodName: string, className: string) => {
138
175
  message: string;
139
- code: number;
176
+ legacyCode: number;
140
177
  severity: 1;
141
178
  };
142
179
  duplicateIdentifier: (memberName: string) => {
143
180
  message: string;
144
- code: number;
181
+ legacyCode: number;
145
182
  severity: 1;
183
+ code: string;
146
184
  };
147
185
  missingOverrideKeyword: (ancestorClassName: string) => {
148
186
  message: string;
149
- code: number;
187
+ legacyCode: number;
150
188
  severity: 1;
189
+ code: string;
151
190
  };
152
- duplicateClassDeclaration: (scopeName: string, className: string) => {
191
+ nameCollision: (thisThingKind: string, thatThingKind: string, thatThingName: string) => {
153
192
  message: string;
154
- code: number;
193
+ legacyCode: number;
155
194
  severity: 1;
195
+ code: string;
156
196
  };
157
- classCouldNotBeFound: (className: string, scopeName: string) => {
197
+ __unused9: (className: string, scopeName: string) => {
158
198
  message: string;
159
- code: number;
199
+ legacyCode: number;
160
200
  severity: 1;
161
201
  data: {
162
202
  className: string;
163
203
  };
164
204
  };
165
- expectedClassFieldIdentifier: () => {
205
+ __unused27: () => {
166
206
  message: string;
167
- code: number;
207
+ legacyCode: number;
168
208
  severity: 1;
209
+ code: string;
169
210
  };
170
211
  expressionIsNotConstructable: (expressionType: string) => {
171
212
  message: string;
172
- code: number;
213
+ legacyCode: number;
173
214
  severity: 1;
215
+ code: string;
174
216
  };
175
- expectedClassKeyword: () => {
217
+ expectedKeyword: (kind: TokenKind) => {
176
218
  message: string;
177
- code: number;
219
+ legacyCode: number;
178
220
  severity: 1;
221
+ code: string;
179
222
  };
180
- expectedLeftParenAfterCallable: (callableType: string) => {
223
+ __unused28: (callableType: string) => {
181
224
  message: string;
182
- code: number;
225
+ legacyCode: number;
183
226
  severity: 1;
227
+ code: string;
184
228
  };
185
- expectedNameAfterCallableKeyword: (callableType: string) => {
229
+ __unused29: (callableType: string) => {
186
230
  message: string;
187
- code: number;
231
+ legacyCode: number;
188
232
  severity: 1;
233
+ code: string;
189
234
  };
190
- expectedLeftParenAfterCallableName: (callableType: string) => {
235
+ __unused30: (callableType: string) => {
191
236
  message: string;
192
- code: number;
237
+ legacyCode: number;
193
238
  severity: 1;
239
+ code: string;
194
240
  };
195
241
  tooManyCallableParameters: (actual: number, max: number) => {
196
242
  message: string;
197
- code: number;
243
+ legacyCode: number;
198
244
  severity: 1;
245
+ code: string;
199
246
  };
200
- invalidFunctionReturnType: (typeText: string) => {
247
+ __unused: (typeText: string) => {
201
248
  message: string;
202
- code: number;
249
+ legacyCode: number;
203
250
  severity: 1;
204
251
  };
205
252
  requiredParameterMayNotFollowOptionalParameter: (parameterName: string) => {
206
253
  message: string;
207
- code: number;
254
+ legacyCode: number;
208
255
  severity: 1;
256
+ code: string;
209
257
  };
210
258
  expectedNewlineOrColon: () => {
211
259
  message: string;
212
- code: number;
260
+ legacyCode: number;
213
261
  severity: 1;
262
+ code: string;
214
263
  };
215
- functionNameCannotEndWithTypeDesignator: (callableType: string, name: string, designator: string) => {
264
+ invalidIdentifier: (name: string, character: string) => {
216
265
  message: string;
217
- code: number;
266
+ legacyCode: number;
218
267
  severity: 1;
268
+ code: string;
219
269
  };
220
- callableBlockMissingEndKeyword: (callableType: string) => {
270
+ __unused31: (callableType: string) => {
221
271
  message: string;
222
- code: number;
272
+ legacyCode: number;
223
273
  severity: 1;
274
+ code: string;
224
275
  };
225
- mismatchedEndCallableKeyword: (expectedCallableType: string, actualCallableType: string) => {
276
+ closingKeywordMismatch: (expectedCallableType: string, actualCallableType: string) => {
226
277
  message: string;
227
- code: number;
278
+ legacyCode: number;
228
279
  severity: 1;
280
+ code: string;
229
281
  };
230
282
  expectedParameterNameButFound: (text: string) => {
231
283
  message: string;
232
- code: number;
284
+ legacyCode: number;
233
285
  severity: 1;
286
+ code: string;
234
287
  };
235
- functionParameterTypeIsInvalid: (parameterName: string, typeText: string) => {
288
+ __unused2: (parameterName: string, typeText: string) => {
236
289
  message: string;
237
- code: number;
290
+ legacyCode: number;
238
291
  severity: 1;
239
292
  };
240
293
  cannotUseReservedWordAsIdentifier: (name: string) => {
241
294
  message: string;
242
- code: number;
295
+ legacyCode: number;
243
296
  severity: 1;
297
+ code: string;
244
298
  };
245
- expectedOperatorAfterIdentifier: (operators: TokenKind[], name: string) => {
299
+ expectedOperator: (operators: TokenKind[], name: string) => {
246
300
  message: string;
247
- code: number;
301
+ legacyCode: number;
248
302
  severity: 1;
303
+ code: string;
249
304
  };
250
305
  expectedInlineIfStatement: () => {
251
306
  message: string;
252
- code: number;
307
+ legacyCode: number;
253
308
  severity: 1;
309
+ code: string;
254
310
  };
255
311
  expectedFinalNewline: () => {
256
312
  message: string;
257
- code: number;
313
+ legacyCode: number;
258
314
  severity: 1;
315
+ code: string;
259
316
  };
260
317
  couldNotFindMatchingEndKeyword: (keyword: string) => {
261
318
  message: string;
262
- code: number;
319
+ legacyCode: number;
263
320
  severity: 1;
321
+ code: string;
264
322
  };
265
323
  expectedCatchBlockInTryCatch: () => {
266
324
  message: string;
267
- code: number;
325
+ legacyCode: number;
268
326
  severity: 1;
327
+ code: string;
269
328
  };
270
- expectedEndForOrNextToTerminateForLoop: () => {
329
+ expectedEndForOrNextToTerminateForLoop: (forLoopNameText?: string) => {
271
330
  message: string;
272
- code: number;
331
+ legacyCode: number;
273
332
  severity: 1;
333
+ code: string;
274
334
  };
275
- expectedInAfterForEach: (name: string) => {
335
+ __unused32: (name: string) => {
276
336
  message: string;
277
- code: number;
337
+ legacyCode: number;
278
338
  severity: 1;
339
+ code: string;
279
340
  };
280
341
  expectedExpressionAfterForEachIn: () => {
281
342
  message: string;
282
- code: number;
343
+ legacyCode: number;
283
344
  severity: 1;
345
+ code: string;
284
346
  };
285
347
  unexpectedColonBeforeIfStatement: () => {
286
348
  message: string;
287
- code: number;
349
+ legacyCode: number;
288
350
  severity: 1;
351
+ code: string;
289
352
  };
290
353
  expectedStringLiteralAfterKeyword: (keyword: string) => {
291
354
  message: string;
292
- code: number;
355
+ legacyCode: number;
293
356
  severity: 1;
357
+ code: string;
294
358
  };
295
359
  keywordMustBeDeclaredAtRootLevel: (keyword: string) => {
296
360
  message: string;
297
- code: number;
361
+ legacyCode: number;
298
362
  severity: 1;
363
+ code: string;
299
364
  };
300
- libraryStatementMustBeDeclaredAtTopOfFile: () => {
365
+ __unused5: () => {
301
366
  message: string;
302
- code: number;
367
+ legacyCode: number;
303
368
  severity: 1;
304
369
  };
305
- expectedEndIfElseIfOrElseToTerminateThenBlock: () => {
370
+ expectedTerminator: (expectedTerminators: string[] | string, statementType: string, blockDescriptor?: 'block' | 'statement') => {
306
371
  message: string;
307
- code: number;
308
372
  severity: 1;
373
+ code: string;
309
374
  };
310
- expectedEndTryToTerminateTryCatch: () => {
375
+ __unused14: () => {
311
376
  message: string;
312
- code: number;
377
+ legacyCode: number;
313
378
  severity: 1;
379
+ code: string;
314
380
  };
315
- expectedEndIfToCloseIfStatement: (startingPosition: Position) => {
381
+ __unused15: () => {
316
382
  message: string;
317
- code: number;
383
+ legacyCode: number;
318
384
  severity: 1;
385
+ code: string;
319
386
  };
320
- expectedStatementToFollowConditionalCondition: (conditionType: string) => {
387
+ __unused16: (startingPosition: Position) => {
321
388
  message: string;
322
- code: number;
389
+ legacyCode: number;
323
390
  severity: 1;
391
+ code: string;
324
392
  };
325
- expectedStatementToFollowElse: () => {
393
+ expectedStatement: (conditionType?: string, extraDetail?: string) => {
326
394
  message: string;
327
- code: number;
328
395
  severity: 1;
396
+ code: string;
329
397
  };
330
- consecutiveIncrementDecrementOperatorsAreNotAllowed: () => {
398
+ __unused18: (conditionType: string) => {
331
399
  message: string;
332
- code: number;
400
+ legacyCode: number;
333
401
  severity: 1;
402
+ code: string;
334
403
  };
335
- incrementDecrementOperatorsAreNotAllowedAsResultOfFunctionCall: () => {
404
+ __unused19: () => {
336
405
  message: string;
337
- code: number;
406
+ legacyCode: number;
338
407
  severity: 1;
408
+ code: string;
409
+ };
410
+ unexpectedOperator: () => {
411
+ message: string;
412
+ legacyCode: number;
413
+ severity: 1;
414
+ code: string;
415
+ };
416
+ __unused13: () => {
417
+ message: string;
418
+ legacyCode: number;
419
+ severity: 1;
420
+ code: string;
339
421
  };
340
422
  xmlUnexpectedTag: (tagName: string) => {
341
423
  message: string;
342
- code: number;
424
+ legacyCode: number;
343
425
  severity: 1;
426
+ code: string;
344
427
  };
345
- expectedStatementOrFunctionCallButReceivedExpression: () => {
428
+ __unused20: () => {
346
429
  message: string;
347
- code: number;
430
+ legacyCode: number;
348
431
  severity: 1;
432
+ code: string;
349
433
  };
350
434
  xmlFunctionNotFound: (name: string) => {
351
435
  message: string;
352
- code: number;
436
+ legacyCode: number;
353
437
  severity: 1;
438
+ code: string;
354
439
  };
355
440
  xmlInvalidFieldType: (name: string) => {
356
441
  message: string;
357
- code: number;
442
+ legacyCode: number;
358
443
  severity: 1;
444
+ code: string;
359
445
  };
360
446
  xmlUnexpectedChildren: (tagName: string) => {
361
447
  message: string;
362
- code: number;
448
+ legacyCode: number;
363
449
  severity: 1;
450
+ code: string;
364
451
  };
365
452
  xmlTagMissingAttribute: (tagName: string, attrName: string) => {
366
453
  message: string;
367
- code: number;
454
+ legacyCode: number;
368
455
  severity: 1;
456
+ code: string;
369
457
  };
370
458
  expectedLabelIdentifierAfterGotoKeyword: () => {
371
459
  message: string;
372
- code: number;
460
+ legacyCode: number;
373
461
  severity: 1;
462
+ code: string;
374
463
  };
375
- expectedRightSquareBraceAfterArrayOrObjectIndex: () => {
464
+ __unused26: () => {
376
465
  message: string;
377
- code: number;
466
+ legacyCode: number;
378
467
  severity: 1;
468
+ code: string;
379
469
  };
380
- expectedPropertyNameAfterPeriod: () => {
470
+ __unused21: () => {
381
471
  message: string;
382
- code: number;
472
+ legacyCode: number;
383
473
  severity: 1;
474
+ code: string;
384
475
  };
385
476
  tooManyCallableArguments: (actual: number, max: number) => {
386
477
  message: string;
387
- code: number;
478
+ legacyCode: number;
388
479
  severity: 1;
480
+ code: string;
389
481
  };
390
- expectedRightParenAfterFunctionCallArguments: () => {
482
+ /**
483
+ * @param unmatchedToken Should be one of '(', '[', or '{'
484
+ * @param afterDetail any additional message to describe what came before the unmatched token
485
+ */
486
+ unmatchedLeftToken: (unmatchedToken: string, afterDetail?: string) => {
391
487
  message: string;
392
- code: number;
488
+ legacyCode: number;
393
489
  severity: 1;
490
+ code: string;
394
491
  };
395
- unmatchedLeftParenAfterExpression: () => {
492
+ __unused23: () => {
396
493
  message: string;
397
- code: number;
494
+ legacyCode: number;
398
495
  severity: 1;
496
+ code: string;
399
497
  };
400
- unmatchedLeftSquareBraceAfterArrayLiteral: () => {
498
+ __unused24: () => {
401
499
  message: string;
402
- code: number;
500
+ legacyCode: number;
403
501
  severity: 1;
502
+ code: string;
404
503
  };
405
504
  unexpectedAAKey: () => {
406
505
  message: string;
407
- code: number;
506
+ legacyCode: number;
408
507
  severity: 1;
508
+ code: string;
409
509
  };
410
510
  expectedColonBetweenAAKeyAndvalue: () => {
411
511
  message: string;
412
- code: number;
512
+ legacyCode: number;
413
513
  severity: 1;
514
+ code: string;
414
515
  };
415
- unmatchedLeftCurlyAfterAALiteral: () => {
516
+ __unused25: () => {
416
517
  message: string;
417
- code: number;
518
+ legacyCode: number;
418
519
  severity: 1;
520
+ code: string;
419
521
  };
420
- foundUnexpectedToken: (text: string) => {
522
+ unexpectedToken: (text: string) => {
421
523
  message: string;
422
- code: number;
524
+ legacyCode: number;
423
525
  severity: 1;
526
+ code: string;
424
527
  };
425
528
  /**
426
529
  * Used in the lexer anytime we encounter an unsupported character
427
530
  */
428
531
  unexpectedCharacter: (text: string) => {
429
532
  message: string;
430
- code: number;
533
+ legacyCode: number;
431
534
  severity: 1;
535
+ code: string;
432
536
  };
433
- unterminatedStringAtEndOfLine: () => {
537
+ unterminatedString: () => {
434
538
  message: string;
435
- code: number;
539
+ legacyCode: number;
436
540
  severity: 1;
541
+ code: string;
437
542
  };
438
- unterminatedStringAtEndOfFile: () => {
543
+ __unused33: () => {
439
544
  message: string;
440
- code: number;
545
+ legacyCode: number;
441
546
  severity: 1;
547
+ code: string;
442
548
  };
443
- fractionalHexLiteralsAreNotSupported: () => {
549
+ __unused44: () => {
444
550
  message: string;
445
- code: number;
551
+ legacyCode: number;
446
552
  severity: 1;
553
+ code: string;
447
554
  };
448
555
  unexpectedConditionalCompilationString: () => {
449
556
  message: string;
450
- code: number;
557
+ legacyCode: number;
451
558
  severity: 1;
559
+ code: string;
452
560
  };
453
561
  duplicateConstDeclaration: (name: string) => {
454
562
  message: string;
455
- code: number;
563
+ legacyCode: number;
456
564
  severity: 1;
565
+ code: string;
457
566
  };
458
- constAliasDoesNotExist: (name: string) => {
567
+ __unused34: (name: string) => {
459
568
  message: string;
460
- code: number;
569
+ legacyCode: number;
461
570
  severity: 1;
571
+ code: string;
462
572
  };
463
573
  invalidHashConstValue: () => {
464
574
  message: string;
465
- code: number;
575
+ legacyCode: number;
466
576
  severity: 1;
577
+ code: string;
467
578
  };
468
- referencedConstDoesNotExist: () => {
579
+ hashConstDoesNotExist: () => {
469
580
  message: string;
470
- code: number;
581
+ legacyCode: number;
471
582
  severity: 1;
583
+ code: string;
472
584
  };
473
585
  invalidHashIfValue: () => {
474
586
  message: string;
475
- code: number;
587
+ legacyCode: number;
476
588
  severity: 1;
589
+ code: string;
477
590
  };
591
+ /**
592
+ * Treat #error directives like diagnostics, because the presence of `#error` even inside a runtime logical block that evaluates to false will 100% cause a compile error.
593
+ */
478
594
  hashError: (message: string) => {
479
595
  message: string;
480
- code: number;
596
+ legacyCode: number;
481
597
  severity: 1;
598
+ code: string;
482
599
  };
483
- expectedEqualAfterConstName: () => {
600
+ __unused43: () => {
484
601
  message: string;
485
- code: number;
602
+ legacyCode: number;
486
603
  severity: 1;
604
+ code: string;
487
605
  };
488
- expectedHashElseIfToCloseHashIf: (startingLine: number) => {
606
+ __unused17: (startingLine: number) => {
489
607
  message: string;
490
- code: number;
608
+ legacyCode: number;
491
609
  severity: 1;
610
+ code: string;
492
611
  };
493
- constNameCannotBeReservedWord: () => {
612
+ __unused35: () => {
494
613
  message: string;
495
- code: number;
614
+ legacyCode: number;
496
615
  severity: 1;
616
+ code: string;
497
617
  };
498
- expectedIdentifier: () => {
618
+ __unused22: () => {
499
619
  message: string;
500
- code: number;
620
+ legacyCode: number;
501
621
  severity: 1;
622
+ code: string;
502
623
  };
503
624
  expectedAttributeNameAfterAtSymbol: () => {
504
625
  message: string;
505
- code: number;
626
+ legacyCode: number;
506
627
  severity: 1;
628
+ code: string;
507
629
  };
508
630
  childFieldTypeNotAssignableToBaseProperty: (childTypeName: string, baseTypeName: string, fieldName: string, childFieldType: string, parentFieldType: string) => {
509
631
  message: string;
510
- code: number;
632
+ legacyCode: number;
511
633
  severity: 1;
634
+ code: string;
512
635
  };
513
- classChildMemberDifferentMemberTypeThanAncestor: (memberType: string, parentMemberType: string, parentClassName: string) => {
636
+ __unused36: (memberType: string, parentMemberType: string, parentClassName: string) => {
514
637
  message: string;
515
- code: number;
638
+ legacyCode: number;
516
639
  severity: 1;
640
+ code: string;
517
641
  };
518
642
  classConstructorMissingSuperCall: () => {
519
643
  message: string;
520
- code: number;
644
+ legacyCode: number;
521
645
  severity: 1;
646
+ code: string;
522
647
  };
523
648
  classConstructorIllegalUseOfMBeforeSuperCall: () => {
524
649
  message: string;
525
- code: number;
650
+ legacyCode: number;
526
651
  severity: 1;
652
+ code: string;
527
653
  };
528
654
  classFieldCannotBeOverridden: () => {
529
655
  message: string;
530
- code: number;
656
+ legacyCode: number;
531
657
  severity: 1;
658
+ code: string;
532
659
  };
533
660
  unusedAnnotation: () => {
534
661
  message: string;
535
- code: number;
662
+ legacyCode: number;
536
663
  severity: 1;
664
+ code: string;
537
665
  };
538
666
  localVarShadowedByScopedFunction: () => {
539
667
  message: string;
540
- code: number;
668
+ legacyCode: number;
541
669
  severity: 1;
670
+ code: string;
542
671
  };
543
672
  scopeFunctionShadowedByBuiltInFunction: () => {
544
673
  message: string;
545
- code: number;
674
+ legacyCode: number;
546
675
  severity: 1;
676
+ code: string;
547
677
  };
548
- localVarSameNameAsClass: (className: string) => {
678
+ __unused38: (className: string) => {
549
679
  message: string;
550
- code: number;
680
+ legacyCode: number;
551
681
  severity: 1;
682
+ code: string;
552
683
  };
553
- unnecessaryCodebehindScriptImport: () => {
684
+ __unused45: () => {
554
685
  message: string;
555
- code: number;
686
+ legacyCode: number;
556
687
  severity: 2;
688
+ code: string;
557
689
  };
558
- expectedOpenParenToFollowCallfuncIdentifier: () => {
690
+ __unused37: () => {
559
691
  message: string;
560
- code: number;
692
+ legacyCode: number;
561
693
  severity: 1;
694
+ code: string;
562
695
  };
563
- expectedTokenAButFoundTokenB: (tokenA: string, tokenB: string) => {
696
+ expectedToken: (...tokenKinds: string[]) => {
564
697
  message: string;
565
- code: number;
698
+ legacyCode: number;
566
699
  severity: 1;
700
+ code: string;
567
701
  };
568
- parameterMayNotHaveSameNameAsNamespace: (paramName: string) => {
702
+ __unused10: (paramName: string) => {
569
703
  message: string;
570
- code: number;
704
+ legacyCode: number;
571
705
  severity: 1;
706
+ code: string;
572
707
  };
573
- variableMayNotHaveSameNameAsNamespace: (variableName: string) => {
708
+ __unused11: (variableName: string) => {
574
709
  message: string;
575
- code: number;
710
+ legacyCode: number;
576
711
  severity: 1;
712
+ code: string;
577
713
  };
578
- unterminatedTemplateStringAtEndOfFile: () => {
714
+ unterminatedTemplateString: () => {
579
715
  message: string;
580
- code: number;
716
+ legacyCode: number;
581
717
  severity: 1;
718
+ code: string;
582
719
  };
583
720
  unterminatedTemplateExpression: () => {
584
721
  message: string;
585
- code: number;
722
+ legacyCode: number;
586
723
  severity: 1;
724
+ code: string;
587
725
  };
588
726
  duplicateComponentName: (componentName: string) => {
589
727
  message: string;
590
- code: number;
728
+ legacyCode: number;
591
729
  severity: 1;
730
+ code: string;
592
731
  };
593
- functionCannotHaveSameNameAsClass: (className: string) => {
732
+ __unused6: (className: string) => {
594
733
  message: string;
595
- code: number;
734
+ legacyCode: number;
596
735
  severity: 1;
597
736
  };
598
- missingExceptionVarToFollowCatch: () => {
737
+ expectedExceptionVarToFollowCatch: () => {
599
738
  message: string;
600
- code: number;
739
+ legacyCode: number;
601
740
  severity: 1;
741
+ code: string;
602
742
  };
603
743
  missingExceptionExpressionAfterThrowKeyword: () => {
604
744
  message: string;
605
- code: number;
745
+ legacyCode: number;
606
746
  severity: 1;
747
+ code: string;
607
748
  };
608
- missingLeftSquareBracketAfterDimIdentifier: () => {
749
+ __unused42: () => {
609
750
  message: string;
610
- code: number;
751
+ legacyCode: number;
611
752
  severity: 1;
753
+ code: string;
612
754
  };
613
- missingRightSquareBracketAfterDimIdentifier: () => {
755
+ __unused39: () => {
614
756
  message: string;
615
- code: number;
757
+ legacyCode: number;
616
758
  severity: 1;
759
+ code: string;
617
760
  };
618
761
  missingExpressionsInDimStatement: () => {
619
762
  message: string;
620
- code: number;
763
+ legacyCode: number;
621
764
  severity: 1;
765
+ code: string;
622
766
  };
623
767
  mismatchedOverriddenMemberVisibility: (childClassName: string, memberName: string, childAccessModifier: string, ancestorAccessModifier: string, ancestorClassName: string) => {
624
768
  message: string;
625
- code: number;
769
+ legacyCode: number;
770
+ severity: 1;
771
+ code: string;
772
+ };
773
+ __unused3: (typeName: string) => {
774
+ message: string;
775
+ legacyCode: number;
776
+ severity: 1;
777
+ };
778
+ enumValueMustBeType: (expectedType: string) => {
779
+ message: string;
780
+ legacyCode: number;
781
+ severity: 1;
782
+ code: string;
783
+ };
784
+ enumValueIsRequired: (expectedType: string) => {
785
+ message: string;
786
+ legacyCode: number;
787
+ severity: 1;
788
+ code: string;
789
+ };
790
+ __unused40: (name: string, enumName: string) => {
791
+ message: string;
792
+ legacyCode: number;
793
+ severity: 1;
794
+ code: string;
795
+ };
796
+ __unused7: (scopeName: string, enumName: string) => {
797
+ message: string;
798
+ legacyCode: number;
799
+ severity: 1;
800
+ };
801
+ unknownRoSGNode: (nodeName: string) => {
802
+ message: string;
803
+ legacyCode: number;
804
+ severity: 1;
805
+ code: string;
806
+ };
807
+ unknownBrightScriptComponent: (componentName: string) => {
808
+ message: string;
809
+ legacyCode: number;
810
+ severity: 1;
811
+ code: string;
812
+ };
813
+ mismatchCreateObjectArgumentCount: (componentName: string, allowedArgCounts: number[], actualCount: number) => {
814
+ message: string;
815
+ legacyCode: number;
816
+ severity: 1;
817
+ code: string;
818
+ };
819
+ __unused41: (componentName: string, deprecatedDescription?: string) => {
820
+ message: string;
821
+ legacyCode: number;
822
+ severity: 1;
823
+ code: string;
824
+ };
825
+ circularReferenceDetected: (items?: string | string[]) => {
826
+ message: string;
827
+ legacyCode: number;
828
+ severity: 1;
829
+ code: string;
830
+ };
831
+ unexpectedStatementOutsideFunction: () => {
832
+ message: string;
833
+ legacyCode: number;
834
+ severity: 1;
835
+ code: string;
836
+ };
837
+ detectedTooDeepFileSource: (numberOfParentDirectories: number) => {
838
+ message: string;
839
+ legacyCode: number;
840
+ severity: 1;
841
+ code: string;
842
+ };
843
+ illegalContinueStatement: () => {
844
+ message: string;
845
+ legacyCode: number;
846
+ severity: 1;
847
+ code: string;
848
+ };
849
+ keywordMustBeDeclaredAtNamespaceLevel: (keyword: string) => {
850
+ message: string;
851
+ legacyCode: number;
852
+ severity: 1;
853
+ code: string;
854
+ };
855
+ itemCannotBeUsedAsVariable: (itemType: string) => {
856
+ message: string;
857
+ legacyCode: number;
858
+ severity: 1;
859
+ code: string;
860
+ };
861
+ callfuncHasToManyArgs: (numberOfArgs: number) => {
862
+ message: string;
863
+ legacyCode: number;
864
+ severity: 1;
865
+ code: string;
866
+ };
867
+ noOptionalChainingInLeftHandSideOfAssignment: () => {
868
+ message: string;
869
+ legacyCode: number;
870
+ severity: 1;
871
+ code: string;
872
+ };
873
+ /**
874
+ * @param name for function calls where we can't find the name of the function
875
+ * @param fullName if a namespaced name, this is the full name `alpha.beta.charlie`, otherwise it's the same as `name`
876
+ * @param typeName if 'name' refers to a member, what is the the type it is a member of?
877
+ * @param typeDescriptor defaults to 'type' ... could also be 'namespace', etc.
878
+ */
879
+ cannotFindFunction: (name: string, fullName?: string, typeName?: string, typeDescriptor?: string) => {
880
+ message: string;
881
+ legacyCode: number;
882
+ data: {
883
+ name: string;
884
+ fullName: string;
885
+ typeName: string;
886
+ };
887
+ severity: 1;
888
+ code: string;
889
+ };
890
+ voidFunctionMayNotReturnValue: (functionType?: string) => {
891
+ message: string;
892
+ legacyCode: number;
893
+ severity: 1;
894
+ code: string;
895
+ };
896
+ nonVoidFunctionMustReturnValue: (functionType?: string) => {
897
+ message: string;
898
+ legacyCode: number;
899
+ severity: 1;
900
+ code: string;
901
+ };
902
+ assignmentTypeMismatch: (actualTypeString: string, expectedTypeString: string, data?: TypeCompatibilityData) => {
903
+ message: string;
904
+ data: TypeCompatibilityData;
905
+ legacyCode: number;
906
+ severity: 1;
907
+ code: string;
908
+ };
909
+ operatorTypeMismatch: (operatorString: string, firstType: string, secondType?: string) => {
910
+ message: string;
911
+ legacyCode: number;
912
+ severity: 1;
913
+ code: string;
914
+ };
915
+ incompatibleSymbolDefinition: (symbol: string, options?: {
916
+ scopes?: string[];
917
+ isUnion?: boolean;
918
+ types?: BscType[];
919
+ data?: TypeCompatibilityData;
920
+ }) => {
921
+ message: string;
922
+ legacyCode: number;
923
+ severity: 1;
924
+ code: string;
925
+ };
926
+ memberAccessibilityMismatch: (memberName: string, accessModifierFlag: SymbolTypeFlag, definingClassName: string) => {
927
+ message: string;
928
+ legacyCode: number;
929
+ severity: 1;
930
+ code: string;
931
+ };
932
+ invalidTypecastStatementApplication: (foundApplication: string) => {
933
+ message: string;
934
+ legacyCode: number;
935
+ severity: 1;
936
+ code: string;
937
+ };
938
+ itemCannotBeUsedAsType: (typeText: string) => {
939
+ message: string;
940
+ legacyCode: number;
941
+ severity: 1;
942
+ code: string;
943
+ };
944
+ unsafeUnmatchedTerminatorInConditionalCompileBlock: (terminator: string) => {
945
+ message: string;
946
+ legacyCode: number;
947
+ severity: 1;
948
+ code: string;
949
+ };
950
+ returnTypeCoercionMismatch: (returnType?: string) => {
951
+ message: string;
952
+ legacyCode: number;
953
+ severity: 1;
954
+ code: string;
955
+ };
956
+ argumentTypeMismatch: (actualTypeString: string, expectedTypeString: string, data?: TypeCompatibilityData) => {
957
+ message: string;
958
+ data: TypeCompatibilityData;
959
+ legacyCode: number;
960
+ severity: 1;
961
+ code: string;
962
+ };
963
+ returnTypeMismatch: (actualTypeString: string, expectedTypeString: string, data?: TypeCompatibilityData) => {
964
+ message: string;
965
+ data: TypeCompatibilityData;
966
+ legacyCode: number;
967
+ severity: 1;
968
+ code: string;
969
+ };
970
+ cannotFindCallFuncFunction: (name: string, fullName: string, typeName: string) => {
971
+ message: string;
972
+ data: {
973
+ name: string;
974
+ fullName: string;
975
+ typeName: string;
976
+ isCallfunc: boolean;
977
+ };
978
+ legacyCode: number;
626
979
  severity: 1;
980
+ code: string;
627
981
  };
628
- cannotFindType: (typeName: string) => {
982
+ notCallable: (name: string) => {
629
983
  message: string;
630
- code: number;
631
984
  severity: 1;
985
+ code: string;
632
986
  };
633
- argumentTypeMismatch: (actualTypeString: string, expectedTypeString: string) => {
987
+ notIterable: (typeName: string) => {
634
988
  message: string;
635
- code: number;
636
989
  severity: 1;
990
+ code: string;
637
991
  };
638
992
  };
639
- export declare const DiagnosticCodeMap: Record<"genericParserMessage" | "callToUnknownFunction" | "mismatchArgumentCount" | "duplicateFunctionImplementation" | "referencedFileDoesNotExist" | "xmlComponentMissingComponentDeclaration" | "xmlComponentMissingNameAttribute" | "xmlComponentMissingExtendsAttribute" | "xmlGenericParseError" | "unnecessaryScriptImportInChildFromParent" | "overridesAncestorFunction" | "localVarFunctionShadowsParentFunction" | "scriptImportCaseMismatch" | "fileNotReferencedByAnyOtherFile" | "unknownDiagnosticCode" | "scriptSrcCannotBeEmpty" | "expectedIdentifierAfterKeyword" | "missingCallableKeyword" | "expectedValidTypeToFollowAsKeyword" | "bsFeatureNotSupportedInBrsFiles" | "brsConfigJsonIsDeprecated" | "bsConfigJsonHasSyntaxErrors" | "namespacedClassCannotShareNamewithNonNamespacedClass" | "cannotUseOverrideKeywordOnConstructorFunction" | "importStatementMustBeDeclaredAtTopOfFile" | "methodDoesNotExistOnType" | "duplicateIdentifier" | "missingOverrideKeyword" | "duplicateClassDeclaration" | "classCouldNotBeFound" | "expectedClassFieldIdentifier" | "expressionIsNotConstructable" | "expectedClassKeyword" | "expectedLeftParenAfterCallable" | "expectedNameAfterCallableKeyword" | "expectedLeftParenAfterCallableName" | "tooManyCallableParameters" | "invalidFunctionReturnType" | "requiredParameterMayNotFollowOptionalParameter" | "expectedNewlineOrColon" | "functionNameCannotEndWithTypeDesignator" | "callableBlockMissingEndKeyword" | "mismatchedEndCallableKeyword" | "expectedParameterNameButFound" | "functionParameterTypeIsInvalid" | "cannotUseReservedWordAsIdentifier" | "expectedOperatorAfterIdentifier" | "expectedInlineIfStatement" | "expectedFinalNewline" | "couldNotFindMatchingEndKeyword" | "expectedCatchBlockInTryCatch" | "expectedEndForOrNextToTerminateForLoop" | "expectedInAfterForEach" | "expectedExpressionAfterForEachIn" | "unexpectedColonBeforeIfStatement" | "expectedStringLiteralAfterKeyword" | "keywordMustBeDeclaredAtRootLevel" | "libraryStatementMustBeDeclaredAtTopOfFile" | "expectedEndIfElseIfOrElseToTerminateThenBlock" | "expectedEndTryToTerminateTryCatch" | "expectedEndIfToCloseIfStatement" | "expectedStatementToFollowConditionalCondition" | "expectedStatementToFollowElse" | "consecutiveIncrementDecrementOperatorsAreNotAllowed" | "incrementDecrementOperatorsAreNotAllowedAsResultOfFunctionCall" | "xmlUnexpectedTag" | "expectedStatementOrFunctionCallButReceivedExpression" | "xmlFunctionNotFound" | "xmlInvalidFieldType" | "xmlUnexpectedChildren" | "xmlTagMissingAttribute" | "expectedLabelIdentifierAfterGotoKeyword" | "expectedRightSquareBraceAfterArrayOrObjectIndex" | "expectedPropertyNameAfterPeriod" | "tooManyCallableArguments" | "expectedRightParenAfterFunctionCallArguments" | "unmatchedLeftParenAfterExpression" | "unmatchedLeftSquareBraceAfterArrayLiteral" | "unexpectedAAKey" | "expectedColonBetweenAAKeyAndvalue" | "unmatchedLeftCurlyAfterAALiteral" | "foundUnexpectedToken" | "unexpectedCharacter" | "unterminatedStringAtEndOfLine" | "unterminatedStringAtEndOfFile" | "fractionalHexLiteralsAreNotSupported" | "unexpectedConditionalCompilationString" | "duplicateConstDeclaration" | "constAliasDoesNotExist" | "invalidHashConstValue" | "referencedConstDoesNotExist" | "invalidHashIfValue" | "hashError" | "expectedEqualAfterConstName" | "expectedHashElseIfToCloseHashIf" | "constNameCannotBeReservedWord" | "expectedIdentifier" | "expectedAttributeNameAfterAtSymbol" | "childFieldTypeNotAssignableToBaseProperty" | "classChildMemberDifferentMemberTypeThanAncestor" | "classConstructorMissingSuperCall" | "classConstructorIllegalUseOfMBeforeSuperCall" | "classFieldCannotBeOverridden" | "unusedAnnotation" | "localVarShadowedByScopedFunction" | "scopeFunctionShadowedByBuiltInFunction" | "localVarSameNameAsClass" | "unnecessaryCodebehindScriptImport" | "expectedOpenParenToFollowCallfuncIdentifier" | "expectedTokenAButFoundTokenB" | "parameterMayNotHaveSameNameAsNamespace" | "variableMayNotHaveSameNameAsNamespace" | "unterminatedTemplateStringAtEndOfFile" | "unterminatedTemplateExpression" | "duplicateComponentName" | "functionCannotHaveSameNameAsClass" | "missingExceptionVarToFollowCatch" | "missingExceptionExpressionAfterThrowKeyword" | "missingLeftSquareBracketAfterDimIdentifier" | "missingRightSquareBracketAfterDimIdentifier" | "missingExpressionsInDimStatement" | "mismatchedOverriddenMemberVisibility" | "cannotFindType" | "argumentTypeMismatch", number>;
640
- export declare let diagnosticCodes: number[];
993
+ export declare const defaultMaximumTruncationLength = 160;
994
+ export declare function typeCompatibilityMessage(actualTypeString: string, expectedTypeString: string, data: TypeCompatibilityData): string;
995
+ export declare function incompatibleSymbolMessage(symbolName: string, options: {
996
+ scopes?: string[];
997
+ isUnion?: boolean;
998
+ data?: TypeCompatibilityData;
999
+ }): string;
1000
+ export declare const DiagnosticCodeMap: Record<"genericParserMessage" | "cannotFindName" | "mismatchArgumentCount" | "duplicateFunctionImplementation" | "referencedFileDoesNotExist" | "xmlComponentMissingComponentDeclaration" | "xmlComponentMissingNameAttribute" | "xmlComponentMissingExtendsAttribute" | "syntaxError" | "unnecessaryScriptImportInChildFromParent" | "overridesAncestorFunction" | "localVarFunctionShadowsParentFunction" | "scriptImportCaseMismatch" | "fileNotReferencedByAnyOtherFile" | "unknownDiagnosticCode" | "scriptSrcCannotBeEmpty" | "expectedIdentifier" | "missingCallableKeyword" | "__unused12" | "bsFeatureNotSupportedInBrsFiles" | "__ununsed12" | "bsConfigJsonHasSyntaxErrors" | "itemIsDeprecated" | "cannotUseOverrideKeywordOnConstructorFunction" | "unexpectedStatementLocation" | "__unused8" | "duplicateIdentifier" | "missingOverrideKeyword" | "nameCollision" | "__unused9" | "__unused27" | "expressionIsNotConstructable" | "expectedKeyword" | "__unused28" | "__unused29" | "__unused30" | "tooManyCallableParameters" | "__unused" | "requiredParameterMayNotFollowOptionalParameter" | "expectedNewlineOrColon" | "invalidIdentifier" | "__unused31" | "closingKeywordMismatch" | "expectedParameterNameButFound" | "__unused2" | "cannotUseReservedWordAsIdentifier" | "expectedOperator" | "expectedInlineIfStatement" | "expectedFinalNewline" | "couldNotFindMatchingEndKeyword" | "expectedCatchBlockInTryCatch" | "expectedEndForOrNextToTerminateForLoop" | "__unused32" | "expectedExpressionAfterForEachIn" | "unexpectedColonBeforeIfStatement" | "expectedStringLiteralAfterKeyword" | "keywordMustBeDeclaredAtRootLevel" | "__unused5" | "expectedTerminator" | "__unused14" | "__unused15" | "__unused16" | "expectedStatement" | "__unused18" | "__unused19" | "unexpectedOperator" | "__unused13" | "xmlUnexpectedTag" | "__unused20" | "xmlFunctionNotFound" | "xmlInvalidFieldType" | "xmlUnexpectedChildren" | "xmlTagMissingAttribute" | "expectedLabelIdentifierAfterGotoKeyword" | "__unused26" | "__unused21" | "tooManyCallableArguments" | "unmatchedLeftToken" | "__unused23" | "__unused24" | "unexpectedAAKey" | "expectedColonBetweenAAKeyAndvalue" | "__unused25" | "unexpectedToken" | "unexpectedCharacter" | "unterminatedString" | "__unused33" | "__unused44" | "unexpectedConditionalCompilationString" | "duplicateConstDeclaration" | "__unused34" | "invalidHashConstValue" | "hashConstDoesNotExist" | "invalidHashIfValue" | "hashError" | "__unused43" | "__unused17" | "__unused35" | "__unused22" | "expectedAttributeNameAfterAtSymbol" | "childFieldTypeNotAssignableToBaseProperty" | "__unused36" | "classConstructorMissingSuperCall" | "classConstructorIllegalUseOfMBeforeSuperCall" | "classFieldCannotBeOverridden" | "unusedAnnotation" | "localVarShadowedByScopedFunction" | "scopeFunctionShadowedByBuiltInFunction" | "__unused38" | "__unused45" | "__unused37" | "expectedToken" | "__unused10" | "__unused11" | "unterminatedTemplateString" | "unterminatedTemplateExpression" | "duplicateComponentName" | "__unused6" | "expectedExceptionVarToFollowCatch" | "missingExceptionExpressionAfterThrowKeyword" | "__unused42" | "__unused39" | "missingExpressionsInDimStatement" | "mismatchedOverriddenMemberVisibility" | "__unused3" | "enumValueMustBeType" | "enumValueIsRequired" | "__unused40" | "__unused7" | "unknownRoSGNode" | "unknownBrightScriptComponent" | "mismatchCreateObjectArgumentCount" | "__unused41" | "circularReferenceDetected" | "unexpectedStatementOutsideFunction" | "detectedTooDeepFileSource" | "illegalContinueStatement" | "keywordMustBeDeclaredAtNamespaceLevel" | "itemCannotBeUsedAsVariable" | "callfuncHasToManyArgs" | "noOptionalChainingInLeftHandSideOfAssignment" | "cannotFindFunction" | "voidFunctionMayNotReturnValue" | "nonVoidFunctionMustReturnValue" | "assignmentTypeMismatch" | "operatorTypeMismatch" | "incompatibleSymbolDefinition" | "memberAccessibilityMismatch" | "invalidTypecastStatementApplication" | "itemCannotBeUsedAsType" | "unsafeUnmatchedTerminatorInConditionalCompileBlock" | "returnTypeCoercionMismatch" | "argumentTypeMismatch" | "returnTypeMismatch" | "cannotFindCallFuncFunction" | "notCallable" | "notIterable", string>;
1001
+ export declare const DiagnosticLegacyCodeMap: Record<"genericParserMessage" | "cannotFindName" | "mismatchArgumentCount" | "duplicateFunctionImplementation" | "referencedFileDoesNotExist" | "xmlComponentMissingComponentDeclaration" | "xmlComponentMissingNameAttribute" | "xmlComponentMissingExtendsAttribute" | "syntaxError" | "unnecessaryScriptImportInChildFromParent" | "overridesAncestorFunction" | "localVarFunctionShadowsParentFunction" | "scriptImportCaseMismatch" | "fileNotReferencedByAnyOtherFile" | "unknownDiagnosticCode" | "scriptSrcCannotBeEmpty" | "expectedIdentifier" | "missingCallableKeyword" | "__unused12" | "bsFeatureNotSupportedInBrsFiles" | "__ununsed12" | "bsConfigJsonHasSyntaxErrors" | "itemIsDeprecated" | "cannotUseOverrideKeywordOnConstructorFunction" | "unexpectedStatementLocation" | "__unused8" | "duplicateIdentifier" | "missingOverrideKeyword" | "nameCollision" | "__unused9" | "__unused27" | "expressionIsNotConstructable" | "expectedKeyword" | "__unused28" | "__unused29" | "__unused30" | "tooManyCallableParameters" | "__unused" | "requiredParameterMayNotFollowOptionalParameter" | "expectedNewlineOrColon" | "invalidIdentifier" | "__unused31" | "closingKeywordMismatch" | "expectedParameterNameButFound" | "__unused2" | "cannotUseReservedWordAsIdentifier" | "expectedOperator" | "expectedInlineIfStatement" | "expectedFinalNewline" | "couldNotFindMatchingEndKeyword" | "expectedCatchBlockInTryCatch" | "expectedEndForOrNextToTerminateForLoop" | "__unused32" | "expectedExpressionAfterForEachIn" | "unexpectedColonBeforeIfStatement" | "expectedStringLiteralAfterKeyword" | "keywordMustBeDeclaredAtRootLevel" | "__unused5" | "expectedTerminator" | "__unused14" | "__unused15" | "__unused16" | "expectedStatement" | "__unused18" | "__unused19" | "unexpectedOperator" | "__unused13" | "xmlUnexpectedTag" | "__unused20" | "xmlFunctionNotFound" | "xmlInvalidFieldType" | "xmlUnexpectedChildren" | "xmlTagMissingAttribute" | "expectedLabelIdentifierAfterGotoKeyword" | "__unused26" | "__unused21" | "tooManyCallableArguments" | "unmatchedLeftToken" | "__unused23" | "__unused24" | "unexpectedAAKey" | "expectedColonBetweenAAKeyAndvalue" | "__unused25" | "unexpectedToken" | "unexpectedCharacter" | "unterminatedString" | "__unused33" | "__unused44" | "unexpectedConditionalCompilationString" | "duplicateConstDeclaration" | "__unused34" | "invalidHashConstValue" | "hashConstDoesNotExist" | "invalidHashIfValue" | "hashError" | "__unused43" | "__unused17" | "__unused35" | "__unused22" | "expectedAttributeNameAfterAtSymbol" | "childFieldTypeNotAssignableToBaseProperty" | "__unused36" | "classConstructorMissingSuperCall" | "classConstructorIllegalUseOfMBeforeSuperCall" | "classFieldCannotBeOverridden" | "unusedAnnotation" | "localVarShadowedByScopedFunction" | "scopeFunctionShadowedByBuiltInFunction" | "__unused38" | "__unused45" | "__unused37" | "expectedToken" | "__unused10" | "__unused11" | "unterminatedTemplateString" | "unterminatedTemplateExpression" | "duplicateComponentName" | "__unused6" | "expectedExceptionVarToFollowCatch" | "missingExceptionExpressionAfterThrowKeyword" | "__unused42" | "__unused39" | "missingExpressionsInDimStatement" | "mismatchedOverriddenMemberVisibility" | "__unused3" | "enumValueMustBeType" | "enumValueIsRequired" | "__unused40" | "__unused7" | "unknownRoSGNode" | "unknownBrightScriptComponent" | "mismatchCreateObjectArgumentCount" | "__unused41" | "circularReferenceDetected" | "unexpectedStatementOutsideFunction" | "detectedTooDeepFileSource" | "illegalContinueStatement" | "keywordMustBeDeclaredAtNamespaceLevel" | "itemCannotBeUsedAsVariable" | "callfuncHasToManyArgs" | "noOptionalChainingInLeftHandSideOfAssignment" | "cannotFindFunction" | "voidFunctionMayNotReturnValue" | "nonVoidFunctionMustReturnValue" | "assignmentTypeMismatch" | "operatorTypeMismatch" | "incompatibleSymbolDefinition" | "memberAccessibilityMismatch" | "invalidTypecastStatementApplication" | "itemCannotBeUsedAsType" | "unsafeUnmatchedTerminatorInConditionalCompileBlock" | "returnTypeCoercionMismatch" | "argumentTypeMismatch" | "returnTypeMismatch" | "cannotFindCallFuncFunction" | "notCallable" | "notIterable", number>;
1002
+ export declare let diagnosticCodes: string[];
641
1003
  export interface DiagnosticInfo {
642
1004
  message: string;
643
- code: number;
1005
+ legacyCode: number;
644
1006
  severity: DiagnosticSeverity;
645
1007
  }
646
1008
  /**
@@ -648,4 +1010,4 @@ export interface DiagnosticInfo {
648
1010
  * The second type parameter is optional, but allows plugins to pass in their own
649
1011
  * DiagnosticMessages-like object in order to get the same type support
650
1012
  */
651
- export declare type DiagnosticMessageType<K extends keyof D, D extends Record<string, (...args: any) => any> = typeof DiagnosticMessages> = ReturnType<D[K]> & Pick<BsDiagnostic, 'range' | 'file' | 'relatedInformation' | 'tags'>;
1013
+ export declare type DiagnosticMessageType<K extends keyof D, D extends Record<string, (...args: any) => any> = typeof DiagnosticMessages> = ReturnType<D[K]> & Pick<BsDiagnostic, 'code' | 'location' | 'relatedInformation' | 'tags'>;