@gradientedge/cdk-utils-aws 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/LICENSE +21 -0
  2. package/dist/src/common/construct.d.ts +85 -0
  3. package/dist/src/common/construct.js +125 -0
  4. package/dist/src/common/index.d.ts +4 -0
  5. package/dist/src/common/index.js +4 -0
  6. package/dist/src/common/resource-name-formatter.d.ts +13 -0
  7. package/dist/src/common/resource-name-formatter.js +30 -0
  8. package/dist/src/common/stack.d.ts +62 -0
  9. package/dist/src/common/stack.js +139 -0
  10. package/dist/src/common/types.d.ts +30 -0
  11. package/dist/src/common/types.js +1 -0
  12. package/dist/src/construct/api-to-any-target/index.d.ts +3 -0
  13. package/dist/src/construct/api-to-any-target/index.js +3 -0
  14. package/dist/src/construct/api-to-any-target/main.d.ts +47 -0
  15. package/dist/src/construct/api-to-any-target/main.js +154 -0
  16. package/dist/src/construct/api-to-any-target/target.d.ts +23 -0
  17. package/dist/src/construct/api-to-any-target/target.js +14 -0
  18. package/dist/src/construct/api-to-any-target/types.d.ts +60 -0
  19. package/dist/src/construct/api-to-any-target/types.js +1 -0
  20. package/dist/src/construct/api-to-eventbridge-target/api.d.ts +34 -0
  21. package/dist/src/construct/api-to-eventbridge-target/api.js +23 -0
  22. package/dist/src/construct/api-to-eventbridge-target/event.d.ts +15 -0
  23. package/dist/src/construct/api-to-eventbridge-target/event.js +12 -0
  24. package/dist/src/construct/api-to-eventbridge-target/index.d.ts +4 -0
  25. package/dist/src/construct/api-to-eventbridge-target/index.js +4 -0
  26. package/dist/src/construct/api-to-eventbridge-target/main.d.ts +121 -0
  27. package/dist/src/construct/api-to-eventbridge-target/main.js +442 -0
  28. package/dist/src/construct/api-to-eventbridge-target/types.d.ts +100 -0
  29. package/dist/src/construct/api-to-eventbridge-target/types.js +1 -0
  30. package/dist/src/construct/api-to-eventbridge-target-with-sns/api-destined-lambda.d.ts +16 -0
  31. package/dist/src/construct/api-to-eventbridge-target-with-sns/api-destined-lambda.js +12 -0
  32. package/dist/src/construct/api-to-eventbridge-target-with-sns/index.d.ts +3 -0
  33. package/dist/src/construct/api-to-eventbridge-target-with-sns/index.js +3 -0
  34. package/dist/src/construct/api-to-eventbridge-target-with-sns/main.d.ts +159 -0
  35. package/dist/src/construct/api-to-eventbridge-target-with-sns/main.js +547 -0
  36. package/dist/src/construct/api-to-eventbridge-target-with-sns/types.d.ts +22 -0
  37. package/dist/src/construct/api-to-eventbridge-target-with-sns/types.js +1 -0
  38. package/dist/src/construct/api-to-lambda-target/api.d.ts +35 -0
  39. package/dist/src/construct/api-to-lambda-target/api.js +24 -0
  40. package/dist/src/construct/api-to-lambda-target/index.d.ts +3 -0
  41. package/dist/src/construct/api-to-lambda-target/index.js +3 -0
  42. package/dist/src/construct/api-to-lambda-target/main.d.ts +70 -0
  43. package/dist/src/construct/api-to-lambda-target/main.js +218 -0
  44. package/dist/src/construct/api-to-lambda-target/types.d.ts +62 -0
  45. package/dist/src/construct/api-to-lambda-target/types.js +1 -0
  46. package/dist/src/construct/application-configuration/index.d.ts +2 -0
  47. package/dist/src/construct/application-configuration/index.js +2 -0
  48. package/dist/src/construct/application-configuration/main.d.ts +23 -0
  49. package/dist/src/construct/application-configuration/main.js +79 -0
  50. package/dist/src/construct/application-configuration/types.d.ts +6 -0
  51. package/dist/src/construct/application-configuration/types.js +1 -0
  52. package/dist/src/construct/event-handler/handler.d.ts +29 -0
  53. package/dist/src/construct/event-handler/handler.js +21 -0
  54. package/dist/src/construct/event-handler/index.d.ts +3 -0
  55. package/dist/src/construct/event-handler/index.js +3 -0
  56. package/dist/src/construct/event-handler/main.d.ts +91 -0
  57. package/dist/src/construct/event-handler/main.js +196 -0
  58. package/dist/src/construct/event-handler/types.d.ts +41 -0
  59. package/dist/src/construct/event-handler/types.js +1 -0
  60. package/dist/src/construct/index.d.ts +14 -0
  61. package/dist/src/construct/index.js +14 -0
  62. package/dist/src/construct/lambda-with-iam-access/index.d.ts +2 -0
  63. package/dist/src/construct/lambda-with-iam-access/index.js +2 -0
  64. package/dist/src/construct/lambda-with-iam-access/main.d.ts +78 -0
  65. package/dist/src/construct/lambda-with-iam-access/main.js +182 -0
  66. package/dist/src/construct/lambda-with-iam-access/types.d.ts +20 -0
  67. package/dist/src/construct/lambda-with-iam-access/types.js +1 -0
  68. package/dist/src/construct/piped-event-handler/index.d.ts +2 -0
  69. package/dist/src/construct/piped-event-handler/index.js +2 -0
  70. package/dist/src/construct/piped-event-handler/main.d.ts +38 -0
  71. package/dist/src/construct/piped-event-handler/main.js +62 -0
  72. package/dist/src/construct/piped-event-handler/types.d.ts +9 -0
  73. package/dist/src/construct/piped-event-handler/types.js +1 -0
  74. package/dist/src/construct/rest-api-lambda/index.d.ts +2 -0
  75. package/dist/src/construct/rest-api-lambda/index.js +2 -0
  76. package/dist/src/construct/rest-api-lambda/main.d.ts +96 -0
  77. package/dist/src/construct/rest-api-lambda/main.js +170 -0
  78. package/dist/src/construct/rest-api-lambda/types.d.ts +23 -0
  79. package/dist/src/construct/rest-api-lambda/types.js +1 -0
  80. package/dist/src/construct/rest-api-lambda-with-cache/index.d.ts +2 -0
  81. package/dist/src/construct/rest-api-lambda-with-cache/index.js +2 -0
  82. package/dist/src/construct/rest-api-lambda-with-cache/main.d.ts +56 -0
  83. package/dist/src/construct/rest-api-lambda-with-cache/main.js +118 -0
  84. package/dist/src/construct/rest-api-lambda-with-cache/types.d.ts +11 -0
  85. package/dist/src/construct/rest-api-lambda-with-cache/types.js +1 -0
  86. package/dist/src/construct/site-with-ecs-backend/constants.d.ts +4 -0
  87. package/dist/src/construct/site-with-ecs-backend/constants.js +5 -0
  88. package/dist/src/construct/site-with-ecs-backend/index.d.ts +3 -0
  89. package/dist/src/construct/site-with-ecs-backend/index.js +3 -0
  90. package/dist/src/construct/site-with-ecs-backend/main.d.ts +154 -0
  91. package/dist/src/construct/site-with-ecs-backend/main.js +437 -0
  92. package/dist/src/construct/site-with-ecs-backend/types.d.ts +49 -0
  93. package/dist/src/construct/site-with-ecs-backend/types.js +1 -0
  94. package/dist/src/construct/site-with-lambda-backend/constants.d.ts +5 -0
  95. package/dist/src/construct/site-with-lambda-backend/constants.js +6 -0
  96. package/dist/src/construct/site-with-lambda-backend/index.d.ts +3 -0
  97. package/dist/src/construct/site-with-lambda-backend/index.js +3 -0
  98. package/dist/src/construct/site-with-lambda-backend/main.d.ts +116 -0
  99. package/dist/src/construct/site-with-lambda-backend/main.js +316 -0
  100. package/dist/src/construct/site-with-lambda-backend/types.d.ts +45 -0
  101. package/dist/src/construct/site-with-lambda-backend/types.js +1 -0
  102. package/dist/src/construct/static-asset-deployment/index.d.ts +2 -0
  103. package/dist/src/construct/static-asset-deployment/index.js +2 -0
  104. package/dist/src/construct/static-asset-deployment/main.d.ts +41 -0
  105. package/dist/src/construct/static-asset-deployment/main.js +113 -0
  106. package/dist/src/construct/static-asset-deployment/types.d.ts +41 -0
  107. package/dist/src/construct/static-asset-deployment/types.js +1 -0
  108. package/dist/src/construct/static-site/index.d.ts +2 -0
  109. package/dist/src/construct/static-site/index.js +2 -0
  110. package/dist/src/construct/static-site/main.d.ts +84 -0
  111. package/dist/src/construct/static-site/main.js +136 -0
  112. package/dist/src/construct/static-site/types.d.ts +30 -0
  113. package/dist/src/construct/static-site/types.js +1 -0
  114. package/dist/src/index.d.ts +5 -0
  115. package/dist/src/index.js +5 -0
  116. package/dist/src/services/api-gateway/index.d.ts +2 -0
  117. package/dist/src/services/api-gateway/index.js +2 -0
  118. package/dist/src/services/api-gateway/main.d.ts +68 -0
  119. package/dist/src/services/api-gateway/main.js +173 -0
  120. package/dist/src/services/api-gateway/types.d.ts +10 -0
  121. package/dist/src/services/api-gateway/types.js +1 -0
  122. package/dist/src/services/appconfig/constants.d.ts +12 -0
  123. package/dist/src/services/appconfig/constants.js +51 -0
  124. package/dist/src/services/appconfig/index.d.ts +3 -0
  125. package/dist/src/services/appconfig/index.js +3 -0
  126. package/dist/src/services/appconfig/main.d.ts +63 -0
  127. package/dist/src/services/appconfig/main.js +119 -0
  128. package/dist/src/services/appconfig/types.d.ts +17 -0
  129. package/dist/src/services/appconfig/types.js +1 -0
  130. package/dist/src/services/certificate-manager/index.d.ts +2 -0
  131. package/dist/src/services/certificate-manager/index.js +2 -0
  132. package/dist/src/services/certificate-manager/main.d.ts +41 -0
  133. package/dist/src/services/certificate-manager/main.js +62 -0
  134. package/dist/src/services/certificate-manager/types.d.ts +11 -0
  135. package/dist/src/services/certificate-manager/types.js +1 -0
  136. package/dist/src/services/cloudfront/index.d.ts +2 -0
  137. package/dist/src/services/cloudfront/index.js +2 -0
  138. package/dist/src/services/cloudfront/main.d.ts +96 -0
  139. package/dist/src/services/cloudfront/main.js +233 -0
  140. package/dist/src/services/cloudfront/types.d.ts +13 -0
  141. package/dist/src/services/cloudfront/types.js +1 -0
  142. package/dist/src/services/cloudtrail/index.d.ts +2 -0
  143. package/dist/src/services/cloudtrail/index.js +2 -0
  144. package/dist/src/services/cloudtrail/main.d.ts +44 -0
  145. package/dist/src/services/cloudtrail/main.js +71 -0
  146. package/dist/src/services/cloudtrail/types.d.ts +5 -0
  147. package/dist/src/services/cloudtrail/types.js +1 -0
  148. package/dist/src/services/cloudwatch/index.d.ts +3 -0
  149. package/dist/src/services/cloudwatch/index.js +3 -0
  150. package/dist/src/services/cloudwatch/logs.d.ts +47 -0
  151. package/dist/src/services/cloudwatch/logs.js +98 -0
  152. package/dist/src/services/cloudwatch/main.d.ts +207 -0
  153. package/dist/src/services/cloudwatch/main.js +552 -0
  154. package/dist/src/services/cloudwatch/types.d.ts +89 -0
  155. package/dist/src/services/cloudwatch/types.js +1 -0
  156. package/dist/src/services/codebuild/index.d.ts +1 -0
  157. package/dist/src/services/codebuild/index.js +1 -0
  158. package/dist/src/services/codebuild/main.d.ts +36 -0
  159. package/dist/src/services/codebuild/main.js +67 -0
  160. package/dist/src/services/constants.d.ts +4 -0
  161. package/dist/src/services/constants.js +5 -0
  162. package/dist/src/services/dynamodb/index.d.ts +2 -0
  163. package/dist/src/services/dynamodb/index.js +2 -0
  164. package/dist/src/services/dynamodb/main.d.ts +35 -0
  165. package/dist/src/services/dynamodb/main.js +72 -0
  166. package/dist/src/services/dynamodb/types.d.ts +10 -0
  167. package/dist/src/services/dynamodb/types.js +1 -0
  168. package/dist/src/services/elastic-container-registry/index.d.ts +1 -0
  169. package/dist/src/services/elastic-container-registry/index.js +1 -0
  170. package/dist/src/services/elastic-container-registry/main.d.ts +27 -0
  171. package/dist/src/services/elastic-container-registry/main.js +33 -0
  172. package/dist/src/services/elastic-container-service/index.d.ts +2 -0
  173. package/dist/src/services/elastic-container-service/index.js +2 -0
  174. package/dist/src/services/elastic-container-service/main.d.ts +56 -0
  175. package/dist/src/services/elastic-container-service/main.js +149 -0
  176. package/dist/src/services/elastic-container-service/types.d.ts +45 -0
  177. package/dist/src/services/elastic-container-service/types.js +1 -0
  178. package/dist/src/services/elastic-file-system/index.d.ts +2 -0
  179. package/dist/src/services/elastic-file-system/index.js +2 -0
  180. package/dist/src/services/elastic-file-system/main.d.ts +42 -0
  181. package/dist/src/services/elastic-file-system/main.js +76 -0
  182. package/dist/src/services/elastic-file-system/types.d.ts +15 -0
  183. package/dist/src/services/elastic-file-system/types.js +1 -0
  184. package/dist/src/services/elastic-kubernetes-service/index.d.ts +2 -0
  185. package/dist/src/services/elastic-kubernetes-service/index.js +2 -0
  186. package/dist/src/services/elastic-kubernetes-service/main.d.ts +32 -0
  187. package/dist/src/services/elastic-kubernetes-service/main.js +85 -0
  188. package/dist/src/services/elastic-kubernetes-service/types.d.ts +7 -0
  189. package/dist/src/services/elastic-kubernetes-service/types.js +1 -0
  190. package/dist/src/services/elasticache/index.d.ts +2 -0
  191. package/dist/src/services/elasticache/index.js +2 -0
  192. package/dist/src/services/elasticache/main.d.ts +47 -0
  193. package/dist/src/services/elasticache/main.js +90 -0
  194. package/dist/src/services/elasticache/types.d.ts +9 -0
  195. package/dist/src/services/elasticache/types.js +1 -0
  196. package/dist/src/services/eventbridge/index.d.ts +3 -0
  197. package/dist/src/services/eventbridge/index.js +3 -0
  198. package/dist/src/services/eventbridge/main.d.ts +93 -0
  199. package/dist/src/services/eventbridge/main.js +295 -0
  200. package/dist/src/services/eventbridge/target.d.ts +57 -0
  201. package/dist/src/services/eventbridge/target.js +61 -0
  202. package/dist/src/services/eventbridge/types.d.ts +43 -0
  203. package/dist/src/services/eventbridge/types.js +1 -0
  204. package/dist/src/services/evidently/index.d.ts +2 -0
  205. package/dist/src/services/evidently/index.js +2 -0
  206. package/dist/src/services/evidently/main.d.ts +56 -0
  207. package/dist/src/services/evidently/main.js +114 -0
  208. package/dist/src/services/evidently/types.d.ts +21 -0
  209. package/dist/src/services/evidently/types.js +1 -0
  210. package/dist/src/services/identity-access-management/index.d.ts +1 -0
  211. package/dist/src/services/identity-access-management/index.js +1 -0
  212. package/dist/src/services/identity-access-management/main.d.ts +263 -0
  213. package/dist/src/services/identity-access-management/main.js +609 -0
  214. package/dist/src/services/index.d.ts +28 -0
  215. package/dist/src/services/index.js +28 -0
  216. package/dist/src/services/key-management-service/index.d.ts +2 -0
  217. package/dist/src/services/key-management-service/index.js +2 -0
  218. package/dist/src/services/key-management-service/main.d.ts +28 -0
  219. package/dist/src/services/key-management-service/main.js +39 -0
  220. package/dist/src/services/key-management-service/types.d.ts +5 -0
  221. package/dist/src/services/key-management-service/types.js +1 -0
  222. package/dist/src/services/lambda/index.d.ts +2 -0
  223. package/dist/src/services/lambda/index.js +2 -0
  224. package/dist/src/services/lambda/main.d.ts +89 -0
  225. package/dist/src/services/lambda/main.js +232 -0
  226. package/dist/src/services/lambda/types.d.ts +54 -0
  227. package/dist/src/services/lambda/types.js +1 -0
  228. package/dist/src/services/route53/index.d.ts +2 -0
  229. package/dist/src/services/route53/index.js +2 -0
  230. package/dist/src/services/route53/main.d.ts +66 -0
  231. package/dist/src/services/route53/main.js +136 -0
  232. package/dist/src/services/route53/types.d.ts +6 -0
  233. package/dist/src/services/route53/types.js +1 -0
  234. package/dist/src/services/secrets-manager/index.d.ts +2 -0
  235. package/dist/src/services/secrets-manager/index.js +2 -0
  236. package/dist/src/services/secrets-manager/main.d.ts +43 -0
  237. package/dist/src/services/secrets-manager/main.js +71 -0
  238. package/dist/src/services/secrets-manager/types.d.ts +3 -0
  239. package/dist/src/services/secrets-manager/types.js +1 -0
  240. package/dist/src/services/simple-notification-service/index.d.ts +2 -0
  241. package/dist/src/services/simple-notification-service/index.js +2 -0
  242. package/dist/src/services/simple-notification-service/main.d.ts +38 -0
  243. package/dist/src/services/simple-notification-service/main.js +68 -0
  244. package/dist/src/services/simple-notification-service/types.d.ts +5 -0
  245. package/dist/src/services/simple-notification-service/types.js +1 -0
  246. package/dist/src/services/simple-queue-service/index.d.ts +2 -0
  247. package/dist/src/services/simple-queue-service/index.js +2 -0
  248. package/dist/src/services/simple-queue-service/main.d.ts +45 -0
  249. package/dist/src/services/simple-queue-service/main.js +101 -0
  250. package/dist/src/services/simple-queue-service/types.d.ts +15 -0
  251. package/dist/src/services/simple-queue-service/types.js +1 -0
  252. package/dist/src/services/simple-storage-service/index.d.ts +2 -0
  253. package/dist/src/services/simple-storage-service/index.js +2 -0
  254. package/dist/src/services/simple-storage-service/main.d.ts +79 -0
  255. package/dist/src/services/simple-storage-service/main.js +191 -0
  256. package/dist/src/services/simple-storage-service/types.d.ts +25 -0
  257. package/dist/src/services/simple-storage-service/types.js +1 -0
  258. package/dist/src/services/step-function/index.d.ts +2 -0
  259. package/dist/src/services/step-function/index.js +2 -0
  260. package/dist/src/services/step-function/main.d.ts +161 -0
  261. package/dist/src/services/step-function/main.js +380 -0
  262. package/dist/src/services/step-function/types.d.ts +88 -0
  263. package/dist/src/services/step-function/types.js +1 -0
  264. package/dist/src/services/systems-manager/index.d.ts +2 -0
  265. package/dist/src/services/systems-manager/index.js +2 -0
  266. package/dist/src/services/systems-manager/main.d.ts +55 -0
  267. package/dist/src/services/systems-manager/main.js +97 -0
  268. package/dist/src/services/systems-manager/types.d.ts +9 -0
  269. package/dist/src/services/systems-manager/types.js +1 -0
  270. package/dist/src/services/virtual-private-cloud/index.d.ts +2 -0
  271. package/dist/src/services/virtual-private-cloud/index.js +2 -0
  272. package/dist/src/services/virtual-private-cloud/ipv6.d.ts +7 -0
  273. package/dist/src/services/virtual-private-cloud/ipv6.js +38 -0
  274. package/dist/src/services/virtual-private-cloud/main.d.ts +43 -0
  275. package/dist/src/services/virtual-private-cloud/main.js +87 -0
  276. package/dist/src/services/virtual-private-cloud/types.d.ts +4 -0
  277. package/dist/src/services/virtual-private-cloud/types.js +1 -0
  278. package/dist/src/services/web-application-firewall/index.d.ts +2 -0
  279. package/dist/src/services/web-application-firewall/index.js +2 -0
  280. package/dist/src/services/web-application-firewall/main.d.ts +35 -0
  281. package/dist/src/services/web-application-firewall/main.js +61 -0
  282. package/dist/src/services/web-application-firewall/types.d.ts +9 -0
  283. package/dist/src/services/web-application-firewall/types.js +1 -0
  284. package/dist/src/types/index.d.ts +6 -0
  285. package/dist/src/types/index.js +1 -0
  286. package/dist/src/utils/index.d.ts +45 -0
  287. package/dist/src/utils/index.js +61 -0
  288. package/package.json +44 -0
@@ -0,0 +1,263 @@
1
+ import { ICluster, ITaskDefinition } from 'aws-cdk-lib/aws-ecs';
2
+ import { IRule } from 'aws-cdk-lib/aws-events';
3
+ import { CfnRole, PolicyDocument, PolicyStatement, Role, ServicePrincipal } from 'aws-cdk-lib/aws-iam';
4
+ import { CfnLogGroup } from 'aws-cdk-lib/aws-logs';
5
+ import { IBucket } from 'aws-cdk-lib/aws-s3';
6
+ import { Queue } from 'aws-cdk-lib/aws-sqs';
7
+ import { CommonConstruct } from '../../common/index.js';
8
+ /**
9
+ * @classdesc Provides operations on AWS
10
+ * - A new instance of this class is injected into {@link CommonConstruct} constructor.
11
+ * - If a custom construct extends {@link CommonConstruct}, an instance is available within the context.
12
+ * @example
13
+ * import { CommonConstruct } from '@gradientedge/cdk-utils'
14
+ *
15
+ * class CustomConstruct extends CommonConstruct {
16
+ * constructor(parent: Construct, id: string, props: common.CommonStackProps) {
17
+ * super(parent, id, props)
18
+ * this.props = props
19
+ * this.iamManager.createRoleForEcsEvent('MyEcsRole', this, cluster, task)
20
+ * }
21
+ * }
22
+ * @see [CDK IAM Module]{@link https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_iam-readme.html}
23
+ */
24
+ export declare class IamManager {
25
+ /**
26
+ * @summary Method to create iam statement to read secrets
27
+ * @param scope scope in which this resource is defined
28
+ * @param resourceArns list of ARNs to allow access to
29
+ */
30
+ statementForReadSecrets(scope: CommonConstruct, resourceArns?: string[]): PolicyStatement;
31
+ /**
32
+ * @summary Method to create iam statement to put events
33
+ * @param resourceArns list of ARNs to allow access to
34
+ */
35
+ statementForPutEvents(resourceArns?: string[]): PolicyStatement;
36
+ /**
37
+ * @summary Method to create iam statement to start step function execution
38
+ * @param resourceArns list of ARNs to allow access to
39
+ */
40
+ statementForStartExecution(resourceArns?: string[]): PolicyStatement;
41
+ /**
42
+ * @summary Method to create iam statement to poll queue
43
+ * @param resourceArns list of ARNs to allow access to
44
+ */
45
+ statementForPollQueue(resourceArns?: string[]): PolicyStatement;
46
+ /**
47
+ * @summary Method to create iam statement to invoke lambda function
48
+ * @param resourceArns list of ARNs to allow access to
49
+ */
50
+ statementForInvokeLambda(resourceArns?: string[]): PolicyStatement;
51
+ /**
52
+ * @summary Method to create iam statement to read app config
53
+ * @param resourceArns list of ARNs to allow access to
54
+ */
55
+ statementForReadAnyAppConfig(resourceArns?: string[]): PolicyStatement;
56
+ /**
57
+ * @summary Method to create iam statement to access app config
58
+ * @param resourceArns list of ARNs to allow access to
59
+ */
60
+ statementForAppConfigExecution(resourceArns?: string[]): PolicyStatement;
61
+ /**
62
+ * @summary Method to create iam statement to put xray telemetry
63
+ * @param resourceArns list of ARNs to allow access to
64
+ */
65
+ statementForPutXrayTelemetry(resourceArns?: string[]): PolicyStatement;
66
+ /**
67
+ * @summary Method to create iam statement to decrypt kms
68
+ * @param resourceArns list of ARNs to allow access to
69
+ */
70
+ statementForDecryptKms(resourceArns?: string[]): PolicyStatement;
71
+ /**
72
+ * @summary Method to create iam statement to list s3 buckets
73
+ * @param scope scope in which this resource is defined
74
+ * @param bucket
75
+ */
76
+ statementForListBucket(scope: CommonConstruct, bucket: IBucket): PolicyStatement;
77
+ /**
78
+ * @summary Method to create iam statement to list all s3 buckets
79
+ * @param resourceArns list of ARNs to allow access to
80
+ */
81
+ statementForListAllMyBuckets(resourceArns?: string[]): PolicyStatement;
82
+ /**
83
+ * @summary Method to create iam statement to get s3 objects in buckets
84
+ * @param scope scope in which this resource is defined
85
+ * @param bucket
86
+ * @param resourceArns list of ARNs to allow access to
87
+ */
88
+ statementForGetAnyS3Objects(scope: CommonConstruct, bucket: IBucket, resourceArns?: string[]): PolicyStatement;
89
+ /**
90
+ * @summary Method to create iam statement to delete s3 objects in buckets
91
+ * @param scope scope in which this resource is defined
92
+ * @param bucket
93
+ * @param resourceArns list of ARNs to allow access to
94
+ */
95
+ statementForDeleteAnyS3Objects(scope: CommonConstruct, bucket: IBucket, resourceArns?: string[]): PolicyStatement;
96
+ /**
97
+ * @summary Method to create iam statement to write s3 objects in buckets
98
+ * @param scope scope in which this resource is defined
99
+ * @param bucket
100
+ * @param resourceArns list of ARNs to allow access to
101
+ */
102
+ statementForPutAnyS3Objects(scope: CommonConstruct, bucket: IBucket, resourceArns?: string[]): PolicyStatement;
103
+ /**
104
+ * @summary Method to create iam statement to pass iam role
105
+ * @param resourceArns list of ARNs to allow access to
106
+ */
107
+ statementForPassRole(resourceArns?: string[]): PolicyStatement;
108
+ /**
109
+ * @summary Method to create iam statement to invalidate cloudfront cache
110
+ * @param resourceArns list of ARNs to allow access to
111
+ */
112
+ statementForCloudfrontInvalidation(resourceArns?: string[]): PolicyStatement;
113
+ /**
114
+ * @summary Method to create iam statement to access efs
115
+ * @param resourceArns list of ARNs to allow access to
116
+ */
117
+ statementForWriteEfs(resourceArns?: string[]): PolicyStatement;
118
+ /**
119
+ * @summary Method to create iam statement to assume iam role
120
+ * @param scope scope in which this resource is defined
121
+ * @param servicePrincipals
122
+ */
123
+ statementForAssumeRole(scope: CommonConstruct, servicePrincipals: ServicePrincipal[]): PolicyStatement;
124
+ /**
125
+ * @summary Method to create iam statement to pass ecs role
126
+ * @param resourceArns list of ARNs to allow access to
127
+ */
128
+ statementForEcsPassRole(resourceArns?: string[]): PolicyStatement;
129
+ /**
130
+ * @summary Method to create iam statement to run ecs task
131
+ * @param scope scope in which this resource is defined
132
+ * @param cluster
133
+ * @param task
134
+ */
135
+ statementForRunEcsTask(scope: CommonConstruct, cluster: ICluster, task: ITaskDefinition): PolicyStatement;
136
+ /**
137
+ * @summary Method to create iam statement to create log stream
138
+ * @param scope scope in which this resource is defined
139
+ * @param logGroup
140
+ */
141
+ statementForCreateLogStream(scope: CommonConstruct, logGroup: CfnLogGroup): PolicyStatement;
142
+ /**
143
+ * @summary Method to create iam statement to create any log stream
144
+ * @param resourceArns list of ARNs to allow access to
145
+ */
146
+ statementForCreateAnyLogStream(resourceArns?: string[]): PolicyStatement;
147
+ /**
148
+ * @summary Method to create iam statement to write log events
149
+ * @param scope scope in which this resource is defined
150
+ * @param logGroup
151
+ */
152
+ statementForPutLogEvent(scope: CommonConstruct, logGroup: CfnLogGroup): PolicyStatement;
153
+ /**
154
+ * @summary Method to create iam statement to write any log events
155
+ * @param resourceArns list of ARNs to allow access to
156
+ */
157
+ statementForPutAnyLogEvent(resourceArns?: string[]): PolicyStatement;
158
+ /**
159
+ * @summary Method to create iam statement to read items from dynamodb table
160
+ * @param resourceArns list of ARNs to allow access to
161
+ */
162
+ statementForReadTableItems(resourceArns?: string[]): PolicyStatement;
163
+ /**
164
+ * @summary Method to create iam statement to write items from dynamodb table
165
+ * @param resourceArns list of ARNs to allow access to
166
+ */
167
+ statementForWriteTableItems(resourceArns?: string[]): PolicyStatement;
168
+ /**
169
+ * @summary Method to create iam statement to poll from dynamodb table
170
+ * @param resourceArns list of ARNs to allow access to
171
+ */
172
+ statementFordynamoDbStream(resourceArns?: string[]): PolicyStatement;
173
+ /**
174
+ * @summary Method to create iam policy to invalidate cloudfront cache
175
+ * @param resourceArns list of ARNs to allow access to
176
+ */
177
+ createPolicyForCloudfrontInvalidation(resourceArns?: string[]): PolicyDocument;
178
+ /**
179
+ * @summary Method to create iam policy for sqs
180
+ * @param id scoped id of the resource
181
+ * @param scope scope in which this resource is defined
182
+ * @param sqsQueue
183
+ * @param eventBridgeRule
184
+ * @param servicePrincipals
185
+ */
186
+ createPolicyForSqsEvent(id: string, scope: CommonConstruct, sqsQueue: Queue, eventBridgeRule: IRule, servicePrincipals?: ServicePrincipal[]): PolicyDocument;
187
+ /**
188
+ * @summary Method to create iam role to invalidate cloudfront cache
189
+ * @param id scoped id of the resource
190
+ * @param scope scope in which this resource is defined
191
+ */
192
+ createRoleForCloudfrontInvalidation(id: string, scope: CommonConstruct): Role;
193
+ /**
194
+ * @summary Method to create iam statement for cloud trail
195
+ * @param id scoped id of the resource
196
+ * @param scope scope in which this resource is defined
197
+ * @param logGroup
198
+ */
199
+ createRoleForCloudTrail(id: string, scope: CommonConstruct, logGroup: CfnLogGroup): CfnRole;
200
+ /**
201
+ * @summary Method to create iam statement for ecs event
202
+ * @param id scoped id of the resource
203
+ * @param scope scope in which this resource is defined
204
+ * @param cluster
205
+ * @param task
206
+ */
207
+ createRoleForEcsEvent(id: string, scope: CommonConstruct, cluster: ICluster, task: ITaskDefinition): Role;
208
+ /**
209
+ * @summary Method to create iam statement for ecs execution
210
+ * @param id scoped id of the resource
211
+ * @param scope scope in which this resource is defined
212
+ * @param policy
213
+ */
214
+ createRoleForEcsExecution(id: string, scope: CommonConstruct, policy: PolicyDocument): Role;
215
+ /**
216
+ * @summary Method to create iam statement for lambda execution
217
+ * @param id scoped id of the resource
218
+ * @param scope scope in which this resource is defined
219
+ * @param policy
220
+ * @param servicePrincipal
221
+ */
222
+ createRoleForLambda(id: string, scope: CommonConstruct, policy: PolicyDocument, servicePrincipal?: ServicePrincipal): Role;
223
+ /**
224
+ * @summary Method to create iam statement for appconfig secrets manager integration
225
+ * @param id scoped id of the resource
226
+ * @param scope scope in which this resource is defined
227
+ * @param policy
228
+ * @param servicePrincipal
229
+ */
230
+ createRoleForAppConfigSecrets(id: string, scope: CommonConstruct, policy: PolicyDocument, servicePrincipal?: ServicePrincipal): Role;
231
+ /**
232
+ * @summary Method to create iam statement for step function execution
233
+ * @param id scoped id of the resource
234
+ * @param scope scope in which this resource is defined
235
+ * @param policy
236
+ * @param servicePrincipal
237
+ */
238
+ createRoleForStepFunction(id: string, scope: CommonConstruct, policy: PolicyDocument, servicePrincipal?: ServicePrincipal): Role;
239
+ /**
240
+ * @summary Method to create iam statement for sqs to step function pipe
241
+ * @param id scoped id of the resource
242
+ * @param scope scope in which this resource is defined
243
+ * @param queueArn the arn of the sqs queue
244
+ * @param stepFunctionArn the arn of the step function
245
+ */
246
+ createRoleForSqsToSfnPipe(id: string, scope: CommonConstruct, queueArn: string, stepFunctionArn: string): Role;
247
+ /**
248
+ * @summary Method to create iam statement for sqs to lambda pipe
249
+ * @param id scoped id of the resource
250
+ * @param scope scope in which this resource is defined
251
+ * @param queueArn the arn of the sqs queue
252
+ * @param lambdaArn the arn of the lambda function
253
+ */
254
+ createRoleForSqsToLambdaPipe(id: string, scope: CommonConstruct, queueArn: string, lambdaArn: string): Role;
255
+ /**
256
+ * @summary Method to create iam statement for dynamoDb to lambda function pipe
257
+ * @param id scoped id of the resource
258
+ * @param scope scope in which this resource is defined
259
+ * @param dynamoDbStreamArn the arn of the dynamoDb Stream queue
260
+ * @param lambdaFunctionArn the arn of the lambda function
261
+ */
262
+ createRoleForDynamoDbToLambdaPipe(id: string, scope: CommonConstruct, dynamoDbStreamArn: string, lambdaFunctionArn: string): Role;
263
+ }