@actsecurity/iam-collect 0.1.215

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 (902) hide show
  1. package/LICENSE.txt +661 -0
  2. package/README.md +188 -0
  3. package/dist/cjs/analysis/analyze.d.ts +8 -0
  4. package/dist/cjs/analysis/analyze.d.ts.map +1 -0
  5. package/dist/cjs/analysis/analyze.js +116 -0
  6. package/dist/cjs/analysis/analyze.js.map +1 -0
  7. package/dist/cjs/aws/ClientPool.d.ts +49 -0
  8. package/dist/cjs/aws/ClientPool.d.ts.map +1 -0
  9. package/dist/cjs/aws/ClientPool.js +105 -0
  10. package/dist/cjs/aws/ClientPool.js.map +1 -0
  11. package/dist/cjs/aws/auth.d.ts +11 -0
  12. package/dist/cjs/aws/auth.d.ts.map +1 -0
  13. package/dist/cjs/aws/auth.js +80 -0
  14. package/dist/cjs/aws/auth.js.map +1 -0
  15. package/dist/cjs/aws/coreAuth.d.ts +71 -0
  16. package/dist/cjs/aws/coreAuth.d.ts.map +1 -0
  17. package/dist/cjs/aws/coreAuth.js +133 -0
  18. package/dist/cjs/aws/coreAuth.js.map +1 -0
  19. package/dist/cjs/aws/tokens.d.ts +13 -0
  20. package/dist/cjs/aws/tokens.d.ts.map +1 -0
  21. package/dist/cjs/aws/tokens.js +25 -0
  22. package/dist/cjs/aws/tokens.js.map +1 -0
  23. package/dist/cjs/awsConfigClients/AwsConfigClientContext.d.ts +15 -0
  24. package/dist/cjs/awsConfigClients/AwsConfigClientContext.d.ts.map +1 -0
  25. package/dist/cjs/awsConfigClients/AwsConfigClientContext.js +6 -0
  26. package/dist/cjs/awsConfigClients/AwsConfigClientContext.js.map +1 -0
  27. package/dist/cjs/awsConfigClients/AwsConfigClientPool.d.ts +40 -0
  28. package/dist/cjs/awsConfigClients/AwsConfigClientPool.d.ts.map +1 -0
  29. package/dist/cjs/awsConfigClients/AwsConfigClientPool.js +132 -0
  30. package/dist/cjs/awsConfigClients/AwsConfigClientPool.js.map +1 -0
  31. package/dist/cjs/awsConfigClients/awsConfigUtils.d.ts +30 -0
  32. package/dist/cjs/awsConfigClients/awsConfigUtils.d.ts.map +1 -0
  33. package/dist/cjs/awsConfigClients/awsConfigUtils.js +64 -0
  34. package/dist/cjs/awsConfigClients/awsConfigUtils.js.map +1 -0
  35. package/dist/cjs/awsConfigClients/clients/AwsConfigAccountClient.d.ts +18 -0
  36. package/dist/cjs/awsConfigClients/clients/AwsConfigAccountClient.d.ts.map +1 -0
  37. package/dist/cjs/awsConfigClients/clients/AwsConfigAccountClient.js +60 -0
  38. package/dist/cjs/awsConfigClients/clients/AwsConfigAccountClient.js.map +1 -0
  39. package/dist/cjs/awsConfigClients/clients/AwsConfigApiGatewayClient.d.ts +21 -0
  40. package/dist/cjs/awsConfigClients/clients/AwsConfigApiGatewayClient.d.ts.map +1 -0
  41. package/dist/cjs/awsConfigClients/clients/AwsConfigApiGatewayClient.js +37 -0
  42. package/dist/cjs/awsConfigClients/clients/AwsConfigApiGatewayClient.js.map +1 -0
  43. package/dist/cjs/awsConfigClients/clients/AwsConfigBackupClient.d.ts +18 -0
  44. package/dist/cjs/awsConfigClients/clients/AwsConfigBackupClient.d.ts.map +1 -0
  45. package/dist/cjs/awsConfigClients/clients/AwsConfigBackupClient.js +98 -0
  46. package/dist/cjs/awsConfigClients/clients/AwsConfigBackupClient.js.map +1 -0
  47. package/dist/cjs/awsConfigClients/clients/AwsConfigDynamoDBClient.d.ts +21 -0
  48. package/dist/cjs/awsConfigClients/clients/AwsConfigDynamoDBClient.d.ts.map +1 -0
  49. package/dist/cjs/awsConfigClients/clients/AwsConfigDynamoDBClient.js +60 -0
  50. package/dist/cjs/awsConfigClients/clients/AwsConfigDynamoDBClient.js.map +1 -0
  51. package/dist/cjs/awsConfigClients/clients/AwsConfigEC2Client.d.ts +18 -0
  52. package/dist/cjs/awsConfigClients/clients/AwsConfigEC2Client.d.ts.map +1 -0
  53. package/dist/cjs/awsConfigClients/clients/AwsConfigEC2Client.js +61 -0
  54. package/dist/cjs/awsConfigClients/clients/AwsConfigEC2Client.js.map +1 -0
  55. package/dist/cjs/awsConfigClients/clients/AwsConfigEcrClient.d.ts +18 -0
  56. package/dist/cjs/awsConfigClients/clients/AwsConfigEcrClient.d.ts.map +1 -0
  57. package/dist/cjs/awsConfigClients/clients/AwsConfigEcrClient.js +122 -0
  58. package/dist/cjs/awsConfigClients/clients/AwsConfigEcrClient.js.map +1 -0
  59. package/dist/cjs/awsConfigClients/clients/AwsConfigEfsClient.d.ts +18 -0
  60. package/dist/cjs/awsConfigClients/clients/AwsConfigEfsClient.d.ts.map +1 -0
  61. package/dist/cjs/awsConfigClients/clients/AwsConfigEfsClient.js +89 -0
  62. package/dist/cjs/awsConfigClients/clients/AwsConfigEfsClient.js.map +1 -0
  63. package/dist/cjs/awsConfigClients/clients/AwsConfigEventBridgeClient.d.ts +19 -0
  64. package/dist/cjs/awsConfigClients/clients/AwsConfigEventBridgeClient.d.ts.map +1 -0
  65. package/dist/cjs/awsConfigClients/clients/AwsConfigEventBridgeClient.js +107 -0
  66. package/dist/cjs/awsConfigClients/clients/AwsConfigEventBridgeClient.js.map +1 -0
  67. package/dist/cjs/awsConfigClients/clients/AwsConfigGlueClient.d.ts +21 -0
  68. package/dist/cjs/awsConfigClients/clients/AwsConfigGlueClient.d.ts.map +1 -0
  69. package/dist/cjs/awsConfigClients/clients/AwsConfigGlueClient.js +44 -0
  70. package/dist/cjs/awsConfigClients/clients/AwsConfigGlueClient.js.map +1 -0
  71. package/dist/cjs/awsConfigClients/clients/AwsConfigIamClient.d.ts +18 -0
  72. package/dist/cjs/awsConfigClients/clients/AwsConfigIamClient.d.ts.map +1 -0
  73. package/dist/cjs/awsConfigClients/clients/AwsConfigIamClient.js +439 -0
  74. package/dist/cjs/awsConfigClients/clients/AwsConfigIamClient.js.map +1 -0
  75. package/dist/cjs/awsConfigClients/clients/AwsConfigKafkaClient.d.ts +18 -0
  76. package/dist/cjs/awsConfigClients/clients/AwsConfigKafkaClient.d.ts.map +1 -0
  77. package/dist/cjs/awsConfigClients/clients/AwsConfigKafkaClient.js +144 -0
  78. package/dist/cjs/awsConfigClients/clients/AwsConfigKafkaClient.js.map +1 -0
  79. package/dist/cjs/awsConfigClients/clients/AwsConfigKinesisClient.d.ts +22 -0
  80. package/dist/cjs/awsConfigClients/clients/AwsConfigKinesisClient.d.ts.map +1 -0
  81. package/dist/cjs/awsConfigClients/clients/AwsConfigKinesisClient.js +87 -0
  82. package/dist/cjs/awsConfigClients/clients/AwsConfigKinesisClient.js.map +1 -0
  83. package/dist/cjs/awsConfigClients/clients/AwsConfigKmsClient.d.ts +18 -0
  84. package/dist/cjs/awsConfigClients/clients/AwsConfigKmsClient.d.ts.map +1 -0
  85. package/dist/cjs/awsConfigClients/clients/AwsConfigKmsClient.js +105 -0
  86. package/dist/cjs/awsConfigClients/clients/AwsConfigKmsClient.js.map +1 -0
  87. package/dist/cjs/awsConfigClients/clients/AwsConfigLambdaClient.d.ts +22 -0
  88. package/dist/cjs/awsConfigClients/clients/AwsConfigLambdaClient.d.ts.map +1 -0
  89. package/dist/cjs/awsConfigClients/clients/AwsConfigLambdaClient.js +172 -0
  90. package/dist/cjs/awsConfigClients/clients/AwsConfigLambdaClient.js.map +1 -0
  91. package/dist/cjs/awsConfigClients/clients/AwsConfigOpenSearchClient.d.ts +18 -0
  92. package/dist/cjs/awsConfigClients/clients/AwsConfigOpenSearchClient.d.ts.map +1 -0
  93. package/dist/cjs/awsConfigClients/clients/AwsConfigOpenSearchClient.js +125 -0
  94. package/dist/cjs/awsConfigClients/clients/AwsConfigOpenSearchClient.js.map +1 -0
  95. package/dist/cjs/awsConfigClients/clients/AwsConfigOrganizationsClient.d.ts +22 -0
  96. package/dist/cjs/awsConfigClients/clients/AwsConfigOrganizationsClient.d.ts.map +1 -0
  97. package/dist/cjs/awsConfigClients/clients/AwsConfigOrganizationsClient.js +174 -0
  98. package/dist/cjs/awsConfigClients/clients/AwsConfigOrganizationsClient.js.map +1 -0
  99. package/dist/cjs/awsConfigClients/clients/AwsConfigS3Client.d.ts +15 -0
  100. package/dist/cjs/awsConfigClients/clients/AwsConfigS3Client.d.ts.map +1 -0
  101. package/dist/cjs/awsConfigClients/clients/AwsConfigS3Client.js +239 -0
  102. package/dist/cjs/awsConfigClients/clients/AwsConfigS3Client.js.map +1 -0
  103. package/dist/cjs/awsConfigClients/clients/AwsConfigS3ControlClient.d.ts +25 -0
  104. package/dist/cjs/awsConfigClients/clients/AwsConfigS3ControlClient.d.ts.map +1 -0
  105. package/dist/cjs/awsConfigClients/clients/AwsConfigS3ControlClient.js +293 -0
  106. package/dist/cjs/awsConfigClients/clients/AwsConfigS3ControlClient.js.map +1 -0
  107. package/dist/cjs/awsConfigClients/clients/AwsConfigSNSClient.d.ts +18 -0
  108. package/dist/cjs/awsConfigClients/clients/AwsConfigSNSClient.d.ts.map +1 -0
  109. package/dist/cjs/awsConfigClients/clients/AwsConfigSNSClient.js +114 -0
  110. package/dist/cjs/awsConfigClients/clients/AwsConfigSNSClient.js.map +1 -0
  111. package/dist/cjs/awsConfigClients/clients/AwsConfigSQSClient.d.ts +18 -0
  112. package/dist/cjs/awsConfigClients/clients/AwsConfigSQSClient.d.ts.map +1 -0
  113. package/dist/cjs/awsConfigClients/clients/AwsConfigSQSClient.js +105 -0
  114. package/dist/cjs/awsConfigClients/clients/AwsConfigSQSClient.js.map +1 -0
  115. package/dist/cjs/awsConfigClients/clients/AwsConfigSecretsManagerClient.d.ts +21 -0
  116. package/dist/cjs/awsConfigClients/clients/AwsConfigSecretsManagerClient.d.ts.map +1 -0
  117. package/dist/cjs/awsConfigClients/clients/AwsConfigSecretsManagerClient.js +49 -0
  118. package/dist/cjs/awsConfigClients/clients/AwsConfigSecretsManagerClient.js.map +1 -0
  119. package/dist/cjs/cli.d.ts +3 -0
  120. package/dist/cjs/cli.d.ts.map +1 -0
  121. package/dist/cjs/cli.js +181 -0
  122. package/dist/cjs/cli.js.map +1 -0
  123. package/dist/cjs/config/config.d.ts +210 -0
  124. package/dist/cjs/config/config.d.ts.map +1 -0
  125. package/dist/cjs/config/config.js +346 -0
  126. package/dist/cjs/config/config.js.map +1 -0
  127. package/dist/cjs/config/configFile.d.ts +16 -0
  128. package/dist/cjs/config/configFile.d.ts.map +1 -0
  129. package/dist/cjs/config/configFile.js +49 -0
  130. package/dist/cjs/config/configFile.js.map +1 -0
  131. package/dist/cjs/config/createConfigFile.d.ts +6 -0
  132. package/dist/cjs/config/createConfigFile.d.ts.map +1 -0
  133. package/dist/cjs/config/createConfigFile.js +17 -0
  134. package/dist/cjs/config/createConfigFile.js.map +1 -0
  135. package/dist/cjs/config/dataSource.d.ts +11 -0
  136. package/dist/cjs/config/dataSource.d.ts.map +1 -0
  137. package/dist/cjs/config/dataSource.js +27 -0
  138. package/dist/cjs/config/dataSource.js.map +1 -0
  139. package/dist/cjs/config/defaultConfig.d.ts +19 -0
  140. package/dist/cjs/config/defaultConfig.d.ts.map +1 -0
  141. package/dist/cjs/config/defaultConfig.js +170 -0
  142. package/dist/cjs/config/defaultConfig.js.map +1 -0
  143. package/dist/cjs/config/packageVersion.d.ts +5 -0
  144. package/dist/cjs/config/packageVersion.d.ts.map +1 -0
  145. package/dist/cjs/config/packageVersion.js +11 -0
  146. package/dist/cjs/config/packageVersion.js.map +1 -0
  147. package/dist/cjs/config/partitionDefaults.d.ts +9 -0
  148. package/dist/cjs/config/partitionDefaults.d.ts.map +1 -0
  149. package/dist/cjs/config/partitionDefaults.js +120 -0
  150. package/dist/cjs/config/partitionDefaults.js.map +1 -0
  151. package/dist/cjs/config/version.d.ts +6 -0
  152. package/dist/cjs/config/version.d.ts.map +1 -0
  153. package/dist/cjs/config/version.js +9 -0
  154. package/dist/cjs/config/version.js.map +1 -0
  155. package/dist/cjs/customClients/AbstractClient.d.ts +45 -0
  156. package/dist/cjs/customClients/AbstractClient.d.ts.map +1 -0
  157. package/dist/cjs/customClients/AbstractClient.js +75 -0
  158. package/dist/cjs/customClients/AbstractClient.js.map +1 -0
  159. package/dist/cjs/customClients/AbstractClientPool.d.ts +53 -0
  160. package/dist/cjs/customClients/AbstractClientPool.d.ts.map +1 -0
  161. package/dist/cjs/customClients/AbstractClientPool.js +66 -0
  162. package/dist/cjs/customClients/AbstractClientPool.js.map +1 -0
  163. package/dist/cjs/customClients/AbstractCommand.d.ts +56 -0
  164. package/dist/cjs/customClients/AbstractCommand.d.ts.map +1 -0
  165. package/dist/cjs/customClients/AbstractCommand.js +19 -0
  166. package/dist/cjs/customClients/AbstractCommand.js.map +1 -0
  167. package/dist/cjs/customClients/ResourceNotFoundException.d.ts +23 -0
  168. package/dist/cjs/customClients/ResourceNotFoundException.d.ts.map +1 -0
  169. package/dist/cjs/customClients/ResourceNotFoundException.js +37 -0
  170. package/dist/cjs/customClients/ResourceNotFoundException.js.map +1 -0
  171. package/dist/cjs/download/download.d.ts +14 -0
  172. package/dist/cjs/download/download.d.ts.map +1 -0
  173. package/dist/cjs/download/download.js +229 -0
  174. package/dist/cjs/download/download.js.map +1 -0
  175. package/dist/cjs/index/index.d.ts +4 -0
  176. package/dist/cjs/index/index.d.ts.map +1 -0
  177. package/dist/cjs/index/index.js +42 -0
  178. package/dist/cjs/index/index.js.map +1 -0
  179. package/dist/cjs/index.d.ts +9 -0
  180. package/dist/cjs/index.d.ts.map +1 -0
  181. package/dist/cjs/index.js +15 -0
  182. package/dist/cjs/index.js.map +1 -0
  183. package/dist/cjs/indexing/indexMap.d.ts +10 -0
  184. package/dist/cjs/indexing/indexMap.d.ts.map +1 -0
  185. package/dist/cjs/indexing/indexMap.js +34 -0
  186. package/dist/cjs/indexing/indexMap.js.map +1 -0
  187. package/dist/cjs/indexing/indexer.d.ts +37 -0
  188. package/dist/cjs/indexing/indexer.d.ts.map +1 -0
  189. package/dist/cjs/indexing/indexer.js +3 -0
  190. package/dist/cjs/indexing/indexer.js.map +1 -0
  191. package/dist/cjs/indexing/indexers/accountOrgs.d.ts +3 -0
  192. package/dist/cjs/indexing/indexers/accountOrgs.d.ts.map +1 -0
  193. package/dist/cjs/indexing/indexers/accountOrgs.js +41 -0
  194. package/dist/cjs/indexing/indexers/accountOrgs.js.map +1 -0
  195. package/dist/cjs/indexing/indexers/apigateways.d.ts +3 -0
  196. package/dist/cjs/indexing/indexers/apigateways.d.ts.map +1 -0
  197. package/dist/cjs/indexing/indexers/apigateways.js +54 -0
  198. package/dist/cjs/indexing/indexers/apigateways.js.map +1 -0
  199. package/dist/cjs/indexing/indexers/buckets.d.ts +8 -0
  200. package/dist/cjs/indexing/indexers/buckets.d.ts.map +1 -0
  201. package/dist/cjs/indexing/indexers/buckets.js +40 -0
  202. package/dist/cjs/indexing/indexers/buckets.js.map +1 -0
  203. package/dist/cjs/indexing/indexers/iamPrincipalsToTrustPolicies.d.ts +7 -0
  204. package/dist/cjs/indexing/indexers/iamPrincipalsToTrustPolicies.d.ts.map +1 -0
  205. package/dist/cjs/indexing/indexers/iamPrincipalsToTrustPolicies.js +59 -0
  206. package/dist/cjs/indexing/indexers/iamPrincipalsToTrustPolicies.js.map +1 -0
  207. package/dist/cjs/indexing/indexers/vpcs.d.ts +16 -0
  208. package/dist/cjs/indexing/indexers/vpcs.d.ts.map +1 -0
  209. package/dist/cjs/indexing/indexers/vpcs.js +94 -0
  210. package/dist/cjs/indexing/indexers/vpcs.js.map +1 -0
  211. package/dist/cjs/indexing/runIndexers.d.ts +33 -0
  212. package/dist/cjs/indexing/runIndexers.d.ts.map +1 -0
  213. package/dist/cjs/indexing/runIndexers.js +86 -0
  214. package/dist/cjs/indexing/runIndexers.js.map +1 -0
  215. package/dist/cjs/jobs/jobQueue.d.ts +41 -0
  216. package/dist/cjs/jobs/jobQueue.d.ts.map +1 -0
  217. package/dist/cjs/jobs/jobQueue.js +45 -0
  218. package/dist/cjs/jobs/jobQueue.js.map +1 -0
  219. package/dist/cjs/jobs/jobRunner.d.ts +62 -0
  220. package/dist/cjs/jobs/jobRunner.d.ts.map +1 -0
  221. package/dist/cjs/jobs/jobRunner.js +157 -0
  222. package/dist/cjs/jobs/jobRunner.js.map +1 -0
  223. package/dist/cjs/jobs/util.d.ts +7 -0
  224. package/dist/cjs/jobs/util.d.ts.map +1 -0
  225. package/dist/cjs/jobs/util.js +14 -0
  226. package/dist/cjs/jobs/util.js.map +1 -0
  227. package/dist/cjs/mergeSqlite/mergeSqlite.d.ts +15 -0
  228. package/dist/cjs/mergeSqlite/mergeSqlite.d.ts.map +1 -0
  229. package/dist/cjs/mergeSqlite/mergeSqlite.js +61 -0
  230. package/dist/cjs/mergeSqlite/mergeSqlite.js.map +1 -0
  231. package/dist/cjs/package.json +3 -0
  232. package/dist/cjs/persistence/AwsIamStore.d.ts +303 -0
  233. package/dist/cjs/persistence/AwsIamStore.d.ts.map +1 -0
  234. package/dist/cjs/persistence/AwsIamStore.js +3 -0
  235. package/dist/cjs/persistence/AwsIamStore.js.map +1 -0
  236. package/dist/cjs/persistence/InMemoryPathBasedPersistenceAdapter.d.ts +16 -0
  237. package/dist/cjs/persistence/InMemoryPathBasedPersistenceAdapter.d.ts.map +1 -0
  238. package/dist/cjs/persistence/InMemoryPathBasedPersistenceAdapter.js +70 -0
  239. package/dist/cjs/persistence/InMemoryPathBasedPersistenceAdapter.js.map +1 -0
  240. package/dist/cjs/persistence/PathBasedPersistenceAdapter.d.ts +38 -0
  241. package/dist/cjs/persistence/PathBasedPersistenceAdapter.d.ts.map +1 -0
  242. package/dist/cjs/persistence/PathBasedPersistenceAdapter.js +3 -0
  243. package/dist/cjs/persistence/PathBasedPersistenceAdapter.js.map +1 -0
  244. package/dist/cjs/persistence/file/FileSystemAdapter.d.ts +50 -0
  245. package/dist/cjs/persistence/file/FileSystemAdapter.d.ts.map +1 -0
  246. package/dist/cjs/persistence/file/FileSystemAdapter.js +157 -0
  247. package/dist/cjs/persistence/file/FileSystemAdapter.js.map +1 -0
  248. package/dist/cjs/persistence/file/FileSystemAwsIamStore.d.ts +115 -0
  249. package/dist/cjs/persistence/file/FileSystemAwsIamStore.d.ts.map +1 -0
  250. package/dist/cjs/persistence/file/FileSystemAwsIamStore.js +341 -0
  251. package/dist/cjs/persistence/file/FileSystemAwsIamStore.js.map +1 -0
  252. package/dist/cjs/persistence/s3/S3PathBasedPersistenceAdapter.d.ts +21 -0
  253. package/dist/cjs/persistence/s3/S3PathBasedPersistenceAdapter.d.ts.map +1 -0
  254. package/dist/cjs/persistence/s3/S3PathBasedPersistenceAdapter.js +190 -0
  255. package/dist/cjs/persistence/s3/S3PathBasedPersistenceAdapter.js.map +1 -0
  256. package/dist/cjs/persistence/serialization.d.ts +13 -0
  257. package/dist/cjs/persistence/serialization.d.ts.map +1 -0
  258. package/dist/cjs/persistence/serialization.js +17 -0
  259. package/dist/cjs/persistence/serialization.js.map +1 -0
  260. package/dist/cjs/persistence/sqlite/SqliteAwsIamStore.d.ts +65 -0
  261. package/dist/cjs/persistence/sqlite/SqliteAwsIamStore.d.ts.map +1 -0
  262. package/dist/cjs/persistence/sqlite/SqliteAwsIamStore.js +469 -0
  263. package/dist/cjs/persistence/sqlite/SqliteAwsIamStore.js.map +1 -0
  264. package/dist/cjs/persistence/util.d.ts +59 -0
  265. package/dist/cjs/persistence/util.d.ts.map +1 -0
  266. package/dist/cjs/persistence/util.js +94 -0
  267. package/dist/cjs/persistence/util.js.map +1 -0
  268. package/dist/cjs/regions.d.ts +4 -0
  269. package/dist/cjs/regions.d.ts.map +1 -0
  270. package/dist/cjs/regions.js +18 -0
  271. package/dist/cjs/regions.js.map +1 -0
  272. package/dist/cjs/services.d.ts +16 -0
  273. package/dist/cjs/services.d.ts.map +1 -0
  274. package/dist/cjs/services.js +46 -0
  275. package/dist/cjs/services.js.map +1 -0
  276. package/dist/cjs/syncs/apigateway/gateways.d.ts +13 -0
  277. package/dist/cjs/syncs/apigateway/gateways.d.ts.map +1 -0
  278. package/dist/cjs/syncs/apigateway/gateways.js +65 -0
  279. package/dist/cjs/syncs/apigateway/gateways.js.map +1 -0
  280. package/dist/cjs/syncs/backup/backupVaults.d.ts +2 -0
  281. package/dist/cjs/syncs/backup/backupVaults.d.ts.map +1 -0
  282. package/dist/cjs/syncs/backup/backupVaults.js +51 -0
  283. package/dist/cjs/syncs/backup/backupVaults.js.map +1 -0
  284. package/dist/cjs/syncs/dynamodb/dynamoDbStreams.d.ts +3 -0
  285. package/dist/cjs/syncs/dynamodb/dynamoDbStreams.d.ts.map +1 -0
  286. package/dist/cjs/syncs/dynamodb/dynamoDbStreams.js +52 -0
  287. package/dist/cjs/syncs/dynamodb/dynamoDbStreams.js.map +1 -0
  288. package/dist/cjs/syncs/dynamodb/tables.d.ts +5 -0
  289. package/dist/cjs/syncs/dynamodb/tables.d.ts.map +1 -0
  290. package/dist/cjs/syncs/dynamodb/tables.js +79 -0
  291. package/dist/cjs/syncs/dynamodb/tables.js.map +1 -0
  292. package/dist/cjs/syncs/ec2/vpcEndpoints.d.ts +3 -0
  293. package/dist/cjs/syncs/ec2/vpcEndpoints.d.ts.map +1 -0
  294. package/dist/cjs/syncs/ec2/vpcEndpoints.js +56 -0
  295. package/dist/cjs/syncs/ec2/vpcEndpoints.js.map +1 -0
  296. package/dist/cjs/syncs/ecr/ecrSyncs.d.ts +3 -0
  297. package/dist/cjs/syncs/ecr/ecrSyncs.d.ts.map +1 -0
  298. package/dist/cjs/syncs/ecr/ecrSyncs.js +76 -0
  299. package/dist/cjs/syncs/ecr/ecrSyncs.js.map +1 -0
  300. package/dist/cjs/syncs/efs/fileSystems.d.ts +2 -0
  301. package/dist/cjs/syncs/efs/fileSystems.d.ts.map +1 -0
  302. package/dist/cjs/syncs/efs/fileSystems.js +43 -0
  303. package/dist/cjs/syncs/efs/fileSystems.js.map +1 -0
  304. package/dist/cjs/syncs/eks/accessEntries.d.ts +8 -0
  305. package/dist/cjs/syncs/eks/accessEntries.d.ts.map +1 -0
  306. package/dist/cjs/syncs/eks/accessEntries.js +91 -0
  307. package/dist/cjs/syncs/eks/accessEntries.js.map +1 -0
  308. package/dist/cjs/syncs/events/eventBuses.d.ts +2 -0
  309. package/dist/cjs/syncs/events/eventBuses.d.ts.map +1 -0
  310. package/dist/cjs/syncs/events/eventBuses.js +50 -0
  311. package/dist/cjs/syncs/events/eventBuses.js.map +1 -0
  312. package/dist/cjs/syncs/glue/catalogs.d.ts +3 -0
  313. package/dist/cjs/syncs/glue/catalogs.d.ts.map +1 -0
  314. package/dist/cjs/syncs/glue/catalogs.js +39 -0
  315. package/dist/cjs/syncs/glue/catalogs.js.map +1 -0
  316. package/dist/cjs/syncs/iam/authorizationDetails.d.ts +23 -0
  317. package/dist/cjs/syncs/iam/authorizationDetails.d.ts.map +1 -0
  318. package/dist/cjs/syncs/iam/authorizationDetails.js +296 -0
  319. package/dist/cjs/syncs/iam/authorizationDetails.js.map +1 -0
  320. package/dist/cjs/syncs/iam/identityProviders.d.ts +3 -0
  321. package/dist/cjs/syncs/iam/identityProviders.d.ts.map +1 -0
  322. package/dist/cjs/syncs/iam/identityProviders.js +70 -0
  323. package/dist/cjs/syncs/iam/identityProviders.js.map +1 -0
  324. package/dist/cjs/syncs/iam/instanceProfiles.d.ts +3 -0
  325. package/dist/cjs/syncs/iam/instanceProfiles.d.ts.map +1 -0
  326. package/dist/cjs/syncs/iam/instanceProfiles.js +30 -0
  327. package/dist/cjs/syncs/iam/instanceProfiles.js.map +1 -0
  328. package/dist/cjs/syncs/kafka/clusters.d.ts +2 -0
  329. package/dist/cjs/syncs/kafka/clusters.d.ts.map +1 -0
  330. package/dist/cjs/syncs/kafka/clusters.js +62 -0
  331. package/dist/cjs/syncs/kafka/clusters.js.map +1 -0
  332. package/dist/cjs/syncs/kinesis/dataStreams.d.ts +2 -0
  333. package/dist/cjs/syncs/kinesis/dataStreams.d.ts.map +1 -0
  334. package/dist/cjs/syncs/kinesis/dataStreams.js +68 -0
  335. package/dist/cjs/syncs/kinesis/dataStreams.js.map +1 -0
  336. package/dist/cjs/syncs/kms/key.d.ts +2 -0
  337. package/dist/cjs/syncs/kms/key.d.ts.map +1 -0
  338. package/dist/cjs/syncs/kms/key.js +47 -0
  339. package/dist/cjs/syncs/kms/key.js.map +1 -0
  340. package/dist/cjs/syncs/lambda/lambda.d.ts +4 -0
  341. package/dist/cjs/syncs/lambda/lambda.d.ts.map +1 -0
  342. package/dist/cjs/syncs/lambda/lambda.js +154 -0
  343. package/dist/cjs/syncs/lambda/lambda.js.map +1 -0
  344. package/dist/cjs/syncs/opensearch/domains.d.ts +2 -0
  345. package/dist/cjs/syncs/opensearch/domains.d.ts.map +1 -0
  346. package/dist/cjs/syncs/opensearch/domains.js +48 -0
  347. package/dist/cjs/syncs/opensearch/domains.js.map +1 -0
  348. package/dist/cjs/syncs/organizations/organizations.d.ts +57 -0
  349. package/dist/cjs/syncs/organizations/organizations.d.ts.map +1 -0
  350. package/dist/cjs/syncs/organizations/organizations.js +416 -0
  351. package/dist/cjs/syncs/organizations/organizations.js.map +1 -0
  352. package/dist/cjs/syncs/ram/ramShares.d.ts +3 -0
  353. package/dist/cjs/syncs/ram/ramShares.d.ts.map +1 -0
  354. package/dist/cjs/syncs/ram/ramShares.js +60 -0
  355. package/dist/cjs/syncs/ram/ramShares.js.map +1 -0
  356. package/dist/cjs/syncs/s3/accessPoints.d.ts +3 -0
  357. package/dist/cjs/syncs/s3/accessPoints.d.ts.map +1 -0
  358. package/dist/cjs/syncs/s3/accessPoints.js +60 -0
  359. package/dist/cjs/syncs/s3/accessPoints.js.map +1 -0
  360. package/dist/cjs/syncs/s3/accountBpa.d.ts +3 -0
  361. package/dist/cjs/syncs/s3/accountBpa.d.ts.map +1 -0
  362. package/dist/cjs/syncs/s3/accountBpa.js +19 -0
  363. package/dist/cjs/syncs/s3/accountBpa.js.map +1 -0
  364. package/dist/cjs/syncs/s3/buckets.d.ts +3 -0
  365. package/dist/cjs/syncs/s3/buckets.d.ts.map +1 -0
  366. package/dist/cjs/syncs/s3/buckets.js +193 -0
  367. package/dist/cjs/syncs/s3/buckets.js.map +1 -0
  368. package/dist/cjs/syncs/s3/multiRegionAccessPoints.d.ts +3 -0
  369. package/dist/cjs/syncs/s3/multiRegionAccessPoints.d.ts.map +1 -0
  370. package/dist/cjs/syncs/s3/multiRegionAccessPoints.js +48 -0
  371. package/dist/cjs/syncs/s3/multiRegionAccessPoints.js.map +1 -0
  372. package/dist/cjs/syncs/s3/objectLambdaAccessPoints.d.ts +3 -0
  373. package/dist/cjs/syncs/s3/objectLambdaAccessPoints.d.ts.map +1 -0
  374. package/dist/cjs/syncs/s3/objectLambdaAccessPoints.js +54 -0
  375. package/dist/cjs/syncs/s3/objectLambdaAccessPoints.js.map +1 -0
  376. package/dist/cjs/syncs/s3/vaults.d.ts +2 -0
  377. package/dist/cjs/syncs/s3/vaults.d.ts.map +1 -0
  378. package/dist/cjs/syncs/s3/vaults.js +50 -0
  379. package/dist/cjs/syncs/s3/vaults.js.map +1 -0
  380. package/dist/cjs/syncs/s3express/s3DirectoryAccessPointsSync.d.ts +2 -0
  381. package/dist/cjs/syncs/s3express/s3DirectoryAccessPointsSync.d.ts.map +1 -0
  382. package/dist/cjs/syncs/s3express/s3DirectoryAccessPointsSync.js +68 -0
  383. package/dist/cjs/syncs/s3express/s3DirectoryAccessPointsSync.js.map +1 -0
  384. package/dist/cjs/syncs/s3express/s3DirectoryBucketsSync.d.ts +2 -0
  385. package/dist/cjs/syncs/s3express/s3DirectoryBucketsSync.d.ts.map +1 -0
  386. package/dist/cjs/syncs/s3express/s3DirectoryBucketsSync.js +57 -0
  387. package/dist/cjs/syncs/s3express/s3DirectoryBucketsSync.js.map +1 -0
  388. package/dist/cjs/syncs/s3outposts/s3OutpostsSyncs.d.ts +4 -0
  389. package/dist/cjs/syncs/s3outposts/s3OutpostsSyncs.d.ts.map +1 -0
  390. package/dist/cjs/syncs/s3outposts/s3OutpostsSyncs.js +145 -0
  391. package/dist/cjs/syncs/s3outposts/s3OutpostsSyncs.js.map +1 -0
  392. package/dist/cjs/syncs/s3tables/s3TablesSync.d.ts +2 -0
  393. package/dist/cjs/syncs/s3tables/s3TablesSync.d.ts.map +1 -0
  394. package/dist/cjs/syncs/s3tables/s3TablesSync.js +48 -0
  395. package/dist/cjs/syncs/s3tables/s3TablesSync.js.map +1 -0
  396. package/dist/cjs/syncs/secretsmanager/secrets.d.ts +5 -0
  397. package/dist/cjs/syncs/secretsmanager/secrets.d.ts.map +1 -0
  398. package/dist/cjs/syncs/secretsmanager/secrets.js +45 -0
  399. package/dist/cjs/syncs/secretsmanager/secrets.js.map +1 -0
  400. package/dist/cjs/syncs/sns/topics.d.ts +3 -0
  401. package/dist/cjs/syncs/sns/topics.d.ts.map +1 -0
  402. package/dist/cjs/syncs/sns/topics.js +64 -0
  403. package/dist/cjs/syncs/sns/topics.js.map +1 -0
  404. package/dist/cjs/syncs/sqs/queues.d.ts +2 -0
  405. package/dist/cjs/syncs/sqs/queues.d.ts.map +1 -0
  406. package/dist/cjs/syncs/sqs/queues.js +54 -0
  407. package/dist/cjs/syncs/sqs/queues.js.map +1 -0
  408. package/dist/cjs/syncs/sso/ssoInstances.d.ts +3 -0
  409. package/dist/cjs/syncs/sso/ssoInstances.d.ts.map +1 -0
  410. package/dist/cjs/syncs/sso/ssoInstances.js +189 -0
  411. package/dist/cjs/syncs/sso/ssoInstances.js.map +1 -0
  412. package/dist/cjs/syncs/sync.d.ts +46 -0
  413. package/dist/cjs/syncs/sync.d.ts.map +1 -0
  414. package/dist/cjs/syncs/sync.js +30 -0
  415. package/dist/cjs/syncs/sync.js.map +1 -0
  416. package/dist/cjs/syncs/syncMap.d.ts +17 -0
  417. package/dist/cjs/syncs/syncMap.d.ts.map +1 -0
  418. package/dist/cjs/syncs/syncMap.js +121 -0
  419. package/dist/cjs/syncs/syncMap.js.map +1 -0
  420. package/dist/cjs/syncs/typedSync.d.ts +140 -0
  421. package/dist/cjs/syncs/typedSync.d.ts.map +1 -0
  422. package/dist/cjs/syncs/typedSync.js +173 -0
  423. package/dist/cjs/syncs/typedSync.js.map +1 -0
  424. package/dist/cjs/utils/client-tools.d.ts +34 -0
  425. package/dist/cjs/utils/client-tools.d.ts.map +1 -0
  426. package/dist/cjs/utils/client-tools.js +112 -0
  427. package/dist/cjs/utils/client-tools.js.map +1 -0
  428. package/dist/cjs/utils/json.d.ts +29 -0
  429. package/dist/cjs/utils/json.d.ts.map +1 -0
  430. package/dist/cjs/utils/json.js +122 -0
  431. package/dist/cjs/utils/json.js.map +1 -0
  432. package/dist/cjs/utils/promise.d.ts +8 -0
  433. package/dist/cjs/utils/promise.d.ts.map +1 -0
  434. package/dist/cjs/utils/promise.js +13 -0
  435. package/dist/cjs/utils/promise.js.map +1 -0
  436. package/dist/cjs/utils/readPackageFile.d.ts +3 -0
  437. package/dist/cjs/utils/readPackageFile.d.ts.map +1 -0
  438. package/dist/cjs/utils/readPackageFile.js +16 -0
  439. package/dist/cjs/utils/readPackageFile.js.map +1 -0
  440. package/dist/cjs/utils/strings.d.ts +16 -0
  441. package/dist/cjs/utils/strings.d.ts.map +1 -0
  442. package/dist/cjs/utils/strings.js +39 -0
  443. package/dist/cjs/utils/strings.js.map +1 -0
  444. package/dist/cjs/utils/tags.d.ts +22 -0
  445. package/dist/cjs/utils/tags.d.ts.map +1 -0
  446. package/dist/cjs/utils/tags.js +50 -0
  447. package/dist/cjs/utils/tags.js.map +1 -0
  448. package/dist/cjs/utils/types.d.ts +2 -0
  449. package/dist/cjs/utils/types.d.ts.map +1 -0
  450. package/dist/cjs/utils/types.js +7 -0
  451. package/dist/cjs/utils/types.js.map +1 -0
  452. package/dist/esm/analysis/analyze.d.ts +8 -0
  453. package/dist/esm/analysis/analyze.d.ts.map +1 -0
  454. package/dist/esm/analysis/analyze.js +80 -0
  455. package/dist/esm/analysis/analyze.js.map +1 -0
  456. package/dist/esm/aws/ClientPool.d.ts +49 -0
  457. package/dist/esm/aws/ClientPool.d.ts.map +1 -0
  458. package/dist/esm/aws/ClientPool.js +103 -0
  459. package/dist/esm/aws/ClientPool.js.map +1 -0
  460. package/dist/esm/aws/auth.d.ts +11 -0
  461. package/dist/esm/aws/auth.d.ts.map +1 -0
  462. package/dist/esm/aws/auth.js +78 -0
  463. package/dist/esm/aws/auth.js.map +1 -0
  464. package/dist/esm/aws/coreAuth.d.ts +71 -0
  465. package/dist/esm/aws/coreAuth.d.ts.map +1 -0
  466. package/dist/esm/aws/coreAuth.js +129 -0
  467. package/dist/esm/aws/coreAuth.js.map +1 -0
  468. package/dist/esm/aws/tokens.d.ts +13 -0
  469. package/dist/esm/aws/tokens.d.ts.map +1 -0
  470. package/dist/esm/aws/tokens.js +23 -0
  471. package/dist/esm/aws/tokens.js.map +1 -0
  472. package/dist/esm/awsConfigClients/AwsConfigClientContext.d.ts +15 -0
  473. package/dist/esm/awsConfigClients/AwsConfigClientContext.d.ts.map +1 -0
  474. package/dist/esm/awsConfigClients/AwsConfigClientContext.js +5 -0
  475. package/dist/esm/awsConfigClients/AwsConfigClientContext.js.map +1 -0
  476. package/dist/esm/awsConfigClients/AwsConfigClientPool.d.ts +40 -0
  477. package/dist/esm/awsConfigClients/AwsConfigClientPool.d.ts.map +1 -0
  478. package/dist/esm/awsConfigClients/AwsConfigClientPool.js +128 -0
  479. package/dist/esm/awsConfigClients/AwsConfigClientPool.js.map +1 -0
  480. package/dist/esm/awsConfigClients/awsConfigUtils.d.ts +30 -0
  481. package/dist/esm/awsConfigClients/awsConfigUtils.d.ts.map +1 -0
  482. package/dist/esm/awsConfigClients/awsConfigUtils.js +60 -0
  483. package/dist/esm/awsConfigClients/awsConfigUtils.js.map +1 -0
  484. package/dist/esm/awsConfigClients/clients/AwsConfigAccountClient.d.ts +18 -0
  485. package/dist/esm/awsConfigClients/clients/AwsConfigAccountClient.d.ts.map +1 -0
  486. package/dist/esm/awsConfigClients/clients/AwsConfigAccountClient.js +57 -0
  487. package/dist/esm/awsConfigClients/clients/AwsConfigAccountClient.js.map +1 -0
  488. package/dist/esm/awsConfigClients/clients/AwsConfigApiGatewayClient.d.ts +21 -0
  489. package/dist/esm/awsConfigClients/clients/AwsConfigApiGatewayClient.d.ts.map +1 -0
  490. package/dist/esm/awsConfigClients/clients/AwsConfigApiGatewayClient.js +34 -0
  491. package/dist/esm/awsConfigClients/clients/AwsConfigApiGatewayClient.js.map +1 -0
  492. package/dist/esm/awsConfigClients/clients/AwsConfigBackupClient.d.ts +18 -0
  493. package/dist/esm/awsConfigClients/clients/AwsConfigBackupClient.d.ts.map +1 -0
  494. package/dist/esm/awsConfigClients/clients/AwsConfigBackupClient.js +95 -0
  495. package/dist/esm/awsConfigClients/clients/AwsConfigBackupClient.js.map +1 -0
  496. package/dist/esm/awsConfigClients/clients/AwsConfigDynamoDBClient.d.ts +21 -0
  497. package/dist/esm/awsConfigClients/clients/AwsConfigDynamoDBClient.d.ts.map +1 -0
  498. package/dist/esm/awsConfigClients/clients/AwsConfigDynamoDBClient.js +57 -0
  499. package/dist/esm/awsConfigClients/clients/AwsConfigDynamoDBClient.js.map +1 -0
  500. package/dist/esm/awsConfigClients/clients/AwsConfigEC2Client.d.ts +18 -0
  501. package/dist/esm/awsConfigClients/clients/AwsConfigEC2Client.d.ts.map +1 -0
  502. package/dist/esm/awsConfigClients/clients/AwsConfigEC2Client.js +58 -0
  503. package/dist/esm/awsConfigClients/clients/AwsConfigEC2Client.js.map +1 -0
  504. package/dist/esm/awsConfigClients/clients/AwsConfigEcrClient.d.ts +18 -0
  505. package/dist/esm/awsConfigClients/clients/AwsConfigEcrClient.d.ts.map +1 -0
  506. package/dist/esm/awsConfigClients/clients/AwsConfigEcrClient.js +119 -0
  507. package/dist/esm/awsConfigClients/clients/AwsConfigEcrClient.js.map +1 -0
  508. package/dist/esm/awsConfigClients/clients/AwsConfigEfsClient.d.ts +18 -0
  509. package/dist/esm/awsConfigClients/clients/AwsConfigEfsClient.d.ts.map +1 -0
  510. package/dist/esm/awsConfigClients/clients/AwsConfigEfsClient.js +86 -0
  511. package/dist/esm/awsConfigClients/clients/AwsConfigEfsClient.js.map +1 -0
  512. package/dist/esm/awsConfigClients/clients/AwsConfigEventBridgeClient.d.ts +19 -0
  513. package/dist/esm/awsConfigClients/clients/AwsConfigEventBridgeClient.d.ts.map +1 -0
  514. package/dist/esm/awsConfigClients/clients/AwsConfigEventBridgeClient.js +104 -0
  515. package/dist/esm/awsConfigClients/clients/AwsConfigEventBridgeClient.js.map +1 -0
  516. package/dist/esm/awsConfigClients/clients/AwsConfigGlueClient.d.ts +21 -0
  517. package/dist/esm/awsConfigClients/clients/AwsConfigGlueClient.d.ts.map +1 -0
  518. package/dist/esm/awsConfigClients/clients/AwsConfigGlueClient.js +41 -0
  519. package/dist/esm/awsConfigClients/clients/AwsConfigGlueClient.js.map +1 -0
  520. package/dist/esm/awsConfigClients/clients/AwsConfigIamClient.d.ts +18 -0
  521. package/dist/esm/awsConfigClients/clients/AwsConfigIamClient.d.ts.map +1 -0
  522. package/dist/esm/awsConfigClients/clients/AwsConfigIamClient.js +436 -0
  523. package/dist/esm/awsConfigClients/clients/AwsConfigIamClient.js.map +1 -0
  524. package/dist/esm/awsConfigClients/clients/AwsConfigKafkaClient.d.ts +18 -0
  525. package/dist/esm/awsConfigClients/clients/AwsConfigKafkaClient.d.ts.map +1 -0
  526. package/dist/esm/awsConfigClients/clients/AwsConfigKafkaClient.js +141 -0
  527. package/dist/esm/awsConfigClients/clients/AwsConfigKafkaClient.js.map +1 -0
  528. package/dist/esm/awsConfigClients/clients/AwsConfigKinesisClient.d.ts +22 -0
  529. package/dist/esm/awsConfigClients/clients/AwsConfigKinesisClient.d.ts.map +1 -0
  530. package/dist/esm/awsConfigClients/clients/AwsConfigKinesisClient.js +84 -0
  531. package/dist/esm/awsConfigClients/clients/AwsConfigKinesisClient.js.map +1 -0
  532. package/dist/esm/awsConfigClients/clients/AwsConfigKmsClient.d.ts +18 -0
  533. package/dist/esm/awsConfigClients/clients/AwsConfigKmsClient.d.ts.map +1 -0
  534. package/dist/esm/awsConfigClients/clients/AwsConfigKmsClient.js +102 -0
  535. package/dist/esm/awsConfigClients/clients/AwsConfigKmsClient.js.map +1 -0
  536. package/dist/esm/awsConfigClients/clients/AwsConfigLambdaClient.d.ts +22 -0
  537. package/dist/esm/awsConfigClients/clients/AwsConfigLambdaClient.d.ts.map +1 -0
  538. package/dist/esm/awsConfigClients/clients/AwsConfigLambdaClient.js +169 -0
  539. package/dist/esm/awsConfigClients/clients/AwsConfigLambdaClient.js.map +1 -0
  540. package/dist/esm/awsConfigClients/clients/AwsConfigOpenSearchClient.d.ts +18 -0
  541. package/dist/esm/awsConfigClients/clients/AwsConfigOpenSearchClient.d.ts.map +1 -0
  542. package/dist/esm/awsConfigClients/clients/AwsConfigOpenSearchClient.js +122 -0
  543. package/dist/esm/awsConfigClients/clients/AwsConfigOpenSearchClient.js.map +1 -0
  544. package/dist/esm/awsConfigClients/clients/AwsConfigOrganizationsClient.d.ts +22 -0
  545. package/dist/esm/awsConfigClients/clients/AwsConfigOrganizationsClient.d.ts.map +1 -0
  546. package/dist/esm/awsConfigClients/clients/AwsConfigOrganizationsClient.js +171 -0
  547. package/dist/esm/awsConfigClients/clients/AwsConfigOrganizationsClient.js.map +1 -0
  548. package/dist/esm/awsConfigClients/clients/AwsConfigS3Client.d.ts +15 -0
  549. package/dist/esm/awsConfigClients/clients/AwsConfigS3Client.d.ts.map +1 -0
  550. package/dist/esm/awsConfigClients/clients/AwsConfigS3Client.js +236 -0
  551. package/dist/esm/awsConfigClients/clients/AwsConfigS3Client.js.map +1 -0
  552. package/dist/esm/awsConfigClients/clients/AwsConfigS3ControlClient.d.ts +25 -0
  553. package/dist/esm/awsConfigClients/clients/AwsConfigS3ControlClient.d.ts.map +1 -0
  554. package/dist/esm/awsConfigClients/clients/AwsConfigS3ControlClient.js +290 -0
  555. package/dist/esm/awsConfigClients/clients/AwsConfigS3ControlClient.js.map +1 -0
  556. package/dist/esm/awsConfigClients/clients/AwsConfigSNSClient.d.ts +18 -0
  557. package/dist/esm/awsConfigClients/clients/AwsConfigSNSClient.d.ts.map +1 -0
  558. package/dist/esm/awsConfigClients/clients/AwsConfigSNSClient.js +111 -0
  559. package/dist/esm/awsConfigClients/clients/AwsConfigSNSClient.js.map +1 -0
  560. package/dist/esm/awsConfigClients/clients/AwsConfigSQSClient.d.ts +18 -0
  561. package/dist/esm/awsConfigClients/clients/AwsConfigSQSClient.d.ts.map +1 -0
  562. package/dist/esm/awsConfigClients/clients/AwsConfigSQSClient.js +102 -0
  563. package/dist/esm/awsConfigClients/clients/AwsConfigSQSClient.js.map +1 -0
  564. package/dist/esm/awsConfigClients/clients/AwsConfigSecretsManagerClient.d.ts +21 -0
  565. package/dist/esm/awsConfigClients/clients/AwsConfigSecretsManagerClient.d.ts.map +1 -0
  566. package/dist/esm/awsConfigClients/clients/AwsConfigSecretsManagerClient.js +46 -0
  567. package/dist/esm/awsConfigClients/clients/AwsConfigSecretsManagerClient.js.map +1 -0
  568. package/dist/esm/cli.d.ts +3 -0
  569. package/dist/esm/cli.d.ts.map +1 -0
  570. package/dist/esm/cli.js +180 -0
  571. package/dist/esm/cli.js.map +1 -0
  572. package/dist/esm/config/config.d.ts +210 -0
  573. package/dist/esm/config/config.d.ts.map +1 -0
  574. package/dist/esm/config/config.js +334 -0
  575. package/dist/esm/config/config.js.map +1 -0
  576. package/dist/esm/config/configFile.d.ts +16 -0
  577. package/dist/esm/config/configFile.d.ts.map +1 -0
  578. package/dist/esm/config/configFile.js +46 -0
  579. package/dist/esm/config/configFile.js.map +1 -0
  580. package/dist/esm/config/createConfigFile.d.ts +6 -0
  581. package/dist/esm/config/createConfigFile.d.ts.map +1 -0
  582. package/dist/esm/config/createConfigFile.js +14 -0
  583. package/dist/esm/config/createConfigFile.js.map +1 -0
  584. package/dist/esm/config/dataSource.d.ts +11 -0
  585. package/dist/esm/config/dataSource.d.ts.map +1 -0
  586. package/dist/esm/config/dataSource.js +25 -0
  587. package/dist/esm/config/dataSource.js.map +1 -0
  588. package/dist/esm/config/defaultConfig.d.ts +19 -0
  589. package/dist/esm/config/defaultConfig.d.ts.map +1 -0
  590. package/dist/esm/config/defaultConfig.js +164 -0
  591. package/dist/esm/config/defaultConfig.js.map +1 -0
  592. package/dist/esm/config/packageVersion.d.ts +5 -0
  593. package/dist/esm/config/packageVersion.d.ts.map +1 -0
  594. package/dist/esm/config/packageVersion.js +8 -0
  595. package/dist/esm/config/packageVersion.js.map +1 -0
  596. package/dist/esm/config/partitionDefaults.d.ts +9 -0
  597. package/dist/esm/config/partitionDefaults.d.ts.map +1 -0
  598. package/dist/esm/config/partitionDefaults.js +118 -0
  599. package/dist/esm/config/partitionDefaults.js.map +1 -0
  600. package/dist/esm/config/version.d.ts +6 -0
  601. package/dist/esm/config/version.d.ts.map +1 -0
  602. package/dist/esm/config/version.js +6 -0
  603. package/dist/esm/config/version.js.map +1 -0
  604. package/dist/esm/customClients/AbstractClient.d.ts +45 -0
  605. package/dist/esm/customClients/AbstractClient.d.ts.map +1 -0
  606. package/dist/esm/customClients/AbstractClient.js +70 -0
  607. package/dist/esm/customClients/AbstractClient.js.map +1 -0
  608. package/dist/esm/customClients/AbstractClientPool.d.ts +53 -0
  609. package/dist/esm/customClients/AbstractClientPool.d.ts.map +1 -0
  610. package/dist/esm/customClients/AbstractClientPool.js +64 -0
  611. package/dist/esm/customClients/AbstractClientPool.js.map +1 -0
  612. package/dist/esm/customClients/AbstractCommand.d.ts +56 -0
  613. package/dist/esm/customClients/AbstractCommand.d.ts.map +1 -0
  614. package/dist/esm/customClients/AbstractCommand.js +18 -0
  615. package/dist/esm/customClients/AbstractCommand.js.map +1 -0
  616. package/dist/esm/customClients/ResourceNotFoundException.d.ts +23 -0
  617. package/dist/esm/customClients/ResourceNotFoundException.d.ts.map +1 -0
  618. package/dist/esm/customClients/ResourceNotFoundException.js +32 -0
  619. package/dist/esm/customClients/ResourceNotFoundException.js.map +1 -0
  620. package/dist/esm/download/download.d.ts +14 -0
  621. package/dist/esm/download/download.d.ts.map +1 -0
  622. package/dist/esm/download/download.js +227 -0
  623. package/dist/esm/download/download.js.map +1 -0
  624. package/dist/esm/index/index.d.ts +4 -0
  625. package/dist/esm/index/index.d.ts.map +1 -0
  626. package/dist/esm/index/index.js +40 -0
  627. package/dist/esm/index/index.js.map +1 -0
  628. package/dist/esm/index.d.ts +9 -0
  629. package/dist/esm/index.d.ts.map +1 -0
  630. package/dist/esm/index.js +6 -0
  631. package/dist/esm/index.js.map +1 -0
  632. package/dist/esm/indexing/indexMap.d.ts +10 -0
  633. package/dist/esm/indexing/indexMap.d.ts.map +1 -0
  634. package/dist/esm/indexing/indexMap.js +32 -0
  635. package/dist/esm/indexing/indexMap.js.map +1 -0
  636. package/dist/esm/indexing/indexer.d.ts +37 -0
  637. package/dist/esm/indexing/indexer.d.ts.map +1 -0
  638. package/dist/esm/indexing/indexer.js +3 -0
  639. package/dist/esm/indexing/indexer.js.map +1 -0
  640. package/dist/esm/indexing/indexers/accountOrgs.d.ts +3 -0
  641. package/dist/esm/indexing/indexers/accountOrgs.d.ts.map +1 -0
  642. package/dist/esm/indexing/indexers/accountOrgs.js +39 -0
  643. package/dist/esm/indexing/indexers/accountOrgs.js.map +1 -0
  644. package/dist/esm/indexing/indexers/apigateways.d.ts +3 -0
  645. package/dist/esm/indexing/indexers/apigateways.d.ts.map +1 -0
  646. package/dist/esm/indexing/indexers/apigateways.js +52 -0
  647. package/dist/esm/indexing/indexers/apigateways.js.map +1 -0
  648. package/dist/esm/indexing/indexers/buckets.d.ts +8 -0
  649. package/dist/esm/indexing/indexers/buckets.d.ts.map +1 -0
  650. package/dist/esm/indexing/indexers/buckets.js +38 -0
  651. package/dist/esm/indexing/indexers/buckets.js.map +1 -0
  652. package/dist/esm/indexing/indexers/iamPrincipalsToTrustPolicies.d.ts +7 -0
  653. package/dist/esm/indexing/indexers/iamPrincipalsToTrustPolicies.d.ts.map +1 -0
  654. package/dist/esm/indexing/indexers/iamPrincipalsToTrustPolicies.js +57 -0
  655. package/dist/esm/indexing/indexers/iamPrincipalsToTrustPolicies.js.map +1 -0
  656. package/dist/esm/indexing/indexers/vpcs.d.ts +16 -0
  657. package/dist/esm/indexing/indexers/vpcs.d.ts.map +1 -0
  658. package/dist/esm/indexing/indexers/vpcs.js +92 -0
  659. package/dist/esm/indexing/indexers/vpcs.js.map +1 -0
  660. package/dist/esm/indexing/runIndexers.d.ts +33 -0
  661. package/dist/esm/indexing/runIndexers.d.ts.map +1 -0
  662. package/dist/esm/indexing/runIndexers.js +85 -0
  663. package/dist/esm/indexing/runIndexers.js.map +1 -0
  664. package/dist/esm/jobs/jobQueue.d.ts +41 -0
  665. package/dist/esm/jobs/jobQueue.d.ts.map +1 -0
  666. package/dist/esm/jobs/jobQueue.js +42 -0
  667. package/dist/esm/jobs/jobQueue.js.map +1 -0
  668. package/dist/esm/jobs/jobRunner.d.ts +62 -0
  669. package/dist/esm/jobs/jobRunner.d.ts.map +1 -0
  670. package/dist/esm/jobs/jobRunner.js +153 -0
  671. package/dist/esm/jobs/jobRunner.js.map +1 -0
  672. package/dist/esm/jobs/util.d.ts +7 -0
  673. package/dist/esm/jobs/util.d.ts.map +1 -0
  674. package/dist/esm/jobs/util.js +11 -0
  675. package/dist/esm/jobs/util.js.map +1 -0
  676. package/dist/esm/mergeSqlite/mergeSqlite.d.ts +15 -0
  677. package/dist/esm/mergeSqlite/mergeSqlite.d.ts.map +1 -0
  678. package/dist/esm/mergeSqlite/mergeSqlite.js +55 -0
  679. package/dist/esm/mergeSqlite/mergeSqlite.js.map +1 -0
  680. package/dist/esm/package.json +3 -0
  681. package/dist/esm/persistence/AwsIamStore.d.ts +303 -0
  682. package/dist/esm/persistence/AwsIamStore.d.ts.map +1 -0
  683. package/dist/esm/persistence/AwsIamStore.js +2 -0
  684. package/dist/esm/persistence/AwsIamStore.js.map +1 -0
  685. package/dist/esm/persistence/InMemoryPathBasedPersistenceAdapter.d.ts +16 -0
  686. package/dist/esm/persistence/InMemoryPathBasedPersistenceAdapter.d.ts.map +1 -0
  687. package/dist/esm/persistence/InMemoryPathBasedPersistenceAdapter.js +69 -0
  688. package/dist/esm/persistence/InMemoryPathBasedPersistenceAdapter.js.map +1 -0
  689. package/dist/esm/persistence/PathBasedPersistenceAdapter.d.ts +38 -0
  690. package/dist/esm/persistence/PathBasedPersistenceAdapter.d.ts.map +1 -0
  691. package/dist/esm/persistence/PathBasedPersistenceAdapter.js +2 -0
  692. package/dist/esm/persistence/PathBasedPersistenceAdapter.js.map +1 -0
  693. package/dist/esm/persistence/file/FileSystemAdapter.d.ts +50 -0
  694. package/dist/esm/persistence/file/FileSystemAdapter.d.ts.map +1 -0
  695. package/dist/esm/persistence/file/FileSystemAdapter.js +153 -0
  696. package/dist/esm/persistence/file/FileSystemAdapter.js.map +1 -0
  697. package/dist/esm/persistence/file/FileSystemAwsIamStore.d.ts +115 -0
  698. package/dist/esm/persistence/file/FileSystemAwsIamStore.d.ts.map +1 -0
  699. package/dist/esm/persistence/file/FileSystemAwsIamStore.js +335 -0
  700. package/dist/esm/persistence/file/FileSystemAwsIamStore.js.map +1 -0
  701. package/dist/esm/persistence/s3/S3PathBasedPersistenceAdapter.d.ts +21 -0
  702. package/dist/esm/persistence/s3/S3PathBasedPersistenceAdapter.d.ts.map +1 -0
  703. package/dist/esm/persistence/s3/S3PathBasedPersistenceAdapter.js +185 -0
  704. package/dist/esm/persistence/s3/S3PathBasedPersistenceAdapter.js.map +1 -0
  705. package/dist/esm/persistence/serialization.d.ts +13 -0
  706. package/dist/esm/persistence/serialization.d.ts.map +1 -0
  707. package/dist/esm/persistence/serialization.js +15 -0
  708. package/dist/esm/persistence/serialization.js.map +1 -0
  709. package/dist/esm/persistence/sqlite/SqliteAwsIamStore.d.ts +65 -0
  710. package/dist/esm/persistence/sqlite/SqliteAwsIamStore.d.ts.map +1 -0
  711. package/dist/esm/persistence/sqlite/SqliteAwsIamStore.js +458 -0
  712. package/dist/esm/persistence/sqlite/SqliteAwsIamStore.js.map +1 -0
  713. package/dist/esm/persistence/util.d.ts +59 -0
  714. package/dist/esm/persistence/util.d.ts.map +1 -0
  715. package/dist/esm/persistence/util.js +88 -0
  716. package/dist/esm/persistence/util.js.map +1 -0
  717. package/dist/esm/regions.d.ts +4 -0
  718. package/dist/esm/regions.d.ts.map +1 -0
  719. package/dist/esm/regions.js +17 -0
  720. package/dist/esm/regions.js.map +1 -0
  721. package/dist/esm/services.d.ts +16 -0
  722. package/dist/esm/services.d.ts.map +1 -0
  723. package/dist/esm/services.js +42 -0
  724. package/dist/esm/services.js.map +1 -0
  725. package/dist/esm/syncs/apigateway/gateways.d.ts +13 -0
  726. package/dist/esm/syncs/apigateway/gateways.d.ts.map +1 -0
  727. package/dist/esm/syncs/apigateway/gateways.js +62 -0
  728. package/dist/esm/syncs/apigateway/gateways.js.map +1 -0
  729. package/dist/esm/syncs/backup/backupVaults.d.ts +2 -0
  730. package/dist/esm/syncs/backup/backupVaults.d.ts.map +1 -0
  731. package/dist/esm/syncs/backup/backupVaults.js +48 -0
  732. package/dist/esm/syncs/backup/backupVaults.js.map +1 -0
  733. package/dist/esm/syncs/dynamodb/dynamoDbStreams.d.ts +3 -0
  734. package/dist/esm/syncs/dynamodb/dynamoDbStreams.d.ts.map +1 -0
  735. package/dist/esm/syncs/dynamodb/dynamoDbStreams.js +49 -0
  736. package/dist/esm/syncs/dynamodb/dynamoDbStreams.js.map +1 -0
  737. package/dist/esm/syncs/dynamodb/tables.d.ts +5 -0
  738. package/dist/esm/syncs/dynamodb/tables.d.ts.map +1 -0
  739. package/dist/esm/syncs/dynamodb/tables.js +76 -0
  740. package/dist/esm/syncs/dynamodb/tables.js.map +1 -0
  741. package/dist/esm/syncs/ec2/vpcEndpoints.d.ts +3 -0
  742. package/dist/esm/syncs/ec2/vpcEndpoints.d.ts.map +1 -0
  743. package/dist/esm/syncs/ec2/vpcEndpoints.js +54 -0
  744. package/dist/esm/syncs/ec2/vpcEndpoints.js.map +1 -0
  745. package/dist/esm/syncs/ecr/ecrSyncs.d.ts +3 -0
  746. package/dist/esm/syncs/ecr/ecrSyncs.d.ts.map +1 -0
  747. package/dist/esm/syncs/ecr/ecrSyncs.js +74 -0
  748. package/dist/esm/syncs/ecr/ecrSyncs.js.map +1 -0
  749. package/dist/esm/syncs/efs/fileSystems.d.ts +2 -0
  750. package/dist/esm/syncs/efs/fileSystems.d.ts.map +1 -0
  751. package/dist/esm/syncs/efs/fileSystems.js +40 -0
  752. package/dist/esm/syncs/efs/fileSystems.js.map +1 -0
  753. package/dist/esm/syncs/eks/accessEntries.d.ts +8 -0
  754. package/dist/esm/syncs/eks/accessEntries.d.ts.map +1 -0
  755. package/dist/esm/syncs/eks/accessEntries.js +88 -0
  756. package/dist/esm/syncs/eks/accessEntries.js.map +1 -0
  757. package/dist/esm/syncs/events/eventBuses.d.ts +2 -0
  758. package/dist/esm/syncs/events/eventBuses.d.ts.map +1 -0
  759. package/dist/esm/syncs/events/eventBuses.js +47 -0
  760. package/dist/esm/syncs/events/eventBuses.js.map +1 -0
  761. package/dist/esm/syncs/glue/catalogs.d.ts +3 -0
  762. package/dist/esm/syncs/glue/catalogs.d.ts.map +1 -0
  763. package/dist/esm/syncs/glue/catalogs.js +37 -0
  764. package/dist/esm/syncs/glue/catalogs.js.map +1 -0
  765. package/dist/esm/syncs/iam/authorizationDetails.d.ts +23 -0
  766. package/dist/esm/syncs/iam/authorizationDetails.d.ts.map +1 -0
  767. package/dist/esm/syncs/iam/authorizationDetails.js +295 -0
  768. package/dist/esm/syncs/iam/authorizationDetails.js.map +1 -0
  769. package/dist/esm/syncs/iam/identityProviders.d.ts +3 -0
  770. package/dist/esm/syncs/iam/identityProviders.d.ts.map +1 -0
  771. package/dist/esm/syncs/iam/identityProviders.js +68 -0
  772. package/dist/esm/syncs/iam/identityProviders.js.map +1 -0
  773. package/dist/esm/syncs/iam/instanceProfiles.d.ts +3 -0
  774. package/dist/esm/syncs/iam/instanceProfiles.d.ts.map +1 -0
  775. package/dist/esm/syncs/iam/instanceProfiles.js +28 -0
  776. package/dist/esm/syncs/iam/instanceProfiles.js.map +1 -0
  777. package/dist/esm/syncs/kafka/clusters.d.ts +2 -0
  778. package/dist/esm/syncs/kafka/clusters.d.ts.map +1 -0
  779. package/dist/esm/syncs/kafka/clusters.js +59 -0
  780. package/dist/esm/syncs/kafka/clusters.js.map +1 -0
  781. package/dist/esm/syncs/kinesis/dataStreams.d.ts +2 -0
  782. package/dist/esm/syncs/kinesis/dataStreams.d.ts.map +1 -0
  783. package/dist/esm/syncs/kinesis/dataStreams.js +65 -0
  784. package/dist/esm/syncs/kinesis/dataStreams.js.map +1 -0
  785. package/dist/esm/syncs/kms/key.d.ts +2 -0
  786. package/dist/esm/syncs/kms/key.d.ts.map +1 -0
  787. package/dist/esm/syncs/kms/key.js +44 -0
  788. package/dist/esm/syncs/kms/key.js.map +1 -0
  789. package/dist/esm/syncs/lambda/lambda.d.ts +4 -0
  790. package/dist/esm/syncs/lambda/lambda.d.ts.map +1 -0
  791. package/dist/esm/syncs/lambda/lambda.js +152 -0
  792. package/dist/esm/syncs/lambda/lambda.js.map +1 -0
  793. package/dist/esm/syncs/opensearch/domains.d.ts +2 -0
  794. package/dist/esm/syncs/opensearch/domains.d.ts.map +1 -0
  795. package/dist/esm/syncs/opensearch/domains.js +45 -0
  796. package/dist/esm/syncs/opensearch/domains.js.map +1 -0
  797. package/dist/esm/syncs/organizations/organizations.d.ts +57 -0
  798. package/dist/esm/syncs/organizations/organizations.d.ts.map +1 -0
  799. package/dist/esm/syncs/organizations/organizations.js +410 -0
  800. package/dist/esm/syncs/organizations/organizations.js.map +1 -0
  801. package/dist/esm/syncs/ram/ramShares.d.ts +3 -0
  802. package/dist/esm/syncs/ram/ramShares.d.ts.map +1 -0
  803. package/dist/esm/syncs/ram/ramShares.js +58 -0
  804. package/dist/esm/syncs/ram/ramShares.js.map +1 -0
  805. package/dist/esm/syncs/s3/accessPoints.d.ts +3 -0
  806. package/dist/esm/syncs/s3/accessPoints.d.ts.map +1 -0
  807. package/dist/esm/syncs/s3/accessPoints.js +58 -0
  808. package/dist/esm/syncs/s3/accessPoints.js.map +1 -0
  809. package/dist/esm/syncs/s3/accountBpa.d.ts +3 -0
  810. package/dist/esm/syncs/s3/accountBpa.d.ts.map +1 -0
  811. package/dist/esm/syncs/s3/accountBpa.js +17 -0
  812. package/dist/esm/syncs/s3/accountBpa.js.map +1 -0
  813. package/dist/esm/syncs/s3/buckets.d.ts +3 -0
  814. package/dist/esm/syncs/s3/buckets.d.ts.map +1 -0
  815. package/dist/esm/syncs/s3/buckets.js +192 -0
  816. package/dist/esm/syncs/s3/buckets.js.map +1 -0
  817. package/dist/esm/syncs/s3/multiRegionAccessPoints.d.ts +3 -0
  818. package/dist/esm/syncs/s3/multiRegionAccessPoints.d.ts.map +1 -0
  819. package/dist/esm/syncs/s3/multiRegionAccessPoints.js +46 -0
  820. package/dist/esm/syncs/s3/multiRegionAccessPoints.js.map +1 -0
  821. package/dist/esm/syncs/s3/objectLambdaAccessPoints.d.ts +3 -0
  822. package/dist/esm/syncs/s3/objectLambdaAccessPoints.d.ts.map +1 -0
  823. package/dist/esm/syncs/s3/objectLambdaAccessPoints.js +52 -0
  824. package/dist/esm/syncs/s3/objectLambdaAccessPoints.js.map +1 -0
  825. package/dist/esm/syncs/s3/vaults.d.ts +2 -0
  826. package/dist/esm/syncs/s3/vaults.d.ts.map +1 -0
  827. package/dist/esm/syncs/s3/vaults.js +47 -0
  828. package/dist/esm/syncs/s3/vaults.js.map +1 -0
  829. package/dist/esm/syncs/s3express/s3DirectoryAccessPointsSync.d.ts +2 -0
  830. package/dist/esm/syncs/s3express/s3DirectoryAccessPointsSync.d.ts.map +1 -0
  831. package/dist/esm/syncs/s3express/s3DirectoryAccessPointsSync.js +65 -0
  832. package/dist/esm/syncs/s3express/s3DirectoryAccessPointsSync.js.map +1 -0
  833. package/dist/esm/syncs/s3express/s3DirectoryBucketsSync.d.ts +2 -0
  834. package/dist/esm/syncs/s3express/s3DirectoryBucketsSync.d.ts.map +1 -0
  835. package/dist/esm/syncs/s3express/s3DirectoryBucketsSync.js +54 -0
  836. package/dist/esm/syncs/s3express/s3DirectoryBucketsSync.js.map +1 -0
  837. package/dist/esm/syncs/s3outposts/s3OutpostsSyncs.d.ts +4 -0
  838. package/dist/esm/syncs/s3outposts/s3OutpostsSyncs.d.ts.map +1 -0
  839. package/dist/esm/syncs/s3outposts/s3OutpostsSyncs.js +143 -0
  840. package/dist/esm/syncs/s3outposts/s3OutpostsSyncs.js.map +1 -0
  841. package/dist/esm/syncs/s3tables/s3TablesSync.d.ts +2 -0
  842. package/dist/esm/syncs/s3tables/s3TablesSync.d.ts.map +1 -0
  843. package/dist/esm/syncs/s3tables/s3TablesSync.js +45 -0
  844. package/dist/esm/syncs/s3tables/s3TablesSync.js.map +1 -0
  845. package/dist/esm/syncs/secretsmanager/secrets.d.ts +5 -0
  846. package/dist/esm/syncs/secretsmanager/secrets.d.ts.map +1 -0
  847. package/dist/esm/syncs/secretsmanager/secrets.js +42 -0
  848. package/dist/esm/syncs/secretsmanager/secrets.js.map +1 -0
  849. package/dist/esm/syncs/sns/topics.d.ts +3 -0
  850. package/dist/esm/syncs/sns/topics.d.ts.map +1 -0
  851. package/dist/esm/syncs/sns/topics.js +62 -0
  852. package/dist/esm/syncs/sns/topics.js.map +1 -0
  853. package/dist/esm/syncs/sqs/queues.d.ts +2 -0
  854. package/dist/esm/syncs/sqs/queues.d.ts.map +1 -0
  855. package/dist/esm/syncs/sqs/queues.js +51 -0
  856. package/dist/esm/syncs/sqs/queues.js.map +1 -0
  857. package/dist/esm/syncs/sso/ssoInstances.d.ts +3 -0
  858. package/dist/esm/syncs/sso/ssoInstances.d.ts.map +1 -0
  859. package/dist/esm/syncs/sso/ssoInstances.js +186 -0
  860. package/dist/esm/syncs/sso/ssoInstances.js.map +1 -0
  861. package/dist/esm/syncs/sync.d.ts +46 -0
  862. package/dist/esm/syncs/sync.d.ts.map +1 -0
  863. package/dist/esm/syncs/sync.js +32 -0
  864. package/dist/esm/syncs/sync.js.map +1 -0
  865. package/dist/esm/syncs/syncMap.d.ts +17 -0
  866. package/dist/esm/syncs/syncMap.d.ts.map +1 -0
  867. package/dist/esm/syncs/syncMap.js +118 -0
  868. package/dist/esm/syncs/syncMap.js.map +1 -0
  869. package/dist/esm/syncs/typedSync.d.ts +140 -0
  870. package/dist/esm/syncs/typedSync.d.ts.map +1 -0
  871. package/dist/esm/syncs/typedSync.js +172 -0
  872. package/dist/esm/syncs/typedSync.js.map +1 -0
  873. package/dist/esm/utils/client-tools.d.ts +34 -0
  874. package/dist/esm/utils/client-tools.d.ts.map +1 -0
  875. package/dist/esm/utils/client-tools.js +106 -0
  876. package/dist/esm/utils/client-tools.js.map +1 -0
  877. package/dist/esm/utils/json.d.ts +29 -0
  878. package/dist/esm/utils/json.d.ts.map +1 -0
  879. package/dist/esm/utils/json.js +117 -0
  880. package/dist/esm/utils/json.js.map +1 -0
  881. package/dist/esm/utils/promise.d.ts +8 -0
  882. package/dist/esm/utils/promise.d.ts.map +1 -0
  883. package/dist/esm/utils/promise.js +10 -0
  884. package/dist/esm/utils/promise.js.map +1 -0
  885. package/dist/esm/utils/readPackageFile.d.ts +3 -0
  886. package/dist/esm/utils/readPackageFile.d.ts.map +1 -0
  887. package/dist/esm/utils/readPackageFile.js +15 -0
  888. package/dist/esm/utils/readPackageFile.js.map +1 -0
  889. package/dist/esm/utils/readPackageFileEsm.d.ts.map +1 -0
  890. package/dist/esm/utils/strings.d.ts +16 -0
  891. package/dist/esm/utils/strings.d.ts.map +1 -0
  892. package/dist/esm/utils/strings.js +32 -0
  893. package/dist/esm/utils/strings.js.map +1 -0
  894. package/dist/esm/utils/tags.d.ts +22 -0
  895. package/dist/esm/utils/tags.d.ts.map +1 -0
  896. package/dist/esm/utils/tags.js +47 -0
  897. package/dist/esm/utils/tags.js.map +1 -0
  898. package/dist/esm/utils/types.d.ts +2 -0
  899. package/dist/esm/utils/types.d.ts.map +1 -0
  900. package/dist/esm/utils/types.js +4 -0
  901. package/dist/esm/utils/types.js.map +1 -0
  902. package/package.json +164 -0
@@ -0,0 +1,46 @@
1
+ import { ConcurrentWorkerPool } from '@actsecurity/job';
2
+ import { AwsClientPool } from '../aws/ClientPool.js';
3
+ import { type AwsCredentialProviderWithMetaData } from '../aws/coreAuth.js';
4
+ import { type AwsIamStore, type ResourceTypeParts } from '../persistence/AwsIamStore.js';
5
+ import { type AwsService } from '../services.js';
6
+ export interface SyncOptions {
7
+ workerPool: ConcurrentWorkerPool<any, any>;
8
+ writeOnly: boolean;
9
+ customConfig?: Record<string, any>;
10
+ clientPool: AwsClientPool;
11
+ }
12
+ export interface Sync {
13
+ /**
14
+ * What service the sync is for.
15
+ */
16
+ awsService: AwsService;
17
+ /**
18
+ * The name of the sync. This should be a unique identifier for the sync.
19
+ */
20
+ name: string;
21
+ /**
22
+ * Is the sync global. If so, it should only be one in one region per account.
23
+ */
24
+ global?: boolean;
25
+ /**
26
+ * Execute the sync for a given account and region.
27
+ */
28
+ execute(accountId: string, region: string, credentials: AwsCredentialProviderWithMetaData, storage: AwsIamStore, endpoint: string | undefined, syncOptions: SyncOptions): Promise<void>;
29
+ }
30
+ export type DataRecord = Record<string, any> & {
31
+ arn: string;
32
+ };
33
+ /**
34
+ * Synchronize the data for a given set of resources.
35
+ * This will:
36
+ * 1. Delete any resources that meet the `resourceTypeParts` and are not in the `records` list.
37
+ * 2. Save all resources that are in the `records`.
38
+ *
39
+ * @param records the records to synchronize, must include the ARN
40
+ * @param storage the storage client to use for updating metadata
41
+ * @param accountId the account ID to synchronize data for
42
+ * @param resourceTypeParts the resource type parts to synchronize
43
+ * @param writeOnly if true, will only write data and not delete any existing data
44
+ */
45
+ export declare function syncData(records: DataRecord[], storage: AwsIamStore, accountId: string, resourceTypeParts: ResourceTypeParts, writeOnly: boolean): Promise<void>;
46
+ //# sourceMappingURL=sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.d.ts","sourceRoot":"","sources":["../../../src/syncs/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,KAAK,iCAAiC,EAAE,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACxF,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEhD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,oBAAoB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAC1C,SAAS,EAAE,OAAO,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAClC,UAAU,EAAE,aAAa,CAAA;CAC1B;AAED,MAAM,WAAW,IAAI;IACnB;;OAEG;IACH,UAAU,EAAE,UAAU,CAAA;IAEtB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,CAAA;IAEhB;;OAEG;IACH,OAAO,CACL,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,iCAAiC,EAC9C,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,WAAW,EAAE,WAAW,GACvB,OAAO,CAAC,IAAI,CAAC,CAAA;CACjB;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAA;AAE9D;;;;;;;;;;;GAWG;AACH,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,UAAU,EAAE,EACrB,OAAO,EAAE,WAAW,EACpB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,iBAAiB,EACpC,SAAS,EAAE,OAAO,iBAenB"}
@@ -0,0 +1,32 @@
1
+ import { ConcurrentWorkerPool } from '@actsecurity/job';
2
+ import { AwsClientPool } from '../aws/ClientPool.js';
3
+ import {} from '../aws/coreAuth.js';
4
+ import {} from '../persistence/AwsIamStore.js';
5
+ import {} from '../services.js';
6
+ /**
7
+ * Synchronize the data for a given set of resources.
8
+ * This will:
9
+ * 1. Delete any resources that meet the `resourceTypeParts` and are not in the `records` list.
10
+ * 2. Save all resources that are in the `records`.
11
+ *
12
+ * @param records the records to synchronize, must include the ARN
13
+ * @param storage the storage client to use for updating metadata
14
+ * @param accountId the account ID to synchronize data for
15
+ * @param resourceTypeParts the resource type parts to synchronize
16
+ * @param writeOnly if true, will only write data and not delete any existing data
17
+ */
18
+ export async function syncData(records, storage, accountId, resourceTypeParts, writeOnly) {
19
+ if (!writeOnly) {
20
+ const allArns = records.map((r) => r.arn);
21
+ await storage.syncResourceList(accountId, resourceTypeParts, allArns);
22
+ }
23
+ for (const record of records) {
24
+ for (const [key, value] of Object.entries(record)) {
25
+ if (key === 'arn') {
26
+ continue;
27
+ }
28
+ await storage.saveResourceMetadata(accountId, record.arn, key, value);
29
+ }
30
+ }
31
+ }
32
+ //# sourceMappingURL=sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../src/syncs/sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAA0C,MAAM,oBAAoB,CAAA;AAC3E,OAAO,EAA4C,MAAM,+BAA+B,CAAA;AACxF,OAAO,EAAmB,MAAM,gBAAgB,CAAA;AAwChD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,OAAqB,EACrB,OAAoB,EACpB,SAAiB,EACjB,iBAAoC,EACpC,SAAkB;IAElB,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAA;IACvE,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;gBAClB,SAAQ;YACV,CAAC;YACD,MAAM,OAAO,CAAC,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;QACvE,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { type AwsService } from '../services.js';
2
+ import { type Sync } from './sync.js';
3
+ /**
4
+ * Get the global syncs for a given AWS service.
5
+ *
6
+ * @param service The AWS service to get the syncs for
7
+ * @returns An array of syncs that are global for the specified service.
8
+ */
9
+ export declare function getGlobalSyncsForService(service: AwsService): Sync[];
10
+ /**
11
+ * Get the regional syncs for a given AWS service.
12
+ *
13
+ * @param service The AWS service to get the syncs for
14
+ * @returns An array of syncs that are regional for the specified service.
15
+ */
16
+ export declare function getRegionalSyncsForService(service: AwsService): Sync[];
17
+ //# sourceMappingURL=syncMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncMap.d.ts","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAoB,MAAM,gBAAgB,CAAA;AAmClE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAA;AA2DrC;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMpE;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,EAAE,CAMtE"}
@@ -0,0 +1,118 @@
1
+ import { lowerCaseService } from '../services.js';
2
+ import { RestApisSync } from './apigateway/gateways.js';
3
+ import { BackupVaultsSync } from './backup/backupVaults.js';
4
+ import { DynamoDbStreamsSync } from './dynamodb/dynamoDbStreams.js';
5
+ import { DynamoDBTableSync } from './dynamodb/tables.js';
6
+ import { VpcEndpointsSync } from './ec2/vpcEndpoints.js';
7
+ import { EcrSyncs } from './ecr/ecrSyncs.js';
8
+ import { ElasticFileSystemsSync } from './efs/fileSystems.js';
9
+ import { EksAccessEntriesSync } from './eks/accessEntries.js';
10
+ import { EventBridgeEventBusesSync } from './events/eventBuses.js';
11
+ import { GlueCatalogSync } from './glue/catalogs.js';
12
+ import { AuthorizationDetailsSync } from './iam/authorizationDetails.js';
13
+ import { IdentityProviderSyncs } from './iam/identityProviders.js';
14
+ import { InstanceProfilesSync } from './iam/instanceProfiles.js';
15
+ import { KafkaClustersSync } from './kafka/clusters.js';
16
+ import { KinesisDataStreamsSync } from './kinesis/dataStreams.js';
17
+ import { KeySync } from './kms/key.js';
18
+ import { LambdaLayerVersionsSync, LambdaSync } from './lambda/lambda.js';
19
+ import { OpenSearchDomainsSync } from './opensearch/domains.js';
20
+ import { OrganizationSync } from './organizations/organizations.js';
21
+ import { RamResourcesSync } from './ram/ramShares.js';
22
+ import { S3AccessPointsSync } from './s3/accessPoints.js';
23
+ import { AccountS3BpaSync } from './s3/accountBpa.js';
24
+ import { S3GeneralPurposeBucketSync } from './s3/buckets.js';
25
+ import { S3MultiRegionAccessPointsSync } from './s3/multiRegionAccessPoints.js';
26
+ import { S3ObjectLambdaAccessPointsSync } from './s3/objectLambdaAccessPoints.js';
27
+ import { GlacierVaultsSync } from './s3/vaults.js';
28
+ import { S3DirectoryAccessPointsSync } from './s3express/s3DirectoryAccessPointsSync.js';
29
+ import { S3DirectoryBucketsSync } from './s3express/s3DirectoryBucketsSync.js';
30
+ import { S3OutpostsAccessPointsSync, S3OutpostsBucketsSync } from './s3outposts/s3OutpostsSyncs.js';
31
+ import { S3TableBucketsSync } from './s3tables/s3TablesSync.js';
32
+ import { SecretSync } from './secretsmanager/secrets.js';
33
+ import { SnsTopicsSync } from './sns/topics.js';
34
+ import { SqsQueueSync } from './sqs/queues.js';
35
+ import { SsoDataSync } from './sso/ssoInstances.js';
36
+ import {} from './sync.js';
37
+ const allSyncs = [
38
+ AccountS3BpaSync,
39
+ AuthorizationDetailsSync,
40
+ BackupVaultsSync,
41
+ DynamoDbStreamsSync,
42
+ DynamoDBTableSync,
43
+ ...EcrSyncs,
44
+ EksAccessEntriesSync,
45
+ ElasticFileSystemsSync,
46
+ EventBridgeEventBusesSync,
47
+ InstanceProfilesSync,
48
+ ...IdentityProviderSyncs,
49
+ GlacierVaultsSync,
50
+ GlueCatalogSync,
51
+ KafkaClustersSync,
52
+ KinesisDataStreamsSync,
53
+ KeySync,
54
+ LambdaSync,
55
+ LambdaLayerVersionsSync,
56
+ OpenSearchDomainsSync,
57
+ OrganizationSync,
58
+ RamResourcesSync,
59
+ RestApisSync,
60
+ S3AccessPointsSync,
61
+ S3DirectoryBucketsSync,
62
+ S3DirectoryAccessPointsSync,
63
+ S3GeneralPurposeBucketSync,
64
+ S3MultiRegionAccessPointsSync,
65
+ S3ObjectLambdaAccessPointsSync,
66
+ S3OutpostsAccessPointsSync,
67
+ S3OutpostsBucketsSync,
68
+ S3TableBucketsSync,
69
+ SecretSync,
70
+ SnsTopicsSync,
71
+ SqsQueueSync,
72
+ SsoDataSync,
73
+ VpcEndpointsSync
74
+ ];
75
+ const syncMap = new Map();
76
+ for (const sync of allSyncs) {
77
+ const service = lowerCaseService(sync.awsService);
78
+ if (!syncMap.has(service)) {
79
+ syncMap.set(service, {
80
+ regional: [],
81
+ global: []
82
+ });
83
+ }
84
+ const syncs = syncMap.get(service);
85
+ if (sync.global) {
86
+ syncs.global.push(sync);
87
+ }
88
+ else {
89
+ syncs.regional.push(sync);
90
+ }
91
+ }
92
+ /**
93
+ * Get the global syncs for a given AWS service.
94
+ *
95
+ * @param service The AWS service to get the syncs for
96
+ * @returns An array of syncs that are global for the specified service.
97
+ */
98
+ export function getGlobalSyncsForService(service) {
99
+ const syncs = syncMap.get(lowerCaseService(service));
100
+ if (!syncs) {
101
+ return [];
102
+ }
103
+ return syncs.global;
104
+ }
105
+ /**
106
+ * Get the regional syncs for a given AWS service.
107
+ *
108
+ * @param service The AWS service to get the syncs for
109
+ * @returns An array of syncs that are regional for the specified service.
110
+ */
111
+ export function getRegionalSyncsForService(service) {
112
+ const syncs = syncMap.get(lowerCaseService(service));
113
+ if (!syncs) {
114
+ return [];
115
+ }
116
+ return syncs.regional;
117
+ }
118
+ //# sourceMappingURL=syncMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syncMap.js","sourceRoot":"","sources":["../../../src/syncs/syncMap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,140 @@
1
+ import { ConcurrentWorkerPool } from '@actsecurity/job';
2
+ import type { Client, Command } from '@smithy/smithy-client';
3
+ import { AwsClientPool } from '../aws/ClientPool.js';
4
+ import { type AwsCredentialProviderWithMetaData } from '../aws/coreAuth.js';
5
+ import { type ResourceTypeParts } from '../persistence/AwsIamStore.js';
6
+ import { type AwsService } from '../services.js';
7
+ import { type Tags } from '../utils/tags.js';
8
+ import { type Sync } from './sync.js';
9
+ export type ClientConstructor = new (args: any) => Client<any, any, any, any>;
10
+ type CommandConstructor = new (args: any) => Command<any, any, any, any, any>;
11
+ type ShortCommandConstructor = new (args: any) => Command<any, any, any>;
12
+ export type CommandConstructors = CommandConstructor | ShortCommandConstructor;
13
+ export type ExtractOutputType<T> = T extends CommandConstructors ? InstanceType<T> extends Command<any, infer Output, any, any, any> ? Output : never : never;
14
+ export type ExtractInputType<T> = T extends CommandConstructors ? InstanceType<T> extends Command<infer Input, any, any, any, any> ? Input : never : never;
15
+ type Pagination<C extends CommandConstructors> = {
16
+ inputKey: Extract<keyof ExtractInputType<C>, string>;
17
+ outputKey: Extract<keyof ExtractOutputType<C>, string>;
18
+ } | '::no-pagination::';
19
+ type ClientInstanceOrConstructor = InstanceType<ClientConstructor>;
20
+ /**
21
+ * Paginates through all available resources for a given AWS API
22
+ *
23
+ * @param clientClass The AWS Client class to use
24
+ * @param commandClass The command class to invoke for the resource
25
+ * @param key The key of the resource in the command output to pull
26
+ * @param paginationConfig The pagination configuration for the command, defines the keys to use for pagination, use `::no-pagination::` to indicate no pagination
27
+ * @param params Optional parameters to pass to the command
28
+ * @returns Returns an array of resources returned from the commandClass Response Type key
29
+ */
30
+ export declare function paginateResource<C extends CommandConstructors, K extends keyof ExtractOutputType<C>>(clientClassOrInstance: ClientInstanceOrConstructor, commandClass: C, key: K, paginationConfig: Pagination<C>, params?: Partial<ExtractInputType<C>>): Promise<NonNullable<ExtractOutputType<C>[K]>>;
31
+ type ArrayElementType<T> = T extends (infer E)[] ? E : never;
32
+ type ResourceElementType<C extends CommandConstructors, K extends keyof ExtractOutputType<C>> = ArrayElementType<ExtractOutputType<C>[K]> extends string ? {
33
+ name: string;
34
+ } : ArrayElementType<ExtractOutputType<C>[K]>;
35
+ type PromiseType<T extends Promise<any>> = T extends Promise<infer U> ? U : never;
36
+ export type ExtraFieldsDefinition<C extends ClientConstructor, Cmd extends CommandConstructors, K extends keyof ExtractOutputType<Cmd>> = Record<string, (client: InstanceType<C>, resource: ResourceElementType<Cmd, K>, accountId: string, region: string, partition: string) => Promise<any>>;
37
+ type ExtraFieldsReturnType<C extends ClientConstructor, Cmd extends CommandConstructors, K extends keyof ExtractOutputType<Cmd>, T extends ExtraFieldsDefinition<any, Cmd, K>> = {
38
+ [K in keyof T]: PromiseType<ReturnType<T[K]>> | undefined;
39
+ };
40
+ export type ExtendedResourceElementType<C extends ClientConstructor, Cmd extends CommandConstructors, K extends keyof ExtractOutputType<Cmd>, ExtraFieldsFunc extends ExtraFieldsDefinition<any, Cmd, K>> = ResourceElementType<Cmd, K> & {
41
+ extraFields: ExtraFieldsReturnType<C, Cmd, K, ExtraFieldsFunc>;
42
+ };
43
+ export type ResourceSyncType<C extends ClientConstructor, Cmd extends CommandConstructors, K extends keyof ExtractOutputType<Cmd>, ExtraFields extends ExtraFieldsDefinition<C, Cmd, K> = Record<string, () => Promise<any>>> = {
44
+ /**
45
+ * The client to use
46
+ */
47
+ client: C;
48
+ /**
49
+ * The command to execute
50
+ */
51
+ command: Cmd;
52
+ /**
53
+ * The key of the resource in the command output to pull
54
+ */
55
+ key: K;
56
+ /**
57
+ * The pagination token to get from the response and pass to the next call
58
+ */
59
+ paginationConfig: Pagination<Cmd>;
60
+ /**
61
+ * The resource type parts used to sync with storage
62
+ *
63
+ * @param accountId the account ID of the resource
64
+ * @param region the region of the resource
65
+ * @returns the resource type parts
66
+ */
67
+ resourceTypeParts: (accountId: string, region: string) => ResourceTypeParts;
68
+ /**
69
+ * Custom arguments to pass to the command, useful for filtering resources.
70
+ *
71
+ * @param awsId The AWS account ID being queried
72
+ * @param region The region being queried
73
+ * @returns a set of arguments to pass to the command
74
+ */
75
+ arguments?: (awsId: string, region: string) => Partial<ExtractInputType<Cmd>>;
76
+ /**
77
+ * Indicates if the resource type is global.
78
+ */
79
+ globalResourceType?: boolean;
80
+ /**
81
+ * The function to get the tags for a resource
82
+ * @param resource The resource to get the tags for
83
+ * @returns The tags for the resource, or undefined if there are no tags
84
+ */
85
+ tags: (resource: ExtendedResourceElementType<C, Cmd, K, ExtraFields>) => Tags | undefined;
86
+ /**
87
+ * Create the ARN for a resource
88
+ *
89
+ * @param resource the resource to create the ARN for
90
+ * @param region the region the resource is in
91
+ * @param accountId the account the resource is in
92
+ * @returns the ARN for the resource
93
+ */
94
+ arn: (resource: ResourceElementType<Cmd, K>, region: string, accountId: string, partition: string) => string;
95
+ /**
96
+ * The extra fields to get for a resource
97
+ * @param client The client to use to get the extra fields
98
+ * @param resource The resource to get the extra fields for
99
+ * @returns an object of extra fields to get, where the key is the name of the field and the value is a function that returns the value of the field
100
+ */
101
+ extraFields?: ExtraFields;
102
+ /**
103
+ * The results to persist for a resource, except for the ARN and tags, those are handled automatically.
104
+ *
105
+ * @param resource The resource to get the custom fields for, includes extraFields from the `extraFields` function
106
+ */
107
+ results: (resource: ExtendedResourceElementType<C, Cmd, K, ExtraFields>) => Record<string, any>;
108
+ };
109
+ /**
110
+ * Creates a resource sync type and returns it. This provides cleaner syntax than
111
+ * making one directly and having to define the types twice.
112
+ *
113
+ * @param config Configuration for the resource sync type
114
+ * @returns The ResourceSyncType instance passed in.
115
+ */
116
+ export declare function createResourceSyncType<const C extends ClientConstructor, const Cmd extends CommandConstructors, const K extends keyof ExtractOutputType<Cmd>, const ExtraFieldsFunc extends ExtraFieldsDefinition<C, Cmd, K>>(config: ResourceSyncType<C, Cmd, K, ExtraFieldsFunc>): ResourceSyncType<C, Cmd, K, ExtraFieldsFunc>;
117
+ /**
118
+ * Paginates a ResourceSyncType and returns the resources.
119
+ *
120
+ * @param resourceTypeSync The configuration to use.
121
+ * @param credentials The credentials to use for AWS API calls. Pass undefined to use the environment credentials.
122
+ * @param region The region to get the resources for.
123
+ * @returns Returns all the resources for the given type in the given region with extraFields populated.
124
+ */
125
+ export declare function paginateResourceConfig<C extends ClientConstructor, Cmd extends CommandConstructors, K extends keyof ExtractOutputType<Cmd>, ExtraFieldsFunc extends ExtraFieldsDefinition<C, Cmd, K>>(resourceTypeSync: ResourceSyncType<C, Cmd, K, ExtraFieldsFunc>, credentials: AwsCredentialProviderWithMetaData, region: string, endpoint: string | undefined, workerPool: ConcurrentWorkerPool<any, any>, awsService: AwsService, resourceType: string, clientPool: AwsClientPool): Promise<ExtendedResourceElementType<C, Cmd, K, ExtraFieldsFunc>[]>;
126
+ /**
127
+ * Create a typed sync operation for a given AWS service and resource type.
128
+ *
129
+ * Because of obscure typescript issues, the order of the keys in `resourceTypeSync` is important.
130
+ * This order is known to work:
131
+ * client, command, key, paginationConfig, arn, extraFields, tags, resourceTypeParts, results
132
+ *
133
+ * @param awsService the AWS service to sync
134
+ * @param name the name of the sync operation
135
+ * @param resourceTypeSync the resource type sync configuration
136
+ * @returns The sync operation
137
+ */
138
+ export declare function createTypedSyncOperation<C extends ClientConstructor, Cmd extends CommandConstructors, K extends keyof ExtractOutputType<Cmd>, ExtraFieldsFunc extends ExtraFieldsDefinition<C, Cmd, K>>(awsService: AwsService, name: string, resourceTypeSync: ResourceSyncType<C, Cmd, K, ExtraFieldsFunc>): Sync;
139
+ export {};
140
+ //# sourceMappingURL=typedSync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typedSync.d.ts","sourceRoot":"","sources":["../../../src/syncs/typedSync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,172 @@
1
+ import { ConcurrentWorkerPool } from '@actsecurity/job';
2
+ import { AwsClientPool } from '../aws/ClientPool.js';
3
+ import {} from '../aws/coreAuth.js';
4
+ import {} from '../persistence/AwsIamStore.js';
5
+ import {} from '../services.js';
6
+ import { runAndCatchAccessDeniedWithLog, withDnsRetry } from '../utils/client-tools.js';
7
+ import { log } from '@cloud-copilot/log';
8
+ import { convertTagsToRecord } from '../utils/tags.js';
9
+ import { syncData } from './sync.js';
10
+ /**
11
+ * Paginates through all available resources for a given AWS API
12
+ *
13
+ * @param clientClass The AWS Client class to use
14
+ * @param commandClass The command class to invoke for the resource
15
+ * @param key The key of the resource in the command output to pull
16
+ * @param paginationConfig The pagination configuration for the command, defines the keys to use for pagination, use `::no-pagination::` to indicate no pagination
17
+ * @param params Optional parameters to pass to the command
18
+ * @returns Returns an array of resources returned from the commandClass Response Type key
19
+ */
20
+ export async function paginateResource(clientClassOrInstance, commandClass, key, paginationConfig, params) {
21
+ const client = clientClassOrInstance;
22
+ let nextToken = undefined;
23
+ const inputPaginationKey = paginationInputKey(paginationConfig);
24
+ const outputPaginationKey = paginationOutputKey(paginationConfig);
25
+ const resources = [];
26
+ params = params || {};
27
+ do {
28
+ const args = { ...params };
29
+ if (inputPaginationKey) {
30
+ args[inputPaginationKey] = nextToken;
31
+ }
32
+ const command = new commandClass(args);
33
+ const results = await client.send(command);
34
+ if (results[key]) {
35
+ resources.push(...results[key]);
36
+ }
37
+ if (outputPaginationKey) {
38
+ nextToken = results[outputPaginationKey];
39
+ }
40
+ } while (nextToken);
41
+ return resources;
42
+ }
43
+ function paginationInputKey(paginationConfig) {
44
+ if (paginationConfig === '::no-pagination::') {
45
+ return undefined;
46
+ }
47
+ else if (typeof paginationConfig === 'object') {
48
+ return paginationConfig.inputKey;
49
+ }
50
+ else {
51
+ return undefined;
52
+ }
53
+ }
54
+ function paginationOutputKey(paginationConfig) {
55
+ if (paginationConfig === '::no-pagination::') {
56
+ return undefined;
57
+ }
58
+ else if (typeof paginationConfig === 'object') {
59
+ return paginationConfig.outputKey;
60
+ }
61
+ else {
62
+ return undefined;
63
+ }
64
+ }
65
+ /**
66
+ * Creates a resource sync type and returns it. This provides cleaner syntax than
67
+ * making one directly and having to define the types twice.
68
+ *
69
+ * @param config Configuration for the resource sync type
70
+ * @returns The ResourceSyncType instance passed in.
71
+ */
72
+ export function createResourceSyncType(config) {
73
+ return config;
74
+ }
75
+ /**
76
+ * Paginates a ResourceSyncType and returns the resources.
77
+ *
78
+ * @param resourceTypeSync The configuration to use.
79
+ * @param credentials The credentials to use for AWS API calls. Pass undefined to use the environment credentials.
80
+ * @param region The region to get the resources for.
81
+ * @returns Returns all the resources for the given type in the given region with extraFields populated.
82
+ */
83
+ export async function paginateResourceConfig(resourceTypeSync, credentials, region, endpoint, workerPool, awsService, resourceType, clientPool) {
84
+ const accountId = credentials.accountId;
85
+ const partition = credentials.partition;
86
+ const client = clientPool.client(resourceTypeSync.client, credentials, region, endpoint);
87
+ let resources = await withDnsRetry(() => {
88
+ return paginateResource(client, resourceTypeSync.command, resourceTypeSync.key, resourceTypeSync.paginationConfig, resourceTypeSync.arguments ? resourceTypeSync.arguments(accountId, region) : undefined);
89
+ });
90
+ //If the resource is a string, convert it to an object with the name field set
91
+ if (resources.length > 0 && typeof resources[0] === 'string') {
92
+ resources = resources.map((resource) => ({ name: resource }));
93
+ }
94
+ if (resourceTypeSync.extraFields) {
95
+ await Promise.all(resources.map(async (resource) => {
96
+ const resourceArn = resourceTypeSync.arn(resource, region, accountId, partition);
97
+ const fields = resourceTypeSync.extraFields || {};
98
+ const extraFields = Object.entries(fields);
99
+ //Get the extra field values
100
+ const extraFieldPromises = workerPool.enqueueAll(extraFields.map(([key, callback]) => ({
101
+ properties: { field: key, arn: resourceArn },
102
+ execute: async (context) => {
103
+ const value = await withDnsRetry(() => {
104
+ return runAndCatchAccessDeniedWithLog(resourceArn, awsService, resourceType, key, async () => {
105
+ return callback(client, resource, credentials.accountId, region, partition);
106
+ });
107
+ });
108
+ return [key, value];
109
+ }
110
+ })));
111
+ const extraFieldValues = await Promise.all(extraFieldPromises);
112
+ resource.extraFields = {};
113
+ let anyFailure = false;
114
+ for (const result of extraFieldValues) {
115
+ if (result.status === 'rejected') {
116
+ log.error(result.reason, {
117
+ field: result.properties.field,
118
+ arn: result.properties.arn,
119
+ awsService,
120
+ resourceType
121
+ }, 'Failed to get extra field value');
122
+ anyFailure = true;
123
+ }
124
+ else {
125
+ const value = result.value;
126
+ resource.extraFields[value[0]] = value[1];
127
+ }
128
+ }
129
+ if (anyFailure) {
130
+ throw new Error('Failed to get some extra field values');
131
+ }
132
+ }));
133
+ }
134
+ return resources;
135
+ }
136
+ /**
137
+ * Create a typed sync operation for a given AWS service and resource type.
138
+ *
139
+ * Because of obscure typescript issues, the order of the keys in `resourceTypeSync` is important.
140
+ * This order is known to work:
141
+ * client, command, key, paginationConfig, arn, extraFields, tags, resourceTypeParts, results
142
+ *
143
+ * @param awsService the AWS service to sync
144
+ * @param name the name of the sync operation
145
+ * @param resourceTypeSync the resource type sync configuration
146
+ * @returns The sync operation
147
+ */
148
+ export function createTypedSyncOperation(awsService, name, resourceTypeSync) {
149
+ return {
150
+ awsService,
151
+ name,
152
+ global: resourceTypeSync.globalResourceType ?? false,
153
+ execute: async (accountId, region, credentials, storage, endpoint, syncOptions) => {
154
+ const awsId = credentials.accountId;
155
+ const clientPool = syncOptions.clientPool;
156
+ log.trace('getting resources', { region: region, accountId, service: awsService, name });
157
+ const resources = await paginateResourceConfig(resourceTypeSync, credentials, region, endpoint, syncOptions.workerPool, awsService, name, clientPool);
158
+ log.trace('received resources', { region: region, accountId, service: awsService, name });
159
+ const records = resources.map((resource) => {
160
+ const result = resourceTypeSync.results(resource);
161
+ result.arn = resourceTypeSync.arn(resource, region, awsId, credentials.partition);
162
+ if (result.metadata) {
163
+ result.metadata.arn = result.arn;
164
+ }
165
+ result.tags = convertTagsToRecord(resourceTypeSync.tags(resource));
166
+ return result;
167
+ });
168
+ await syncData(records, storage, accountId, resourceTypeSync.resourceTypeParts(awsId, region), syncOptions.writeOnly);
169
+ }
170
+ };
171
+ }
172
+ //# sourceMappingURL=typedSync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typedSync.js","sourceRoot":"","sources":["../../../src/syncs/typedSync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { type AwsService } from '../services.js';
2
+ /**
3
+ *
4
+ * @param operation The operation to run.
5
+ * @returns If successful, returns the result of operation. If operation returns a 404, returns undefined.
6
+ * @throws If operation returns a non 404 error, rethrows that error.
7
+ */
8
+ export declare function runAndCatch404<T>(operation: () => Promise<T | undefined>): Promise<T | undefined>;
9
+ /**
10
+ *
11
+ * @param operation The operation to run.
12
+ * @returns If successful, returns the result of operation. If operation returns a 404, returns undefined.
13
+ * @throws If operation returns a non 400 error, rethrows that error.
14
+ */
15
+ export declare function runAndCatchAccessDenied<T>(operation: () => Promise<T | undefined>, onError?: (error: any) => Promise<T | undefined>): Promise<T | undefined>;
16
+ export declare function runAndCatchAccessDeniedWithLog<T>(arn: string, awsService: AwsService, resourceType: string, field: string, operation: () => Promise<T | undefined>): Promise<T | undefined>;
17
+ /**
18
+ * Run an operation and catch a specific error by name. Return undefined if the error matches, otherwise rethrow the error.
19
+ *
20
+ * @param errorName the name of the error to catch
21
+ * @param operation the operation to run
22
+ * @returns If successful, returns the result of operation. If operation throws an error with the specified name, returns undefined.
23
+ * @throws If operation throws an error with a different name, rethrows that error.
24
+ */
25
+ export declare function runAndCatchError<T>(errorName: string, operation: () => Promise<T | undefined>, onError?: (error: any) => Promise<T | undefined>): Promise<T | undefined>;
26
+ /**
27
+ * Retry a function that may fail due to DNS resolution issues.
28
+ *
29
+ * @param fn the function to retry
30
+ * @param tries the number of times to retry the function
31
+ * @returns the result of the function if successful, otherwise throws the last error encountered
32
+ */
33
+ export declare function withDnsRetry<T>(fn: () => Promise<T>, tries?: number): Promise<T>;
34
+ //# sourceMappingURL=client-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-tools.d.ts","sourceRoot":"","sources":["../../../src/utils/client-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAGhD;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,CAAC,EACpC,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GACtC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAUxB;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAAC,CAAC,EAC7C,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAC/C,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAmBxB;AAED,wBAAsB,8BAA8B,CAAC,CAAC,EACpD,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GACtC,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAWxB;AAED;;;;;;;GAOG;AAEH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,EACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,GAC/C,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAaxB;AAID;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,SAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAgBjF"}