terraconstructs 0.0.8

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 (680) hide show
  1. package/.envrc +5 -0
  2. package/.jsii +79780 -0
  3. package/.mise.toml +8 -0
  4. package/.nvmrc +1 -0
  5. package/.terraform-version +1 -0
  6. package/.terraform.d/plugin-cache/.gitignore +5 -0
  7. package/LICENSE +674 -0
  8. package/NOTICE.txt +12 -0
  9. package/README.md +42 -0
  10. package/bun.lockb +0 -0
  11. package/go.mod +158 -0
  12. package/go.sum +1206 -0
  13. package/lib/aws/arn.d.ts +187 -0
  14. package/lib/aws/arn.js +383 -0
  15. package/lib/aws/aws-construct.d.ts +76 -0
  16. package/lib/aws/aws-construct.js +38 -0
  17. package/lib/aws/aws-stack.d.ts +201 -0
  18. package/lib/aws/aws-stack.js +303 -0
  19. package/lib/aws/cloudwatch/actions/ec2.d.ts +35 -0
  20. package/lib/aws/cloudwatch/actions/ec2.js +48 -0
  21. package/lib/aws/cloudwatch/actions/index.d.ts +2 -0
  22. package/lib/aws/cloudwatch/actions/index.js +24 -0
  23. package/lib/aws/cloudwatch/actions/lambda.d.ts +16 -0
  24. package/lib/aws/cloudwatch/actions/lambda.js +48 -0
  25. package/lib/aws/cloudwatch/alarm-action.d.ts +23 -0
  26. package/lib/aws/cloudwatch/alarm-action.js +4 -0
  27. package/lib/aws/cloudwatch/alarm-base.d.ts +84 -0
  28. package/lib/aws/cloudwatch/alarm-base.js +64 -0
  29. package/lib/aws/cloudwatch/alarm-rule.d.ts +61 -0
  30. package/lib/aws/cloudwatch/alarm-rule.js +116 -0
  31. package/lib/aws/cloudwatch/alarm-status-widget.d.ts +77 -0
  32. package/lib/aws/cloudwatch/alarm-status-widget.js +62 -0
  33. package/lib/aws/cloudwatch/alarm.d.ts +158 -0
  34. package/lib/aws/cloudwatch/alarm.js +410 -0
  35. package/lib/aws/cloudwatch/composite-alarm.d.ts +88 -0
  36. package/lib/aws/cloudwatch/composite-alarm.js +98 -0
  37. package/lib/aws/cloudwatch/dashboard.d.ts +137 -0
  38. package/lib/aws/cloudwatch/dashboard.js +141 -0
  39. package/lib/aws/cloudwatch/data-protection-policy.d.ts +184 -0
  40. package/lib/aws/cloudwatch/data-protection-policy.js +246 -0
  41. package/lib/aws/cloudwatch/graph.d.ts +792 -0
  42. package/lib/aws/cloudwatch/graph.js +537 -0
  43. package/lib/aws/cloudwatch/index.d.ts +26 -0
  44. package/lib/aws/cloudwatch/index.js +49 -0
  45. package/lib/aws/cloudwatch/layout.d.ts +89 -0
  46. package/lib/aws/cloudwatch/layout.js +147 -0
  47. package/lib/aws/cloudwatch/log-destinations/index.d.ts +2 -0
  48. package/lib/aws/cloudwatch/log-destinations/index.js +20 -0
  49. package/lib/aws/cloudwatch/log-destinations/kinesis.d.ts +29 -0
  50. package/lib/aws/cloudwatch/log-destinations/kinesis.js +52 -0
  51. package/lib/aws/cloudwatch/log-destinations/lambda.d.ts +22 -0
  52. package/lib/aws/cloudwatch/log-destinations/lambda.js +46 -0
  53. package/lib/aws/cloudwatch/log-group.d.ts +453 -0
  54. package/lib/aws/cloudwatch/log-group.js +350 -0
  55. package/lib/aws/cloudwatch/log-query.d.ts +91 -0
  56. package/lib/aws/cloudwatch/log-query.js +85 -0
  57. package/lib/aws/cloudwatch/log-stream.d.ts +57 -0
  58. package/lib/aws/cloudwatch/log-stream.js +57 -0
  59. package/lib/aws/cloudwatch/metric-filter.d.ts +30 -0
  60. package/lib/aws/cloudwatch/metric-filter.js +69 -0
  61. package/lib/aws/cloudwatch/metric-types.d.ts +407 -0
  62. package/lib/aws/cloudwatch/metric-types.js +151 -0
  63. package/lib/aws/cloudwatch/metric.d.ts +492 -0
  64. package/lib/aws/cloudwatch/metric.js +493 -0
  65. package/lib/aws/cloudwatch/pattern.d.ts +195 -0
  66. package/lib/aws/cloudwatch/pattern.js +412 -0
  67. package/lib/aws/cloudwatch/policy.d.ts +43 -0
  68. package/lib/aws/cloudwatch/policy.js +50 -0
  69. package/lib/aws/cloudwatch/private/drop-empty-object-at-the-end-of-an-array-token.d.ts +14 -0
  70. package/lib/aws/cloudwatch/private/drop-empty-object-at-the-end-of-an-array-token.js +37 -0
  71. package/lib/aws/cloudwatch/private/env-tokens.d.ts +8 -0
  72. package/lib/aws/cloudwatch/private/env-tokens.js +48 -0
  73. package/lib/aws/cloudwatch/private/metric-util.d.ts +60 -0
  74. package/lib/aws/cloudwatch/private/metric-util.js +132 -0
  75. package/lib/aws/cloudwatch/private/object.d.ts +1 -0
  76. package/lib/aws/cloudwatch/private/object.js +18 -0
  77. package/lib/aws/cloudwatch/private/rendering.d.ts +60 -0
  78. package/lib/aws/cloudwatch/private/rendering.js +181 -0
  79. package/lib/aws/cloudwatch/private/statistic.d.ts +51 -0
  80. package/lib/aws/cloudwatch/private/statistic.js +176 -0
  81. package/lib/aws/cloudwatch/query-definition.d.ts +150 -0
  82. package/lib/aws/cloudwatch/query-definition.js +114 -0
  83. package/lib/aws/cloudwatch/stats.d.ts +150 -0
  84. package/lib/aws/cloudwatch/stats.js +207 -0
  85. package/lib/aws/cloudwatch/subscription-filter.d.ts +75 -0
  86. package/lib/aws/cloudwatch/subscription-filter.js +51 -0
  87. package/lib/aws/cloudwatch/text.d.ts +52 -0
  88. package/lib/aws/cloudwatch/text.js +53 -0
  89. package/lib/aws/cloudwatch/variable.d.ts +156 -0
  90. package/lib/aws/cloudwatch/variable.js +156 -0
  91. package/lib/aws/cloudwatch/widget.d.ts +62 -0
  92. package/lib/aws/cloudwatch/widget.js +45 -0
  93. package/lib/aws/compute/activity.d.ts +81 -0
  94. package/lib/aws/compute/activity.js +132 -0
  95. package/lib/aws/compute/architecture.d.ts +33 -0
  96. package/lib/aws/compute/architecture.js +42 -0
  97. package/lib/aws/compute/chain.d.ts +52 -0
  98. package/lib/aws/compute/chain.js +68 -0
  99. package/lib/aws/compute/condition.d.ts +202 -0
  100. package/lib/aws/compute/condition.js +409 -0
  101. package/lib/aws/compute/event-invoke-config.d.ts +74 -0
  102. package/lib/aws/compute/event-invoke-config.js +63 -0
  103. package/lib/aws/compute/event-source-filter.d.ts +64 -0
  104. package/lib/aws/compute/event-source-filter.js +86 -0
  105. package/lib/aws/compute/event-source-mapping.d.ts +310 -0
  106. package/lib/aws/compute/event-source-mapping.js +267 -0
  107. package/lib/aws/compute/event-sources/index.d.ts +4 -0
  108. package/lib/aws/compute/event-sources/index.js +28 -0
  109. package/lib/aws/compute/event-sources/s3-onfailure-destination.d.ts +13 -0
  110. package/lib/aws/compute/event-sources/s3-onfailure-destination.js +26 -0
  111. package/lib/aws/compute/event-sources/s3.d.ts +24 -0
  112. package/lib/aws/compute/event-sources/s3.js +25 -0
  113. package/lib/aws/compute/event-sources/sqs-dlq.d.ts +13 -0
  114. package/lib/aws/compute/event-sources/sqs-dlq.js +26 -0
  115. package/lib/aws/compute/event-sources/sqs.d.ts +75 -0
  116. package/lib/aws/compute/event-sources/sqs.js +84 -0
  117. package/lib/aws/compute/fields.d.ts +367 -0
  118. package/lib/aws/compute/fields.js +546 -0
  119. package/lib/aws/compute/function-alias.d.ts +148 -0
  120. package/lib/aws/compute/function-alias.js +176 -0
  121. package/lib/aws/compute/function-base.d.ts +314 -0
  122. package/lib/aws/compute/function-base.js +421 -0
  123. package/lib/aws/compute/function-destination.d.ts +42 -0
  124. package/lib/aws/compute/function-destination.js +18 -0
  125. package/lib/aws/compute/function-destinations/event-bridge.d.ts +19 -0
  126. package/lib/aws/compute/function-destinations/event-bridge.js +46 -0
  127. package/lib/aws/compute/function-destinations/function.d.ts +34 -0
  128. package/lib/aws/compute/function-destinations/function.js +55 -0
  129. package/lib/aws/compute/function-destinations/index.d.ts +3 -0
  130. package/lib/aws/compute/function-destinations/index.js +22 -0
  131. package/lib/aws/compute/function-destinations/sqs.d.ts +14 -0
  132. package/lib/aws/compute/function-destinations/sqs.js +27 -0
  133. package/lib/aws/compute/function-nodejs.d.ts +55 -0
  134. package/lib/aws/compute/function-nodejs.js +70 -0
  135. package/lib/aws/compute/function-permission.d.ts +83 -0
  136. package/lib/aws/compute/function-permission.js +3 -0
  137. package/lib/aws/compute/function-url.d.ts +210 -0
  138. package/lib/aws/compute/function-url.js +148 -0
  139. package/lib/aws/compute/function-vpc-config.generated.d.ts +36 -0
  140. package/lib/aws/compute/function-vpc-config.generated.js +3 -0
  141. package/lib/aws/compute/function.d.ts +492 -0
  142. package/lib/aws/compute/function.js +692 -0
  143. package/lib/aws/compute/index.d.ts +42 -0
  144. package/lib/aws/compute/index.js +64 -0
  145. package/lib/aws/compute/private/intrinstics.d.ts +86 -0
  146. package/lib/aws/compute/private/intrinstics.js +220 -0
  147. package/lib/aws/compute/private/json-path.d.ts +57 -0
  148. package/lib/aws/compute/private/json-path.js +351 -0
  149. package/lib/aws/compute/private/util.d.ts +1 -0
  150. package/lib/aws/compute/private/util.js +38 -0
  151. package/lib/aws/compute/state-graph.d.ts +100 -0
  152. package/lib/aws/compute/state-graph.js +177 -0
  153. package/lib/aws/compute/state-machine-fragment.d.ts +61 -0
  154. package/lib/aws/compute/state-machine-fragment.js +56 -0
  155. package/lib/aws/compute/state-machine.d.ts +323 -0
  156. package/lib/aws/compute/state-machine.js +392 -0
  157. package/lib/aws/compute/states/choice.d.ts +94 -0
  158. package/lib/aws/compute/states/choice.js +81 -0
  159. package/lib/aws/compute/states/custom-state.d.ts +55 -0
  160. package/lib/aws/compute/states/custom-state.js +114 -0
  161. package/lib/aws/compute/states/distributed-map/item-batcher.d.ts +64 -0
  162. package/lib/aws/compute/states/distributed-map/item-batcher.js +58 -0
  163. package/lib/aws/compute/states/distributed-map/item-reader.d.ts +256 -0
  164. package/lib/aws/compute/states/distributed-map/item-reader.js +253 -0
  165. package/lib/aws/compute/states/distributed-map/result-writer.d.ts +41 -0
  166. package/lib/aws/compute/states/distributed-map/result-writer.js +66 -0
  167. package/lib/aws/compute/states/distributed-map.d.ts +153 -0
  168. package/lib/aws/compute/states/distributed-map.js +207 -0
  169. package/lib/aws/compute/states/fail.d.ts +74 -0
  170. package/lib/aws/compute/states/fail.js +83 -0
  171. package/lib/aws/compute/states/map-base.d.ts +145 -0
  172. package/lib/aws/compute/states/map-base.js +109 -0
  173. package/lib/aws/compute/states/map.d.ts +76 -0
  174. package/lib/aws/compute/states/map.js +110 -0
  175. package/lib/aws/compute/states/parallel.d.ts +113 -0
  176. package/lib/aws/compute/states/parallel.js +100 -0
  177. package/lib/aws/compute/states/pass.d.ts +122 -0
  178. package/lib/aws/compute/states/pass.js +99 -0
  179. package/lib/aws/compute/states/private/state-type.d.ts +13 -0
  180. package/lib/aws/compute/states/private/state-type.js +19 -0
  181. package/lib/aws/compute/states/state.d.ts +276 -0
  182. package/lib/aws/compute/states/state.js +482 -0
  183. package/lib/aws/compute/states/succeed.d.ts +51 -0
  184. package/lib/aws/compute/states/succeed.js +32 -0
  185. package/lib/aws/compute/states/task-base.d.ts +225 -0
  186. package/lib/aws/compute/states/task-base.js +160 -0
  187. package/lib/aws/compute/states/task.d.ts +127 -0
  188. package/lib/aws/compute/states/task.js +92 -0
  189. package/lib/aws/compute/states/wait.d.ts +78 -0
  190. package/lib/aws/compute/states/wait.js +90 -0
  191. package/lib/aws/compute/step-functions-task.d.ts +78 -0
  192. package/lib/aws/compute/step-functions-task.js +27 -0
  193. package/lib/aws/compute/task-credentials.d.ts +45 -0
  194. package/lib/aws/compute/task-credentials.js +52 -0
  195. package/lib/aws/compute/task-input.d.ts +86 -0
  196. package/lib/aws/compute/task-input.js +107 -0
  197. package/lib/aws/compute/tasks/aws-sdk/call-aws-service.d.ts +73 -0
  198. package/lib/aws/compute/tasks/aws-sdk/call-aws-service.js +69 -0
  199. package/lib/aws/compute/tasks/eventbridge/put-events.d.ts +74 -0
  200. package/lib/aws/compute/tasks/eventbridge/put-events.js +94 -0
  201. package/lib/aws/compute/tasks/http/invoke.d.ts +104 -0
  202. package/lib/aws/compute/tasks/http/invoke.js +117 -0
  203. package/lib/aws/compute/tasks/index.d.ts +7 -0
  204. package/lib/aws/compute/tasks/index.js +42 -0
  205. package/lib/aws/compute/tasks/lambda/invoke.d.ts +106 -0
  206. package/lib/aws/compute/tasks/lambda/invoke.js +125 -0
  207. package/lib/aws/compute/tasks/private/task-utils.d.ts +8 -0
  208. package/lib/aws/compute/tasks/private/task-utils.js +36 -0
  209. package/lib/aws/compute/tasks/resource-arn-suffix.d.ts +3 -0
  210. package/lib/aws/compute/tasks/resource-arn-suffix.js +25 -0
  211. package/lib/aws/compute/tasks/sqs/send-message.d.ts +62 -0
  212. package/lib/aws/compute/tasks/sqs/send-message.js +70 -0
  213. package/lib/aws/compute/tasks/stepfunctions/invoke-activity.d.ts +36 -0
  214. package/lib/aws/compute/tasks/stepfunctions/invoke-activity.js +45 -0
  215. package/lib/aws/compute/tasks/stepfunctions/start-execution.d.ts +63 -0
  216. package/lib/aws/compute/tasks/stepfunctions/start-execution.js +123 -0
  217. package/lib/aws/compute/types.d.ts +214 -0
  218. package/lib/aws/compute/types.js +103 -0
  219. package/lib/aws/compute/util.d.ts +12 -0
  220. package/lib/aws/compute/util.js +29 -0
  221. package/lib/aws/edge/certificate.d.ts +144 -0
  222. package/lib/aws/edge/certificate.js +191 -0
  223. package/lib/aws/edge/distribution.d.ts +505 -0
  224. package/lib/aws/edge/distribution.js +444 -0
  225. package/lib/aws/edge/dns-alias-record-targets.d.ts +29 -0
  226. package/lib/aws/edge/dns-alias-record-targets.js +46 -0
  227. package/lib/aws/edge/dns-record.d.ts +536 -0
  228. package/lib/aws/edge/dns-record.js +532 -0
  229. package/lib/aws/edge/dns-zone.d.ts +169 -0
  230. package/lib/aws/edge/dns-zone.js +149 -0
  231. package/lib/aws/edge/function.d.ts +185 -0
  232. package/lib/aws/edge/function.js +141 -0
  233. package/lib/aws/edge/index.d.ts +8 -0
  234. package/lib/aws/edge/index.js +25 -0
  235. package/lib/aws/edge/key-value-store.d.ts +162 -0
  236. package/lib/aws/edge/key-value-store.js +163 -0
  237. package/lib/aws/edge/origin.d.ts +160 -0
  238. package/lib/aws/edge/origin.js +245 -0
  239. package/lib/aws/encryption/alias.d.ts +137 -0
  240. package/lib/aws/encryption/alias.js +216 -0
  241. package/lib/aws/encryption/index.d.ts +4 -0
  242. package/lib/aws/encryption/index.js +21 -0
  243. package/lib/aws/encryption/key-lookup.d.ts +11 -0
  244. package/lib/aws/encryption/key-lookup.js +4 -0
  245. package/lib/aws/encryption/key.d.ts +461 -0
  246. package/lib/aws/encryption/key.js +586 -0
  247. package/lib/aws/encryption/private/perms.d.ts +5 -0
  248. package/lib/aws/encryption/private/perms.js +30 -0
  249. package/lib/aws/encryption/via-service-principal.d.ts +11 -0
  250. package/lib/aws/encryption/via-service-principal.js +39 -0
  251. package/lib/aws/iam/grant.d.ts +221 -0
  252. package/lib/aws/iam/grant.js +239 -0
  253. package/lib/aws/iam/identity-base.d.ts +20 -0
  254. package/lib/aws/iam/identity-base.js +3 -0
  255. package/lib/aws/iam/index.d.ts +16 -0
  256. package/lib/aws/iam/index.js +34 -0
  257. package/lib/aws/iam/managed-policy.d.ts +227 -0
  258. package/lib/aws/iam/managed-policy.js +237 -0
  259. package/lib/aws/iam/oidc-provider.d.ts +120 -0
  260. package/lib/aws/iam/oidc-provider.js +82 -0
  261. package/lib/aws/iam/policy-document-config.generated.d.ts +78 -0
  262. package/lib/aws/iam/policy-document-config.generated.js +3 -0
  263. package/lib/aws/iam/policy-document.d.ts +150 -0
  264. package/lib/aws/iam/policy-document.js +172 -0
  265. package/lib/aws/iam/policy-statement-props.generated.d.ts +55 -0
  266. package/lib/aws/iam/policy-statement-props.generated.js +3 -0
  267. package/lib/aws/iam/policy-statement.d.ts +451 -0
  268. package/lib/aws/iam/policy-statement.js +947 -0
  269. package/lib/aws/iam/policy.d.ts +122 -0
  270. package/lib/aws/iam/policy.js +192 -0
  271. package/lib/aws/iam/principals.d.ts +668 -0
  272. package/lib/aws/iam/principals.js +1032 -0
  273. package/lib/aws/iam/private/adapter.d.ts +21 -0
  274. package/lib/aws/iam/private/adapter.js +51 -0
  275. package/lib/aws/iam/private/assume-role-policy.d.ts +8 -0
  276. package/lib/aws/iam/private/assume-role-policy.js +27 -0
  277. package/lib/aws/iam/private/comparable-principal.d.ts +6 -0
  278. package/lib/aws/iam/private/comparable-principal.js +20 -0
  279. package/lib/aws/iam/private/immutable-role.d.ts +43 -0
  280. package/lib/aws/iam/private/immutable-role.js +76 -0
  281. package/lib/aws/iam/private/imported-role.d.ts +49 -0
  282. package/lib/aws/iam/private/imported-role.js +103 -0
  283. package/lib/aws/iam/private/merge-statements.d.ts +44 -0
  284. package/lib/aws/iam/private/merge-statements.js +214 -0
  285. package/lib/aws/iam/private/postprocess-policy-document.d.ts +15 -0
  286. package/lib/aws/iam/private/postprocess-policy-document.js +102 -0
  287. package/lib/aws/iam/private/util.d.ts +37 -0
  288. package/lib/aws/iam/private/util.js +87 -0
  289. package/lib/aws/iam/role.d.ts +425 -0
  290. package/lib/aws/iam/role.js +407 -0
  291. package/lib/aws/iam/saml-provider.d.ts +79 -0
  292. package/lib/aws/iam/saml-provider.js +79 -0
  293. package/lib/aws/iam/unknown-principal.d.ts +32 -0
  294. package/lib/aws/iam/unknown-principal.js +45 -0
  295. package/lib/aws/iam/utils.d.ts +12 -0
  296. package/lib/aws/iam/utils.js +41 -0
  297. package/lib/aws/index.d.ts +13 -0
  298. package/lib/aws/index.js +34 -0
  299. package/lib/aws/log-retention.d.ts +97 -0
  300. package/lib/aws/log-retention.js +103 -0
  301. package/lib/aws/network/index.d.ts +4 -0
  302. package/lib/aws/network/index.js +21 -0
  303. package/lib/aws/network/network.d.ts +77 -0
  304. package/lib/aws/network/network.js +3 -0
  305. package/lib/aws/network/simple-ipv4-vpc.d.ts +84 -0
  306. package/lib/aws/network/simple-ipv4-vpc.js +236 -0
  307. package/lib/aws/network/subnet-group.d.ts +42 -0
  308. package/lib/aws/network/subnet-group.js +72 -0
  309. package/lib/aws/network/subnet.d.ts +95 -0
  310. package/lib/aws/network/subnet.js +123 -0
  311. package/lib/aws/notify/archive.d.ts +77 -0
  312. package/lib/aws/notify/archive.js +62 -0
  313. package/lib/aws/notify/connection.d.ts +276 -0
  314. package/lib/aws/notify/connection.js +261 -0
  315. package/lib/aws/notify/event-bus.d.ts +298 -0
  316. package/lib/aws/notify/event-bus.js +326 -0
  317. package/lib/aws/notify/event-pattern.d.ts +220 -0
  318. package/lib/aws/notify/event-pattern.js +197 -0
  319. package/lib/aws/notify/index.d.ts +15 -0
  320. package/lib/aws/notify/index.js +35 -0
  321. package/lib/aws/notify/input.d.ts +126 -0
  322. package/lib/aws/notify/input.js +282 -0
  323. package/lib/aws/notify/kinesis-canned-metrics.generated.d.ts +68 -0
  324. package/lib/aws/notify/kinesis-canned-metrics.generated.js +103 -0
  325. package/lib/aws/notify/kinesis-fixed-canned-metrics.d.ts +195 -0
  326. package/lib/aws/notify/kinesis-fixed-canned-metrics.js +155 -0
  327. package/lib/aws/notify/kinesis-stream.d.ts +705 -0
  328. package/lib/aws/notify/kinesis-stream.js +541 -0
  329. package/lib/aws/notify/on-event-options.d.ts +54 -0
  330. package/lib/aws/notify/on-event-options.js +3 -0
  331. package/lib/aws/notify/queue-config.generated.d.ts +85 -0
  332. package/lib/aws/notify/queue-config.generated.js +3 -0
  333. package/lib/aws/notify/queue-policy.d.ts +35 -0
  334. package/lib/aws/notify/queue-policy.js +39 -0
  335. package/lib/aws/notify/queue.d.ts +355 -0
  336. package/lib/aws/notify/queue.js +305 -0
  337. package/lib/aws/notify/resource-policy.d.ts +41 -0
  338. package/lib/aws/notify/resource-policy.js +43 -0
  339. package/lib/aws/notify/rule.d.ts +153 -0
  340. package/lib/aws/notify/rule.js +227 -0
  341. package/lib/aws/notify/schedule.d.ts +83 -0
  342. package/lib/aws/notify/schedule.js +116 -0
  343. package/lib/aws/notify/target.d.ts +102 -0
  344. package/lib/aws/notify/target.js +3 -0
  345. package/lib/aws/notify/targets/event-bus.d.ts +39 -0
  346. package/lib/aws/notify/targets/event-bus.js +40 -0
  347. package/lib/aws/notify/targets/function.d.ts +31 -0
  348. package/lib/aws/notify/targets/function.js +36 -0
  349. package/lib/aws/notify/targets/index.d.ts +6 -0
  350. package/lib/aws/notify/targets/index.js +37 -0
  351. package/lib/aws/notify/targets/log-group.d.ts +89 -0
  352. package/lib/aws/notify/targets/log-group.js +110 -0
  353. package/lib/aws/notify/targets/sqs.d.ts +45 -0
  354. package/lib/aws/notify/targets/sqs.js +73 -0
  355. package/lib/aws/notify/targets/state-machine.d.ts +36 -0
  356. package/lib/aws/notify/targets/state-machine.js +39 -0
  357. package/lib/aws/notify/targets/util.d.ts +71 -0
  358. package/lib/aws/notify/targets/util.js +130 -0
  359. package/lib/aws/notify/util.d.ts +13 -0
  360. package/lib/aws/notify/util.js +69 -0
  361. package/lib/aws/provider-config.generated.d.ts +220 -0
  362. package/lib/aws/provider-config.generated.js +3 -0
  363. package/lib/aws/storage/bucket-destination.d.ts +41 -0
  364. package/lib/aws/storage/bucket-destination.js +13 -0
  365. package/lib/aws/storage/bucket-notifications.d.ts +58 -0
  366. package/lib/aws/storage/bucket-notifications.js +169 -0
  367. package/lib/aws/storage/bucket-perms.d.ts +9 -0
  368. package/lib/aws/storage/bucket-perms.js +33 -0
  369. package/lib/aws/storage/bucket-policy.d.ts +51 -0
  370. package/lib/aws/storage/bucket-policy.js +53 -0
  371. package/lib/aws/storage/bucket-source.d.ts +41 -0
  372. package/lib/aws/storage/bucket-source.js +79 -0
  373. package/lib/aws/storage/bucket.d.ts +941 -0
  374. package/lib/aws/storage/bucket.js +869 -0
  375. package/lib/aws/storage/cors-config.generated.d.ts +57 -0
  376. package/lib/aws/storage/cors-config.generated.js +3 -0
  377. package/lib/aws/storage/cors-rule-config.generated.d.ts +38 -0
  378. package/lib/aws/storage/cors-rule-config.generated.js +3 -0
  379. package/lib/aws/storage/index.d.ts +12 -0
  380. package/lib/aws/storage/index.js +31 -0
  381. package/lib/aws/storage/lifecycle-config.generated.d.ts +55 -0
  382. package/lib/aws/storage/lifecycle-config.generated.js +3 -0
  383. package/lib/aws/storage/notification-targets/function.d.ts +11 -0
  384. package/lib/aws/storage/notification-targets/function.js +48 -0
  385. package/lib/aws/storage/notification-targets/index.d.ts +2 -0
  386. package/lib/aws/storage/notification-targets/index.js +21 -0
  387. package/lib/aws/storage/notification-targets/queue.d.ts +15 -0
  388. package/lib/aws/storage/notification-targets/queue.js +58 -0
  389. package/lib/aws/storage/origin-access-identity.d.ts +91 -0
  390. package/lib/aws/storage/origin-access-identity.js +76 -0
  391. package/lib/aws/storage/util.d.ts +40 -0
  392. package/lib/aws/storage/util.js +85 -0
  393. package/lib/aws/storage/website-config.generated.d.ts +73 -0
  394. package/lib/aws/storage/website-config.generated.js +3 -0
  395. package/lib/aws/util.d.ts +4 -0
  396. package/lib/aws/util.js +25 -0
  397. package/lib/construct-base.d.ts +69 -0
  398. package/lib/construct-base.js +89 -0
  399. package/lib/duration.d.ts +160 -0
  400. package/lib/duration.js +327 -0
  401. package/lib/index.d.ts +5 -0
  402. package/lib/index.js +24 -0
  403. package/lib/private/index.d.ts +2 -0
  404. package/lib/private/index.js +19 -0
  405. package/lib/private/terraform-dependables-aspect.d.ts +20 -0
  406. package/lib/private/terraform-dependables-aspect.js +95 -0
  407. package/lib/private/unique-resource-name.d.ts +9 -0
  408. package/lib/private/unique-resource-name.js +145 -0
  409. package/lib/size.d.ts +146 -0
  410. package/lib/size.js +220 -0
  411. package/lib/stack-base.d.ts +188 -0
  412. package/lib/stack-base.js +183 -0
  413. package/lib/token.d.ts +32 -0
  414. package/lib/token.js +54 -0
  415. package/node_modules/camel-case/LICENSE +21 -0
  416. package/node_modules/camel-case/README.md +47 -0
  417. package/node_modules/camel-case/dist/index.d.ts +5 -0
  418. package/node_modules/camel-case/dist/index.js +23 -0
  419. package/node_modules/camel-case/dist/index.js.map +1 -0
  420. package/node_modules/camel-case/dist/index.spec.d.ts +1 -0
  421. package/node_modules/camel-case/dist/index.spec.js +26 -0
  422. package/node_modules/camel-case/dist/index.spec.js.map +1 -0
  423. package/node_modules/camel-case/dist.es2015/index.d.ts +5 -0
  424. package/node_modules/camel-case/dist.es2015/index.js +17 -0
  425. package/node_modules/camel-case/dist.es2015/index.js.map +1 -0
  426. package/node_modules/camel-case/dist.es2015/index.spec.d.ts +1 -0
  427. package/node_modules/camel-case/dist.es2015/index.spec.js +24 -0
  428. package/node_modules/camel-case/dist.es2015/index.spec.js.map +1 -0
  429. package/node_modules/camel-case/package.json +89 -0
  430. package/node_modules/capital-case/LICENSE +21 -0
  431. package/node_modules/capital-case/README.md +37 -0
  432. package/node_modules/capital-case/dist/index.d.ts +4 -0
  433. package/node_modules/capital-case/dist/index.js +16 -0
  434. package/node_modules/capital-case/dist/index.js.map +1 -0
  435. package/node_modules/capital-case/dist/index.spec.d.ts +1 -0
  436. package/node_modules/capital-case/dist/index.spec.js +24 -0
  437. package/node_modules/capital-case/dist/index.spec.js.map +1 -0
  438. package/node_modules/capital-case/dist.es2015/index.d.ts +4 -0
  439. package/node_modules/capital-case/dist.es2015/index.js +11 -0
  440. package/node_modules/capital-case/dist.es2015/index.js.map +1 -0
  441. package/node_modules/capital-case/dist.es2015/index.spec.d.ts +1 -0
  442. package/node_modules/capital-case/dist.es2015/index.spec.js +22 -0
  443. package/node_modules/capital-case/dist.es2015/index.spec.js.map +1 -0
  444. package/node_modules/capital-case/package.json +90 -0
  445. package/node_modules/change-case/LICENSE +21 -0
  446. package/node_modules/change-case/README.md +44 -0
  447. package/node_modules/change-case/dist/index.d.ts +11 -0
  448. package/node_modules/change-case/dist/index.js +15 -0
  449. package/node_modules/change-case/dist/index.js.map +1 -0
  450. package/node_modules/change-case/dist/index.spec.d.ts +1 -0
  451. package/node_modules/change-case/dist/index.spec.js +9 -0
  452. package/node_modules/change-case/dist/index.spec.js.map +1 -0
  453. package/node_modules/change-case/dist.es2015/index.d.ts +11 -0
  454. package/node_modules/change-case/dist.es2015/index.js +12 -0
  455. package/node_modules/change-case/dist.es2015/index.js.map +1 -0
  456. package/node_modules/change-case/dist.es2015/index.spec.d.ts +1 -0
  457. package/node_modules/change-case/dist.es2015/index.spec.js +7 -0
  458. package/node_modules/change-case/dist.es2015/index.spec.js.map +1 -0
  459. package/node_modules/change-case/package.json +101 -0
  460. package/node_modules/constant-case/LICENSE +21 -0
  461. package/node_modules/constant-case/README.md +37 -0
  462. package/node_modules/constant-case/dist/index.d.ts +3 -0
  463. package/node_modules/constant-case/dist/index.js +12 -0
  464. package/node_modules/constant-case/dist/index.js.map +1 -0
  465. package/node_modules/constant-case/dist/index.spec.d.ts +1 -0
  466. package/node_modules/constant-case/dist/index.spec.js +26 -0
  467. package/node_modules/constant-case/dist/index.spec.js.map +1 -0
  468. package/node_modules/constant-case/dist.es2015/index.d.ts +3 -0
  469. package/node_modules/constant-case/dist.es2015/index.js +8 -0
  470. package/node_modules/constant-case/dist.es2015/index.js.map +1 -0
  471. package/node_modules/constant-case/dist.es2015/index.spec.d.ts +1 -0
  472. package/node_modules/constant-case/dist.es2015/index.spec.js +24 -0
  473. package/node_modules/constant-case/dist.es2015/index.spec.js.map +1 -0
  474. package/node_modules/constant-case/package.json +90 -0
  475. package/node_modules/dot-case/LICENSE +21 -0
  476. package/node_modules/dot-case/README.md +37 -0
  477. package/node_modules/dot-case/dist/index.d.ts +3 -0
  478. package/node_modules/dot-case/dist/index.js +11 -0
  479. package/node_modules/dot-case/dist/index.js.map +1 -0
  480. package/node_modules/dot-case/dist/index.spec.d.ts +1 -0
  481. package/node_modules/dot-case/dist/index.spec.js +26 -0
  482. package/node_modules/dot-case/dist/index.spec.js.map +1 -0
  483. package/node_modules/dot-case/dist.es2015/index.d.ts +3 -0
  484. package/node_modules/dot-case/dist.es2015/index.js +7 -0
  485. package/node_modules/dot-case/dist.es2015/index.js.map +1 -0
  486. package/node_modules/dot-case/dist.es2015/index.spec.d.ts +1 -0
  487. package/node_modules/dot-case/dist.es2015/index.spec.js +24 -0
  488. package/node_modules/dot-case/dist.es2015/index.spec.js.map +1 -0
  489. package/node_modules/dot-case/package.json +89 -0
  490. package/node_modules/esbuild-wasm/LICENSE.md +21 -0
  491. package/node_modules/esbuild-wasm/README.md +3 -0
  492. package/node_modules/esbuild-wasm/bin/esbuild +91 -0
  493. package/node_modules/esbuild-wasm/esbuild.wasm +0 -0
  494. package/node_modules/esbuild-wasm/esm/browser.d.ts +705 -0
  495. package/node_modules/esbuild-wasm/esm/browser.js +2370 -0
  496. package/node_modules/esbuild-wasm/esm/browser.min.js +20 -0
  497. package/node_modules/esbuild-wasm/lib/browser.d.ts +705 -0
  498. package/node_modules/esbuild-wasm/lib/browser.js +2415 -0
  499. package/node_modules/esbuild-wasm/lib/browser.min.js +22 -0
  500. package/node_modules/esbuild-wasm/lib/main.d.ts +705 -0
  501. package/node_modules/esbuild-wasm/lib/main.js +2051 -0
  502. package/node_modules/esbuild-wasm/package.json +19 -0
  503. package/node_modules/esbuild-wasm/wasm_exec.js +561 -0
  504. package/node_modules/esbuild-wasm/wasm_exec_node.js +39 -0
  505. package/node_modules/header-case/LICENSE +21 -0
  506. package/node_modules/header-case/README.md +37 -0
  507. package/node_modules/header-case/dist/index.d.ts +3 -0
  508. package/node_modules/header-case/dist/index.js +11 -0
  509. package/node_modules/header-case/dist/index.js.map +1 -0
  510. package/node_modules/header-case/dist/index.spec.d.ts +1 -0
  511. package/node_modules/header-case/dist/index.spec.js +24 -0
  512. package/node_modules/header-case/dist/index.spec.js.map +1 -0
  513. package/node_modules/header-case/dist.es2015/index.d.ts +3 -0
  514. package/node_modules/header-case/dist.es2015/index.js +7 -0
  515. package/node_modules/header-case/dist.es2015/index.js.map +1 -0
  516. package/node_modules/header-case/dist.es2015/index.spec.d.ts +1 -0
  517. package/node_modules/header-case/dist.es2015/index.spec.js +22 -0
  518. package/node_modules/header-case/dist.es2015/index.spec.js.map +1 -0
  519. package/node_modules/header-case/package.json +89 -0
  520. package/node_modules/lower-case/LICENSE +21 -0
  521. package/node_modules/lower-case/README.md +35 -0
  522. package/node_modules/lower-case/dist/index.d.ts +8 -0
  523. package/node_modules/lower-case/dist/index.js +53 -0
  524. package/node_modules/lower-case/dist/index.js.map +1 -0
  525. package/node_modules/lower-case/dist/index.spec.d.ts +1 -0
  526. package/node_modules/lower-case/dist/index.spec.js +36 -0
  527. package/node_modules/lower-case/dist/index.spec.js.map +1 -0
  528. package/node_modules/lower-case/dist.es2015/index.d.ts +8 -0
  529. package/node_modules/lower-case/dist.es2015/index.js +48 -0
  530. package/node_modules/lower-case/dist.es2015/index.js.map +1 -0
  531. package/node_modules/lower-case/dist.es2015/index.spec.d.ts +1 -0
  532. package/node_modules/lower-case/dist.es2015/index.spec.js +34 -0
  533. package/node_modules/lower-case/dist.es2015/index.spec.js.map +1 -0
  534. package/node_modules/lower-case/package.json +87 -0
  535. package/node_modules/mime-db/HISTORY.md +507 -0
  536. package/node_modules/mime-db/LICENSE +23 -0
  537. package/node_modules/mime-db/README.md +100 -0
  538. package/node_modules/mime-db/db.json +8519 -0
  539. package/node_modules/mime-db/index.js +12 -0
  540. package/node_modules/mime-db/package.json +60 -0
  541. package/node_modules/mime-types/HISTORY.md +397 -0
  542. package/node_modules/mime-types/LICENSE +23 -0
  543. package/node_modules/mime-types/README.md +113 -0
  544. package/node_modules/mime-types/index.js +188 -0
  545. package/node_modules/mime-types/package.json +44 -0
  546. package/node_modules/no-case/LICENSE +21 -0
  547. package/node_modules/no-case/README.md +37 -0
  548. package/node_modules/no-case/dist/index.d.ts +10 -0
  549. package/node_modules/no-case/dist/index.js +35 -0
  550. package/node_modules/no-case/dist/index.js.map +1 -0
  551. package/node_modules/no-case/dist/index.spec.d.ts +1 -0
  552. package/node_modules/no-case/dist/index.spec.js +59 -0
  553. package/node_modules/no-case/dist/index.spec.js.map +1 -0
  554. package/node_modules/no-case/dist.es2015/index.d.ts +10 -0
  555. package/node_modules/no-case/dist.es2015/index.js +31 -0
  556. package/node_modules/no-case/dist.es2015/index.js.map +1 -0
  557. package/node_modules/no-case/dist.es2015/index.spec.d.ts +1 -0
  558. package/node_modules/no-case/dist.es2015/index.spec.js +57 -0
  559. package/node_modules/no-case/dist.es2015/index.spec.js.map +1 -0
  560. package/node_modules/no-case/package.json +85 -0
  561. package/node_modules/param-case/LICENSE +21 -0
  562. package/node_modules/param-case/README.md +37 -0
  563. package/node_modules/param-case/dist/index.d.ts +3 -0
  564. package/node_modules/param-case/dist/index.js +11 -0
  565. package/node_modules/param-case/dist/index.js.map +1 -0
  566. package/node_modules/param-case/dist/index.spec.d.ts +1 -0
  567. package/node_modules/param-case/dist/index.spec.js +24 -0
  568. package/node_modules/param-case/dist/index.spec.js.map +1 -0
  569. package/node_modules/param-case/dist.es2015/index.d.ts +3 -0
  570. package/node_modules/param-case/dist.es2015/index.js +7 -0
  571. package/node_modules/param-case/dist.es2015/index.js.map +1 -0
  572. package/node_modules/param-case/dist.es2015/index.spec.d.ts +1 -0
  573. package/node_modules/param-case/dist.es2015/index.spec.js +22 -0
  574. package/node_modules/param-case/dist.es2015/index.spec.js.map +1 -0
  575. package/node_modules/param-case/package.json +91 -0
  576. package/node_modules/pascal-case/LICENSE +21 -0
  577. package/node_modules/pascal-case/README.md +47 -0
  578. package/node_modules/pascal-case/dist/index.d.ts +5 -0
  579. package/node_modules/pascal-case/dist/index.js +24 -0
  580. package/node_modules/pascal-case/dist/index.js.map +1 -0
  581. package/node_modules/pascal-case/dist/index.spec.d.ts +1 -0
  582. package/node_modules/pascal-case/dist/index.spec.js +25 -0
  583. package/node_modules/pascal-case/dist/index.spec.js.map +1 -0
  584. package/node_modules/pascal-case/dist.es2015/index.d.ts +5 -0
  585. package/node_modules/pascal-case/dist.es2015/index.js +18 -0
  586. package/node_modules/pascal-case/dist.es2015/index.js.map +1 -0
  587. package/node_modules/pascal-case/dist.es2015/index.spec.d.ts +1 -0
  588. package/node_modules/pascal-case/dist.es2015/index.spec.js +23 -0
  589. package/node_modules/pascal-case/dist.es2015/index.spec.js.map +1 -0
  590. package/node_modules/pascal-case/package.json +90 -0
  591. package/node_modules/path-case/LICENSE +21 -0
  592. package/node_modules/path-case/README.md +37 -0
  593. package/node_modules/path-case/dist/index.d.ts +3 -0
  594. package/node_modules/path-case/dist/index.js +11 -0
  595. package/node_modules/path-case/dist/index.js.map +1 -0
  596. package/node_modules/path-case/dist/index.spec.d.ts +1 -0
  597. package/node_modules/path-case/dist/index.spec.js +24 -0
  598. package/node_modules/path-case/dist/index.spec.js.map +1 -0
  599. package/node_modules/path-case/dist.es2015/index.d.ts +3 -0
  600. package/node_modules/path-case/dist.es2015/index.js +7 -0
  601. package/node_modules/path-case/dist.es2015/index.js.map +1 -0
  602. package/node_modules/path-case/dist.es2015/index.spec.d.ts +1 -0
  603. package/node_modules/path-case/dist.es2015/index.spec.js +22 -0
  604. package/node_modules/path-case/dist.es2015/index.spec.js.map +1 -0
  605. package/node_modules/path-case/package.json +88 -0
  606. package/node_modules/sentence-case/LICENSE +21 -0
  607. package/node_modules/sentence-case/README.md +37 -0
  608. package/node_modules/sentence-case/dist/index.d.ts +4 -0
  609. package/node_modules/sentence-case/dist/index.js +19 -0
  610. package/node_modules/sentence-case/dist/index.js.map +1 -0
  611. package/node_modules/sentence-case/dist/index.spec.d.ts +1 -0
  612. package/node_modules/sentence-case/dist/index.spec.js +24 -0
  613. package/node_modules/sentence-case/dist/index.spec.js.map +1 -0
  614. package/node_modules/sentence-case/dist.es2015/index.d.ts +4 -0
  615. package/node_modules/sentence-case/dist.es2015/index.js +14 -0
  616. package/node_modules/sentence-case/dist.es2015/index.js.map +1 -0
  617. package/node_modules/sentence-case/dist.es2015/index.spec.d.ts +1 -0
  618. package/node_modules/sentence-case/dist.es2015/index.spec.js +22 -0
  619. package/node_modules/sentence-case/dist.es2015/index.spec.js.map +1 -0
  620. package/node_modules/sentence-case/package.json +89 -0
  621. package/node_modules/snake-case/LICENSE +21 -0
  622. package/node_modules/snake-case/README.md +37 -0
  623. package/node_modules/snake-case/dist/index.d.ts +3 -0
  624. package/node_modules/snake-case/dist/index.js +11 -0
  625. package/node_modules/snake-case/dist/index.js.map +1 -0
  626. package/node_modules/snake-case/dist/index.spec.d.ts +1 -0
  627. package/node_modules/snake-case/dist/index.spec.js +25 -0
  628. package/node_modules/snake-case/dist/index.spec.js.map +1 -0
  629. package/node_modules/snake-case/dist.es2015/index.d.ts +3 -0
  630. package/node_modules/snake-case/dist.es2015/index.js +7 -0
  631. package/node_modules/snake-case/dist.es2015/index.js.map +1 -0
  632. package/node_modules/snake-case/dist.es2015/index.spec.d.ts +1 -0
  633. package/node_modules/snake-case/dist.es2015/index.spec.js +23 -0
  634. package/node_modules/snake-case/dist.es2015/index.spec.js.map +1 -0
  635. package/node_modules/snake-case/package.json +90 -0
  636. package/node_modules/tslib/CopyrightNotice.txt +15 -0
  637. package/node_modules/tslib/LICENSE.txt +12 -0
  638. package/node_modules/tslib/README.md +164 -0
  639. package/node_modules/tslib/SECURITY.md +41 -0
  640. package/node_modules/tslib/modules/index.d.ts +37 -0
  641. package/node_modules/tslib/modules/index.js +68 -0
  642. package/node_modules/tslib/modules/package.json +3 -0
  643. package/node_modules/tslib/package.json +47 -0
  644. package/node_modules/tslib/tslib.d.ts +453 -0
  645. package/node_modules/tslib/tslib.es6.html +1 -0
  646. package/node_modules/tslib/tslib.es6.js +374 -0
  647. package/node_modules/tslib/tslib.es6.mjs +373 -0
  648. package/node_modules/tslib/tslib.html +1 -0
  649. package/node_modules/tslib/tslib.js +424 -0
  650. package/node_modules/upper-case/README.md +34 -0
  651. package/node_modules/upper-case/dist/index.d.ts +8 -0
  652. package/node_modules/upper-case/dist/index.js +49 -0
  653. package/node_modules/upper-case/dist/index.js.map +1 -0
  654. package/node_modules/upper-case/dist/index.spec.d.ts +1 -0
  655. package/node_modules/upper-case/dist/index.spec.js +34 -0
  656. package/node_modules/upper-case/dist/index.spec.js.map +1 -0
  657. package/node_modules/upper-case/dist.es2015/index.d.ts +8 -0
  658. package/node_modules/upper-case/dist.es2015/index.js +44 -0
  659. package/node_modules/upper-case/dist.es2015/index.js.map +1 -0
  660. package/node_modules/upper-case/dist.es2015/index.spec.d.ts +1 -0
  661. package/node_modules/upper-case/dist.es2015/index.spec.js +32 -0
  662. package/node_modules/upper-case/dist.es2015/index.spec.js.map +1 -0
  663. package/node_modules/upper-case/package.json +86 -0
  664. package/node_modules/upper-case-first/LICENSE +21 -0
  665. package/node_modules/upper-case-first/README.md +32 -0
  666. package/node_modules/upper-case-first/dist/index.d.ts +4 -0
  667. package/node_modules/upper-case-first/dist/index.js +11 -0
  668. package/node_modules/upper-case-first/dist/index.js.map +1 -0
  669. package/node_modules/upper-case-first/dist/index.spec.d.ts +1 -0
  670. package/node_modules/upper-case-first/dist/index.spec.js +20 -0
  671. package/node_modules/upper-case-first/dist/index.spec.js.map +1 -0
  672. package/node_modules/upper-case-first/dist.es2015/index.d.ts +4 -0
  673. package/node_modules/upper-case-first/dist.es2015/index.js +7 -0
  674. package/node_modules/upper-case-first/dist.es2015/index.js.map +1 -0
  675. package/node_modules/upper-case-first/dist.es2015/index.spec.d.ts +1 -0
  676. package/node_modules/upper-case-first/dist.es2015/index.spec.js +18 -0
  677. package/node_modules/upper-case-first/dist.es2015/index.spec.js.map +1 -0
  678. package/node_modules/upper-case-first/package.json +87 -0
  679. package/package.json +152 -0
  680. package/setup.js +2 -0
@@ -0,0 +1,705 @@
1
+ import { kinesisStream } from "@cdktf/provider-aws";
2
+ import { Construct } from "constructs";
3
+ import { IAwsConstruct, AwsConstructBase, AwsConstructProps } from "../aws-construct";
4
+ import { Duration } from "../../duration";
5
+ import * as cloudwatch from "../cloudwatch";
6
+ import * as kms from "../encryption";
7
+ import * as iam from "../iam";
8
+ /**
9
+ * Outputs which may be registered for output via the Grid.
10
+ */
11
+ export interface StreamOutputs {
12
+ /**
13
+ * The ARN of the stream.
14
+ *
15
+ * @attribute
16
+ */
17
+ readonly streamArn: string;
18
+ /**
19
+ * The name of the stream
20
+ *
21
+ * @attribute
22
+ */
23
+ readonly streamName: string;
24
+ }
25
+ /**
26
+ * A Kinesis Stream
27
+ */
28
+ export interface IStream extends IAwsConstruct {
29
+ /** Strongly typed outputs */
30
+ readonly streamOutputs: StreamOutputs;
31
+ /**
32
+ * The ARN of the stream.
33
+ *
34
+ * @attribute
35
+ */
36
+ readonly streamArn: string;
37
+ /**
38
+ * The name of the stream
39
+ *
40
+ * @attribute
41
+ */
42
+ readonly streamName: string;
43
+ /**
44
+ * Optional KMS encryption key associated with this stream.
45
+ */
46
+ readonly encryptionKey?: kms.IKey;
47
+ /**
48
+ * Adds a statement to the IAM resource policy associated with this stream.
49
+ *
50
+ * If this stream was created in this stack (`new Stream`), a resource policy
51
+ * will be automatically created upon the first call to `addToResourcePolicy`. If
52
+ * the stream is imported (`Stream.import`), then this is a no-op.
53
+ */
54
+ addToResourcePolicy(statement: iam.PolicyStatement): iam.AddToResourcePolicyResult;
55
+ /**
56
+ * Grant read permissions for this stream and its contents to an IAM
57
+ * principal (Role/Group/User).
58
+ *
59
+ * If an encryption key is used, permission to ues the key to decrypt the
60
+ * contents of the stream will also be granted.
61
+ */
62
+ grantRead(grantee: iam.IGrantable): iam.Grant;
63
+ /**
64
+ * Grant write permissions for this stream and its contents to an IAM
65
+ * principal (Role/Group/User).
66
+ *
67
+ * If an encryption key is used, permission to ues the key to encrypt the
68
+ * contents of the stream will also be granted.
69
+ */
70
+ grantWrite(grantee: iam.IGrantable): iam.Grant;
71
+ /**
72
+ * Grants read/write permissions for this stream and its contents to an IAM
73
+ * principal (Role/Group/User).
74
+ *
75
+ * If an encryption key is used, permission to use the key for
76
+ * encrypt/decrypt will also be granted.
77
+ */
78
+ grantReadWrite(grantee: iam.IGrantable): iam.Grant;
79
+ /**
80
+ * Grant the indicated permissions on this stream to the provided IAM principal.
81
+ */
82
+ grant(grantee: iam.IGrantable, ...actions: string[]): iam.Grant;
83
+ /**
84
+ * Return stream metric based from its metric name
85
+ *
86
+ * @param metricName name of the stream metric
87
+ * @param props properties of the metric
88
+ */
89
+ metric(metricName: string, props?: cloudwatch.MetricOptions): cloudwatch.Metric;
90
+ /**
91
+ * The number of bytes retrieved from the Kinesis stream, measured over the specified time period. Minimum, Maximum,
92
+ * and Average statistics represent the bytes in a single GetRecords operation for the stream in the specified time
93
+ * period.
94
+ *
95
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
96
+ *
97
+ * @param props properties of the metric
98
+ */
99
+ metricGetRecordsBytes(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
100
+ /**
101
+ * The age of the last record in all GetRecords calls made against a Kinesis stream, measured over the specified time
102
+ * period. Age is the difference between the current time and when the last record of the GetRecords call was written
103
+ * to the stream. The Minimum and Maximum statistics can be used to track the progress of Kinesis consumer
104
+ * applications. A value of zero indicates that the records being read are completely caught up with the stream.
105
+ *
106
+ * The metric defaults to maximum over 5 minutes, it can be changed by passing `statistic` and `period` properties.
107
+ *
108
+ * @param props properties of the metric
109
+ */
110
+ metricGetRecordsIteratorAgeMilliseconds(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
111
+ /**
112
+ * The time taken per GetRecords operation, measured over the specified time period.
113
+ *
114
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
115
+ *
116
+ * @param props properties of the metric
117
+ */
118
+ metricGetRecordsLatency(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
119
+ /**
120
+ * The number of records retrieved from the shard, measured over the specified time period. Minimum, Maximum, and
121
+ * Average statistics represent the records in a single GetRecords operation for the stream in the specified time
122
+ * period.
123
+ *
124
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
125
+ *
126
+ * @param props properties of the metric
127
+ */
128
+ metricGetRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
129
+ /**
130
+ * The number of successful GetRecords operations per stream, measured over the specified time period.
131
+ *
132
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
133
+ *
134
+ * @param props properties of the metric
135
+ */
136
+ metricGetRecordsSuccess(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
137
+ /**
138
+ * The number of bytes successfully put to the Kinesis stream over the specified time period. This metric includes
139
+ * bytes from PutRecord and PutRecords operations. Minimum, Maximum, and Average statistics represent the bytes in a
140
+ * single put operation for the stream in the specified time period.
141
+ *
142
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
143
+ *
144
+ * @param props properties of the metric
145
+ */
146
+ metricIncomingBytes(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
147
+ /**
148
+ * The number of records successfully put to the Kinesis stream over the specified time period. This metric includes
149
+ * record counts from PutRecord and PutRecords operations. Minimum, Maximum, and Average statistics represent the
150
+ * records in a single put operation for the stream in the specified time period.
151
+ *
152
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
153
+ *
154
+ * @param props properties of the metric
155
+ */
156
+ metricIncomingRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
157
+ /**
158
+ * The number of bytes put to the Kinesis stream using the PutRecord operation over the specified time period.
159
+ *
160
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
161
+ *
162
+ * @param props properties of the metric
163
+ */
164
+ metricPutRecordBytes(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
165
+ /**
166
+ * The time taken per PutRecord operation, measured over the specified time period.
167
+ *
168
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
169
+ *
170
+ * @param props properties of the metric
171
+ */
172
+ metricPutRecordLatency(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
173
+ /**
174
+ * The number of successful PutRecord operations per Kinesis stream, measured over the specified time period. Average
175
+ * reflects the percentage of successful writes to a stream.
176
+ *
177
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
178
+ *
179
+ * @param props properties of the metric
180
+ */
181
+ metricPutRecordSuccess(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
182
+ /**
183
+ * The number of bytes put to the Kinesis stream using the PutRecords operation over the specified time period.
184
+ *
185
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
186
+ *
187
+ * @param props properties of the metric
188
+ */
189
+ metricPutRecordsBytes(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
190
+ /**
191
+ * The time taken per PutRecords operation, measured over the specified time period.
192
+ *
193
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
194
+ *
195
+ * @param props properties of the metric
196
+ */
197
+ metricPutRecordsLatency(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
198
+ /**
199
+ * The number of PutRecords operations where at least one record succeeded, per Kinesis stream, measured over the
200
+ * specified time period.
201
+ *
202
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
203
+ *
204
+ * @param props properties of the metric
205
+ */
206
+ metricPutRecordsSuccess(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
207
+ /**
208
+ * The total number of records sent in a PutRecords operation per Kinesis data stream, measured over the specified
209
+ * time period.
210
+ *
211
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
212
+ *
213
+ * @param props properties of the metric
214
+ */
215
+ metricPutRecordsTotalRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
216
+ /**
217
+ * The number of successful records in a PutRecords operation per Kinesis data stream, measured over the specified
218
+ * time period.
219
+ *
220
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
221
+ *
222
+ * @param props properties of the metric
223
+ */
224
+ metricPutRecordsSuccessfulRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
225
+ /**
226
+ * The number of records rejected due to internal failures in a PutRecords operation per Kinesis data stream,
227
+ * measured over the specified time period. Occasional internal failures are to be expected and should be retried.
228
+ *
229
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
230
+ *
231
+ * @param props properties of the metric
232
+ */
233
+ metricPutRecordsFailedRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
234
+ /**
235
+ * The number of records rejected due to throttling in a PutRecords operation per Kinesis data stream, measured over
236
+ * the specified time period.
237
+ *
238
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
239
+ *
240
+ * @param props properties of the metric
241
+ */
242
+ metricPutRecordsThrottledRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
243
+ /**
244
+ * The number of GetRecords calls throttled for the stream over the specified time period. The most commonly used
245
+ * statistic for this metric is Average.
246
+ *
247
+ * When the Minimum statistic has a value of 1, all records were throttled for the stream during the specified time
248
+ * period.
249
+ *
250
+ * When the Maximum statistic has a value of 0 (zero), no records were throttled for the stream during the specified
251
+ * time period.
252
+ *
253
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties
254
+ *
255
+ * @param props properties of the metric
256
+ *
257
+ */
258
+ metricReadProvisionedThroughputExceeded(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
259
+ /**
260
+ * The number of records rejected due to throttling for the stream over the specified time period. This metric
261
+ * includes throttling from PutRecord and PutRecords operations.
262
+ *
263
+ * When the Minimum statistic has a non-zero value, records were being throttled for the stream during the specified
264
+ * time period.
265
+ *
266
+ * When the Maximum statistic has a value of 0 (zero), no records were being throttled for the stream during the
267
+ * specified time period.
268
+ *
269
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
270
+ *
271
+ * @param props properties of the metric
272
+ */
273
+ metricWriteProvisionedThroughputExceeded(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
274
+ }
275
+ /**
276
+ * A reference to a stream. The easiest way to instantiate is to call
277
+ * `stream.export()`. Then, the consumer can use `Stream.import(this, ref)` and
278
+ * get a `Stream`.
279
+ */
280
+ export interface StreamAttributes {
281
+ /**
282
+ * The ARN of the stream.
283
+ */
284
+ readonly streamArn: string;
285
+ /**
286
+ * The KMS key securing the contents of the stream if encryption is enabled.
287
+ *
288
+ * @default - No encryption
289
+ */
290
+ readonly encryptionKey?: kms.IKey;
291
+ }
292
+ /**
293
+ * Represents a Kinesis Stream.
294
+ */
295
+ declare abstract class StreamBase extends AwsConstructBase implements IStream {
296
+ /**
297
+ * The ARN of the stream.
298
+ */
299
+ abstract readonly streamArn: string;
300
+ /**
301
+ * The name of the stream
302
+ */
303
+ abstract readonly streamName: string;
304
+ get streamOutputs(): StreamOutputs;
305
+ get outputs(): Record<string, any>;
306
+ /**
307
+ * Optional KMS encryption key associated with this stream.
308
+ */
309
+ abstract readonly encryptionKey?: kms.IKey;
310
+ /**
311
+ * Indicates if a stream resource policy should automatically be created upon
312
+ * the first call to `addToResourcePolicy`.
313
+ *
314
+ * Set by subclasses.
315
+ */
316
+ protected abstract readonly autoCreatePolicy: boolean;
317
+ private resourcePolicy?;
318
+ constructor(scope: Construct, id: string, props?: AwsConstructProps);
319
+ /**
320
+ * Adds a statement to the IAM resource policy associated with this stream.
321
+ *
322
+ * If this stream was created in this stack (`new Strem`), a resource policy
323
+ * will be automatically created upon the first call to `addToResourcePolicy`. If
324
+ * the stream is imported (`Stream.import`), then this is a no-op.
325
+ */
326
+ addToResourcePolicy(statement: iam.PolicyStatement): iam.AddToResourcePolicyResult;
327
+ /**
328
+ * Grant read permissions for this stream and its contents to an IAM
329
+ * principal (Role/Group/User).
330
+ *
331
+ * If an encryption key is used, permission to ues the key to decrypt the
332
+ * contents of the stream will also be granted.
333
+ */
334
+ grantRead(grantee: iam.IGrantable): iam.Grant;
335
+ /**
336
+ * Grant write permissions for this stream and its contents to an IAM
337
+ * principal (Role/Group/User).
338
+ *
339
+ * If an encryption key is used, permission to ues the key to encrypt the
340
+ * contents of the stream will also be granted.
341
+ */
342
+ grantWrite(grantee: iam.IGrantable): iam.Grant;
343
+ /**
344
+ * Grants read/write permissions for this stream and its contents to an IAM
345
+ * principal (Role/Group/User).
346
+ *
347
+ * If an encryption key is used, permission to use the key for
348
+ * encrypt/decrypt will also be granted.
349
+ */
350
+ grantReadWrite(grantee: iam.IGrantable): iam.Grant;
351
+ /**
352
+ * Grant the indicated permissions on this stream to the given IAM principal (Role/Group/User).
353
+ */
354
+ grant(grantee: iam.IGrantable, ...actions: string[]): iam.Grant;
355
+ /**
356
+ * Return stream metric based from its metric name
357
+ *
358
+ * @param metricName name of the stream metric
359
+ * @param props properties of the metric
360
+ */
361
+ metric(metricName: string, props?: cloudwatch.MetricOptions): cloudwatch.Metric;
362
+ /**
363
+ * The number of bytes retrieved from the Kinesis stream, measured over the specified time period. Minimum, Maximum,
364
+ * and Average statistics represent the bytes in a single GetRecords operation for the stream in the specified time
365
+ * period.
366
+ *
367
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
368
+ *
369
+ * @param props properties of the metric
370
+ */
371
+ metricGetRecordsBytes(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
372
+ /**
373
+ * The age of the last record in all GetRecords calls made against a Kinesis stream, measured over the specified time
374
+ * period. Age is the difference between the current time and when the last record of the GetRecords call was written
375
+ * to the stream. The Minimum and Maximum statistics can be used to track the progress of Kinesis consumer
376
+ * applications. A value of zero indicates that the records being read are completely caught up with the stream.
377
+ *
378
+ * The metric defaults to maximum over 5 minutes, it can be changed by passing `statistic` and `period` properties.
379
+ *
380
+ * @param props properties of the metric
381
+ */
382
+ metricGetRecordsIteratorAgeMilliseconds(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
383
+ /**
384
+ * The number of successful GetRecords operations per stream, measured over the specified time period.
385
+ *
386
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
387
+ *
388
+ * @param props properties of the metric
389
+ */
390
+ metricGetRecordsSuccess(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
391
+ /**
392
+ * The number of records retrieved from the shard, measured over the specified time period. Minimum, Maximum, and
393
+ * Average statistics represent the records in a single GetRecords operation for the stream in the specified time
394
+ * period.
395
+ *
396
+ * average
397
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
398
+ *
399
+ * @param props properties of the metric
400
+ */
401
+ metricGetRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
402
+ /**
403
+ * The number of successful GetRecords operations per stream, measured over the specified time period.
404
+ *
405
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
406
+ *
407
+ * @param props properties of the metric
408
+ */
409
+ metricGetRecordsLatency(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
410
+ /**
411
+ * The number of bytes put to the Kinesis stream using the PutRecord operation over the specified time period.
412
+ *
413
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
414
+ *
415
+ * @param props properties of the metric
416
+ */
417
+ metricPutRecordBytes(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
418
+ /**
419
+ * The time taken per PutRecord operation, measured over the specified time period.
420
+ *
421
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
422
+ *
423
+ * @param props properties of the metric
424
+ */
425
+ metricPutRecordLatency(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
426
+ /**
427
+ * The number of successful PutRecord operations per Kinesis stream, measured over the specified time period. Average
428
+ * reflects the percentage of successful writes to a stream.
429
+ *
430
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
431
+ *
432
+ * @param props properties of the metric
433
+ */
434
+ metricPutRecordSuccess(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
435
+ /**
436
+ * The number of bytes put to the Kinesis stream using the PutRecords operation over the specified time period.
437
+ *
438
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
439
+ *
440
+ * @param props properties of the metric
441
+ */
442
+ metricPutRecordsBytes(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
443
+ /**
444
+ * The time taken per PutRecords operation, measured over the specified time period.
445
+ *
446
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
447
+ *
448
+ * @param props properties of the metric
449
+ */
450
+ metricPutRecordsLatency(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
451
+ /**
452
+ * The number of PutRecords operations where at least one record succeeded, per Kinesis stream, measured over the
453
+ * specified time period.
454
+ *
455
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
456
+ *
457
+ * @param props properties of the metric
458
+ */
459
+ metricPutRecordsSuccess(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
460
+ /**
461
+ * The total number of records sent in a PutRecords operation per Kinesis data stream, measured over the specified
462
+ * time period.
463
+ *
464
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
465
+ *
466
+ * @param props properties of the metric
467
+ */
468
+ metricPutRecordsTotalRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
469
+ /**
470
+ * The number of successful records in a PutRecords operation per Kinesis data stream, measured over the specified
471
+ * time period.
472
+ *
473
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
474
+ *
475
+ * @param props properties of the metric
476
+ */
477
+ metricPutRecordsSuccessfulRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
478
+ /**
479
+ * The number of records rejected due to internal failures in a PutRecords operation per Kinesis data stream,
480
+ * measured over the specified time period. Occasional internal failures are to be expected and should be retried.
481
+ *
482
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
483
+ *
484
+ * @param props properties of the metric
485
+ */
486
+ metricPutRecordsFailedRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
487
+ /**
488
+ * The number of records rejected due to throttling in a PutRecords operation per Kinesis data stream, measured over
489
+ * the specified time period.
490
+ *
491
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
492
+ *
493
+ * @param props properties of the metric
494
+ */
495
+ metricPutRecordsThrottledRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
496
+ /**
497
+ * The number of bytes successfully put to the Kinesis stream over the specified time period. This metric includes
498
+ * bytes from PutRecord and PutRecords operations. Minimum, Maximum, and Average statistics represent the bytes in a
499
+ * single put operation for the stream in the specified time period.
500
+ *
501
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
502
+ *
503
+ * @param props properties of the metric
504
+ */
505
+ metricIncomingBytes(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
506
+ /**
507
+ * The number of records successfully put to the Kinesis stream over the specified time period. This metric includes
508
+ * record counts from PutRecord and PutRecords operations. Minimum, Maximum, and Average statistics represent the
509
+ * records in a single put operation for the stream in the specified time period.
510
+ *
511
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
512
+ *
513
+ * @param props properties of the metric
514
+ */
515
+ metricIncomingRecords(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
516
+ /**
517
+ * The number of GetRecords calls throttled for the stream over the specified time period. The most commonly used
518
+ * statistic for this metric is Average.
519
+ *
520
+ * When the Minimum statistic has a value of 1, all records were throttled for the stream during the specified time
521
+ * period.
522
+ *
523
+ * When the Maximum statistic has a value of 0 (zero), no records were throttled for the stream during the specified
524
+ * time period.
525
+ *
526
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties
527
+ *
528
+ * @param props properties of the metric
529
+ *
530
+ */
531
+ metricReadProvisionedThroughputExceeded(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
532
+ /**
533
+ * The number of records rejected due to throttling for the stream over the specified time period. This metric
534
+ * includes throttling from PutRecord and PutRecords operations.
535
+ *
536
+ * When the Minimum statistic has a non-zero value, records were being throttled for the stream during the specified
537
+ * time period.
538
+ *
539
+ * When the Maximum statistic has a value of 0 (zero), no records were being throttled for the stream during the
540
+ * specified time period.
541
+ *
542
+ * The metric defaults to average over 5 minutes, it can be changed by passing `statistic` and `period` properties.
543
+ *
544
+ * @param props properties of the metric
545
+ */
546
+ metricWriteProvisionedThroughputExceeded(props?: cloudwatch.MetricOptions): cloudwatch.Metric;
547
+ private metricFromCannedFunction;
548
+ }
549
+ /**
550
+ * Properties for a Kinesis Stream
551
+ */
552
+ export interface StreamProps extends AwsConstructProps {
553
+ /**
554
+ * Enforces a particular physical stream name.
555
+ * @default <generated>
556
+ */
557
+ readonly streamName?: string;
558
+ /**
559
+ * The number of hours for the data records that are stored in shards to remain accessible.
560
+ * @default Duration.hours(24)
561
+ */
562
+ readonly retentionPeriod?: Duration;
563
+ /**
564
+ * The number of shards for the stream.
565
+ *
566
+ * Can only be provided if streamMode is Provisioned.
567
+ *
568
+ * @default 1
569
+ */
570
+ readonly shardCount?: number;
571
+ /**
572
+ * The kind of server-side encryption to apply to this stream.
573
+ *
574
+ * If you choose KMS, you can specify a KMS key via `encryptionKey`. If
575
+ * encryption key is not specified, a key will automatically be created.
576
+ *
577
+ * @default - StreamEncryption.KMS if encrypted Streams are supported in the region
578
+ * or StreamEncryption.UNENCRYPTED otherwise.
579
+ * StreamEncryption.KMS if an encryption key is supplied through the encryptionKey property
580
+ */
581
+ readonly encryption?: StreamEncryption;
582
+ /**
583
+ * External KMS key to use for stream encryption.
584
+ *
585
+ * The 'encryption' property must be set to "Kms".
586
+ *
587
+ * @default - Kinesis Data Streams master key ('/alias/aws/kinesis').
588
+ * If encryption is set to StreamEncryption.KMS and this property is undefined, a new KMS key
589
+ * will be created and associated with this stream.
590
+ */
591
+ readonly encryptionKey?: kms.IKey;
592
+ /**
593
+ * The capacity mode of this stream.
594
+ *
595
+ * @default StreamMode.PROVISIONED
596
+ */
597
+ readonly streamMode?: StreamMode;
598
+ }
599
+ /**
600
+ * A Kinesis stream. Can be encrypted with a KMS key.
601
+ *
602
+ * @resource aws_kinesis_stream
603
+ */
604
+ export declare class Stream extends StreamBase {
605
+ /**
606
+ * Import an existing Kinesis Stream provided an ARN
607
+ *
608
+ * @param scope The parent creating construct (usually `this`).
609
+ * @param id The construct's name
610
+ * @param streamArn Stream ARN (i.e. arn:aws:kinesis:<region>:<account-id>:stream/Foo)
611
+ */
612
+ static fromStreamArn(scope: Construct, id: string, streamArn: string): IStream;
613
+ /**
614
+ * Creates a Stream construct that represents an external stream.
615
+ *
616
+ * @param scope The parent creating construct (usually `this`).
617
+ * @param id The construct's name.
618
+ * @param attrs Stream import properties
619
+ */
620
+ static fromStreamAttributes(scope: Construct, id: string, attrs: StreamAttributes): IStream;
621
+ readonly streamArn: string;
622
+ readonly streamName: string;
623
+ readonly encryptionKey?: kms.IKey;
624
+ readonly resource: kinesisStream.KinesisStream;
625
+ protected readonly autoCreatePolicy = true;
626
+ constructor(scope: Construct, id: string, props?: StreamProps);
627
+ /**
628
+ * Set up key properties and return the Stream encryption property from the
629
+ * user's configuration.
630
+ */
631
+ private parseEncryption;
632
+ }
633
+ /**
634
+ * Enables or updates server-side encryption using an AWS KMS key for a specified stream.
635
+ *
636
+ * > When invoking this API, you must use either the `StreamARN` or the `StreamName` parameter, or both. It is recommended that you use the `StreamARN` input parameter when you invoke this API.
637
+ *
638
+ * Starting encryption is an asynchronous operation. Upon receiving the request, Kinesis Data Streams returns immediately and sets the status of the stream to `UPDATING` . After the update is complete, Kinesis Data Streams sets the status of the stream back to `ACTIVE` . Updating or applying encryption normally takes a few seconds to complete, but it can take minutes. You can continue to read and write data to your stream while its status is `UPDATING` . Once the status of the stream is `ACTIVE` , encryption begins for records written to the stream.
639
+ *
640
+ * API Limits: You can successfully apply a new AWS KMS key for server-side encryption 25 times in a rolling 24-hour period.
641
+ *
642
+ * Note: It can take up to 5 seconds after the stream is in an `ACTIVE` status before all records written to the stream are encrypted. After you enable encryption, you can verify that encryption is applied by inspecting the API response from `PutRecord` or `PutRecords` .
643
+ *
644
+ * @struct
645
+ * @stability external
646
+ * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html
647
+ */
648
+ export interface StreamEncryptionProperty {
649
+ /**
650
+ * The encryption type to use.
651
+ *
652
+ * The only valid value is `KMS` .
653
+ *
654
+ * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-encryptiontype
655
+ */
656
+ readonly encryptionType: string;
657
+ /**
658
+ * The GUID for the customer-managed AWS KMS key to use for encryption.
659
+ *
660
+ * This value can be a globally unique identifier, a fully specified Amazon Resource Name (ARN) to either an alias or a key, or an alias name prefixed by "alias/".You can also use a master key owned by Kinesis Data Streams by specifying the alias `aws/kinesis` .
661
+ *
662
+ * - Key ARN example: `arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012`
663
+ * - Alias ARN example: `arn:aws:kms:us-east-1:123456789012:alias/MyAliasName`
664
+ * - Globally unique key ID example: `12345678-1234-1234-1234-123456789012`
665
+ * - Alias name example: `alias/MyAliasName`
666
+ * - Master key owned by Kinesis Data Streams: `alias/aws/kinesis`
667
+ *
668
+ * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesis-stream-streamencryption.html#cfn-kinesis-stream-streamencryption-keyid
669
+ */
670
+ readonly kmsKeyId: string;
671
+ }
672
+ /**
673
+ * What kind of server-side encryption to apply to this stream
674
+ */
675
+ export declare enum StreamEncryption {
676
+ /**
677
+ * Records in the stream are not encrypted.
678
+ */
679
+ UNENCRYPTED = "NONE",
680
+ /**
681
+ * Server-side encryption with a KMS key managed by the user.
682
+ * If `encryptionKey` is specified, this key will be used, otherwise, one will be defined.
683
+ */
684
+ KMS = "KMS",
685
+ /**
686
+ * Server-side encryption with a master key managed by Amazon Kinesis
687
+ */
688
+ MANAGED = "MANAGED"
689
+ }
690
+ /**
691
+ * Specifies the capacity mode to apply to this stream.
692
+ */
693
+ export declare enum StreamMode {
694
+ /**
695
+ * Specify the provisioned capacity mode. The stream will have `shardCount` shards unless
696
+ * modified and will be billed according to the provisioned capacity.
697
+ */
698
+ PROVISIONED = "PROVISIONED",
699
+ /**
700
+ * Specify the on-demand capacity mode. The stream will autoscale and be billed according to the
701
+ * volume of data ingested and retrieved.
702
+ */
703
+ ON_DEMAND = "ON_DEMAND"
704
+ }
705
+ export {};