@spottoai/types-package 1.0.2-beta.21 → 1.0.2-beta.211

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 (206) hide show
  1. package/LICENSE +18 -40
  2. package/README.md +4 -13
  3. package/dist/accounts/accounts.d.ts +45 -3
  4. package/dist/accounts/accounts.d.ts.map +1 -1
  5. package/dist/accounts/index.d.ts +3 -0
  6. package/dist/accounts/index.d.ts.map +1 -1
  7. package/dist/accounts/index.js +3 -0
  8. package/dist/accounts/index.js.map +1 -1
  9. package/dist/accounts/readPermissions.d.ts +45 -0
  10. package/dist/accounts/readPermissions.d.ts.map +1 -0
  11. package/dist/accounts/readPermissions.js +70 -0
  12. package/dist/accounts/readPermissions.js.map +1 -0
  13. package/dist/accounts/validation.d.ts +24 -0
  14. package/dist/accounts/validation.d.ts.map +1 -0
  15. package/dist/accounts/validation.js +3 -0
  16. package/dist/accounts/validation.js.map +1 -0
  17. package/dist/accounts/writePermissions.d.ts +34 -0
  18. package/dist/accounts/writePermissions.d.ts.map +1 -0
  19. package/dist/accounts/writePermissions.js +37 -0
  20. package/dist/accounts/writePermissions.js.map +1 -0
  21. package/dist/ai/index.d.ts +975 -9
  22. package/dist/ai/index.d.ts.map +1 -1
  23. package/dist/ai/index.js +1 -1
  24. package/dist/ai/index.js.map +1 -1
  25. package/dist/azure/activityLogs.d.ts +65 -0
  26. package/dist/azure/activityLogs.d.ts.map +1 -0
  27. package/dist/azure/activityLogs.js +6 -0
  28. package/dist/azure/activityLogs.js.map +1 -0
  29. package/dist/azure/benefits.d.ts +137 -0
  30. package/dist/azure/benefits.d.ts.map +1 -0
  31. package/dist/azure/benefits.js +3 -0
  32. package/dist/azure/benefits.js.map +1 -0
  33. package/dist/azure/billingPlots.d.ts +249 -0
  34. package/dist/azure/billingPlots.d.ts.map +1 -0
  35. package/dist/azure/billingPlots.js +6 -0
  36. package/dist/azure/billingPlots.js.map +1 -0
  37. package/dist/azure/budgets.d.ts +4 -0
  38. package/dist/azure/budgets.d.ts.map +1 -1
  39. package/dist/azure/commitmentsPlanning.d.ts +159 -0
  40. package/dist/azure/commitmentsPlanning.d.ts.map +1 -0
  41. package/dist/azure/commitmentsPlanning.js +3 -0
  42. package/dist/azure/commitmentsPlanning.js.map +1 -0
  43. package/dist/azure/common.d.ts +34 -0
  44. package/dist/azure/common.d.ts.map +1 -1
  45. package/dist/azure/configs.d.ts +75 -2
  46. package/dist/azure/configs.d.ts.map +1 -1
  47. package/dist/azure/costEstimation.d.ts +78 -0
  48. package/dist/azure/costEstimation.d.ts.map +1 -0
  49. package/dist/azure/costEstimation.js +3 -0
  50. package/dist/azure/costEstimation.js.map +1 -0
  51. package/dist/azure/governance.d.ts +627 -0
  52. package/dist/azure/governance.d.ts.map +1 -0
  53. package/dist/azure/governance.js +12 -0
  54. package/dist/azure/governance.js.map +1 -0
  55. package/dist/azure/metrics.d.ts +75 -4
  56. package/dist/azure/metrics.d.ts.map +1 -1
  57. package/dist/azure/payloads.d.ts +22 -1
  58. package/dist/azure/payloads.d.ts.map +1 -1
  59. package/dist/azure/prices.d.ts +178 -1
  60. package/dist/azure/prices.d.ts.map +1 -1
  61. package/dist/azure/publicIpAddresses.d.ts +96 -0
  62. package/dist/azure/publicIpAddresses.d.ts.map +1 -0
  63. package/dist/azure/publicIpAddresses.js +6 -0
  64. package/dist/azure/publicIpAddresses.js.map +1 -0
  65. package/dist/azure/recommendationAudit.d.ts +113 -0
  66. package/dist/azure/recommendationAudit.d.ts.map +1 -0
  67. package/dist/azure/recommendationAudit.js +10 -0
  68. package/dist/azure/recommendationAudit.js.map +1 -0
  69. package/dist/azure/recommendationState.d.ts +92 -3
  70. package/dist/azure/recommendationState.d.ts.map +1 -1
  71. package/dist/azure/recommendations.d.ts +411 -6
  72. package/dist/azure/recommendations.d.ts.map +1 -1
  73. package/dist/azure/recommendations.js.map +1 -1
  74. package/dist/azure/relationships.d.ts +77 -0
  75. package/dist/azure/relationships.d.ts.map +1 -0
  76. package/dist/azure/relationships.js +3 -0
  77. package/dist/azure/relationships.js.map +1 -0
  78. package/dist/azure/reports.d.ts +248 -0
  79. package/dist/azure/reports.d.ts.map +1 -1
  80. package/dist/azure/reports.js +13 -0
  81. package/dist/azure/reports.js.map +1 -1
  82. package/dist/azure/resources.d.ts +80 -0
  83. package/dist/azure/resources.d.ts.map +1 -1
  84. package/dist/azure/reviewChecklist.d.ts +139 -0
  85. package/dist/azure/reviewChecklist.d.ts.map +1 -0
  86. package/dist/azure/reviewChecklist.js +3 -0
  87. package/dist/azure/reviewChecklist.js.map +1 -0
  88. package/dist/azure/security.d.ts +15 -1
  89. package/dist/azure/security.d.ts.map +1 -1
  90. package/dist/azure/serviceRetirement.d.ts +28 -0
  91. package/dist/azure/serviceRetirement.d.ts.map +1 -0
  92. package/dist/azure/serviceRetirement.js +3 -0
  93. package/dist/azure/serviceRetirement.js.map +1 -0
  94. package/dist/azure/serviceRetirementState.d.ts +22 -0
  95. package/dist/azure/serviceRetirementState.d.ts.map +1 -0
  96. package/dist/azure/serviceRetirementState.js +3 -0
  97. package/dist/azure/serviceRetirementState.js.map +1 -0
  98. package/dist/azure/storage-inventory.d.ts +241 -0
  99. package/dist/azure/storage-inventory.d.ts.map +1 -0
  100. package/dist/azure/storage-inventory.js +3 -0
  101. package/dist/azure/storage-inventory.js.map +1 -0
  102. package/dist/azure/subscriptions.d.ts +34 -13
  103. package/dist/azure/subscriptions.d.ts.map +1 -1
  104. package/dist/azure/views.d.ts +252 -3
  105. package/dist/azure/views.d.ts.map +1 -1
  106. package/dist/common/index.d.ts +1 -0
  107. package/dist/common/index.d.ts.map +1 -1
  108. package/dist/common/index.js +1 -0
  109. package/dist/common/index.js.map +1 -1
  110. package/dist/common/pagination.d.ts +3 -0
  111. package/dist/common/pagination.d.ts.map +1 -1
  112. package/dist/common/provider.d.ts +9 -0
  113. package/dist/common/provider.d.ts.map +1 -0
  114. package/dist/common/provider.js +9 -0
  115. package/dist/common/provider.js.map +1 -0
  116. package/dist/company/billingAccount.d.ts +30 -0
  117. package/dist/company/billingAccount.d.ts.map +1 -0
  118. package/dist/company/billingAccount.js +3 -0
  119. package/dist/company/billingAccount.js.map +1 -0
  120. package/dist/company/company.d.ts +32 -1
  121. package/dist/company/company.d.ts.map +1 -1
  122. package/dist/company/index.d.ts +1 -0
  123. package/dist/company/index.d.ts.map +1 -1
  124. package/dist/company/index.js +1 -0
  125. package/dist/company/index.js.map +1 -1
  126. package/dist/company/notification.d.ts +31 -1
  127. package/dist/company/notification.d.ts.map +1 -1
  128. package/dist/company/notification.js +24 -12
  129. package/dist/company/notification.js.map +1 -1
  130. package/dist/company/survey.d.ts +3 -0
  131. package/dist/company/survey.d.ts.map +1 -1
  132. package/dist/events/alertDefinitionRun.d.ts +23 -0
  133. package/dist/events/alertDefinitionRun.d.ts.map +1 -0
  134. package/dist/events/alertDefinitionRun.js +3 -0
  135. package/dist/events/alertDefinitionRun.js.map +1 -0
  136. package/dist/events/baseAlert.d.ts +130 -0
  137. package/dist/events/baseAlert.d.ts.map +1 -0
  138. package/dist/events/baseAlert.js +3 -0
  139. package/dist/events/baseAlert.js.map +1 -0
  140. package/dist/events/cost.d.ts +361 -0
  141. package/dist/events/cost.d.ts.map +1 -0
  142. package/dist/events/cost.js +3 -0
  143. package/dist/events/cost.js.map +1 -0
  144. package/dist/events/costAnomalies.d.ts +47 -0
  145. package/dist/events/costAnomalies.d.ts.map +1 -0
  146. package/dist/events/costAnomalies.js +3 -0
  147. package/dist/events/costAnomalies.js.map +1 -0
  148. package/dist/events/costViews.d.ts +23 -0
  149. package/dist/events/costViews.d.ts.map +1 -0
  150. package/dist/events/costViews.js +3 -0
  151. package/dist/events/costViews.js.map +1 -0
  152. package/dist/events/eventStatus.d.ts +67 -0
  153. package/dist/events/eventStatus.d.ts.map +1 -0
  154. package/dist/events/eventStatus.js +3 -0
  155. package/dist/events/eventStatus.js.map +1 -0
  156. package/dist/events/index.d.ts +7 -0
  157. package/dist/events/index.d.ts.map +1 -0
  158. package/dist/events/index.js +23 -0
  159. package/dist/events/index.js.map +1 -0
  160. package/dist/feedbacks/feedback.d.ts +9 -0
  161. package/dist/feedbacks/feedback.d.ts.map +1 -1
  162. package/dist/identity/apikey.d.ts +67 -0
  163. package/dist/identity/apikey.d.ts.map +1 -0
  164. package/dist/identity/apikey.js +3 -0
  165. package/dist/identity/apikey.js.map +1 -0
  166. package/dist/identity/index.d.ts +2 -0
  167. package/dist/identity/index.d.ts.map +1 -0
  168. package/dist/identity/index.js +18 -0
  169. package/dist/identity/index.js.map +1 -0
  170. package/dist/index.d.ts +19 -0
  171. package/dist/index.d.ts.map +1 -1
  172. package/dist/index.js +19 -1
  173. package/dist/index.js.map +1 -1
  174. package/dist/integrations/halo.d.ts +76 -0
  175. package/dist/integrations/halo.d.ts.map +1 -0
  176. package/dist/integrations/halo.js +3 -0
  177. package/dist/integrations/halo.js.map +1 -0
  178. package/dist/integrations/index.d.ts +3 -0
  179. package/dist/integrations/index.d.ts.map +1 -0
  180. package/dist/integrations/index.js +19 -0
  181. package/dist/integrations/index.js.map +1 -0
  182. package/dist/integrations/integrationTickets.d.ts +67 -0
  183. package/dist/integrations/integrationTickets.d.ts.map +1 -0
  184. package/dist/integrations/integrationTickets.js +3 -0
  185. package/dist/integrations/integrationTickets.js.map +1 -0
  186. package/dist/scheduler/index.d.ts +2 -0
  187. package/dist/scheduler/index.d.ts.map +1 -0
  188. package/dist/scheduler/index.js +18 -0
  189. package/dist/scheduler/index.js.map +1 -0
  190. package/dist/scheduler/scheduler.d.ts +110 -0
  191. package/dist/scheduler/scheduler.d.ts.map +1 -0
  192. package/dist/scheduler/scheduler.js +3 -0
  193. package/dist/scheduler/scheduler.js.map +1 -0
  194. package/dist/tags/index.d.ts +2 -0
  195. package/dist/tags/index.d.ts.map +1 -0
  196. package/dist/tags/index.js +18 -0
  197. package/dist/tags/index.js.map +1 -0
  198. package/dist/tags/tags.d.ts +26 -0
  199. package/dist/tags/tags.d.ts.map +1 -0
  200. package/dist/tags/tags.js +10 -0
  201. package/dist/tags/tags.js.map +1 -0
  202. package/dist/unknown/services.d.ts +12 -0
  203. package/dist/unknown/services.d.ts.map +1 -0
  204. package/dist/unknown/services.js +3 -0
  205. package/dist/unknown/services.js.map +1 -0
  206. package/package.json +2 -2
@@ -0,0 +1,96 @@
1
+ export declare const PUBLIC_IP_ADDRESSES_SCHEMA_VERSION: "2026-05-02.public-ip-addresses-v1";
2
+ export declare const PUBLIC_IP_ADDRESSES_PORTAL_FILE: "public-ip-addresses.json";
3
+ export type PublicIpAddressesJsonPrimitive = string | number | boolean | null;
4
+ export type PublicIpAddressesJsonValue = PublicIpAddressesJsonPrimitive | PublicIpAddressesJsonValue[] | {
5
+ [key: string]: PublicIpAddressesJsonValue;
6
+ };
7
+ export type PublicIpAddressesUseClassification = 'assigned' | 'unassigned' | 'unresolved';
8
+ export type PublicIpAddressesExposureKind = 'rdp' | 'ssh' | 'https';
9
+ export type PublicIpAddressesExposureEvidenceSource = 'nsg_rule' | 'lb_rule' | 'appgw_listener' | 'direct_rule' | 'derived';
10
+ export type PublicIpAddressesExposureConfidence = 'high' | 'medium' | 'low';
11
+ export type PublicIpAddressesAssignmentVia = 'relationship_graph' | 'direct_ip_configuration' | 'reverse_consumer_lookup' | 'nat_gateway_reference' | 'prefix_membership' | 'unassigned' | 'unresolved';
12
+ export type PublicIpAddressesAssociatedService = 'bastion' | 'azure_firewall' | 'application_gateway' | 'load_balancer' | 'network_interface' | 'nat_gateway' | 'unknown_network_consumer' | 'unknown' | 'unassigned';
13
+ export type PublicIpAddressesConcern = 'unused_public_ip' | 'dynamic_unassigned' | 'basic_sku_retiring' | 'missing_assignment_resolution' | 'attached_to_direct_nic' | 'attached_to_bastion' | 'attached_to_azure_firewall' | 'attached_to_app_gateway' | 'attached_to_load_balancer' | 'attached_to_nat_gateway' | 'orphaned_graph_reference' | 'rdp_exposed' | 'ssh_exposed' | 'https_exposed';
14
+ export interface PublicIpAddressesSubscriptionProperties {
15
+ secureScore?: number;
16
+ currency?: string;
17
+ currencySymbol?: string;
18
+ foundCurrency?: boolean;
19
+ showAmortizedCosts?: boolean;
20
+ [key: string]: PublicIpAddressesJsonValue | undefined;
21
+ }
22
+ export interface PublicIpAddressesSubscription {
23
+ companyId?: string;
24
+ tenantId?: string;
25
+ subscriptionId: string;
26
+ displayName: string;
27
+ properties?: PublicIpAddressesSubscriptionProperties;
28
+ }
29
+ export interface PublicIpAddressesSummary {
30
+ total: number;
31
+ assigned: number;
32
+ unassigned: number;
33
+ dynamicUnassigned: number;
34
+ basicSku: number;
35
+ exposedRdp: number;
36
+ exposedSsh: number;
37
+ exposedHttps: number;
38
+ byService: Record<string, number>;
39
+ byConcern: Record<string, number>;
40
+ byLocation: Record<string, number>;
41
+ byPrefix: Record<string, number>;
42
+ }
43
+ export interface PublicIpAddressesSku {
44
+ name: string | null;
45
+ tier: string | null;
46
+ }
47
+ export interface PublicIpAddressesAssignment {
48
+ via: PublicIpAddressesAssignmentVia;
49
+ resourceId: string | null;
50
+ resourceName: string | null;
51
+ resourceType: string | null;
52
+ parentResourceId: string | null;
53
+ parentResourceName: string | null;
54
+ parentResourceType: string | null;
55
+ evidence: string[];
56
+ }
57
+ export interface PublicIpAddressesPrefix {
58
+ id: string;
59
+ name: string | null;
60
+ ipPrefix: string | null;
61
+ }
62
+ export interface PublicIpAddressesExposure {
63
+ kind: PublicIpAddressesExposureKind;
64
+ evidenceSource: PublicIpAddressesExposureEvidenceSource;
65
+ evidence: string;
66
+ confidence: PublicIpAddressesExposureConfidence;
67
+ }
68
+ export interface PublicIpAddressesItem {
69
+ id: string;
70
+ name: string;
71
+ resourceGroup: string | null;
72
+ location: string;
73
+ sku: PublicIpAddressesSku;
74
+ zones: string[];
75
+ allocationMethod: string | null;
76
+ ipVersion: string | null;
77
+ ipAddress: string | null;
78
+ fqdn: string | null;
79
+ use: PublicIpAddressesUseClassification;
80
+ assignment: PublicIpAddressesAssignment;
81
+ associatedResource: string | null;
82
+ associatedResourceType: string | null;
83
+ associatedService: PublicIpAddressesAssociatedService;
84
+ prefix: PublicIpAddressesPrefix | null;
85
+ exposures: PublicIpAddressesExposure[];
86
+ concerns: PublicIpAddressesConcern[];
87
+ tags: Record<string, string>;
88
+ }
89
+ export interface PublicIpAddressesReport {
90
+ schemaVersion?: typeof PUBLIC_IP_ADDRESSES_SCHEMA_VERSION;
91
+ subscription: PublicIpAddressesSubscription;
92
+ timestamp: string;
93
+ summary: PublicIpAddressesSummary;
94
+ items: PublicIpAddressesItem[];
95
+ }
96
+ //# sourceMappingURL=publicIpAddresses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publicIpAddresses.d.ts","sourceRoot":"","sources":["../../src/azure/publicIpAddresses.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PUBLIC_IP_ADDRESSES_PORTAL_FILE = exports.PUBLIC_IP_ADDRESSES_SCHEMA_VERSION = void 0;
4
+ exports.PUBLIC_IP_ADDRESSES_SCHEMA_VERSION = '2026-05-02.public-ip-addresses-v1';
5
+ exports.PUBLIC_IP_ADDRESSES_PORTAL_FILE = 'public-ip-addresses.json';
6
+ //# sourceMappingURL=publicIpAddresses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publicIpAddresses.js","sourceRoot":"","sources":["../../src/azure/publicIpAddresses.ts"],"names":[],"mappings":";;;AAAa,QAAA,kCAAkC,GAAG,mCAA4C,CAAC;AAElF,QAAA,+BAA+B,GAAG,0BAAmC,CAAC"}
@@ -0,0 +1,113 @@
1
+ import type { ProviderName, ProviderScope } from '../common/provider';
2
+ export declare const RecommendationAuditRowKinds: {
3
+ readonly resourceTarget: "resource-view:target";
4
+ readonly subscriptionTarget: "scope-view:target";
5
+ readonly resourceProviderScopeFeed: "resource-view:providerScope-feed";
6
+ readonly subscriptionProviderScopeFeed: "scope-view:providerScope-feed";
7
+ };
8
+ export type RecommendationAuditRowKind = (typeof RecommendationAuditRowKinds)[keyof typeof RecommendationAuditRowKinds];
9
+ export type RecommendationAuditScope = 'resource' | 'subscription';
10
+ export type RecommendationAuditView = 'target' | 'providerScope-feed';
11
+ export interface RecommendationAuditQueryBase extends ProviderScope {
12
+ /**
13
+ * ISO timestamp lower bound (inclusive).
14
+ * Omit to let consumers default to the contract-defined lookback window.
15
+ */
16
+ from?: string;
17
+ /**
18
+ * ISO timestamp upper bound (exclusive).
19
+ * Omit to let consumers default to "now".
20
+ */
21
+ to?: string;
22
+ /** Optional max rows to return (service-level cap still applies). */
23
+ limit?: number;
24
+ /**
25
+ * Read-time request hint to append a `Viewed` audit event.
26
+ * Services must suppress `Viewed` persistence for global `reader` and `admin`
27
+ * actors, even when `trackView` is `true`.
28
+ */
29
+ trackView?: boolean;
30
+ }
31
+ export type ResourceTargetRecommendationAuditQuery = RecommendationAuditQueryBase & {
32
+ scope: 'resource';
33
+ view: 'target';
34
+ recommendationId: string;
35
+ resourceId: string;
36
+ };
37
+ export type SubscriptionTargetRecommendationAuditQuery = RecommendationAuditQueryBase & {
38
+ scope: 'subscription';
39
+ view: 'target';
40
+ recommendationId: string;
41
+ resourceId?: never;
42
+ };
43
+ export type ResourceProviderScopeFeedRecommendationAuditQuery = RecommendationAuditQueryBase & {
44
+ scope: 'resource';
45
+ view: 'providerScope-feed';
46
+ recommendationId: string;
47
+ resourceId?: never;
48
+ };
49
+ export type SubscriptionProviderScopeFeedRecommendationAuditQuery = RecommendationAuditQueryBase & {
50
+ scope: 'subscription';
51
+ view: 'providerScope-feed';
52
+ recommendationId: string;
53
+ resourceId?: never;
54
+ };
55
+ export type GetRecommendationAuditQueryCanonical = ResourceTargetRecommendationAuditQuery | SubscriptionTargetRecommendationAuditQuery | ResourceProviderScopeFeedRecommendationAuditQuery | SubscriptionProviderScopeFeedRecommendationAuditQuery;
56
+ export type GetRecommendationAuditQuery = GetRecommendationAuditQueryCanonical;
57
+ export type RecommendationAuditEventType = 'Viewed' | 'Added' | 'Archived' | 'CommentAdded' | 'CommentUpdated' | 'CommentDeleted' | 'CommentPinned' | 'CommentUnpinned' | 'Shared' | 'Dismissed' | 'Restored' | 'Prioritized' | 'Unprioritized' | 'Implementing' | 'Implemented' | 'ImplementationFailed';
58
+ /** Flat recommendation audit row columns as persisted in `recommendationsevents`. */
59
+ export interface RecommendationAuditEventRowColumns {
60
+ CompanyId: string;
61
+ ProviderName: ProviderName;
62
+ ProviderScopeId: string;
63
+ /** For Azure providers, mirrors `ProviderScopeId` (subscription id). */
64
+ SubscriptionId: string;
65
+ /** Storage row discriminator derived from query scope + view contract. */
66
+ RowKind: RecommendationAuditRowKind;
67
+ ResourceId?: string | null;
68
+ RecommendationId: string;
69
+ EventType: RecommendationAuditEventType;
70
+ /** Stringified compact action metadata payload. */
71
+ EventDetails?: string;
72
+ UserId: string;
73
+ /**
74
+ * Optional actor display name.
75
+ * May be missing/null for legacy rows or when identity enrichment is unavailable.
76
+ */
77
+ UserDisplayName?: string | null;
78
+ Source: string;
79
+ /** ISO timestamp for event creation. */
80
+ Date: string;
81
+ EventId: string;
82
+ }
83
+ export interface RecommendationAuditEventRow extends RecommendationAuditEventRowColumns {
84
+ PartitionKey: string;
85
+ RowKey: string;
86
+ }
87
+ /** Timeline-friendly response event DTO. */
88
+ export interface RecommendationAuditTimelineEvent {
89
+ eventId: string;
90
+ eventType: RecommendationAuditEventType;
91
+ date: string;
92
+ companyId: string;
93
+ providerName: ProviderName;
94
+ providerScopeId: string;
95
+ subscriptionId: string;
96
+ resourceId?: string | null;
97
+ recommendationId: string;
98
+ eventDetails?: string;
99
+ userId: string;
100
+ /**
101
+ * Optional actor display name.
102
+ * API may omit this when upstream rows do not contain `UserDisplayName`.
103
+ */
104
+ userDisplayName?: string | null;
105
+ source: string;
106
+ rowKind: RecommendationAuditRowKind;
107
+ }
108
+ /**
109
+ * Canonical API response contract for recommendation audit reads.
110
+ * The service returns a raw event array.
111
+ */
112
+ export type RecommendationAuditQueryResponse = RecommendationAuditTimelineEvent[];
113
+ //# sourceMappingURL=recommendationAudit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recommendationAudit.d.ts","sourceRoot":"","sources":["../../src/azure/recommendationAudit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecommendationAuditRowKinds = void 0;
4
+ exports.RecommendationAuditRowKinds = {
5
+ resourceTarget: 'resource-view:target',
6
+ subscriptionTarget: 'scope-view:target',
7
+ resourceProviderScopeFeed: 'resource-view:providerScope-feed',
8
+ subscriptionProviderScopeFeed: 'scope-view:providerScope-feed',
9
+ };
10
+ //# sourceMappingURL=recommendationAudit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recommendationAudit.js","sourceRoot":"","sources":["../../src/azure/recommendationAudit.ts"],"names":[],"mappings":";;;AAEa,QAAA,2BAA2B,GAAG;IACzC,cAAc,EAAE,sBAAsB;IACtC,kBAAkB,EAAE,mBAAmB;IACvC,yBAAyB,EAAE,kCAAkC;IAC7D,6BAA6B,EAAE,+BAA+B;CACtD,CAAC"}
@@ -1,24 +1,113 @@
1
- export interface RecommendationState {
1
+ import type { ProviderName, ProviderScope } from '../common/provider';
2
+ export type CommentScope = 'resource' | 'providerScope';
3
+ export type ResourceRecommendationStatesQuery = {
4
+ providerName: ProviderName;
5
+ scope: 'resource';
2
6
  resourceId: string;
3
7
  recommendationId: string;
4
- subscriptionId: string;
8
+ providerScopeId?: never;
9
+ };
10
+ export type ProviderScopeRecommendationStatesQuery = {
11
+ providerName: ProviderName;
12
+ scope: 'providerScope';
13
+ providerScopeId: string;
14
+ recommendationId: string;
15
+ resourceId?: never;
16
+ };
17
+ /** @deprecated Use ProviderScopeRecommendationStatesQuery */
18
+ export type SubscriptionRecommendationStatesQuery = ProviderScopeRecommendationStatesQuery;
19
+ /** @deprecated Use GetRecommendationStatesQuery */
20
+ export type LegacyGetRecommendationStatesQuery = {
21
+ providerName: ProviderName;
22
+ resourceId: string;
23
+ recommendationId?: string;
24
+ providerScopeId?: string;
25
+ } | {
26
+ providerName: ProviderName;
27
+ recommendationId?: string;
28
+ resourceId?: string;
29
+ providerScopeId: string;
30
+ };
31
+ export type GetRecommendationStatesQuery = ResourceRecommendationStatesQuery | ProviderScopeRecommendationStatesQuery;
32
+ /** Shared recommendation-state properties across scope variants. */
33
+ export interface RecommendationStateBase extends ProviderScope {
34
+ /**
35
+ * Deprecated alias retained for compatibility with older UI consumers.
36
+ * Prefer `providerScopeId`.
37
+ */
38
+ subscriptionId?: string;
39
+ /** Row Key */
40
+ recommendationId: string;
41
+ /** Company ID to which the resource belongs */
5
42
  companyId: string;
6
43
  category: 'Cost' | 'Performance' | 'Security' | 'Compliance' | 'Reliability' | 'Operational Excellence';
7
44
  impact: 'High' | 'Medium' | 'Low';
8
45
  effort: 'High' | 'Medium' | 'Low';
46
+ /** true if the user has read the recommendation */
9
47
  read: boolean;
10
- status: 'Active' | 'Prioritized' | 'Dismissed' | 'Archived';
48
+ status: 'Active' | 'Prioritized' | 'Dismissed' | 'Archived' | 'Implementing' | 'Implemented' | 'Failed';
49
+ /** Date the recommendation was scheduled for */
11
50
  scheduledAt?: Date;
51
+ /** Date the recommendation state was created */
12
52
  createdAt: Date;
53
+ /** Date the recommendation state was last updated */
13
54
  updatedAt?: Date;
55
+ /** true if the recommendation is flagged */
14
56
  flagged: boolean;
57
+ /** Latest successful share provider (normalized lowercase channel name). */
58
+ integrationProviderName?: string;
59
+ /**
60
+ * Latest successful share reference.
61
+ * - `jira` | `halo` | `connectwise`: external ticket id
62
+ * - `email`: primary recipient email
63
+ * - `slack` | `teams`: unset
64
+ */
65
+ integrationTicketId?: string;
15
66
  comments: Comment[];
67
+ /** ID of the pinned comment */
68
+ pinnedCommentId?: string;
16
69
  history: RecommendationHistory[];
17
70
  custom: boolean;
71
+ /** Date when the status started */
72
+ statusStartAt?: string;
73
+ /** Date when the status is expected to change */
74
+ statusEndAt?: string;
18
75
  }
76
+ export interface ResourceRecommendationState extends RecommendationStateBase {
77
+ /**
78
+ * Scope discriminator for recommendation commentary identity.
79
+ * Resource scope identity is keyed by `resourceId + recommendationId`.
80
+ */
81
+ scope: 'resource';
82
+ /** Partition Key: resourceId (Hash) */
83
+ resourceId: string;
84
+ }
85
+ export interface ProviderScopeRecommendationState extends RecommendationStateBase {
86
+ /**
87
+ * Scope discriminator for recommendation commentary identity.
88
+ * Provider scope identity is keyed by `providerScopeId + recommendationId`.
89
+ */
90
+ scope: 'providerScope';
91
+ /** Provider-scope commentary must not rely on resource identity. */
92
+ resourceId?: never;
93
+ }
94
+ export type RecommendationState = ResourceRecommendationState | ProviderScopeRecommendationState;
95
+ /** @deprecated Use RecommendationState */
96
+ export type LegacyRecommendationState = RecommendationStateBase & {
97
+ scope?: CommentScope;
98
+ resourceId: string;
99
+ };
100
+ /** @deprecated Use RecommendationState */
101
+ export type RecommendationStateRecord = RecommendationState | LegacyRecommendationState;
102
+ export type ResourceRecommendationStateWriteRequest = ResourceRecommendationState;
103
+ export type ProviderScopeRecommendationStateWriteRequest = ProviderScopeRecommendationState;
104
+ /** @deprecated Use ProviderScopeRecommendationStateWriteRequest */
105
+ export type SubscriptionRecommendationStateWriteRequest = ProviderScopeRecommendationStateWriteRequest;
106
+ export type SaveRecommendationStateRequest = ResourceRecommendationStateWriteRequest | ProviderScopeRecommendationStateWriteRequest;
19
107
  export interface RecommendationHistory {
20
108
  userId: string;
21
109
  createdAt: Date;
110
+ /** restore means back from dismissed state */
22
111
  action: 'Dismiss' | 'Restore' | 'Prioritize' | 'Unprioritize' | 'Implement';
23
112
  reason?: string;
24
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"recommendationState.d.ts","sourceRoot":"","sources":["../../src/azure/recommendationState.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,mBAAmB;IAElC,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,UAAU,GAAG,YAAY,GAAG,aAAa,GAAG,wBAAwB,CAAC;IACxG,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAClC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAClC,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,QAAQ,GAAG,aAAa,GAAG,WAAW,GAAG,UAAU,CAAC;IAC5D,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,qBAAqB,EAAE,CAAC;IACjC,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,YAAY,GAAG,cAAc,GAAG,WAAW,CAAC;IAC5E,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"recommendationState.d.ts","sourceRoot":"","sources":["../../src/azure/recommendationState.ts"],"names":[],"mappings":"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"}