@spottoai/types-package 1.0.2-beta.99 → 1.0.2-dev1138.2

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 (867) hide show
  1. package/README.md +139 -7
  2. package/dist/accounts/accounts.d.ts +532 -3
  3. package/dist/accounts/accounts.d.ts.map +1 -1
  4. package/dist/accounts/accounts.js +122 -0
  5. package/dist/accounts/accounts.js.map +1 -1
  6. package/dist/accounts/azureSpSetup.d.ts +401 -0
  7. package/dist/accounts/azureSpSetup.d.ts.map +1 -0
  8. package/dist/{azure/costEstimation.js → accounts/azureSpSetup.js} +1 -1
  9. package/dist/accounts/azureSpSetup.js.map +1 -0
  10. package/dist/accounts/azureSpSetupDurable.d.ts +118 -0
  11. package/dist/accounts/azureSpSetupDurable.d.ts.map +1 -0
  12. package/dist/accounts/azureSpSetupDurable.js +3 -0
  13. package/dist/accounts/azureSpSetupDurable.js.map +1 -0
  14. package/dist/accounts/index.d.ts +4 -0
  15. package/dist/accounts/index.d.ts.map +1 -1
  16. package/dist/accounts/index.js +4 -0
  17. package/dist/accounts/index.js.map +1 -1
  18. package/dist/accounts/readPermissions.d.ts +76 -0
  19. package/dist/accounts/readPermissions.d.ts.map +1 -0
  20. package/dist/accounts/readPermissions.js +202 -0
  21. package/dist/accounts/readPermissions.js.map +1 -0
  22. package/dist/accounts/validation.d.ts +91 -0
  23. package/dist/accounts/validation.d.ts.map +1 -0
  24. package/dist/accounts/validation.js +3 -0
  25. package/dist/accounts/validation.js.map +1 -0
  26. package/dist/accounts/writePermissions.d.ts +36 -0
  27. package/dist/accounts/writePermissions.d.ts.map +1 -0
  28. package/dist/accounts/writePermissions.js +47 -0
  29. package/dist/accounts/writePermissions.js.map +1 -0
  30. package/dist/ai/index.d.ts +1018 -13
  31. package/dist/ai/index.d.ts.map +1 -1
  32. package/dist/ai/index.js +1 -0
  33. package/dist/ai/index.js.map +1 -1
  34. package/dist/assessments/artifact.d.ts +84 -0
  35. package/dist/assessments/artifact.d.ts.map +1 -0
  36. package/dist/assessments/artifact.js +3 -0
  37. package/dist/assessments/artifact.js.map +1 -0
  38. package/dist/assessments/catalogue.d.ts +53 -0
  39. package/dist/assessments/catalogue.d.ts.map +1 -0
  40. package/dist/assessments/catalogue.js +16 -0
  41. package/dist/assessments/catalogue.js.map +1 -0
  42. package/dist/assessments/common.d.ts +27 -0
  43. package/dist/assessments/common.d.ts.map +1 -0
  44. package/dist/assessments/common.js +3 -0
  45. package/dist/assessments/common.js.map +1 -0
  46. package/dist/assessments/evidence.d.ts +78 -0
  47. package/dist/assessments/evidence.d.ts.map +1 -0
  48. package/dist/assessments/evidence.js +3 -0
  49. package/dist/assessments/evidence.js.map +1 -0
  50. package/dist/assessments/export.d.ts +27 -0
  51. package/dist/assessments/export.d.ts.map +1 -0
  52. package/dist/assessments/export.js +3 -0
  53. package/dist/assessments/export.js.map +1 -0
  54. package/dist/assessments/index.d.ts +11 -0
  55. package/dist/assessments/index.d.ts.map +1 -0
  56. package/dist/assessments/index.js +27 -0
  57. package/dist/assessments/index.js.map +1 -0
  58. package/dist/assessments/queue.d.ts +20 -0
  59. package/dist/assessments/queue.d.ts.map +1 -0
  60. package/dist/assessments/queue.js +6 -0
  61. package/dist/assessments/queue.js.map +1 -0
  62. package/dist/assessments/review.d.ts +36 -0
  63. package/dist/assessments/review.d.ts.map +1 -0
  64. package/dist/assessments/review.js +3 -0
  65. package/dist/assessments/review.js.map +1 -0
  66. package/dist/assessments/run.d.ts +62 -0
  67. package/dist/assessments/run.d.ts.map +1 -0
  68. package/dist/assessments/run.js +3 -0
  69. package/dist/assessments/run.js.map +1 -0
  70. package/dist/assessments/sow.d.ts +30 -0
  71. package/dist/assessments/sow.d.ts.map +1 -0
  72. package/dist/assessments/sow.js +3 -0
  73. package/dist/assessments/sow.js.map +1 -0
  74. package/dist/assessments/status.d.ts +27 -0
  75. package/dist/assessments/status.d.ts.map +1 -0
  76. package/dist/assessments/status.js +27 -0
  77. package/dist/assessments/status.js.map +1 -0
  78. package/dist/aws/commitments-planning.d.ts +3 -0
  79. package/dist/aws/commitments-planning.d.ts.map +1 -0
  80. package/dist/aws/commitments-planning.js +6 -0
  81. package/dist/aws/commitments-planning.js.map +1 -0
  82. package/dist/aws/commitmentsPlanningValidation.d.ts +7 -0
  83. package/dist/aws/commitmentsPlanningValidation.d.ts.map +1 -0
  84. package/dist/aws/commitmentsPlanningValidation.js +125 -0
  85. package/dist/aws/commitmentsPlanningValidation.js.map +1 -0
  86. package/dist/aws/estates.d.ts +153 -0
  87. package/dist/aws/estates.d.ts.map +1 -0
  88. package/dist/aws/estates.js +25 -0
  89. package/dist/aws/estates.js.map +1 -0
  90. package/dist/aws/index.d.ts +20 -0
  91. package/dist/aws/index.d.ts.map +1 -0
  92. package/dist/aws/index.js +35 -0
  93. package/dist/aws/index.js.map +1 -0
  94. package/dist/aws/onboarding.d.ts +54 -0
  95. package/dist/aws/onboarding.d.ts.map +1 -0
  96. package/dist/aws/onboarding.js +3 -0
  97. package/dist/aws/onboarding.js.map +1 -0
  98. package/dist/aws/pluginPublicArtifactBodyValidation.d.ts +10 -0
  99. package/dist/aws/pluginPublicArtifactBodyValidation.d.ts.map +1 -0
  100. package/dist/aws/pluginPublicArtifactBodyValidation.js +225 -0
  101. package/dist/aws/pluginPublicArtifactBodyValidation.js.map +1 -0
  102. package/dist/aws/pluginPublicArtifactEvidence.d.ts +161 -0
  103. package/dist/aws/pluginPublicArtifactEvidence.d.ts.map +1 -0
  104. package/dist/aws/pluginPublicArtifactEvidence.js +3 -0
  105. package/dist/aws/pluginPublicArtifactEvidence.js.map +1 -0
  106. package/dist/aws/pluginPublicArtifactManifestValidation.d.ts +4 -0
  107. package/dist/aws/pluginPublicArtifactManifestValidation.d.ts.map +1 -0
  108. package/dist/aws/pluginPublicArtifactManifestValidation.js +259 -0
  109. package/dist/aws/pluginPublicArtifactManifestValidation.js.map +1 -0
  110. package/dist/aws/pluginPublicArtifactSectionValidation.d.ts +6 -0
  111. package/dist/aws/pluginPublicArtifactSectionValidation.d.ts.map +1 -0
  112. package/dist/aws/pluginPublicArtifactSectionValidation.js +471 -0
  113. package/dist/aws/pluginPublicArtifactSectionValidation.js.map +1 -0
  114. package/dist/aws/pluginPublicArtifactValidation.d.ts +3 -0
  115. package/dist/aws/pluginPublicArtifactValidation.d.ts.map +1 -0
  116. package/dist/aws/pluginPublicArtifactValidation.js +9 -0
  117. package/dist/aws/pluginPublicArtifactValidation.js.map +1 -0
  118. package/dist/aws/pluginPublicArtifactValidationHelpers.d.ts +23 -0
  119. package/dist/aws/pluginPublicArtifactValidationHelpers.d.ts.map +1 -0
  120. package/dist/aws/pluginPublicArtifactValidationHelpers.js +240 -0
  121. package/dist/aws/pluginPublicArtifactValidationHelpers.js.map +1 -0
  122. package/dist/aws/pluginPublicArtifacts.d.ts +253 -0
  123. package/dist/aws/pluginPublicArtifacts.d.ts.map +1 -0
  124. package/dist/aws/pluginPublicArtifacts.js +51 -0
  125. package/dist/aws/pluginPublicArtifacts.js.map +1 -0
  126. package/dist/aws/portalCommitmentsPlanningPublicArtifactValidation.d.ts +4 -0
  127. package/dist/aws/portalCommitmentsPlanningPublicArtifactValidation.d.ts.map +1 -0
  128. package/dist/aws/portalCommitmentsPlanningPublicArtifactValidation.js +513 -0
  129. package/dist/aws/portalCommitmentsPlanningPublicArtifactValidation.js.map +1 -0
  130. package/dist/aws/portalCommitmentsPlanningPublicArtifacts.d.ts +13 -0
  131. package/dist/aws/portalCommitmentsPlanningPublicArtifacts.d.ts.map +1 -0
  132. package/dist/aws/portalCommitmentsPlanningPublicArtifacts.js +5 -0
  133. package/dist/aws/portalCommitmentsPlanningPublicArtifacts.js.map +1 -0
  134. package/dist/aws/portalPublicArtifactCurrentValidation.d.ts +4 -0
  135. package/dist/aws/portalPublicArtifactCurrentValidation.d.ts.map +1 -0
  136. package/dist/aws/portalPublicArtifactCurrentValidation.js +333 -0
  137. package/dist/aws/portalPublicArtifactCurrentValidation.js.map +1 -0
  138. package/dist/aws/portalPublicArtifactEvidenceValidation.d.ts +6 -0
  139. package/dist/aws/portalPublicArtifactEvidenceValidation.d.ts.map +1 -0
  140. package/dist/aws/portalPublicArtifactEvidenceValidation.js +301 -0
  141. package/dist/aws/portalPublicArtifactEvidenceValidation.js.map +1 -0
  142. package/dist/aws/portalPublicArtifactHistoryAiValidation.d.ts +8 -0
  143. package/dist/aws/portalPublicArtifactHistoryAiValidation.d.ts.map +1 -0
  144. package/dist/aws/portalPublicArtifactHistoryAiValidation.js +377 -0
  145. package/dist/aws/portalPublicArtifactHistoryAiValidation.js.map +1 -0
  146. package/dist/aws/portalPublicArtifactHistoryTypes.d.ts +178 -0
  147. package/dist/aws/portalPublicArtifactHistoryTypes.d.ts.map +1 -0
  148. package/dist/aws/portalPublicArtifactHistoryTypes.js +44 -0
  149. package/dist/aws/portalPublicArtifactHistoryTypes.js.map +1 -0
  150. package/dist/aws/portalPublicArtifactNestedEvidence.d.ts +127 -0
  151. package/dist/aws/portalPublicArtifactNestedEvidence.d.ts.map +1 -0
  152. package/dist/aws/portalPublicArtifactNestedEvidence.js +3 -0
  153. package/dist/aws/portalPublicArtifactNestedEvidence.js.map +1 -0
  154. package/dist/aws/portalPublicArtifactNestedEvidenceValidation.d.ts +6 -0
  155. package/dist/aws/portalPublicArtifactNestedEvidenceValidation.d.ts.map +1 -0
  156. package/dist/aws/portalPublicArtifactNestedEvidenceValidation.js +405 -0
  157. package/dist/aws/portalPublicArtifactNestedEvidenceValidation.js.map +1 -0
  158. package/dist/aws/portalPublicArtifactValidation.d.ts +3 -0
  159. package/dist/aws/portalPublicArtifactValidation.d.ts.map +1 -0
  160. package/dist/aws/portalPublicArtifactValidation.js +14 -0
  161. package/dist/aws/portalPublicArtifactValidation.js.map +1 -0
  162. package/dist/aws/portalPublicArtifactValidationCommon.d.ts +30 -0
  163. package/dist/aws/portalPublicArtifactValidationCommon.d.ts.map +1 -0
  164. package/dist/aws/portalPublicArtifactValidationCommon.js +167 -0
  165. package/dist/aws/portalPublicArtifactValidationCommon.js.map +1 -0
  166. package/dist/aws/portalPublicArtifacts.d.ts +400 -0
  167. package/dist/aws/portalPublicArtifacts.d.ts.map +1 -0
  168. package/dist/aws/portalPublicArtifacts.js +85 -0
  169. package/dist/aws/portalPublicArtifacts.js.map +1 -0
  170. package/dist/aws/portalRelationshipPublicArtifactValidation.d.ts +4 -0
  171. package/dist/aws/portalRelationshipPublicArtifactValidation.d.ts.map +1 -0
  172. package/dist/aws/portalRelationshipPublicArtifactValidation.js +338 -0
  173. package/dist/aws/portalRelationshipPublicArtifactValidation.js.map +1 -0
  174. package/dist/aws/portalRelationshipPublicArtifacts.d.ts +196 -0
  175. package/dist/aws/portalRelationshipPublicArtifacts.d.ts.map +1 -0
  176. package/dist/aws/portalRelationshipPublicArtifacts.js +63 -0
  177. package/dist/aws/portalRelationshipPublicArtifacts.js.map +1 -0
  178. package/dist/aws/portalRelationshipResourceNodeTypes.d.ts +269 -0
  179. package/dist/aws/portalRelationshipResourceNodeTypes.d.ts.map +1 -0
  180. package/dist/aws/portalRelationshipResourceNodeTypes.js +3 -0
  181. package/dist/aws/portalRelationshipResourceNodeTypes.js.map +1 -0
  182. package/dist/aws/portalRelationshipResourceNodeValidation.d.ts +2 -0
  183. package/dist/aws/portalRelationshipResourceNodeValidation.d.ts.map +1 -0
  184. package/dist/aws/portalRelationshipResourceNodeValidation.js +372 -0
  185. package/dist/aws/portalRelationshipResourceNodeValidation.js.map +1 -0
  186. package/dist/aws/publicArtifacts.d.ts +76 -0
  187. package/dist/aws/publicArtifacts.d.ts.map +1 -0
  188. package/dist/aws/publicArtifacts.js +17 -0
  189. package/dist/aws/publicArtifacts.js.map +1 -0
  190. package/dist/aws/relationships.d.ts +4 -0
  191. package/dist/aws/relationships.d.ts.map +1 -0
  192. package/dist/aws/relationships.js +6 -0
  193. package/dist/aws/relationships.js.map +1 -0
  194. package/dist/aws/requests.d.ts +84 -0
  195. package/dist/aws/requests.d.ts.map +1 -0
  196. package/dist/aws/requests.js +23 -0
  197. package/dist/aws/requests.js.map +1 -0
  198. package/dist/azure/activityLogs.d.ts +71 -0
  199. package/dist/azure/activityLogs.d.ts.map +1 -0
  200. package/dist/azure/activityLogs.js +6 -0
  201. package/dist/azure/activityLogs.js.map +1 -0
  202. package/dist/azure/advisorScore.d.ts +39 -0
  203. package/dist/azure/advisorScore.d.ts.map +1 -0
  204. package/dist/azure/advisorScore.js +3 -0
  205. package/dist/azure/advisorScore.js.map +1 -0
  206. package/dist/azure/artifactRunReference.d.ts +11 -0
  207. package/dist/azure/artifactRunReference.d.ts.map +1 -0
  208. package/dist/azure/artifactRunReference.js +90 -0
  209. package/dist/azure/artifactRunReference.js.map +1 -0
  210. package/dist/azure/benefits.d.ts +163 -0
  211. package/dist/azure/benefits.d.ts.map +1 -0
  212. package/dist/azure/benefits.js +3 -0
  213. package/dist/azure/benefits.js.map +1 -0
  214. package/dist/azure/billingArtifactCanonicalization.d.ts +30 -0
  215. package/dist/azure/billingArtifactCanonicalization.d.ts.map +1 -0
  216. package/dist/azure/billingArtifactCanonicalization.js +371 -0
  217. package/dist/azure/billingArtifactCanonicalization.js.map +1 -0
  218. package/dist/azure/billingArtifactEvidence.d.ts +39 -0
  219. package/dist/azure/billingArtifactEvidence.d.ts.map +1 -0
  220. package/dist/azure/billingArtifactEvidence.js +29 -0
  221. package/dist/azure/billingArtifactEvidence.js.map +1 -0
  222. package/dist/azure/billingArtifactGeneration.d.ts +221 -0
  223. package/dist/azure/billingArtifactGeneration.d.ts.map +1 -0
  224. package/dist/azure/billingArtifactGeneration.js +477 -0
  225. package/dist/azure/billingArtifactGeneration.js.map +1 -0
  226. package/dist/azure/billingArtifactLimits.d.ts +19 -0
  227. package/dist/azure/billingArtifactLimits.d.ts.map +1 -0
  228. package/dist/azure/billingArtifactLimits.js +22 -0
  229. package/dist/azure/billingArtifactLimits.js.map +1 -0
  230. package/dist/azure/billingGeneration.d.ts +50 -0
  231. package/dist/azure/billingGeneration.d.ts.map +1 -0
  232. package/dist/azure/billingGeneration.js +3 -0
  233. package/dist/azure/billingGeneration.js.map +1 -0
  234. package/dist/azure/billingPlots.d.ts +220 -13
  235. package/dist/azure/billingPlots.d.ts.map +1 -1
  236. package/dist/azure/billingPlots.js +475 -1
  237. package/dist/azure/billingPlots.js.map +1 -1
  238. package/dist/azure/budgets.d.ts +4 -0
  239. package/dist/azure/budgets.d.ts.map +1 -1
  240. package/dist/azure/commitmentsPlanning.d.ts +731 -0
  241. package/dist/azure/commitmentsPlanning.d.ts.map +1 -0
  242. package/dist/azure/commitmentsPlanning.js +3 -0
  243. package/dist/azure/commitmentsPlanning.js.map +1 -0
  244. package/dist/azure/common.d.ts +16 -3
  245. package/dist/azure/common.d.ts.map +1 -1
  246. package/dist/azure/configs.d.ts +66 -2
  247. package/dist/azure/configs.d.ts.map +1 -1
  248. package/dist/azure/costComposition.d.ts +124 -0
  249. package/dist/azure/costComposition.d.ts.map +1 -0
  250. package/dist/azure/costComposition.js +66 -0
  251. package/dist/azure/costComposition.js.map +1 -0
  252. package/dist/azure/dataProtection.d.ts +229 -0
  253. package/dist/azure/dataProtection.d.ts.map +1 -0
  254. package/dist/azure/dataProtection.js +9 -0
  255. package/dist/azure/dataProtection.js.map +1 -0
  256. package/dist/azure/financialAnalytics.d.ts +123 -0
  257. package/dist/azure/financialAnalytics.d.ts.map +1 -0
  258. package/dist/azure/financialAnalytics.js +6 -0
  259. package/dist/azure/financialAnalytics.js.map +1 -0
  260. package/dist/azure/financialAnalyticsDelivery.d.ts +101 -0
  261. package/dist/azure/financialAnalyticsDelivery.d.ts.map +1 -0
  262. package/dist/azure/financialAnalyticsDelivery.js +11 -0
  263. package/dist/azure/financialAnalyticsDelivery.js.map +1 -0
  264. package/dist/azure/financialAnalyticsDeliveryValidation.d.ts +20 -0
  265. package/dist/azure/financialAnalyticsDeliveryValidation.d.ts.map +1 -0
  266. package/dist/azure/financialAnalyticsDeliveryValidation.js +296 -0
  267. package/dist/azure/financialAnalyticsDeliveryValidation.js.map +1 -0
  268. package/dist/azure/financialAnalyticsValidation.d.ts +12 -0
  269. package/dist/azure/financialAnalyticsValidation.d.ts.map +1 -0
  270. package/dist/azure/financialAnalyticsValidation.js +448 -0
  271. package/dist/azure/financialAnalyticsValidation.js.map +1 -0
  272. package/dist/azure/financialAuthorityView.d.ts +88 -0
  273. package/dist/azure/financialAuthorityView.d.ts.map +1 -0
  274. package/dist/azure/financialAuthorityView.js +7 -0
  275. package/dist/azure/financialAuthorityView.js.map +1 -0
  276. package/dist/azure/financialAuthorityViewValidation.d.ts +9 -0
  277. package/dist/azure/financialAuthorityViewValidation.d.ts.map +1 -0
  278. package/dist/azure/financialAuthorityViewValidation.js +507 -0
  279. package/dist/azure/financialAuthorityViewValidation.js.map +1 -0
  280. package/dist/azure/financialDataflow.d.ts +123 -0
  281. package/dist/azure/financialDataflow.d.ts.map +1 -0
  282. package/dist/azure/financialDataflow.js +6 -0
  283. package/dist/azure/financialDataflow.js.map +1 -0
  284. package/dist/azure/financialDataflowKernel.d.ts +29 -0
  285. package/dist/azure/financialDataflowKernel.d.ts.map +1 -0
  286. package/dist/azure/financialDataflowKernel.js +117 -0
  287. package/dist/azure/financialDataflowKernel.js.map +1 -0
  288. package/dist/azure/financialDataflowValidation.d.ts +39 -0
  289. package/dist/azure/financialDataflowValidation.d.ts.map +1 -0
  290. package/dist/azure/financialDataflowValidation.js +603 -0
  291. package/dist/azure/financialDataflowValidation.js.map +1 -0
  292. package/dist/azure/financialDisplayRollup.d.ts +35 -0
  293. package/dist/azure/financialDisplayRollup.d.ts.map +1 -0
  294. package/dist/azure/financialDisplayRollup.js +3 -0
  295. package/dist/azure/financialDisplayRollup.js.map +1 -0
  296. package/dist/azure/financialDisplayRollupValidation.d.ts +5 -0
  297. package/dist/azure/financialDisplayRollupValidation.d.ts.map +1 -0
  298. package/dist/azure/financialDisplayRollupValidation.js +82 -0
  299. package/dist/azure/financialDisplayRollupValidation.js.map +1 -0
  300. package/dist/azure/financialEligibilityAssessmentValidation.d.ts +15 -0
  301. package/dist/azure/financialEligibilityAssessmentValidation.d.ts.map +1 -0
  302. package/dist/azure/financialEligibilityAssessmentValidation.js +184 -0
  303. package/dist/azure/financialEligibilityAssessmentValidation.js.map +1 -0
  304. package/dist/azure/financialEvidenceAssessmentValidation.d.ts +4 -0
  305. package/dist/azure/financialEvidenceAssessmentValidation.d.ts.map +1 -0
  306. package/dist/azure/financialEvidenceAssessmentValidation.js +166 -0
  307. package/dist/azure/financialEvidenceAssessmentValidation.js.map +1 -0
  308. package/dist/azure/financialPolicy.d.ts +104 -0
  309. package/dist/azure/financialPolicy.d.ts.map +1 -0
  310. package/dist/azure/financialPolicy.js +6 -0
  311. package/dist/azure/financialPolicy.js.map +1 -0
  312. package/dist/azure/financialPolicyDelivery.d.ts +112 -0
  313. package/dist/azure/financialPolicyDelivery.d.ts.map +1 -0
  314. package/dist/azure/financialPolicyDelivery.js +10 -0
  315. package/dist/azure/financialPolicyDelivery.js.map +1 -0
  316. package/dist/azure/financialPolicyDeliveryValidation.d.ts +22 -0
  317. package/dist/azure/financialPolicyDeliveryValidation.d.ts.map +1 -0
  318. package/dist/azure/financialPolicyDeliveryValidation.js +380 -0
  319. package/dist/azure/financialPolicyDeliveryValidation.js.map +1 -0
  320. package/dist/azure/financialPolicyKernel.d.ts +38 -0
  321. package/dist/azure/financialPolicyKernel.d.ts.map +1 -0
  322. package/dist/azure/financialPolicyKernel.js +232 -0
  323. package/dist/azure/financialPolicyKernel.js.map +1 -0
  324. package/dist/azure/financialPolicyValidation.d.ts +13 -0
  325. package/dist/azure/financialPolicyValidation.d.ts.map +1 -0
  326. package/dist/azure/financialPolicyValidation.js +562 -0
  327. package/dist/azure/financialPolicyValidation.js.map +1 -0
  328. package/dist/azure/financialProjection.d.ts +171 -0
  329. package/dist/azure/financialProjection.d.ts.map +1 -0
  330. package/dist/azure/financialProjection.js +18 -0
  331. package/dist/azure/financialProjection.js.map +1 -0
  332. package/dist/azure/financialProjectionValidation.d.ts +4 -0
  333. package/dist/azure/financialProjectionValidation.d.ts.map +1 -0
  334. package/dist/azure/financialProjectionValidation.js +452 -0
  335. package/dist/azure/financialProjectionValidation.js.map +1 -0
  336. package/dist/azure/financialSavingsAuthority.d.ts +181 -0
  337. package/dist/azure/financialSavingsAuthority.d.ts.map +1 -0
  338. package/dist/azure/financialSavingsAuthority.js +9 -0
  339. package/dist/azure/financialSavingsAuthority.js.map +1 -0
  340. package/dist/azure/financialSavingsAuthorityValidation.d.ts +8 -0
  341. package/dist/azure/financialSavingsAuthorityValidation.d.ts.map +1 -0
  342. package/dist/azure/financialSavingsAuthorityValidation.js +132 -0
  343. package/dist/azure/financialSavingsAuthorityValidation.js.map +1 -0
  344. package/dist/azure/financialSavingsAuthorityValidationPrimitives.d.ts +11 -0
  345. package/dist/azure/financialSavingsAuthorityValidationPrimitives.d.ts.map +1 -0
  346. package/dist/azure/financialSavingsAuthorityValidationPrimitives.js +44 -0
  347. package/dist/azure/financialSavingsAuthorityValidationPrimitives.js.map +1 -0
  348. package/dist/azure/financialSavingsCoordinateValidation.d.ts +11 -0
  349. package/dist/azure/financialSavingsCoordinateValidation.d.ts.map +1 -0
  350. package/dist/azure/financialSavingsCoordinateValidation.js +376 -0
  351. package/dist/azure/financialSavingsCoordinateValidation.js.map +1 -0
  352. package/dist/azure/financialSavingsSurfaceProjection.d.ts +67 -0
  353. package/dist/azure/financialSavingsSurfaceProjection.d.ts.map +1 -0
  354. package/dist/azure/financialSavingsSurfaceProjection.js +6 -0
  355. package/dist/azure/financialSavingsSurfaceProjection.js.map +1 -0
  356. package/dist/azure/financialSavingsSurfaceProjectionValidation.d.ts +5 -0
  357. package/dist/azure/financialSavingsSurfaceProjectionValidation.d.ts.map +1 -0
  358. package/dist/azure/financialSavingsSurfaceProjectionValidation.js +178 -0
  359. package/dist/azure/financialSavingsSurfaceProjectionValidation.js.map +1 -0
  360. package/dist/azure/financialScope.d.ts +28 -0
  361. package/dist/azure/financialScope.d.ts.map +1 -0
  362. package/dist/azure/financialScope.js +44 -0
  363. package/dist/azure/financialScope.js.map +1 -0
  364. package/dist/azure/financialScopeBaseline.d.ts +153 -0
  365. package/dist/azure/financialScopeBaseline.d.ts.map +1 -0
  366. package/dist/azure/financialScopeBaseline.js +36 -0
  367. package/dist/azure/financialScopeBaseline.js.map +1 -0
  368. package/dist/azure/financialScopeBaselineIdentity.d.ts +9 -0
  369. package/dist/azure/financialScopeBaselineIdentity.d.ts.map +1 -0
  370. package/dist/azure/financialScopeBaselineIdentity.js +136 -0
  371. package/dist/azure/financialScopeBaselineIdentity.js.map +1 -0
  372. package/dist/azure/financialScopeBaselineValidation.d.ts +9 -0
  373. package/dist/azure/financialScopeBaselineValidation.d.ts.map +1 -0
  374. package/dist/azure/financialScopeBaselineValidation.js +463 -0
  375. package/dist/azure/financialScopeBaselineValidation.js.map +1 -0
  376. package/dist/azure/financialScopeEvidence.d.ts +72 -0
  377. package/dist/azure/financialScopeEvidence.d.ts.map +1 -0
  378. package/dist/azure/financialScopeEvidence.js +6 -0
  379. package/dist/azure/financialScopeEvidence.js.map +1 -0
  380. package/dist/azure/financialValidationPrimitives.d.ts +7 -0
  381. package/dist/azure/financialValidationPrimitives.d.ts.map +1 -0
  382. package/dist/azure/financialValidationPrimitives.js +20 -0
  383. package/dist/azure/financialValidationPrimitives.js.map +1 -0
  384. package/dist/azure/governance.d.ts +942 -0
  385. package/dist/azure/governance.d.ts.map +1 -0
  386. package/dist/azure/governance.js +18 -0
  387. package/dist/azure/governance.js.map +1 -0
  388. package/dist/azure/licensing.d.ts +498 -0
  389. package/dist/azure/licensing.d.ts.map +1 -0
  390. package/dist/azure/licensing.js +3 -0
  391. package/dist/azure/licensing.js.map +1 -0
  392. package/dist/azure/metrics.d.ts +73 -4
  393. package/dist/azure/metrics.d.ts.map +1 -1
  394. package/dist/azure/payloads.d.ts +368 -1
  395. package/dist/azure/payloads.d.ts.map +1 -1
  396. package/dist/azure/portalArtifacts.d.ts +14 -0
  397. package/dist/azure/portalArtifacts.d.ts.map +1 -0
  398. package/dist/azure/portalArtifacts.js +5 -0
  399. package/dist/azure/portalArtifacts.js.map +1 -0
  400. package/dist/azure/prices.d.ts +138 -0
  401. package/dist/azure/prices.d.ts.map +1 -1
  402. package/dist/azure/publicIpAddresses.d.ts +171 -0
  403. package/dist/azure/publicIpAddresses.d.ts.map +1 -0
  404. package/dist/azure/publicIpAddresses.js +6 -0
  405. package/dist/azure/publicIpAddresses.js.map +1 -0
  406. package/dist/azure/recommendationAudit.d.ts +167 -0
  407. package/dist/azure/recommendationAudit.d.ts.map +1 -0
  408. package/dist/azure/recommendationAudit.js +20 -0
  409. package/dist/azure/recommendationAudit.js.map +1 -0
  410. package/dist/azure/recommendationState.d.ts +92 -6
  411. package/dist/azure/recommendationState.d.ts.map +1 -1
  412. package/dist/azure/recommendationTracks.d.ts +214 -0
  413. package/dist/azure/recommendationTracks.d.ts.map +1 -0
  414. package/dist/azure/recommendationTracks.js +44 -0
  415. package/dist/azure/recommendationTracks.js.map +1 -0
  416. package/dist/azure/recommendationWorkflow.d.ts +304 -0
  417. package/dist/azure/recommendationWorkflow.d.ts.map +1 -0
  418. package/dist/azure/recommendationWorkflow.js +17 -0
  419. package/dist/azure/recommendationWorkflow.js.map +1 -0
  420. package/dist/azure/recommendations.d.ts +533 -12
  421. package/dist/azure/recommendations.d.ts.map +1 -1
  422. package/dist/azure/recommendations.js.map +1 -1
  423. package/dist/azure/regulatoryCompliance.d.ts +301 -0
  424. package/dist/azure/regulatoryCompliance.d.ts.map +1 -0
  425. package/dist/azure/regulatoryCompliance.js +10 -0
  426. package/dist/azure/regulatoryCompliance.js.map +1 -0
  427. package/dist/azure/relationships.d.ts +193 -0
  428. package/dist/azure/relationships.d.ts.map +1 -0
  429. package/dist/azure/relationships.js +6 -0
  430. package/dist/azure/relationships.js.map +1 -0
  431. package/dist/azure/reportingTemplates.d.ts +70 -0
  432. package/dist/azure/reportingTemplates.d.ts.map +1 -0
  433. package/dist/azure/reportingTemplates.js +5 -0
  434. package/dist/azure/reportingTemplates.js.map +1 -0
  435. package/dist/azure/reports.d.ts +193 -2
  436. package/dist/azure/reports.d.ts.map +1 -1
  437. package/dist/azure/reports.js.map +1 -1
  438. package/dist/azure/resourceHealth.d.ts +264 -0
  439. package/dist/azure/resourceHealth.d.ts.map +1 -0
  440. package/dist/azure/resourceHealth.js +16 -0
  441. package/dist/azure/resourceHealth.js.map +1 -0
  442. package/dist/azure/{costEstimation.d.ts → resourceOptimization.d.ts} +24 -23
  443. package/dist/azure/resourceOptimization.d.ts.map +1 -0
  444. package/dist/azure/resourceOptimization.js +3 -0
  445. package/dist/azure/resourceOptimization.js.map +1 -0
  446. package/dist/azure/resources.d.ts +72 -6
  447. package/dist/azure/resources.d.ts.map +1 -1
  448. package/dist/azure/reviewChecklist.d.ts +155 -0
  449. package/dist/azure/reviewChecklist.d.ts.map +1 -0
  450. package/dist/azure/reviewChecklist.js +3 -0
  451. package/dist/azure/reviewChecklist.js.map +1 -0
  452. package/dist/azure/savings.d.ts +93 -0
  453. package/dist/azure/savings.d.ts.map +1 -0
  454. package/dist/azure/savings.js +3 -0
  455. package/dist/azure/savings.js.map +1 -0
  456. package/dist/azure/secureScore.d.ts +23 -0
  457. package/dist/azure/secureScore.d.ts.map +1 -0
  458. package/dist/azure/secureScore.js +3 -0
  459. package/dist/azure/secureScore.js.map +1 -0
  460. package/dist/azure/serviceRetirement.d.ts +35 -0
  461. package/dist/azure/serviceRetirement.d.ts.map +1 -1
  462. package/dist/azure/serviceRetirementState.d.ts +22 -0
  463. package/dist/azure/serviceRetirementState.d.ts.map +1 -0
  464. package/dist/azure/serviceRetirementState.js +3 -0
  465. package/dist/azure/serviceRetirementState.js.map +1 -0
  466. package/dist/azure/serviceRetirementWorkManagement.d.ts +7 -0
  467. package/dist/azure/serviceRetirementWorkManagement.d.ts.map +1 -0
  468. package/dist/azure/serviceRetirementWorkManagement.js +3 -0
  469. package/dist/azure/serviceRetirementWorkManagement.js.map +1 -0
  470. package/dist/azure/storage-inventory.d.ts +241 -0
  471. package/dist/azure/storage-inventory.d.ts.map +1 -0
  472. package/dist/azure/storage-inventory.js +3 -0
  473. package/dist/azure/storage-inventory.js.map +1 -0
  474. package/dist/azure/subscriptions.d.ts +91 -4
  475. package/dist/azure/subscriptions.d.ts.map +1 -1
  476. package/dist/azure/views.d.ts +932 -13
  477. package/dist/azure/views.d.ts.map +1 -1
  478. package/dist/azure/views.js +511 -0
  479. package/dist/azure/views.js.map +1 -1
  480. package/dist/azure/workManagement.d.ts +154 -0
  481. package/dist/azure/workManagement.d.ts.map +1 -0
  482. package/dist/azure/workManagement.js +8 -0
  483. package/dist/azure/workManagement.js.map +1 -0
  484. package/dist/common/artifactControlData.d.ts +26 -0
  485. package/dist/common/artifactControlData.d.ts.map +1 -0
  486. package/dist/common/artifactControlData.js +208 -0
  487. package/dist/common/artifactControlData.js.map +1 -0
  488. package/dist/common/artifactEvidence.d.ts +151 -0
  489. package/dist/common/artifactEvidence.d.ts.map +1 -0
  490. package/dist/common/artifactEvidence.js +207 -0
  491. package/dist/common/artifactEvidence.js.map +1 -0
  492. package/dist/common/artifactEvidenceValidation.d.ts +16 -0
  493. package/dist/common/artifactEvidenceValidation.d.ts.map +1 -0
  494. package/dist/common/artifactEvidenceValidation.js +31 -0
  495. package/dist/common/artifactEvidenceValidation.js.map +1 -0
  496. package/dist/common/artifactGeneration.d.ts +93 -0
  497. package/dist/common/artifactGeneration.d.ts.map +1 -0
  498. package/dist/common/artifactGeneration.js +5 -0
  499. package/dist/common/artifactGeneration.js.map +1 -0
  500. package/dist/common/capabilityPassport.d.ts +114 -0
  501. package/dist/common/capabilityPassport.d.ts.map +1 -0
  502. package/dist/common/capabilityPassport.js +211 -0
  503. package/dist/common/capabilityPassport.js.map +1 -0
  504. package/dist/common/exactDecimal.d.ts +11 -0
  505. package/dist/common/exactDecimal.d.ts.map +1 -0
  506. package/dist/common/exactDecimal.js +59 -0
  507. package/dist/common/exactDecimal.js.map +1 -0
  508. package/dist/common/index.d.ts +8 -0
  509. package/dist/common/index.d.ts.map +1 -1
  510. package/dist/common/index.js +8 -0
  511. package/dist/common/index.js.map +1 -1
  512. package/dist/common/provider.d.ts +33 -0
  513. package/dist/common/provider.d.ts.map +1 -0
  514. package/dist/common/provider.js +15 -0
  515. package/dist/common/provider.js.map +1 -0
  516. package/dist/common/providerSyncProgress.d.ts +91 -0
  517. package/dist/common/providerSyncProgress.d.ts.map +1 -0
  518. package/dist/common/providerSyncProgress.js +3 -0
  519. package/dist/common/providerSyncProgress.js.map +1 -0
  520. package/dist/common/relationships.d.ts +8 -0
  521. package/dist/common/relationships.d.ts.map +1 -0
  522. package/dist/common/relationships.js +3 -0
  523. package/dist/common/relationships.js.map +1 -0
  524. package/dist/common/sha256.d.ts +3 -0
  525. package/dist/common/sha256.d.ts.map +1 -0
  526. package/dist/common/sha256.js +93 -0
  527. package/dist/common/sha256.js.map +1 -0
  528. package/dist/common/syncProgress.d.ts +27 -0
  529. package/dist/common/syncProgress.d.ts.map +1 -0
  530. package/dist/common/syncProgress.js +3 -0
  531. package/dist/common/syncProgress.js.map +1 -0
  532. package/dist/company/company.d.ts +75 -2
  533. package/dist/company/company.d.ts.map +1 -1
  534. package/dist/company/companyHierarchy.d.ts +53 -0
  535. package/dist/company/companyHierarchy.d.ts.map +1 -0
  536. package/dist/company/companyHierarchy.js +3 -0
  537. package/dist/company/companyHierarchy.js.map +1 -0
  538. package/dist/company/companyNotes.d.ts +288 -0
  539. package/dist/company/companyNotes.d.ts.map +1 -0
  540. package/dist/company/companyNotes.js +42 -0
  541. package/dist/company/companyNotes.js.map +1 -0
  542. package/dist/company/customProperties.d.ts +2 -0
  543. package/dist/company/customProperties.d.ts.map +1 -0
  544. package/dist/company/customProperties.js +18 -0
  545. package/dist/company/customProperties.js.map +1 -0
  546. package/dist/company/index.d.ts +2 -0
  547. package/dist/company/index.d.ts.map +1 -1
  548. package/dist/company/index.js +2 -0
  549. package/dist/company/index.js.map +1 -1
  550. package/dist/company/notification.d.ts +15 -1
  551. package/dist/company/notification.d.ts.map +1 -1
  552. package/dist/company/notification.js +8 -1
  553. package/dist/company/notification.js.map +1 -1
  554. package/dist/customProperties/customProperties.d.ts +87 -0
  555. package/dist/customProperties/customProperties.d.ts.map +1 -0
  556. package/dist/customProperties/customProperties.js +3 -0
  557. package/dist/customProperties/customProperties.js.map +1 -0
  558. package/dist/customProperties/index.d.ts +2 -0
  559. package/dist/customProperties/index.d.ts.map +1 -0
  560. package/dist/customProperties/index.js +18 -0
  561. package/dist/customProperties/index.js.map +1 -0
  562. package/dist/esm/accounts/accounts.js +115 -0
  563. package/dist/esm/accounts/azureSpSetup.js +1 -0
  564. package/dist/esm/accounts/azureSpSetupDurable.js +1 -0
  565. package/dist/esm/accounts/index.js +5 -0
  566. package/dist/esm/accounts/readPermissions.js +198 -0
  567. package/dist/esm/accounts/validation.js +1 -0
  568. package/dist/esm/accounts/writePermissions.js +43 -0
  569. package/dist/esm/ai/index.js +2 -0
  570. package/dist/esm/assessments/artifact.js +1 -0
  571. package/dist/esm/assessments/catalogue.js +12 -0
  572. package/dist/esm/assessments/common.js +1 -0
  573. package/dist/esm/assessments/evidence.js +1 -0
  574. package/dist/esm/assessments/export.js +1 -0
  575. package/dist/esm/assessments/index.js +10 -0
  576. package/dist/esm/assessments/queue.js +2 -0
  577. package/dist/esm/assessments/review.js +1 -0
  578. package/dist/esm/assessments/run.js +1 -0
  579. package/dist/esm/assessments/sow.js +1 -0
  580. package/dist/esm/assessments/status.js +23 -0
  581. package/dist/esm/aws/commitments-planning.js +1 -0
  582. package/dist/esm/aws/commitmentsPlanningValidation.js +121 -0
  583. package/dist/esm/aws/estates.js +21 -0
  584. package/dist/esm/aws/index.js +18 -0
  585. package/dist/esm/aws/onboarding.js +1 -0
  586. package/dist/esm/aws/pluginPublicArtifactBodyValidation.js +217 -0
  587. package/dist/esm/aws/pluginPublicArtifactEvidence.js +1 -0
  588. package/dist/esm/aws/pluginPublicArtifactManifestValidation.js +255 -0
  589. package/dist/esm/aws/pluginPublicArtifactSectionValidation.js +464 -0
  590. package/dist/esm/aws/pluginPublicArtifactValidation.js +2 -0
  591. package/dist/esm/aws/pluginPublicArtifactValidationHelpers.js +216 -0
  592. package/dist/esm/aws/pluginPublicArtifacts.js +44 -0
  593. package/dist/esm/aws/portalCommitmentsPlanningPublicArtifactValidation.js +509 -0
  594. package/dist/esm/aws/portalCommitmentsPlanningPublicArtifacts.js +1 -0
  595. package/dist/esm/aws/portalPublicArtifactCurrentValidation.js +328 -0
  596. package/dist/esm/aws/portalPublicArtifactEvidenceValidation.js +294 -0
  597. package/dist/esm/aws/portalPublicArtifactHistoryAiValidation.js +368 -0
  598. package/dist/esm/aws/portalPublicArtifactHistoryTypes.js +40 -0
  599. package/dist/esm/aws/portalPublicArtifactNestedEvidence.js +1 -0
  600. package/dist/esm/aws/portalPublicArtifactNestedEvidenceValidation.js +397 -0
  601. package/dist/esm/aws/portalPublicArtifactValidation.js +2 -0
  602. package/dist/esm/aws/portalPublicArtifactValidationCommon.js +139 -0
  603. package/dist/esm/aws/portalPublicArtifacts.js +73 -0
  604. package/dist/esm/aws/portalRelationshipPublicArtifactValidation.js +334 -0
  605. package/dist/esm/aws/portalRelationshipPublicArtifacts.js +59 -0
  606. package/dist/esm/aws/portalRelationshipResourceNodeTypes.js +1 -0
  607. package/dist/esm/aws/portalRelationshipResourceNodeValidation.js +368 -0
  608. package/dist/esm/aws/publicArtifacts.js +13 -0
  609. package/dist/esm/aws/relationships.js +1 -0
  610. package/dist/esm/aws/requests.js +19 -0
  611. package/dist/esm/azure/activityLogs.js +2 -0
  612. package/dist/esm/azure/advisorScore.js +1 -0
  613. package/dist/esm/azure/artifactRunReference.js +83 -0
  614. package/dist/esm/azure/benefits.js +1 -0
  615. package/dist/esm/azure/billingArtifactCanonicalization.js +360 -0
  616. package/dist/esm/azure/billingArtifactEvidence.js +23 -0
  617. package/dist/esm/azure/billingArtifactGeneration.js +461 -0
  618. package/dist/esm/azure/billingArtifactLimits.js +18 -0
  619. package/dist/esm/azure/billingGeneration.js +1 -0
  620. package/dist/esm/azure/billingPlots.js +470 -0
  621. package/dist/esm/azure/budgets.js +1 -0
  622. package/dist/esm/azure/commitmentsPlanning.js +1 -0
  623. package/dist/esm/azure/common.js +1 -0
  624. package/dist/esm/azure/configs.js +1 -0
  625. package/dist/esm/azure/costComposition.js +59 -0
  626. package/dist/esm/azure/dataProtection.js +5 -0
  627. package/dist/esm/azure/financialAnalytics.js +2 -0
  628. package/dist/esm/azure/financialAnalyticsDelivery.js +7 -0
  629. package/dist/esm/azure/financialAnalyticsDeliveryValidation.js +277 -0
  630. package/dist/esm/azure/financialAnalyticsValidation.js +436 -0
  631. package/dist/esm/azure/financialAuthorityView.js +3 -0
  632. package/dist/esm/azure/financialAuthorityViewValidation.js +497 -0
  633. package/dist/esm/azure/financialDataflow.js +2 -0
  634. package/dist/esm/azure/financialDataflowKernel.js +111 -0
  635. package/dist/esm/azure/financialDataflowValidation.js +575 -0
  636. package/dist/esm/azure/financialDisplayRollup.js +1 -0
  637. package/dist/esm/azure/financialDisplayRollupValidation.js +75 -0
  638. package/dist/esm/azure/financialEligibilityAssessmentValidation.js +176 -0
  639. package/dist/esm/azure/financialEvidenceAssessmentValidation.js +160 -0
  640. package/dist/esm/azure/financialPolicy.js +2 -0
  641. package/dist/esm/azure/financialPolicyDelivery.js +6 -0
  642. package/dist/esm/azure/financialPolicyDeliveryValidation.js +357 -0
  643. package/dist/esm/azure/financialPolicyKernel.js +225 -0
  644. package/dist/esm/azure/financialPolicyValidation.js +548 -0
  645. package/dist/esm/azure/financialProjection.js +14 -0
  646. package/dist/esm/azure/financialProjectionValidation.js +446 -0
  647. package/dist/esm/azure/financialSavingsAuthority.js +5 -0
  648. package/dist/esm/azure/financialSavingsAuthorityValidation.js +117 -0
  649. package/dist/esm/azure/financialSavingsAuthorityValidationPrimitives.js +31 -0
  650. package/dist/esm/azure/financialSavingsCoordinateValidation.js +365 -0
  651. package/dist/esm/azure/financialSavingsSurfaceProjection.js +2 -0
  652. package/dist/esm/azure/financialSavingsSurfaceProjectionValidation.js +171 -0
  653. package/dist/esm/azure/financialScope.js +27 -0
  654. package/dist/esm/azure/financialScopeBaseline.js +31 -0
  655. package/dist/esm/azure/financialScopeBaselineIdentity.js +129 -0
  656. package/dist/esm/azure/financialScopeBaselineValidation.js +453 -0
  657. package/dist/esm/azure/financialScopeEvidence.js +2 -0
  658. package/dist/esm/azure/financialValidationPrimitives.js +15 -0
  659. package/dist/esm/azure/governance.js +14 -0
  660. package/dist/esm/azure/licensing.js +1 -0
  661. package/dist/esm/azure/metrics.js +1 -0
  662. package/dist/esm/azure/payloads.js +1 -0
  663. package/dist/esm/azure/portalArtifacts.js +1 -0
  664. package/dist/esm/azure/prices.js +1 -0
  665. package/dist/esm/azure/publicIpAddresses.js +2 -0
  666. package/dist/esm/azure/recommendationAudit.js +16 -0
  667. package/dist/esm/azure/recommendationState.js +1 -0
  668. package/dist/esm/azure/recommendationTracks.js +40 -0
  669. package/dist/esm/azure/recommendationWorkflow.js +13 -0
  670. package/dist/esm/azure/recommendations.js +10 -0
  671. package/dist/esm/azure/regulatoryCompliance.js +6 -0
  672. package/dist/esm/azure/relationships.js +2 -0
  673. package/dist/esm/azure/reportingTemplates.js +1 -0
  674. package/dist/esm/azure/reports.js +12 -0
  675. package/dist/esm/azure/resourceHealth.js +12 -0
  676. package/dist/esm/azure/resourceOptimization.js +1 -0
  677. package/dist/esm/azure/resources.js +1 -0
  678. package/dist/esm/azure/reviewChecklist.js +1 -0
  679. package/dist/esm/azure/savings.js +1 -0
  680. package/dist/esm/azure/secureScore.js +1 -0
  681. package/dist/esm/azure/security.js +1 -0
  682. package/dist/esm/azure/serviceRetirement.js +1 -0
  683. package/dist/esm/azure/serviceRetirementState.js +1 -0
  684. package/dist/esm/azure/serviceRetirementWorkManagement.js +1 -0
  685. package/dist/esm/azure/storage-inventory.js +1 -0
  686. package/dist/esm/azure/subscriptions.js +1 -0
  687. package/dist/esm/azure/views.js +505 -0
  688. package/dist/esm/azure/workManagement.js +4 -0
  689. package/dist/esm/common/artifactControlData.js +200 -0
  690. package/dist/esm/common/artifactEvidence.js +198 -0
  691. package/dist/esm/common/artifactEvidenceValidation.js +24 -0
  692. package/dist/esm/common/artifactGeneration.js +1 -0
  693. package/dist/esm/common/capabilityPassport.js +206 -0
  694. package/dist/esm/common/exactDecimal.js +49 -0
  695. package/dist/esm/common/index.js +9 -0
  696. package/dist/esm/common/pagination.js +1 -0
  697. package/dist/esm/common/provider.js +11 -0
  698. package/dist/esm/common/providerSyncProgress.js +1 -0
  699. package/dist/esm/common/relationships.js +1 -0
  700. package/dist/esm/common/sha256.js +89 -0
  701. package/dist/esm/common/syncProgress.js +1 -0
  702. package/dist/esm/company/billingAccount.js +1 -0
  703. package/dist/esm/company/company.js +1 -0
  704. package/dist/esm/company/companyHierarchy.js +1 -0
  705. package/dist/esm/company/companyNotes.js +38 -0
  706. package/dist/esm/company/customProperties.js +1 -0
  707. package/dist/esm/company/index.js +6 -0
  708. package/dist/esm/company/notification.js +43 -0
  709. package/dist/esm/company/survey.js +1 -0
  710. package/dist/esm/customProperties/customProperties.js +1 -0
  711. package/dist/esm/customProperties/index.js +1 -0
  712. package/dist/esm/entries/aws.js +3 -0
  713. package/dist/esm/entries/commitments-planning.js +3 -0
  714. package/dist/esm/entries/provider.js +3 -0
  715. package/dist/esm/entries/recommendations.js +3 -0
  716. package/dist/esm/entries/relationships.js +3 -0
  717. package/dist/esm/entries/root.js +3 -0
  718. package/dist/esm/events/actionGroups.js +1 -0
  719. package/dist/esm/events/alertDefinitionRun.js +1 -0
  720. package/dist/esm/events/baseAlert.js +1 -0
  721. package/dist/esm/events/cost.js +1 -0
  722. package/dist/esm/events/costAnomalies.js +1 -0
  723. package/dist/esm/events/costViews.js +1 -0
  724. package/dist/esm/events/eventStatus.js +1 -0
  725. package/dist/esm/events/index.js +8 -0
  726. package/dist/esm/events/quickAlerts.js +2 -0
  727. package/dist/esm/features-and-permissions/access.js +1 -0
  728. package/dist/esm/features-and-permissions/index.js +1 -0
  729. package/dist/esm/feedbacks/feedback.js +1 -0
  730. package/dist/esm/identity/apikey.js +1 -0
  731. package/dist/esm/identity/index.js +1 -0
  732. package/dist/esm/index.js +62 -0
  733. package/dist/esm/index.vite.js +48 -0
  734. package/dist/esm/integrations/autotask.js +1 -0
  735. package/dist/esm/integrations/azureDevOps.js +1 -0
  736. package/dist/esm/integrations/github.js +1 -0
  737. package/dist/esm/integrations/halo.js +1 -0
  738. package/dist/esm/integrations/index.js +5 -0
  739. package/dist/esm/integrations/integrationTickets.js +1 -0
  740. package/dist/esm/package.json +3 -0
  741. package/dist/esm/portfolio/index.js +2 -0
  742. package/dist/esm/portfolio/portfolioOperations.js +1 -0
  743. package/dist/esm/portfolio/portfolioProjections.js +17 -0
  744. package/dist/esm/scheduler/index.js +1 -0
  745. package/dist/esm/scheduler/scheduler.js +1 -0
  746. package/dist/esm/tags/index.js +1 -0
  747. package/dist/esm/tags/tags.js +6 -0
  748. package/dist/esm/unknown/services.js +1 -0
  749. package/dist/esm/users/companyUser.js +2 -0
  750. package/dist/esm/users/index.js +2 -0
  751. package/dist/esm/users/user.js +1 -0
  752. package/dist/events/actionGroups.d.ts +85 -0
  753. package/dist/events/actionGroups.d.ts.map +1 -0
  754. package/dist/events/actionGroups.js +3 -0
  755. package/dist/events/actionGroups.js.map +1 -0
  756. package/dist/events/alertDefinitionRun.d.ts +23 -0
  757. package/dist/events/alertDefinitionRun.d.ts.map +1 -0
  758. package/dist/events/alertDefinitionRun.js +3 -0
  759. package/dist/events/alertDefinitionRun.js.map +1 -0
  760. package/dist/events/baseAlert.d.ts +140 -0
  761. package/dist/events/baseAlert.d.ts.map +1 -0
  762. package/dist/events/baseAlert.js +3 -0
  763. package/dist/events/baseAlert.js.map +1 -0
  764. package/dist/events/cost.d.ts +375 -0
  765. package/dist/events/cost.d.ts.map +1 -0
  766. package/dist/events/cost.js +3 -0
  767. package/dist/events/cost.js.map +1 -0
  768. package/dist/events/costAnomalies.d.ts +47 -0
  769. package/dist/events/costAnomalies.d.ts.map +1 -0
  770. package/dist/events/costAnomalies.js +3 -0
  771. package/dist/events/costAnomalies.js.map +1 -0
  772. package/dist/events/costViews.d.ts +25 -0
  773. package/dist/events/costViews.d.ts.map +1 -0
  774. package/dist/events/costViews.js +3 -0
  775. package/dist/events/costViews.js.map +1 -0
  776. package/dist/events/eventStatus.d.ts +8 -0
  777. package/dist/events/eventStatus.d.ts.map +1 -1
  778. package/dist/events/index.d.ts +7 -0
  779. package/dist/events/index.d.ts.map +1 -1
  780. package/dist/events/index.js +7 -0
  781. package/dist/events/index.js.map +1 -1
  782. package/dist/events/quickAlerts.d.ts +67 -0
  783. package/dist/events/quickAlerts.d.ts.map +1 -0
  784. package/dist/events/quickAlerts.js +7 -0
  785. package/dist/events/quickAlerts.js.map +1 -0
  786. package/dist/features-and-permissions/access.d.ts +139 -0
  787. package/dist/features-and-permissions/access.d.ts.map +1 -0
  788. package/dist/features-and-permissions/access.js +3 -0
  789. package/dist/features-and-permissions/access.js.map +1 -0
  790. package/dist/features-and-permissions/index.d.ts +2 -0
  791. package/dist/features-and-permissions/index.d.ts.map +1 -0
  792. package/dist/features-and-permissions/index.js +18 -0
  793. package/dist/features-and-permissions/index.js.map +1 -0
  794. package/dist/identity/apikey.d.ts +20 -3
  795. package/dist/identity/apikey.d.ts.map +1 -1
  796. package/dist/index.d.ts +39 -1
  797. package/dist/index.d.ts.map +1 -1
  798. package/dist/index.js +39 -1
  799. package/dist/index.js.map +1 -1
  800. package/dist/index.vite.d.ts +49 -0
  801. package/dist/index.vite.d.ts.map +1 -0
  802. package/dist/index.vite.js +65 -0
  803. package/dist/index.vite.js.map +1 -0
  804. package/dist/integrations/autotask.d.ts +108 -0
  805. package/dist/integrations/autotask.d.ts.map +1 -0
  806. package/dist/integrations/autotask.js +3 -0
  807. package/dist/integrations/autotask.js.map +1 -0
  808. package/dist/integrations/azureDevOps.d.ts +130 -0
  809. package/dist/integrations/azureDevOps.d.ts.map +1 -0
  810. package/dist/integrations/azureDevOps.js +3 -0
  811. package/dist/integrations/azureDevOps.js.map +1 -0
  812. package/dist/integrations/github.d.ts +96 -0
  813. package/dist/integrations/github.d.ts.map +1 -0
  814. package/dist/integrations/github.js +3 -0
  815. package/dist/integrations/github.js.map +1 -0
  816. package/dist/integrations/halo.d.ts +76 -0
  817. package/dist/integrations/halo.d.ts.map +1 -0
  818. package/dist/integrations/halo.js +3 -0
  819. package/dist/integrations/halo.js.map +1 -0
  820. package/dist/integrations/index.d.ts +6 -0
  821. package/dist/integrations/index.d.ts.map +1 -0
  822. package/dist/integrations/index.js +22 -0
  823. package/dist/integrations/index.js.map +1 -0
  824. package/dist/integrations/integrationTickets.d.ts +77 -0
  825. package/dist/integrations/integrationTickets.d.ts.map +1 -0
  826. package/dist/integrations/integrationTickets.js +3 -0
  827. package/dist/integrations/integrationTickets.js.map +1 -0
  828. package/dist/portfolio/index.d.ts +3 -0
  829. package/dist/portfolio/index.d.ts.map +1 -0
  830. package/dist/portfolio/index.js +19 -0
  831. package/dist/portfolio/index.js.map +1 -0
  832. package/dist/portfolio/portfolioOperations.d.ts +174 -0
  833. package/dist/portfolio/portfolioOperations.d.ts.map +1 -0
  834. package/dist/portfolio/portfolioOperations.js +3 -0
  835. package/dist/portfolio/portfolioOperations.js.map +1 -0
  836. package/dist/portfolio/portfolioProjections.d.ts +460 -0
  837. package/dist/portfolio/portfolioProjections.d.ts.map +1 -0
  838. package/dist/portfolio/portfolioProjections.js +21 -0
  839. package/dist/portfolio/portfolioProjections.js.map +1 -0
  840. package/dist/scheduler/index.d.ts +2 -0
  841. package/dist/scheduler/index.d.ts.map +1 -0
  842. package/dist/scheduler/index.js +18 -0
  843. package/dist/scheduler/index.js.map +1 -0
  844. package/dist/scheduler/scheduler.d.ts +263 -0
  845. package/dist/scheduler/scheduler.d.ts.map +1 -0
  846. package/dist/scheduler/scheduler.js +3 -0
  847. package/dist/scheduler/scheduler.js.map +1 -0
  848. package/dist/tags/index.d.ts +2 -0
  849. package/dist/tags/index.d.ts.map +1 -0
  850. package/dist/tags/index.js +18 -0
  851. package/dist/tags/index.js.map +1 -0
  852. package/dist/tags/tags.d.ts +37 -0
  853. package/dist/tags/tags.d.ts.map +1 -0
  854. package/dist/tags/tags.js +10 -0
  855. package/dist/tags/tags.js.map +1 -0
  856. package/dist/unknown/services.d.ts +12 -0
  857. package/dist/unknown/services.d.ts.map +1 -0
  858. package/dist/unknown/services.js +3 -0
  859. package/dist/unknown/services.js.map +1 -0
  860. package/dist/users/companyUser.d.ts +14 -0
  861. package/dist/users/companyUser.d.ts.map +1 -1
  862. package/dist/users/companyUser.js.map +1 -1
  863. package/dist/users/user.d.ts +20 -1
  864. package/dist/users/user.d.ts.map +1 -1
  865. package/package.json +82 -4
  866. package/dist/azure/costEstimation.d.ts.map +0 -1
  867. package/dist/azure/costEstimation.js.map +0 -1
@@ -0,0 +1,575 @@
1
+ import { sha256Utf8 } from '../common/sha256.js';
2
+ import { formatExactDecimalValue, sumCanonicalDecimals } from '../common/exactDecimal.js';
3
+ import { toCanonicalEstimateLensV1 } from './costComposition.js';
4
+ import { isCanonicalExactMoney } from './financialValidationPrimitives.js';
5
+ import { isCompleteFinancialBaselinePeriodV2 } from './financialScopeBaseline.js';
6
+ import { isFinancialScopeBaselineEnvelopeV2 } from './financialScopeBaselineValidation.js';
7
+ import { FINANCIAL_CURRENT_SPEND_COMPOSITION_CONTRACT_VERSION_V1, FINANCIAL_DATAFLOW_SCHEMA_VERSION_V1, } from './financialDataflow.js';
8
+ import { isFinancialBaselinePeriodV2 } from './financialScopeBaselineValidation.js';
9
+ export const FINANCIAL_DATAFLOW_LIMITS_V1 = {
10
+ maximumIdentifierLength: 2048,
11
+ maximumProviderAccounts: 256,
12
+ maximumMembers: 20000,
13
+ maximumReasonCodes: 64,
14
+ maximumJsonBytes: 5242880,
15
+ maximumJsonDepth: 64,
16
+ maximumJsonNodes: 200000,
17
+ };
18
+ const SHA256_ID = /^sha256:[0-9a-f]{64}$/;
19
+ const CURRENCY = /^[A-Z]{3}$/;
20
+ const SCOPE_KINDS = new Set(['resource', 'resource-group', 'subscription', 'tag-scope', 'multi-subscription']);
21
+ const PERIOD_ROLES = new Set(['current-spend', 'comparison', 'analytics-input', 'projection-target']);
22
+ const COST_BASES = new Set(['billed', 'amortized']);
23
+ const ESTIMATE_LENSES = new Set(['billing-only', 'include-estimates', 'estimates-only']);
24
+ const CURRENCY_REASONS = new Set(['currency-unresolved', 'currency-conflicting']);
25
+ const FORBIDDEN_KEYS = new Set(['__proto__', 'prototype', 'constructor']);
26
+ const utf8ByteLength = (value) => {
27
+ let length = 0;
28
+ for (const character of value) {
29
+ const codePoint = character.codePointAt(0) ?? 0;
30
+ length += codePoint <= 0x7f ? 1 : codePoint <= 0x7ff ? 2 : codePoint <= 0xffff ? 3 : 4;
31
+ }
32
+ return length;
33
+ };
34
+ /** Returns the exact UTF-8 size after JSON string escaping, including quotes. */
35
+ const jsonStringByteLength = (value) => {
36
+ let length = 2;
37
+ for (let index = 0; index < value.length; index += 1) {
38
+ const codeUnit = value.charCodeAt(index);
39
+ if (codeUnit === 0x22 ||
40
+ codeUnit === 0x5c ||
41
+ codeUnit === 0x08 ||
42
+ codeUnit === 0x09 ||
43
+ codeUnit === 0x0a ||
44
+ codeUnit === 0x0c ||
45
+ codeUnit === 0x0d) {
46
+ length += 2;
47
+ }
48
+ else if (codeUnit <= 0x1f ||
49
+ (codeUnit >= 0xd800 &&
50
+ codeUnit <= 0xdfff &&
51
+ !(codeUnit <= 0xdbff && index + 1 < value.length && value.charCodeAt(index + 1) >= 0xdc00 && value.charCodeAt(index + 1) <= 0xdfff))) {
52
+ length += 6;
53
+ }
54
+ else if (codeUnit >= 0xd800 && codeUnit <= 0xdbff) {
55
+ length += 4;
56
+ index += 1;
57
+ }
58
+ else {
59
+ length += codeUnit <= 0x7f ? 1 : codeUnit <= 0x7ff ? 2 : 3;
60
+ }
61
+ }
62
+ return length;
63
+ };
64
+ export const isFinancialDataflowRecordV1 = (value) => {
65
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
66
+ return false;
67
+ const prototype = Object.getPrototypeOf(value);
68
+ return (prototype === Object.prototype || prototype === null) && !Object.keys(value).some(key => FORBIDDEN_KEYS.has(key));
69
+ };
70
+ export const hasFinancialDataflowExactFieldsV1 = (value, required, optional = []) => {
71
+ const allowed = new Set([...required, ...optional]);
72
+ const keys = Object.keys(value);
73
+ return required.every(field => Object.prototype.hasOwnProperty.call(value, field)) && keys.every(field => allowed.has(field));
74
+ };
75
+ /** Applies the same aggregate byte/node/depth envelope to already-parsed public validator inputs. */
76
+ export const isFinancialDataflowValueWithinLimitsV1 = (value) => {
77
+ const stack = [{ value, depth: 0 }];
78
+ const activeObjects = new WeakSet();
79
+ let nodes = 0;
80
+ let bytes = 0;
81
+ while (stack.length > 0) {
82
+ const current = stack.pop();
83
+ if (current.exit) {
84
+ activeObjects.delete(current.value);
85
+ continue;
86
+ }
87
+ if (current.depth > FINANCIAL_DATAFLOW_LIMITS_V1.maximumJsonDepth)
88
+ return false;
89
+ nodes += 1;
90
+ if (nodes > FINANCIAL_DATAFLOW_LIMITS_V1.maximumJsonNodes)
91
+ return false;
92
+ if (current.value === undefined)
93
+ return false;
94
+ if (typeof current.value === 'string') {
95
+ bytes += jsonStringByteLength(current.value);
96
+ }
97
+ else if (current.value === null) {
98
+ bytes += 4;
99
+ }
100
+ else if (typeof current.value === 'number') {
101
+ if (!Number.isFinite(current.value))
102
+ return false;
103
+ bytes += String(current.value).length;
104
+ }
105
+ else if (typeof current.value === 'boolean') {
106
+ bytes += String(current.value).length;
107
+ }
108
+ else if (Array.isArray(current.value)) {
109
+ if (activeObjects.has(current.value))
110
+ return false;
111
+ const arrayKeys = Object.keys(current.value);
112
+ if (arrayKeys.length !== current.value.length || arrayKeys.some((key, index) => key !== String(index)))
113
+ return false;
114
+ activeObjects.add(current.value);
115
+ stack.push({ value: current.value, depth: current.depth, exit: true });
116
+ bytes += 2 + Math.max(0, current.value.length - 1);
117
+ for (let index = 0; index < current.value.length; index += 1) {
118
+ stack.push({ value: current.value[index], depth: current.depth + 1 });
119
+ }
120
+ }
121
+ else if (isFinancialDataflowRecordV1(current.value)) {
122
+ if (activeObjects.has(current.value))
123
+ return false;
124
+ activeObjects.add(current.value);
125
+ stack.push({ value: current.value, depth: current.depth, exit: true });
126
+ const entries = Object.entries(current.value);
127
+ bytes += 2 + Math.max(0, entries.length - 1);
128
+ for (const [key, entry] of entries) {
129
+ bytes += jsonStringByteLength(key) + 1;
130
+ stack.push({ value: entry, depth: current.depth + 1 });
131
+ }
132
+ }
133
+ else {
134
+ return false;
135
+ }
136
+ if (bytes > FINANCIAL_DATAFLOW_LIMITS_V1.maximumJsonBytes)
137
+ return false;
138
+ }
139
+ return true;
140
+ };
141
+ export const isFinancialDataflowIdentityV1 = (value) => typeof value === 'string' && value.length > 0 && value.length <= FINANCIAL_DATAFLOW_LIMITS_V1.maximumIdentifierLength && value.trim() === value;
142
+ export const isFinancialDataflowHashV1 = (value) => typeof value === 'string' && SHA256_ID.test(value);
143
+ export const isFinancialDataflowCurrencyV1 = (value) => typeof value === 'string' && CURRENCY.test(value);
144
+ export const isFinancialDataflowIsoInstantV1 = (value) => typeof value === 'string' && /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{3})?Z$/.test(value) && Number.isFinite(Date.parse(value));
145
+ export const isFinancialDataflowJsonGzipArtifactDescriptorV1 = (value) => isFinancialDataflowRecordV1(value) &&
146
+ hasFinancialDataflowExactFieldsV1(value, ['path', 'sha256', 'byteCount', 'mediaType', 'contentEncoding']) &&
147
+ isFinancialDataflowIdentityV1(value.path) &&
148
+ isFinancialDataflowHashV1(value.sha256) &&
149
+ Number.isSafeInteger(value.byteCount) &&
150
+ Number(value.byteCount) > 0 &&
151
+ value.mediaType === 'application/json' &&
152
+ value.contentEncoding === 'gzip';
153
+ export const isFinancialDataflowCalendarDateV1 = (value) => {
154
+ if (typeof value !== 'string' || !/^\d{4}-\d{2}-\d{2}$/.test(value))
155
+ return false;
156
+ const parsed = new Date(`${value}T00:00:00.000Z`);
157
+ return Number.isFinite(parsed.getTime()) && parsed.toISOString().slice(0, 10) === value;
158
+ };
159
+ export const isFinancialDataflowSortedUniqueStringsV1 = (value, maximum, validate = isFinancialDataflowIdentityV1) => Array.isArray(value) &&
160
+ value.length <= maximum &&
161
+ value.every(validate) &&
162
+ value.every((entry, index) => index === 0 || String(value[index - 1]) < entry);
163
+ export const canonicalizeFinancialDataflowJsonV1 = (value) => {
164
+ if (!isFinancialDataflowValueWithinLimitsV1(value)) {
165
+ throw new RangeError('Financial dataflow value exceeds the aggregate JSON limits.');
166
+ }
167
+ const visit = (entry) => {
168
+ if (Array.isArray(entry))
169
+ return entry.map(visit);
170
+ if (!isFinancialDataflowRecordV1(entry))
171
+ return entry;
172
+ return Object.fromEntries(Object.keys(entry)
173
+ .sort()
174
+ .map(key => [key, visit(entry[key])]));
175
+ };
176
+ return JSON.stringify(visit(value));
177
+ };
178
+ /** Parses bounded JSON while rejecting duplicate and prototype-sensitive object keys. */
179
+ export const parseFinancialDataflowJsonV1 = (text) => {
180
+ if (typeof text !== 'string' || utf8ByteLength(text) > FINANCIAL_DATAFLOW_LIMITS_V1.maximumJsonBytes) {
181
+ throw new RangeError('Financial dataflow JSON exceeds the byte limit.');
182
+ }
183
+ let index = 0;
184
+ let nodes = 0;
185
+ const fail = (message) => {
186
+ throw new SyntaxError(`Invalid financial dataflow JSON at offset ${index}: ${message}`);
187
+ };
188
+ const skipWhitespace = () => {
189
+ while (text[index] === ' ' || text[index] === '\t' || text[index] === '\r' || text[index] === '\n')
190
+ index += 1;
191
+ };
192
+ const parseString = () => {
193
+ if (text[index] !== '"')
194
+ fail('expected string');
195
+ const start = index;
196
+ index += 1;
197
+ while (index < text.length) {
198
+ const character = text[index];
199
+ if (character === '"') {
200
+ index += 1;
201
+ try {
202
+ return JSON.parse(text.slice(start, index));
203
+ }
204
+ catch {
205
+ fail('invalid string escape');
206
+ }
207
+ }
208
+ if (character === '\\') {
209
+ index += 1;
210
+ if (text[index] === 'u') {
211
+ if (!/^[0-9a-fA-F]{4}$/.test(text.slice(index + 1, index + 5)))
212
+ fail('invalid unicode escape');
213
+ index += 5;
214
+ continue;
215
+ }
216
+ if (!/["\\/bfnrt]/.test(text[index] ?? ''))
217
+ fail('invalid string escape');
218
+ }
219
+ else if (character.charCodeAt(0) < 0x20) {
220
+ fail('unescaped control character');
221
+ }
222
+ index += 1;
223
+ }
224
+ return fail('unterminated string');
225
+ };
226
+ const parseValue = (depth) => {
227
+ if (depth > FINANCIAL_DATAFLOW_LIMITS_V1.maximumJsonDepth)
228
+ throw new RangeError('Financial dataflow JSON exceeds the depth limit.');
229
+ nodes += 1;
230
+ if (nodes > FINANCIAL_DATAFLOW_LIMITS_V1.maximumJsonNodes)
231
+ throw new RangeError('Financial dataflow JSON exceeds the node limit.');
232
+ skipWhitespace();
233
+ const character = text[index];
234
+ if (character === '"')
235
+ return parseString();
236
+ if (character === '{') {
237
+ index += 1;
238
+ skipWhitespace();
239
+ const result = Object.create(null);
240
+ const keys = new Set();
241
+ if (text[index] === '}') {
242
+ index += 1;
243
+ return result;
244
+ }
245
+ while (index < text.length) {
246
+ skipWhitespace();
247
+ const key = parseString();
248
+ if (keys.has(key))
249
+ fail(`duplicate object key ${JSON.stringify(key)}`);
250
+ if (FORBIDDEN_KEYS.has(key))
251
+ fail(`prototype-sensitive object key ${JSON.stringify(key)}`);
252
+ keys.add(key);
253
+ skipWhitespace();
254
+ if (text[index] !== ':')
255
+ fail('expected colon');
256
+ index += 1;
257
+ result[key] = parseValue(depth + 1);
258
+ skipWhitespace();
259
+ if (text[index] === '}') {
260
+ index += 1;
261
+ return result;
262
+ }
263
+ if (text[index] !== ',')
264
+ fail('expected comma or object end');
265
+ index += 1;
266
+ }
267
+ fail('unterminated object');
268
+ }
269
+ if (character === '[') {
270
+ index += 1;
271
+ skipWhitespace();
272
+ const result = [];
273
+ if (text[index] === ']') {
274
+ index += 1;
275
+ return result;
276
+ }
277
+ while (index < text.length) {
278
+ result.push(parseValue(depth + 1));
279
+ skipWhitespace();
280
+ if (text[index] === ']') {
281
+ index += 1;
282
+ return result;
283
+ }
284
+ if (text[index] !== ',')
285
+ fail('expected comma or array end');
286
+ index += 1;
287
+ }
288
+ fail('unterminated array');
289
+ }
290
+ for (const [token, value] of [
291
+ ['true', true],
292
+ ['false', false],
293
+ ['null', null],
294
+ ]) {
295
+ if (text.startsWith(token, index)) {
296
+ index += token.length;
297
+ return value;
298
+ }
299
+ }
300
+ const numberMatch = text.slice(index).match(/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?/);
301
+ if (numberMatch) {
302
+ index += numberMatch[0].length;
303
+ const parsedNumber = JSON.parse(numberMatch[0]);
304
+ if (!Number.isFinite(parsedNumber))
305
+ fail('non-finite number');
306
+ return parsedNumber;
307
+ }
308
+ fail('unexpected token');
309
+ };
310
+ const parsed = parseValue(0);
311
+ skipWhitespace();
312
+ if (index !== text.length)
313
+ fail('trailing content');
314
+ return parsed;
315
+ };
316
+ export const isFinancialDataflowScopeV1 = (value) => isFinancialDataflowRecordV1(value) &&
317
+ hasFinancialDataflowExactFieldsV1(value, ['kind', 'scopeId', 'scopeFingerprint']) &&
318
+ typeof value.kind === 'string' &&
319
+ SCOPE_KINDS.has(value.kind) &&
320
+ isFinancialDataflowIdentityV1(value.scopeId) &&
321
+ isFinancialDataflowHashV1(value.scopeFingerprint);
322
+ export const isFinancialDataflowPeriodV1 = (value) => isFinancialDataflowRecordV1(value) &&
323
+ hasFinancialDataflowExactFieldsV1(value, ['windowKind', 'requested'], ['providerBillingPeriodId']) &&
324
+ isFinancialBaselinePeriodV2({ ...value, coverage: [], gaps: [] });
325
+ export const isFinancialDataflowScopeSelectorV1 = (value) => {
326
+ if (!isFinancialDataflowRecordV1(value) || typeof value.kind !== 'string' || !SCOPE_KINDS.has(value.kind))
327
+ return false;
328
+ if (value.kind === 'resource') {
329
+ return (hasFinancialDataflowExactFieldsV1(value, ['kind', 'resourceIds']) &&
330
+ isFinancialDataflowSortedUniqueStringsV1(value.resourceIds, FINANCIAL_DATAFLOW_LIMITS_V1.maximumMembers) &&
331
+ value.resourceIds.length === 1);
332
+ }
333
+ if (value.kind === 'resource-group') {
334
+ return (hasFinancialDataflowExactFieldsV1(value, ['kind', 'resourceGroupIds']) &&
335
+ isFinancialDataflowSortedUniqueStringsV1(value.resourceGroupIds, FINANCIAL_DATAFLOW_LIMITS_V1.maximumMembers) &&
336
+ value.resourceGroupIds.length === 1);
337
+ }
338
+ if (value.kind === 'subscription' || value.kind === 'multi-subscription') {
339
+ return (hasFinancialDataflowExactFieldsV1(value, ['kind', 'subscriptionIds']) &&
340
+ isFinancialDataflowSortedUniqueStringsV1(value.subscriptionIds, FINANCIAL_DATAFLOW_LIMITS_V1.maximumProviderAccounts) &&
341
+ value.subscriptionIds.length > 0 &&
342
+ (value.kind !== 'subscription' || value.subscriptionIds.length === 1));
343
+ }
344
+ if (!hasFinancialDataflowExactFieldsV1(value, ['kind', 'tags', 'tagMatch']) ||
345
+ (value.tagMatch !== 'any' && value.tagMatch !== 'all') ||
346
+ !Array.isArray(value.tags) ||
347
+ value.tags.length === 0 ||
348
+ value.tags.length > 256) {
349
+ return false;
350
+ }
351
+ const keys = value.tags.map(tag => {
352
+ if (!isFinancialDataflowRecordV1(tag) ||
353
+ !hasFinancialDataflowExactFieldsV1(tag, ['key', 'value']) ||
354
+ !isFinancialDataflowIdentityV1(tag.key) ||
355
+ !isFinancialDataflowIdentityV1(tag.value)) {
356
+ return undefined;
357
+ }
358
+ return `${tag.key}\u0000${tag.value}`;
359
+ });
360
+ return keys.every((key) => key !== undefined) && keys.every((key, index) => index === 0 || keys[index - 1] < key);
361
+ };
362
+ export const isFinancialDataflowCoordinateV1 = (value) => {
363
+ if (!isFinancialDataflowRecordV1(value) ||
364
+ !hasFinancialDataflowExactFieldsV1(value, ['companyId', 'provider', 'providerAccountRefs', 'scope', 'periodRole', 'period', 'costBasis', 'estimateLens', 'accountingCurrency'], ['requestedCurrencyCode']) ||
365
+ !isFinancialDataflowIdentityV1(value.companyId) ||
366
+ value.provider !== 'azure' ||
367
+ !isFinancialDataflowSortedUniqueStringsV1(value.providerAccountRefs, FINANCIAL_DATAFLOW_LIMITS_V1.maximumProviderAccounts) ||
368
+ value.providerAccountRefs.length === 0 ||
369
+ !isFinancialDataflowScopeV1(value.scope) ||
370
+ typeof value.periodRole !== 'string' ||
371
+ !PERIOD_ROLES.has(value.periodRole) ||
372
+ !isFinancialDataflowPeriodV1(value.period) ||
373
+ typeof value.costBasis !== 'string' ||
374
+ !COST_BASES.has(value.costBasis) ||
375
+ typeof value.estimateLens !== 'string' ||
376
+ !ESTIMATE_LENSES.has(value.estimateLens) ||
377
+ (value.requestedCurrencyCode !== undefined && !isFinancialDataflowCurrencyV1(value.requestedCurrencyCode)) ||
378
+ !isFinancialDataflowRecordV1(value.accountingCurrency)) {
379
+ return false;
380
+ }
381
+ if (value.accountingCurrency.status === 'resolved') {
382
+ return (hasFinancialDataflowExactFieldsV1(value.accountingCurrency, ['status', 'currencyCode']) &&
383
+ isFinancialDataflowCurrencyV1(value.accountingCurrency.currencyCode) &&
384
+ (value.requestedCurrencyCode === undefined || value.requestedCurrencyCode === value.accountingCurrency.currencyCode));
385
+ }
386
+ return (value.accountingCurrency.status === 'unresolved' &&
387
+ hasFinancialDataflowExactFieldsV1(value.accountingCurrency, ['status', 'reasonCode']) &&
388
+ typeof value.accountingCurrency.reasonCode === 'string' &&
389
+ CURRENCY_REASONS.has(value.accountingCurrency.reasonCode));
390
+ };
391
+ export const canonicalizeFinancialDataflowCoordinateV1 = (value) => {
392
+ if (!isFinancialDataflowCoordinateV1(value))
393
+ throw new TypeError('Invalid FinancialDataflowCoordinateV1.');
394
+ return canonicalizeFinancialDataflowJsonV1({ ...value, providerAccountRefs: [...value.providerAccountRefs].sort() });
395
+ };
396
+ export const createFinancialDataflowCoordinateIdV1 = (value) => `sha256:${sha256Utf8(canonicalizeFinancialDataflowCoordinateV1(value))}`;
397
+ const isReasonCodes = (value) => Array.isArray(value) &&
398
+ value.length > 0 &&
399
+ value.length <= FINANCIAL_DATAFLOW_LIMITS_V1.maximumReasonCodes &&
400
+ value.every(isFinancialDataflowIdentityV1) &&
401
+ new Set(value).size === value.length;
402
+ const isMember = (value) => {
403
+ if (!isFinancialDataflowRecordV1(value) || !isFinancialDataflowIdentityV1(value.memberScopeId))
404
+ return false;
405
+ if (value.status === 'included') {
406
+ return hasFinancialDataflowExactFieldsV1(value, ['memberScopeId', 'baselineId', 'status']) && isFinancialDataflowHashV1(value.baselineId);
407
+ }
408
+ return (value.status === 'unavailable' &&
409
+ hasFinancialDataflowExactFieldsV1(value, ['memberScopeId', 'status', 'reasonCode']) &&
410
+ isFinancialDataflowIdentityV1(value.reasonCode));
411
+ };
412
+ export const canonicalizeCurrentSpendMembershipV1 = (members) => {
413
+ if (!Array.isArray(members) ||
414
+ members.length > FINANCIAL_DATAFLOW_LIMITS_V1.maximumMembers ||
415
+ !members.every(isMember) ||
416
+ new Set(members.map(member => member.memberScopeId)).size !== members.length) {
417
+ throw new TypeError('Invalid CurrentSpendCompositionMemberV1 collection.');
418
+ }
419
+ return canonicalizeFinancialDataflowJsonV1([...members].sort((left, right) => left.memberScopeId.localeCompare(right.memberScopeId)));
420
+ };
421
+ export const createCurrentSpendMembershipDigestV1 = (members) => `sha256:${sha256Utf8(canonicalizeCurrentSpendMembershipV1(members))}`;
422
+ const isCompositionIdentity = (value) => {
423
+ if (!isFinancialDataflowRecordV1(value) ||
424
+ !hasFinancialDataflowExactFieldsV1(value, [
425
+ 'schemaVersion',
426
+ 'contractVersion',
427
+ 'coordinate',
428
+ 'members',
429
+ 'amount',
430
+ 'membershipDigest',
431
+ 'algorithmVersion',
432
+ ]) ||
433
+ value.schemaVersion !== FINANCIAL_DATAFLOW_SCHEMA_VERSION_V1 ||
434
+ value.contractVersion !== FINANCIAL_CURRENT_SPEND_COMPOSITION_CONTRACT_VERSION_V1 ||
435
+ !isFinancialDataflowCoordinateV1(value.coordinate) ||
436
+ (value.coordinate.periodRole !== 'current-spend' && value.coordinate.periodRole !== 'comparison') ||
437
+ !Array.isArray(value.members) ||
438
+ value.members.length > FINANCIAL_DATAFLOW_LIMITS_V1.maximumMembers ||
439
+ !value.members.every(isMember) ||
440
+ new Set(value.members.map(member => member.memberScopeId)).size !== value.members.length ||
441
+ !isFinancialDataflowHashV1(value.membershipDigest) ||
442
+ value.membershipDigest !== createCurrentSpendMembershipDigestV1(value.members) ||
443
+ !isFinancialDataflowIdentityV1(value.algorithmVersion) ||
444
+ !isFinancialDataflowRecordV1(value.amount)) {
445
+ return false;
446
+ }
447
+ const currency = value.coordinate.accountingCurrency.status === 'resolved' ? value.coordinate.accountingCurrency.currencyCode : undefined;
448
+ if (value.amount.status === 'available') {
449
+ return (currency !== undefined &&
450
+ hasFinancialDataflowExactFieldsV1(value.amount, ['status', 'amount', 'currencyCode']) &&
451
+ isCanonicalExactMoney({ amount: value.amount.amount, currencyCode: value.amount.currencyCode }) &&
452
+ value.amount.currencyCode === currency &&
453
+ value.members.length > 0 &&
454
+ value.members.every(member => member.status === 'included'));
455
+ }
456
+ if (value.amount.status === 'partial') {
457
+ return (currency !== undefined &&
458
+ hasFinancialDataflowExactFieldsV1(value.amount, ['status', 'knownAmount', 'currencyCode', 'reasonCodes']) &&
459
+ isCanonicalExactMoney({ amount: value.amount.knownAmount, currencyCode: value.amount.currencyCode }) &&
460
+ value.amount.currencyCode === currency &&
461
+ isReasonCodes(value.amount.reasonCodes) &&
462
+ value.members.some(member => member.status === 'included') &&
463
+ (value.members.some(member => member.status === 'unavailable') || value.amount.reasonCodes.includes('coverage-incomplete')));
464
+ }
465
+ const unresolvedCurrency = value.coordinate.accountingCurrency;
466
+ return (value.amount.status === 'unavailable' &&
467
+ hasFinancialDataflowExactFieldsV1(value.amount, ['status', 'reasonCodes']) &&
468
+ isReasonCodes(value.amount.reasonCodes) &&
469
+ (currency !== undefined || (unresolvedCurrency.status === 'unresolved' && value.amount.reasonCodes.includes(unresolvedCurrency.reasonCode))));
470
+ };
471
+ export const canonicalizeCurrentSpendCompositionIdentityV1 = (value) => {
472
+ if (!isFinancialDataflowValueWithinLimitsV1(value) || !isCompositionIdentity(value)) {
473
+ throw new TypeError('Invalid CurrentSpendCompositionIdentityPreimageV1.');
474
+ }
475
+ const canonical = {
476
+ ...value,
477
+ coordinate: {
478
+ ...value.coordinate,
479
+ providerAccountRefs: [...value.coordinate.providerAccountRefs].sort(),
480
+ },
481
+ members: [...value.members].sort((left, right) => left.memberScopeId.localeCompare(right.memberScopeId)),
482
+ amount: value.amount.status === 'available' ? value.amount : { ...value.amount, reasonCodes: [...value.amount.reasonCodes].sort() },
483
+ };
484
+ return canonicalizeFinancialDataflowJsonV1(canonical);
485
+ };
486
+ export const createCurrentSpendCompositionIdV1 = (value) => `sha256:${sha256Utf8(canonicalizeCurrentSpendCompositionIdentityV1(value))}`;
487
+ export const isCurrentSpendCompositionV1 = (value) => {
488
+ if (!isFinancialDataflowValueWithinLimitsV1(value) ||
489
+ !isFinancialDataflowRecordV1(value) ||
490
+ !hasFinancialDataflowExactFieldsV1(value, [
491
+ 'compositionId',
492
+ 'schemaVersion',
493
+ 'contractVersion',
494
+ 'coordinate',
495
+ 'members',
496
+ 'amount',
497
+ 'membershipDigest',
498
+ 'algorithmVersion',
499
+ ])) {
500
+ return false;
501
+ }
502
+ const { compositionId, ...identity } = value;
503
+ return isFinancialDataflowHashV1(compositionId) && isCompositionIdentity(identity) && compositionId === createCurrentSpendCompositionIdV1(identity);
504
+ };
505
+ const hasCompatibleBaselineCoordinate = (coordinate, baseline) => baseline.provider === coordinate.provider &&
506
+ baseline.providerAccountRefs.every(providerAccountRef => coordinate.providerAccountRefs.includes(providerAccountRef)) &&
507
+ baseline.period.windowKind === coordinate.period.windowKind &&
508
+ canonicalizeFinancialDataflowJsonV1(baseline.period.requested) === canonicalizeFinancialDataflowJsonV1(coordinate.period.requested) &&
509
+ baseline.period.providerBillingPeriodId === coordinate.period.providerBillingPeriodId &&
510
+ baseline.costBasis === coordinate.costBasis &&
511
+ toCanonicalEstimateLensV1(baseline.estimateLens) === coordinate.estimateLens &&
512
+ baseline.requestedCurrencyCode === coordinate.requestedCurrencyCode;
513
+ /** Proves that composition membership and money reconcile to exact V2 baseline envelopes. */
514
+ export const isCurrentSpendCompositionCompatibleV1 = (composition, baselines) => {
515
+ if (!isCurrentSpendCompositionV1(composition) ||
516
+ !Array.isArray(baselines) ||
517
+ baselines.length !== composition.members.length ||
518
+ baselines.length > FINANCIAL_DATAFLOW_LIMITS_V1.maximumMembers ||
519
+ !baselines.every(isFinancialScopeBaselineEnvelopeV2)) {
520
+ return false;
521
+ }
522
+ const typedBaselines = baselines;
523
+ const baselineByScopeId = new Map(typedBaselines.map(baseline => [baseline.scopeId, baseline]));
524
+ if (baselineByScopeId.size !== typedBaselines.length ||
525
+ new Set(typedBaselines.filter(baseline => baseline.status === 'available').map(baseline => baseline.baselineId)).size !==
526
+ typedBaselines.filter(baseline => baseline.status === 'available').length) {
527
+ return false;
528
+ }
529
+ const includedAmounts = [];
530
+ const expectedReasonCodes = new Set();
531
+ for (const member of composition.members) {
532
+ const baseline = baselineByScopeId.get(member.memberScopeId);
533
+ if (baseline === undefined || !hasCompatibleBaselineCoordinate(composition.coordinate, baseline))
534
+ return false;
535
+ if (member.status === 'included') {
536
+ if (baseline.status !== 'available' || member.baselineId !== baseline.baselineId)
537
+ return false;
538
+ if (composition.coordinate.accountingCurrency.status === 'resolved' &&
539
+ baseline.total.currencyCode !== composition.coordinate.accountingCurrency.currencyCode) {
540
+ return false;
541
+ }
542
+ includedAmounts.push(baseline.total.amount);
543
+ if (baseline.status === 'available' && !isCompleteFinancialBaselinePeriodV2(baseline.period)) {
544
+ expectedReasonCodes.add('coverage-incomplete');
545
+ }
546
+ continue;
547
+ }
548
+ if (baseline.status !== 'unavailable' || member.reasonCode !== baseline.unavailableReason)
549
+ return false;
550
+ expectedReasonCodes.add(baseline.unavailableReason);
551
+ }
552
+ if (composition.coordinate.accountingCurrency.status === 'unresolved') {
553
+ expectedReasonCodes.add(composition.coordinate.accountingCurrency.reasonCode);
554
+ }
555
+ const hasExpectedReasonCodes = (reasonCodes) => reasonCodes.length === expectedReasonCodes.size && reasonCodes.every(reasonCode => expectedReasonCodes.has(reasonCode));
556
+ if (composition.coordinate.accountingCurrency.status === 'unresolved') {
557
+ return composition.amount.status === 'unavailable' && hasExpectedReasonCodes(composition.amount.reasonCodes);
558
+ }
559
+ if (includedAmounts.length === 0) {
560
+ return composition.amount.status === 'unavailable' && hasExpectedReasonCodes(composition.amount.reasonCodes);
561
+ }
562
+ let includedTotal;
563
+ try {
564
+ includedTotal = formatExactDecimalValue(sumCanonicalDecimals(includedAmounts));
565
+ }
566
+ catch {
567
+ return false;
568
+ }
569
+ if (includedAmounts.length === composition.members.length && expectedReasonCodes.size === 0) {
570
+ return composition.amount.status === 'available' && composition.amount.amount === includedTotal;
571
+ }
572
+ return (composition.amount.status === 'partial' &&
573
+ composition.amount.knownAmount === includedTotal &&
574
+ hasExpectedReasonCodes(composition.amount.reasonCodes));
575
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,75 @@
1
+ import { sha256Utf8 } from '../common/sha256.js';
2
+ const SHA256_ID = /^sha256:[0-9a-f]{64}$/;
3
+ const DISPLAY_LABEL_SOURCES = new Set(['meter-name', 'product-name', 'meter-subcategory', 'meter-category', 'service-name', 'charge-classification']);
4
+ const ROLLUP_LABEL_SOURCES = new Set(['service-name', 'meter-category', 'charge-classification']);
5
+ const isRecord = (value) => value !== null && typeof value === 'object' && !Array.isArray(value);
6
+ const hasExactFields = (value, required, optional = []) => {
7
+ const allowed = new Set([...required, ...optional]);
8
+ const keys = Object.keys(value);
9
+ return required.every(field => Object.prototype.hasOwnProperty.call(value, field)) && keys.every(field => allowed.has(field));
10
+ };
11
+ const isHash = (value) => typeof value === 'string' && SHA256_ID.test(value);
12
+ const isBoundedText = (value, maxLength = 512) => typeof value === 'string' && value.length > 0 && value.length <= maxLength && value.trim() === value;
13
+ const isHashArray = (value) => Array.isArray(value) && value.length > 0 && value.length <= 256 && value.every(isHash) && new Set(value).size === value.length;
14
+ const labelSourceValue = (value) => {
15
+ switch (value.displayLabelSource) {
16
+ case 'meter-name':
17
+ return value.meterName;
18
+ case 'product-name':
19
+ return value.productName;
20
+ case 'meter-subcategory':
21
+ return value.meterSubCategory;
22
+ case 'meter-category':
23
+ return value.meterCategory;
24
+ case 'service-name':
25
+ return value.serviceName;
26
+ case 'charge-classification':
27
+ return undefined;
28
+ }
29
+ };
30
+ export const isFinancialAuthorityComponentDescriptorV1 = (value) => {
31
+ if (!isRecord(value) ||
32
+ !hasExactFields(value, ['baselineId', 'componentId', 'displayLabel', 'displayLabelSource', 'evidenceRefIds'], ['serviceName', 'meterCategory', 'meterSubCategory', 'meterName', 'productName', 'unitOfMeasure']) ||
33
+ !isHash(value.baselineId) ||
34
+ !isHash(value.componentId) ||
35
+ !isBoundedText(value.displayLabel) ||
36
+ typeof value.displayLabelSource !== 'string' ||
37
+ !DISPLAY_LABEL_SOURCES.has(value.displayLabelSource) ||
38
+ !isHashArray(value.evidenceRefIds) ||
39
+ ['serviceName', 'meterCategory', 'meterSubCategory', 'meterName', 'productName', 'unitOfMeasure'].some(field => value[field] !== undefined && !isBoundedText(value[field])))
40
+ return false;
41
+ const descriptor = value;
42
+ const sourceValue = labelSourceValue(descriptor);
43
+ return descriptor.displayLabelSource === 'charge-classification' || sourceValue === descriptor.displayLabel;
44
+ };
45
+ const canonicalRollupPreimage = (value) => ({
46
+ displayScopeId: value.displayScopeId,
47
+ purpose: value.purpose,
48
+ additivity: value.additivity,
49
+ displayLabel: value.displayLabel,
50
+ displayLabelSource: value.displayLabelSource,
51
+ members: [...value.members].sort((left, right) => `${left.baselineId}\u0000${left.componentId}`.localeCompare(`${right.baselineId}\u0000${right.componentId}`)),
52
+ });
53
+ export const createFinancialDisplayRollupIdV1 = (value) => `sha256:${sha256Utf8(JSON.stringify(canonicalRollupPreimage(value)))}`;
54
+ export const isFinancialDisplayRollupV1 = (value) => {
55
+ if (!isRecord(value) ||
56
+ !hasExactFields(value, ['displayRollupId', 'displayScopeId', 'purpose', 'additivity', 'displayLabel', 'displayLabelSource', 'members']) ||
57
+ !isHash(value.displayRollupId) ||
58
+ !isBoundedText(value.displayScopeId, 2048) ||
59
+ value.purpose !== 'cost-composition' ||
60
+ value.additivity !== 'non-additive' ||
61
+ !isBoundedText(value.displayLabel) ||
62
+ typeof value.displayLabelSource !== 'string' ||
63
+ !ROLLUP_LABEL_SOURCES.has(value.displayLabelSource) ||
64
+ !Array.isArray(value.members) ||
65
+ value.members.length === 0 ||
66
+ value.members.length > 20000 ||
67
+ !value.members.every(member => isRecord(member) && hasExactFields(member, ['baselineId', 'componentId']) && isHash(member.baselineId) && isHash(member.componentId)))
68
+ return false;
69
+ const rollup = value;
70
+ const membershipKeys = rollup.members.map(member => `${member.baselineId}\u0000${member.componentId}`);
71
+ if (new Set(membershipKeys).size !== membershipKeys.length)
72
+ return false;
73
+ const { displayRollupId: _displayRollupId, ...identity } = rollup;
74
+ return rollup.displayRollupId === createFinancialDisplayRollupIdV1(identity);
75
+ };