@cdxgen/cdxgen 13.3.0 → 13.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (372) hide show
  1. package/README.md +12 -9
  2. package/bin/cdxgen-secure.js +15 -0
  3. package/bin/cdxgen.js +115 -31
  4. package/bin/evinse.js +23 -1
  5. package/bin/hbom.js +15 -7
  6. package/bin/repl.js +115 -0
  7. package/bin/sign.js +45 -15
  8. package/bin/tracebom.js +5 -1
  9. package/bin/validate.js +84 -18
  10. package/bin/verify.js +155 -86
  11. package/data/cbomosdb-queries.json +13 -1
  12. package/data/component-tags.json +8 -0
  13. package/data/helpers/init.gradle +46 -21
  14. package/data/queries-darwin.json +25 -1
  15. package/data/queries-win.json +19 -1
  16. package/data/queries.json +41 -0
  17. package/data/remediations.json +344 -1
  18. package/data/rules/cbom-security.yaml +235 -4
  19. package/data/rules/dependency-sources.yaml +67 -0
  20. package/data/rules/go-binaries.yaml +46 -0
  21. package/data/rules/golem-go.yaml +80 -0
  22. package/data/rules/hbom-compliance.yaml +40 -22
  23. package/data/rules/hbom-performance.yaml +7 -1
  24. package/data/rules/host-topology.yaml +1 -1
  25. package/data/rules/obom-runtime.yaml +31 -2
  26. package/data/rules/php-runtime.yaml +143 -0
  27. package/data/rules/scala-evidence.yaml +115 -0
  28. package/lib/audit/index.js +52 -6
  29. package/lib/cli/bomAssembly.js +28 -3
  30. package/lib/cli/cliOptions.js +110 -3
  31. package/lib/cli/index.js +186 -58
  32. package/lib/cli/jsBom.js +50 -29
  33. package/lib/cli/jvmBom.js +779 -146
  34. package/lib/cli/managedBom.js +1021 -261
  35. package/lib/cli/nativeBom.js +364 -58
  36. package/lib/core/activity.js +12 -0
  37. package/lib/core/env.js +47 -17
  38. package/lib/core/fs.js +31 -21
  39. package/lib/core/httpClient.js +233 -69
  40. package/lib/core/pluginRun.js +184 -0
  41. package/lib/core/processTree.js +100 -0
  42. package/lib/core/projectConfig.js +1 -0
  43. package/lib/core/projectTooling.js +97 -0
  44. package/lib/core/propertySanitizer.js +72 -0
  45. package/lib/core/runState.js +39 -0
  46. package/lib/core/toml.js +72 -0
  47. package/lib/ecosystems/asarutils.js +4 -2
  48. package/lib/ecosystems/bunutils.js +5 -7
  49. package/lib/ecosystems/cargoCache.js +231 -8
  50. package/lib/ecosystems/cmakeResolver.js +10 -21
  51. package/lib/ecosystems/cppBuildContext.js +631 -0
  52. package/lib/ecosystems/cppEvidence.js +337 -22
  53. package/lib/ecosystems/cppIncludeResolver.js +294 -0
  54. package/lib/ecosystems/denoutils.js +93 -66
  55. package/lib/ecosystems/ecosystems.js +1967 -788
  56. package/lib/ecosystems/golem.js +578 -18
  57. package/lib/ecosystems/gradleutils.js +340 -46
  58. package/lib/ecosystems/jsEvidence.js +85 -24
  59. package/lib/ecosystems/kosi.js +21 -4
  60. package/lib/ecosystems/npmutils.js +64 -0
  61. package/lib/ecosystems/parsers-dotnet.js +668 -153
  62. package/lib/ecosystems/parsers-elm.js +46 -28
  63. package/lib/ecosystems/parsers-gleam.js +3 -4
  64. package/lib/ecosystems/parsers-go.js +1283 -297
  65. package/lib/ecosystems/parsers-js.js +92 -26
  66. package/lib/ecosystems/parsers-julia.js +2 -3
  67. package/lib/ecosystems/parsers-jvm.js +463 -29
  68. package/lib/ecosystems/parsers-misc.js +405 -93
  69. package/lib/ecosystems/parsers-python.js +152 -20
  70. package/lib/ecosystems/parsers-rust.js +4 -4
  71. package/lib/ecosystems/parsers-terraform.js +1573 -19
  72. package/lib/ecosystems/pythonutils.js +102 -6
  73. package/lib/ecosystems/remote/huggingface.js +3 -0
  74. package/lib/ecosystems/rubyutils.js +73 -20
  75. package/lib/ecosystems/rusi.js +32 -9
  76. package/lib/ecosystems/sbtutils.js +243 -187
  77. package/lib/ecosystems/scalacliutils.js +343 -0
  78. package/lib/ecosystems/scalasem.js +2620 -0
  79. package/lib/ecosystems/terraformRegistry.js +288 -0
  80. package/lib/ecosystems/utils.js +2 -0
  81. package/lib/ecosystems/vendoredCode.js +156 -0
  82. package/lib/evinser/evinser.js +695 -78
  83. package/lib/evinser/swiftsem.js +68 -5
  84. package/lib/helpers/agenticToolutils.js +2 -2
  85. package/lib/helpers/bomSigner.js +576 -128
  86. package/lib/inventory/agentSkillSpec.js +17 -0
  87. package/lib/inventory/aiCollector.js +4 -1
  88. package/lib/inventory/analyzer.js +110 -127
  89. package/lib/inventory/apkInstalledDb.js +243 -0
  90. package/lib/inventory/atomUtils.js +204 -48
  91. package/lib/inventory/auditCategories.js +10 -3
  92. package/lib/inventory/buildToolRateLimit.js +144 -0
  93. package/lib/inventory/cacheCommands.js +2 -1
  94. package/lib/inventory/cacheDir.js +52 -9
  95. package/lib/inventory/certificates.js +2371 -0
  96. package/lib/inventory/cmakeBuildDirs.js +254 -0
  97. package/lib/inventory/communityAiConfigParser.js +4 -9
  98. package/lib/inventory/deps.js +507 -128
  99. package/lib/inventory/display.js +200 -3
  100. package/lib/inventory/dosai.js +747 -101
  101. package/lib/inventory/dosaiParsers.js +310 -15
  102. package/lib/inventory/dynamic.js +96 -8
  103. package/lib/inventory/envcontext.js +168 -5
  104. package/lib/inventory/evidenceUtils.js +590 -132
  105. package/lib/inventory/fetchBatch.js +574 -38
  106. package/lib/inventory/fetchDiskCache.js +597 -0
  107. package/lib/inventory/forgeEnricher.js +14 -5
  108. package/lib/inventory/formulationParsers.js +3 -2
  109. package/lib/inventory/goBuildInfo.js +140 -0
  110. package/lib/inventory/hbom.js +67 -7
  111. package/lib/inventory/hbomAnalysis.js +16 -0
  112. package/lib/inventory/hostTopology.js +21 -0
  113. package/lib/inventory/jvmLocalRepos.js +917 -0
  114. package/lib/inventory/mcpConfigParser.js +2 -3
  115. package/lib/inventory/osPackagePurl.js +244 -0
  116. package/lib/inventory/osPackageResolver.js +89 -87
  117. package/lib/inventory/osinfo.js +79 -31
  118. package/lib/inventory/osqueryTransform.js +114 -5
  119. package/lib/inventory/parentSelection.js +146 -0
  120. package/lib/inventory/phpBuildInfo.js +487 -0
  121. package/lib/inventory/phpHostProbe.js +641 -0
  122. package/lib/inventory/rootfsCerts.js +426 -0
  123. package/lib/inventory/rustFormulationParser.js +3 -4
  124. package/lib/inventory/scalaCoords.js +153 -0
  125. package/lib/inventory/source.js +215 -11
  126. package/lib/inventory/spdx.js +245 -0
  127. package/lib/inventory/traceRunner.js +93 -8
  128. package/lib/inventory/tracedCrypto.js +423 -0
  129. package/lib/managers/binary.js +529 -183
  130. package/lib/managers/docker.js +199 -44
  131. package/lib/managers/oci.js +24 -2
  132. package/lib/parsers/cmakeCache.js +69 -0
  133. package/lib/parsers/cmakeLists.js +16 -2
  134. package/lib/parsers/cmakePresets.js +400 -0
  135. package/lib/parsers/compileCommands.js +557 -0
  136. package/lib/parsers/email.js +277 -0
  137. package/lib/parsers/largeJson.js +34 -2
  138. package/lib/parsers/strictJson.js +322 -0
  139. package/lib/parsers/terraformConfig.js +1073 -0
  140. package/lib/parsers/terraformSource.js +652 -0
  141. package/lib/server/server.js +209 -1
  142. package/lib/stages/postgen/annotator.js +17 -1
  143. package/lib/stages/postgen/introspection/markers.js +1 -1
  144. package/lib/stages/postgen/introspection/reflect.js +4 -1
  145. package/lib/stages/postgen/postgen.js +20 -6
  146. package/lib/stages/postgen/ruleEngine.js +58 -1
  147. package/lib/stages/postgen/specVersionCompat.js +62 -0
  148. package/lib/stages/pregen/pregen.js +117 -5
  149. package/lib/validator/bomValidator.js +26 -5
  150. package/lib/validator/generated/runtime.mjs +13 -0
  151. package/lib/validator/generated/validate-1.6.mjs +26 -7
  152. package/lib/validator/generated/validate-1.7.mjs +31 -12
  153. package/lib/validator/generated/validate-2.0.mjs +30 -11
  154. package/lib/validator/index.js +25 -10
  155. package/lib/validator/reporters/json.js +1 -0
  156. package/package.json +23 -23
  157. package/types/bin/cdxgen-secure.d.ts +3 -0
  158. package/types/bin/cdxgen-secure.d.ts.map +1 -0
  159. package/types/bin/repl.d.ts.map +1 -1
  160. package/types/lib/audit/index.d.ts.map +1 -1
  161. package/types/lib/cli/bomAssembly.d.ts +9 -2
  162. package/types/lib/cli/bomAssembly.d.ts.map +1 -1
  163. package/types/lib/cli/cliOptions.d.ts +43 -0
  164. package/types/lib/cli/cliOptions.d.ts.map +1 -1
  165. package/types/lib/cli/index.d.ts.map +1 -1
  166. package/types/lib/cli/jsBom.d.ts.map +1 -1
  167. package/types/lib/cli/jvmBom.d.ts +44 -1
  168. package/types/lib/cli/jvmBom.d.ts.map +1 -1
  169. package/types/lib/cli/managedBom.d.ts +7 -4
  170. package/types/lib/cli/managedBom.d.ts.map +1 -1
  171. package/types/lib/cli/nativeBom.d.ts +3 -1
  172. package/types/lib/cli/nativeBom.d.ts.map +1 -1
  173. package/types/lib/core/activity.d.ts.map +1 -1
  174. package/types/lib/core/env.d.ts +27 -2
  175. package/types/lib/core/env.d.ts.map +1 -1
  176. package/types/lib/core/fs.d.ts.map +1 -1
  177. package/types/lib/core/httpClient.d.ts +13 -8
  178. package/types/lib/core/httpClient.d.ts.map +1 -1
  179. package/types/lib/core/pluginRun.d.ts +97 -0
  180. package/types/lib/core/pluginRun.d.ts.map +1 -0
  181. package/types/lib/core/processTree.d.ts +36 -0
  182. package/types/lib/core/processTree.d.ts.map +1 -0
  183. package/types/lib/core/projectConfig.d.ts.map +1 -1
  184. package/types/lib/core/projectTooling.d.ts +41 -0
  185. package/types/lib/core/projectTooling.d.ts.map +1 -0
  186. package/types/lib/core/propertySanitizer.d.ts +26 -0
  187. package/types/lib/core/propertySanitizer.d.ts.map +1 -1
  188. package/types/lib/core/runState.d.ts +29 -0
  189. package/types/lib/core/runState.d.ts.map +1 -0
  190. package/types/lib/core/toml.d.ts +20 -0
  191. package/types/lib/core/toml.d.ts.map +1 -0
  192. package/types/lib/ecosystems/asarutils.d.ts.map +1 -1
  193. package/types/lib/ecosystems/bunutils.d.ts.map +1 -1
  194. package/types/lib/ecosystems/cargoCache.d.ts +12 -0
  195. package/types/lib/ecosystems/cargoCache.d.ts.map +1 -1
  196. package/types/lib/ecosystems/cmakeResolver.d.ts +5 -3
  197. package/types/lib/ecosystems/cmakeResolver.d.ts.map +1 -1
  198. package/types/lib/ecosystems/cppBuildContext.d.ts +55 -0
  199. package/types/lib/ecosystems/cppBuildContext.d.ts.map +1 -0
  200. package/types/lib/ecosystems/cppEvidence.d.ts +19 -3
  201. package/types/lib/ecosystems/cppEvidence.d.ts.map +1 -1
  202. package/types/lib/ecosystems/cppIncludeResolver.d.ts +92 -0
  203. package/types/lib/ecosystems/cppIncludeResolver.d.ts.map +1 -0
  204. package/types/lib/ecosystems/denoutils.d.ts +9 -3
  205. package/types/lib/ecosystems/denoutils.d.ts.map +1 -1
  206. package/types/lib/ecosystems/ecosystems.d.ts +62 -13
  207. package/types/lib/ecosystems/ecosystems.d.ts.map +1 -1
  208. package/types/lib/ecosystems/golem.d.ts +81 -1
  209. package/types/lib/ecosystems/golem.d.ts.map +1 -1
  210. package/types/lib/ecosystems/gradleutils.d.ts +59 -7
  211. package/types/lib/ecosystems/gradleutils.d.ts.map +1 -1
  212. package/types/lib/ecosystems/jsEvidence.d.ts.map +1 -1
  213. package/types/lib/ecosystems/kosi.d.ts.map +1 -1
  214. package/types/lib/ecosystems/npmutils.d.ts +15 -0
  215. package/types/lib/ecosystems/npmutils.d.ts.map +1 -1
  216. package/types/lib/ecosystems/parsers-dotnet.d.ts +155 -5
  217. package/types/lib/ecosystems/parsers-dotnet.d.ts.map +1 -1
  218. package/types/lib/ecosystems/parsers-elm.d.ts.map +1 -1
  219. package/types/lib/ecosystems/parsers-gleam.d.ts.map +1 -1
  220. package/types/lib/ecosystems/parsers-go.d.ts +119 -5
  221. package/types/lib/ecosystems/parsers-go.d.ts.map +1 -1
  222. package/types/lib/ecosystems/parsers-js.d.ts +6 -1
  223. package/types/lib/ecosystems/parsers-js.d.ts.map +1 -1
  224. package/types/lib/ecosystems/parsers-julia.d.ts.map +1 -1
  225. package/types/lib/ecosystems/parsers-jvm.d.ts +74 -3
  226. package/types/lib/ecosystems/parsers-jvm.d.ts.map +1 -1
  227. package/types/lib/ecosystems/parsers-misc.d.ts +21 -59
  228. package/types/lib/ecosystems/parsers-misc.d.ts.map +1 -1
  229. package/types/lib/ecosystems/parsers-python.d.ts +57 -6
  230. package/types/lib/ecosystems/parsers-python.d.ts.map +1 -1
  231. package/types/lib/ecosystems/parsers-terraform.d.ts +38 -21
  232. package/types/lib/ecosystems/parsers-terraform.d.ts.map +1 -1
  233. package/types/lib/ecosystems/pythonutils.d.ts +26 -1
  234. package/types/lib/ecosystems/pythonutils.d.ts.map +1 -1
  235. package/types/lib/ecosystems/remote/huggingface.d.ts.map +1 -1
  236. package/types/lib/ecosystems/rubyutils.d.ts +21 -1
  237. package/types/lib/ecosystems/rubyutils.d.ts.map +1 -1
  238. package/types/lib/ecosystems/rusi.d.ts.map +1 -1
  239. package/types/lib/ecosystems/sbtutils.d.ts +88 -2
  240. package/types/lib/ecosystems/sbtutils.d.ts.map +1 -1
  241. package/types/lib/ecosystems/scalacliutils.d.ts +56 -0
  242. package/types/lib/ecosystems/scalacliutils.d.ts.map +1 -0
  243. package/types/lib/ecosystems/scalasem.d.ts +311 -0
  244. package/types/lib/ecosystems/scalasem.d.ts.map +1 -0
  245. package/types/lib/ecosystems/terraformRegistry.d.ts +9 -0
  246. package/types/lib/ecosystems/terraformRegistry.d.ts.map +1 -0
  247. package/types/lib/ecosystems/utils.d.ts +2 -2
  248. package/types/lib/ecosystems/utils.d.ts.map +1 -1
  249. package/types/lib/ecosystems/vendoredCode.d.ts +32 -0
  250. package/types/lib/ecosystems/vendoredCode.d.ts.map +1 -0
  251. package/types/lib/evinser/evinser.d.ts +100 -8
  252. package/types/lib/evinser/evinser.d.ts.map +1 -1
  253. package/types/lib/evinser/swiftsem.d.ts +10 -0
  254. package/types/lib/evinser/swiftsem.d.ts.map +1 -1
  255. package/types/lib/helpers/bomSigner.d.ts +80 -4
  256. package/types/lib/helpers/bomSigner.d.ts.map +1 -1
  257. package/types/lib/inventory/agentSkillSpec.d.ts +13 -0
  258. package/types/lib/inventory/agentSkillSpec.d.ts.map +1 -0
  259. package/types/lib/inventory/aiCollector.d.ts.map +1 -1
  260. package/types/lib/inventory/analyzer.d.ts.map +1 -1
  261. package/types/lib/inventory/apkInstalledDb.d.ts +42 -0
  262. package/types/lib/inventory/apkInstalledDb.d.ts.map +1 -0
  263. package/types/lib/inventory/atomUtils.d.ts +96 -10
  264. package/types/lib/inventory/atomUtils.d.ts.map +1 -1
  265. package/types/lib/inventory/auditCategories.d.ts +3 -0
  266. package/types/lib/inventory/auditCategories.d.ts.map +1 -1
  267. package/types/lib/inventory/buildToolRateLimit.d.ts +38 -0
  268. package/types/lib/inventory/buildToolRateLimit.d.ts.map +1 -0
  269. package/types/lib/inventory/cacheCommands.d.ts +2 -1
  270. package/types/lib/inventory/cacheCommands.d.ts.map +1 -1
  271. package/types/lib/inventory/cacheDir.d.ts +12 -4
  272. package/types/lib/inventory/cacheDir.d.ts.map +1 -1
  273. package/types/lib/inventory/certificates.d.ts +205 -0
  274. package/types/lib/inventory/certificates.d.ts.map +1 -0
  275. package/types/lib/inventory/cmakeBuildDirs.d.ts +58 -0
  276. package/types/lib/inventory/cmakeBuildDirs.d.ts.map +1 -0
  277. package/types/lib/inventory/communityAiConfigParser.d.ts.map +1 -1
  278. package/types/lib/inventory/deps.d.ts +61 -2
  279. package/types/lib/inventory/deps.d.ts.map +1 -1
  280. package/types/lib/inventory/display.d.ts +18 -0
  281. package/types/lib/inventory/display.d.ts.map +1 -1
  282. package/types/lib/inventory/dosai.d.ts +202 -14
  283. package/types/lib/inventory/dosai.d.ts.map +1 -1
  284. package/types/lib/inventory/dosaiParsers.d.ts +53 -7
  285. package/types/lib/inventory/dosaiParsers.d.ts.map +1 -1
  286. package/types/lib/inventory/dynamic.d.ts +16 -1
  287. package/types/lib/inventory/dynamic.d.ts.map +1 -1
  288. package/types/lib/inventory/envcontext.d.ts +40 -2
  289. package/types/lib/inventory/envcontext.d.ts.map +1 -1
  290. package/types/lib/inventory/evidenceUtils.d.ts +48 -14
  291. package/types/lib/inventory/evidenceUtils.d.ts.map +1 -1
  292. package/types/lib/inventory/fetchBatch.d.ts +83 -14
  293. package/types/lib/inventory/fetchBatch.d.ts.map +1 -1
  294. package/types/lib/inventory/fetchDiskCache.d.ts +169 -0
  295. package/types/lib/inventory/fetchDiskCache.d.ts.map +1 -0
  296. package/types/lib/inventory/forgeEnricher.d.ts.map +1 -1
  297. package/types/lib/inventory/formulationParsers.d.ts.map +1 -1
  298. package/types/lib/inventory/goBuildInfo.d.ts +10 -0
  299. package/types/lib/inventory/goBuildInfo.d.ts.map +1 -0
  300. package/types/lib/inventory/hbom.d.ts.map +1 -1
  301. package/types/lib/inventory/hbomAnalysis.d.ts +10 -0
  302. package/types/lib/inventory/hbomAnalysis.d.ts.map +1 -1
  303. package/types/lib/inventory/hostTopology.d.ts.map +1 -1
  304. package/types/lib/inventory/jvmLocalRepos.d.ts +178 -0
  305. package/types/lib/inventory/jvmLocalRepos.d.ts.map +1 -0
  306. package/types/lib/inventory/mcpConfigParser.d.ts.map +1 -1
  307. package/types/lib/inventory/osPackagePurl.d.ts +99 -0
  308. package/types/lib/inventory/osPackagePurl.d.ts.map +1 -0
  309. package/types/lib/inventory/osPackageResolver.d.ts +6 -2
  310. package/types/lib/inventory/osPackageResolver.d.ts.map +1 -1
  311. package/types/lib/inventory/osinfo.d.ts +31 -6
  312. package/types/lib/inventory/osinfo.d.ts.map +1 -1
  313. package/types/lib/inventory/osqueryTransform.d.ts +51 -0
  314. package/types/lib/inventory/osqueryTransform.d.ts.map +1 -1
  315. package/types/lib/inventory/parentSelection.d.ts +34 -0
  316. package/types/lib/inventory/parentSelection.d.ts.map +1 -0
  317. package/types/lib/inventory/phpBuildInfo.d.ts +142 -0
  318. package/types/lib/inventory/phpBuildInfo.d.ts.map +1 -0
  319. package/types/lib/inventory/phpHostProbe.d.ts +35 -0
  320. package/types/lib/inventory/phpHostProbe.d.ts.map +1 -0
  321. package/types/lib/inventory/rootfsCerts.d.ts +27 -0
  322. package/types/lib/inventory/rootfsCerts.d.ts.map +1 -0
  323. package/types/lib/inventory/rustFormulationParser.d.ts.map +1 -1
  324. package/types/lib/inventory/scalaCoords.d.ts +80 -0
  325. package/types/lib/inventory/scalaCoords.d.ts.map +1 -0
  326. package/types/lib/inventory/source.d.ts +28 -0
  327. package/types/lib/inventory/source.d.ts.map +1 -1
  328. package/types/lib/inventory/spdx.d.ts +24 -0
  329. package/types/lib/inventory/spdx.d.ts.map +1 -1
  330. package/types/lib/inventory/traceRunner.d.ts +16 -1
  331. package/types/lib/inventory/traceRunner.d.ts.map +1 -1
  332. package/types/lib/inventory/tracedCrypto.d.ts +64 -0
  333. package/types/lib/inventory/tracedCrypto.d.ts.map +1 -0
  334. package/types/lib/managers/binary.d.ts +10 -0
  335. package/types/lib/managers/binary.d.ts.map +1 -1
  336. package/types/lib/managers/docker.d.ts +12 -0
  337. package/types/lib/managers/docker.d.ts.map +1 -1
  338. package/types/lib/managers/oci.d.ts +3 -1
  339. package/types/lib/managers/oci.d.ts.map +1 -1
  340. package/types/lib/parsers/cmakeCache.d.ts +16 -0
  341. package/types/lib/parsers/cmakeCache.d.ts.map +1 -1
  342. package/types/lib/parsers/cmakeLists.d.ts +2 -1
  343. package/types/lib/parsers/cmakeLists.d.ts.map +1 -1
  344. package/types/lib/parsers/cmakePresets.d.ts +78 -0
  345. package/types/lib/parsers/cmakePresets.d.ts.map +1 -0
  346. package/types/lib/parsers/compileCommands.d.ts +115 -0
  347. package/types/lib/parsers/compileCommands.d.ts.map +1 -0
  348. package/types/lib/parsers/email.d.ts +19 -0
  349. package/types/lib/parsers/email.d.ts.map +1 -0
  350. package/types/lib/parsers/largeJson.d.ts +13 -0
  351. package/types/lib/parsers/largeJson.d.ts.map +1 -1
  352. package/types/lib/parsers/strictJson.d.ts +46 -0
  353. package/types/lib/parsers/strictJson.d.ts.map +1 -0
  354. package/types/lib/parsers/terraformConfig.d.ts +70 -0
  355. package/types/lib/parsers/terraformConfig.d.ts.map +1 -0
  356. package/types/lib/parsers/terraformSource.d.ts +66 -0
  357. package/types/lib/parsers/terraformSource.d.ts.map +1 -0
  358. package/types/lib/server/server.d.ts +8 -0
  359. package/types/lib/server/server.d.ts.map +1 -1
  360. package/types/lib/stages/postgen/annotator.d.ts.map +1 -1
  361. package/types/lib/stages/postgen/introspection/reflect.d.ts.map +1 -1
  362. package/types/lib/stages/postgen/postgen.d.ts.map +1 -1
  363. package/types/lib/stages/postgen/ruleEngine.d.ts +7 -4
  364. package/types/lib/stages/postgen/ruleEngine.d.ts.map +1 -1
  365. package/types/lib/stages/postgen/specVersionCompat.d.ts.map +1 -1
  366. package/types/lib/stages/pregen/pregen.d.ts +14 -1
  367. package/types/lib/stages/pregen/pregen.d.ts.map +1 -1
  368. package/types/lib/validator/bomValidator.d.ts.map +1 -1
  369. package/types/lib/validator/index.d.ts +8 -0
  370. package/types/lib/validator/index.d.ts.map +1 -1
  371. package/types/lib/validator/reporters/json.d.ts.map +1 -1
  372. package/lib/third-party/arborist/snapshots/calc-dep-flags.test.cjs +0 -462
@@ -6,6 +6,8 @@ export declare const CBOM_AUDIT_CATEGORIES: readonly string[];
6
6
  export declare const HOST_TOPOLOGY_AUDIT_CATEGORIES: readonly string[];
7
7
  /** Frozen list of Golem (Go Evinse) audit categories. */
8
8
  export declare const GOLEM_AUDIT_CATEGORIES: readonly string[];
9
+ /** Frozen list of Scala Evinse (scalasem) audit categories. */
10
+ export declare const SCALA_AUDIT_CATEGORIES: readonly string[];
9
11
  /** Frozen list of Cargo (Rust) audit categories. */
10
12
  export declare const CARGO_AUDIT_CATEGORIES: readonly string[];
11
13
  /**
@@ -36,6 +38,7 @@ export declare const BOM_AUDIT_CATEGORY_ALIASES: Readonly<{
36
38
  golem: string[];
37
39
  hbom: string[];
38
40
  rust: string[];
41
+ scala: string[];
39
42
  host: string[];
40
43
  }>;
41
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"auditCategories.d.ts","sourceRoot":"","sources":["../../../lib/inventory/auditCategories.js"],"names":[],"mappings":"AAEA,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,mBAIhC,CAAC;AAEH,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,mBAGhC,CAAC;AAEH,qDAAqD;AACrD,eAAO,MAAM,8BAA8B,mBAAmC,CAAC;AAE/E,yDAAyD;AACzD,eAAO,MAAM,sBAAsB,mBAIjC,CAAC;AAEH,oDAAoD;AACpD,eAAO,MAAM,sBAAsB,mBAGjC,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,mBAAoC,CAAC;AAE7E,4DAA4D;AAC5D,eAAO,MAAM,uBAAuB,mBAIlC,CAAC;AAEH,gFAAgF;AAChF,eAAO,MAAM,6BAA6B,QAAkC,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;EAarC,CAAC;AAMH;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAH3C,MAAM,GAAC,MAAM,EAG8B,GAFzC,MAAM,EAAE,CAiBpB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAHxC,MAAM,GAAC,MAAM,EAG2B,GAFtC,MAAM,EAAE,CAapB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAHtC,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAC,CAGa,GAFpC,MAAM,EAAE,CAMpB;AAUD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAJ1C,MAAM,GAAC,MAAM,EAI6B,EAAE,KAAK,EAHjD,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAC,CAGwB,GAF/C;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAA;CAAC,CAyB3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAJzC,MAIyC,EAAE,WAAW,AAH9D,CACA,EADQ,MAGsD,GAFpD,MAAM,GAAG,SAAS,CA8B9B"}
1
+ {"version":3,"file":"auditCategories.d.ts","sourceRoot":"","sources":["../../../lib/inventory/auditCategories.js"],"names":[],"mappings":"AAEA,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,mBAIhC,CAAC;AAEH,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,mBAGhC,CAAC;AAEH,qDAAqD;AACrD,eAAO,MAAM,8BAA8B,mBAAmC,CAAC;AAE/E,yDAAyD;AACzD,eAAO,MAAM,sBAAsB,mBAIjC,CAAC;AAEH,+DAA+D;AAC/D,eAAO,MAAM,sBAAsB,mBAGjC,CAAC;AAEH,oDAAoD;AACpD,eAAO,MAAM,sBAAsB,mBAGjC,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,mBAAoC,CAAC;AAE7E,4DAA4D;AAC5D,eAAO,MAAM,uBAAuB,mBAIlC,CAAC;AAEH,gFAAgF;AAChF,eAAO,MAAM,6BAA6B,QAAkC,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;EAcrC,CAAC;AAMH;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAH3C,MAAM,GAAC,MAAM,EAG8B,GAFzC,MAAM,EAAE,CAiBpB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAHxC,MAAM,GAAC,MAAM,EAG2B,GAFtC,MAAM,EAAE,CAapB;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAHtC,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAC,CAGa,GAFpC,MAAM,EAAE,CAMpB;AAUD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAJ1C,MAAM,GAAC,MAAM,EAI6B,EAAE,KAAK,EAHjD,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAC,CAGwB,GAF/C;IAAC,UAAU,EAAE,MAAM,EAAE,CAAC;IAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAAC,eAAe,EAAE,MAAM,EAAE,CAAA;CAAC,CAyB3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAJzC,MAIyC,EAAE,WAAW,AAH9D,CACA,EADQ,MAGsD,GAFpD,MAAM,GAAG,SAAS,CA8B9B"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Whether a tool's combined output names a rate limit from its repository.
3
+ * The answer text is treated as untrusted: only fixed substrings are looked
4
+ * for, nothing from the output is kept.
5
+ *
6
+ * @param {string} output Combined stdout and stderr of one invocation.
7
+ * @param {string} tool One of maven, gradle, sbt, mill, scala-cli.
8
+ * @returns {boolean} True when the output names an HTTP 429 answer.
9
+ */
10
+ export declare function detectBuildToolRateLimit(output: string, tool: string): boolean;
11
+ /**
12
+ * Whether a tool was already found rate limited in this scan, so the caller
13
+ * can skip its remaining invocations.
14
+ *
15
+ * @param {string} tool One of maven, gradle, sbt, mill, scala-cli.
16
+ * @returns {boolean}
17
+ */
18
+ export declare function isBuildToolRateLimited(tool: string): boolean;
19
+ /**
20
+ * Read a completed invocation's output for a rate limit. When one is found,
21
+ * the tool is remembered for the scan, one hint naming the tool's mirror
22
+ * setting is printed, and the `build.rate-limited` degradation is recorded.
23
+ * The first invocation that shows the rate limit is the one recorded; later
24
+ * ones add nothing, because the same answer ends them all.
25
+ *
26
+ * @param {string} tool One of maven, gradle, sbt, mill, scala-cli.
27
+ * @param {string|undefined} output Combined output, as commandOutputText
28
+ * returns it for a spawn result.
29
+ * @param {Object} [context] Call-site facts for the degradation event.
30
+ * @param {string} [context.command] The redacted command that was attempted.
31
+ * @param {number} [context.exitCode] The invocation's exit status.
32
+ * @returns {boolean} True when this output names a rate limit.
33
+ */
34
+ export declare function noteBuildToolRateLimit(tool: string, output: string | undefined, context?: {
35
+ command?: string;
36
+ exitCode?: number;
37
+ }): boolean;
38
+ //# sourceMappingURL=buildToolRateLimit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildToolRateLimit.d.ts","sourceRoot":"","sources":["../../../lib/inventory/buildToolRateLimit.js"],"names":[],"mappings":"AA4EA;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAJpC,MAIoC,EAAE,IAAI,EAH1C,MAG0C,GAFxC,OAAO,CAQnB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAHhC,MAGgC,GAF9B,OAAO,CAInB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EARhC,MAQgC,EAAE,MAAM,EAPxC,MAAM,GAAC,SAOiC,EAAE,OAAO,AALzD,CAGA,EAFA;IAAyB,OAAO,AAAhC,CACA,EADQ,MAAM,CACd;IAAyB,QAAQ,AAAjC,CACA,EADQ,MAAM,CACd;CAE8D,GAFpD,OAAO,CA0BnB"}
@@ -1,5 +1,6 @@
1
1
  /**
2
- * `cdxgen cache` subcommand — inspect and purge the metadata fetch cache.
2
+ * `cdxgen cache` subcommand — inspect and purge the metadata fetch cache that
3
+ * cdxrs and the JS batch pool share.
3
4
  *
4
5
  * This module operates directly on the filesystem because JS is the authority
5
6
  * for the cache directory. The cache layout is:
@@ -1 +1 @@
1
- {"version":3,"file":"cacheCommands.d.ts","sourceRoot":"","sources":["../../../lib/inventory/cacheCommands.js"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAgCH;;;;;GAKG;AACH,wBAAgB,SAAS,IAHZ,MAAM,CAwDlB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,IAFb,MAAM,CAwBlB;AAUD;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAHjC,MAAM,GAAC,OAG0B,GAF/B,OAAO,CAAC,MAAM,CAAC,CAyC3B"}
1
+ {"version":3,"file":"cacheCommands.d.ts","sourceRoot":"","sources":["../../../lib/inventory/cacheCommands.js"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgCH;;;;;GAKG;AACH,wBAAgB,SAAS,IAHZ,MAAM,CAwDlB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,IAFb,MAAM,CAwBlB;AAUD;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAHjC,MAAM,GAAC,OAG0B,GAF/B,OAAO,CAAC,MAAM,CAAC,CAyC3B"}
@@ -21,13 +21,21 @@
21
21
  * rather than reading `isWin`/`isMac` here, or the Windows and Linux branches
22
22
  * become untestable on a macOS developer machine.
23
23
  *
24
+ * Every environment-derived root must be absolute by the *target* platform's
25
+ * rules, never the host's (`path.isAbsolute` would accept `\cache` on a
26
+ * Windows host): a relative value is ignored, so it cannot point inside the
27
+ * working directory. XDG requires this of `XDG_CACHE_HOME`; the home and
28
+ * `LOCALAPPDATA` roots get the same treatment for the same reason.
29
+ *
24
30
  * @param {Object} inputs Resolution inputs.
25
31
  * @param {"linux"|"macos"|"windows"} inputs.platform Which convention to apply.
26
- * @param {string} [inputs.cdxgenCacheDir] `CDXGEN_CACHE_DIR`.
32
+ * @param {string} [inputs.cdxgenCacheDir] `CDXGEN_CACHE_DIR`, an explicit
33
+ * override taken as given.
27
34
  * @param {string} [inputs.xdgCacheHome] `XDG_CACHE_HOME`. Ignored unless
28
- * absolute, per the XDG spec, so it cannot point inside the working directory.
29
- * @param {string} [inputs.home] Home directory.
30
- * @param {string} [inputs.localAppData] `LOCALAPPDATA`.
35
+ * `/`-rooted.
36
+ * @param {string} [inputs.home] Home directory. Ignored unless absolute.
37
+ * @param {string} [inputs.localAppData] `LOCALAPPDATA`. Ignored unless drive-
38
+ * or UNC-rooted; the home profile is the fallback.
31
39
  * @returns {string|null} Absolute path, or null when nothing resolves.
32
40
  */
33
41
  export declare function resolveCacheDirFor({ platform, cdxgenCacheDir, xdgCacheHome, home, localAppData, }: {
@@ -1 +1 @@
1
- {"version":3,"file":"cacheDir.d.ts","sourceRoot":"","sources":["../../../lib/inventory/cacheDir.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAQH;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,IAAI,EACJ,YAAY,GACb,EAdE;IAA0C,QAAQ,EAA1C,OAAO,GAAC,OAAO,GAAC,SAAS,CACjC;IAAwB,cAAc,AAAtC,CACA,EADQ,MAAM,CACd;IAAwB,YAAY,AAApC,CAEA,EAFQ,MAAM,CAEd;IAAwB,IAAI,AAA5B,CACA,EADQ,MAAM,CACd;IAAwB,YAAY,AAApC,CACA,EADQ,MAAM,CACd;CAQF,GARY,MAAM,GAAC,IAAI,CA2BvB;AAcD;;;;;GAKG;AACH,wBAAgB,eAAe,IAHlB,MAAM,GAAC,IAAI,CAWvB;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAH3B,MAG2B,GAFzB,MAAM,CAIlB"}
1
+ {"version":3,"file":"cacheDir.d.ts","sourceRoot":"","sources":["../../../lib/inventory/cacheDir.js"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAQH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,IAAI,EACJ,YAAY,GACb,EAhBE;IAA0C,QAAQ,EAA1C,OAAO,GAAC,OAAO,GAAC,SAAS,CACjC;IAAwB,cAAc,AAAtC,CAEA,EAFQ,MAAM,CAEd;IAAwB,YAAY,AAApC,CAEA,EAFQ,MAAM,CAEd;IAAwB,IAAI,AAA5B,CACA,EADQ,MAAM,CACd;IAAwB,YAAY,AAApC,CAEA,EAFQ,MAAM,CAEd;CAQF,GARY,MAAM,GAAC,IAAI,CA6BvB;AA+CD;;;;;GAKG;AACH,wBAAgB,eAAe,IAHlB,MAAM,GAAC,IAAI,CAWvB;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAH3B,MAG2B,GAFzB,MAAM,CAIlB"}
@@ -0,0 +1,205 @@
1
+ export declare function toLowerHex(value: any): any;
2
+ export declare function normalizeSerialHex(value: any): string | undefined;
3
+ export declare function serialDecimalToHex(value: any): string | undefined;
4
+ /**
5
+ * Split PEM text into labelled blocks without decoding them. Only the label
6
+ * line and the matching END line matter; the caller decides which labels to
7
+ * parse. Bounded by block count and total decoded size.
8
+ *
9
+ * @param {string} text file contents
10
+ * @returns {{label: string, body: string}[]} blocks in file order
11
+ */
12
+ export declare function splitPemBlocks(text: string): {
13
+ label: string;
14
+ body: string;
15
+ }[];
16
+ /**
17
+ * Decode the CERTIFICATE blocks of a PEM bundle (RFC 7468) into DER buffers.
18
+ * `TRUSTED CERTIFICATE` blocks (OpenSSL aux data after the DER) are not
19
+ * decoded here; the trustinspector plugin parses their trust/reject lists.
20
+ *
21
+ * @param {string} text PEM file contents
22
+ * @returns {Buffer[]} DER buffers in file order
23
+ */
24
+ export declare function pemCertificateDerBlocks(text: string): Buffer[];
25
+ export declare function privateKeyPemFormat(text: any): "DSA" | "EC" | "ENCRYPTED-PKCS8" | "OPENSSH" | "PKCS8" | "RSA" | undefined;
26
+ /**
27
+ * A PEM public key (RFC 7468 PUBLIC KEY label) also classifies a matched
28
+ * file as key material rather than a certificate.
29
+ *
30
+ * @param {string} text file contents
31
+ * @returns {boolean} true when a PUBLIC KEY block is present
32
+ */
33
+ export declare function hasPemPublicKey(text: string): boolean;
34
+ /**
35
+ * Walk a certificate DER far enough to learn what the platform parsers may
36
+ * not report: the SubjectPublicKeyInfo (for the SPKI hash and key algorithm
37
+ * OID), the outer signature algorithm OID, the X.509 version, the subject and
38
+ * issuer name DER (byte equality = self-issued), and the SKI/AKI key
39
+ * identifiers (RFC 5280 sections 4.1, 4.2.1.1, 4.2.1.2). Malformed input
40
+ * yields undefined; nothing throws.
41
+ *
42
+ * @param {Buffer} der certificate DER, at most MAX_CERT_DER_BYTES
43
+ * @returns {object|undefined} parsed fields
44
+ */
45
+ export declare function parseCertificateDer(der: Buffer): object | undefined;
46
+ /**
47
+ * Name a key algorithm the way the BOM model requires: the post-quantum table
48
+ * first, then classical names derived from the SPKI OID and key size, never
49
+ * the platform's own name for an algorithm it may not know. Names agree with
50
+ * trustinspector's (`RSA-2048`, `ECDSA-P256`, `Ed25519`, `ML-DSA-65`);
51
+ * unknown algorithms keep their dotted OID.
52
+ *
53
+ * @param {object} context `{oid, curveOid, bits}` from the DER walk or report
54
+ * @returns {string|undefined} key name such as `ML-DSA-65`, `RSA-2048`, `ECDSA-P256`
55
+ */
56
+ /**
57
+ * The family name for a key algorithm component: like
58
+ * {@link keyAlgorithmName} but without the key-size suffix, so every key
59
+ * size sharing an OID (RSA-1024 and RSA-2048, ECDSA P-256 and P-384)
60
+ * references the same single algorithm component. Post-quantum names are
61
+ * already family names (`ML-DSA-65`).
62
+ *
63
+ * @param {string} oid SPKI algorithm OID
64
+ * @returns {string|undefined} family name such as `RSA`, `ECDSA`, `ML-DSA-65`
65
+ */
66
+ export declare function keyAlgorithmFamilyName(oid: string): string | undefined;
67
+ export declare function keyAlgorithmName(context: any): any;
68
+ /**
69
+ * Name a signature algorithm: the post-quantum table, then Go's classical
70
+ * names, then the dotted OID. Never "0" or "unknown".
71
+ *
72
+ * @param {object} context `{oid}` or a trusted producer name
73
+ * @returns {string|undefined} signature name such as `ML-DSA-65`, `SHA256-RSA`
74
+ */
75
+ export declare function signatureAlgorithmName(context: object): string | undefined;
76
+ /**
77
+ * Metadata for an algorithm component: primitive, parameter set and NIST
78
+ * quantum security level from the post-quantum table; classical algorithms
79
+ * carry level 0, which is a fact, not a policy.
80
+ *
81
+ * @param {string} oid dotted algorithm OID
82
+ * @param {string} kind `"signature"` or `"kem"`/key use
83
+ * @returns {object} `{primitive, parameterSetIdentifier, nistQuantumSecurityLevel}` when known
84
+ */
85
+ export declare function algorithmComponentMetadata(oid: string): object;
86
+ export declare function commonNameFromDn(dn: any): string | undefined;
87
+ /**
88
+ * Normalise a trustinspector material (report-1 or report-2) into a
89
+ * certificate record. Returns undefined for non-certificate kinds.
90
+ *
91
+ * @param {object} material trustinspector material
92
+ * @param {object} [context] `{locationRoot}` to relativise container paths
93
+ * @returns {object|undefined} record
94
+ */
95
+ export declare function certRecordFromTrustInspector(material: object, context?: object): object | undefined;
96
+ /**
97
+ * Build a certificate record from a parsed certificate (Node fallback path).
98
+ * The DER walk supplies the SPKI, algorithm OIDs, version and key
99
+ * identifiers; the X509Certificate supplies names, validity and, on runtimes
100
+ * that expose them, the signature algorithm. Fields the platform cannot
101
+ * provide (key usage bits, path length) stay unset and are documented as
102
+ * fallback limits.
103
+ *
104
+ * @param {Buffer} der certificate DER
105
+ * @param {object} context `{location, sourceType, pem}`
106
+ * @returns {object|undefined} record
107
+ */
108
+ export declare function certRecordFromDer(der: Buffer, context?: object): object | undefined;
109
+ export declare function toWellFormedText(value: any): string | undefined;
110
+ /**
111
+ * Normalise one certificate of the chain a server presented in a TLS ≤ 1.2
112
+ * handshake, as safer-exec's crypto result relays it (leaf first). The entry
113
+ * carries no DER: identity is the two SHA-256 digests, and the server's
114
+ * ordering is untrusted input, so the record carries no issuer edges and no
115
+ * SKI/AKI. Fields safer-exec already classified per PLAN section 2.5
116
+ * (selfSigned, keyName, signatureAlgorithm) are taken as given; `role` is
117
+ * re-derived from them with the same rule as the DER path.
118
+ *
119
+ * @param {object} entry safer-exec CertChainEntry
120
+ * @param {object} [context] `{host}` the safer-exec `host:port` the chain was
121
+ * presented to; the occurrence `tls://<host>` is omitted without it
122
+ * @returns {object|undefined} record, or undefined when the entry has no
123
+ * usable certificate hash
124
+ */
125
+ export declare function certRecordFromObservedChainEntry(entry: object, context?: object): object | undefined;
126
+ /**
127
+ * Pairwise issuer linking over records parsed in one collection
128
+ * (`certRecordFromDer` output). A verified edge needs the signature to check;
129
+ * an uncheckable signature over chained names and key identifiers goes to
130
+ * issuersUnverified. Capped at ISSUER_LINK_LIMIT certificates.
131
+ *
132
+ * @param {object[]} records records from certRecordFromDer
133
+ */
134
+ export declare function linkFallbackIssuers(records: object[]): void;
135
+ /**
136
+ * Relativise a host path against a scan root so producers agree on
137
+ * locations: `/tmp/x/rootfs/etc/ssl` with root `/tmp/x/rootfs` becomes
138
+ * `/etc/ssl` (PLAN section 4.4, G18).
139
+ *
140
+ * @param {string} location host or already-relative path
141
+ * @param {string} [root] scan root to strip
142
+ * @returns {string} normalised container-style path
143
+ */
144
+ export declare function containerRelativePath(location: string, root?: string): string;
145
+ /**
146
+ * Collects certificate records from any producer, deduplicates them by
147
+ * certificate SHA-256 and builds the shared component model: one certificate
148
+ * component per certificate, one public-key component per SPKI, algorithm
149
+ * components, and verified issuer `dependsOn` edges.
150
+ */
151
+ export declare class CertificateCollector {
152
+ recordsBySha: Map<any, any>;
153
+ pins: any[];
154
+ constructor();
155
+ addRecord(record: any): void;
156
+ addRecords(records: any): void;
157
+ addTrustInspectorMaterials(materials: any, context: any): void;
158
+ addPin({ spkiSha256, location }: {
159
+ location: any;
160
+ spkiSha256: any;
161
+ }): void;
162
+ /**
163
+ * Build the shared model. Deterministic: components and dependency lists
164
+ * are sorted, and no map iteration order reaches the output.
165
+ *
166
+ * @returns {{components: object[], dependencies: object[]}}
167
+ */
168
+ build(): {
169
+ components: object[];
170
+ dependencies: object[];
171
+ };
172
+ }
173
+ /**
174
+ * The file a certificate occurrence lives in. A Kubernetes secret occurrence
175
+ * is `<file>#data.tls.crt` (or `#stringData.ca.crt`); the file path is what
176
+ * internal:SrcFile records.
177
+ *
178
+ * @param {string} location occurrence location
179
+ * @returns {string} file path without the secret key fragment
180
+ */
181
+ export declare function srcFileOfLocation(location: string): string;
182
+ /**
183
+ * Merge already-built certificate/public-key components that describe the
184
+ * same asset (same bom-ref), unioning occurrences and properties. Used at the
185
+ * final assembly step where producer component lists meet.
186
+ *
187
+ * @param {object[]} components component list, possibly with crypto duplicates
188
+ * @returns {object[]} component list with certificate duplicates merged
189
+ */
190
+ export declare function mergeDuplicateCryptoComponents(components: object[]): object[];
191
+ export declare function kubernetesTlsSecretRecords(yamlText: any, { file }?: {}): object[];
192
+ export declare function androidNetworkSecurityConfigPins(xmlText: any, { file }?: {}): any[];
193
+ /**
194
+ * Classify a matched file by its content: certificates (PEM bundle or DER),
195
+ * a PEM private-key header, a GPG key, a PEM public key, or a keystore
196
+ * container the fallback cannot read. Nothing is decoded beyond what the
197
+ * header lines and a bounded DER walk reveal.
198
+ *
199
+ * @param {Buffer} bytes file contents (already size-capped by the caller)
200
+ * @returns {object} one of `{kind:"certificates", ders}`,
201
+ * `{kind:"private-key", format}`, `{kind:"gpg"}`, `{kind:"public-key"}`,
202
+ * `{kind:"keystore", format}` or `{kind:"unknown"}`
203
+ */
204
+ export declare function classifyCryptoFile(bytes: Buffer): object;
205
+ //# sourceMappingURL=certificates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"certificates.d.ts","sourceRoot":"","sources":["../../../lib/inventory/certificates.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Where a C/C++ project's build trees are: the build directories its CMake
3
+ * presets configure, and the conventional ones (`build`, `build-<name>`,
4
+ * `out`, `builddir`, `cmake-build-<name>`). Shared by the lookups for
5
+ * `CMakeCache.txt` and for the compilation database, so both search the same
6
+ * places in the same order.
7
+ */
8
+ /**
9
+ * Whether `child` is `parent` or inside it.
10
+ *
11
+ * @param {string} child Path to test
12
+ * @param {string} parent Directory
13
+ * @returns {boolean}
14
+ */
15
+ export declare function isInsideDir(child: string, parent: string): boolean;
16
+ /**
17
+ * CMake's `${hostSystemName}` for this host.
18
+ *
19
+ * @returns {string}
20
+ */
21
+ export declare function hostSystemName(): string;
22
+ /**
23
+ * Read a project's presets documents: `CMakePresets.json` and
24
+ * `CMakeUserPresets.json`, each followed by the files it includes (schema
25
+ * version 4 and later). In secure mode an include outside the project is not
26
+ * read.
27
+ *
28
+ * @param {string} root Project source directory
29
+ * @returns {Array<{file: string, fileDir: string, document: Object}>}
30
+ */
31
+ export declare function readCmakePresetDocuments(root: string): Array<{
32
+ file: string;
33
+ fileDir: string;
34
+ document: Object;
35
+ }>;
36
+ /**
37
+ * The visible configure presets of a project, resolved and with their macros
38
+ * expanded for this host.
39
+ *
40
+ * @param {string} root Project source directory
41
+ * @returns {Object[]} See `resolveConfigurePresets`
42
+ */
43
+ export declare function readCmakeConfigurePresets(root: string): Object[];
44
+ /**
45
+ * The directories a project's build trees may be in, most specific first:
46
+ * the directory of an explicit `--cmake-cache`, the build directories of its
47
+ * configure presets, then the `build`, `build-<name>`, `out`, `builddir` and
48
+ * `cmake-build-<name>` directories at the project root, and the directories
49
+ * one level below `build`, `out` and `out/build` (where Visual Studio puts
50
+ * preset builds). Only existing directories are listed; in secure mode, only
51
+ * those inside the project.
52
+ *
53
+ * @param {string} root Project source directory
54
+ * @param {Object} [options] CLI options (`cmakeCache`)
55
+ * @returns {string[]} Absolute directories, without duplicates
56
+ */
57
+ export declare function cmakeBuildDirCandidates(root: string, options?: Object): string[];
58
+ //# sourceMappingURL=cmakeBuildDirs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cmakeBuildDirs.d.ts","sourceRoot":"","sources":["../../../lib/inventory/cmakeBuildDirs.js"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA4CH;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAJtB,MAIsB,EAAE,MAAM,EAH9B,MAG8B,GAF5B,OAAO,CAKnB;AAsBD;;;;GAIG;AACH,wBAAgB,cAAc,IAFjB,MAAM,CAIlB;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAHlC,MAGkC,GAFhC,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAC,CAAC,CAsCpE;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAHnC,MAGmC,GAFjC,MAAM,EAAE,CAgBpB;AA+BD;;;;;;;;;;;;GAYG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAJjC,MAIiC,EAAE,OAAO,AAHlD,CACA,EADQ,MAG+C,GAF7C,MAAM,EAAE,CAoDpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"communityAiConfigParser.d.ts","sourceRoot":"","sources":["../../../lib/inventory/communityAiConfigParser.js"],"names":[],"mappings":"AA21BA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,EAL1B,MAsGT,CAAC"}
1
+ {"version":3,"file":"communityAiConfigParser.d.ts","sourceRoot":"","sources":["../../../lib/inventory/communityAiConfigParser.js"],"names":[],"mappings":"AAs1BA;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,EAL1B,MAsGT,CAAC"}
@@ -1,8 +1,16 @@
1
+ /**
2
+ * Whether a jar holds sources or javadoc rather than classes.
3
+ *
4
+ * @param {string} jarName Jar file name.
5
+ * @returns {boolean}
6
+ */
7
+ export declare function isDocumentationJar(jarName: string): boolean;
1
8
  /**
2
9
  * Collect maven dependencies
3
10
  *
4
11
  * @param {string} mavenCmd Maven command to use
5
- * @param {string} basePath Path to the maven project
12
+ * @param {string} basePath Path to the maven project. Without it Maven is not
13
+ * run, and only the local repository is read when includeCacheDir is set.
6
14
  * @param {boolean} cleanup Remove temporary directories
7
15
  * @param {boolean} includeCacheDir Include maven and gradle cache directories
8
16
  */
@@ -67,11 +75,62 @@ export declare function parsePomProperties(pomProperties: string): Object;
67
75
  /**
68
76
  * Method to get pom properties from maven directory
69
77
  *
78
+ * A shaded or fat jar carries a `pom.properties` for every artifact folded
79
+ * into it. When the jar's file name is known, the descriptor whose
80
+ * `artifactId-version` (or `artifactId`) starts the file name is the jar's
81
+ * own; otherwise the first descriptor is used, as before.
82
+ *
70
83
  * @param {string} mavenDir Path to maven directory
84
+ * @param {string} [jarName] File name of the jar the directory came from
71
85
  *
72
86
  * @return array with pom properties
73
87
  */
74
- export declare function getPomPropertiesFromMavenDir(mavenDir: string): {};
88
+ export declare function getPomPropertiesFromMavenDir(mavenDir: string, jarName?: string): Object;
89
+ /**
90
+ * The licences a MANIFEST.MF `Bundle-License` value names. The value is a
91
+ * comma-separated list; each item is an SPDX id, a licence name or a URL,
92
+ * optionally followed by `;link=` and `;description=` attributes, and any
93
+ * part may be quoted. Each item is mapped through findLicenseId; an item it
94
+ * cannot map is replaced by its `link` URL when one is given, which the
95
+ * licence URL lookup resolves later. `<<EXTERNAL>>` names no licence.
96
+ *
97
+ * @param {string} value Raw Bundle-License value.
98
+ * @returns {string[]} Licence ids, names or URLs, without duplicates.
99
+ */
100
+ export declare function parseManifestLicenseList(value: string): string[];
101
+ /**
102
+ * The Maven descriptor a jar carries for itself, read from an extracted
103
+ * `META-INF/maven` directory: the pom.properties that names the jar's own
104
+ * coordinates and the pom.xml stored beside it.
105
+ *
106
+ * @param {string} mavenDir Path to the extracted META-INF/maven directory
107
+ * @param {string} [jarName] File name of the jar the directory came from
108
+ * @returns {{properties: Object, pomXml?: string}|undefined} The chosen
109
+ * descriptor, with its pom.xml text when one is stored beside it.
110
+ */
111
+ export declare function readEmbeddedMavenDescriptor(mavenDir: string, jarName?: string): {
112
+ properties: Object;
113
+ pomXml?: string;
114
+ } | undefined;
115
+ /**
116
+ * The Maven descriptor and manifest licence a jar carries for itself, read
117
+ * from its zip without extracting it. Entry names are only matched and
118
+ * paired, never used as paths, and each entry is read only under a size
119
+ * bound, because the archive is untrusted input.
120
+ *
121
+ * @param {string} jarFile Path to the jar.
122
+ * @param {{group: string, name: string, version: string}} coordinates The jar's own coordinates, which choose its descriptor.
123
+ * @returns {Promise<{properties?: Object, pomXml?: string, manifestLicenses?: string[]}|undefined>}
124
+ */
125
+ export declare function readEmbeddedJarMetadata(jarFile: string, coordinates: {
126
+ group: string;
127
+ name: string;
128
+ version: string;
129
+ }): Promise<{
130
+ properties?: Object;
131
+ pomXml?: string;
132
+ manifestLicenses?: string[];
133
+ } | undefined>;
75
134
  /**
76
135
  * Method to read a single file entry from a zip file
77
136
  *
@@ -1 +1 @@
1
- {"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../../lib/inventory/deps.js"],"names":[],"mappings":"AA6BA;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,QAAQ,EANC,MAMD,EACR,QAAQ,EANC,MAMD,EACR,OAAO,GANE,OAMK,EACd,eAAe,GANN,OAMc,eAuDxB;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAL/B,MAK+B,EAAE,UAAU,GAJ3C,MAIgD,eAsK1D;AAED;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAAC,YAAY,EAH9C,MAG8C,GAF5C,OAAO,CAAC,MAAM,EAAE,CAAC,CAgE7B;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,UAAU,KAAA,GAFzB,MAAM,CAkClB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAHjC,MAGiC,GAF/B,MAAM,CAiBlB;AAgBD;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,GAH1C,MAG+C,GAF7C,MAAM,CAsBlB;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAJ7B,MAI6B,EAAE,IAAI,EAHnC,MAGmC,GAFjC,MAAM,CAqBlB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAHrC,MAGqC,GAFnC,MAAM,CAiBlB;AACD;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAJ1C,MAI0C,MAYpD;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAPE,MAOF,EACP,WAAW,EAPF,MAOE,EACX,eAAe,GAPN,MAOgB,GALd,OAAO,CAAC,MAAM,GAAC,SAAS,CAAC,CA4CrC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EARE,MAQF,EACP,YAAY,EARH,MAQG,EACZ,EAAE,eAAyB,EAAE,aAA+B,EAAE,AAR7D,CAGA,EAFA;IAAsB,eAAe,AAArC,CACA,EADQ,MAAM,CACd;IAAsB,aAAa,AAAnC,CACA,EADQ,MAAM,CACd;CAKkE,GALxD,OAAO,CAAC,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC,CAkDxD;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAJhC,MAIgC,gBAqE1C;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,eAAe,EANhC,MAMgC,EAAE,OAAO,EALzC,MAAM,EAKmC,EAAE,cAAc,EAJzD,MAIyD,EAAE,CAAC,EAH5D,MAG4D,GAF1D,IAAI,CAqDhB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAJtB,MAAM,GAAC,MAIe,EAAE,CAAC,EAHzB,MAAM,GAAC,MAGkB,GAFvB,MAAM,CAWlB"}
1
+ {"version":3,"file":"deps.d.ts","sourceRoot":"","sources":["../../../lib/inventory/deps.js"],"names":[],"mappings":"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"}
@@ -224,4 +224,22 @@ export declare function printEnvironmentAuditFindings(envAuditFindings?: EnvAudi
224
224
  * @param {EnvAuditFinding[]} envAuditFindings Audit findings to display
225
225
  */
226
226
  export declare function displaySelfThreatModel(filePath: string, config: Object, options: Object, envAuditFindings: EnvAuditFinding[]): void;
227
+ /**
228
+ * Print a table of the BOM's certificate components: role, name, issuer,
229
+ * expiry, the SPKI prefix and how many locations each certificate appears
230
+ * in, with a marker when the audit flagged it.
231
+ *
232
+ * @param {Object} bomJson CycloneDX BOM JSON object
233
+ * @returns {void}
234
+ */
235
+ export declare function printCertificatesTable(bomJson: Object): void;
236
+ /**
237
+ * Print the issuer chain above a certificate and the certificates issued
238
+ * under it, walking the verified `dependsOn` edges.
239
+ *
240
+ * @param {Object} bomJson CycloneDX BOM JSON object
241
+ * @param {string} selector bom-ref, SPKI hex prefix or certificate ref prefix
242
+ * @returns {void}
243
+ */
244
+ export declare function printCertificateChain(bomJson: Object, selector: string): void;
227
245
  //# sourceMappingURL=display.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../../lib/inventory/display.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"display.d.ts","sourceRoot":"","sources":["../../../lib/inventory/display.js"],"names":[],"mappings":"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"}