@discover-cloud/shared 1.2.9 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/dist/authorization/index.d.ts +2 -2
  2. package/dist/authorization/index.js +1 -1
  3. package/dist/authorization/permission-cache.service.d.ts +104 -16
  4. package/dist/authorization/permission-cache.service.js +177 -148
  5. package/dist/authorization/permission-checker.d.ts +30 -0
  6. package/dist/authorization/permission-checker.js +40 -0
  7. package/dist/context/index.d.ts +1 -1
  8. package/dist/context/index.js +1 -1
  9. package/dist/context/request-context.storage.d.ts +21 -0
  10. package/dist/context/request-context.storage.js +37 -0
  11. package/dist/contracts/auth-service/account.dto.d.ts +30 -0
  12. package/dist/contracts/auth-service/account.dto.js +7 -0
  13. package/dist/contracts/auth-service/auth.dto.d.ts +21 -0
  14. package/dist/contracts/auth-service/auth.dto.js +10 -0
  15. package/dist/contracts/index.d.ts +1 -0
  16. package/dist/{security → contracts}/index.js +1 -1
  17. package/dist/contracts/visibility.d.ts +63 -0
  18. package/dist/contracts/visibility.js +10 -0
  19. package/dist/dtos/audit-service.types.d.ts +42 -0
  20. package/dist/dtos/audit-service.types.js +31 -0
  21. package/dist/dtos/auth-service.dto.d.ts +87 -26
  22. package/dist/dtos/auth-service.dto.js +4 -0
  23. package/dist/dtos/cloud-service.dto.d.ts +57 -27
  24. package/dist/dtos/cloud-service.dto.js +5 -0
  25. package/dist/dtos/index.d.ts +6 -5
  26. package/dist/dtos/index.js +1 -0
  27. package/dist/dtos/insights-service.dto.d.ts +184 -32
  28. package/dist/dtos/insights-service.dto.js +8 -0
  29. package/dist/dtos/response.dto.d.ts +12 -83
  30. package/dist/dtos/response.dto.js +2 -21
  31. package/dist/dtos/user-service.dto.d.ts +163 -13
  32. package/dist/enums/domain.enums.d.ts +272 -75
  33. package/dist/enums/domain.enums.js +329 -102
  34. package/dist/enums/index.d.ts +2 -2
  35. package/dist/enums/permissions.enums.d.ts +142 -80
  36. package/dist/enums/permissions.enums.js +174 -133
  37. package/dist/errors/app-error.d.ts +13 -18
  38. package/dist/errors/app-error.js +15 -21
  39. package/dist/errors/http-errors.d.ts +106 -18
  40. package/dist/errors/http-errors.js +136 -51
  41. package/dist/errors/index.d.ts +2 -2
  42. package/dist/http/index.d.ts +2 -1
  43. package/dist/http/index.js +1 -0
  44. package/dist/http/request-context.d.ts +8 -0
  45. package/dist/http/request-context.js +37 -0
  46. package/dist/http/service-client.d.ts +93 -40
  47. package/dist/http/service-client.js +104 -55
  48. package/dist/index.d.ts +11 -9
  49. package/dist/index.js +2 -0
  50. package/dist/jwt/index.d.ts +3 -2
  51. package/dist/jwt/index.js +2 -1
  52. package/dist/jwt/machine-jwt-verifier.d.ts +21 -0
  53. package/dist/jwt/machine-jwt-verifier.js +83 -0
  54. package/dist/jwt/machine-token-client.d.ts +36 -5
  55. package/dist/jwt/machine-token-client.js +61 -27
  56. package/dist/jwt/user-jwt-verifier.d.ts +31 -0
  57. package/dist/jwt/user-jwt-verifier.js +102 -0
  58. package/dist/messaging/audit.publisher.d.ts +14 -0
  59. package/dist/messaging/audit.publisher.js +49 -0
  60. package/dist/messaging/index.d.ts +2 -0
  61. package/dist/{dto → messaging}/index.js +2 -3
  62. package/dist/messaging/rabbitmq.client.d.ts +15 -0
  63. package/dist/messaging/rabbitmq.client.js +133 -0
  64. package/dist/middleware/error-handler.middleware.d.ts +8 -28
  65. package/dist/middleware/error-handler.middleware.js +63 -54
  66. package/dist/middleware/index.d.ts +10 -8
  67. package/dist/middleware/index.js +7 -5
  68. package/dist/middleware/request-context.middleware.d.ts +6 -0
  69. package/dist/middleware/request-context.middleware.js +48 -0
  70. package/dist/middleware/require-auth.middleware.d.ts +7 -76
  71. package/dist/middleware/require-auth.middleware.js +29 -117
  72. package/dist/middleware/require-machine.middleware.d.ts +13 -0
  73. package/dist/middleware/require-machine.middleware.js +128 -0
  74. package/dist/middleware/require-org-permission-from-body.middleware.d.ts +10 -0
  75. package/dist/middleware/require-org-permission-from-body.middleware.js +23 -0
  76. package/dist/middleware/require-org-permission.middleware.d.ts +19 -0
  77. package/dist/middleware/require-org-permission.middleware.js +115 -0
  78. package/dist/middleware/require-platform-permission.middleware.d.ts +19 -0
  79. package/dist/middleware/require-platform-permission.middleware.js +91 -0
  80. package/dist/middleware/require-user.middleware.d.ts +14 -0
  81. package/dist/middleware/require-user.middleware.js +30 -0
  82. package/dist/middleware/require-workspace-permission.middleware.d.ts +20 -0
  83. package/dist/middleware/require-workspace-permission.middleware.js +114 -0
  84. package/dist/middleware/validate.middleware.d.ts +31 -31
  85. package/dist/middleware/validate.middleware.js +31 -33
  86. package/dist/types/audit.types.d.ts +39 -0
  87. package/dist/types/audit.types.js +30 -0
  88. package/dist/types/express.types.d.ts +92 -124
  89. package/dist/types/express.types.js +30 -49
  90. package/dist/types/index.d.ts +1 -1
  91. package/dist/utils/date.util.d.ts +6 -0
  92. package/dist/utils/date.util.js +11 -0
  93. package/dist/utils/env.util.d.ts +6 -0
  94. package/dist/utils/env.util.js +19 -0
  95. package/dist/utils/index.d.ts +5 -4
  96. package/dist/utils/index.js +5 -4
  97. package/dist/utils/logger.util.d.ts +31 -0
  98. package/dist/utils/logger.util.js +91 -0
  99. package/dist/utils/pagination.util.d.ts +6 -0
  100. package/dist/utils/pagination.util.js +20 -0
  101. package/dist/utils/request-context.als.d.ts +10 -0
  102. package/dist/utils/request-context.als.js +5 -0
  103. package/dist/utils/response.util.d.ts +27 -0
  104. package/dist/utils/response.util.js +56 -0
  105. package/dist/utils/slug.util.d.ts +9 -0
  106. package/dist/utils/slug.util.js +32 -0
  107. package/dist/utils/url-safety.util.d.ts +6 -0
  108. package/dist/utils/url-safety.util.js +75 -0
  109. package/package.json +3 -1
  110. package/dist/authorization/permissions.d.ts +0 -78
  111. package/dist/authorization/permissions.js +0 -174
  112. package/dist/context/access-context.d.ts +0 -10
  113. package/dist/context/access-context.js +0 -2
  114. package/dist/dto/auth-service.dtos.d.ts +0 -44
  115. package/dist/dto/auth-service.dtos.js +0 -2
  116. package/dist/dto/index.d.ts +0 -3
  117. package/dist/dto/response.dtos.d.ts +0 -55
  118. package/dist/dto/response.dtos.js +0 -6
  119. package/dist/dto/user-service.dtos.d.ts +0 -50
  120. package/dist/dto/user-service.dtos.js +0 -2
  121. package/dist/enums/auth-service.enums.d.ts +0 -12
  122. package/dist/enums/auth-service.enums.js +0 -17
  123. package/dist/enums/permissions.types.d.ts +0 -12
  124. package/dist/enums/permissions.types.js +0 -17
  125. package/dist/enums/user-service.enums.d.ts +0 -32
  126. package/dist/enums/user-service.enums.js +0 -41
  127. package/dist/internal/index.d.ts +0 -4
  128. package/dist/internal/index.js +0 -20
  129. package/dist/internal/internal-jwt.service.d.ts +0 -13
  130. package/dist/internal/internal-jwt.service.js +0 -88
  131. package/dist/internal/internal-jwt.types.d.ts +0 -7
  132. package/dist/internal/internal-jwt.types.js +0 -2
  133. package/dist/internal/internal-key-manager.d.ts +0 -16
  134. package/dist/internal/internal-key-manager.js +0 -67
  135. package/dist/internal/registry.d.ts +0 -8
  136. package/dist/internal/registry.js +0 -34
  137. package/dist/internal/service-client.d.ts +0 -9
  138. package/dist/internal/service-client.js +0 -94
  139. package/dist/jwt/internal-jwt-verifier.d.ts +0 -41
  140. package/dist/jwt/internal-jwt-verifier.js +0 -185
  141. package/dist/jwt/jwt-verifier.d.ts +0 -9
  142. package/dist/jwt/jwt-verifier.js +0 -36
  143. package/dist/jwt/service-client.d.ts +0 -7
  144. package/dist/jwt/service-client.js +0 -87
  145. package/dist/middleware/authorize.d.ts +0 -3
  146. package/dist/middleware/authorize.js +0 -24
  147. package/dist/middleware/authorize.middleware.d.ts +0 -54
  148. package/dist/middleware/authorize.middleware.js +0 -104
  149. package/dist/middleware/error-handler.d.ts +0 -4
  150. package/dist/middleware/error-handler.js +0 -23
  151. package/dist/middleware/request-id.d.ts +0 -2
  152. package/dist/middleware/request-id.js +0 -9
  153. package/dist/middleware/request-id.middleware.d.ts +0 -22
  154. package/dist/middleware/request-id.middleware.js +0 -34
  155. package/dist/middleware/require-auth.d.ts +0 -10
  156. package/dist/middleware/require-auth.js +0 -34
  157. package/dist/middleware/require-human.middleware.d.ts +0 -2
  158. package/dist/middleware/require-human.middleware.js +0 -18
  159. package/dist/middleware/require-internal.middleware.d.ts +0 -18
  160. package/dist/middleware/require-internal.middleware.js +0 -183
  161. package/dist/middleware/validate.d.ts +0 -5
  162. package/dist/middleware/validate.js +0 -18
  163. package/dist/middleware/validated-merge.middleware.d.ts +0 -20
  164. package/dist/middleware/validated-merge.middleware.js +0 -33
  165. package/dist/middleware/verify-internal-jwt.d.ts +0 -7
  166. package/dist/middleware/verify-internal-jwt.js +0 -25
  167. package/dist/security/guard.d.ts +0 -10
  168. package/dist/security/guard.js +0 -40
  169. package/dist/security/index.d.ts +0 -1
  170. package/dist/types/express.d.ts +0 -22
  171. package/dist/types/express.js +0 -3
  172. package/dist/utils/date.utils.d.ts +0 -25
  173. package/dist/utils/date.utils.js +0 -30
  174. package/dist/utils/env.d.ts +0 -46
  175. package/dist/utils/env.js +0 -61
  176. package/dist/utils/env.utils.d.ts +0 -46
  177. package/dist/utils/env.utils.js +0 -61
  178. package/dist/utils/logger.utils.d.ts +0 -66
  179. package/dist/utils/logger.utils.js +0 -97
  180. package/dist/utils/response.d.ts +0 -4
  181. package/dist/utils/response.js +0 -35
  182. package/dist/utils/response.utils.d.ts +0 -54
  183. package/dist/utils/response.utils.js +0 -85
@@ -1,88 +1,18 @@
1
1
  "use strict";
2
- /**
3
- * DOMAIN STATUS & CONFIGURATION ENUMS (@discover-cloud/shared)
4
- * ───────────────────────────────────────────────────────────────
5
- * General-purpose enums for entity lifecycle, UI preferences, and
6
- * cloud provider configuration.
7
- *
8
- * Permission-related enums (AccountRole, GlobalPermission, OrganizationRole,
9
- * OrgPermission) live in permissions.enums.ts, not here.
10
- */
2
+ /* ---------------------------------------------------------------------------
3
+ Cloud Service
4
+ --------------------------------------------------------------------------- */
11
5
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.SyncType = exports.SyncStatus = exports.CloudAccountStatus = exports.AzureAuthMethod = exports.GcpAuthMethod = exports.AwsAuthMethod = exports.CloudProvider = exports.Currency = exports.Theme = exports.MembershipStatus = exports.OrganizationStatus = exports.AccountStatus = void 0;
13
- /* ====================================================================
14
- ACCOUNT
15
- ==================================================================== */
16
- var AccountStatus;
17
- (function (AccountStatus) {
18
- AccountStatus["ACTIVE"] = "ACTIVE";
19
- AccountStatus["SUSPENDED"] = "SUSPENDED";
20
- AccountStatus["DELETED"] = "DELETED";
21
- })(AccountStatus || (exports.AccountStatus = AccountStatus = {}));
22
- /* ====================================================================
23
- ORGANIZATION
24
- ==================================================================== */
25
- var OrganizationStatus;
26
- (function (OrganizationStatus) {
27
- OrganizationStatus["ACTIVE"] = "ACTIVE";
28
- OrganizationStatus["SUSPENDED"] = "SUSPENDED";
29
- OrganizationStatus["CLOSED"] = "CLOSED";
30
- })(OrganizationStatus || (exports.OrganizationStatus = OrganizationStatus = {}));
31
- var MembershipStatus;
32
- (function (MembershipStatus) {
33
- MembershipStatus["PENDING"] = "PENDING";
34
- MembershipStatus["ACTIVE"] = "ACTIVE";
35
- MembershipStatus["SUSPENDED"] = "SUSPENDED";
36
- MembershipStatus["REMOVED"] = "REMOVED";
37
- })(MembershipStatus || (exports.MembershipStatus = MembershipStatus = {}));
38
- /* ====================================================================
39
- UI PREFERENCES
40
- ==================================================================== */
41
- var Theme;
42
- (function (Theme) {
43
- Theme["LIGHT"] = "LIGHT";
44
- Theme["DARK"] = "DARK";
45
- Theme["SYSTEM"] = "SYSTEM";
46
- })(Theme || (exports.Theme = Theme = {}));
47
- var Currency;
48
- (function (Currency) {
49
- Currency["USD"] = "USD";
50
- Currency["EUR"] = "EUR";
51
- Currency["GBP"] = "GBP";
52
- Currency["INR"] = "INR";
53
- Currency["AUD"] = "AUD";
54
- Currency["CAD"] = "CAD";
55
- Currency["JPY"] = "JPY";
56
- Currency["SGD"] = "SGD";
57
- })(Currency || (exports.Currency = Currency = {}));
58
- /* ====================================================================
59
- CLOUD PROVIDERS
60
- Used by cloud-service for account connections, and by insights-service
61
- for normalising cost/resource data across providers.
62
- ==================================================================== */
6
+ exports.TimeGrouping = exports.InviteStatus = exports.InviteScopeType = exports.RoleAssignmentStatus = exports.ScopeType = exports.PermissionCategory = exports.RoleCategory = exports.RoleType = exports.CloudAccountOwnerType = exports.WorkspaceType = exports.MembershipStatus = exports.WorkspaceStatus = exports.OrganizationStatus = exports.Currency = exports.Theme = exports.UserStatus = exports.ServiceClientStatus = exports.PlatformRoleAssignmentStatus = exports.PlatformPermissionCategory = exports.PlatformRoleCategory = exports.PlatformRoleType = exports.OAuthProvider = exports.AccountTokenType = exports.AccountStatus = exports.ReportFormat = exports.ReportStatus = exports.ReportType = exports.BudgetStatus = exports.BudgetPeriod = exports.NotificationChannelType = exports.AlertRuleMetric = exports.AlertRuleOperator = exports.AlertStatus = exports.RecommendationStatus = exports.RecommendationCategory = exports.Severity = exports.ResourceEventType = exports.SyncTrigger = exports.SyncType = exports.SyncStatus = exports.CloudAccountStatus = exports.AzureAuthMethod = exports.GcpAuthMethod = exports.AwsAuthMethod = exports.CloudProvider = void 0;
63
7
  var CloudProvider;
64
8
  (function (CloudProvider) {
65
9
  CloudProvider["AWS"] = "AWS";
66
10
  CloudProvider["GCP"] = "GCP";
67
11
  CloudProvider["AZURE"] = "AZURE";
68
12
  })(CloudProvider || (exports.CloudProvider = CloudProvider = {}));
69
- /* ====================================================================
70
- CLOUD ACCOUNT AUTH METHODS
71
- Discriminator for which credential shape is stored per provider.
72
- Each provider has its own enum — exactly one is set per CloudAccount
73
- and determines how the credential cipher stores + retrieves secrets.
74
- ==================================================================== */
75
- /**
76
- * AWS auth methods.
77
- *
78
- * ACCESS_KEY — Long-lived Access Key ID + Secret Access Key.
79
- * Simplest to set up; least preferred for production.
80
- * IAM_ROLE — Cross-account role assumption via Role ARN + External ID.
81
- * Recommended for production AWS integrations.
82
- * IAM_IDENTITY_CENTER — AWS SSO / IAM Identity Center (formerly AWS SSO).
83
- * Used in organisations with centralised identity.
84
- * IAM_ROLES_ANYWHERE — Certificate-based role assumption for non-AWS workloads.
85
- */
13
+ /* ---------------------------------------------------------------------------
14
+ Cloud Authentication
15
+ --------------------------------------------------------------------------- */
86
16
  var AwsAuthMethod;
87
17
  (function (AwsAuthMethod) {
88
18
  AwsAuthMethod["ACCESS_KEY"] = "ACCESS_KEY";
@@ -90,29 +20,12 @@ var AwsAuthMethod;
90
20
  AwsAuthMethod["IAM_IDENTITY_CENTER"] = "IAM_IDENTITY_CENTER";
91
21
  AwsAuthMethod["IAM_ROLES_ANYWHERE"] = "IAM_ROLES_ANYWHERE";
92
22
  })(AwsAuthMethod || (exports.AwsAuthMethod = AwsAuthMethod = {}));
93
- /**
94
- * GCP auth methods.
95
- *
96
- * SERVICE_ACCOUNT_KEY — JSON key file for a GCP service account.
97
- * Simpler but requires secure key storage.
98
- * WORKLOAD_IDENTITY — Keyless auth using Workload Identity Federation.
99
- * Preferred for production.
100
- * SERVICE_ACCOUNT_IMPERSONATION — Short-lived tokens via service account impersonation.
101
- */
102
23
  var GcpAuthMethod;
103
24
  (function (GcpAuthMethod) {
104
25
  GcpAuthMethod["SERVICE_ACCOUNT_KEY"] = "SERVICE_ACCOUNT_KEY";
105
26
  GcpAuthMethod["WORKLOAD_IDENTITY"] = "WORKLOAD_IDENTITY";
106
27
  GcpAuthMethod["SERVICE_ACCOUNT_IMPERSONATION"] = "SERVICE_ACCOUNT_IMPERSONATION";
107
28
  })(GcpAuthMethod || (exports.GcpAuthMethod = GcpAuthMethod = {}));
108
- /**
109
- * Azure auth methods.
110
- *
111
- * SERVICE_PRINCIPAL_SECRET — Client ID + Client Secret for an app registration.
112
- * SERVICE_PRINCIPAL_CERTIFICATE — Client ID + certificate (more secure than secret).
113
- * MANAGED_IDENTITY_USER — User-assigned managed identity.
114
- * MANAGED_IDENTITY_SYSTEM — System-assigned managed identity (tied to the resource).
115
- */
116
29
  var AzureAuthMethod;
117
30
  (function (AzureAuthMethod) {
118
31
  AzureAuthMethod["SERVICE_PRINCIPAL_SECRET"] = "SERVICE_PRINCIPAL_SECRET";
@@ -120,10 +33,9 @@ var AzureAuthMethod;
120
33
  AzureAuthMethod["MANAGED_IDENTITY_USER"] = "MANAGED_IDENTITY_USER";
121
34
  AzureAuthMethod["MANAGED_IDENTITY_SYSTEM"] = "MANAGED_IDENTITY_SYSTEM";
122
35
  })(AzureAuthMethod || (exports.AzureAuthMethod = AzureAuthMethod = {}));
123
- /* ====================================================================
124
- CLOUD ACCOUNT STATUS
125
- Lifecycle state of a connected cloud account.
126
- ==================================================================== */
36
+ /* ---------------------------------------------------------------------------
37
+ Cloud Account Status
38
+ --------------------------------------------------------------------------- */
127
39
  var CloudAccountStatus;
128
40
  (function (CloudAccountStatus) {
129
41
  CloudAccountStatus["PENDING"] = "PENDING";
@@ -131,10 +43,9 @@ var CloudAccountStatus;
131
43
  CloudAccountStatus["ERROR"] = "ERROR";
132
44
  CloudAccountStatus["INACTIVE"] = "INACTIVE";
133
45
  })(CloudAccountStatus || (exports.CloudAccountStatus = CloudAccountStatus = {}));
134
- /* ====================================================================
135
- SYNC JOB
136
- Tracks the lifecycle and scope of a single sync run.
137
- ==================================================================== */
46
+ /* ---------------------------------------------------------------------------
47
+ Sync Jobs
48
+ --------------------------------------------------------------------------- */
138
49
  var SyncStatus;
139
50
  (function (SyncStatus) {
140
51
  SyncStatus["PENDING"] = "PENDING";
@@ -150,3 +61,319 @@ var SyncType;
150
61
  SyncType["RESOURCES"] = "RESOURCES";
151
62
  SyncType["BUDGETS"] = "BUDGETS";
152
63
  })(SyncType || (exports.SyncType = SyncType = {}));
64
+ var SyncTrigger;
65
+ (function (SyncTrigger) {
66
+ SyncTrigger["MANUAL"] = "MANUAL";
67
+ SyncTrigger["SCHEDULED"] = "SCHEDULED";
68
+ SyncTrigger["WEBHOOK"] = "WEBHOOK";
69
+ })(SyncTrigger || (exports.SyncTrigger = SyncTrigger = {}));
70
+ /* ---------------------------------------------------------------------------
71
+ Insights Service
72
+ --------------------------------------------------------------------------- */
73
+ /**
74
+ * Type of change detected in a cloud resource lifecycle.
75
+ */
76
+ var ResourceEventType;
77
+ (function (ResourceEventType) {
78
+ ResourceEventType["CREATED"] = "CREATED";
79
+ ResourceEventType["UPDATED"] = "UPDATED";
80
+ ResourceEventType["DELETED"] = "DELETED";
81
+ ResourceEventType["STATUS_CHANGED"] = "STATUS_CHANGED";
82
+ ResourceEventType["CONFIG_CHANGED"] = "CONFIG_CHANGED";
83
+ ResourceEventType["SECURITY_CHANGED"] = "SECURITY_CHANGED";
84
+ ResourceEventType["COST_CHANGED"] = "COST_CHANGED";
85
+ })(ResourceEventType || (exports.ResourceEventType = ResourceEventType = {}));
86
+ /**
87
+ * Generic severity scale used by alerts, recommendations,
88
+ * resource events, and future security findings.
89
+ */
90
+ var Severity;
91
+ (function (Severity) {
92
+ Severity["INFO"] = "INFO";
93
+ Severity["LOW"] = "LOW";
94
+ Severity["MEDIUM"] = "MEDIUM";
95
+ Severity["HIGH"] = "HIGH";
96
+ Severity["CRITICAL"] = "CRITICAL";
97
+ })(Severity || (exports.Severity = Severity = {}));
98
+ /**
99
+ * Optimization recommendation category.
100
+ */
101
+ var RecommendationCategory;
102
+ (function (RecommendationCategory) {
103
+ RecommendationCategory["COST"] = "COST";
104
+ RecommendationCategory["SECURITY"] = "SECURITY";
105
+ RecommendationCategory["PERFORMANCE"] = "PERFORMANCE";
106
+ RecommendationCategory["RELIABILITY"] = "RELIABILITY";
107
+ })(RecommendationCategory || (exports.RecommendationCategory = RecommendationCategory = {}));
108
+ /**
109
+ * Lifecycle status of a recommendation.
110
+ */
111
+ var RecommendationStatus;
112
+ (function (RecommendationStatus) {
113
+ RecommendationStatus["OPEN"] = "OPEN";
114
+ RecommendationStatus["APPLIED"] = "APPLIED";
115
+ RecommendationStatus["DISMISSED"] = "DISMISSED";
116
+ })(RecommendationStatus || (exports.RecommendationStatus = RecommendationStatus = {}));
117
+ /**
118
+ * User-facing alert lifecycle state.
119
+ */
120
+ var AlertStatus;
121
+ (function (AlertStatus) {
122
+ AlertStatus["OPEN"] = "OPEN";
123
+ AlertStatus["ACKNOWLEDGED"] = "ACKNOWLEDGED";
124
+ AlertStatus["RESOLVED"] = "RESOLVED";
125
+ })(AlertStatus || (exports.AlertStatus = AlertStatus = {}));
126
+ var AlertRuleOperator;
127
+ (function (AlertRuleOperator) {
128
+ AlertRuleOperator["GT"] = "GT";
129
+ AlertRuleOperator["LT"] = "LT";
130
+ AlertRuleOperator["GTE"] = "GTE";
131
+ AlertRuleOperator["LTE"] = "LTE";
132
+ })(AlertRuleOperator || (exports.AlertRuleOperator = AlertRuleOperator = {}));
133
+ var AlertRuleMetric;
134
+ (function (AlertRuleMetric) {
135
+ AlertRuleMetric["COST_DAILY"] = "COST_DAILY";
136
+ AlertRuleMetric["COST_MONTHLY"] = "COST_MONTHLY";
137
+ AlertRuleMetric["RESOURCE_COUNT"] = "RESOURCE_COUNT";
138
+ AlertRuleMetric["BUDGET_UTILIZATION"] = "BUDGET_UTILIZATION";
139
+ })(AlertRuleMetric || (exports.AlertRuleMetric = AlertRuleMetric = {}));
140
+ var NotificationChannelType;
141
+ (function (NotificationChannelType) {
142
+ NotificationChannelType["EMAIL"] = "EMAIL";
143
+ NotificationChannelType["SLACK"] = "SLACK";
144
+ NotificationChannelType["WEBHOOK"] = "WEBHOOK";
145
+ })(NotificationChannelType || (exports.NotificationChannelType = NotificationChannelType = {}));
146
+ var BudgetPeriod;
147
+ (function (BudgetPeriod) {
148
+ BudgetPeriod["DAILY"] = "DAILY";
149
+ BudgetPeriod["WEEKLY"] = "WEEKLY";
150
+ BudgetPeriod["MONTHLY"] = "MONTHLY";
151
+ BudgetPeriod["QUARTERLY"] = "QUARTERLY";
152
+ BudgetPeriod["ANNUAL"] = "ANNUAL";
153
+ })(BudgetPeriod || (exports.BudgetPeriod = BudgetPeriod = {}));
154
+ var BudgetStatus;
155
+ (function (BudgetStatus) {
156
+ BudgetStatus["OK"] = "OK";
157
+ BudgetStatus["WARNING"] = "WARNING";
158
+ BudgetStatus["EXCEEDED"] = "EXCEEDED";
159
+ })(BudgetStatus || (exports.BudgetStatus = BudgetStatus = {}));
160
+ var ReportType;
161
+ (function (ReportType) {
162
+ ReportType["COST"] = "COST";
163
+ ReportType["RESOURCE"] = "RESOURCE";
164
+ ReportType["SECURITY"] = "SECURITY";
165
+ ReportType["COMPLIANCE"] = "COMPLIANCE";
166
+ ReportType["EXECUTIVE"] = "EXECUTIVE";
167
+ })(ReportType || (exports.ReportType = ReportType = {}));
168
+ var ReportStatus;
169
+ (function (ReportStatus) {
170
+ ReportStatus["PENDING"] = "PENDING";
171
+ ReportStatus["GENERATING"] = "GENERATING";
172
+ ReportStatus["COMPLETED"] = "COMPLETED";
173
+ ReportStatus["FAILED"] = "FAILED";
174
+ })(ReportStatus || (exports.ReportStatus = ReportStatus = {}));
175
+ var ReportFormat;
176
+ (function (ReportFormat) {
177
+ ReportFormat["PDF"] = "PDF";
178
+ ReportFormat["CSV"] = "CSV";
179
+ ReportFormat["EXCEL"] = "EXCEL";
180
+ })(ReportFormat || (exports.ReportFormat = ReportFormat = {}));
181
+ /* ---------------------------------------------------------------------------
182
+ Auth Service
183
+ --------------------------------------------------------------------------- */
184
+ var AccountStatus;
185
+ (function (AccountStatus) {
186
+ AccountStatus["ACTIVE"] = "ACTIVE";
187
+ AccountStatus["SUSPENDED"] = "SUSPENDED";
188
+ AccountStatus["PENDING_DELETION"] = "PENDING_DELETION";
189
+ AccountStatus["DELETED"] = "DELETED";
190
+ })(AccountStatus || (exports.AccountStatus = AccountStatus = {}));
191
+ var AccountTokenType;
192
+ (function (AccountTokenType) {
193
+ AccountTokenType["EMAIL_VERIFICATION"] = "EMAIL_VERIFICATION";
194
+ AccountTokenType["PASSWORD_RESET"] = "PASSWORD_RESET";
195
+ AccountTokenType["MAGIC_LINK"] = "MAGIC_LINK";
196
+ AccountTokenType["UNLOCK_ACCOUNT"] = "UNLOCK_ACCOUNT";
197
+ })(AccountTokenType || (exports.AccountTokenType = AccountTokenType = {}));
198
+ var OAuthProvider;
199
+ (function (OAuthProvider) {
200
+ OAuthProvider["GOOGLE"] = "GOOGLE";
201
+ OAuthProvider["GITHUB"] = "GITHUB";
202
+ OAuthProvider["MICROSOFT"] = "MICROSOFT";
203
+ OAuthProvider["AMAZON"] = "AMAZON";
204
+ })(OAuthProvider || (exports.OAuthProvider = OAuthProvider = {}));
205
+ var PlatformRoleType;
206
+ (function (PlatformRoleType) {
207
+ PlatformRoleType["SYSTEM"] = "SYSTEM";
208
+ PlatformRoleType["CUSTOM"] = "CUSTOM";
209
+ })(PlatformRoleType || (exports.PlatformRoleType = PlatformRoleType = {}));
210
+ var PlatformRoleCategory;
211
+ (function (PlatformRoleCategory) {
212
+ PlatformRoleCategory["SUPER_ADMIN"] = "SUPER_ADMIN";
213
+ PlatformRoleCategory["SYSTEM_ADMIN"] = "SYSTEM_ADMIN";
214
+ PlatformRoleCategory["SUPPORT"] = "SUPPORT";
215
+ PlatformRoleCategory["ACCOUNT_MANAGER"] = "ACCOUNT_MANAGER";
216
+ PlatformRoleCategory["SECURITY"] = "SECURITY";
217
+ PlatformRoleCategory["BILLING"] = "BILLING";
218
+ PlatformRoleCategory["AUDITOR"] = "AUDITOR";
219
+ PlatformRoleCategory["CUSTOM"] = "CUSTOM";
220
+ })(PlatformRoleCategory || (exports.PlatformRoleCategory = PlatformRoleCategory = {}));
221
+ var PlatformPermissionCategory;
222
+ (function (PlatformPermissionCategory) {
223
+ PlatformPermissionCategory["TENANT_MANAGEMENT"] = "TENANT_MANAGEMENT";
224
+ PlatformPermissionCategory["USER_MANAGEMENT"] = "USER_MANAGEMENT";
225
+ PlatformPermissionCategory["ACCESS_MANAGEMENT"] = "ACCESS_MANAGEMENT";
226
+ PlatformPermissionCategory["BILLING_AND_SUBSCRIPTION"] = "BILLING_AND_SUBSCRIPTION";
227
+ PlatformPermissionCategory["SYSTEM_CONFIGURATION"] = "SYSTEM_CONFIGURATION";
228
+ PlatformPermissionCategory["SECURITY_AND_COMPLIANCE"] = "SECURITY_AND_COMPLIANCE";
229
+ PlatformPermissionCategory["SUPPORT_AND_TROUBLESHOOTING"] = "SUPPORT_AND_TROUBLESHOOTING";
230
+ PlatformPermissionCategory["ANALYTICS_AND_REPORTING"] = "ANALYTICS_AND_REPORTING";
231
+ })(PlatformPermissionCategory || (exports.PlatformPermissionCategory = PlatformPermissionCategory = {}));
232
+ var PlatformRoleAssignmentStatus;
233
+ (function (PlatformRoleAssignmentStatus) {
234
+ PlatformRoleAssignmentStatus["ACTIVE"] = "ACTIVE";
235
+ PlatformRoleAssignmentStatus["REVOKED"] = "REVOKED";
236
+ })(PlatformRoleAssignmentStatus || (exports.PlatformRoleAssignmentStatus = PlatformRoleAssignmentStatus = {}));
237
+ var ServiceClientStatus;
238
+ (function (ServiceClientStatus) {
239
+ ServiceClientStatus["ACTIVE"] = "ACTIVE";
240
+ ServiceClientStatus["DISABLED"] = "DISABLED";
241
+ ServiceClientStatus["REVOKED"] = "REVOKED";
242
+ })(ServiceClientStatus || (exports.ServiceClientStatus = ServiceClientStatus = {}));
243
+ /* ---------------------------------------------------------------------------
244
+ User Service
245
+ --------------------------------------------------------------------------- */
246
+ var UserStatus;
247
+ (function (UserStatus) {
248
+ UserStatus["ACTIVE"] = "ACTIVE";
249
+ UserStatus["SUSPENDED"] = "SUSPENDED";
250
+ UserStatus["PENDING_DELETION"] = "PENDING_DELETION";
251
+ })(UserStatus || (exports.UserStatus = UserStatus = {}));
252
+ var Theme;
253
+ (function (Theme) {
254
+ Theme["LIGHT"] = "LIGHT";
255
+ Theme["DARK"] = "DARK";
256
+ Theme["SYSTEM"] = "SYSTEM";
257
+ })(Theme || (exports.Theme = Theme = {}));
258
+ var Currency;
259
+ (function (Currency) {
260
+ Currency["USD"] = "USD";
261
+ Currency["EUR"] = "EUR";
262
+ Currency["GBP"] = "GBP";
263
+ Currency["INR"] = "INR";
264
+ Currency["AUD"] = "AUD";
265
+ Currency["CAD"] = "CAD";
266
+ Currency["JPY"] = "JPY";
267
+ Currency["SGD"] = "SGD";
268
+ })(Currency || (exports.Currency = Currency = {}));
269
+ var OrganizationStatus;
270
+ (function (OrganizationStatus) {
271
+ OrganizationStatus["ACTIVE"] = "ACTIVE";
272
+ OrganizationStatus["SUSPENDED"] = "SUSPENDED";
273
+ OrganizationStatus["PENDING_DELETION"] = "PENDING_DELETION";
274
+ })(OrganizationStatus || (exports.OrganizationStatus = OrganizationStatus = {}));
275
+ var WorkspaceStatus;
276
+ (function (WorkspaceStatus) {
277
+ WorkspaceStatus["ACTIVE"] = "ACTIVE";
278
+ WorkspaceStatus["SUSPENDED"] = "SUSPENDED";
279
+ WorkspaceStatus["PENDING_DELETION"] = "PENDING_DELETION";
280
+ })(WorkspaceStatus || (exports.WorkspaceStatus = WorkspaceStatus = {}));
281
+ var MembershipStatus;
282
+ (function (MembershipStatus) {
283
+ MembershipStatus["ACTIVE"] = "ACTIVE";
284
+ MembershipStatus["INACTIVE"] = "INACTIVE";
285
+ })(MembershipStatus || (exports.MembershipStatus = MembershipStatus = {}));
286
+ var WorkspaceType;
287
+ (function (WorkspaceType) {
288
+ WorkspaceType["PERSONAL"] = "PERSONAL";
289
+ WorkspaceType["ORGANIZATION"] = "ORGANIZATION";
290
+ })(WorkspaceType || (exports.WorkspaceType = WorkspaceType = {}));
291
+ // Defines who owns a CloudAccount — an Organization or a Personal Workspace.
292
+ var CloudAccountOwnerType;
293
+ (function (CloudAccountOwnerType) {
294
+ CloudAccountOwnerType["ORGANIZATION"] = "ORGANIZATION";
295
+ CloudAccountOwnerType["PERSONAL_WORKSPACE"] = "PERSONAL_WORKSPACE";
296
+ })(CloudAccountOwnerType || (exports.CloudAccountOwnerType = CloudAccountOwnerType = {}));
297
+ var RoleType;
298
+ (function (RoleType) {
299
+ RoleType["SYSTEM"] = "SYSTEM";
300
+ RoleType["CUSTOM"] = "CUSTOM";
301
+ })(RoleType || (exports.RoleType = RoleType = {}));
302
+ var RoleCategory;
303
+ (function (RoleCategory) {
304
+ RoleCategory["OWNER"] = "OWNER";
305
+ RoleCategory["ADMIN"] = "ADMIN";
306
+ RoleCategory["MEMBER"] = "MEMBER";
307
+ RoleCategory["VIEWER"] = "VIEWER";
308
+ RoleCategory["FINOPS"] = "FINOPS";
309
+ RoleCategory["BILLING"] = "BILLING";
310
+ RoleCategory["SECURITY"] = "SECURITY";
311
+ RoleCategory["ENGINEERING"] = "ENGINEERING";
312
+ RoleCategory["DEVELOPER"] = "DEVELOPER";
313
+ RoleCategory["AUTOMATION"] = "AUTOMATION";
314
+ RoleCategory["CUSTOM"] = "CUSTOM";
315
+ })(RoleCategory || (exports.RoleCategory = RoleCategory = {}));
316
+ var PermissionCategory;
317
+ (function (PermissionCategory) {
318
+ PermissionCategory["ORGANIZATION"] = "ORGANIZATION";
319
+ PermissionCategory["ORGANIZATION_MEMBERS"] = "ORGANIZATION_MEMBERS";
320
+ PermissionCategory["ORGANIZATION_INVITES"] = "ORGANIZATION_INVITES";
321
+ PermissionCategory["ORGANIZATION_ROLES"] = "ORGANIZATION_ROLES";
322
+ PermissionCategory["WORKSPACE"] = "WORKSPACE";
323
+ PermissionCategory["WORKSPACE_MEMBERS"] = "WORKSPACE_MEMBERS";
324
+ PermissionCategory["WORKSPACE_INVITES"] = "WORKSPACE_INVITES";
325
+ PermissionCategory["CLOUD_ACCOUNT"] = "CLOUD_ACCOUNT";
326
+ PermissionCategory["CLOUD_RESOURCE"] = "CLOUD_RESOURCE";
327
+ PermissionCategory["INVENTORY"] = "INVENTORY";
328
+ PermissionCategory["COST_MANAGEMENT"] = "COST_MANAGEMENT";
329
+ PermissionCategory["BUDGET"] = "BUDGET";
330
+ PermissionCategory["FORECASTING"] = "FORECASTING";
331
+ PermissionCategory["OPTIMIZATION"] = "OPTIMIZATION";
332
+ PermissionCategory["RECOMMENDATION"] = "RECOMMENDATION";
333
+ PermissionCategory["ALERTING"] = "ALERTING";
334
+ PermissionCategory["ANOMALY_DETECTION"] = "ANOMALY_DETECTION";
335
+ PermissionCategory["NOTIFICATION"] = "NOTIFICATION";
336
+ PermissionCategory["DASHBOARD"] = "DASHBOARD";
337
+ PermissionCategory["REPORTING"] = "REPORTING";
338
+ PermissionCategory["ANALYTICS"] = "ANALYTICS";
339
+ PermissionCategory["SECURITY"] = "SECURITY";
340
+ PermissionCategory["COMPLIANCE"] = "COMPLIANCE";
341
+ PermissionCategory["AUDIT"] = "AUDIT";
342
+ PermissionCategory["AUTOMATION"] = "AUTOMATION";
343
+ PermissionCategory["WORKFLOW"] = "WORKFLOW";
344
+ PermissionCategory["BILLING"] = "BILLING";
345
+ PermissionCategory["SUBSCRIPTION"] = "SUBSCRIPTION";
346
+ PermissionCategory["SYSTEM_CONFIG"] = "SYSTEM_CONFIG";
347
+ })(PermissionCategory || (exports.PermissionCategory = PermissionCategory = {}));
348
+ var ScopeType;
349
+ (function (ScopeType) {
350
+ ScopeType["ORGANIZATION"] = "ORGANIZATION";
351
+ ScopeType["WORKSPACE"] = "WORKSPACE";
352
+ })(ScopeType || (exports.ScopeType = ScopeType = {}));
353
+ var RoleAssignmentStatus;
354
+ (function (RoleAssignmentStatus) {
355
+ RoleAssignmentStatus["ACTIVE"] = "ACTIVE";
356
+ RoleAssignmentStatus["REVOKED"] = "REVOKED";
357
+ })(RoleAssignmentStatus || (exports.RoleAssignmentStatus = RoleAssignmentStatus = {}));
358
+ var InviteScopeType;
359
+ (function (InviteScopeType) {
360
+ InviteScopeType["ORGANIZATION"] = "ORGANIZATION";
361
+ InviteScopeType["WORKSPACE"] = "WORKSPACE";
362
+ })(InviteScopeType || (exports.InviteScopeType = InviteScopeType = {}));
363
+ var InviteStatus;
364
+ (function (InviteStatus) {
365
+ InviteStatus["PENDING"] = "PENDING";
366
+ InviteStatus["ACCEPTED"] = "ACCEPTED";
367
+ InviteStatus["REJECTED"] = "REJECTED";
368
+ InviteStatus["REVOKED"] = "REVOKED";
369
+ InviteStatus["EXPIRED"] = "EXPIRED";
370
+ })(InviteStatus || (exports.InviteStatus = InviteStatus = {}));
371
+ /* ---------------------------------------------------------------------------
372
+ Insights Service (Shared Aggregations)
373
+ --------------------------------------------------------------------------- */
374
+ var TimeGrouping;
375
+ (function (TimeGrouping) {
376
+ TimeGrouping["DAY"] = "day";
377
+ TimeGrouping["WEEK"] = "week";
378
+ TimeGrouping["MONTH"] = "month";
379
+ })(TimeGrouping || (exports.TimeGrouping = TimeGrouping = {}));
@@ -1,2 +1,2 @@
1
- export * from "./permissions.enums";
2
- export * from "./domain.enums";
1
+ export * from './permissions.enums';
2
+ export * from './domain.enums';