terraconstructs 0.0.11 → 0.0.12
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.
- package/.jsii +104486 -34582
- package/lib/aws/arn.js +1 -1
- package/lib/aws/aws-construct.d.ts +1 -1
- package/lib/aws/aws-construct.js +28 -2
- package/lib/aws/aws-stack.d.ts +2 -4
- package/lib/aws/aws-stack.js +21 -8
- package/lib/aws/aws-tags.d.ts +58 -0
- package/lib/aws/aws-tags.js +77 -0
- package/lib/aws/cloudwatch/actions/ec2.js +1 -1
- package/lib/aws/cloudwatch/actions/lambda.js +1 -1
- package/lib/aws/cloudwatch/alarm-base.js +1 -1
- package/lib/aws/cloudwatch/alarm-rule.js +1 -1
- package/lib/aws/cloudwatch/alarm-status-widget.js +1 -1
- package/lib/aws/cloudwatch/alarm.js +1 -1
- package/lib/aws/cloudwatch/composite-alarm.js +1 -1
- package/lib/aws/cloudwatch/dashboard.js +1 -1
- package/lib/aws/cloudwatch/data-protection-policy.js +3 -3
- package/lib/aws/cloudwatch/graph.js +8 -8
- package/lib/aws/cloudwatch/layout.js +3 -3
- package/lib/aws/cloudwatch/log-destinations/kinesis.js +1 -1
- package/lib/aws/cloudwatch/log-destinations/lambda.js +1 -1
- package/lib/aws/cloudwatch/log-group.js +1 -1
- package/lib/aws/cloudwatch/log-query.js +1 -1
- package/lib/aws/cloudwatch/log-stream.js +1 -1
- package/lib/aws/cloudwatch/metric-filter.d.ts +1 -1
- package/lib/aws/cloudwatch/metric-filter.js +4 -4
- package/lib/aws/cloudwatch/metric.js +2 -2
- package/lib/aws/cloudwatch/pattern.js +3 -3
- package/lib/aws/cloudwatch/policy.js +1 -1
- package/lib/aws/cloudwatch/private/env-tokens.js +5 -6
- package/lib/aws/cloudwatch/private/metric-util.js +4 -5
- package/lib/aws/cloudwatch/private/object.js +2 -3
- package/lib/aws/cloudwatch/private/rendering.js +3 -3
- package/lib/aws/cloudwatch/private/statistic.js +6 -7
- package/lib/aws/cloudwatch/query-definition.js +2 -2
- package/lib/aws/cloudwatch/stats.js +1 -1
- package/lib/aws/cloudwatch/subscription-filter.d.ts +1 -1
- package/lib/aws/cloudwatch/subscription-filter.js +4 -4
- package/lib/aws/cloudwatch/text.js +1 -1
- package/lib/aws/cloudwatch/variable.js +3 -3
- package/lib/aws/cloudwatch/widget.d.ts +1 -1
- package/lib/aws/cloudwatch/widget.js +4 -4
- package/lib/aws/compute/activity.js +3 -2
- package/lib/aws/compute/alb/application-listener-action.d.ts +334 -0
- package/lib/aws/compute/alb/application-listener-action.js +281 -0
- package/lib/aws/compute/alb/application-listener-certificate.d.ts +35 -0
- package/lib/aws/compute/alb/application-listener-certificate.js +35 -0
- package/lib/aws/compute/alb/application-listener-rule.d.ts +233 -0
- package/lib/aws/compute/alb/application-listener-rule.js +220 -0
- package/lib/aws/compute/alb/application-listener.d.ts +574 -0
- package/lib/aws/compute/alb/application-listener.js +538 -0
- package/lib/aws/compute/alb/application-load-balancer.d.ts +715 -0
- package/lib/aws/compute/alb/application-load-balancer.js +780 -0
- package/lib/aws/compute/alb/application-target-group.d.ts +339 -0
- package/lib/aws/compute/alb/application-target-group.js +427 -0
- package/lib/aws/compute/alb/conditions.d.ts +61 -0
- package/lib/aws/compute/alb/conditions.js +164 -0
- package/lib/aws/compute/alb/trust-store-revocation.d.ts +59 -0
- package/lib/aws/compute/alb/trust-store-revocation.js +46 -0
- package/lib/aws/compute/alb/trust-store.d.ts +86 -0
- package/lib/aws/compute/alb/trust-store.js +79 -0
- package/lib/aws/compute/architecture.js +1 -1
- package/lib/aws/compute/aspects/require-imdsv2-aspect.d.ts +75 -0
- package/lib/aws/compute/aspects/require-imdsv2-aspect.js +106 -0
- package/lib/aws/compute/bastion-host.d.ts +172 -0
- package/lib/aws/compute/bastion-host.js +114 -0
- package/lib/aws/compute/chain.js +1 -1
- package/lib/aws/compute/cidr-splits.d.ts +49 -0
- package/lib/aws/compute/cidr-splits.js +59 -0
- package/lib/aws/compute/client-vpn-authorization-rule.d.ts +43 -0
- package/lib/aws/compute/client-vpn-authorization-rule.js +30 -0
- package/lib/aws/compute/client-vpn-endpoint-types.d.ts +62 -0
- package/lib/aws/compute/client-vpn-endpoint-types.js +25 -0
- package/lib/aws/compute/client-vpn-endpoint.d.ts +239 -0
- package/lib/aws/compute/client-vpn-endpoint.js +259 -0
- package/lib/aws/compute/client-vpn-route.d.ts +67 -0
- package/lib/aws/compute/client-vpn-route.js +57 -0
- package/lib/aws/compute/condition.js +1 -1
- package/lib/aws/compute/connections.d.ts +137 -0
- package/lib/aws/compute/connections.js +208 -0
- package/lib/aws/compute/ec2-augmentations.generated.d.ts +53 -0
- package/lib/aws/compute/ec2-augmentations.generated.js +35 -0
- package/lib/aws/compute/ec2-canned-metrics.generated.d.ts +555 -0
- package/lib/aws/compute/ec2-canned-metrics.generated.js +681 -0
- package/lib/aws/compute/ec2-util-v2.d.ts +141 -0
- package/lib/aws/compute/ec2-util-v2.js +286 -0
- package/lib/aws/compute/ec2-util.d.ts +52 -0
- package/lib/aws/compute/ec2-util.js +138 -0
- package/lib/aws/compute/elasticloadbalancing-canned-metrics.generated.d.ts +176 -0
- package/lib/aws/compute/elasticloadbalancing-canned-metrics.generated.js +119 -0
- package/lib/aws/compute/elasticloadbalancingv2-canned-metrics.generated.d.ts +860 -0
- package/lib/aws/compute/elasticloadbalancingv2-canned-metrics.generated.js +597 -0
- package/lib/aws/compute/event-invoke-config.js +1 -1
- package/lib/aws/compute/event-source-filter.js +2 -2
- package/lib/aws/compute/event-source-mapping.js +1 -1
- package/lib/aws/compute/event-sources/s3-onfailure-destination.js +1 -1
- package/lib/aws/compute/event-sources/s3.js +1 -1
- package/lib/aws/compute/event-sources/sqs-dlq.js +1 -1
- package/lib/aws/compute/event-sources/sqs.js +1 -1
- package/lib/aws/compute/fields.js +4 -4
- package/lib/aws/compute/function-alias.js +1 -1
- package/lib/aws/compute/function-base.js +2 -2
- package/lib/aws/compute/function-destinations/event-bridge.js +1 -1
- package/lib/aws/compute/function-destinations/function.js +1 -1
- package/lib/aws/compute/function-destinations/sqs.js +1 -1
- package/lib/aws/compute/function-nodejs.js +1 -1
- package/lib/aws/compute/function-url.js +1 -1
- package/lib/aws/compute/function-vpc-config.generated.d.ts +3 -3
- package/lib/aws/compute/function-vpc-config.generated.js +1 -1
- package/lib/aws/compute/function.d.ts +1 -1
- package/lib/aws/compute/function.js +5 -5
- package/lib/aws/compute/index-alpha.d.ts +5 -0
- package/lib/aws/compute/index-alpha.js +22 -0
- package/lib/aws/compute/index.d.ts +60 -0
- package/lib/aws/compute/index.js +70 -2
- package/lib/aws/compute/instance-types.d.ts +1354 -0
- package/lib/aws/compute/instance-types.js +1683 -0
- package/lib/aws/compute/instance.d.ts +436 -0
- package/lib/aws/compute/instance.js +262 -0
- package/lib/aws/compute/ip-addresses.d.ts +249 -0
- package/lib/aws/compute/ip-addresses.js +248 -0
- package/lib/aws/compute/ipam.d.ts +309 -0
- package/lib/aws/compute/ipam.js +306 -0
- package/lib/aws/compute/key-pair.d.ts +178 -0
- package/lib/aws/compute/key-pair.js +194 -0
- package/lib/aws/compute/lambda-augmentations.generated.d.ts +65 -0
- package/lib/aws/compute/lambda-augmentations.generated.js +41 -0
- package/lib/aws/compute/lambda-canned-metrics.generated.d.ts +316 -0
- package/lib/aws/compute/lambda-canned-metrics.generated.js +119 -0
- package/lib/aws/compute/launch-template.d.ts +540 -0
- package/lib/aws/compute/launch-template.js +468 -0
- package/lib/aws/compute/lb-shared/access-logs-accounts.d.ts +7 -0
- package/lib/aws/compute/lb-shared/access-logs-accounts.js +46 -0
- package/lib/aws/compute/lb-shared/base-listener.d.ts +113 -0
- package/lib/aws/compute/lb-shared/base-listener.js +181 -0
- package/lib/aws/compute/lb-shared/base-load-balancer.d.ts +212 -0
- package/lib/aws/compute/lb-shared/base-load-balancer.js +290 -0
- package/lib/aws/compute/lb-shared/base-target-group.d.ts +382 -0
- package/lib/aws/compute/lb-shared/base-target-group.js +364 -0
- package/lib/aws/compute/lb-shared/enums.d.ts +282 -0
- package/lib/aws/compute/lb-shared/enums.js +301 -0
- package/lib/aws/compute/lb-shared/grid-lookup-types.d.ts +42 -0
- package/lib/aws/compute/lb-shared/grid-lookup-types.js +53 -0
- package/lib/aws/compute/lb-shared/imported.d.ts +24 -0
- package/lib/aws/compute/lb-shared/imported.js +27 -0
- package/lib/aws/compute/lb-shared/lb-listener-config.generated.d.ts +194 -0
- package/lib/aws/compute/lb-shared/lb-listener-config.generated.js +3 -0
- package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.d.ts +56 -0
- package/lib/aws/compute/lb-shared/lb-target-group-attachment-config.generated.js +3 -0
- package/lib/aws/compute/lb-shared/listener-action.d.ts +14 -0
- package/lib/aws/compute/lb-shared/listener-action.js +4 -0
- package/lib/aws/compute/lb-shared/listener-certificate.d.ts +28 -0
- package/lib/aws/compute/lb-shared/listener-certificate.js +29 -0
- package/lib/aws/compute/lb-shared/load-balancer-targets.d.ts +93 -0
- package/lib/aws/compute/lb-shared/load-balancer-targets.js +127 -0
- package/lib/aws/compute/lb-shared/util.d.ts +113 -0
- package/lib/aws/compute/lb-shared/util.js +264 -0
- package/lib/aws/compute/lb-targets/alb-target.d.ts +67 -0
- package/lib/aws/compute/lb-targets/alb-target.js +100 -0
- package/lib/aws/compute/lb-targets/index.d.ts +4 -0
- package/lib/aws/compute/lb-targets/index.js +22 -0
- package/lib/aws/compute/lb-targets/instance-target.d.ts +42 -0
- package/lib/aws/compute/lb-targets/instance-target.js +67 -0
- package/lib/aws/compute/lb-targets/ip-target.d.ts +55 -0
- package/lib/aws/compute/lb-targets/ip-target.js +79 -0
- package/lib/aws/compute/lb-targets/lambda-target.d.ts +25 -0
- package/lib/aws/compute/lb-targets/lambda-target.js +50 -0
- package/lib/aws/compute/load-balancer.d.ts +336 -0
- package/lib/aws/compute/load-balancer.js +287 -0
- package/lib/aws/compute/machine-image/amazon-linux-2022.d.ts +63 -0
- package/lib/aws/compute/machine-image/amazon-linux-2022.js +84 -0
- package/lib/aws/compute/machine-image/amazon-linux-2023.d.ts +63 -0
- package/lib/aws/compute/machine-image/amazon-linux-2023.js +84 -0
- package/lib/aws/compute/machine-image/amazon-linux2.d.ts +76 -0
- package/lib/aws/compute/machine-image/amazon-linux2.js +87 -0
- package/lib/aws/compute/machine-image/common.d.ts +181 -0
- package/lib/aws/compute/machine-image/common.js +122 -0
- package/lib/aws/compute/machine-image/index.d.ts +5 -0
- package/lib/aws/compute/machine-image/index.js +22 -0
- package/lib/aws/compute/machine-image/machine-image.d.ts +463 -0
- package/lib/aws/compute/machine-image/machine-image.js +566 -0
- package/lib/aws/compute/machine-image/utils.d.ts +2 -0
- package/lib/aws/compute/machine-image/utils.js +17 -0
- package/lib/aws/compute/nat.d.ts +325 -0
- package/lib/aws/compute/nat.js +455 -0
- package/lib/aws/compute/network-acl-types.d.ts +152 -0
- package/lib/aws/compute/network-acl-types.js +156 -0
- package/lib/aws/compute/network-acl.d.ts +285 -0
- package/lib/aws/compute/network-acl.js +207 -0
- package/lib/aws/compute/network-util.d.ts +116 -0
- package/lib/aws/compute/network-util.js +241 -0
- package/lib/aws/compute/nlb/network-listener-action.d.ts +92 -0
- package/lib/aws/compute/nlb/network-listener-action.js +146 -0
- package/lib/aws/compute/nlb/network-listener-certificate.d.ts +24 -0
- package/lib/aws/compute/nlb/network-listener-certificate.js +25 -0
- package/lib/aws/compute/nlb/network-listener.d.ts +248 -0
- package/lib/aws/compute/nlb/network-listener.js +217 -0
- package/lib/aws/compute/nlb/network-load-balancer.d.ts +315 -0
- package/lib/aws/compute/nlb/network-load-balancer.js +360 -0
- package/lib/aws/compute/nlb/network-target-group.d.ts +153 -0
- package/lib/aws/compute/nlb/network-target-group.js +223 -0
- package/lib/aws/compute/peer.d.ts +64 -0
- package/lib/aws/compute/peer.js +235 -0
- package/lib/aws/compute/placement-group.d.ts +161 -0
- package/lib/aws/compute/placement-group.js +133 -0
- package/lib/aws/compute/port.d.ts +287 -0
- package/lib/aws/compute/port.js +390 -0
- package/lib/aws/compute/prefix-list.d.ts +131 -0
- package/lib/aws/compute/prefix-list.js +114 -0
- package/lib/aws/compute/private/context-stub.d.ts +7 -0
- package/lib/aws/compute/private/context-stub.js +43 -0
- package/lib/aws/compute/private/ebs-util.d.ts +14 -0
- package/lib/aws/compute/private/ebs-util.js +145 -0
- package/lib/aws/compute/private/intrinstics.js +2 -1
- package/lib/aws/compute/private/json-path.js +8 -8
- package/lib/aws/compute/private/util.js +2 -3
- package/lib/aws/compute/route.d.ts +547 -0
- package/lib/aws/compute/route.js +469 -0
- package/lib/aws/compute/security-group.d.ts +414 -0
- package/lib/aws/compute/security-group.js +538 -0
- package/lib/aws/compute/state-graph.js +1 -1
- package/lib/aws/compute/state-machine-fragment.js +1 -1
- package/lib/aws/compute/state-machine.d.ts +2 -2
- package/lib/aws/compute/state-machine.js +14 -12
- package/lib/aws/compute/states/choice.js +1 -1
- package/lib/aws/compute/states/custom-state.js +1 -1
- package/lib/aws/compute/states/distributed-map/item-batcher.js +1 -1
- package/lib/aws/compute/states/distributed-map/item-reader.js +5 -5
- package/lib/aws/compute/states/distributed-map/result-writer.js +1 -1
- package/lib/aws/compute/states/distributed-map.js +1 -1
- package/lib/aws/compute/states/fail.js +1 -1
- package/lib/aws/compute/states/map-base.js +1 -1
- package/lib/aws/compute/states/map.js +1 -1
- package/lib/aws/compute/states/parallel.js +1 -1
- package/lib/aws/compute/states/pass.js +2 -2
- package/lib/aws/compute/states/state.js +5 -5
- package/lib/aws/compute/states/succeed.js +1 -1
- package/lib/aws/compute/states/task-base.js +2 -2
- package/lib/aws/compute/states/task.js +1 -1
- package/lib/aws/compute/states/wait.js +2 -2
- package/lib/aws/compute/stepfunctions-canned-metrics.generated.d.ts +83 -0
- package/lib/aws/compute/stepfunctions-canned-metrics.generated.js +127 -0
- package/lib/aws/compute/subnet-v2.d.ts +213 -0
- package/lib/aws/compute/subnet-v2.js +405 -0
- package/lib/aws/compute/subnet.d.ts +37 -0
- package/lib/aws/compute/subnet.js +181 -0
- package/lib/aws/compute/task-credentials.js +1 -1
- package/lib/aws/compute/task-input.js +1 -1
- package/lib/aws/compute/tasks/aws-sdk/call-aws-service.js +1 -1
- package/lib/aws/compute/tasks/eventbridge/put-events.js +1 -1
- package/lib/aws/compute/tasks/http/invoke.js +1 -1
- package/lib/aws/compute/tasks/lambda/invoke.js +1 -1
- package/lib/aws/compute/tasks/private/task-utils.js +3 -4
- package/lib/aws/compute/tasks/resource-arn-suffix.js +2 -3
- package/lib/aws/compute/tasks/sqs/send-message.js +1 -1
- package/lib/aws/compute/tasks/stepfunctions/invoke-activity.js +1 -1
- package/lib/aws/compute/tasks/stepfunctions/start-execution.js +1 -1
- package/lib/aws/compute/types.js +2 -2
- package/lib/aws/compute/user-data.d.ts +270 -0
- package/lib/aws/compute/user-data.js +487 -0
- package/lib/aws/compute/util.d.ts +1 -1
- package/lib/aws/compute/util.js +4 -5
- package/lib/aws/compute/volume.d.ts +480 -0
- package/lib/aws/compute/volume.js +426 -0
- package/lib/aws/compute/vpc-endpoint-service.d.ts +149 -0
- package/lib/aws/compute/vpc-endpoint-service.js +90 -0
- package/lib/aws/compute/vpc-endpoint.d.ts +742 -0
- package/lib/aws/compute/vpc-endpoint.js +811 -0
- package/lib/aws/compute/vpc-flow-logs.d.ts +551 -0
- package/lib/aws/compute/vpc-flow-logs.js +693 -0
- package/lib/aws/compute/vpc-lookup.d.ts +73 -0
- package/lib/aws/compute/vpc-lookup.js +3 -0
- package/lib/aws/compute/vpc-v2-base.d.ts +353 -0
- package/lib/aws/compute/vpc-v2-base.js +493 -0
- package/lib/aws/compute/vpc-v2.d.ts +385 -0
- package/lib/aws/compute/vpc-v2.js +408 -0
- package/lib/aws/compute/vpc.d.ts +1448 -0
- package/lib/aws/compute/vpc.js +1495 -0
- package/lib/aws/compute/vpn.d.ts +443 -0
- package/lib/aws/compute/vpn.js +397 -0
- package/lib/aws/compute/windows-versions.d.ts +418 -0
- package/lib/aws/compute/windows-versions.js +426 -0
- package/lib/aws/edge/certificate-base.d.ts +20 -0
- package/lib/aws/edge/certificate-base.js +28 -0
- package/lib/aws/edge/certificate.d.ts +23 -2
- package/lib/aws/edge/certificate.js +54 -4
- package/lib/aws/edge/distribution.js +3 -3
- package/lib/aws/edge/dns-alias-record-targets.js +2 -2
- package/lib/aws/edge/dns-record.js +16 -16
- package/lib/aws/edge/dns-zone.d.ts +20 -2
- package/lib/aws/edge/dns-zone.js +25 -10
- package/lib/aws/edge/function.js +2 -2
- package/lib/aws/edge/index.d.ts +1 -0
- package/lib/aws/edge/index.js +2 -1
- package/lib/aws/edge/key-value-store.js +4 -4
- package/lib/aws/edge/origin.js +7 -5
- package/lib/aws/edge/response-headers-policy.js +1 -1
- package/lib/aws/encryption/alias.js +1 -1
- package/lib/aws/encryption/key.js +1 -1
- package/lib/aws/encryption/via-service-principal.js +1 -1
- package/lib/aws/iam/grant.js +2 -2
- package/lib/aws/iam/index.d.ts +1 -0
- package/lib/aws/iam/index.js +2 -1
- package/lib/aws/iam/instance-profile.d.ts +155 -0
- package/lib/aws/iam/instance-profile.js +124 -0
- package/lib/aws/iam/managed-policy.js +1 -1
- package/lib/aws/iam/oidc-provider.js +1 -1
- package/lib/aws/iam/policy-document-config.generated.d.ts +8 -8
- package/lib/aws/iam/policy-document-config.generated.js +1 -1
- package/lib/aws/iam/policy-document.js +1 -1
- package/lib/aws/iam/policy-statement-props.generated.d.ts +8 -8
- package/lib/aws/iam/policy-statement-props.generated.js +1 -1
- package/lib/aws/iam/policy-statement.js +9 -9
- package/lib/aws/iam/policy.js +1 -1
- package/lib/aws/iam/principals.js +26 -26
- package/lib/aws/iam/private/assume-role-policy.js +2 -3
- package/lib/aws/iam/private/comparable-principal.js +2 -3
- package/lib/aws/iam/private/immutable-role.d.ts +2 -1
- package/lib/aws/iam/private/immutable-role.js +3 -3
- package/lib/aws/iam/private/imported-role.d.ts +1 -1
- package/lib/aws/iam/private/imported-role.js +3 -3
- package/lib/aws/iam/private/merge-statements.js +2 -3
- package/lib/aws/iam/private/util.js +4 -4
- package/lib/aws/iam/role.js +1 -1
- package/lib/aws/iam/saml-provider.d.ts +1 -1
- package/lib/aws/iam/saml-provider.js +6 -6
- package/lib/aws/iam/unknown-principal.js +1 -1
- package/lib/aws/iam/utils.js +2 -3
- package/lib/aws/index.d.ts +1 -0
- package/lib/aws/index.js +4 -1
- package/lib/aws/network/simple-ipv4-vpc.js +5 -5
- package/lib/aws/network/subnet-group.js +3 -3
- package/lib/aws/network/subnet.d.ts +1 -1
- package/lib/aws/network/subnet.js +7 -7
- package/lib/aws/notify/archive.js +3 -2
- package/lib/aws/notify/connection.js +5 -4
- package/lib/aws/notify/event-bus.js +5 -4
- package/lib/aws/notify/event-pattern.js +3 -3
- package/lib/aws/notify/index.js +3 -1
- package/lib/aws/notify/input.js +4 -3
- package/lib/aws/notify/kinesis-stream.js +3 -2
- package/lib/aws/notify/on-event-options.js +2 -1
- package/lib/aws/notify/queue-config.generated.d.ts +18 -11
- package/lib/aws/notify/queue-config.generated.js +1 -1
- package/lib/aws/notify/queue-policy.js +1 -1
- package/lib/aws/notify/queue.js +1 -1
- package/lib/aws/notify/resource-policy.js +1 -1
- package/lib/aws/notify/rule.js +3 -2
- package/lib/aws/notify/schedule.js +2 -2
- package/lib/aws/notify/sqs-augmentations.generated.d.ts +125 -0
- package/lib/aws/notify/sqs-augmentations.generated.js +74 -0
- package/lib/aws/notify/target.js +2 -1
- package/lib/aws/notify/targets/event-bus.js +1 -1
- package/lib/aws/notify/targets/function.js +1 -1
- package/lib/aws/notify/targets/log-group.js +2 -2
- package/lib/aws/notify/targets/sqs.js +1 -1
- package/lib/aws/notify/targets/state-machine.js +1 -1
- package/lib/aws/notify/targets/util.d.ts +1 -1
- package/lib/aws/notify/targets/util.js +10 -11
- package/lib/aws/notify/util.js +4 -4
- package/lib/aws/provider-config.generated.d.ts +33 -33
- package/lib/aws/provider-config.generated.js +1 -1
- package/lib/aws/storage/bucket-notifications.js +1 -1
- package/lib/aws/storage/bucket-policy.js +1 -1
- package/lib/aws/storage/bucket-source.js +1 -1
- package/lib/aws/storage/bucket.d.ts +298 -65
- package/lib/aws/storage/bucket.js +548 -225
- package/lib/aws/storage/cors-config.generated.d.ts +3 -3
- package/lib/aws/storage/cors-config.generated.js +1 -1
- package/lib/aws/storage/cors-rule-config.generated.d.ts +5 -5
- package/lib/aws/storage/cors-rule-config.generated.js +1 -1
- package/lib/aws/storage/index.d.ts +1 -0
- package/lib/aws/storage/index.js +2 -1
- package/lib/aws/storage/lifecycle-config.generated.d.ts +11 -11
- package/lib/aws/storage/lifecycle-config.generated.js +1 -1
- package/lib/aws/storage/notification-targets/function.js +6 -6
- package/lib/aws/storage/notification-targets/queue.js +1 -1
- package/lib/aws/storage/origin-access-identity.d.ts +1 -1
- package/lib/aws/storage/origin-access-identity.js +5 -4
- package/lib/aws/storage/parameter-util.d.ts +12 -0
- package/lib/aws/storage/parameter-util.js +65 -0
- package/lib/aws/storage/parameter.d.ts +526 -0
- package/lib/aws/storage/parameter.js +606 -0
- package/lib/aws/storage/s3-canned-metrics.generated.d.ts +22 -0
- package/lib/aws/storage/s3-canned-metrics.generated.js +23 -0
- package/lib/aws/storage/util.d.ts +25 -3
- package/lib/aws/storage/util.js +84 -17
- package/lib/aws/storage/website-config.generated.d.ts +5 -5
- package/lib/aws/storage/website-config.generated.js +1 -1
- package/lib/aws/util.js +2 -3
- package/lib/construct-base.d.ts +10 -1
- package/lib/construct-base.js +9 -6
- package/lib/duration.js +1 -1
- package/lib/expiration.d.ts +48 -0
- package/lib/expiration.js +68 -0
- package/lib/helpers-internal/index.d.ts +1 -0
- package/lib/helpers-internal/index.js +7 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +3 -1
- package/lib/private/md5.d.ts +4 -0
- package/lib/private/md5.js +14 -0
- package/lib/private/unique-resource-name.js +3 -4
- package/lib/size.js +2 -2
- package/lib/stack-base.d.ts +4 -23
- package/lib/stack-base.js +9 -30
- package/lib/terra-func.d.ts +103 -0
- package/lib/terra-func.js +170 -0
- package/lib/token.js +5 -5
- package/package.json +15 -8
- package/bun.lockb +0 -0
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { s3Bucket, s3BucketCorsConfiguration, s3BucketWebsiteConfiguration } from "@cdktf/provider-aws";
|
|
1
|
+
import { s3Bucket, s3BucketCorsConfiguration, s3BucketWebsiteConfiguration, dataAwsS3Bucket } from "@cdktf/provider-aws";
|
|
2
2
|
import { Construct } from "constructs";
|
|
3
|
-
import { WebsiteConfig, CorsConfig, LifecycleConfigurationRule, BucketPolicy, IBucketNotificationDestination } from ".";
|
|
4
|
-
import { AwsConstructBase, IAwsConstruct, AwsConstructProps } from "
|
|
3
|
+
import { WebsiteConfig, CorsConfig, LifecycleConfigurationRule, OriginAccessIdentity, BucketPolicy, IBucketNotificationDestination } from ".";
|
|
4
|
+
import { AwsConstructBase, IAwsConstruct, AwsConstructProps } from "../aws-construct";
|
|
5
|
+
import * as kms from "../encryption";
|
|
5
6
|
import * as iam from "../iam";
|
|
6
7
|
export interface CloudfrontAccessConfig {
|
|
7
8
|
/**
|
|
@@ -15,7 +16,129 @@ export interface CloudfrontAccessConfig {
|
|
|
15
16
|
*/
|
|
16
17
|
readonly keyPatterns?: string[];
|
|
17
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* A reference to a bucket outside this stack
|
|
21
|
+
*/
|
|
22
|
+
export interface BucketAttributes {
|
|
23
|
+
/**
|
|
24
|
+
* The ARN of the bucket. At least one of bucketArn or bucketName must be
|
|
25
|
+
* defined in order to initialize a bucket ref.
|
|
26
|
+
*/
|
|
27
|
+
readonly bucketArn?: string;
|
|
28
|
+
/**
|
|
29
|
+
* The name of the bucket. If the underlying value of ARN is a string, the
|
|
30
|
+
* name will be parsed from the ARN. Otherwise, the name is optional, but
|
|
31
|
+
* some features that require the bucket name such as auto-creating a bucket
|
|
32
|
+
* policy, won't work.
|
|
33
|
+
*/
|
|
34
|
+
readonly bucketName?: string;
|
|
35
|
+
/**
|
|
36
|
+
* The domain name of the bucket.
|
|
37
|
+
*
|
|
38
|
+
* @default - Inferred from bucket name
|
|
39
|
+
*/
|
|
40
|
+
readonly bucketDomainName?: string;
|
|
41
|
+
/**
|
|
42
|
+
* The website URL of the bucket (if static web hosting is enabled).
|
|
43
|
+
*
|
|
44
|
+
* @default - Inferred from bucket name and region
|
|
45
|
+
*/
|
|
46
|
+
readonly bucketWebsiteUrl?: string;
|
|
47
|
+
/**
|
|
48
|
+
* The regional domain name of the specified bucket.
|
|
49
|
+
*/
|
|
50
|
+
readonly bucketRegionalDomainName?: string;
|
|
51
|
+
/**
|
|
52
|
+
* The IPv6 DNS name of the specified bucket.
|
|
53
|
+
*/
|
|
54
|
+
readonly bucketDualStackDomainName?: string;
|
|
55
|
+
/**
|
|
56
|
+
* KMS encryption key associated with this bucket.
|
|
57
|
+
*
|
|
58
|
+
* @default - no encryption key
|
|
59
|
+
*/
|
|
60
|
+
readonly encryptionKey?: kms.IKey;
|
|
61
|
+
/**
|
|
62
|
+
* If this bucket has been configured for static website hosting.
|
|
63
|
+
*
|
|
64
|
+
* @default false
|
|
65
|
+
*/
|
|
66
|
+
readonly isWebsite?: boolean;
|
|
67
|
+
/**
|
|
68
|
+
* The account this existing bucket belongs to.
|
|
69
|
+
*
|
|
70
|
+
* @default - it's assumed the bucket belongs to the same account as the scope it's being imported into
|
|
71
|
+
*/
|
|
72
|
+
readonly account?: string;
|
|
73
|
+
/**
|
|
74
|
+
* The region this existing bucket is in.
|
|
75
|
+
* Features that require the region (e.g. `bucketWebsiteUrl`) won't fully work
|
|
76
|
+
* if the region cannot be correctly inferred.
|
|
77
|
+
*
|
|
78
|
+
* @default - it's assumed the bucket is in the same region as the scope it's being imported into
|
|
79
|
+
*/
|
|
80
|
+
readonly region?: string;
|
|
81
|
+
/**
|
|
82
|
+
* Whether the bucket is public or not.
|
|
83
|
+
*
|
|
84
|
+
* @default false
|
|
85
|
+
*/
|
|
86
|
+
readonly public?: boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Whether the bucket has versioning enabled
|
|
89
|
+
*
|
|
90
|
+
* If you are enabling versioning on the bucket for the first time, AWS recommends that
|
|
91
|
+
* you wait for 15 minutes after enabling versioning before issuing write operations
|
|
92
|
+
* (PUT or DELETE) on objects in the bucket.
|
|
93
|
+
*
|
|
94
|
+
* This will cause 15m delay if `path` is configured.
|
|
95
|
+
*
|
|
96
|
+
* @default false
|
|
97
|
+
*/
|
|
98
|
+
readonly versioned?: boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Special CloudFront user that you can associate with Amazon S3 origins, so that you can secure all or just some of
|
|
101
|
+
* your Amazon S3 content.
|
|
102
|
+
*
|
|
103
|
+
* Required to use the imported bucket in a CloudFront distribution.
|
|
104
|
+
*/
|
|
105
|
+
readonly originAccessIdentity?: OriginAccessIdentity;
|
|
106
|
+
}
|
|
18
107
|
export interface BucketProps extends AwsConstructProps {
|
|
108
|
+
/**
|
|
109
|
+
* The kind of server-side encryption to apply to this bucket.
|
|
110
|
+
*
|
|
111
|
+
* If you choose KMS, you can specify a KMS key via `encryptionKey`. If
|
|
112
|
+
* encryption key is not specified, a key will automatically be created.
|
|
113
|
+
*
|
|
114
|
+
* @default - `KMS` if `encryptionKey` is specified, or `UNENCRYPTED` otherwise.
|
|
115
|
+
* But if `UNENCRYPTED` is specified, the bucket will be encrypted as `S3_MANAGED` automatically.
|
|
116
|
+
*/
|
|
117
|
+
readonly encryption?: BucketEncryption;
|
|
118
|
+
/**
|
|
119
|
+
* External KMS key to use for bucket encryption.
|
|
120
|
+
*
|
|
121
|
+
* The `encryption` property must be either not specified or set to `KMS` or `DSSE`.
|
|
122
|
+
* An error will be emitted if `encryption` is set to `UNENCRYPTED` or `S3_MANAGED`.
|
|
123
|
+
*
|
|
124
|
+
* @default - If `encryption` is set to `KMS` and this property is undefined,
|
|
125
|
+
* a new KMS key will be created and associated with this bucket.
|
|
126
|
+
*/
|
|
127
|
+
readonly encryptionKey?: kms.IKey;
|
|
128
|
+
/**
|
|
129
|
+
* Whether Amazon S3 should use its own intermediary key to generate data keys.
|
|
130
|
+
*
|
|
131
|
+
* Only relevant when using KMS for encryption.
|
|
132
|
+
*
|
|
133
|
+
* - If not enabled, every object GET and PUT will cause an API call to KMS (with the
|
|
134
|
+
* attendant cost implications of that).
|
|
135
|
+
* - If enabled, S3 will use its own time-limited key instead.
|
|
136
|
+
*
|
|
137
|
+
* Only relevant, when Encryption is not set to `BucketEncryption.UNENCRYPTED`.
|
|
138
|
+
*
|
|
139
|
+
* @default - false
|
|
140
|
+
*/
|
|
141
|
+
readonly bucketKeyEnabled?: boolean;
|
|
19
142
|
/**
|
|
20
143
|
* The path(s) to static directories or files to upload, relative to the Stack file.
|
|
21
144
|
*
|
|
@@ -190,6 +313,11 @@ export interface BucketOutputs {
|
|
|
190
313
|
* @attribute
|
|
191
314
|
*/
|
|
192
315
|
readonly originAccessIdentity?: string;
|
|
316
|
+
/**
|
|
317
|
+
* Kms Key outputs, if bucket has encryption.
|
|
318
|
+
* @attribute
|
|
319
|
+
*/
|
|
320
|
+
readonly encryptionKey?: kms.KeyOutputs;
|
|
193
321
|
}
|
|
194
322
|
/**
|
|
195
323
|
* Imported or created Bucket attributes
|
|
@@ -211,20 +339,19 @@ export interface IBucket extends IAwsConstruct {
|
|
|
211
339
|
readonly hostedZoneId: string;
|
|
212
340
|
/**
|
|
213
341
|
* The Domain name of the static website.
|
|
342
|
+
*
|
|
343
|
+
* This is used to create Route 53 alias records.
|
|
214
344
|
* @attribute
|
|
215
345
|
*/
|
|
216
346
|
readonly websiteDomainName?: string;
|
|
217
347
|
/**
|
|
218
|
-
*
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
*
|
|
223
|
-
* You don't need to enable this if you're using CloudFront to serve files from the bucket.
|
|
224
|
-
*
|
|
225
|
-
* @default `false`
|
|
348
|
+
* Whether the bucket is public or not.
|
|
349
|
+
*/
|
|
350
|
+
readonly public?: boolean;
|
|
351
|
+
/**
|
|
352
|
+
* Optional KMS encryption key associated with this bucket.
|
|
226
353
|
*/
|
|
227
|
-
|
|
354
|
+
readonly encryptionKey?: kms.IKey;
|
|
228
355
|
/**
|
|
229
356
|
* The resource policy associated with this bucket.
|
|
230
357
|
*
|
|
@@ -418,60 +545,44 @@ export interface IBucket extends IAwsConstruct {
|
|
|
418
545
|
*/
|
|
419
546
|
enableEventBridgeNotification(): void;
|
|
420
547
|
}
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
* ```ts
|
|
438
|
-
* new storage.Bucket("MyBucket", {
|
|
439
|
-
* public: true
|
|
440
|
-
* });
|
|
441
|
-
* ```
|
|
442
|
-
*
|
|
443
|
-
* @resource aws_s3_bucket
|
|
444
|
-
* @terraconstruct storage.IBucket
|
|
445
|
-
*/
|
|
446
|
-
export declare class Bucket extends AwsConstructBase implements IBucket {
|
|
447
|
-
protected readonly resource: s3Bucket.S3Bucket;
|
|
448
|
-
protected readonly websiteConfig?: s3BucketWebsiteConfiguration.S3BucketWebsiteConfiguration;
|
|
449
|
-
protected readonly corsConfig?: s3BucketCorsConfiguration.S3BucketCorsConfiguration;
|
|
450
|
-
/** @internal */
|
|
451
|
-
private readonly sources;
|
|
452
|
-
/** @internal */
|
|
453
|
-
private readonly _versioned;
|
|
454
|
-
get versioned(): boolean;
|
|
548
|
+
export declare abstract class BucketBase extends AwsConstructBase implements IBucket {
|
|
549
|
+
abstract readonly bucketArn: string;
|
|
550
|
+
abstract readonly bucketName: string;
|
|
551
|
+
abstract readonly websiteDomainName?: string;
|
|
552
|
+
abstract readonly websiteEndpoint?: string;
|
|
553
|
+
abstract readonly public?: boolean;
|
|
554
|
+
abstract readonly versioned: boolean;
|
|
555
|
+
abstract readonly hostedZoneId: string;
|
|
556
|
+
/**
|
|
557
|
+
* Optional KMS encryption key associated with this bucket.
|
|
558
|
+
*/
|
|
559
|
+
abstract readonly encryptionKey?: kms.IKey;
|
|
560
|
+
get bucketOutputs(): BucketOutputs;
|
|
561
|
+
get outputs(): Record<string, any>;
|
|
562
|
+
protected abstract readonly resource: s3Bucket.S3Bucket | dataAwsS3Bucket.DataAwsS3Bucket;
|
|
563
|
+
protected abstract readonly originAccessIdentity?: OriginAccessIdentity;
|
|
455
564
|
/** @internal */
|
|
456
|
-
|
|
565
|
+
protected abstract readonly _isWebsite: boolean;
|
|
457
566
|
/** @internal */
|
|
458
567
|
private sourceSleep?;
|
|
459
568
|
/** @internal */
|
|
460
|
-
private readonly
|
|
461
|
-
get bucketOutputs(): BucketOutputs;
|
|
462
|
-
get outputs(): Record<string, any>;
|
|
463
|
-
get bucketName(): string;
|
|
464
|
-
get bucketArn(): string;
|
|
465
|
-
get hostedZoneId(): string;
|
|
466
|
-
get websiteDomainName(): string | undefined;
|
|
467
|
-
policy?: BucketPolicy;
|
|
569
|
+
private readonly sources;
|
|
468
570
|
/**
|
|
469
|
-
*
|
|
571
|
+
* The resource policy associated with this bucket.
|
|
572
|
+
*
|
|
573
|
+
* If `autoCreatePolicy` is true, a `BucketPolicy` will be created upon the
|
|
574
|
+
* first call to addToResourcePolicy(s).
|
|
575
|
+
*/
|
|
576
|
+
abstract policy?: BucketPolicy;
|
|
577
|
+
/**
|
|
578
|
+
* Indicates if a bucket resource policy should automatically created upon
|
|
579
|
+
* the first call to `addToResourcePolicy`.
|
|
470
580
|
*/
|
|
471
|
-
|
|
581
|
+
protected abstract autoCreatePolicy: boolean;
|
|
472
582
|
private notifications?;
|
|
473
|
-
|
|
474
|
-
|
|
583
|
+
protected notificationsHandlerRole?: iam.IRole;
|
|
584
|
+
protected notificationsSkipDestinationValidation?: boolean;
|
|
585
|
+
constructor(scope: Construct, id: string, props?: AwsConstructProps);
|
|
475
586
|
/**
|
|
476
587
|
* Adds a statement to the resource policy for a principal (i.e.
|
|
477
588
|
* account/role/service) to perform actions on this bucket and/or its
|
|
@@ -638,6 +749,100 @@ export declare class Bucket extends AwsConstructBase implements IBucket {
|
|
|
638
749
|
*/
|
|
639
750
|
arnForObjects(keyPattern: string): string;
|
|
640
751
|
private urlJoin;
|
|
752
|
+
/**
|
|
753
|
+
* Adds resource to the Terraform JSON output at Synth time.
|
|
754
|
+
*
|
|
755
|
+
* called by TerraformStack.prepareStack()
|
|
756
|
+
*/
|
|
757
|
+
toTerraform(): any;
|
|
758
|
+
}
|
|
759
|
+
/**
|
|
760
|
+
* The `Bucket` provides an [AWS S3 Bucket](https://aws.amazon.com/s3/).
|
|
761
|
+
*
|
|
762
|
+
* ```ts
|
|
763
|
+
* new storage.Bucket(stack, "MyWebsite", {
|
|
764
|
+
* path: path.join(__dirname, "dist"),
|
|
765
|
+
* });
|
|
766
|
+
* ```
|
|
767
|
+
*
|
|
768
|
+
* #### Public read access
|
|
769
|
+
*
|
|
770
|
+
* Enables `public` read access for all the files in the bucket. Dangerous and
|
|
771
|
+
* recommended to use edge.Distribution instead.
|
|
772
|
+
*
|
|
773
|
+
* Useful for hosting public files directly from S3.
|
|
774
|
+
*
|
|
775
|
+
* ```ts
|
|
776
|
+
* new storage.Bucket("MyBucket", {
|
|
777
|
+
* public: true
|
|
778
|
+
* });
|
|
779
|
+
* ```
|
|
780
|
+
*
|
|
781
|
+
* @resource aws_s3_bucket
|
|
782
|
+
* @terraconstruct storage.IBucket
|
|
783
|
+
*/
|
|
784
|
+
export declare class Bucket extends BucketBase implements IBucket {
|
|
785
|
+
static fromBucketName(scope: Construct, id: string, bucketName: string): IBucket;
|
|
786
|
+
/**
|
|
787
|
+
* Creates a Bucket construct that represents an external bucket.
|
|
788
|
+
*
|
|
789
|
+
* @param scope The parent creating construct (usually `this`).
|
|
790
|
+
* @param id The construct's name.
|
|
791
|
+
* @param attrs A `BucketAttributes` object. Can be obtained from a call to
|
|
792
|
+
* `bucket.export()` or manually created.
|
|
793
|
+
*/
|
|
794
|
+
static fromBucketAttributes(scope: Construct, id: string, attrs: BucketAttributes): IBucket;
|
|
795
|
+
/**
|
|
796
|
+
* Thrown an exception if the given bucket name is not valid.
|
|
797
|
+
*
|
|
798
|
+
* @param physicalName name of the bucket.
|
|
799
|
+
* @param allowLegacyBucketNaming allow legacy bucket naming style, default is false.
|
|
800
|
+
*/
|
|
801
|
+
static validateBucketName(physicalName: string, allowLegacyBucketNaming?: boolean): void;
|
|
802
|
+
readonly encryptionKey?: kms.IKey;
|
|
803
|
+
protected readonly resource: s3Bucket.S3Bucket | dataAwsS3Bucket.DataAwsS3Bucket;
|
|
804
|
+
protected readonly websiteConfig?: s3BucketWebsiteConfiguration.S3BucketWebsiteConfiguration;
|
|
805
|
+
protected readonly corsConfig?: s3BucketCorsConfiguration.S3BucketCorsConfiguration;
|
|
806
|
+
protected readonly originAccessIdentity?: OriginAccessIdentity;
|
|
807
|
+
/** @internal */
|
|
808
|
+
protected readonly _isWebsite: boolean;
|
|
809
|
+
/** @internal */
|
|
810
|
+
private readonly _versioned;
|
|
811
|
+
get bucketArn(): string;
|
|
812
|
+
get bucketName(): string;
|
|
813
|
+
get websiteDomainName(): string | undefined;
|
|
814
|
+
get websiteEndpoint(): string | undefined;
|
|
815
|
+
get versioned(): boolean;
|
|
816
|
+
get hostedZoneId(): string;
|
|
817
|
+
policy?: BucketPolicy;
|
|
818
|
+
protected autoCreatePolicy: boolean;
|
|
819
|
+
/**
|
|
820
|
+
* Whether the bucket is public or not.
|
|
821
|
+
*/
|
|
822
|
+
readonly public?: boolean;
|
|
823
|
+
private readonly eventBridgeEnabled?;
|
|
824
|
+
constructor(scope: Construct, name: string, props?: BucketProps);
|
|
825
|
+
/**
|
|
826
|
+
* Set up key properties and return the Bucket encryption property from the
|
|
827
|
+
* user's configuration, according to the following table:
|
|
828
|
+
*
|
|
829
|
+
* | props.encryption | props.encryptionKey | props.bucketKeyEnabled | bucketEncryption (return value) | encryptionKey (return value) |
|
|
830
|
+
* |------------------|---------------------|------------------------|---------------------------------|------------------------------|
|
|
831
|
+
* | undefined | undefined | e | undefined | undefined |
|
|
832
|
+
* | UNENCRYPTED | undefined | false | undefined | undefined |
|
|
833
|
+
* | undefined | k | e | SSE-KMS, bucketKeyEnabled = e | k |
|
|
834
|
+
* | KMS | k | e | SSE-KMS, bucketKeyEnabled = e | k |
|
|
835
|
+
* | KMS | undefined | e | SSE-KMS, bucketKeyEnabled = e | new key |
|
|
836
|
+
* | KMS_MANAGED | undefined | e | SSE-KMS, bucketKeyEnabled = e | undefined |
|
|
837
|
+
* | S3_MANAGED | undefined | false | SSE-S3 | undefined |
|
|
838
|
+
* | S3_MANAGED | undefined | e | SSE-S3, bucketKeyEnabled = e | undefined |
|
|
839
|
+
* | UNENCRYPTED | undefined | true | ERROR! | ERROR! |
|
|
840
|
+
* | UNENCRYPTED | k | e | ERROR! | ERROR! |
|
|
841
|
+
* | KMS_MANAGED | k | e | ERROR! | ERROR! |
|
|
842
|
+
* | S3_MANAGED | undefined | true | ERROR! | ERROR! |
|
|
843
|
+
* | S3_MANAGED | k | e | ERROR! | ERROR! |
|
|
844
|
+
*/
|
|
845
|
+
private parseEncryption;
|
|
641
846
|
/**
|
|
642
847
|
* Adds an iam statement to enforce SSL requests only.
|
|
643
848
|
*/
|
|
@@ -647,12 +852,6 @@ export declare class Bucket extends AwsConstructBase implements IBucket {
|
|
|
647
852
|
* version only.
|
|
648
853
|
*/
|
|
649
854
|
private minimumTLSVersionStatement;
|
|
650
|
-
/**
|
|
651
|
-
* Adds resource to the Terraform JSON output at Synth time.
|
|
652
|
-
*
|
|
653
|
-
* called by TerraformStack.prepareStack()
|
|
654
|
-
*/
|
|
655
|
-
toTerraform(): any;
|
|
656
855
|
}
|
|
657
856
|
export interface AddSourceOptions {
|
|
658
857
|
/**
|
|
@@ -723,6 +922,40 @@ export declare enum StorageClass {
|
|
|
723
922
|
*/
|
|
724
923
|
INTELLIGENT_TIERING = "INTELLIGENT_TIERING"
|
|
725
924
|
}
|
|
925
|
+
/**
|
|
926
|
+
* What kind of server-side encryption to apply to this bucket
|
|
927
|
+
*/
|
|
928
|
+
export declare enum BucketEncryption {
|
|
929
|
+
/**
|
|
930
|
+
* Previous option. Buckets can not be unencrypted now.
|
|
931
|
+
* @see https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html
|
|
932
|
+
* @deprecated S3 applies server-side encryption with SSE-S3 for every bucket
|
|
933
|
+
* that default encryption is not configured.
|
|
934
|
+
*/
|
|
935
|
+
UNENCRYPTED = "UNENCRYPTED",
|
|
936
|
+
/**
|
|
937
|
+
* Server-side KMS encryption with a master key managed by KMS.
|
|
938
|
+
*/
|
|
939
|
+
KMS_MANAGED = "KMS_MANAGED",
|
|
940
|
+
/**
|
|
941
|
+
* Server-side encryption with a master key managed by S3.
|
|
942
|
+
*/
|
|
943
|
+
S3_MANAGED = "S3_MANAGED",
|
|
944
|
+
/**
|
|
945
|
+
* Server-side encryption with a KMS key managed by the user.
|
|
946
|
+
* If `encryptionKey` is specified, this key will be used, otherwise, one will be defined.
|
|
947
|
+
*/
|
|
948
|
+
KMS = "KMS",
|
|
949
|
+
/**
|
|
950
|
+
* Double server-side KMS encryption with a master key managed by KMS.
|
|
951
|
+
*/
|
|
952
|
+
DSSE_MANAGED = "DSSE_MANAGED",
|
|
953
|
+
/**
|
|
954
|
+
* Double server-side encryption with a KMS key managed by the user.
|
|
955
|
+
* If `encryptionKey` is specified, this key will be used, otherwise, one will be defined.
|
|
956
|
+
*/
|
|
957
|
+
DSSE = "DSSE"
|
|
958
|
+
}
|
|
726
959
|
/**
|
|
727
960
|
* Notification event types.
|
|
728
961
|
* @link https://docs.aws.amazon.com/AmazonS3/latest/userguide/notification-how-to-event-types-and-destinations.html#supported-notification-event-types
|