@spottoai/types-package 1.0.2-beta.26 → 1.0.2-beta.261

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 (249) hide show
  1. package/LICENSE +18 -40
  2. package/README.md +4 -13
  3. package/dist/accounts/accounts.d.ts +144 -2
  4. package/dist/accounts/accounts.d.ts.map +1 -1
  5. package/dist/accounts/accounts.js +13 -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 +64 -0
  16. package/dist/accounts/readPermissions.d.ts.map +1 -0
  17. package/dist/accounts/readPermissions.js +148 -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 +34 -0
  24. package/dist/accounts/writePermissions.d.ts.map +1 -0
  25. package/dist/accounts/writePermissions.js +37 -0
  26. package/dist/accounts/writePermissions.js.map +1 -0
  27. package/dist/ai/index.d.ts +994 -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/azure/activityLogs.d.ts +65 -0
  32. package/dist/azure/activityLogs.d.ts.map +1 -0
  33. package/dist/azure/activityLogs.js +6 -0
  34. package/dist/azure/activityLogs.js.map +1 -0
  35. package/dist/azure/benefits.d.ts +137 -0
  36. package/dist/azure/benefits.d.ts.map +1 -0
  37. package/dist/azure/benefits.js +3 -0
  38. package/dist/azure/benefits.js.map +1 -0
  39. package/dist/azure/billingPlots.d.ts +249 -0
  40. package/dist/azure/billingPlots.d.ts.map +1 -0
  41. package/dist/azure/billingPlots.js +6 -0
  42. package/dist/azure/billingPlots.js.map +1 -0
  43. package/dist/azure/budgets.d.ts +4 -0
  44. package/dist/azure/budgets.d.ts.map +1 -1
  45. package/dist/azure/commitmentsPlanning.d.ts +586 -0
  46. package/dist/azure/commitmentsPlanning.d.ts.map +1 -0
  47. package/dist/azure/commitmentsPlanning.js +3 -0
  48. package/dist/azure/commitmentsPlanning.js.map +1 -0
  49. package/dist/azure/common.d.ts +44 -0
  50. package/dist/azure/common.d.ts.map +1 -1
  51. package/dist/azure/configs.d.ts +75 -2
  52. package/dist/azure/configs.d.ts.map +1 -1
  53. package/dist/azure/costEstimation.d.ts +78 -0
  54. package/dist/azure/costEstimation.d.ts.map +1 -0
  55. package/dist/azure/costEstimation.js +3 -0
  56. package/dist/azure/costEstimation.js.map +1 -0
  57. package/dist/azure/governance.d.ts +826 -0
  58. package/dist/azure/governance.d.ts.map +1 -0
  59. package/dist/azure/governance.js +14 -0
  60. package/dist/azure/governance.js.map +1 -0
  61. package/dist/azure/metrics.d.ts +81 -4
  62. package/dist/azure/metrics.d.ts.map +1 -1
  63. package/dist/azure/payloads.d.ts +147 -1
  64. package/dist/azure/payloads.d.ts.map +1 -1
  65. package/dist/azure/prices.d.ts +177 -0
  66. package/dist/azure/prices.d.ts.map +1 -1
  67. package/dist/azure/publicIpAddresses.d.ts +171 -0
  68. package/dist/azure/publicIpAddresses.d.ts.map +1 -0
  69. package/dist/azure/publicIpAddresses.js +6 -0
  70. package/dist/azure/publicIpAddresses.js.map +1 -0
  71. package/dist/azure/recommendationAudit.d.ts +113 -0
  72. package/dist/azure/recommendationAudit.d.ts.map +1 -0
  73. package/dist/azure/recommendationAudit.js +10 -0
  74. package/dist/azure/recommendationAudit.js.map +1 -0
  75. package/dist/azure/recommendationState.d.ts +93 -4
  76. package/dist/azure/recommendationState.d.ts.map +1 -1
  77. package/dist/azure/recommendationWorkflow.d.ts +124 -0
  78. package/dist/azure/recommendationWorkflow.d.ts.map +1 -0
  79. package/dist/azure/recommendationWorkflow.js +15 -0
  80. package/dist/azure/recommendationWorkflow.js.map +1 -0
  81. package/dist/azure/recommendations.d.ts +537 -6
  82. package/dist/azure/recommendations.d.ts.map +1 -1
  83. package/dist/azure/recommendations.js.map +1 -1
  84. package/dist/azure/relationships.d.ts +193 -0
  85. package/dist/azure/relationships.d.ts.map +1 -0
  86. package/dist/azure/relationships.js +6 -0
  87. package/dist/azure/relationships.js.map +1 -0
  88. package/dist/azure/reports.d.ts +279 -1
  89. package/dist/azure/reports.d.ts.map +1 -1
  90. package/dist/azure/reports.js +13 -0
  91. package/dist/azure/reports.js.map +1 -1
  92. package/dist/azure/resources.d.ts +80 -0
  93. package/dist/azure/resources.d.ts.map +1 -1
  94. package/dist/azure/reviewChecklist.d.ts +139 -0
  95. package/dist/azure/reviewChecklist.d.ts.map +1 -0
  96. package/dist/azure/reviewChecklist.js +3 -0
  97. package/dist/azure/reviewChecklist.js.map +1 -0
  98. package/dist/azure/security.d.ts +15 -1
  99. package/dist/azure/security.d.ts.map +1 -1
  100. package/dist/azure/serviceRetirement.d.ts +28 -0
  101. package/dist/azure/serviceRetirement.d.ts.map +1 -0
  102. package/dist/azure/serviceRetirement.js +3 -0
  103. package/dist/azure/serviceRetirement.js.map +1 -0
  104. package/dist/azure/serviceRetirementState.d.ts +22 -0
  105. package/dist/azure/serviceRetirementState.d.ts.map +1 -0
  106. package/dist/azure/serviceRetirementState.js +3 -0
  107. package/dist/azure/serviceRetirementState.js.map +1 -0
  108. package/dist/azure/storage-inventory.d.ts +241 -0
  109. package/dist/azure/storage-inventory.d.ts.map +1 -0
  110. package/dist/azure/storage-inventory.js +3 -0
  111. package/dist/azure/storage-inventory.js.map +1 -0
  112. package/dist/azure/subscriptions.d.ts +37 -13
  113. package/dist/azure/subscriptions.d.ts.map +1 -1
  114. package/dist/azure/views.d.ts +532 -4
  115. package/dist/azure/views.d.ts.map +1 -1
  116. package/dist/common/index.d.ts +1 -0
  117. package/dist/common/index.d.ts.map +1 -1
  118. package/dist/common/index.js +1 -0
  119. package/dist/common/index.js.map +1 -1
  120. package/dist/common/pagination.d.ts +3 -0
  121. package/dist/common/pagination.d.ts.map +1 -1
  122. package/dist/common/provider.d.ts +9 -0
  123. package/dist/common/provider.d.ts.map +1 -0
  124. package/dist/common/provider.js +9 -0
  125. package/dist/common/provider.js.map +1 -0
  126. package/dist/company/billingAccount.d.ts +30 -0
  127. package/dist/company/billingAccount.d.ts.map +1 -0
  128. package/dist/company/billingAccount.js +3 -0
  129. package/dist/company/billingAccount.js.map +1 -0
  130. package/dist/company/company.d.ts +60 -1
  131. package/dist/company/company.d.ts.map +1 -1
  132. package/dist/company/companyHierarchy.d.ts +53 -0
  133. package/dist/company/companyHierarchy.d.ts.map +1 -0
  134. package/dist/company/companyHierarchy.js +3 -0
  135. package/dist/company/companyHierarchy.js.map +1 -0
  136. package/dist/company/index.d.ts +2 -0
  137. package/dist/company/index.d.ts.map +1 -1
  138. package/dist/company/index.js +2 -0
  139. package/dist/company/index.js.map +1 -1
  140. package/dist/company/notification.d.ts +34 -1
  141. package/dist/company/notification.d.ts.map +1 -1
  142. package/dist/company/notification.js +27 -12
  143. package/dist/company/notification.js.map +1 -1
  144. package/dist/company/survey.d.ts +3 -0
  145. package/dist/company/survey.d.ts.map +1 -1
  146. package/dist/events/alertDefinitionRun.d.ts +23 -0
  147. package/dist/events/alertDefinitionRun.d.ts.map +1 -0
  148. package/dist/events/alertDefinitionRun.js +3 -0
  149. package/dist/events/alertDefinitionRun.js.map +1 -0
  150. package/dist/events/baseAlert.d.ts +130 -0
  151. package/dist/events/baseAlert.d.ts.map +1 -0
  152. package/dist/events/baseAlert.js +3 -0
  153. package/dist/events/baseAlert.js.map +1 -0
  154. package/dist/events/cost.d.ts +361 -0
  155. package/dist/events/cost.d.ts.map +1 -0
  156. package/dist/events/cost.js +3 -0
  157. package/dist/events/cost.js.map +1 -0
  158. package/dist/events/costAnomalies.d.ts +47 -0
  159. package/dist/events/costAnomalies.d.ts.map +1 -0
  160. package/dist/events/costAnomalies.js +3 -0
  161. package/dist/events/costAnomalies.js.map +1 -0
  162. package/dist/events/costViews.d.ts +23 -0
  163. package/dist/events/costViews.d.ts.map +1 -0
  164. package/dist/events/costViews.js +3 -0
  165. package/dist/events/costViews.js.map +1 -0
  166. package/dist/events/eventStatus.d.ts +67 -0
  167. package/dist/events/eventStatus.d.ts.map +1 -0
  168. package/dist/events/eventStatus.js +3 -0
  169. package/dist/events/eventStatus.js.map +1 -0
  170. package/dist/events/index.d.ts +7 -0
  171. package/dist/events/index.d.ts.map +1 -0
  172. package/dist/events/index.js +23 -0
  173. package/dist/events/index.js.map +1 -0
  174. package/dist/features-and-permissions/access.d.ts +137 -0
  175. package/dist/features-and-permissions/access.d.ts.map +1 -0
  176. package/dist/features-and-permissions/access.js +3 -0
  177. package/dist/features-and-permissions/access.js.map +1 -0
  178. package/dist/features-and-permissions/index.d.ts +2 -0
  179. package/dist/features-and-permissions/index.d.ts.map +1 -0
  180. package/dist/features-and-permissions/index.js +18 -0
  181. package/dist/features-and-permissions/index.js.map +1 -0
  182. package/dist/feedbacks/feedback.d.ts +9 -0
  183. package/dist/feedbacks/feedback.d.ts.map +1 -1
  184. package/dist/identity/apikey.d.ts +84 -0
  185. package/dist/identity/apikey.d.ts.map +1 -0
  186. package/dist/identity/apikey.js +3 -0
  187. package/dist/identity/apikey.js.map +1 -0
  188. package/dist/identity/index.d.ts +2 -0
  189. package/dist/identity/index.d.ts.map +1 -0
  190. package/dist/identity/index.js +18 -0
  191. package/dist/identity/index.js.map +1 -0
  192. package/dist/index.d.ts +21 -0
  193. package/dist/index.d.ts.map +1 -1
  194. package/dist/index.js +21 -1
  195. package/dist/index.js.map +1 -1
  196. package/dist/index.vite.d.ts +41 -0
  197. package/dist/index.vite.d.ts.map +1 -0
  198. package/dist/index.vite.js +57 -0
  199. package/dist/index.vite.js.map +1 -0
  200. package/dist/integrations/autotask.d.ts +90 -0
  201. package/dist/integrations/autotask.d.ts.map +1 -0
  202. package/dist/integrations/autotask.js +3 -0
  203. package/dist/integrations/autotask.js.map +1 -0
  204. package/dist/integrations/azureDevOps.d.ts +130 -0
  205. package/dist/integrations/azureDevOps.d.ts.map +1 -0
  206. package/dist/integrations/azureDevOps.js +3 -0
  207. package/dist/integrations/azureDevOps.js.map +1 -0
  208. package/dist/integrations/github.d.ts +96 -0
  209. package/dist/integrations/github.d.ts.map +1 -0
  210. package/dist/integrations/github.js +3 -0
  211. package/dist/integrations/github.js.map +1 -0
  212. package/dist/integrations/halo.d.ts +76 -0
  213. package/dist/integrations/halo.d.ts.map +1 -0
  214. package/dist/integrations/halo.js +3 -0
  215. package/dist/integrations/halo.js.map +1 -0
  216. package/dist/integrations/index.d.ts +6 -0
  217. package/dist/integrations/index.d.ts.map +1 -0
  218. package/dist/integrations/index.js +22 -0
  219. package/dist/integrations/index.js.map +1 -0
  220. package/dist/integrations/integrationTickets.d.ts +67 -0
  221. package/dist/integrations/integrationTickets.d.ts.map +1 -0
  222. package/dist/integrations/integrationTickets.js +3 -0
  223. package/dist/integrations/integrationTickets.js.map +1 -0
  224. package/dist/scheduler/index.d.ts +2 -0
  225. package/dist/scheduler/index.d.ts.map +1 -0
  226. package/dist/scheduler/index.js +18 -0
  227. package/dist/scheduler/index.js.map +1 -0
  228. package/dist/scheduler/scheduler.d.ts +257 -0
  229. package/dist/scheduler/scheduler.d.ts.map +1 -0
  230. package/dist/scheduler/scheduler.js +3 -0
  231. package/dist/scheduler/scheduler.js.map +1 -0
  232. package/dist/tags/index.d.ts +2 -0
  233. package/dist/tags/index.d.ts.map +1 -0
  234. package/dist/tags/index.js +18 -0
  235. package/dist/tags/index.js.map +1 -0
  236. package/dist/tags/tags.d.ts +37 -0
  237. package/dist/tags/tags.d.ts.map +1 -0
  238. package/dist/tags/tags.js +10 -0
  239. package/dist/tags/tags.js.map +1 -0
  240. package/dist/unknown/services.d.ts +12 -0
  241. package/dist/unknown/services.d.ts.map +1 -0
  242. package/dist/unknown/services.js +3 -0
  243. package/dist/unknown/services.js.map +1 -0
  244. package/dist/users/companyUser.d.ts +6 -0
  245. package/dist/users/companyUser.d.ts.map +1 -1
  246. package/dist/users/companyUser.js.map +1 -1
  247. package/dist/users/user.d.ts +16 -1
  248. package/dist/users/user.d.ts.map +1 -1
  249. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"recommendations.js","sourceRoot":"","sources":["../../src/azure/recommendations.ts"],"names":[],"mappings":";;;AAGA,IAAY,sBAQX;AARD,WAAY,sBAAsB;IAChC,uCAAa,CAAA;IACb,qDAA2B,CAAA;IAC3B,qDAA2B,CAAA;IAC3B,+CAAqB,CAAA;IACrB,mDAAyB,CAAA;IACzB,yEAA+C,CAAA;IAC/C,qFAA2D,CAAA;AAC7D,CAAC,EARW,sBAAsB,sCAAtB,sBAAsB,QAQjC"}
1
+ {"version":3,"file":"recommendations.js","sourceRoot":"","sources":["../../src/azure/recommendations.ts"],"names":[],"mappings":";;;AAUA,IAAY,sBAQX;AARD,WAAY,sBAAsB;IAChC,uCAAa,CAAA;IACb,qDAA2B,CAAA;IAC3B,qDAA2B,CAAA;IAC3B,+CAAqB,CAAA;IACrB,mDAAyB,CAAA;IACzB,yEAA+C,CAAA;IAC/C,qFAA2D,CAAA;AAC7D,CAAC,EARW,sBAAsB,sCAAtB,sBAAsB,QAQjC"}
@@ -0,0 +1,193 @@
1
+ export type RelationshipSnapshotNodeKind = 'subscription' | 'resourceGroup' | 'resource' | 'location' | 'availabilityZone' | 'managementGroup';
2
+ export type RelationshipSnapshotEdgeKind = 'contains' | 'depends_on';
3
+ export interface RelationshipSnapshotCostOverlay {
4
+ spend30d?: number;
5
+ spend30dAmortized?: number;
6
+ }
7
+ export interface RelationshipSnapshotNodeData {
8
+ resourceGroup?: string;
9
+ name?: string;
10
+ type?: string;
11
+ location?: string;
12
+ tags?: Record<string, string>;
13
+ placeholder?: boolean;
14
+ displayName?: string;
15
+ icon?: string;
16
+ label1?: string;
17
+ label2?: string;
18
+ label3?: string;
19
+ properties?: Record<string, unknown>;
20
+ }
21
+ export interface RelationshipSnapshotNode {
22
+ id: string;
23
+ kind: RelationshipSnapshotNodeKind;
24
+ data: RelationshipSnapshotNodeData;
25
+ cost?: RelationshipSnapshotCostOverlay;
26
+ }
27
+ export interface RelationshipSnapshotEdgeEvidence {
28
+ method: string;
29
+ ruleName?: string;
30
+ propertyPath?: string;
31
+ matchedValue?: string;
32
+ }
33
+ export interface RelationshipSnapshotEdge {
34
+ id: string;
35
+ from: string;
36
+ to: string;
37
+ kind: RelationshipSnapshotEdgeKind;
38
+ relationshipTypes: string[];
39
+ confidence: number;
40
+ evidence: RelationshipSnapshotEdgeEvidence[];
41
+ costImpact?: {
42
+ type: 'full' | 'partial' | 'indirect' | 'none';
43
+ weight?: number;
44
+ category?: string;
45
+ description?: string;
46
+ };
47
+ }
48
+ export interface UnresolvedRelationshipReference {
49
+ sourceId: string;
50
+ ruleName?: string;
51
+ propertyPath?: string;
52
+ value: string;
53
+ resolverTried?: string;
54
+ reason?: string;
55
+ }
56
+ export interface RelationshipSnapshotStats {
57
+ totalNodes: number;
58
+ totalEdges: number;
59
+ unresolvedCount: number;
60
+ buildMs: number;
61
+ unresolvedTruncated?: boolean;
62
+ edgesTruncated?: boolean;
63
+ edgesDroppedCount?: number;
64
+ snapshotBytes?: number;
65
+ }
66
+ export interface RelationshipSnapshot {
67
+ schemaVersion: 1;
68
+ generatedAt: string;
69
+ subscriptionId: string;
70
+ currency?: string;
71
+ currencySymbol?: string;
72
+ nodes: RelationshipSnapshotNode[];
73
+ edges: RelationshipSnapshotEdge[];
74
+ unresolved: UnresolvedRelationshipReference[];
75
+ stats: RelationshipSnapshotStats;
76
+ }
77
+ export declare const RELATIONSHIP_GRAPH_MANIFEST_SCHEMA_VERSION = 1;
78
+ export declare const RELATIONSHIP_GRAPH_INDEX_SCHEMA_VERSION = 1;
79
+ export type RelationshipGraphServingMode = 'full' | 'partitioned';
80
+ export type RelationshipGraphArtifactPath = string;
81
+ export type RelationshipSubgraphScopeType = 'overview' | 'subscription' | 'resourceGroup' | 'resource' | 'network';
82
+ export type RelationshipSubgraphViewMode = 'architectural' | 'network' | 'security' | 'cost' | 'relationships' | 'resource-detail' | 'overview';
83
+ export interface RelationshipGraphPartitionThresholds {
84
+ nodes: number;
85
+ edges: number;
86
+ snapshotBytes: number;
87
+ }
88
+ export interface RelationshipGraphManifestStats {
89
+ nodes: number;
90
+ edges: number;
91
+ unresolvedCount?: number;
92
+ buildMs?: number;
93
+ snapshotBytes?: number;
94
+ }
95
+ export interface RelationshipGraphEntrypoints {
96
+ full: RelationshipGraphArtifactPath;
97
+ index?: RelationshipGraphArtifactPath;
98
+ overview?: RelationshipGraphArtifactPath;
99
+ resourceGroupTemplate?: RelationshipGraphArtifactPath;
100
+ resourceTemplate?: RelationshipGraphArtifactPath;
101
+ networkTemplate?: RelationshipGraphArtifactPath;
102
+ }
103
+ export interface RelationshipGraphManifest {
104
+ schemaVersion: typeof RELATIONSHIP_GRAPH_MANIFEST_SCHEMA_VERSION;
105
+ subscriptionId: string;
106
+ generatedAt: string;
107
+ snapshotId: string;
108
+ mode: RelationshipGraphServingMode;
109
+ stats: RelationshipGraphManifestStats;
110
+ entrypoints: RelationshipGraphEntrypoints;
111
+ thresholds?: RelationshipGraphPartitionThresholds;
112
+ currency?: string;
113
+ currencySymbol?: string;
114
+ }
115
+ export interface RelationshipGraphSourceSnapshot {
116
+ schemaVersion: RelationshipSnapshot['schemaVersion'];
117
+ subscriptionId: string;
118
+ generatedAt: string;
119
+ snapshotId: string;
120
+ path: RelationshipGraphArtifactPath;
121
+ stats: RelationshipGraphManifestStats;
122
+ }
123
+ export interface RelationshipSubgraphScope {
124
+ type: RelationshipSubgraphScopeType;
125
+ subscriptionId: string;
126
+ rootNodeId?: string;
127
+ resourceGroup?: string;
128
+ viewMode?: RelationshipSubgraphViewMode;
129
+ maxHops?: number;
130
+ }
131
+ export interface RelationshipSubgraphReturnedStats {
132
+ nodes: number;
133
+ edges: number;
134
+ omittedNodes: number;
135
+ omittedEdges: number;
136
+ snapshotBytes?: number;
137
+ }
138
+ export interface RelationshipSubgraphBreadcrumbItem {
139
+ id: string;
140
+ label: string;
141
+ level?: number;
142
+ subscriptionId?: string;
143
+ resourceGroup?: string;
144
+ resourceType?: string;
145
+ }
146
+ export type RelationshipSubgraphSummaryKind = 'hiddenChildren' | 'hiddenEdges' | 'resourceTypeGroup' | 'resourceGroup' | 'networkGroup' | 'externalReferences';
147
+ export interface RelationshipSubgraphSummary {
148
+ id: string;
149
+ kind: RelationshipSubgraphSummaryKind;
150
+ parentId?: string;
151
+ label?: string;
152
+ count: number;
153
+ nextCursor?: string;
154
+ }
155
+ export interface RelationshipSubgraphSnapshot extends RelationshipSnapshot {
156
+ scope: RelationshipSubgraphScope;
157
+ sourceSnapshot: RelationshipGraphSourceSnapshot;
158
+ fullGraphStats: RelationshipGraphManifestStats;
159
+ returnedStats: RelationshipSubgraphReturnedStats;
160
+ breadcrumbs?: RelationshipSubgraphBreadcrumbItem[];
161
+ summaries?: RelationshipSubgraphSummary[];
162
+ }
163
+ export interface RelationshipGraphIndexNode {
164
+ id: string;
165
+ kind: RelationshipSnapshotNodeKind;
166
+ subscriptionId?: string;
167
+ resourceGroup?: string;
168
+ resourceType?: string;
169
+ location?: string;
170
+ parentIds?: string[];
171
+ childIds?: string[];
172
+ neighborIds?: string[];
173
+ subgraphs?: Partial<Record<RelationshipSubgraphScopeType, RelationshipGraphArtifactPath>>;
174
+ }
175
+ export interface RelationshipGraphIndexScope {
176
+ id: string;
177
+ type: RelationshipSubgraphScopeType;
178
+ path: RelationshipGraphArtifactPath;
179
+ title?: string;
180
+ rootNodeId?: string;
181
+ resourceGroup?: string;
182
+ stats: RelationshipSubgraphReturnedStats;
183
+ }
184
+ export interface RelationshipGraphIndex {
185
+ schemaVersion: typeof RELATIONSHIP_GRAPH_INDEX_SCHEMA_VERSION;
186
+ subscriptionId: string;
187
+ generatedAt: string;
188
+ snapshotId: string;
189
+ sourceSnapshot: RelationshipGraphSourceSnapshot;
190
+ nodes: RelationshipGraphIndexNode[];
191
+ scopes: RelationshipGraphIndexScope[];
192
+ }
193
+ //# sourceMappingURL=relationships.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationships.d.ts","sourceRoot":"","sources":["../../src/azure/relationships.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RELATIONSHIP_GRAPH_INDEX_SCHEMA_VERSION = exports.RELATIONSHIP_GRAPH_MANIFEST_SCHEMA_VERSION = void 0;
4
+ exports.RELATIONSHIP_GRAPH_MANIFEST_SCHEMA_VERSION = 1;
5
+ exports.RELATIONSHIP_GRAPH_INDEX_SCHEMA_VERSION = 1;
6
+ //# sourceMappingURL=relationships.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relationships.js","sourceRoot":"","sources":["../../src/azure/relationships.ts"],"names":[],"mappings":";;;AAsFa,QAAA,0CAA0C,GAAG,CAAC,CAAC;AAE/C,QAAA,uCAAuC,GAAG,CAAC,CAAC"}
@@ -1,14 +1,64 @@
1
+ import { Tags } from '../tags';
1
2
  export interface DecompositionTreeNode {
3
+ [key: string]: unknown;
4
+ id?: string;
5
+ /** e.g., "Resource Group A", "Storage", "Standard Page Blob v2", "Storage Account", "mystorageaccount" */
2
6
  name: string;
3
7
  cost: number;
4
8
  costAmortized?: number;
5
9
  costPrevious?: number;
6
10
  costAmortizedPrevious?: number;
11
+ /** e.g., 80.5 (for 80.5%) */
7
12
  percentageOfTotal: number;
13
+ /** Absolute change from previous period */
8
14
  costChange?: number;
15
+ /** Percentage change from previous period */
9
16
  costChangePercent?: number;
10
17
  children?: DecompositionTreeNode[];
11
- totalSpend: number;
18
+ /** Total spend at this level (for percentage calculation) */
19
+ totalSpend?: number;
20
+ totalSpendAmortized?: number;
21
+ totalSpendPrevious?: number;
22
+ totalSpendAmortizedPrevious?: number;
23
+ displayName?: string;
24
+ nodePath?: string;
25
+ expanded?: boolean;
26
+ collapsed?: boolean;
27
+ hasChildren?: boolean;
28
+ forceCollapsedView?: boolean;
29
+ subscriptionId?: string;
30
+ dataSource?: string;
31
+ actualShare?: number;
32
+ estimatedShare?: number;
33
+ estimationMethod?: string;
34
+ pricingSource?: string;
35
+ metricsInput?: Record<string, unknown>;
36
+ unitRates?: Record<string, number>;
37
+ metadata?: Record<string, unknown>;
38
+ blendedComponents?: unknown;
39
+ /** Analysis of why costs changed (only present on leaf nodes) */
40
+ changeAnalysis?: CostChangeAnalysis;
41
+ /** Only present on leaf nodes (individual resources) */
42
+ meterDetails?: MeterDetail[];
43
+ tags?: Record<string, string>;
44
+ spottoTags?: Tags;
45
+ resourceId?: string;
46
+ }
47
+ export interface MeterDetail {
48
+ /** "P1 v3 App" */
49
+ meter: string;
50
+ /** "Azure App Service" */
51
+ meterCategory: string;
52
+ /** "Premium Plan" */
53
+ meterSubCategory: string;
54
+ /** 24 (hours, GB, etc.) */
55
+ quantity: number;
56
+ /** 12.721536 */
57
+ cost: number;
58
+ /** 12.721536 */
59
+ costAmortized: number;
60
+ /** cost / quantity = rate per unit */
61
+ unitCost?: number;
12
62
  }
13
63
  export interface DecompositionTree {
14
64
  root: DecompositionTreeNode;
@@ -24,15 +74,243 @@ export interface DecompositionTree {
24
74
  totalSpendAmortizedPrevious?: number;
25
75
  currency: string;
26
76
  currencySymbol: string;
77
+ version?: string;
78
+ }
79
+ export interface EstimationTree extends DecompositionTree {
80
+ dataSource: 'estimated' | 'blended' | 'actual' | 'metrics_pricing';
81
+ coveragePercent?: number;
82
+ confidence?: number;
83
+ actualShare?: number;
84
+ estimatedShare?: number;
85
+ billingReconciliationStatus?: 'pending' | 'matched' | 'mismatch';
86
+ actualArrivedAt?: string;
87
+ lastActualCoverageAt?: string;
88
+ reconciledAt?: string;
89
+ root: EstimationTreeNode;
90
+ }
91
+ export interface EstimationDetailComponent {
92
+ method?: string;
93
+ dataSource?: 'estimated' | 'actual' | 'blended' | 'metrics_pricing';
94
+ pricingSource?: 'billing' | 'retail' | 'manual' | string;
95
+ formula?: string;
96
+ inputs?: {
97
+ coverageDays?: number;
98
+ missingDays?: number;
99
+ missingFactor?: number;
100
+ metricsInput?: Record<string, unknown>;
101
+ [key: string]: unknown;
102
+ };
103
+ rates?: Record<string, number>;
104
+ output?: {
105
+ actualCost?: number;
106
+ estimatedCost?: number;
107
+ estimatedCostByMetrics?: number;
108
+ estimatedCostByMA?: number;
109
+ totalCost?: number;
110
+ [key: string]: unknown;
111
+ };
112
+ [key: string]: unknown;
113
+ }
114
+ export interface EstimationNodeDetails {
115
+ version?: number;
116
+ dataSource?: 'estimated' | 'actual' | 'blended' | 'metrics_pricing';
117
+ actualShare?: number;
118
+ estimatedShare?: number;
119
+ componentCount?: number;
120
+ components?: EstimationDetailComponent[];
121
+ [key: string]: unknown;
122
+ }
123
+ export interface EstimationTreeNode extends DecompositionTreeNode {
124
+ dataSource?: 'estimated' | 'actual' | 'blended' | 'metrics_pricing';
125
+ coveragePercent?: number;
126
+ coverageDays?: number;
127
+ actualShare?: number;
128
+ estimatedShare?: number;
129
+ confidence?: number;
130
+ serviceCategory?: 'A' | 'B' | 'C' | 'D';
131
+ componentCategory?: 'A' | 'B' | 'C' | 'D';
132
+ metricsInput?: Record<string, unknown>;
133
+ unitRates?: Record<string, number>;
134
+ pricingSource?: 'billing' | 'retail' | 'manual';
135
+ estimationMethod?: string;
136
+ estimatedDays?: string[];
137
+ estimatedDaysSource?: 'metrics' | 'ma7' | 'ma14' | 'ma';
138
+ estimatedDaysBySource?: {
139
+ metrics?: string[];
140
+ ma7?: string[];
141
+ ma14?: string[];
142
+ ma?: string[];
143
+ };
144
+ /** Last day with actual billed cost in the current estimation window */
145
+ billingActualThroughDate?: number;
146
+ /** First estimated day in the current estimation window */
147
+ estimationStartDate?: number;
148
+ /** Last estimated day in the current estimation window */
149
+ estimationEndDate?: number;
150
+ /** Resource lifecycle end date (if known) used to cap estimation */
151
+ resourceLifecycleEndDate?: number;
152
+ /** Detected billing cadence for this node */
153
+ billingCadence?: 'daily' | 'monthly' | 'unknown';
154
+ /** Confidence of billing cadence detection */
155
+ billingCadenceConfidence?: 'high' | 'medium' | 'low';
156
+ /**
157
+ * Type of this node: 'subscription' | 'resourceGroup' | 'provider' | 'service' | 'resource' | 'deployment' | 'component'
158
+ * Helps frontend understand the hierarchy and render appropriately
159
+ */
160
+ nodeType?: 'subscription' | 'resourceGroup' | 'provider' | 'service' | 'resource' | 'deployment' | 'component';
161
+ /**
162
+ * Azure resource type (e.g., "microsoft.cognitiveservices/accounts")
163
+ * Only present on resource nodes and their children
164
+ * Helps frontend determine how to display child nodes
165
+ */
166
+ resourceType?: string;
167
+ /**
168
+ * For deployment/component nodes: identifies the parent resource
169
+ * For resource nodes: same as resourceId
170
+ */
171
+ parentResourceId?: string;
172
+ /**
173
+ * Deployment-specific metadata (only for cognitive services)
174
+ * Frontend can use this to display deployment-level details
175
+ */
176
+ deployment?: string;
177
+ model?: string;
178
+ /**
179
+ * Generic metadata for other resource types
180
+ * Allows extensibility for future resource types with sub-components
181
+ */
182
+ metadata?: {
183
+ estimationDetails?: EstimationNodeDetails;
184
+ [key: string]: unknown;
185
+ };
186
+ blendedComponents?: EstimationTreeNodeBlendedComponent[] | EstimationTreeNodeBlendedComponent;
187
+ children?: EstimationTreeNode[];
188
+ }
189
+ export interface EstimationTreeNodeBlendedComponent {
190
+ componentCategory?: 'A' | 'B' | 'C' | 'D';
191
+ dataSource?: 'estimated' | 'actual' | 'blended' | 'metrics_pricing';
192
+ actualCost: number;
193
+ estimatedCost: number;
194
+ estimatedCostByMetrics?: number;
195
+ estimatedCostByMA?: number;
196
+ coverageDays: number;
197
+ coveragePercent?: number;
198
+ missingDays: number;
199
+ method: string;
200
+ estimationMethod?: string;
201
+ estimatedDays?: string[];
202
+ estimatedDaysSource?: 'metrics' | 'ma7' | 'ma14' | 'ma';
203
+ estimatedDaysBySource?: {
204
+ metrics?: string[];
205
+ ma7?: string[];
206
+ ma14?: string[];
207
+ ma?: string[];
208
+ };
209
+ metricsInput?: Record<string, unknown>;
210
+ unitRates?: Record<string, number>;
211
+ pricingSource?: 'billing' | 'retail' | 'manual';
212
+ actualShare?: number;
213
+ estimatedShare?: number;
214
+ estimationDetails?: EstimationDetailComponent;
27
215
  }
28
216
  export interface DecompositionTreeEntry {
217
+ /** e.g., "2025-01" for calendar month, "2025-01-01_2025-01-31" for billing period */
29
218
  period: string;
30
219
  startDate: string;
31
220
  endDate: string;
32
221
  tree: DecompositionTree;
33
222
  }
34
223
  export interface DecompositionTreeSummary {
224
+ id?: string;
225
+ root?: DecompositionTreeNode;
226
+ currency?: string;
227
+ currencySymbol?: string;
228
+ totalSpend?: number;
229
+ totalSpendAmortized?: number;
230
+ totalSpendPrevious?: number;
231
+ totalSpendAmortizedPrevious?: number;
232
+ version?: string;
35
233
  entries: DecompositionTreeEntry[];
36
234
  lastUpdated: string;
37
235
  }
236
+ /** Type of change detected in cost analysis */
237
+ export type ChangeType = 'increase' | 'decrease' | 'no_change' | 'new_resource' | 'removed_resource';
238
+ /** Specific reason types for cost changes */
239
+ export declare enum ChangeReasonType {
240
+ NEW_RESOURCE = "new_resource",
241
+ REMOVED_RESOURCE = "removed_resource",
242
+ QUANTITY_INCREASE = "quantity_increase",
243
+ QUANTITY_DECREASE = "quantity_decrease",
244
+ RATE_CHANGE = "rate_change",
245
+ SKU_CHANGE = "sku_change",
246
+ NEW_METER = "new_meter",
247
+ REMOVED_METER = "removed_meter"
248
+ }
249
+ export type BillingModifierType = 'reservation' | 'savings_plan' | 'spot' | 'promotion' | 'other';
250
+ export interface BillingModifierDetail {
251
+ type: BillingModifierType;
252
+ name?: string;
253
+ coverageHours?: number;
254
+ coveragePercent?: number;
255
+ previousCoveragePercent?: number;
256
+ coveragePercentDelta?: number;
257
+ notes?: string;
258
+ }
259
+ export interface RateChangeContext {
260
+ previousEffectiveRate?: number;
261
+ currentEffectiveRate?: number;
262
+ previousPaidRate?: number;
263
+ currentPaidRate?: number;
264
+ totalHours?: number;
265
+ paidHours?: number;
266
+ coveredHours?: number;
267
+ previousCoveredHours?: number;
268
+ previousCoveredPercent?: number;
269
+ currentCoveredPercent?: number;
270
+ coverageDeltaPercent?: number;
271
+ modifier?: BillingModifierDetail;
272
+ }
273
+ /** Details about a specific change reason */
274
+ export interface ChangeReasonDetails {
275
+ /** The meter name (e.g., "P1 v3 App") */
276
+ meter?: string;
277
+ /** The meter category (e.g., "Azure App Service") */
278
+ meterCategory?: string;
279
+ /** The meter sub-category */
280
+ meterSubCategory?: string;
281
+ /** Previous value (could be cost, quantity, rate, or SKU name) */
282
+ oldValue?: string | number;
283
+ /** New value (could be cost, quantity, rate, or SKU name) */
284
+ newValue?: string | number;
285
+ /** Human-readable description of the change */
286
+ description: string;
287
+ /** Additional rate-change context (coverage shifts, modifier attribution, etc.) */
288
+ rateContext?: RateChangeContext;
289
+ /** Optional narrative fragments to help surface a story in the UI */
290
+ storyFragments?: string[];
291
+ }
292
+ /** A single reason explaining a cost change */
293
+ export interface ChangeReason {
294
+ /** Type of change */
295
+ type: ChangeReasonType;
296
+ /** Dollar impact of this change (can be positive or negative) */
297
+ impact: number;
298
+ /** Percentage of total change this reason represents */
299
+ impactPercent: number;
300
+ /** Detailed information about the change */
301
+ details: ChangeReasonDetails;
302
+ /** Optional narrative fragments tied to this reason */
303
+ storyFragments?: string[];
304
+ }
305
+ /** Complete analysis of cost changes for a resource */
306
+ export interface CostChangeAnalysis {
307
+ /** Overall type of change */
308
+ changeType: ChangeType;
309
+ /** List of specific reasons for the change, ordered by impact */
310
+ changeReasons: ChangeReason[];
311
+ /** Human-readable summary of the changes */
312
+ summary: string;
313
+ /** Optional narrative fragments surfaced for display */
314
+ storyFragments?: string[];
315
+ }
38
316
  //# sourceMappingURL=reports.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reports.d.ts","sourceRoot":"","sources":["../../src/azure/reports.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,EAAE;QACN,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,iBAAiB,CAAC;KAC/D,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,iBAAiB,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAClC,WAAW,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"reports.d.ts","sourceRoot":"","sources":["../../src/azure/reports.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChangeReasonType = void 0;
4
+ /** Specific reason types for cost changes */
5
+ var ChangeReasonType;
6
+ (function (ChangeReasonType) {
7
+ ChangeReasonType["NEW_RESOURCE"] = "new_resource";
8
+ ChangeReasonType["REMOVED_RESOURCE"] = "removed_resource";
9
+ ChangeReasonType["QUANTITY_INCREASE"] = "quantity_increase";
10
+ ChangeReasonType["QUANTITY_DECREASE"] = "quantity_decrease";
11
+ ChangeReasonType["RATE_CHANGE"] = "rate_change";
12
+ ChangeReasonType["SKU_CHANGE"] = "sku_change";
13
+ ChangeReasonType["NEW_METER"] = "new_meter";
14
+ ChangeReasonType["REMOVED_METER"] = "removed_meter";
15
+ })(ChangeReasonType || (exports.ChangeReasonType = ChangeReasonType = {}));
3
16
  //# sourceMappingURL=reports.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reports.js","sourceRoot":"","sources":["../../src/azure/reports.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"reports.js","sourceRoot":"","sources":["../../src/azure/reports.ts"],"names":[],"mappings":";;;AA6PA,6CAA6C;AAC7C,IAAY,gBASX;AATD,WAAY,gBAAgB;IAC1B,iDAA6B,CAAA;IAC7B,yDAAqC,CAAA;IACrC,2DAAuC,CAAA;IACvC,2DAAuC,CAAA;IACvC,+CAA2B,CAAA;IAC3B,6CAAyB,CAAA;IACzB,2CAAuB,CAAA;IACvB,mDAA+B,CAAA;AACjC,CAAC,EATW,gBAAgB,gCAAhB,gBAAgB,QAS3B"}