@cloud-copilot/iam-data 0.9.202507291 → 0.10.202508241

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 (129) hide show
  1. package/data/actions/aoss.json +32 -0
  2. package/data/actions/aps.json +51 -0
  3. package/data/actions/arc-region-switch.json +334 -0
  4. package/data/actions/arc-zonal-shift.json +50 -0
  5. package/data/actions/auditmanager.json +14 -1
  6. package/data/actions/batch.json +162 -6
  7. package/data/actions/bcm-dashboards.json +74 -0
  8. package/data/actions/bcm-recommended-actions.json +10 -0
  9. package/data/actions/bedrock-agentcore.json +328 -30
  10. package/data/actions/bedrock.json +459 -0
  11. package/data/actions/budgets.json +6 -2
  12. package/data/actions/cases.json +22 -2
  13. package/data/actions/chatbot.json +87 -20
  14. package/data/actions/cleanrooms-ml.json +11 -0
  15. package/data/actions/cleanrooms.json +44 -0
  16. package/data/actions/connect.json +23 -0
  17. package/data/actions/datazone.json +64 -0
  18. package/data/actions/deadline.json +32 -10
  19. package/data/actions/dms.json +1 -8
  20. package/data/actions/ds.json +122 -0
  21. package/data/actions/events.json +16 -0
  22. package/data/actions/glue.json +32 -0
  23. package/data/actions/groundtruthlabeling.json +7 -7
  24. package/data/actions/guardduty.json +173 -0
  25. package/data/actions/imagebuilder.json +185 -237
  26. package/data/actions/iot.json +31 -0
  27. package/data/actions/iotmanagedintegrations.json +11 -4
  28. package/data/actions/iotsitewise.json +271 -0
  29. package/data/actions/observabilityadmin.json +196 -0
  30. package/data/actions/odb.json +4 -4
  31. package/data/actions/outposts.json +15 -0
  32. package/data/actions/partnercentral.json +96 -32
  33. package/data/actions/qbusiness.json +20 -46
  34. package/data/actions/quicksight.json +2 -6
  35. package/data/actions/rds.json +12 -6
  36. package/data/actions/repostspace.json +90 -0
  37. package/data/actions/s3.json +261 -125
  38. package/data/actions/s3express.json +24 -4
  39. package/data/actions/sagemaker.json +128 -0
  40. package/data/actions/security-ir.json +23 -8
  41. package/data/actions/securityhub.json +12 -0
  42. package/data/actions/servicediscovery.json +140 -14
  43. package/data/actions/ses.json +286 -2
  44. package/data/actions/social-messaging.json +64 -0
  45. package/data/actions/sso.json +34 -50
  46. package/data/actions/transcribe.json +12 -0
  47. package/data/actions/uxc.json +26 -0
  48. package/data/actions/workspaces-web.json +112 -0
  49. package/data/actions/workspaces.json +114 -0
  50. package/data/actions/xray.json +9 -3
  51. package/data/conditionKeys/arc-region-switch.json +17 -0
  52. package/data/conditionKeys/bcm-dashboards.json +1 -0
  53. package/data/conditionKeys/bcm-recommended-actions.json +1 -0
  54. package/data/conditionKeys/chatbot.json +17 -1
  55. package/data/conditionKeys/ebs.json +2 -2
  56. package/data/conditionKeys/imagebuilder.json +2 -2
  57. package/data/conditionKeys/iotmanagedintegrations.json +10 -0
  58. package/data/conditionKeys/observabilityadmin.json +17 -1
  59. package/data/conditionKeys/quicksight.json +0 -5
  60. package/data/conditionKeys/rds.json +5 -0
  61. package/data/conditionKeys/s3.json +5 -0
  62. package/data/conditionKeys/s3express.json +5 -0
  63. package/data/conditionKeys/savingsplans.json +1 -1
  64. package/data/conditionKeys/secretsmanager.json +1 -1
  65. package/data/conditionKeys/servicediscovery.json +5 -0
  66. package/data/conditionKeys/ses.json +5 -0
  67. package/data/conditionKeys/uxc.json +1 -0
  68. package/data/conditionKeys/xray.json +10 -0
  69. package/data/conditionPatterns.json +128 -0
  70. package/data/resourceTypes/apigateway.json +3 -3
  71. package/data/resourceTypes/arc-region-switch.json +9 -0
  72. package/data/resourceTypes/batch.json +14 -0
  73. package/data/resourceTypes/bcm-dashboards.json +1 -0
  74. package/data/resourceTypes/bcm-recommended-actions.json +1 -0
  75. package/data/resourceTypes/bedrock-agentcore.json +8 -0
  76. package/data/resourceTypes/bedrock.json +14 -0
  77. package/data/resourceTypes/chatbot.json +8 -2
  78. package/data/resourceTypes/deadline.json +4 -1
  79. package/data/resourceTypes/execute-api.json +1 -1
  80. package/data/resourceTypes/guardduty.json +14 -0
  81. package/data/resourceTypes/imagebuilder.json +12 -18
  82. package/data/resourceTypes/iotsitewise.json +7 -0
  83. package/data/resourceTypes/mpa.json +3 -3
  84. package/data/resourceTypes/observabilityadmin.json +16 -1
  85. package/data/resourceTypes/partnercentral.json +8 -2
  86. package/data/resourceTypes/qbusiness.json +0 -4
  87. package/data/resourceTypes/s3.json +19 -1
  88. package/data/resourceTypes/s3express.json +5 -1
  89. package/data/resourceTypes/securityhub.json +12 -3
  90. package/data/resourceTypes/ses.json +11 -0
  91. package/data/resourceTypes/uxc.json +1 -0
  92. package/data/resourceTypes/workspaces-web.json +7 -0
  93. package/data/resourceTypes/workspaces.json +4 -0
  94. package/data/serviceNames.json +4 -0
  95. package/data/services.json +4 -0
  96. package/data/unassociatedConditions.json +20 -0
  97. package/dist/cjs/conditionKeys.d.ts +1 -0
  98. package/dist/cjs/conditionKeys.d.ts.map +1 -1
  99. package/dist/cjs/conditionKeys.js +7 -0
  100. package/dist/cjs/conditionKeys.js.map +1 -1
  101. package/dist/cjs/data.d.ts +12 -0
  102. package/dist/cjs/data.d.ts.map +1 -1
  103. package/dist/cjs/data.js +18 -0
  104. package/dist/cjs/data.js.map +1 -1
  105. package/dist/cjs/findConditionKey.d.ts +12 -0
  106. package/dist/cjs/findConditionKey.d.ts.map +1 -0
  107. package/dist/cjs/findConditionKey.js +95 -0
  108. package/dist/cjs/findConditionKey.js.map +1 -0
  109. package/dist/cjs/globalConditionKeys.d.ts +9 -0
  110. package/dist/cjs/globalConditionKeys.d.ts.map +1 -0
  111. package/dist/cjs/globalConditionKeys.js +328 -0
  112. package/dist/cjs/globalConditionKeys.js.map +1 -0
  113. package/dist/esm/conditionKeys.d.ts +1 -0
  114. package/dist/esm/conditionKeys.d.ts.map +1 -1
  115. package/dist/esm/conditionKeys.js +6 -0
  116. package/dist/esm/conditionKeys.js.map +1 -1
  117. package/dist/esm/data.d.ts +12 -0
  118. package/dist/esm/data.d.ts.map +1 -1
  119. package/dist/esm/data.js +16 -0
  120. package/dist/esm/data.js.map +1 -1
  121. package/dist/esm/findConditionKey.d.ts +12 -0
  122. package/dist/esm/findConditionKey.d.ts.map +1 -0
  123. package/dist/esm/findConditionKey.js +92 -0
  124. package/dist/esm/findConditionKey.js.map +1 -0
  125. package/dist/esm/globalConditionKeys.d.ts +9 -0
  126. package/dist/esm/globalConditionKeys.d.ts.map +1 -0
  127. package/dist/esm/globalConditionKeys.js +325 -0
  128. package/dist/esm/globalConditionKeys.js.map +1 -0
  129. package/package.json +2 -2
@@ -0,0 +1,12 @@
1
+ import { ConditionKey } from './conditionKeys.js';
2
+ /**
3
+ * Find the details for a condition key if it exists. This will check both global condition
4
+ * keys and service specific condition keys. If @param conditionKey matches a condition key that
5
+ * contains a variable it will return the matching condition key.
6
+ *
7
+ * If no match can be found, it will return undefined.
8
+ *
9
+ * @param conditionKey the condition key to find, is case insensitive
10
+ */
11
+ export declare function findConditionKey(conditionKey: string): Promise<ConditionKey | undefined>;
12
+ //# sourceMappingURL=findConditionKey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findConditionKey.d.ts","sourceRoot":"","sources":["../../src/findConditionKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAiD,MAAM,oBAAoB,CAAA;AAwBhG;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CA0E9F"}
@@ -0,0 +1,92 @@
1
+ import { iamConditionKeyDetails, iamConditionKeyExists } from './conditionKeys.js';
2
+ import { readConditionPatterns, readUnassociatedConditions } from './data.js';
3
+ import { globalConditionKeys } from './globalConditionKeys.js';
4
+ import { iamServiceExists } from './services.js';
5
+ /**
6
+ * Get the service prefixes to search for a condition key
7
+ *
8
+ * @param servicePrefix the original service prefix from the condition key
9
+ * @returns an array of service prefixes to search
10
+ */
11
+ async function getServicePrefixes(servicePrefix) {
12
+ // Check if the service exists
13
+ const serviceExists = await iamServiceExists(servicePrefix);
14
+ if (serviceExists) {
15
+ return [servicePrefix];
16
+ }
17
+ // Service doesn't exist, check unassociated conditions
18
+ const unassociatedConditions = await readUnassociatedConditions();
19
+ return unassociatedConditions[servicePrefix] || [];
20
+ }
21
+ /**
22
+ * Find the details for a condition key if it exists. This will check both global condition
23
+ * keys and service specific condition keys. If @param conditionKey matches a condition key that
24
+ * contains a variable it will return the matching condition key.
25
+ *
26
+ * If no match can be found, it will return undefined.
27
+ *
28
+ * @param conditionKey the condition key to find, is case insensitive
29
+ */
30
+ export async function findConditionKey(conditionKey) {
31
+ const normalizedConditionKey = conditionKey.toLowerCase();
32
+ // If it starts with 'aws', check global condition keys
33
+ if (normalizedConditionKey.startsWith('aws:')) {
34
+ // First check for exact match in global condition keys
35
+ const exactGlobalMatch = globalConditionKeys.find((gck) => gck.key.toLowerCase() === normalizedConditionKey);
36
+ if (exactGlobalMatch) {
37
+ return exactGlobalMatch;
38
+ }
39
+ // Then check global condition keys with variables (like aws:PrincipalTag/tag-key)
40
+ const variableGlobalMatch = globalConditionKeys.find((gck) => {
41
+ const pattern = gck.key.toLowerCase();
42
+ if (pattern.includes('/')) {
43
+ // Handle patterns like 'aws:principaltag/tag-key' where 'tag-key' is a variable
44
+ const [prefix, suffix] = pattern.split('/');
45
+ return normalizedConditionKey.startsWith(prefix + '/') && suffix === 'tag-key';
46
+ }
47
+ return false;
48
+ });
49
+ if (variableGlobalMatch) {
50
+ return variableGlobalMatch;
51
+ }
52
+ return undefined;
53
+ }
54
+ // If it doesn't start with 'aws', extract the service prefix
55
+ const colonIndex = normalizedConditionKey.indexOf(':');
56
+ if (colonIndex === -1) {
57
+ return undefined; // No service prefix found
58
+ }
59
+ const servicePrefix = normalizedConditionKey.substring(0, colonIndex);
60
+ // Get all service prefixes to search
61
+ const servicesToSearch = await getServicePrefixes(servicePrefix);
62
+ if (servicesToSearch.length === 0) {
63
+ return undefined; // No services found for this condition prefix
64
+ }
65
+ // Check each service for the condition key
66
+ for (const service of servicesToSearch) {
67
+ // Check for exact match in service condition keys
68
+ const hasConditionKey = await iamConditionKeyExists(service, normalizedConditionKey);
69
+ if (hasConditionKey) {
70
+ return await iamConditionKeyDetails(service, normalizedConditionKey);
71
+ }
72
+ }
73
+ // Last resort: check condition patterns
74
+ const conditionPatterns = await readConditionPatterns();
75
+ const servicePatterns = conditionPatterns[servicePrefix];
76
+ if (servicePatterns) {
77
+ for (const [patternStr, templateKey] of Object.entries(servicePatterns)) {
78
+ const regex = new RegExp(`^${patternStr}$`, 'i');
79
+ console.log(patternStr);
80
+ console.log(normalizedConditionKey);
81
+ if (regex.test(normalizedConditionKey)) {
82
+ // Found a pattern match, try to get the template condition key
83
+ const hasTemplateKey = await iamConditionKeyExists(servicePrefix, templateKey);
84
+ if (hasTemplateKey) {
85
+ return await iamConditionKeyDetails(servicePrefix, templateKey);
86
+ }
87
+ }
88
+ }
89
+ }
90
+ return undefined;
91
+ }
92
+ //# sourceMappingURL=findConditionKey.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"findConditionKey.js","sourceRoot":"","sources":["../../src/findConditionKey.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ConditionKey } from './conditionKeys.js';
2
+ interface GlobalConditionKey extends ConditionKey {
3
+ category: string;
4
+ }
5
+ export declare const globalConditionKeys: GlobalConditionKey[];
6
+ export declare const globalConditionKeysByName: Record<string, GlobalConditionKey>;
7
+ export declare const globalVariableConditionKeysByPrefix: Record<string, GlobalConditionKey>;
8
+ export {};
9
+ //# sourceMappingURL=globalConditionKeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalConditionKeys.d.ts","sourceRoot":"","sources":["../../src/globalConditionKeys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEjD,UAAU,kBAAmB,SAAQ,YAAY;IAC/C,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,mBAAmB,EAAE,kBAAkB,EAyTnD,CAAA;AAED,eAAO,MAAM,yBAAyB,oCAMrC,CAAA;AAED,eAAO,MAAM,mCAAmC,oCAQ/C,CAAA"}
@@ -0,0 +1,325 @@
1
+ export const globalConditionKeys = [
2
+ {
3
+ key: 'aws:PrincipalArn',
4
+ category: 'principal',
5
+ type: 'ARN',
6
+ description: ''
7
+ },
8
+ {
9
+ key: 'aws:PrincipalAccount',
10
+ category: 'principal',
11
+ type: 'String',
12
+ description: ''
13
+ },
14
+ {
15
+ key: 'aws:PrincipalOrgPaths',
16
+ category: 'principal',
17
+ type: 'ArrayOfString',
18
+ description: ''
19
+ },
20
+ {
21
+ key: 'aws:PrincipalOrgID',
22
+ category: 'principal',
23
+ type: 'String',
24
+ description: ''
25
+ },
26
+ {
27
+ key: 'aws:PrincipalTag/tag-key',
28
+ category: 'principal',
29
+ type: 'String',
30
+ description: ''
31
+ },
32
+ {
33
+ key: 'aws:PrincipalIsAWSService',
34
+ category: 'principal',
35
+ type: 'Bool',
36
+ description: ''
37
+ },
38
+ {
39
+ key: 'aws:PrincipalServiceName',
40
+ category: 'principal',
41
+ type: 'String',
42
+ description: ''
43
+ },
44
+ {
45
+ key: 'aws:PrincipalServiceNamesList',
46
+ category: 'principal',
47
+ type: 'ArrayOfString',
48
+ description: ''
49
+ },
50
+ {
51
+ key: 'aws:PrincipalType',
52
+ category: 'principal',
53
+ type: 'String',
54
+ description: ''
55
+ },
56
+ {
57
+ key: 'aws:userid',
58
+ category: 'principal',
59
+ type: 'String',
60
+ description: ''
61
+ },
62
+ {
63
+ key: 'aws:username',
64
+ category: 'principal',
65
+ type: 'String',
66
+ description: ''
67
+ },
68
+ {
69
+ key: 'aws:AssumedRoot',
70
+ category: 'session',
71
+ type: 'String',
72
+ description: ''
73
+ },
74
+ {
75
+ key: 'aws:FederatedProvider',
76
+ category: 'session',
77
+ type: 'String',
78
+ description: ''
79
+ },
80
+ {
81
+ key: 'aws:TokenIssueTime',
82
+ category: 'session',
83
+ type: 'Date',
84
+ description: ''
85
+ },
86
+ {
87
+ key: 'aws:MultiFactorAuthAge',
88
+ category: 'session',
89
+ type: 'Numeric',
90
+ description: ''
91
+ },
92
+ {
93
+ key: 'aws:MultiFactorAuthPresent',
94
+ category: 'session',
95
+ type: 'Bool',
96
+ description: ''
97
+ },
98
+ {
99
+ key: 'aws:ChatbotSourceArn',
100
+ category: 'session',
101
+ type: 'ARN',
102
+ description: ''
103
+ },
104
+ {
105
+ key: 'aws:Ec2InstanceSourceVpc',
106
+ category: 'session',
107
+ type: 'String',
108
+ description: ''
109
+ },
110
+ {
111
+ key: 'aws:Ec2InstanceSourcePrivateIPv4',
112
+ category: 'session',
113
+ type: 'IPAddress',
114
+ description: ''
115
+ },
116
+ {
117
+ key: 'aws:SourceIdentity',
118
+ category: 'session',
119
+ type: 'String',
120
+ description: ''
121
+ },
122
+ {
123
+ key: 'ec2:RoleDelivery',
124
+ category: 'session',
125
+ type: 'Numeric',
126
+ description: ''
127
+ },
128
+ {
129
+ key: 'ec2:SourceInstanceArn',
130
+ category: 'session',
131
+ type: 'ARN',
132
+ description: ''
133
+ },
134
+ {
135
+ key: 'glue:RoleAssumedBy',
136
+ category: 'session',
137
+ type: 'String',
138
+ description: ''
139
+ },
140
+ {
141
+ key: 'glue:CredentialIssuingService',
142
+ category: 'session',
143
+ type: 'String',
144
+ description: ''
145
+ },
146
+ {
147
+ key: 'lambda:SourceFunctionArn',
148
+ category: 'session',
149
+ type: 'ARN',
150
+ description: ''
151
+ },
152
+ {
153
+ key: 'ssm:SourceInstanceArn',
154
+ category: 'session',
155
+ type: 'ARN',
156
+ description: ''
157
+ },
158
+ {
159
+ key: 'identitystore:UserId',
160
+ category: 'session',
161
+ type: 'String',
162
+ description: ''
163
+ },
164
+ {
165
+ key: 'aws:SourceIp',
166
+ category: 'network',
167
+ type: 'IPAddress',
168
+ description: ''
169
+ },
170
+ {
171
+ key: 'aws:SourceVpc',
172
+ category: 'network',
173
+ type: 'String',
174
+ description: ''
175
+ },
176
+ {
177
+ key: 'aws:SourceVpce',
178
+ category: 'network',
179
+ type: 'String',
180
+ description: ''
181
+ },
182
+ {
183
+ key: 'aws:VpcSourceIp',
184
+ category: 'network',
185
+ type: 'IPAddress',
186
+ description: ''
187
+ },
188
+ {
189
+ key: 'aws:ResourceAccount',
190
+ category: 'resource',
191
+ type: 'String',
192
+ description: ''
193
+ },
194
+ {
195
+ key: 'aws:ResourceOrgID',
196
+ category: 'resource',
197
+ type: 'String',
198
+ description: ''
199
+ },
200
+ {
201
+ key: 'aws:ResourceOrgPaths',
202
+ category: 'resource',
203
+ type: 'ArrayOfString',
204
+ description: ''
205
+ },
206
+ {
207
+ key: 'aws:ResourceTag/tag-key',
208
+ category: 'resource',
209
+ type: 'String',
210
+ description: ''
211
+ },
212
+ {
213
+ key: 'aws:CalledVia',
214
+ category: 'request',
215
+ type: 'ArrayOfString',
216
+ description: ''
217
+ },
218
+ {
219
+ key: 'aws:CalledViaFirst',
220
+ category: 'request',
221
+ type: 'String',
222
+ description: ''
223
+ },
224
+ {
225
+ key: 'aws:CalledViaLast',
226
+ category: 'request',
227
+ type: 'String',
228
+ description: ''
229
+ },
230
+ {
231
+ key: 'aws:ViaAWSService',
232
+ category: 'request',
233
+ type: 'Bool',
234
+ description: ''
235
+ },
236
+ {
237
+ key: 'aws:CurrentTime',
238
+ category: 'request',
239
+ type: 'Date',
240
+ description: ''
241
+ },
242
+ {
243
+ key: 'aws:EpochTime',
244
+ category: 'request',
245
+ type: 'Date', //Can Also be Numeric...
246
+ description: ''
247
+ },
248
+ {
249
+ key: 'aws:referer',
250
+ category: 'request',
251
+ type: 'String',
252
+ description: ''
253
+ },
254
+ {
255
+ key: 'aws:RequestedRegion',
256
+ category: 'request',
257
+ type: 'String',
258
+ description: ''
259
+ },
260
+ {
261
+ key: 'aws:RequestTag/tag-key',
262
+ category: 'request',
263
+ type: 'String',
264
+ description: ''
265
+ },
266
+ {
267
+ key: 'aws:TagKeys',
268
+ category: 'request',
269
+ type: 'ArrayOfString',
270
+ description: ''
271
+ },
272
+ {
273
+ key: 'aws:SecureTransport',
274
+ category: 'request',
275
+ type: 'Bool',
276
+ description: ''
277
+ },
278
+ {
279
+ key: 'aws:SourceArn',
280
+ category: 'request',
281
+ type: 'ARN',
282
+ description: ''
283
+ },
284
+ {
285
+ key: 'aws:SourceAccount',
286
+ category: 'request',
287
+ type: 'String',
288
+ description: ''
289
+ },
290
+ {
291
+ key: 'aws:SourceOwner',
292
+ category: 'request',
293
+ type: 'String',
294
+ description: ''
295
+ },
296
+ {
297
+ key: 'aws:SourceOrgPaths',
298
+ category: 'request',
299
+ type: 'ArrayOfString',
300
+ description: ''
301
+ },
302
+ {
303
+ key: 'aws:SourceOrgID',
304
+ category: 'request',
305
+ type: 'String',
306
+ description: ''
307
+ },
308
+ {
309
+ key: 'aws:UserAgent',
310
+ category: 'request',
311
+ type: 'String',
312
+ description: ''
313
+ }
314
+ ];
315
+ export const globalConditionKeysByName = globalConditionKeys.reduce((acc, key) => {
316
+ acc[key.key.toLowerCase()] = key;
317
+ return acc;
318
+ }, {});
319
+ export const globalVariableConditionKeysByPrefix = globalConditionKeys.reduce((acc, key) => {
320
+ if (key.key.includes('/')) {
321
+ acc[key.key.split('/')[0].toLowerCase()] = key;
322
+ }
323
+ return acc;
324
+ }, {});
325
+ //# sourceMappingURL=globalConditionKeys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globalConditionKeys.js","sourceRoot":"","sources":["../../src/globalConditionKeys.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@cloud-copilot/iam-data",
3
- "version": "0.9.202507291",
3
+ "version": "0.10.202508241",
4
4
  "description": "AWS IAM Data",
5
5
  "repository": "github:cloud-copilot/iam-data",
6
- "updatedAt": "2025-07-29T05:06:26.745Z",
6
+ "updatedAt": "2025-08-24T23:10:39.906Z",
7
7
  "exports": {
8
8
  ".": {
9
9
  "import": "./dist/esm/index.js",