@spottoai/types-package 1.0.2-beta.34 → 1.0.2-beta.340

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 (453) hide show
  1. package/LICENSE +18 -40
  2. package/README.md +40 -18
  3. package/dist/accounts/accounts.d.ts +519 -3
  4. package/dist/accounts/accounts.d.ts.map +1 -1
  5. package/dist/accounts/accounts.js +122 -0
  6. package/dist/accounts/accounts.js.map +1 -1
  7. package/dist/accounts/azureSpSetup.d.ts +297 -0
  8. package/dist/accounts/azureSpSetup.d.ts.map +1 -0
  9. package/dist/accounts/azureSpSetup.js +3 -0
  10. package/dist/accounts/azureSpSetup.js.map +1 -0
  11. package/dist/accounts/index.d.ts +3 -0
  12. package/dist/accounts/index.d.ts.map +1 -1
  13. package/dist/accounts/index.js +3 -0
  14. package/dist/accounts/index.js.map +1 -1
  15. package/dist/accounts/readPermissions.d.ts +76 -0
  16. package/dist/accounts/readPermissions.d.ts.map +1 -0
  17. package/dist/accounts/readPermissions.js +202 -0
  18. package/dist/accounts/readPermissions.js.map +1 -0
  19. package/dist/accounts/validation.d.ts +91 -0
  20. package/dist/accounts/validation.d.ts.map +1 -0
  21. package/dist/accounts/validation.js +3 -0
  22. package/dist/accounts/validation.js.map +1 -0
  23. package/dist/accounts/writePermissions.d.ts +36 -0
  24. package/dist/accounts/writePermissions.d.ts.map +1 -0
  25. package/dist/accounts/writePermissions.js +47 -0
  26. package/dist/accounts/writePermissions.js.map +1 -0
  27. package/dist/ai/index.d.ts +1019 -9
  28. package/dist/ai/index.d.ts.map +1 -1
  29. package/dist/ai/index.js +1 -1
  30. package/dist/ai/index.js.map +1 -1
  31. package/dist/assessments/artifact.d.ts +84 -0
  32. package/dist/assessments/artifact.d.ts.map +1 -0
  33. package/dist/assessments/artifact.js +3 -0
  34. package/dist/assessments/artifact.js.map +1 -0
  35. package/dist/assessments/catalogue.d.ts +53 -0
  36. package/dist/assessments/catalogue.d.ts.map +1 -0
  37. package/dist/assessments/catalogue.js +16 -0
  38. package/dist/assessments/catalogue.js.map +1 -0
  39. package/dist/assessments/common.d.ts +27 -0
  40. package/dist/assessments/common.d.ts.map +1 -0
  41. package/dist/assessments/common.js +3 -0
  42. package/dist/assessments/common.js.map +1 -0
  43. package/dist/assessments/evidence.d.ts +78 -0
  44. package/dist/assessments/evidence.d.ts.map +1 -0
  45. package/dist/assessments/evidence.js +3 -0
  46. package/dist/assessments/evidence.js.map +1 -0
  47. package/dist/assessments/export.d.ts +27 -0
  48. package/dist/assessments/export.d.ts.map +1 -0
  49. package/dist/assessments/export.js +3 -0
  50. package/dist/assessments/export.js.map +1 -0
  51. package/dist/assessments/index.d.ts +11 -0
  52. package/dist/assessments/index.d.ts.map +1 -0
  53. package/dist/assessments/index.js +27 -0
  54. package/dist/assessments/index.js.map +1 -0
  55. package/dist/assessments/queue.d.ts +20 -0
  56. package/dist/assessments/queue.d.ts.map +1 -0
  57. package/dist/assessments/queue.js +6 -0
  58. package/dist/assessments/queue.js.map +1 -0
  59. package/dist/assessments/review.d.ts +36 -0
  60. package/dist/assessments/review.d.ts.map +1 -0
  61. package/dist/assessments/review.js +3 -0
  62. package/dist/assessments/review.js.map +1 -0
  63. package/dist/assessments/run.d.ts +62 -0
  64. package/dist/assessments/run.d.ts.map +1 -0
  65. package/dist/assessments/run.js +3 -0
  66. package/dist/assessments/run.js.map +1 -0
  67. package/dist/assessments/sow.d.ts +30 -0
  68. package/dist/assessments/sow.d.ts.map +1 -0
  69. package/dist/assessments/sow.js +3 -0
  70. package/dist/assessments/sow.js.map +1 -0
  71. package/dist/assessments/status.d.ts +27 -0
  72. package/dist/assessments/status.d.ts.map +1 -0
  73. package/dist/assessments/status.js +27 -0
  74. package/dist/assessments/status.js.map +1 -0
  75. package/dist/aws/estates.d.ts +153 -0
  76. package/dist/aws/estates.d.ts.map +1 -0
  77. package/dist/aws/estates.js +25 -0
  78. package/dist/aws/estates.js.map +1 -0
  79. package/dist/aws/index.d.ts +13 -0
  80. package/dist/aws/index.d.ts.map +1 -0
  81. package/dist/aws/index.js +29 -0
  82. package/dist/aws/index.js.map +1 -0
  83. package/dist/aws/onboarding.d.ts +54 -0
  84. package/dist/aws/onboarding.d.ts.map +1 -0
  85. package/dist/aws/onboarding.js +3 -0
  86. package/dist/aws/onboarding.js.map +1 -0
  87. package/dist/aws/pluginPublicArtifactBodyValidation.d.ts +10 -0
  88. package/dist/aws/pluginPublicArtifactBodyValidation.d.ts.map +1 -0
  89. package/dist/aws/pluginPublicArtifactBodyValidation.js +225 -0
  90. package/dist/aws/pluginPublicArtifactBodyValidation.js.map +1 -0
  91. package/dist/aws/pluginPublicArtifactEvidence.d.ts +161 -0
  92. package/dist/aws/pluginPublicArtifactEvidence.d.ts.map +1 -0
  93. package/dist/aws/pluginPublicArtifactEvidence.js +3 -0
  94. package/dist/aws/pluginPublicArtifactEvidence.js.map +1 -0
  95. package/dist/aws/pluginPublicArtifactManifestValidation.d.ts +4 -0
  96. package/dist/aws/pluginPublicArtifactManifestValidation.d.ts.map +1 -0
  97. package/dist/aws/pluginPublicArtifactManifestValidation.js +259 -0
  98. package/dist/aws/pluginPublicArtifactManifestValidation.js.map +1 -0
  99. package/dist/aws/pluginPublicArtifactSectionValidation.d.ts +6 -0
  100. package/dist/aws/pluginPublicArtifactSectionValidation.d.ts.map +1 -0
  101. package/dist/aws/pluginPublicArtifactSectionValidation.js +471 -0
  102. package/dist/aws/pluginPublicArtifactSectionValidation.js.map +1 -0
  103. package/dist/aws/pluginPublicArtifactValidation.d.ts +3 -0
  104. package/dist/aws/pluginPublicArtifactValidation.d.ts.map +1 -0
  105. package/dist/aws/pluginPublicArtifactValidation.js +9 -0
  106. package/dist/aws/pluginPublicArtifactValidation.js.map +1 -0
  107. package/dist/aws/pluginPublicArtifactValidationHelpers.d.ts +23 -0
  108. package/dist/aws/pluginPublicArtifactValidationHelpers.d.ts.map +1 -0
  109. package/dist/aws/pluginPublicArtifactValidationHelpers.js +240 -0
  110. package/dist/aws/pluginPublicArtifactValidationHelpers.js.map +1 -0
  111. package/dist/aws/pluginPublicArtifacts.d.ts +253 -0
  112. package/dist/aws/pluginPublicArtifacts.d.ts.map +1 -0
  113. package/dist/aws/pluginPublicArtifacts.js +116 -0
  114. package/dist/aws/pluginPublicArtifacts.js.map +1 -0
  115. package/dist/aws/portalPublicArtifactCurrentValidation.d.ts +4 -0
  116. package/dist/aws/portalPublicArtifactCurrentValidation.d.ts.map +1 -0
  117. package/dist/aws/portalPublicArtifactCurrentValidation.js +333 -0
  118. package/dist/aws/portalPublicArtifactCurrentValidation.js.map +1 -0
  119. package/dist/aws/portalPublicArtifactEvidenceValidation.d.ts +6 -0
  120. package/dist/aws/portalPublicArtifactEvidenceValidation.d.ts.map +1 -0
  121. package/dist/aws/portalPublicArtifactEvidenceValidation.js +227 -0
  122. package/dist/aws/portalPublicArtifactEvidenceValidation.js.map +1 -0
  123. package/dist/aws/portalPublicArtifactHistoryAiValidation.d.ts +8 -0
  124. package/dist/aws/portalPublicArtifactHistoryAiValidation.d.ts.map +1 -0
  125. package/dist/aws/portalPublicArtifactHistoryAiValidation.js +377 -0
  126. package/dist/aws/portalPublicArtifactHistoryAiValidation.js.map +1 -0
  127. package/dist/aws/portalPublicArtifactHistoryTypes.d.ts +168 -0
  128. package/dist/aws/portalPublicArtifactHistoryTypes.d.ts.map +1 -0
  129. package/dist/aws/portalPublicArtifactHistoryTypes.js +32 -0
  130. package/dist/aws/portalPublicArtifactHistoryTypes.js.map +1 -0
  131. package/dist/aws/portalPublicArtifactNestedEvidence.d.ts +127 -0
  132. package/dist/aws/portalPublicArtifactNestedEvidence.d.ts.map +1 -0
  133. package/dist/aws/portalPublicArtifactNestedEvidence.js +3 -0
  134. package/dist/aws/portalPublicArtifactNestedEvidence.js.map +1 -0
  135. package/dist/aws/portalPublicArtifactNestedEvidenceValidation.d.ts +6 -0
  136. package/dist/aws/portalPublicArtifactNestedEvidenceValidation.d.ts.map +1 -0
  137. package/dist/aws/portalPublicArtifactNestedEvidenceValidation.js +405 -0
  138. package/dist/aws/portalPublicArtifactNestedEvidenceValidation.js.map +1 -0
  139. package/dist/aws/portalPublicArtifactValidation.d.ts +3 -0
  140. package/dist/aws/portalPublicArtifactValidation.d.ts.map +1 -0
  141. package/dist/aws/portalPublicArtifactValidation.js +14 -0
  142. package/dist/aws/portalPublicArtifactValidation.js.map +1 -0
  143. package/dist/aws/portalPublicArtifactValidationCommon.d.ts +30 -0
  144. package/dist/aws/portalPublicArtifactValidationCommon.d.ts.map +1 -0
  145. package/dist/aws/portalPublicArtifactValidationCommon.js +167 -0
  146. package/dist/aws/portalPublicArtifactValidationCommon.js.map +1 -0
  147. package/dist/aws/portalPublicArtifacts.d.ts +371 -0
  148. package/dist/aws/portalPublicArtifacts.d.ts.map +1 -0
  149. package/dist/aws/portalPublicArtifacts.js +85 -0
  150. package/dist/aws/portalPublicArtifacts.js.map +1 -0
  151. package/dist/aws/publicArtifacts.d.ts +106 -0
  152. package/dist/aws/publicArtifacts.d.ts.map +1 -0
  153. package/dist/aws/publicArtifacts.js +16 -0
  154. package/dist/aws/publicArtifacts.js.map +1 -0
  155. package/dist/aws/requests.d.ts +84 -0
  156. package/dist/aws/requests.d.ts.map +1 -0
  157. package/dist/aws/requests.js +23 -0
  158. package/dist/aws/requests.js.map +1 -0
  159. package/dist/azure/activityLogs.d.ts +71 -0
  160. package/dist/azure/activityLogs.d.ts.map +1 -0
  161. package/dist/azure/activityLogs.js +6 -0
  162. package/dist/azure/activityLogs.js.map +1 -0
  163. package/dist/azure/advisorScore.d.ts +39 -0
  164. package/dist/azure/advisorScore.d.ts.map +1 -0
  165. package/dist/azure/advisorScore.js +3 -0
  166. package/dist/azure/advisorScore.js.map +1 -0
  167. package/dist/azure/benefits.d.ts +161 -0
  168. package/dist/azure/benefits.d.ts.map +1 -0
  169. package/dist/azure/benefits.js +3 -0
  170. package/dist/azure/benefits.js.map +1 -0
  171. package/dist/azure/billingPlots.d.ts +249 -0
  172. package/dist/azure/billingPlots.d.ts.map +1 -0
  173. package/dist/azure/billingPlots.js +6 -0
  174. package/dist/azure/billingPlots.js.map +1 -0
  175. package/dist/azure/budgets.d.ts +4 -0
  176. package/dist/azure/budgets.d.ts.map +1 -1
  177. package/dist/azure/commitmentsPlanning.d.ts +643 -0
  178. package/dist/azure/commitmentsPlanning.d.ts.map +1 -0
  179. package/dist/azure/commitmentsPlanning.js +3 -0
  180. package/dist/azure/commitmentsPlanning.js.map +1 -0
  181. package/dist/azure/common.d.ts +44 -0
  182. package/dist/azure/common.d.ts.map +1 -1
  183. package/dist/azure/configs.d.ts +75 -2
  184. package/dist/azure/configs.d.ts.map +1 -1
  185. package/dist/azure/dataProtection.d.ts +229 -0
  186. package/dist/azure/dataProtection.d.ts.map +1 -0
  187. package/dist/azure/dataProtection.js +9 -0
  188. package/dist/azure/dataProtection.js.map +1 -0
  189. package/dist/azure/governance.d.ts +942 -0
  190. package/dist/azure/governance.d.ts.map +1 -0
  191. package/dist/azure/governance.js +18 -0
  192. package/dist/azure/governance.js.map +1 -0
  193. package/dist/azure/licensing.d.ts +386 -0
  194. package/dist/azure/licensing.d.ts.map +1 -0
  195. package/dist/azure/licensing.js +3 -0
  196. package/dist/azure/licensing.js.map +1 -0
  197. package/dist/azure/metrics.d.ts +99 -4
  198. package/dist/azure/metrics.d.ts.map +1 -1
  199. package/dist/azure/payloads.d.ts +341 -1
  200. package/dist/azure/payloads.d.ts.map +1 -1
  201. package/dist/azure/portalArtifacts.d.ts +14 -0
  202. package/dist/azure/portalArtifacts.d.ts.map +1 -0
  203. package/dist/azure/portalArtifacts.js +5 -0
  204. package/dist/azure/portalArtifacts.js.map +1 -0
  205. package/dist/azure/prices.d.ts +247 -0
  206. package/dist/azure/prices.d.ts.map +1 -1
  207. package/dist/azure/publicIpAddresses.d.ts +171 -0
  208. package/dist/azure/publicIpAddresses.d.ts.map +1 -0
  209. package/dist/azure/publicIpAddresses.js +6 -0
  210. package/dist/azure/publicIpAddresses.js.map +1 -0
  211. package/dist/azure/recommendationAudit.d.ts +167 -0
  212. package/dist/azure/recommendationAudit.d.ts.map +1 -0
  213. package/dist/azure/recommendationAudit.js +20 -0
  214. package/dist/azure/recommendationAudit.js.map +1 -0
  215. package/dist/azure/recommendationState.d.ts +93 -4
  216. package/dist/azure/recommendationState.d.ts.map +1 -1
  217. package/dist/azure/recommendationTracks.d.ts +214 -0
  218. package/dist/azure/recommendationTracks.d.ts.map +1 -0
  219. package/dist/azure/recommendationTracks.js +44 -0
  220. package/dist/azure/recommendationTracks.js.map +1 -0
  221. package/dist/azure/recommendationWorkflow.d.ts +304 -0
  222. package/dist/azure/recommendationWorkflow.d.ts.map +1 -0
  223. package/dist/azure/recommendationWorkflow.js +17 -0
  224. package/dist/azure/recommendationWorkflow.js.map +1 -0
  225. package/dist/azure/recommendations.d.ts +582 -7
  226. package/dist/azure/recommendations.d.ts.map +1 -1
  227. package/dist/azure/recommendations.js.map +1 -1
  228. package/dist/azure/regulatoryCompliance.d.ts +301 -0
  229. package/dist/azure/regulatoryCompliance.d.ts.map +1 -0
  230. package/dist/azure/regulatoryCompliance.js +10 -0
  231. package/dist/azure/regulatoryCompliance.js.map +1 -0
  232. package/dist/azure/relationships.d.ts +193 -0
  233. package/dist/azure/relationships.d.ts.map +1 -0
  234. package/dist/azure/relationships.js +6 -0
  235. package/dist/azure/relationships.js.map +1 -0
  236. package/dist/azure/reportingTemplates.d.ts +70 -0
  237. package/dist/azure/reportingTemplates.d.ts.map +1 -0
  238. package/dist/azure/reportingTemplates.js +5 -0
  239. package/dist/azure/reportingTemplates.js.map +1 -0
  240. package/dist/azure/reports.d.ts +267 -2
  241. package/dist/azure/reports.d.ts.map +1 -1
  242. package/dist/azure/reports.js +1 -1
  243. package/dist/azure/reports.js.map +1 -1
  244. package/dist/azure/resourceHealth.d.ts +264 -0
  245. package/dist/azure/resourceHealth.d.ts.map +1 -0
  246. package/dist/azure/resourceHealth.js +16 -0
  247. package/dist/azure/resourceHealth.js.map +1 -0
  248. package/dist/azure/resourceOptimization.d.ts +79 -0
  249. package/dist/azure/resourceOptimization.d.ts.map +1 -0
  250. package/dist/azure/resourceOptimization.js +3 -0
  251. package/dist/azure/resourceOptimization.js.map +1 -0
  252. package/dist/azure/resources.d.ts +80 -0
  253. package/dist/azure/resources.d.ts.map +1 -1
  254. package/dist/azure/reviewChecklist.d.ts +147 -0
  255. package/dist/azure/reviewChecklist.d.ts.map +1 -0
  256. package/dist/azure/reviewChecklist.js +3 -0
  257. package/dist/azure/reviewChecklist.js.map +1 -0
  258. package/dist/azure/security.d.ts +10 -0
  259. package/dist/azure/security.d.ts.map +1 -1
  260. package/dist/azure/serviceRetirement.d.ts +59 -0
  261. package/dist/azure/serviceRetirement.d.ts.map +1 -0
  262. package/dist/azure/serviceRetirement.js +3 -0
  263. package/dist/azure/serviceRetirement.js.map +1 -0
  264. package/dist/azure/serviceRetirementState.d.ts +22 -0
  265. package/dist/azure/serviceRetirementState.d.ts.map +1 -0
  266. package/dist/azure/serviceRetirementState.js +3 -0
  267. package/dist/azure/serviceRetirementState.js.map +1 -0
  268. package/dist/azure/serviceRetirementWorkManagement.d.ts +7 -0
  269. package/dist/azure/serviceRetirementWorkManagement.d.ts.map +1 -0
  270. package/dist/azure/serviceRetirementWorkManagement.js +3 -0
  271. package/dist/azure/serviceRetirementWorkManagement.js.map +1 -0
  272. package/dist/azure/storage-inventory.d.ts +241 -0
  273. package/dist/azure/storage-inventory.d.ts.map +1 -0
  274. package/dist/azure/storage-inventory.js +3 -0
  275. package/dist/azure/storage-inventory.js.map +1 -0
  276. package/dist/azure/subscriptions.d.ts +107 -8
  277. package/dist/azure/subscriptions.d.ts.map +1 -1
  278. package/dist/azure/views.d.ts +704 -6
  279. package/dist/azure/views.d.ts.map +1 -1
  280. package/dist/azure/workManagement.d.ts +154 -0
  281. package/dist/azure/workManagement.d.ts.map +1 -0
  282. package/dist/azure/workManagement.js +8 -0
  283. package/dist/azure/workManagement.js.map +1 -0
  284. package/dist/common/artifactGeneration.d.ts +91 -0
  285. package/dist/common/artifactGeneration.d.ts.map +1 -0
  286. package/dist/common/artifactGeneration.js +5 -0
  287. package/dist/common/artifactGeneration.js.map +1 -0
  288. package/dist/common/index.d.ts +4 -0
  289. package/dist/common/index.d.ts.map +1 -1
  290. package/dist/common/index.js +4 -0
  291. package/dist/common/index.js.map +1 -1
  292. package/dist/common/pagination.d.ts +3 -0
  293. package/dist/common/pagination.d.ts.map +1 -1
  294. package/dist/common/provider.d.ts +33 -0
  295. package/dist/common/provider.d.ts.map +1 -0
  296. package/dist/common/provider.js +15 -0
  297. package/dist/common/provider.js.map +1 -0
  298. package/dist/common/providerSyncProgress.d.ts +91 -0
  299. package/dist/common/providerSyncProgress.d.ts.map +1 -0
  300. package/dist/common/providerSyncProgress.js +3 -0
  301. package/dist/common/providerSyncProgress.js.map +1 -0
  302. package/dist/common/syncProgress.d.ts +27 -0
  303. package/dist/common/syncProgress.d.ts.map +1 -0
  304. package/dist/common/syncProgress.js +3 -0
  305. package/dist/common/syncProgress.js.map +1 -0
  306. package/dist/company/billingAccount.d.ts +30 -0
  307. package/dist/company/billingAccount.d.ts.map +1 -0
  308. package/dist/company/billingAccount.js +3 -0
  309. package/dist/company/billingAccount.js.map +1 -0
  310. package/dist/company/company.d.ts +91 -1
  311. package/dist/company/company.d.ts.map +1 -1
  312. package/dist/company/companyHierarchy.d.ts +53 -0
  313. package/dist/company/companyHierarchy.d.ts.map +1 -0
  314. package/dist/company/companyHierarchy.js +3 -0
  315. package/dist/company/companyHierarchy.js.map +1 -0
  316. package/dist/company/companyNotes.d.ts +288 -0
  317. package/dist/company/companyNotes.d.ts.map +1 -0
  318. package/dist/company/companyNotes.js +42 -0
  319. package/dist/company/companyNotes.js.map +1 -0
  320. package/dist/company/customProperties.d.ts +2 -0
  321. package/dist/company/customProperties.d.ts.map +1 -0
  322. package/dist/company/customProperties.js +18 -0
  323. package/dist/company/customProperties.js.map +1 -0
  324. package/dist/company/index.d.ts +3 -0
  325. package/dist/company/index.d.ts.map +1 -1
  326. package/dist/company/index.js +3 -0
  327. package/dist/company/index.js.map +1 -1
  328. package/dist/company/notification.d.ts +35 -1
  329. package/dist/company/notification.d.ts.map +1 -1
  330. package/dist/company/notification.js +27 -12
  331. package/dist/company/notification.js.map +1 -1
  332. package/dist/company/survey.d.ts +3 -0
  333. package/dist/company/survey.d.ts.map +1 -1
  334. package/dist/customProperties/customProperties.d.ts +87 -0
  335. package/dist/customProperties/customProperties.d.ts.map +1 -0
  336. package/dist/customProperties/customProperties.js +3 -0
  337. package/dist/customProperties/customProperties.js.map +1 -0
  338. package/dist/customProperties/index.d.ts +2 -0
  339. package/dist/customProperties/index.d.ts.map +1 -0
  340. package/dist/customProperties/index.js +18 -0
  341. package/dist/customProperties/index.js.map +1 -0
  342. package/dist/events/actionGroups.d.ts +85 -0
  343. package/dist/events/actionGroups.d.ts.map +1 -0
  344. package/dist/events/actionGroups.js +3 -0
  345. package/dist/events/actionGroups.js.map +1 -0
  346. package/dist/events/alertDefinitionRun.d.ts +23 -0
  347. package/dist/events/alertDefinitionRun.d.ts.map +1 -0
  348. package/dist/events/alertDefinitionRun.js +3 -0
  349. package/dist/events/alertDefinitionRun.js.map +1 -0
  350. package/dist/events/baseAlert.d.ts +140 -0
  351. package/dist/events/baseAlert.d.ts.map +1 -0
  352. package/dist/events/baseAlert.js +3 -0
  353. package/dist/events/baseAlert.js.map +1 -0
  354. package/dist/events/cost.d.ts +371 -0
  355. package/dist/events/cost.d.ts.map +1 -0
  356. package/dist/events/cost.js +3 -0
  357. package/dist/events/cost.js.map +1 -0
  358. package/dist/events/costAnomalies.d.ts +47 -0
  359. package/dist/events/costAnomalies.d.ts.map +1 -0
  360. package/dist/events/costAnomalies.js +3 -0
  361. package/dist/events/costAnomalies.js.map +1 -0
  362. package/dist/events/costViews.d.ts +25 -0
  363. package/dist/events/costViews.d.ts.map +1 -0
  364. package/dist/events/costViews.js +3 -0
  365. package/dist/events/costViews.js.map +1 -0
  366. package/dist/events/eventStatus.d.ts +67 -0
  367. package/dist/events/eventStatus.d.ts.map +1 -0
  368. package/dist/events/eventStatus.js +3 -0
  369. package/dist/events/eventStatus.js.map +1 -0
  370. package/dist/events/index.d.ts +9 -0
  371. package/dist/events/index.d.ts.map +1 -0
  372. package/dist/events/index.js +25 -0
  373. package/dist/events/index.js.map +1 -0
  374. package/dist/events/quickAlerts.d.ts +67 -0
  375. package/dist/events/quickAlerts.d.ts.map +1 -0
  376. package/dist/events/quickAlerts.js +7 -0
  377. package/dist/events/quickAlerts.js.map +1 -0
  378. package/dist/features-and-permissions/access.d.ts +137 -0
  379. package/dist/features-and-permissions/access.d.ts.map +1 -0
  380. package/dist/features-and-permissions/access.js +3 -0
  381. package/dist/features-and-permissions/access.js.map +1 -0
  382. package/dist/features-and-permissions/index.d.ts +2 -0
  383. package/dist/features-and-permissions/index.d.ts.map +1 -0
  384. package/dist/features-and-permissions/index.js +18 -0
  385. package/dist/features-and-permissions/index.js.map +1 -0
  386. package/dist/feedbacks/feedback.d.ts +9 -0
  387. package/dist/feedbacks/feedback.d.ts.map +1 -1
  388. package/dist/identity/apikey.d.ts +84 -0
  389. package/dist/identity/apikey.d.ts.map +1 -0
  390. package/dist/identity/apikey.js +3 -0
  391. package/dist/identity/apikey.js.map +1 -0
  392. package/dist/identity/index.d.ts +2 -0
  393. package/dist/identity/index.d.ts.map +1 -0
  394. package/dist/identity/index.js +18 -0
  395. package/dist/identity/index.js.map +1 -0
  396. package/dist/index.d.ts +34 -0
  397. package/dist/index.d.ts.map +1 -1
  398. package/dist/index.js +34 -1
  399. package/dist/index.js.map +1 -1
  400. package/dist/index.vite.d.ts +49 -0
  401. package/dist/index.vite.d.ts.map +1 -0
  402. package/dist/index.vite.js +65 -0
  403. package/dist/index.vite.js.map +1 -0
  404. package/dist/integrations/autotask.d.ts +108 -0
  405. package/dist/integrations/autotask.d.ts.map +1 -0
  406. package/dist/integrations/autotask.js +3 -0
  407. package/dist/integrations/autotask.js.map +1 -0
  408. package/dist/integrations/azureDevOps.d.ts +130 -0
  409. package/dist/integrations/azureDevOps.d.ts.map +1 -0
  410. package/dist/integrations/azureDevOps.js +3 -0
  411. package/dist/integrations/azureDevOps.js.map +1 -0
  412. package/dist/integrations/github.d.ts +96 -0
  413. package/dist/integrations/github.d.ts.map +1 -0
  414. package/dist/integrations/github.js +3 -0
  415. package/dist/integrations/github.js.map +1 -0
  416. package/dist/integrations/halo.d.ts +76 -0
  417. package/dist/integrations/halo.d.ts.map +1 -0
  418. package/dist/integrations/halo.js +3 -0
  419. package/dist/integrations/halo.js.map +1 -0
  420. package/dist/integrations/index.d.ts +6 -0
  421. package/dist/integrations/index.d.ts.map +1 -0
  422. package/dist/integrations/index.js +22 -0
  423. package/dist/integrations/index.js.map +1 -0
  424. package/dist/integrations/integrationTickets.d.ts +77 -0
  425. package/dist/integrations/integrationTickets.d.ts.map +1 -0
  426. package/dist/integrations/integrationTickets.js +3 -0
  427. package/dist/integrations/integrationTickets.js.map +1 -0
  428. package/dist/scheduler/index.d.ts +2 -0
  429. package/dist/scheduler/index.d.ts.map +1 -0
  430. package/dist/scheduler/index.js +18 -0
  431. package/dist/scheduler/index.js.map +1 -0
  432. package/dist/scheduler/scheduler.d.ts +263 -0
  433. package/dist/scheduler/scheduler.d.ts.map +1 -0
  434. package/dist/scheduler/scheduler.js +3 -0
  435. package/dist/scheduler/scheduler.js.map +1 -0
  436. package/dist/tags/index.d.ts +2 -0
  437. package/dist/tags/index.d.ts.map +1 -0
  438. package/dist/tags/index.js +18 -0
  439. package/dist/tags/index.js.map +1 -0
  440. package/dist/tags/tags.d.ts +37 -0
  441. package/dist/tags/tags.d.ts.map +1 -0
  442. package/dist/tags/tags.js +10 -0
  443. package/dist/tags/tags.js.map +1 -0
  444. package/dist/unknown/services.d.ts +12 -0
  445. package/dist/unknown/services.d.ts.map +1 -0
  446. package/dist/unknown/services.js +3 -0
  447. package/dist/unknown/services.js.map +1 -0
  448. package/dist/users/companyUser.d.ts +14 -0
  449. package/dist/users/companyUser.d.ts.map +1 -1
  450. package/dist/users/companyUser.js.map +1 -1
  451. package/dist/users/user.d.ts +20 -1
  452. package/dist/users/user.d.ts.map +1 -1
  453. package/package.json +30 -5
@@ -1,5 +1,17 @@
1
- import { Comment, RecommendationHistory } from './recommendationState';
2
- import { SecurityAssessmentStatus, SecurityImpact } from './security';
1
+ import type { Comment, CommentScope, RecommendationHistory } from './recommendationState';
2
+ import type { ProviderScope } from '../common/provider';
3
+ import { SecurityAssessmentStatus, SecurityImpact, SubscriptionSecurityStatus } from './security';
4
+ import { SubscriptionSummaryLite } from './subscriptions';
5
+ import type { CostSavingsAggregationPolicy, CostSavingsSpendBasis, CostSavingsSummary, CurrencySavingsGroup, SavingsPotential, VmPricePerformanceInsights } from './views';
6
+ import type { HaloRoutingOverrides } from '../integrations/halo';
7
+ import type { AutotaskShareOverrides } from '../integrations/autotask';
8
+ import type { AzureDevOpsShareOverrides } from '../integrations/azureDevOps';
9
+ import type { GitHubShareOverrides } from '../integrations/github';
10
+ import type { Tags } from '../tags';
11
+ import type { AzurePortalVersionedArtifact } from './portalArtifacts';
12
+ import type { RecommendationSystemTrackClassification } from './recommendationTracks';
13
+ import type { LicensingRecommendationRenderData } from './licensing';
14
+ import type { ResourceSimpleOptimizationProfile } from './resourceOptimization';
3
15
  export declare enum RecommendationCategory {
4
16
  Cost = "Cost",
5
17
  Performance = "Performance",
@@ -9,14 +21,212 @@ export declare enum RecommendationCategory {
9
21
  OperationalExcellence = "OperationalExcellence",
10
22
  OperationalExcellenceAlternative = "Operational Excellence"
11
23
  }
24
+ export type RecommendationPriorityTier = 'must_do' | 'normal';
25
+ export type RecommendationCostImpactUnit = 'percent';
26
+ export type EffortEstimateProfileName = 'clickops' | 'devops' | 'enterprise';
27
+ export interface RecommendationBaseScores {
28
+ cost_optimization: number;
29
+ security: number;
30
+ performance: number;
31
+ reliability: number;
32
+ compliance: number;
33
+ operational_excellence: number;
34
+ }
35
+ export interface RecommendationEffortEstimateBreakdown {
36
+ discovery: number;
37
+ implementation: number;
38
+ validation: number;
39
+ rollbackPlanning: number;
40
+ coordination: number;
41
+ }
42
+ export interface RecommendationEffortEstimateProfile {
43
+ effortHours: number;
44
+ breakdown: RecommendationEffortEstimateBreakdown;
45
+ reason: string;
46
+ }
47
+ export interface RecommendationEffortEstimateProfiles {
48
+ clickops: RecommendationEffortEstimateProfile;
49
+ devops: RecommendationEffortEstimateProfile;
50
+ enterprise: RecommendationEffortEstimateProfile;
51
+ }
52
+ export interface RecommendationBulkEffortEstimateProfile {
53
+ setupHours: number;
54
+ perResourceHours: number;
55
+ validationHours: number;
56
+ }
57
+ export interface RecommendationBulkEffortEstimateProfiles {
58
+ clickops: RecommendationBulkEffortEstimateProfile;
59
+ devops: RecommendationBulkEffortEstimateProfile;
60
+ enterprise: RecommendationBulkEffortEstimateProfile;
61
+ }
62
+ export interface RecommendationBulkEffortEstimates {
63
+ supported: boolean;
64
+ threshold: number;
65
+ profiles: RecommendationBulkEffortEstimateProfiles;
66
+ }
67
+ export interface RecommendationEffortEstimates {
68
+ profiles: RecommendationEffortEstimateProfiles;
69
+ bulk: RecommendationBulkEffortEstimates;
70
+ overridden?: boolean;
71
+ lastUpdatedAt?: string;
72
+ notes?: string;
73
+ }
74
+ export interface RecommendationActionImpactAssessment {
75
+ downtime: string;
76
+ dataLoss: string;
77
+ accessImpact: string;
78
+ dependencies: string;
79
+ }
80
+ export type RecommendationActionRiskLevel = 'low' | 'medium' | 'high';
81
+ export interface RecommendationActionRollback {
82
+ supported: boolean;
83
+ description: string;
84
+ limitations: string[];
85
+ }
86
+ export interface RecommendationActionCheck {
87
+ label: string;
88
+ description: string;
89
+ }
90
+ export interface RecommendationActionLink {
91
+ label: string;
92
+ url: string;
93
+ }
94
+ export interface RecommendationActionPostValidation {
95
+ label: string;
96
+ description: string;
97
+ expectedResult: string;
98
+ links?: RecommendationActionLink[];
99
+ }
100
+ export type RecommendationActionPermissionProvider = 'azure-rbac';
101
+ export type RecommendationActionPermissionScope = 'targetResource' | 'resourceGroup' | 'subscription' | 'tenant';
102
+ export interface RecommendationActionPermissionRequirement {
103
+ label: string;
104
+ name: string;
105
+ reason: string;
106
+ links?: RecommendationActionLink[];
107
+ }
108
+ export interface RecommendationActionLeastPrivilegeRole {
109
+ label: string;
110
+ description: string;
111
+ }
112
+ export interface RecommendationActionSuggestedRole {
113
+ label: string;
114
+ roleName: string;
115
+ roleDefinitionId?: string;
116
+ reason: string;
117
+ }
118
+ export interface RecommendationActionRequiredPermissions {
119
+ provider: RecommendationActionPermissionProvider;
120
+ scope: RecommendationActionPermissionScope;
121
+ actions: RecommendationActionPermissionRequirement[];
122
+ dataActions: RecommendationActionPermissionRequirement[];
123
+ leastPrivilegeRole?: RecommendationActionLeastPrivilegeRole;
124
+ suggestedRoles?: RecommendationActionSuggestedRole[];
125
+ }
126
+ export interface RecommendationActionDefinition {
127
+ verified: boolean;
128
+ actionDefinitionId?: string;
129
+ title: string;
130
+ description: string;
131
+ estimatedDuration: string;
132
+ riskLevel: RecommendationActionRiskLevel;
133
+ requiredPermissions?: RecommendationActionRequiredPermissions;
134
+ impactAssessment: RecommendationActionImpactAssessment;
135
+ rollback: RecommendationActionRollback;
136
+ humanPreChecks: RecommendationActionCheck[];
137
+ postValidation: RecommendationActionPostValidation[];
138
+ }
139
+ export type RecommendationActionMetadata = RecommendationActionDefinition;
140
+ export type RecommendationImplementActionImpactAssessment = RecommendationActionImpactAssessment;
141
+ export type RecommendationImplementAction = RecommendationActionMetadata;
12
142
  export interface RecommendationResources {
13
143
  recommendation: CustomAzureRecommendation;
14
144
  resourceIds: string[];
15
145
  }
146
+ export type HddSsdMigrationTargetTier = 'standardSsd' | 'premiumSsd';
147
+ export type HddDiskPricingRedundancy = 'LRS' | 'ZRS';
148
+ export interface HddOsRetirementCurrentDiskPricing {
149
+ storageTier: 'standardHdd';
150
+ skuName: string;
151
+ pricingRedundancy?: HddDiskPricingRedundancy;
152
+ sizeGiB: number;
153
+ monthlyActual: number;
154
+ monthlyRetail: number;
155
+ }
156
+ export interface HddOsRetirementTargetDiskPricing {
157
+ storageTier: HddSsdMigrationTargetTier;
158
+ skuName: string;
159
+ pricingRedundancy?: HddDiskPricingRedundancy;
160
+ sizeGiB: number;
161
+ monthlyRetail: number;
162
+ }
163
+ export interface HddOsRetirementDiskRenderItem {
164
+ resourceId: string;
165
+ resourceName: string;
166
+ resourceType: string;
167
+ /** Canonical location key used for pricing lookup, e.g. "westus". */
168
+ pricingLocation?: string;
169
+ current: HddOsRetirementCurrentDiskPricing;
170
+ standardSsd: HddOsRetirementTargetDiskPricing & {
171
+ storageTier: 'standardSsd';
172
+ };
173
+ premiumSsd: HddOsRetirementTargetDiskPricing & {
174
+ storageTier: 'premiumSsd';
175
+ };
176
+ defaultSelection?: HddSsdMigrationTargetTier;
177
+ }
178
+ export interface HddOsRetirementRenderStrategyPayload {
179
+ retirementDate: string;
180
+ retirementLink: string;
181
+ currencyCode?: string;
182
+ currencySymbol?: string;
183
+ defaultTargetTier?: HddSsdMigrationTargetTier;
184
+ impactedDiskCount: number;
185
+ currentMonthlyActual: number;
186
+ currentMonthlyRetail: number;
187
+ standardSsdMonthlyRetail: number;
188
+ premiumSsdMonthlyRetail: number;
189
+ standardSsdMonthlyDelta: number;
190
+ premiumSsdMonthlyDelta: number;
191
+ disks: HddOsRetirementDiskRenderItem[];
192
+ }
193
+ export type RecommendationKnownRenderData = HddOsRetirementRenderStrategyPayload | VmPricePerformanceInsights | LicensingRecommendationRenderData;
194
+ export type AnyRecommendationRenderData = Record<string, unknown>;
195
+ export type RecommendationDecisionRelationshipKind = 'review_first' | 'alternative' | 'trade_off' | 'follow_up' | 'unlocks' | 'conflicts_with';
196
+ export type RecommendationDecisionContextRole = 'primary' | 'alternative' | 'trade_off' | 'follow_up' | 'supporting';
197
+ export type RecommendationDecisionReviewPriority = 'review_first' | 'normal';
198
+ /**
199
+ * Resource-specific relationship from one recommendation to another.
200
+ * Used by UIs to explain alternatives and follow-ups without changing recommendation state.
201
+ */
202
+ export interface RecommendationDecisionLink {
203
+ recommendationId: string;
204
+ kind: RecommendationDecisionRelationshipKind;
205
+ label?: string;
206
+ reason?: string;
207
+ condition?: string;
208
+ }
209
+ /**
210
+ * Resource-specific decision context for an existing recommendation.
211
+ * The recommendation remains independently visible and actionable by recommendationId.
212
+ */
213
+ export interface RecommendationDecisionContext {
214
+ recommendationId: string;
215
+ role?: RecommendationDecisionContextRole;
216
+ reviewPriority?: RecommendationDecisionReviewPriority;
217
+ groupId?: string;
218
+ title?: string;
219
+ explanation?: string;
220
+ links: RecommendationDecisionLink[];
221
+ }
16
222
  export interface Recommendation {
223
+ /** Business identity of a recommendation record (routing/state/sharing/dedupe). */
17
224
  id: string;
18
225
  name: string;
19
226
  category: RecommendationCategory;
227
+ subCategory?: string;
228
+ aggregateDescription?: string;
229
+ /** custom */
20
230
  type?: string;
21
231
  description?: string;
22
232
  remediation?: string;
@@ -27,33 +237,94 @@ export interface Recommendation {
27
237
  url: string;
28
238
  }[];
29
239
  considerations?: string;
240
+ currency?: string;
30
241
  potentialBenefits?: string;
242
+ potentialMonthlySavings?: number;
243
+ /** Canonical savings projection attached by completed view producers. */
244
+ savings?: SavingsPotential;
31
245
  effort?: string;
32
246
  effortReason?: string;
247
+ /** e.g. 10 hours */
248
+ effortHours?: number;
249
+ /** Detailed implementation estimates by delivery profile and bulk rollout mode. */
250
+ effortEstimates?: RecommendationEffortEstimates;
33
251
  risk?: string;
34
252
  riskReason?: string;
253
+ severity?: string;
254
+ /** Relative cost percentage, e.g. -40 means a 40% reduction. Never a currency amount. */
35
255
  costImpact?: number;
256
+ /** Explicit discriminator for new payloads while legacy percentage-only payloads remain readable. */
257
+ costImpactUnit?: RecommendationCostImpactUnit;
36
258
  costImpactReason?: string;
37
- costImpactDetails?: CostImpactDetails;
259
+ /*** costImpactDetails is deprecated **/
38
260
  performanceImpact?: number;
39
261
  performanceImpactReason?: string;
40
262
  confidencePercentage?: number;
41
263
  confidenceReason?: string;
264
+ /** array of resources that have this recommendation */
42
265
  resources?: ResourceReference[];
266
+ /** Compact resource references for resource-specific detail payloads. */
267
+ resourceIds?: string[];
268
+ /** Total affected resources when resourceIds is trimmed or sampled. */
269
+ resourcesCount?: number;
270
+ /** only for security recommendations */
43
271
  securityImpactDetails?: SecurityImpact;
272
+ /** whether the recommendation has been resolved or not, eg, Security Assessment is "Healthy" should be true */
44
273
  resolved?: boolean;
45
274
  securityAssessmentStatuses?: SecurityAssessmentStatus[];
46
- subcategory?: string;
275
+ /** Deprecated fields, kept for compatibility */
47
276
  solution?: string;
48
277
  source?: string;
49
278
  service?: string;
279
+ /**
280
+ * Stored as string to allow JSON persistence.
281
+ * Uses a different name to avoid conflict with RecommendationWithState.createdAt.
282
+ */
50
283
  createdTime?: string;
284
+ /** Avoids conflict with RecommendationWithState.updatedAt */
51
285
  lastUpdatedTime?: string;
286
+ /** Business story properties */
287
+ title?: string;
288
+ headline?: string;
289
+ bottomLine?: string;
290
+ plainSummary?: string;
291
+ quickSteps?: string[];
292
+ businessOwner?: string;
293
+ keyConstraint?: string;
294
+ validationEvidence?: string;
295
+ read?: boolean;
296
+ /** Technical playbook (only for multi-step implementations) */
297
+ technicalPlaybook?: string;
298
+ /** Static recommendation scoring metadata (library-level). */
299
+ baseScores?: RecommendationBaseScores;
300
+ overallBaseScore?: number;
301
+ overallBaseReason?: string;
302
+ priorityTier?: RecommendationPriorityTier;
303
+ /** Runtime scoring metadata (per company/tenant). */
304
+ adjustedScore?: number;
305
+ objectiveMultiplier?: number;
306
+ finalScore?: number;
307
+ /** UI display-only normalized score (0-100). */
308
+ normalizedScore?: number;
309
+ /** Optional system-track classification emitted from the checked-in recommendation registry. */
310
+ systemTrackClassification?: RecommendationSystemTrackClassification;
311
+ /** Cross-feature linkage IDs used for deep links and related views. */
312
+ linkingIds?: RecommendationLinkingIds;
313
+ /** Optional UI render payload consumed by recommendation-specific components. */
314
+ renderData?: RecommendationKnownRenderData | AnyRecommendationRenderData;
315
+ /** Optional action definition for implement-capable recommendations. */
316
+ action?: RecommendationActionMetadata;
52
317
  }
318
+ export interface RecommendationLinkingIds {
319
+ serviceRetirementIds?: string[];
320
+ }
321
+ /** Deprecated **/
53
322
  export interface CostImpactDetails {
323
+ /** e.g. "Saving Plan", "Reserved Instance", "Windows migration to Linux" */
54
324
  name: string;
55
325
  monthlySavings?: number;
56
326
  currentSpend?: number;
327
+ /** e.g. 20 for 20% */
57
328
  savingPercentage?: number;
58
329
  minMonthlySavings?: number;
59
330
  maxMonthlySavings?: number;
@@ -67,18 +338,106 @@ export interface RecommendationSummary {
67
338
  }
68
339
  export interface RecommendationWithResources {
69
340
  recommendation: Recommendation;
341
+ /** Total affected resources when the resources array is trimmed or sampled. */
342
+ resourcesCount?: number;
70
343
  resources: RecommendationResource[];
344
+ /** Homogeneous-currency savings only. Omit for mixed-currency projections. */
345
+ savings?: SavingsPotential;
346
+ /** Canonical monetary values when present; `savings` must not contain mixed-currency amounts. */
347
+ savingsByCurrency?: CurrencySavingsGroup[];
348
+ /** Canonical resource ID that owns this recommendation savings amount for aggregation */
349
+ savingsOwnerResourceId?: string;
350
+ /** Resource IDs that may display this recommendation savings amount as context */
351
+ savingsDisplayResourceIds?: string[];
352
+ /** Billable component key used with the owner ID to prevent double counting */
353
+ billableComponentKey?: string;
354
+ /** Aggregation rule for this recommendation savings amount */
355
+ savingsAggregationPolicy?: CostSavingsAggregationPolicy;
356
+ }
357
+ /**
358
+ * Contextual links from one recommendation row to other resources.
359
+ * Used to model "this disk belongs to that VM" style associations
360
+ * without changing which resource owns savings totals.
361
+ */
362
+ export interface RecommendationResourceAssociation {
363
+ id: string;
364
+ name?: string;
365
+ type?: string;
366
+ relationship?: ResourceRelationship;
367
+ }
368
+ export type RecommendationSavingsCalculationBasis = 'actual-billing' | 'projected-runtime' | 'target-pricing' | 'commitment-pricing';
369
+ export interface ResourceRecommendationSavingsDetails {
370
+ headlineScenario: {
371
+ id: string;
372
+ label: string;
373
+ action: string;
374
+ monthlySavings: number;
375
+ targetMonthlyCost: number;
376
+ };
377
+ affectedCost: {
378
+ label: string;
379
+ currentMonthlyCost: number;
380
+ savingsPercentage: number;
381
+ };
382
+ resourceSpend?: {
383
+ last30Days: number;
384
+ savingsPercentage: number;
385
+ };
386
+ calculationBasis: {
387
+ type: RecommendationSavingsCalculationBasis;
388
+ windowStart?: string;
389
+ windowEnd?: string;
390
+ };
71
391
  }
72
392
  export interface RecommendationResource {
73
393
  id: string;
74
394
  name: string;
75
395
  type: string;
396
+ resourceGroup?: string;
397
+ location?: string;
398
+ subscriptionId?: string;
399
+ subscriptionName?: string;
400
+ tags?: Record<string, string>;
401
+ spottoTags?: Tags;
402
+ createdTime?: string;
403
+ typeInfo?: {
404
+ name: string;
405
+ icon: string;
406
+ description: string;
407
+ product: string;
408
+ aliases?: string[];
409
+ };
76
410
  spend: number;
77
411
  spendAmortized: number;
412
+ /** Spend basis used to calculate this recommendation resource's savings. */
413
+ savingsBasis?: CostSavingsSpendBasis;
414
+ optimizationProfile?: ResourceSimpleOptimizationProfile;
415
+ savings?: SavingsPotential;
416
+ /** Standalone saving for this recommendation on this resource. */
417
+ savingsDetails?: ResourceRecommendationSavingsDetails;
418
+ /** Canonical resource ID that owns this resource savings amount for aggregation */
419
+ savingsOwnerResourceId?: string;
420
+ /** Resource IDs that may display this resource savings amount as context */
421
+ savingsDisplayResourceIds?: string[];
422
+ /** Billable component key used with the owner ID to prevent double counting */
423
+ billableComponentKey?: string;
424
+ /** Aggregation rule for this resource savings amount */
425
+ savingsAggregationPolicy?: CostSavingsAggregationPolicy;
426
+ currency?: string;
427
+ currencySymbol?: string;
428
+ relationship?: ResourceRelationship;
429
+ associations?: RecommendationResourceAssociation[];
78
430
  }
79
- export interface RecommendationsView {
431
+ export interface RecommendationsView extends AzurePortalVersionedArtifact {
80
432
  recommendations: RecommendationWithResources[];
81
433
  securityImpactDetails?: SecurityImpact[];
434
+ subscriptionSecurityStatus?: SubscriptionSecurityStatus;
435
+ /** Homogeneous-currency savings only. Omit for mixed-currency projections. */
436
+ savings?: SavingsPotential;
437
+ /** Canonical monetary values when present; `savings` must not contain mixed-currency amounts. */
438
+ savingsByCurrency?: CurrencySavingsGroup[];
439
+ subscription: SubscriptionSummaryLite;
440
+ costSavingsSummary?: CostSavingsSummary;
82
441
  }
83
442
  export interface ResourceId {
84
443
  id: string;
@@ -86,7 +445,20 @@ export interface ResourceId {
86
445
  export interface ResourceReference {
87
446
  id: string;
88
447
  name: string;
448
+ type?: string;
449
+ subscriptionName?: string;
450
+ savings?: SavingsPotential;
451
+ currency?: string;
452
+ currencySymbol?: string;
453
+ relationship?: ResourceRelationship;
454
+ associations?: RecommendationResourceAssociation[];
89
455
  }
456
+ export type ResourceRelationship = {
457
+ role?: 'primary' | 'related';
458
+ type?: string;
459
+ allocationId?: string;
460
+ metadata?: Record<string, string>;
461
+ };
90
462
  export interface ReliabilityRecommendation extends Recommendation {
91
463
  referenceID: string;
92
464
  resourceType: string;
@@ -94,7 +466,6 @@ export interface ReliabilityRecommendation extends Recommendation {
94
466
  service: string;
95
467
  }
96
468
  export interface CustomAzureRecommendation extends Recommendation {
97
- subcategory: string;
98
469
  service: string;
99
470
  source: string;
100
471
  fileName: string;
@@ -104,6 +475,7 @@ export interface RecommendationCollection {
104
475
  results: ResourceId[];
105
476
  }
106
477
  export interface AzureRecommendationLite {
478
+ /** e.g. Cost, Performance, Reliability, Security, Compliance, OperationalExcellence, Operational Excellence, HighAvailability */
107
479
  category: string;
108
480
  total: number;
109
481
  high: number;
@@ -111,13 +483,18 @@ export interface AzureRecommendationLite {
111
483
  low: number;
112
484
  }
113
485
  export interface RecommendationStats {
486
+ /** total number of recommendations in the subscription */
114
487
  total: number;
488
+ /** total number of high recommendations in the subscription */
115
489
  high: number;
490
+ /** total number of medium recommendations in the subscription */
116
491
  medium: number;
492
+ /** total number of low recommendations in the subscription */
117
493
  low: number;
118
494
  }
495
+ /** Recommendation with state information, name "ExtendedRecommendation" in the portal at the moment */
119
496
  export interface RecommendationWithState extends Recommendation {
120
- status?: 'Active' | 'Prioritized' | 'Postponed' | 'Dismissed' | 'Completed' | 'Archived';
497
+ status?: 'Active' | 'Prioritized' | 'Postponed' | 'Dismissed' | 'Completed' | 'Archived' | 'Implementing' | 'Implemented' | 'Failed';
121
498
  read?: boolean;
122
499
  scheduledAt?: Date;
123
500
  createdAt?: Date;
@@ -126,4 +503,202 @@ export interface RecommendationWithState extends Recommendation {
126
503
  comments?: Comment[];
127
504
  history?: RecommendationHistory[];
128
505
  }
506
+ export interface DismissRecommendationRequest extends RecommendationActionRequest {
507
+ dismissReason: string;
508
+ }
509
+ export interface ShareRecommendationRequest extends RecommendationActionRequest {
510
+ shareType: 'email' | 'slack' | 'teams' | 'jira' | 'halo' | 'connectwise' | 'autotask' | 'azuredevops' | 'github';
511
+ email?: string;
512
+ halo?: HaloRoutingOverrides;
513
+ connectwise?: ConnectWiseRoutingFields;
514
+ autotask?: AutotaskShareOverrides;
515
+ azuredevops?: AzureDevOpsShareOverrides;
516
+ github?: GitHubShareOverrides;
517
+ }
518
+ export type RecommendationActionTargetSelection = 'selectedResources' | 'allAffectedResources';
519
+ export interface RecommendationActionRequest extends ProviderScope {
520
+ /** `providerScope` maps to subscription identity for Azure providers. */
521
+ scope?: CommentScope;
522
+ /** Optional cloud-account identity enriched by trusted server-side callers before queue publish. */
523
+ cloudAccountId?: string;
524
+ /** Optional user-provided reason for queue-backed actions such as implement. */
525
+ reason?: string;
526
+ /** Optional action permission metadata passed into API preflight before queue publish. */
527
+ requiredPermissions?: RecommendationActionRequiredPermissions;
528
+ recommendationId: string;
529
+ recommendationTitle?: string;
530
+ resourceIds: string[];
531
+ /** Whether resourceIds are the exact selected targets or a sampled display subset for an all-affected action. */
532
+ targetSelection?: RecommendationActionTargetSelection;
533
+ resourceGroupName?: string;
534
+ companyId: string;
535
+ byUserId?: string;
536
+ byUserDisplayName?: string;
537
+ }
538
+ export interface RecommendationActionResponse {
539
+ success: boolean;
540
+ message?: string;
541
+ affectedResources?: string[];
542
+ eventId?: string;
543
+ }
544
+ export type RecommendationActionPermissionFailureStatus = 'missing' | 'unknown' | 'unsupported';
545
+ export interface RecommendationActionPermissionFailure {
546
+ resourceId: string;
547
+ azureScope: string;
548
+ status: RecommendationActionPermissionFailureStatus;
549
+ message: string;
550
+ missingActions: string[];
551
+ missingDataActions: string[];
552
+ }
553
+ export interface RecommendationActionPermissionErrorResponse {
554
+ error: 'AzurePermissionMissing';
555
+ message: string;
556
+ action: 'implement';
557
+ providerName: string;
558
+ providerScopeId: string;
559
+ failures: RecommendationActionPermissionFailure[];
560
+ }
561
+ export interface ServiceRetirementRecommendation {
562
+ Id: string;
563
+ ServiceName: string;
564
+ RetiringFeature: string;
565
+ RetirementDate: string;
566
+ Link: string;
567
+ effort: string;
568
+ effortHours: number;
569
+ effortReason: string;
570
+ risk: string;
571
+ riskReason: string;
572
+ considerations: string;
573
+ confidencePercentage: number;
574
+ confidenceReason: string;
575
+ lastProcessedAt: string;
576
+ /** Related recommendation IDs for cross-navigation from retirement tracker. */
577
+ linkedRecommendationIds?: string[];
578
+ }
579
+ export interface JiraShareDetails {
580
+ projectKey?: string;
581
+ epicKey?: string;
582
+ label?: string;
583
+ }
584
+ export interface JiraIntegrationRequestBase {
585
+ siteUrl: string;
586
+ email: string;
587
+ secret?: string;
588
+ useStoredSecret?: boolean;
589
+ }
590
+ export interface JiraIntegrationTestPayload extends JiraIntegrationRequestBase {
591
+ projectKey?: string;
592
+ }
593
+ export interface JiraIntegrationEpicsPayload extends JiraIntegrationRequestBase {
594
+ projectKey: string;
595
+ maxResults?: number;
596
+ }
597
+ export interface JiraIntegrationProjectsPayload extends JiraIntegrationRequestBase {
598
+ maxResults?: number;
599
+ }
600
+ export interface JiraIntegrationLabelsPayload extends JiraIntegrationRequestBase {
601
+ projectKey: string;
602
+ maxResults?: number;
603
+ searchQuery?: string;
604
+ }
605
+ export interface JiraEntity {
606
+ id: string;
607
+ key: string;
608
+ name: string;
609
+ }
610
+ export interface JiraLabel {
611
+ name: string;
612
+ }
613
+ export interface ConnectWiseIntegrationRequestBase {
614
+ siteUrl: string;
615
+ companyId: string;
616
+ publicKey: string;
617
+ secret?: string;
618
+ useStoredSecret?: boolean;
619
+ credentialOwnerCompanyId?: string;
620
+ }
621
+ export type ConnectWiseId = string | number;
622
+ export interface ConnectWiseRoutingFields {
623
+ boardId?: ConnectWiseId;
624
+ boardName?: string;
625
+ statusId?: ConnectWiseId;
626
+ statusName?: string;
627
+ customerId?: ConnectWiseId;
628
+ customerName?: string;
629
+ projectId?: ConnectWiseId;
630
+ projectName?: string;
631
+ typeId?: ConnectWiseId;
632
+ typeName?: string;
633
+ subTypeId?: ConnectWiseId;
634
+ subTypeName?: string;
635
+ itemId?: ConnectWiseId;
636
+ itemName?: string;
637
+ priorityId?: ConnectWiseId;
638
+ priorityName?: string;
639
+ contactId?: ConnectWiseId;
640
+ contactName?: string;
641
+ agreementId?: ConnectWiseId;
642
+ agreementName?: string;
643
+ slaId?: ConnectWiseId;
644
+ slaName?: string;
645
+ source?: string;
646
+ }
647
+ export interface ConnectWiseIntegrationTestPayload extends ConnectWiseIntegrationRequestBase, ConnectWiseRoutingFields {
648
+ }
649
+ export type ConnectWiseBoardsPayload = ConnectWiseIntegrationRequestBase;
650
+ export type ConnectWiseCompaniesPayload = ConnectWiseIntegrationRequestBase;
651
+ export type ConnectWiseProjectsPayload = ConnectWiseIntegrationRequestBase;
652
+ export interface ConnectWiseStatusesPayload extends ConnectWiseIntegrationRequestBase {
653
+ boardId?: string;
654
+ boardName?: string;
655
+ }
656
+ export interface ConnectWiseTypesPayload extends ConnectWiseIntegrationRequestBase {
657
+ boardId?: string;
658
+ boardName?: string;
659
+ }
660
+ export interface ConnectWiseSubTypesPayload extends ConnectWiseIntegrationRequestBase {
661
+ boardId?: string;
662
+ boardName?: string;
663
+ typeId?: string;
664
+ typeName?: string;
665
+ }
666
+ export interface ConnectWiseItemsPayload extends ConnectWiseIntegrationRequestBase {
667
+ boardId?: string;
668
+ boardName?: string;
669
+ typeId?: string;
670
+ typeName?: string;
671
+ subTypeId?: string;
672
+ subTypeName?: string;
673
+ }
674
+ export interface ConnectWiseTypeSubTypeItemAssociationsPayload extends ConnectWiseIntegrationRequestBase {
675
+ boardId?: string;
676
+ boardName?: string;
677
+ }
678
+ export interface ConnectWisePrioritiesPayload extends ConnectWiseIntegrationRequestBase {
679
+ boardId?: string;
680
+ boardName?: string;
681
+ }
682
+ export interface ConnectWiseContactsPayload extends ConnectWiseIntegrationRequestBase {
683
+ searchQuery?: string;
684
+ }
685
+ export type ConnectWiseSourcesPayload = ConnectWiseIntegrationRequestBase;
686
+ export type ConnectWiseAgreementsPayload = ConnectWiseIntegrationRequestBase;
687
+ export type ConnectWiseSlasPayload = ConnectWiseIntegrationRequestBase;
688
+ export interface ConnectWiseEntity {
689
+ id: string | number;
690
+ name: string;
691
+ }
692
+ export interface ConnectWiseTypeSubTypeItemAssociation {
693
+ type?: ConnectWiseEntity;
694
+ subType?: ConnectWiseEntity;
695
+ item?: ConnectWiseEntity;
696
+ }
697
+ export interface ConnectWiseContact extends ConnectWiseEntity {
698
+ email?: string;
699
+ }
700
+ export interface ConnectWiseTicketMetadata extends ConnectWiseRoutingFields {
701
+ ticketId: ConnectWiseId;
702
+ ticketUrl?: string;
703
+ }
129
704
  //# sourceMappingURL=recommendations.d.ts.map