UNPKG

667 kBPlain TextView Raw
1{
2 "author": {
3 "name": "Amazon Web Services",
4 "organization": true,
5 "roles": [
6 "author"
7 ],
8 "url": "https://aws.amazon.com"
9 },
10 "dependencies": {
11 "@aws-cdk/aws-events": "1.156.1",
12 "@aws-cdk/aws-iam": "1.156.1",
13 "@aws-cdk/aws-kms": "1.156.1",
14 "@aws-cdk/core": "1.156.1",
15 "@aws-cdk/cx-api": "1.156.1",
16 "constructs": "^3.3.69"
17 },
18 "dependencyClosure": {
19 "@aws-cdk/aws-events": {
20 "targets": {
21 "dotnet": {
22 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
23 "namespace": "Amazon.CDK.AWS.Events",
24 "packageId": "Amazon.CDK.AWS.Events"
25 },
26 "java": {
27 "maven": {
28 "artifactId": "events",
29 "groupId": "software.amazon.awscdk"
30 },
31 "package": "software.amazon.awscdk.services.events"
32 },
33 "js": {
34 "npm": "@aws-cdk/aws-events"
35 },
36 "python": {
37 "classifiers": [
38 "Framework :: AWS CDK",
39 "Framework :: AWS CDK :: 1"
40 ],
41 "distName": "aws-cdk.aws-events",
42 "module": "aws_cdk.aws_events"
43 }
44 }
45 },
46 "@aws-cdk/aws-iam": {
47 "targets": {
48 "dotnet": {
49 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
50 "namespace": "Amazon.CDK.AWS.IAM",
51 "packageId": "Amazon.CDK.AWS.IAM"
52 },
53 "java": {
54 "maven": {
55 "artifactId": "iam",
56 "groupId": "software.amazon.awscdk"
57 },
58 "package": "software.amazon.awscdk.services.iam"
59 },
60 "js": {
61 "npm": "@aws-cdk/aws-iam"
62 },
63 "python": {
64 "classifiers": [
65 "Framework :: AWS CDK",
66 "Framework :: AWS CDK :: 1"
67 ],
68 "distName": "aws-cdk.aws-iam",
69 "module": "aws_cdk.aws_iam"
70 }
71 }
72 },
73 "@aws-cdk/aws-kms": {
74 "targets": {
75 "dotnet": {
76 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
77 "namespace": "Amazon.CDK.AWS.KMS",
78 "packageId": "Amazon.CDK.AWS.KMS"
79 },
80 "java": {
81 "maven": {
82 "artifactId": "kms",
83 "groupId": "software.amazon.awscdk"
84 },
85 "package": "software.amazon.awscdk.services.kms"
86 },
87 "js": {
88 "npm": "@aws-cdk/aws-kms"
89 },
90 "python": {
91 "classifiers": [
92 "Framework :: AWS CDK",
93 "Framework :: AWS CDK :: 1"
94 ],
95 "distName": "aws-cdk.aws-kms",
96 "module": "aws_cdk.aws_kms"
97 }
98 }
99 },
100 "@aws-cdk/cloud-assembly-schema": {
101 "targets": {
102 "dotnet": {
103 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
104 "namespace": "Amazon.CDK.CloudAssembly.Schema",
105 "packageId": "Amazon.CDK.CloudAssembly.Schema"
106 },
107 "java": {
108 "maven": {
109 "artifactId": "cdk-cloud-assembly-schema",
110 "groupId": "software.amazon.awscdk"
111 },
112 "package": "software.amazon.awscdk.cloudassembly.schema"
113 },
114 "js": {
115 "npm": "@aws-cdk/cloud-assembly-schema"
116 },
117 "python": {
118 "classifiers": [
119 "Framework :: AWS CDK",
120 "Framework :: AWS CDK :: 1"
121 ],
122 "distName": "aws-cdk.cloud-assembly-schema",
123 "module": "aws_cdk.cloud_assembly_schema"
124 }
125 }
126 },
127 "@aws-cdk/core": {
128 "targets": {
129 "dotnet": {
130 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
131 "namespace": "Amazon.CDK",
132 "packageId": "Amazon.CDK"
133 },
134 "java": {
135 "maven": {
136 "artifactId": "core",
137 "groupId": "software.amazon.awscdk"
138 },
139 "package": "software.amazon.awscdk.core"
140 },
141 "js": {
142 "npm": "@aws-cdk/core"
143 },
144 "python": {
145 "classifiers": [
146 "Framework :: AWS CDK",
147 "Framework :: AWS CDK :: 1"
148 ],
149 "distName": "aws-cdk.core",
150 "module": "aws_cdk.core"
151 }
152 }
153 },
154 "@aws-cdk/cx-api": {
155 "targets": {
156 "dotnet": {
157 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
158 "namespace": "Amazon.CDK.CXAPI",
159 "packageId": "Amazon.CDK.CXAPI"
160 },
161 "java": {
162 "maven": {
163 "artifactId": "cdk-cx-api",
164 "groupId": "software.amazon.awscdk"
165 },
166 "package": "software.amazon.awscdk.cxapi"
167 },
168 "js": {
169 "npm": "@aws-cdk/cx-api"
170 },
171 "python": {
172 "classifiers": [
173 "Framework :: AWS CDK",
174 "Framework :: AWS CDK :: 1"
175 ],
176 "distName": "aws-cdk.cx-api",
177 "module": "aws_cdk.cx_api"
178 }
179 }
180 },
181 "@aws-cdk/region-info": {
182 "targets": {
183 "dotnet": {
184 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
185 "namespace": "Amazon.CDK.RegionInfo",
186 "packageId": "Amazon.CDK.RegionInfo"
187 },
188 "java": {
189 "maven": {
190 "artifactId": "cdk-region-info",
191 "groupId": "software.amazon.awscdk"
192 },
193 "package": "software.amazon.awscdk.regioninfo"
194 },
195 "js": {
196 "npm": "@aws-cdk/region-info"
197 },
198 "python": {
199 "classifiers": [
200 "Framework :: AWS CDK",
201 "Framework :: AWS CDK :: 1"
202 ],
203 "distName": "aws-cdk.region-info",
204 "module": "aws_cdk.region_info"
205 }
206 }
207 },
208 "constructs": {
209 "targets": {
210 "dotnet": {
211 "namespace": "Constructs",
212 "packageId": "Constructs"
213 },
214 "go": {
215 "moduleName": "github.com/aws/constructs-go"
216 },
217 "java": {
218 "maven": {
219 "artifactId": "constructs",
220 "groupId": "software.constructs"
221 },
222 "package": "software.constructs"
223 },
224 "js": {
225 "npm": "constructs"
226 },
227 "python": {
228 "distName": "constructs",
229 "module": "constructs"
230 }
231 }
232 }
233 },
234 "description": "The CDK Construct Library for AWS::S3",
235 "docs": {
236 "stability": "stable"
237 },
238 "homepage": "https://github.com/aws/aws-cdk",
239 "jsiiVersion": "1.58.0 (build f8ba112)",
240 "keywords": [
241 "aws",
242 "cdk",
243 "constructs",
244 "s3"
245 ],
246 "license": "Apache-2.0",
247 "metadata": {
248 "jsii": {
249 "compiledWithDeprecationWarnings": true,
250 "pacmak": {
251 "hasDefaultInterfaces": true
252 },
253 "rosetta": {
254 "strict": true
255 }
256 }
257 },
258 "name": "@aws-cdk/aws-s3",
259 "readme": {
260 "markdown": "# Amazon S3 Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n![cfn-resources: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)\n\n![cdk-constructs: Stable](https://img.shields.io/badge/cdk--constructs-stable-success.svg?style=for-the-badge)\n\n---\n\n<!--END STABILITY BANNER-->\n\nDefine an unencrypted S3 bucket.\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyFirstBucket');\n```\n\n`Bucket` constructs expose the following deploy-time attributes:\n\n * `bucketArn` - the ARN of the bucket (i.e. `arn:aws:s3:::bucket_name`)\n * `bucketName` - the name of the bucket (i.e. `bucket_name`)\n * `bucketWebsiteUrl` - the Website URL of the bucket (i.e.\n `http://bucket_name.s3-website-us-west-1.amazonaws.com`)\n * `bucketDomainName` - the URL of the bucket (i.e. `bucket_name.s3.amazonaws.com`)\n * `bucketDualStackDomainName` - the dual-stack URL of the bucket (i.e.\n `bucket_name.s3.dualstack.eu-west-1.amazonaws.com`)\n * `bucketRegionalDomainName` - the regional URL of the bucket (i.e.\n `bucket_name.s3.eu-west-1.amazonaws.com`)\n * `arnForObjects(pattern)` - the ARN of an object or objects within the bucket (i.e.\n `arn:aws:s3:::bucket_name/exampleobject.png` or\n `arn:aws:s3:::bucket_name/Development/*`)\n * `urlForObject(key)` - the HTTP URL of an object within the bucket (i.e.\n `https://s3.cn-north-1.amazonaws.com.cn/china-bucket/mykey`)\n * `virtualHostedUrlForObject(key)` - the virtual-hosted style HTTP URL of an object\n within the bucket (i.e. `https://china-bucket-s3.cn-north-1.amazonaws.com.cn/mykey`)\n * `s3UrlForObject(key)` - the S3 URL of an object within the bucket (i.e.\n `s3://bucket/mykey`)\n\n## Encryption\n\nDefine a KMS-encrypted bucket:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyEncryptedBucket', {\n encryption: s3.BucketEncryption.KMS,\n});\n\n// you can access the encryption key:\nassert(bucket.encryptionKey instanceof kms.Key);\n```\n\nYou can also supply your own key:\n\n```ts\nconst myKmsKey = new kms.Key(this, 'MyKey');\n\nconst bucket = new s3.Bucket(this, 'MyEncryptedBucket', {\n encryption: s3.BucketEncryption.KMS,\n encryptionKey: myKmsKey,\n});\n\nassert(bucket.encryptionKey === myKmsKey);\n```\n\nEnable KMS-SSE encryption via [S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html):\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyEncryptedBucket', {\n encryption: s3.BucketEncryption.KMS,\n bucketKeyEnabled: true,\n});\n```\n\nUse `BucketEncryption.ManagedKms` to use the S3 master KMS key:\n\n```ts\nconst bucket = new s3.Bucket(this, 'Buck', {\n encryption: s3.BucketEncryption.KMS_MANAGED,\n});\n\nassert(bucket.encryptionKey == null);\n```\n\n## Permissions\n\nA bucket policy will be automatically created for the bucket upon the first call to\n`addToResourcePolicy(statement)`:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBucket');\nconst result = bucket.addToResourcePolicy(new iam.PolicyStatement({\n actions: ['s3:GetObject'],\n resources: [bucket.arnForObjects('file.txt')],\n principals: [new iam.AccountRootPrincipal()],\n}));\n```\n\nIf you try to add a policy statement to an existing bucket, this method will\nnot do anything:\n\n```ts\nconst bucket = s3.Bucket.fromBucketName(this, 'existingBucket', 'bucket-name');\n\n// No policy statement will be added to the resource\nconst result = bucket.addToResourcePolicy(new iam.PolicyStatement({\n actions: ['s3:GetObject'],\n resources: [bucket.arnForObjects('file.txt')],\n principals: [new iam.AccountRootPrincipal()],\n}));\n```\n\nThat's because it's not possible to tell whether the bucket\nalready has a policy attached, let alone to re-use that policy to add more\nstatements to it. We recommend that you always check the result of the call:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBucket');\nconst result = bucket.addToResourcePolicy(new iam.PolicyStatement({\n actions: ['s3:GetObject'],\n resources: [bucket.arnForObjects('file.txt')],\n principals: [new iam.AccountRootPrincipal()],\n}));\n\nif (!result.statementAdded) {\n // Uh-oh! Someone probably made a mistake here.\n}\n```\n\nThe bucket policy can be directly accessed after creation to add statements or\nadjust the removal policy.\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBucket');\nbucket.policy?.applyRemovalPolicy(cdk.RemovalPolicy.RETAIN);\n```\n\nMost of the time, you won't have to manipulate the bucket policy directly.\nInstead, buckets have \"grant\" methods called to give prepackaged sets of permissions\nto other resources. For example:\n\n```ts\ndeclare const myLambda: lambda.Function;\n\nconst bucket = new s3.Bucket(this, 'MyBucket');\nbucket.grantReadWrite(myLambda);\n```\n\nWill give the Lambda's execution role permissions to read and write\nfrom the bucket.\n\n## AWS Foundational Security Best Practices\n\n### Enforcing SSL\n\nTo require all requests use Secure Socket Layer (SSL):\n\n```ts\nconst bucket = new s3.Bucket(this, 'Bucket', {\n enforceSSL: true,\n});\n```\n\n## Sharing buckets between stacks\n\nTo use a bucket in a different stack in the same CDK application, pass the object to the other stack:\n\n```ts lit=test/integ.bucket-sharing.lit.ts\n\n/**\n * Stack that defines the bucket\n */\nclass Producer extends cdk.Stack {\n public readonly myBucket: s3.Bucket;\n\n constructor(scope: cdk.App, id: string, props?: cdk.StackProps) {\n super(scope, id, props);\n\n const bucket = new s3.Bucket(this, 'MyBucket', {\n removalPolicy: cdk.RemovalPolicy.DESTROY,\n });\n this.myBucket = bucket;\n }\n}\n\ninterface ConsumerProps extends cdk.StackProps {\n userBucket: s3.IBucket;\n}\n\n/**\n * Stack that consumes the bucket\n */\nclass Consumer extends cdk.Stack {\n constructor(scope: cdk.App, id: string, props: ConsumerProps) {\n super(scope, id, props);\n\n const user = new iam.User(this, 'MyUser');\n props.userBucket.grantReadWrite(user);\n }\n}\n\nconst producer = new Producer(app, 'ProducerStack');\nnew Consumer(app, 'ConsumerStack', { userBucket: producer.myBucket });\n```\n\n## Importing existing buckets\n\nTo import an existing bucket into your CDK application, use the `Bucket.fromBucketAttributes`\nfactory method. This method accepts `BucketAttributes` which describes the properties of an already\nexisting bucket:\n\n```ts\ndeclare const myLambda: lambda.Function;\nconst bucket = s3.Bucket.fromBucketAttributes(this, 'ImportedBucket', {\n bucketArn: 'arn:aws:s3:::my-bucket',\n});\n\n// now you can just call methods on the bucket\nbucket.addEventNotification(s3.EventType.OBJECT_CREATED, new s3n.LambdaDestination(myLambda), {prefix: 'home/myusername/*'});\n```\n\nAlternatively, short-hand factories are available as `Bucket.fromBucketName` and\n`Bucket.fromBucketArn`, which will derive all bucket attributes from the bucket\nname or ARN respectively:\n\n```ts\nconst byName = s3.Bucket.fromBucketName(this, 'BucketByName', 'my-bucket');\nconst byArn = s3.Bucket.fromBucketArn(this, 'BucketByArn', 'arn:aws:s3:::my-bucket');\n```\n\nThe bucket's region defaults to the current stack's region, but can also be explicitly set in cases where one of the bucket's\nregional properties needs to contain the correct values.\n\n```ts\nconst myCrossRegionBucket = s3.Bucket.fromBucketAttributes(this, 'CrossRegionImport', {\n bucketArn: 'arn:aws:s3:::my-bucket',\n region: 'us-east-1',\n});\n// myCrossRegionBucket.bucketRegionalDomainName === 'my-bucket.s3.us-east-1.amazonaws.com'\n```\n\n## Bucket Notifications\n\nThe Amazon S3 notification feature enables you to receive notifications when\ncertain events happen in your bucket as described under [S3 Bucket\nNotifications] of the S3 Developer Guide.\n\nTo subscribe for bucket notifications, use the `bucket.addEventNotification` method. The\n`bucket.addObjectCreatedNotification` and `bucket.addObjectRemovedNotification` can also be used for\nthese common use cases.\n\nThe following example will subscribe an SNS topic to be notified of all `s3:ObjectCreated:*` events:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBucket');\nconst topic = new sns.Topic(this, 'MyTopic');\nbucket.addEventNotification(s3.EventType.OBJECT_CREATED, new s3n.SnsDestination(topic));\n```\n\nThis call will also ensure that the topic policy can accept notifications for\nthis specific bucket.\n\nSupported S3 notification targets are exposed by the `@aws-cdk/aws-s3-notifications` package.\n\nIt is also possible to specify S3 object key filters when subscribing. The\nfollowing example will notify `myQueue` when objects prefixed with `foo/` and\nhave the `.jpg` suffix are removed from the bucket.\n\n```ts\ndeclare const myQueue: sqs.Queue;\nconst bucket = new s3.Bucket(this, 'MyBucket');\nbucket.addEventNotification(s3.EventType.OBJECT_REMOVED,\n new s3n.SqsDestination(myQueue),\n { prefix: 'foo/', suffix: '.jpg' });\n```\n\nAdding notifications on existing buckets:\n\n```ts\ndeclare const topic: sns.Topic;\nconst bucket = s3.Bucket.fromBucketAttributes(this, 'ImportedBucket', {\n bucketArn: 'arn:aws:s3:::my-bucket',\n});\nbucket.addEventNotification(s3.EventType.OBJECT_CREATED, new s3n.SnsDestination(topic));\n```\n\nWhen you add an event notification to a bucket, a custom resource is created to\nmanage the notifications. By default, a new role is created for the Lambda\nfunction that implements this feature. If you want to use your own role instead,\nyou should provide it in the `Bucket` constructor:\n\n```ts\ndeclare const myRole: iam.IRole;\nconst bucket = new s3.Bucket(this, 'MyBucket', {\n notificationsHandlerRole: myRole,\n});\n```\n\nWhatever role you provide, the CDK will try to modify it by adding the\npermissions from `AWSLambdaBasicExecutionRole` (an AWS managed policy) as well\nas the permissions `s3:PutBucketNotification` and `s3:GetBucketNotification`.\nIf you’re passing an imported role, and you don’t want this to happen, configure\nit to be immutable:\n\n```ts\nconst importedRole = iam.Role.fromRoleArn(this, 'role', 'arn:aws:iam::123456789012:role/RoleName', {\n mutable: false,\n});\n```\n\n> If you provide an imported immutable role, make sure that it has at least all\n> the permissions mentioned above. Otherwise, the deployment will fail!\n\n[S3 Bucket Notifications]: https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html\n\n\n### EventBridge notifications\n\nAmazon S3 can send events to Amazon EventBridge whenever certain events happen in your bucket.\nUnlike other destinations, you don't need to select which event types you want to deliver.\n\nThe following example will enable EventBridge notifications:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyEventBridgeBucket', {\n eventBridgeEnabled: true,\n});\n```\n\n[S3 EventBridge notifications]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/EventBridge.html\n\n## Block Public Access\n\nUse `blockPublicAccess` to specify [block public access settings] on the bucket.\n\nEnable all block public access settings:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBlockedBucket', {\n blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL,\n});\n```\n\nBlock and ignore public ACLs:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBlockedBucket', {\n blockPublicAccess: s3.BlockPublicAccess.BLOCK_ACLS,\n});\n```\n\nAlternatively, specify the settings manually:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBlockedBucket', {\n blockPublicAccess: new s3.BlockPublicAccess({ blockPublicPolicy: true }),\n});\n```\n\nWhen `blockPublicPolicy` is set to `true`, `grantPublicRead()` throws an error.\n\n[block public access settings]: https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html\n\n## Logging configuration\n\nUse `serverAccessLogsBucket` to describe where server access logs are to be stored.\n\n```ts\nconst accessLogsBucket = new s3.Bucket(this, 'AccessLogsBucket');\n\nconst bucket = new s3.Bucket(this, 'MyBucket', {\n serverAccessLogsBucket: accessLogsBucket,\n});\n```\n\nIt's also possible to specify a prefix for Amazon S3 to assign to all log object keys.\n\n```ts\nconst accessLogsBucket = new s3.Bucket(this, 'AccessLogsBucket');\n\nconst bucket = new s3.Bucket(this, 'MyBucket', {\n serverAccessLogsBucket: accessLogsBucket,\n serverAccessLogsPrefix: 'logs',\n});\n```\n\n[S3 Server access logging]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html\n\n## S3 Inventory\n\nAn [inventory](https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html) contains a list of the objects in the source bucket and metadata for each object. The inventory lists are stored in the destination bucket as a CSV file compressed with GZIP, as an Apache optimized row columnar (ORC) file compressed with ZLIB, or as an Apache Parquet (Parquet) file compressed with Snappy.\n\nYou can configure multiple inventory lists for a bucket. You can configure what object metadata to include in the inventory, whether to list all object versions or only current versions, where to store the inventory list file output, and whether to generate the inventory on a daily or weekly basis.\n\n```ts\nconst inventoryBucket = new s3.Bucket(this, 'InventoryBucket');\n\nconst dataBucket = new s3.Bucket(this, 'DataBucket', {\n inventories: [\n {\n frequency: s3.InventoryFrequency.DAILY,\n includeObjectVersions: s3.InventoryObjectVersion.CURRENT,\n destination: {\n bucket: inventoryBucket,\n },\n },\n {\n frequency: s3.InventoryFrequency.WEEKLY,\n includeObjectVersions: s3.InventoryObjectVersion.ALL,\n destination: {\n bucket: inventoryBucket,\n prefix: 'with-all-versions',\n },\n },\n ],\n});\n```\n\nIf the destination bucket is created as part of the same CDK application, the necessary permissions will be automatically added to the bucket policy.\nHowever, if you use an imported bucket (i.e `Bucket.fromXXX()`), you'll have to make sure it contains the following policy document:\n\n```json\n{\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Sid\": \"InventoryAndAnalyticsExamplePolicy\",\n \"Effect\": \"Allow\",\n \"Principal\": { \"Service\": \"s3.amazonaws.com\" },\n \"Action\": \"s3:PutObject\",\n \"Resource\": [\"arn:aws:s3:::destinationBucket/*\"]\n }\n ]\n}\n```\n\n## Website redirection\n\nYou can use the two following properties to specify the bucket [redirection policy]. Please note that these methods cannot both be applied to the same bucket.\n\n[redirection policy]: https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html#advanced-conditional-redirects\n\n### Static redirection\n\nYou can statically redirect a to a given Bucket URL or any other host name with `websiteRedirect`:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyRedirectedBucket', {\n websiteRedirect: { hostName: 'www.example.com' },\n});\n```\n\n### Routing rules\n\nAlternatively, you can also define multiple `websiteRoutingRules`, to define complex, conditional redirections:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyRedirectedBucket', {\n websiteRoutingRules: [{\n hostName: 'www.example.com',\n httpRedirectCode: '302',\n protocol: s3.RedirectProtocol.HTTPS,\n replaceKey: s3.ReplaceKey.prefixWith('test/'),\n condition: {\n httpErrorCodeReturnedEquals: '200',\n keyPrefixEquals: 'prefix',\n },\n }],\n});\n```\n\n## Filling the bucket as part of deployment\n\nTo put files into a bucket as part of a deployment (for example, to host a\nwebsite), see the `@aws-cdk/aws-s3-deployment` package, which provides a\nresource that can do just that.\n\n## The URL for objects\n\nS3 provides two types of URLs for accessing objects via HTTP(S). Path-Style and\n[Virtual Hosted-Style](https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html)\nURL. Path-Style is a classic way and will be\n[deprecated](https://aws.amazon.com/jp/blogs/aws/amazon-s3-path-deprecation-plan-the-rest-of-the-story).\nWe recommend to use Virtual Hosted-Style URL for newly made bucket.\n\nYou can generate both of them.\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBucket');\nbucket.urlForObject('objectname'); // Path-Style URL\nbucket.virtualHostedUrlForObject('objectname'); // Virtual Hosted-Style URL\nbucket.virtualHostedUrlForObject('objectname', { regional: false }); // Virtual Hosted-Style URL but non-regional\n```\n\n## Object Ownership\n\nYou can use one of following properties to specify the bucket [object Ownership].\n\n[object Ownership]: https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html\n\n### Object writer\n\nThe Uploading account will own the object.\n\n```ts\nnew s3.Bucket(this, 'MyBucket', {\n objectOwnership: s3.ObjectOwnership.OBJECT_WRITER,\n});\n```\n\n### Bucket owner preferred\n\nThe bucket owner will own the object if the object is uploaded with the bucket-owner-full-control canned ACL. Without this setting and canned ACL, the object is uploaded and remains owned by the uploading account.\n\n```ts\nnew s3.Bucket(this, 'MyBucket', {\n objectOwnership: s3.ObjectOwnership.BUCKET_OWNER_PREFERRED,\n});\n```\n\n### Bucket owner enforced (recommended)\n\nACLs are disabled, and the bucket owner automatically owns and has full control over every object in the bucket. ACLs no longer affect permissions to data in the S3 bucket. The bucket uses policies to define access control.\n\n```ts\nnew s3.Bucket(this, 'MyBucket', {\n objectOwnership: s3.ObjectOwnership.BUCKET_OWNER_ENFORCED,\n});\n```\n\n## Bucket deletion\n\nWhen a bucket is removed from a stack (or the stack is deleted), the S3\nbucket will be removed according to its removal policy (which by default will\nsimply orphan the bucket and leave it in your AWS account). If the removal\npolicy is set to `RemovalPolicy.DESTROY`, the bucket will be deleted as long\nas it does not contain any objects.\n\nTo override this and force all objects to get deleted during bucket deletion,\nenable the`autoDeleteObjects` option.\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyTempFileBucket', {\n removalPolicy: cdk.RemovalPolicy.DESTROY,\n autoDeleteObjects: true,\n});\n```\n\n**Warning** if you have deployed a bucket with `autoDeleteObjects: true`,\nswitching this to `false` in a CDK version *before* `1.126.0` will lead to\nall objects in the bucket being deleted. Be sure to update your bucket resources\nby deploying with CDK version `1.126.0` or later **before** switching this value to `false`.\n\n## Transfer Acceleration\n\n[Transfer Acceleration](https://docs.aws.amazon.com/AmazonS3/latest/userguide/transfer-acceleration.html) can be configured to enable fast, easy, and secure transfers of files over long distances:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBucket', {\n transferAcceleration: true,\n});\n```\n\nTo access the bucket that is enabled for Transfer Acceleration, you must use a special endpoint. The URL can be generated using method `transferAccelerationUrlForObject`:\n\n```ts\nconst bucket = new s3.Bucket(this, 'MyBucket', {\n transferAcceleration: true,\n});\nbucket.transferAccelerationUrlForObject('objectname');\n```\n\n## Intelligent Tiering\n\n[Intelligent Tiering](https://docs.aws.amazon.com/AmazonS3/latest/userguide/intelligent-tiering.html) can be configured to automatically move files to glacier:\n\n```ts\n new s3.Bucket(this, 'MyBucket', {\n intelligentTieringConfigurations: [{\n name: 'foo',\n prefix: 'folder/name',\n archiveAccessTierTime: cdk.Duration.days(90),\n deepArchiveAccessTierTime: cdk.Duration.days(180),\n tags: [{key: 'tagname', value: 'tagvalue'}]\n }],\n});\n\n```\n"
261 },
262 "repository": {
263 "directory": "packages/@aws-cdk/aws-s3",
264 "type": "git",
265 "url": "https://github.com/aws/aws-cdk.git"
266 },
267 "schema": "jsii/0.10.0",
268 "targets": {
269 "dotnet": {
270 "iconUrl": "https://raw.githubusercontent.com/aws/aws-cdk/master/logo/default-256-dark.png",
271 "namespace": "Amazon.CDK.AWS.S3",
272 "packageId": "Amazon.CDK.AWS.S3"
273 },
274 "java": {
275 "maven": {
276 "artifactId": "s3",
277 "groupId": "software.amazon.awscdk"
278 },
279 "package": "software.amazon.awscdk.services.s3"
280 },
281 "js": {
282 "npm": "@aws-cdk/aws-s3"
283 },
284 "python": {
285 "classifiers": [
286 "Framework :: AWS CDK",
287 "Framework :: AWS CDK :: 1"
288 ],
289 "distName": "aws-cdk.aws-s3",
290 "module": "aws_cdk.aws_s3"
291 }
292 },
293 "types": {
294 "@aws-cdk/aws-s3.BlockPublicAccess": {
295 "assembly": "@aws-cdk/aws-s3",
296 "docs": {
297 "custom": {
298 "exampleMetadata": "infused"
299 },
300 "example": "const bucket = new s3.Bucket(this, 'MyBlockedBucket', {\n blockPublicAccess: s3.BlockPublicAccess.BLOCK_ALL,\n});",
301 "stability": "stable"
302 },
303 "fqn": "@aws-cdk/aws-s3.BlockPublicAccess",
304 "initializer": {
305 "docs": {
306 "stability": "stable"
307 },
308 "locationInModule": {
309 "filename": "lib/bucket.ts",
310 "line": 980
311 },
312 "parameters": [
313 {
314 "name": "options",
315 "type": {
316 "fqn": "@aws-cdk/aws-s3.BlockPublicAccessOptions"
317 }
318 }
319 ]
320 },
321 "kind": "class",
322 "locationInModule": {
323 "filename": "lib/bucket.ts",
324 "line": 962
325 },
326 "name": "BlockPublicAccess",
327 "properties": [
328 {
329 "const": true,
330 "docs": {
331 "stability": "stable"
332 },
333 "immutable": true,
334 "locationInModule": {
335 "filename": "lib/bucket.ts",
336 "line": 970
337 },
338 "name": "BLOCK_ACLS",
339 "static": true,
340 "type": {
341 "fqn": "@aws-cdk/aws-s3.BlockPublicAccess"
342 }
343 },
344 {
345 "const": true,
346 "docs": {
347 "stability": "stable"
348 },
349 "immutable": true,
350 "locationInModule": {
351 "filename": "lib/bucket.ts",
352 "line": 963
353 },
354 "name": "BLOCK_ALL",
355 "static": true,
356 "type": {
357 "fqn": "@aws-cdk/aws-s3.BlockPublicAccess"
358 }
359 },
360 {
361 "docs": {
362 "stability": "stable"
363 },
364 "locationInModule": {
365 "filename": "lib/bucket.ts",
366 "line": 975
367 },
368 "name": "blockPublicAcls",
369 "optional": true,
370 "type": {
371 "primitive": "boolean"
372 }
373 },
374 {
375 "docs": {
376 "stability": "stable"
377 },
378 "locationInModule": {
379 "filename": "lib/bucket.ts",
380 "line": 976
381 },
382 "name": "blockPublicPolicy",
383 "optional": true,
384 "type": {
385 "primitive": "boolean"
386 }
387 },
388 {
389 "docs": {
390 "stability": "stable"
391 },
392 "locationInModule": {
393 "filename": "lib/bucket.ts",
394 "line": 977
395 },
396 "name": "ignorePublicAcls",
397 "optional": true,
398 "type": {
399 "primitive": "boolean"
400 }
401 },
402 {
403 "docs": {
404 "stability": "stable"
405 },
406 "locationInModule": {
407 "filename": "lib/bucket.ts",
408 "line": 978
409 },
410 "name": "restrictPublicBuckets",
411 "optional": true,
412 "type": {
413 "primitive": "boolean"
414 }
415 }
416 ],
417 "symbolId": "lib/bucket:BlockPublicAccess"
418 },
419 "@aws-cdk/aws-s3.BlockPublicAccessOptions": {
420 "assembly": "@aws-cdk/aws-s3",
421 "datatype": true,
422 "docs": {
423 "custom": {
424 "exampleMetadata": "infused"
425 },
426 "example": "const bucket = new s3.Bucket(this, 'MyBlockedBucket', {\n blockPublicAccess: new s3.BlockPublicAccess({ blockPublicPolicy: true }),\n});",
427 "stability": "stable"
428 },
429 "fqn": "@aws-cdk/aws-s3.BlockPublicAccessOptions",
430 "kind": "interface",
431 "locationInModule": {
432 "filename": "lib/bucket.ts",
433 "line": 932
434 },
435 "name": "BlockPublicAccessOptions",
436 "properties": [
437 {
438 "abstract": true,
439 "docs": {
440 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-options",
441 "stability": "stable",
442 "summary": "Whether to block public ACLs."
443 },
444 "immutable": true,
445 "locationInModule": {
446 "filename": "lib/bucket.ts",
447 "line": 938
448 },
449 "name": "blockPublicAcls",
450 "optional": true,
451 "type": {
452 "primitive": "boolean"
453 }
454 },
455 {
456 "abstract": true,
457 "docs": {
458 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-options",
459 "stability": "stable",
460 "summary": "Whether to block public policy."
461 },
462 "immutable": true,
463 "locationInModule": {
464 "filename": "lib/bucket.ts",
465 "line": 945
466 },
467 "name": "blockPublicPolicy",
468 "optional": true,
469 "type": {
470 "primitive": "boolean"
471 }
472 },
473 {
474 "abstract": true,
475 "docs": {
476 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-options",
477 "stability": "stable",
478 "summary": "Whether to ignore public ACLs."
479 },
480 "immutable": true,
481 "locationInModule": {
482 "filename": "lib/bucket.ts",
483 "line": 952
484 },
485 "name": "ignorePublicAcls",
486 "optional": true,
487 "type": {
488 "primitive": "boolean"
489 }
490 },
491 {
492 "abstract": true,
493 "docs": {
494 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-options",
495 "stability": "stable",
496 "summary": "Whether to restrict public access."
497 },
498 "immutable": true,
499 "locationInModule": {
500 "filename": "lib/bucket.ts",
501 "line": 959
502 },
503 "name": "restrictPublicBuckets",
504 "optional": true,
505 "type": {
506 "primitive": "boolean"
507 }
508 }
509 ],
510 "symbolId": "lib/bucket:BlockPublicAccessOptions"
511 },
512 "@aws-cdk/aws-s3.Bucket": {
513 "assembly": "@aws-cdk/aws-s3",
514 "base": "@aws-cdk/aws-s3.BucketBase",
515 "docs": {
516 "custom": {
517 "exampleMetadata": "infused"
518 },
519 "example": "declare const ecrRepository: ecr.Repository;\n\nnew codebuild.Project(this, 'Project', {\n environment: {\n buildImage: codebuild.WindowsBuildImage.fromEcrRepository(ecrRepository, 'v1.0', codebuild.WindowsImageType.SERVER_2019),\n // optional certificate to include in the build image\n certificate: {\n bucket: s3.Bucket.fromBucketName(this, 'Bucket', 'my-bucket'),\n objectKey: 'path/to/cert.pem',\n },\n },\n // ...\n})",
520 "remarks": "This bucket does not yet have all features that exposed by the underlying\nBucketResource.",
521 "stability": "stable",
522 "summary": "An S3 bucket with associated policy objects."
523 },
524 "fqn": "@aws-cdk/aws-s3.Bucket",
525 "initializer": {
526 "docs": {
527 "stability": "stable"
528 },
529 "locationInModule": {
530 "filename": "lib/bucket.ts",
531 "line": 1662
532 },
533 "parameters": [
534 {
535 "name": "scope",
536 "type": {
537 "fqn": "constructs.Construct"
538 }
539 },
540 {
541 "name": "id",
542 "type": {
543 "primitive": "string"
544 }
545 },
546 {
547 "name": "props",
548 "optional": true,
549 "type": {
550 "fqn": "@aws-cdk/aws-s3.BucketProps"
551 }
552 }
553 ]
554 },
555 "kind": "class",
556 "locationInModule": {
557 "filename": "lib/bucket.ts",
558 "line": 1527
559 },
560 "methods": [
561 {
562 "docs": {
563 "stability": "stable"
564 },
565 "locationInModule": {
566 "filename": "lib/bucket.ts",
567 "line": 1529
568 },
569 "name": "fromBucketArn",
570 "parameters": [
571 {
572 "name": "scope",
573 "type": {
574 "fqn": "constructs.Construct"
575 }
576 },
577 {
578 "name": "id",
579 "type": {
580 "primitive": "string"
581 }
582 },
583 {
584 "name": "bucketArn",
585 "type": {
586 "primitive": "string"
587 }
588 }
589 ],
590 "returns": {
591 "type": {
592 "fqn": "@aws-cdk/aws-s3.IBucket"
593 }
594 },
595 "static": true
596 },
597 {
598 "docs": {
599 "stability": "stable",
600 "summary": "Creates a Bucket construct that represents an external bucket."
601 },
602 "locationInModule": {
603 "filename": "lib/bucket.ts",
604 "line": 1545
605 },
606 "name": "fromBucketAttributes",
607 "parameters": [
608 {
609 "docs": {
610 "summary": "The parent creating construct (usually `this`)."
611 },
612 "name": "scope",
613 "type": {
614 "fqn": "constructs.Construct"
615 }
616 },
617 {
618 "docs": {
619 "summary": "The construct's name."
620 },
621 "name": "id",
622 "type": {
623 "primitive": "string"
624 }
625 },
626 {
627 "docs": {
628 "remarks": "Can be obtained from a call to\n`bucket.export()` or manually created.",
629 "summary": "A `BucketAttributes` object."
630 },
631 "name": "attrs",
632 "type": {
633 "fqn": "@aws-cdk/aws-s3.BucketAttributes"
634 }
635 }
636 ],
637 "returns": {
638 "type": {
639 "fqn": "@aws-cdk/aws-s3.IBucket"
640 }
641 },
642 "static": true
643 },
644 {
645 "docs": {
646 "stability": "stable"
647 },
648 "locationInModule": {
649 "filename": "lib/bucket.ts",
650 "line": 1533
651 },
652 "name": "fromBucketName",
653 "parameters": [
654 {
655 "name": "scope",
656 "type": {
657 "fqn": "constructs.Construct"
658 }
659 },
660 {
661 "name": "id",
662 "type": {
663 "primitive": "string"
664 }
665 },
666 {
667 "name": "bucketName",
668 "type": {
669 "primitive": "string"
670 }
671 }
672 ],
673 "returns": {
674 "type": {
675 "fqn": "@aws-cdk/aws-s3.IBucket"
676 }
677 },
678 "static": true
679 },
680 {
681 "docs": {
682 "stability": "stable",
683 "summary": "Thrown an exception if the given bucket name is not valid."
684 },
685 "locationInModule": {
686 "filename": "lib/bucket.ts",
687 "line": 1599
688 },
689 "name": "validateBucketName",
690 "parameters": [
691 {
692 "docs": {
693 "summary": "name of the bucket."
694 },
695 "name": "physicalName",
696 "type": {
697 "primitive": "string"
698 }
699 }
700 ],
701 "static": true
702 },
703 {
704 "docs": {
705 "stability": "stable",
706 "summary": "Adds a cross-origin access configuration for objects in an Amazon S3 bucket."
707 },
708 "locationInModule": {
709 "filename": "lib/bucket.ts",
710 "line": 1784
711 },
712 "name": "addCorsRule",
713 "parameters": [
714 {
715 "docs": {
716 "summary": "The CORS configuration rule to add."
717 },
718 "name": "rule",
719 "type": {
720 "fqn": "@aws-cdk/aws-s3.CorsRule"
721 }
722 }
723 ]
724 },
725 {
726 "docs": {
727 "stability": "stable",
728 "summary": "Add an inventory configuration."
729 },
730 "locationInModule": {
731 "filename": "lib/bucket.ts",
732 "line": 1793
733 },
734 "name": "addInventory",
735 "parameters": [
736 {
737 "docs": {
738 "summary": "configuration to add."
739 },
740 "name": "inventory",
741 "type": {
742 "fqn": "@aws-cdk/aws-s3.Inventory"
743 }
744 }
745 ]
746 },
747 {
748 "docs": {
749 "stability": "stable",
750 "summary": "Add a lifecycle rule to the bucket."
751 },
752 "locationInModule": {
753 "filename": "lib/bucket.ts",
754 "line": 1760
755 },
756 "name": "addLifecycleRule",
757 "parameters": [
758 {
759 "docs": {
760 "summary": "The rule to add."
761 },
762 "name": "rule",
763 "type": {
764 "fqn": "@aws-cdk/aws-s3.LifecycleRule"
765 }
766 }
767 ]
768 },
769 {
770 "docs": {
771 "stability": "stable",
772 "summary": "Adds a metrics configuration for the CloudWatch request metrics from the bucket."
773 },
774 "locationInModule": {
775 "filename": "lib/bucket.ts",
776 "line": 1775
777 },
778 "name": "addMetric",
779 "parameters": [
780 {
781 "docs": {
782 "summary": "The metric configuration to add."
783 },
784 "name": "metric",
785 "type": {
786 "fqn": "@aws-cdk/aws-s3.BucketMetrics"
787 }
788 }
789 ]
790 }
791 ],
792 "name": "Bucket",
793 "properties": [
794 {
795 "docs": {
796 "stability": "stable",
797 "summary": "The ARN of the bucket."
798 },
799 "immutable": true,
800 "locationInModule": {
801 "filename": "lib/bucket.ts",
802 "line": 1640
803 },
804 "name": "bucketArn",
805 "overrides": "@aws-cdk/aws-s3.BucketBase",
806 "type": {
807 "primitive": "string"
808 }
809 },
810 {
811 "docs": {
812 "stability": "stable",
813 "summary": "The IPv4 DNS name of the specified bucket."
814 },
815 "immutable": true,
816 "locationInModule": {
817 "filename": "lib/bucket.ts",
818 "line": 1642
819 },
820 "name": "bucketDomainName",
821 "overrides": "@aws-cdk/aws-s3.BucketBase",
822 "type": {
823 "primitive": "string"
824 }
825 },
826 {
827 "docs": {
828 "stability": "stable",
829 "summary": "The IPv6 DNS name of the specified bucket."
830 },
831 "immutable": true,
832 "locationInModule": {
833 "filename": "lib/bucket.ts",
834 "line": 1645
835 },
836 "name": "bucketDualStackDomainName",
837 "overrides": "@aws-cdk/aws-s3.BucketBase",
838 "type": {
839 "primitive": "string"
840 }
841 },
842 {
843 "docs": {
844 "stability": "stable",
845 "summary": "The name of the bucket."
846 },
847 "immutable": true,
848 "locationInModule": {
849 "filename": "lib/bucket.ts",
850 "line": 1641
851 },
852 "name": "bucketName",
853 "overrides": "@aws-cdk/aws-s3.BucketBase",
854 "type": {
855 "primitive": "string"
856 }
857 },
858 {
859 "docs": {
860 "stability": "stable",
861 "summary": "The regional domain name of the specified bucket."
862 },
863 "immutable": true,
864 "locationInModule": {
865 "filename": "lib/bucket.ts",
866 "line": 1646
867 },
868 "name": "bucketRegionalDomainName",
869 "overrides": "@aws-cdk/aws-s3.BucketBase",
870 "type": {
871 "primitive": "string"
872 }
873 },
874 {
875 "docs": {
876 "stability": "stable",
877 "summary": "The Domain name of the static website."
878 },
879 "immutable": true,
880 "locationInModule": {
881 "filename": "lib/bucket.ts",
882 "line": 1644
883 },
884 "name": "bucketWebsiteDomainName",
885 "overrides": "@aws-cdk/aws-s3.BucketBase",
886 "type": {
887 "primitive": "string"
888 }
889 },
890 {
891 "docs": {
892 "stability": "stable",
893 "summary": "The URL of the static website."
894 },
895 "immutable": true,
896 "locationInModule": {
897 "filename": "lib/bucket.ts",
898 "line": 1643
899 },
900 "name": "bucketWebsiteUrl",
901 "overrides": "@aws-cdk/aws-s3.BucketBase",
902 "type": {
903 "primitive": "string"
904 }
905 },
906 {
907 "docs": {
908 "stability": "stable",
909 "summary": "Optional KMS encryption key associated with this bucket."
910 },
911 "immutable": true,
912 "locationInModule": {
913 "filename": "lib/bucket.ts",
914 "line": 1648
915 },
916 "name": "encryptionKey",
917 "optional": true,
918 "overrides": "@aws-cdk/aws-s3.BucketBase",
919 "type": {
920 "fqn": "@aws-cdk/aws-kms.IKey"
921 }
922 },
923 {
924 "docs": {
925 "stability": "stable",
926 "summary": "If this bucket has been configured for static website hosting."
927 },
928 "immutable": true,
929 "locationInModule": {
930 "filename": "lib/bucket.ts",
931 "line": 1649
932 },
933 "name": "isWebsite",
934 "optional": true,
935 "overrides": "@aws-cdk/aws-s3.BucketBase",
936 "type": {
937 "primitive": "boolean"
938 }
939 },
940 {
941 "docs": {
942 "stability": "stable",
943 "summary": "Indicates if a bucket resource policy should automatically created upon the first call to `addToResourcePolicy`."
944 },
945 "locationInModule": {
946 "filename": "lib/bucket.ts",
947 "line": 1651
948 },
949 "name": "autoCreatePolicy",
950 "overrides": "@aws-cdk/aws-s3.BucketBase",
951 "protected": true,
952 "type": {
953 "primitive": "boolean"
954 }
955 },
956 {
957 "docs": {
958 "stability": "stable",
959 "summary": "Whether to disallow public access."
960 },
961 "locationInModule": {
962 "filename": "lib/bucket.ts",
963 "line": 1652
964 },
965 "name": "disallowPublicAccess",
966 "optional": true,
967 "overrides": "@aws-cdk/aws-s3.BucketBase",
968 "protected": true,
969 "type": {
970 "primitive": "boolean"
971 }
972 },
973 {
974 "docs": {
975 "remarks": "If `autoCreatePolicy` is true, a `BucketPolicy` will be created upon the\nfirst call to addToResourcePolicy(s).",
976 "stability": "stable",
977 "summary": "The resource policy associated with this bucket."
978 },
979 "locationInModule": {
980 "filename": "lib/bucket.ts",
981 "line": 1650
982 },
983 "name": "policy",
984 "optional": true,
985 "overrides": "@aws-cdk/aws-s3.BucketBase",
986 "type": {
987 "fqn": "@aws-cdk/aws-s3.BucketPolicy"
988 }
989 }
990 ],
991 "symbolId": "lib/bucket:Bucket"
992 },
993 "@aws-cdk/aws-s3.BucketAccessControl": {
994 "assembly": "@aws-cdk/aws-s3",
995 "docs": {
996 "custom": {
997 "exampleMetadata": "infused"
998 },
999 "example": "const bucket = new s3.Bucket(this, 'MyBucket');\n\nnew iot.TopicRule(this, 'TopicRule', {\n sql: iot.IotSql.fromStringAsVer20160323(\"SELECT * FROM 'device/+/data'\"),\n actions: [\n new actions.S3PutObjectAction(bucket, {\n accessControl: s3.BucketAccessControl.PUBLIC_READ,\n }),\n ],\n});",
1000 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html",
1001 "stability": "stable",
1002 "summary": "Default bucket access control types."
1003 },
1004 "fqn": "@aws-cdk/aws-s3.BucketAccessControl",
1005 "kind": "enum",
1006 "locationInModule": {
1007 "filename": "lib/bucket.ts",
1008 "line": 2452
1009 },
1010 "members": [
1011 {
1012 "docs": {
1013 "remarks": "No one else has access rights.",
1014 "stability": "stable",
1015 "summary": "Owner gets FULL_CONTROL."
1016 },
1017 "name": "PRIVATE"
1018 },
1019 {
1020 "docs": {
1021 "remarks": "The AllUsers group gets READ access.",
1022 "stability": "stable",
1023 "summary": "Owner gets FULL_CONTROL."
1024 },
1025 "name": "PUBLIC_READ"
1026 },
1027 {
1028 "docs": {
1029 "remarks": "The AllUsers group gets READ and WRITE access.\nGranting this on a bucket is generally not recommended.",
1030 "stability": "stable",
1031 "summary": "Owner gets FULL_CONTROL."
1032 },
1033 "name": "PUBLIC_READ_WRITE"
1034 },
1035 {
1036 "docs": {
1037 "remarks": "The AuthenticatedUsers group gets READ access.",
1038 "stability": "stable",
1039 "summary": "Owner gets FULL_CONTROL."
1040 },
1041 "name": "AUTHENTICATED_READ"
1042 },
1043 {
1044 "docs": {
1045 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html",
1046 "stability": "stable",
1047 "summary": "The LogDelivery group gets WRITE and READ_ACP permissions on the bucket."
1048 },
1049 "name": "LOG_DELIVERY_WRITE"
1050 },
1051 {
1052 "docs": {
1053 "remarks": "Bucket owner gets READ access.\nIf you specify this canned ACL when creating a bucket, Amazon S3 ignores it.",
1054 "stability": "stable",
1055 "summary": "Object owner gets FULL_CONTROL."
1056 },
1057 "name": "BUCKET_OWNER_READ"
1058 },
1059 {
1060 "docs": {
1061 "remarks": "If you specify this canned ACL when creating a bucket, Amazon S3 ignores it.",
1062 "stability": "stable",
1063 "summary": "Both the object owner and the bucket owner get FULL_CONTROL over the object."
1064 },
1065 "name": "BUCKET_OWNER_FULL_CONTROL"
1066 },
1067 {
1068 "docs": {
1069 "remarks": "Amazon EC2 gets READ access to GET an Amazon Machine Image (AMI) bundle from Amazon S3.",
1070 "stability": "stable",
1071 "summary": "Owner gets FULL_CONTROL."
1072 },
1073 "name": "AWS_EXEC_READ"
1074 }
1075 ],
1076 "name": "BucketAccessControl",
1077 "symbolId": "lib/bucket:BucketAccessControl"
1078 },
1079 "@aws-cdk/aws-s3.BucketAttributes": {
1080 "assembly": "@aws-cdk/aws-s3",
1081 "datatype": true,
1082 "docs": {
1083 "custom": {
1084 "exampleMetadata": "infused"
1085 },
1086 "example": "declare const myLambda: lambda.Function;\nconst bucket = s3.Bucket.fromBucketAttributes(this, 'ImportedBucket', {\n bucketArn: 'arn:aws:s3:::my-bucket',\n});\n\n// now you can just call methods on the bucket\nbucket.addEventNotification(s3.EventType.OBJECT_CREATED, new s3n.LambdaDestination(myLambda), {prefix: 'home/myusername/*'});",
1087 "stability": "stable",
1088 "summary": "A reference to a bucket outside this stack."
1089 },
1090 "fqn": "@aws-cdk/aws-s3.BucketAttributes",
1091 "kind": "interface",
1092 "locationInModule": {
1093 "filename": "lib/bucket.ts",
1094 "line": 361
1095 },
1096 "name": "BucketAttributes",
1097 "properties": [
1098 {
1099 "abstract": true,
1100 "docs": {
1101 "default": "- it's assumed the bucket belongs to the same account as the scope it's being imported into",
1102 "stability": "stable",
1103 "summary": "The account this existing bucket belongs to."
1104 },
1105 "immutable": true,
1106 "locationInModule": {
1107 "filename": "lib/bucket.ts",
1108 "line": 422
1109 },
1110 "name": "account",
1111 "optional": true,
1112 "type": {
1113 "primitive": "string"
1114 }
1115 },
1116 {
1117 "abstract": true,
1118 "docs": {
1119 "remarks": "At least one of bucketArn or bucketName must be\ndefined in order to initialize a bucket ref.",
1120 "stability": "stable",
1121 "summary": "The ARN of the bucket."
1122 },
1123 "immutable": true,
1124 "locationInModule": {
1125 "filename": "lib/bucket.ts",
1126 "line": 366
1127 },
1128 "name": "bucketArn",
1129 "optional": true,
1130 "type": {
1131 "primitive": "string"
1132 }
1133 },
1134 {
1135 "abstract": true,
1136 "docs": {
1137 "default": "Inferred from bucket name",
1138 "stability": "stable",
1139 "summary": "The domain name of the bucket."
1140 },
1141 "immutable": true,
1142 "locationInModule": {
1143 "filename": "lib/bucket.ts",
1144 "line": 381
1145 },
1146 "name": "bucketDomainName",
1147 "optional": true,
1148 "type": {
1149 "primitive": "string"
1150 }
1151 },
1152 {
1153 "abstract": true,
1154 "docs": {
1155 "stability": "stable",
1156 "summary": "The IPv6 DNS name of the specified bucket."
1157 },
1158 "immutable": true,
1159 "locationInModule": {
1160 "filename": "lib/bucket.ts",
1161 "line": 398
1162 },
1163 "name": "bucketDualStackDomainName",
1164 "optional": true,
1165 "type": {
1166 "primitive": "string"
1167 }
1168 },
1169 {
1170 "abstract": true,
1171 "docs": {
1172 "remarks": "If the underlying value of ARN is a string, the\nname will be parsed from the ARN. Otherwise, the name is optional, but\nsome features that require the bucket name such as auto-creating a bucket\npolicy, won't work.",
1173 "stability": "stable",
1174 "summary": "The name of the bucket."
1175 },
1176 "immutable": true,
1177 "locationInModule": {
1178 "filename": "lib/bucket.ts",
1179 "line": 374
1180 },
1181 "name": "bucketName",
1182 "optional": true,
1183 "type": {
1184 "primitive": "string"
1185 }
1186 },
1187 {
1188 "abstract": true,
1189 "docs": {
1190 "stability": "stable",
1191 "summary": "The regional domain name of the specified bucket."
1192 },
1193 "immutable": true,
1194 "locationInModule": {
1195 "filename": "lib/bucket.ts",
1196 "line": 393
1197 },
1198 "name": "bucketRegionalDomainName",
1199 "optional": true,
1200 "type": {
1201 "primitive": "string"
1202 }
1203 },
1204 {
1205 "abstract": true,
1206 "docs": {
1207 "default": "false",
1208 "remarks": "This should be true for\nregions launched since 2014.",
1209 "stability": "stable",
1210 "summary": "The format of the website URL of the bucket."
1211 },
1212 "immutable": true,
1213 "locationInModule": {
1214 "filename": "lib/bucket.ts",
1215 "line": 406
1216 },
1217 "name": "bucketWebsiteNewUrlFormat",
1218 "optional": true,
1219 "type": {
1220 "primitive": "boolean"
1221 }
1222 },
1223 {
1224 "abstract": true,
1225 "docs": {
1226 "default": "Inferred from bucket name",
1227 "stability": "stable",
1228 "summary": "The website URL of the bucket (if static web hosting is enabled)."
1229 },
1230 "immutable": true,
1231 "locationInModule": {
1232 "filename": "lib/bucket.ts",
1233 "line": 388
1234 },
1235 "name": "bucketWebsiteUrl",
1236 "optional": true,
1237 "type": {
1238 "primitive": "string"
1239 }
1240 },
1241 {
1242 "abstract": true,
1243 "docs": {
1244 "stability": "stable"
1245 },
1246 "immutable": true,
1247 "locationInModule": {
1248 "filename": "lib/bucket.ts",
1249 "line": 408
1250 },
1251 "name": "encryptionKey",
1252 "optional": true,
1253 "type": {
1254 "fqn": "@aws-cdk/aws-kms.IKey"
1255 }
1256 },
1257 {
1258 "abstract": true,
1259 "docs": {
1260 "default": "false",
1261 "stability": "stable",
1262 "summary": "If this bucket has been configured for static website hosting."
1263 },
1264 "immutable": true,
1265 "locationInModule": {
1266 "filename": "lib/bucket.ts",
1267 "line": 415
1268 },
1269 "name": "isWebsite",
1270 "optional": true,
1271 "type": {
1272 "primitive": "boolean"
1273 }
1274 },
1275 {
1276 "abstract": true,
1277 "docs": {
1278 "default": "- a new role will be created.",
1279 "stability": "stable",
1280 "summary": "The role to be used by the notifications handler."
1281 },
1282 "immutable": true,
1283 "locationInModule": {
1284 "filename": "lib/bucket.ts",
1285 "line": 436
1286 },
1287 "name": "notificationsHandlerRole",
1288 "optional": true,
1289 "type": {
1290 "fqn": "@aws-cdk/aws-iam.IRole"
1291 }
1292 },
1293 {
1294 "abstract": true,
1295 "docs": {
1296 "default": "- it's assumed the bucket is in the same region as the scope it's being imported into",
1297 "stability": "stable",
1298 "summary": "The region this existing bucket is in."
1299 },
1300 "immutable": true,
1301 "locationInModule": {
1302 "filename": "lib/bucket.ts",
1303 "line": 429
1304 },
1305 "name": "region",
1306 "optional": true,
1307 "type": {
1308 "primitive": "string"
1309 }
1310 }
1311 ],
1312 "symbolId": "lib/bucket:BucketAttributes"
1313 },
1314 "@aws-cdk/aws-s3.BucketBase": {
1315 "abstract": true,
1316 "assembly": "@aws-cdk/aws-s3",
1317 "base": "@aws-cdk/core.Resource",
1318 "docs": {
1319 "remarks": "Buckets can be either defined within this stack:\n\n new Bucket(this, 'MyBucket', { props });\n\nOr imported from an existing bucket:\n\n Bucket.import(this, 'MyImportedBucket', { bucketArn: ... });\n\nYou can also export a bucket and import it into another stack:\n\n const ref = myBucket.export();\n Bucket.import(this, 'MyImportedBucket', ref);",
1320 "stability": "stable",
1321 "summary": "Represents an S3 Bucket."
1322 },
1323 "fqn": "@aws-cdk/aws-s3.BucketBase",
1324 "initializer": {
1325 "docs": {
1326 "stability": "stable"
1327 },
1328 "locationInModule": {
1329 "filename": "lib/bucket.ts",
1330 "line": 498
1331 },
1332 "parameters": [
1333 {
1334 "name": "scope",
1335 "type": {
1336 "fqn": "constructs.Construct"
1337 }
1338 },
1339 {
1340 "name": "id",
1341 "type": {
1342 "primitive": "string"
1343 }
1344 },
1345 {
1346 "name": "props",
1347 "optional": true,
1348 "type": {
1349 "fqn": "@aws-cdk/core.ResourceProps"
1350 }
1351 }
1352 ]
1353 },
1354 "interfaces": [
1355 "@aws-cdk/aws-s3.IBucket"
1356 ],
1357 "kind": "class",
1358 "locationInModule": {
1359 "filename": "lib/bucket.ts",
1360 "line": 456
1361 },
1362 "methods": [
1363 {
1364 "docs": {
1365 "example": " declare const myLambda: lambda.Function;\n const bucket = new s3.Bucket(this, 'MyBucket');\n bucket.addEventNotification(s3.EventType.OBJECT_CREATED, new s3n.LambdaDestination(myLambda), {prefix: 'home/myusername/*'});",
1366 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html",
1367 "stability": "stable",
1368 "summary": "Adds a bucket notification event destination."
1369 },
1370 "locationInModule": {
1371 "filename": "lib/bucket.ts",
1372 "line": 843
1373 },
1374 "name": "addEventNotification",
1375 "overrides": "@aws-cdk/aws-s3.IBucket",
1376 "parameters": [
1377 {
1378 "docs": {
1379 "summary": "The event to trigger the notification."
1380 },
1381 "name": "event",
1382 "type": {
1383 "fqn": "@aws-cdk/aws-s3.EventType"
1384 }
1385 },
1386 {
1387 "docs": {
1388 "summary": "The notification destination (Lambda, SNS Topic or SQS Queue)."
1389 },
1390 "name": "dest",
1391 "type": {
1392 "fqn": "@aws-cdk/aws-s3.IBucketNotificationDestination"
1393 }
1394 },
1395 {
1396 "docs": {
1397 "remarks": "Each filter must include a `prefix` and/or `suffix`\nthat will be matched against the s3 object key. Refer to the S3 Developer Guide\nfor details about allowed filter rules.",
1398 "summary": "S3 object key filter rules to determine which objects trigger this event."
1399 },
1400 "name": "filters",
1401 "type": {
1402 "fqn": "@aws-cdk/aws-s3.NotificationKeyFilter"
1403 },
1404 "variadic": true
1405 }
1406 ],
1407 "variadic": true
1408 },
1409 {
1410 "docs": {
1411 "remarks": "This is identical to calling\n`onEvent(EventType.OBJECT_CREATED)`.",
1412 "stability": "stable",
1413 "summary": "Subscribes a destination to receive notifications when an object is created in the bucket."
1414 },
1415 "locationInModule": {
1416 "filename": "lib/bucket.ts",
1417 "line": 865
1418 },
1419 "name": "addObjectCreatedNotification",
1420 "overrides": "@aws-cdk/aws-s3.IBucket",
1421 "parameters": [
1422 {
1423 "docs": {
1424 "summary": "The notification destination (see onEvent)."
1425 },
1426 "name": "dest",
1427 "type": {
1428 "fqn": "@aws-cdk/aws-s3.IBucketNotificationDestination"
1429 }
1430 },
1431 {
1432 "docs": {
1433 "summary": "Filters (see onEvent)."
1434 },
1435 "name": "filters",
1436 "type": {
1437 "fqn": "@aws-cdk/aws-s3.NotificationKeyFilter"
1438 },
1439 "variadic": true
1440 }
1441 ],
1442 "variadic": true
1443 },
1444 {
1445 "docs": {
1446 "remarks": "This is identical to calling\n`onEvent(EventType.OBJECT_REMOVED)`.",
1447 "stability": "stable",
1448 "summary": "Subscribes a destination to receive notifications when an object is removed from the bucket."
1449 },
1450 "locationInModule": {
1451 "filename": "lib/bucket.ts",
1452 "line": 877
1453 },
1454 "name": "addObjectRemovedNotification",
1455 "overrides": "@aws-cdk/aws-s3.IBucket",
1456 "parameters": [
1457 {
1458 "docs": {
1459 "summary": "The notification destination (see onEvent)."
1460 },
1461 "name": "dest",
1462 "type": {
1463 "fqn": "@aws-cdk/aws-s3.IBucketNotificationDestination"
1464 }
1465 },
1466 {
1467 "docs": {
1468 "summary": "Filters (see onEvent)."
1469 },
1470 "name": "filters",
1471 "type": {
1472 "fqn": "@aws-cdk/aws-s3.NotificationKeyFilter"
1473 },
1474 "variadic": true
1475 }
1476 ],
1477 "variadic": true
1478 },
1479 {
1480 "docs": {
1481 "remarks": "Note that the policy statement may or may not be added to the policy.\nFor example, when an `IBucket` is created from an existing bucket,\nit's not possible to tell whether the bucket already has a policy\nattached, let alone to re-use that policy to add more statements to it.\nSo it's safest to do nothing in these cases.",
1482 "returns": "metadata about the execution of this method. If the policy\nwas not added, the value of `statementAdded` will be `false`. You\nshould always check this value to make sure that the operation was\nactually carried out. Otherwise, synthesis and deploy will terminate\nsilently, which may be confusing.",
1483 "stability": "stable",
1484 "summary": "Adds a statement to the resource policy for a principal (i.e. account/role/service) to perform actions on this bucket and/or its contents. Use `bucketArn` and `arnForObjects(keys)` to obtain ARNs for this bucket or objects."
1485 },
1486 "locationInModule": {
1487 "filename": "lib/bucket.ts",
1488 "line": 603
1489 },
1490 "name": "addToResourcePolicy",
1491 "overrides": "@aws-cdk/aws-s3.IBucket",
1492 "parameters": [
1493 {
1494 "docs": {
1495 "summary": "the policy statement to be added to the bucket's policy."
1496 },
1497 "name": "permission",
1498 "type": {
1499 "fqn": "@aws-cdk/aws-iam.PolicyStatement"
1500 }
1501 }
1502 ],
1503 "returns": {
1504 "type": {
1505 "fqn": "@aws-cdk/aws-iam.AddToResourcePolicyResult"
1506 }
1507 }
1508 },
1509 {
1510 "docs": {
1511 "remarks": "To represent all keys, specify ``\"*\"``.\n\nIf you need to specify a keyPattern with multiple components, concatenate them into a single string, e.g.:\n\n arnForObjects(`home/${team}/${user}/*`)",
1512 "stability": "stable",
1513 "summary": "Returns an ARN that represents all objects within the bucket that match the key pattern specified."
1514 },
1515 "locationInModule": {
1516 "filename": "lib/bucket.ts",
1517 "line": 714
1518 },
1519 "name": "arnForObjects",
1520 "overrides": "@aws-cdk/aws-s3.IBucket",
1521 "parameters": [
1522 {
1523 "name": "keyPattern",
1524 "type": {
1525 "primitive": "string"
1526 }
1527 }
1528 ],
1529 "returns": {
1530 "type": {
1531 "primitive": "string"
1532 }
1533 }
1534 },
1535 {
1536 "docs": {
1537 "stability": "stable"
1538 },
1539 "locationInModule": {
1540 "filename": "lib/bucket.ts",
1541 "line": 881
1542 },
1543 "name": "enableEventBridgeNotification",
1544 "protected": true
1545 },
1546 {
1547 "docs": {
1548 "stability": "stable",
1549 "summary": "Grants s3:DeleteObject* permission to an IAM principal for objects in this bucket."
1550 },
1551 "locationInModule": {
1552 "filename": "lib/bucket.ts",
1553 "line": 765
1554 },
1555 "name": "grantDelete",
1556 "overrides": "@aws-cdk/aws-s3.IBucket",
1557 "parameters": [
1558 {
1559 "docs": {
1560 "summary": "The principal."
1561 },
1562 "name": "identity",
1563 "type": {
1564 "fqn": "@aws-cdk/aws-iam.IGrantable"
1565 }
1566 },
1567 {
1568 "docs": {
1569 "summary": "Restrict the permission to a certain key pattern (default '*')."
1570 },
1571 "name": "objectsKeyPattern",
1572 "optional": true,
1573 "type": {
1574 "primitive": "any"
1575 }
1576 }
1577 ],
1578 "returns": {
1579 "type": {
1580 "fqn": "@aws-cdk/aws-iam.Grant"
1581 }
1582 }
1583 },
1584 {
1585 "docs": {
1586 "remarks": "IMPORTANT: This permission allows anyone to perform actions on S3 objects\nin this bucket, which is useful for when you configure your bucket as a\nwebsite and want everyone to be able to read objects in the bucket without\nneeding to authenticate.\n\nWithout arguments, this method will grant read (\"s3:GetObject\") access to\nall objects (\"*\") in the bucket.\n\nThe method returns the `iam.Grant` object, which can then be modified\nas needed. For example, you can add a condition that will restrict access only\nto an IPv4 range like this:\n\n const grant = bucket.grantPublicAccess();\n grant.resourceStatement!.addCondition(‘IpAddress’, { “aws:SourceIp”: “54.240.143.0/24” });\n\nNote that if this `IBucket` refers to an existing bucket, possibly not\nmanaged by CloudFormation, this method will have no effect, since it's\nimpossible to modify the policy of an existing bucket.",
1587 "stability": "stable",
1588 "summary": "Allows unrestricted access to objects from this bucket."
1589 },
1590 "locationInModule": {
1591 "filename": "lib/bucket.ts",
1592 "line": 807
1593 },
1594 "name": "grantPublicAccess",
1595 "overrides": "@aws-cdk/aws-s3.IBucket",
1596 "parameters": [
1597 {
1598 "docs": {
1599 "summary": "the prefix of S3 object keys (e.g. `home/*`). Default is \"*\"."
1600 },
1601 "name": "keyPrefix",
1602 "optional": true,
1603 "type": {
1604 "primitive": "string"
1605 }
1606 },
1607 {
1608 "docs": {
1609 "remarks": "Default is \"s3:GetObject\".",
1610 "summary": "the set of S3 actions to allow."
1611 },
1612 "name": "allowedActions",
1613 "type": {
1614 "primitive": "string"
1615 },
1616 "variadic": true
1617 }
1618 ],
1619 "returns": {
1620 "type": {
1621 "fqn": "@aws-cdk/aws-iam.Grant"
1622 }
1623 },
1624 "variadic": true
1625 },
1626 {
1627 "docs": {
1628 "remarks": "If encryption is used, permission to use the key to encrypt the contents\nof written files will also be granted to the same principal.",
1629 "stability": "stable",
1630 "summary": "Grants s3:PutObject* and s3:Abort* permissions for this bucket to an IAM principal."
1631 },
1632 "locationInModule": {
1633 "filename": "lib/bucket.ts",
1634 "line": 748
1635 },
1636 "name": "grantPut",
1637 "overrides": "@aws-cdk/aws-s3.IBucket",
1638 "parameters": [
1639 {
1640 "docs": {
1641 "summary": "The principal."
1642 },
1643 "name": "identity",
1644 "type": {
1645 "fqn": "@aws-cdk/aws-iam.IGrantable"
1646 }
1647 },
1648 {
1649 "docs": {
1650 "summary": "Restrict the permission to a certain key pattern (default '*')."
1651 },
1652 "name": "objectsKeyPattern",
1653 "optional": true,
1654 "type": {
1655 "primitive": "any"
1656 }
1657 }
1658 ],
1659 "returns": {
1660 "type": {
1661 "fqn": "@aws-cdk/aws-iam.Grant"
1662 }
1663 }
1664 },
1665 {
1666 "docs": {
1667 "remarks": "If your application has the '@aws-cdk/aws-s3:grantWriteWithoutAcl' feature flag set,\ncalling {@link grantWrite} or {@link grantReadWrite} no longer grants permissions to modify the ACLs of the objects;\nin this case, if you need to modify object ACLs, call this method explicitly.",
1668 "stability": "stable",
1669 "summary": "Grant the given IAM identity permissions to modify the ACLs of objects in the given Bucket."
1670 },
1671 "locationInModule": {
1672 "filename": "lib/bucket.ts",
1673 "line": 753
1674 },
1675 "name": "grantPutAcl",
1676 "overrides": "@aws-cdk/aws-s3.IBucket",
1677 "parameters": [
1678 {
1679 "name": "identity",
1680 "type": {
1681 "fqn": "@aws-cdk/aws-iam.IGrantable"
1682 }
1683 },
1684 {
1685 "name": "objectsKeyPattern",
1686 "optional": true,
1687 "type": {
1688 "primitive": "string"
1689 }
1690 }
1691 ],
1692 "returns": {
1693 "type": {
1694 "fqn": "@aws-cdk/aws-iam.Grant"
1695 }
1696 }
1697 },
1698 {
1699 "docs": {
1700 "remarks": "If encryption is used, permission to use the key to decrypt the contents\nof the bucket will also be granted to the same principal.",
1701 "stability": "stable",
1702 "summary": "Grant read permissions for this bucket and it's contents to an IAM principal (Role/Group/User)."
1703 },
1704 "locationInModule": {
1705 "filename": "lib/bucket.ts",
1706 "line": 728
1707 },
1708 "name": "grantRead",
1709 "overrides": "@aws-cdk/aws-s3.IBucket",
1710 "parameters": [
1711 {
1712 "docs": {
1713 "summary": "The principal."
1714 },
1715 "name": "identity",
1716 "type": {
1717 "fqn": "@aws-cdk/aws-iam.IGrantable"
1718 }
1719 },
1720 {
1721 "docs": {
1722 "summary": "Restrict the permission to a certain key pattern (default '*')."
1723 },
1724 "name": "objectsKeyPattern",
1725 "optional": true,
1726 "type": {
1727 "primitive": "any"
1728 }
1729 }
1730 ],
1731 "returns": {
1732 "type": {
1733 "fqn": "@aws-cdk/aws-iam.Grant"
1734 }
1735 }
1736 },
1737 {
1738 "docs": {
1739 "remarks": "If an encryption key is used, permission to use the key for\nencrypt/decrypt will also be granted.\n\nBefore CDK version 1.85.0, this method granted the `s3:PutObject*` permission that included `s3:PutObjectAcl`,\nwhich could be used to grant read/write object access to IAM principals in other accounts.\nIf you want to get rid of that behavior, update your CDK version to 1.85.0 or later,\nand make sure the `@aws-cdk/aws-s3:grantWriteWithoutAcl` feature flag is set to `true`\nin the `context` key of your cdk.json file.\nIf you've already updated, but still need the principal to have permissions to modify the ACLs,\nuse the {@link grantPutAcl} method.",
1740 "stability": "stable",
1741 "summary": "Grants read/write permissions for this bucket and it's contents to an IAM principal (Role/Group/User)."
1742 },
1743 "locationInModule": {
1744 "filename": "lib/bucket.ts",
1745 "line": 770
1746 },
1747 "name": "grantReadWrite",
1748 "overrides": "@aws-cdk/aws-s3.IBucket",
1749 "parameters": [
1750 {
1751 "name": "identity",
1752 "type": {
1753 "fqn": "@aws-cdk/aws-iam.IGrantable"
1754 }
1755 },
1756 {
1757 "name": "objectsKeyPattern",
1758 "optional": true,
1759 "type": {
1760 "primitive": "any"
1761 }
1762 }
1763 ],
1764 "returns": {
1765 "type": {
1766 "fqn": "@aws-cdk/aws-iam.Grant"
1767 }
1768 }
1769 },
1770 {
1771 "docs": {
1772 "remarks": "If encryption is used, permission to use the key to encrypt the contents\nof written files will also be granted to the same principal.\n\nBefore CDK version 1.85.0, this method granted the `s3:PutObject*` permission that included `s3:PutObjectAcl`,\nwhich could be used to grant read/write object access to IAM principals in other accounts.\nIf you want to get rid of that behavior, update your CDK version to 1.85.0 or later,\nand make sure the `@aws-cdk/aws-s3:grantWriteWithoutAcl` feature flag is set to `true`\nin the `context` key of your cdk.json file.\nIf you've already updated, but still need the principal to have permissions to modify the ACLs,\nuse the {@link grantPutAcl} method.",
1773 "stability": "stable",
1774 "summary": "Grant write permissions to this bucket to an IAM principal."
1775 },
1776 "locationInModule": {
1777 "filename": "lib/bucket.ts",
1778 "line": 734
1779 },
1780 "name": "grantWrite",
1781 "overrides": "@aws-cdk/aws-s3.IBucket",
1782 "parameters": [
1783 {
1784 "name": "identity",
1785 "type": {
1786 "fqn": "@aws-cdk/aws-iam.IGrantable"
1787 }
1788 },
1789 {
1790 "name": "objectsKeyPattern",
1791 "optional": true,
1792 "type": {
1793 "primitive": "any"
1794 }
1795 }
1796 ],
1797 "returns": {
1798 "type": {
1799 "fqn": "@aws-cdk/aws-iam.Grant"
1800 }
1801 }
1802 },
1803 {
1804 "docs": {
1805 "remarks": "Requires that there exists at least one CloudTrail Trail in your account\nthat captures the event. This method will not create the Trail.",
1806 "stability": "stable",
1807 "summary": "Define a CloudWatch event that triggers when something happens to this repository."
1808 },
1809 "locationInModule": {
1810 "filename": "lib/bucket.ts",
1811 "line": 511
1812 },
1813 "name": "onCloudTrailEvent",
1814 "overrides": "@aws-cdk/aws-s3.IBucket",
1815 "parameters": [
1816 {
1817 "docs": {
1818 "summary": "The id of the rule."
1819 },
1820 "name": "id",
1821 "type": {
1822 "primitive": "string"
1823 }
1824 },
1825 {
1826 "docs": {
1827 "summary": "Options for adding the rule."
1828 },
1829 "name": "options",
1830 "optional": true,
1831 "type": {
1832 "fqn": "@aws-cdk/aws-s3.OnCloudTrailBucketEventOptions"
1833 }
1834 }
1835 ],
1836 "returns": {
1837 "type": {
1838 "fqn": "@aws-cdk/aws-events.Rule"
1839 }
1840 }
1841 },
1842 {
1843 "docs": {
1844 "remarks": "Note that some tools like `aws s3 cp` will automatically use either\nPutObject or the multipart upload API depending on the file size,\nso using `onCloudTrailWriteObject` may be preferable.\n\nRequires that there exists at least one CloudTrail Trail in your account\nthat captures the event. This method will not create the Trail.",
1845 "stability": "stable",
1846 "summary": "Defines an AWS CloudWatch event that triggers when an object is uploaded to the specified paths (keys) in this bucket using the PutObject API call."
1847 },
1848 "locationInModule": {
1849 "filename": "lib/bucket.ts",
1850 "line": 540
1851 },
1852 "name": "onCloudTrailPutObject",
1853 "overrides": "@aws-cdk/aws-s3.IBucket",
1854 "parameters": [
1855 {
1856 "docs": {
1857 "summary": "The id of the rule."
1858 },
1859 "name": "id",
1860 "type": {
1861 "primitive": "string"
1862 }
1863 },
1864 {
1865 "docs": {
1866 "summary": "Options for adding the rule."
1867 },
1868 "name": "options",
1869 "optional": true,
1870 "type": {
1871 "fqn": "@aws-cdk/aws-s3.OnCloudTrailBucketEventOptions"
1872 }
1873 }
1874 ],
1875 "returns": {
1876 "type": {
1877 "fqn": "@aws-cdk/aws-events.Rule"
1878 }
1879 }
1880 },
1881 {
1882 "docs": {
1883 "remarks": "This includes\nthe events PutObject, CopyObject, and CompleteMultipartUpload.\n\nNote that some tools like `aws s3 cp` will automatically use either\nPutObject or the multipart upload API depending on the file size,\nso using this method may be preferable to `onCloudTrailPutObject`.\n\nRequires that there exists at least one CloudTrail Trail in your account\nthat captures the event. This method will not create the Trail.",
1884 "stability": "stable",
1885 "summary": "Defines an AWS CloudWatch event that triggers when an object at the specified paths (keys) in this bucket are written to."
1886 },
1887 "locationInModule": {
1888 "filename": "lib/bucket.ts",
1889 "line": 565
1890 },
1891 "name": "onCloudTrailWriteObject",
1892 "overrides": "@aws-cdk/aws-s3.IBucket",
1893 "parameters": [
1894 {
1895 "docs": {
1896 "summary": "The id of the rule."
1897 },
1898 "name": "id",
1899 "type": {
1900 "primitive": "string"
1901 }
1902 },
1903 {
1904 "docs": {
1905 "summary": "Options for adding the rule."
1906 },
1907 "name": "options",
1908 "optional": true,
1909 "type": {
1910 "fqn": "@aws-cdk/aws-s3.OnCloudTrailBucketEventOptions"
1911 }
1912 }
1913 ],
1914 "returns": {
1915 "type": {
1916 "fqn": "@aws-cdk/aws-events.Rule"
1917 }
1918 }
1919 },
1920 {
1921 "docs": {
1922 "remarks": "- `s3://onlybucket`\n- `s3://bucket/key`",
1923 "returns": "an ObjectS3Url token",
1924 "stability": "stable",
1925 "summary": "The S3 URL of an S3 object. For example:."
1926 },
1927 "locationInModule": {
1928 "filename": "lib/bucket.ts",
1929 "line": 697
1930 },
1931 "name": "s3UrlForObject",
1932 "overrides": "@aws-cdk/aws-s3.IBucket",
1933 "parameters": [
1934 {
1935 "docs": {
1936 "remarks": "If not specified, the S3 URL of the\nbucket is returned.",
1937 "summary": "The S3 key of the object."
1938 },
1939 "name": "key",
1940 "optional": true,
1941 "type": {
1942 "primitive": "string"
1943 }
1944 }
1945 ],
1946 "returns": {
1947 "type": {
1948 "primitive": "string"
1949 }
1950 }
1951 },
1952 {
1953 "docs": {
1954 "remarks": "Specify `dualStack: true` at the options\nfor dual-stack endpoint (connect to the bucket over IPv6). For example:\n\n- `https://bucket.s3-accelerate.amazonaws.com`\n- `https://bucket.s3-accelerate.amazonaws.com/key`",
1955 "returns": "an TransferAccelerationUrl token",
1956 "stability": "stable",
1957 "summary": "The https Transfer Acceleration URL of an S3 object."
1958 },
1959 "locationInModule": {
1960 "filename": "lib/bucket.ts",
1961 "line": 655
1962 },
1963 "name": "transferAccelerationUrlForObject",
1964 "overrides": "@aws-cdk/aws-s3.IBucket",
1965 "parameters": [
1966 {
1967 "docs": {
1968 "remarks": "If not specified, the URL of the\nbucket is returned.",
1969 "summary": "The S3 key of the object."
1970 },
1971 "name": "key",
1972 "optional": true,
1973 "type": {
1974 "primitive": "string"
1975 }
1976 },
1977 {
1978 "docs": {
1979 "summary": "Options for generating URL."
1980 },
1981 "name": "options",
1982 "optional": true,
1983 "type": {
1984 "fqn": "@aws-cdk/aws-s3.TransferAccelerationUrlOptions"
1985 }
1986 }
1987 ],
1988 "returns": {
1989 "type": {
1990 "primitive": "string"
1991 }
1992 }
1993 },
1994 {
1995 "docs": {
1996 "remarks": "- `https://s3.us-west-1.amazonaws.com/onlybucket`\n- `https://s3.us-west-1.amazonaws.com/bucket/key`\n- `https://s3.cn-north-1.amazonaws.com.cn/china-bucket/mykey`",
1997 "returns": "an ObjectS3Url token",
1998 "stability": "stable",
1999 "summary": "The https URL of an S3 object. Specify `regional: false` at the options for non-regional URLs. For example:."
2000 },
2001 "locationInModule": {
2002 "filename": "lib/bucket.ts",
2003 "line": 634
2004 },
2005 "name": "urlForObject",
2006 "overrides": "@aws-cdk/aws-s3.IBucket",
2007 "parameters": [
2008 {
2009 "docs": {
2010 "remarks": "If not specified, the URL of the\nbucket is returned.",
2011 "summary": "The S3 key of the object."
2012 },
2013 "name": "key",
2014 "optional": true,
2015 "type": {
2016 "primitive": "string"
2017 }
2018 }
2019 ],
2020 "returns": {
2021 "type": {
2022 "primitive": "string"
2023 }
2024 }
2025 },
2026 {
2027 "docs": {
2028 "remarks": "This method can be implemented by derived constructs in order to perform\nvalidation logic. It is called on all constructs before synthesis.",
2029 "stability": "stable",
2030 "summary": "Validate the current construct."
2031 },
2032 "locationInModule": {
2033 "filename": "lib/bucket.ts",
2034 "line": 616
2035 },
2036 "name": "validate",
2037 "overrides": "@aws-cdk/core.Construct",
2038 "protected": true,
2039 "returns": {
2040 "type": {
2041 "collection": {
2042 "elementtype": {
2043 "primitive": "string"
2044 },
2045 "kind": "array"
2046 }
2047 }
2048 }
2049 },
2050 {
2051 "docs": {
2052 "remarks": "- `https://only-bucket.s3.us-west-1.amazonaws.com`\n- `https://bucket.s3.us-west-1.amazonaws.com/key`\n- `https://bucket.s3.amazonaws.com/key`\n- `https://china-bucket.s3.cn-north-1.amazonaws.com.cn/mykey`",
2053 "returns": "an ObjectS3Url token",
2054 "stability": "stable",
2055 "summary": "The virtual hosted-style URL of an S3 object. Specify `regional: false` at the options for non-regional URL. For example:."
2056 },
2057 "locationInModule": {
2058 "filename": "lib/bucket.ts",
2059 "line": 678
2060 },
2061 "name": "virtualHostedUrlForObject",
2062 "overrides": "@aws-cdk/aws-s3.IBucket",
2063 "parameters": [
2064 {
2065 "docs": {
2066 "remarks": "If not specified, the URL of the\nbucket is returned.",
2067 "summary": "The S3 key of the object."
2068 },
2069 "name": "key",
2070 "optional": true,
2071 "type": {
2072 "primitive": "string"
2073 }
2074 },
2075 {
2076 "docs": {
2077 "summary": "Options for generating URL."
2078 },
2079 "name": "options",
2080 "optional": true,
2081 "type": {
2082 "fqn": "@aws-cdk/aws-s3.VirtualHostedStyleUrlOptions"
2083 }
2084 }
2085 ],
2086 "returns": {
2087 "type": {
2088 "primitive": "string"
2089 }
2090 }
2091 }
2092 ],
2093 "name": "BucketBase",
2094 "properties": [
2095 {
2096 "abstract": true,
2097 "docs": {
2098 "stability": "stable",
2099 "summary": "The ARN of the bucket."
2100 },
2101 "immutable": true,
2102 "locationInModule": {
2103 "filename": "lib/bucket.ts",
2104 "line": 457
2105 },
2106 "name": "bucketArn",
2107 "overrides": "@aws-cdk/aws-s3.IBucket",
2108 "type": {
2109 "primitive": "string"
2110 }
2111 },
2112 {
2113 "abstract": true,
2114 "docs": {
2115 "stability": "stable",
2116 "summary": "The IPv4 DNS name of the specified bucket."
2117 },
2118 "immutable": true,
2119 "locationInModule": {
2120 "filename": "lib/bucket.ts",
2121 "line": 459
2122 },
2123 "name": "bucketDomainName",
2124 "overrides": "@aws-cdk/aws-s3.IBucket",
2125 "type": {
2126 "primitive": "string"
2127 }
2128 },
2129 {
2130 "abstract": true,
2131 "docs": {
2132 "stability": "stable",
2133 "summary": "The IPv6 DNS name of the specified bucket."
2134 },
2135 "immutable": true,
2136 "locationInModule": {
2137 "filename": "lib/bucket.ts",
2138 "line": 463
2139 },
2140 "name": "bucketDualStackDomainName",
2141 "overrides": "@aws-cdk/aws-s3.IBucket",
2142 "type": {
2143 "primitive": "string"
2144 }
2145 },
2146 {
2147 "abstract": true,
2148 "docs": {
2149 "stability": "stable",
2150 "summary": "The name of the bucket."
2151 },
2152 "immutable": true,
2153 "locationInModule": {
2154 "filename": "lib/bucket.ts",
2155 "line": 458
2156 },
2157 "name": "bucketName",
2158 "overrides": "@aws-cdk/aws-s3.IBucket",
2159 "type": {
2160 "primitive": "string"
2161 }
2162 },
2163 {
2164 "abstract": true,
2165 "docs": {
2166 "stability": "stable",
2167 "summary": "The regional domain name of the specified bucket."
2168 },
2169 "immutable": true,
2170 "locationInModule": {
2171 "filename": "lib/bucket.ts",
2172 "line": 462
2173 },
2174 "name": "bucketRegionalDomainName",
2175 "overrides": "@aws-cdk/aws-s3.IBucket",
2176 "type": {
2177 "primitive": "string"
2178 }
2179 },
2180 {
2181 "abstract": true,
2182 "docs": {
2183 "stability": "stable",
2184 "summary": "The Domain name of the static website."
2185 },
2186 "immutable": true,
2187 "locationInModule": {
2188 "filename": "lib/bucket.ts",
2189 "line": 461
2190 },
2191 "name": "bucketWebsiteDomainName",
2192 "overrides": "@aws-cdk/aws-s3.IBucket",
2193 "type": {
2194 "primitive": "string"
2195 }
2196 },
2197 {
2198 "abstract": true,
2199 "docs": {
2200 "stability": "stable",
2201 "summary": "The URL of the static website."
2202 },
2203 "immutable": true,
2204 "locationInModule": {
2205 "filename": "lib/bucket.ts",
2206 "line": 460
2207 },
2208 "name": "bucketWebsiteUrl",
2209 "overrides": "@aws-cdk/aws-s3.IBucket",
2210 "type": {
2211 "primitive": "string"
2212 }
2213 },
2214 {
2215 "abstract": true,
2216 "docs": {
2217 "stability": "stable",
2218 "summary": "Optional KMS encryption key associated with this bucket."
2219 },
2220 "immutable": true,
2221 "locationInModule": {
2222 "filename": "lib/bucket.ts",
2223 "line": 468
2224 },
2225 "name": "encryptionKey",
2226 "optional": true,
2227 "overrides": "@aws-cdk/aws-s3.IBucket",
2228 "type": {
2229 "fqn": "@aws-cdk/aws-kms.IKey"
2230 }
2231 },
2232 {
2233 "abstract": true,
2234 "docs": {
2235 "stability": "stable",
2236 "summary": "If this bucket has been configured for static website hosting."
2237 },
2238 "immutable": true,
2239 "locationInModule": {
2240 "filename": "lib/bucket.ts",
2241 "line": 473
2242 },
2243 "name": "isWebsite",
2244 "optional": true,
2245 "overrides": "@aws-cdk/aws-s3.IBucket",
2246 "type": {
2247 "primitive": "boolean"
2248 }
2249 },
2250 {
2251 "abstract": true,
2252 "docs": {
2253 "stability": "stable",
2254 "summary": "Indicates if a bucket resource policy should automatically created upon the first call to `addToResourcePolicy`."
2255 },
2256 "locationInModule": {
2257 "filename": "lib/bucket.ts",
2258 "line": 487
2259 },
2260 "name": "autoCreatePolicy",
2261 "protected": true,
2262 "type": {
2263 "primitive": "boolean"
2264 }
2265 },
2266 {
2267 "abstract": true,
2268 "docs": {
2269 "stability": "stable",
2270 "summary": "Whether to disallow public access."
2271 },
2272 "locationInModule": {
2273 "filename": "lib/bucket.ts",
2274 "line": 492
2275 },
2276 "name": "disallowPublicAccess",
2277 "optional": true,
2278 "protected": true,
2279 "type": {
2280 "primitive": "boolean"
2281 }
2282 },
2283 {
2284 "docs": {
2285 "stability": "stable"
2286 },
2287 "locationInModule": {
2288 "filename": "lib/bucket.ts",
2289 "line": 496
2290 },
2291 "name": "notificationsHandlerRole",
2292 "optional": true,
2293 "protected": true,
2294 "type": {
2295 "fqn": "@aws-cdk/aws-iam.IRole"
2296 }
2297 },
2298 {
2299 "abstract": true,
2300 "docs": {
2301 "remarks": "If `autoCreatePolicy` is true, a `BucketPolicy` will be created upon the\nfirst call to addToResourcePolicy(s).",
2302 "stability": "stable",
2303 "summary": "The resource policy associated with this bucket."
2304 },
2305 "locationInModule": {
2306 "filename": "lib/bucket.ts",
2307 "line": 481
2308 },
2309 "name": "policy",
2310 "optional": true,
2311 "overrides": "@aws-cdk/aws-s3.IBucket",
2312 "type": {
2313 "fqn": "@aws-cdk/aws-s3.BucketPolicy"
2314 }
2315 }
2316 ],
2317 "symbolId": "lib/bucket:BucketBase"
2318 },
2319 "@aws-cdk/aws-s3.BucketEncryption": {
2320 "assembly": "@aws-cdk/aws-s3",
2321 "docs": {
2322 "custom": {
2323 "exampleMetadata": "infused"
2324 },
2325 "example": "const bucket = new s3.Bucket(this, 'MyEncryptedBucket', {\n encryption: s3.BucketEncryption.KMS,\n});\n\n// you can access the encryption key:\nassert(bucket.encryptionKey instanceof kms.Key);",
2326 "stability": "stable",
2327 "summary": "What kind of server-side encryption to apply to this bucket."
2328 },
2329 "fqn": "@aws-cdk/aws-s3.BucketEncryption",
2330 "kind": "enum",
2331 "locationInModule": {
2332 "filename": "lib/bucket.ts",
2333 "line": 2173
2334 },
2335 "members": [
2336 {
2337 "docs": {
2338 "stability": "stable",
2339 "summary": "Objects in the bucket are not encrypted."
2340 },
2341 "name": "UNENCRYPTED"
2342 },
2343 {
2344 "docs": {
2345 "stability": "stable",
2346 "summary": "Server-side KMS encryption with a master key managed by KMS."
2347 },
2348 "name": "KMS_MANAGED"
2349 },
2350 {
2351 "docs": {
2352 "stability": "stable",
2353 "summary": "Server-side encryption with a master key managed by S3."
2354 },
2355 "name": "S3_MANAGED"
2356 },
2357 {
2358 "docs": {
2359 "remarks": "If `encryptionKey` is specified, this key will be used, otherwise, one will be defined.",
2360 "stability": "stable",
2361 "summary": "Server-side encryption with a KMS key managed by the user."
2362 },
2363 "name": "KMS"
2364 }
2365 ],
2366 "name": "BucketEncryption",
2367 "symbolId": "lib/bucket:BucketEncryption"
2368 },
2369 "@aws-cdk/aws-s3.BucketMetrics": {
2370 "assembly": "@aws-cdk/aws-s3",
2371 "datatype": true,
2372 "docs": {
2373 "stability": "stable",
2374 "summary": "Specifies a metrics configuration for the CloudWatch request metrics from an Amazon S3 bucket.",
2375 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const tagFilters: any;\nconst bucketMetrics: s3.BucketMetrics = {\n id: 'id',\n\n // the properties below are optional\n prefix: 'prefix',\n tagFilters: {\n tagFiltersKey: tagFilters,\n },\n};",
2376 "custom": {
2377 "exampleMetadata": "fixture=_generated"
2378 }
2379 },
2380 "fqn": "@aws-cdk/aws-s3.BucketMetrics",
2381 "kind": "interface",
2382 "locationInModule": {
2383 "filename": "lib/bucket.ts",
2384 "line": 991
2385 },
2386 "name": "BucketMetrics",
2387 "properties": [
2388 {
2389 "abstract": true,
2390 "docs": {
2391 "stability": "stable",
2392 "summary": "The ID used to identify the metrics configuration."
2393 },
2394 "immutable": true,
2395 "locationInModule": {
2396 "filename": "lib/bucket.ts",
2397 "line": 995
2398 },
2399 "name": "id",
2400 "type": {
2401 "primitive": "string"
2402 }
2403 },
2404 {
2405 "abstract": true,
2406 "docs": {
2407 "stability": "stable",
2408 "summary": "The prefix that an object must have to be included in the metrics results."
2409 },
2410 "immutable": true,
2411 "locationInModule": {
2412 "filename": "lib/bucket.ts",
2413 "line": 999
2414 },
2415 "name": "prefix",
2416 "optional": true,
2417 "type": {
2418 "primitive": "string"
2419 }
2420 },
2421 {
2422 "abstract": true,
2423 "docs": {
2424 "remarks": "The metrics configuration includes only objects that meet the filter's criteria.",
2425 "stability": "stable",
2426 "summary": "Specifies a list of tag filters to use as a metrics configuration filter."
2427 },
2428 "immutable": true,
2429 "locationInModule": {
2430 "filename": "lib/bucket.ts",
2431 "line": 1004
2432 },
2433 "name": "tagFilters",
2434 "optional": true,
2435 "type": {
2436 "collection": {
2437 "elementtype": {
2438 "primitive": "any"
2439 },
2440 "kind": "map"
2441 }
2442 }
2443 }
2444 ],
2445 "symbolId": "lib/bucket:BucketMetrics"
2446 },
2447 "@aws-cdk/aws-s3.BucketNotificationDestinationConfig": {
2448 "assembly": "@aws-cdk/aws-s3",
2449 "datatype": true,
2450 "docs": {
2451 "stability": "stable",
2452 "summary": "Represents the properties of a notification destination.",
2453 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as cdk from '@aws-cdk/core';\n\ndeclare const dependable: cdk.IDependable;\nconst bucketNotificationDestinationConfig: s3.BucketNotificationDestinationConfig = {\n arn: 'arn',\n type: s3.BucketNotificationDestinationType.LAMBDA,\n\n // the properties below are optional\n dependencies: [dependable],\n};",
2454 "custom": {
2455 "exampleMetadata": "fixture=_generated"
2456 }
2457 },
2458 "fqn": "@aws-cdk/aws-s3.BucketNotificationDestinationConfig",
2459 "kind": "interface",
2460 "locationInModule": {
2461 "filename": "lib/destination.ts",
2462 "line": 25
2463 },
2464 "name": "BucketNotificationDestinationConfig",
2465 "properties": [
2466 {
2467 "abstract": true,
2468 "docs": {
2469 "stability": "stable",
2470 "summary": "The ARN of the destination (i.e. Lambda, SNS, SQS)."
2471 },
2472 "immutable": true,
2473 "locationInModule": {
2474 "filename": "lib/destination.ts",
2475 "line": 34
2476 },
2477 "name": "arn",
2478 "type": {
2479 "primitive": "string"
2480 }
2481 },
2482 {
2483 "abstract": true,
2484 "docs": {
2485 "stability": "stable",
2486 "summary": "The notification type."
2487 },
2488 "immutable": true,
2489 "locationInModule": {
2490 "filename": "lib/destination.ts",
2491 "line": 29
2492 },
2493 "name": "type",
2494 "type": {
2495 "fqn": "@aws-cdk/aws-s3.BucketNotificationDestinationType"
2496 }
2497 },
2498 {
2499 "abstract": true,
2500 "docs": {
2501 "stability": "stable",
2502 "summary": "Any additional dependencies that should be resolved before the bucket notification can be configured (for example, the SNS Topic Policy resource)."
2503 },
2504 "immutable": true,
2505 "locationInModule": {
2506 "filename": "lib/destination.ts",
2507 "line": 40
2508 },
2509 "name": "dependencies",
2510 "optional": true,
2511 "type": {
2512 "collection": {
2513 "elementtype": {
2514 "fqn": "@aws-cdk/core.IDependable"
2515 },
2516 "kind": "array"
2517 }
2518 }
2519 }
2520 ],
2521 "symbolId": "lib/destination:BucketNotificationDestinationConfig"
2522 },
2523 "@aws-cdk/aws-s3.BucketNotificationDestinationType": {
2524 "assembly": "@aws-cdk/aws-s3",
2525 "docs": {
2526 "stability": "stable",
2527 "summary": "Supported types of notification destinations."
2528 },
2529 "fqn": "@aws-cdk/aws-s3.BucketNotificationDestinationType",
2530 "kind": "enum",
2531 "locationInModule": {
2532 "filename": "lib/destination.ts",
2533 "line": 46
2534 },
2535 "members": [
2536 {
2537 "docs": {
2538 "stability": "stable"
2539 },
2540 "name": "LAMBDA"
2541 },
2542 {
2543 "docs": {
2544 "stability": "stable"
2545 },
2546 "name": "QUEUE"
2547 },
2548 {
2549 "docs": {
2550 "stability": "stable"
2551 },
2552 "name": "TOPIC"
2553 }
2554 ],
2555 "name": "BucketNotificationDestinationType",
2556 "symbolId": "lib/destination:BucketNotificationDestinationType"
2557 },
2558 "@aws-cdk/aws-s3.BucketPolicy": {
2559 "assembly": "@aws-cdk/aws-s3",
2560 "base": "@aws-cdk/core.Resource",
2561 "docs": {
2562 "remarks": "Policies define the operations that are allowed on this resource.\n\nYou almost never need to define this construct directly.\n\nAll AWS resources that support resource policies have a method called\n`addToResourcePolicy()`, which will automatically create a new resource\npolicy if one doesn't exist yet, otherwise it will add to the existing\npolicy.\n\nPrefer to use `addToResourcePolicy()` instead.",
2563 "stability": "stable",
2564 "summary": "The bucket policy for an Amazon S3 bucket.",
2565 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as cdk from '@aws-cdk/core';\n\ndeclare const bucket: s3.Bucket;\nconst bucketPolicy = new s3.BucketPolicy(this, 'MyBucketPolicy', {\n bucket: bucket,\n\n // the properties below are optional\n removalPolicy: cdk.RemovalPolicy.DESTROY,\n});",
2566 "custom": {
2567 "exampleMetadata": "fixture=_generated"
2568 }
2569 },
2570 "fqn": "@aws-cdk/aws-s3.BucketPolicy",
2571 "initializer": {
2572 "docs": {
2573 "stability": "stable"
2574 },
2575 "locationInModule": {
2576 "filename": "lib/bucket-policy.ts",
2577 "line": 46
2578 },
2579 "parameters": [
2580 {
2581 "name": "scope",
2582 "type": {
2583 "fqn": "constructs.Construct"
2584 }
2585 },
2586 {
2587 "name": "id",
2588 "type": {
2589 "primitive": "string"
2590 }
2591 },
2592 {
2593 "name": "props",
2594 "type": {
2595 "fqn": "@aws-cdk/aws-s3.BucketPolicyProps"
2596 }
2597 }
2598 ]
2599 },
2600 "kind": "class",
2601 "locationInModule": {
2602 "filename": "lib/bucket-policy.ts",
2603 "line": 35
2604 },
2605 "methods": [
2606 {
2607 "docs": {
2608 "stability": "stable",
2609 "summary": "Sets the removal policy for the BucketPolicy."
2610 },
2611 "locationInModule": {
2612 "filename": "lib/bucket-policy.ts",
2613 "line": 67
2614 },
2615 "name": "applyRemovalPolicy",
2616 "overrides": "@aws-cdk/core.Resource",
2617 "parameters": [
2618 {
2619 "docs": {
2620 "summary": "the RemovalPolicy to set."
2621 },
2622 "name": "removalPolicy",
2623 "type": {
2624 "fqn": "@aws-cdk/core.RemovalPolicy"
2625 }
2626 }
2627 ]
2628 }
2629 ],
2630 "name": "BucketPolicy",
2631 "properties": [
2632 {
2633 "docs": {
2634 "remarks": "For more information, see Access Policy Language Overview in the Amazon\nSimple Storage Service Developer Guide.",
2635 "stability": "stable",
2636 "summary": "A policy document containing permissions to add to the specified bucket."
2637 },
2638 "immutable": true,
2639 "locationInModule": {
2640 "filename": "lib/bucket-policy.ts",
2641 "line": 42
2642 },
2643 "name": "document",
2644 "type": {
2645 "fqn": "@aws-cdk/aws-iam.PolicyDocument"
2646 }
2647 }
2648 ],
2649 "symbolId": "lib/bucket-policy:BucketPolicy"
2650 },
2651 "@aws-cdk/aws-s3.BucketPolicyProps": {
2652 "assembly": "@aws-cdk/aws-s3",
2653 "datatype": true,
2654 "docs": {
2655 "stability": "stable",
2656 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as cdk from '@aws-cdk/core';\n\ndeclare const bucket: s3.Bucket;\nconst bucketPolicyProps: s3.BucketPolicyProps = {\n bucket: bucket,\n\n // the properties below are optional\n removalPolicy: cdk.RemovalPolicy.DESTROY,\n};",
2657 "custom": {
2658 "exampleMetadata": "fixture=_generated"
2659 }
2660 },
2661 "fqn": "@aws-cdk/aws-s3.BucketPolicyProps",
2662 "kind": "interface",
2663 "locationInModule": {
2664 "filename": "lib/bucket-policy.ts",
2665 "line": 7
2666 },
2667 "name": "BucketPolicyProps",
2668 "properties": [
2669 {
2670 "abstract": true,
2671 "docs": {
2672 "stability": "stable",
2673 "summary": "The Amazon S3 bucket that the policy applies to."
2674 },
2675 "immutable": true,
2676 "locationInModule": {
2677 "filename": "lib/bucket-policy.ts",
2678 "line": 11
2679 },
2680 "name": "bucket",
2681 "type": {
2682 "fqn": "@aws-cdk/aws-s3.IBucket"
2683 }
2684 },
2685 {
2686 "abstract": true,
2687 "docs": {
2688 "default": "- RemovalPolicy.DESTROY.",
2689 "stability": "stable",
2690 "summary": "Policy to apply when the policy is removed from this stack."
2691 },
2692 "immutable": true,
2693 "locationInModule": {
2694 "filename": "lib/bucket-policy.ts",
2695 "line": 18
2696 },
2697 "name": "removalPolicy",
2698 "optional": true,
2699 "type": {
2700 "fqn": "@aws-cdk/core.RemovalPolicy"
2701 }
2702 }
2703 ],
2704 "symbolId": "lib/bucket-policy:BucketPolicyProps"
2705 },
2706 "@aws-cdk/aws-s3.BucketProps": {
2707 "assembly": "@aws-cdk/aws-s3",
2708 "datatype": true,
2709 "docs": {
2710 "custom": {
2711 "exampleMetadata": "infused"
2712 },
2713 "example": "const sourceBucket = new s3.Bucket(this, 'MyBucket', {\n versioned: true, // a Bucket used as a source in CodePipeline must be versioned\n});\n\nconst pipeline = new codepipeline.Pipeline(this, 'MyPipeline');\nconst sourceOutput = new codepipeline.Artifact();\nconst sourceAction = new codepipeline_actions.S3SourceAction({\n actionName: 'S3Source',\n bucket: sourceBucket,\n bucketKey: 'path/to/file.zip',\n output: sourceOutput,\n});\npipeline.addStage({\n stageName: 'Source',\n actions: [sourceAction],\n});",
2714 "stability": "stable"
2715 },
2716 "fqn": "@aws-cdk/aws-s3.BucketProps",
2717 "kind": "interface",
2718 "locationInModule": {
2719 "filename": "lib/bucket.ts",
2720 "line": 1284
2721 },
2722 "name": "BucketProps",
2723 "properties": [
2724 {
2725 "abstract": true,
2726 "docs": {
2727 "default": "BucketAccessControl.PRIVATE",
2728 "stability": "stable",
2729 "summary": "Specifies a canned ACL that grants predefined permissions to the bucket."
2730 },
2731 "immutable": true,
2732 "locationInModule": {
2733 "filename": "lib/bucket.ts",
2734 "line": 1412
2735 },
2736 "name": "accessControl",
2737 "optional": true,
2738 "type": {
2739 "fqn": "@aws-cdk/aws-s3.BucketAccessControl"
2740 }
2741 },
2742 {
2743 "abstract": true,
2744 "docs": {
2745 "default": "false",
2746 "remarks": "Requires the `removalPolicy` to be set to `RemovalPolicy.DESTROY`.\n\n**Warning** if you have deployed a bucket with `autoDeleteObjects: true`,\nswitching this to `false` in a CDK version *before* `1.126.0` will lead to\nall objects in the bucket being deleted. Be sure to update your bucket resources\nby deploying with CDK version `1.126.0` or later **before** switching this value to `false`.",
2747 "stability": "stable",
2748 "summary": "Whether all objects should be automatically deleted when the bucket is removed from the stack or when the stack is deleted."
2749 },
2750 "immutable": true,
2751 "locationInModule": {
2752 "filename": "lib/bucket.ts",
2753 "line": 1352
2754 },
2755 "name": "autoDeleteObjects",
2756 "optional": true,
2757 "type": {
2758 "primitive": "boolean"
2759 }
2760 },
2761 {
2762 "abstract": true,
2763 "docs": {
2764 "default": "- CloudFormation defaults will apply. New buckets and objects don't allow public access, but users can modify bucket policies or object permissions to allow public access",
2765 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html",
2766 "stability": "stable",
2767 "summary": "The block public access configuration of this bucket."
2768 },
2769 "immutable": true,
2770 "locationInModule": {
2771 "filename": "lib/bucket.ts",
2772 "line": 1430
2773 },
2774 "name": "blockPublicAccess",
2775 "optional": true,
2776 "type": {
2777 "fqn": "@aws-cdk/aws-s3.BlockPublicAccess"
2778 }
2779 },
2780 {
2781 "abstract": true,
2782 "docs": {
2783 "default": "- false",
2784 "remarks": "Only relevant, when Encryption is set to {@link BucketEncryption.KMS}",
2785 "stability": "stable",
2786 "summary": "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket."
2787 },
2788 "immutable": true,
2789 "locationInModule": {
2790 "filename": "lib/bucket.ts",
2791 "line": 1323
2792 },
2793 "name": "bucketKeyEnabled",
2794 "optional": true,
2795 "type": {
2796 "primitive": "boolean"
2797 }
2798 },
2799 {
2800 "abstract": true,
2801 "docs": {
2802 "default": "- Assigned by CloudFormation (recommended).",
2803 "stability": "stable",
2804 "summary": "Physical name of this bucket."
2805 },
2806 "immutable": true,
2807 "locationInModule": {
2808 "filename": "lib/bucket.ts",
2809 "line": 1330
2810 },
2811 "name": "bucketName",
2812 "optional": true,
2813 "type": {
2814 "primitive": "string"
2815 }
2816 },
2817 {
2818 "abstract": true,
2819 "docs": {
2820 "default": "- No CORS configuration.",
2821 "see": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html",
2822 "stability": "stable",
2823 "summary": "The CORS configuration of this bucket."
2824 },
2825 "immutable": true,
2826 "locationInModule": {
2827 "filename": "lib/bucket.ts",
2828 "line": 1448
2829 },
2830 "name": "cors",
2831 "optional": true,
2832 "type": {
2833 "collection": {
2834 "elementtype": {
2835 "fqn": "@aws-cdk/aws-s3.CorsRule"
2836 },
2837 "kind": "array"
2838 }
2839 }
2840 },
2841 {
2842 "abstract": true,
2843 "docs": {
2844 "default": "- `Kms` if `encryptionKey` is specified, or `Unencrypted` otherwise.",
2845 "remarks": "If you choose KMS, you can specify a KMS key via `encryptionKey`. If\nencryption key is not specified, a key will automatically be created.",
2846 "stability": "stable",
2847 "summary": "The kind of server-side encryption to apply to this bucket."
2848 },
2849 "immutable": true,
2850 "locationInModule": {
2851 "filename": "lib/bucket.ts",
2852 "line": 1293
2853 },
2854 "name": "encryption",
2855 "optional": true,
2856 "type": {
2857 "fqn": "@aws-cdk/aws-s3.BucketEncryption"
2858 }
2859 },
2860 {
2861 "abstract": true,
2862 "docs": {
2863 "default": "- If encryption is set to \"Kms\" and this property is undefined,\na new KMS key will be created and associated with this bucket.",
2864 "remarks": "The 'encryption' property must be either not specified or set to \"Kms\".\nAn error will be emitted if encryption is set to \"Unencrypted\" or\n\"Managed\".",
2865 "stability": "stable",
2866 "summary": "External KMS key to use for bucket encryption."
2867 },
2868 "immutable": true,
2869 "locationInModule": {
2870 "filename": "lib/bucket.ts",
2871 "line": 1305
2872 },
2873 "name": "encryptionKey",
2874 "optional": true,
2875 "type": {
2876 "fqn": "@aws-cdk/aws-kms.IKey"
2877 }
2878 },
2879 {
2880 "abstract": true,
2881 "docs": {
2882 "default": "false",
2883 "remarks": "S3.5 of the AWS Foundational Security Best Practices Regarding S3.",
2884 "see": "https://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-ssl-requests-only.html",
2885 "stability": "stable",
2886 "summary": "Enforces SSL for requests."
2887 },
2888 "immutable": true,
2889 "locationInModule": {
2890 "filename": "lib/bucket.ts",
2891 "line": 1313
2892 },
2893 "name": "enforceSSL",
2894 "optional": true,
2895 "type": {
2896 "primitive": "boolean"
2897 }
2898 },
2899 {
2900 "abstract": true,
2901 "docs": {
2902 "default": "false",
2903 "stability": "stable",
2904 "summary": "Whether this bucket should send notifications to Amazon EventBridge or not."
2905 },
2906 "immutable": true,
2907 "locationInModule": {
2908 "filename": "lib/bucket.ts",
2909 "line": 1366
2910 },
2911 "name": "eventBridgeEnabled",
2912 "optional": true,
2913 "type": {
2914 "primitive": "boolean"
2915 }
2916 },
2917 {
2918 "abstract": true,
2919 "docs": {
2920 "default": "No Intelligent Tiiering Configurations.",
2921 "see": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/intelligent-tiering.html",
2922 "stability": "stable",
2923 "summary": "Inteligent Tiering Configurations."
2924 },
2925 "immutable": true,
2926 "locationInModule": {
2927 "filename": "lib/bucket.ts",
2928 "line": 1502
2929 },
2930 "name": "intelligentTieringConfigurations",
2931 "optional": true,
2932 "type": {
2933 "collection": {
2934 "elementtype": {
2935 "fqn": "@aws-cdk/aws-s3.IntelligentTieringConfiguration"
2936 },
2937 "kind": "array"
2938 }
2939 }
2940 },
2941 {
2942 "abstract": true,
2943 "docs": {
2944 "default": "- No inventory configuration",
2945 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html",
2946 "stability": "stable",
2947 "summary": "The inventory configuration of the bucket."
2948 },
2949 "immutable": true,
2950 "locationInModule": {
2951 "filename": "lib/bucket.ts",
2952 "line": 1470
2953 },
2954 "name": "inventories",
2955 "optional": true,
2956 "type": {
2957 "collection": {
2958 "elementtype": {
2959 "fqn": "@aws-cdk/aws-s3.Inventory"
2960 },
2961 "kind": "array"
2962 }
2963 }
2964 },
2965 {
2966 "abstract": true,
2967 "docs": {
2968 "default": "- No lifecycle rules.",
2969 "stability": "stable",
2970 "summary": "Rules that define how Amazon S3 manages objects during their lifetime."
2971 },
2972 "immutable": true,
2973 "locationInModule": {
2974 "filename": "lib/bucket.ts",
2975 "line": 1373
2976 },
2977 "name": "lifecycleRules",
2978 "optional": true,
2979 "type": {
2980 "collection": {
2981 "elementtype": {
2982 "fqn": "@aws-cdk/aws-s3.LifecycleRule"
2983 },
2984 "kind": "array"
2985 }
2986 }
2987 },
2988 {
2989 "abstract": true,
2990 "docs": {
2991 "default": "- No metrics configuration.",
2992 "see": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html",
2993 "stability": "stable",
2994 "summary": "The metrics configuration of this bucket."
2995 },
2996 "immutable": true,
2997 "locationInModule": {
2998 "filename": "lib/bucket.ts",
2999 "line": 1439
3000 },
3001 "name": "metrics",
3002 "optional": true,
3003 "type": {
3004 "collection": {
3005 "elementtype": {
3006 "fqn": "@aws-cdk/aws-s3.BucketMetrics"
3007 },
3008 "kind": "array"
3009 }
3010 }
3011 },
3012 {
3013 "abstract": true,
3014 "docs": {
3015 "default": "- a new role will be created.",
3016 "stability": "stable",
3017 "summary": "The role to be used by the notifications handler."
3018 },
3019 "immutable": true,
3020 "locationInModule": {
3021 "filename": "lib/bucket.ts",
3022 "line": 1493
3023 },
3024 "name": "notificationsHandlerRole",
3025 "optional": true,
3026 "type": {
3027 "fqn": "@aws-cdk/aws-iam.IRole"
3028 }
3029 },
3030 {
3031 "abstract": true,
3032 "docs": {
3033 "default": "- No ObjectOwnership configuration, uploading account will own the object.",
3034 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html",
3035 "stability": "stable",
3036 "summary": "The objectOwnership of the bucket."
3037 },
3038 "immutable": true,
3039 "locationInModule": {
3040 "filename": "lib/bucket.ts",
3041 "line": 1479
3042 },
3043 "name": "objectOwnership",
3044 "optional": true,
3045 "type": {
3046 "fqn": "@aws-cdk/aws-s3.ObjectOwnership"
3047 }
3048 },
3049 {
3050 "abstract": true,
3051 "docs": {
3052 "default": "false",
3053 "remarks": "Similar to calling `bucket.grantPublicAccess()`",
3054 "stability": "stable",
3055 "summary": "Grants public read access to all objects in the bucket."
3056 },
3057 "immutable": true,
3058 "locationInModule": {
3059 "filename": "lib/bucket.ts",
3060 "line": 1420
3061 },
3062 "name": "publicReadAccess",
3063 "optional": true,
3064 "type": {
3065 "primitive": "boolean"
3066 }
3067 },
3068 {
3069 "abstract": true,
3070 "docs": {
3071 "default": "- The bucket will be orphaned.",
3072 "stability": "stable",
3073 "summary": "Policy to apply when the bucket is removed from this stack."
3074 },
3075 "immutable": true,
3076 "locationInModule": {
3077 "filename": "lib/bucket.ts",
3078 "line": 1337
3079 },
3080 "name": "removalPolicy",
3081 "optional": true,
3082 "type": {
3083 "fqn": "@aws-cdk/core.RemovalPolicy"
3084 }
3085 },
3086 {
3087 "abstract": true,
3088 "docs": {
3089 "default": "- If \"serverAccessLogsPrefix\" undefined - access logs disabled, otherwise - log to current bucket.",
3090 "stability": "stable",
3091 "summary": "Destination bucket for the server access logs."
3092 },
3093 "immutable": true,
3094 "locationInModule": {
3095 "filename": "lib/bucket.ts",
3096 "line": 1454
3097 },
3098 "name": "serverAccessLogsBucket",
3099 "optional": true,
3100 "type": {
3101 "fqn": "@aws-cdk/aws-s3.IBucket"
3102 }
3103 },
3104 {
3105 "abstract": true,
3106 "docs": {
3107 "default": "- No log file prefix",
3108 "remarks": "If defined without \"serverAccessLogsBucket\", enables access logs to current bucket with this prefix.",
3109 "stability": "stable",
3110 "summary": "Optional log file prefix to use for the bucket's access logs."
3111 },
3112 "immutable": true,
3113 "locationInModule": {
3114 "filename": "lib/bucket.ts",
3115 "line": 1461
3116 },
3117 "name": "serverAccessLogsPrefix",
3118 "optional": true,
3119 "type": {
3120 "primitive": "string"
3121 }
3122 },
3123 {
3124 "abstract": true,
3125 "docs": {
3126 "default": "false",
3127 "stability": "stable",
3128 "summary": "Whether this bucket should have transfer acceleration turned on or not."
3129 },
3130 "immutable": true,
3131 "locationInModule": {
3132 "filename": "lib/bucket.ts",
3133 "line": 1486
3134 },
3135 "name": "transferAcceleration",
3136 "optional": true,
3137 "type": {
3138 "primitive": "boolean"
3139 }
3140 },
3141 {
3142 "abstract": true,
3143 "docs": {
3144 "default": "false",
3145 "stability": "stable",
3146 "summary": "Whether this bucket should have versioning turned on or not."
3147 },
3148 "immutable": true,
3149 "locationInModule": {
3150 "filename": "lib/bucket.ts",
3151 "line": 1359
3152 },
3153 "name": "versioned",
3154 "optional": true,
3155 "type": {
3156 "primitive": "boolean"
3157 }
3158 },
3159 {
3160 "abstract": true,
3161 "docs": {
3162 "default": "- No error document.",
3163 "stability": "stable",
3164 "summary": "The name of the error document (e.g. \"404.html\") for the website. `websiteIndexDocument` must also be set if this is set."
3165 },
3166 "immutable": true,
3167 "locationInModule": {
3168 "filename": "lib/bucket.ts",
3169 "line": 1389
3170 },
3171 "name": "websiteErrorDocument",
3172 "optional": true,
3173 "type": {
3174 "primitive": "string"
3175 }
3176 },
3177 {
3178 "abstract": true,
3179 "docs": {
3180 "default": "- No index document.",
3181 "stability": "stable",
3182 "summary": "The name of the index document (e.g. \"index.html\") for the website. Enables static website hosting for this bucket."
3183 },
3184 "immutable": true,
3185 "locationInModule": {
3186 "filename": "lib/bucket.ts",
3187 "line": 1381
3188 },
3189 "name": "websiteIndexDocument",
3190 "optional": true,
3191 "type": {
3192 "primitive": "string"
3193 }
3194 },
3195 {
3196 "abstract": true,
3197 "docs": {
3198 "default": "- No redirection.",
3199 "remarks": "If you specify this property, you can't specify \"websiteIndexDocument\", \"websiteErrorDocument\" nor , \"websiteRoutingRules\".",
3200 "stability": "stable",
3201 "summary": "Specifies the redirect behavior of all requests to a website endpoint of a bucket."
3202 },
3203 "immutable": true,
3204 "locationInModule": {
3205 "filename": "lib/bucket.ts",
3206 "line": 1398
3207 },
3208 "name": "websiteRedirect",
3209 "optional": true,
3210 "type": {
3211 "fqn": "@aws-cdk/aws-s3.RedirectTarget"
3212 }
3213 },
3214 {
3215 "abstract": true,
3216 "docs": {
3217 "default": "- No redirection rules.",
3218 "stability": "stable",
3219 "summary": "Rules that define when a redirect is applied and the redirect behavior."
3220 },
3221 "immutable": true,
3222 "locationInModule": {
3223 "filename": "lib/bucket.ts",
3224 "line": 1405
3225 },
3226 "name": "websiteRoutingRules",
3227 "optional": true,
3228 "type": {
3229 "collection": {
3230 "elementtype": {
3231 "fqn": "@aws-cdk/aws-s3.RoutingRule"
3232 },
3233 "kind": "array"
3234 }
3235 }
3236 }
3237 ],
3238 "symbolId": "lib/bucket:BucketProps"
3239 },
3240 "@aws-cdk/aws-s3.CfnAccessPoint": {
3241 "assembly": "@aws-cdk/aws-s3",
3242 "base": "@aws-cdk/core.CfnResource",
3243 "docs": {
3244 "custom": {
3245 "cloudformationResource": "AWS::S3::AccessPoint",
3246 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html",
3247 "exampleMetadata": "fixture=_generated"
3248 },
3249 "remarks": "The AWS::S3::AccessPoint resource is an Amazon S3 resource type that you can use to access buckets.",
3250 "stability": "external",
3251 "summary": "A CloudFormation `AWS::S3::AccessPoint`.",
3252 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const policy: any;\ndeclare const policyStatus: any;\nconst cfnAccessPoint = new s3.CfnAccessPoint(this, 'MyCfnAccessPoint', {\n bucket: 'bucket',\n\n // the properties below are optional\n name: 'name',\n policy: policy,\n policyStatus: policyStatus,\n publicAccessBlockConfiguration: {\n blockPublicAcls: false,\n blockPublicPolicy: false,\n ignorePublicAcls: false,\n restrictPublicBuckets: false,\n },\n vpcConfiguration: {\n vpcId: 'vpcId',\n },\n});"
3253 },
3254 "fqn": "@aws-cdk/aws-s3.CfnAccessPoint",
3255 "initializer": {
3256 "docs": {
3257 "stability": "external",
3258 "summary": "Create a new `AWS::S3::AccessPoint`."
3259 },
3260 "locationInModule": {
3261 "filename": "lib/s3.generated.ts",
3262 "line": 235
3263 },
3264 "parameters": [
3265 {
3266 "docs": {
3267 "summary": "- scope in which this resource is defined."
3268 },
3269 "name": "scope",
3270 "type": {
3271 "fqn": "@aws-cdk/core.Construct"
3272 }
3273 },
3274 {
3275 "docs": {
3276 "summary": "- scoped id of the resource."
3277 },
3278 "name": "id",
3279 "type": {
3280 "primitive": "string"
3281 }
3282 },
3283 {
3284 "docs": {
3285 "summary": "- resource properties."
3286 },
3287 "name": "props",
3288 "type": {
3289 "fqn": "@aws-cdk/aws-s3.CfnAccessPointProps"
3290 }
3291 }
3292 ]
3293 },
3294 "interfaces": [
3295 "@aws-cdk/core.IInspectable"
3296 ],
3297 "kind": "class",
3298 "locationInModule": {
3299 "filename": "lib/s3.generated.ts",
3300 "line": 135
3301 },
3302 "methods": [
3303 {
3304 "docs": {
3305 "stability": "external",
3306 "summary": "Examines the CloudFormation resource and discloses attributes."
3307 },
3308 "locationInModule": {
3309 "filename": "lib/s3.generated.ts",
3310 "line": 257
3311 },
3312 "name": "inspect",
3313 "overrides": "@aws-cdk/core.IInspectable",
3314 "parameters": [
3315 {
3316 "docs": {
3317 "summary": "- tree inspector to collect and process attributes."
3318 },
3319 "name": "inspector",
3320 "type": {
3321 "fqn": "@aws-cdk/core.TreeInspector"
3322 }
3323 }
3324 ]
3325 },
3326 {
3327 "docs": {
3328 "stability": "external"
3329 },
3330 "locationInModule": {
3331 "filename": "lib/s3.generated.ts",
3332 "line": 273
3333 },
3334 "name": "renderProperties",
3335 "overrides": "@aws-cdk/core.CfnResource",
3336 "parameters": [
3337 {
3338 "name": "props",
3339 "type": {
3340 "collection": {
3341 "elementtype": {
3342 "primitive": "any"
3343 },
3344 "kind": "map"
3345 }
3346 }
3347 }
3348 ],
3349 "protected": true,
3350 "returns": {
3351 "type": {
3352 "collection": {
3353 "elementtype": {
3354 "primitive": "any"
3355 },
3356 "kind": "map"
3357 }
3358 }
3359 }
3360 }
3361 ],
3362 "name": "CfnAccessPoint",
3363 "properties": [
3364 {
3365 "const": true,
3366 "docs": {
3367 "stability": "external",
3368 "summary": "The CloudFormation resource type name for this resource class."
3369 },
3370 "immutable": true,
3371 "locationInModule": {
3372 "filename": "lib/s3.generated.ts",
3373 "line": 139
3374 },
3375 "name": "CFN_RESOURCE_TYPE_NAME",
3376 "static": true,
3377 "type": {
3378 "primitive": "string"
3379 }
3380 },
3381 {
3382 "docs": {
3383 "custom": {
3384 "cloudformationAttribute": "Alias"
3385 },
3386 "stability": "external",
3387 "summary": "The alias for this access point."
3388 },
3389 "immutable": true,
3390 "locationInModule": {
3391 "filename": "lib/s3.generated.ts",
3392 "line": 164
3393 },
3394 "name": "attrAlias",
3395 "type": {
3396 "primitive": "string"
3397 }
3398 },
3399 {
3400 "docs": {
3401 "custom": {
3402 "cloudformationAttribute": "Arn"
3403 },
3404 "stability": "external",
3405 "summary": "This property contains the details of the ARN for the access point."
3406 },
3407 "immutable": true,
3408 "locationInModule": {
3409 "filename": "lib/s3.generated.ts",
3410 "line": 170
3411 },
3412 "name": "attrArn",
3413 "type": {
3414 "primitive": "string"
3415 }
3416 },
3417 {
3418 "docs": {
3419 "custom": {
3420 "cloudformationAttribute": "Name"
3421 },
3422 "stability": "external",
3423 "summary": "The name of this access point."
3424 },
3425 "immutable": true,
3426 "locationInModule": {
3427 "filename": "lib/s3.generated.ts",
3428 "line": 176
3429 },
3430 "name": "attrName",
3431 "type": {
3432 "primitive": "string"
3433 }
3434 },
3435 {
3436 "docs": {
3437 "custom": {
3438 "cloudformationAttribute": "NetworkOrigin"
3439 },
3440 "remarks": "If `VpcConfiguration` is specified for this access point, then `NetworkOrigin` is `VPC` , and the access point doesn't allow access from the internet. Otherwise, `NetworkOrigin` is `Internet` , and the access point allows access from the internet, subject to the access point and bucket access policies.\n\n*Allowed values* : `VPC` | `Internet`",
3441 "stability": "external",
3442 "summary": "Indicates whether this access point allows access from the internet."
3443 },
3444 "immutable": true,
3445 "locationInModule": {
3446 "filename": "lib/s3.generated.ts",
3447 "line": 184
3448 },
3449 "name": "attrNetworkOrigin",
3450 "type": {
3451 "primitive": "string"
3452 }
3453 },
3454 {
3455 "docs": {
3456 "stability": "external"
3457 },
3458 "immutable": true,
3459 "locationInModule": {
3460 "filename": "lib/s3.generated.ts",
3461 "line": 262
3462 },
3463 "name": "cfnProperties",
3464 "overrides": "@aws-cdk/core.CfnResource",
3465 "protected": true,
3466 "type": {
3467 "collection": {
3468 "elementtype": {
3469 "primitive": "any"
3470 },
3471 "kind": "map"
3472 }
3473 }
3474 },
3475 {
3476 "docs": {
3477 "custom": {
3478 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-bucket"
3479 },
3480 "stability": "external",
3481 "summary": "The name of the bucket associated with this access point."
3482 },
3483 "locationInModule": {
3484 "filename": "lib/s3.generated.ts",
3485 "line": 191
3486 },
3487 "name": "bucket",
3488 "type": {
3489 "primitive": "string"
3490 }
3491 },
3492 {
3493 "docs": {
3494 "custom": {
3495 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-policy"
3496 },
3497 "stability": "external",
3498 "summary": "The access point policy associated with this access point."
3499 },
3500 "locationInModule": {
3501 "filename": "lib/s3.generated.ts",
3502 "line": 205
3503 },
3504 "name": "policy",
3505 "type": {
3506 "primitive": "any"
3507 }
3508 },
3509 {
3510 "docs": {
3511 "custom": {
3512 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-policystatus"
3513 },
3514 "stability": "external",
3515 "summary": "The container element for a bucket's policy status."
3516 },
3517 "locationInModule": {
3518 "filename": "lib/s3.generated.ts",
3519 "line": 212
3520 },
3521 "name": "policyStatus",
3522 "type": {
3523 "primitive": "any"
3524 }
3525 },
3526 {
3527 "docs": {
3528 "custom": {
3529 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-name"
3530 },
3531 "remarks": "If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the access point name.",
3532 "stability": "external",
3533 "summary": "The name of this access point."
3534 },
3535 "locationInModule": {
3536 "filename": "lib/s3.generated.ts",
3537 "line": 198
3538 },
3539 "name": "name",
3540 "optional": true,
3541 "type": {
3542 "primitive": "string"
3543 }
3544 },
3545 {
3546 "docs": {
3547 "custom": {
3548 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-publicaccessblockconfiguration"
3549 },
3550 "remarks": "You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see [The Meaning of \"Public\"](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) in the *Amazon S3 User Guide* .",
3551 "stability": "external",
3552 "summary": "The PublicAccessBlock configuration that you want to apply to this Amazon S3 bucket."
3553 },
3554 "locationInModule": {
3555 "filename": "lib/s3.generated.ts",
3556 "line": 219
3557 },
3558 "name": "publicAccessBlockConfiguration",
3559 "optional": true,
3560 "type": {
3561 "union": {
3562 "types": [
3563 {
3564 "fqn": "@aws-cdk/core.IResolvable"
3565 },
3566 {
3567 "fqn": "@aws-cdk/aws-s3.CfnAccessPoint.PublicAccessBlockConfigurationProperty"
3568 }
3569 ]
3570 }
3571 }
3572 },
3573 {
3574 "docs": {
3575 "custom": {
3576 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-vpcconfiguration"
3577 },
3578 "stability": "external",
3579 "summary": "The Virtual Private Cloud (VPC) configuration for this access point, if one exists."
3580 },
3581 "locationInModule": {
3582 "filename": "lib/s3.generated.ts",
3583 "line": 226
3584 },
3585 "name": "vpcConfiguration",
3586 "optional": true,
3587 "type": {
3588 "union": {
3589 "types": [
3590 {
3591 "fqn": "@aws-cdk/core.IResolvable"
3592 },
3593 {
3594 "fqn": "@aws-cdk/aws-s3.CfnAccessPoint.VpcConfigurationProperty"
3595 }
3596 ]
3597 }
3598 }
3599 }
3600 ],
3601 "symbolId": "lib/s3.generated:CfnAccessPoint"
3602 },
3603 "@aws-cdk/aws-s3.CfnAccessPoint.PublicAccessBlockConfigurationProperty": {
3604 "assembly": "@aws-cdk/aws-s3",
3605 "datatype": true,
3606 "docs": {
3607 "custom": {
3608 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html",
3609 "exampleMetadata": "fixture=_generated"
3610 },
3611 "remarks": "You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see [The Meaning of \"Public\"](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) in the *Amazon S3 User Guide* .",
3612 "stability": "external",
3613 "summary": "The PublicAccessBlock configuration that you want to apply to this Amazon S3 bucket.",
3614 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst publicAccessBlockConfigurationProperty: s3.CfnAccessPoint.PublicAccessBlockConfigurationProperty = {\n blockPublicAcls: false,\n blockPublicPolicy: false,\n ignorePublicAcls: false,\n restrictPublicBuckets: false,\n};"
3615 },
3616 "fqn": "@aws-cdk/aws-s3.CfnAccessPoint.PublicAccessBlockConfigurationProperty",
3617 "kind": "interface",
3618 "locationInModule": {
3619 "filename": "lib/s3.generated.ts",
3620 "line": 287
3621 },
3622 "name": "PublicAccessBlockConfigurationProperty",
3623 "namespace": "CfnAccessPoint",
3624 "properties": [
3625 {
3626 "abstract": true,
3627 "docs": {
3628 "custom": {
3629 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html#cfn-s3-accesspoint-publicaccessblockconfiguration-blockpublicacls"
3630 },
3631 "remarks": "Setting this element to `TRUE` causes the following behavior:\n\n- PUT Bucket ACL and PUT Object ACL calls fail if the specified ACL is public.\n- PUT Object calls fail if the request includes a public ACL.\n- PUT Bucket calls fail if the request includes a public ACL.\n\nEnabling this setting doesn't affect existing policies or ACLs.",
3632 "stability": "external",
3633 "summary": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket."
3634 },
3635 "immutable": true,
3636 "locationInModule": {
3637 "filename": "lib/s3.generated.ts",
3638 "line": 299
3639 },
3640 "name": "blockPublicAcls",
3641 "optional": true,
3642 "type": {
3643 "union": {
3644 "types": [
3645 {
3646 "primitive": "boolean"
3647 },
3648 {
3649 "fqn": "@aws-cdk/core.IResolvable"
3650 }
3651 ]
3652 }
3653 }
3654 },
3655 {
3656 "abstract": true,
3657 "docs": {
3658 "custom": {
3659 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html#cfn-s3-accesspoint-publicaccessblockconfiguration-blockpublicpolicy"
3660 },
3661 "remarks": "Setting this element to `TRUE` causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\n\nEnabling this setting doesn't affect existing bucket policies.",
3662 "stability": "external",
3663 "summary": "Specifies whether Amazon S3 should block public bucket policies for this bucket."
3664 },
3665 "immutable": true,
3666 "locationInModule": {
3667 "filename": "lib/s3.generated.ts",
3668 "line": 307
3669 },
3670 "name": "blockPublicPolicy",
3671 "optional": true,
3672 "type": {
3673 "union": {
3674 "types": [
3675 {
3676 "primitive": "boolean"
3677 },
3678 {
3679 "fqn": "@aws-cdk/core.IResolvable"
3680 }
3681 ]
3682 }
3683 }
3684 },
3685 {
3686 "abstract": true,
3687 "docs": {
3688 "custom": {
3689 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html#cfn-s3-accesspoint-publicaccessblockconfiguration-ignorepublicacls"
3690 },
3691 "remarks": "Setting this element to `TRUE` causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\n\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.",
3692 "stability": "external",
3693 "summary": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket."
3694 },
3695 "immutable": true,
3696 "locationInModule": {
3697 "filename": "lib/s3.generated.ts",
3698 "line": 315
3699 },
3700 "name": "ignorePublicAcls",
3701 "optional": true,
3702 "type": {
3703 "union": {
3704 "types": [
3705 {
3706 "primitive": "boolean"
3707 },
3708 {
3709 "fqn": "@aws-cdk/core.IResolvable"
3710 }
3711 ]
3712 }
3713 }
3714 },
3715 {
3716 "abstract": true,
3717 "docs": {
3718 "custom": {
3719 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-publicaccessblockconfiguration.html#cfn-s3-accesspoint-publicaccessblockconfiguration-restrictpublicbuckets"
3720 },
3721 "remarks": "Setting this element to `TRUE` restricts access to this bucket to only AWS service principals and authorized users within this account if the bucket has a public policy.\n\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.",
3722 "stability": "external",
3723 "summary": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket."
3724 },
3725 "immutable": true,
3726 "locationInModule": {
3727 "filename": "lib/s3.generated.ts",
3728 "line": 323
3729 },
3730 "name": "restrictPublicBuckets",
3731 "optional": true,
3732 "type": {
3733 "union": {
3734 "types": [
3735 {
3736 "primitive": "boolean"
3737 },
3738 {
3739 "fqn": "@aws-cdk/core.IResolvable"
3740 }
3741 ]
3742 }
3743 }
3744 }
3745 ],
3746 "symbolId": "lib/s3.generated:CfnAccessPoint.PublicAccessBlockConfigurationProperty"
3747 },
3748 "@aws-cdk/aws-s3.CfnAccessPoint.VpcConfigurationProperty": {
3749 "assembly": "@aws-cdk/aws-s3",
3750 "datatype": true,
3751 "docs": {
3752 "custom": {
3753 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-vpcconfiguration.html",
3754 "exampleMetadata": "fixture=_generated"
3755 },
3756 "stability": "external",
3757 "summary": "The Virtual Private Cloud (VPC) configuration for this access point.",
3758 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst vpcConfigurationProperty: s3.CfnAccessPoint.VpcConfigurationProperty = {\n vpcId: 'vpcId',\n};"
3759 },
3760 "fqn": "@aws-cdk/aws-s3.CfnAccessPoint.VpcConfigurationProperty",
3761 "kind": "interface",
3762 "locationInModule": {
3763 "filename": "lib/s3.generated.ts",
3764 "line": 393
3765 },
3766 "name": "VpcConfigurationProperty",
3767 "namespace": "CfnAccessPoint",
3768 "properties": [
3769 {
3770 "abstract": true,
3771 "docs": {
3772 "custom": {
3773 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-accesspoint-vpcconfiguration.html#cfn-s3-accesspoint-vpcconfiguration-vpcid"
3774 },
3775 "stability": "external",
3776 "summary": "If this field is specified, the access point will only allow connections from the specified VPC ID."
3777 },
3778 "immutable": true,
3779 "locationInModule": {
3780 "filename": "lib/s3.generated.ts",
3781 "line": 399
3782 },
3783 "name": "vpcId",
3784 "optional": true,
3785 "type": {
3786 "primitive": "string"
3787 }
3788 }
3789 ],
3790 "symbolId": "lib/s3.generated:CfnAccessPoint.VpcConfigurationProperty"
3791 },
3792 "@aws-cdk/aws-s3.CfnAccessPointProps": {
3793 "assembly": "@aws-cdk/aws-s3",
3794 "datatype": true,
3795 "docs": {
3796 "custom": {
3797 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html",
3798 "exampleMetadata": "fixture=_generated"
3799 },
3800 "stability": "external",
3801 "summary": "Properties for defining a `CfnAccessPoint`.",
3802 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const policy: any;\ndeclare const policyStatus: any;\nconst cfnAccessPointProps: s3.CfnAccessPointProps = {\n bucket: 'bucket',\n\n // the properties below are optional\n name: 'name',\n policy: policy,\n policyStatus: policyStatus,\n publicAccessBlockConfiguration: {\n blockPublicAcls: false,\n blockPublicPolicy: false,\n ignorePublicAcls: false,\n restrictPublicBuckets: false,\n },\n vpcConfiguration: {\n vpcId: 'vpcId',\n },\n};"
3803 },
3804 "fqn": "@aws-cdk/aws-s3.CfnAccessPointProps",
3805 "kind": "interface",
3806 "locationInModule": {
3807 "filename": "lib/s3.generated.ts",
3808 "line": 19
3809 },
3810 "name": "CfnAccessPointProps",
3811 "properties": [
3812 {
3813 "abstract": true,
3814 "docs": {
3815 "custom": {
3816 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-bucket"
3817 },
3818 "stability": "external",
3819 "summary": "The name of the bucket associated with this access point."
3820 },
3821 "immutable": true,
3822 "locationInModule": {
3823 "filename": "lib/s3.generated.ts",
3824 "line": 26
3825 },
3826 "name": "bucket",
3827 "type": {
3828 "primitive": "string"
3829 }
3830 },
3831 {
3832 "abstract": true,
3833 "docs": {
3834 "custom": {
3835 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-name"
3836 },
3837 "remarks": "If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the access point name.",
3838 "stability": "external",
3839 "summary": "The name of this access point."
3840 },
3841 "immutable": true,
3842 "locationInModule": {
3843 "filename": "lib/s3.generated.ts",
3844 "line": 33
3845 },
3846 "name": "name",
3847 "optional": true,
3848 "type": {
3849 "primitive": "string"
3850 }
3851 },
3852 {
3853 "abstract": true,
3854 "docs": {
3855 "custom": {
3856 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-policy"
3857 },
3858 "stability": "external",
3859 "summary": "The access point policy associated with this access point."
3860 },
3861 "immutable": true,
3862 "locationInModule": {
3863 "filename": "lib/s3.generated.ts",
3864 "line": 40
3865 },
3866 "name": "policy",
3867 "optional": true,
3868 "type": {
3869 "primitive": "any"
3870 }
3871 },
3872 {
3873 "abstract": true,
3874 "docs": {
3875 "custom": {
3876 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-policystatus"
3877 },
3878 "stability": "external",
3879 "summary": "The container element for a bucket's policy status."
3880 },
3881 "immutable": true,
3882 "locationInModule": {
3883 "filename": "lib/s3.generated.ts",
3884 "line": 47
3885 },
3886 "name": "policyStatus",
3887 "optional": true,
3888 "type": {
3889 "primitive": "any"
3890 }
3891 },
3892 {
3893 "abstract": true,
3894 "docs": {
3895 "custom": {
3896 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-publicaccessblockconfiguration"
3897 },
3898 "remarks": "You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see [The Meaning of \"Public\"](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) in the *Amazon S3 User Guide* .",
3899 "stability": "external",
3900 "summary": "The PublicAccessBlock configuration that you want to apply to this Amazon S3 bucket."
3901 },
3902 "immutable": true,
3903 "locationInModule": {
3904 "filename": "lib/s3.generated.ts",
3905 "line": 54
3906 },
3907 "name": "publicAccessBlockConfiguration",
3908 "optional": true,
3909 "type": {
3910 "union": {
3911 "types": [
3912 {
3913 "fqn": "@aws-cdk/core.IResolvable"
3914 },
3915 {
3916 "fqn": "@aws-cdk/aws-s3.CfnAccessPoint.PublicAccessBlockConfigurationProperty"
3917 }
3918 ]
3919 }
3920 }
3921 },
3922 {
3923 "abstract": true,
3924 "docs": {
3925 "custom": {
3926 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-accesspoint.html#cfn-s3-accesspoint-vpcconfiguration"
3927 },
3928 "stability": "external",
3929 "summary": "The Virtual Private Cloud (VPC) configuration for this access point, if one exists."
3930 },
3931 "immutable": true,
3932 "locationInModule": {
3933 "filename": "lib/s3.generated.ts",
3934 "line": 61
3935 },
3936 "name": "vpcConfiguration",
3937 "optional": true,
3938 "type": {
3939 "union": {
3940 "types": [
3941 {
3942 "fqn": "@aws-cdk/core.IResolvable"
3943 },
3944 {
3945 "fqn": "@aws-cdk/aws-s3.CfnAccessPoint.VpcConfigurationProperty"
3946 }
3947 ]
3948 }
3949 }
3950 }
3951 ],
3952 "symbolId": "lib/s3.generated:CfnAccessPointProps"
3953 },
3954 "@aws-cdk/aws-s3.CfnBucket": {
3955 "assembly": "@aws-cdk/aws-s3",
3956 "base": "@aws-cdk/core.CfnResource",
3957 "docs": {
3958 "custom": {
3959 "cloudformationResource": "AWS::S3::Bucket",
3960 "exampleMetadata": "infused",
3961 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html"
3962 },
3963 "example": "declare const cfnTemplate: cfn_inc.CfnInclude;\nconst cfnBucket = cfnTemplate.getResource('Bucket') as s3.CfnBucket;\n\nconst role = new iam.Role(this, 'Role', {\n assumedBy: new iam.AnyPrincipal(),\n});\nrole.addToPolicy(new iam.PolicyStatement({\n actions: ['s3:*'],\n resources: [cfnBucket.attrArn],\n}));",
3964 "remarks": "The `AWS::S3::Bucket` resource creates an Amazon S3 bucket in the same AWS Region where you create the AWS CloudFormation stack.\n\nTo control how AWS CloudFormation handles the bucket when the stack is deleted, you can set a deletion policy for your bucket. You can choose to *retain* the bucket or to *delete* the bucket. For more information, see [DeletionPolicy Attribute](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-deletionpolicy.html) .\n\n> You can only delete empty buckets. Deletion fails for buckets that have contents.",
3965 "stability": "external",
3966 "summary": "A CloudFormation `AWS::S3::Bucket`."
3967 },
3968 "fqn": "@aws-cdk/aws-s3.CfnBucket",
3969 "initializer": {
3970 "docs": {
3971 "stability": "external",
3972 "summary": "Create a new `AWS::S3::Bucket`."
3973 },
3974 "locationInModule": {
3975 "filename": "lib/s3.generated.ts",
3976 "line": 954
3977 },
3978 "parameters": [
3979 {
3980 "docs": {
3981 "summary": "- scope in which this resource is defined."
3982 },
3983 "name": "scope",
3984 "type": {
3985 "fqn": "@aws-cdk/core.Construct"
3986 }
3987 },
3988 {
3989 "docs": {
3990 "summary": "- scoped id of the resource."
3991 },
3992 "name": "id",
3993 "type": {
3994 "primitive": "string"
3995 }
3996 },
3997 {
3998 "docs": {
3999 "summary": "- resource properties."
4000 },
4001 "name": "props",
4002 "optional": true,
4003 "type": {
4004 "fqn": "@aws-cdk/aws-s3.CfnBucketProps"
4005 }
4006 }
4007 ]
4008 },
4009 "interfaces": [
4010 "@aws-cdk/core.IInspectable"
4011 ],
4012 "kind": "class",
4013 "locationInModule": {
4014 "filename": "lib/s3.generated.ts",
4015 "line": 728
4016 },
4017 "methods": [
4018 {
4019 "docs": {
4020 "stability": "external",
4021 "summary": "Examines the CloudFormation resource and discloses attributes."
4022 },
4023 "locationInModule": {
4024 "filename": "lib/s3.generated.ts",
4025 "line": 995
4026 },
4027 "name": "inspect",
4028 "overrides": "@aws-cdk/core.IInspectable",
4029 "parameters": [
4030 {
4031 "docs": {
4032 "summary": "- tree inspector to collect and process attributes."
4033 },
4034 "name": "inspector",
4035 "type": {
4036 "fqn": "@aws-cdk/core.TreeInspector"
4037 }
4038 }
4039 ]
4040 },
4041 {
4042 "docs": {
4043 "stability": "external"
4044 },
4045 "locationInModule": {
4046 "filename": "lib/s3.generated.ts",
4047 "line": 1025
4048 },
4049 "name": "renderProperties",
4050 "overrides": "@aws-cdk/core.CfnResource",
4051 "parameters": [
4052 {
4053 "name": "props",
4054 "type": {
4055 "collection": {
4056 "elementtype": {
4057 "primitive": "any"
4058 },
4059 "kind": "map"
4060 }
4061 }
4062 }
4063 ],
4064 "protected": true,
4065 "returns": {
4066 "type": {
4067 "collection": {
4068 "elementtype": {
4069 "primitive": "any"
4070 },
4071 "kind": "map"
4072 }
4073 }
4074 }
4075 }
4076 ],
4077 "name": "CfnBucket",
4078 "properties": [
4079 {
4080 "const": true,
4081 "docs": {
4082 "stability": "external",
4083 "summary": "The CloudFormation resource type name for this resource class."
4084 },
4085 "immutable": true,
4086 "locationInModule": {
4087 "filename": "lib/s3.generated.ts",
4088 "line": 732
4089 },
4090 "name": "CFN_RESOURCE_TYPE_NAME",
4091 "static": true,
4092 "type": {
4093 "primitive": "string"
4094 }
4095 },
4096 {
4097 "docs": {
4098 "custom": {
4099 "cloudformationAttribute": "Arn"
4100 },
4101 "remarks": "Example: `arn:aws:s3:::DOC-EXAMPLE-BUCKET`",
4102 "stability": "external",
4103 "summary": "Returns the Amazon Resource Name (ARN) of the specified bucket."
4104 },
4105 "immutable": true,
4106 "locationInModule": {
4107 "filename": "lib/s3.generated.ts",
4108 "line": 759
4109 },
4110 "name": "attrArn",
4111 "type": {
4112 "primitive": "string"
4113 }
4114 },
4115 {
4116 "docs": {
4117 "custom": {
4118 "cloudformationAttribute": "DomainName"
4119 },
4120 "remarks": "Example: `DOC-EXAMPLE-BUCKET.s3.amazonaws.com`",
4121 "stability": "external",
4122 "summary": "Returns the IPv4 DNS name of the specified bucket."
4123 },
4124 "immutable": true,
4125 "locationInModule": {
4126 "filename": "lib/s3.generated.ts",
4127 "line": 767
4128 },
4129 "name": "attrDomainName",
4130 "type": {
4131 "primitive": "string"
4132 }
4133 },
4134 {
4135 "docs": {
4136 "custom": {
4137 "cloudformationAttribute": "DualStackDomainName"
4138 },
4139 "remarks": "Example: `DOC-EXAMPLE-BUCKET.s3.dualstack.us-east-2.amazonaws.com`\n\nFor more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html) .",
4140 "stability": "external",
4141 "summary": "Returns the IPv6 DNS name of the specified bucket."
4142 },
4143 "immutable": true,
4144 "locationInModule": {
4145 "filename": "lib/s3.generated.ts",
4146 "line": 777
4147 },
4148 "name": "attrDualStackDomainName",
4149 "type": {
4150 "primitive": "string"
4151 }
4152 },
4153 {
4154 "docs": {
4155 "custom": {
4156 "cloudformationAttribute": "RegionalDomainName"
4157 },
4158 "remarks": "Example: `DOC-EXAMPLE-BUCKET.s3.us-east-2.amazonaws.com`",
4159 "stability": "external",
4160 "summary": "Returns the regional domain name of the specified bucket."
4161 },
4162 "immutable": true,
4163 "locationInModule": {
4164 "filename": "lib/s3.generated.ts",
4165 "line": 785
4166 },
4167 "name": "attrRegionalDomainName",
4168 "type": {
4169 "primitive": "string"
4170 }
4171 },
4172 {
4173 "docs": {
4174 "custom": {
4175 "cloudformationAttribute": "WebsiteURL"
4176 },
4177 "remarks": "Example (IPv4): `http://DOC-EXAMPLE-BUCKET.s3-website.us-east-2.amazonaws.com`\n\nExample (IPv6): `http://DOC-EXAMPLE-BUCKET.s3.dualstack.us-east-2.amazonaws.com`",
4178 "stability": "external",
4179 "summary": "Returns the Amazon S3 website endpoint for the specified bucket."
4180 },
4181 "immutable": true,
4182 "locationInModule": {
4183 "filename": "lib/s3.generated.ts",
4184 "line": 795
4185 },
4186 "name": "attrWebsiteUrl",
4187 "type": {
4188 "primitive": "string"
4189 }
4190 },
4191 {
4192 "docs": {
4193 "stability": "external"
4194 },
4195 "immutable": true,
4196 "locationInModule": {
4197 "filename": "lib/s3.generated.ts",
4198 "line": 1000
4199 },
4200 "name": "cfnProperties",
4201 "overrides": "@aws-cdk/core.CfnResource",
4202 "protected": true,
4203 "type": {
4204 "collection": {
4205 "elementtype": {
4206 "primitive": "any"
4207 },
4208 "kind": "map"
4209 }
4210 }
4211 },
4212 {
4213 "docs": {
4214 "custom": {
4215 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-tags"
4216 },
4217 "stability": "external",
4218 "summary": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
4219 },
4220 "immutable": true,
4221 "locationInModule": {
4222 "filename": "lib/s3.generated.ts",
4223 "line": 931
4224 },
4225 "name": "tags",
4226 "type": {
4227 "fqn": "@aws-cdk/core.TagManager"
4228 }
4229 },
4230 {
4231 "docs": {
4232 "custom": {
4233 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accelerateconfiguration"
4234 },
4235 "remarks": "For more information, see [Amazon S3 Transfer Acceleration](https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html) in the *Amazon S3 User Guide* .",
4236 "stability": "external",
4237 "summary": "Configures the transfer acceleration state for an Amazon S3 bucket."
4238 },
4239 "locationInModule": {
4240 "filename": "lib/s3.generated.ts",
4241 "line": 802
4242 },
4243 "name": "accelerateConfiguration",
4244 "optional": true,
4245 "type": {
4246 "union": {
4247 "types": [
4248 {
4249 "fqn": "@aws-cdk/core.IResolvable"
4250 },
4251 {
4252 "fqn": "@aws-cdk/aws-s3.CfnBucket.AccelerateConfigurationProperty"
4253 }
4254 ]
4255 }
4256 }
4257 },
4258 {
4259 "docs": {
4260 "custom": {
4261 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accesscontrol"
4262 },
4263 "remarks": "For more information about canned ACLs, see [Canned ACL](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl) in the *Amazon S3 User Guide* .\n\nBe aware that the syntax for this property differs from the information provided in the *Amazon S3 User Guide* . The AccessControl property is case-sensitive and must be one of the following values: Private, PublicRead, PublicReadWrite, AuthenticatedRead, LogDeliveryWrite, BucketOwnerRead, BucketOwnerFullControl, or AwsExecRead.",
4264 "stability": "external",
4265 "summary": "A canned access control list (ACL) that grants predefined permissions to the bucket."
4266 },
4267 "locationInModule": {
4268 "filename": "lib/s3.generated.ts",
4269 "line": 811
4270 },
4271 "name": "accessControl",
4272 "optional": true,
4273 "type": {
4274 "primitive": "string"
4275 }
4276 },
4277 {
4278 "docs": {
4279 "custom": {
4280 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-analyticsconfigurations"
4281 },
4282 "stability": "external",
4283 "summary": "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket."
4284 },
4285 "locationInModule": {
4286 "filename": "lib/s3.generated.ts",
4287 "line": 818
4288 },
4289 "name": "analyticsConfigurations",
4290 "optional": true,
4291 "type": {
4292 "union": {
4293 "types": [
4294 {
4295 "fqn": "@aws-cdk/core.IResolvable"
4296 },
4297 {
4298 "collection": {
4299 "elementtype": {
4300 "union": {
4301 "types": [
4302 {
4303 "fqn": "@aws-cdk/core.IResolvable"
4304 },
4305 {
4306 "fqn": "@aws-cdk/aws-s3.CfnBucket.AnalyticsConfigurationProperty"
4307 }
4308 ]
4309 }
4310 },
4311 "kind": "array"
4312 }
4313 }
4314 ]
4315 }
4316 }
4317 },
4318 {
4319 "docs": {
4320 "custom": {
4321 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-bucketencryption"
4322 },
4323 "remarks": "For information about the Amazon S3 default encryption feature, see [Amazon S3 Default Encryption for S3 Buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the *Amazon S3 User Guide* .",
4324 "stability": "external",
4325 "summary": "Specifies default encryption for a bucket using server-side encryption with Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS) bucket."
4326 },
4327 "locationInModule": {
4328 "filename": "lib/s3.generated.ts",
4329 "line": 825
4330 },
4331 "name": "bucketEncryption",
4332 "optional": true,
4333 "type": {
4334 "union": {
4335 "types": [
4336 {
4337 "fqn": "@aws-cdk/core.IResolvable"
4338 },
4339 {
4340 "fqn": "@aws-cdk/aws-s3.CfnBucket.BucketEncryptionProperty"
4341 }
4342 ]
4343 }
4344 }
4345 },
4346 {
4347 "docs": {
4348 "custom": {
4349 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-name"
4350 },
4351 "remarks": "If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the bucket name. The bucket name must contain only lowercase letters, numbers, periods (.), and dashes (-) and must follow [Amazon S3 bucket restrictions and limitations](https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html) . For more information, see [Rules for naming Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html#bucketnamingrules) in the *Amazon S3 User Guide* .\n\n> If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you need to replace the resource, specify a new name.",
4352 "stability": "external",
4353 "summary": "A name for the bucket."
4354 },
4355 "locationInModule": {
4356 "filename": "lib/s3.generated.ts",
4357 "line": 834
4358 },
4359 "name": "bucketName",
4360 "optional": true,
4361 "type": {
4362 "primitive": "string"
4363 }
4364 },
4365 {
4366 "docs": {
4367 "custom": {
4368 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-crossoriginconfig"
4369 },
4370 "remarks": "For more information, see [Enabling Cross-Origin Resource Sharing](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the *Amazon S3 User Guide* .",
4371 "stability": "external",
4372 "summary": "Describes the cross-origin access configuration for objects in an Amazon S3 bucket."
4373 },
4374 "locationInModule": {
4375 "filename": "lib/s3.generated.ts",
4376 "line": 841
4377 },
4378 "name": "corsConfiguration",
4379 "optional": true,
4380 "type": {
4381 "union": {
4382 "types": [
4383 {
4384 "fqn": "@aws-cdk/core.IResolvable"
4385 },
4386 {
4387 "fqn": "@aws-cdk/aws-s3.CfnBucket.CorsConfigurationProperty"
4388 }
4389 ]
4390 }
4391 }
4392 },
4393 {
4394 "docs": {
4395 "custom": {
4396 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-intelligenttieringconfigurations"
4397 },
4398 "stability": "external",
4399 "summary": "Defines how Amazon S3 handles Intelligent-Tiering storage."
4400 },
4401 "locationInModule": {
4402 "filename": "lib/s3.generated.ts",
4403 "line": 848
4404 },
4405 "name": "intelligentTieringConfigurations",
4406 "optional": true,
4407 "type": {
4408 "union": {
4409 "types": [
4410 {
4411 "fqn": "@aws-cdk/core.IResolvable"
4412 },
4413 {
4414 "collection": {
4415 "elementtype": {
4416 "union": {
4417 "types": [
4418 {
4419 "fqn": "@aws-cdk/core.IResolvable"
4420 },
4421 {
4422 "fqn": "@aws-cdk/aws-s3.CfnBucket.IntelligentTieringConfigurationProperty"
4423 }
4424 ]
4425 }
4426 },
4427 "kind": "array"
4428 }
4429 }
4430 ]
4431 }
4432 }
4433 },
4434 {
4435 "docs": {
4436 "custom": {
4437 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-inventoryconfigurations"
4438 },
4439 "remarks": "For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference* .",
4440 "stability": "external",
4441 "summary": "Specifies the inventory configuration for an Amazon S3 bucket."
4442 },
4443 "locationInModule": {
4444 "filename": "lib/s3.generated.ts",
4445 "line": 855
4446 },
4447 "name": "inventoryConfigurations",
4448 "optional": true,
4449 "type": {
4450 "union": {
4451 "types": [
4452 {
4453 "fqn": "@aws-cdk/core.IResolvable"
4454 },
4455 {
4456 "collection": {
4457 "elementtype": {
4458 "union": {
4459 "types": [
4460 {
4461 "fqn": "@aws-cdk/core.IResolvable"
4462 },
4463 {
4464 "fqn": "@aws-cdk/aws-s3.CfnBucket.InventoryConfigurationProperty"
4465 }
4466 ]
4467 }
4468 },
4469 "kind": "array"
4470 }
4471 }
4472 ]
4473 }
4474 }
4475 },
4476 {
4477 "docs": {
4478 "custom": {
4479 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-lifecycleconfig"
4480 },
4481 "remarks": "For more information, see [Object Lifecycle Management](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in the *Amazon S3 User Guide* .",
4482 "stability": "external",
4483 "summary": "Specifies the lifecycle configuration for objects in an Amazon S3 bucket."
4484 },
4485 "locationInModule": {
4486 "filename": "lib/s3.generated.ts",
4487 "line": 862
4488 },
4489 "name": "lifecycleConfiguration",
4490 "optional": true,
4491 "type": {
4492 "union": {
4493 "types": [
4494 {
4495 "fqn": "@aws-cdk/core.IResolvable"
4496 },
4497 {
4498 "fqn": "@aws-cdk/aws-s3.CfnBucket.LifecycleConfigurationProperty"
4499 }
4500 ]
4501 }
4502 }
4503 },
4504 {
4505 "docs": {
4506 "custom": {
4507 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-loggingconfig"
4508 },
4509 "stability": "external",
4510 "summary": "Settings that define where logs are stored."
4511 },
4512 "locationInModule": {
4513 "filename": "lib/s3.generated.ts",
4514 "line": 869
4515 },
4516 "name": "loggingConfiguration",
4517 "optional": true,
4518 "type": {
4519 "union": {
4520 "types": [
4521 {
4522 "fqn": "@aws-cdk/core.IResolvable"
4523 },
4524 {
4525 "fqn": "@aws-cdk/aws-s3.CfnBucket.LoggingConfigurationProperty"
4526 }
4527 ]
4528 }
4529 }
4530 },
4531 {
4532 "docs": {
4533 "custom": {
4534 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-metricsconfigurations"
4535 },
4536 "remarks": "If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html) .",
4537 "stability": "external",
4538 "summary": "Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket."
4539 },
4540 "locationInModule": {
4541 "filename": "lib/s3.generated.ts",
4542 "line": 876
4543 },
4544 "name": "metricsConfigurations",
4545 "optional": true,
4546 "type": {
4547 "union": {
4548 "types": [
4549 {
4550 "fqn": "@aws-cdk/core.IResolvable"
4551 },
4552 {
4553 "collection": {
4554 "elementtype": {
4555 "union": {
4556 "types": [
4557 {
4558 "fqn": "@aws-cdk/core.IResolvable"
4559 },
4560 {
4561 "fqn": "@aws-cdk/aws-s3.CfnBucket.MetricsConfigurationProperty"
4562 }
4563 ]
4564 }
4565 },
4566 "kind": "array"
4567 }
4568 }
4569 ]
4570 }
4571 }
4572 },
4573 {
4574 "docs": {
4575 "custom": {
4576 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-notification"
4577 },
4578 "stability": "external",
4579 "summary": "Configuration that defines how Amazon S3 handles bucket notifications."
4580 },
4581 "locationInModule": {
4582 "filename": "lib/s3.generated.ts",
4583 "line": 883
4584 },
4585 "name": "notificationConfiguration",
4586 "optional": true,
4587 "type": {
4588 "union": {
4589 "types": [
4590 {
4591 "fqn": "@aws-cdk/core.IResolvable"
4592 },
4593 {
4594 "fqn": "@aws-cdk/aws-s3.CfnBucket.NotificationConfigurationProperty"
4595 }
4596 ]
4597 }
4598 }
4599 },
4600 {
4601 "docs": {
4602 "custom": {
4603 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockconfiguration"
4604 },
4605 "remarks": "The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see [Locking Objects](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html) .\n\n> - The `DefaultRetention` settings require both a mode and a period.\n> - The `DefaultRetention` period can be either `Days` or `Years` but you must select one. You cannot specify `Days` and `Years` at the same time.\n> - You can only enable Object Lock for new buckets. If you want to turn on Object Lock for an existing bucket, contact AWS Support.",
4606 "stability": "external",
4607 "summary": "Places an Object Lock configuration on the specified bucket."
4608 },
4609 "locationInModule": {
4610 "filename": "lib/s3.generated.ts",
4611 "line": 894
4612 },
4613 "name": "objectLockConfiguration",
4614 "optional": true,
4615 "type": {
4616 "union": {
4617 "types": [
4618 {
4619 "fqn": "@aws-cdk/core.IResolvable"
4620 },
4621 {
4622 "fqn": "@aws-cdk/aws-s3.CfnBucket.ObjectLockConfigurationProperty"
4623 }
4624 ]
4625 }
4626 }
4627 },
4628 {
4629 "docs": {
4630 "custom": {
4631 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockenabled"
4632 },
4633 "remarks": "Enable `ObjectLockEnabled` when you apply `ObjectLockConfiguration` to a bucket.",
4634 "stability": "external",
4635 "summary": "Indicates whether this bucket has an Object Lock configuration enabled."
4636 },
4637 "locationInModule": {
4638 "filename": "lib/s3.generated.ts",
4639 "line": 901
4640 },
4641 "name": "objectLockEnabled",
4642 "optional": true,
4643 "type": {
4644 "union": {
4645 "types": [
4646 {
4647 "primitive": "boolean"
4648 },
4649 {
4650 "fqn": "@aws-cdk/core.IResolvable"
4651 }
4652 ]
4653 }
4654 }
4655 },
4656 {
4657 "docs": {
4658 "custom": {
4659 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-ownershipcontrols"
4660 },
4661 "stability": "external",
4662 "summary": "Configuration that defines how Amazon S3 handles Object Ownership rules."
4663 },
4664 "locationInModule": {
4665 "filename": "lib/s3.generated.ts",
4666 "line": 908
4667 },
4668 "name": "ownershipControls",
4669 "optional": true,
4670 "type": {
4671 "union": {
4672 "types": [
4673 {
4674 "fqn": "@aws-cdk/core.IResolvable"
4675 },
4676 {
4677 "fqn": "@aws-cdk/aws-s3.CfnBucket.OwnershipControlsProperty"
4678 }
4679 ]
4680 }
4681 }
4682 },
4683 {
4684 "docs": {
4685 "custom": {
4686 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-publicaccessblockconfiguration"
4687 },
4688 "stability": "external",
4689 "summary": "Configuration that defines how Amazon S3 handles public access."
4690 },
4691 "locationInModule": {
4692 "filename": "lib/s3.generated.ts",
4693 "line": 915
4694 },
4695 "name": "publicAccessBlockConfiguration",
4696 "optional": true,
4697 "type": {
4698 "union": {
4699 "types": [
4700 {
4701 "fqn": "@aws-cdk/core.IResolvable"
4702 },
4703 {
4704 "fqn": "@aws-cdk/aws-s3.CfnBucket.PublicAccessBlockConfigurationProperty"
4705 }
4706 ]
4707 }
4708 }
4709 },
4710 {
4711 "docs": {
4712 "custom": {
4713 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-replicationconfiguration"
4714 },
4715 "remarks": "To enable replication, you must also enable versioning by using the `VersioningConfiguration` property.\n\nAmazon S3 can store replicated objects in a single destination bucket or multiple destination buckets. The destination bucket or buckets must already exist.",
4716 "stability": "external",
4717 "summary": "Configuration for replicating objects in an S3 bucket."
4718 },
4719 "locationInModule": {
4720 "filename": "lib/s3.generated.ts",
4721 "line": 924
4722 },
4723 "name": "replicationConfiguration",
4724 "optional": true,
4725 "type": {
4726 "union": {
4727 "types": [
4728 {
4729 "fqn": "@aws-cdk/core.IResolvable"
4730 },
4731 {
4732 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationConfigurationProperty"
4733 }
4734 ]
4735 }
4736 }
4737 },
4738 {
4739 "docs": {
4740 "custom": {
4741 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-versioning"
4742 },
4743 "remarks": "You might enable versioning to prevent objects from being deleted or overwritten by mistake or to archive objects so that you can retrieve previous versions of them.",
4744 "stability": "external",
4745 "summary": "Enables multiple versions of all objects in this bucket."
4746 },
4747 "locationInModule": {
4748 "filename": "lib/s3.generated.ts",
4749 "line": 938
4750 },
4751 "name": "versioningConfiguration",
4752 "optional": true,
4753 "type": {
4754 "union": {
4755 "types": [
4756 {
4757 "fqn": "@aws-cdk/core.IResolvable"
4758 },
4759 {
4760 "fqn": "@aws-cdk/aws-s3.CfnBucket.VersioningConfigurationProperty"
4761 }
4762 ]
4763 }
4764 }
4765 },
4766 {
4767 "docs": {
4768 "custom": {
4769 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-websiteconfiguration"
4770 },
4771 "remarks": "For more information, see [Hosting Websites on Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) .",
4772 "stability": "external",
4773 "summary": "Information used to configure the bucket as a static website."
4774 },
4775 "locationInModule": {
4776 "filename": "lib/s3.generated.ts",
4777 "line": 945
4778 },
4779 "name": "websiteConfiguration",
4780 "optional": true,
4781 "type": {
4782 "union": {
4783 "types": [
4784 {
4785 "fqn": "@aws-cdk/core.IResolvable"
4786 },
4787 {
4788 "fqn": "@aws-cdk/aws-s3.CfnBucket.WebsiteConfigurationProperty"
4789 }
4790 ]
4791 }
4792 }
4793 }
4794 ],
4795 "symbolId": "lib/s3.generated:CfnBucket"
4796 },
4797 "@aws-cdk/aws-s3.CfnBucket.AbortIncompleteMultipartUploadProperty": {
4798 "assembly": "@aws-cdk/aws-s3",
4799 "datatype": true,
4800 "docs": {
4801 "custom": {
4802 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html",
4803 "exampleMetadata": "fixture=_generated"
4804 },
4805 "remarks": "For more information, see [Stopping Incomplete Multipart Uploads Using a Bucket Lifecycle Policy](https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config) in the *Amazon S3 User Guide* .",
4806 "stability": "external",
4807 "summary": "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.",
4808 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst abortIncompleteMultipartUploadProperty: s3.CfnBucket.AbortIncompleteMultipartUploadProperty = {\n daysAfterInitiation: 123,\n};"
4809 },
4810 "fqn": "@aws-cdk/aws-s3.CfnBucket.AbortIncompleteMultipartUploadProperty",
4811 "kind": "interface",
4812 "locationInModule": {
4813 "filename": "lib/s3.generated.ts",
4814 "line": 1039
4815 },
4816 "name": "AbortIncompleteMultipartUploadProperty",
4817 "namespace": "CfnBucket",
4818 "properties": [
4819 {
4820 "abstract": true,
4821 "docs": {
4822 "custom": {
4823 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html#cfn-s3-bucket-abortincompletemultipartupload-daysafterinitiation"
4824 },
4825 "stability": "external",
4826 "summary": "Specifies the number of days after which Amazon S3 stops an incomplete multipart upload."
4827 },
4828 "immutable": true,
4829 "locationInModule": {
4830 "filename": "lib/s3.generated.ts",
4831 "line": 1045
4832 },
4833 "name": "daysAfterInitiation",
4834 "type": {
4835 "primitive": "number"
4836 }
4837 }
4838 ],
4839 "symbolId": "lib/s3.generated:CfnBucket.AbortIncompleteMultipartUploadProperty"
4840 },
4841 "@aws-cdk/aws-s3.CfnBucket.AccelerateConfigurationProperty": {
4842 "assembly": "@aws-cdk/aws-s3",
4843 "datatype": true,
4844 "docs": {
4845 "custom": {
4846 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html",
4847 "exampleMetadata": "fixture=_generated"
4848 },
4849 "remarks": "For more information, see [Amazon S3 Transfer Acceleration](https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html) in the *Amazon S3 User Guide* .",
4850 "stability": "external",
4851 "summary": "Configures the transfer acceleration state for an Amazon S3 bucket.",
4852 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst accelerateConfigurationProperty: s3.CfnBucket.AccelerateConfigurationProperty = {\n accelerationStatus: 'accelerationStatus',\n};"
4853 },
4854 "fqn": "@aws-cdk/aws-s3.CfnBucket.AccelerateConfigurationProperty",
4855 "kind": "interface",
4856 "locationInModule": {
4857 "filename": "lib/s3.generated.ts",
4858 "line": 1107
4859 },
4860 "name": "AccelerateConfigurationProperty",
4861 "namespace": "CfnBucket",
4862 "properties": [
4863 {
4864 "abstract": true,
4865 "docs": {
4866 "custom": {
4867 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accelerateconfiguration.html#cfn-s3-bucket-accelerateconfiguration-accelerationstatus"
4868 },
4869 "stability": "external",
4870 "summary": "Specifies the transfer acceleration status of the bucket."
4871 },
4872 "immutable": true,
4873 "locationInModule": {
4874 "filename": "lib/s3.generated.ts",
4875 "line": 1113
4876 },
4877 "name": "accelerationStatus",
4878 "type": {
4879 "primitive": "string"
4880 }
4881 }
4882 ],
4883 "symbolId": "lib/s3.generated:CfnBucket.AccelerateConfigurationProperty"
4884 },
4885 "@aws-cdk/aws-s3.CfnBucket.AccessControlTranslationProperty": {
4886 "assembly": "@aws-cdk/aws-s3",
4887 "datatype": true,
4888 "docs": {
4889 "custom": {
4890 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html",
4891 "exampleMetadata": "fixture=_generated"
4892 },
4893 "remarks": "If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.",
4894 "stability": "external",
4895 "summary": "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket.",
4896 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst accessControlTranslationProperty: s3.CfnBucket.AccessControlTranslationProperty = {\n owner: 'owner',\n};"
4897 },
4898 "fqn": "@aws-cdk/aws-s3.CfnBucket.AccessControlTranslationProperty",
4899 "kind": "interface",
4900 "locationInModule": {
4901 "filename": "lib/s3.generated.ts",
4902 "line": 1175
4903 },
4904 "name": "AccessControlTranslationProperty",
4905 "namespace": "CfnBucket",
4906 "properties": [
4907 {
4908 "abstract": true,
4909 "docs": {
4910 "custom": {
4911 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html#cfn-s3-bucket-accesscontroltranslation-owner"
4912 },
4913 "remarks": "For default and valid values, see [PUT bucket replication](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) in the *Amazon S3 API Reference* .",
4914 "stability": "external",
4915 "summary": "Specifies the replica ownership."
4916 },
4917 "immutable": true,
4918 "locationInModule": {
4919 "filename": "lib/s3.generated.ts",
4920 "line": 1181
4921 },
4922 "name": "owner",
4923 "type": {
4924 "primitive": "string"
4925 }
4926 }
4927 ],
4928 "symbolId": "lib/s3.generated:CfnBucket.AccessControlTranslationProperty"
4929 },
4930 "@aws-cdk/aws-s3.CfnBucket.AnalyticsConfigurationProperty": {
4931 "assembly": "@aws-cdk/aws-s3",
4932 "datatype": true,
4933 "docs": {
4934 "custom": {
4935 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html",
4936 "exampleMetadata": "fixture=_generated"
4937 },
4938 "stability": "external",
4939 "summary": "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.",
4940 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst analyticsConfigurationProperty: s3.CfnBucket.AnalyticsConfigurationProperty = {\n id: 'id',\n storageClassAnalysis: {\n dataExport: {\n destination: {\n bucketArn: 'bucketArn',\n format: 'format',\n\n // the properties below are optional\n bucketAccountId: 'bucketAccountId',\n prefix: 'prefix',\n },\n outputSchemaVersion: 'outputSchemaVersion',\n },\n },\n\n // the properties below are optional\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n};"
4941 },
4942 "fqn": "@aws-cdk/aws-s3.CfnBucket.AnalyticsConfigurationProperty",
4943 "kind": "interface",
4944 "locationInModule": {
4945 "filename": "lib/s3.generated.ts",
4946 "line": 1243
4947 },
4948 "name": "AnalyticsConfigurationProperty",
4949 "namespace": "CfnBucket",
4950 "properties": [
4951 {
4952 "abstract": true,
4953 "docs": {
4954 "custom": {
4955 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-id"
4956 },
4957 "stability": "external",
4958 "summary": "The ID that identifies the analytics configuration."
4959 },
4960 "immutable": true,
4961 "locationInModule": {
4962 "filename": "lib/s3.generated.ts",
4963 "line": 1249
4964 },
4965 "name": "id",
4966 "type": {
4967 "primitive": "string"
4968 }
4969 },
4970 {
4971 "abstract": true,
4972 "docs": {
4973 "custom": {
4974 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-storageclassanalysis"
4975 },
4976 "stability": "external",
4977 "summary": "Contains data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes."
4978 },
4979 "immutable": true,
4980 "locationInModule": {
4981 "filename": "lib/s3.generated.ts",
4982 "line": 1261
4983 },
4984 "name": "storageClassAnalysis",
4985 "type": {
4986 "union": {
4987 "types": [
4988 {
4989 "fqn": "@aws-cdk/core.IResolvable"
4990 },
4991 {
4992 "fqn": "@aws-cdk/aws-s3.CfnBucket.StorageClassAnalysisProperty"
4993 }
4994 ]
4995 }
4996 }
4997 },
4998 {
4999 "abstract": true,
5000 "docs": {
5001 "custom": {
5002 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-prefix"
5003 },
5004 "stability": "external",
5005 "summary": "The prefix that an object must have to be included in the analytics results."
5006 },
5007 "immutable": true,
5008 "locationInModule": {
5009 "filename": "lib/s3.generated.ts",
5010 "line": 1255
5011 },
5012 "name": "prefix",
5013 "optional": true,
5014 "type": {
5015 "primitive": "string"
5016 }
5017 },
5018 {
5019 "abstract": true,
5020 "docs": {
5021 "custom": {
5022 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html#cfn-s3-bucket-analyticsconfiguration-tagfilters"
5023 },
5024 "remarks": "The analytics only includes objects that meet the filter's criteria. If no filter is specified, all of the contents of the bucket are included in the analysis.",
5025 "stability": "external",
5026 "summary": "The tags to use when evaluating an analytics filter."
5027 },
5028 "immutable": true,
5029 "locationInModule": {
5030 "filename": "lib/s3.generated.ts",
5031 "line": 1269
5032 },
5033 "name": "tagFilters",
5034 "optional": true,
5035 "type": {
5036 "union": {
5037 "types": [
5038 {
5039 "fqn": "@aws-cdk/core.IResolvable"
5040 },
5041 {
5042 "collection": {
5043 "elementtype": {
5044 "union": {
5045 "types": [
5046 {
5047 "fqn": "@aws-cdk/core.IResolvable"
5048 },
5049 {
5050 "fqn": "@aws-cdk/aws-s3.CfnBucket.TagFilterProperty"
5051 }
5052 ]
5053 }
5054 },
5055 "kind": "array"
5056 }
5057 }
5058 ]
5059 }
5060 }
5061 }
5062 ],
5063 "symbolId": "lib/s3.generated:CfnBucket.AnalyticsConfigurationProperty"
5064 },
5065 "@aws-cdk/aws-s3.CfnBucket.BucketEncryptionProperty": {
5066 "assembly": "@aws-cdk/aws-s3",
5067 "datatype": true,
5068 "docs": {
5069 "custom": {
5070 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html",
5071 "exampleMetadata": "fixture=_generated"
5072 },
5073 "remarks": "For information about the Amazon S3 default encryption feature, see [Amazon S3 Default Encryption for S3 Buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the *Amazon S3 User Guide* .",
5074 "stability": "external",
5075 "summary": "Specifies default encryption for a bucket using server-side encryption with Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS) bucket.",
5076 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst bucketEncryptionProperty: s3.CfnBucket.BucketEncryptionProperty = {\n serverSideEncryptionConfiguration: [{\n bucketKeyEnabled: false,\n serverSideEncryptionByDefault: {\n sseAlgorithm: 'sseAlgorithm',\n\n // the properties below are optional\n kmsMasterKeyId: 'kmsMasterKeyId',\n },\n }],\n};"
5077 },
5078 "fqn": "@aws-cdk/aws-s3.CfnBucket.BucketEncryptionProperty",
5079 "kind": "interface",
5080 "locationInModule": {
5081 "filename": "lib/s3.generated.ts",
5082 "line": 1341
5083 },
5084 "name": "BucketEncryptionProperty",
5085 "namespace": "CfnBucket",
5086 "properties": [
5087 {
5088 "abstract": true,
5089 "docs": {
5090 "custom": {
5091 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html#cfn-s3-bucket-bucketencryption-serversideencryptionconfiguration"
5092 },
5093 "stability": "external",
5094 "summary": "Specifies the default server-side-encryption configuration."
5095 },
5096 "immutable": true,
5097 "locationInModule": {
5098 "filename": "lib/s3.generated.ts",
5099 "line": 1347
5100 },
5101 "name": "serverSideEncryptionConfiguration",
5102 "type": {
5103 "union": {
5104 "types": [
5105 {
5106 "fqn": "@aws-cdk/core.IResolvable"
5107 },
5108 {
5109 "collection": {
5110 "elementtype": {
5111 "union": {
5112 "types": [
5113 {
5114 "fqn": "@aws-cdk/core.IResolvable"
5115 },
5116 {
5117 "fqn": "@aws-cdk/aws-s3.CfnBucket.ServerSideEncryptionRuleProperty"
5118 }
5119 ]
5120 }
5121 },
5122 "kind": "array"
5123 }
5124 }
5125 ]
5126 }
5127 }
5128 }
5129 ],
5130 "symbolId": "lib/s3.generated:CfnBucket.BucketEncryptionProperty"
5131 },
5132 "@aws-cdk/aws-s3.CfnBucket.CorsConfigurationProperty": {
5133 "assembly": "@aws-cdk/aws-s3",
5134 "datatype": true,
5135 "docs": {
5136 "custom": {
5137 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html",
5138 "exampleMetadata": "fixture=_generated"
5139 },
5140 "remarks": "For more information, see [Enabling Cross-Origin Resource Sharing](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the *Amazon S3 User Guide* .",
5141 "stability": "external",
5142 "summary": "Describes the cross-origin access configuration for objects in an Amazon S3 bucket.",
5143 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst corsConfigurationProperty: s3.CfnBucket.CorsConfigurationProperty = {\n corsRules: [{\n allowedMethods: ['allowedMethods'],\n allowedOrigins: ['allowedOrigins'],\n\n // the properties below are optional\n allowedHeaders: ['allowedHeaders'],\n exposedHeaders: ['exposedHeaders'],\n id: 'id',\n maxAge: 123,\n }],\n};"
5144 },
5145 "fqn": "@aws-cdk/aws-s3.CfnBucket.CorsConfigurationProperty",
5146 "kind": "interface",
5147 "locationInModule": {
5148 "filename": "lib/s3.generated.ts",
5149 "line": 1409
5150 },
5151 "name": "CorsConfigurationProperty",
5152 "namespace": "CfnBucket",
5153 "properties": [
5154 {
5155 "abstract": true,
5156 "docs": {
5157 "custom": {
5158 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html#cfn-s3-bucket-cors-corsrule"
5159 },
5160 "remarks": "You can add up to 100 rules to the configuration.",
5161 "stability": "external",
5162 "summary": "A set of origins and methods (cross-origin access that you want to allow)."
5163 },
5164 "immutable": true,
5165 "locationInModule": {
5166 "filename": "lib/s3.generated.ts",
5167 "line": 1415
5168 },
5169 "name": "corsRules",
5170 "type": {
5171 "union": {
5172 "types": [
5173 {
5174 "fqn": "@aws-cdk/core.IResolvable"
5175 },
5176 {
5177 "collection": {
5178 "elementtype": {
5179 "union": {
5180 "types": [
5181 {
5182 "fqn": "@aws-cdk/core.IResolvable"
5183 },
5184 {
5185 "fqn": "@aws-cdk/aws-s3.CfnBucket.CorsRuleProperty"
5186 }
5187 ]
5188 }
5189 },
5190 "kind": "array"
5191 }
5192 }
5193 ]
5194 }
5195 }
5196 }
5197 ],
5198 "symbolId": "lib/s3.generated:CfnBucket.CorsConfigurationProperty"
5199 },
5200 "@aws-cdk/aws-s3.CfnBucket.CorsRuleProperty": {
5201 "assembly": "@aws-cdk/aws-s3",
5202 "datatype": true,
5203 "docs": {
5204 "custom": {
5205 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html",
5206 "exampleMetadata": "fixture=_generated"
5207 },
5208 "stability": "external",
5209 "summary": "Specifies a cross-origin access rule for an Amazon S3 bucket.",
5210 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst corsRuleProperty: s3.CfnBucket.CorsRuleProperty = {\n allowedMethods: ['allowedMethods'],\n allowedOrigins: ['allowedOrigins'],\n\n // the properties below are optional\n allowedHeaders: ['allowedHeaders'],\n exposedHeaders: ['exposedHeaders'],\n id: 'id',\n maxAge: 123,\n};"
5211 },
5212 "fqn": "@aws-cdk/aws-s3.CfnBucket.CorsRuleProperty",
5213 "kind": "interface",
5214 "locationInModule": {
5215 "filename": "lib/s3.generated.ts",
5216 "line": 1477
5217 },
5218 "name": "CorsRuleProperty",
5219 "namespace": "CfnBucket",
5220 "properties": [
5221 {
5222 "abstract": true,
5223 "docs": {
5224 "custom": {
5225 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedmethods"
5226 },
5227 "remarks": "*Allowed values* : `GET` | `PUT` | `HEAD` | `POST` | `DELETE`",
5228 "stability": "external",
5229 "summary": "An HTTP method that you allow the origin to run."
5230 },
5231 "immutable": true,
5232 "locationInModule": {
5233 "filename": "lib/s3.generated.ts",
5234 "line": 1491
5235 },
5236 "name": "allowedMethods",
5237 "type": {
5238 "collection": {
5239 "elementtype": {
5240 "primitive": "string"
5241 },
5242 "kind": "array"
5243 }
5244 }
5245 },
5246 {
5247 "abstract": true,
5248 "docs": {
5249 "custom": {
5250 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedorigins"
5251 },
5252 "stability": "external",
5253 "summary": "One or more origins you want customers to be able to access the bucket from."
5254 },
5255 "immutable": true,
5256 "locationInModule": {
5257 "filename": "lib/s3.generated.ts",
5258 "line": 1497
5259 },
5260 "name": "allowedOrigins",
5261 "type": {
5262 "collection": {
5263 "elementtype": {
5264 "primitive": "string"
5265 },
5266 "kind": "array"
5267 }
5268 }
5269 },
5270 {
5271 "abstract": true,
5272 "docs": {
5273 "custom": {
5274 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedheaders"
5275 },
5276 "remarks": "These headers are allowed in a preflight OPTIONS request. In response to any preflight OPTIONS request, Amazon S3 returns any requested headers that are allowed.",
5277 "stability": "external",
5278 "summary": "Headers that are specified in the `Access-Control-Request-Headers` header."
5279 },
5280 "immutable": true,
5281 "locationInModule": {
5282 "filename": "lib/s3.generated.ts",
5283 "line": 1483
5284 },
5285 "name": "allowedHeaders",
5286 "optional": true,
5287 "type": {
5288 "collection": {
5289 "elementtype": {
5290 "primitive": "string"
5291 },
5292 "kind": "array"
5293 }
5294 }
5295 },
5296 {
5297 "abstract": true,
5298 "docs": {
5299 "custom": {
5300 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-exposedheaders"
5301 },
5302 "stability": "external",
5303 "summary": "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript `XMLHttpRequest` object)."
5304 },
5305 "immutable": true,
5306 "locationInModule": {
5307 "filename": "lib/s3.generated.ts",
5308 "line": 1503
5309 },
5310 "name": "exposedHeaders",
5311 "optional": true,
5312 "type": {
5313 "collection": {
5314 "elementtype": {
5315 "primitive": "string"
5316 },
5317 "kind": "array"
5318 }
5319 }
5320 },
5321 {
5322 "abstract": true,
5323 "docs": {
5324 "custom": {
5325 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-id"
5326 },
5327 "remarks": "The value must be no more than 255 characters.",
5328 "stability": "external",
5329 "summary": "A unique identifier for this rule."
5330 },
5331 "immutable": true,
5332 "locationInModule": {
5333 "filename": "lib/s3.generated.ts",
5334 "line": 1509
5335 },
5336 "name": "id",
5337 "optional": true,
5338 "type": {
5339 "primitive": "string"
5340 }
5341 },
5342 {
5343 "abstract": true,
5344 "docs": {
5345 "custom": {
5346 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-maxage"
5347 },
5348 "stability": "external",
5349 "summary": "The time in seconds that your browser is to cache the preflight response for the specified resource."
5350 },
5351 "immutable": true,
5352 "locationInModule": {
5353 "filename": "lib/s3.generated.ts",
5354 "line": 1515
5355 },
5356 "name": "maxAge",
5357 "optional": true,
5358 "type": {
5359 "primitive": "number"
5360 }
5361 }
5362 ],
5363 "symbolId": "lib/s3.generated:CfnBucket.CorsRuleProperty"
5364 },
5365 "@aws-cdk/aws-s3.CfnBucket.DataExportProperty": {
5366 "assembly": "@aws-cdk/aws-s3",
5367 "datatype": true,
5368 "docs": {
5369 "custom": {
5370 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html",
5371 "exampleMetadata": "fixture=_generated"
5372 },
5373 "stability": "external",
5374 "summary": "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.",
5375 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst dataExportProperty: s3.CfnBucket.DataExportProperty = {\n destination: {\n bucketArn: 'bucketArn',\n format: 'format',\n\n // the properties below are optional\n bucketAccountId: 'bucketAccountId',\n prefix: 'prefix',\n },\n outputSchemaVersion: 'outputSchemaVersion',\n};"
5376 },
5377 "fqn": "@aws-cdk/aws-s3.CfnBucket.DataExportProperty",
5378 "kind": "interface",
5379 "locationInModule": {
5380 "filename": "lib/s3.generated.ts",
5381 "line": 1593
5382 },
5383 "name": "DataExportProperty",
5384 "namespace": "CfnBucket",
5385 "properties": [
5386 {
5387 "abstract": true,
5388 "docs": {
5389 "custom": {
5390 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-destination"
5391 },
5392 "stability": "external",
5393 "summary": "The place to store the data for an analysis."
5394 },
5395 "immutable": true,
5396 "locationInModule": {
5397 "filename": "lib/s3.generated.ts",
5398 "line": 1599
5399 },
5400 "name": "destination",
5401 "type": {
5402 "union": {
5403 "types": [
5404 {
5405 "fqn": "@aws-cdk/core.IResolvable"
5406 },
5407 {
5408 "fqn": "@aws-cdk/aws-s3.CfnBucket.DestinationProperty"
5409 }
5410 ]
5411 }
5412 }
5413 },
5414 {
5415 "abstract": true,
5416 "docs": {
5417 "custom": {
5418 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html#cfn-s3-bucket-dataexport-outputschemaversion"
5419 },
5420 "remarks": "Must be `V_1` .",
5421 "stability": "external",
5422 "summary": "The version of the output schema to use when exporting data."
5423 },
5424 "immutable": true,
5425 "locationInModule": {
5426 "filename": "lib/s3.generated.ts",
5427 "line": 1605
5428 },
5429 "name": "outputSchemaVersion",
5430 "type": {
5431 "primitive": "string"
5432 }
5433 }
5434 ],
5435 "symbolId": "lib/s3.generated:CfnBucket.DataExportProperty"
5436 },
5437 "@aws-cdk/aws-s3.CfnBucket.DefaultRetentionProperty": {
5438 "assembly": "@aws-cdk/aws-s3",
5439 "datatype": true,
5440 "docs": {
5441 "custom": {
5442 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html",
5443 "exampleMetadata": "fixture=_generated"
5444 },
5445 "remarks": "> - The `DefaultRetention` settings require both a mode and a period.\n> - The `DefaultRetention` period can be either `Days` or `Years` but you must select one. You cannot specify `Days` and `Years` at the same time.",
5446 "stability": "external",
5447 "summary": "The container element for specifying the default Object Lock retention settings for new objects placed in the specified bucket.",
5448 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst defaultRetentionProperty: s3.CfnBucket.DefaultRetentionProperty = {\n days: 123,\n mode: 'mode',\n years: 123,\n};"
5449 },
5450 "fqn": "@aws-cdk/aws-s3.CfnBucket.DefaultRetentionProperty",
5451 "kind": "interface",
5452 "locationInModule": {
5453 "filename": "lib/s3.generated.ts",
5454 "line": 1674
5455 },
5456 "name": "DefaultRetentionProperty",
5457 "namespace": "CfnBucket",
5458 "properties": [
5459 {
5460 "abstract": true,
5461 "docs": {
5462 "custom": {
5463 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-days"
5464 },
5465 "remarks": "If Object Lock is turned on, you must specify `Mode` and specify either `Days` or `Years` .",
5466 "stability": "external",
5467 "summary": "The number of days that you want to specify for the default retention period."
5468 },
5469 "immutable": true,
5470 "locationInModule": {
5471 "filename": "lib/s3.generated.ts",
5472 "line": 1680
5473 },
5474 "name": "days",
5475 "optional": true,
5476 "type": {
5477 "primitive": "number"
5478 }
5479 },
5480 {
5481 "abstract": true,
5482 "docs": {
5483 "custom": {
5484 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-mode"
5485 },
5486 "remarks": "If Object Lock is turned on, you must specify `Mode` and specify either `Days` or `Years` .",
5487 "stability": "external",
5488 "summary": "The default Object Lock retention mode you want to apply to new objects placed in the specified bucket."
5489 },
5490 "immutable": true,
5491 "locationInModule": {
5492 "filename": "lib/s3.generated.ts",
5493 "line": 1686
5494 },
5495 "name": "mode",
5496 "optional": true,
5497 "type": {
5498 "primitive": "string"
5499 }
5500 },
5501 {
5502 "abstract": true,
5503 "docs": {
5504 "custom": {
5505 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html#cfn-s3-bucket-defaultretention-years"
5506 },
5507 "remarks": "If Object Lock is turned on, you must specify `Mode` and specify either `Days` or `Years` .",
5508 "stability": "external",
5509 "summary": "The number of years that you want to specify for the default retention period."
5510 },
5511 "immutable": true,
5512 "locationInModule": {
5513 "filename": "lib/s3.generated.ts",
5514 "line": 1692
5515 },
5516 "name": "years",
5517 "optional": true,
5518 "type": {
5519 "primitive": "number"
5520 }
5521 }
5522 ],
5523 "symbolId": "lib/s3.generated:CfnBucket.DefaultRetentionProperty"
5524 },
5525 "@aws-cdk/aws-s3.CfnBucket.DeleteMarkerReplicationProperty": {
5526 "assembly": "@aws-cdk/aws-s3",
5527 "datatype": true,
5528 "docs": {
5529 "custom": {
5530 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-deletemarkerreplication.html",
5531 "exampleMetadata": "fixture=_generated"
5532 },
5533 "remarks": "If you specify a `Filter` in your replication configuration, you must also include a `DeleteMarkerReplication` element. If your `Filter` includes a `Tag` element, the `DeleteMarkerReplication` `Status` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config) .\n\nFor more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html) .\n\n> If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations) .",
5534 "stability": "external",
5535 "summary": "Specifies whether Amazon S3 replicates delete markers.",
5536 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst deleteMarkerReplicationProperty: s3.CfnBucket.DeleteMarkerReplicationProperty = {\n status: 'status',\n};"
5537 },
5538 "fqn": "@aws-cdk/aws-s3.CfnBucket.DeleteMarkerReplicationProperty",
5539 "kind": "interface",
5540 "locationInModule": {
5541 "filename": "lib/s3.generated.ts",
5542 "line": 1763
5543 },
5544 "name": "DeleteMarkerReplicationProperty",
5545 "namespace": "CfnBucket",
5546 "properties": [
5547 {
5548 "abstract": true,
5549 "docs": {
5550 "custom": {
5551 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-deletemarkerreplication.html#cfn-s3-bucket-deletemarkerreplication-status"
5552 },
5553 "remarks": "Disabled by default.",
5554 "stability": "external",
5555 "summary": "Indicates whether to replicate delete markers."
5556 },
5557 "immutable": true,
5558 "locationInModule": {
5559 "filename": "lib/s3.generated.ts",
5560 "line": 1769
5561 },
5562 "name": "status",
5563 "optional": true,
5564 "type": {
5565 "primitive": "string"
5566 }
5567 }
5568 ],
5569 "symbolId": "lib/s3.generated:CfnBucket.DeleteMarkerReplicationProperty"
5570 },
5571 "@aws-cdk/aws-s3.CfnBucket.DestinationProperty": {
5572 "assembly": "@aws-cdk/aws-s3",
5573 "datatype": true,
5574 "docs": {
5575 "custom": {
5576 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html",
5577 "exampleMetadata": "fixture=_generated"
5578 },
5579 "stability": "external",
5580 "summary": "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket.",
5581 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst destinationProperty: s3.CfnBucket.DestinationProperty = {\n bucketArn: 'bucketArn',\n format: 'format',\n\n // the properties below are optional\n bucketAccountId: 'bucketAccountId',\n prefix: 'prefix',\n};"
5582 },
5583 "fqn": "@aws-cdk/aws-s3.CfnBucket.DestinationProperty",
5584 "kind": "interface",
5585 "locationInModule": {
5586 "filename": "lib/s3.generated.ts",
5587 "line": 1830
5588 },
5589 "name": "DestinationProperty",
5590 "namespace": "CfnBucket",
5591 "properties": [
5592 {
5593 "abstract": true,
5594 "docs": {
5595 "custom": {
5596 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-bucketarn"
5597 },
5598 "stability": "external",
5599 "summary": "The Amazon Resource Name (ARN) of the bucket to which data is exported."
5600 },
5601 "immutable": true,
5602 "locationInModule": {
5603 "filename": "lib/s3.generated.ts",
5604 "line": 1844
5605 },
5606 "name": "bucketArn",
5607 "type": {
5608 "primitive": "string"
5609 }
5610 },
5611 {
5612 "abstract": true,
5613 "docs": {
5614 "custom": {
5615 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-format"
5616 },
5617 "remarks": "*Allowed values* : `CSV` | `ORC` | `Parquet`",
5618 "stability": "external",
5619 "summary": "Specifies the file format used when exporting data to Amazon S3."
5620 },
5621 "immutable": true,
5622 "locationInModule": {
5623 "filename": "lib/s3.generated.ts",
5624 "line": 1852
5625 },
5626 "name": "format",
5627 "type": {
5628 "primitive": "string"
5629 }
5630 },
5631 {
5632 "abstract": true,
5633 "docs": {
5634 "custom": {
5635 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-bucketaccountid"
5636 },
5637 "remarks": "If no account ID is provided, the owner is not validated before exporting data.\n\n> Although this value is optional, we strongly recommend that you set it to help prevent problems if the destination bucket ownership changes.",
5638 "stability": "external",
5639 "summary": "The account ID that owns the destination S3 bucket."
5640 },
5641 "immutable": true,
5642 "locationInModule": {
5643 "filename": "lib/s3.generated.ts",
5644 "line": 1838
5645 },
5646 "name": "bucketAccountId",
5647 "optional": true,
5648 "type": {
5649 "primitive": "string"
5650 }
5651 },
5652 {
5653 "abstract": true,
5654 "docs": {
5655 "custom": {
5656 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html#cfn-s3-bucket-destination-prefix"
5657 },
5658 "remarks": "The prefix is prepended to all results.",
5659 "stability": "external",
5660 "summary": "The prefix to use when exporting data."
5661 },
5662 "immutable": true,
5663 "locationInModule": {
5664 "filename": "lib/s3.generated.ts",
5665 "line": 1858
5666 },
5667 "name": "prefix",
5668 "optional": true,
5669 "type": {
5670 "primitive": "string"
5671 }
5672 }
5673 ],
5674 "symbolId": "lib/s3.generated:CfnBucket.DestinationProperty"
5675 },
5676 "@aws-cdk/aws-s3.CfnBucket.EncryptionConfigurationProperty": {
5677 "assembly": "@aws-cdk/aws-s3",
5678 "datatype": true,
5679 "docs": {
5680 "custom": {
5681 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html",
5682 "exampleMetadata": "fixture=_generated"
5683 },
5684 "stability": "external",
5685 "summary": "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.",
5686 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst encryptionConfigurationProperty: s3.CfnBucket.EncryptionConfigurationProperty = {\n replicaKmsKeyId: 'replicaKmsKeyId',\n};"
5687 },
5688 "fqn": "@aws-cdk/aws-s3.CfnBucket.EncryptionConfigurationProperty",
5689 "kind": "interface",
5690 "locationInModule": {
5691 "filename": "lib/s3.generated.ts",
5692 "line": 1930
5693 },
5694 "name": "EncryptionConfigurationProperty",
5695 "namespace": "CfnBucket",
5696 "properties": [
5697 {
5698 "abstract": true,
5699 "docs": {
5700 "custom": {
5701 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html#cfn-s3-bucket-encryptionconfiguration-replicakmskeyid"
5702 },
5703 "remarks": "Amazon S3 uses this key to encrypt replica objects. Amazon S3 only supports symmetric, customer managed KMS keys. For more information, see [Using symmetric and asymmetric keys](https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html) in the *AWS Key Management Service Developer Guide* .",
5704 "stability": "external",
5705 "summary": "Specifies the ID (Key ARN or Alias ARN) of the customer managed AWS KMS key stored in AWS Key Management Service (KMS) for the destination bucket."
5706 },
5707 "immutable": true,
5708 "locationInModule": {
5709 "filename": "lib/s3.generated.ts",
5710 "line": 1936
5711 },
5712 "name": "replicaKmsKeyId",
5713 "type": {
5714 "primitive": "string"
5715 }
5716 }
5717 ],
5718 "symbolId": "lib/s3.generated:CfnBucket.EncryptionConfigurationProperty"
5719 },
5720 "@aws-cdk/aws-s3.CfnBucket.EventBridgeConfigurationProperty": {
5721 "assembly": "@aws-cdk/aws-s3",
5722 "datatype": true,
5723 "docs": {
5724 "custom": {
5725 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-eventbridgeconfig.html",
5726 "exampleMetadata": "fixture=_generated"
5727 },
5728 "remarks": "Unlike other destinations, delivery of events to EventBridge can be either enabled or disabled for a bucket. If enabled, all events will be sent to EventBridge and you can use EventBridge rules to route events to additional targets. For more information, see [What Is Amazon EventBridge](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) in the *Amazon EventBridge User Guide*",
5729 "stability": "external",
5730 "summary": "Amazon S3 can send events to Amazon EventBridge whenever certain events happen in your bucket, see [Using EventBridge](https://docs.aws.amazon.com/AmazonS3/latest/userguide/EventBridge.html) in the *Amazon S3 User Guide* .",
5731 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst eventBridgeConfigurationProperty: s3.CfnBucket.EventBridgeConfigurationProperty = {\n eventBridgeEnabled: false,\n};"
5732 },
5733 "fqn": "@aws-cdk/aws-s3.CfnBucket.EventBridgeConfigurationProperty",
5734 "kind": "interface",
5735 "locationInModule": {
5736 "filename": "lib/s3.generated.ts",
5737 "line": 2000
5738 },
5739 "name": "EventBridgeConfigurationProperty",
5740 "namespace": "CfnBucket",
5741 "properties": [
5742 {
5743 "abstract": true,
5744 "docs": {
5745 "custom": {
5746 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-eventbridgeconfig.html#cfn-s3-bucket-eventbridgeconfiguration-eventbridgeenabled"
5747 },
5748 "stability": "external",
5749 "summary": "Enables delivery of events to Amazon EventBridge."
5750 },
5751 "immutable": true,
5752 "locationInModule": {
5753 "filename": "lib/s3.generated.ts",
5754 "line": 2006
5755 },
5756 "name": "eventBridgeEnabled",
5757 "optional": true,
5758 "type": {
5759 "union": {
5760 "types": [
5761 {
5762 "primitive": "boolean"
5763 },
5764 {
5765 "fqn": "@aws-cdk/core.IResolvable"
5766 }
5767 ]
5768 }
5769 }
5770 }
5771 ],
5772 "symbolId": "lib/s3.generated:CfnBucket.EventBridgeConfigurationProperty"
5773 },
5774 "@aws-cdk/aws-s3.CfnBucket.FilterRuleProperty": {
5775 "assembly": "@aws-cdk/aws-s3",
5776 "datatype": true,
5777 "docs": {
5778 "custom": {
5779 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html",
5780 "exampleMetadata": "fixture=_generated"
5781 },
5782 "stability": "external",
5783 "summary": "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.",
5784 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst filterRuleProperty: s3.CfnBucket.FilterRuleProperty = {\n name: 'name',\n value: 'value',\n};"
5785 },
5786 "fqn": "@aws-cdk/aws-s3.CfnBucket.FilterRuleProperty",
5787 "kind": "interface",
5788 "locationInModule": {
5789 "filename": "lib/s3.generated.ts",
5790 "line": 2067
5791 },
5792 "name": "FilterRuleProperty",
5793 "namespace": "CfnBucket",
5794 "properties": [
5795 {
5796 "abstract": true,
5797 "docs": {
5798 "custom": {
5799 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules-name"
5800 },
5801 "remarks": "The maximum length is 1,024 characters. Overlapping prefixes and suffixes are not supported. For more information, see [Configuring Event Notifications](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the *Amazon S3 User Guide* .",
5802 "stability": "external",
5803 "summary": "The object key name prefix or suffix identifying one or more objects to which the filtering rule applies."
5804 },
5805 "immutable": true,
5806 "locationInModule": {
5807 "filename": "lib/s3.generated.ts",
5808 "line": 2073
5809 },
5810 "name": "name",
5811 "type": {
5812 "primitive": "string"
5813 }
5814 },
5815 {
5816 "abstract": true,
5817 "docs": {
5818 "custom": {
5819 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules-value"
5820 },
5821 "stability": "external",
5822 "summary": "The value that the filter searches for in object key names."
5823 },
5824 "immutable": true,
5825 "locationInModule": {
5826 "filename": "lib/s3.generated.ts",
5827 "line": 2079
5828 },
5829 "name": "value",
5830 "type": {
5831 "primitive": "string"
5832 }
5833 }
5834 ],
5835 "symbolId": "lib/s3.generated:CfnBucket.FilterRuleProperty"
5836 },
5837 "@aws-cdk/aws-s3.CfnBucket.IntelligentTieringConfigurationProperty": {
5838 "assembly": "@aws-cdk/aws-s3",
5839 "datatype": true,
5840 "docs": {
5841 "custom": {
5842 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html",
5843 "exampleMetadata": "fixture=_generated"
5844 },
5845 "remarks": "For information about the S3 Intelligent-Tiering storage class, see [Storage class for automatically optimizing frequently and infrequently accessed objects](https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access) .",
5846 "stability": "external",
5847 "summary": "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.",
5848 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst intelligentTieringConfigurationProperty: s3.CfnBucket.IntelligentTieringConfigurationProperty = {\n id: 'id',\n status: 'status',\n tierings: [{\n accessTier: 'accessTier',\n days: 123,\n }],\n\n // the properties below are optional\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n};"
5849 },
5850 "fqn": "@aws-cdk/aws-s3.CfnBucket.IntelligentTieringConfigurationProperty",
5851 "kind": "interface",
5852 "locationInModule": {
5853 "filename": "lib/s3.generated.ts",
5854 "line": 2147
5855 },
5856 "name": "IntelligentTieringConfigurationProperty",
5857 "namespace": "CfnBucket",
5858 "properties": [
5859 {
5860 "abstract": true,
5861 "docs": {
5862 "custom": {
5863 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-id"
5864 },
5865 "stability": "external",
5866 "summary": "The ID used to identify the S3 Intelligent-Tiering configuration."
5867 },
5868 "immutable": true,
5869 "locationInModule": {
5870 "filename": "lib/s3.generated.ts",
5871 "line": 2153
5872 },
5873 "name": "id",
5874 "type": {
5875 "primitive": "string"
5876 }
5877 },
5878 {
5879 "abstract": true,
5880 "docs": {
5881 "custom": {
5882 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-status"
5883 },
5884 "stability": "external",
5885 "summary": "Specifies the status of the configuration."
5886 },
5887 "immutable": true,
5888 "locationInModule": {
5889 "filename": "lib/s3.generated.ts",
5890 "line": 2165
5891 },
5892 "name": "status",
5893 "type": {
5894 "primitive": "string"
5895 }
5896 },
5897 {
5898 "abstract": true,
5899 "docs": {
5900 "custom": {
5901 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-tierings"
5902 },
5903 "remarks": "At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: `ARCHIVE_ACCESS` and `DEEP_ARCHIVE_ACCESS` .\n\n> You only need Intelligent Tiering Configuration enabled on a bucket if you want to automatically move objects stored in the Intelligent-Tiering storage class to Archive Access or Deep Archive Access tiers.",
5904 "stability": "external",
5905 "summary": "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration."
5906 },
5907 "immutable": true,
5908 "locationInModule": {
5909 "filename": "lib/s3.generated.ts",
5910 "line": 2179
5911 },
5912 "name": "tierings",
5913 "type": {
5914 "union": {
5915 "types": [
5916 {
5917 "fqn": "@aws-cdk/core.IResolvable"
5918 },
5919 {
5920 "collection": {
5921 "elementtype": {
5922 "union": {
5923 "types": [
5924 {
5925 "fqn": "@aws-cdk/core.IResolvable"
5926 },
5927 {
5928 "fqn": "@aws-cdk/aws-s3.CfnBucket.TieringProperty"
5929 }
5930 ]
5931 }
5932 },
5933 "kind": "array"
5934 }
5935 }
5936 ]
5937 }
5938 }
5939 },
5940 {
5941 "abstract": true,
5942 "docs": {
5943 "custom": {
5944 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-prefix"
5945 },
5946 "stability": "external",
5947 "summary": "An object key name prefix that identifies the subset of objects to which the rule applies."
5948 },
5949 "immutable": true,
5950 "locationInModule": {
5951 "filename": "lib/s3.generated.ts",
5952 "line": 2159
5953 },
5954 "name": "prefix",
5955 "optional": true,
5956 "type": {
5957 "primitive": "string"
5958 }
5959 },
5960 {
5961 "abstract": true,
5962 "docs": {
5963 "custom": {
5964 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html#cfn-s3-bucket-intelligenttieringconfiguration-tagfilters"
5965 },
5966 "stability": "external",
5967 "summary": "A container for a key-value pair."
5968 },
5969 "immutable": true,
5970 "locationInModule": {
5971 "filename": "lib/s3.generated.ts",
5972 "line": 2171
5973 },
5974 "name": "tagFilters",
5975 "optional": true,
5976 "type": {
5977 "union": {
5978 "types": [
5979 {
5980 "fqn": "@aws-cdk/core.IResolvable"
5981 },
5982 {
5983 "collection": {
5984 "elementtype": {
5985 "union": {
5986 "types": [
5987 {
5988 "fqn": "@aws-cdk/core.IResolvable"
5989 },
5990 {
5991 "fqn": "@aws-cdk/aws-s3.CfnBucket.TagFilterProperty"
5992 }
5993 ]
5994 }
5995 },
5996 "kind": "array"
5997 }
5998 }
5999 ]
6000 }
6001 }
6002 }
6003 ],
6004 "symbolId": "lib/s3.generated:CfnBucket.IntelligentTieringConfigurationProperty"
6005 },
6006 "@aws-cdk/aws-s3.CfnBucket.InventoryConfigurationProperty": {
6007 "assembly": "@aws-cdk/aws-s3",
6008 "datatype": true,
6009 "docs": {
6010 "custom": {
6011 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html",
6012 "exampleMetadata": "fixture=_generated"
6013 },
6014 "remarks": "For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference* .",
6015 "stability": "external",
6016 "summary": "Specifies the inventory configuration for an Amazon S3 bucket.",
6017 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst inventoryConfigurationProperty: s3.CfnBucket.InventoryConfigurationProperty = {\n destination: {\n bucketArn: 'bucketArn',\n format: 'format',\n\n // the properties below are optional\n bucketAccountId: 'bucketAccountId',\n prefix: 'prefix',\n },\n enabled: false,\n id: 'id',\n includedObjectVersions: 'includedObjectVersions',\n scheduleFrequency: 'scheduleFrequency',\n\n // the properties below are optional\n optionalFields: ['optionalFields'],\n prefix: 'prefix',\n};"
6018 },
6019 "fqn": "@aws-cdk/aws-s3.CfnBucket.InventoryConfigurationProperty",
6020 "kind": "interface",
6021 "locationInModule": {
6022 "filename": "lib/s3.generated.ts",
6023 "line": 2255
6024 },
6025 "name": "InventoryConfigurationProperty",
6026 "namespace": "CfnBucket",
6027 "properties": [
6028 {
6029 "abstract": true,
6030 "docs": {
6031 "custom": {
6032 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-destination"
6033 },
6034 "stability": "external",
6035 "summary": "Contains information about where to publish the inventory results."
6036 },
6037 "immutable": true,
6038 "locationInModule": {
6039 "filename": "lib/s3.generated.ts",
6040 "line": 2261
6041 },
6042 "name": "destination",
6043 "type": {
6044 "union": {
6045 "types": [
6046 {
6047 "fqn": "@aws-cdk/core.IResolvable"
6048 },
6049 {
6050 "fqn": "@aws-cdk/aws-s3.CfnBucket.DestinationProperty"
6051 }
6052 ]
6053 }
6054 }
6055 },
6056 {
6057 "abstract": true,
6058 "docs": {
6059 "custom": {
6060 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-enabled"
6061 },
6062 "remarks": "If set to `True` , an inventory list is generated. If set to `False` , no inventory list is generated.",
6063 "stability": "external",
6064 "summary": "Specifies whether the inventory is enabled or disabled."
6065 },
6066 "immutable": true,
6067 "locationInModule": {
6068 "filename": "lib/s3.generated.ts",
6069 "line": 2267
6070 },
6071 "name": "enabled",
6072 "type": {
6073 "union": {
6074 "types": [
6075 {
6076 "primitive": "boolean"
6077 },
6078 {
6079 "fqn": "@aws-cdk/core.IResolvable"
6080 }
6081 ]
6082 }
6083 }
6084 },
6085 {
6086 "abstract": true,
6087 "docs": {
6088 "custom": {
6089 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-id"
6090 },
6091 "stability": "external",
6092 "summary": "The ID used to identify the inventory configuration."
6093 },
6094 "immutable": true,
6095 "locationInModule": {
6096 "filename": "lib/s3.generated.ts",
6097 "line": 2273
6098 },
6099 "name": "id",
6100 "type": {
6101 "primitive": "string"
6102 }
6103 },
6104 {
6105 "abstract": true,
6106 "docs": {
6107 "custom": {
6108 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-includedobjectversions"
6109 },
6110 "remarks": "If set to `All` , the list includes all the object versions, which adds the version-related fields `VersionId` , `IsLatest` , and `DeleteMarker` to the list. If set to `Current` , the list does not contain these version-related fields.",
6111 "stability": "external",
6112 "summary": "Object versions to include in the inventory list."
6113 },
6114 "immutable": true,
6115 "locationInModule": {
6116 "filename": "lib/s3.generated.ts",
6117 "line": 2279
6118 },
6119 "name": "includedObjectVersions",
6120 "type": {
6121 "primitive": "string"
6122 }
6123 },
6124 {
6125 "abstract": true,
6126 "docs": {
6127 "custom": {
6128 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-schedulefrequency"
6129 },
6130 "remarks": "*Allowed values* : `Daily` | `Weekly`",
6131 "stability": "external",
6132 "summary": "Specifies the schedule for generating inventory results."
6133 },
6134 "immutable": true,
6135 "locationInModule": {
6136 "filename": "lib/s3.generated.ts",
6137 "line": 2301
6138 },
6139 "name": "scheduleFrequency",
6140 "type": {
6141 "primitive": "string"
6142 }
6143 },
6144 {
6145 "abstract": true,
6146 "docs": {
6147 "custom": {
6148 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-optionalfields"
6149 },
6150 "remarks": "*Valid values* : `Size | LastModifiedDate | StorageClass | ETag | IsMultipartUploaded | ReplicationStatus | EncryptionStatus | ObjectLockRetainUntilDate | ObjectLockMode | ObjectLockLegalHoldStatus | IntelligentTieringAccessTier | BucketKeyStatus`",
6151 "stability": "external",
6152 "summary": "Contains the optional fields that are included in the inventory results."
6153 },
6154 "immutable": true,
6155 "locationInModule": {
6156 "filename": "lib/s3.generated.ts",
6157 "line": 2287
6158 },
6159 "name": "optionalFields",
6160 "optional": true,
6161 "type": {
6162 "collection": {
6163 "elementtype": {
6164 "primitive": "string"
6165 },
6166 "kind": "array"
6167 }
6168 }
6169 },
6170 {
6171 "abstract": true,
6172 "docs": {
6173 "custom": {
6174 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html#cfn-s3-bucket-inventoryconfiguration-prefix"
6175 },
6176 "stability": "external",
6177 "summary": "Specifies the inventory filter prefix."
6178 },
6179 "immutable": true,
6180 "locationInModule": {
6181 "filename": "lib/s3.generated.ts",
6182 "line": 2293
6183 },
6184 "name": "prefix",
6185 "optional": true,
6186 "type": {
6187 "primitive": "string"
6188 }
6189 }
6190 ],
6191 "symbolId": "lib/s3.generated:CfnBucket.InventoryConfigurationProperty"
6192 },
6193 "@aws-cdk/aws-s3.CfnBucket.LambdaConfigurationProperty": {
6194 "assembly": "@aws-cdk/aws-s3",
6195 "datatype": true,
6196 "docs": {
6197 "custom": {
6198 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html",
6199 "exampleMetadata": "fixture=_generated"
6200 },
6201 "stability": "external",
6202 "summary": "Describes the AWS Lambda functions to invoke and the events for which to invoke them.",
6203 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst lambdaConfigurationProperty: s3.CfnBucket.LambdaConfigurationProperty = {\n event: 'event',\n function: 'function',\n\n // the properties below are optional\n filter: {\n s3Key: {\n rules: [{\n name: 'name',\n value: 'value',\n }],\n },\n },\n};"
6204 },
6205 "fqn": "@aws-cdk/aws-s3.CfnBucket.LambdaConfigurationProperty",
6206 "kind": "interface",
6207 "locationInModule": {
6208 "filename": "lib/s3.generated.ts",
6209 "line": 2385
6210 },
6211 "name": "LambdaConfigurationProperty",
6212 "namespace": "CfnBucket",
6213 "properties": [
6214 {
6215 "abstract": true,
6216 "docs": {
6217 "custom": {
6218 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-event"
6219 },
6220 "remarks": "For more information, see [Supported Event Types](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the *Amazon S3 User Guide* .",
6221 "stability": "external",
6222 "summary": "The Amazon S3 bucket event for which to invoke the AWS Lambda function."
6223 },
6224 "immutable": true,
6225 "locationInModule": {
6226 "filename": "lib/s3.generated.ts",
6227 "line": 2391
6228 },
6229 "name": "event",
6230 "type": {
6231 "primitive": "string"
6232 }
6233 },
6234 {
6235 "abstract": true,
6236 "docs": {
6237 "custom": {
6238 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-function"
6239 },
6240 "stability": "external",
6241 "summary": "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs."
6242 },
6243 "immutable": true,
6244 "locationInModule": {
6245 "filename": "lib/s3.generated.ts",
6246 "line": 2403
6247 },
6248 "name": "function",
6249 "type": {
6250 "primitive": "string"
6251 }
6252 },
6253 {
6254 "abstract": true,
6255 "docs": {
6256 "custom": {
6257 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-filter"
6258 },
6259 "remarks": "For example, you can create a filter so that only image files with a `.jpg` extension invoke the function when they are added to the Amazon S3 bucket.",
6260 "stability": "external",
6261 "summary": "The filtering rules that determine which objects invoke the AWS Lambda function."
6262 },
6263 "immutable": true,
6264 "locationInModule": {
6265 "filename": "lib/s3.generated.ts",
6266 "line": 2397
6267 },
6268 "name": "filter",
6269 "optional": true,
6270 "type": {
6271 "union": {
6272 "types": [
6273 {
6274 "fqn": "@aws-cdk/core.IResolvable"
6275 },
6276 {
6277 "fqn": "@aws-cdk/aws-s3.CfnBucket.NotificationFilterProperty"
6278 }
6279 ]
6280 }
6281 }
6282 }
6283 ],
6284 "symbolId": "lib/s3.generated:CfnBucket.LambdaConfigurationProperty"
6285 },
6286 "@aws-cdk/aws-s3.CfnBucket.LifecycleConfigurationProperty": {
6287 "assembly": "@aws-cdk/aws-s3",
6288 "datatype": true,
6289 "docs": {
6290 "custom": {
6291 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html",
6292 "exampleMetadata": "fixture=_generated"
6293 },
6294 "remarks": "For more information, see [Object Lifecycle Management](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in the *Amazon S3 User Guide* .",
6295 "stability": "external",
6296 "summary": "Specifies the lifecycle configuration for objects in an Amazon S3 bucket.",
6297 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst lifecycleConfigurationProperty: s3.CfnBucket.LifecycleConfigurationProperty = {\n rules: [{\n status: 'status',\n\n // the properties below are optional\n abortIncompleteMultipartUpload: {\n daysAfterInitiation: 123,\n },\n expirationDate: new Date(),\n expirationInDays: 123,\n expiredObjectDeleteMarker: false,\n id: 'id',\n noncurrentVersionExpiration: {\n noncurrentDays: 123,\n\n // the properties below are optional\n newerNoncurrentVersions: 123,\n },\n noncurrentVersionExpirationInDays: 123,\n noncurrentVersionTransition: {\n storageClass: 'storageClass',\n transitionInDays: 123,\n\n // the properties below are optional\n newerNoncurrentVersions: 123,\n },\n noncurrentVersionTransitions: [{\n storageClass: 'storageClass',\n transitionInDays: 123,\n\n // the properties below are optional\n newerNoncurrentVersions: 123,\n }],\n objectSizeGreaterThan: 123,\n objectSizeLessThan: 123,\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n transition: {\n storageClass: 'storageClass',\n\n // the properties below are optional\n transitionDate: new Date(),\n transitionInDays: 123,\n },\n transitions: [{\n storageClass: 'storageClass',\n\n // the properties below are optional\n transitionDate: new Date(),\n transitionInDays: 123,\n }],\n }],\n};"
6298 },
6299 "fqn": "@aws-cdk/aws-s3.CfnBucket.LifecycleConfigurationProperty",
6300 "kind": "interface",
6301 "locationInModule": {
6302 "filename": "lib/s3.generated.ts",
6303 "line": 2472
6304 },
6305 "name": "LifecycleConfigurationProperty",
6306 "namespace": "CfnBucket",
6307 "properties": [
6308 {
6309 "abstract": true,
6310 "docs": {
6311 "custom": {
6312 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html#cfn-s3-bucket-lifecycleconfig-rules"
6313 },
6314 "stability": "external",
6315 "summary": "A lifecycle rule for individual objects in an Amazon S3 bucket."
6316 },
6317 "immutable": true,
6318 "locationInModule": {
6319 "filename": "lib/s3.generated.ts",
6320 "line": 2478
6321 },
6322 "name": "rules",
6323 "type": {
6324 "union": {
6325 "types": [
6326 {
6327 "fqn": "@aws-cdk/core.IResolvable"
6328 },
6329 {
6330 "collection": {
6331 "elementtype": {
6332 "union": {
6333 "types": [
6334 {
6335 "fqn": "@aws-cdk/core.IResolvable"
6336 },
6337 {
6338 "fqn": "@aws-cdk/aws-s3.CfnBucket.RuleProperty"
6339 }
6340 ]
6341 }
6342 },
6343 "kind": "array"
6344 }
6345 }
6346 ]
6347 }
6348 }
6349 }
6350 ],
6351 "symbolId": "lib/s3.generated:CfnBucket.LifecycleConfigurationProperty"
6352 },
6353 "@aws-cdk/aws-s3.CfnBucket.LoggingConfigurationProperty": {
6354 "assembly": "@aws-cdk/aws-s3",
6355 "datatype": true,
6356 "docs": {
6357 "custom": {
6358 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html",
6359 "exampleMetadata": "fixture=_generated"
6360 },
6361 "remarks": "For examples and more information, see [PUT Bucket logging](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html) in the *Amazon S3 API Reference* .\n\n> To successfully complete the `AWS::S3::Bucket LoggingConfiguration` request, you must have `s3:PutObject` and `s3:PutObjectAcl` in your IAM permissions.",
6362 "stability": "external",
6363 "summary": "Describes where logs are stored and the prefix that Amazon S3 assigns to all log object keys for a bucket.",
6364 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst loggingConfigurationProperty: s3.CfnBucket.LoggingConfigurationProperty = {\n destinationBucketName: 'destinationBucketName',\n logFilePrefix: 'logFilePrefix',\n};"
6365 },
6366 "fqn": "@aws-cdk/aws-s3.CfnBucket.LoggingConfigurationProperty",
6367 "kind": "interface",
6368 "locationInModule": {
6369 "filename": "lib/s3.generated.ts",
6370 "line": 2542
6371 },
6372 "name": "LoggingConfigurationProperty",
6373 "namespace": "CfnBucket",
6374 "properties": [
6375 {
6376 "abstract": true,
6377 "docs": {
6378 "custom": {
6379 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-destinationbucketname"
6380 },
6381 "remarks": "You can store log files in any bucket that you own. By default, logs are stored in the bucket where the `LoggingConfiguration` property is defined.",
6382 "stability": "external",
6383 "summary": "The name of the bucket where Amazon S3 should store server access log files."
6384 },
6385 "immutable": true,
6386 "locationInModule": {
6387 "filename": "lib/s3.generated.ts",
6388 "line": 2548
6389 },
6390 "name": "destinationBucketName",
6391 "optional": true,
6392 "type": {
6393 "primitive": "string"
6394 }
6395 },
6396 {
6397 "abstract": true,
6398 "docs": {
6399 "custom": {
6400 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-logfileprefix"
6401 },
6402 "remarks": "If you store log files from multiple Amazon S3 buckets in a single bucket, you can use a prefix to distinguish which log files came from which bucket.",
6403 "stability": "external",
6404 "summary": "A prefix for all log object keys."
6405 },
6406 "immutable": true,
6407 "locationInModule": {
6408 "filename": "lib/s3.generated.ts",
6409 "line": 2554
6410 },
6411 "name": "logFilePrefix",
6412 "optional": true,
6413 "type": {
6414 "primitive": "string"
6415 }
6416 }
6417 ],
6418 "symbolId": "lib/s3.generated:CfnBucket.LoggingConfigurationProperty"
6419 },
6420 "@aws-cdk/aws-s3.CfnBucket.MetricsConfigurationProperty": {
6421 "assembly": "@aws-cdk/aws-s3",
6422 "datatype": true,
6423 "docs": {
6424 "custom": {
6425 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html",
6426 "exampleMetadata": "fixture=_generated"
6427 },
6428 "remarks": "If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For examples, see [AWS::S3::Bucket](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#aws-properties-s3-bucket--examples) . For more information, see [PUT Bucket metrics](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html) in the *Amazon S3 API Reference* .",
6429 "stability": "external",
6430 "summary": "Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket.",
6431 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst metricsConfigurationProperty: s3.CfnBucket.MetricsConfigurationProperty = {\n id: 'id',\n\n // the properties below are optional\n accessPointArn: 'accessPointArn',\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n};"
6432 },
6433 "fqn": "@aws-cdk/aws-s3.CfnBucket.MetricsConfigurationProperty",
6434 "kind": "interface",
6435 "locationInModule": {
6436 "filename": "lib/s3.generated.ts",
6437 "line": 2695
6438 },
6439 "name": "MetricsConfigurationProperty",
6440 "namespace": "CfnBucket",
6441 "properties": [
6442 {
6443 "abstract": true,
6444 "docs": {
6445 "custom": {
6446 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-id"
6447 },
6448 "remarks": "This can be any value you choose that helps you identify your metrics configuration.",
6449 "stability": "external",
6450 "summary": "The ID used to identify the metrics configuration."
6451 },
6452 "immutable": true,
6453 "locationInModule": {
6454 "filename": "lib/s3.generated.ts",
6455 "line": 2707
6456 },
6457 "name": "id",
6458 "type": {
6459 "primitive": "string"
6460 }
6461 },
6462 {
6463 "abstract": true,
6464 "docs": {
6465 "custom": {
6466 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-accesspointarn"
6467 },
6468 "remarks": "The metrics configuration only includes objects that meet the filter's criteria.",
6469 "stability": "external",
6470 "summary": "The access point that was used while performing operations on the object."
6471 },
6472 "immutable": true,
6473 "locationInModule": {
6474 "filename": "lib/s3.generated.ts",
6475 "line": 2701
6476 },
6477 "name": "accessPointArn",
6478 "optional": true,
6479 "type": {
6480 "primitive": "string"
6481 }
6482 },
6483 {
6484 "abstract": true,
6485 "docs": {
6486 "custom": {
6487 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-prefix"
6488 },
6489 "stability": "external",
6490 "summary": "The prefix that an object must have to be included in the metrics results."
6491 },
6492 "immutable": true,
6493 "locationInModule": {
6494 "filename": "lib/s3.generated.ts",
6495 "line": 2713
6496 },
6497 "name": "prefix",
6498 "optional": true,
6499 "type": {
6500 "primitive": "string"
6501 }
6502 },
6503 {
6504 "abstract": true,
6505 "docs": {
6506 "custom": {
6507 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metricsconfiguration.html#cfn-s3-bucket-metricsconfiguration-tagfilters"
6508 },
6509 "remarks": "The metrics configuration includes only objects that meet the filter's criteria.",
6510 "stability": "external",
6511 "summary": "Specifies a list of tag filters to use as a metrics configuration filter."
6512 },
6513 "immutable": true,
6514 "locationInModule": {
6515 "filename": "lib/s3.generated.ts",
6516 "line": 2719
6517 },
6518 "name": "tagFilters",
6519 "optional": true,
6520 "type": {
6521 "union": {
6522 "types": [
6523 {
6524 "fqn": "@aws-cdk/core.IResolvable"
6525 },
6526 {
6527 "collection": {
6528 "elementtype": {
6529 "union": {
6530 "types": [
6531 {
6532 "fqn": "@aws-cdk/core.IResolvable"
6533 },
6534 {
6535 "fqn": "@aws-cdk/aws-s3.CfnBucket.TagFilterProperty"
6536 }
6537 ]
6538 }
6539 },
6540 "kind": "array"
6541 }
6542 }
6543 ]
6544 }
6545 }
6546 }
6547 ],
6548 "symbolId": "lib/s3.generated:CfnBucket.MetricsConfigurationProperty"
6549 },
6550 "@aws-cdk/aws-s3.CfnBucket.MetricsProperty": {
6551 "assembly": "@aws-cdk/aws-s3",
6552 "datatype": true,
6553 "docs": {
6554 "custom": {
6555 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metrics.html",
6556 "exampleMetadata": "fixture=_generated"
6557 },
6558 "stability": "external",
6559 "summary": "A container specifying replication metrics-related settings enabling replication metrics and events.",
6560 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst metricsProperty: s3.CfnBucket.MetricsProperty = {\n status: 'status',\n\n // the properties below are optional\n eventThreshold: {\n minutes: 123,\n },\n};"
6561 },
6562 "fqn": "@aws-cdk/aws-s3.CfnBucket.MetricsProperty",
6563 "kind": "interface",
6564 "locationInModule": {
6565 "filename": "lib/s3.generated.ts",
6566 "line": 2618
6567 },
6568 "name": "MetricsProperty",
6569 "namespace": "CfnBucket",
6570 "properties": [
6571 {
6572 "abstract": true,
6573 "docs": {
6574 "custom": {
6575 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metrics.html#cfn-s3-bucket-metrics-status"
6576 },
6577 "stability": "external",
6578 "summary": "Specifies whether the replication metrics are enabled."
6579 },
6580 "immutable": true,
6581 "locationInModule": {
6582 "filename": "lib/s3.generated.ts",
6583 "line": 2630
6584 },
6585 "name": "status",
6586 "type": {
6587 "primitive": "string"
6588 }
6589 },
6590 {
6591 "abstract": true,
6592 "docs": {
6593 "custom": {
6594 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metrics.html#cfn-s3-bucket-metrics-eventthreshold"
6595 },
6596 "stability": "external",
6597 "summary": "A container specifying the time threshold for emitting the `s3:Replication:OperationMissedThreshold` event."
6598 },
6599 "immutable": true,
6600 "locationInModule": {
6601 "filename": "lib/s3.generated.ts",
6602 "line": 2624
6603 },
6604 "name": "eventThreshold",
6605 "optional": true,
6606 "type": {
6607 "union": {
6608 "types": [
6609 {
6610 "fqn": "@aws-cdk/core.IResolvable"
6611 },
6612 {
6613 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationTimeValueProperty"
6614 }
6615 ]
6616 }
6617 }
6618 }
6619 ],
6620 "symbolId": "lib/s3.generated:CfnBucket.MetricsProperty"
6621 },
6622 "@aws-cdk/aws-s3.CfnBucket.NoncurrentVersionExpirationProperty": {
6623 "assembly": "@aws-cdk/aws-s3",
6624 "datatype": true,
6625 "docs": {
6626 "custom": {
6627 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversionexpiration.html",
6628 "exampleMetadata": "fixture=_generated"
6629 },
6630 "remarks": "Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.",
6631 "stability": "external",
6632 "summary": "Specifies when noncurrent object versions expire.",
6633 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst noncurrentVersionExpirationProperty: s3.CfnBucket.NoncurrentVersionExpirationProperty = {\n noncurrentDays: 123,\n\n // the properties below are optional\n newerNoncurrentVersions: 123,\n};"
6634 },
6635 "fqn": "@aws-cdk/aws-s3.CfnBucket.NoncurrentVersionExpirationProperty",
6636 "kind": "interface",
6637 "locationInModule": {
6638 "filename": "lib/s3.generated.ts",
6639 "line": 2790
6640 },
6641 "name": "NoncurrentVersionExpirationProperty",
6642 "namespace": "CfnBucket",
6643 "properties": [
6644 {
6645 "abstract": true,
6646 "docs": {
6647 "custom": {
6648 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversionexpiration.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversionexpiration-noncurrentdays"
6649 },
6650 "remarks": "For information about the noncurrent days calculations, see [How Amazon S3 Calculates When an Object Became Noncurrent](https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations) in the *Amazon S3 User Guide* .",
6651 "stability": "external",
6652 "summary": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action."
6653 },
6654 "immutable": true,
6655 "locationInModule": {
6656 "filename": "lib/s3.generated.ts",
6657 "line": 2802
6658 },
6659 "name": "noncurrentDays",
6660 "type": {
6661 "primitive": "number"
6662 }
6663 },
6664 {
6665 "abstract": true,
6666 "docs": {
6667 "custom": {
6668 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversionexpiration.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversionexpiration-newernoncurrentversions"
6669 },
6670 "remarks": "If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see [Lifecycle configuration elements](https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html) in the *Amazon S3 User Guide* .",
6671 "stability": "external",
6672 "summary": "Specifies how many noncurrent versions Amazon S3 will retain."
6673 },
6674 "immutable": true,
6675 "locationInModule": {
6676 "filename": "lib/s3.generated.ts",
6677 "line": 2796
6678 },
6679 "name": "newerNoncurrentVersions",
6680 "optional": true,
6681 "type": {
6682 "primitive": "number"
6683 }
6684 }
6685 ],
6686 "symbolId": "lib/s3.generated:CfnBucket.NoncurrentVersionExpirationProperty"
6687 },
6688 "@aws-cdk/aws-s3.CfnBucket.NoncurrentVersionTransitionProperty": {
6689 "assembly": "@aws-cdk/aws-s3",
6690 "datatype": true,
6691 "docs": {
6692 "custom": {
6693 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html",
6694 "exampleMetadata": "fixture=_generated"
6695 },
6696 "remarks": "If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the `STANDARD_IA` , `ONEZONE_IA` , `INTELLIGENT_TIERING` , `GLACIER_IR` , `GLACIER` , or `DEEP_ARCHIVE` storage class at a specific period in the object's lifetime.",
6697 "stability": "external",
6698 "summary": "Container for the transition rule that describes when noncurrent objects transition to the `STANDARD_IA` , `ONEZONE_IA` , `INTELLIGENT_TIERING` , `GLACIER_IR` , `GLACIER` , or `DEEP_ARCHIVE` storage class.",
6699 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst noncurrentVersionTransitionProperty: s3.CfnBucket.NoncurrentVersionTransitionProperty = {\n storageClass: 'storageClass',\n transitionInDays: 123,\n\n // the properties below are optional\n newerNoncurrentVersions: 123,\n};"
6700 },
6701 "fqn": "@aws-cdk/aws-s3.CfnBucket.NoncurrentVersionTransitionProperty",
6702 "kind": "interface",
6703 "locationInModule": {
6704 "filename": "lib/s3.generated.ts",
6705 "line": 2867
6706 },
6707 "name": "NoncurrentVersionTransitionProperty",
6708 "namespace": "CfnBucket",
6709 "properties": [
6710 {
6711 "abstract": true,
6712 "docs": {
6713 "custom": {
6714 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-storageclass"
6715 },
6716 "stability": "external",
6717 "summary": "The class of storage used to store the object."
6718 },
6719 "immutable": true,
6720 "locationInModule": {
6721 "filename": "lib/s3.generated.ts",
6722 "line": 2879
6723 },
6724 "name": "storageClass",
6725 "type": {
6726 "primitive": "string"
6727 }
6728 },
6729 {
6730 "abstract": true,
6731 "docs": {
6732 "custom": {
6733 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-transitionindays"
6734 },
6735 "remarks": "For information about the noncurrent days calculations, see [How Amazon S3 Calculates How Long an Object Has Been Noncurrent](https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#non-current-days-calculations) in the *Amazon S3 User Guide* .",
6736 "stability": "external",
6737 "summary": "Specifies the number of days an object is noncurrent before Amazon S3 can perform the associated action."
6738 },
6739 "immutable": true,
6740 "locationInModule": {
6741 "filename": "lib/s3.generated.ts",
6742 "line": 2885
6743 },
6744 "name": "transitionInDays",
6745 "type": {
6746 "primitive": "number"
6747 }
6748 },
6749 {
6750 "abstract": true,
6751 "docs": {
6752 "custom": {
6753 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-newernoncurrentversions"
6754 },
6755 "remarks": "If there are this many more recent noncurrent versions, Amazon S3 will take the associated action. For more information about noncurrent versions, see [Lifecycle configuration elements](https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html) in the *Amazon S3 User Guide* .",
6756 "stability": "external",
6757 "summary": "Specifies how many noncurrent versions Amazon S3 will retain."
6758 },
6759 "immutable": true,
6760 "locationInModule": {
6761 "filename": "lib/s3.generated.ts",
6762 "line": 2873
6763 },
6764 "name": "newerNoncurrentVersions",
6765 "optional": true,
6766 "type": {
6767 "primitive": "number"
6768 }
6769 }
6770 ],
6771 "symbolId": "lib/s3.generated:CfnBucket.NoncurrentVersionTransitionProperty"
6772 },
6773 "@aws-cdk/aws-s3.CfnBucket.NotificationConfigurationProperty": {
6774 "assembly": "@aws-cdk/aws-s3",
6775 "datatype": true,
6776 "docs": {
6777 "custom": {
6778 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html",
6779 "exampleMetadata": "fixture=_generated"
6780 },
6781 "remarks": "> If you create the target resource and related permissions in the same template, you might have a circular dependency.\n>\n> For example, you might use the `AWS::Lambda::Permission` resource to grant the bucket permission to invoke an AWS Lambda function. However, AWS CloudFormation can't create the bucket until the bucket has permission to invoke the function ( AWS CloudFormation checks whether the bucket can invoke the function). If you're using Refs to pass the bucket name, this leads to a circular dependency.\n>\n> To avoid this dependency, you can create all resources without specifying the notification configuration. Then, update the stack with a notification configuration.\n>\n> For more information on permissions, see [AWS::Lambda::Permission](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html) and [Granting Permissions to Publish Event Notification Messages to a Destination](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html#grant-destinations-permissions-to-s3) .",
6782 "stability": "external",
6783 "summary": "Describes the notification configuration for an Amazon S3 bucket.",
6784 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst notificationConfigurationProperty: s3.CfnBucket.NotificationConfigurationProperty = {\n eventBridgeConfiguration: {\n eventBridgeEnabled: false,\n },\n lambdaConfigurations: [{\n event: 'event',\n function: 'function',\n\n // the properties below are optional\n filter: {\n s3Key: {\n rules: [{\n name: 'name',\n value: 'value',\n }],\n },\n },\n }],\n queueConfigurations: [{\n event: 'event',\n queue: 'queue',\n\n // the properties below are optional\n filter: {\n s3Key: {\n rules: [{\n name: 'name',\n value: 'value',\n }],\n },\n },\n }],\n topicConfigurations: [{\n event: 'event',\n topic: 'topic',\n\n // the properties below are optional\n filter: {\n s3Key: {\n rules: [{\n name: 'name',\n value: 'value',\n }],\n },\n },\n }],\n};"
6785 },
6786 "fqn": "@aws-cdk/aws-s3.CfnBucket.NotificationConfigurationProperty",
6787 "kind": "interface",
6788 "locationInModule": {
6789 "filename": "lib/s3.generated.ts",
6790 "line": 2962
6791 },
6792 "name": "NotificationConfigurationProperty",
6793 "namespace": "CfnBucket",
6794 "properties": [
6795 {
6796 "abstract": true,
6797 "docs": {
6798 "custom": {
6799 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-eventbridgeconfig"
6800 },
6801 "stability": "external",
6802 "summary": "Enables delivery of events to Amazon EventBridge."
6803 },
6804 "immutable": true,
6805 "locationInModule": {
6806 "filename": "lib/s3.generated.ts",
6807 "line": 2968
6808 },
6809 "name": "eventBridgeConfiguration",
6810 "optional": true,
6811 "type": {
6812 "union": {
6813 "types": [
6814 {
6815 "fqn": "@aws-cdk/core.IResolvable"
6816 },
6817 {
6818 "fqn": "@aws-cdk/aws-s3.CfnBucket.EventBridgeConfigurationProperty"
6819 }
6820 ]
6821 }
6822 }
6823 },
6824 {
6825 "abstract": true,
6826 "docs": {
6827 "custom": {
6828 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig"
6829 },
6830 "stability": "external",
6831 "summary": "Describes the AWS Lambda functions to invoke and the events for which to invoke them."
6832 },
6833 "immutable": true,
6834 "locationInModule": {
6835 "filename": "lib/s3.generated.ts",
6836 "line": 2974
6837 },
6838 "name": "lambdaConfigurations",
6839 "optional": true,
6840 "type": {
6841 "union": {
6842 "types": [
6843 {
6844 "fqn": "@aws-cdk/core.IResolvable"
6845 },
6846 {
6847 "collection": {
6848 "elementtype": {
6849 "union": {
6850 "types": [
6851 {
6852 "fqn": "@aws-cdk/core.IResolvable"
6853 },
6854 {
6855 "fqn": "@aws-cdk/aws-s3.CfnBucket.LambdaConfigurationProperty"
6856 }
6857 ]
6858 }
6859 },
6860 "kind": "array"
6861 }
6862 }
6863 ]
6864 }
6865 }
6866 },
6867 {
6868 "abstract": true,
6869 "docs": {
6870 "custom": {
6871 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-queueconfig"
6872 },
6873 "stability": "external",
6874 "summary": "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages."
6875 },
6876 "immutable": true,
6877 "locationInModule": {
6878 "filename": "lib/s3.generated.ts",
6879 "line": 2980
6880 },
6881 "name": "queueConfigurations",
6882 "optional": true,
6883 "type": {
6884 "union": {
6885 "types": [
6886 {
6887 "fqn": "@aws-cdk/core.IResolvable"
6888 },
6889 {
6890 "collection": {
6891 "elementtype": {
6892 "union": {
6893 "types": [
6894 {
6895 "fqn": "@aws-cdk/core.IResolvable"
6896 },
6897 {
6898 "fqn": "@aws-cdk/aws-s3.CfnBucket.QueueConfigurationProperty"
6899 }
6900 ]
6901 }
6902 },
6903 "kind": "array"
6904 }
6905 }
6906 ]
6907 }
6908 }
6909 },
6910 {
6911 "abstract": true,
6912 "docs": {
6913 "custom": {
6914 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-topicconfig"
6915 },
6916 "stability": "external",
6917 "summary": "The topic to which notifications are sent and the events for which notifications are generated."
6918 },
6919 "immutable": true,
6920 "locationInModule": {
6921 "filename": "lib/s3.generated.ts",
6922 "line": 2986
6923 },
6924 "name": "topicConfigurations",
6925 "optional": true,
6926 "type": {
6927 "union": {
6928 "types": [
6929 {
6930 "fqn": "@aws-cdk/core.IResolvable"
6931 },
6932 {
6933 "collection": {
6934 "elementtype": {
6935 "union": {
6936 "types": [
6937 {
6938 "fqn": "@aws-cdk/core.IResolvable"
6939 },
6940 {
6941 "fqn": "@aws-cdk/aws-s3.CfnBucket.TopicConfigurationProperty"
6942 }
6943 ]
6944 }
6945 },
6946 "kind": "array"
6947 }
6948 }
6949 ]
6950 }
6951 }
6952 }
6953 ],
6954 "symbolId": "lib/s3.generated:CfnBucket.NotificationConfigurationProperty"
6955 },
6956 "@aws-cdk/aws-s3.CfnBucket.NotificationFilterProperty": {
6957 "assembly": "@aws-cdk/aws-s3",
6958 "datatype": true,
6959 "docs": {
6960 "custom": {
6961 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html",
6962 "exampleMetadata": "fixture=_generated"
6963 },
6964 "remarks": "For information about key name filtering, see [Configuring Event Notifications](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the *Amazon S3 User Guide* .",
6965 "stability": "external",
6966 "summary": "Specifies object key name filtering rules.",
6967 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst notificationFilterProperty: s3.CfnBucket.NotificationFilterProperty = {\n s3Key: {\n rules: [{\n name: 'name',\n value: 'value',\n }],\n },\n};"
6968 },
6969 "fqn": "@aws-cdk/aws-s3.CfnBucket.NotificationFilterProperty",
6970 "kind": "interface",
6971 "locationInModule": {
6972 "filename": "lib/s3.generated.ts",
6973 "line": 3056
6974 },
6975 "name": "NotificationFilterProperty",
6976 "namespace": "CfnBucket",
6977 "properties": [
6978 {
6979 "abstract": true,
6980 "docs": {
6981 "custom": {
6982 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key"
6983 },
6984 "stability": "external",
6985 "summary": "A container for object key name prefix and suffix filtering rules."
6986 },
6987 "immutable": true,
6988 "locationInModule": {
6989 "filename": "lib/s3.generated.ts",
6990 "line": 3062
6991 },
6992 "name": "s3Key",
6993 "type": {
6994 "union": {
6995 "types": [
6996 {
6997 "fqn": "@aws-cdk/core.IResolvable"
6998 },
6999 {
7000 "fqn": "@aws-cdk/aws-s3.CfnBucket.S3KeyFilterProperty"
7001 }
7002 ]
7003 }
7004 }
7005 }
7006 ],
7007 "symbolId": "lib/s3.generated:CfnBucket.NotificationFilterProperty"
7008 },
7009 "@aws-cdk/aws-s3.CfnBucket.ObjectLockConfigurationProperty": {
7010 "assembly": "@aws-cdk/aws-s3",
7011 "datatype": true,
7012 "docs": {
7013 "custom": {
7014 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html",
7015 "exampleMetadata": "fixture=_generated"
7016 },
7017 "remarks": "The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see [Locking Objects](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html) .",
7018 "stability": "external",
7019 "summary": "Places an Object Lock configuration on the specified bucket.",
7020 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst objectLockConfigurationProperty: s3.CfnBucket.ObjectLockConfigurationProperty = {\n objectLockEnabled: 'objectLockEnabled',\n rule: {\n defaultRetention: {\n days: 123,\n mode: 'mode',\n years: 123,\n },\n },\n};"
7021 },
7022 "fqn": "@aws-cdk/aws-s3.CfnBucket.ObjectLockConfigurationProperty",
7023 "kind": "interface",
7024 "locationInModule": {
7025 "filename": "lib/s3.generated.ts",
7026 "line": 3124
7027 },
7028 "name": "ObjectLockConfigurationProperty",
7029 "namespace": "CfnBucket",
7030 "properties": [
7031 {
7032 "abstract": true,
7033 "docs": {
7034 "custom": {
7035 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-objectlockenabled"
7036 },
7037 "remarks": "Enable `ObjectLockEnabled` when you apply `ObjectLockConfiguration` to a bucket.",
7038 "stability": "external",
7039 "summary": "Indicates whether this bucket has an Object Lock configuration enabled."
7040 },
7041 "immutable": true,
7042 "locationInModule": {
7043 "filename": "lib/s3.generated.ts",
7044 "line": 3130
7045 },
7046 "name": "objectLockEnabled",
7047 "optional": true,
7048 "type": {
7049 "primitive": "string"
7050 }
7051 },
7052 {
7053 "abstract": true,
7054 "docs": {
7055 "custom": {
7056 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html#cfn-s3-bucket-objectlockconfiguration-rule"
7057 },
7058 "remarks": "Enable the this rule when you apply `ObjectLockConfiguration` to a bucket. If Object Lock is turned on, bucket settings require both `Mode` and a period of either `Days` or `Years` . You cannot specify `Days` and `Years` at the same time. For more information, see [ObjectLockRule](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html) and [DefaultRetention](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html) .",
7059 "stability": "external",
7060 "summary": "Specifies the Object Lock rule for the specified object."
7061 },
7062 "immutable": true,
7063 "locationInModule": {
7064 "filename": "lib/s3.generated.ts",
7065 "line": 3136
7066 },
7067 "name": "rule",
7068 "optional": true,
7069 "type": {
7070 "union": {
7071 "types": [
7072 {
7073 "fqn": "@aws-cdk/core.IResolvable"
7074 },
7075 {
7076 "fqn": "@aws-cdk/aws-s3.CfnBucket.ObjectLockRuleProperty"
7077 }
7078 ]
7079 }
7080 }
7081 }
7082 ],
7083 "symbolId": "lib/s3.generated:CfnBucket.ObjectLockConfigurationProperty"
7084 },
7085 "@aws-cdk/aws-s3.CfnBucket.ObjectLockRuleProperty": {
7086 "assembly": "@aws-cdk/aws-s3",
7087 "datatype": true,
7088 "docs": {
7089 "custom": {
7090 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html",
7091 "exampleMetadata": "fixture=_generated"
7092 },
7093 "remarks": "Enable the this rule when you apply `ObjectLockConfiguration` to a bucket.",
7094 "stability": "external",
7095 "summary": "Specifies the Object Lock rule for the specified object.",
7096 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst objectLockRuleProperty: s3.CfnBucket.ObjectLockRuleProperty = {\n defaultRetention: {\n days: 123,\n mode: 'mode',\n years: 123,\n },\n};"
7097 },
7098 "fqn": "@aws-cdk/aws-s3.CfnBucket.ObjectLockRuleProperty",
7099 "kind": "interface",
7100 "locationInModule": {
7101 "filename": "lib/s3.generated.ts",
7102 "line": 3200
7103 },
7104 "name": "ObjectLockRuleProperty",
7105 "namespace": "CfnBucket",
7106 "properties": [
7107 {
7108 "abstract": true,
7109 "docs": {
7110 "custom": {
7111 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html#cfn-s3-bucket-objectlockrule-defaultretention"
7112 },
7113 "remarks": "If Object Lock is turned on, bucket settings require both `Mode` and a period of either `Days` or `Years` . You cannot specify `Days` and `Years` at the same time. For more information about allowable values for mode and period, see [DefaultRetention](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html) .",
7114 "stability": "external",
7115 "summary": "The default Object Lock retention mode and period that you want to apply to new objects placed in the specified bucket."
7116 },
7117 "immutable": true,
7118 "locationInModule": {
7119 "filename": "lib/s3.generated.ts",
7120 "line": 3206
7121 },
7122 "name": "defaultRetention",
7123 "optional": true,
7124 "type": {
7125 "union": {
7126 "types": [
7127 {
7128 "fqn": "@aws-cdk/core.IResolvable"
7129 },
7130 {
7131 "fqn": "@aws-cdk/aws-s3.CfnBucket.DefaultRetentionProperty"
7132 }
7133 ]
7134 }
7135 }
7136 }
7137 ],
7138 "symbolId": "lib/s3.generated:CfnBucket.ObjectLockRuleProperty"
7139 },
7140 "@aws-cdk/aws-s3.CfnBucket.OwnershipControlsProperty": {
7141 "assembly": "@aws-cdk/aws-s3",
7142 "datatype": true,
7143 "docs": {
7144 "custom": {
7145 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrols.html",
7146 "exampleMetadata": "fixture=_generated"
7147 },
7148 "remarks": "S3 Object Ownership is an Amazon S3 bucket-level setting that you can use to disable access control lists (ACLs) and take ownership of every object in your bucket, simplifying access management for data stored in Amazon S3. For more information, see [Controlling ownership of objects and disabling ACLs](https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) in the *Amazon S3 User Guide* .",
7149 "stability": "external",
7150 "summary": "Specifies the container element for Object Ownership rules.",
7151 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst ownershipControlsProperty: s3.CfnBucket.OwnershipControlsProperty = {\n rules: [{\n objectOwnership: 'objectOwnership',\n }],\n};"
7152 },
7153 "fqn": "@aws-cdk/aws-s3.CfnBucket.OwnershipControlsProperty",
7154 "kind": "interface",
7155 "locationInModule": {
7156 "filename": "lib/s3.generated.ts",
7157 "line": 3269
7158 },
7159 "name": "OwnershipControlsProperty",
7160 "namespace": "CfnBucket",
7161 "properties": [
7162 {
7163 "abstract": true,
7164 "docs": {
7165 "custom": {
7166 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrols.html#cfn-s3-bucket-ownershipcontrols-rules"
7167 },
7168 "stability": "external",
7169 "summary": "Specifies the container element for Object Ownership rules."
7170 },
7171 "immutable": true,
7172 "locationInModule": {
7173 "filename": "lib/s3.generated.ts",
7174 "line": 3275
7175 },
7176 "name": "rules",
7177 "type": {
7178 "union": {
7179 "types": [
7180 {
7181 "fqn": "@aws-cdk/core.IResolvable"
7182 },
7183 {
7184 "collection": {
7185 "elementtype": {
7186 "union": {
7187 "types": [
7188 {
7189 "fqn": "@aws-cdk/core.IResolvable"
7190 },
7191 {
7192 "fqn": "@aws-cdk/aws-s3.CfnBucket.OwnershipControlsRuleProperty"
7193 }
7194 ]
7195 }
7196 },
7197 "kind": "array"
7198 }
7199 }
7200 ]
7201 }
7202 }
7203 }
7204 ],
7205 "symbolId": "lib/s3.generated:CfnBucket.OwnershipControlsProperty"
7206 },
7207 "@aws-cdk/aws-s3.CfnBucket.OwnershipControlsRuleProperty": {
7208 "assembly": "@aws-cdk/aws-s3",
7209 "datatype": true,
7210 "docs": {
7211 "custom": {
7212 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrolsrule.html",
7213 "exampleMetadata": "fixture=_generated"
7214 },
7215 "remarks": "S3 Object Ownership is an Amazon S3 bucket-level setting that you can use to disable access control lists (ACLs) and take ownership of every object in your bucket, simplifying access management for data stored in Amazon S3. For more information, see [Controlling ownership of objects and disabling ACLs](https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html) in the *Amazon S3 User Guide* .",
7216 "stability": "external",
7217 "summary": "Specifies an Object Ownership rule.",
7218 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst ownershipControlsRuleProperty: s3.CfnBucket.OwnershipControlsRuleProperty = {\n objectOwnership: 'objectOwnership',\n};"
7219 },
7220 "fqn": "@aws-cdk/aws-s3.CfnBucket.OwnershipControlsRuleProperty",
7221 "kind": "interface",
7222 "locationInModule": {
7223 "filename": "lib/s3.generated.ts",
7224 "line": 3339
7225 },
7226 "name": "OwnershipControlsRuleProperty",
7227 "namespace": "CfnBucket",
7228 "properties": [
7229 {
7230 "abstract": true,
7231 "docs": {
7232 "custom": {
7233 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrolsrule.html#cfn-s3-bucket-ownershipcontrolsrule-objectownership"
7234 },
7235 "remarks": "*Allowed values* : `BucketOwnerEnforced` | `ObjectWriter` | `BucketOwnerPreferred`",
7236 "stability": "external",
7237 "summary": "Specifies an Object Ownership rule."
7238 },
7239 "immutable": true,
7240 "locationInModule": {
7241 "filename": "lib/s3.generated.ts",
7242 "line": 3347
7243 },
7244 "name": "objectOwnership",
7245 "optional": true,
7246 "type": {
7247 "primitive": "string"
7248 }
7249 }
7250 ],
7251 "symbolId": "lib/s3.generated:CfnBucket.OwnershipControlsRuleProperty"
7252 },
7253 "@aws-cdk/aws-s3.CfnBucket.PublicAccessBlockConfigurationProperty": {
7254 "assembly": "@aws-cdk/aws-s3",
7255 "datatype": true,
7256 "docs": {
7257 "custom": {
7258 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html",
7259 "exampleMetadata": "fixture=_generated"
7260 },
7261 "remarks": "You can enable the configuration options in any combination. For more information about when Amazon S3 considers a bucket or object public, see [The Meaning of \"Public\"](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) in the *Amazon S3 User Guide* .",
7262 "stability": "external",
7263 "summary": "The PublicAccessBlock configuration that you want to apply to this Amazon S3 bucket.",
7264 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst publicAccessBlockConfigurationProperty: s3.CfnBucket.PublicAccessBlockConfigurationProperty = {\n blockPublicAcls: false,\n blockPublicPolicy: false,\n ignorePublicAcls: false,\n restrictPublicBuckets: false,\n};"
7265 },
7266 "fqn": "@aws-cdk/aws-s3.CfnBucket.PublicAccessBlockConfigurationProperty",
7267 "kind": "interface",
7268 "locationInModule": {
7269 "filename": "lib/s3.generated.ts",
7270 "line": 3408
7271 },
7272 "name": "PublicAccessBlockConfigurationProperty",
7273 "namespace": "CfnBucket",
7274 "properties": [
7275 {
7276 "abstract": true,
7277 "docs": {
7278 "custom": {
7279 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-blockpublicacls"
7280 },
7281 "remarks": "Setting this element to `TRUE` causes the following behavior:\n\n- PUT Bucket ACL and PUT Object ACL calls fail if the specified ACL is public.\n- PUT Object calls fail if the request includes a public ACL.\n- PUT Bucket calls fail if the request includes a public ACL.\n\nEnabling this setting doesn't affect existing policies or ACLs.",
7282 "stability": "external",
7283 "summary": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket."
7284 },
7285 "immutable": true,
7286 "locationInModule": {
7287 "filename": "lib/s3.generated.ts",
7288 "line": 3420
7289 },
7290 "name": "blockPublicAcls",
7291 "optional": true,
7292 "type": {
7293 "union": {
7294 "types": [
7295 {
7296 "primitive": "boolean"
7297 },
7298 {
7299 "fqn": "@aws-cdk/core.IResolvable"
7300 }
7301 ]
7302 }
7303 }
7304 },
7305 {
7306 "abstract": true,
7307 "docs": {
7308 "custom": {
7309 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-blockpublicpolicy"
7310 },
7311 "remarks": "Setting this element to `TRUE` causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\n\nEnabling this setting doesn't affect existing bucket policies.",
7312 "stability": "external",
7313 "summary": "Specifies whether Amazon S3 should block public bucket policies for this bucket."
7314 },
7315 "immutable": true,
7316 "locationInModule": {
7317 "filename": "lib/s3.generated.ts",
7318 "line": 3428
7319 },
7320 "name": "blockPublicPolicy",
7321 "optional": true,
7322 "type": {
7323 "union": {
7324 "types": [
7325 {
7326 "primitive": "boolean"
7327 },
7328 {
7329 "fqn": "@aws-cdk/core.IResolvable"
7330 }
7331 ]
7332 }
7333 }
7334 },
7335 {
7336 "abstract": true,
7337 "docs": {
7338 "custom": {
7339 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-ignorepublicacls"
7340 },
7341 "remarks": "Setting this element to `TRUE` causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\n\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.",
7342 "stability": "external",
7343 "summary": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket."
7344 },
7345 "immutable": true,
7346 "locationInModule": {
7347 "filename": "lib/s3.generated.ts",
7348 "line": 3436
7349 },
7350 "name": "ignorePublicAcls",
7351 "optional": true,
7352 "type": {
7353 "union": {
7354 "types": [
7355 {
7356 "primitive": "boolean"
7357 },
7358 {
7359 "fqn": "@aws-cdk/core.IResolvable"
7360 }
7361 ]
7362 }
7363 }
7364 },
7365 {
7366 "abstract": true,
7367 "docs": {
7368 "custom": {
7369 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html#cfn-s3-bucket-publicaccessblockconfiguration-restrictpublicbuckets"
7370 },
7371 "remarks": "Setting this element to `TRUE` restricts access to this bucket to only AWS service principals and authorized users within this account if the bucket has a public policy.\n\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.",
7372 "stability": "external",
7373 "summary": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket."
7374 },
7375 "immutable": true,
7376 "locationInModule": {
7377 "filename": "lib/s3.generated.ts",
7378 "line": 3444
7379 },
7380 "name": "restrictPublicBuckets",
7381 "optional": true,
7382 "type": {
7383 "union": {
7384 "types": [
7385 {
7386 "primitive": "boolean"
7387 },
7388 {
7389 "fqn": "@aws-cdk/core.IResolvable"
7390 }
7391 ]
7392 }
7393 }
7394 }
7395 ],
7396 "symbolId": "lib/s3.generated:CfnBucket.PublicAccessBlockConfigurationProperty"
7397 },
7398 "@aws-cdk/aws-s3.CfnBucket.QueueConfigurationProperty": {
7399 "assembly": "@aws-cdk/aws-s3",
7400 "datatype": true,
7401 "docs": {
7402 "custom": {
7403 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html",
7404 "exampleMetadata": "fixture=_generated"
7405 },
7406 "stability": "external",
7407 "summary": "Specifies the configuration for publishing messages to an Amazon Simple Queue Service (Amazon SQS) queue when Amazon S3 detects specified events.",
7408 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst queueConfigurationProperty: s3.CfnBucket.QueueConfigurationProperty = {\n event: 'event',\n queue: 'queue',\n\n // the properties below are optional\n filter: {\n s3Key: {\n rules: [{\n name: 'name',\n value: 'value',\n }],\n },\n },\n};"
7409 },
7410 "fqn": "@aws-cdk/aws-s3.CfnBucket.QueueConfigurationProperty",
7411 "kind": "interface",
7412 "locationInModule": {
7413 "filename": "lib/s3.generated.ts",
7414 "line": 3514
7415 },
7416 "name": "QueueConfigurationProperty",
7417 "namespace": "CfnBucket",
7418 "properties": [
7419 {
7420 "abstract": true,
7421 "docs": {
7422 "custom": {
7423 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-event"
7424 },
7425 "remarks": "For more information, see [Supported Event Types](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the *Amazon S3 User Guide* .",
7426 "stability": "external",
7427 "summary": "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS."
7428 },
7429 "immutable": true,
7430 "locationInModule": {
7431 "filename": "lib/s3.generated.ts",
7432 "line": 3520
7433 },
7434 "name": "event",
7435 "type": {
7436 "primitive": "string"
7437 }
7438 },
7439 {
7440 "abstract": true,
7441 "docs": {
7442 "custom": {
7443 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-queue"
7444 },
7445 "remarks": "FIFO queues are not allowed when enabling an SQS queue as the event notification destination.",
7446 "stability": "external",
7447 "summary": "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type."
7448 },
7449 "immutable": true,
7450 "locationInModule": {
7451 "filename": "lib/s3.generated.ts",
7452 "line": 3532
7453 },
7454 "name": "queue",
7455 "type": {
7456 "primitive": "string"
7457 }
7458 },
7459 {
7460 "abstract": true,
7461 "docs": {
7462 "custom": {
7463 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-filter"
7464 },
7465 "remarks": "For example, you can create a filter so that Amazon S3 sends notifications only when image files with a `.jpg` extension are added to the bucket. For more information, see [Configuring event notifications using object key name filtering](https://docs.aws.amazon.com/AmazonS3/latest/user-guide/notification-how-to-filtering.html) in the *Amazon S3 User Guide* .",
7466 "stability": "external",
7467 "summary": "The filtering rules that determine which objects trigger notifications."
7468 },
7469 "immutable": true,
7470 "locationInModule": {
7471 "filename": "lib/s3.generated.ts",
7472 "line": 3526
7473 },
7474 "name": "filter",
7475 "optional": true,
7476 "type": {
7477 "union": {
7478 "types": [
7479 {
7480 "fqn": "@aws-cdk/core.IResolvable"
7481 },
7482 {
7483 "fqn": "@aws-cdk/aws-s3.CfnBucket.NotificationFilterProperty"
7484 }
7485 ]
7486 }
7487 }
7488 }
7489 ],
7490 "symbolId": "lib/s3.generated:CfnBucket.QueueConfigurationProperty"
7491 },
7492 "@aws-cdk/aws-s3.CfnBucket.RedirectAllRequestsToProperty": {
7493 "assembly": "@aws-cdk/aws-s3",
7494 "datatype": true,
7495 "docs": {
7496 "custom": {
7497 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html",
7498 "exampleMetadata": "fixture=_generated"
7499 },
7500 "stability": "external",
7501 "summary": "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.",
7502 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst redirectAllRequestsToProperty: s3.CfnBucket.RedirectAllRequestsToProperty = {\n hostName: 'hostName',\n\n // the properties below are optional\n protocol: 'protocol',\n};"
7503 },
7504 "fqn": "@aws-cdk/aws-s3.CfnBucket.RedirectAllRequestsToProperty",
7505 "kind": "interface",
7506 "locationInModule": {
7507 "filename": "lib/s3.generated.ts",
7508 "line": 3601
7509 },
7510 "name": "RedirectAllRequestsToProperty",
7511 "namespace": "CfnBucket",
7512 "properties": [
7513 {
7514 "abstract": true,
7515 "docs": {
7516 "custom": {
7517 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-hostname"
7518 },
7519 "stability": "external",
7520 "summary": "Name of the host where requests are redirected."
7521 },
7522 "immutable": true,
7523 "locationInModule": {
7524 "filename": "lib/s3.generated.ts",
7525 "line": 3607
7526 },
7527 "name": "hostName",
7528 "type": {
7529 "primitive": "string"
7530 }
7531 },
7532 {
7533 "abstract": true,
7534 "docs": {
7535 "custom": {
7536 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-protocol"
7537 },
7538 "remarks": "The default is the protocol that is used in the original request.",
7539 "stability": "external",
7540 "summary": "Protocol to use when redirecting requests."
7541 },
7542 "immutable": true,
7543 "locationInModule": {
7544 "filename": "lib/s3.generated.ts",
7545 "line": 3613
7546 },
7547 "name": "protocol",
7548 "optional": true,
7549 "type": {
7550 "primitive": "string"
7551 }
7552 }
7553 ],
7554 "symbolId": "lib/s3.generated:CfnBucket.RedirectAllRequestsToProperty"
7555 },
7556 "@aws-cdk/aws-s3.CfnBucket.RedirectRuleProperty": {
7557 "assembly": "@aws-cdk/aws-s3",
7558 "datatype": true,
7559 "docs": {
7560 "custom": {
7561 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html",
7562 "exampleMetadata": "fixture=_generated"
7563 },
7564 "remarks": "In the event of an error, you can specify a different error code to return.",
7565 "stability": "external",
7566 "summary": "Specifies how requests are redirected.",
7567 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst redirectRuleProperty: s3.CfnBucket.RedirectRuleProperty = {\n hostName: 'hostName',\n httpRedirectCode: 'httpRedirectCode',\n protocol: 'protocol',\n replaceKeyPrefixWith: 'replaceKeyPrefixWith',\n replaceKeyWith: 'replaceKeyWith',\n};"
7568 },
7569 "fqn": "@aws-cdk/aws-s3.CfnBucket.RedirectRuleProperty",
7570 "kind": "interface",
7571 "locationInModule": {
7572 "filename": "lib/s3.generated.ts",
7573 "line": 3678
7574 },
7575 "name": "RedirectRuleProperty",
7576 "namespace": "CfnBucket",
7577 "properties": [
7578 {
7579 "abstract": true,
7580 "docs": {
7581 "custom": {
7582 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-hostname"
7583 },
7584 "stability": "external",
7585 "summary": "The host name to use in the redirect request."
7586 },
7587 "immutable": true,
7588 "locationInModule": {
7589 "filename": "lib/s3.generated.ts",
7590 "line": 3684
7591 },
7592 "name": "hostName",
7593 "optional": true,
7594 "type": {
7595 "primitive": "string"
7596 }
7597 },
7598 {
7599 "abstract": true,
7600 "docs": {
7601 "custom": {
7602 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-httpredirectcode"
7603 },
7604 "remarks": "Not required if one of the siblings is present.",
7605 "stability": "external",
7606 "summary": "The HTTP redirect code to use on the response."
7607 },
7608 "immutable": true,
7609 "locationInModule": {
7610 "filename": "lib/s3.generated.ts",
7611 "line": 3690
7612 },
7613 "name": "httpRedirectCode",
7614 "optional": true,
7615 "type": {
7616 "primitive": "string"
7617 }
7618 },
7619 {
7620 "abstract": true,
7621 "docs": {
7622 "custom": {
7623 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-protocol"
7624 },
7625 "remarks": "The default is the protocol that is used in the original request.",
7626 "stability": "external",
7627 "summary": "Protocol to use when redirecting requests."
7628 },
7629 "immutable": true,
7630 "locationInModule": {
7631 "filename": "lib/s3.generated.ts",
7632 "line": 3696
7633 },
7634 "name": "protocol",
7635 "optional": true,
7636 "type": {
7637 "primitive": "string"
7638 }
7639 },
7640 {
7641 "abstract": true,
7642 "docs": {
7643 "custom": {
7644 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-replacekeyprefixwith"
7645 },
7646 "remarks": "For example, to redirect requests for all pages with prefix `docs/` (objects in the `docs/` folder) to `documents/` , you can set a condition block with `KeyPrefixEquals` set to `docs/` and in the Redirect set `ReplaceKeyPrefixWith` to `/documents` . Not required if one of the siblings is present. Can be present only if `ReplaceKeyWith` is not provided.\n\n> Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see [XML related object key constraints](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) .",
7647 "stability": "external",
7648 "summary": "The object key prefix to use in the redirect request."
7649 },
7650 "immutable": true,
7651 "locationInModule": {
7652 "filename": "lib/s3.generated.ts",
7653 "line": 3704
7654 },
7655 "name": "replaceKeyPrefixWith",
7656 "optional": true,
7657 "type": {
7658 "primitive": "string"
7659 }
7660 },
7661 {
7662 "abstract": true,
7663 "docs": {
7664 "custom": {
7665 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-replacekeywith"
7666 },
7667 "remarks": "For example, redirect request to `error.html` . Not required if one of the siblings is present. Can be present only if `ReplaceKeyPrefixWith` is not provided.\n\n> Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see [XML related object key constraints](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) .",
7668 "stability": "external",
7669 "summary": "The specific object key to use in the redirect request."
7670 },
7671 "immutable": true,
7672 "locationInModule": {
7673 "filename": "lib/s3.generated.ts",
7674 "line": 3712
7675 },
7676 "name": "replaceKeyWith",
7677 "optional": true,
7678 "type": {
7679 "primitive": "string"
7680 }
7681 }
7682 ],
7683 "symbolId": "lib/s3.generated:CfnBucket.RedirectRuleProperty"
7684 },
7685 "@aws-cdk/aws-s3.CfnBucket.ReplicaModificationsProperty": {
7686 "assembly": "@aws-cdk/aws-s3",
7687 "datatype": true,
7688 "docs": {
7689 "custom": {
7690 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicamodifications.html",
7691 "exampleMetadata": "fixture=_generated"
7692 },
7693 "stability": "external",
7694 "summary": "A filter that you can specify for selection for modifications on replicas.",
7695 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst replicaModificationsProperty: s3.CfnBucket.ReplicaModificationsProperty = {\n status: 'status',\n};"
7696 },
7697 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicaModificationsProperty",
7698 "kind": "interface",
7699 "locationInModule": {
7700 "filename": "lib/s3.generated.ts",
7701 "line": 3785
7702 },
7703 "name": "ReplicaModificationsProperty",
7704 "namespace": "CfnBucket",
7705 "properties": [
7706 {
7707 "abstract": true,
7708 "docs": {
7709 "custom": {
7710 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicamodifications.html#cfn-s3-bucket-replicamodifications-status"
7711 },
7712 "remarks": "*Allowed values* : `Enabled` | `Disabled`",
7713 "stability": "external",
7714 "summary": "Specifies whether Amazon S3 replicates modifications on replicas."
7715 },
7716 "immutable": true,
7717 "locationInModule": {
7718 "filename": "lib/s3.generated.ts",
7719 "line": 3793
7720 },
7721 "name": "status",
7722 "type": {
7723 "primitive": "string"
7724 }
7725 }
7726 ],
7727 "symbolId": "lib/s3.generated:CfnBucket.ReplicaModificationsProperty"
7728 },
7729 "@aws-cdk/aws-s3.CfnBucket.ReplicationConfigurationProperty": {
7730 "assembly": "@aws-cdk/aws-s3",
7731 "datatype": true,
7732 "docs": {
7733 "custom": {
7734 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html",
7735 "exampleMetadata": "fixture=_generated"
7736 },
7737 "remarks": "You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.",
7738 "stability": "external",
7739 "summary": "A container for replication rules.",
7740 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst replicationConfigurationProperty: s3.CfnBucket.ReplicationConfigurationProperty = {\n role: 'role',\n rules: [{\n destination: {\n bucket: 'bucket',\n\n // the properties below are optional\n accessControlTranslation: {\n owner: 'owner',\n },\n account: 'account',\n encryptionConfiguration: {\n replicaKmsKeyId: 'replicaKmsKeyId',\n },\n metrics: {\n status: 'status',\n\n // the properties below are optional\n eventThreshold: {\n minutes: 123,\n },\n },\n replicationTime: {\n status: 'status',\n time: {\n minutes: 123,\n },\n },\n storageClass: 'storageClass',\n },\n status: 'status',\n\n // the properties below are optional\n deleteMarkerReplication: {\n status: 'status',\n },\n filter: {\n and: {\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n },\n prefix: 'prefix',\n tagFilter: {\n key: 'key',\n value: 'value',\n },\n },\n id: 'id',\n prefix: 'prefix',\n priority: 123,\n sourceSelectionCriteria: {\n replicaModifications: {\n status: 'status',\n },\n sseKmsEncryptedObjects: {\n status: 'status',\n },\n },\n }],\n};"
7741 },
7742 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationConfigurationProperty",
7743 "kind": "interface",
7744 "locationInModule": {
7745 "filename": "lib/s3.generated.ts",
7746 "line": 3855
7747 },
7748 "name": "ReplicationConfigurationProperty",
7749 "namespace": "CfnBucket",
7750 "properties": [
7751 {
7752 "abstract": true,
7753 "docs": {
7754 "custom": {
7755 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-role"
7756 },
7757 "remarks": "For more information, see [How to Set Up Replication](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-how-setup.html) in the *Amazon S3 User Guide* .",
7758 "stability": "external",
7759 "summary": "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects."
7760 },
7761 "immutable": true,
7762 "locationInModule": {
7763 "filename": "lib/s3.generated.ts",
7764 "line": 3861
7765 },
7766 "name": "role",
7767 "type": {
7768 "primitive": "string"
7769 }
7770 },
7771 {
7772 "abstract": true,
7773 "docs": {
7774 "custom": {
7775 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-rules"
7776 },
7777 "remarks": "A replication configuration must have at least one rule and can contain a maximum of 1,000 rules.",
7778 "stability": "external",
7779 "summary": "A container for one or more replication rules."
7780 },
7781 "immutable": true,
7782 "locationInModule": {
7783 "filename": "lib/s3.generated.ts",
7784 "line": 3867
7785 },
7786 "name": "rules",
7787 "type": {
7788 "union": {
7789 "types": [
7790 {
7791 "fqn": "@aws-cdk/core.IResolvable"
7792 },
7793 {
7794 "collection": {
7795 "elementtype": {
7796 "union": {
7797 "types": [
7798 {
7799 "fqn": "@aws-cdk/core.IResolvable"
7800 },
7801 {
7802 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleProperty"
7803 }
7804 ]
7805 }
7806 },
7807 "kind": "array"
7808 }
7809 }
7810 ]
7811 }
7812 }
7813 }
7814 ],
7815 "symbolId": "lib/s3.generated:CfnBucket.ReplicationConfigurationProperty"
7816 },
7817 "@aws-cdk/aws-s3.CfnBucket.ReplicationDestinationProperty": {
7818 "assembly": "@aws-cdk/aws-s3",
7819 "datatype": true,
7820 "docs": {
7821 "custom": {
7822 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html",
7823 "exampleMetadata": "fixture=_generated"
7824 },
7825 "stability": "external",
7826 "summary": "A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC).",
7827 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst replicationDestinationProperty: s3.CfnBucket.ReplicationDestinationProperty = {\n bucket: 'bucket',\n\n // the properties below are optional\n accessControlTranslation: {\n owner: 'owner',\n },\n account: 'account',\n encryptionConfiguration: {\n replicaKmsKeyId: 'replicaKmsKeyId',\n },\n metrics: {\n status: 'status',\n\n // the properties below are optional\n eventThreshold: {\n minutes: 123,\n },\n },\n replicationTime: {\n status: 'status',\n time: {\n minutes: 123,\n },\n },\n storageClass: 'storageClass',\n};"
7828 },
7829 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationDestinationProperty",
7830 "kind": "interface",
7831 "locationInModule": {
7832 "filename": "lib/s3.generated.ts",
7833 "line": 3933
7834 },
7835 "name": "ReplicationDestinationProperty",
7836 "namespace": "CfnBucket",
7837 "properties": [
7838 {
7839 "abstract": true,
7840 "docs": {
7841 "custom": {
7842 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationconfiguration-rules-destination-bucket"
7843 },
7844 "stability": "external",
7845 "summary": "The Amazon Resource Name (ARN) of the bucket where you want Amazon S3 to store the results."
7846 },
7847 "immutable": true,
7848 "locationInModule": {
7849 "filename": "lib/s3.generated.ts",
7850 "line": 3953
7851 },
7852 "name": "bucket",
7853 "type": {
7854 "primitive": "string"
7855 }
7856 },
7857 {
7858 "abstract": true,
7859 "docs": {
7860 "custom": {
7861 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-accesscontroltranslation"
7862 },
7863 "remarks": "If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.",
7864 "stability": "external",
7865 "summary": "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket."
7866 },
7867 "immutable": true,
7868 "locationInModule": {
7869 "filename": "lib/s3.generated.ts",
7870 "line": 3939
7871 },
7872 "name": "accessControlTranslation",
7873 "optional": true,
7874 "type": {
7875 "union": {
7876 "types": [
7877 {
7878 "fqn": "@aws-cdk/core.IResolvable"
7879 },
7880 {
7881 "fqn": "@aws-cdk/aws-s3.CfnBucket.AccessControlTranslationProperty"
7882 }
7883 ]
7884 }
7885 }
7886 },
7887 {
7888 "abstract": true,
7889 "docs": {
7890 "custom": {
7891 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-account"
7892 },
7893 "remarks": "In a cross-account scenario, if you direct Amazon S3 to change replica ownership to the AWS account that owns the destination bucket by specifying the `AccessControlTranslation` property, this is the account ID of the destination bucket owner. For more information, see [Cross-Region Replication Additional Configuration: Change Replica Owner](https://docs.aws.amazon.com/AmazonS3/latest/dev/crr-change-owner.html) in the *Amazon S3 User Guide* .\n\nIf you specify the `AccessControlTranslation` property, the `Account` property is required.",
7894 "stability": "external",
7895 "summary": "Destination bucket owner account ID."
7896 },
7897 "immutable": true,
7898 "locationInModule": {
7899 "filename": "lib/s3.generated.ts",
7900 "line": 3947
7901 },
7902 "name": "account",
7903 "optional": true,
7904 "type": {
7905 "primitive": "string"
7906 }
7907 },
7908 {
7909 "abstract": true,
7910 "docs": {
7911 "custom": {
7912 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-encryptionconfiguration"
7913 },
7914 "stability": "external",
7915 "summary": "Specifies encryption-related information."
7916 },
7917 "immutable": true,
7918 "locationInModule": {
7919 "filename": "lib/s3.generated.ts",
7920 "line": 3959
7921 },
7922 "name": "encryptionConfiguration",
7923 "optional": true,
7924 "type": {
7925 "union": {
7926 "types": [
7927 {
7928 "fqn": "@aws-cdk/core.IResolvable"
7929 },
7930 {
7931 "fqn": "@aws-cdk/aws-s3.CfnBucket.EncryptionConfigurationProperty"
7932 }
7933 ]
7934 }
7935 }
7936 },
7937 {
7938 "abstract": true,
7939 "docs": {
7940 "custom": {
7941 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-metrics"
7942 },
7943 "stability": "external",
7944 "summary": "A container specifying replication metrics-related settings enabling replication metrics and events."
7945 },
7946 "immutable": true,
7947 "locationInModule": {
7948 "filename": "lib/s3.generated.ts",
7949 "line": 3965
7950 },
7951 "name": "metrics",
7952 "optional": true,
7953 "type": {
7954 "union": {
7955 "types": [
7956 {
7957 "fqn": "@aws-cdk/core.IResolvable"
7958 },
7959 {
7960 "fqn": "@aws-cdk/aws-s3.CfnBucket.MetricsProperty"
7961 }
7962 ]
7963 }
7964 }
7965 },
7966 {
7967 "abstract": true,
7968 "docs": {
7969 "custom": {
7970 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationdestination-replicationtime"
7971 },
7972 "remarks": "Must be specified together with a `Metrics` block.",
7973 "stability": "external",
7974 "summary": "A container specifying S3 Replication Time Control (S3 RTC), including whether S3 RTC is enabled and the time when all objects and operations on objects must be replicated."
7975 },
7976 "immutable": true,
7977 "locationInModule": {
7978 "filename": "lib/s3.generated.ts",
7979 "line": 3971
7980 },
7981 "name": "replicationTime",
7982 "optional": true,
7983 "type": {
7984 "union": {
7985 "types": [
7986 {
7987 "fqn": "@aws-cdk/core.IResolvable"
7988 },
7989 {
7990 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationTimeProperty"
7991 }
7992 ]
7993 }
7994 }
7995 },
7996 {
7997 "abstract": true,
7998 "docs": {
7999 "custom": {
8000 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationconfiguration-rules-destination-storageclass"
8001 },
8002 "remarks": "By default, Amazon S3 uses the storage class of the source object to create the object replica.\n\nFor valid values, see the `StorageClass` element of the [PUT Bucket replication](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTreplication.html) action in the *Amazon S3 API Reference* .",
8003 "stability": "external",
8004 "summary": "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy."
8005 },
8006 "immutable": true,
8007 "locationInModule": {
8008 "filename": "lib/s3.generated.ts",
8009 "line": 3979
8010 },
8011 "name": "storageClass",
8012 "optional": true,
8013 "type": {
8014 "primitive": "string"
8015 }
8016 }
8017 ],
8018 "symbolId": "lib/s3.generated:CfnBucket.ReplicationDestinationProperty"
8019 },
8020 "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleAndOperatorProperty": {
8021 "assembly": "@aws-cdk/aws-s3",
8022 "datatype": true,
8023 "docs": {
8024 "custom": {
8025 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationruleandoperator.html",
8026 "exampleMetadata": "fixture=_generated"
8027 },
8028 "remarks": "The filters determine the subset of objects to which the rule applies. This element is required only if you specify more than one filter.\n\nFor example:\n\n- If you specify both a `Prefix` and a `TagFilter` , wrap these filters in an `And` tag.\n- If you specify a filter based on multiple tags, wrap the `TagFilter` elements in an `And` tag",
8029 "stability": "external",
8030 "summary": "A container for specifying rule filters.",
8031 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst replicationRuleAndOperatorProperty: s3.CfnBucket.ReplicationRuleAndOperatorProperty = {\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n};"
8032 },
8033 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleAndOperatorProperty",
8034 "kind": "interface",
8035 "locationInModule": {
8036 "filename": "lib/s3.generated.ts",
8037 "line": 4204
8038 },
8039 "name": "ReplicationRuleAndOperatorProperty",
8040 "namespace": "CfnBucket",
8041 "properties": [
8042 {
8043 "abstract": true,
8044 "docs": {
8045 "custom": {
8046 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationruleandoperator.html#cfn-s3-bucket-replicationruleandoperator-prefix"
8047 },
8048 "stability": "external",
8049 "summary": "An object key name prefix that identifies the subset of objects to which the rule applies."
8050 },
8051 "immutable": true,
8052 "locationInModule": {
8053 "filename": "lib/s3.generated.ts",
8054 "line": 4210
8055 },
8056 "name": "prefix",
8057 "optional": true,
8058 "type": {
8059 "primitive": "string"
8060 }
8061 },
8062 {
8063 "abstract": true,
8064 "docs": {
8065 "custom": {
8066 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationruleandoperator.html#cfn-s3-bucket-replicationruleandoperator-tagfilters"
8067 },
8068 "stability": "external",
8069 "summary": "An array of tags containing key and value pairs."
8070 },
8071 "immutable": true,
8072 "locationInModule": {
8073 "filename": "lib/s3.generated.ts",
8074 "line": 4216
8075 },
8076 "name": "tagFilters",
8077 "optional": true,
8078 "type": {
8079 "union": {
8080 "types": [
8081 {
8082 "fqn": "@aws-cdk/core.IResolvable"
8083 },
8084 {
8085 "collection": {
8086 "elementtype": {
8087 "union": {
8088 "types": [
8089 {
8090 "fqn": "@aws-cdk/core.IResolvable"
8091 },
8092 {
8093 "fqn": "@aws-cdk/aws-s3.CfnBucket.TagFilterProperty"
8094 }
8095 ]
8096 }
8097 },
8098 "kind": "array"
8099 }
8100 }
8101 ]
8102 }
8103 }
8104 }
8105 ],
8106 "symbolId": "lib/s3.generated:CfnBucket.ReplicationRuleAndOperatorProperty"
8107 },
8108 "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleFilterProperty": {
8109 "assembly": "@aws-cdk/aws-s3",
8110 "datatype": true,
8111 "docs": {
8112 "custom": {
8113 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html",
8114 "exampleMetadata": "fixture=_generated"
8115 },
8116 "remarks": "A `Filter` must specify exactly one `Prefix` , `TagFilter` , or an `And` child element.",
8117 "stability": "external",
8118 "summary": "A filter that identifies the subset of objects to which the replication rule applies.",
8119 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst replicationRuleFilterProperty: s3.CfnBucket.ReplicationRuleFilterProperty = {\n and: {\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n },\n prefix: 'prefix',\n tagFilter: {\n key: 'key',\n value: 'value',\n },\n};"
8120 },
8121 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleFilterProperty",
8122 "kind": "interface",
8123 "locationInModule": {
8124 "filename": "lib/s3.generated.ts",
8125 "line": 4280
8126 },
8127 "name": "ReplicationRuleFilterProperty",
8128 "namespace": "CfnBucket",
8129 "properties": [
8130 {
8131 "abstract": true,
8132 "docs": {
8133 "custom": {
8134 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html#cfn-s3-bucket-replicationrulefilter-and"
8135 },
8136 "remarks": "The filters determine the subset of objects to which the rule applies. This element is required only if you specify more than one filter. For example:\n\n- If you specify both a `Prefix` and a `TagFilter` , wrap these filters in an `And` tag.\n- If you specify a filter based on multiple tags, wrap the `TagFilter` elements in an `And` tag.",
8137 "stability": "external",
8138 "summary": "A container for specifying rule filters."
8139 },
8140 "immutable": true,
8141 "locationInModule": {
8142 "filename": "lib/s3.generated.ts",
8143 "line": 4289
8144 },
8145 "name": "and",
8146 "optional": true,
8147 "type": {
8148 "union": {
8149 "types": [
8150 {
8151 "fqn": "@aws-cdk/core.IResolvable"
8152 },
8153 {
8154 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleAndOperatorProperty"
8155 }
8156 ]
8157 }
8158 }
8159 },
8160 {
8161 "abstract": true,
8162 "docs": {
8163 "custom": {
8164 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html#cfn-s3-bucket-replicationrulefilter-prefix"
8165 },
8166 "remarks": "> Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see [XML related object key constraints](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) .",
8167 "stability": "external",
8168 "summary": "An object key name prefix that identifies the subset of objects to which the rule applies."
8169 },
8170 "immutable": true,
8171 "locationInModule": {
8172 "filename": "lib/s3.generated.ts",
8173 "line": 4297
8174 },
8175 "name": "prefix",
8176 "optional": true,
8177 "type": {
8178 "primitive": "string"
8179 }
8180 },
8181 {
8182 "abstract": true,
8183 "docs": {
8184 "custom": {
8185 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html#cfn-s3-bucket-replicationrulefilter-tagfilter"
8186 },
8187 "remarks": "The rule applies only to objects that have the tag in their tag set.",
8188 "stability": "external",
8189 "summary": "A container for specifying a tag key and value."
8190 },
8191 "immutable": true,
8192 "locationInModule": {
8193 "filename": "lib/s3.generated.ts",
8194 "line": 4305
8195 },
8196 "name": "tagFilter",
8197 "optional": true,
8198 "type": {
8199 "union": {
8200 "types": [
8201 {
8202 "fqn": "@aws-cdk/core.IResolvable"
8203 },
8204 {
8205 "fqn": "@aws-cdk/aws-s3.CfnBucket.TagFilterProperty"
8206 }
8207 ]
8208 }
8209 }
8210 }
8211 ],
8212 "symbolId": "lib/s3.generated:CfnBucket.ReplicationRuleFilterProperty"
8213 },
8214 "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleProperty": {
8215 "assembly": "@aws-cdk/aws-s3",
8216 "datatype": true,
8217 "docs": {
8218 "custom": {
8219 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html",
8220 "exampleMetadata": "fixture=_generated"
8221 },
8222 "stability": "external",
8223 "summary": "Specifies which Amazon S3 objects to replicate and where to store the replicas.",
8224 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst replicationRuleProperty: s3.CfnBucket.ReplicationRuleProperty = {\n destination: {\n bucket: 'bucket',\n\n // the properties below are optional\n accessControlTranslation: {\n owner: 'owner',\n },\n account: 'account',\n encryptionConfiguration: {\n replicaKmsKeyId: 'replicaKmsKeyId',\n },\n metrics: {\n status: 'status',\n\n // the properties below are optional\n eventThreshold: {\n minutes: 123,\n },\n },\n replicationTime: {\n status: 'status',\n time: {\n minutes: 123,\n },\n },\n storageClass: 'storageClass',\n },\n status: 'status',\n\n // the properties below are optional\n deleteMarkerReplication: {\n status: 'status',\n },\n filter: {\n and: {\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n },\n prefix: 'prefix',\n tagFilter: {\n key: 'key',\n value: 'value',\n },\n },\n id: 'id',\n prefix: 'prefix',\n priority: 123,\n sourceSelectionCriteria: {\n replicaModifications: {\n status: 'status',\n },\n sseKmsEncryptedObjects: {\n status: 'status',\n },\n },\n};"
8225 },
8226 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleProperty",
8227 "kind": "interface",
8228 "locationInModule": {
8229 "filename": "lib/s3.generated.ts",
8230 "line": 4059
8231 },
8232 "name": "ReplicationRuleProperty",
8233 "namespace": "CfnBucket",
8234 "properties": [
8235 {
8236 "abstract": true,
8237 "docs": {
8238 "custom": {
8239 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-destination"
8240 },
8241 "stability": "external",
8242 "summary": "A container for information about the replication destination and its configurations including enabling the S3 Replication Time Control (S3 RTC)."
8243 },
8244 "immutable": true,
8245 "locationInModule": {
8246 "filename": "lib/s3.generated.ts",
8247 "line": 4075
8248 },
8249 "name": "destination",
8250 "type": {
8251 "union": {
8252 "types": [
8253 {
8254 "fqn": "@aws-cdk/core.IResolvable"
8255 },
8256 {
8257 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationDestinationProperty"
8258 }
8259 ]
8260 }
8261 }
8262 },
8263 {
8264 "abstract": true,
8265 "docs": {
8266 "custom": {
8267 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-status"
8268 },
8269 "stability": "external",
8270 "summary": "Specifies whether the rule is enabled."
8271 },
8272 "immutable": true,
8273 "locationInModule": {
8274 "filename": "lib/s3.generated.ts",
8275 "line": 4115
8276 },
8277 "name": "status",
8278 "type": {
8279 "primitive": "string"
8280 }
8281 },
8282 {
8283 "abstract": true,
8284 "docs": {
8285 "custom": {
8286 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-deletemarkerreplication"
8287 },
8288 "remarks": "If you specify a `Filter` in your replication configuration, you must also include a `DeleteMarkerReplication` element. If your `Filter` includes a `Tag` element, the `DeleteMarkerReplication` `Status` must be set to Disabled, because Amazon S3 does not support replicating delete markers for tag-based rules. For an example configuration, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-config-min-rule-config) .\n\nFor more information about delete marker replication, see [Basic Rule Configuration](https://docs.aws.amazon.com/AmazonS3/latest/dev/delete-marker-replication.html) .\n\n> If you are using an earlier version of the replication configuration, Amazon S3 handles replication of delete markers differently. For more information, see [Backward Compatibility](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication-add-config.html#replication-backward-compat-considerations) .",
8289 "stability": "external",
8290 "summary": "Specifies whether Amazon S3 replicates delete markers."
8291 },
8292 "immutable": true,
8293 "locationInModule": {
8294 "filename": "lib/s3.generated.ts",
8295 "line": 4069
8296 },
8297 "name": "deleteMarkerReplication",
8298 "optional": true,
8299 "type": {
8300 "union": {
8301 "types": [
8302 {
8303 "fqn": "@aws-cdk/core.IResolvable"
8304 },
8305 {
8306 "fqn": "@aws-cdk/aws-s3.CfnBucket.DeleteMarkerReplicationProperty"
8307 }
8308 ]
8309 }
8310 }
8311 },
8312 {
8313 "abstract": true,
8314 "docs": {
8315 "custom": {
8316 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-filter"
8317 },
8318 "remarks": "A `Filter` must specify exactly one `Prefix` , `TagFilter` , or an `And` child element. The use of the filter field indicates this is a V2 replication configuration. V1 does not have this field.",
8319 "stability": "external",
8320 "summary": "A filter that identifies the subset of objects to which the replication rule applies."
8321 },
8322 "immutable": true,
8323 "locationInModule": {
8324 "filename": "lib/s3.generated.ts",
8325 "line": 4081
8326 },
8327 "name": "filter",
8328 "optional": true,
8329 "type": {
8330 "union": {
8331 "types": [
8332 {
8333 "fqn": "@aws-cdk/core.IResolvable"
8334 },
8335 {
8336 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationRuleFilterProperty"
8337 }
8338 ]
8339 }
8340 }
8341 },
8342 {
8343 "abstract": true,
8344 "docs": {
8345 "custom": {
8346 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-id"
8347 },
8348 "remarks": "The maximum value is 255 characters. If you don't specify a value, AWS CloudFormation generates a random ID. When using a V2 replication configuration this property is capitalized as \"ID\".",
8349 "stability": "external",
8350 "summary": "A unique identifier for the rule."
8351 },
8352 "immutable": true,
8353 "locationInModule": {
8354 "filename": "lib/s3.generated.ts",
8355 "line": 4087
8356 },
8357 "name": "id",
8358 "optional": true,
8359 "type": {
8360 "primitive": "string"
8361 }
8362 },
8363 {
8364 "abstract": true,
8365 "docs": {
8366 "custom": {
8367 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-prefix"
8368 },
8369 "remarks": "The maximum prefix length is 1,024 characters. To include all objects in a bucket, specify an empty string.\n\n> Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see [XML related object key constraints](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) .",
8370 "stability": "external",
8371 "summary": "An object key name prefix that identifies the object or objects to which the rule applies."
8372 },
8373 "immutable": true,
8374 "locationInModule": {
8375 "filename": "lib/s3.generated.ts",
8376 "line": 4095
8377 },
8378 "name": "prefix",
8379 "optional": true,
8380 "type": {
8381 "primitive": "string"
8382 }
8383 },
8384 {
8385 "abstract": true,
8386 "docs": {
8387 "custom": {
8388 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-priority"
8389 },
8390 "remarks": "Amazon S3 will attempt to replicate objects according to all replication rules. However, if there are two or more rules with the same destination bucket, then objects will be replicated according to the rule with the highest priority. The higher the number, the higher the priority.\n\nFor more information, see [Replication](https://docs.aws.amazon.com/AmazonS3/latest/dev/replication.html) in the *Amazon S3 User Guide* .",
8391 "stability": "external",
8392 "summary": "The priority indicates which rule has precedence whenever two or more replication rules conflict."
8393 },
8394 "immutable": true,
8395 "locationInModule": {
8396 "filename": "lib/s3.generated.ts",
8397 "line": 4103
8398 },
8399 "name": "priority",
8400 "optional": true,
8401 "type": {
8402 "primitive": "number"
8403 }
8404 },
8405 {
8406 "abstract": true,
8407 "docs": {
8408 "custom": {
8409 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationrule-sourceselectioncriteria"
8410 },
8411 "remarks": "You can choose to enable or disable the replication of these objects.",
8412 "stability": "external",
8413 "summary": "A container that describes additional filters for identifying the source objects that you want to replicate."
8414 },
8415 "immutable": true,
8416 "locationInModule": {
8417 "filename": "lib/s3.generated.ts",
8418 "line": 4109
8419 },
8420 "name": "sourceSelectionCriteria",
8421 "optional": true,
8422 "type": {
8423 "union": {
8424 "types": [
8425 {
8426 "fqn": "@aws-cdk/core.IResolvable"
8427 },
8428 {
8429 "fqn": "@aws-cdk/aws-s3.CfnBucket.SourceSelectionCriteriaProperty"
8430 }
8431 ]
8432 }
8433 }
8434 }
8435 ],
8436 "symbolId": "lib/s3.generated:CfnBucket.ReplicationRuleProperty"
8437 },
8438 "@aws-cdk/aws-s3.CfnBucket.ReplicationTimeProperty": {
8439 "assembly": "@aws-cdk/aws-s3",
8440 "datatype": true,
8441 "docs": {
8442 "custom": {
8443 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtime.html",
8444 "exampleMetadata": "fixture=_generated"
8445 },
8446 "remarks": "Must be specified together with a `Metrics` block.",
8447 "stability": "external",
8448 "summary": "A container specifying S3 Replication Time Control (S3 RTC) related information, including whether S3 RTC is enabled and the time when all objects and operations on objects must be replicated.",
8449 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst replicationTimeProperty: s3.CfnBucket.ReplicationTimeProperty = {\n status: 'status',\n time: {\n minutes: 123,\n },\n};"
8450 },
8451 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationTimeProperty",
8452 "kind": "interface",
8453 "locationInModule": {
8454 "filename": "lib/s3.generated.ts",
8455 "line": 4372
8456 },
8457 "name": "ReplicationTimeProperty",
8458 "namespace": "CfnBucket",
8459 "properties": [
8460 {
8461 "abstract": true,
8462 "docs": {
8463 "custom": {
8464 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtime.html#cfn-s3-bucket-replicationtime-status"
8465 },
8466 "stability": "external",
8467 "summary": "Specifies whether the replication time is enabled."
8468 },
8469 "immutable": true,
8470 "locationInModule": {
8471 "filename": "lib/s3.generated.ts",
8472 "line": 4378
8473 },
8474 "name": "status",
8475 "type": {
8476 "primitive": "string"
8477 }
8478 },
8479 {
8480 "abstract": true,
8481 "docs": {
8482 "custom": {
8483 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtime.html#cfn-s3-bucket-replicationtime-time"
8484 },
8485 "stability": "external",
8486 "summary": "A container specifying the time by which replication should be complete for all objects and operations on objects."
8487 },
8488 "immutable": true,
8489 "locationInModule": {
8490 "filename": "lib/s3.generated.ts",
8491 "line": 4384
8492 },
8493 "name": "time",
8494 "type": {
8495 "union": {
8496 "types": [
8497 {
8498 "fqn": "@aws-cdk/core.IResolvable"
8499 },
8500 {
8501 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationTimeValueProperty"
8502 }
8503 ]
8504 }
8505 }
8506 }
8507 ],
8508 "symbolId": "lib/s3.generated:CfnBucket.ReplicationTimeProperty"
8509 },
8510 "@aws-cdk/aws-s3.CfnBucket.ReplicationTimeValueProperty": {
8511 "assembly": "@aws-cdk/aws-s3",
8512 "datatype": true,
8513 "docs": {
8514 "custom": {
8515 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtimevalue.html",
8516 "exampleMetadata": "fixture=_generated"
8517 },
8518 "stability": "external",
8519 "summary": "A container specifying the time value for S3 Replication Time Control (S3 RTC) and replication metrics `EventThreshold` .",
8520 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst replicationTimeValueProperty: s3.CfnBucket.ReplicationTimeValueProperty = {\n minutes: 123,\n};"
8521 },
8522 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationTimeValueProperty",
8523 "kind": "interface",
8524 "locationInModule": {
8525 "filename": "lib/s3.generated.ts",
8526 "line": 4450
8527 },
8528 "name": "ReplicationTimeValueProperty",
8529 "namespace": "CfnBucket",
8530 "properties": [
8531 {
8532 "abstract": true,
8533 "docs": {
8534 "custom": {
8535 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtimevalue.html#cfn-s3-bucket-replicationtimevalue-minutes"
8536 },
8537 "remarks": "Valid value: 15",
8538 "stability": "external",
8539 "summary": "Contains an integer specifying time in minutes."
8540 },
8541 "immutable": true,
8542 "locationInModule": {
8543 "filename": "lib/s3.generated.ts",
8544 "line": 4458
8545 },
8546 "name": "minutes",
8547 "type": {
8548 "primitive": "number"
8549 }
8550 }
8551 ],
8552 "symbolId": "lib/s3.generated:CfnBucket.ReplicationTimeValueProperty"
8553 },
8554 "@aws-cdk/aws-s3.CfnBucket.RoutingRuleConditionProperty": {
8555 "assembly": "@aws-cdk/aws-s3",
8556 "datatype": true,
8557 "docs": {
8558 "custom": {
8559 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html",
8560 "exampleMetadata": "fixture=_generated"
8561 },
8562 "remarks": "For example, 1. If request is for pages in the `/docs` folder, redirect to the `/documents` folder. 2. If request results in HTTP error 4xx, redirect request to another host where you might process the error.",
8563 "stability": "external",
8564 "summary": "A container for describing a condition that must be met for the specified redirect to apply.",
8565 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst routingRuleConditionProperty: s3.CfnBucket.RoutingRuleConditionProperty = {\n httpErrorCodeReturnedEquals: 'httpErrorCodeReturnedEquals',\n keyPrefixEquals: 'keyPrefixEquals',\n};"
8566 },
8567 "fqn": "@aws-cdk/aws-s3.CfnBucket.RoutingRuleConditionProperty",
8568 "kind": "interface",
8569 "locationInModule": {
8570 "filename": "lib/s3.generated.ts",
8571 "line": 4597
8572 },
8573 "name": "RoutingRuleConditionProperty",
8574 "namespace": "CfnBucket",
8575 "properties": [
8576 {
8577 "abstract": true,
8578 "docs": {
8579 "custom": {
8580 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition-httperrorcodereturnedequals"
8581 },
8582 "remarks": "In the event of an error, if the error code equals this value, then the specified redirect is applied.\n\nRequired when parent element `Condition` is specified and sibling `KeyPrefixEquals` is not specified. If both are specified, then both must be true for the redirect to be applied.",
8583 "stability": "external",
8584 "summary": "The HTTP error code when the redirect is applied."
8585 },
8586 "immutable": true,
8587 "locationInModule": {
8588 "filename": "lib/s3.generated.ts",
8589 "line": 4605
8590 },
8591 "name": "httpErrorCodeReturnedEquals",
8592 "optional": true,
8593 "type": {
8594 "primitive": "string"
8595 }
8596 },
8597 {
8598 "abstract": true,
8599 "docs": {
8600 "custom": {
8601 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition-keyprefixequals"
8602 },
8603 "remarks": "For example, to redirect requests for `ExamplePage.html` , the key prefix will be `ExamplePage.html` . To redirect request for all pages with the prefix `docs/` , the key prefix will be `/docs` , which identifies all objects in the docs/ folder.\n\nRequired when the parent element `Condition` is specified and sibling `HttpErrorCodeReturnedEquals` is not specified. If both conditions are specified, both must be true for the redirect to be applied.",
8604 "stability": "external",
8605 "summary": "The object key name prefix when the redirect is applied."
8606 },
8607 "immutable": true,
8608 "locationInModule": {
8609 "filename": "lib/s3.generated.ts",
8610 "line": 4613
8611 },
8612 "name": "keyPrefixEquals",
8613 "optional": true,
8614 "type": {
8615 "primitive": "string"
8616 }
8617 }
8618 ],
8619 "symbolId": "lib/s3.generated:CfnBucket.RoutingRuleConditionProperty"
8620 },
8621 "@aws-cdk/aws-s3.CfnBucket.RoutingRuleProperty": {
8622 "assembly": "@aws-cdk/aws-s3",
8623 "datatype": true,
8624 "docs": {
8625 "custom": {
8626 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html",
8627 "exampleMetadata": "fixture=_generated"
8628 },
8629 "remarks": "For more information about routing rules, see [Configuring advanced conditional redirects](https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html#advanced-conditional-redirects) in the *Amazon S3 User Guide* .",
8630 "stability": "external",
8631 "summary": "Specifies the redirect behavior and when a redirect is applied.",
8632 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst routingRuleProperty: s3.CfnBucket.RoutingRuleProperty = {\n redirectRule: {\n hostName: 'hostName',\n httpRedirectCode: 'httpRedirectCode',\n protocol: 'protocol',\n replaceKeyPrefixWith: 'replaceKeyPrefixWith',\n replaceKeyWith: 'replaceKeyWith',\n },\n\n // the properties below are optional\n routingRuleCondition: {\n httpErrorCodeReturnedEquals: 'httpErrorCodeReturnedEquals',\n keyPrefixEquals: 'keyPrefixEquals',\n },\n};"
8633 },
8634 "fqn": "@aws-cdk/aws-s3.CfnBucket.RoutingRuleProperty",
8635 "kind": "interface",
8636 "locationInModule": {
8637 "filename": "lib/s3.generated.ts",
8638 "line": 4520
8639 },
8640 "name": "RoutingRuleProperty",
8641 "namespace": "CfnBucket",
8642 "properties": [
8643 {
8644 "abstract": true,
8645 "docs": {
8646 "custom": {
8647 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-redirectrule"
8648 },
8649 "remarks": "You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return.",
8650 "stability": "external",
8651 "summary": "Container for redirect information."
8652 },
8653 "immutable": true,
8654 "locationInModule": {
8655 "filename": "lib/s3.generated.ts",
8656 "line": 4526
8657 },
8658 "name": "redirectRule",
8659 "type": {
8660 "union": {
8661 "types": [
8662 {
8663 "fqn": "@aws-cdk/core.IResolvable"
8664 },
8665 {
8666 "fqn": "@aws-cdk/aws-s3.CfnBucket.RedirectRuleProperty"
8667 }
8668 ]
8669 }
8670 }
8671 },
8672 {
8673 "abstract": true,
8674 "docs": {
8675 "custom": {
8676 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition"
8677 },
8678 "remarks": "For example, 1. If request is for pages in the `/docs` folder, redirect to the `/documents` folder. 2. If request results in HTTP error 4xx, redirect request to another host where you might process the error.",
8679 "stability": "external",
8680 "summary": "A container for describing a condition that must be met for the specified redirect to apply."
8681 },
8682 "immutable": true,
8683 "locationInModule": {
8684 "filename": "lib/s3.generated.ts",
8685 "line": 4532
8686 },
8687 "name": "routingRuleCondition",
8688 "optional": true,
8689 "type": {
8690 "union": {
8691 "types": [
8692 {
8693 "fqn": "@aws-cdk/core.IResolvable"
8694 },
8695 {
8696 "fqn": "@aws-cdk/aws-s3.CfnBucket.RoutingRuleConditionProperty"
8697 }
8698 ]
8699 }
8700 }
8701 }
8702 ],
8703 "symbolId": "lib/s3.generated:CfnBucket.RoutingRuleProperty"
8704 },
8705 "@aws-cdk/aws-s3.CfnBucket.RuleProperty": {
8706 "assembly": "@aws-cdk/aws-s3",
8707 "datatype": true,
8708 "docs": {
8709 "custom": {
8710 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html",
8711 "exampleMetadata": "fixture=_generated"
8712 },
8713 "remarks": "For more information, see [Put Bucket Lifecycle Configuration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlifecycle.html) in the *Amazon S3 API Reference* .\n\nYou must specify at least one of the following properties: `AbortIncompleteMultipartUpload` , `ExpirationDate` , `ExpirationInDays` , `NoncurrentVersionExpirationInDays` , `NoncurrentVersionTransition` , `NoncurrentVersionTransitions` , `Transition` , or `Transitions` .",
8714 "stability": "external",
8715 "summary": "Specifies lifecycle rules for an Amazon S3 bucket.",
8716 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst ruleProperty: s3.CfnBucket.RuleProperty = {\n status: 'status',\n\n // the properties below are optional\n abortIncompleteMultipartUpload: {\n daysAfterInitiation: 123,\n },\n expirationDate: new Date(),\n expirationInDays: 123,\n expiredObjectDeleteMarker: false,\n id: 'id',\n noncurrentVersionExpiration: {\n noncurrentDays: 123,\n\n // the properties below are optional\n newerNoncurrentVersions: 123,\n },\n noncurrentVersionExpirationInDays: 123,\n noncurrentVersionTransition: {\n storageClass: 'storageClass',\n transitionInDays: 123,\n\n // the properties below are optional\n newerNoncurrentVersions: 123,\n },\n noncurrentVersionTransitions: [{\n storageClass: 'storageClass',\n transitionInDays: 123,\n\n // the properties below are optional\n newerNoncurrentVersions: 123,\n }],\n objectSizeGreaterThan: 123,\n objectSizeLessThan: 123,\n prefix: 'prefix',\n tagFilters: [{\n key: 'key',\n value: 'value',\n }],\n transition: {\n storageClass: 'storageClass',\n\n // the properties below are optional\n transitionDate: new Date(),\n transitionInDays: 123,\n },\n transitions: [{\n storageClass: 'storageClass',\n\n // the properties below are optional\n transitionDate: new Date(),\n transitionInDays: 123,\n }],\n};"
8717 },
8718 "fqn": "@aws-cdk/aws-s3.CfnBucket.RuleProperty",
8719 "kind": "interface",
8720 "locationInModule": {
8721 "filename": "lib/s3.generated.ts",
8722 "line": 4679
8723 },
8724 "name": "RuleProperty",
8725 "namespace": "CfnBucket",
8726 "properties": [
8727 {
8728 "abstract": true,
8729 "docs": {
8730 "custom": {
8731 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-status"
8732 },
8733 "remarks": "If `Disabled` , the rule is not currently being applied.",
8734 "stability": "external",
8735 "summary": "If `Enabled` , the rule is currently being applied."
8736 },
8737 "immutable": true,
8738 "locationInModule": {
8739 "filename": "lib/s3.generated.ts",
8740 "line": 4759
8741 },
8742 "name": "status",
8743 "type": {
8744 "primitive": "string"
8745 }
8746 },
8747 {
8748 "abstract": true,
8749 "docs": {
8750 "custom": {
8751 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-abortincompletemultipartupload"
8752 },
8753 "stability": "external",
8754 "summary": "Specifies a lifecycle rule that stops incomplete multipart uploads to an Amazon S3 bucket."
8755 },
8756 "immutable": true,
8757 "locationInModule": {
8758 "filename": "lib/s3.generated.ts",
8759 "line": 4685
8760 },
8761 "name": "abortIncompleteMultipartUpload",
8762 "optional": true,
8763 "type": {
8764 "union": {
8765 "types": [
8766 {
8767 "fqn": "@aws-cdk/core.IResolvable"
8768 },
8769 {
8770 "fqn": "@aws-cdk/aws-s3.CfnBucket.AbortIncompleteMultipartUploadProperty"
8771 }
8772 ]
8773 }
8774 }
8775 },
8776 {
8777 "abstract": true,
8778 "docs": {
8779 "custom": {
8780 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-expirationdate"
8781 },
8782 "remarks": "The date value must be in ISO 8601 format. The time is always midnight UTC. If you specify an expiration and transition time, you must use the same time unit for both properties (either in days or by date). The expiration time must also be later than the transition time.",
8783 "stability": "external",
8784 "summary": "Indicates when objects are deleted from Amazon S3 and Amazon S3 Glacier."
8785 },
8786 "immutable": true,
8787 "locationInModule": {
8788 "filename": "lib/s3.generated.ts",
8789 "line": 4691
8790 },
8791 "name": "expirationDate",
8792 "optional": true,
8793 "type": {
8794 "union": {
8795 "types": [
8796 {
8797 "primitive": "date"
8798 },
8799 {
8800 "fqn": "@aws-cdk/core.IResolvable"
8801 }
8802 ]
8803 }
8804 }
8805 },
8806 {
8807 "abstract": true,
8808 "docs": {
8809 "custom": {
8810 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-expirationindays"
8811 },
8812 "remarks": "If you specify an expiration and transition time, you must use the same time unit for both properties (either in days or by date). The expiration time must also be later than the transition time.",
8813 "stability": "external",
8814 "summary": "Indicates the number of days after creation when objects are deleted from Amazon S3 and Amazon S3 Glacier."
8815 },
8816 "immutable": true,
8817 "locationInModule": {
8818 "filename": "lib/s3.generated.ts",
8819 "line": 4697
8820 },
8821 "name": "expirationInDays",
8822 "optional": true,
8823 "type": {
8824 "primitive": "number"
8825 }
8826 },
8827 {
8828 "abstract": true,
8829 "docs": {
8830 "custom": {
8831 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-expiredobjectdeletemarker"
8832 },
8833 "remarks": "If set to true, the delete marker will be removed if there are no noncurrent versions. This cannot be specified with `ExpirationInDays` , `ExpirationDate` , or `TagFilters` .",
8834 "stability": "external",
8835 "summary": "Indicates whether Amazon S3 will remove a delete marker without any noncurrent versions."
8836 },
8837 "immutable": true,
8838 "locationInModule": {
8839 "filename": "lib/s3.generated.ts",
8840 "line": 4703
8841 },
8842 "name": "expiredObjectDeleteMarker",
8843 "optional": true,
8844 "type": {
8845 "union": {
8846 "types": [
8847 {
8848 "primitive": "boolean"
8849 },
8850 {
8851 "fqn": "@aws-cdk/core.IResolvable"
8852 }
8853 ]
8854 }
8855 }
8856 },
8857 {
8858 "abstract": true,
8859 "docs": {
8860 "custom": {
8861 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-id"
8862 },
8863 "remarks": "The value can't be longer than 255 characters.",
8864 "stability": "external",
8865 "summary": "Unique identifier for the rule."
8866 },
8867 "immutable": true,
8868 "locationInModule": {
8869 "filename": "lib/s3.generated.ts",
8870 "line": 4709
8871 },
8872 "name": "id",
8873 "optional": true,
8874 "type": {
8875 "primitive": "string"
8876 }
8877 },
8878 {
8879 "abstract": true,
8880 "docs": {
8881 "custom": {
8882 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversionexpiration"
8883 },
8884 "remarks": "Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.",
8885 "stability": "external",
8886 "summary": "Specifies when noncurrent object versions expire."
8887 },
8888 "immutable": true,
8889 "locationInModule": {
8890 "filename": "lib/s3.generated.ts",
8891 "line": 4715
8892 },
8893 "name": "noncurrentVersionExpiration",
8894 "optional": true,
8895 "type": {
8896 "union": {
8897 "types": [
8898 {
8899 "fqn": "@aws-cdk/core.IResolvable"
8900 },
8901 {
8902 "fqn": "@aws-cdk/aws-s3.CfnBucket.NoncurrentVersionExpirationProperty"
8903 }
8904 ]
8905 }
8906 }
8907 },
8908 {
8909 "abstract": true,
8910 "docs": {
8911 "custom": {
8912 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversionexpirationindays"
8913 },
8914 "stability": "external",
8915 "summary": "(Deprecated.) For buckets with versioning enabled (or suspended), specifies the time, in days, between when a new version of the object is uploaded to the bucket and when old versions of the object expire. When object versions expire, Amazon S3 permanently deletes them. If you specify a transition and expiration time, the expiration time must be later than the transition time."
8916 },
8917 "immutable": true,
8918 "locationInModule": {
8919 "filename": "lib/s3.generated.ts",
8920 "line": 4721
8921 },
8922 "name": "noncurrentVersionExpirationInDays",
8923 "optional": true,
8924 "type": {
8925 "primitive": "number"
8926 }
8927 },
8928 {
8929 "abstract": true,
8930 "docs": {
8931 "custom": {
8932 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition"
8933 },
8934 "stability": "external",
8935 "summary": "(Deprecated.) For buckets with versioning enabled (or suspended), specifies when non-current objects transition to a specified storage class. If you specify a transition and expiration time, the expiration time must be later than the transition time. If you specify this property, don't specify the `NoncurrentVersionTransitions` property."
8936 },
8937 "immutable": true,
8938 "locationInModule": {
8939 "filename": "lib/s3.generated.ts",
8940 "line": 4727
8941 },
8942 "name": "noncurrentVersionTransition",
8943 "optional": true,
8944 "type": {
8945 "union": {
8946 "types": [
8947 {
8948 "fqn": "@aws-cdk/core.IResolvable"
8949 },
8950 {
8951 "fqn": "@aws-cdk/aws-s3.CfnBucket.NoncurrentVersionTransitionProperty"
8952 }
8953 ]
8954 }
8955 }
8956 },
8957 {
8958 "abstract": true,
8959 "docs": {
8960 "custom": {
8961 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransitions"
8962 },
8963 "remarks": "If you specify a transition and expiration time, the expiration time must be later than the transition time. If you specify this property, don't specify the `NoncurrentVersionTransition` property.",
8964 "stability": "external",
8965 "summary": "For buckets with versioning enabled (or suspended), one or more transition rules that specify when non-current objects transition to a specified storage class."
8966 },
8967 "immutable": true,
8968 "locationInModule": {
8969 "filename": "lib/s3.generated.ts",
8970 "line": 4733
8971 },
8972 "name": "noncurrentVersionTransitions",
8973 "optional": true,
8974 "type": {
8975 "union": {
8976 "types": [
8977 {
8978 "fqn": "@aws-cdk/core.IResolvable"
8979 },
8980 {
8981 "collection": {
8982 "elementtype": {
8983 "union": {
8984 "types": [
8985 {
8986 "fqn": "@aws-cdk/core.IResolvable"
8987 },
8988 {
8989 "fqn": "@aws-cdk/aws-s3.CfnBucket.NoncurrentVersionTransitionProperty"
8990 }
8991 ]
8992 }
8993 },
8994 "kind": "array"
8995 }
8996 }
8997 ]
8998 }
8999 }
9000 },
9001 {
9002 "abstract": true,
9003 "docs": {
9004 "custom": {
9005 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-objectsizegreaterthan"
9006 },
9007 "remarks": "For more information about size based rules, see [Lifecycle configuration using size-based rules](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configuration-examples.html#lc-size-rules) in the *Amazon S3 User Guide* .",
9008 "stability": "external",
9009 "summary": "Specifies the minimum object size in bytes for this rule to apply to."
9010 },
9011 "immutable": true,
9012 "locationInModule": {
9013 "filename": "lib/s3.generated.ts",
9014 "line": 4739
9015 },
9016 "name": "objectSizeGreaterThan",
9017 "optional": true,
9018 "type": {
9019 "primitive": "number"
9020 }
9021 },
9022 {
9023 "abstract": true,
9024 "docs": {
9025 "custom": {
9026 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-objectsizelessthan"
9027 },
9028 "remarks": "For more information about sized based rules, see [Lifecycle configuration using size-based rules](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configuration-examples.html#lc-size-rules) in the *Amazon S3 User Guide* .",
9029 "stability": "external",
9030 "summary": "Specifies the maximum object size in bytes for this rule to apply to."
9031 },
9032 "immutable": true,
9033 "locationInModule": {
9034 "filename": "lib/s3.generated.ts",
9035 "line": 4745
9036 },
9037 "name": "objectSizeLessThan",
9038 "optional": true,
9039 "type": {
9040 "primitive": "number"
9041 }
9042 },
9043 {
9044 "abstract": true,
9045 "docs": {
9046 "custom": {
9047 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-prefix"
9048 },
9049 "remarks": "> Replacement must be made for object keys containing special characters (such as carriage returns) when using XML requests. For more information, see [XML related object key constraints](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-keys.html#object-key-xml-related-constraints) .",
9050 "stability": "external",
9051 "summary": "Object key prefix that identifies one or more objects to which this rule applies."
9052 },
9053 "immutable": true,
9054 "locationInModule": {
9055 "filename": "lib/s3.generated.ts",
9056 "line": 4753
9057 },
9058 "name": "prefix",
9059 "optional": true,
9060 "type": {
9061 "primitive": "string"
9062 }
9063 },
9064 {
9065 "abstract": true,
9066 "docs": {
9067 "custom": {
9068 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-rule-tagfilters"
9069 },
9070 "stability": "external",
9071 "summary": "Tags to use to identify a subset of objects to which the lifecycle rule applies."
9072 },
9073 "immutable": true,
9074 "locationInModule": {
9075 "filename": "lib/s3.generated.ts",
9076 "line": 4765
9077 },
9078 "name": "tagFilters",
9079 "optional": true,
9080 "type": {
9081 "union": {
9082 "types": [
9083 {
9084 "fqn": "@aws-cdk/core.IResolvable"
9085 },
9086 {
9087 "collection": {
9088 "elementtype": {
9089 "union": {
9090 "types": [
9091 {
9092 "fqn": "@aws-cdk/core.IResolvable"
9093 },
9094 {
9095 "fqn": "@aws-cdk/aws-s3.CfnBucket.TagFilterProperty"
9096 }
9097 ]
9098 }
9099 },
9100 "kind": "array"
9101 }
9102 }
9103 ]
9104 }
9105 }
9106 },
9107 {
9108 "abstract": true,
9109 "docs": {
9110 "custom": {
9111 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transition"
9112 },
9113 "stability": "external",
9114 "summary": "(Deprecated.) Specifies when an object transitions to a specified storage class. If you specify an expiration and transition time, you must use the same time unit for both properties (either in days or by date). The expiration time must also be later than the transition time. If you specify this property, don't specify the `Transitions` property."
9115 },
9116 "immutable": true,
9117 "locationInModule": {
9118 "filename": "lib/s3.generated.ts",
9119 "line": 4771
9120 },
9121 "name": "transition",
9122 "optional": true,
9123 "type": {
9124 "union": {
9125 "types": [
9126 {
9127 "fqn": "@aws-cdk/core.IResolvable"
9128 },
9129 {
9130 "fqn": "@aws-cdk/aws-s3.CfnBucket.TransitionProperty"
9131 }
9132 ]
9133 }
9134 }
9135 },
9136 {
9137 "abstract": true,
9138 "docs": {
9139 "custom": {
9140 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transitions"
9141 },
9142 "remarks": "If you specify an expiration and transition time, you must use the same time unit for both properties (either in days or by date). The expiration time must also be later than the transition time. If you specify this property, don't specify the `Transition` property.",
9143 "stability": "external",
9144 "summary": "One or more transition rules that specify when an object transitions to a specified storage class."
9145 },
9146 "immutable": true,
9147 "locationInModule": {
9148 "filename": "lib/s3.generated.ts",
9149 "line": 4777
9150 },
9151 "name": "transitions",
9152 "optional": true,
9153 "type": {
9154 "union": {
9155 "types": [
9156 {
9157 "fqn": "@aws-cdk/core.IResolvable"
9158 },
9159 {
9160 "collection": {
9161 "elementtype": {
9162 "union": {
9163 "types": [
9164 {
9165 "fqn": "@aws-cdk/core.IResolvable"
9166 },
9167 {
9168 "fqn": "@aws-cdk/aws-s3.CfnBucket.TransitionProperty"
9169 }
9170 ]
9171 }
9172 },
9173 "kind": "array"
9174 }
9175 }
9176 ]
9177 }
9178 }
9179 }
9180 ],
9181 "symbolId": "lib/s3.generated:CfnBucket.RuleProperty"
9182 },
9183 "@aws-cdk/aws-s3.CfnBucket.S3KeyFilterProperty": {
9184 "assembly": "@aws-cdk/aws-s3",
9185 "datatype": true,
9186 "docs": {
9187 "custom": {
9188 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html",
9189 "exampleMetadata": "fixture=_generated"
9190 },
9191 "remarks": "> The same type of filter rule cannot be used more than once. For example, you cannot specify two prefix rules.",
9192 "stability": "external",
9193 "summary": "A container for object key name prefix and suffix filtering rules.",
9194 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst s3KeyFilterProperty: s3.CfnBucket.S3KeyFilterProperty = {\n rules: [{\n name: 'name',\n value: 'value',\n }],\n};"
9195 },
9196 "fqn": "@aws-cdk/aws-s3.CfnBucket.S3KeyFilterProperty",
9197 "kind": "interface",
9198 "locationInModule": {
9199 "filename": "lib/s3.generated.ts",
9200 "line": 4886
9201 },
9202 "name": "S3KeyFilterProperty",
9203 "namespace": "CfnBucket",
9204 "properties": [
9205 {
9206 "abstract": true,
9207 "docs": {
9208 "custom": {
9209 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules"
9210 },
9211 "stability": "external",
9212 "summary": "A list of containers for the key-value pair that defines the criteria for the filter rule."
9213 },
9214 "immutable": true,
9215 "locationInModule": {
9216 "filename": "lib/s3.generated.ts",
9217 "line": 4892
9218 },
9219 "name": "rules",
9220 "type": {
9221 "union": {
9222 "types": [
9223 {
9224 "fqn": "@aws-cdk/core.IResolvable"
9225 },
9226 {
9227 "collection": {
9228 "elementtype": {
9229 "union": {
9230 "types": [
9231 {
9232 "fqn": "@aws-cdk/core.IResolvable"
9233 },
9234 {
9235 "fqn": "@aws-cdk/aws-s3.CfnBucket.FilterRuleProperty"
9236 }
9237 ]
9238 }
9239 },
9240 "kind": "array"
9241 }
9242 }
9243 ]
9244 }
9245 }
9246 }
9247 ],
9248 "symbolId": "lib/s3.generated:CfnBucket.S3KeyFilterProperty"
9249 },
9250 "@aws-cdk/aws-s3.CfnBucket.ServerSideEncryptionByDefaultProperty": {
9251 "assembly": "@aws-cdk/aws-s3",
9252 "datatype": true,
9253 "docs": {
9254 "custom": {
9255 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html",
9256 "exampleMetadata": "fixture=_generated"
9257 },
9258 "remarks": "If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied. If you don't specify a customer managed key at configuration, Amazon S3 automatically creates an AWS KMS key in your AWS account the first time that you add an object encrypted with SSE-KMS to a bucket. By default, Amazon S3 uses this KMS key for SSE-KMS. For more information, see [PUT Bucket encryption](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTencryption.html) in the *Amazon S3 API Reference* .",
9259 "stability": "external",
9260 "summary": "Describes the default server-side encryption to apply to new objects in the bucket.",
9261 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst serverSideEncryptionByDefaultProperty: s3.CfnBucket.ServerSideEncryptionByDefaultProperty = {\n sseAlgorithm: 'sseAlgorithm',\n\n // the properties below are optional\n kmsMasterKeyId: 'kmsMasterKeyId',\n};"
9262 },
9263 "fqn": "@aws-cdk/aws-s3.CfnBucket.ServerSideEncryptionByDefaultProperty",
9264 "kind": "interface",
9265 "locationInModule": {
9266 "filename": "lib/s3.generated.ts",
9267 "line": 4954
9268 },
9269 "name": "ServerSideEncryptionByDefaultProperty",
9270 "namespace": "CfnBucket",
9271 "properties": [
9272 {
9273 "abstract": true,
9274 "docs": {
9275 "custom": {
9276 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-ssealgorithm"
9277 },
9278 "stability": "external",
9279 "summary": "Server-side encryption algorithm to use for the default encryption."
9280 },
9281 "immutable": true,
9282 "locationInModule": {
9283 "filename": "lib/s3.generated.ts",
9284 "line": 4975
9285 },
9286 "name": "sseAlgorithm",
9287 "type": {
9288 "primitive": "string"
9289 }
9290 },
9291 {
9292 "abstract": true,
9293 "docs": {
9294 "custom": {
9295 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html#cfn-s3-bucket-serversideencryptionbydefault-kmsmasterkeyid"
9296 },
9297 "remarks": "You can specify the key ID or the Amazon Resource Name (ARN) of the CMK. However, if you are using encryption with cross-account operations, you must use a fully qualified CMK ARN. For more information, see [Using encryption for cross-account operations](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html#bucket-encryption-update-bucket-policy) .\n\nFor example:\n\n- Key ID: `1234abcd-12ab-34cd-56ef-1234567890ab`\n- Key ARN: `arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab`\n\n> Amazon S3 only supports symmetric KMS keys and not asymmetric KMS keys. For more information, see [Using Symmetric and Asymmetric Keys](https://docs.aws.amazon.com//kms/latest/developerguide/symmetric-asymmetric.html) in the *AWS Key Management Service Developer Guide* .",
9298 "stability": "external",
9299 "summary": "KMS key ID to use for the default encryption. This parameter is allowed if SSEAlgorithm is aws:kms."
9300 },
9301 "immutable": true,
9302 "locationInModule": {
9303 "filename": "lib/s3.generated.ts",
9304 "line": 4969
9305 },
9306 "name": "kmsMasterKeyId",
9307 "optional": true,
9308 "type": {
9309 "primitive": "string"
9310 }
9311 }
9312 ],
9313 "symbolId": "lib/s3.generated:CfnBucket.ServerSideEncryptionByDefaultProperty"
9314 },
9315 "@aws-cdk/aws-s3.CfnBucket.ServerSideEncryptionRuleProperty": {
9316 "assembly": "@aws-cdk/aws-s3",
9317 "datatype": true,
9318 "docs": {
9319 "custom": {
9320 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html",
9321 "exampleMetadata": "fixture=_generated"
9322 },
9323 "stability": "external",
9324 "summary": "Specifies the default server-side encryption configuration.",
9325 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst serverSideEncryptionRuleProperty: s3.CfnBucket.ServerSideEncryptionRuleProperty = {\n bucketKeyEnabled: false,\n serverSideEncryptionByDefault: {\n sseAlgorithm: 'sseAlgorithm',\n\n // the properties below are optional\n kmsMasterKeyId: 'kmsMasterKeyId',\n },\n};"
9326 },
9327 "fqn": "@aws-cdk/aws-s3.CfnBucket.ServerSideEncryptionRuleProperty",
9328 "kind": "interface",
9329 "locationInModule": {
9330 "filename": "lib/s3.generated.ts",
9331 "line": 5040
9332 },
9333 "name": "ServerSideEncryptionRuleProperty",
9334 "namespace": "CfnBucket",
9335 "properties": [
9336 {
9337 "abstract": true,
9338 "docs": {
9339 "custom": {
9340 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html#cfn-s3-bucket-serversideencryptionrule-bucketkeyenabled"
9341 },
9342 "remarks": "Existing objects are not affected. Setting the `BucketKeyEnabled` element to `true` causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled.\n\nFor more information, see [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) in the *Amazon S3 User Guide* .",
9343 "stability": "external",
9344 "summary": "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket."
9345 },
9346 "immutable": true,
9347 "locationInModule": {
9348 "filename": "lib/s3.generated.ts",
9349 "line": 5048
9350 },
9351 "name": "bucketKeyEnabled",
9352 "optional": true,
9353 "type": {
9354 "union": {
9355 "types": [
9356 {
9357 "primitive": "boolean"
9358 },
9359 {
9360 "fqn": "@aws-cdk/core.IResolvable"
9361 }
9362 ]
9363 }
9364 }
9365 },
9366 {
9367 "abstract": true,
9368 "docs": {
9369 "custom": {
9370 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionrule.html#cfn-s3-bucket-serversideencryptionrule-serversideencryptionbydefault"
9371 },
9372 "remarks": "If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.",
9373 "stability": "external",
9374 "summary": "Specifies the default server-side encryption to apply to new objects in the bucket."
9375 },
9376 "immutable": true,
9377 "locationInModule": {
9378 "filename": "lib/s3.generated.ts",
9379 "line": 5054
9380 },
9381 "name": "serverSideEncryptionByDefault",
9382 "optional": true,
9383 "type": {
9384 "union": {
9385 "types": [
9386 {
9387 "fqn": "@aws-cdk/core.IResolvable"
9388 },
9389 {
9390 "fqn": "@aws-cdk/aws-s3.CfnBucket.ServerSideEncryptionByDefaultProperty"
9391 }
9392 ]
9393 }
9394 }
9395 }
9396 ],
9397 "symbolId": "lib/s3.generated:CfnBucket.ServerSideEncryptionRuleProperty"
9398 },
9399 "@aws-cdk/aws-s3.CfnBucket.SourceSelectionCriteriaProperty": {
9400 "assembly": "@aws-cdk/aws-s3",
9401 "datatype": true,
9402 "docs": {
9403 "custom": {
9404 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html",
9405 "exampleMetadata": "fixture=_generated"
9406 },
9407 "remarks": "You can choose to enable or disable the replication of these objects.",
9408 "stability": "external",
9409 "summary": "A container that describes additional filters for identifying the source objects that you want to replicate.",
9410 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst sourceSelectionCriteriaProperty: s3.CfnBucket.SourceSelectionCriteriaProperty = {\n replicaModifications: {\n status: 'status',\n },\n sseKmsEncryptedObjects: {\n status: 'status',\n },\n};"
9411 },
9412 "fqn": "@aws-cdk/aws-s3.CfnBucket.SourceSelectionCriteriaProperty",
9413 "kind": "interface",
9414 "locationInModule": {
9415 "filename": "lib/s3.generated.ts",
9416 "line": 5118
9417 },
9418 "name": "SourceSelectionCriteriaProperty",
9419 "namespace": "CfnBucket",
9420 "properties": [
9421 {
9422 "abstract": true,
9423 "docs": {
9424 "custom": {
9425 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html#cfn-s3-bucket-sourceselectioncriteria-replicamodifications"
9426 },
9427 "stability": "external",
9428 "summary": "A filter that you can specify for selection for modifications on replicas."
9429 },
9430 "immutable": true,
9431 "locationInModule": {
9432 "filename": "lib/s3.generated.ts",
9433 "line": 5124
9434 },
9435 "name": "replicaModifications",
9436 "optional": true,
9437 "type": {
9438 "union": {
9439 "types": [
9440 {
9441 "fqn": "@aws-cdk/core.IResolvable"
9442 },
9443 {
9444 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicaModificationsProperty"
9445 }
9446 ]
9447 }
9448 }
9449 },
9450 {
9451 "abstract": true,
9452 "docs": {
9453 "custom": {
9454 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html#cfn-s3-bucket-sourceselectioncriteria-ssekmsencryptedobjects"
9455 },
9456 "stability": "external",
9457 "summary": "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS."
9458 },
9459 "immutable": true,
9460 "locationInModule": {
9461 "filename": "lib/s3.generated.ts",
9462 "line": 5130
9463 },
9464 "name": "sseKmsEncryptedObjects",
9465 "optional": true,
9466 "type": {
9467 "union": {
9468 "types": [
9469 {
9470 "fqn": "@aws-cdk/core.IResolvable"
9471 },
9472 {
9473 "fqn": "@aws-cdk/aws-s3.CfnBucket.SseKmsEncryptedObjectsProperty"
9474 }
9475 ]
9476 }
9477 }
9478 }
9479 ],
9480 "symbolId": "lib/s3.generated:CfnBucket.SourceSelectionCriteriaProperty"
9481 },
9482 "@aws-cdk/aws-s3.CfnBucket.SseKmsEncryptedObjectsProperty": {
9483 "assembly": "@aws-cdk/aws-s3",
9484 "datatype": true,
9485 "docs": {
9486 "custom": {
9487 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html",
9488 "exampleMetadata": "fixture=_generated"
9489 },
9490 "stability": "external",
9491 "summary": "A container for filter information for the selection of S3 objects encrypted with AWS KMS.",
9492 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst sseKmsEncryptedObjectsProperty: s3.CfnBucket.SseKmsEncryptedObjectsProperty = {\n status: 'status',\n};"
9493 },
9494 "fqn": "@aws-cdk/aws-s3.CfnBucket.SseKmsEncryptedObjectsProperty",
9495 "kind": "interface",
9496 "locationInModule": {
9497 "filename": "lib/s3.generated.ts",
9498 "line": 5194
9499 },
9500 "name": "SseKmsEncryptedObjectsProperty",
9501 "namespace": "CfnBucket",
9502 "properties": [
9503 {
9504 "abstract": true,
9505 "docs": {
9506 "custom": {
9507 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html#cfn-s3-bucket-ssekmsencryptedobjects-status"
9508 },
9509 "stability": "external",
9510 "summary": "Specifies whether Amazon S3 replicates objects created with server-side encryption using an AWS KMS key stored in AWS Key Management Service."
9511 },
9512 "immutable": true,
9513 "locationInModule": {
9514 "filename": "lib/s3.generated.ts",
9515 "line": 5200
9516 },
9517 "name": "status",
9518 "type": {
9519 "primitive": "string"
9520 }
9521 }
9522 ],
9523 "symbolId": "lib/s3.generated:CfnBucket.SseKmsEncryptedObjectsProperty"
9524 },
9525 "@aws-cdk/aws-s3.CfnBucket.StorageClassAnalysisProperty": {
9526 "assembly": "@aws-cdk/aws-s3",
9527 "datatype": true,
9528 "docs": {
9529 "custom": {
9530 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html",
9531 "exampleMetadata": "fixture=_generated"
9532 },
9533 "stability": "external",
9534 "summary": "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.",
9535 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst storageClassAnalysisProperty: s3.CfnBucket.StorageClassAnalysisProperty = {\n dataExport: {\n destination: {\n bucketArn: 'bucketArn',\n format: 'format',\n\n // the properties below are optional\n bucketAccountId: 'bucketAccountId',\n prefix: 'prefix',\n },\n outputSchemaVersion: 'outputSchemaVersion',\n },\n};"
9536 },
9537 "fqn": "@aws-cdk/aws-s3.CfnBucket.StorageClassAnalysisProperty",
9538 "kind": "interface",
9539 "locationInModule": {
9540 "filename": "lib/s3.generated.ts",
9541 "line": 5262
9542 },
9543 "name": "StorageClassAnalysisProperty",
9544 "namespace": "CfnBucket",
9545 "properties": [
9546 {
9547 "abstract": true,
9548 "docs": {
9549 "custom": {
9550 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html#cfn-s3-bucket-storageclassanalysis-dataexport"
9551 },
9552 "stability": "external",
9553 "summary": "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported."
9554 },
9555 "immutable": true,
9556 "locationInModule": {
9557 "filename": "lib/s3.generated.ts",
9558 "line": 5268
9559 },
9560 "name": "dataExport",
9561 "optional": true,
9562 "type": {
9563 "union": {
9564 "types": [
9565 {
9566 "fqn": "@aws-cdk/core.IResolvable"
9567 },
9568 {
9569 "fqn": "@aws-cdk/aws-s3.CfnBucket.DataExportProperty"
9570 }
9571 ]
9572 }
9573 }
9574 }
9575 ],
9576 "symbolId": "lib/s3.generated:CfnBucket.StorageClassAnalysisProperty"
9577 },
9578 "@aws-cdk/aws-s3.CfnBucket.TagFilterProperty": {
9579 "assembly": "@aws-cdk/aws-s3",
9580 "datatype": true,
9581 "docs": {
9582 "custom": {
9583 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html",
9584 "exampleMetadata": "fixture=_generated"
9585 },
9586 "stability": "external",
9587 "summary": "Specifies tags to use to identify a subset of objects for an Amazon S3 bucket.",
9588 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst tagFilterProperty: s3.CfnBucket.TagFilterProperty = {\n key: 'key',\n value: 'value',\n};"
9589 },
9590 "fqn": "@aws-cdk/aws-s3.CfnBucket.TagFilterProperty",
9591 "kind": "interface",
9592 "locationInModule": {
9593 "filename": "lib/s3.generated.ts",
9594 "line": 5329
9595 },
9596 "name": "TagFilterProperty",
9597 "namespace": "CfnBucket",
9598 "properties": [
9599 {
9600 "abstract": true,
9601 "docs": {
9602 "custom": {
9603 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html#cfn-s3-bucket-tagfilter-key"
9604 },
9605 "stability": "external",
9606 "summary": "The tag key."
9607 },
9608 "immutable": true,
9609 "locationInModule": {
9610 "filename": "lib/s3.generated.ts",
9611 "line": 5335
9612 },
9613 "name": "key",
9614 "type": {
9615 "primitive": "string"
9616 }
9617 },
9618 {
9619 "abstract": true,
9620 "docs": {
9621 "custom": {
9622 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html#cfn-s3-bucket-tagfilter-value"
9623 },
9624 "stability": "external",
9625 "summary": "The tag value."
9626 },
9627 "immutable": true,
9628 "locationInModule": {
9629 "filename": "lib/s3.generated.ts",
9630 "line": 5341
9631 },
9632 "name": "value",
9633 "type": {
9634 "primitive": "string"
9635 }
9636 }
9637 ],
9638 "symbolId": "lib/s3.generated:CfnBucket.TagFilterProperty"
9639 },
9640 "@aws-cdk/aws-s3.CfnBucket.TieringProperty": {
9641 "assembly": "@aws-cdk/aws-s3",
9642 "datatype": true,
9643 "docs": {
9644 "custom": {
9645 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html",
9646 "exampleMetadata": "fixture=_generated"
9647 },
9648 "stability": "external",
9649 "summary": "The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without additional operational overhead.",
9650 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst tieringProperty: s3.CfnBucket.TieringProperty = {\n accessTier: 'accessTier',\n days: 123,\n};"
9651 },
9652 "fqn": "@aws-cdk/aws-s3.CfnBucket.TieringProperty",
9653 "kind": "interface",
9654 "locationInModule": {
9655 "filename": "lib/s3.generated.ts",
9656 "line": 5407
9657 },
9658 "name": "TieringProperty",
9659 "namespace": "CfnBucket",
9660 "properties": [
9661 {
9662 "abstract": true,
9663 "docs": {
9664 "custom": {
9665 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html#cfn-s3-bucket-tiering-accesstier"
9666 },
9667 "remarks": "See [Storage class for automatically optimizing frequently and infrequently accessed objects](https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access) for a list of access tiers in the S3 Intelligent-Tiering storage class.",
9668 "stability": "external",
9669 "summary": "S3 Intelligent-Tiering access tier."
9670 },
9671 "immutable": true,
9672 "locationInModule": {
9673 "filename": "lib/s3.generated.ts",
9674 "line": 5413
9675 },
9676 "name": "accessTier",
9677 "type": {
9678 "primitive": "string"
9679 }
9680 },
9681 {
9682 "abstract": true,
9683 "docs": {
9684 "custom": {
9685 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html#cfn-s3-bucket-tiering-days"
9686 },
9687 "remarks": "The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days).",
9688 "stability": "external",
9689 "summary": "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier."
9690 },
9691 "immutable": true,
9692 "locationInModule": {
9693 "filename": "lib/s3.generated.ts",
9694 "line": 5419
9695 },
9696 "name": "days",
9697 "type": {
9698 "primitive": "number"
9699 }
9700 }
9701 ],
9702 "symbolId": "lib/s3.generated:CfnBucket.TieringProperty"
9703 },
9704 "@aws-cdk/aws-s3.CfnBucket.TopicConfigurationProperty": {
9705 "assembly": "@aws-cdk/aws-s3",
9706 "datatype": true,
9707 "docs": {
9708 "custom": {
9709 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html",
9710 "exampleMetadata": "fixture=_generated"
9711 },
9712 "stability": "external",
9713 "summary": "A container for specifying the configuration for publication of messages to an Amazon Simple Notification Service (Amazon SNS) topic when Amazon S3 detects specified events.",
9714 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst topicConfigurationProperty: s3.CfnBucket.TopicConfigurationProperty = {\n event: 'event',\n topic: 'topic',\n\n // the properties below are optional\n filter: {\n s3Key: {\n rules: [{\n name: 'name',\n value: 'value',\n }],\n },\n },\n};"
9715 },
9716 "fqn": "@aws-cdk/aws-s3.CfnBucket.TopicConfigurationProperty",
9717 "kind": "interface",
9718 "locationInModule": {
9719 "filename": "lib/s3.generated.ts",
9720 "line": 5485
9721 },
9722 "name": "TopicConfigurationProperty",
9723 "namespace": "CfnBucket",
9724 "properties": [
9725 {
9726 "abstract": true,
9727 "docs": {
9728 "custom": {
9729 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-event"
9730 },
9731 "remarks": "For more information, see [Supported Event Types](https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the *Amazon S3 User Guide* .",
9732 "stability": "external",
9733 "summary": "The Amazon S3 bucket event about which to send notifications."
9734 },
9735 "immutable": true,
9736 "locationInModule": {
9737 "filename": "lib/s3.generated.ts",
9738 "line": 5491
9739 },
9740 "name": "event",
9741 "type": {
9742 "primitive": "string"
9743 }
9744 },
9745 {
9746 "abstract": true,
9747 "docs": {
9748 "custom": {
9749 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-topic"
9750 },
9751 "stability": "external",
9752 "summary": "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type."
9753 },
9754 "immutable": true,
9755 "locationInModule": {
9756 "filename": "lib/s3.generated.ts",
9757 "line": 5503
9758 },
9759 "name": "topic",
9760 "type": {
9761 "primitive": "string"
9762 }
9763 },
9764 {
9765 "abstract": true,
9766 "docs": {
9767 "custom": {
9768 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-filter"
9769 },
9770 "remarks": "For example, you can create a filter so that Amazon S3 sends notifications only when image files with a `.jpg` extension are added to the bucket.",
9771 "stability": "external",
9772 "summary": "The filtering rules that determine for which objects to send notifications."
9773 },
9774 "immutable": true,
9775 "locationInModule": {
9776 "filename": "lib/s3.generated.ts",
9777 "line": 5497
9778 },
9779 "name": "filter",
9780 "optional": true,
9781 "type": {
9782 "union": {
9783 "types": [
9784 {
9785 "fqn": "@aws-cdk/core.IResolvable"
9786 },
9787 {
9788 "fqn": "@aws-cdk/aws-s3.CfnBucket.NotificationFilterProperty"
9789 }
9790 ]
9791 }
9792 }
9793 }
9794 ],
9795 "symbolId": "lib/s3.generated:CfnBucket.TopicConfigurationProperty"
9796 },
9797 "@aws-cdk/aws-s3.CfnBucket.TransitionProperty": {
9798 "assembly": "@aws-cdk/aws-s3",
9799 "datatype": true,
9800 "docs": {
9801 "custom": {
9802 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html",
9803 "exampleMetadata": "fixture=_generated"
9804 },
9805 "remarks": "For more information about Amazon S3 lifecycle configuration rules, see [Transitioning Objects Using Amazon S3 Lifecycle](https://docs.aws.amazon.com/AmazonS3/latest/dev/lifecycle-transition-general-considerations.html) in the *Amazon S3 User Guide* .",
9806 "stability": "external",
9807 "summary": "Specifies when an object transitions to a specified storage class.",
9808 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst transitionProperty: s3.CfnBucket.TransitionProperty = {\n storageClass: 'storageClass',\n\n // the properties below are optional\n transitionDate: new Date(),\n transitionInDays: 123,\n};"
9809 },
9810 "fqn": "@aws-cdk/aws-s3.CfnBucket.TransitionProperty",
9811 "kind": "interface",
9812 "locationInModule": {
9813 "filename": "lib/s3.generated.ts",
9814 "line": 5572
9815 },
9816 "name": "TransitionProperty",
9817 "namespace": "CfnBucket",
9818 "properties": [
9819 {
9820 "abstract": true,
9821 "docs": {
9822 "custom": {
9823 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-storageclass"
9824 },
9825 "stability": "external",
9826 "summary": "The storage class to which you want the object to transition."
9827 },
9828 "immutable": true,
9829 "locationInModule": {
9830 "filename": "lib/s3.generated.ts",
9831 "line": 5578
9832 },
9833 "name": "storageClass",
9834 "type": {
9835 "primitive": "string"
9836 }
9837 },
9838 {
9839 "abstract": true,
9840 "docs": {
9841 "custom": {
9842 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-transitiondate"
9843 },
9844 "remarks": "The date value must be in ISO 8601 format. The time is always midnight UTC.",
9845 "stability": "external",
9846 "summary": "Indicates when objects are transitioned to the specified storage class."
9847 },
9848 "immutable": true,
9849 "locationInModule": {
9850 "filename": "lib/s3.generated.ts",
9851 "line": 5584
9852 },
9853 "name": "transitionDate",
9854 "optional": true,
9855 "type": {
9856 "union": {
9857 "types": [
9858 {
9859 "primitive": "date"
9860 },
9861 {
9862 "fqn": "@aws-cdk/core.IResolvable"
9863 }
9864 ]
9865 }
9866 }
9867 },
9868 {
9869 "abstract": true,
9870 "docs": {
9871 "custom": {
9872 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-transitionindays"
9873 },
9874 "remarks": "The value must be a positive integer.",
9875 "stability": "external",
9876 "summary": "Indicates the number of days after creation when objects are transitioned to the specified storage class."
9877 },
9878 "immutable": true,
9879 "locationInModule": {
9880 "filename": "lib/s3.generated.ts",
9881 "line": 5590
9882 },
9883 "name": "transitionInDays",
9884 "optional": true,
9885 "type": {
9886 "primitive": "number"
9887 }
9888 }
9889 ],
9890 "symbolId": "lib/s3.generated:CfnBucket.TransitionProperty"
9891 },
9892 "@aws-cdk/aws-s3.CfnBucket.VersioningConfigurationProperty": {
9893 "assembly": "@aws-cdk/aws-s3",
9894 "datatype": true,
9895 "docs": {
9896 "custom": {
9897 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html",
9898 "exampleMetadata": "fixture=_generated"
9899 },
9900 "remarks": "For more information, see [PUT Bucket versioning](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTVersioningStatus.html) in the *Amazon S3 API Reference* .",
9901 "stability": "external",
9902 "summary": "Describes the versioning state of an Amazon S3 bucket.",
9903 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst versioningConfigurationProperty: s3.CfnBucket.VersioningConfigurationProperty = {\n status: 'status',\n};"
9904 },
9905 "fqn": "@aws-cdk/aws-s3.CfnBucket.VersioningConfigurationProperty",
9906 "kind": "interface",
9907 "locationInModule": {
9908 "filename": "lib/s3.generated.ts",
9909 "line": 5658
9910 },
9911 "name": "VersioningConfigurationProperty",
9912 "namespace": "CfnBucket",
9913 "properties": [
9914 {
9915 "abstract": true,
9916 "docs": {
9917 "custom": {
9918 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html#cfn-s3-bucket-versioningconfig-status"
9919 },
9920 "stability": "external",
9921 "summary": "The versioning state of the bucket."
9922 },
9923 "immutable": true,
9924 "locationInModule": {
9925 "filename": "lib/s3.generated.ts",
9926 "line": 5664
9927 },
9928 "name": "status",
9929 "type": {
9930 "primitive": "string"
9931 }
9932 }
9933 ],
9934 "symbolId": "lib/s3.generated:CfnBucket.VersioningConfigurationProperty"
9935 },
9936 "@aws-cdk/aws-s3.CfnBucket.WebsiteConfigurationProperty": {
9937 "assembly": "@aws-cdk/aws-s3",
9938 "datatype": true,
9939 "docs": {
9940 "custom": {
9941 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html",
9942 "exampleMetadata": "fixture=_generated"
9943 },
9944 "stability": "external",
9945 "summary": "Specifies website configuration parameters for an Amazon S3 bucket.",
9946 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst websiteConfigurationProperty: s3.CfnBucket.WebsiteConfigurationProperty = {\n errorDocument: 'errorDocument',\n indexDocument: 'indexDocument',\n redirectAllRequestsTo: {\n hostName: 'hostName',\n\n // the properties below are optional\n protocol: 'protocol',\n },\n routingRules: [{\n redirectRule: {\n hostName: 'hostName',\n httpRedirectCode: 'httpRedirectCode',\n protocol: 'protocol',\n replaceKeyPrefixWith: 'replaceKeyPrefixWith',\n replaceKeyWith: 'replaceKeyWith',\n },\n\n // the properties below are optional\n routingRuleCondition: {\n httpErrorCodeReturnedEquals: 'httpErrorCodeReturnedEquals',\n keyPrefixEquals: 'keyPrefixEquals',\n },\n }],\n};"
9947 },
9948 "fqn": "@aws-cdk/aws-s3.CfnBucket.WebsiteConfigurationProperty",
9949 "kind": "interface",
9950 "locationInModule": {
9951 "filename": "lib/s3.generated.ts",
9952 "line": 5726
9953 },
9954 "name": "WebsiteConfigurationProperty",
9955 "namespace": "CfnBucket",
9956 "properties": [
9957 {
9958 "abstract": true,
9959 "docs": {
9960 "custom": {
9961 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-errordocument"
9962 },
9963 "stability": "external",
9964 "summary": "The name of the error document for the website."
9965 },
9966 "immutable": true,
9967 "locationInModule": {
9968 "filename": "lib/s3.generated.ts",
9969 "line": 5732
9970 },
9971 "name": "errorDocument",
9972 "optional": true,
9973 "type": {
9974 "primitive": "string"
9975 }
9976 },
9977 {
9978 "abstract": true,
9979 "docs": {
9980 "custom": {
9981 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-indexdocument"
9982 },
9983 "stability": "external",
9984 "summary": "The name of the index document for the website."
9985 },
9986 "immutable": true,
9987 "locationInModule": {
9988 "filename": "lib/s3.generated.ts",
9989 "line": 5738
9990 },
9991 "name": "indexDocument",
9992 "optional": true,
9993 "type": {
9994 "primitive": "string"
9995 }
9996 },
9997 {
9998 "abstract": true,
9999 "docs": {
10000 "custom": {
10001 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-redirectallrequeststo"
10002 },
10003 "remarks": "> If you specify this property, you can't specify any other property.",
10004 "stability": "external",
10005 "summary": "The redirect behavior for every request to this bucket's website endpoint."
10006 },
10007 "immutable": true,
10008 "locationInModule": {
10009 "filename": "lib/s3.generated.ts",
10010 "line": 5746
10011 },
10012 "name": "redirectAllRequestsTo",
10013 "optional": true,
10014 "type": {
10015 "union": {
10016 "types": [
10017 {
10018 "fqn": "@aws-cdk/core.IResolvable"
10019 },
10020 {
10021 "fqn": "@aws-cdk/aws-s3.CfnBucket.RedirectAllRequestsToProperty"
10022 }
10023 ]
10024 }
10025 }
10026 },
10027 {
10028 "abstract": true,
10029 "docs": {
10030 "custom": {
10031 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-routingrules"
10032 },
10033 "stability": "external",
10034 "summary": "Rules that define when a redirect is applied and the redirect behavior."
10035 },
10036 "immutable": true,
10037 "locationInModule": {
10038 "filename": "lib/s3.generated.ts",
10039 "line": 5752
10040 },
10041 "name": "routingRules",
10042 "optional": true,
10043 "type": {
10044 "union": {
10045 "types": [
10046 {
10047 "fqn": "@aws-cdk/core.IResolvable"
10048 },
10049 {
10050 "collection": {
10051 "elementtype": {
10052 "union": {
10053 "types": [
10054 {
10055 "fqn": "@aws-cdk/core.IResolvable"
10056 },
10057 {
10058 "fqn": "@aws-cdk/aws-s3.CfnBucket.RoutingRuleProperty"
10059 }
10060 ]
10061 }
10062 },
10063 "kind": "array"
10064 }
10065 }
10066 ]
10067 }
10068 }
10069 }
10070 ],
10071 "symbolId": "lib/s3.generated:CfnBucket.WebsiteConfigurationProperty"
10072 },
10073 "@aws-cdk/aws-s3.CfnBucketPolicy": {
10074 "assembly": "@aws-cdk/aws-s3",
10075 "base": "@aws-cdk/core.CfnResource",
10076 "docs": {
10077 "custom": {
10078 "cloudformationResource": "AWS::S3::BucketPolicy",
10079 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html",
10080 "exampleMetadata": "fixture=_generated"
10081 },
10082 "remarks": "Applies an Amazon S3 bucket policy to an Amazon S3 bucket. If you are using an identity other than the root user of the AWS account that owns the bucket, the calling identity must have the `PutBucketPolicy` permissions on the specified bucket and belong to the bucket owner's account in order to use this operation.\n\nIf you don't have `PutBucketPolicy` permissions, Amazon S3 returns a `403 Access Denied` error. If you have the correct permissions, but you're not using an identity that belongs to the bucket owner's account, Amazon S3 returns a `405 Method Not Allowed` error.\n\n> As a security precaution, the root user of the AWS account that owns a bucket can always use this operation, even if the policy explicitly denies the root user the ability to perform this action.\n\nFor more information, see [Bucket policy examples](https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html) .\n\nThe following operations are related to `PutBucketPolicy` :\n\n- [CreateBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html)\n- [DeleteBucket](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html)",
10083 "stability": "external",
10084 "summary": "A CloudFormation `AWS::S3::BucketPolicy`.",
10085 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const policyDocument: any;\nconst cfnBucketPolicy = new s3.CfnBucketPolicy(this, 'MyCfnBucketPolicy', {\n bucket: 'bucket',\n policyDocument: policyDocument,\n});"
10086 },
10087 "fqn": "@aws-cdk/aws-s3.CfnBucketPolicy",
10088 "initializer": {
10089 "docs": {
10090 "stability": "external",
10091 "summary": "Create a new `AWS::S3::BucketPolicy`."
10092 },
10093 "locationInModule": {
10094 "filename": "lib/s3.generated.ts",
10095 "line": 5955
10096 },
10097 "parameters": [
10098 {
10099 "docs": {
10100 "summary": "- scope in which this resource is defined."
10101 },
10102 "name": "scope",
10103 "type": {
10104 "fqn": "@aws-cdk/core.Construct"
10105 }
10106 },
10107 {
10108 "docs": {
10109 "summary": "- scoped id of the resource."
10110 },
10111 "name": "id",
10112 "type": {
10113 "primitive": "string"
10114 }
10115 },
10116 {
10117 "docs": {
10118 "summary": "- resource properties."
10119 },
10120 "name": "props",
10121 "type": {
10122 "fqn": "@aws-cdk/aws-s3.CfnBucketPolicyProps"
10123 }
10124 }
10125 ]
10126 },
10127 "interfaces": [
10128 "@aws-cdk/core.IInspectable"
10129 ],
10130 "kind": "class",
10131 "locationInModule": {
10132 "filename": "lib/s3.generated.ts",
10133 "line": 5909
10134 },
10135 "methods": [
10136 {
10137 "docs": {
10138 "stability": "external",
10139 "summary": "Examines the CloudFormation resource and discloses attributes."
10140 },
10141 "locationInModule": {
10142 "filename": "lib/s3.generated.ts",
10143 "line": 5970
10144 },
10145 "name": "inspect",
10146 "overrides": "@aws-cdk/core.IInspectable",
10147 "parameters": [
10148 {
10149 "docs": {
10150 "summary": "- tree inspector to collect and process attributes."
10151 },
10152 "name": "inspector",
10153 "type": {
10154 "fqn": "@aws-cdk/core.TreeInspector"
10155 }
10156 }
10157 ]
10158 },
10159 {
10160 "docs": {
10161 "stability": "external"
10162 },
10163 "locationInModule": {
10164 "filename": "lib/s3.generated.ts",
10165 "line": 5982
10166 },
10167 "name": "renderProperties",
10168 "overrides": "@aws-cdk/core.CfnResource",
10169 "parameters": [
10170 {
10171 "name": "props",
10172 "type": {
10173 "collection": {
10174 "elementtype": {
10175 "primitive": "any"
10176 },
10177 "kind": "map"
10178 }
10179 }
10180 }
10181 ],
10182 "protected": true,
10183 "returns": {
10184 "type": {
10185 "collection": {
10186 "elementtype": {
10187 "primitive": "any"
10188 },
10189 "kind": "map"
10190 }
10191 }
10192 }
10193 }
10194 ],
10195 "name": "CfnBucketPolicy",
10196 "properties": [
10197 {
10198 "const": true,
10199 "docs": {
10200 "stability": "external",
10201 "summary": "The CloudFormation resource type name for this resource class."
10202 },
10203 "immutable": true,
10204 "locationInModule": {
10205 "filename": "lib/s3.generated.ts",
10206 "line": 5913
10207 },
10208 "name": "CFN_RESOURCE_TYPE_NAME",
10209 "static": true,
10210 "type": {
10211 "primitive": "string"
10212 }
10213 },
10214 {
10215 "docs": {
10216 "stability": "external"
10217 },
10218 "immutable": true,
10219 "locationInModule": {
10220 "filename": "lib/s3.generated.ts",
10221 "line": 5975
10222 },
10223 "name": "cfnProperties",
10224 "overrides": "@aws-cdk/core.CfnResource",
10225 "protected": true,
10226 "type": {
10227 "collection": {
10228 "elementtype": {
10229 "primitive": "any"
10230 },
10231 "kind": "map"
10232 }
10233 }
10234 },
10235 {
10236 "docs": {
10237 "custom": {
10238 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-bucket"
10239 },
10240 "stability": "external",
10241 "summary": "The name of the Amazon S3 bucket to which the policy applies."
10242 },
10243 "locationInModule": {
10244 "filename": "lib/s3.generated.ts",
10245 "line": 5939
10246 },
10247 "name": "bucket",
10248 "type": {
10249 "primitive": "string"
10250 }
10251 },
10252 {
10253 "docs": {
10254 "custom": {
10255 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-policydocument"
10256 },
10257 "remarks": "In IAM, you must provide policy documents in JSON format. However, in CloudFormation you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to IAM. For more information, see the AWS::IAM::Policy [PolicyDocument](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policydocument) resource description in this guide and [Access Policy Language Overview](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-policy-language-overview.html) in the *Amazon S3 User Guide* .",
10258 "stability": "external",
10259 "summary": "A policy document containing permissions to add to the specified bucket."
10260 },
10261 "locationInModule": {
10262 "filename": "lib/s3.generated.ts",
10263 "line": 5946
10264 },
10265 "name": "policyDocument",
10266 "type": {
10267 "primitive": "any"
10268 }
10269 }
10270 ],
10271 "symbolId": "lib/s3.generated:CfnBucketPolicy"
10272 },
10273 "@aws-cdk/aws-s3.CfnBucketPolicyProps": {
10274 "assembly": "@aws-cdk/aws-s3",
10275 "datatype": true,
10276 "docs": {
10277 "custom": {
10278 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html",
10279 "exampleMetadata": "fixture=_generated"
10280 },
10281 "stability": "external",
10282 "summary": "Properties for defining a `CfnBucketPolicy`.",
10283 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const policyDocument: any;\nconst cfnBucketPolicyProps: s3.CfnBucketPolicyProps = {\n bucket: 'bucket',\n policyDocument: policyDocument,\n};"
10284 },
10285 "fqn": "@aws-cdk/aws-s3.CfnBucketPolicyProps",
10286 "kind": "interface",
10287 "locationInModule": {
10288 "filename": "lib/s3.generated.ts",
10289 "line": 5821
10290 },
10291 "name": "CfnBucketPolicyProps",
10292 "properties": [
10293 {
10294 "abstract": true,
10295 "docs": {
10296 "custom": {
10297 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-bucket"
10298 },
10299 "stability": "external",
10300 "summary": "The name of the Amazon S3 bucket to which the policy applies."
10301 },
10302 "immutable": true,
10303 "locationInModule": {
10304 "filename": "lib/s3.generated.ts",
10305 "line": 5828
10306 },
10307 "name": "bucket",
10308 "type": {
10309 "primitive": "string"
10310 }
10311 },
10312 {
10313 "abstract": true,
10314 "docs": {
10315 "custom": {
10316 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#aws-properties-s3-policy-policydocument"
10317 },
10318 "remarks": "In IAM, you must provide policy documents in JSON format. However, in CloudFormation you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to IAM. For more information, see the AWS::IAM::Policy [PolicyDocument](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policydocument) resource description in this guide and [Access Policy Language Overview](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-policy-language-overview.html) in the *Amazon S3 User Guide* .",
10319 "stability": "external",
10320 "summary": "A policy document containing permissions to add to the specified bucket."
10321 },
10322 "immutable": true,
10323 "locationInModule": {
10324 "filename": "lib/s3.generated.ts",
10325 "line": 5835
10326 },
10327 "name": "policyDocument",
10328 "type": {
10329 "primitive": "any"
10330 }
10331 }
10332 ],
10333 "symbolId": "lib/s3.generated:CfnBucketPolicyProps"
10334 },
10335 "@aws-cdk/aws-s3.CfnBucketProps": {
10336 "assembly": "@aws-cdk/aws-s3",
10337 "datatype": true,
10338 "docs": {
10339 "custom": {
10340 "exampleMetadata": "infused",
10341 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html"
10342 },
10343 "example": "const rawBucket = new s3.CfnBucket(this, 'Bucket', { /* ... */ });\n// -or-\nconst rawBucketAlt = myBucket.node.defaultChild as s3.CfnBucket;\n\n// then\nrawBucket.cfnOptions.condition = new CfnCondition(this, 'EnableBucket', { /* ... */ });\nrawBucket.cfnOptions.metadata = {\n metadataKey: 'MetadataValue',\n};",
10344 "stability": "external",
10345 "summary": "Properties for defining a `CfnBucket`."
10346 },
10347 "fqn": "@aws-cdk/aws-s3.CfnBucketProps",
10348 "kind": "interface",
10349 "locationInModule": {
10350 "filename": "lib/s3.generated.ts",
10351 "line": 459
10352 },
10353 "name": "CfnBucketProps",
10354 "properties": [
10355 {
10356 "abstract": true,
10357 "docs": {
10358 "custom": {
10359 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accelerateconfiguration"
10360 },
10361 "remarks": "For more information, see [Amazon S3 Transfer Acceleration](https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html) in the *Amazon S3 User Guide* .",
10362 "stability": "external",
10363 "summary": "Configures the transfer acceleration state for an Amazon S3 bucket."
10364 },
10365 "immutable": true,
10366 "locationInModule": {
10367 "filename": "lib/s3.generated.ts",
10368 "line": 466
10369 },
10370 "name": "accelerateConfiguration",
10371 "optional": true,
10372 "type": {
10373 "union": {
10374 "types": [
10375 {
10376 "fqn": "@aws-cdk/core.IResolvable"
10377 },
10378 {
10379 "fqn": "@aws-cdk/aws-s3.CfnBucket.AccelerateConfigurationProperty"
10380 }
10381 ]
10382 }
10383 }
10384 },
10385 {
10386 "abstract": true,
10387 "docs": {
10388 "custom": {
10389 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accesscontrol"
10390 },
10391 "remarks": "For more information about canned ACLs, see [Canned ACL](https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl) in the *Amazon S3 User Guide* .\n\nBe aware that the syntax for this property differs from the information provided in the *Amazon S3 User Guide* . The AccessControl property is case-sensitive and must be one of the following values: Private, PublicRead, PublicReadWrite, AuthenticatedRead, LogDeliveryWrite, BucketOwnerRead, BucketOwnerFullControl, or AwsExecRead.",
10392 "stability": "external",
10393 "summary": "A canned access control list (ACL) that grants predefined permissions to the bucket."
10394 },
10395 "immutable": true,
10396 "locationInModule": {
10397 "filename": "lib/s3.generated.ts",
10398 "line": 475
10399 },
10400 "name": "accessControl",
10401 "optional": true,
10402 "type": {
10403 "primitive": "string"
10404 }
10405 },
10406 {
10407 "abstract": true,
10408 "docs": {
10409 "custom": {
10410 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-analyticsconfigurations"
10411 },
10412 "stability": "external",
10413 "summary": "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket."
10414 },
10415 "immutable": true,
10416 "locationInModule": {
10417 "filename": "lib/s3.generated.ts",
10418 "line": 482
10419 },
10420 "name": "analyticsConfigurations",
10421 "optional": true,
10422 "type": {
10423 "union": {
10424 "types": [
10425 {
10426 "fqn": "@aws-cdk/core.IResolvable"
10427 },
10428 {
10429 "collection": {
10430 "elementtype": {
10431 "union": {
10432 "types": [
10433 {
10434 "fqn": "@aws-cdk/core.IResolvable"
10435 },
10436 {
10437 "fqn": "@aws-cdk/aws-s3.CfnBucket.AnalyticsConfigurationProperty"
10438 }
10439 ]
10440 }
10441 },
10442 "kind": "array"
10443 }
10444 }
10445 ]
10446 }
10447 }
10448 },
10449 {
10450 "abstract": true,
10451 "docs": {
10452 "custom": {
10453 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-bucketencryption"
10454 },
10455 "remarks": "For information about the Amazon S3 default encryption feature, see [Amazon S3 Default Encryption for S3 Buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-encryption.html) in the *Amazon S3 User Guide* .",
10456 "stability": "external",
10457 "summary": "Specifies default encryption for a bucket using server-side encryption with Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS) bucket."
10458 },
10459 "immutable": true,
10460 "locationInModule": {
10461 "filename": "lib/s3.generated.ts",
10462 "line": 489
10463 },
10464 "name": "bucketEncryption",
10465 "optional": true,
10466 "type": {
10467 "union": {
10468 "types": [
10469 {
10470 "fqn": "@aws-cdk/core.IResolvable"
10471 },
10472 {
10473 "fqn": "@aws-cdk/aws-s3.CfnBucket.BucketEncryptionProperty"
10474 }
10475 ]
10476 }
10477 }
10478 },
10479 {
10480 "abstract": true,
10481 "docs": {
10482 "custom": {
10483 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-name"
10484 },
10485 "remarks": "If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the bucket name. The bucket name must contain only lowercase letters, numbers, periods (.), and dashes (-) and must follow [Amazon S3 bucket restrictions and limitations](https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html) . For more information, see [Rules for naming Amazon S3 buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html#bucketnamingrules) in the *Amazon S3 User Guide* .\n\n> If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you need to replace the resource, specify a new name.",
10486 "stability": "external",
10487 "summary": "A name for the bucket."
10488 },
10489 "immutable": true,
10490 "locationInModule": {
10491 "filename": "lib/s3.generated.ts",
10492 "line": 498
10493 },
10494 "name": "bucketName",
10495 "optional": true,
10496 "type": {
10497 "primitive": "string"
10498 }
10499 },
10500 {
10501 "abstract": true,
10502 "docs": {
10503 "custom": {
10504 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-crossoriginconfig"
10505 },
10506 "remarks": "For more information, see [Enabling Cross-Origin Resource Sharing](https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html) in the *Amazon S3 User Guide* .",
10507 "stability": "external",
10508 "summary": "Describes the cross-origin access configuration for objects in an Amazon S3 bucket."
10509 },
10510 "immutable": true,
10511 "locationInModule": {
10512 "filename": "lib/s3.generated.ts",
10513 "line": 505
10514 },
10515 "name": "corsConfiguration",
10516 "optional": true,
10517 "type": {
10518 "union": {
10519 "types": [
10520 {
10521 "fqn": "@aws-cdk/core.IResolvable"
10522 },
10523 {
10524 "fqn": "@aws-cdk/aws-s3.CfnBucket.CorsConfigurationProperty"
10525 }
10526 ]
10527 }
10528 }
10529 },
10530 {
10531 "abstract": true,
10532 "docs": {
10533 "custom": {
10534 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-intelligenttieringconfigurations"
10535 },
10536 "stability": "external",
10537 "summary": "Defines how Amazon S3 handles Intelligent-Tiering storage."
10538 },
10539 "immutable": true,
10540 "locationInModule": {
10541 "filename": "lib/s3.generated.ts",
10542 "line": 512
10543 },
10544 "name": "intelligentTieringConfigurations",
10545 "optional": true,
10546 "type": {
10547 "union": {
10548 "types": [
10549 {
10550 "fqn": "@aws-cdk/core.IResolvable"
10551 },
10552 {
10553 "collection": {
10554 "elementtype": {
10555 "union": {
10556 "types": [
10557 {
10558 "fqn": "@aws-cdk/core.IResolvable"
10559 },
10560 {
10561 "fqn": "@aws-cdk/aws-s3.CfnBucket.IntelligentTieringConfigurationProperty"
10562 }
10563 ]
10564 }
10565 },
10566 "kind": "array"
10567 }
10568 }
10569 ]
10570 }
10571 }
10572 },
10573 {
10574 "abstract": true,
10575 "docs": {
10576 "custom": {
10577 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-inventoryconfigurations"
10578 },
10579 "remarks": "For more information, see [GET Bucket inventory](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGETInventoryConfig.html) in the *Amazon S3 API Reference* .",
10580 "stability": "external",
10581 "summary": "Specifies the inventory configuration for an Amazon S3 bucket."
10582 },
10583 "immutable": true,
10584 "locationInModule": {
10585 "filename": "lib/s3.generated.ts",
10586 "line": 519
10587 },
10588 "name": "inventoryConfigurations",
10589 "optional": true,
10590 "type": {
10591 "union": {
10592 "types": [
10593 {
10594 "fqn": "@aws-cdk/core.IResolvable"
10595 },
10596 {
10597 "collection": {
10598 "elementtype": {
10599 "union": {
10600 "types": [
10601 {
10602 "fqn": "@aws-cdk/core.IResolvable"
10603 },
10604 {
10605 "fqn": "@aws-cdk/aws-s3.CfnBucket.InventoryConfigurationProperty"
10606 }
10607 ]
10608 }
10609 },
10610 "kind": "array"
10611 }
10612 }
10613 ]
10614 }
10615 }
10616 },
10617 {
10618 "abstract": true,
10619 "docs": {
10620 "custom": {
10621 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-lifecycleconfig"
10622 },
10623 "remarks": "For more information, see [Object Lifecycle Management](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html) in the *Amazon S3 User Guide* .",
10624 "stability": "external",
10625 "summary": "Specifies the lifecycle configuration for objects in an Amazon S3 bucket."
10626 },
10627 "immutable": true,
10628 "locationInModule": {
10629 "filename": "lib/s3.generated.ts",
10630 "line": 526
10631 },
10632 "name": "lifecycleConfiguration",
10633 "optional": true,
10634 "type": {
10635 "union": {
10636 "types": [
10637 {
10638 "fqn": "@aws-cdk/core.IResolvable"
10639 },
10640 {
10641 "fqn": "@aws-cdk/aws-s3.CfnBucket.LifecycleConfigurationProperty"
10642 }
10643 ]
10644 }
10645 }
10646 },
10647 {
10648 "abstract": true,
10649 "docs": {
10650 "custom": {
10651 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-loggingconfig"
10652 },
10653 "stability": "external",
10654 "summary": "Settings that define where logs are stored."
10655 },
10656 "immutable": true,
10657 "locationInModule": {
10658 "filename": "lib/s3.generated.ts",
10659 "line": 533
10660 },
10661 "name": "loggingConfiguration",
10662 "optional": true,
10663 "type": {
10664 "union": {
10665 "types": [
10666 {
10667 "fqn": "@aws-cdk/core.IResolvable"
10668 },
10669 {
10670 "fqn": "@aws-cdk/aws-s3.CfnBucket.LoggingConfigurationProperty"
10671 }
10672 ]
10673 }
10674 }
10675 },
10676 {
10677 "abstract": true,
10678 "docs": {
10679 "custom": {
10680 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-metricsconfigurations"
10681 },
10682 "remarks": "If you're updating an existing metrics configuration, note that this is a full replacement of the existing metrics configuration. If you don't include the elements you want to keep, they are erased. For more information, see [PutBucketMetricsConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTMetricConfiguration.html) .",
10683 "stability": "external",
10684 "summary": "Specifies a metrics configuration for the CloudWatch request metrics (specified by the metrics configuration ID) from an Amazon S3 bucket."
10685 },
10686 "immutable": true,
10687 "locationInModule": {
10688 "filename": "lib/s3.generated.ts",
10689 "line": 540
10690 },
10691 "name": "metricsConfigurations",
10692 "optional": true,
10693 "type": {
10694 "union": {
10695 "types": [
10696 {
10697 "fqn": "@aws-cdk/core.IResolvable"
10698 },
10699 {
10700 "collection": {
10701 "elementtype": {
10702 "union": {
10703 "types": [
10704 {
10705 "fqn": "@aws-cdk/core.IResolvable"
10706 },
10707 {
10708 "fqn": "@aws-cdk/aws-s3.CfnBucket.MetricsConfigurationProperty"
10709 }
10710 ]
10711 }
10712 },
10713 "kind": "array"
10714 }
10715 }
10716 ]
10717 }
10718 }
10719 },
10720 {
10721 "abstract": true,
10722 "docs": {
10723 "custom": {
10724 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-notification"
10725 },
10726 "stability": "external",
10727 "summary": "Configuration that defines how Amazon S3 handles bucket notifications."
10728 },
10729 "immutable": true,
10730 "locationInModule": {
10731 "filename": "lib/s3.generated.ts",
10732 "line": 547
10733 },
10734 "name": "notificationConfiguration",
10735 "optional": true,
10736 "type": {
10737 "union": {
10738 "types": [
10739 {
10740 "fqn": "@aws-cdk/core.IResolvable"
10741 },
10742 {
10743 "fqn": "@aws-cdk/aws-s3.CfnBucket.NotificationConfigurationProperty"
10744 }
10745 ]
10746 }
10747 }
10748 },
10749 {
10750 "abstract": true,
10751 "docs": {
10752 "custom": {
10753 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockconfiguration"
10754 },
10755 "remarks": "The rule specified in the Object Lock configuration will be applied by default to every new object placed in the specified bucket. For more information, see [Locking Objects](https://docs.aws.amazon.com/AmazonS3/latest/dev/object-lock.html) .\n\n> - The `DefaultRetention` settings require both a mode and a period.\n> - The `DefaultRetention` period can be either `Days` or `Years` but you must select one. You cannot specify `Days` and `Years` at the same time.\n> - You can only enable Object Lock for new buckets. If you want to turn on Object Lock for an existing bucket, contact AWS Support.",
10756 "stability": "external",
10757 "summary": "Places an Object Lock configuration on the specified bucket."
10758 },
10759 "immutable": true,
10760 "locationInModule": {
10761 "filename": "lib/s3.generated.ts",
10762 "line": 558
10763 },
10764 "name": "objectLockConfiguration",
10765 "optional": true,
10766 "type": {
10767 "union": {
10768 "types": [
10769 {
10770 "fqn": "@aws-cdk/core.IResolvable"
10771 },
10772 {
10773 "fqn": "@aws-cdk/aws-s3.CfnBucket.ObjectLockConfigurationProperty"
10774 }
10775 ]
10776 }
10777 }
10778 },
10779 {
10780 "abstract": true,
10781 "docs": {
10782 "custom": {
10783 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-objectlockenabled"
10784 },
10785 "remarks": "Enable `ObjectLockEnabled` when you apply `ObjectLockConfiguration` to a bucket.",
10786 "stability": "external",
10787 "summary": "Indicates whether this bucket has an Object Lock configuration enabled."
10788 },
10789 "immutable": true,
10790 "locationInModule": {
10791 "filename": "lib/s3.generated.ts",
10792 "line": 565
10793 },
10794 "name": "objectLockEnabled",
10795 "optional": true,
10796 "type": {
10797 "union": {
10798 "types": [
10799 {
10800 "primitive": "boolean"
10801 },
10802 {
10803 "fqn": "@aws-cdk/core.IResolvable"
10804 }
10805 ]
10806 }
10807 }
10808 },
10809 {
10810 "abstract": true,
10811 "docs": {
10812 "custom": {
10813 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-ownershipcontrols"
10814 },
10815 "stability": "external",
10816 "summary": "Configuration that defines how Amazon S3 handles Object Ownership rules."
10817 },
10818 "immutable": true,
10819 "locationInModule": {
10820 "filename": "lib/s3.generated.ts",
10821 "line": 572
10822 },
10823 "name": "ownershipControls",
10824 "optional": true,
10825 "type": {
10826 "union": {
10827 "types": [
10828 {
10829 "fqn": "@aws-cdk/core.IResolvable"
10830 },
10831 {
10832 "fqn": "@aws-cdk/aws-s3.CfnBucket.OwnershipControlsProperty"
10833 }
10834 ]
10835 }
10836 }
10837 },
10838 {
10839 "abstract": true,
10840 "docs": {
10841 "custom": {
10842 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-publicaccessblockconfiguration"
10843 },
10844 "stability": "external",
10845 "summary": "Configuration that defines how Amazon S3 handles public access."
10846 },
10847 "immutable": true,
10848 "locationInModule": {
10849 "filename": "lib/s3.generated.ts",
10850 "line": 579
10851 },
10852 "name": "publicAccessBlockConfiguration",
10853 "optional": true,
10854 "type": {
10855 "union": {
10856 "types": [
10857 {
10858 "fqn": "@aws-cdk/core.IResolvable"
10859 },
10860 {
10861 "fqn": "@aws-cdk/aws-s3.CfnBucket.PublicAccessBlockConfigurationProperty"
10862 }
10863 ]
10864 }
10865 }
10866 },
10867 {
10868 "abstract": true,
10869 "docs": {
10870 "custom": {
10871 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-replicationconfiguration"
10872 },
10873 "remarks": "To enable replication, you must also enable versioning by using the `VersioningConfiguration` property.\n\nAmazon S3 can store replicated objects in a single destination bucket or multiple destination buckets. The destination bucket or buckets must already exist.",
10874 "stability": "external",
10875 "summary": "Configuration for replicating objects in an S3 bucket."
10876 },
10877 "immutable": true,
10878 "locationInModule": {
10879 "filename": "lib/s3.generated.ts",
10880 "line": 588
10881 },
10882 "name": "replicationConfiguration",
10883 "optional": true,
10884 "type": {
10885 "union": {
10886 "types": [
10887 {
10888 "fqn": "@aws-cdk/core.IResolvable"
10889 },
10890 {
10891 "fqn": "@aws-cdk/aws-s3.CfnBucket.ReplicationConfigurationProperty"
10892 }
10893 ]
10894 }
10895 }
10896 },
10897 {
10898 "abstract": true,
10899 "docs": {
10900 "custom": {
10901 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-tags"
10902 },
10903 "stability": "external",
10904 "summary": "An arbitrary set of tags (key-value pairs) for this S3 bucket."
10905 },
10906 "immutable": true,
10907 "locationInModule": {
10908 "filename": "lib/s3.generated.ts",
10909 "line": 595
10910 },
10911 "name": "tags",
10912 "optional": true,
10913 "type": {
10914 "collection": {
10915 "elementtype": {
10916 "fqn": "@aws-cdk/core.CfnTag"
10917 },
10918 "kind": "array"
10919 }
10920 }
10921 },
10922 {
10923 "abstract": true,
10924 "docs": {
10925 "custom": {
10926 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-versioning"
10927 },
10928 "remarks": "You might enable versioning to prevent objects from being deleted or overwritten by mistake or to archive objects so that you can retrieve previous versions of them.",
10929 "stability": "external",
10930 "summary": "Enables multiple versions of all objects in this bucket."
10931 },
10932 "immutable": true,
10933 "locationInModule": {
10934 "filename": "lib/s3.generated.ts",
10935 "line": 602
10936 },
10937 "name": "versioningConfiguration",
10938 "optional": true,
10939 "type": {
10940 "union": {
10941 "types": [
10942 {
10943 "fqn": "@aws-cdk/core.IResolvable"
10944 },
10945 {
10946 "fqn": "@aws-cdk/aws-s3.CfnBucket.VersioningConfigurationProperty"
10947 }
10948 ]
10949 }
10950 }
10951 },
10952 {
10953 "abstract": true,
10954 "docs": {
10955 "custom": {
10956 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-websiteconfiguration"
10957 },
10958 "remarks": "For more information, see [Hosting Websites on Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteHosting.html) .",
10959 "stability": "external",
10960 "summary": "Information used to configure the bucket as a static website."
10961 },
10962 "immutable": true,
10963 "locationInModule": {
10964 "filename": "lib/s3.generated.ts",
10965 "line": 609
10966 },
10967 "name": "websiteConfiguration",
10968 "optional": true,
10969 "type": {
10970 "union": {
10971 "types": [
10972 {
10973 "fqn": "@aws-cdk/core.IResolvable"
10974 },
10975 {
10976 "fqn": "@aws-cdk/aws-s3.CfnBucket.WebsiteConfigurationProperty"
10977 }
10978 ]
10979 }
10980 }
10981 }
10982 ],
10983 "symbolId": "lib/s3.generated:CfnBucketProps"
10984 },
10985 "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint": {
10986 "assembly": "@aws-cdk/aws-s3",
10987 "base": "@aws-cdk/core.CfnResource",
10988 "docs": {
10989 "custom": {
10990 "cloudformationResource": "AWS::S3::MultiRegionAccessPoint",
10991 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html",
10992 "exampleMetadata": "fixture=_generated"
10993 },
10994 "remarks": "The `AWS::S3::MultiRegionAccessPoint` resource creates an Amazon S3 Multi-Region Access Point. To learn more about Multi-Region Access Points, see [Multi-Region Access Points in Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPoints.html) in the in the *Amazon S3 User Guide* .",
10995 "stability": "external",
10996 "summary": "A CloudFormation `AWS::S3::MultiRegionAccessPoint`.",
10997 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst cfnMultiRegionAccessPoint = new s3.CfnMultiRegionAccessPoint(this, 'MyCfnMultiRegionAccessPoint', {\n regions: [{\n bucket: 'bucket',\n }],\n\n // the properties below are optional\n name: 'name',\n publicAccessBlockConfiguration: {\n blockPublicAcls: false,\n blockPublicPolicy: false,\n ignorePublicAcls: false,\n restrictPublicBuckets: false,\n },\n});"
10998 },
10999 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint",
11000 "initializer": {
11001 "docs": {
11002 "stability": "external",
11003 "summary": "Create a new `AWS::S3::MultiRegionAccessPoint`."
11004 },
11005 "locationInModule": {
11006 "filename": "lib/s3.generated.ts",
11007 "line": 6146
11008 },
11009 "parameters": [
11010 {
11011 "docs": {
11012 "summary": "- scope in which this resource is defined."
11013 },
11014 "name": "scope",
11015 "type": {
11016 "fqn": "@aws-cdk/core.Construct"
11017 }
11018 },
11019 {
11020 "docs": {
11021 "summary": "- scoped id of the resource."
11022 },
11023 "name": "id",
11024 "type": {
11025 "primitive": "string"
11026 }
11027 },
11028 {
11029 "docs": {
11030 "summary": "- resource properties."
11031 },
11032 "name": "props",
11033 "type": {
11034 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPointProps"
11035 }
11036 }
11037 ]
11038 },
11039 "interfaces": [
11040 "@aws-cdk/core.IInspectable"
11041 ],
11042 "kind": "class",
11043 "locationInModule": {
11044 "filename": "lib/s3.generated.ts",
11045 "line": 6081
11046 },
11047 "methods": [
11048 {
11049 "docs": {
11050 "stability": "external",
11051 "summary": "Examines the CloudFormation resource and discloses attributes."
11052 },
11053 "locationInModule": {
11054 "filename": "lib/s3.generated.ts",
11055 "line": 6163
11056 },
11057 "name": "inspect",
11058 "overrides": "@aws-cdk/core.IInspectable",
11059 "parameters": [
11060 {
11061 "docs": {
11062 "summary": "- tree inspector to collect and process attributes."
11063 },
11064 "name": "inspector",
11065 "type": {
11066 "fqn": "@aws-cdk/core.TreeInspector"
11067 }
11068 }
11069 ]
11070 },
11071 {
11072 "docs": {
11073 "stability": "external"
11074 },
11075 "locationInModule": {
11076 "filename": "lib/s3.generated.ts",
11077 "line": 6176
11078 },
11079 "name": "renderProperties",
11080 "overrides": "@aws-cdk/core.CfnResource",
11081 "parameters": [
11082 {
11083 "name": "props",
11084 "type": {
11085 "collection": {
11086 "elementtype": {
11087 "primitive": "any"
11088 },
11089 "kind": "map"
11090 }
11091 }
11092 }
11093 ],
11094 "protected": true,
11095 "returns": {
11096 "type": {
11097 "collection": {
11098 "elementtype": {
11099 "primitive": "any"
11100 },
11101 "kind": "map"
11102 }
11103 }
11104 }
11105 }
11106 ],
11107 "name": "CfnMultiRegionAccessPoint",
11108 "properties": [
11109 {
11110 "const": true,
11111 "docs": {
11112 "stability": "external",
11113 "summary": "The CloudFormation resource type name for this resource class."
11114 },
11115 "immutable": true,
11116 "locationInModule": {
11117 "filename": "lib/s3.generated.ts",
11118 "line": 6085
11119 },
11120 "name": "CFN_RESOURCE_TYPE_NAME",
11121 "static": true,
11122 "type": {
11123 "primitive": "string"
11124 }
11125 },
11126 {
11127 "docs": {
11128 "custom": {
11129 "cloudformationAttribute": "Alias"
11130 },
11131 "remarks": "For more information about the distinction between the name and the alias of an Multi-Region Access Point, see [Managing Multi-Region Access Points](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming) in the *Amazon S3 User Guide* .",
11132 "stability": "external",
11133 "summary": "The alias for the Multi-Region Access Point."
11134 },
11135 "immutable": true,
11136 "locationInModule": {
11137 "filename": "lib/s3.generated.ts",
11138 "line": 6110
11139 },
11140 "name": "attrAlias",
11141 "type": {
11142 "primitive": "string"
11143 }
11144 },
11145 {
11146 "docs": {
11147 "custom": {
11148 "cloudformationAttribute": "CreatedAt"
11149 },
11150 "stability": "external",
11151 "summary": "The timestamp of when the Multi-Region Access Point is created."
11152 },
11153 "immutable": true,
11154 "locationInModule": {
11155 "filename": "lib/s3.generated.ts",
11156 "line": 6116
11157 },
11158 "name": "attrCreatedAt",
11159 "type": {
11160 "primitive": "string"
11161 }
11162 },
11163 {
11164 "docs": {
11165 "stability": "external"
11166 },
11167 "immutable": true,
11168 "locationInModule": {
11169 "filename": "lib/s3.generated.ts",
11170 "line": 6168
11171 },
11172 "name": "cfnProperties",
11173 "overrides": "@aws-cdk/core.CfnResource",
11174 "protected": true,
11175 "type": {
11176 "collection": {
11177 "elementtype": {
11178 "primitive": "any"
11179 },
11180 "kind": "map"
11181 }
11182 }
11183 },
11184 {
11185 "docs": {
11186 "custom": {
11187 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html#cfn-s3-multiregionaccesspoint-regions"
11188 },
11189 "stability": "external",
11190 "summary": "A collection of the Regions and buckets associated with the Multi-Region Access Point."
11191 },
11192 "locationInModule": {
11193 "filename": "lib/s3.generated.ts",
11194 "line": 6123
11195 },
11196 "name": "regions",
11197 "type": {
11198 "union": {
11199 "types": [
11200 {
11201 "fqn": "@aws-cdk/core.IResolvable"
11202 },
11203 {
11204 "collection": {
11205 "elementtype": {
11206 "union": {
11207 "types": [
11208 {
11209 "fqn": "@aws-cdk/core.IResolvable"
11210 },
11211 {
11212 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint.RegionProperty"
11213 }
11214 ]
11215 }
11216 },
11217 "kind": "array"
11218 }
11219 }
11220 ]
11221 }
11222 }
11223 },
11224 {
11225 "docs": {
11226 "custom": {
11227 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html#cfn-s3-multiregionaccesspoint-name"
11228 },
11229 "stability": "external",
11230 "summary": "The name of the Multi-Region Access Point."
11231 },
11232 "locationInModule": {
11233 "filename": "lib/s3.generated.ts",
11234 "line": 6130
11235 },
11236 "name": "name",
11237 "optional": true,
11238 "type": {
11239 "primitive": "string"
11240 }
11241 },
11242 {
11243 "docs": {
11244 "custom": {
11245 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html#cfn-s3-multiregionaccesspoint-publicaccessblockconfiguration"
11246 },
11247 "remarks": "You can enable the configuration options in any combination. For more information about when Amazon S3 considers an object public, see [The Meaning of \"Public\"](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) in the *Amazon S3 User Guide* .",
11248 "stability": "external",
11249 "summary": "The PublicAccessBlock configuration that you want to apply to this Multi-Region Access Point."
11250 },
11251 "locationInModule": {
11252 "filename": "lib/s3.generated.ts",
11253 "line": 6137
11254 },
11255 "name": "publicAccessBlockConfiguration",
11256 "optional": true,
11257 "type": {
11258 "union": {
11259 "types": [
11260 {
11261 "fqn": "@aws-cdk/core.IResolvable"
11262 },
11263 {
11264 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint.PublicAccessBlockConfigurationProperty"
11265 }
11266 ]
11267 }
11268 }
11269 }
11270 ],
11271 "symbolId": "lib/s3.generated:CfnMultiRegionAccessPoint"
11272 },
11273 "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint.PublicAccessBlockConfigurationProperty": {
11274 "assembly": "@aws-cdk/aws-s3",
11275 "datatype": true,
11276 "docs": {
11277 "custom": {
11278 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-publicaccessblockconfiguration.html",
11279 "exampleMetadata": "fixture=_generated"
11280 },
11281 "remarks": "You can enable the configuration options in any combination. For more information about when Amazon S3 considers an object public, see [The Meaning of \"Public\"](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) in the *Amazon S3 User Guide* .",
11282 "stability": "external",
11283 "summary": "The PublicAccessBlock configuration that you want to apply to this Amazon S3 Multi-Region Access Point.",
11284 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst publicAccessBlockConfigurationProperty: s3.CfnMultiRegionAccessPoint.PublicAccessBlockConfigurationProperty = {\n blockPublicAcls: false,\n blockPublicPolicy: false,\n ignorePublicAcls: false,\n restrictPublicBuckets: false,\n};"
11285 },
11286 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint.PublicAccessBlockConfigurationProperty",
11287 "kind": "interface",
11288 "locationInModule": {
11289 "filename": "lib/s3.generated.ts",
11290 "line": 6190
11291 },
11292 "name": "PublicAccessBlockConfigurationProperty",
11293 "namespace": "CfnMultiRegionAccessPoint",
11294 "properties": [
11295 {
11296 "abstract": true,
11297 "docs": {
11298 "custom": {
11299 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-publicaccessblockconfiguration.html#cfn-s3-multiregionaccesspoint-publicaccessblockconfiguration-blockpublicacls"
11300 },
11301 "remarks": "Setting this element to `TRUE` causes the following behavior:\n\n- PUT Bucket ACL and PUT Object ACL calls fail if the specified ACL is public.\n- PUT Object calls fail if the request includes a public ACL.\n- PUT Bucket calls fail if the request includes a public ACL.\n\nEnabling this setting doesn't affect existing policies or ACLs.",
11302 "stability": "external",
11303 "summary": "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket."
11304 },
11305 "immutable": true,
11306 "locationInModule": {
11307 "filename": "lib/s3.generated.ts",
11308 "line": 6202
11309 },
11310 "name": "blockPublicAcls",
11311 "optional": true,
11312 "type": {
11313 "union": {
11314 "types": [
11315 {
11316 "primitive": "boolean"
11317 },
11318 {
11319 "fqn": "@aws-cdk/core.IResolvable"
11320 }
11321 ]
11322 }
11323 }
11324 },
11325 {
11326 "abstract": true,
11327 "docs": {
11328 "custom": {
11329 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-publicaccessblockconfiguration.html#cfn-s3-multiregionaccesspoint-publicaccessblockconfiguration-blockpublicpolicy"
11330 },
11331 "remarks": "Setting this element to `TRUE` causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\n\nEnabling this setting doesn't affect existing bucket policies.",
11332 "stability": "external",
11333 "summary": "Specifies whether Amazon S3 should block public bucket policies for this bucket."
11334 },
11335 "immutable": true,
11336 "locationInModule": {
11337 "filename": "lib/s3.generated.ts",
11338 "line": 6210
11339 },
11340 "name": "blockPublicPolicy",
11341 "optional": true,
11342 "type": {
11343 "union": {
11344 "types": [
11345 {
11346 "primitive": "boolean"
11347 },
11348 {
11349 "fqn": "@aws-cdk/core.IResolvable"
11350 }
11351 ]
11352 }
11353 }
11354 },
11355 {
11356 "abstract": true,
11357 "docs": {
11358 "custom": {
11359 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-publicaccessblockconfiguration.html#cfn-s3-multiregionaccesspoint-publicaccessblockconfiguration-ignorepublicacls"
11360 },
11361 "remarks": "Setting this element to `TRUE` causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\n\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.",
11362 "stability": "external",
11363 "summary": "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket."
11364 },
11365 "immutable": true,
11366 "locationInModule": {
11367 "filename": "lib/s3.generated.ts",
11368 "line": 6218
11369 },
11370 "name": "ignorePublicAcls",
11371 "optional": true,
11372 "type": {
11373 "union": {
11374 "types": [
11375 {
11376 "primitive": "boolean"
11377 },
11378 {
11379 "fqn": "@aws-cdk/core.IResolvable"
11380 }
11381 ]
11382 }
11383 }
11384 },
11385 {
11386 "abstract": true,
11387 "docs": {
11388 "custom": {
11389 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-publicaccessblockconfiguration.html#cfn-s3-multiregionaccesspoint-publicaccessblockconfiguration-restrictpublicbuckets"
11390 },
11391 "remarks": "Setting this element to `TRUE` restricts access to this bucket to only AWS service principals and authorized users within this account if the bucket has a public policy.\n\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.",
11392 "stability": "external",
11393 "summary": "Specifies whether Amazon S3 should restrict public bucket policies for this bucket."
11394 },
11395 "immutable": true,
11396 "locationInModule": {
11397 "filename": "lib/s3.generated.ts",
11398 "line": 6226
11399 },
11400 "name": "restrictPublicBuckets",
11401 "optional": true,
11402 "type": {
11403 "union": {
11404 "types": [
11405 {
11406 "primitive": "boolean"
11407 },
11408 {
11409 "fqn": "@aws-cdk/core.IResolvable"
11410 }
11411 ]
11412 }
11413 }
11414 }
11415 ],
11416 "symbolId": "lib/s3.generated:CfnMultiRegionAccessPoint.PublicAccessBlockConfigurationProperty"
11417 },
11418 "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint.RegionProperty": {
11419 "assembly": "@aws-cdk/aws-s3",
11420 "datatype": true,
11421 "docs": {
11422 "custom": {
11423 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-region.html",
11424 "exampleMetadata": "fixture=_generated"
11425 },
11426 "stability": "external",
11427 "summary": "A bucket associated with a specific Region when creating Multi-Region Access Points.",
11428 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst regionProperty: s3.CfnMultiRegionAccessPoint.RegionProperty = {\n bucket: 'bucket',\n};"
11429 },
11430 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint.RegionProperty",
11431 "kind": "interface",
11432 "locationInModule": {
11433 "filename": "lib/s3.generated.ts",
11434 "line": 6296
11435 },
11436 "name": "RegionProperty",
11437 "namespace": "CfnMultiRegionAccessPoint",
11438 "properties": [
11439 {
11440 "abstract": true,
11441 "docs": {
11442 "custom": {
11443 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-multiregionaccesspoint-region.html#cfn-s3-multiregionaccesspoint-region-bucket"
11444 },
11445 "stability": "external",
11446 "summary": "The name of the associated bucket for the Region."
11447 },
11448 "immutable": true,
11449 "locationInModule": {
11450 "filename": "lib/s3.generated.ts",
11451 "line": 6302
11452 },
11453 "name": "bucket",
11454 "type": {
11455 "primitive": "string"
11456 }
11457 }
11458 ],
11459 "symbolId": "lib/s3.generated:CfnMultiRegionAccessPoint.RegionProperty"
11460 },
11461 "@aws-cdk/aws-s3.CfnMultiRegionAccessPointPolicy": {
11462 "assembly": "@aws-cdk/aws-s3",
11463 "base": "@aws-cdk/core.CfnResource",
11464 "docs": {
11465 "custom": {
11466 "cloudformationResource": "AWS::S3::MultiRegionAccessPointPolicy",
11467 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html",
11468 "exampleMetadata": "fixture=_generated"
11469 },
11470 "remarks": "Applies an Amazon S3 access policy to an Amazon S3 Multi-Region Access Point.\n\nIt is not possible to delete an access policy for a Multi-Region Access Point from the CloudFormation template. When you attempt to delete the policy, CloudFormation updates the policy using `DeletionPolicy:Retain` and `UpdateReplacePolicy:Retain` . CloudFormation updates the policy to only allow access to the account that created the bucket.",
11471 "stability": "external",
11472 "summary": "A CloudFormation `AWS::S3::MultiRegionAccessPointPolicy`.",
11473 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const policy: any;\nconst cfnMultiRegionAccessPointPolicy = new s3.CfnMultiRegionAccessPointPolicy(this, 'MyCfnMultiRegionAccessPointPolicy', {\n mrapName: 'mrapName',\n policy: policy,\n});"
11474 },
11475 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPointPolicy",
11476 "initializer": {
11477 "docs": {
11478 "stability": "external",
11479 "summary": "Create a new `AWS::S3::MultiRegionAccessPointPolicy`."
11480 },
11481 "locationInModule": {
11482 "filename": "lib/s3.generated.ts",
11483 "line": 6488
11484 },
11485 "parameters": [
11486 {
11487 "docs": {
11488 "summary": "- scope in which this resource is defined."
11489 },
11490 "name": "scope",
11491 "type": {
11492 "fqn": "@aws-cdk/core.Construct"
11493 }
11494 },
11495 {
11496 "docs": {
11497 "summary": "- scoped id of the resource."
11498 },
11499 "name": "id",
11500 "type": {
11501 "primitive": "string"
11502 }
11503 },
11504 {
11505 "docs": {
11506 "summary": "- resource properties."
11507 },
11508 "name": "props",
11509 "type": {
11510 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPointPolicyProps"
11511 }
11512 }
11513 ]
11514 },
11515 "interfaces": [
11516 "@aws-cdk/core.IInspectable"
11517 ],
11518 "kind": "class",
11519 "locationInModule": {
11520 "filename": "lib/s3.generated.ts",
11521 "line": 6442
11522 },
11523 "methods": [
11524 {
11525 "docs": {
11526 "stability": "external",
11527 "summary": "Examines the CloudFormation resource and discloses attributes."
11528 },
11529 "locationInModule": {
11530 "filename": "lib/s3.generated.ts",
11531 "line": 6503
11532 },
11533 "name": "inspect",
11534 "overrides": "@aws-cdk/core.IInspectable",
11535 "parameters": [
11536 {
11537 "docs": {
11538 "summary": "- tree inspector to collect and process attributes."
11539 },
11540 "name": "inspector",
11541 "type": {
11542 "fqn": "@aws-cdk/core.TreeInspector"
11543 }
11544 }
11545 ]
11546 },
11547 {
11548 "docs": {
11549 "stability": "external"
11550 },
11551 "locationInModule": {
11552 "filename": "lib/s3.generated.ts",
11553 "line": 6515
11554 },
11555 "name": "renderProperties",
11556 "overrides": "@aws-cdk/core.CfnResource",
11557 "parameters": [
11558 {
11559 "name": "props",
11560 "type": {
11561 "collection": {
11562 "elementtype": {
11563 "primitive": "any"
11564 },
11565 "kind": "map"
11566 }
11567 }
11568 }
11569 ],
11570 "protected": true,
11571 "returns": {
11572 "type": {
11573 "collection": {
11574 "elementtype": {
11575 "primitive": "any"
11576 },
11577 "kind": "map"
11578 }
11579 }
11580 }
11581 }
11582 ],
11583 "name": "CfnMultiRegionAccessPointPolicy",
11584 "properties": [
11585 {
11586 "const": true,
11587 "docs": {
11588 "stability": "external",
11589 "summary": "The CloudFormation resource type name for this resource class."
11590 },
11591 "immutable": true,
11592 "locationInModule": {
11593 "filename": "lib/s3.generated.ts",
11594 "line": 6446
11595 },
11596 "name": "CFN_RESOURCE_TYPE_NAME",
11597 "static": true,
11598 "type": {
11599 "primitive": "string"
11600 }
11601 },
11602 {
11603 "docs": {
11604 "stability": "external"
11605 },
11606 "immutable": true,
11607 "locationInModule": {
11608 "filename": "lib/s3.generated.ts",
11609 "line": 6508
11610 },
11611 "name": "cfnProperties",
11612 "overrides": "@aws-cdk/core.CfnResource",
11613 "protected": true,
11614 "type": {
11615 "collection": {
11616 "elementtype": {
11617 "primitive": "any"
11618 },
11619 "kind": "map"
11620 }
11621 }
11622 },
11623 {
11624 "docs": {
11625 "custom": {
11626 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html#cfn-s3-multiregionaccesspointpolicy-mrapname"
11627 },
11628 "stability": "external",
11629 "summary": "The name of the Multi-Region Access Point."
11630 },
11631 "locationInModule": {
11632 "filename": "lib/s3.generated.ts",
11633 "line": 6472
11634 },
11635 "name": "mrapName",
11636 "type": {
11637 "primitive": "string"
11638 }
11639 },
11640 {
11641 "docs": {
11642 "custom": {
11643 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html#cfn-s3-multiregionaccesspointpolicy-policy"
11644 },
11645 "stability": "external",
11646 "summary": "The access policy associated with the Multi-Region Access Point."
11647 },
11648 "locationInModule": {
11649 "filename": "lib/s3.generated.ts",
11650 "line": 6479
11651 },
11652 "name": "policy",
11653 "type": {
11654 "primitive": "any"
11655 }
11656 }
11657 ],
11658 "symbolId": "lib/s3.generated:CfnMultiRegionAccessPointPolicy"
11659 },
11660 "@aws-cdk/aws-s3.CfnMultiRegionAccessPointPolicyProps": {
11661 "assembly": "@aws-cdk/aws-s3",
11662 "datatype": true,
11663 "docs": {
11664 "custom": {
11665 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html",
11666 "exampleMetadata": "fixture=_generated"
11667 },
11668 "stability": "external",
11669 "summary": "Properties for defining a `CfnMultiRegionAccessPointPolicy`.",
11670 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const policy: any;\nconst cfnMultiRegionAccessPointPolicyProps: s3.CfnMultiRegionAccessPointPolicyProps = {\n mrapName: 'mrapName',\n policy: policy,\n};"
11671 },
11672 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPointPolicyProps",
11673 "kind": "interface",
11674 "locationInModule": {
11675 "filename": "lib/s3.generated.ts",
11676 "line": 6363
11677 },
11678 "name": "CfnMultiRegionAccessPointPolicyProps",
11679 "properties": [
11680 {
11681 "abstract": true,
11682 "docs": {
11683 "custom": {
11684 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html#cfn-s3-multiregionaccesspointpolicy-mrapname"
11685 },
11686 "stability": "external",
11687 "summary": "The name of the Multi-Region Access Point."
11688 },
11689 "immutable": true,
11690 "locationInModule": {
11691 "filename": "lib/s3.generated.ts",
11692 "line": 6370
11693 },
11694 "name": "mrapName",
11695 "type": {
11696 "primitive": "string"
11697 }
11698 },
11699 {
11700 "abstract": true,
11701 "docs": {
11702 "custom": {
11703 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspointpolicy.html#cfn-s3-multiregionaccesspointpolicy-policy"
11704 },
11705 "stability": "external",
11706 "summary": "The access policy associated with the Multi-Region Access Point."
11707 },
11708 "immutable": true,
11709 "locationInModule": {
11710 "filename": "lib/s3.generated.ts",
11711 "line": 6377
11712 },
11713 "name": "policy",
11714 "type": {
11715 "primitive": "any"
11716 }
11717 }
11718 ],
11719 "symbolId": "lib/s3.generated:CfnMultiRegionAccessPointPolicyProps"
11720 },
11721 "@aws-cdk/aws-s3.CfnMultiRegionAccessPointProps": {
11722 "assembly": "@aws-cdk/aws-s3",
11723 "datatype": true,
11724 "docs": {
11725 "custom": {
11726 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html",
11727 "exampleMetadata": "fixture=_generated"
11728 },
11729 "stability": "external",
11730 "summary": "Properties for defining a `CfnMultiRegionAccessPoint`.",
11731 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst cfnMultiRegionAccessPointProps: s3.CfnMultiRegionAccessPointProps = {\n regions: [{\n bucket: 'bucket',\n }],\n\n // the properties below are optional\n name: 'name',\n publicAccessBlockConfiguration: {\n blockPublicAcls: false,\n blockPublicPolicy: false,\n ignorePublicAcls: false,\n restrictPublicBuckets: false,\n },\n};"
11732 },
11733 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPointProps",
11734 "kind": "interface",
11735 "locationInModule": {
11736 "filename": "lib/s3.generated.ts",
11737 "line": 5995
11738 },
11739 "name": "CfnMultiRegionAccessPointProps",
11740 "properties": [
11741 {
11742 "abstract": true,
11743 "docs": {
11744 "custom": {
11745 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html#cfn-s3-multiregionaccesspoint-regions"
11746 },
11747 "stability": "external",
11748 "summary": "A collection of the Regions and buckets associated with the Multi-Region Access Point."
11749 },
11750 "immutable": true,
11751 "locationInModule": {
11752 "filename": "lib/s3.generated.ts",
11753 "line": 6002
11754 },
11755 "name": "regions",
11756 "type": {
11757 "union": {
11758 "types": [
11759 {
11760 "fqn": "@aws-cdk/core.IResolvable"
11761 },
11762 {
11763 "collection": {
11764 "elementtype": {
11765 "union": {
11766 "types": [
11767 {
11768 "fqn": "@aws-cdk/core.IResolvable"
11769 },
11770 {
11771 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint.RegionProperty"
11772 }
11773 ]
11774 }
11775 },
11776 "kind": "array"
11777 }
11778 }
11779 ]
11780 }
11781 }
11782 },
11783 {
11784 "abstract": true,
11785 "docs": {
11786 "custom": {
11787 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html#cfn-s3-multiregionaccesspoint-name"
11788 },
11789 "stability": "external",
11790 "summary": "The name of the Multi-Region Access Point."
11791 },
11792 "immutable": true,
11793 "locationInModule": {
11794 "filename": "lib/s3.generated.ts",
11795 "line": 6009
11796 },
11797 "name": "name",
11798 "optional": true,
11799 "type": {
11800 "primitive": "string"
11801 }
11802 },
11803 {
11804 "abstract": true,
11805 "docs": {
11806 "custom": {
11807 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-multiregionaccesspoint.html#cfn-s3-multiregionaccesspoint-publicaccessblockconfiguration"
11808 },
11809 "remarks": "You can enable the configuration options in any combination. For more information about when Amazon S3 considers an object public, see [The Meaning of \"Public\"](https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status) in the *Amazon S3 User Guide* .",
11810 "stability": "external",
11811 "summary": "The PublicAccessBlock configuration that you want to apply to this Multi-Region Access Point."
11812 },
11813 "immutable": true,
11814 "locationInModule": {
11815 "filename": "lib/s3.generated.ts",
11816 "line": 6016
11817 },
11818 "name": "publicAccessBlockConfiguration",
11819 "optional": true,
11820 "type": {
11821 "union": {
11822 "types": [
11823 {
11824 "fqn": "@aws-cdk/core.IResolvable"
11825 },
11826 {
11827 "fqn": "@aws-cdk/aws-s3.CfnMultiRegionAccessPoint.PublicAccessBlockConfigurationProperty"
11828 }
11829 ]
11830 }
11831 }
11832 }
11833 ],
11834 "symbolId": "lib/s3.generated:CfnMultiRegionAccessPointProps"
11835 },
11836 "@aws-cdk/aws-s3.CfnStorageLens": {
11837 "assembly": "@aws-cdk/aws-s3",
11838 "base": "@aws-cdk/core.CfnResource",
11839 "docs": {
11840 "custom": {
11841 "cloudformationResource": "AWS::S3::StorageLens",
11842 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html",
11843 "exampleMetadata": "fixture=_generated"
11844 },
11845 "remarks": "The AWS::S3::StorageLens resource creates an instance of an Amazon S3 Storage Lens configuration.",
11846 "stability": "external",
11847 "summary": "A CloudFormation `AWS::S3::StorageLens`.",
11848 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const encryption: any;\nconst cfnStorageLens = new s3.CfnStorageLens(this, 'MyCfnStorageLens', {\n storageLensConfiguration: {\n accountLevel: {\n bucketLevel: {\n activityMetrics: {\n isEnabled: false,\n },\n prefixLevel: {\n storageMetrics: {\n isEnabled: false,\n selectionCriteria: {\n delimiter: 'delimiter',\n maxDepth: 123,\n minStorageBytesPercentage: 123,\n },\n },\n },\n },\n\n // the properties below are optional\n activityMetrics: {\n isEnabled: false,\n },\n },\n id: 'id',\n isEnabled: false,\n\n // the properties below are optional\n awsOrg: {\n arn: 'arn',\n },\n dataExport: {\n cloudWatchMetrics: {\n isEnabled: false,\n },\n s3BucketDestination: {\n accountId: 'accountId',\n arn: 'arn',\n format: 'format',\n outputSchemaVersion: 'outputSchemaVersion',\n\n // the properties below are optional\n encryption: encryption,\n prefix: 'prefix',\n },\n },\n exclude: {\n buckets: ['buckets'],\n regions: ['regions'],\n },\n include: {\n buckets: ['buckets'],\n regions: ['regions'],\n },\n storageLensArn: 'storageLensArn',\n },\n\n // the properties below are optional\n tags: [{\n key: 'key',\n value: 'value',\n }],\n});"
11849 },
11850 "fqn": "@aws-cdk/aws-s3.CfnStorageLens",
11851 "initializer": {
11852 "docs": {
11853 "stability": "external",
11854 "summary": "Create a new `AWS::S3::StorageLens`."
11855 },
11856 "locationInModule": {
11857 "filename": "lib/s3.generated.ts",
11858 "line": 6656
11859 },
11860 "parameters": [
11861 {
11862 "docs": {
11863 "summary": "- scope in which this resource is defined."
11864 },
11865 "name": "scope",
11866 "type": {
11867 "fqn": "@aws-cdk/core.Construct"
11868 }
11869 },
11870 {
11871 "docs": {
11872 "summary": "- scoped id of the resource."
11873 },
11874 "name": "id",
11875 "type": {
11876 "primitive": "string"
11877 }
11878 },
11879 {
11880 "docs": {
11881 "summary": "- resource properties."
11882 },
11883 "name": "props",
11884 "type": {
11885 "fqn": "@aws-cdk/aws-s3.CfnStorageLensProps"
11886 }
11887 }
11888 ]
11889 },
11890 "interfaces": [
11891 "@aws-cdk/core.IInspectable"
11892 ],
11893 "kind": "class",
11894 "locationInModule": {
11895 "filename": "lib/s3.generated.ts",
11896 "line": 6604
11897 },
11898 "methods": [
11899 {
11900 "docs": {
11901 "stability": "external",
11902 "summary": "Examines the CloudFormation resource and discloses attributes."
11903 },
11904 "locationInModule": {
11905 "filename": "lib/s3.generated.ts",
11906 "line": 6671
11907 },
11908 "name": "inspect",
11909 "overrides": "@aws-cdk/core.IInspectable",
11910 "parameters": [
11911 {
11912 "docs": {
11913 "summary": "- tree inspector to collect and process attributes."
11914 },
11915 "name": "inspector",
11916 "type": {
11917 "fqn": "@aws-cdk/core.TreeInspector"
11918 }
11919 }
11920 ]
11921 },
11922 {
11923 "docs": {
11924 "stability": "external"
11925 },
11926 "locationInModule": {
11927 "filename": "lib/s3.generated.ts",
11928 "line": 6683
11929 },
11930 "name": "renderProperties",
11931 "overrides": "@aws-cdk/core.CfnResource",
11932 "parameters": [
11933 {
11934 "name": "props",
11935 "type": {
11936 "collection": {
11937 "elementtype": {
11938 "primitive": "any"
11939 },
11940 "kind": "map"
11941 }
11942 }
11943 }
11944 ],
11945 "protected": true,
11946 "returns": {
11947 "type": {
11948 "collection": {
11949 "elementtype": {
11950 "primitive": "any"
11951 },
11952 "kind": "map"
11953 }
11954 }
11955 }
11956 }
11957 ],
11958 "name": "CfnStorageLens",
11959 "properties": [
11960 {
11961 "const": true,
11962 "docs": {
11963 "stability": "external",
11964 "summary": "The CloudFormation resource type name for this resource class."
11965 },
11966 "immutable": true,
11967 "locationInModule": {
11968 "filename": "lib/s3.generated.ts",
11969 "line": 6608
11970 },
11971 "name": "CFN_RESOURCE_TYPE_NAME",
11972 "static": true,
11973 "type": {
11974 "primitive": "string"
11975 }
11976 },
11977 {
11978 "docs": {
11979 "custom": {
11980 "cloudformationAttribute": "StorageLensConfiguration.StorageLensArn"
11981 },
11982 "remarks": "This property is read-only.",
11983 "stability": "external",
11984 "summary": "This property contains the details of the ARN of the S3 Storage Lens configuration."
11985 },
11986 "immutable": true,
11987 "locationInModule": {
11988 "filename": "lib/s3.generated.ts",
11989 "line": 6633
11990 },
11991 "name": "attrStorageLensConfigurationStorageLensArn",
11992 "type": {
11993 "primitive": "string"
11994 }
11995 },
11996 {
11997 "docs": {
11998 "stability": "external"
11999 },
12000 "immutable": true,
12001 "locationInModule": {
12002 "filename": "lib/s3.generated.ts",
12003 "line": 6676
12004 },
12005 "name": "cfnProperties",
12006 "overrides": "@aws-cdk/core.CfnResource",
12007 "protected": true,
12008 "type": {
12009 "collection": {
12010 "elementtype": {
12011 "primitive": "any"
12012 },
12013 "kind": "map"
12014 }
12015 }
12016 },
12017 {
12018 "docs": {
12019 "custom": {
12020 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html#cfn-s3-storagelens-tags"
12021 },
12022 "stability": "external",
12023 "summary": "A set of tags (key–value pairs) to associate with the Storage Lens configuration."
12024 },
12025 "immutable": true,
12026 "locationInModule": {
12027 "filename": "lib/s3.generated.ts",
12028 "line": 6647
12029 },
12030 "name": "tags",
12031 "type": {
12032 "fqn": "@aws-cdk/core.TagManager"
12033 }
12034 },
12035 {
12036 "docs": {
12037 "custom": {
12038 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html#cfn-s3-storagelens-storagelensconfiguration"
12039 },
12040 "stability": "external",
12041 "summary": "This resource contains the details Amazon S3 Storage Lens configuration."
12042 },
12043 "locationInModule": {
12044 "filename": "lib/s3.generated.ts",
12045 "line": 6640
12046 },
12047 "name": "storageLensConfiguration",
12048 "type": {
12049 "union": {
12050 "types": [
12051 {
12052 "fqn": "@aws-cdk/core.IResolvable"
12053 },
12054 {
12055 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.StorageLensConfigurationProperty"
12056 }
12057 ]
12058 }
12059 }
12060 }
12061 ],
12062 "symbolId": "lib/s3.generated:CfnStorageLens"
12063 },
12064 "@aws-cdk/aws-s3.CfnStorageLens.AccountLevelProperty": {
12065 "assembly": "@aws-cdk/aws-s3",
12066 "datatype": true,
12067 "docs": {
12068 "custom": {
12069 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-accountlevel.html",
12070 "exampleMetadata": "fixture=_generated"
12071 },
12072 "stability": "external",
12073 "summary": "This resource contains the details of the account-level metrics for Amazon S3 Storage Lens.",
12074 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst accountLevelProperty: s3.CfnStorageLens.AccountLevelProperty = {\n bucketLevel: {\n activityMetrics: {\n isEnabled: false,\n },\n prefixLevel: {\n storageMetrics: {\n isEnabled: false,\n selectionCriteria: {\n delimiter: 'delimiter',\n maxDepth: 123,\n minStorageBytesPercentage: 123,\n },\n },\n },\n },\n\n // the properties below are optional\n activityMetrics: {\n isEnabled: false,\n },\n};"
12075 },
12076 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.AccountLevelProperty",
12077 "kind": "interface",
12078 "locationInModule": {
12079 "filename": "lib/s3.generated.ts",
12080 "line": 6697
12081 },
12082 "name": "AccountLevelProperty",
12083 "namespace": "CfnStorageLens",
12084 "properties": [
12085 {
12086 "abstract": true,
12087 "docs": {
12088 "custom": {
12089 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-accountlevel.html#cfn-s3-storagelens-accountlevel-bucketlevel"
12090 },
12091 "stability": "external",
12092 "summary": "This property contains the details of the account-level bucket-level configurations for Amazon S3 Storage Lens."
12093 },
12094 "immutable": true,
12095 "locationInModule": {
12096 "filename": "lib/s3.generated.ts",
12097 "line": 6709
12098 },
12099 "name": "bucketLevel",
12100 "type": {
12101 "union": {
12102 "types": [
12103 {
12104 "fqn": "@aws-cdk/core.IResolvable"
12105 },
12106 {
12107 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.BucketLevelProperty"
12108 }
12109 ]
12110 }
12111 }
12112 },
12113 {
12114 "abstract": true,
12115 "docs": {
12116 "custom": {
12117 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-accountlevel.html#cfn-s3-storagelens-accountlevel-activitymetrics"
12118 },
12119 "stability": "external",
12120 "summary": "This property contains the details of the account-level activity metrics for Amazon S3 Storage Lens."
12121 },
12122 "immutable": true,
12123 "locationInModule": {
12124 "filename": "lib/s3.generated.ts",
12125 "line": 6703
12126 },
12127 "name": "activityMetrics",
12128 "optional": true,
12129 "type": {
12130 "union": {
12131 "types": [
12132 {
12133 "fqn": "@aws-cdk/core.IResolvable"
12134 },
12135 {
12136 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.ActivityMetricsProperty"
12137 }
12138 ]
12139 }
12140 }
12141 }
12142 ],
12143 "symbolId": "lib/s3.generated:CfnStorageLens.AccountLevelProperty"
12144 },
12145 "@aws-cdk/aws-s3.CfnStorageLens.ActivityMetricsProperty": {
12146 "assembly": "@aws-cdk/aws-s3",
12147 "datatype": true,
12148 "docs": {
12149 "custom": {
12150 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-activitymetrics.html",
12151 "exampleMetadata": "fixture=_generated"
12152 },
12153 "stability": "external",
12154 "summary": "This resource contains the details of the activity metrics for Amazon S3 Storage Lens.",
12155 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst activityMetricsProperty: s3.CfnStorageLens.ActivityMetricsProperty = {\n isEnabled: false,\n};"
12156 },
12157 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.ActivityMetricsProperty",
12158 "kind": "interface",
12159 "locationInModule": {
12160 "filename": "lib/s3.generated.ts",
12161 "line": 6774
12162 },
12163 "name": "ActivityMetricsProperty",
12164 "namespace": "CfnStorageLens",
12165 "properties": [
12166 {
12167 "abstract": true,
12168 "docs": {
12169 "custom": {
12170 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-activitymetrics.html#cfn-s3-storagelens-activitymetrics-isenabled"
12171 },
12172 "stability": "external",
12173 "summary": "A property that indicates whether the activity metrics is enabled."
12174 },
12175 "immutable": true,
12176 "locationInModule": {
12177 "filename": "lib/s3.generated.ts",
12178 "line": 6780
12179 },
12180 "name": "isEnabled",
12181 "optional": true,
12182 "type": {
12183 "union": {
12184 "types": [
12185 {
12186 "primitive": "boolean"
12187 },
12188 {
12189 "fqn": "@aws-cdk/core.IResolvable"
12190 }
12191 ]
12192 }
12193 }
12194 }
12195 ],
12196 "symbolId": "lib/s3.generated:CfnStorageLens.ActivityMetricsProperty"
12197 },
12198 "@aws-cdk/aws-s3.CfnStorageLens.AwsOrgProperty": {
12199 "assembly": "@aws-cdk/aws-s3",
12200 "datatype": true,
12201 "docs": {
12202 "custom": {
12203 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-awsorg.html",
12204 "exampleMetadata": "fixture=_generated"
12205 },
12206 "stability": "external",
12207 "summary": "This resource contains the details of the AWS Organization for Amazon S3 Storage Lens.",
12208 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst awsOrgProperty: s3.CfnStorageLens.AwsOrgProperty = {\n arn: 'arn',\n};"
12209 },
12210 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.AwsOrgProperty",
12211 "kind": "interface",
12212 "locationInModule": {
12213 "filename": "lib/s3.generated.ts",
12214 "line": 6841
12215 },
12216 "name": "AwsOrgProperty",
12217 "namespace": "CfnStorageLens",
12218 "properties": [
12219 {
12220 "abstract": true,
12221 "docs": {
12222 "custom": {
12223 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-awsorg.html#cfn-s3-storagelens-awsorg-arn"
12224 },
12225 "stability": "external",
12226 "summary": "This resource contains the ARN of the AWS Organization."
12227 },
12228 "immutable": true,
12229 "locationInModule": {
12230 "filename": "lib/s3.generated.ts",
12231 "line": 6847
12232 },
12233 "name": "arn",
12234 "type": {
12235 "primitive": "string"
12236 }
12237 }
12238 ],
12239 "symbolId": "lib/s3.generated:CfnStorageLens.AwsOrgProperty"
12240 },
12241 "@aws-cdk/aws-s3.CfnStorageLens.BucketLevelProperty": {
12242 "assembly": "@aws-cdk/aws-s3",
12243 "datatype": true,
12244 "docs": {
12245 "custom": {
12246 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketlevel.html",
12247 "exampleMetadata": "fixture=_generated"
12248 },
12249 "stability": "external",
12250 "summary": "A property for the bucket-level storage metrics for Amazon S3 Storage Lens.",
12251 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst bucketLevelProperty: s3.CfnStorageLens.BucketLevelProperty = {\n activityMetrics: {\n isEnabled: false,\n },\n prefixLevel: {\n storageMetrics: {\n isEnabled: false,\n selectionCriteria: {\n delimiter: 'delimiter',\n maxDepth: 123,\n minStorageBytesPercentage: 123,\n },\n },\n },\n};"
12252 },
12253 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.BucketLevelProperty",
12254 "kind": "interface",
12255 "locationInModule": {
12256 "filename": "lib/s3.generated.ts",
12257 "line": 6909
12258 },
12259 "name": "BucketLevelProperty",
12260 "namespace": "CfnStorageLens",
12261 "properties": [
12262 {
12263 "abstract": true,
12264 "docs": {
12265 "custom": {
12266 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketlevel.html#cfn-s3-storagelens-bucketlevel-activitymetrics"
12267 },
12268 "stability": "external",
12269 "summary": "A property for the bucket-level activity metrics for Amazon S3 Storage Lens."
12270 },
12271 "immutable": true,
12272 "locationInModule": {
12273 "filename": "lib/s3.generated.ts",
12274 "line": 6915
12275 },
12276 "name": "activityMetrics",
12277 "optional": true,
12278 "type": {
12279 "union": {
12280 "types": [
12281 {
12282 "fqn": "@aws-cdk/core.IResolvable"
12283 },
12284 {
12285 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.ActivityMetricsProperty"
12286 }
12287 ]
12288 }
12289 }
12290 },
12291 {
12292 "abstract": true,
12293 "docs": {
12294 "custom": {
12295 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketlevel.html#cfn-s3-storagelens-bucketlevel-prefixlevel"
12296 },
12297 "stability": "external",
12298 "summary": "A property for the bucket-level prefix-level storage metrics for S3 Storage Lens."
12299 },
12300 "immutable": true,
12301 "locationInModule": {
12302 "filename": "lib/s3.generated.ts",
12303 "line": 6921
12304 },
12305 "name": "prefixLevel",
12306 "optional": true,
12307 "type": {
12308 "union": {
12309 "types": [
12310 {
12311 "fqn": "@aws-cdk/core.IResolvable"
12312 },
12313 {
12314 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.PrefixLevelProperty"
12315 }
12316 ]
12317 }
12318 }
12319 }
12320 ],
12321 "symbolId": "lib/s3.generated:CfnStorageLens.BucketLevelProperty"
12322 },
12323 "@aws-cdk/aws-s3.CfnStorageLens.BucketsAndRegionsProperty": {
12324 "assembly": "@aws-cdk/aws-s3",
12325 "datatype": true,
12326 "docs": {
12327 "custom": {
12328 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketsandregions.html",
12329 "exampleMetadata": "fixture=_generated"
12330 },
12331 "stability": "external",
12332 "summary": "This resource contains the details of the buckets and Regions for the Amazon S3 Storage Lens configuration.",
12333 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst bucketsAndRegionsProperty: s3.CfnStorageLens.BucketsAndRegionsProperty = {\n buckets: ['buckets'],\n regions: ['regions'],\n};"
12334 },
12335 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.BucketsAndRegionsProperty",
12336 "kind": "interface",
12337 "locationInModule": {
12338 "filename": "lib/s3.generated.ts",
12339 "line": 6985
12340 },
12341 "name": "BucketsAndRegionsProperty",
12342 "namespace": "CfnStorageLens",
12343 "properties": [
12344 {
12345 "abstract": true,
12346 "docs": {
12347 "custom": {
12348 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketsandregions.html#cfn-s3-storagelens-bucketsandregions-buckets"
12349 },
12350 "remarks": "This should be the bucket Amazon Resource Name(ARN). For valid values, see [Buckets ARN format here](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_Include.html#API_control_Include_Contents) in the *Amazon S3 API Reference* .",
12351 "stability": "external",
12352 "summary": "This property contains the details of the buckets for the Amazon S3 Storage Lens configuration."
12353 },
12354 "immutable": true,
12355 "locationInModule": {
12356 "filename": "lib/s3.generated.ts",
12357 "line": 6991
12358 },
12359 "name": "buckets",
12360 "optional": true,
12361 "type": {
12362 "collection": {
12363 "elementtype": {
12364 "primitive": "string"
12365 },
12366 "kind": "array"
12367 }
12368 }
12369 },
12370 {
12371 "abstract": true,
12372 "docs": {
12373 "custom": {
12374 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-bucketsandregions.html#cfn-s3-storagelens-bucketsandregions-regions"
12375 },
12376 "stability": "external",
12377 "summary": "This property contains the details of the Regions for the S3 Storage Lens configuration."
12378 },
12379 "immutable": true,
12380 "locationInModule": {
12381 "filename": "lib/s3.generated.ts",
12382 "line": 6997
12383 },
12384 "name": "regions",
12385 "optional": true,
12386 "type": {
12387 "collection": {
12388 "elementtype": {
12389 "primitive": "string"
12390 },
12391 "kind": "array"
12392 }
12393 }
12394 }
12395 ],
12396 "symbolId": "lib/s3.generated:CfnStorageLens.BucketsAndRegionsProperty"
12397 },
12398 "@aws-cdk/aws-s3.CfnStorageLens.CloudWatchMetricsProperty": {
12399 "assembly": "@aws-cdk/aws-s3",
12400 "datatype": true,
12401 "docs": {
12402 "custom": {
12403 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-cloudwatchmetrics.html",
12404 "exampleMetadata": "fixture=_generated"
12405 },
12406 "remarks": "For more information, see [Monitor S3 Storage Lens metrics in CloudWatch](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_view_metrics_cloudwatch.html) in the *Amazon S3 User Guide* .",
12407 "stability": "external",
12408 "summary": "This resource enables the Amazon CloudWatch publishing option for S3 Storage Lens metrics.",
12409 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst cloudWatchMetricsProperty: s3.CfnStorageLens.CloudWatchMetricsProperty = {\n isEnabled: false,\n};"
12410 },
12411 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.CloudWatchMetricsProperty",
12412 "kind": "interface",
12413 "locationInModule": {
12414 "filename": "lib/s3.generated.ts",
12415 "line": 7063
12416 },
12417 "name": "CloudWatchMetricsProperty",
12418 "namespace": "CfnStorageLens",
12419 "properties": [
12420 {
12421 "abstract": true,
12422 "docs": {
12423 "custom": {
12424 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-cloudwatchmetrics.html#cfn-s3-storagelens-cloudwatchmetrics-isenabled"
12425 },
12426 "stability": "external",
12427 "summary": "This property identifies whether the CloudWatch publishing option for S3 Storage Lens is enabled."
12428 },
12429 "immutable": true,
12430 "locationInModule": {
12431 "filename": "lib/s3.generated.ts",
12432 "line": 7069
12433 },
12434 "name": "isEnabled",
12435 "type": {
12436 "union": {
12437 "types": [
12438 {
12439 "primitive": "boolean"
12440 },
12441 {
12442 "fqn": "@aws-cdk/core.IResolvable"
12443 }
12444 ]
12445 }
12446 }
12447 }
12448 ],
12449 "symbolId": "lib/s3.generated:CfnStorageLens.CloudWatchMetricsProperty"
12450 },
12451 "@aws-cdk/aws-s3.CfnStorageLens.DataExportProperty": {
12452 "assembly": "@aws-cdk/aws-s3",
12453 "datatype": true,
12454 "docs": {
12455 "custom": {
12456 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-dataexport.html",
12457 "exampleMetadata": "fixture=_generated"
12458 },
12459 "stability": "external",
12460 "summary": "This resource contains the details of the Amazon S3 Storage Lens metrics export.",
12461 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const encryption: any;\nconst dataExportProperty: s3.CfnStorageLens.DataExportProperty = {\n cloudWatchMetrics: {\n isEnabled: false,\n },\n s3BucketDestination: {\n accountId: 'accountId',\n arn: 'arn',\n format: 'format',\n outputSchemaVersion: 'outputSchemaVersion',\n\n // the properties below are optional\n encryption: encryption,\n prefix: 'prefix',\n },\n};"
12462 },
12463 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.DataExportProperty",
12464 "kind": "interface",
12465 "locationInModule": {
12466 "filename": "lib/s3.generated.ts",
12467 "line": 7131
12468 },
12469 "name": "DataExportProperty",
12470 "namespace": "CfnStorageLens",
12471 "properties": [
12472 {
12473 "abstract": true,
12474 "docs": {
12475 "custom": {
12476 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-dataexport.html#cfn-s3-storagelens-dataexport-cloudwatchmetrics"
12477 },
12478 "stability": "external",
12479 "summary": "This property enables the Amazon CloudWatch publishing option for S3 Storage Lens metrics."
12480 },
12481 "immutable": true,
12482 "locationInModule": {
12483 "filename": "lib/s3.generated.ts",
12484 "line": 7137
12485 },
12486 "name": "cloudWatchMetrics",
12487 "optional": true,
12488 "type": {
12489 "union": {
12490 "types": [
12491 {
12492 "fqn": "@aws-cdk/core.IResolvable"
12493 },
12494 {
12495 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.CloudWatchMetricsProperty"
12496 }
12497 ]
12498 }
12499 }
12500 },
12501 {
12502 "abstract": true,
12503 "docs": {
12504 "custom": {
12505 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-dataexport.html#cfn-s3-storagelens-dataexport-s3bucketdestination"
12506 },
12507 "stability": "external",
12508 "summary": "This property contains the details of the bucket where the S3 Storage Lens metrics export will be placed."
12509 },
12510 "immutable": true,
12511 "locationInModule": {
12512 "filename": "lib/s3.generated.ts",
12513 "line": 7143
12514 },
12515 "name": "s3BucketDestination",
12516 "optional": true,
12517 "type": {
12518 "union": {
12519 "types": [
12520 {
12521 "fqn": "@aws-cdk/core.IResolvable"
12522 },
12523 {
12524 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.S3BucketDestinationProperty"
12525 }
12526 ]
12527 }
12528 }
12529 }
12530 ],
12531 "symbolId": "lib/s3.generated:CfnStorageLens.DataExportProperty"
12532 },
12533 "@aws-cdk/aws-s3.CfnStorageLens.PrefixLevelProperty": {
12534 "assembly": "@aws-cdk/aws-s3",
12535 "datatype": true,
12536 "docs": {
12537 "custom": {
12538 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevel.html",
12539 "exampleMetadata": "fixture=_generated"
12540 },
12541 "stability": "external",
12542 "summary": "This resource contains the details of the prefix-level of the Amazon S3 Storage Lens.",
12543 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst prefixLevelProperty: s3.CfnStorageLens.PrefixLevelProperty = {\n storageMetrics: {\n isEnabled: false,\n selectionCriteria: {\n delimiter: 'delimiter',\n maxDepth: 123,\n minStorageBytesPercentage: 123,\n },\n },\n};"
12544 },
12545 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.PrefixLevelProperty",
12546 "kind": "interface",
12547 "locationInModule": {
12548 "filename": "lib/s3.generated.ts",
12549 "line": 7207
12550 },
12551 "name": "PrefixLevelProperty",
12552 "namespace": "CfnStorageLens",
12553 "properties": [
12554 {
12555 "abstract": true,
12556 "docs": {
12557 "custom": {
12558 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevel.html#cfn-s3-storagelens-prefixlevel-storagemetrics"
12559 },
12560 "stability": "external",
12561 "summary": "A property for the prefix-level storage metrics for Amazon S3 Storage Lens."
12562 },
12563 "immutable": true,
12564 "locationInModule": {
12565 "filename": "lib/s3.generated.ts",
12566 "line": 7213
12567 },
12568 "name": "storageMetrics",
12569 "type": {
12570 "union": {
12571 "types": [
12572 {
12573 "fqn": "@aws-cdk/core.IResolvable"
12574 },
12575 {
12576 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.PrefixLevelStorageMetricsProperty"
12577 }
12578 ]
12579 }
12580 }
12581 }
12582 ],
12583 "symbolId": "lib/s3.generated:CfnStorageLens.PrefixLevelProperty"
12584 },
12585 "@aws-cdk/aws-s3.CfnStorageLens.PrefixLevelStorageMetricsProperty": {
12586 "assembly": "@aws-cdk/aws-s3",
12587 "datatype": true,
12588 "docs": {
12589 "custom": {
12590 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevelstoragemetrics.html",
12591 "exampleMetadata": "fixture=_generated"
12592 },
12593 "stability": "external",
12594 "summary": "This resource contains the details of the prefix-level storage metrics for Amazon S3 Storage Lens.",
12595 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst prefixLevelStorageMetricsProperty: s3.CfnStorageLens.PrefixLevelStorageMetricsProperty = {\n isEnabled: false,\n selectionCriteria: {\n delimiter: 'delimiter',\n maxDepth: 123,\n minStorageBytesPercentage: 123,\n },\n};"
12596 },
12597 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.PrefixLevelStorageMetricsProperty",
12598 "kind": "interface",
12599 "locationInModule": {
12600 "filename": "lib/s3.generated.ts",
12601 "line": 7275
12602 },
12603 "name": "PrefixLevelStorageMetricsProperty",
12604 "namespace": "CfnStorageLens",
12605 "properties": [
12606 {
12607 "abstract": true,
12608 "docs": {
12609 "custom": {
12610 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevelstoragemetrics.html#cfn-s3-storagelens-prefixlevelstoragemetrics-isenabled"
12611 },
12612 "stability": "external",
12613 "summary": "This property identifies whether the details of the prefix-level storage metrics for S3 Storage Lens are enabled."
12614 },
12615 "immutable": true,
12616 "locationInModule": {
12617 "filename": "lib/s3.generated.ts",
12618 "line": 7281
12619 },
12620 "name": "isEnabled",
12621 "optional": true,
12622 "type": {
12623 "union": {
12624 "types": [
12625 {
12626 "primitive": "boolean"
12627 },
12628 {
12629 "fqn": "@aws-cdk/core.IResolvable"
12630 }
12631 ]
12632 }
12633 }
12634 },
12635 {
12636 "abstract": true,
12637 "docs": {
12638 "custom": {
12639 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-prefixlevelstoragemetrics.html#cfn-s3-storagelens-prefixlevelstoragemetrics-selectioncriteria"
12640 },
12641 "stability": "external",
12642 "summary": "This property identifies whether the details of the prefix-level storage metrics for S3 Storage Lens are enabled."
12643 },
12644 "immutable": true,
12645 "locationInModule": {
12646 "filename": "lib/s3.generated.ts",
12647 "line": 7287
12648 },
12649 "name": "selectionCriteria",
12650 "optional": true,
12651 "type": {
12652 "union": {
12653 "types": [
12654 {
12655 "fqn": "@aws-cdk/core.IResolvable"
12656 },
12657 {
12658 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.SelectionCriteriaProperty"
12659 }
12660 ]
12661 }
12662 }
12663 }
12664 ],
12665 "symbolId": "lib/s3.generated:CfnStorageLens.PrefixLevelStorageMetricsProperty"
12666 },
12667 "@aws-cdk/aws-s3.CfnStorageLens.S3BucketDestinationProperty": {
12668 "assembly": "@aws-cdk/aws-s3",
12669 "datatype": true,
12670 "docs": {
12671 "custom": {
12672 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html",
12673 "exampleMetadata": "fixture=_generated"
12674 },
12675 "stability": "external",
12676 "summary": "This resource contains the details of the bucket where the Amazon S3 Storage Lens metrics export will be placed.",
12677 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const encryption: any;\nconst s3BucketDestinationProperty: s3.CfnStorageLens.S3BucketDestinationProperty = {\n accountId: 'accountId',\n arn: 'arn',\n format: 'format',\n outputSchemaVersion: 'outputSchemaVersion',\n\n // the properties below are optional\n encryption: encryption,\n prefix: 'prefix',\n};"
12678 },
12679 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.S3BucketDestinationProperty",
12680 "kind": "interface",
12681 "locationInModule": {
12682 "filename": "lib/s3.generated.ts",
12683 "line": 7351
12684 },
12685 "name": "S3BucketDestinationProperty",
12686 "namespace": "CfnStorageLens",
12687 "properties": [
12688 {
12689 "abstract": true,
12690 "docs": {
12691 "custom": {
12692 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-accountid"
12693 },
12694 "stability": "external",
12695 "summary": "This property contains the details of the AWS account ID of the S3 Storage Lens export bucket destination."
12696 },
12697 "immutable": true,
12698 "locationInModule": {
12699 "filename": "lib/s3.generated.ts",
12700 "line": 7357
12701 },
12702 "name": "accountId",
12703 "type": {
12704 "primitive": "string"
12705 }
12706 },
12707 {
12708 "abstract": true,
12709 "docs": {
12710 "custom": {
12711 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-arn"
12712 },
12713 "stability": "external",
12714 "summary": "This property contains the details of the ARN of the bucket destination of the S3 Storage Lens export."
12715 },
12716 "immutable": true,
12717 "locationInModule": {
12718 "filename": "lib/s3.generated.ts",
12719 "line": 7363
12720 },
12721 "name": "arn",
12722 "type": {
12723 "primitive": "string"
12724 }
12725 },
12726 {
12727 "abstract": true,
12728 "docs": {
12729 "custom": {
12730 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-format"
12731 },
12732 "stability": "external",
12733 "summary": "This property contains the details of the format of the S3 Storage Lens export bucket destination."
12734 },
12735 "immutable": true,
12736 "locationInModule": {
12737 "filename": "lib/s3.generated.ts",
12738 "line": 7375
12739 },
12740 "name": "format",
12741 "type": {
12742 "primitive": "string"
12743 }
12744 },
12745 {
12746 "abstract": true,
12747 "docs": {
12748 "custom": {
12749 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-outputschemaversion"
12750 },
12751 "stability": "external",
12752 "summary": "This property contains the details of the output schema version of the S3 Storage Lens export bucket destination."
12753 },
12754 "immutable": true,
12755 "locationInModule": {
12756 "filename": "lib/s3.generated.ts",
12757 "line": 7381
12758 },
12759 "name": "outputSchemaVersion",
12760 "type": {
12761 "primitive": "string"
12762 }
12763 },
12764 {
12765 "abstract": true,
12766 "docs": {
12767 "custom": {
12768 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-encryption"
12769 },
12770 "stability": "external",
12771 "summary": "This property contains the details of the encryption of the bucket destination of the Amazon S3 Storage Lens metrics export."
12772 },
12773 "immutable": true,
12774 "locationInModule": {
12775 "filename": "lib/s3.generated.ts",
12776 "line": 7369
12777 },
12778 "name": "encryption",
12779 "optional": true,
12780 "type": {
12781 "primitive": "any"
12782 }
12783 },
12784 {
12785 "abstract": true,
12786 "docs": {
12787 "custom": {
12788 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-s3bucketdestination.html#cfn-s3-storagelens-s3bucketdestination-prefix"
12789 },
12790 "stability": "external",
12791 "summary": "This property contains the details of the prefix of the bucket destination of the S3 Storage Lens export ."
12792 },
12793 "immutable": true,
12794 "locationInModule": {
12795 "filename": "lib/s3.generated.ts",
12796 "line": 7387
12797 },
12798 "name": "prefix",
12799 "optional": true,
12800 "type": {
12801 "primitive": "string"
12802 }
12803 }
12804 ],
12805 "symbolId": "lib/s3.generated:CfnStorageLens.S3BucketDestinationProperty"
12806 },
12807 "@aws-cdk/aws-s3.CfnStorageLens.SelectionCriteriaProperty": {
12808 "assembly": "@aws-cdk/aws-s3",
12809 "datatype": true,
12810 "docs": {
12811 "custom": {
12812 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-selectioncriteria.html",
12813 "exampleMetadata": "fixture=_generated"
12814 },
12815 "stability": "external",
12816 "summary": "This resource contains the details of the Amazon S3 Storage Lens selection criteria.",
12817 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst selectionCriteriaProperty: s3.CfnStorageLens.SelectionCriteriaProperty = {\n delimiter: 'delimiter',\n maxDepth: 123,\n minStorageBytesPercentage: 123,\n};"
12818 },
12819 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.SelectionCriteriaProperty",
12820 "kind": "interface",
12821 "locationInModule": {
12822 "filename": "lib/s3.generated.ts",
12823 "line": 7467
12824 },
12825 "name": "SelectionCriteriaProperty",
12826 "namespace": "CfnStorageLens",
12827 "properties": [
12828 {
12829 "abstract": true,
12830 "docs": {
12831 "custom": {
12832 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-selectioncriteria.html#cfn-s3-storagelens-selectioncriteria-delimiter"
12833 },
12834 "stability": "external",
12835 "summary": "This property contains the details of the S3 Storage Lens delimiter being used."
12836 },
12837 "immutable": true,
12838 "locationInModule": {
12839 "filename": "lib/s3.generated.ts",
12840 "line": 7473
12841 },
12842 "name": "delimiter",
12843 "optional": true,
12844 "type": {
12845 "primitive": "string"
12846 }
12847 },
12848 {
12849 "abstract": true,
12850 "docs": {
12851 "custom": {
12852 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-selectioncriteria.html#cfn-s3-storagelens-selectioncriteria-maxdepth"
12853 },
12854 "stability": "external",
12855 "summary": "This property contains the details of the max depth that S3 Storage Lens will collect metrics up to."
12856 },
12857 "immutable": true,
12858 "locationInModule": {
12859 "filename": "lib/s3.generated.ts",
12860 "line": 7479
12861 },
12862 "name": "maxDepth",
12863 "optional": true,
12864 "type": {
12865 "primitive": "number"
12866 }
12867 },
12868 {
12869 "abstract": true,
12870 "docs": {
12871 "custom": {
12872 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-selectioncriteria.html#cfn-s3-storagelens-selectioncriteria-minstoragebytespercentage"
12873 },
12874 "stability": "external",
12875 "summary": "This property contains the details of the minimum storage bytes percentage threshold that S3 Storage Lens will collect metrics up to."
12876 },
12877 "immutable": true,
12878 "locationInModule": {
12879 "filename": "lib/s3.generated.ts",
12880 "line": 7485
12881 },
12882 "name": "minStorageBytesPercentage",
12883 "optional": true,
12884 "type": {
12885 "primitive": "number"
12886 }
12887 }
12888 ],
12889 "symbolId": "lib/s3.generated:CfnStorageLens.SelectionCriteriaProperty"
12890 },
12891 "@aws-cdk/aws-s3.CfnStorageLens.StorageLensConfigurationProperty": {
12892 "assembly": "@aws-cdk/aws-s3",
12893 "datatype": true,
12894 "docs": {
12895 "custom": {
12896 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html",
12897 "exampleMetadata": "fixture=_generated"
12898 },
12899 "stability": "external",
12900 "summary": "This is the property of the Amazon S3 Storage Lens configuration.",
12901 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const encryption: any;\nconst storageLensConfigurationProperty: s3.CfnStorageLens.StorageLensConfigurationProperty = {\n accountLevel: {\n bucketLevel: {\n activityMetrics: {\n isEnabled: false,\n },\n prefixLevel: {\n storageMetrics: {\n isEnabled: false,\n selectionCriteria: {\n delimiter: 'delimiter',\n maxDepth: 123,\n minStorageBytesPercentage: 123,\n },\n },\n },\n },\n\n // the properties below are optional\n activityMetrics: {\n isEnabled: false,\n },\n },\n id: 'id',\n isEnabled: false,\n\n // the properties below are optional\n awsOrg: {\n arn: 'arn',\n },\n dataExport: {\n cloudWatchMetrics: {\n isEnabled: false,\n },\n s3BucketDestination: {\n accountId: 'accountId',\n arn: 'arn',\n format: 'format',\n outputSchemaVersion: 'outputSchemaVersion',\n\n // the properties below are optional\n encryption: encryption,\n prefix: 'prefix',\n },\n },\n exclude: {\n buckets: ['buckets'],\n regions: ['regions'],\n },\n include: {\n buckets: ['buckets'],\n regions: ['regions'],\n },\n storageLensArn: 'storageLensArn',\n};"
12902 },
12903 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.StorageLensConfigurationProperty",
12904 "kind": "interface",
12905 "locationInModule": {
12906 "filename": "lib/s3.generated.ts",
12907 "line": 7552
12908 },
12909 "name": "StorageLensConfigurationProperty",
12910 "namespace": "CfnStorageLens",
12911 "properties": [
12912 {
12913 "abstract": true,
12914 "docs": {
12915 "custom": {
12916 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-accountlevel"
12917 },
12918 "stability": "external",
12919 "summary": "This property contains the details of the account-level metrics for Amazon S3 Storage Lens configuration."
12920 },
12921 "immutable": true,
12922 "locationInModule": {
12923 "filename": "lib/s3.generated.ts",
12924 "line": 7558
12925 },
12926 "name": "accountLevel",
12927 "type": {
12928 "union": {
12929 "types": [
12930 {
12931 "fqn": "@aws-cdk/core.IResolvable"
12932 },
12933 {
12934 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.AccountLevelProperty"
12935 }
12936 ]
12937 }
12938 }
12939 },
12940 {
12941 "abstract": true,
12942 "docs": {
12943 "custom": {
12944 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-id"
12945 },
12946 "stability": "external",
12947 "summary": "This property contains the details of the ID of the S3 Storage Lens configuration."
12948 },
12949 "immutable": true,
12950 "locationInModule": {
12951 "filename": "lib/s3.generated.ts",
12952 "line": 7582
12953 },
12954 "name": "id",
12955 "type": {
12956 "primitive": "string"
12957 }
12958 },
12959 {
12960 "abstract": true,
12961 "docs": {
12962 "custom": {
12963 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-isenabled"
12964 },
12965 "stability": "external",
12966 "summary": "This property contains the details of whether the Amazon S3 Storage Lens configuration is enabled."
12967 },
12968 "immutable": true,
12969 "locationInModule": {
12970 "filename": "lib/s3.generated.ts",
12971 "line": 7594
12972 },
12973 "name": "isEnabled",
12974 "type": {
12975 "union": {
12976 "types": [
12977 {
12978 "primitive": "boolean"
12979 },
12980 {
12981 "fqn": "@aws-cdk/core.IResolvable"
12982 }
12983 ]
12984 }
12985 }
12986 },
12987 {
12988 "abstract": true,
12989 "docs": {
12990 "custom": {
12991 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-awsorg"
12992 },
12993 "stability": "external",
12994 "summary": "This property contains the details of the AWS Organization for the S3 Storage Lens configuration."
12995 },
12996 "immutable": true,
12997 "locationInModule": {
12998 "filename": "lib/s3.generated.ts",
12999 "line": 7564
13000 },
13001 "name": "awsOrg",
13002 "optional": true,
13003 "type": {
13004 "union": {
13005 "types": [
13006 {
13007 "fqn": "@aws-cdk/core.IResolvable"
13008 },
13009 {
13010 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.AwsOrgProperty"
13011 }
13012 ]
13013 }
13014 }
13015 },
13016 {
13017 "abstract": true,
13018 "docs": {
13019 "custom": {
13020 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-dataexport"
13021 },
13022 "stability": "external",
13023 "summary": "This property contains the details of this S3 Storage Lens configuration's metrics export."
13024 },
13025 "immutable": true,
13026 "locationInModule": {
13027 "filename": "lib/s3.generated.ts",
13028 "line": 7570
13029 },
13030 "name": "dataExport",
13031 "optional": true,
13032 "type": {
13033 "union": {
13034 "types": [
13035 {
13036 "fqn": "@aws-cdk/core.IResolvable"
13037 },
13038 {
13039 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.DataExportProperty"
13040 }
13041 ]
13042 }
13043 }
13044 },
13045 {
13046 "abstract": true,
13047 "docs": {
13048 "custom": {
13049 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-exclude"
13050 },
13051 "stability": "external",
13052 "summary": "This property contains the details of the bucket and or Regions excluded for Amazon S3 Storage Lens configuration."
13053 },
13054 "immutable": true,
13055 "locationInModule": {
13056 "filename": "lib/s3.generated.ts",
13057 "line": 7576
13058 },
13059 "name": "exclude",
13060 "optional": true,
13061 "type": {
13062 "union": {
13063 "types": [
13064 {
13065 "fqn": "@aws-cdk/core.IResolvable"
13066 },
13067 {
13068 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.BucketsAndRegionsProperty"
13069 }
13070 ]
13071 }
13072 }
13073 },
13074 {
13075 "abstract": true,
13076 "docs": {
13077 "custom": {
13078 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-include"
13079 },
13080 "stability": "external",
13081 "summary": "This property contains the details of the bucket and or Regions included for Amazon S3 Storage Lens configuration."
13082 },
13083 "immutable": true,
13084 "locationInModule": {
13085 "filename": "lib/s3.generated.ts",
13086 "line": 7588
13087 },
13088 "name": "include",
13089 "optional": true,
13090 "type": {
13091 "union": {
13092 "types": [
13093 {
13094 "fqn": "@aws-cdk/core.IResolvable"
13095 },
13096 {
13097 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.BucketsAndRegionsProperty"
13098 }
13099 ]
13100 }
13101 }
13102 },
13103 {
13104 "abstract": true,
13105 "docs": {
13106 "custom": {
13107 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-storagelens-storagelensconfiguration.html#cfn-s3-storagelens-storagelensconfiguration-storagelensarn"
13108 },
13109 "remarks": "This property is read-only.",
13110 "stability": "external",
13111 "summary": "This property contains the details of the ARN of the S3 Storage Lens configuration."
13112 },
13113 "immutable": true,
13114 "locationInModule": {
13115 "filename": "lib/s3.generated.ts",
13116 "line": 7600
13117 },
13118 "name": "storageLensArn",
13119 "optional": true,
13120 "type": {
13121 "primitive": "string"
13122 }
13123 }
13124 ],
13125 "symbolId": "lib/s3.generated:CfnStorageLens.StorageLensConfigurationProperty"
13126 },
13127 "@aws-cdk/aws-s3.CfnStorageLensProps": {
13128 "assembly": "@aws-cdk/aws-s3",
13129 "datatype": true,
13130 "docs": {
13131 "custom": {
13132 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html",
13133 "exampleMetadata": "fixture=_generated"
13134 },
13135 "stability": "external",
13136 "summary": "Properties for defining a `CfnStorageLens`.",
13137 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const encryption: any;\nconst cfnStorageLensProps: s3.CfnStorageLensProps = {\n storageLensConfiguration: {\n accountLevel: {\n bucketLevel: {\n activityMetrics: {\n isEnabled: false,\n },\n prefixLevel: {\n storageMetrics: {\n isEnabled: false,\n selectionCriteria: {\n delimiter: 'delimiter',\n maxDepth: 123,\n minStorageBytesPercentage: 123,\n },\n },\n },\n },\n\n // the properties below are optional\n activityMetrics: {\n isEnabled: false,\n },\n },\n id: 'id',\n isEnabled: false,\n\n // the properties below are optional\n awsOrg: {\n arn: 'arn',\n },\n dataExport: {\n cloudWatchMetrics: {\n isEnabled: false,\n },\n s3BucketDestination: {\n accountId: 'accountId',\n arn: 'arn',\n format: 'format',\n outputSchemaVersion: 'outputSchemaVersion',\n\n // the properties below are optional\n encryption: encryption,\n prefix: 'prefix',\n },\n },\n exclude: {\n buckets: ['buckets'],\n regions: ['regions'],\n },\n include: {\n buckets: ['buckets'],\n regions: ['regions'],\n },\n storageLensArn: 'storageLensArn',\n },\n\n // the properties below are optional\n tags: [{\n key: 'key',\n value: 'value',\n }],\n};"
13138 },
13139 "fqn": "@aws-cdk/aws-s3.CfnStorageLensProps",
13140 "kind": "interface",
13141 "locationInModule": {
13142 "filename": "lib/s3.generated.ts",
13143 "line": 6528
13144 },
13145 "name": "CfnStorageLensProps",
13146 "properties": [
13147 {
13148 "abstract": true,
13149 "docs": {
13150 "custom": {
13151 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html#cfn-s3-storagelens-storagelensconfiguration"
13152 },
13153 "stability": "external",
13154 "summary": "This resource contains the details Amazon S3 Storage Lens configuration."
13155 },
13156 "immutable": true,
13157 "locationInModule": {
13158 "filename": "lib/s3.generated.ts",
13159 "line": 6535
13160 },
13161 "name": "storageLensConfiguration",
13162 "type": {
13163 "union": {
13164 "types": [
13165 {
13166 "fqn": "@aws-cdk/core.IResolvable"
13167 },
13168 {
13169 "fqn": "@aws-cdk/aws-s3.CfnStorageLens.StorageLensConfigurationProperty"
13170 }
13171 ]
13172 }
13173 }
13174 },
13175 {
13176 "abstract": true,
13177 "docs": {
13178 "custom": {
13179 "link": "http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-storagelens.html#cfn-s3-storagelens-tags"
13180 },
13181 "stability": "external",
13182 "summary": "A set of tags (key–value pairs) to associate with the Storage Lens configuration."
13183 },
13184 "immutable": true,
13185 "locationInModule": {
13186 "filename": "lib/s3.generated.ts",
13187 "line": 6542
13188 },
13189 "name": "tags",
13190 "optional": true,
13191 "type": {
13192 "collection": {
13193 "elementtype": {
13194 "fqn": "@aws-cdk/core.CfnTag"
13195 },
13196 "kind": "array"
13197 }
13198 }
13199 }
13200 ],
13201 "symbolId": "lib/s3.generated:CfnStorageLensProps"
13202 },
13203 "@aws-cdk/aws-s3.CorsRule": {
13204 "assembly": "@aws-cdk/aws-s3",
13205 "datatype": true,
13206 "docs": {
13207 "stability": "stable",
13208 "summary": "Specifies a cross-origin access rule for an Amazon S3 bucket.",
13209 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst corsRule: s3.CorsRule = {\n allowedMethods: [s3.HttpMethods.GET],\n allowedOrigins: ['allowedOrigins'],\n\n // the properties below are optional\n allowedHeaders: ['allowedHeaders'],\n exposedHeaders: ['exposedHeaders'],\n id: 'id',\n maxAge: 123,\n};",
13210 "custom": {
13211 "exampleMetadata": "fixture=_generated"
13212 }
13213 },
13214 "fqn": "@aws-cdk/aws-s3.CorsRule",
13215 "kind": "interface",
13216 "locationInModule": {
13217 "filename": "lib/bucket.ts",
13218 "line": 1036
13219 },
13220 "name": "CorsRule",
13221 "properties": [
13222 {
13223 "abstract": true,
13224 "docs": {
13225 "stability": "stable",
13226 "summary": "An HTTP method that you allow the origin to execute."
13227 },
13228 "immutable": true,
13229 "locationInModule": {
13230 "filename": "lib/bucket.ts",
13231 "line": 1058
13232 },
13233 "name": "allowedMethods",
13234 "type": {
13235 "collection": {
13236 "elementtype": {
13237 "fqn": "@aws-cdk/aws-s3.HttpMethods"
13238 },
13239 "kind": "array"
13240 }
13241 }
13242 },
13243 {
13244 "abstract": true,
13245 "docs": {
13246 "stability": "stable",
13247 "summary": "One or more origins you want customers to be able to access the bucket from."
13248 },
13249 "immutable": true,
13250 "locationInModule": {
13251 "filename": "lib/bucket.ts",
13252 "line": 1062
13253 },
13254 "name": "allowedOrigins",
13255 "type": {
13256 "collection": {
13257 "elementtype": {
13258 "primitive": "string"
13259 },
13260 "kind": "array"
13261 }
13262 }
13263 },
13264 {
13265 "abstract": true,
13266 "docs": {
13267 "default": "- No headers allowed.",
13268 "stability": "stable",
13269 "summary": "Headers that are specified in the Access-Control-Request-Headers header."
13270 },
13271 "immutable": true,
13272 "locationInModule": {
13273 "filename": "lib/bucket.ts",
13274 "line": 1054
13275 },
13276 "name": "allowedHeaders",
13277 "optional": true,
13278 "type": {
13279 "collection": {
13280 "elementtype": {
13281 "primitive": "string"
13282 },
13283 "kind": "array"
13284 }
13285 }
13286 },
13287 {
13288 "abstract": true,
13289 "docs": {
13290 "default": "- No headers exposed.",
13291 "stability": "stable",
13292 "summary": "One or more headers in the response that you want customers to be able to access from their applications."
13293 },
13294 "immutable": true,
13295 "locationInModule": {
13296 "filename": "lib/bucket.ts",
13297 "line": 1068
13298 },
13299 "name": "exposedHeaders",
13300 "optional": true,
13301 "type": {
13302 "collection": {
13303 "elementtype": {
13304 "primitive": "string"
13305 },
13306 "kind": "array"
13307 }
13308 }
13309 },
13310 {
13311 "abstract": true,
13312 "docs": {
13313 "default": "- No id specified.",
13314 "stability": "stable",
13315 "summary": "A unique identifier for this rule."
13316 },
13317 "immutable": true,
13318 "locationInModule": {
13319 "filename": "lib/bucket.ts",
13320 "line": 1042
13321 },
13322 "name": "id",
13323 "optional": true,
13324 "type": {
13325 "primitive": "string"
13326 }
13327 },
13328 {
13329 "abstract": true,
13330 "docs": {
13331 "default": "- No caching.",
13332 "stability": "stable",
13333 "summary": "The time in seconds that your browser is to cache the preflight response for the specified resource."
13334 },
13335 "immutable": true,
13336 "locationInModule": {
13337 "filename": "lib/bucket.ts",
13338 "line": 1048
13339 },
13340 "name": "maxAge",
13341 "optional": true,
13342 "type": {
13343 "primitive": "number"
13344 }
13345 }
13346 ],
13347 "symbolId": "lib/bucket:CorsRule"
13348 },
13349 "@aws-cdk/aws-s3.EventType": {
13350 "assembly": "@aws-cdk/aws-s3",
13351 "docs": {
13352 "custom": {
13353 "exampleMetadata": "infused",
13354 "link": "https://docs.aws.amazon.com/AmazonS3/latest/userguide/notification-how-to-event-types-and-destinations.html#supported-notification-event-types"
13355 },
13356 "example": "declare const myQueue: sqs.Queue;\nconst bucket = new s3.Bucket(this, 'MyBucket');\nbucket.addEventNotification(s3.EventType.OBJECT_REMOVED,\n new s3n.SqsDestination(myQueue),\n { prefix: 'foo/', suffix: '.jpg' });",
13357 "stability": "stable",
13358 "summary": "Notification event types."
13359 },
13360 "fqn": "@aws-cdk/aws-s3.EventType",
13361 "kind": "enum",
13362 "locationInModule": {
13363 "filename": "lib/bucket.ts",
13364 "line": 2200
13365 },
13366 "members": [
13367 {
13368 "docs": {
13369 "remarks": "Using\nthese event types, you can enable notification when an object is created\nusing a specific API, or you can use the s3:ObjectCreated:* event type to\nrequest notification regardless of the API that was used to create an\nobject.",
13370 "stability": "stable",
13371 "summary": "Amazon S3 APIs such as PUT, POST, and COPY can create an object."
13372 },
13373 "name": "OBJECT_CREATED"
13374 },
13375 {
13376 "docs": {
13377 "remarks": "Using\nthese event types, you can enable notification when an object is created\nusing a specific API, or you can use the s3:ObjectCreated:* event type to\nrequest notification regardless of the API that was used to create an\nobject.",
13378 "stability": "stable",
13379 "summary": "Amazon S3 APIs such as PUT, POST, and COPY can create an object."
13380 },
13381 "name": "OBJECT_CREATED_PUT"
13382 },
13383 {
13384 "docs": {
13385 "remarks": "Using\nthese event types, you can enable notification when an object is created\nusing a specific API, or you can use the s3:ObjectCreated:* event type to\nrequest notification regardless of the API that was used to create an\nobject.",
13386 "stability": "stable",
13387 "summary": "Amazon S3 APIs such as PUT, POST, and COPY can create an object."
13388 },
13389 "name": "OBJECT_CREATED_POST"
13390 },
13391 {
13392 "docs": {
13393 "remarks": "Using\nthese event types, you can enable notification when an object is created\nusing a specific API, or you can use the s3:ObjectCreated:* event type to\nrequest notification regardless of the API that was used to create an\nobject.",
13394 "stability": "stable",
13395 "summary": "Amazon S3 APIs such as PUT, POST, and COPY can create an object."
13396 },
13397 "name": "OBJECT_CREATED_COPY"
13398 },
13399 {
13400 "docs": {
13401 "remarks": "Using\nthese event types, you can enable notification when an object is created\nusing a specific API, or you can use the s3:ObjectCreated:* event type to\nrequest notification regardless of the API that was used to create an\nobject.",
13402 "stability": "stable",
13403 "summary": "Amazon S3 APIs such as PUT, POST, and COPY can create an object."
13404 },
13405 "name": "OBJECT_CREATED_COMPLETE_MULTIPART_UPLOAD"
13406 },
13407 {
13408 "docs": {
13409 "remarks": "You can request notification when an object is deleted or a versioned\nobject is permanently deleted by using the s3:ObjectRemoved:Delete event\ntype. Or you can request notification when a delete marker is created for\na versioned object by using s3:ObjectRemoved:DeleteMarkerCreated. For\ninformation about deleting versioned objects, see Deleting Object\nVersions. You can also use a wildcard s3:ObjectRemoved:* to request\nnotification anytime an object is deleted.\n\nYou will not receive event notifications from automatic deletes from\nlifecycle policies or from failed operations.",
13410 "stability": "stable",
13411 "summary": "By using the ObjectRemoved event types, you can enable notification when an object or a batch of objects is removed from a bucket."
13412 },
13413 "name": "OBJECT_REMOVED"
13414 },
13415 {
13416 "docs": {
13417 "remarks": "You can request notification when an object is deleted or a versioned\nobject is permanently deleted by using the s3:ObjectRemoved:Delete event\ntype. Or you can request notification when a delete marker is created for\na versioned object by using s3:ObjectRemoved:DeleteMarkerCreated. For\ninformation about deleting versioned objects, see Deleting Object\nVersions. You can also use a wildcard s3:ObjectRemoved:* to request\nnotification anytime an object is deleted.\n\nYou will not receive event notifications from automatic deletes from\nlifecycle policies or from failed operations.",
13418 "stability": "stable",
13419 "summary": "By using the ObjectRemoved event types, you can enable notification when an object or a batch of objects is removed from a bucket."
13420 },
13421 "name": "OBJECT_REMOVED_DELETE"
13422 },
13423 {
13424 "docs": {
13425 "remarks": "You can request notification when an object is deleted or a versioned\nobject is permanently deleted by using the s3:ObjectRemoved:Delete event\ntype. Or you can request notification when a delete marker is created for\na versioned object by using s3:ObjectRemoved:DeleteMarkerCreated. For\ninformation about deleting versioned objects, see Deleting Object\nVersions. You can also use a wildcard s3:ObjectRemoved:* to request\nnotification anytime an object is deleted.\n\nYou will not receive event notifications from automatic deletes from\nlifecycle policies or from failed operations.",
13426 "stability": "stable",
13427 "summary": "By using the ObjectRemoved event types, you can enable notification when an object or a batch of objects is removed from a bucket."
13428 },
13429 "name": "OBJECT_REMOVED_DELETE_MARKER_CREATED"
13430 },
13431 {
13432 "docs": {
13433 "remarks": "You use s3:ObjectRestore:Post to request notification of object restoration\ninitiation.",
13434 "stability": "stable",
13435 "summary": "Using restore object event types you can receive notifications for initiation and completion when restoring objects from the S3 Glacier storage class."
13436 },
13437 "name": "OBJECT_RESTORE_POST"
13438 },
13439 {
13440 "docs": {
13441 "remarks": "You use s3:ObjectRestore:Completed to request notification of\nrestoration completion.",
13442 "stability": "stable",
13443 "summary": "Using restore object event types you can receive notifications for initiation and completion when restoring objects from the S3 Glacier storage class."
13444 },
13445 "name": "OBJECT_RESTORE_COMPLETED"
13446 },
13447 {
13448 "docs": {
13449 "remarks": "You use s3:ObjectRestore:Delete to request notification of\nrestoration completion.",
13450 "stability": "stable",
13451 "summary": "Using restore object event types you can receive notifications for initiation and completion when restoring objects from the S3 Glacier storage class."
13452 },
13453 "name": "OBJECT_RESTORE_DELETE"
13454 },
13455 {
13456 "docs": {
13457 "stability": "stable",
13458 "summary": "You can use this event type to request Amazon S3 to send a notification message when Amazon S3 detects that an object of the RRS storage class is lost."
13459 },
13460 "name": "REDUCED_REDUNDANCY_LOST_OBJECT"
13461 },
13462 {
13463 "docs": {
13464 "stability": "stable",
13465 "summary": "You receive this notification event when an object that was eligible for replication using Amazon S3 Replication Time Control failed to replicate."
13466 },
13467 "name": "REPLICATION_OPERATION_FAILED_REPLICATION"
13468 },
13469 {
13470 "docs": {
13471 "stability": "stable",
13472 "summary": "You receive this notification event when an object that was eligible for replication using Amazon S3 Replication Time Control exceeded the 15-minute threshold for replication."
13473 },
13474 "name": "REPLICATION_OPERATION_MISSED_THRESHOLD"
13475 },
13476 {
13477 "docs": {
13478 "stability": "stable",
13479 "summary": "You receive this notification event for an object that was eligible for replication using the Amazon S3 Replication Time Control feature replicated after the 15-minute threshold."
13480 },
13481 "name": "REPLICATION_OPERATION_REPLICATED_AFTER_THRESHOLD"
13482 },
13483 {
13484 "docs": {
13485 "stability": "stable",
13486 "summary": "You receive this notification event for an object that was eligible for replication using Amazon S3 Replication Time Control but is no longer tracked by replication metrics."
13487 },
13488 "name": "REPLICATION_OPERATION_NOT_TRACKED"
13489 },
13490 {
13491 "docs": {
13492 "stability": "stable",
13493 "summary": "By using the LifecycleExpiration event types, you can receive a notification when Amazon S3 deletes an object based on your S3 Lifecycle configuration."
13494 },
13495 "name": "LIFECYCLE_EXPIRATION"
13496 },
13497 {
13498 "docs": {
13499 "remarks": "It also notifies you when an object version is permanently deleted by an\nS3 Lifecycle configuration.",
13500 "stability": "stable",
13501 "summary": "The s3:LifecycleExpiration:Delete event type notifies you when an object in an unversioned bucket is deleted."
13502 },
13503 "name": "LIFECYCLE_EXPIRATION_DELETE"
13504 },
13505 {
13506 "docs": {
13507 "stability": "stable",
13508 "summary": "The s3:LifecycleExpiration:DeleteMarkerCreated event type notifies you when S3 Lifecycle creates a delete marker when a current version of an object in versioned bucket is deleted."
13509 },
13510 "name": "LIFECYCLE_EXPIRATION_DELETE_MARKER_CREATED"
13511 },
13512 {
13513 "docs": {
13514 "stability": "stable",
13515 "summary": "You receive this notification event when an object is transitioned to another Amazon S3 storage class by an S3 Lifecycle configuration."
13516 },
13517 "name": "LIFECYCLE_TRANSITION"
13518 },
13519 {
13520 "docs": {
13521 "stability": "stable",
13522 "summary": "You receive this notification event when an object within the S3 Intelligent-Tiering storage class moved to the Archive Access tier or Deep Archive Access tier."
13523 },
13524 "name": "INTELLIGENT_TIERING"
13525 },
13526 {
13527 "docs": {
13528 "stability": "stable",
13529 "summary": "By using the ObjectTagging event types, you can enable notification when an object tag is added or deleted from an object."
13530 },
13531 "name": "OBJECT_TAGGING"
13532 },
13533 {
13534 "docs": {
13535 "stability": "stable",
13536 "summary": "The s3:ObjectTagging:Put event type notifies you when a tag is PUT on an object or an existing tag is updated."
13537 },
13538 "name": "OBJECT_TAGGING_PUT"
13539 },
13540 {
13541 "docs": {
13542 "stability": "stable",
13543 "summary": "The s3:ObjectTagging:Delete event type notifies you when a tag is removed from an object."
13544 },
13545 "name": "OBJECT_TAGGING_DELETE"
13546 },
13547 {
13548 "docs": {
13549 "remarks": "An event is not generated when a request results in no change to an\nobject’s ACL.",
13550 "stability": "stable",
13551 "summary": "You receive this notification event when an ACL is PUT on an object or when an existing ACL is changed."
13552 },
13553 "name": "OBJECT_ACL_PUT"
13554 }
13555 ],
13556 "name": "EventType",
13557 "symbolId": "lib/bucket:EventType"
13558 },
13559 "@aws-cdk/aws-s3.HttpMethods": {
13560 "assembly": "@aws-cdk/aws-s3",
13561 "docs": {
13562 "stability": "stable",
13563 "summary": "All http request methods."
13564 },
13565 "fqn": "@aws-cdk/aws-s3.HttpMethods",
13566 "kind": "enum",
13567 "locationInModule": {
13568 "filename": "lib/bucket.ts",
13569 "line": 1010
13570 },
13571 "members": [
13572 {
13573 "docs": {
13574 "stability": "stable",
13575 "summary": "The GET method requests a representation of the specified resource."
13576 },
13577 "name": "GET"
13578 },
13579 {
13580 "docs": {
13581 "stability": "stable",
13582 "summary": "The PUT method replaces all current representations of the target resource with the request payload."
13583 },
13584 "name": "PUT"
13585 },
13586 {
13587 "docs": {
13588 "stability": "stable",
13589 "summary": "The HEAD method asks for a response identical to that of a GET request, but without the response body."
13590 },
13591 "name": "HEAD"
13592 },
13593 {
13594 "docs": {
13595 "stability": "stable",
13596 "summary": "The POST method is used to submit an entity to the specified resource, often causing a change in state or side effects on the server."
13597 },
13598 "name": "POST"
13599 },
13600 {
13601 "docs": {
13602 "stability": "stable",
13603 "summary": "The DELETE method deletes the specified resource."
13604 },
13605 "name": "DELETE"
13606 }
13607 ],
13608 "name": "HttpMethods",
13609 "symbolId": "lib/bucket:HttpMethods"
13610 },
13611 "@aws-cdk/aws-s3.IBucket": {
13612 "assembly": "@aws-cdk/aws-s3",
13613 "docs": {
13614 "stability": "stable"
13615 },
13616 "fqn": "@aws-cdk/aws-s3.IBucket",
13617 "interfaces": [
13618 "@aws-cdk/core.IResource"
13619 ],
13620 "kind": "interface",
13621 "locationInModule": {
13622 "filename": "lib/bucket.ts",
13623 "line": 23
13624 },
13625 "methods": [
13626 {
13627 "abstract": true,
13628 "docs": {
13629 "example": " declare const myLambda: lambda.Function;\n const bucket = new s3.Bucket(this, 'MyBucket');\n bucket.addEventNotification(s3.EventType.OBJECT_CREATED, new s3n.LambdaDestination(myLambda), {prefix: 'home/myusername/*'})",
13630 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html",
13631 "stability": "stable",
13632 "summary": "Adds a bucket notification event destination."
13633 },
13634 "locationInModule": {
13635 "filename": "lib/bucket.ts",
13636 "line": 335
13637 },
13638 "name": "addEventNotification",
13639 "parameters": [
13640 {
13641 "docs": {
13642 "summary": "The event to trigger the notification."
13643 },
13644 "name": "event",
13645 "type": {
13646 "fqn": "@aws-cdk/aws-s3.EventType"
13647 }
13648 },
13649 {
13650 "docs": {
13651 "summary": "The notification destination (Lambda, SNS Topic or SQS Queue)."
13652 },
13653 "name": "dest",
13654 "type": {
13655 "fqn": "@aws-cdk/aws-s3.IBucketNotificationDestination"
13656 }
13657 },
13658 {
13659 "docs": {
13660 "remarks": "Each filter must include a `prefix` and/or `suffix`\nthat will be matched against the s3 object key. Refer to the S3 Developer Guide\nfor details about allowed filter rules.",
13661 "summary": "S3 object key filter rules to determine which objects trigger this event."
13662 },
13663 "name": "filters",
13664 "type": {
13665 "fqn": "@aws-cdk/aws-s3.NotificationKeyFilter"
13666 },
13667 "variadic": true
13668 }
13669 ],
13670 "variadic": true
13671 },
13672 {
13673 "abstract": true,
13674 "docs": {
13675 "remarks": "This is identical to calling\n`onEvent(s3.EventType.OBJECT_CREATED)`.",
13676 "stability": "stable",
13677 "summary": "Subscribes a destination to receive notifications when an object is created in the bucket."
13678 },
13679 "locationInModule": {
13680 "filename": "lib/bucket.ts",
13681 "line": 345
13682 },
13683 "name": "addObjectCreatedNotification",
13684 "parameters": [
13685 {
13686 "docs": {
13687 "summary": "The notification destination (see onEvent)."
13688 },
13689 "name": "dest",
13690 "type": {
13691 "fqn": "@aws-cdk/aws-s3.IBucketNotificationDestination"
13692 }
13693 },
13694 {
13695 "docs": {
13696 "summary": "Filters (see onEvent)."
13697 },
13698 "name": "filters",
13699 "type": {
13700 "fqn": "@aws-cdk/aws-s3.NotificationKeyFilter"
13701 },
13702 "variadic": true
13703 }
13704 ],
13705 "variadic": true
13706 },
13707 {
13708 "abstract": true,
13709 "docs": {
13710 "remarks": "This is identical to calling\n`onEvent(EventType.OBJECT_REMOVED)`.",
13711 "stability": "stable",
13712 "summary": "Subscribes a destination to receive notifications when an object is removed from the bucket."
13713 },
13714 "locationInModule": {
13715 "filename": "lib/bucket.ts",
13716 "line": 355
13717 },
13718 "name": "addObjectRemovedNotification",
13719 "parameters": [
13720 {
13721 "docs": {
13722 "summary": "The notification destination (see onEvent)."
13723 },
13724 "name": "dest",
13725 "type": {
13726 "fqn": "@aws-cdk/aws-s3.IBucketNotificationDestination"
13727 }
13728 },
13729 {
13730 "docs": {
13731 "summary": "Filters (see onEvent)."
13732 },
13733 "name": "filters",
13734 "type": {
13735 "fqn": "@aws-cdk/aws-s3.NotificationKeyFilter"
13736 },
13737 "variadic": true
13738 }
13739 ],
13740 "variadic": true
13741 },
13742 {
13743 "abstract": true,
13744 "docs": {
13745 "remarks": "Note that the policy statement may or may not be added to the policy.\nFor example, when an `IBucket` is created from an existing bucket,\nit's not possible to tell whether the bucket already has a policy\nattached, let alone to re-use that policy to add more statements to it.\nSo it's safest to do nothing in these cases.",
13746 "returns": "metadata about the execution of this method. If the policy\nwas not added, the value of `statementAdded` will be `false`. You\nshould always check this value to make sure that the operation was\nactually carried out. Otherwise, synthesis and deploy will terminate\nsilently, which may be confusing.",
13747 "stability": "stable",
13748 "summary": "Adds a statement to the resource policy for a principal (i.e. account/role/service) to perform actions on this bucket and/or its contents. Use `bucketArn` and `arnForObjects(keys)` to obtain ARNs for this bucket or objects."
13749 },
13750 "locationInModule": {
13751 "filename": "lib/bucket.ts",
13752 "line": 104
13753 },
13754 "name": "addToResourcePolicy",
13755 "parameters": [
13756 {
13757 "docs": {
13758 "summary": "the policy statement to be added to the bucket's policy."
13759 },
13760 "name": "permission",
13761 "type": {
13762 "fqn": "@aws-cdk/aws-iam.PolicyStatement"
13763 }
13764 }
13765 ],
13766 "returns": {
13767 "type": {
13768 "fqn": "@aws-cdk/aws-iam.AddToResourcePolicyResult"
13769 }
13770 }
13771 },
13772 {
13773 "abstract": true,
13774 "docs": {
13775 "remarks": "To represent all keys, specify ``\"*\"``.",
13776 "stability": "stable",
13777 "summary": "Returns an ARN that represents all objects within the bucket that match the key pattern specified."
13778 },
13779 "locationInModule": {
13780 "filename": "lib/bucket.ts",
13781 "line": 161
13782 },
13783 "name": "arnForObjects",
13784 "parameters": [
13785 {
13786 "name": "keyPattern",
13787 "type": {
13788 "primitive": "string"
13789 }
13790 }
13791 ],
13792 "returns": {
13793 "type": {
13794 "primitive": "string"
13795 }
13796 }
13797 },
13798 {
13799 "abstract": true,
13800 "docs": {
13801 "stability": "stable",
13802 "summary": "Grants s3:DeleteObject* permission to an IAM principal for objects in this bucket."
13803 },
13804 "locationInModule": {
13805 "filename": "lib/bucket.ts",
13806 "line": 223
13807 },
13808 "name": "grantDelete",
13809 "parameters": [
13810 {
13811 "docs": {
13812 "summary": "The principal."
13813 },
13814 "name": "identity",
13815 "type": {
13816 "fqn": "@aws-cdk/aws-iam.IGrantable"
13817 }
13818 },
13819 {
13820 "docs": {
13821 "summary": "Restrict the permission to a certain key pattern (default '*')."
13822 },
13823 "name": "objectsKeyPattern",
13824 "optional": true,
13825 "type": {
13826 "primitive": "any"
13827 }
13828 }
13829 ],
13830 "returns": {
13831 "type": {
13832 "fqn": "@aws-cdk/aws-iam.Grant"
13833 }
13834 }
13835 },
13836 {
13837 "abstract": true,
13838 "docs": {
13839 "remarks": "IMPORTANT: This permission allows anyone to perform actions on S3 objects\nin this bucket, which is useful for when you configure your bucket as a\nwebsite and want everyone to be able to read objects in the bucket without\nneeding to authenticate.\n\nWithout arguments, this method will grant read (\"s3:GetObject\") access to\nall objects (\"*\") in the bucket.\n\nThe method returns the `iam.Grant` object, which can then be modified\nas needed. For example, you can add a condition that will restrict access only\nto an IPv4 range like this:\n\n const grant = bucket.grantPublicAccess();\n grant.resourceStatement!.addCondition(‘IpAddress’, { “aws:SourceIp”: “54.240.143.0/24” });",
13840 "returns": "The `iam.PolicyStatement` object, which can be used to apply e.g. conditions.",
13841 "stability": "stable",
13842 "summary": "Allows unrestricted access to objects from this bucket."
13843 },
13844 "locationInModule": {
13845 "filename": "lib/bucket.ts",
13846 "line": 268
13847 },
13848 "name": "grantPublicAccess",
13849 "parameters": [
13850 {
13851 "docs": {
13852 "summary": "the prefix of S3 object keys (e.g. `home/*`). Default is \"*\"."
13853 },
13854 "name": "keyPrefix",
13855 "optional": true,
13856 "type": {
13857 "primitive": "string"
13858 }
13859 },
13860 {
13861 "docs": {
13862 "remarks": "Default is \"s3:GetObject\".",
13863 "summary": "the set of S3 actions to allow."
13864 },
13865 "name": "allowedActions",
13866 "type": {
13867 "primitive": "string"
13868 },
13869 "variadic": true
13870 }
13871 ],
13872 "returns": {
13873 "type": {
13874 "fqn": "@aws-cdk/aws-iam.Grant"
13875 }
13876 },
13877 "variadic": true
13878 },
13879 {
13880 "abstract": true,
13881 "docs": {
13882 "remarks": "If encryption is used, permission to use the key to encrypt the contents\nof written files will also be granted to the same principal.",
13883 "stability": "stable",
13884 "summary": "Grants s3:PutObject* and s3:Abort* permissions for this bucket to an IAM principal."
13885 },
13886 "locationInModule": {
13887 "filename": "lib/bucket.ts",
13888 "line": 202
13889 },
13890 "name": "grantPut",
13891 "parameters": [
13892 {
13893 "docs": {
13894 "summary": "The principal."
13895 },
13896 "name": "identity",
13897 "type": {
13898 "fqn": "@aws-cdk/aws-iam.IGrantable"
13899 }
13900 },
13901 {
13902 "docs": {
13903 "summary": "Restrict the permission to a certain key pattern (default '*')."
13904 },
13905 "name": "objectsKeyPattern",
13906 "optional": true,
13907 "type": {
13908 "primitive": "any"
13909 }
13910 }
13911 ],
13912 "returns": {
13913 "type": {
13914 "fqn": "@aws-cdk/aws-iam.Grant"
13915 }
13916 }
13917 },
13918 {
13919 "abstract": true,
13920 "docs": {
13921 "remarks": "If your application has the '@aws-cdk/aws-s3:grantWriteWithoutAcl' feature flag set,\ncalling {@link grantWrite} or {@link grantReadWrite} no longer grants permissions to modify the ACLs of the objects;\nin this case, if you need to modify object ACLs, call this method explicitly.",
13922 "stability": "stable",
13923 "summary": "Grant the given IAM identity permissions to modify the ACLs of objects in the given Bucket."
13924 },
13925 "locationInModule": {
13926 "filename": "lib/bucket.ts",
13927 "line": 214
13928 },
13929 "name": "grantPutAcl",
13930 "parameters": [
13931 {
13932 "docs": {
13933 "summary": "The principal."
13934 },
13935 "name": "identity",
13936 "type": {
13937 "fqn": "@aws-cdk/aws-iam.IGrantable"
13938 }
13939 },
13940 {
13941 "docs": {
13942 "summary": "Restrict the permission to a certain key pattern (default '*')."
13943 },
13944 "name": "objectsKeyPattern",
13945 "optional": true,
13946 "type": {
13947 "primitive": "string"
13948 }
13949 }
13950 ],
13951 "returns": {
13952 "type": {
13953 "fqn": "@aws-cdk/aws-iam.Grant"
13954 }
13955 }
13956 },
13957 {
13958 "abstract": true,
13959 "docs": {
13960 "remarks": "If encryption is used, permission to use the key to decrypt the contents\nof the bucket will also be granted to the same principal.",
13961 "stability": "stable",
13962 "summary": "Grant read permissions for this bucket and it's contents to an IAM principal (Role/Group/User)."
13963 },
13964 "locationInModule": {
13965 "filename": "lib/bucket.ts",
13966 "line": 173
13967 },
13968 "name": "grantRead",
13969 "parameters": [
13970 {
13971 "docs": {
13972 "summary": "The principal."
13973 },
13974 "name": "identity",
13975 "type": {
13976 "fqn": "@aws-cdk/aws-iam.IGrantable"
13977 }
13978 },
13979 {
13980 "docs": {
13981 "summary": "Restrict the permission to a certain key pattern (default '*')."
13982 },
13983 "name": "objectsKeyPattern",
13984 "optional": true,
13985 "type": {
13986 "primitive": "any"
13987 }
13988 }
13989 ],
13990 "returns": {
13991 "type": {
13992 "fqn": "@aws-cdk/aws-iam.Grant"
13993 }
13994 }
13995 },
13996 {
13997 "abstract": true,
13998 "docs": {
13999 "remarks": "If an encryption key is used, permission to use the key for\nencrypt/decrypt will also be granted.\n\nBefore CDK version 1.85.0, this method granted the `s3:PutObject*` permission that included `s3:PutObjectAcl`,\nwhich could be used to grant read/write object access to IAM principals in other accounts.\nIf you want to get rid of that behavior, update your CDK version to 1.85.0 or later,\nand make sure the `@aws-cdk/aws-s3:grantWriteWithoutAcl` feature flag is set to `true`\nin the `context` key of your cdk.json file.\nIf you've already updated, but still need the principal to have permissions to modify the ACLs,\nuse the {@link grantPutAcl} method.",
14000 "stability": "stable",
14001 "summary": "Grants read/write permissions for this bucket and it's contents to an IAM principal (Role/Group/User)."
14002 },
14003 "locationInModule": {
14004 "filename": "lib/bucket.ts",
14005 "line": 243
14006 },
14007 "name": "grantReadWrite",
14008 "parameters": [
14009 {
14010 "docs": {
14011 "summary": "The principal."
14012 },
14013 "name": "identity",
14014 "type": {
14015 "fqn": "@aws-cdk/aws-iam.IGrantable"
14016 }
14017 },
14018 {
14019 "docs": {
14020 "summary": "Restrict the permission to a certain key pattern (default '*')."
14021 },
14022 "name": "objectsKeyPattern",
14023 "optional": true,
14024 "type": {
14025 "primitive": "any"
14026 }
14027 }
14028 ],
14029 "returns": {
14030 "type": {
14031 "fqn": "@aws-cdk/aws-iam.Grant"
14032 }
14033 }
14034 },
14035 {
14036 "abstract": true,
14037 "docs": {
14038 "remarks": "If encryption is used, permission to use the key to encrypt the contents\nof written files will also be granted to the same principal.\n\nBefore CDK version 1.85.0, this method granted the `s3:PutObject*` permission that included `s3:PutObjectAcl`,\nwhich could be used to grant read/write object access to IAM principals in other accounts.\nIf you want to get rid of that behavior, update your CDK version to 1.85.0 or later,\nand make sure the `@aws-cdk/aws-s3:grantWriteWithoutAcl` feature flag is set to `true`\nin the `context` key of your cdk.json file.\nIf you've already updated, but still need the principal to have permissions to modify the ACLs,\nuse the {@link grantPutAcl} method.",
14039 "stability": "stable",
14040 "summary": "Grant write permissions to this bucket to an IAM principal."
14041 },
14042 "locationInModule": {
14043 "filename": "lib/bucket.ts",
14044 "line": 192
14045 },
14046 "name": "grantWrite",
14047 "parameters": [
14048 {
14049 "docs": {
14050 "summary": "The principal."
14051 },
14052 "name": "identity",
14053 "type": {
14054 "fqn": "@aws-cdk/aws-iam.IGrantable"
14055 }
14056 },
14057 {
14058 "docs": {
14059 "summary": "Restrict the permission to a certain key pattern (default '*')."
14060 },
14061 "name": "objectsKeyPattern",
14062 "optional": true,
14063 "type": {
14064 "primitive": "any"
14065 }
14066 }
14067 ],
14068 "returns": {
14069 "type": {
14070 "fqn": "@aws-cdk/aws-iam.Grant"
14071 }
14072 }
14073 },
14074 {
14075 "abstract": true,
14076 "docs": {
14077 "remarks": "Requires that there exists at least one CloudTrail Trail in your account\nthat captures the event. This method will not create the Trail.",
14078 "stability": "stable",
14079 "summary": "Defines a CloudWatch event that triggers when something happens to this bucket."
14080 },
14081 "locationInModule": {
14082 "filename": "lib/bucket.ts",
14083 "line": 279
14084 },
14085 "name": "onCloudTrailEvent",
14086 "parameters": [
14087 {
14088 "docs": {
14089 "summary": "The id of the rule."
14090 },
14091 "name": "id",
14092 "type": {
14093 "primitive": "string"
14094 }
14095 },
14096 {
14097 "docs": {
14098 "summary": "Options for adding the rule."
14099 },
14100 "name": "options",
14101 "optional": true,
14102 "type": {
14103 "fqn": "@aws-cdk/aws-s3.OnCloudTrailBucketEventOptions"
14104 }
14105 }
14106 ],
14107 "returns": {
14108 "type": {
14109 "fqn": "@aws-cdk/aws-events.Rule"
14110 }
14111 }
14112 },
14113 {
14114 "abstract": true,
14115 "docs": {
14116 "remarks": "Note that some tools like `aws s3 cp` will automatically use either\nPutObject or the multipart upload API depending on the file size,\nso using `onCloudTrailWriteObject` may be preferable.\n\nRequires that there exists at least one CloudTrail Trail in your account\nthat captures the event. This method will not create the Trail.",
14117 "stability": "stable",
14118 "summary": "Defines an AWS CloudWatch event that triggers when an object is uploaded to the specified paths (keys) in this bucket using the PutObject API call."
14119 },
14120 "locationInModule": {
14121 "filename": "lib/bucket.ts",
14122 "line": 295
14123 },
14124 "name": "onCloudTrailPutObject",
14125 "parameters": [
14126 {
14127 "docs": {
14128 "summary": "The id of the rule."
14129 },
14130 "name": "id",
14131 "type": {
14132 "primitive": "string"
14133 }
14134 },
14135 {
14136 "docs": {
14137 "summary": "Options for adding the rule."
14138 },
14139 "name": "options",
14140 "optional": true,
14141 "type": {
14142 "fqn": "@aws-cdk/aws-s3.OnCloudTrailBucketEventOptions"
14143 }
14144 }
14145 ],
14146 "returns": {
14147 "type": {
14148 "fqn": "@aws-cdk/aws-events.Rule"
14149 }
14150 }
14151 },
14152 {
14153 "abstract": true,
14154 "docs": {
14155 "remarks": "This includes\nthe events PutObject, CopyObject, and CompleteMultipartUpload.\n\nNote that some tools like `aws s3 cp` will automatically use either\nPutObject or the multipart upload API depending on the file size,\nso using this method may be preferable to `onCloudTrailPutObject`.\n\nRequires that there exists at least one CloudTrail Trail in your account\nthat captures the event. This method will not create the Trail.",
14156 "stability": "stable",
14157 "summary": "Defines an AWS CloudWatch event that triggers when an object at the specified paths (keys) in this bucket are written to."
14158 },
14159 "locationInModule": {
14160 "filename": "lib/bucket.ts",
14161 "line": 312
14162 },
14163 "name": "onCloudTrailWriteObject",
14164 "parameters": [
14165 {
14166 "docs": {
14167 "summary": "The id of the rule."
14168 },
14169 "name": "id",
14170 "type": {
14171 "primitive": "string"
14172 }
14173 },
14174 {
14175 "docs": {
14176 "summary": "Options for adding the rule."
14177 },
14178 "name": "options",
14179 "optional": true,
14180 "type": {
14181 "fqn": "@aws-cdk/aws-s3.OnCloudTrailBucketEventOptions"
14182 }
14183 }
14184 ],
14185 "returns": {
14186 "type": {
14187 "fqn": "@aws-cdk/aws-events.Rule"
14188 }
14189 }
14190 },
14191 {
14192 "abstract": true,
14193 "docs": {
14194 "remarks": "For example:\n- `s3://onlybucket`\n- `s3://bucket/key`",
14195 "returns": "an ObjectS3Url token",
14196 "stability": "stable",
14197 "summary": "The S3 URL of an S3 object."
14198 },
14199 "locationInModule": {
14200 "filename": "lib/bucket.ts",
14201 "line": 155
14202 },
14203 "name": "s3UrlForObject",
14204 "parameters": [
14205 {
14206 "docs": {
14207 "remarks": "If not specified, the S3 URL of the\nbucket is returned.",
14208 "summary": "The S3 key of the object."
14209 },
14210 "name": "key",
14211 "optional": true,
14212 "type": {
14213 "primitive": "string"
14214 }
14215 }
14216 ],
14217 "returns": {
14218 "type": {
14219 "primitive": "string"
14220 }
14221 }
14222 },
14223 {
14224 "abstract": true,
14225 "docs": {
14226 "remarks": "Specify `dualStack: true` at the options\nfor dual-stack endpoint (connect to the bucket over IPv6). For example:\n\n- `https://bucket.s3-accelerate.amazonaws.com`\n- `https://bucket.s3-accelerate.amazonaws.com/key`",
14227 "returns": "an TransferAccelerationUrl token",
14228 "stability": "stable",
14229 "summary": "The https Transfer Acceleration URL of an S3 object."
14230 },
14231 "locationInModule": {
14232 "filename": "lib/bucket.ts",
14233 "line": 130
14234 },
14235 "name": "transferAccelerationUrlForObject",
14236 "parameters": [
14237 {
14238 "docs": {
14239 "remarks": "If not specified, the URL of the\nbucket is returned.",
14240 "summary": "The S3 key of the object."
14241 },
14242 "name": "key",
14243 "optional": true,
14244 "type": {
14245 "primitive": "string"
14246 }
14247 },
14248 {
14249 "docs": {
14250 "summary": "Options for generating URL."
14251 },
14252 "name": "options",
14253 "optional": true,
14254 "type": {
14255 "fqn": "@aws-cdk/aws-s3.TransferAccelerationUrlOptions"
14256 }
14257 }
14258 ],
14259 "returns": {
14260 "type": {
14261 "primitive": "string"
14262 }
14263 }
14264 },
14265 {
14266 "abstract": true,
14267 "docs": {
14268 "remarks": "- `https://s3.us-west-1.amazonaws.com/onlybucket`\n- `https://s3.us-west-1.amazonaws.com/bucket/key`\n- `https://s3.cn-north-1.amazonaws.com.cn/china-bucket/mykey`",
14269 "returns": "an ObjectS3Url token",
14270 "stability": "stable",
14271 "summary": "The https URL of an S3 object. For example:."
14272 },
14273 "locationInModule": {
14274 "filename": "lib/bucket.ts",
14275 "line": 116
14276 },
14277 "name": "urlForObject",
14278 "parameters": [
14279 {
14280 "docs": {
14281 "remarks": "If not specified, the URL of the\nbucket is returned.",
14282 "summary": "The S3 key of the object."
14283 },
14284 "name": "key",
14285 "optional": true,
14286 "type": {
14287 "primitive": "string"
14288 }
14289 }
14290 ],
14291 "returns": {
14292 "type": {
14293 "primitive": "string"
14294 }
14295 }
14296 },
14297 {
14298 "abstract": true,
14299 "docs": {
14300 "remarks": "- `https://only-bucket.s3.us-west-1.amazonaws.com`\n- `https://bucket.s3.us-west-1.amazonaws.com/key`\n- `https://bucket.s3.amazonaws.com/key`\n- `https://china-bucket.s3.cn-north-1.amazonaws.com.cn/mykey`",
14301 "returns": "an ObjectS3Url token",
14302 "stability": "stable",
14303 "summary": "The virtual hosted-style URL of an S3 object. Specify `regional: false` at the options for non-regional URL. For example:."
14304 },
14305 "locationInModule": {
14306 "filename": "lib/bucket.ts",
14307 "line": 145
14308 },
14309 "name": "virtualHostedUrlForObject",
14310 "parameters": [
14311 {
14312 "docs": {
14313 "remarks": "If not specified, the URL of the\nbucket is returned.",
14314 "summary": "The S3 key of the object."
14315 },
14316 "name": "key",
14317 "optional": true,
14318 "type": {
14319 "primitive": "string"
14320 }
14321 },
14322 {
14323 "docs": {
14324 "summary": "Options for generating URL."
14325 },
14326 "name": "options",
14327 "optional": true,
14328 "type": {
14329 "fqn": "@aws-cdk/aws-s3.VirtualHostedStyleUrlOptions"
14330 }
14331 }
14332 ],
14333 "returns": {
14334 "type": {
14335 "primitive": "string"
14336 }
14337 }
14338 }
14339 ],
14340 "name": "IBucket",
14341 "properties": [
14342 {
14343 "abstract": true,
14344 "docs": {
14345 "custom": {
14346 "attribute": "true"
14347 },
14348 "stability": "stable",
14349 "summary": "The ARN of the bucket."
14350 },
14351 "immutable": true,
14352 "locationInModule": {
14353 "filename": "lib/bucket.ts",
14354 "line": 28
14355 },
14356 "name": "bucketArn",
14357 "type": {
14358 "primitive": "string"
14359 }
14360 },
14361 {
14362 "abstract": true,
14363 "docs": {
14364 "custom": {
14365 "attribute": "true"
14366 },
14367 "stability": "stable",
14368 "summary": "The IPv4 DNS name of the specified bucket."
14369 },
14370 "immutable": true,
14371 "locationInModule": {
14372 "filename": "lib/bucket.ts",
14373 "line": 52
14374 },
14375 "name": "bucketDomainName",
14376 "type": {
14377 "primitive": "string"
14378 }
14379 },
14380 {
14381 "abstract": true,
14382 "docs": {
14383 "custom": {
14384 "attribute": "true"
14385 },
14386 "stability": "stable",
14387 "summary": "The IPv6 DNS name of the specified bucket."
14388 },
14389 "immutable": true,
14390 "locationInModule": {
14391 "filename": "lib/bucket.ts",
14392 "line": 58
14393 },
14394 "name": "bucketDualStackDomainName",
14395 "type": {
14396 "primitive": "string"
14397 }
14398 },
14399 {
14400 "abstract": true,
14401 "docs": {
14402 "custom": {
14403 "attribute": "true"
14404 },
14405 "stability": "stable",
14406 "summary": "The name of the bucket."
14407 },
14408 "immutable": true,
14409 "locationInModule": {
14410 "filename": "lib/bucket.ts",
14411 "line": 34
14412 },
14413 "name": "bucketName",
14414 "type": {
14415 "primitive": "string"
14416 }
14417 },
14418 {
14419 "abstract": true,
14420 "docs": {
14421 "custom": {
14422 "attribute": "true"
14423 },
14424 "stability": "stable",
14425 "summary": "The regional domain name of the specified bucket."
14426 },
14427 "immutable": true,
14428 "locationInModule": {
14429 "filename": "lib/bucket.ts",
14430 "line": 64
14431 },
14432 "name": "bucketRegionalDomainName",
14433 "type": {
14434 "primitive": "string"
14435 }
14436 },
14437 {
14438 "abstract": true,
14439 "docs": {
14440 "custom": {
14441 "attribute": "true"
14442 },
14443 "stability": "stable",
14444 "summary": "The Domain name of the static website."
14445 },
14446 "immutable": true,
14447 "locationInModule": {
14448 "filename": "lib/bucket.ts",
14449 "line": 46
14450 },
14451 "name": "bucketWebsiteDomainName",
14452 "type": {
14453 "primitive": "string"
14454 }
14455 },
14456 {
14457 "abstract": true,
14458 "docs": {
14459 "custom": {
14460 "attribute": "true"
14461 },
14462 "stability": "stable",
14463 "summary": "The URL of the static website."
14464 },
14465 "immutable": true,
14466 "locationInModule": {
14467 "filename": "lib/bucket.ts",
14468 "line": 40
14469 },
14470 "name": "bucketWebsiteUrl",
14471 "type": {
14472 "primitive": "string"
14473 }
14474 },
14475 {
14476 "abstract": true,
14477 "docs": {
14478 "stability": "stable",
14479 "summary": "Optional KMS encryption key associated with this bucket."
14480 },
14481 "immutable": true,
14482 "locationInModule": {
14483 "filename": "lib/bucket.ts",
14484 "line": 74
14485 },
14486 "name": "encryptionKey",
14487 "optional": true,
14488 "type": {
14489 "fqn": "@aws-cdk/aws-kms.IKey"
14490 }
14491 },
14492 {
14493 "abstract": true,
14494 "docs": {
14495 "stability": "stable",
14496 "summary": "If this bucket has been configured for static website hosting."
14497 },
14498 "immutable": true,
14499 "locationInModule": {
14500 "filename": "lib/bucket.ts",
14501 "line": 69
14502 },
14503 "name": "isWebsite",
14504 "optional": true,
14505 "type": {
14506 "primitive": "boolean"
14507 }
14508 },
14509 {
14510 "abstract": true,
14511 "docs": {
14512 "remarks": "If `autoCreatePolicy` is true, a `BucketPolicy` will be created upon the\nfirst call to addToResourcePolicy(s).",
14513 "stability": "stable",
14514 "summary": "The resource policy associated with this bucket."
14515 },
14516 "locationInModule": {
14517 "filename": "lib/bucket.ts",
14518 "line": 82
14519 },
14520 "name": "policy",
14521 "optional": true,
14522 "type": {
14523 "fqn": "@aws-cdk/aws-s3.BucketPolicy"
14524 }
14525 }
14526 ],
14527 "symbolId": "lib/bucket:IBucket"
14528 },
14529 "@aws-cdk/aws-s3.IBucketNotificationDestination": {
14530 "assembly": "@aws-cdk/aws-s3",
14531 "docs": {
14532 "stability": "stable",
14533 "summary": "Implemented by constructs that can be used as bucket notification destinations."
14534 },
14535 "fqn": "@aws-cdk/aws-s3.IBucketNotificationDestination",
14536 "kind": "interface",
14537 "locationInModule": {
14538 "filename": "lib/destination.ts",
14539 "line": 11
14540 },
14541 "methods": [
14542 {
14543 "abstract": true,
14544 "docs": {
14545 "remarks": "This method will only be called once for each destination/bucket\npair and the result will be cached, so there is no need to implement\nidempotency in each destination.",
14546 "stability": "stable",
14547 "summary": "Registers this resource to receive notifications for the specified bucket."
14548 },
14549 "locationInModule": {
14550 "filename": "lib/destination.ts",
14551 "line": 19
14552 },
14553 "name": "bind",
14554 "parameters": [
14555 {
14556 "name": "scope",
14557 "type": {
14558 "fqn": "@aws-cdk/core.Construct"
14559 }
14560 },
14561 {
14562 "docs": {
14563 "summary": "The bucket object to bind to."
14564 },
14565 "name": "bucket",
14566 "type": {
14567 "fqn": "@aws-cdk/aws-s3.IBucket"
14568 }
14569 }
14570 ],
14571 "returns": {
14572 "type": {
14573 "fqn": "@aws-cdk/aws-s3.BucketNotificationDestinationConfig"
14574 }
14575 }
14576 }
14577 ],
14578 "name": "IBucketNotificationDestination",
14579 "symbolId": "lib/destination:IBucketNotificationDestination"
14580 },
14581 "@aws-cdk/aws-s3.IntelligentTieringConfiguration": {
14582 "assembly": "@aws-cdk/aws-s3",
14583 "datatype": true,
14584 "docs": {
14585 "stability": "stable",
14586 "summary": "The intelligent tiering configuration.",
14587 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as cdk from '@aws-cdk/core';\nconst intelligentTieringConfiguration: s3.IntelligentTieringConfiguration = {\n name: 'name',\n\n // the properties below are optional\n archiveAccessTierTime: cdk.Duration.minutes(30),\n deepArchiveAccessTierTime: cdk.Duration.minutes(30),\n prefix: 'prefix',\n tags: [{\n key: 'key',\n value: 'value',\n }],\n};",
14588 "custom": {
14589 "exampleMetadata": "fixture=_generated"
14590 }
14591 },
14592 "fqn": "@aws-cdk/aws-s3.IntelligentTieringConfiguration",
14593 "kind": "interface",
14594 "locationInModule": {
14595 "filename": "lib/bucket.ts",
14596 "line": 1245
14597 },
14598 "name": "IntelligentTieringConfiguration",
14599 "properties": [
14600 {
14601 "abstract": true,
14602 "docs": {
14603 "stability": "stable",
14604 "summary": "Configuration name."
14605 },
14606 "immutable": true,
14607 "locationInModule": {
14608 "filename": "lib/bucket.ts",
14609 "line": 1249
14610 },
14611 "name": "name",
14612 "type": {
14613 "primitive": "string"
14614 }
14615 },
14616 {
14617 "abstract": true,
14618 "docs": {
14619 "default": "Objects will not move to Glacier",
14620 "stability": "stable",
14621 "summary": "When enabled, Intelligent-Tiering will automatically move objects that haven’t been accessed for a minimum of 90 days to the Archive Access tier."
14622 },
14623 "immutable": true,
14624 "locationInModule": {
14625 "filename": "lib/bucket.ts",
14626 "line": 1272
14627 },
14628 "name": "archiveAccessTierTime",
14629 "optional": true,
14630 "type": {
14631 "fqn": "@aws-cdk/core.Duration"
14632 }
14633 },
14634 {
14635 "abstract": true,
14636 "docs": {
14637 "default": "Objects will not move to Glacier Deep Access",
14638 "stability": "stable",
14639 "summary": "When enabled, Intelligent-Tiering will automatically move objects that haven’t been accessed for a minimum of 180 days to the Deep Archive Access tier."
14640 },
14641 "immutable": true,
14642 "locationInModule": {
14643 "filename": "lib/bucket.ts",
14644 "line": 1281
14645 },
14646 "name": "deepArchiveAccessTierTime",
14647 "optional": true,
14648 "type": {
14649 "fqn": "@aws-cdk/core.Duration"
14650 }
14651 },
14652 {
14653 "abstract": true,
14654 "docs": {
14655 "default": "this configuration will apply to **all** objects in the bucket.",
14656 "stability": "stable",
14657 "summary": "Add a filter to limit the scope of this configuration to a single prefix."
14658 },
14659 "immutable": true,
14660 "locationInModule": {
14661 "filename": "lib/bucket.ts",
14662 "line": 1257
14663 },
14664 "name": "prefix",
14665 "optional": true,
14666 "type": {
14667 "primitive": "string"
14668 }
14669 },
14670 {
14671 "abstract": true,
14672 "docs": {
14673 "default": "No filtering will be performed on tags",
14674 "stability": "stable",
14675 "summary": "You can limit the scope of this rule to the key value pairs added below."
14676 },
14677 "immutable": true,
14678 "locationInModule": {
14679 "filename": "lib/bucket.ts",
14680 "line": 1264
14681 },
14682 "name": "tags",
14683 "optional": true,
14684 "type": {
14685 "collection": {
14686 "elementtype": {
14687 "fqn": "@aws-cdk/aws-s3.Tag"
14688 },
14689 "kind": "array"
14690 }
14691 }
14692 }
14693 ],
14694 "symbolId": "lib/bucket:IntelligentTieringConfiguration"
14695 },
14696 "@aws-cdk/aws-s3.Inventory": {
14697 "assembly": "@aws-cdk/aws-s3",
14698 "datatype": true,
14699 "docs": {
14700 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-inventory.html",
14701 "stability": "stable",
14702 "summary": "Specifies the inventory configuration of an S3 Bucket.",
14703 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const bucket: s3.Bucket;\nconst inventory: s3.Inventory = {\n destination: {\n bucket: bucket,\n\n // the properties below are optional\n bucketOwner: 'bucketOwner',\n prefix: 'prefix',\n },\n\n // the properties below are optional\n enabled: false,\n format: s3.InventoryFormat.CSV,\n frequency: s3.InventoryFrequency.DAILY,\n includeObjectVersions: s3.InventoryObjectVersion.ALL,\n inventoryId: 'inventoryId',\n objectsPrefix: 'objectsPrefix',\n optionalFields: ['optionalFields'],\n};",
14704 "custom": {
14705 "exampleMetadata": "fixture=_generated"
14706 }
14707 },
14708 "fqn": "@aws-cdk/aws-s3.Inventory",
14709 "kind": "interface",
14710 "locationInModule": {
14711 "filename": "lib/bucket.ts",
14712 "line": 1171
14713 },
14714 "name": "Inventory",
14715 "properties": [
14716 {
14717 "abstract": true,
14718 "docs": {
14719 "stability": "stable",
14720 "summary": "The destination of the inventory."
14721 },
14722 "immutable": true,
14723 "locationInModule": {
14724 "filename": "lib/bucket.ts",
14725 "line": 1175
14726 },
14727 "name": "destination",
14728 "type": {
14729 "fqn": "@aws-cdk/aws-s3.InventoryDestination"
14730 }
14731 },
14732 {
14733 "abstract": true,
14734 "docs": {
14735 "default": "true",
14736 "stability": "stable",
14737 "summary": "Whether the inventory is enabled or disabled."
14738 },
14739 "immutable": true,
14740 "locationInModule": {
14741 "filename": "lib/bucket.ts",
14742 "line": 1193
14743 },
14744 "name": "enabled",
14745 "optional": true,
14746 "type": {
14747 "primitive": "boolean"
14748 }
14749 },
14750 {
14751 "abstract": true,
14752 "docs": {
14753 "default": "InventoryFormat.CSV",
14754 "stability": "stable",
14755 "summary": "The format of the inventory."
14756 },
14757 "immutable": true,
14758 "locationInModule": {
14759 "filename": "lib/bucket.ts",
14760 "line": 1187
14761 },
14762 "name": "format",
14763 "optional": true,
14764 "type": {
14765 "fqn": "@aws-cdk/aws-s3.InventoryFormat"
14766 }
14767 },
14768 {
14769 "abstract": true,
14770 "docs": {
14771 "default": "InventoryFrequency.WEEKLY",
14772 "stability": "stable",
14773 "summary": "Frequency at which the inventory should be generated."
14774 },
14775 "immutable": true,
14776 "locationInModule": {
14777 "filename": "lib/bucket.ts",
14778 "line": 1205
14779 },
14780 "name": "frequency",
14781 "optional": true,
14782 "type": {
14783 "fqn": "@aws-cdk/aws-s3.InventoryFrequency"
14784 }
14785 },
14786 {
14787 "abstract": true,
14788 "docs": {
14789 "default": "InventoryObjectVersion.ALL",
14790 "stability": "stable",
14791 "summary": "If the inventory should contain all the object versions or only the current one."
14792 },
14793 "immutable": true,
14794 "locationInModule": {
14795 "filename": "lib/bucket.ts",
14796 "line": 1211
14797 },
14798 "name": "includeObjectVersions",
14799 "optional": true,
14800 "type": {
14801 "fqn": "@aws-cdk/aws-s3.InventoryObjectVersion"
14802 }
14803 },
14804 {
14805 "abstract": true,
14806 "docs": {
14807 "default": "- generated ID.",
14808 "stability": "stable",
14809 "summary": "The inventory configuration ID."
14810 },
14811 "immutable": true,
14812 "locationInModule": {
14813 "filename": "lib/bucket.ts",
14814 "line": 1199
14815 },
14816 "name": "inventoryId",
14817 "optional": true,
14818 "type": {
14819 "primitive": "string"
14820 }
14821 },
14822 {
14823 "abstract": true,
14824 "docs": {
14825 "default": "- No objects prefix",
14826 "stability": "stable",
14827 "summary": "The inventory will only include objects that meet the prefix filter criteria."
14828 },
14829 "immutable": true,
14830 "locationInModule": {
14831 "filename": "lib/bucket.ts",
14832 "line": 1181
14833 },
14834 "name": "objectsPrefix",
14835 "optional": true,
14836 "type": {
14837 "primitive": "string"
14838 }
14839 },
14840 {
14841 "abstract": true,
14842 "docs": {
14843 "default": "- No optional fields.",
14844 "stability": "stable",
14845 "summary": "A list of optional fields to be included in the inventory result."
14846 },
14847 "immutable": true,
14848 "locationInModule": {
14849 "filename": "lib/bucket.ts",
14850 "line": 1217
14851 },
14852 "name": "optionalFields",
14853 "optional": true,
14854 "type": {
14855 "collection": {
14856 "elementtype": {
14857 "primitive": "string"
14858 },
14859 "kind": "array"
14860 }
14861 }
14862 }
14863 ],
14864 "symbolId": "lib/bucket:Inventory"
14865 },
14866 "@aws-cdk/aws-s3.InventoryDestination": {
14867 "assembly": "@aws-cdk/aws-s3",
14868 "datatype": true,
14869 "docs": {
14870 "custom": {
14871 "exampleMetadata": "infused"
14872 },
14873 "example": "const inventoryBucket = new s3.Bucket(this, 'InventoryBucket');\n\nconst dataBucket = new s3.Bucket(this, 'DataBucket', {\n inventories: [\n {\n frequency: s3.InventoryFrequency.DAILY,\n includeObjectVersions: s3.InventoryObjectVersion.CURRENT,\n destination: {\n bucket: inventoryBucket,\n },\n },\n {\n frequency: s3.InventoryFrequency.WEEKLY,\n includeObjectVersions: s3.InventoryObjectVersion.ALL,\n destination: {\n bucket: inventoryBucket,\n prefix: 'with-all-versions',\n },\n },\n ],\n});",
14874 "stability": "stable",
14875 "summary": "The destination of the inventory."
14876 },
14877 "fqn": "@aws-cdk/aws-s3.InventoryDestination",
14878 "kind": "interface",
14879 "locationInModule": {
14880 "filename": "lib/bucket.ts",
14881 "line": 1145
14882 },
14883 "name": "InventoryDestination",
14884 "properties": [
14885 {
14886 "abstract": true,
14887 "docs": {
14888 "stability": "stable",
14889 "summary": "Bucket where all inventories will be saved in."
14890 },
14891 "immutable": true,
14892 "locationInModule": {
14893 "filename": "lib/bucket.ts",
14894 "line": 1149
14895 },
14896 "name": "bucket",
14897 "type": {
14898 "fqn": "@aws-cdk/aws-s3.IBucket"
14899 }
14900 },
14901 {
14902 "abstract": true,
14903 "docs": {
14904 "default": "- No account ID.",
14905 "remarks": "If no account ID is provided, the owner is not validated before exporting data.\nIt's recommended to set an account ID to prevent problems if the destination bucket ownership changes.",
14906 "stability": "stable",
14907 "summary": "The account ID that owns the destination S3 bucket."
14908 },
14909 "immutable": true,
14910 "locationInModule": {
14911 "filename": "lib/bucket.ts",
14912 "line": 1163
14913 },
14914 "name": "bucketOwner",
14915 "optional": true,
14916 "type": {
14917 "primitive": "string"
14918 }
14919 },
14920 {
14921 "abstract": true,
14922 "docs": {
14923 "default": "- No prefix.",
14924 "stability": "stable",
14925 "summary": "The prefix to be used when saving the inventory."
14926 },
14927 "immutable": true,
14928 "locationInModule": {
14929 "filename": "lib/bucket.ts",
14930 "line": 1155
14931 },
14932 "name": "prefix",
14933 "optional": true,
14934 "type": {
14935 "primitive": "string"
14936 }
14937 }
14938 ],
14939 "symbolId": "lib/bucket:InventoryDestination"
14940 },
14941 "@aws-cdk/aws-s3.InventoryFormat": {
14942 "assembly": "@aws-cdk/aws-s3",
14943 "docs": {
14944 "stability": "stable",
14945 "summary": "All supported inventory list formats."
14946 },
14947 "fqn": "@aws-cdk/aws-s3.InventoryFormat",
14948 "kind": "enum",
14949 "locationInModule": {
14950 "filename": "lib/bucket.ts",
14951 "line": 1099
14952 },
14953 "members": [
14954 {
14955 "docs": {
14956 "stability": "stable",
14957 "summary": "Generate the inventory list as CSV."
14958 },
14959 "name": "CSV"
14960 },
14961 {
14962 "docs": {
14963 "stability": "stable",
14964 "summary": "Generate the inventory list as Parquet."
14965 },
14966 "name": "PARQUET"
14967 },
14968 {
14969 "docs": {
14970 "stability": "stable",
14971 "summary": "Generate the inventory list as ORC."
14972 },
14973 "name": "ORC"
14974 }
14975 ],
14976 "name": "InventoryFormat",
14977 "symbolId": "lib/bucket:InventoryFormat"
14978 },
14979 "@aws-cdk/aws-s3.InventoryFrequency": {
14980 "assembly": "@aws-cdk/aws-s3",
14981 "docs": {
14982 "custom": {
14983 "exampleMetadata": "infused"
14984 },
14985 "example": "const inventoryBucket = new s3.Bucket(this, 'InventoryBucket');\n\nconst dataBucket = new s3.Bucket(this, 'DataBucket', {\n inventories: [\n {\n frequency: s3.InventoryFrequency.DAILY,\n includeObjectVersions: s3.InventoryObjectVersion.CURRENT,\n destination: {\n bucket: inventoryBucket,\n },\n },\n {\n frequency: s3.InventoryFrequency.WEEKLY,\n includeObjectVersions: s3.InventoryObjectVersion.ALL,\n destination: {\n bucket: inventoryBucket,\n prefix: 'with-all-versions',\n },\n },\n ],\n});",
14986 "stability": "stable",
14987 "summary": "All supported inventory frequencies."
14988 },
14989 "fqn": "@aws-cdk/aws-s3.InventoryFrequency",
14990 "kind": "enum",
14991 "locationInModule": {
14992 "filename": "lib/bucket.ts",
14993 "line": 1117
14994 },
14995 "members": [
14996 {
14997 "docs": {
14998 "stability": "stable",
14999 "summary": "A report is generated every day."
15000 },
15001 "name": "DAILY"
15002 },
15003 {
15004 "docs": {
15005 "stability": "stable",
15006 "summary": "A report is generated every Sunday (UTC timezone) after the initial report."
15007 },
15008 "name": "WEEKLY"
15009 }
15010 ],
15011 "name": "InventoryFrequency",
15012 "symbolId": "lib/bucket:InventoryFrequency"
15013 },
15014 "@aws-cdk/aws-s3.InventoryObjectVersion": {
15015 "assembly": "@aws-cdk/aws-s3",
15016 "docs": {
15017 "custom": {
15018 "exampleMetadata": "infused"
15019 },
15020 "example": "const inventoryBucket = new s3.Bucket(this, 'InventoryBucket');\n\nconst dataBucket = new s3.Bucket(this, 'DataBucket', {\n inventories: [\n {\n frequency: s3.InventoryFrequency.DAILY,\n includeObjectVersions: s3.InventoryObjectVersion.CURRENT,\n destination: {\n bucket: inventoryBucket,\n },\n },\n {\n frequency: s3.InventoryFrequency.WEEKLY,\n includeObjectVersions: s3.InventoryObjectVersion.ALL,\n destination: {\n bucket: inventoryBucket,\n prefix: 'with-all-versions',\n },\n },\n ],\n});",
15021 "stability": "stable",
15022 "summary": "Inventory version support."
15023 },
15024 "fqn": "@aws-cdk/aws-s3.InventoryObjectVersion",
15025 "kind": "enum",
15026 "locationInModule": {
15027 "filename": "lib/bucket.ts",
15028 "line": 1131
15029 },
15030 "members": [
15031 {
15032 "docs": {
15033 "stability": "stable",
15034 "summary": "Includes all versions of each object in the report."
15035 },
15036 "name": "ALL"
15037 },
15038 {
15039 "docs": {
15040 "stability": "stable",
15041 "summary": "Includes only the current version of each object in the report."
15042 },
15043 "name": "CURRENT"
15044 }
15045 ],
15046 "name": "InventoryObjectVersion",
15047 "symbolId": "lib/bucket:InventoryObjectVersion"
15048 },
15049 "@aws-cdk/aws-s3.LifecycleRule": {
15050 "assembly": "@aws-cdk/aws-s3",
15051 "datatype": true,
15052 "docs": {
15053 "stability": "stable",
15054 "summary": "Declaration of a Life cycle rule.",
15055 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as cdk from '@aws-cdk/core';\n\ndeclare const storageClass: s3.StorageClass;\ndeclare const tagFilters: any;\nconst lifecycleRule: s3.LifecycleRule = {\n abortIncompleteMultipartUploadAfter: cdk.Duration.minutes(30),\n enabled: false,\n expiration: cdk.Duration.minutes(30),\n expirationDate: new Date(),\n expiredObjectDeleteMarker: false,\n id: 'id',\n noncurrentVersionExpiration: cdk.Duration.minutes(30),\n noncurrentVersionTransitions: [{\n storageClass: storageClass,\n transitionAfter: cdk.Duration.minutes(30),\n\n // the properties below are optional\n noncurrentVersionsToRetain: 123,\n }],\n prefix: 'prefix',\n tagFilters: {\n tagFiltersKey: tagFilters,\n },\n transitions: [{\n storageClass: storageClass,\n\n // the properties below are optional\n transitionAfter: cdk.Duration.minutes(30),\n transitionDate: new Date(),\n }],\n};",
15056 "custom": {
15057 "exampleMetadata": "fixture=_generated"
15058 }
15059 },
15060 "fqn": "@aws-cdk/aws-s3.LifecycleRule",
15061 "kind": "interface",
15062 "locationInModule": {
15063 "filename": "lib/rule.ts",
15064 "line": 6
15065 },
15066 "name": "LifecycleRule",
15067 "properties": [
15068 {
15069 "abstract": true,
15070 "docs": {
15071 "default": "Incomplete uploads are never aborted",
15072 "remarks": "The AbortIncompleteMultipartUpload property type creates a lifecycle\nrule that aborts incomplete multipart uploads to an Amazon S3 bucket.\nWhen Amazon S3 aborts a multipart upload, it deletes all parts\nassociated with the multipart upload.",
15073 "stability": "stable",
15074 "summary": "Specifies a lifecycle rule that aborts incomplete multipart uploads to an Amazon S3 bucket."
15075 },
15076 "immutable": true,
15077 "locationInModule": {
15078 "filename": "lib/rule.ts",
15079 "line": 29
15080 },
15081 "name": "abortIncompleteMultipartUploadAfter",
15082 "optional": true,
15083 "type": {
15084 "fqn": "@aws-cdk/core.Duration"
15085 }
15086 },
15087 {
15088 "abstract": true,
15089 "docs": {
15090 "default": "true",
15091 "stability": "stable",
15092 "summary": "Whether this rule is enabled."
15093 },
15094 "immutable": true,
15095 "locationInModule": {
15096 "filename": "lib/rule.ts",
15097 "line": 17
15098 },
15099 "name": "enabled",
15100 "optional": true,
15101 "type": {
15102 "primitive": "boolean"
15103 }
15104 },
15105 {
15106 "abstract": true,
15107 "docs": {
15108 "default": "No expiration timeout",
15109 "remarks": "If you specify an expiration and transition time, you must use the same\ntime unit for both properties (either in days or by date). The\nexpiration time must also be later than the transition time.",
15110 "stability": "stable",
15111 "summary": "Indicates the number of days after creation when objects are deleted from Amazon S3 and Amazon Glacier."
15112 },
15113 "immutable": true,
15114 "locationInModule": {
15115 "filename": "lib/rule.ts",
15116 "line": 53
15117 },
15118 "name": "expiration",
15119 "optional": true,
15120 "type": {
15121 "fqn": "@aws-cdk/core.Duration"
15122 }
15123 },
15124 {
15125 "abstract": true,
15126 "docs": {
15127 "default": "No expiration date",
15128 "remarks": "The date value must be in ISO 8601 format. The time is always midnight UTC.\n\nIf you specify an expiration and transition time, you must use the same\ntime unit for both properties (either in days or by date). The\nexpiration time must also be later than the transition time.",
15129 "stability": "stable",
15130 "summary": "Indicates when objects are deleted from Amazon S3 and Amazon Glacier."
15131 },
15132 "immutable": true,
15133 "locationInModule": {
15134 "filename": "lib/rule.ts",
15135 "line": 42
15136 },
15137 "name": "expirationDate",
15138 "optional": true,
15139 "type": {
15140 "primitive": "date"
15141 }
15142 },
15143 {
15144 "abstract": true,
15145 "docs": {
15146 "default": "false",
15147 "remarks": "If set to true, the delete marker will be expired.",
15148 "stability": "stable",
15149 "summary": "Indicates whether Amazon S3 will remove a delete marker with no noncurrent versions."
15150 },
15151 "immutable": true,
15152 "locationInModule": {
15153 "filename": "lib/rule.ts",
15154 "line": 110
15155 },
15156 "name": "expiredObjectDeleteMarker",
15157 "optional": true,
15158 "type": {
15159 "primitive": "boolean"
15160 }
15161 },
15162 {
15163 "abstract": true,
15164 "docs": {
15165 "remarks": "The value cannot be more than 255 characters.",
15166 "stability": "stable",
15167 "summary": "A unique identifier for this rule."
15168 },
15169 "immutable": true,
15170 "locationInModule": {
15171 "filename": "lib/rule.ts",
15172 "line": 10
15173 },
15174 "name": "id",
15175 "optional": true,
15176 "type": {
15177 "primitive": "string"
15178 }
15179 },
15180 {
15181 "abstract": true,
15182 "docs": {
15183 "default": "No noncurrent version expiration",
15184 "remarks": "For buckets with versioning enabled (or suspended), specifies the time,\nin days, between when a new version of the object is uploaded to the\nbucket and when old versions of the object expire. When object versions\nexpire, Amazon S3 permanently deletes them. If you specify a transition\nand expiration time, the expiration time must be later than the\ntransition time.",
15185 "stability": "stable",
15186 "summary": "Time between when a new version of the object is uploaded to the bucket and when old versions of the object expire."
15187 },
15188 "immutable": true,
15189 "locationInModule": {
15190 "filename": "lib/rule.ts",
15191 "line": 67
15192 },
15193 "name": "noncurrentVersionExpiration",
15194 "optional": true,
15195 "type": {
15196 "fqn": "@aws-cdk/core.Duration"
15197 }
15198 },
15199 {
15200 "abstract": true,
15201 "docs": {
15202 "remarks": "Only for for buckets with versioning enabled (or suspended).\n\nIf you specify a transition and expiration time, the expiration time\nmust be later than the transition time.",
15203 "stability": "stable",
15204 "summary": "One or more transition rules that specify when non-current objects transition to a specified storage class."
15205 },
15206 "immutable": true,
15207 "locationInModule": {
15208 "filename": "lib/rule.ts",
15209 "line": 77
15210 },
15211 "name": "noncurrentVersionTransitions",
15212 "optional": true,
15213 "type": {
15214 "collection": {
15215 "elementtype": {
15216 "fqn": "@aws-cdk/aws-s3.NoncurrentVersionTransition"
15217 },
15218 "kind": "array"
15219 }
15220 }
15221 },
15222 {
15223 "abstract": true,
15224 "docs": {
15225 "default": "Rule applies to all objects",
15226 "stability": "stable",
15227 "summary": "Object key prefix that identifies one or more objects to which this rule applies."
15228 },
15229 "immutable": true,
15230 "locationInModule": {
15231 "filename": "lib/rule.ts",
15232 "line": 95
15233 },
15234 "name": "prefix",
15235 "optional": true,
15236 "type": {
15237 "primitive": "string"
15238 }
15239 },
15240 {
15241 "abstract": true,
15242 "docs": {
15243 "default": "Rule applies to all objects",
15244 "stability": "stable",
15245 "summary": "The TagFilter property type specifies tags to use to identify a subset of objects for an Amazon S3 bucket."
15246 },
15247 "immutable": true,
15248 "locationInModule": {
15249 "filename": "lib/rule.ts",
15250 "line": 102
15251 },
15252 "name": "tagFilters",
15253 "optional": true,
15254 "type": {
15255 "collection": {
15256 "elementtype": {
15257 "primitive": "any"
15258 },
15259 "kind": "map"
15260 }
15261 }
15262 },
15263 {
15264 "abstract": true,
15265 "docs": {
15266 "default": "No transition rules",
15267 "remarks": "If you specify an expiration and transition time, you must use the same\ntime unit for both properties (either in days or by date). The\nexpiration time must also be later than the transition time.",
15268 "stability": "stable",
15269 "summary": "One or more transition rules that specify when an object transitions to a specified storage class."
15270 },
15271 "immutable": true,
15272 "locationInModule": {
15273 "filename": "lib/rule.ts",
15274 "line": 88
15275 },
15276 "name": "transitions",
15277 "optional": true,
15278 "type": {
15279 "collection": {
15280 "elementtype": {
15281 "fqn": "@aws-cdk/aws-s3.Transition"
15282 },
15283 "kind": "array"
15284 }
15285 }
15286 }
15287 ],
15288 "symbolId": "lib/rule:LifecycleRule"
15289 },
15290 "@aws-cdk/aws-s3.Location": {
15291 "assembly": "@aws-cdk/aws-s3",
15292 "datatype": true,
15293 "docs": {
15294 "custom": {
15295 "exampleMetadata": "infused"
15296 },
15297 "example": "const startQueryExecutionJob = new tasks.AthenaStartQueryExecution(this, 'Athena Start Query', {\n queryString: sfn.JsonPath.format('select contacts where year={};', sfn.JsonPath.stringAt('$.year')),\n queryExecutionContext: {\n databaseName: 'interactions',\n },\n resultConfiguration: {\n encryptionConfiguration: {\n encryptionOption: tasks.EncryptionOption.S3_MANAGED,\n },\n outputLocation: {\n bucketName: 'mybucket',\n objectKey: 'myprefix',\n },\n },\n integrationPattern: sfn.IntegrationPattern.RUN_JOB,\n});",
15298 "stability": "stable",
15299 "summary": "An interface that represents the location of a specific object in an S3 Bucket."
15300 },
15301 "fqn": "@aws-cdk/aws-s3.Location",
15302 "kind": "interface",
15303 "locationInModule": {
15304 "filename": "lib/location.ts",
15305 "line": 4
15306 },
15307 "name": "Location",
15308 "properties": [
15309 {
15310 "abstract": true,
15311 "docs": {
15312 "stability": "stable",
15313 "summary": "The name of the S3 Bucket the object is in."
15314 },
15315 "immutable": true,
15316 "locationInModule": {
15317 "filename": "lib/location.ts",
15318 "line": 8
15319 },
15320 "name": "bucketName",
15321 "type": {
15322 "primitive": "string"
15323 }
15324 },
15325 {
15326 "abstract": true,
15327 "docs": {
15328 "stability": "stable",
15329 "summary": "The path inside the Bucket where the object is located at."
15330 },
15331 "immutable": true,
15332 "locationInModule": {
15333 "filename": "lib/location.ts",
15334 "line": 13
15335 },
15336 "name": "objectKey",
15337 "type": {
15338 "primitive": "string"
15339 }
15340 },
15341 {
15342 "abstract": true,
15343 "docs": {
15344 "stability": "stable",
15345 "summary": "The S3 object version."
15346 },
15347 "immutable": true,
15348 "locationInModule": {
15349 "filename": "lib/location.ts",
15350 "line": 18
15351 },
15352 "name": "objectVersion",
15353 "optional": true,
15354 "type": {
15355 "primitive": "string"
15356 }
15357 }
15358 ],
15359 "symbolId": "lib/location:Location"
15360 },
15361 "@aws-cdk/aws-s3.NoncurrentVersionTransition": {
15362 "assembly": "@aws-cdk/aws-s3",
15363 "datatype": true,
15364 "docs": {
15365 "stability": "stable",
15366 "summary": "Describes when noncurrent versions transition to a specified storage class.",
15367 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as cdk from '@aws-cdk/core';\n\ndeclare const storageClass: s3.StorageClass;\nconst noncurrentVersionTransition: s3.NoncurrentVersionTransition = {\n storageClass: storageClass,\n transitionAfter: cdk.Duration.minutes(30),\n\n // the properties below are optional\n noncurrentVersionsToRetain: 123,\n};",
15368 "custom": {
15369 "exampleMetadata": "fixture=_generated"
15370 }
15371 },
15372 "fqn": "@aws-cdk/aws-s3.NoncurrentVersionTransition",
15373 "kind": "interface",
15374 "locationInModule": {
15375 "filename": "lib/rule.ts",
15376 "line": 142
15377 },
15378 "name": "NoncurrentVersionTransition",
15379 "properties": [
15380 {
15381 "abstract": true,
15382 "docs": {
15383 "stability": "stable",
15384 "summary": "The storage class to which you want the object to transition."
15385 },
15386 "immutable": true,
15387 "locationInModule": {
15388 "filename": "lib/rule.ts",
15389 "line": 146
15390 },
15391 "name": "storageClass",
15392 "type": {
15393 "fqn": "@aws-cdk/aws-s3.StorageClass"
15394 }
15395 },
15396 {
15397 "abstract": true,
15398 "docs": {
15399 "default": "No transition count.",
15400 "stability": "stable",
15401 "summary": "Indicates the number of days after creation when objects are transitioned to the specified storage class."
15402 },
15403 "immutable": true,
15404 "locationInModule": {
15405 "filename": "lib/rule.ts",
15406 "line": 153
15407 },
15408 "name": "transitionAfter",
15409 "type": {
15410 "fqn": "@aws-cdk/core.Duration"
15411 }
15412 },
15413 {
15414 "abstract": true,
15415 "docs": {
15416 "default": "No noncurrent version retained.",
15417 "remarks": "Can be up to 100 noncurrent versions retained.",
15418 "stability": "stable",
15419 "summary": "Indicates the number of noncurrent version objects to be retained."
15420 },
15421 "immutable": true,
15422 "locationInModule": {
15423 "filename": "lib/rule.ts",
15424 "line": 160
15425 },
15426 "name": "noncurrentVersionsToRetain",
15427 "optional": true,
15428 "type": {
15429 "primitive": "number"
15430 }
15431 }
15432 ],
15433 "symbolId": "lib/rule:NoncurrentVersionTransition"
15434 },
15435 "@aws-cdk/aws-s3.NotificationKeyFilter": {
15436 "assembly": "@aws-cdk/aws-s3",
15437 "datatype": true,
15438 "docs": {
15439 "custom": {
15440 "exampleMetadata": "infused"
15441 },
15442 "example": "declare const myQueue: sqs.Queue;\nconst bucket = new s3.Bucket(this, 'MyBucket');\nbucket.addEventNotification(s3.EventType.OBJECT_REMOVED,\n new s3n.SqsDestination(myQueue),\n { prefix: 'foo/', suffix: '.jpg' });",
15443 "stability": "stable"
15444 },
15445 "fqn": "@aws-cdk/aws-s3.NotificationKeyFilter",
15446 "kind": "interface",
15447 "locationInModule": {
15448 "filename": "lib/bucket.ts",
15449 "line": 2423
15450 },
15451 "name": "NotificationKeyFilter",
15452 "properties": [
15453 {
15454 "abstract": true,
15455 "docs": {
15456 "stability": "stable",
15457 "summary": "S3 keys must have the specified prefix."
15458 },
15459 "immutable": true,
15460 "locationInModule": {
15461 "filename": "lib/bucket.ts",
15462 "line": 2427
15463 },
15464 "name": "prefix",
15465 "optional": true,
15466 "type": {
15467 "primitive": "string"
15468 }
15469 },
15470 {
15471 "abstract": true,
15472 "docs": {
15473 "stability": "stable",
15474 "summary": "S3 keys must have the specified suffix."
15475 },
15476 "immutable": true,
15477 "locationInModule": {
15478 "filename": "lib/bucket.ts",
15479 "line": 2432
15480 },
15481 "name": "suffix",
15482 "optional": true,
15483 "type": {
15484 "primitive": "string"
15485 }
15486 }
15487 ],
15488 "symbolId": "lib/bucket:NotificationKeyFilter"
15489 },
15490 "@aws-cdk/aws-s3.ObjectOwnership": {
15491 "assembly": "@aws-cdk/aws-s3",
15492 "docs": {
15493 "custom": {
15494 "exampleMetadata": "infused"
15495 },
15496 "example": "new s3.Bucket(this, 'MyBucket', {\n objectOwnership: s3.ObjectOwnership.OBJECT_WRITER,\n});",
15497 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html",
15498 "stability": "stable",
15499 "summary": "The ObjectOwnership of the bucket."
15500 },
15501 "fqn": "@aws-cdk/aws-s3.ObjectOwnership",
15502 "kind": "enum",
15503 "locationInModule": {
15504 "filename": "lib/bucket.ts",
15505 "line": 1225
15506 },
15507 "members": [
15508 {
15509 "docs": {
15510 "remarks": "ACLs no longer affect permissions to data in the S3 bucket.\nThe bucket uses policies to define access control.",
15511 "stability": "stable",
15512 "summary": "ACLs are disabled, and the bucket owner automatically owns and has full control over every object in the bucket."
15513 },
15514 "name": "BUCKET_OWNER_ENFORCED"
15515 },
15516 {
15517 "docs": {
15518 "stability": "stable",
15519 "summary": "Objects uploaded to the bucket change ownership to the bucket owner ."
15520 },
15521 "name": "BUCKET_OWNER_PREFERRED"
15522 },
15523 {
15524 "docs": {
15525 "stability": "stable",
15526 "summary": "The uploading account will own the object."
15527 },
15528 "name": "OBJECT_WRITER"
15529 }
15530 ],
15531 "name": "ObjectOwnership",
15532 "symbolId": "lib/bucket:ObjectOwnership"
15533 },
15534 "@aws-cdk/aws-s3.OnCloudTrailBucketEventOptions": {
15535 "assembly": "@aws-cdk/aws-s3",
15536 "datatype": true,
15537 "docs": {
15538 "stability": "stable",
15539 "summary": "Options for the onCloudTrailPutObject method.",
15540 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as events from '@aws-cdk/aws-events';\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const detail: any;\ndeclare const ruleTarget: events.IRuleTarget;\nconst onCloudTrailBucketEventOptions: s3.OnCloudTrailBucketEventOptions = {\n description: 'description',\n eventPattern: {\n account: ['account'],\n detail: {\n detailKey: detail,\n },\n detailType: ['detailType'],\n id: ['id'],\n region: ['region'],\n resources: ['resources'],\n source: ['source'],\n time: ['time'],\n version: ['version'],\n },\n paths: ['paths'],\n ruleName: 'ruleName',\n target: ruleTarget,\n};",
15541 "custom": {
15542 "exampleMetadata": "fixture=_generated"
15543 }
15544 },
15545 "fqn": "@aws-cdk/aws-s3.OnCloudTrailBucketEventOptions",
15546 "interfaces": [
15547 "@aws-cdk/aws-events.OnEventOptions"
15548 ],
15549 "kind": "interface",
15550 "locationInModule": {
15551 "filename": "lib/bucket.ts",
15552 "line": 2438
15553 },
15554 "name": "OnCloudTrailBucketEventOptions",
15555 "properties": [
15556 {
15557 "abstract": true,
15558 "docs": {
15559 "default": "- Watch changes to all objects",
15560 "stability": "stable",
15561 "summary": "Only watch changes to these object paths."
15562 },
15563 "immutable": true,
15564 "locationInModule": {
15565 "filename": "lib/bucket.ts",
15566 "line": 2444
15567 },
15568 "name": "paths",
15569 "optional": true,
15570 "type": {
15571 "collection": {
15572 "elementtype": {
15573 "primitive": "string"
15574 },
15575 "kind": "array"
15576 }
15577 }
15578 }
15579 ],
15580 "symbolId": "lib/bucket:OnCloudTrailBucketEventOptions"
15581 },
15582 "@aws-cdk/aws-s3.RedirectProtocol": {
15583 "assembly": "@aws-cdk/aws-s3",
15584 "docs": {
15585 "custom": {
15586 "exampleMetadata": "infused"
15587 },
15588 "example": "const bucket = new s3.Bucket(this, 'MyRedirectedBucket', {\n websiteRoutingRules: [{\n hostName: 'www.example.com',\n httpRedirectCode: '302',\n protocol: s3.RedirectProtocol.HTTPS,\n replaceKey: s3.ReplaceKey.prefixWith('test/'),\n condition: {\n httpErrorCodeReturnedEquals: '200',\n keyPrefixEquals: 'prefix',\n },\n }],\n});",
15589 "stability": "stable",
15590 "summary": "All http request methods."
15591 },
15592 "fqn": "@aws-cdk/aws-s3.RedirectProtocol",
15593 "kind": "enum",
15594 "locationInModule": {
15595 "filename": "lib/bucket.ts",
15596 "line": 1074
15597 },
15598 "members": [
15599 {
15600 "docs": {
15601 "stability": "stable"
15602 },
15603 "name": "HTTP"
15604 },
15605 {
15606 "docs": {
15607 "stability": "stable"
15608 },
15609 "name": "HTTPS"
15610 }
15611 ],
15612 "name": "RedirectProtocol",
15613 "symbolId": "lib/bucket:RedirectProtocol"
15614 },
15615 "@aws-cdk/aws-s3.RedirectTarget": {
15616 "assembly": "@aws-cdk/aws-s3",
15617 "datatype": true,
15618 "docs": {
15619 "custom": {
15620 "exampleMetadata": "infused"
15621 },
15622 "example": "const bucket = new s3.Bucket(this, 'MyRedirectedBucket', {\n websiteRedirect: { hostName: 'www.example.com' },\n});",
15623 "stability": "stable",
15624 "summary": "Specifies a redirect behavior of all requests to a website endpoint of a bucket."
15625 },
15626 "fqn": "@aws-cdk/aws-s3.RedirectTarget",
15627 "kind": "interface",
15628 "locationInModule": {
15629 "filename": "lib/bucket.ts",
15630 "line": 1082
15631 },
15632 "name": "RedirectTarget",
15633 "properties": [
15634 {
15635 "abstract": true,
15636 "docs": {
15637 "stability": "stable",
15638 "summary": "Name of the host where requests are redirected."
15639 },
15640 "immutable": true,
15641 "locationInModule": {
15642 "filename": "lib/bucket.ts",
15643 "line": 1086
15644 },
15645 "name": "hostName",
15646 "type": {
15647 "primitive": "string"
15648 }
15649 },
15650 {
15651 "abstract": true,
15652 "docs": {
15653 "default": "- The protocol used in the original request.",
15654 "stability": "stable",
15655 "summary": "Protocol to use when redirecting requests."
15656 },
15657 "immutable": true,
15658 "locationInModule": {
15659 "filename": "lib/bucket.ts",
15660 "line": 1093
15661 },
15662 "name": "protocol",
15663 "optional": true,
15664 "type": {
15665 "fqn": "@aws-cdk/aws-s3.RedirectProtocol"
15666 }
15667 }
15668 ],
15669 "symbolId": "lib/bucket:RedirectTarget"
15670 },
15671 "@aws-cdk/aws-s3.ReplaceKey": {
15672 "assembly": "@aws-cdk/aws-s3",
15673 "docs": {
15674 "custom": {
15675 "exampleMetadata": "infused"
15676 },
15677 "example": "const bucket = new s3.Bucket(this, 'MyRedirectedBucket', {\n websiteRoutingRules: [{\n hostName: 'www.example.com',\n httpRedirectCode: '302',\n protocol: s3.RedirectProtocol.HTTPS,\n replaceKey: s3.ReplaceKey.prefixWith('test/'),\n condition: {\n httpErrorCodeReturnedEquals: '200',\n keyPrefixEquals: 'prefix',\n },\n }],\n});",
15678 "stability": "stable"
15679 },
15680 "fqn": "@aws-cdk/aws-s3.ReplaceKey",
15681 "kind": "class",
15682 "locationInModule": {
15683 "filename": "lib/bucket.ts",
15684 "line": 2520
15685 },
15686 "methods": [
15687 {
15688 "docs": {
15689 "stability": "stable",
15690 "summary": "The object key prefix to use in the redirect request."
15691 },
15692 "locationInModule": {
15693 "filename": "lib/bucket.ts",
15694 "line": 2531
15695 },
15696 "name": "prefixWith",
15697 "parameters": [
15698 {
15699 "name": "keyReplacement",
15700 "type": {
15701 "primitive": "string"
15702 }
15703 }
15704 ],
15705 "returns": {
15706 "type": {
15707 "fqn": "@aws-cdk/aws-s3.ReplaceKey"
15708 }
15709 },
15710 "static": true
15711 },
15712 {
15713 "docs": {
15714 "stability": "stable",
15715 "summary": "The specific object key to use in the redirect request."
15716 },
15717 "locationInModule": {
15718 "filename": "lib/bucket.ts",
15719 "line": 2524
15720 },
15721 "name": "with",
15722 "parameters": [
15723 {
15724 "name": "keyReplacement",
15725 "type": {
15726 "primitive": "string"
15727 }
15728 }
15729 ],
15730 "returns": {
15731 "type": {
15732 "fqn": "@aws-cdk/aws-s3.ReplaceKey"
15733 }
15734 },
15735 "static": true
15736 }
15737 ],
15738 "name": "ReplaceKey",
15739 "properties": [
15740 {
15741 "docs": {
15742 "stability": "stable"
15743 },
15744 "immutable": true,
15745 "locationInModule": {
15746 "filename": "lib/bucket.ts",
15747 "line": 2535
15748 },
15749 "name": "prefixWithKey",
15750 "optional": true,
15751 "type": {
15752 "primitive": "string"
15753 }
15754 },
15755 {
15756 "docs": {
15757 "stability": "stable"
15758 },
15759 "immutable": true,
15760 "locationInModule": {
15761 "filename": "lib/bucket.ts",
15762 "line": 2535
15763 },
15764 "name": "withKey",
15765 "optional": true,
15766 "type": {
15767 "primitive": "string"
15768 }
15769 }
15770 ],
15771 "symbolId": "lib/bucket:ReplaceKey"
15772 },
15773 "@aws-cdk/aws-s3.RoutingRule": {
15774 "assembly": "@aws-cdk/aws-s3",
15775 "datatype": true,
15776 "docs": {
15777 "see": "https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html",
15778 "stability": "stable",
15779 "summary": "Rule that define when a redirect is applied and the redirect behavior.",
15780 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\n\ndeclare const replaceKey: s3.ReplaceKey;\nconst routingRule: s3.RoutingRule = {\n condition: {\n httpErrorCodeReturnedEquals: 'httpErrorCodeReturnedEquals',\n keyPrefixEquals: 'keyPrefixEquals',\n },\n hostName: 'hostName',\n httpRedirectCode: 'httpRedirectCode',\n protocol: s3.RedirectProtocol.HTTP,\n replaceKey: replaceKey,\n};",
15781 "custom": {
15782 "exampleMetadata": "fixture=_generated"
15783 }
15784 },
15785 "fqn": "@aws-cdk/aws-s3.RoutingRule",
15786 "kind": "interface",
15787 "locationInModule": {
15788 "filename": "lib/bucket.ts",
15789 "line": 2544
15790 },
15791 "name": "RoutingRule",
15792 "properties": [
15793 {
15794 "abstract": true,
15795 "docs": {
15796 "default": "- No condition",
15797 "stability": "stable",
15798 "summary": "Specifies a condition that must be met for the specified redirect to apply."
15799 },
15800 "immutable": true,
15801 "locationInModule": {
15802 "filename": "lib/bucket.ts",
15803 "line": 2578
15804 },
15805 "name": "condition",
15806 "optional": true,
15807 "type": {
15808 "fqn": "@aws-cdk/aws-s3.RoutingRuleCondition"
15809 }
15810 },
15811 {
15812 "abstract": true,
15813 "docs": {
15814 "default": "- The host name used in the original request.",
15815 "stability": "stable",
15816 "summary": "The host name to use in the redirect request."
15817 },
15818 "immutable": true,
15819 "locationInModule": {
15820 "filename": "lib/bucket.ts",
15821 "line": 2550
15822 },
15823 "name": "hostName",
15824 "optional": true,
15825 "type": {
15826 "primitive": "string"
15827 }
15828 },
15829 {
15830 "abstract": true,
15831 "docs": {
15832 "default": "\"301\" - Moved Permanently",
15833 "stability": "stable",
15834 "summary": "The HTTP redirect code to use on the response."
15835 },
15836 "immutable": true,
15837 "locationInModule": {
15838 "filename": "lib/bucket.ts",
15839 "line": 2557
15840 },
15841 "name": "httpRedirectCode",
15842 "optional": true,
15843 "type": {
15844 "primitive": "string"
15845 }
15846 },
15847 {
15848 "abstract": true,
15849 "docs": {
15850 "default": "- The protocol used in the original request.",
15851 "stability": "stable",
15852 "summary": "Protocol to use when redirecting requests."
15853 },
15854 "immutable": true,
15855 "locationInModule": {
15856 "filename": "lib/bucket.ts",
15857 "line": 2564
15858 },
15859 "name": "protocol",
15860 "optional": true,
15861 "type": {
15862 "fqn": "@aws-cdk/aws-s3.RedirectProtocol"
15863 }
15864 },
15865 {
15866 "abstract": true,
15867 "docs": {
15868 "default": "- The key will not be replaced",
15869 "stability": "stable",
15870 "summary": "Specifies the object key prefix to use in the redirect request."
15871 },
15872 "immutable": true,
15873 "locationInModule": {
15874 "filename": "lib/bucket.ts",
15875 "line": 2571
15876 },
15877 "name": "replaceKey",
15878 "optional": true,
15879 "type": {
15880 "fqn": "@aws-cdk/aws-s3.ReplaceKey"
15881 }
15882 }
15883 ],
15884 "symbolId": "lib/bucket:RoutingRule"
15885 },
15886 "@aws-cdk/aws-s3.RoutingRuleCondition": {
15887 "assembly": "@aws-cdk/aws-s3",
15888 "datatype": true,
15889 "docs": {
15890 "custom": {
15891 "exampleMetadata": "infused"
15892 },
15893 "example": "const bucket = new s3.Bucket(this, 'MyRedirectedBucket', {\n websiteRoutingRules: [{\n hostName: 'www.example.com',\n httpRedirectCode: '302',\n protocol: s3.RedirectProtocol.HTTPS,\n replaceKey: s3.ReplaceKey.prefixWith('test/'),\n condition: {\n httpErrorCodeReturnedEquals: '200',\n keyPrefixEquals: 'prefix',\n },\n }],\n});",
15894 "stability": "stable"
15895 },
15896 "fqn": "@aws-cdk/aws-s3.RoutingRuleCondition",
15897 "kind": "interface",
15898 "locationInModule": {
15899 "filename": "lib/bucket.ts",
15900 "line": 2498
15901 },
15902 "name": "RoutingRuleCondition",
15903 "properties": [
15904 {
15905 "abstract": true,
15906 "docs": {
15907 "default": "- The HTTP error code will not be verified",
15908 "remarks": "In the event of an error, if the error code equals this value, then the specified redirect is applied.\n\nIf both condition properties are specified, both must be true for the redirect to be applied.",
15909 "stability": "stable",
15910 "summary": "The HTTP error code when the redirect is applied."
15911 },
15912 "immutable": true,
15913 "locationInModule": {
15914 "filename": "lib/bucket.ts",
15915 "line": 2508
15916 },
15917 "name": "httpErrorCodeReturnedEquals",
15918 "optional": true,
15919 "type": {
15920 "primitive": "string"
15921 }
15922 },
15923 {
15924 "abstract": true,
15925 "docs": {
15926 "default": "- The object key name will not be verified",
15927 "remarks": "If both condition properties are specified, both must be true for the redirect to be applied.",
15928 "stability": "stable",
15929 "summary": "The object key name prefix when the redirect is applied."
15930 },
15931 "immutable": true,
15932 "locationInModule": {
15933 "filename": "lib/bucket.ts",
15934 "line": 2517
15935 },
15936 "name": "keyPrefixEquals",
15937 "optional": true,
15938 "type": {
15939 "primitive": "string"
15940 }
15941 }
15942 ],
15943 "symbolId": "lib/bucket:RoutingRuleCondition"
15944 },
15945 "@aws-cdk/aws-s3.StorageClass": {
15946 "assembly": "@aws-cdk/aws-s3",
15947 "docs": {
15948 "stability": "stable",
15949 "summary": "Storage class to move an object to.",
15950 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst storageClass = s3.StorageClass.DEEP_ARCHIVE;",
15951 "custom": {
15952 "exampleMetadata": "fixture=_generated"
15953 }
15954 },
15955 "fqn": "@aws-cdk/aws-s3.StorageClass",
15956 "initializer": {
15957 "docs": {
15958 "stability": "stable"
15959 },
15960 "locationInModule": {
15961 "filename": "lib/rule.ts",
15962 "line": 227
15963 },
15964 "parameters": [
15965 {
15966 "name": "value",
15967 "type": {
15968 "primitive": "string"
15969 }
15970 }
15971 ]
15972 },
15973 "kind": "class",
15974 "locationInModule": {
15975 "filename": "lib/rule.ts",
15976 "line": 166
15977 },
15978 "methods": [
15979 {
15980 "docs": {
15981 "stability": "stable"
15982 },
15983 "locationInModule": {
15984 "filename": "lib/rule.ts",
15985 "line": 229
15986 },
15987 "name": "toString",
15988 "returns": {
15989 "type": {
15990 "primitive": "string"
15991 }
15992 }
15993 }
15994 ],
15995 "name": "StorageClass",
15996 "properties": [
15997 {
15998 "const": true,
15999 "docs": {
16000 "remarks": "Data stored in the\nDEEP_ARCHIVE storage class has a minimum storage duration period of 180\ndays and a default retrieval time of 12 hours. If you delete an object\nbefore the 180-day minimum, you are charged for 180 days. For pricing\ninformation, see Amazon S3 Pricing.",
16001 "stability": "stable",
16002 "summary": "Use for archiving data that rarely needs to be accessed."
16003 },
16004 "immutable": true,
16005 "locationInModule": {
16006 "filename": "lib/rule.ts",
16007 "line": 212
16008 },
16009 "name": "DEEP_ARCHIVE",
16010 "static": true,
16011 "type": {
16012 "fqn": "@aws-cdk/aws-s3.StorageClass"
16013 }
16014 },
16015 {
16016 "const": true,
16017 "docs": {
16018 "remarks": "Use for archives where portions of the data might need to be retrieved in\nminutes. Data stored in the GLACIER storage class has a minimum storage\nduration period of 90 days and can be accessed in as little as 1-5 minutes\nusing expedited retrieval. If you delete an object before the 90-day\nminimum, you are charged for 90 days.",
16019 "stability": "stable",
16020 "summary": "Storage class for long-term archival that can take between minutes and hours to access."
16021 },
16022 "immutable": true,
16023 "locationInModule": {
16024 "filename": "lib/rule.ts",
16025 "line": 192
16026 },
16027 "name": "GLACIER",
16028 "static": true,
16029 "type": {
16030 "fqn": "@aws-cdk/aws-s3.StorageClass"
16031 }
16032 },
16033 {
16034 "const": true,
16035 "docs": {
16036 "remarks": "It is ideal for data that is accessed once or twice per quarter, and\nthat requires immediate access. Data stored in the GLACIER_IR storage class\nhas a minimum storage duration period of 90 days and can be accessed in\nas milliseconds. If you delete an object before the 90-day minimum,\nyou are charged for 90 days.",
16037 "stability": "stable",
16038 "summary": "Storage class for long-term archival that can be accessed in a few milliseconds."
16039 },
16040 "immutable": true,
16041 "locationInModule": {
16042 "filename": "lib/rule.ts",
16043 "line": 203
16044 },
16045 "name": "GLACIER_INSTANT_RETRIEVAL",
16046 "static": true,
16047 "type": {
16048 "fqn": "@aws-cdk/aws-s3.StorageClass"
16049 }
16050 },
16051 {
16052 "const": true,
16053 "docs": {
16054 "remarks": "Has lower availability than Standard storage.",
16055 "stability": "stable",
16056 "summary": "Storage class for data that is accessed less frequently, but requires rapid access when needed."
16057 },
16058 "immutable": true,
16059 "locationInModule": {
16060 "filename": "lib/rule.ts",
16061 "line": 173
16062 },
16063 "name": "INFREQUENT_ACCESS",
16064 "static": true,
16065 "type": {
16066 "fqn": "@aws-cdk/aws-s3.StorageClass"
16067 }
16068 },
16069 {
16070 "const": true,
16071 "docs": {
16072 "remarks": "INTELLIGENT_TIERING delivers automatic cost savings by moving data on a\ngranular object level between two access tiers, a frequent access tier and\na lower-cost infrequent access tier, when access patterns change. The\nINTELLIGENT_TIERING storage class is ideal if you want to optimize storage\ncosts automatically for long-lived data when access patterns are unknown or\nunpredictable.",
16073 "stability": "stable",
16074 "summary": "The INTELLIGENT_TIERING storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead."
16075 },
16076 "immutable": true,
16077 "locationInModule": {
16078 "filename": "lib/rule.ts",
16079 "line": 225
16080 },
16081 "name": "INTELLIGENT_TIERING",
16082 "static": true,
16083 "type": {
16084 "fqn": "@aws-cdk/aws-s3.StorageClass"
16085 }
16086 },
16087 {
16088 "const": true,
16089 "docs": {
16090 "remarks": "Has lower availability than standard InfrequentAccess.",
16091 "stability": "stable",
16092 "summary": "Infrequent Access that's only stored in one availability zone."
16093 },
16094 "immutable": true,
16095 "locationInModule": {
16096 "filename": "lib/rule.ts",
16097 "line": 180
16098 },
16099 "name": "ONE_ZONE_INFREQUENT_ACCESS",
16100 "static": true,
16101 "type": {
16102 "fqn": "@aws-cdk/aws-s3.StorageClass"
16103 }
16104 },
16105 {
16106 "docs": {
16107 "stability": "stable"
16108 },
16109 "immutable": true,
16110 "locationInModule": {
16111 "filename": "lib/rule.ts",
16112 "line": 227
16113 },
16114 "name": "value",
16115 "type": {
16116 "primitive": "string"
16117 }
16118 }
16119 ],
16120 "symbolId": "lib/rule:StorageClass"
16121 },
16122 "@aws-cdk/aws-s3.Tag": {
16123 "assembly": "@aws-cdk/aws-s3",
16124 "datatype": true,
16125 "docs": {
16126 "stability": "stable",
16127 "summary": "Tag.",
16128 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst tag: s3.Tag = {\n key: 'key',\n value: 'value',\n};",
16129 "custom": {
16130 "exampleMetadata": "fixture=_generated"
16131 }
16132 },
16133 "fqn": "@aws-cdk/aws-s3.Tag",
16134 "kind": "interface",
16135 "locationInModule": {
16136 "filename": "lib/bucket.ts",
16137 "line": 1509
16138 },
16139 "name": "Tag",
16140 "properties": [
16141 {
16142 "abstract": true,
16143 "docs": {
16144 "stability": "stable",
16145 "summary": "key to e tagged."
16146 },
16147 "immutable": true,
16148 "locationInModule": {
16149 "filename": "lib/bucket.ts",
16150 "line": 1514
16151 },
16152 "name": "key",
16153 "type": {
16154 "primitive": "string"
16155 }
16156 },
16157 {
16158 "abstract": true,
16159 "docs": {
16160 "stability": "stable",
16161 "summary": "additional value."
16162 },
16163 "immutable": true,
16164 "locationInModule": {
16165 "filename": "lib/bucket.ts",
16166 "line": 1518
16167 },
16168 "name": "value",
16169 "type": {
16170 "primitive": "string"
16171 }
16172 }
16173 ],
16174 "symbolId": "lib/bucket:Tag"
16175 },
16176 "@aws-cdk/aws-s3.TransferAccelerationUrlOptions": {
16177 "assembly": "@aws-cdk/aws-s3",
16178 "datatype": true,
16179 "docs": {
16180 "stability": "stable",
16181 "summary": "Options for creating a Transfer Acceleration URL.",
16182 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nconst transferAccelerationUrlOptions: s3.TransferAccelerationUrlOptions = {\n dualStack: false,\n};",
16183 "custom": {
16184 "exampleMetadata": "fixture=_generated"
16185 }
16186 },
16187 "fqn": "@aws-cdk/aws-s3.TransferAccelerationUrlOptions",
16188 "kind": "interface",
16189 "locationInModule": {
16190 "filename": "lib/bucket.ts",
16191 "line": 2596
16192 },
16193 "name": "TransferAccelerationUrlOptions",
16194 "properties": [
16195 {
16196 "abstract": true,
16197 "docs": {
16198 "default": "- false",
16199 "stability": "stable",
16200 "summary": "Dual-stack support to connect to the bucket over IPv6."
16201 },
16202 "immutable": true,
16203 "locationInModule": {
16204 "filename": "lib/bucket.ts",
16205 "line": 2602
16206 },
16207 "name": "dualStack",
16208 "optional": true,
16209 "type": {
16210 "primitive": "boolean"
16211 }
16212 }
16213 ],
16214 "symbolId": "lib/bucket:TransferAccelerationUrlOptions"
16215 },
16216 "@aws-cdk/aws-s3.Transition": {
16217 "assembly": "@aws-cdk/aws-s3",
16218 "datatype": true,
16219 "docs": {
16220 "stability": "stable",
16221 "summary": "Describes when an object transitions to a specified storage class.",
16222 "example": "// The code below shows an example of how to instantiate this type.\n// The values are placeholders you should change.\nimport * as s3 from '@aws-cdk/aws-s3';\nimport * as cdk from '@aws-cdk/core';\n\ndeclare const storageClass: s3.StorageClass;\nconst transition: s3.Transition = {\n storageClass: storageClass,\n\n // the properties below are optional\n transitionAfter: cdk.Duration.minutes(30),\n transitionDate: new Date(),\n};",
16223 "custom": {
16224 "exampleMetadata": "fixture=_generated"
16225 }
16226 },
16227 "fqn": "@aws-cdk/aws-s3.Transition",
16228 "kind": "interface",
16229 "locationInModule": {
16230 "filename": "lib/rule.ts",
16231 "line": 116
16232 },
16233 "name": "Transition",
16234 "properties": [
16235 {
16236 "abstract": true,
16237 "docs": {
16238 "stability": "stable",
16239 "summary": "The storage class to which you want the object to transition."
16240 },
16241 "immutable": true,
16242 "locationInModule": {
16243 "filename": "lib/rule.ts",
16244 "line": 120
16245 },
16246 "name": "storageClass",
16247 "type": {
16248 "fqn": "@aws-cdk/aws-s3.StorageClass"
16249 }
16250 },
16251 {
16252 "abstract": true,
16253 "docs": {
16254 "default": "No transition count.",
16255 "stability": "stable",
16256 "summary": "Indicates the number of days after creation when objects are transitioned to the specified storage class."
16257 },
16258 "immutable": true,
16259 "locationInModule": {
16260 "filename": "lib/rule.ts",
16261 "line": 136
16262 },
16263 "name": "transitionAfter",
16264 "optional": true,
16265 "type": {
16266 "fqn": "@aws-cdk/core.Duration"
16267 }
16268 },
16269 {
16270 "abstract": true,
16271 "docs": {
16272 "default": "No transition date.",
16273 "remarks": "The date value must be in ISO 8601 format. The time is always midnight UTC.",
16274 "stability": "stable",
16275 "summary": "Indicates when objects are transitioned to the specified storage class."
16276 },
16277 "immutable": true,
16278 "locationInModule": {
16279 "filename": "lib/rule.ts",
16280 "line": 129
16281 },
16282 "name": "transitionDate",
16283 "optional": true,
16284 "type": {
16285 "primitive": "date"
16286 }
16287 }
16288 ],
16289 "symbolId": "lib/rule:Transition"
16290 },
16291 "@aws-cdk/aws-s3.VirtualHostedStyleUrlOptions": {
16292 "assembly": "@aws-cdk/aws-s3",
16293 "datatype": true,
16294 "docs": {
16295 "custom": {
16296 "exampleMetadata": "infused"
16297 },
16298 "example": "const bucket = new s3.Bucket(this, 'MyBucket');\nbucket.urlForObject('objectname'); // Path-Style URL\nbucket.virtualHostedUrlForObject('objectname'); // Virtual Hosted-Style URL\nbucket.virtualHostedUrlForObject('objectname', { regional: false }); // Virtual Hosted-Style URL but non-regional",
16299 "stability": "stable",
16300 "summary": "Options for creating Virtual-Hosted style URL."
16301 },
16302 "fqn": "@aws-cdk/aws-s3.VirtualHostedStyleUrlOptions",
16303 "kind": "interface",
16304 "locationInModule": {
16305 "filename": "lib/bucket.ts",
16306 "line": 2584
16307 },
16308 "name": "VirtualHostedStyleUrlOptions",
16309 "properties": [
16310 {
16311 "abstract": true,
16312 "docs": {
16313 "default": "- true",
16314 "stability": "stable",
16315 "summary": "Specifies the URL includes the region."
16316 },
16317 "immutable": true,
16318 "locationInModule": {
16319 "filename": "lib/bucket.ts",
16320 "line": 2590
16321 },
16322 "name": "regional",
16323 "optional": true,
16324 "type": {
16325 "primitive": "boolean"
16326 }
16327 }
16328 ],
16329 "symbolId": "lib/bucket:VirtualHostedStyleUrlOptions"
16330 }
16331 },
16332 "version": "1.156.1",
16333 "fingerprint": "**********"
16334}