@grafema/core 0.1.0-alpha.5 → 0.2.0-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (530) hide show
  1. package/README.md +0 -1
  2. package/dist/Orchestrator.d.ts +31 -2
  3. package/dist/Orchestrator.d.ts.map +1 -1
  4. package/dist/Orchestrator.js +222 -27
  5. package/dist/config/ConfigLoader.d.ts +90 -0
  6. package/dist/config/ConfigLoader.d.ts.map +1 -0
  7. package/dist/config/ConfigLoader.js +249 -0
  8. package/dist/config/index.d.ts +6 -0
  9. package/dist/config/index.d.ts.map +1 -0
  10. package/dist/config/index.js +4 -0
  11. package/dist/core/ASTWorker.d.ts +11 -36
  12. package/dist/core/ASTWorker.d.ts.map +1 -1
  13. package/dist/core/ASTWorker.js +93 -99
  14. package/dist/core/CoverageAnalyzer.d.ts +65 -0
  15. package/dist/core/CoverageAnalyzer.d.ts.map +1 -0
  16. package/dist/core/CoverageAnalyzer.js +198 -0
  17. package/dist/core/FileExplainer.d.ts +101 -0
  18. package/dist/core/FileExplainer.d.ts.map +1 -0
  19. package/dist/core/FileExplainer.js +139 -0
  20. package/dist/core/FileNodeManager.d.ts +40 -0
  21. package/dist/core/FileNodeManager.d.ts.map +1 -0
  22. package/dist/core/FileNodeManager.js +84 -0
  23. package/dist/core/GraphFreshnessChecker.d.ts +33 -0
  24. package/dist/core/GraphFreshnessChecker.d.ts.map +1 -0
  25. package/dist/core/GraphFreshnessChecker.js +101 -0
  26. package/dist/core/HashUtils.d.ts +24 -0
  27. package/dist/core/HashUtils.d.ts.map +1 -0
  28. package/dist/core/HashUtils.js +45 -0
  29. package/dist/core/IncrementalReanalyzer.d.ts +36 -0
  30. package/dist/core/IncrementalReanalyzer.d.ts.map +1 -0
  31. package/dist/core/IncrementalReanalyzer.js +132 -0
  32. package/dist/core/NodeFactory.d.ts +266 -19
  33. package/dist/core/NodeFactory.d.ts.map +1 -1
  34. package/dist/core/NodeFactory.js +256 -21
  35. package/dist/core/ScopeTracker.d.ts +84 -0
  36. package/dist/core/ScopeTracker.d.ts.map +1 -0
  37. package/dist/core/ScopeTracker.js +116 -0
  38. package/dist/core/SemanticId.d.ts +90 -0
  39. package/dist/core/SemanticId.d.ts.map +1 -0
  40. package/dist/core/SemanticId.js +115 -0
  41. package/dist/core/VersionManager.d.ts.map +1 -1
  42. package/dist/core/VersionManager.js +3 -2
  43. package/dist/core/nodes/ArgumentExpressionNode.d.ts +43 -0
  44. package/dist/core/nodes/ArgumentExpressionNode.d.ts.map +1 -0
  45. package/dist/core/nodes/ArgumentExpressionNode.js +60 -0
  46. package/dist/core/nodes/ArrayLiteralNode.d.ts +27 -0
  47. package/dist/core/nodes/ArrayLiteralNode.d.ts.map +1 -0
  48. package/dist/core/nodes/ArrayLiteralNode.js +43 -0
  49. package/dist/core/nodes/BranchNode.d.ts +41 -0
  50. package/dist/core/nodes/BranchNode.d.ts.map +1 -0
  51. package/dist/core/nodes/BranchNode.js +82 -0
  52. package/dist/core/nodes/CallSiteNode.d.ts +30 -2
  53. package/dist/core/nodes/CallSiteNode.d.ts.map +1 -1
  54. package/dist/core/nodes/CallSiteNode.js +54 -4
  55. package/dist/core/nodes/CaseNode.d.ts +43 -0
  56. package/dist/core/nodes/CaseNode.d.ts.map +1 -0
  57. package/dist/core/nodes/CaseNode.js +81 -0
  58. package/dist/core/nodes/ClassNode.d.ts +34 -2
  59. package/dist/core/nodes/ClassNode.d.ts.map +1 -1
  60. package/dist/core/nodes/ClassNode.js +52 -4
  61. package/dist/core/nodes/ConstantNode.d.ts +2 -2
  62. package/dist/core/nodes/ConstantNode.d.ts.map +1 -1
  63. package/dist/core/nodes/ConstantNode.js +6 -4
  64. package/dist/core/nodes/ConstructorCallNode.d.ts +51 -0
  65. package/dist/core/nodes/ConstructorCallNode.d.ts.map +1 -0
  66. package/dist/core/nodes/ConstructorCallNode.js +171 -0
  67. package/dist/core/nodes/DatabaseQueryNode.d.ts +3 -2
  68. package/dist/core/nodes/DatabaseQueryNode.d.ts.map +1 -1
  69. package/dist/core/nodes/DatabaseQueryNode.js +5 -2
  70. package/dist/core/nodes/DecoratorNode.d.ts +42 -0
  71. package/dist/core/nodes/DecoratorNode.d.ts.map +1 -0
  72. package/dist/core/nodes/DecoratorNode.js +64 -0
  73. package/dist/core/nodes/EnumNode.d.ts +42 -0
  74. package/dist/core/nodes/EnumNode.d.ts.map +1 -0
  75. package/dist/core/nodes/EnumNode.js +56 -0
  76. package/dist/core/nodes/EventListenerNode.d.ts +4 -4
  77. package/dist/core/nodes/EventListenerNode.d.ts.map +1 -1
  78. package/dist/core/nodes/EventListenerNode.js +7 -4
  79. package/dist/core/nodes/ExportNode.d.ts +38 -2
  80. package/dist/core/nodes/ExportNode.d.ts.map +1 -1
  81. package/dist/core/nodes/ExportNode.js +54 -4
  82. package/dist/core/nodes/ExpressionNode.d.ts +97 -0
  83. package/dist/core/nodes/ExpressionNode.d.ts.map +1 -0
  84. package/dist/core/nodes/ExpressionNode.js +180 -0
  85. package/dist/core/nodes/ExternalModuleNode.d.ts +32 -0
  86. package/dist/core/nodes/ExternalModuleNode.d.ts.map +1 -0
  87. package/dist/core/nodes/ExternalModuleNode.js +49 -0
  88. package/dist/core/nodes/ExternalStdioNode.d.ts +13 -6
  89. package/dist/core/nodes/ExternalStdioNode.d.ts.map +1 -1
  90. package/dist/core/nodes/ExternalStdioNode.js +15 -8
  91. package/dist/core/nodes/FunctionNode.d.ts +36 -0
  92. package/dist/core/nodes/FunctionNode.d.ts.map +1 -1
  93. package/dist/core/nodes/FunctionNode.js +80 -1
  94. package/dist/core/nodes/HttpRequestNode.d.ts +4 -4
  95. package/dist/core/nodes/HttpRequestNode.d.ts.map +1 -1
  96. package/dist/core/nodes/HttpRequestNode.js +7 -4
  97. package/dist/core/nodes/ImportNode.d.ts +28 -6
  98. package/dist/core/nodes/ImportNode.d.ts.map +1 -1
  99. package/dist/core/nodes/ImportNode.js +43 -8
  100. package/dist/core/nodes/InterfaceNode.d.ts +46 -0
  101. package/dist/core/nodes/InterfaceNode.d.ts.map +1 -0
  102. package/dist/core/nodes/InterfaceNode.js +57 -0
  103. package/dist/core/nodes/IssueNode.d.ts +73 -0
  104. package/dist/core/nodes/IssueNode.d.ts.map +1 -0
  105. package/dist/core/nodes/IssueNode.js +129 -0
  106. package/dist/core/nodes/LiteralNode.d.ts +2 -2
  107. package/dist/core/nodes/LiteralNode.d.ts.map +1 -1
  108. package/dist/core/nodes/LiteralNode.js +6 -4
  109. package/dist/core/nodes/MethodCallNode.d.ts +32 -2
  110. package/dist/core/nodes/MethodCallNode.d.ts.map +1 -1
  111. package/dist/core/nodes/MethodCallNode.js +57 -4
  112. package/dist/core/nodes/MethodNode.d.ts +34 -2
  113. package/dist/core/nodes/MethodNode.d.ts.map +1 -1
  114. package/dist/core/nodes/MethodNode.js +55 -3
  115. package/dist/core/nodes/ModuleNode.d.ts +31 -0
  116. package/dist/core/nodes/ModuleNode.d.ts.map +1 -1
  117. package/dist/core/nodes/ModuleNode.js +37 -0
  118. package/dist/core/nodes/NetworkRequestNode.d.ts +54 -0
  119. package/dist/core/nodes/NetworkRequestNode.d.ts.map +1 -0
  120. package/dist/core/nodes/NetworkRequestNode.js +65 -0
  121. package/dist/core/nodes/ObjectLiteralNode.d.ts +27 -0
  122. package/dist/core/nodes/ObjectLiteralNode.d.ts.map +1 -0
  123. package/dist/core/nodes/ObjectLiteralNode.js +43 -0
  124. package/dist/core/nodes/ParameterNode.d.ts +2 -2
  125. package/dist/core/nodes/ParameterNode.d.ts.map +1 -1
  126. package/dist/core/nodes/ParameterNode.js +5 -3
  127. package/dist/core/nodes/ScopeNode.d.ts +31 -0
  128. package/dist/core/nodes/ScopeNode.d.ts.map +1 -1
  129. package/dist/core/nodes/ScopeNode.js +49 -0
  130. package/dist/core/nodes/TypeNode.d.ts +36 -0
  131. package/dist/core/nodes/TypeNode.d.ts.map +1 -0
  132. package/dist/core/nodes/TypeNode.js +55 -0
  133. package/dist/core/nodes/VariableDeclarationNode.d.ts +29 -2
  134. package/dist/core/nodes/VariableDeclarationNode.d.ts.map +1 -1
  135. package/dist/core/nodes/VariableDeclarationNode.js +48 -4
  136. package/dist/core/nodes/index.d.ts +15 -1
  137. package/dist/core/nodes/index.d.ts.map +1 -1
  138. package/dist/core/nodes/index.js +17 -0
  139. package/dist/data/builtins/BuiltinRegistry.d.ts +78 -0
  140. package/dist/data/builtins/BuiltinRegistry.d.ts.map +1 -0
  141. package/dist/data/builtins/BuiltinRegistry.js +110 -0
  142. package/dist/data/builtins/definitions.d.ts +28 -0
  143. package/dist/data/builtins/definitions.d.ts.map +1 -0
  144. package/dist/data/builtins/definitions.js +250 -0
  145. package/dist/data/builtins/index.d.ts +10 -0
  146. package/dist/data/builtins/index.d.ts.map +1 -0
  147. package/dist/data/builtins/index.js +8 -0
  148. package/dist/data/builtins/jsGlobals.d.ts +18 -0
  149. package/dist/data/builtins/jsGlobals.d.ts.map +1 -0
  150. package/dist/data/builtins/jsGlobals.js +26 -0
  151. package/dist/data/builtins/types.d.ts +34 -0
  152. package/dist/data/builtins/types.d.ts.map +1 -0
  153. package/dist/data/builtins/types.js +7 -0
  154. package/dist/data/globals/definitions.d.ts +27 -0
  155. package/dist/data/globals/definitions.d.ts.map +1 -0
  156. package/dist/data/globals/definitions.js +117 -0
  157. package/dist/data/globals/index.d.ts +36 -0
  158. package/dist/data/globals/index.d.ts.map +1 -0
  159. package/dist/data/globals/index.js +52 -0
  160. package/dist/diagnostics/DiagnosticCollector.d.ts +98 -0
  161. package/dist/diagnostics/DiagnosticCollector.d.ts.map +1 -0
  162. package/dist/diagnostics/DiagnosticCollector.js +129 -0
  163. package/dist/diagnostics/DiagnosticReporter.d.ts +100 -0
  164. package/dist/diagnostics/DiagnosticReporter.d.ts.map +1 -0
  165. package/dist/diagnostics/DiagnosticReporter.js +247 -0
  166. package/dist/diagnostics/DiagnosticWriter.d.ts +31 -0
  167. package/dist/diagnostics/DiagnosticWriter.d.ts.map +1 -0
  168. package/dist/diagnostics/DiagnosticWriter.js +43 -0
  169. package/dist/diagnostics/index.d.ts +14 -0
  170. package/dist/diagnostics/index.d.ts.map +1 -0
  171. package/dist/diagnostics/index.js +11 -0
  172. package/dist/errors/GrafemaError.d.ts +161 -0
  173. package/dist/errors/GrafemaError.d.ts.map +1 -0
  174. package/dist/errors/GrafemaError.js +181 -0
  175. package/dist/index.d.ts +73 -1
  176. package/dist/index.d.ts.map +1 -1
  177. package/dist/index.js +70 -1
  178. package/dist/logging/Logger.d.ts +48 -0
  179. package/dist/logging/Logger.d.ts.map +1 -0
  180. package/dist/logging/Logger.js +134 -0
  181. package/dist/plugins/Plugin.d.ts +5 -1
  182. package/dist/plugins/Plugin.d.ts.map +1 -1
  183. package/dist/plugins/Plugin.js +33 -0
  184. package/dist/plugins/analysis/DatabaseAnalyzer.d.ts.map +1 -1
  185. package/dist/plugins/analysis/DatabaseAnalyzer.js +14 -6
  186. package/dist/plugins/analysis/ExpressAnalyzer.d.ts.map +1 -1
  187. package/dist/plugins/analysis/ExpressAnalyzer.js +29 -19
  188. package/dist/plugins/analysis/ExpressResponseAnalyzer.d.ts +148 -0
  189. package/dist/plugins/analysis/ExpressResponseAnalyzer.d.ts.map +1 -0
  190. package/dist/plugins/analysis/ExpressResponseAnalyzer.js +495 -0
  191. package/dist/plugins/analysis/ExpressRouteAnalyzer.d.ts.map +1 -1
  192. package/dist/plugins/analysis/ExpressRouteAnalyzer.js +71 -29
  193. package/dist/plugins/analysis/FetchAnalyzer.d.ts +41 -0
  194. package/dist/plugins/analysis/FetchAnalyzer.d.ts.map +1 -1
  195. package/dist/plugins/analysis/FetchAnalyzer.js +187 -19
  196. package/dist/plugins/analysis/IncrementalAnalysisPlugin.d.ts +6 -3
  197. package/dist/plugins/analysis/IncrementalAnalysisPlugin.d.ts.map +1 -1
  198. package/dist/plugins/analysis/IncrementalAnalysisPlugin.js +76 -80
  199. package/dist/plugins/analysis/JSASTAnalyzer.d.ts +313 -19
  200. package/dist/plugins/analysis/JSASTAnalyzer.d.ts.map +1 -1
  201. package/dist/plugins/analysis/JSASTAnalyzer.js +3430 -503
  202. package/dist/plugins/analysis/ReactAnalyzer.d.ts.map +1 -1
  203. package/dist/plugins/analysis/ReactAnalyzer.js +56 -57
  204. package/dist/plugins/analysis/RustAnalyzer.d.ts.map +1 -1
  205. package/dist/plugins/analysis/RustAnalyzer.js +16 -11
  206. package/dist/plugins/analysis/SQLiteAnalyzer.d.ts.map +1 -1
  207. package/dist/plugins/analysis/SQLiteAnalyzer.js +11 -7
  208. package/dist/plugins/analysis/ServiceLayerAnalyzer.d.ts.map +1 -1
  209. package/dist/plugins/analysis/ServiceLayerAnalyzer.js +21 -9
  210. package/dist/plugins/analysis/SocketIOAnalyzer.d.ts +9 -0
  211. package/dist/plugins/analysis/SocketIOAnalyzer.d.ts.map +1 -1
  212. package/dist/plugins/analysis/SocketIOAnalyzer.js +117 -21
  213. package/dist/plugins/analysis/SystemDbAnalyzer.d.ts.map +1 -1
  214. package/dist/plugins/analysis/SystemDbAnalyzer.js +15 -5
  215. package/dist/plugins/analysis/ast/GraphBuilder.d.ts +207 -4
  216. package/dist/plugins/analysis/ast/GraphBuilder.d.ts.map +1 -1
  217. package/dist/plugins/analysis/ast/GraphBuilder.js +1527 -316
  218. package/dist/plugins/analysis/ast/IdGenerator.d.ts +105 -0
  219. package/dist/plugins/analysis/ast/IdGenerator.d.ts.map +1 -0
  220. package/dist/plugins/analysis/ast/IdGenerator.js +116 -0
  221. package/dist/plugins/analysis/ast/types.d.ts +470 -5
  222. package/dist/plugins/analysis/ast/types.d.ts.map +1 -1
  223. package/dist/plugins/analysis/ast/utils/createParameterNodes.d.ts +33 -0
  224. package/dist/plugins/analysis/ast/utils/createParameterNodes.d.ts.map +1 -0
  225. package/dist/plugins/analysis/ast/utils/createParameterNodes.js +89 -0
  226. package/dist/plugins/analysis/ast/utils/index.d.ts +6 -0
  227. package/dist/plugins/analysis/ast/utils/index.d.ts.map +1 -0
  228. package/dist/plugins/analysis/ast/utils/index.js +5 -0
  229. package/dist/plugins/analysis/ast/utils/location.d.ts +87 -0
  230. package/dist/plugins/analysis/ast/utils/location.d.ts.map +1 -0
  231. package/dist/plugins/analysis/ast/utils/location.js +78 -0
  232. package/dist/plugins/analysis/ast/visitors/ASTVisitor.d.ts +14 -5
  233. package/dist/plugins/analysis/ast/visitors/ASTVisitor.d.ts.map +1 -1
  234. package/dist/plugins/analysis/ast/visitors/ASTVisitor.js +6 -5
  235. package/dist/plugins/analysis/ast/visitors/CallExpressionVisitor.d.ts +100 -9
  236. package/dist/plugins/analysis/ast/visitors/CallExpressionVisitor.d.ts.map +1 -1
  237. package/dist/plugins/analysis/ast/visitors/CallExpressionVisitor.js +674 -125
  238. package/dist/plugins/analysis/ast/visitors/ClassVisitor.d.ts +4 -1
  239. package/dist/plugins/analysis/ast/visitors/ClassVisitor.d.ts.map +1 -1
  240. package/dist/plugins/analysis/ast/visitors/ClassVisitor.js +72 -32
  241. package/dist/plugins/analysis/ast/visitors/FunctionVisitor.d.ts +14 -1
  242. package/dist/plugins/analysis/ast/visitors/FunctionVisitor.d.ts.map +1 -1
  243. package/dist/plugins/analysis/ast/visitors/FunctionVisitor.js +190 -63
  244. package/dist/plugins/analysis/ast/visitors/ImportExportVisitor.d.ts +4 -0
  245. package/dist/plugins/analysis/ast/visitors/ImportExportVisitor.d.ts.map +1 -1
  246. package/dist/plugins/analysis/ast/visitors/ImportExportVisitor.js +112 -8
  247. package/dist/plugins/analysis/ast/visitors/TypeScriptVisitor.d.ts +12 -1
  248. package/dist/plugins/analysis/ast/visitors/TypeScriptVisitor.d.ts.map +1 -1
  249. package/dist/plugins/analysis/ast/visitors/TypeScriptVisitor.js +36 -14
  250. package/dist/plugins/analysis/ast/visitors/VariableVisitor.d.ts +20 -2
  251. package/dist/plugins/analysis/ast/visitors/VariableVisitor.d.ts.map +1 -1
  252. package/dist/plugins/analysis/ast/visitors/VariableVisitor.js +243 -45
  253. package/dist/plugins/discovery/MonorepoServiceDiscovery.d.ts.map +1 -1
  254. package/dist/plugins/discovery/MonorepoServiceDiscovery.js +3 -2
  255. package/dist/plugins/discovery/SimpleProjectDiscovery.d.ts.map +1 -1
  256. package/dist/plugins/discovery/SimpleProjectDiscovery.js +5 -1
  257. package/dist/plugins/discovery/WorkspaceDiscovery.d.ts +22 -0
  258. package/dist/plugins/discovery/WorkspaceDiscovery.d.ts.map +1 -0
  259. package/dist/plugins/discovery/WorkspaceDiscovery.js +141 -0
  260. package/dist/plugins/discovery/resolveSourceEntrypoint.d.ts +46 -0
  261. package/dist/plugins/discovery/resolveSourceEntrypoint.d.ts.map +1 -0
  262. package/dist/plugins/discovery/resolveSourceEntrypoint.js +86 -0
  263. package/dist/plugins/discovery/workspaces/detector.d.ts +21 -0
  264. package/dist/plugins/discovery/workspaces/detector.d.ts.map +1 -0
  265. package/dist/plugins/discovery/workspaces/detector.js +49 -0
  266. package/dist/plugins/discovery/workspaces/globResolver.d.ts +35 -0
  267. package/dist/plugins/discovery/workspaces/globResolver.d.ts.map +1 -0
  268. package/dist/plugins/discovery/workspaces/globResolver.js +184 -0
  269. package/dist/plugins/discovery/workspaces/index.d.ts +9 -0
  270. package/dist/plugins/discovery/workspaces/index.d.ts.map +1 -0
  271. package/dist/plugins/discovery/workspaces/index.js +8 -0
  272. package/dist/plugins/discovery/workspaces/parsers.d.ts +38 -0
  273. package/dist/plugins/discovery/workspaces/parsers.d.ts.map +1 -0
  274. package/dist/plugins/discovery/workspaces/parsers.js +80 -0
  275. package/dist/plugins/enrichment/AliasTracker.d.ts.map +1 -1
  276. package/dist/plugins/enrichment/AliasTracker.js +29 -8
  277. package/dist/plugins/enrichment/ArgumentParameterLinker.d.ts +32 -0
  278. package/dist/plugins/enrichment/ArgumentParameterLinker.d.ts.map +1 -0
  279. package/dist/plugins/enrichment/ArgumentParameterLinker.js +175 -0
  280. package/dist/plugins/enrichment/ClosureCaptureEnricher.d.ts +51 -0
  281. package/dist/plugins/enrichment/ClosureCaptureEnricher.d.ts.map +1 -0
  282. package/dist/plugins/enrichment/ClosureCaptureEnricher.js +205 -0
  283. package/dist/plugins/enrichment/ExternalCallResolver.d.ts +42 -0
  284. package/dist/plugins/enrichment/ExternalCallResolver.d.ts.map +1 -0
  285. package/dist/plugins/enrichment/ExternalCallResolver.js +213 -0
  286. package/dist/plugins/enrichment/FunctionCallResolver.d.ts +58 -0
  287. package/dist/plugins/enrichment/FunctionCallResolver.d.ts.map +1 -0
  288. package/dist/plugins/enrichment/FunctionCallResolver.js +340 -0
  289. package/dist/plugins/enrichment/HTTPConnectionEnricher.d.ts +16 -3
  290. package/dist/plugins/enrichment/HTTPConnectionEnricher.d.ts.map +1 -1
  291. package/dist/plugins/enrichment/HTTPConnectionEnricher.js +78 -27
  292. package/dist/plugins/enrichment/ImportExportLinker.d.ts.map +1 -1
  293. package/dist/plugins/enrichment/ImportExportLinker.js +23 -6
  294. package/dist/plugins/enrichment/MethodCallResolver.d.ts.map +1 -1
  295. package/dist/plugins/enrichment/MethodCallResolver.js +33 -13
  296. package/dist/plugins/enrichment/MountPointResolver.d.ts +14 -12
  297. package/dist/plugins/enrichment/MountPointResolver.d.ts.map +1 -1
  298. package/dist/plugins/enrichment/MountPointResolver.js +173 -147
  299. package/dist/plugins/enrichment/NodejsBuiltinsResolver.d.ts +44 -0
  300. package/dist/plugins/enrichment/NodejsBuiltinsResolver.d.ts.map +1 -0
  301. package/dist/plugins/enrichment/NodejsBuiltinsResolver.js +271 -0
  302. package/dist/plugins/enrichment/PrefixEvaluator.d.ts.map +1 -1
  303. package/dist/plugins/enrichment/PrefixEvaluator.js +16 -7
  304. package/dist/plugins/enrichment/RustFFIEnricher.d.ts.map +1 -1
  305. package/dist/plugins/enrichment/RustFFIEnricher.js +6 -5
  306. package/dist/plugins/enrichment/ValueDomainAnalyzer.d.ts +22 -27
  307. package/dist/plugins/enrichment/ValueDomainAnalyzer.d.ts.map +1 -1
  308. package/dist/plugins/enrichment/ValueDomainAnalyzer.js +185 -143
  309. package/dist/plugins/indexing/IncrementalModuleIndexer.d.ts.map +1 -1
  310. package/dist/plugins/indexing/IncrementalModuleIndexer.js +23 -14
  311. package/dist/plugins/indexing/JSModuleIndexer.d.ts +15 -0
  312. package/dist/plugins/indexing/JSModuleIndexer.d.ts.map +1 -1
  313. package/dist/plugins/indexing/JSModuleIndexer.js +121 -31
  314. package/dist/plugins/indexing/RustModuleIndexer.d.ts +1 -1
  315. package/dist/plugins/indexing/RustModuleIndexer.d.ts.map +1 -1
  316. package/dist/plugins/indexing/RustModuleIndexer.js +8 -7
  317. package/dist/plugins/indexing/ServiceDetector.d.ts +10 -0
  318. package/dist/plugins/indexing/ServiceDetector.d.ts.map +1 -1
  319. package/dist/plugins/indexing/ServiceDetector.js +28 -15
  320. package/dist/plugins/validation/BrokenImportValidator.d.ts +31 -0
  321. package/dist/plugins/validation/BrokenImportValidator.d.ts.map +1 -0
  322. package/dist/plugins/validation/BrokenImportValidator.js +249 -0
  323. package/dist/plugins/validation/CallResolverValidator.d.ts +21 -10
  324. package/dist/plugins/validation/CallResolverValidator.d.ts.map +1 -1
  325. package/dist/plugins/validation/CallResolverValidator.js +103 -77
  326. package/dist/plugins/validation/DataFlowValidator.d.ts.map +1 -1
  327. package/dist/plugins/validation/DataFlowValidator.js +62 -49
  328. package/dist/plugins/validation/EvalBanValidator.d.ts.map +1 -1
  329. package/dist/plugins/validation/EvalBanValidator.js +17 -16
  330. package/dist/plugins/validation/GraphConnectivityValidator.d.ts.map +1 -1
  331. package/dist/plugins/validation/GraphConnectivityValidator.js +44 -24
  332. package/dist/plugins/validation/NodeCreationValidator.d.ts +85 -0
  333. package/dist/plugins/validation/NodeCreationValidator.d.ts.map +1 -0
  334. package/dist/plugins/validation/NodeCreationValidator.js +415 -0
  335. package/dist/plugins/validation/SQLInjectionValidator.d.ts.map +1 -1
  336. package/dist/plugins/validation/SQLInjectionValidator.js +61 -19
  337. package/dist/plugins/validation/ShadowingDetector.d.ts.map +1 -1
  338. package/dist/plugins/validation/ShadowingDetector.js +6 -5
  339. package/dist/plugins/validation/TypeScriptDeadCodeValidator.d.ts.map +1 -1
  340. package/dist/plugins/validation/TypeScriptDeadCodeValidator.js +12 -11
  341. package/dist/plugins/vcs/GitPlugin.d.ts.map +1 -1
  342. package/dist/plugins/vcs/GitPlugin.js +10 -12
  343. package/dist/plugins/vcs/VCSPlugin.d.ts +3 -2
  344. package/dist/plugins/vcs/VCSPlugin.d.ts.map +1 -1
  345. package/dist/plugins/vcs/VCSPlugin.js +5 -5
  346. package/dist/queries/findCallsInFunction.d.ts +52 -0
  347. package/dist/queries/findCallsInFunction.d.ts.map +1 -0
  348. package/dist/queries/findCallsInFunction.js +135 -0
  349. package/dist/queries/findContainingFunction.d.ts +45 -0
  350. package/dist/queries/findContainingFunction.d.ts.map +1 -0
  351. package/dist/queries/findContainingFunction.js +54 -0
  352. package/dist/queries/index.d.ts +14 -0
  353. package/dist/queries/index.d.ts.map +1 -0
  354. package/dist/queries/index.js +11 -0
  355. package/dist/queries/traceValues.d.ts +70 -0
  356. package/dist/queries/traceValues.d.ts.map +1 -0
  357. package/dist/queries/traceValues.js +299 -0
  358. package/dist/queries/types.d.ts +163 -0
  359. package/dist/queries/types.d.ts.map +1 -0
  360. package/dist/queries/types.js +9 -0
  361. package/dist/schema/GraphSchemaExtractor.d.ts +53 -0
  362. package/dist/schema/GraphSchemaExtractor.d.ts.map +1 -0
  363. package/dist/schema/GraphSchemaExtractor.js +124 -0
  364. package/dist/schema/InterfaceSchemaExtractor.d.ts +73 -0
  365. package/dist/schema/InterfaceSchemaExtractor.d.ts.map +1 -0
  366. package/dist/schema/InterfaceSchemaExtractor.js +112 -0
  367. package/dist/schema/index.d.ts +5 -0
  368. package/dist/schema/index.d.ts.map +1 -0
  369. package/dist/schema/index.js +2 -0
  370. package/dist/storage/backends/RFDBServerBackend.d.ts +21 -34
  371. package/dist/storage/backends/RFDBServerBackend.d.ts.map +1 -1
  372. package/dist/storage/backends/RFDBServerBackend.js +72 -62
  373. package/dist/storage/backends/typeValidation.d.ts.map +1 -1
  374. package/dist/storage/backends/typeValidation.js +1 -0
  375. package/dist/validation/PathValidator.d.ts +1 -2
  376. package/dist/validation/PathValidator.d.ts.map +1 -1
  377. package/package.json +3 -3
  378. package/src/Orchestrator.ts +272 -27
  379. package/src/config/ConfigLoader.ts +354 -0
  380. package/src/config/index.ts +5 -0
  381. package/src/core/ASTWorker.ts +143 -139
  382. package/src/core/CoverageAnalyzer.ts +243 -0
  383. package/src/core/FileExplainer.ts +179 -0
  384. package/src/core/FileNodeManager.ts +100 -0
  385. package/src/core/GraphFreshnessChecker.ts +143 -0
  386. package/src/core/HashUtils.ts +48 -0
  387. package/src/core/IncrementalReanalyzer.ts +192 -0
  388. package/src/core/NodeFactory.ts +470 -23
  389. package/src/core/ScopeTracker.ts +154 -0
  390. package/src/core/SemanticId.ts +192 -0
  391. package/src/core/VersionManager.ts +3 -2
  392. package/src/core/nodes/ArgumentExpressionNode.ts +89 -0
  393. package/src/core/nodes/ArrayLiteralNode.ts +66 -0
  394. package/src/core/nodes/BranchNode.ts +113 -0
  395. package/src/core/nodes/CallSiteNode.ts +64 -4
  396. package/src/core/nodes/CaseNode.ts +123 -0
  397. package/src/core/nodes/ClassNode.ts +67 -4
  398. package/src/core/nodes/ConstantNode.ts +5 -4
  399. package/src/core/nodes/ConstructorCallNode.ts +217 -0
  400. package/src/core/nodes/DatabaseQueryNode.ts +5 -1
  401. package/src/core/nodes/DecoratorNode.ts +92 -0
  402. package/src/core/nodes/EnumNode.ts +87 -0
  403. package/src/core/nodes/EventListenerNode.ts +7 -4
  404. package/src/core/nodes/ExportNode.ts +74 -4
  405. package/src/core/nodes/ExpressionNode.ts +232 -0
  406. package/src/core/nodes/ExternalModuleNode.ts +65 -0
  407. package/src/core/nodes/ExternalStdioNode.ts +17 -9
  408. package/src/core/nodes/FunctionNode.ts +101 -1
  409. package/src/core/nodes/HttpRequestNode.ts +7 -4
  410. package/src/core/nodes/ImportNode.ts +62 -13
  411. package/src/core/nodes/InterfaceNode.ts +92 -0
  412. package/src/core/nodes/IssueNode.ts +177 -0
  413. package/src/core/nodes/LiteralNode.ts +5 -4
  414. package/src/core/nodes/MethodCallNode.ts +70 -4
  415. package/src/core/nodes/MethodNode.ts +68 -3
  416. package/src/core/nodes/ModuleNode.ts +50 -0
  417. package/src/core/nodes/NetworkRequestNode.ts +77 -0
  418. package/src/core/nodes/ObjectLiteralNode.ts +66 -0
  419. package/src/core/nodes/ParameterNode.ts +4 -3
  420. package/src/core/nodes/ScopeNode.ts +65 -0
  421. package/src/core/nodes/TypeNode.ts +79 -0
  422. package/src/core/nodes/VariableDeclarationNode.ts +58 -4
  423. package/src/core/nodes/index.ts +21 -1
  424. package/src/data/builtins/BuiltinRegistry.ts +124 -0
  425. package/src/data/builtins/definitions.ts +267 -0
  426. package/src/data/builtins/index.ts +10 -0
  427. package/src/data/builtins/jsGlobals.ts +28 -0
  428. package/src/data/builtins/types.ts +36 -0
  429. package/src/data/globals/definitions.ts +156 -0
  430. package/src/data/globals/index.ts +66 -0
  431. package/src/diagnostics/DiagnosticCollector.ts +163 -0
  432. package/src/diagnostics/DiagnosticReporter.ts +324 -0
  433. package/src/diagnostics/DiagnosticWriter.ts +50 -0
  434. package/src/diagnostics/index.ts +16 -0
  435. package/src/errors/GrafemaError.ts +239 -0
  436. package/src/index.ts +193 -1
  437. package/src/logging/Logger.ts +152 -0
  438. package/src/plugins/Plugin.ts +42 -0
  439. package/src/plugins/analysis/DatabaseAnalyzer.ts +16 -8
  440. package/src/plugins/analysis/ExpressAnalyzer.ts +33 -19
  441. package/src/plugins/analysis/ExpressResponseAnalyzer.ts +636 -0
  442. package/src/plugins/analysis/ExpressRouteAnalyzer.ts +76 -36
  443. package/src/plugins/analysis/FetchAnalyzer.ts +232 -21
  444. package/src/plugins/analysis/IncrementalAnalysisPlugin.ts +84 -101
  445. package/src/plugins/analysis/JSASTAnalyzer.ts +4265 -587
  446. package/src/plugins/analysis/ReactAnalyzer.ts +57 -57
  447. package/src/plugins/analysis/RustAnalyzer.ts +16 -11
  448. package/src/plugins/analysis/SQLiteAnalyzer.ts +13 -7
  449. package/src/plugins/analysis/ServiceLayerAnalyzer.ts +22 -16
  450. package/src/plugins/analysis/SocketIOAnalyzer.ts +151 -28
  451. package/src/plugins/analysis/SystemDbAnalyzer.ts +16 -11
  452. package/src/plugins/analysis/ast/GraphBuilder.ts +1947 -327
  453. package/src/plugins/analysis/ast/IdGenerator.ts +177 -0
  454. package/src/plugins/analysis/ast/types.ts +596 -6
  455. package/src/plugins/analysis/ast/utils/createParameterNodes.ts +104 -0
  456. package/src/plugins/analysis/ast/utils/index.ts +12 -0
  457. package/src/plugins/analysis/ast/utils/location.ts +103 -0
  458. package/src/plugins/analysis/ast/visitors/ASTVisitor.ts +19 -8
  459. package/src/plugins/analysis/ast/visitors/CallExpressionVisitor.ts +924 -83
  460. package/src/plugins/analysis/ast/visitors/ClassVisitor.ts +97 -44
  461. package/src/plugins/analysis/ast/visitors/FunctionVisitor.ts +234 -93
  462. package/src/plugins/analysis/ast/visitors/ImportExportVisitor.ts +124 -9
  463. package/src/plugins/analysis/ast/visitors/TypeScriptVisitor.ts +41 -14
  464. package/src/plugins/analysis/ast/visitors/VariableVisitor.ts +294 -49
  465. package/src/plugins/discovery/MonorepoServiceDiscovery.ts +3 -2
  466. package/src/plugins/discovery/SimpleProjectDiscovery.ts +6 -1
  467. package/src/plugins/discovery/WorkspaceDiscovery.ts +184 -0
  468. package/src/plugins/discovery/resolveSourceEntrypoint.ts +103 -0
  469. package/src/plugins/discovery/workspaces/detector.ts +63 -0
  470. package/src/plugins/discovery/workspaces/globResolver.ts +229 -0
  471. package/src/plugins/discovery/workspaces/index.ts +23 -0
  472. package/src/plugins/discovery/workspaces/parsers.ts +99 -0
  473. package/src/plugins/enrichment/AliasTracker.ts +35 -8
  474. package/src/plugins/enrichment/ArgumentParameterLinker.ts +240 -0
  475. package/src/plugins/enrichment/ClosureCaptureEnricher.ts +267 -0
  476. package/src/plugins/enrichment/ExternalCallResolver.ts +262 -0
  477. package/src/plugins/enrichment/FunctionCallResolver.ts +456 -0
  478. package/src/plugins/enrichment/HTTPConnectionEnricher.ts +84 -27
  479. package/src/plugins/enrichment/ImportExportLinker.ts +24 -6
  480. package/src/plugins/enrichment/MethodCallResolver.ts +39 -13
  481. package/src/plugins/enrichment/MountPointResolver.ts +208 -195
  482. package/src/plugins/enrichment/NodejsBuiltinsResolver.ts +365 -0
  483. package/src/plugins/enrichment/PrefixEvaluator.ts +16 -7
  484. package/src/plugins/enrichment/RustFFIEnricher.ts +6 -5
  485. package/src/plugins/enrichment/ValueDomainAnalyzer.ts +209 -189
  486. package/src/plugins/indexing/IncrementalModuleIndexer.ts +23 -14
  487. package/src/plugins/indexing/JSModuleIndexer.ts +140 -34
  488. package/src/plugins/indexing/RustModuleIndexer.ts +8 -7
  489. package/src/plugins/validation/BrokenImportValidator.ts +325 -0
  490. package/src/plugins/validation/CallResolverValidator.ts +131 -110
  491. package/src/plugins/validation/DataFlowValidator.ts +88 -67
  492. package/src/plugins/validation/EvalBanValidator.ts +17 -16
  493. package/src/plugins/validation/GraphConnectivityValidator.ts +58 -24
  494. package/src/plugins/validation/NodeCreationValidator.ts +554 -0
  495. package/src/plugins/validation/SQLInjectionValidator.ts +63 -20
  496. package/src/plugins/validation/ShadowingDetector.ts +6 -5
  497. package/src/plugins/validation/TypeScriptDeadCodeValidator.ts +12 -11
  498. package/src/plugins/vcs/GitPlugin.ts +40 -12
  499. package/src/plugins/vcs/VCSPlugin.ts +7 -5
  500. package/src/queries/README.md +46 -0
  501. package/src/queries/findCallsInFunction.ts +206 -0
  502. package/src/queries/findContainingFunction.ts +83 -0
  503. package/src/queries/index.ts +23 -0
  504. package/src/queries/traceValues.ts +398 -0
  505. package/src/queries/types.ts +187 -0
  506. package/src/schema/GraphSchemaExtractor.ts +177 -0
  507. package/src/schema/InterfaceSchemaExtractor.ts +173 -0
  508. package/src/schema/index.ts +5 -0
  509. package/src/storage/backends/RFDBServerBackend.ts +100 -98
  510. package/src/storage/backends/typeValidation.ts +1 -0
  511. package/src/validation/PathValidator.ts +1 -1
  512. package/dist/core/AnalysisWorker.d.ts +0 -14
  513. package/dist/core/AnalysisWorker.d.ts.map +0 -1
  514. package/dist/core/AnalysisWorker.js +0 -307
  515. package/dist/core/ParallelAnalyzer.d.ts +0 -120
  516. package/dist/core/ParallelAnalyzer.d.ts.map +0 -1
  517. package/dist/core/ParallelAnalyzer.js +0 -331
  518. package/dist/core/QueueWorker.d.ts +0 -12
  519. package/dist/core/QueueWorker.d.ts.map +0 -1
  520. package/dist/core/QueueWorker.js +0 -567
  521. package/dist/core/RFDBClient.d.ts +0 -179
  522. package/dist/core/RFDBClient.d.ts.map +0 -1
  523. package/dist/core/RFDBClient.js +0 -429
  524. package/dist/plugins/discovery/ZonServiceDiscovery.d.ts +0 -19
  525. package/dist/plugins/discovery/ZonServiceDiscovery.d.ts.map +0 -1
  526. package/dist/plugins/discovery/ZonServiceDiscovery.js +0 -204
  527. package/src/core/AnalysisWorker.ts +0 -410
  528. package/src/core/ParallelAnalyzer.ts +0 -476
  529. package/src/core/QueueWorker.ts +0 -780
  530. package/src/plugins/indexing/ServiceDetector.ts +0 -230
@@ -10,21 +10,38 @@ export { ClassNode } from './ClassNode.js';
10
10
  export { MethodNode } from './MethodNode.js';
11
11
  export { ParameterNode } from './ParameterNode.js';
12
12
  export { ScopeNode } from './ScopeNode.js';
13
+ export { BranchNode } from './BranchNode.js';
14
+ export { CaseNode } from './CaseNode.js';
13
15
  // Call/reference nodes
14
16
  export { CallSiteNode } from './CallSiteNode.js';
15
17
  export { MethodCallNode } from './MethodCallNode.js';
18
+ export { ConstructorCallNode } from './ConstructorCallNode.js';
16
19
  export { VariableDeclarationNode } from './VariableDeclarationNode.js';
17
20
  export { ConstantNode } from './ConstantNode.js';
18
21
  export { LiteralNode } from './LiteralNode.js';
22
+ export { ObjectLiteralNode } from './ObjectLiteralNode.js';
23
+ export { ArrayLiteralNode } from './ArrayLiteralNode.js';
19
24
  // Import/Export nodes
20
25
  export { ImportNode } from './ImportNode.js';
21
26
  export { ExportNode } from './ExportNode.js';
27
+ export { ExternalModuleNode } from './ExternalModuleNode.js';
28
+ // TypeScript declaration nodes
29
+ export { InterfaceNode } from './InterfaceNode.js';
30
+ export { TypeNode } from './TypeNode.js';
31
+ export { EnumNode } from './EnumNode.js';
32
+ export { DecoratorNode } from './DecoratorNode.js';
33
+ // Expression nodes
34
+ export { ExpressionNode } from './ExpressionNode.js';
35
+ export { ArgumentExpressionNode } from './ArgumentExpressionNode.js';
22
36
  // External/IO nodes
23
37
  export { ExternalStdioNode } from './ExternalStdioNode.js';
38
+ export { NetworkRequestNode } from './NetworkRequestNode.js';
24
39
  export { EventListenerNode } from './EventListenerNode.js';
25
40
  export { HttpRequestNode } from './HttpRequestNode.js';
26
41
  export { DatabaseQueryNode } from './DatabaseQueryNode.js';
27
42
  // Guarantee nodes (contract-based)
28
43
  export { GuaranteeNode } from './GuaranteeNode.js';
44
+ // Issue nodes (detected problems)
45
+ export { IssueNode } from './IssueNode.js';
29
46
  // Node type constants and helpers
30
47
  export { NODE_TYPE, NAMESPACED_TYPE, isNamespacedType, getNamespace, getBaseName, isEndpointType, isSideEffectType, matchesTypePattern, isGuaranteeType, } from './NodeKind.js';
@@ -0,0 +1,78 @@
1
+ /**
2
+ * BuiltinRegistry - Registry for Node.js builtin functions (REG-218)
3
+ *
4
+ * Provides lookup for Node.js builtin modules and functions.
5
+ * Used by NodejsBuiltinsResolver for lazy EXTERNAL_FUNCTION node creation.
6
+ *
7
+ * Usage:
8
+ * const registry = new BuiltinRegistry();
9
+ * if (registry.isBuiltinModule('fs')) {
10
+ * const funcDef = registry.getFunction('fs', 'readFile');
11
+ * if (funcDef) {
12
+ * // Create EXTERNAL_FUNCTION node with metadata
13
+ * }
14
+ * }
15
+ */
16
+ import type { BuiltinFunctionDef, BuiltinModuleDef } from './types.js';
17
+ export declare class BuiltinRegistry {
18
+ /** Map of module name to module definition */
19
+ private modules;
20
+ /** Map of "module:funcName" to function definition for fast lookup */
21
+ private functions;
22
+ constructor(modules?: BuiltinModuleDef[]);
23
+ /**
24
+ * Check if module is a Node.js builtin module.
25
+ * Handles node: prefix automatically.
26
+ *
27
+ * @param moduleName - Module name (e.g., 'fs', 'node:fs', 'fs/promises')
28
+ * @returns true if module is a known builtin
29
+ */
30
+ isBuiltinModule(moduleName: string): boolean;
31
+ /**
32
+ * Normalize module name by stripping node: prefix.
33
+ *
34
+ * @param moduleName - Module name (e.g., 'node:fs', 'fs')
35
+ * @returns Normalized module name (e.g., 'fs')
36
+ */
37
+ normalizeModule(moduleName: string): string;
38
+ /**
39
+ * Get function definition by module and function name.
40
+ *
41
+ * @param module - Module name (e.g., 'fs', 'node:fs')
42
+ * @param funcName - Function name (e.g., 'readFile')
43
+ * @returns Function definition or null if not found
44
+ */
45
+ getFunction(module: string, funcName: string): BuiltinFunctionDef | null;
46
+ /**
47
+ * Check if function is a known builtin function.
48
+ *
49
+ * @param module - Module name
50
+ * @param funcName - Function name
51
+ * @returns true if function is known
52
+ */
53
+ isKnownFunction(module: string, funcName: string): boolean;
54
+ /**
55
+ * Get all functions for a module.
56
+ *
57
+ * @param module - Module name
58
+ * @returns Array of function definitions (empty if module not found)
59
+ */
60
+ getAllFunctions(module: string): BuiltinFunctionDef[];
61
+ /**
62
+ * List all supported builtin module names.
63
+ *
64
+ * @returns Array of module names
65
+ */
66
+ listModules(): string[];
67
+ /**
68
+ * Create node ID for EXTERNAL_FUNCTION node.
69
+ *
70
+ * Format: EXTERNAL_FUNCTION:{module}.{funcName}
71
+ *
72
+ * @param module - Module name (will be normalized)
73
+ * @param funcName - Function name
74
+ * @returns Node ID string
75
+ */
76
+ createNodeId(module: string, funcName: string): string;
77
+ }
78
+ //# sourceMappingURL=BuiltinRegistry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuiltinRegistry.d.ts","sourceRoot":"","sources":["../../../src/data/builtins/BuiltinRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAGvE,qBAAa,eAAe;IAC1B,8CAA8C;IAC9C,OAAO,CAAC,OAAO,CAAgC;IAE/C,sEAAsE;IACtE,OAAO,CAAC,SAAS,CAAkC;gBAEvC,OAAO,GAAE,gBAAgB,EAAwB;IAc7D;;;;;;OAMG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAK5C;;;;;OAKG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAO3C;;;;;;OAMG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,kBAAkB,GAAG,IAAI;IAMxE;;;;;;OAMG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI1D;;;;;OAKG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,EAAE;IAMrD;;;;OAIG;IACH,WAAW,IAAI,MAAM,EAAE;IAIvB;;;;;;;;OAQG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;CAIvD"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * BuiltinRegistry - Registry for Node.js builtin functions (REG-218)
3
+ *
4
+ * Provides lookup for Node.js builtin modules and functions.
5
+ * Used by NodejsBuiltinsResolver for lazy EXTERNAL_FUNCTION node creation.
6
+ *
7
+ * Usage:
8
+ * const registry = new BuiltinRegistry();
9
+ * if (registry.isBuiltinModule('fs')) {
10
+ * const funcDef = registry.getFunction('fs', 'readFile');
11
+ * if (funcDef) {
12
+ * // Create EXTERNAL_FUNCTION node with metadata
13
+ * }
14
+ * }
15
+ */
16
+ import { ALL_BUILTIN_MODULES } from './definitions.js';
17
+ export class BuiltinRegistry {
18
+ /** Map of module name to module definition */
19
+ modules;
20
+ /** Map of "module:funcName" to function definition for fast lookup */
21
+ functions;
22
+ constructor(modules = ALL_BUILTIN_MODULES) {
23
+ this.modules = new Map();
24
+ this.functions = new Map();
25
+ for (const mod of modules) {
26
+ this.modules.set(mod.name, mod);
27
+ for (const func of mod.functions) {
28
+ const key = `${mod.name}:${func.name}`;
29
+ this.functions.set(key, func);
30
+ }
31
+ }
32
+ }
33
+ /**
34
+ * Check if module is a Node.js builtin module.
35
+ * Handles node: prefix automatically.
36
+ *
37
+ * @param moduleName - Module name (e.g., 'fs', 'node:fs', 'fs/promises')
38
+ * @returns true if module is a known builtin
39
+ */
40
+ isBuiltinModule(moduleName) {
41
+ const normalized = this.normalizeModule(moduleName);
42
+ return this.modules.has(normalized);
43
+ }
44
+ /**
45
+ * Normalize module name by stripping node: prefix.
46
+ *
47
+ * @param moduleName - Module name (e.g., 'node:fs', 'fs')
48
+ * @returns Normalized module name (e.g., 'fs')
49
+ */
50
+ normalizeModule(moduleName) {
51
+ if (moduleName.startsWith('node:')) {
52
+ return moduleName.slice(5); // Remove 'node:' prefix
53
+ }
54
+ return moduleName;
55
+ }
56
+ /**
57
+ * Get function definition by module and function name.
58
+ *
59
+ * @param module - Module name (e.g., 'fs', 'node:fs')
60
+ * @param funcName - Function name (e.g., 'readFile')
61
+ * @returns Function definition or null if not found
62
+ */
63
+ getFunction(module, funcName) {
64
+ const normalizedModule = this.normalizeModule(module);
65
+ const key = `${normalizedModule}:${funcName}`;
66
+ return this.functions.get(key) || null;
67
+ }
68
+ /**
69
+ * Check if function is a known builtin function.
70
+ *
71
+ * @param module - Module name
72
+ * @param funcName - Function name
73
+ * @returns true if function is known
74
+ */
75
+ isKnownFunction(module, funcName) {
76
+ return this.getFunction(module, funcName) !== null;
77
+ }
78
+ /**
79
+ * Get all functions for a module.
80
+ *
81
+ * @param module - Module name
82
+ * @returns Array of function definitions (empty if module not found)
83
+ */
84
+ getAllFunctions(module) {
85
+ const normalizedModule = this.normalizeModule(module);
86
+ const mod = this.modules.get(normalizedModule);
87
+ return mod ? mod.functions : [];
88
+ }
89
+ /**
90
+ * List all supported builtin module names.
91
+ *
92
+ * @returns Array of module names
93
+ */
94
+ listModules() {
95
+ return Array.from(this.modules.keys());
96
+ }
97
+ /**
98
+ * Create node ID for EXTERNAL_FUNCTION node.
99
+ *
100
+ * Format: EXTERNAL_FUNCTION:{module}.{funcName}
101
+ *
102
+ * @param module - Module name (will be normalized)
103
+ * @param funcName - Function name
104
+ * @returns Node ID string
105
+ */
106
+ createNodeId(module, funcName) {
107
+ const normalizedModule = this.normalizeModule(module);
108
+ return `EXTERNAL_FUNCTION:${normalizedModule}.${funcName}`;
109
+ }
110
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Node.js Builtin Definitions (REG-218)
3
+ *
4
+ * Tier 1 builtin module definitions:
5
+ * - fs (filesystem)
6
+ * - fs/promises (async filesystem)
7
+ * - path (path manipulation)
8
+ * - http/https (network)
9
+ * - crypto (cryptography)
10
+ * - child_process (process execution)
11
+ *
12
+ * Additional modules (Tier 2):
13
+ * - url, util, os, events, stream, buffer, worker_threads
14
+ */
15
+ import type { BuiltinModuleDef } from './types.js';
16
+ /**
17
+ * Tier 1: Core Node.js modules (most commonly used)
18
+ */
19
+ export declare const TIER_1_MODULES: BuiltinModuleDef[];
20
+ /**
21
+ * Tier 2: Additional commonly used modules
22
+ */
23
+ export declare const TIER_2_MODULES: BuiltinModuleDef[];
24
+ /**
25
+ * All builtin modules combined
26
+ */
27
+ export declare const ALL_BUILTIN_MODULES: BuiltinModuleDef[];
28
+ //# sourceMappingURL=definitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../../../src/data/builtins/definitions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,gBAAgB,EAgJ5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,gBAAgB,EAyF5C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,gBAAgB,EAGjD,CAAC"}
@@ -0,0 +1,250 @@
1
+ /**
2
+ * Node.js Builtin Definitions (REG-218)
3
+ *
4
+ * Tier 1 builtin module definitions:
5
+ * - fs (filesystem)
6
+ * - fs/promises (async filesystem)
7
+ * - path (path manipulation)
8
+ * - http/https (network)
9
+ * - crypto (cryptography)
10
+ * - child_process (process execution)
11
+ *
12
+ * Additional modules (Tier 2):
13
+ * - url, util, os, events, stream, buffer, worker_threads
14
+ */
15
+ /**
16
+ * Tier 1: Core Node.js modules (most commonly used)
17
+ */
18
+ export const TIER_1_MODULES = [
19
+ // fs - Filesystem operations
20
+ {
21
+ name: 'fs',
22
+ functions: [
23
+ { name: 'readFile', module: 'fs', security: 'file-io', pure: false },
24
+ { name: 'readFileSync', module: 'fs', security: 'file-io', pure: false },
25
+ { name: 'writeFile', module: 'fs', security: 'file-io', pure: false },
26
+ { name: 'writeFileSync', module: 'fs', security: 'file-io', pure: false },
27
+ { name: 'appendFile', module: 'fs', security: 'file-io', pure: false },
28
+ { name: 'appendFileSync', module: 'fs', security: 'file-io', pure: false },
29
+ { name: 'readdir', module: 'fs', security: 'file-io', pure: false },
30
+ { name: 'readdirSync', module: 'fs', security: 'file-io', pure: false },
31
+ { name: 'mkdir', module: 'fs', security: 'file-io', pure: false },
32
+ { name: 'mkdirSync', module: 'fs', security: 'file-io', pure: false },
33
+ { name: 'rmdir', module: 'fs', security: 'file-io', pure: false },
34
+ { name: 'rmdirSync', module: 'fs', security: 'file-io', pure: false },
35
+ { name: 'rm', module: 'fs', security: 'file-io', pure: false },
36
+ { name: 'rmSync', module: 'fs', security: 'file-io', pure: false },
37
+ { name: 'unlink', module: 'fs', security: 'file-io', pure: false },
38
+ { name: 'unlinkSync', module: 'fs', security: 'file-io', pure: false },
39
+ { name: 'stat', module: 'fs', security: 'file-io', pure: false },
40
+ { name: 'statSync', module: 'fs', security: 'file-io', pure: false },
41
+ { name: 'lstat', module: 'fs', security: 'file-io', pure: false },
42
+ { name: 'lstatSync', module: 'fs', security: 'file-io', pure: false },
43
+ { name: 'access', module: 'fs', security: 'file-io', pure: false },
44
+ { name: 'accessSync', module: 'fs', security: 'file-io', pure: false },
45
+ { name: 'chmod', module: 'fs', security: 'file-io', pure: false },
46
+ { name: 'chmodSync', module: 'fs', security: 'file-io', pure: false },
47
+ { name: 'chown', module: 'fs', security: 'file-io', pure: false },
48
+ { name: 'chownSync', module: 'fs', security: 'file-io', pure: false },
49
+ { name: 'rename', module: 'fs', security: 'file-io', pure: false },
50
+ { name: 'renameSync', module: 'fs', security: 'file-io', pure: false },
51
+ { name: 'copyFile', module: 'fs', security: 'file-io', pure: false },
52
+ { name: 'copyFileSync', module: 'fs', security: 'file-io', pure: false },
53
+ { name: 'createReadStream', module: 'fs', security: 'file-io', pure: false },
54
+ { name: 'createWriteStream', module: 'fs', security: 'file-io', pure: false },
55
+ { name: 'watch', module: 'fs', security: 'file-io', pure: false },
56
+ { name: 'watchFile', module: 'fs', security: 'file-io', pure: false },
57
+ { name: 'existsSync', module: 'fs', security: 'file-io', pure: false },
58
+ { name: 'truncate', module: 'fs', security: 'file-io', pure: false },
59
+ { name: 'truncateSync', module: 'fs', security: 'file-io', pure: false },
60
+ ]
61
+ },
62
+ // fs/promises - Async filesystem operations
63
+ {
64
+ name: 'fs/promises',
65
+ functions: [
66
+ { name: 'readFile', module: 'fs/promises', security: 'file-io', pure: false },
67
+ { name: 'writeFile', module: 'fs/promises', security: 'file-io', pure: false },
68
+ { name: 'appendFile', module: 'fs/promises', security: 'file-io', pure: false },
69
+ { name: 'readdir', module: 'fs/promises', security: 'file-io', pure: false },
70
+ { name: 'mkdir', module: 'fs/promises', security: 'file-io', pure: false },
71
+ { name: 'rmdir', module: 'fs/promises', security: 'file-io', pure: false },
72
+ { name: 'rm', module: 'fs/promises', security: 'file-io', pure: false },
73
+ { name: 'unlink', module: 'fs/promises', security: 'file-io', pure: false },
74
+ { name: 'stat', module: 'fs/promises', security: 'file-io', pure: false },
75
+ { name: 'lstat', module: 'fs/promises', security: 'file-io', pure: false },
76
+ { name: 'access', module: 'fs/promises', security: 'file-io', pure: false },
77
+ { name: 'chmod', module: 'fs/promises', security: 'file-io', pure: false },
78
+ { name: 'chown', module: 'fs/promises', security: 'file-io', pure: false },
79
+ { name: 'rename', module: 'fs/promises', security: 'file-io', pure: false },
80
+ { name: 'copyFile', module: 'fs/promises', security: 'file-io', pure: false },
81
+ { name: 'truncate', module: 'fs/promises', security: 'file-io', pure: false },
82
+ ]
83
+ },
84
+ // path - Path manipulation (pure functions)
85
+ {
86
+ name: 'path',
87
+ functions: [
88
+ { name: 'join', module: 'path', pure: true },
89
+ { name: 'resolve', module: 'path', pure: true },
90
+ { name: 'normalize', module: 'path', pure: true },
91
+ { name: 'basename', module: 'path', pure: true },
92
+ { name: 'dirname', module: 'path', pure: true },
93
+ { name: 'extname', module: 'path', pure: true },
94
+ { name: 'parse', module: 'path', pure: true },
95
+ { name: 'format', module: 'path', pure: true },
96
+ { name: 'relative', module: 'path', pure: true },
97
+ { name: 'isAbsolute', module: 'path', pure: true },
98
+ { name: 'sep', module: 'path', pure: true },
99
+ { name: 'delimiter', module: 'path', pure: true },
100
+ ]
101
+ },
102
+ // http - HTTP server/client
103
+ {
104
+ name: 'http',
105
+ functions: [
106
+ { name: 'createServer', module: 'http', security: 'net', pure: false },
107
+ { name: 'request', module: 'http', security: 'net', pure: false },
108
+ { name: 'get', module: 'http', security: 'net', pure: false },
109
+ ]
110
+ },
111
+ // https - HTTPS server/client
112
+ {
113
+ name: 'https',
114
+ functions: [
115
+ { name: 'createServer', module: 'https', security: 'net', pure: false },
116
+ { name: 'request', module: 'https', security: 'net', pure: false },
117
+ { name: 'get', module: 'https', security: 'net', pure: false },
118
+ ]
119
+ },
120
+ // crypto - Cryptographic operations
121
+ {
122
+ name: 'crypto',
123
+ functions: [
124
+ { name: 'createHash', module: 'crypto', security: 'crypto', pure: false },
125
+ { name: 'createHmac', module: 'crypto', security: 'crypto', pure: false },
126
+ { name: 'createCipher', module: 'crypto', security: 'crypto', pure: false },
127
+ { name: 'createDecipher', module: 'crypto', security: 'crypto', pure: false },
128
+ { name: 'createCipheriv', module: 'crypto', security: 'crypto', pure: false },
129
+ { name: 'createDecipheriv', module: 'crypto', security: 'crypto', pure: false },
130
+ { name: 'randomBytes', module: 'crypto', security: 'crypto', pure: false },
131
+ { name: 'randomFill', module: 'crypto', security: 'crypto', pure: false },
132
+ { name: 'randomFillSync', module: 'crypto', security: 'crypto', pure: false },
133
+ { name: 'randomUUID', module: 'crypto', security: 'crypto', pure: false },
134
+ { name: 'pbkdf2', module: 'crypto', security: 'crypto', pure: false },
135
+ { name: 'pbkdf2Sync', module: 'crypto', security: 'crypto', pure: false },
136
+ { name: 'scrypt', module: 'crypto', security: 'crypto', pure: false },
137
+ { name: 'scryptSync', module: 'crypto', security: 'crypto', pure: false },
138
+ { name: 'generateKey', module: 'crypto', security: 'crypto', pure: false },
139
+ { name: 'generateKeyPair', module: 'crypto', security: 'crypto', pure: false },
140
+ { name: 'generateKeyPairSync', module: 'crypto', security: 'crypto', pure: false },
141
+ ]
142
+ },
143
+ // child_process - Process execution (SECURITY SENSITIVE)
144
+ {
145
+ name: 'child_process',
146
+ functions: [
147
+ { name: 'exec', module: 'child_process', security: 'exec', pure: false },
148
+ { name: 'execSync', module: 'child_process', security: 'exec', pure: false },
149
+ { name: 'execFile', module: 'child_process', security: 'exec', pure: false },
150
+ { name: 'execFileSync', module: 'child_process', security: 'exec', pure: false },
151
+ { name: 'spawn', module: 'child_process', security: 'exec', pure: false },
152
+ { name: 'spawnSync', module: 'child_process', security: 'exec', pure: false },
153
+ { name: 'fork', module: 'child_process', security: 'exec', pure: false },
154
+ ]
155
+ },
156
+ ];
157
+ /**
158
+ * Tier 2: Additional commonly used modules
159
+ */
160
+ export const TIER_2_MODULES = [
161
+ // url - URL parsing
162
+ {
163
+ name: 'url',
164
+ functions: [
165
+ { name: 'parse', module: 'url', pure: true },
166
+ { name: 'format', module: 'url', pure: true },
167
+ { name: 'resolve', module: 'url', pure: true },
168
+ { name: 'fileURLToPath', module: 'url', pure: true },
169
+ { name: 'pathToFileURL', module: 'url', pure: true },
170
+ ]
171
+ },
172
+ // util - Utilities
173
+ {
174
+ name: 'util',
175
+ functions: [
176
+ { name: 'promisify', module: 'util', pure: true },
177
+ { name: 'callbackify', module: 'util', pure: true },
178
+ { name: 'inspect', module: 'util', pure: true },
179
+ { name: 'format', module: 'util', pure: true },
180
+ { name: 'deprecate', module: 'util', pure: false },
181
+ { name: 'inherits', module: 'util', pure: false },
182
+ ]
183
+ },
184
+ // os - Operating system info
185
+ {
186
+ name: 'os',
187
+ functions: [
188
+ { name: 'platform', module: 'os', pure: true },
189
+ { name: 'arch', module: 'os', pure: true },
190
+ { name: 'cpus', module: 'os', pure: false },
191
+ { name: 'hostname', module: 'os', pure: false },
192
+ { name: 'homedir', module: 'os', pure: false },
193
+ { name: 'tmpdir', module: 'os', pure: false },
194
+ { name: 'type', module: 'os', pure: true },
195
+ { name: 'release', module: 'os', pure: true },
196
+ { name: 'totalmem', module: 'os', pure: false },
197
+ { name: 'freemem', module: 'os', pure: false },
198
+ ]
199
+ },
200
+ // events - Event emitter
201
+ {
202
+ name: 'events',
203
+ functions: [
204
+ { name: 'EventEmitter', module: 'events', pure: false },
205
+ { name: 'once', module: 'events', pure: false },
206
+ { name: 'on', module: 'events', pure: false },
207
+ ]
208
+ },
209
+ // stream - Streams
210
+ {
211
+ name: 'stream',
212
+ functions: [
213
+ { name: 'Readable', module: 'stream', pure: false },
214
+ { name: 'Writable', module: 'stream', pure: false },
215
+ { name: 'Duplex', module: 'stream', pure: false },
216
+ { name: 'Transform', module: 'stream', pure: false },
217
+ { name: 'pipeline', module: 'stream', pure: false },
218
+ { name: 'finished', module: 'stream', pure: false },
219
+ ]
220
+ },
221
+ // buffer - Buffer operations
222
+ {
223
+ name: 'buffer',
224
+ functions: [
225
+ { name: 'Buffer', module: 'buffer', pure: false },
226
+ { name: 'alloc', module: 'buffer', pure: true },
227
+ { name: 'allocUnsafe', module: 'buffer', pure: true },
228
+ { name: 'from', module: 'buffer', pure: true },
229
+ { name: 'concat', module: 'buffer', pure: true },
230
+ { name: 'isBuffer', module: 'buffer', pure: true },
231
+ ]
232
+ },
233
+ // worker_threads - Worker threads
234
+ {
235
+ name: 'worker_threads',
236
+ functions: [
237
+ { name: 'Worker', module: 'worker_threads', pure: false },
238
+ { name: 'isMainThread', module: 'worker_threads', pure: true },
239
+ { name: 'parentPort', module: 'worker_threads', pure: false },
240
+ { name: 'workerData', module: 'worker_threads', pure: false },
241
+ ]
242
+ },
243
+ ];
244
+ /**
245
+ * All builtin modules combined
246
+ */
247
+ export const ALL_BUILTIN_MODULES = [
248
+ ...TIER_1_MODULES,
249
+ ...TIER_2_MODULES,
250
+ ];
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Node.js Builtins Registry (REG-218)
3
+ *
4
+ * Exports for builtin function registry.
5
+ */
6
+ export { BuiltinRegistry } from './BuiltinRegistry.js';
7
+ export type { BuiltinFunctionDef, BuiltinModuleDef, SecurityCategory } from './types.js';
8
+ export { ALL_BUILTIN_MODULES, TIER_1_MODULES, TIER_2_MODULES } from './definitions.js';
9
+ export { JS_GLOBAL_FUNCTIONS } from './jsGlobals.js';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/data/builtins/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACzF,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Node.js Builtins Registry (REG-218)
3
+ *
4
+ * Exports for builtin function registry.
5
+ */
6
+ export { BuiltinRegistry } from './BuiltinRegistry.js';
7
+ export { ALL_BUILTIN_MODULES, TIER_1_MODULES, TIER_2_MODULES } from './definitions.js';
8
+ export { JS_GLOBAL_FUNCTIONS } from './jsGlobals.js';
@@ -0,0 +1,18 @@
1
+ /**
2
+ * JavaScript Global Functions (REG-227)
3
+ *
4
+ * These are functions intrinsic to the JS runtime that don't need CALLS edges.
5
+ * They're available in all JS environments (browser, Node.js, etc.) and aren't
6
+ * "callable definitions" in the code sense.
7
+ *
8
+ * What is NOT included:
9
+ * - Constructors (Array, Object, Error) - handled as constructor calls
10
+ * - Objects with methods (Math, JSON) - method calls go through MethodCallResolver
11
+ * - Environment globals (window, document) - not functions, they're objects
12
+ *
13
+ * Used by:
14
+ * - ExternalCallResolver: skips these when resolving external calls
15
+ * - CallResolverValidator: recognizes these as resolved (no violation)
16
+ */
17
+ export declare const JS_GLOBAL_FUNCTIONS: Set<string>;
18
+ //# sourceMappingURL=jsGlobals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsGlobals.d.ts","sourceRoot":"","sources":["../../../src/data/builtins/jsGlobals.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,mBAAmB,aAW9B,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * JavaScript Global Functions (REG-227)
3
+ *
4
+ * These are functions intrinsic to the JS runtime that don't need CALLS edges.
5
+ * They're available in all JS environments (browser, Node.js, etc.) and aren't
6
+ * "callable definitions" in the code sense.
7
+ *
8
+ * What is NOT included:
9
+ * - Constructors (Array, Object, Error) - handled as constructor calls
10
+ * - Objects with methods (Math, JSON) - method calls go through MethodCallResolver
11
+ * - Environment globals (window, document) - not functions, they're objects
12
+ *
13
+ * Used by:
14
+ * - ExternalCallResolver: skips these when resolving external calls
15
+ * - CallResolverValidator: recognizes these as resolved (no violation)
16
+ */
17
+ export const JS_GLOBAL_FUNCTIONS = new Set([
18
+ // Global functions (truly called as standalone functions)
19
+ 'parseInt', 'parseFloat', 'isNaN', 'isFinite', 'eval',
20
+ 'encodeURI', 'decodeURI', 'encodeURIComponent', 'decodeURIComponent',
21
+ // Timers (global functions in browser & Node.js)
22
+ 'setTimeout', 'setInterval', 'setImmediate',
23
+ 'clearTimeout', 'clearInterval', 'clearImmediate',
24
+ // CommonJS (special case - global in CJS environments)
25
+ 'require'
26
+ ]);
@@ -0,0 +1,34 @@
1
+ /**
2
+ * BuiltinRegistry Types (REG-218)
3
+ *
4
+ * Type definitions for Node.js builtin function registry.
5
+ * Used for lazy EXTERNAL_FUNCTION node creation.
6
+ */
7
+ /**
8
+ * Security category for builtin functions.
9
+ * Used for security analysis and auditing.
10
+ */
11
+ export type SecurityCategory = 'file-io' | 'exec' | 'net' | 'crypto';
12
+ /**
13
+ * Definition of a single builtin function.
14
+ */
15
+ export interface BuiltinFunctionDef {
16
+ /** Function name (e.g., 'readFile') */
17
+ name: string;
18
+ /** Module name (e.g., 'fs', 'path', 'fs/promises') */
19
+ module: string;
20
+ /** Security category (for dangerous functions) */
21
+ security?: SecurityCategory;
22
+ /** Whether function is pure (no side effects) */
23
+ pure?: boolean;
24
+ }
25
+ /**
26
+ * Definition of a builtin module with its functions.
27
+ */
28
+ export interface BuiltinModuleDef {
29
+ /** Module name (e.g., 'fs', 'path') */
30
+ name: string;
31
+ /** List of functions in this module */
32
+ functions: BuiltinFunctionDef[];
33
+ }
34
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/data/builtins/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAC5B,iDAAiD;IACjD,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,SAAS,EAAE,kBAAkB,EAAE,CAAC;CACjC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * BuiltinRegistry Types (REG-218)
3
+ *
4
+ * Type definitions for Node.js builtin function registry.
5
+ * Used for lazy EXTERNAL_FUNCTION node creation.
6
+ */
7
+ export {};