@pulumi/aws 7.0.0-alpha.1 → 7.0.0-alpha.1752855061

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (247) hide show
  1. package/accessanalyzer/analyzer.d.ts +54 -7
  2. package/accessanalyzer/analyzer.js +48 -1
  3. package/accessanalyzer/analyzer.js.map +1 -1
  4. package/amp/index.d.ts +3 -0
  5. package/amp/index.js +6 -1
  6. package/amp/index.js.map +1 -1
  7. package/amp/queryLoggingConfiguration.d.ts +107 -0
  8. package/amp/queryLoggingConfiguration.js +82 -0
  9. package/amp/queryLoggingConfiguration.js.map +1 -0
  10. package/amplify/app.d.ts +26 -0
  11. package/amplify/app.js +16 -0
  12. package/amplify/app.js.map +1 -1
  13. package/amplify/branch.d.ts +12 -0
  14. package/amplify/branch.js +2 -0
  15. package/amplify/branch.js.map +1 -1
  16. package/bedrock/agentAgent.d.ts +2 -2
  17. package/bedrock/agentAgent.js +2 -2
  18. package/bedrock/agentAgentCollaborator.d.ts +4 -4
  19. package/bedrock/agentAgentCollaborator.js +4 -4
  20. package/cloudfront/distribution.d.ts +12 -0
  21. package/cloudfront/distribution.js +2 -0
  22. package/cloudfront/distribution.js.map +1 -1
  23. package/cloudfront/getDistribution.d.ts +4 -0
  24. package/cloudfront/getDistribution.js.map +1 -1
  25. package/cloudtrail/trail.d.ts +2 -2
  26. package/cloudtrail/trail.js +2 -2
  27. package/cloudwatch/eventArchive.d.ts +91 -15
  28. package/cloudwatch/eventArchive.js +67 -1
  29. package/cloudwatch/eventArchive.js.map +1 -1
  30. package/cloudwatch/logGroup.d.ts +6 -6
  31. package/codeartifact/domainPermissions.d.ts +1 -1
  32. package/codeartifact/domainPermissions.js +0 -3
  33. package/codeartifact/domainPermissions.js.map +1 -1
  34. package/connect/botAssociation.d.ts +1 -1
  35. package/connect/botAssociation.js +1 -1
  36. package/controltower/controlTowerControl.d.ts +1 -1
  37. package/controltower/controlTowerControl.js +1 -1
  38. package/cur/reportDefinition.d.ts +3 -3
  39. package/datasync/agent.d.ts +1 -1
  40. package/datasync/agent.js +1 -1
  41. package/dynamodb/table.d.ts +36 -1
  42. package/dynamodb/table.js +36 -1
  43. package/dynamodb/table.js.map +1 -1
  44. package/dynamodb/tag.d.ts +1 -1
  45. package/dynamodb/tag.js +1 -1
  46. package/ec2/getManagedPrefixList.d.ts +2 -2
  47. package/ec2/getManagedPrefixList.js +2 -2
  48. package/ec2/securityGroupRule.d.ts +1 -1
  49. package/ec2/securityGroupRule.js +1 -1
  50. package/ec2/vpc.d.ts +2 -2
  51. package/ec2/vpc.js +2 -2
  52. package/ec2/vpcIpam.d.ts +1 -1
  53. package/ec2/vpcIpam.js +1 -1
  54. package/ec2/vpcIpamPool.d.ts +4 -4
  55. package/ec2/vpcIpamPool.js +4 -4
  56. package/ec2/vpcIpamPoolCidr.d.ts +3 -3
  57. package/ec2/vpcIpamPoolCidr.js +3 -3
  58. package/ec2/vpcIpamPoolCidrAllocation.d.ts +4 -4
  59. package/ec2/vpcIpamPoolCidrAllocation.js +4 -4
  60. package/ec2/vpcIpamPreviewNextCidr.d.ts +2 -2
  61. package/ec2/vpcIpamPreviewNextCidr.js +2 -2
  62. package/ec2/vpcIpamResourceDiscovery.d.ts +1 -1
  63. package/ec2/vpcIpamResourceDiscovery.js +1 -1
  64. package/ec2/vpcIpamScope.d.ts +1 -1
  65. package/ec2/vpcIpamScope.js +1 -1
  66. package/ecr/index.d.ts +1 -0
  67. package/ecr/index.js +1 -0
  68. package/ecr/index.js.map +1 -1
  69. package/ecr/lifecyclePolicyDocument.d.ts +5 -0
  70. package/ecr/lifecyclePolicyDocument.js +3 -0
  71. package/ecr/lifecyclePolicyDocument.js.map +1 -0
  72. package/ecr/registryPolicy.d.ts +1 -1
  73. package/ecr/registryPolicy.js +1 -1
  74. package/eks/cluster.d.ts +2 -4
  75. package/eks/cluster.js +0 -2
  76. package/eks/cluster.js.map +1 -1
  77. package/eks/podIdentityAssociation.d.ts +32 -0
  78. package/eks/podIdentityAssociation.js +6 -0
  79. package/eks/podIdentityAssociation.js.map +1 -1
  80. package/elasticsearch/domain.d.ts +2 -2
  81. package/elasticsearch/domain.js +2 -2
  82. package/emr/cluster.d.ts +12 -0
  83. package/emr/cluster.js +2 -0
  84. package/emr/cluster.js.map +1 -1
  85. package/fms/policy.d.ts +12 -0
  86. package/fms/policy.js +2 -0
  87. package/fms/policy.js.map +1 -1
  88. package/getRegion.d.ts +2 -2
  89. package/getService.d.ts +2 -2
  90. package/getService.js +2 -2
  91. package/glue/job.d.ts +12 -0
  92. package/glue/job.js +2 -0
  93. package/glue/job.js.map +1 -1
  94. package/glue/resourcePolicy.d.ts +1 -1
  95. package/glue/resourcePolicy.js +1 -1
  96. package/guardduty/detectorFeature.d.ts +21 -0
  97. package/guardduty/detectorFeature.js +21 -0
  98. package/guardduty/detectorFeature.js.map +1 -1
  99. package/guardduty/memberDetectorFeature.d.ts +1 -11
  100. package/guardduty/memberDetectorFeature.js +1 -11
  101. package/guardduty/memberDetectorFeature.js.map +1 -1
  102. package/guardduty/publishingDestination.d.ts +2 -2
  103. package/guardduty/publishingDestination.js +2 -2
  104. package/iam/documents.d.ts +5 -0
  105. package/iam/rolePolicy.d.ts +21 -15
  106. package/iam/rolePolicy.js.map +1 -1
  107. package/imagebuilder/imageRecipe.d.ts +1 -1
  108. package/imagebuilder/imageRecipe.js +1 -1
  109. package/kinesis/firehoseDeliveryStream.d.ts +1 -1
  110. package/kinesis/firehoseDeliveryStream.js +1 -1
  111. package/kinesis/getStreamConsumer.d.ts +9 -0
  112. package/kinesis/getStreamConsumer.js +2 -0
  113. package/kinesis/getStreamConsumer.js.map +1 -1
  114. package/kinesis/streamConsumer.d.ts +15 -0
  115. package/kinesis/streamConsumer.js +4 -0
  116. package/kinesis/streamConsumer.js.map +1 -1
  117. package/kms/getKey.d.ts +1 -1
  118. package/kms/key.d.ts +3 -3
  119. package/lightsail/instancePublicPorts.d.ts +6 -6
  120. package/macie/findingsFilter.d.ts +1 -1
  121. package/macie/findingsFilter.js +1 -1
  122. package/mediastore/containerPolicy.d.ts +1 -1
  123. package/mediastore/containerPolicy.js +1 -1
  124. package/networkfirewall/firewallPolicy.d.ts +51 -2
  125. package/networkfirewall/firewallPolicy.js +51 -2
  126. package/networkfirewall/firewallPolicy.js.map +1 -1
  127. package/networkmanager/dxGatewayAttachment.d.ts +1 -1
  128. package/networkmanager/dxGatewayAttachment.js +1 -1
  129. package/opensearch/domain.d.ts +2 -2
  130. package/opensearch/domain.js +2 -2
  131. package/opensearch/inboundConnectionAccepter.d.ts +2 -2
  132. package/opensearch/inboundConnectionAccepter.js +2 -2
  133. package/opensearch/outboundConnection.d.ts +2 -2
  134. package/opensearch/outboundConnection.js +2 -2
  135. package/opensearchingest/pipeline.d.ts +1 -1
  136. package/opensearchingest/pipeline.js +1 -1
  137. package/package.json +2 -2
  138. package/quicksight/dataSource.d.ts +1 -1
  139. package/quicksight/dataSource.js +1 -1
  140. package/rbin/rule.d.ts +52 -17
  141. package/rbin/rule.js +26 -1
  142. package/rbin/rule.js.map +1 -1
  143. package/route53/getTrafficPolicyDocument.d.ts +4 -4
  144. package/route53/getTrafficPolicyDocument.js +4 -4
  145. package/route53/profilesResourceAssociation.d.ts +1 -1
  146. package/s3/bucket.d.ts +5 -4
  147. package/s3/bucketAccelerateConfiguration.js +1 -1
  148. package/s3/bucketAccelerateConfiguration.js.map +1 -1
  149. package/s3/bucketAccelerateConfigurationV2.d.ts +122 -0
  150. package/s3/bucketAccelerateConfigurationV2.js +103 -0
  151. package/s3/bucketAccelerateConfigurationV2.js.map +1 -0
  152. package/s3/bucketAcl.js +1 -1
  153. package/s3/bucketAcl.js.map +1 -1
  154. package/s3/bucketAclV2.d.ts +241 -0
  155. package/s3/bucketAclV2.js +207 -0
  156. package/s3/bucketAclV2.js.map +1 -0
  157. package/s3/bucketCorsConfiguration.js +1 -1
  158. package/s3/bucketCorsConfiguration.js.map +1 -1
  159. package/s3/bucketCorsConfigurationV2.d.ts +141 -0
  160. package/s3/bucketCorsConfigurationV2.js +120 -0
  161. package/s3/bucketCorsConfigurationV2.js.map +1 -0
  162. package/s3/bucketLifecycleConfiguration.js +1 -1
  163. package/s3/bucketLifecycleConfiguration.js.map +1 -1
  164. package/s3/bucketLifecycleConfigurationV2.d.ts +437 -0
  165. package/s3/bucketLifecycleConfigurationV2.js +402 -0
  166. package/s3/bucketLifecycleConfigurationV2.js.map +1 -0
  167. package/s3/bucketLogging.js +1 -1
  168. package/s3/bucketLogging.js.map +1 -1
  169. package/s3/bucketLoggingV2.d.ts +174 -0
  170. package/s3/bucketLoggingV2.js +126 -0
  171. package/s3/bucketLoggingV2.js.map +1 -0
  172. package/s3/bucketObjectLockConfiguration.js +1 -1
  173. package/s3/bucketObjectLockConfiguration.js.map +1 -1
  174. package/s3/bucketObjectLockConfigurationV2.d.ts +164 -0
  175. package/s3/bucketObjectLockConfigurationV2.js +119 -0
  176. package/s3/bucketObjectLockConfigurationV2.js.map +1 -0
  177. package/s3/bucketPolicy.d.ts +2 -0
  178. package/s3/bucketPolicy.js +2 -0
  179. package/s3/bucketPolicy.js.map +1 -1
  180. package/s3/bucketRequestPaymentConfiguration.js +1 -1
  181. package/s3/bucketRequestPaymentConfiguration.js.map +1 -1
  182. package/s3/bucketRequestPaymentConfigurationV2.d.ts +123 -0
  183. package/s3/bucketRequestPaymentConfigurationV2.js +104 -0
  184. package/s3/bucketRequestPaymentConfigurationV2.js.map +1 -0
  185. package/s3/bucketServerSideEncryptionConfiguration.js +1 -1
  186. package/s3/bucketServerSideEncryptionConfiguration.js.map +1 -1
  187. package/s3/bucketServerSideEncryptionConfigurationV2.d.ts +133 -0
  188. package/s3/bucketServerSideEncryptionConfigurationV2.js +112 -0
  189. package/s3/bucketServerSideEncryptionConfigurationV2.js.map +1 -0
  190. package/s3/bucketV2.d.ts +518 -0
  191. package/s3/bucketV2.js +138 -0
  192. package/s3/bucketV2.js.map +1 -0
  193. package/s3/bucketVersioning.js +1 -1
  194. package/s3/bucketVersioning.js.map +1 -1
  195. package/s3/bucketVersioningV2.d.ts +195 -0
  196. package/s3/bucketVersioningV2.js +164 -0
  197. package/s3/bucketVersioningV2.js.map +1 -0
  198. package/s3/bucketWebsiteConfiguration.js +1 -1
  199. package/s3/bucketWebsiteConfiguration.js.map +1 -1
  200. package/s3/bucketWebsiteConfigurationV2.d.ts +231 -0
  201. package/s3/bucketWebsiteConfigurationV2.js +152 -0
  202. package/s3/bucketWebsiteConfigurationV2.js.map +1 -0
  203. package/s3/directoryBucket.d.ts +30 -0
  204. package/s3/directoryBucket.js +4 -0
  205. package/s3/directoryBucket.js.map +1 -1
  206. package/s3/index.d.ts +33 -0
  207. package/s3/index.js +57 -1
  208. package/s3/index.js.map +1 -1
  209. package/s3tables/table.d.ts +62 -0
  210. package/s3tables/table.js +49 -0
  211. package/s3tables/table.js.map +1 -1
  212. package/sagemaker/flowDefinition.d.ts +1 -1
  213. package/sagemaker/flowDefinition.js +1 -1
  214. package/securityhub/productSubscription.d.ts +1 -1
  215. package/securityhub/productSubscription.js +1 -1
  216. package/securityhub/standardsSubscription.d.ts +1 -1
  217. package/securityhub/standardsSubscription.js +1 -1
  218. package/serverlessrepository/cloudFormationStack.d.ts +1 -1
  219. package/serverlessrepository/cloudFormationStack.js +1 -1
  220. package/shield/drtAccessLogBucketAssociation.d.ts +1 -1
  221. package/shield/drtAccessLogBucketAssociation.js +1 -1
  222. package/shield/protection.d.ts +1 -1
  223. package/shield/protection.js +1 -1
  224. package/shield/protectionGroup.d.ts +2 -2
  225. package/shield/protectionGroup.js +2 -2
  226. package/shield/protectionHealthCheckAssociation.d.ts +1 -1
  227. package/shield/protectionHealthCheckAssociation.js +1 -1
  228. package/ssm/parameter.d.ts +1 -1
  229. package/ssm/quicksetupConfigurationManager.d.ts +2 -2
  230. package/ssm/quicksetupConfigurationManager.js +2 -2
  231. package/ssoadmin/applicationAccessScope.d.ts +1 -1
  232. package/ssoadmin/applicationAccessScope.js +1 -1
  233. package/ssoadmin/applicationAssignment.d.ts +2 -2
  234. package/ssoadmin/applicationAssignment.js +2 -2
  235. package/ssoadmin/applicationAssignmentConfiguration.d.ts +1 -1
  236. package/ssoadmin/applicationAssignmentConfiguration.js +1 -1
  237. package/ssoadmin/getApplicationAssignments.d.ts +2 -2
  238. package/ssoadmin/getApplicationAssignments.js +2 -2
  239. package/types/enums/index.d.ts +1 -0
  240. package/types/enums/index.js +1 -0
  241. package/types/enums/index.js.map +1 -1
  242. package/types/input.d.ts +977 -34
  243. package/types/input.js +1 -20
  244. package/types/input.js.map +1 -1
  245. package/types/output.d.ts +971 -35
  246. package/types/output.js +1 -20
  247. package/types/output.js.map +1 -1
package/types/input.d.ts CHANGED
@@ -1336,33 +1336,63 @@ export interface ProviderIgnoreTags {
1336
1336
  export declare namespace accessanalyzer {
1337
1337
  interface AnalyzerConfiguration {
1338
1338
  /**
1339
- * A block that specifies the configuration of an unused access analyzer for an AWS organization or account. Documented below
1339
+ * Specifies the configuration of an internal access analyzer for an AWS organization or account. This configuration determines how the analyzer evaluates access within your AWS environment. See `internalAccess` Block for details.
1340
+ */
1341
+ internalAccess?: pulumi.Input<inputs.accessanalyzer.AnalyzerConfigurationInternalAccess>;
1342
+ /**
1343
+ * Specifies the configuration of an unused access analyzer for an AWS organization or account. See `unusedAccess` Block for details.
1340
1344
  */
1341
1345
  unusedAccess?: pulumi.Input<inputs.accessanalyzer.AnalyzerConfigurationUnusedAccess>;
1342
1346
  }
1347
+ interface AnalyzerConfigurationInternalAccess {
1348
+ /**
1349
+ * Information about analysis rules for the internal access analyzer. These rules determine which resources and access patterns will be analyzed. See `analysisRule` Block for Internal Access Analyzer for details.
1350
+ */
1351
+ analysisRule?: pulumi.Input<inputs.accessanalyzer.AnalyzerConfigurationInternalAccessAnalysisRule>;
1352
+ }
1353
+ interface AnalyzerConfigurationInternalAccessAnalysisRule {
1354
+ /**
1355
+ * List of rules for the internal access analyzer containing criteria to include in analysis. Only resources that meet the rule criteria will generate findings. See `inclusion` Block for details.
1356
+ */
1357
+ inclusions?: pulumi.Input<pulumi.Input<inputs.accessanalyzer.AnalyzerConfigurationInternalAccessAnalysisRuleInclusion>[]>;
1358
+ }
1359
+ interface AnalyzerConfigurationInternalAccessAnalysisRuleInclusion {
1360
+ /**
1361
+ * List of AWS account IDs to apply to the internal access analysis rule criteria. Account IDs can only be applied to the analysis rule criteria for organization-level analyzers.
1362
+ */
1363
+ accountIds?: pulumi.Input<pulumi.Input<string>[]>;
1364
+ /**
1365
+ * List of resource ARNs to apply to the internal access analysis rule criteria. The analyzer will only generate findings for resources that match these ARNs.
1366
+ */
1367
+ resourceArns?: pulumi.Input<pulumi.Input<string>[]>;
1368
+ /**
1369
+ * List of resource types to apply to the internal access analysis rule criteria. The analyzer will only generate findings for resources of these types. Refer to [InternalAccessAnalysisRuleCriteria](https://docs.aws.amazon.com/access-analyzer/latest/APIReference/API_InternalAccessAnalysisRuleCriteria.html) in the AWS IAM Access Analyzer API Reference for valid values.
1370
+ */
1371
+ resourceTypes?: pulumi.Input<pulumi.Input<string>[]>;
1372
+ }
1343
1373
  interface AnalyzerConfigurationUnusedAccess {
1344
1374
  /**
1345
- * A block for analysis rules. Documented below
1375
+ * Information about analysis rules for the analyzer. Analysis rules determine which entities will generate findings based on the criteria you define when you create the rule. See `analysisRule` Block for Unused Access Analyzer for details.
1346
1376
  */
1347
1377
  analysisRule?: pulumi.Input<inputs.accessanalyzer.AnalyzerConfigurationUnusedAccessAnalysisRule>;
1348
1378
  /**
1349
- * The specified access age in days for which to generate findings for unused access.
1379
+ * Specified access age in days for which to generate findings for unused access.
1350
1380
  */
1351
1381
  unusedAccessAge?: pulumi.Input<number>;
1352
1382
  }
1353
1383
  interface AnalyzerConfigurationUnusedAccessAnalysisRule {
1354
1384
  /**
1355
- * A block for the analyzer rules containing criteria to exclude from analysis. Documented below
1385
+ * List of rules for the analyzer containing criteria to exclude from analysis. Entities that meet the rule criteria will not generate findings. See `exclusion` Block for details.
1356
1386
  */
1357
1387
  exclusions?: pulumi.Input<pulumi.Input<inputs.accessanalyzer.AnalyzerConfigurationUnusedAccessAnalysisRuleExclusion>[]>;
1358
1388
  }
1359
1389
  interface AnalyzerConfigurationUnusedAccessAnalysisRuleExclusion {
1360
1390
  /**
1361
- * A list of account IDs to exclude from the analysis.
1391
+ * List of AWS account IDs to apply to the analysis rule criteria. The accounts cannot include the organization analyzer owner account. Account IDs can only be applied to the analysis rule criteria for organization-level analyzers.
1362
1392
  */
1363
1393
  accountIds?: pulumi.Input<pulumi.Input<string>[]>;
1364
1394
  /**
1365
- * A list of key-value pairs for resource tags to exclude from the analysis.
1395
+ * List of key-value pairs for resource tags to exclude from the analysis.
1366
1396
  */
1367
1397
  resourceTags?: pulumi.Input<pulumi.Input<{
1368
1398
  [key: string]: pulumi.Input<string>;
@@ -2222,6 +2252,42 @@ export declare namespace alb {
2222
2252
  }
2223
2253
  }
2224
2254
  export declare namespace amp {
2255
+ interface QueryLoggingConfigurationDestination {
2256
+ /**
2257
+ * Configuration block for CloudWatch Logs destination. See `cloudwatchLogs`.
2258
+ */
2259
+ cloudwatchLogs?: pulumi.Input<inputs.amp.QueryLoggingConfigurationDestinationCloudwatchLogs>;
2260
+ /**
2261
+ * A list of filter configurations that specify which logs should be sent to the destination. See `filters`.
2262
+ */
2263
+ filters?: pulumi.Input<inputs.amp.QueryLoggingConfigurationDestinationFilters>;
2264
+ }
2265
+ interface QueryLoggingConfigurationDestinationCloudwatchLogs {
2266
+ /**
2267
+ * The ARN of the CloudWatch log group to which query logs will be sent.
2268
+ */
2269
+ logGroupArn: pulumi.Input<string>;
2270
+ }
2271
+ interface QueryLoggingConfigurationDestinationFilters {
2272
+ /**
2273
+ * The Query Samples Processed (QSP) threshold above which queries will be logged. Queries processing more samples than this threshold will be captured in logs.
2274
+ */
2275
+ qspThreshold: pulumi.Input<number>;
2276
+ }
2277
+ interface QueryLoggingConfigurationTimeouts {
2278
+ /**
2279
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
2280
+ */
2281
+ create?: pulumi.Input<string>;
2282
+ /**
2283
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.
2284
+ */
2285
+ delete?: pulumi.Input<string>;
2286
+ /**
2287
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
2288
+ */
2289
+ update?: pulumi.Input<string>;
2290
+ }
2225
2291
  interface ScraperDestination {
2226
2292
  /**
2227
2293
  * Configuration block for an Amazon Managed Prometheus workspace destination. See `amp`.
@@ -2379,6 +2445,12 @@ export declare namespace amplify {
2379
2445
  */
2380
2446
  target: pulumi.Input<string>;
2381
2447
  }
2448
+ interface AppJobConfig {
2449
+ /**
2450
+ * Size of the build instance. Valid values: `STANDARD_8GB`, `LARGE_16GB`, and `XLARGE_72GB`. Default: `STANDARD_8GB`.
2451
+ */
2452
+ buildComputeType?: pulumi.Input<string>;
2453
+ }
2382
2454
  interface AppProductionBranch {
2383
2455
  /**
2384
2456
  * Branch name for the production branch.
@@ -14481,6 +14553,10 @@ export declare namespace codebuild {
14481
14553
  * the [CodeBuild User Guide](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html).
14482
14554
  */
14483
14555
  computeType: pulumi.Input<string>;
14556
+ /**
14557
+ * Configuration block. Detailed below.
14558
+ */
14559
+ dockerServer?: pulumi.Input<inputs.codebuild.ProjectEnvironmentDockerServer>;
14484
14560
  /**
14485
14561
  * Configuration block. Detailed below.
14486
14562
  */
@@ -14520,6 +14596,16 @@ export declare namespace codebuild {
14520
14596
  */
14521
14597
  type: pulumi.Input<string>;
14522
14598
  }
14599
+ interface ProjectEnvironmentDockerServer {
14600
+ /**
14601
+ * Compute type for the Docker server. Valid values: `BUILD_GENERAL1_SMALL`, `BUILD_GENERAL1_MEDIUM`, `BUILD_GENERAL1_LARGE`, `BUILD_GENERAL1_XLARGE`, and `BUILD_GENERAL1_2XLARGE`.
14602
+ */
14603
+ computeType: pulumi.Input<string>;
14604
+ /**
14605
+ * List of security group IDs to assign to the Docker server.
14606
+ */
14607
+ securityGroupIds?: pulumi.Input<pulumi.Input<string>[]>;
14608
+ }
14523
14609
  interface ProjectEnvironmentEnvironmentVariable {
14524
14610
  /**
14525
14611
  * Environment variable's name or key.
@@ -21014,6 +21100,10 @@ export declare namespace dynamodb {
21014
21100
  * ARN of the table
21015
21101
  */
21016
21102
  arn?: pulumi.Input<string>;
21103
+ /**
21104
+ * Whether this global table will be using `STRONG` consistency mode or `EVENTUAL` consistency mode. Default value is `EVENTUAL`.
21105
+ */
21106
+ consistencyMode?: pulumi.Input<string>;
21017
21107
  /**
21018
21108
  * ARN of the CMK that should be used for the AWS KMS encryption.
21019
21109
  * This argument should only be used if the key is different from the default KMS-managed DynamoDB key, `alias/aws/dynamodb`.
@@ -25122,10 +25212,6 @@ export declare namespace ec2 {
25122
25212
  */
25123
25213
  toPort: pulumi.Input<number>;
25124
25214
  }
25125
- /**
25126
- * securityGroupEgressProvideDefaults sets the appropriate defaults for SecurityGroupEgress
25127
- */
25128
- function securityGroupEgressProvideDefaults(val: SecurityGroupEgress): SecurityGroupEgress;
25129
25215
  interface SecurityGroupIngress {
25130
25216
  /**
25131
25217
  * List of CIDR blocks.
@@ -25168,10 +25254,6 @@ export declare namespace ec2 {
25168
25254
  */
25169
25255
  toPort: pulumi.Input<number>;
25170
25256
  }
25171
- /**
25172
- * securityGroupIngressProvideDefaults sets the appropriate defaults for SecurityGroupIngress
25173
- */
25174
- function securityGroupIngressProvideDefaults(val: SecurityGroupIngress): SecurityGroupIngress;
25175
25257
  interface SpotFleetRequestLaunchSpecification {
25176
25258
  ami: pulumi.Input<string>;
25177
25259
  associatePublicIpAddress?: pulumi.Input<boolean>;
@@ -26638,7 +26720,7 @@ export declare namespace ecr {
26638
26720
  /**
26639
26721
  * A list of image tag prefixes on which to take action.
26640
26722
  */
26641
- tagPrefixList?: pulumi.Input<string | pulumi.Input<string>[]>;
26723
+ tagPrefixList?: pulumi.Input<pulumi.Input<string>[]>;
26642
26724
  /**
26643
26725
  * The tag status of the image. Either 'tagged', 'untagged', or 'any'.
26644
26726
  */
@@ -53770,25 +53852,23 @@ export declare namespace lightsail {
53770
53852
  */
53771
53853
  cidrListAliases?: pulumi.Input<pulumi.Input<string>[]>;
53772
53854
  /**
53773
- * Set of CIDR blocks.
53855
+ * Set of IPv4 addresses or ranges of IPv4 addresses (in CIDR notation) that are allowed to connect to an instance through the ports, and the protocol.
53774
53856
  */
53775
53857
  cidrs?: pulumi.Input<pulumi.Input<string>[]>;
53776
53858
  /**
53777
- * First port in a range of open ports on an instance.
53859
+ * First port in a range of open ports on an instance. See [PortInfo](https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_PortInfo.html) for details.
53778
53860
  */
53779
53861
  fromPort: pulumi.Input<number>;
53780
53862
  /**
53781
- * Set of IPv6 CIDR blocks.
53863
+ * Set of IPv6 addresses or ranges of IPv6 addresses (in CIDR notation) that are allowed to connect to an instance through the ports, and the protocol.
53782
53864
  */
53783
53865
  ipv6Cidrs?: pulumi.Input<pulumi.Input<string>[]>;
53784
53866
  /**
53785
- * IP protocol name. Valid values: `tcp`, `all`, `udp`, `icmp`.
53867
+ * IP protocol name. Valid values: `tcp`, `all`, `udp`, `icmp`, `icmpv6`. See [PortInfo](https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_PortInfo.html) for details.
53786
53868
  */
53787
53869
  protocol: pulumi.Input<string>;
53788
53870
  /**
53789
- * Last port in a range of open ports on an instance.
53790
- *
53791
- * The following arguments are optional:
53871
+ * Last port in a range of open ports on an instance. See [PortInfo](https://docs.aws.amazon.com/lightsail/2016-11-28/api-reference/API_PortInfo.html) for details.
53792
53872
  */
53793
53873
  toPort: pulumi.Input<number>;
53794
53874
  }
@@ -57791,6 +57871,12 @@ export declare namespace networkfirewall {
57791
57871
  tcpIdleTimeoutSeconds?: pulumi.Input<number>;
57792
57872
  }
57793
57873
  interface FirewallPolicyFirewallPolicyStatefulRuleGroupReference {
57874
+ /**
57875
+ * Whether to enable deep threat inspection, which allows AWS to analyze service logs of network traffic processed by these rule groups to identify threat indicators across customers. AWS will use these threat indicators to improve the active threat defense managed rule groups and protect the security of AWS customers and services. This only applies to active threat defense maanaged rule groups.
57876
+ *
57877
+ * For details, refer to [AWS active threat defense for AWS Network Firewall](https://docs.aws.amazon.com/network-firewall/latest/developerguide/aws-managed-rule-groups-atd.html) in the AWS Network Firewall Developer Guide.
57878
+ */
57879
+ deepThreatInspection?: pulumi.Input<string>;
57794
57880
  /**
57795
57881
  * Configuration block for override values
57796
57882
  */
@@ -58578,6 +58664,10 @@ export declare namespace networkmanager {
58578
58664
  * List of strings containing Autonomous System Numbers (ASNs) to assign to Core Network Edges. By default, the core network automatically assigns an ASN for each Core Network Edge but you can optionally define the ASN in the edge-locations for each Region. The ASN uses an array of integer ranges only from `64512` to `65534` and `4200000000` to `4294967294` expressed as a string like `"64512-65534"`. No other ASN ranges can be used.
58579
58665
  */
58580
58666
  asnRanges: string[];
58667
+ /**
58668
+ * Indicates whether DNS resolution is enabled for the core network. The value can be either `true` or `false`. When set to `true`, DNS resolution is enabled for VPCs attached to the core network, allowing resources in different VPCs to resolve each other's domain names. The default is `true`.
58669
+ */
58670
+ dnsSupport?: boolean;
58581
58671
  /**
58582
58672
  * A block value of AWS Region locations where you're creating Core Network Edges. Detailed below.
58583
58673
  */
@@ -58586,6 +58676,10 @@ export declare namespace networkmanager {
58586
58676
  * The Classless Inter-Domain Routing (CIDR) block range used to create tunnels for AWS Transit Gateway Connect. The format is standard AWS CIDR range (for example, `10.0.1.0/24`). You can optionally define the inside CIDR in the Core Network Edges section per Region. The minimum is a `/24` for IPv4 or `/64` for IPv6. You can provide multiple `/24` subnets or a larger CIDR range. If you define a larger CIDR range, new Core Network Edges will be automatically assigned `/24` and `/64` subnets from the larger CIDR. an Inside CIDR block is required for attaching Connect attachments to a Core Network Edge.
58587
58677
  */
58588
58678
  insideCidrBlocks?: string[];
58679
+ /**
58680
+ * — (Optional) Indicates whether security group referencing is enabled for the core network. The value can be either `true` or `false`. When set to `true`, security groups in one VPC can reference security groups in another VPC attached to the core network, enabling more flexible security configurations across your network. The default is `false`.
58681
+ */
58682
+ securityGroupReferencingSupport?: boolean;
58589
58683
  /**
58590
58684
  * Indicates whether the core network forwards traffic over multiple equal-cost routes using VPN. The value can be either `true` or `false`. The default is `true`.
58591
58685
  */
@@ -58596,6 +58690,10 @@ export declare namespace networkmanager {
58596
58690
  * List of strings containing Autonomous System Numbers (ASNs) to assign to Core Network Edges. By default, the core network automatically assigns an ASN for each Core Network Edge but you can optionally define the ASN in the edge-locations for each Region. The ASN uses an array of integer ranges only from `64512` to `65534` and `4200000000` to `4294967294` expressed as a string like `"64512-65534"`. No other ASN ranges can be used.
58597
58691
  */
58598
58692
  asnRanges: pulumi.Input<pulumi.Input<string>[]>;
58693
+ /**
58694
+ * Indicates whether DNS resolution is enabled for the core network. The value can be either `true` or `false`. When set to `true`, DNS resolution is enabled for VPCs attached to the core network, allowing resources in different VPCs to resolve each other's domain names. The default is `true`.
58695
+ */
58696
+ dnsSupport?: pulumi.Input<boolean>;
58599
58697
  /**
58600
58698
  * A block value of AWS Region locations where you're creating Core Network Edges. Detailed below.
58601
58699
  */
@@ -58604,6 +58702,10 @@ export declare namespace networkmanager {
58604
58702
  * The Classless Inter-Domain Routing (CIDR) block range used to create tunnels for AWS Transit Gateway Connect. The format is standard AWS CIDR range (for example, `10.0.1.0/24`). You can optionally define the inside CIDR in the Core Network Edges section per Region. The minimum is a `/24` for IPv4 or `/64` for IPv6. You can provide multiple `/24` subnets or a larger CIDR range. If you define a larger CIDR range, new Core Network Edges will be automatically assigned `/24` and `/64` subnets from the larger CIDR. an Inside CIDR block is required for attaching Connect attachments to a Core Network Edge.
58605
58703
  */
58606
58704
  insideCidrBlocks?: pulumi.Input<pulumi.Input<string>[]>;
58705
+ /**
58706
+ * — (Optional) Indicates whether security group referencing is enabled for the core network. The value can be either `true` or `false`. When set to `true`, security groups in one VPC can reference security groups in another VPC attached to the core network, enabling more flexible security configurations across your network. The default is `false`.
58707
+ */
58708
+ securityGroupReferencingSupport?: pulumi.Input<boolean>;
58607
58709
  /**
58608
58710
  * Indicates whether the core network forwards traffic over multiple equal-cost routes using VPN. The value can be either `true` or `false`. The default is `true`.
58609
58711
  */
@@ -62227,6 +62329,18 @@ export declare namespace ram {
62227
62329
  }
62228
62330
  }
62229
62331
  export declare namespace rbin {
62332
+ interface RuleExcludeResourceTag {
62333
+ /**
62334
+ * Tag key.
62335
+ *
62336
+ * The following argument is optional:
62337
+ */
62338
+ resourceTagKey: pulumi.Input<string>;
62339
+ /**
62340
+ * Tag value.
62341
+ */
62342
+ resourceTagValue?: pulumi.Input<string>;
62343
+ }
62230
62344
  interface RuleLockConfiguration {
62231
62345
  /**
62232
62346
  * Information about the retention rule unlock delay. See `unlockDelay` below.
@@ -62235,33 +62349,33 @@ export declare namespace rbin {
62235
62349
  }
62236
62350
  interface RuleLockConfigurationUnlockDelay {
62237
62351
  /**
62238
- * The unit of time in which to measure the unlock delay. Currently, the unlock delay can be measure only in days.
62352
+ * Unit of time in which to measure the unlock delay. Currently, the unlock delay can be measure only in days.
62239
62353
  */
62240
62354
  unlockDelayUnit: pulumi.Input<string>;
62241
62355
  /**
62242
- * The unlock delay period, measured in the unit specified for UnlockDelayUnit.
62356
+ * Unlock delay period, measured in the unit specified for UnlockDelayUnit.
62243
62357
  */
62244
62358
  unlockDelayValue: pulumi.Input<number>;
62245
62359
  }
62246
62360
  interface RuleResourceTag {
62247
62361
  /**
62248
- * The tag key.
62362
+ * Tag key.
62249
62363
  *
62250
62364
  * The following argument is optional:
62251
62365
  */
62252
62366
  resourceTagKey: pulumi.Input<string>;
62253
62367
  /**
62254
- * The tag value.
62368
+ * Tag value.
62255
62369
  */
62256
62370
  resourceTagValue?: pulumi.Input<string>;
62257
62371
  }
62258
62372
  interface RuleRetentionPeriod {
62259
62373
  /**
62260
- * The unit of time in which the retention period is measured. Currently, only DAYS is supported.
62374
+ * Unit of time in which the retention period is measured. Currently, only DAYS is supported.
62261
62375
  */
62262
62376
  retentionPeriodUnit: pulumi.Input<string>;
62263
62377
  /**
62264
- * The period value for which the retention rule is to retain resources. The period is measured using the unit specified for RetentionPeriodUnit.
62378
+ * Period value for which the retention rule is to retain resources. The period is measured using the unit specified for RetentionPeriodUnit.
62265
62379
  */
62266
62380
  retentionPeriodValue: pulumi.Input<number>;
62267
62381
  }
@@ -64767,6 +64881,58 @@ export declare namespace s3 {
64767
64881
  */
64768
64882
  id: pulumi.Input<string>;
64769
64883
  }
64884
+ interface BucketAclV2AccessControlPolicy {
64885
+ /**
64886
+ * Set of `grant` configuration blocks. See below.
64887
+ */
64888
+ grants?: pulumi.Input<pulumi.Input<inputs.s3.BucketAclV2AccessControlPolicyGrant>[]>;
64889
+ /**
64890
+ * Configuration block for the bucket owner's display name and ID. See below.
64891
+ */
64892
+ owner: pulumi.Input<inputs.s3.BucketAclV2AccessControlPolicyOwner>;
64893
+ }
64894
+ interface BucketAclV2AccessControlPolicyGrant {
64895
+ /**
64896
+ * Configuration block for the person being granted permissions. See below.
64897
+ */
64898
+ grantee?: pulumi.Input<inputs.s3.BucketAclV2AccessControlPolicyGrantGrantee>;
64899
+ /**
64900
+ * Logging permissions assigned to the grantee for the bucket. Valid values: `FULL_CONTROL`, `WRITE`, `WRITE_ACP`, `READ`, `READ_ACP`. See [What permissions can I grant?](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#permissions) for more details about what each permission means in the context of buckets.
64901
+ */
64902
+ permission: pulumi.Input<string>;
64903
+ }
64904
+ interface BucketAclV2AccessControlPolicyGrantGrantee {
64905
+ /**
64906
+ * Display name of the owner.
64907
+ */
64908
+ displayName?: pulumi.Input<string>;
64909
+ /**
64910
+ * Email address of the grantee. See [Regions and Endpoints](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) for supported AWS regions where this argument can be specified.
64911
+ */
64912
+ emailAddress?: pulumi.Input<string>;
64913
+ /**
64914
+ * Canonical user ID of the grantee.
64915
+ */
64916
+ id?: pulumi.Input<string>;
64917
+ /**
64918
+ * Type of grantee. Valid values: `CanonicalUser`, `AmazonCustomerByEmail`, `Group`.
64919
+ */
64920
+ type: pulumi.Input<string>;
64921
+ /**
64922
+ * URI of the grantee group.
64923
+ */
64924
+ uri?: pulumi.Input<string>;
64925
+ }
64926
+ interface BucketAclV2AccessControlPolicyOwner {
64927
+ /**
64928
+ * Display name of the owner.
64929
+ */
64930
+ displayName?: pulumi.Input<string>;
64931
+ /**
64932
+ * ID of the owner.
64933
+ */
64934
+ id: pulumi.Input<string>;
64935
+ }
64770
64936
  interface BucketCorsConfigurationCorsRule {
64771
64937
  /**
64772
64938
  * Set of Headers that are specified in the `Access-Control-Request-Headers` header.
@@ -64793,6 +64959,32 @@ export declare namespace s3 {
64793
64959
  */
64794
64960
  maxAgeSeconds?: pulumi.Input<number>;
64795
64961
  }
64962
+ interface BucketCorsConfigurationV2CorsRule {
64963
+ /**
64964
+ * Set of Headers that are specified in the `Access-Control-Request-Headers` header.
64965
+ */
64966
+ allowedHeaders?: pulumi.Input<pulumi.Input<string>[]>;
64967
+ /**
64968
+ * Set of HTTP methods that you allow the origin to execute. Valid values are `GET`, `PUT`, `HEAD`, `POST`, and `DELETE`.
64969
+ */
64970
+ allowedMethods: pulumi.Input<pulumi.Input<string>[]>;
64971
+ /**
64972
+ * Set of origins you want customers to be able to access the bucket from.
64973
+ */
64974
+ allowedOrigins: pulumi.Input<pulumi.Input<string>[]>;
64975
+ /**
64976
+ * Set of headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript `XMLHttpRequest` object).
64977
+ */
64978
+ exposeHeaders?: pulumi.Input<pulumi.Input<string>[]>;
64979
+ /**
64980
+ * Unique identifier for the rule. The value cannot be longer than 255 characters.
64981
+ */
64982
+ id?: pulumi.Input<string>;
64983
+ /**
64984
+ * Time in seconds that your browser is to cache the preflight response for the specified resource.
64985
+ */
64986
+ maxAgeSeconds?: pulumi.Input<number>;
64987
+ }
64796
64988
  interface BucketCorsRule {
64797
64989
  /**
64798
64990
  * List of headers allowed.
@@ -65024,6 +65216,175 @@ export declare namespace s3 {
65024
65216
  */
65025
65217
  update?: pulumi.Input<string>;
65026
65218
  }
65219
+ interface BucketLifecycleConfigurationV2Rule {
65220
+ /**
65221
+ * Configuration block that specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload. See below.
65222
+ */
65223
+ abortIncompleteMultipartUpload?: pulumi.Input<inputs.s3.BucketLifecycleConfigurationV2RuleAbortIncompleteMultipartUpload>;
65224
+ /**
65225
+ * Configuration block that specifies the expiration for the lifecycle of the object in the form of date, days and, whether the object has a delete marker. See below.
65226
+ */
65227
+ expiration?: pulumi.Input<inputs.s3.BucketLifecycleConfigurationV2RuleExpiration>;
65228
+ /**
65229
+ * Configuration block used to identify objects that a Lifecycle Rule applies to.
65230
+ * See below.
65231
+ * If not specified, the `rule` will default to using `prefix`.
65232
+ * One of `filter` or `prefix` should be specified.
65233
+ */
65234
+ filter?: pulumi.Input<inputs.s3.BucketLifecycleConfigurationV2RuleFilter>;
65235
+ /**
65236
+ * Unique identifier for the rule. The value cannot be longer than 255 characters.
65237
+ */
65238
+ id: pulumi.Input<string>;
65239
+ /**
65240
+ * Configuration block that specifies when noncurrent object versions expire. See below.
65241
+ */
65242
+ noncurrentVersionExpiration?: pulumi.Input<inputs.s3.BucketLifecycleConfigurationV2RuleNoncurrentVersionExpiration>;
65243
+ /**
65244
+ * Set of configuration blocks that specify the transition rule for the lifecycle rule that describes when noncurrent objects transition to a specific storage class. See below.
65245
+ */
65246
+ noncurrentVersionTransitions?: pulumi.Input<pulumi.Input<inputs.s3.BucketLifecycleConfigurationV2RuleNoncurrentVersionTransition>[]>;
65247
+ /**
65248
+ * **DEPRECATED** Use `filter` instead.
65249
+ * This has been deprecated by Amazon S3.
65250
+ * Prefix identifying one or more objects to which the rule applies.
65251
+ * Defaults to an empty string (`""`) if `filter` is not specified.
65252
+ * One of `prefix` or `filter` should be specified.
65253
+ *
65254
+ * @deprecated Specify a prefix using 'filter' instead
65255
+ */
65256
+ prefix?: pulumi.Input<string>;
65257
+ /**
65258
+ * Whether the rule is currently being applied. Valid values: `Enabled` or `Disabled`.
65259
+ */
65260
+ status: pulumi.Input<string>;
65261
+ /**
65262
+ * Set of configuration blocks that specify when an Amazon S3 object transitions to a specified storage class. See below.
65263
+ */
65264
+ transitions?: pulumi.Input<pulumi.Input<inputs.s3.BucketLifecycleConfigurationV2RuleTransition>[]>;
65265
+ }
65266
+ interface BucketLifecycleConfigurationV2RuleAbortIncompleteMultipartUpload {
65267
+ /**
65268
+ * Number of days after which Amazon S3 aborts an incomplete multipart upload.
65269
+ */
65270
+ daysAfterInitiation?: pulumi.Input<number>;
65271
+ }
65272
+ interface BucketLifecycleConfigurationV2RuleExpiration {
65273
+ /**
65274
+ * Date the object is to be moved or deleted. The date value must be in [RFC3339 full-date format](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) e.g. `2023-08-22`.
65275
+ */
65276
+ date?: pulumi.Input<string>;
65277
+ /**
65278
+ * Lifetime, in days, of the objects that are subject to the rule. The value must be a non-zero positive integer.
65279
+ */
65280
+ days?: pulumi.Input<number>;
65281
+ /**
65282
+ * Indicates whether Amazon S3 will remove a delete marker with no noncurrent versions. If set to `true`, the delete marker will be expired; if set to `false` the policy takes no action.
65283
+ */
65284
+ expiredObjectDeleteMarker?: pulumi.Input<boolean>;
65285
+ }
65286
+ interface BucketLifecycleConfigurationV2RuleFilter {
65287
+ /**
65288
+ * Configuration block used to apply a logical `AND` to two or more predicates. See below. The Lifecycle Rule will apply to any object matching all the predicates configured inside the `and` block.
65289
+ */
65290
+ and?: pulumi.Input<inputs.s3.BucketLifecycleConfigurationV2RuleFilterAnd>;
65291
+ /**
65292
+ * Minimum object size (in bytes) to which the rule applies.
65293
+ */
65294
+ objectSizeGreaterThan?: pulumi.Input<number>;
65295
+ /**
65296
+ * Maximum object size (in bytes) to which the rule applies.
65297
+ */
65298
+ objectSizeLessThan?: pulumi.Input<number>;
65299
+ /**
65300
+ * Prefix identifying one or more objects to which the rule applies. Defaults to an empty string (`""`) if not specified.
65301
+ */
65302
+ prefix?: pulumi.Input<string>;
65303
+ /**
65304
+ * Configuration block for specifying a tag key and value. See below.
65305
+ */
65306
+ tag?: pulumi.Input<inputs.s3.BucketLifecycleConfigurationV2RuleFilterTag>;
65307
+ }
65308
+ interface BucketLifecycleConfigurationV2RuleFilterAnd {
65309
+ /**
65310
+ * Minimum object size to which the rule applies. Value must be at least `0` if specified. Defaults to 128000 (128 KB) for all `storageClass` values unless `transitionDefaultMinimumObjectSize` specifies otherwise.
65311
+ */
65312
+ objectSizeGreaterThan?: pulumi.Input<number>;
65313
+ /**
65314
+ * Maximum object size to which the rule applies. Value must be at least `1` if specified.
65315
+ */
65316
+ objectSizeLessThan?: pulumi.Input<number>;
65317
+ /**
65318
+ * Prefix identifying one or more objects to which the rule applies.
65319
+ */
65320
+ prefix?: pulumi.Input<string>;
65321
+ /**
65322
+ * Key-value map of resource tags.
65323
+ * All of these tags must exist in the object's tag set in order for the rule to apply.
65324
+ * If set, must contain at least one key-value pair.
65325
+ */
65326
+ tags?: pulumi.Input<{
65327
+ [key: string]: pulumi.Input<string>;
65328
+ }>;
65329
+ }
65330
+ interface BucketLifecycleConfigurationV2RuleFilterTag {
65331
+ /**
65332
+ * Name of the object key.
65333
+ */
65334
+ key: pulumi.Input<string>;
65335
+ /**
65336
+ * Value of the tag.
65337
+ */
65338
+ value: pulumi.Input<string>;
65339
+ }
65340
+ interface BucketLifecycleConfigurationV2RuleNoncurrentVersionExpiration {
65341
+ /**
65342
+ * Number of noncurrent versions Amazon S3 will retain. Must be a non-zero positive integer.
65343
+ */
65344
+ newerNoncurrentVersions?: pulumi.Input<number>;
65345
+ /**
65346
+ * Number of days an object is noncurrent before Amazon S3 can perform the associated action. Must be a positive integer.
65347
+ */
65348
+ noncurrentDays: pulumi.Input<number>;
65349
+ }
65350
+ interface BucketLifecycleConfigurationV2RuleNoncurrentVersionTransition {
65351
+ /**
65352
+ * Number of noncurrent versions Amazon S3 will retain. Must be a non-zero positive integer.
65353
+ */
65354
+ newerNoncurrentVersions?: pulumi.Input<number>;
65355
+ /**
65356
+ * Number of days an object is noncurrent before Amazon S3 can perform the associated action.
65357
+ */
65358
+ noncurrentDays: pulumi.Input<number>;
65359
+ /**
65360
+ * Class of storage used to store the object. Valid Values: `GLACIER`, `STANDARD_IA`, `ONEZONE_IA`, `INTELLIGENT_TIERING`, `DEEP_ARCHIVE`, `GLACIER_IR`.
65361
+ */
65362
+ storageClass: pulumi.Input<string>;
65363
+ }
65364
+ interface BucketLifecycleConfigurationV2RuleTransition {
65365
+ /**
65366
+ * Date objects are transitioned to the specified storage class. The date value must be in [RFC3339 full-date format](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) e.g. `2023-08-22`.
65367
+ */
65368
+ date?: pulumi.Input<string>;
65369
+ /**
65370
+ * Number of days after creation when objects are transitioned to the specified storage class. The value must be a positive integer. If both `days` and `date` are not specified, defaults to `0`. Valid values depend on `storageClass`, see [Transition objects using Amazon S3 Lifecycle](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-transition-general-considerations.html) for more details.
65371
+ */
65372
+ days?: pulumi.Input<number>;
65373
+ /**
65374
+ * Class of storage used to store the object. Valid Values: `GLACIER`, `STANDARD_IA`, `ONEZONE_IA`, `INTELLIGENT_TIERING`, `DEEP_ARCHIVE`, `GLACIER_IR`.
65375
+ */
65376
+ storageClass: pulumi.Input<string>;
65377
+ }
65378
+ interface BucketLifecycleConfigurationV2Timeouts {
65379
+ /**
65380
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
65381
+ */
65382
+ create?: pulumi.Input<string>;
65383
+ /**
65384
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
65385
+ */
65386
+ update?: pulumi.Input<string>;
65387
+ }
65027
65388
  interface BucketLifecycleRule {
65028
65389
  /**
65029
65390
  * Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
@@ -65165,6 +65526,53 @@ export declare namespace s3 {
65165
65526
  }
65166
65527
  interface BucketLoggingTargetObjectKeyFormatSimplePrefix {
65167
65528
  }
65529
+ interface BucketLoggingV2TargetGrant {
65530
+ /**
65531
+ * Configuration block for the person being granted permissions. See below.
65532
+ */
65533
+ grantee: pulumi.Input<inputs.s3.BucketLoggingV2TargetGrantGrantee>;
65534
+ /**
65535
+ * Logging permissions assigned to the grantee for the bucket. Valid values: `FULL_CONTROL`, `READ`, `WRITE`.
65536
+ */
65537
+ permission: pulumi.Input<string>;
65538
+ }
65539
+ interface BucketLoggingV2TargetGrantGrantee {
65540
+ displayName?: pulumi.Input<string>;
65541
+ /**
65542
+ * Email address of the grantee. See [Regions and Endpoints](https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region) for supported AWS regions where this argument can be specified.
65543
+ */
65544
+ emailAddress?: pulumi.Input<string>;
65545
+ /**
65546
+ * Canonical user ID of the grantee.
65547
+ */
65548
+ id?: pulumi.Input<string>;
65549
+ /**
65550
+ * Type of grantee. Valid values: `CanonicalUser`, `AmazonCustomerByEmail`, `Group`.
65551
+ */
65552
+ type: pulumi.Input<string>;
65553
+ /**
65554
+ * URI of the grantee group.
65555
+ */
65556
+ uri?: pulumi.Input<string>;
65557
+ }
65558
+ interface BucketLoggingV2TargetObjectKeyFormat {
65559
+ /**
65560
+ * Partitioned S3 key for log objects. See below.
65561
+ */
65562
+ partitionedPrefix?: pulumi.Input<inputs.s3.BucketLoggingV2TargetObjectKeyFormatPartitionedPrefix>;
65563
+ /**
65564
+ * Use the simple format for S3 keys for log objects. To use, set `simplePrefix {}`.
65565
+ */
65566
+ simplePrefix?: pulumi.Input<inputs.s3.BucketLoggingV2TargetObjectKeyFormatSimplePrefix>;
65567
+ }
65568
+ interface BucketLoggingV2TargetObjectKeyFormatPartitionedPrefix {
65569
+ /**
65570
+ * Specifies the partition date source for the partitioned prefix. Valid values: `EventTime`, `DeliveryTime`.
65571
+ */
65572
+ partitionDateSource: pulumi.Input<string>;
65573
+ }
65574
+ interface BucketLoggingV2TargetObjectKeyFormatSimplePrefix {
65575
+ }
65168
65576
  interface BucketMetricFilter {
65169
65577
  /**
65170
65578
  * S3 Access Point ARN for filtering (singular).
@@ -65281,6 +65689,26 @@ export declare namespace s3 {
65281
65689
  */
65282
65690
  years?: pulumi.Input<number>;
65283
65691
  }
65692
+ interface BucketObjectLockConfigurationV2Rule {
65693
+ /**
65694
+ * Configuration block for specifying the default Object Lock retention settings for new objects placed in the specified bucket. See below.
65695
+ */
65696
+ defaultRetention: pulumi.Input<inputs.s3.BucketObjectLockConfigurationV2RuleDefaultRetention>;
65697
+ }
65698
+ interface BucketObjectLockConfigurationV2RuleDefaultRetention {
65699
+ /**
65700
+ * Number of days that you want to specify for the default retention period.
65701
+ */
65702
+ days?: pulumi.Input<number>;
65703
+ /**
65704
+ * Default Object Lock retention mode you want to apply to new objects placed in the specified bucket. Valid values: `COMPLIANCE`, `GOVERNANCE`.
65705
+ */
65706
+ mode?: pulumi.Input<string>;
65707
+ /**
65708
+ * Number of years that you want to specify for the default retention period.
65709
+ */
65710
+ years?: pulumi.Input<number>;
65711
+ }
65284
65712
  interface BucketObjectv2OverrideProvider {
65285
65713
  /**
65286
65714
  * Override the provider `defaultTags` configuration block.
@@ -65641,6 +66069,376 @@ export declare namespace s3 {
65641
66069
  */
65642
66070
  sseAlgorithm: pulumi.Input<string>;
65643
66071
  }
66072
+ interface BucketServerSideEncryptionConfigurationV2Rule {
66073
+ /**
66074
+ * Single object for setting server-side encryption by default. See below.
66075
+ */
66076
+ applyServerSideEncryptionByDefault?: pulumi.Input<inputs.s3.BucketServerSideEncryptionConfigurationV2RuleApplyServerSideEncryptionByDefault>;
66077
+ /**
66078
+ * Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS.
66079
+ */
66080
+ bucketKeyEnabled?: pulumi.Input<boolean>;
66081
+ }
66082
+ interface BucketServerSideEncryptionConfigurationV2RuleApplyServerSideEncryptionByDefault {
66083
+ /**
66084
+ * AWS KMS master key ID used for the SSE-KMS encryption. This can only be used when you set the value of `sseAlgorithm` as `aws:kms`. The default `aws/s3` AWS KMS master key is used if this element is absent while the `sseAlgorithm` is `aws:kms`.
66085
+ */
66086
+ kmsMasterKeyId?: pulumi.Input<string>;
66087
+ /**
66088
+ * Server-side encryption algorithm to use. Valid values are `AES256`, `aws:kms`, and `aws:kms:dsse`
66089
+ */
66090
+ sseAlgorithm: pulumi.Input<string>;
66091
+ }
66092
+ interface BucketV2CorsRule {
66093
+ /**
66094
+ * List of headers allowed.
66095
+ */
66096
+ allowedHeaders?: pulumi.Input<pulumi.Input<string>[]>;
66097
+ /**
66098
+ * One or more HTTP methods that you allow the origin to execute. Can be `GET`, `PUT`, `POST`, `DELETE` or `HEAD`.
66099
+ */
66100
+ allowedMethods: pulumi.Input<pulumi.Input<string>[]>;
66101
+ /**
66102
+ * One or more origins you want customers to be able to access the bucket from.
66103
+ */
66104
+ allowedOrigins: pulumi.Input<pulumi.Input<string>[]>;
66105
+ /**
66106
+ * 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).
66107
+ */
66108
+ exposeHeaders?: pulumi.Input<pulumi.Input<string>[]>;
66109
+ /**
66110
+ * Specifies time in seconds that browser can cache the response for a preflight request.
66111
+ */
66112
+ maxAgeSeconds?: pulumi.Input<number>;
66113
+ }
66114
+ interface BucketV2Grant {
66115
+ /**
66116
+ * Canonical user id to grant for. Used only when `type` is `CanonicalUser`.
66117
+ */
66118
+ id?: pulumi.Input<string>;
66119
+ /**
66120
+ * List of permissions to apply for grantee. Valid values are `READ`, `WRITE`, `READ_ACP`, `WRITE_ACP`, `FULL_CONTROL`.
66121
+ */
66122
+ permissions: pulumi.Input<pulumi.Input<string>[]>;
66123
+ /**
66124
+ * Type of grantee to apply for. Valid values are `CanonicalUser` and `Group`. `AmazonCustomerByEmail` is not supported.
66125
+ */
66126
+ type: pulumi.Input<string>;
66127
+ /**
66128
+ * Uri address to grant for. Used only when `type` is `Group`.
66129
+ */
66130
+ uri?: pulumi.Input<string>;
66131
+ }
66132
+ interface BucketV2LifecycleRule {
66133
+ /**
66134
+ * Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
66135
+ */
66136
+ abortIncompleteMultipartUploadDays?: pulumi.Input<number>;
66137
+ /**
66138
+ * Specifies lifecycle rule status.
66139
+ */
66140
+ enabled: pulumi.Input<boolean>;
66141
+ /**
66142
+ * Specifies a period in the object's expire. See Expiration below for details.
66143
+ */
66144
+ expirations?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2LifecycleRuleExpiration>[]>;
66145
+ /**
66146
+ * Unique identifier for the rule. Must be less than or equal to 255 characters in length.
66147
+ */
66148
+ id?: pulumi.Input<string>;
66149
+ /**
66150
+ * Specifies when noncurrent object versions expire. See Noncurrent Version Expiration below for details.
66151
+ */
66152
+ noncurrentVersionExpirations?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2LifecycleRuleNoncurrentVersionExpiration>[]>;
66153
+ /**
66154
+ * Specifies when noncurrent object versions transitions. See Noncurrent Version Transition below for details.
66155
+ */
66156
+ noncurrentVersionTransitions?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2LifecycleRuleNoncurrentVersionTransition>[]>;
66157
+ /**
66158
+ * Object key prefix identifying one or more objects to which the rule applies.
66159
+ */
66160
+ prefix?: pulumi.Input<string>;
66161
+ /**
66162
+ * Specifies object tags key and value.
66163
+ */
66164
+ tags?: pulumi.Input<{
66165
+ [key: string]: pulumi.Input<string>;
66166
+ }>;
66167
+ /**
66168
+ * Specifies a period in the object's transitions. See Transition below for details.
66169
+ */
66170
+ transitions?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2LifecycleRuleTransition>[]>;
66171
+ }
66172
+ interface BucketV2LifecycleRuleExpiration {
66173
+ /**
66174
+ * Specifies the date after which you want the corresponding action to take effect.
66175
+ */
66176
+ date?: pulumi.Input<string>;
66177
+ /**
66178
+ * Specifies the number of days after object creation when the specific rule action takes effect.
66179
+ */
66180
+ days?: pulumi.Input<number>;
66181
+ /**
66182
+ * On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Amazon S3 to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
66183
+ */
66184
+ expiredObjectDeleteMarker?: pulumi.Input<boolean>;
66185
+ }
66186
+ interface BucketV2LifecycleRuleNoncurrentVersionExpiration {
66187
+ /**
66188
+ * Specifies the number of days noncurrent object versions expire.
66189
+ */
66190
+ days?: pulumi.Input<number>;
66191
+ }
66192
+ interface BucketV2LifecycleRuleNoncurrentVersionTransition {
66193
+ /**
66194
+ * Specifies the number of days noncurrent object versions transition.
66195
+ */
66196
+ days?: pulumi.Input<number>;
66197
+ /**
66198
+ * Specifies the Amazon S3 [storage class](https://docs.aws.amazon.com/AmazonS3/latest/API/API_Transition.html#AmazonS3-Type-Transition-StorageClass) to which you want the object to transition.
66199
+ */
66200
+ storageClass: pulumi.Input<string>;
66201
+ }
66202
+ interface BucketV2LifecycleRuleTransition {
66203
+ /**
66204
+ * Specifies the date after which you want the corresponding action to take effect.
66205
+ */
66206
+ date?: pulumi.Input<string>;
66207
+ /**
66208
+ * Specifies the number of days after object creation when the specific rule action takes effect.
66209
+ */
66210
+ days?: pulumi.Input<number>;
66211
+ /**
66212
+ * Specifies the Amazon S3 [storage class](https://docs.aws.amazon.com/AmazonS3/latest/API/API_Transition.html#AmazonS3-Type-Transition-StorageClass) to which you want the object to transition.
66213
+ */
66214
+ storageClass: pulumi.Input<string>;
66215
+ }
66216
+ interface BucketV2Logging {
66217
+ /**
66218
+ * Name of the bucket that will receive the log objects.
66219
+ */
66220
+ targetBucket: pulumi.Input<string>;
66221
+ /**
66222
+ * To specify a key prefix for log objects.
66223
+ */
66224
+ targetPrefix?: pulumi.Input<string>;
66225
+ }
66226
+ interface BucketV2ObjectLockConfiguration {
66227
+ /**
66228
+ * Indicates whether this bucket has an Object Lock configuration enabled. Valid values are `true` or `false`. This argument is not supported in all regions or partitions.
66229
+ *
66230
+ * @deprecated object_lock_enabled is deprecated. Use the top-level parameter objectLockEnabled instead.
66231
+ */
66232
+ objectLockEnabled?: pulumi.Input<string>;
66233
+ /**
66234
+ * Object Lock rule in place for this bucket (documented below).
66235
+ *
66236
+ * @deprecated rule is deprecated. Use the aws.s3.BucketObjectLockConfiguration resource instead.
66237
+ */
66238
+ rules?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ObjectLockConfigurationRule>[]>;
66239
+ }
66240
+ interface BucketV2ObjectLockConfigurationRule {
66241
+ /**
66242
+ * Default retention period that you want to apply to new objects placed in this bucket (documented below).
66243
+ */
66244
+ defaultRetentions: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ObjectLockConfigurationRuleDefaultRetention>[]>;
66245
+ }
66246
+ interface BucketV2ObjectLockConfigurationRuleDefaultRetention {
66247
+ /**
66248
+ * Number of days that you want to specify for the default retention period.
66249
+ */
66250
+ days?: pulumi.Input<number>;
66251
+ /**
66252
+ * Default Object Lock retention mode you want to apply to new objects placed in this bucket. Valid values are `GOVERNANCE` and `COMPLIANCE`.
66253
+ */
66254
+ mode: pulumi.Input<string>;
66255
+ /**
66256
+ * Number of years that you want to specify for the default retention period.
66257
+ */
66258
+ years?: pulumi.Input<number>;
66259
+ }
66260
+ interface BucketV2ReplicationConfiguration {
66261
+ /**
66262
+ * ARN of the IAM role for Amazon S3 to assume when replicating the objects.
66263
+ */
66264
+ role: pulumi.Input<string>;
66265
+ /**
66266
+ * Specifies the rules managing the replication (documented below).
66267
+ */
66268
+ rules: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ReplicationConfigurationRule>[]>;
66269
+ }
66270
+ interface BucketV2ReplicationConfigurationRule {
66271
+ /**
66272
+ * Whether delete markers are replicated. The only valid value is `Enabled`. To disable, omit this argument. This argument is only valid with V2 replication configurations (i.e., when `filter` is used).
66273
+ */
66274
+ deleteMarkerReplicationStatus?: pulumi.Input<string>;
66275
+ /**
66276
+ * Specifies the destination for the rule (documented below).
66277
+ */
66278
+ destinations: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ReplicationConfigurationRuleDestination>[]>;
66279
+ /**
66280
+ * Filter that identifies subset of objects to which the replication rule applies (documented below).
66281
+ */
66282
+ filters?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ReplicationConfigurationRuleFilter>[]>;
66283
+ /**
66284
+ * Unique identifier for the rule. Must be less than or equal to 255 characters in length.
66285
+ */
66286
+ id?: pulumi.Input<string>;
66287
+ /**
66288
+ * Object keyname prefix identifying one or more objects to which the rule applies. Must be less than or equal to 1024 characters in length.
66289
+ */
66290
+ prefix?: pulumi.Input<string>;
66291
+ /**
66292
+ * Priority associated with the rule. Priority should only be set if `filter` is configured. If not provided, defaults to `0`. Priority must be unique between multiple rules.
66293
+ */
66294
+ priority?: pulumi.Input<number>;
66295
+ /**
66296
+ * Specifies special object selection criteria (documented below).
66297
+ */
66298
+ sourceSelectionCriterias?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ReplicationConfigurationRuleSourceSelectionCriteria>[]>;
66299
+ /**
66300
+ * Status of the rule. Either `Enabled` or `Disabled`. The rule is ignored if status is not Enabled.
66301
+ */
66302
+ status: pulumi.Input<string>;
66303
+ }
66304
+ interface BucketV2ReplicationConfigurationRuleDestination {
66305
+ /**
66306
+ * Specifies the overrides to use for object owners on replication (documented below). Must be used in conjunction with `accountId` owner override configuration.
66307
+ */
66308
+ accessControlTranslations?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ReplicationConfigurationRuleDestinationAccessControlTranslation>[]>;
66309
+ /**
66310
+ * Account ID to use for overriding the object owner on replication. Must be used in conjunction with `accessControlTranslation` override configuration.
66311
+ */
66312
+ accountId?: pulumi.Input<string>;
66313
+ /**
66314
+ * ARN of the S3 bucket where you want Amazon S3 to store replicas of the object identified by the rule.
66315
+ */
66316
+ bucket: pulumi.Input<string>;
66317
+ /**
66318
+ * Enables replication metrics (required for S3 RTC) (documented below).
66319
+ */
66320
+ metrics?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ReplicationConfigurationRuleDestinationMetric>[]>;
66321
+ /**
66322
+ * Destination KMS encryption key ARN for SSE-KMS replication. Must be used in conjunction with
66323
+ * `sseKmsEncryptedObjects` source selection criteria.
66324
+ */
66325
+ replicaKmsKeyId?: pulumi.Input<string>;
66326
+ /**
66327
+ * Enables S3 Replication Time Control (S3 RTC) (documented below).
66328
+ */
66329
+ replicationTimes?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ReplicationConfigurationRuleDestinationReplicationTime>[]>;
66330
+ /**
66331
+ * The [storage class](https://docs.aws.amazon.com/AmazonS3/latest/API/API_Destination.html#AmazonS3-Type-Destination-StorageClass) used to store the object. By default, Amazon S3 uses the storage class of the source object to create the object replica.
66332
+ */
66333
+ storageClass?: pulumi.Input<string>;
66334
+ }
66335
+ interface BucketV2ReplicationConfigurationRuleDestinationAccessControlTranslation {
66336
+ /**
66337
+ * Specifies the replica ownership. For default and valid values, see [PUT bucket replication](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html) in the Amazon S3 API Reference. The only valid value is `Destination`.
66338
+ */
66339
+ owner: pulumi.Input<string>;
66340
+ }
66341
+ interface BucketV2ReplicationConfigurationRuleDestinationMetric {
66342
+ /**
66343
+ * Threshold within which objects are to be replicated. The only valid value is `15`.
66344
+ */
66345
+ minutes?: pulumi.Input<number>;
66346
+ /**
66347
+ * Status of replication metrics. Either `Enabled` or `Disabled`.
66348
+ */
66349
+ status?: pulumi.Input<string>;
66350
+ }
66351
+ interface BucketV2ReplicationConfigurationRuleDestinationReplicationTime {
66352
+ /**
66353
+ * Threshold within which objects are to be replicated. The only valid value is `15`.
66354
+ */
66355
+ minutes?: pulumi.Input<number>;
66356
+ /**
66357
+ * Status of RTC. Either `Enabled` or `Disabled`.
66358
+ */
66359
+ status?: pulumi.Input<string>;
66360
+ }
66361
+ interface BucketV2ReplicationConfigurationRuleFilter {
66362
+ /**
66363
+ * Object keyname prefix that identifies subset of objects to which the rule applies. Must be less than or equal to 1024 characters in length.
66364
+ */
66365
+ prefix?: pulumi.Input<string>;
66366
+ /**
66367
+ * A map of tags that identifies subset of objects to which the rule applies.
66368
+ * The rule applies only to objects having all the tags in its tagset.
66369
+ */
66370
+ tags?: pulumi.Input<{
66371
+ [key: string]: pulumi.Input<string>;
66372
+ }>;
66373
+ }
66374
+ interface BucketV2ReplicationConfigurationRuleSourceSelectionCriteria {
66375
+ /**
66376
+ * Match SSE-KMS encrypted objects (documented below). If specified, `replicaKmsKeyId`
66377
+ * in `destination` must be specified as well.
66378
+ */
66379
+ sseKmsEncryptedObjects?: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObject>[]>;
66380
+ }
66381
+ interface BucketV2ReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObject {
66382
+ /**
66383
+ * Boolean which indicates if this criteria is enabled.
66384
+ */
66385
+ enabled: pulumi.Input<boolean>;
66386
+ }
66387
+ interface BucketV2ServerSideEncryptionConfiguration {
66388
+ /**
66389
+ * Single object for server-side encryption by default configuration. (documented below)
66390
+ */
66391
+ rules: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ServerSideEncryptionConfigurationRule>[]>;
66392
+ }
66393
+ interface BucketV2ServerSideEncryptionConfigurationRule {
66394
+ /**
66395
+ * Single object for setting server-side encryption by default. (documented below)
66396
+ */
66397
+ applyServerSideEncryptionByDefaults: pulumi.Input<pulumi.Input<inputs.s3.BucketV2ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault>[]>;
66398
+ /**
66399
+ * Whether or not to use [Amazon S3 Bucket Keys](https://docs.aws.amazon.com/AmazonS3/latest/dev/bucket-key.html) for SSE-KMS.
66400
+ */
66401
+ bucketKeyEnabled?: pulumi.Input<boolean>;
66402
+ }
66403
+ interface BucketV2ServerSideEncryptionConfigurationRuleApplyServerSideEncryptionByDefault {
66404
+ /**
66405
+ * AWS KMS master key ID used for the SSE-KMS encryption. This can only be used when you set the value of `sseAlgorithm` as `aws:kms`. The default `aws/s3` AWS KMS master key is used if this element is absent while the `sseAlgorithm` is `aws:kms`.
66406
+ */
66407
+ kmsMasterKeyId?: pulumi.Input<string>;
66408
+ /**
66409
+ * Server-side encryption algorithm to use. Valid values are `AES256` and `aws:kms`
66410
+ */
66411
+ sseAlgorithm: pulumi.Input<string>;
66412
+ }
66413
+ interface BucketV2Versioning {
66414
+ /**
66415
+ * Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
66416
+ */
66417
+ enabled?: pulumi.Input<boolean>;
66418
+ /**
66419
+ * Enable MFA delete for either `Change the versioning state of your bucket` or `Permanently delete an object version`. Default is `false`. This cannot be used to toggle this setting but is available to allow managed buckets to reflect the state in AWS
66420
+ */
66421
+ mfaDelete?: pulumi.Input<boolean>;
66422
+ }
66423
+ interface BucketV2Website {
66424
+ /**
66425
+ * Absolute path to the document to return in case of a 4XX error.
66426
+ */
66427
+ errorDocument?: pulumi.Input<string>;
66428
+ /**
66429
+ * Amazon S3 returns this index document when requests are made to the root domain or any of the subfolders.
66430
+ */
66431
+ indexDocument?: pulumi.Input<string>;
66432
+ /**
66433
+ * Hostname to redirect all website requests for this bucket to. Hostname can optionally be prefixed with a protocol (`http://` or `https://`) to use when redirecting requests. The default is the protocol that is used in the original request.
66434
+ */
66435
+ redirectAllRequestsTo?: pulumi.Input<string>;
66436
+ /**
66437
+ * JSON array containing [routing rules](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html)
66438
+ * describing redirect behavior and when redirects are applied.
66439
+ */
66440
+ routingRules?: pulumi.Input<string>;
66441
+ }
65644
66442
  interface BucketVersioning {
65645
66443
  /**
65646
66444
  * Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
@@ -65651,6 +66449,16 @@ export declare namespace s3 {
65651
66449
  */
65652
66450
  mfaDelete?: pulumi.Input<boolean>;
65653
66451
  }
66452
+ interface BucketVersioningV2VersioningConfiguration {
66453
+ /**
66454
+ * Specifies whether MFA delete is enabled in the bucket versioning configuration. Valid values: `Enabled` or `Disabled`.
66455
+ */
66456
+ mfaDelete?: pulumi.Input<string>;
66457
+ /**
66458
+ * Versioning state of the bucket. Valid values: `Enabled`, `Suspended`, or `Disabled`. `Disabled` should only be used when creating or importing resources that correspond to unversioned S3 buckets.
66459
+ */
66460
+ status: pulumi.Input<string>;
66461
+ }
65654
66462
  interface BucketVersioningVersioningConfiguration {
65655
66463
  /**
65656
66464
  * Specifies whether MFA delete is enabled in the bucket versioning configuration. Valid values: `Enabled` or `Disabled`.
@@ -65746,6 +66554,72 @@ export declare namespace s3 {
65746
66554
  */
65747
66555
  replaceKeyWith?: pulumi.Input<string>;
65748
66556
  }
66557
+ interface BucketWebsiteConfigurationV2ErrorDocument {
66558
+ /**
66559
+ * Object key name to use when a 4XX class error occurs.
66560
+ */
66561
+ key: pulumi.Input<string>;
66562
+ }
66563
+ interface BucketWebsiteConfigurationV2IndexDocument {
66564
+ /**
66565
+ * Suffix that is appended to a request that is for a directory on the website endpoint.
66566
+ * For example, if the suffix is `index.html` and you make a request to `samplebucket/images/`, the data that is returned will be for the object with the key name `images/index.html`.
66567
+ * The suffix must not be empty and must not include a slash character.
66568
+ */
66569
+ suffix: pulumi.Input<string>;
66570
+ }
66571
+ interface BucketWebsiteConfigurationV2RedirectAllRequestsTo {
66572
+ /**
66573
+ * Name of the host where requests are redirected.
66574
+ */
66575
+ hostName: pulumi.Input<string>;
66576
+ /**
66577
+ * Protocol to use when redirecting requests. The default is the protocol that is used in the original request. Valid values: `http`, `https`.
66578
+ */
66579
+ protocol?: pulumi.Input<string>;
66580
+ }
66581
+ interface BucketWebsiteConfigurationV2RoutingRule {
66582
+ /**
66583
+ * Configuration block for describing a condition that must be met for the specified redirect to apply. See below.
66584
+ */
66585
+ condition?: pulumi.Input<inputs.s3.BucketWebsiteConfigurationV2RoutingRuleCondition>;
66586
+ /**
66587
+ * Configuration block for redirect information. See below.
66588
+ */
66589
+ redirect: pulumi.Input<inputs.s3.BucketWebsiteConfigurationV2RoutingRuleRedirect>;
66590
+ }
66591
+ interface BucketWebsiteConfigurationV2RoutingRuleCondition {
66592
+ /**
66593
+ * HTTP error code when the redirect is applied. If specified with `keyPrefixEquals`, then both must be true for the redirect to be applied.
66594
+ */
66595
+ httpErrorCodeReturnedEquals?: pulumi.Input<string>;
66596
+ /**
66597
+ * Object key name prefix when the redirect is applied. If specified with `httpErrorCodeReturnedEquals`, then both must be true for the redirect to be applied.
66598
+ */
66599
+ keyPrefixEquals?: pulumi.Input<string>;
66600
+ }
66601
+ interface BucketWebsiteConfigurationV2RoutingRuleRedirect {
66602
+ /**
66603
+ * Host name to use in the redirect request.
66604
+ */
66605
+ hostName?: pulumi.Input<string>;
66606
+ /**
66607
+ * HTTP redirect code to use on the response.
66608
+ */
66609
+ httpRedirectCode?: pulumi.Input<string>;
66610
+ /**
66611
+ * Protocol to use when redirecting requests. The default is the protocol that is used in the original request. Valid values: `http`, `https`.
66612
+ */
66613
+ protocol?: pulumi.Input<string>;
66614
+ /**
66615
+ * Object key prefix to use in the redirect request. 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`.
66616
+ */
66617
+ replaceKeyPrefixWith?: pulumi.Input<string>;
66618
+ /**
66619
+ * Specific object key to use in the redirect request. For example, redirect request to `error.html`.
66620
+ */
66621
+ replaceKeyWith?: pulumi.Input<string>;
66622
+ }
65749
66623
  interface DirectoryBucketLocation {
65750
66624
  /**
65751
66625
  * [Availability Zone ID](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#az-ids) or Local Zone ID.
@@ -66372,6 +67246,41 @@ export declare namespace s3tables {
66372
67246
  */
66373
67247
  minSnapshotsToKeep: pulumi.Input<number>;
66374
67248
  }
67249
+ interface TableMetadata {
67250
+ /**
67251
+ * Contains details about the metadata for an Iceberg table. This block defines the schema structure for the Apache Iceberg table format.
67252
+ * See `iceberg` below.
67253
+ */
67254
+ iceberg: pulumi.Input<inputs.s3tables.TableMetadataIceberg>;
67255
+ }
67256
+ interface TableMetadataIceberg {
67257
+ /**
67258
+ * Schema configuration for the Iceberg table.
67259
+ * See `schema` below.
67260
+ */
67261
+ schema: pulumi.Input<inputs.s3tables.TableMetadataIcebergSchema>;
67262
+ }
67263
+ interface TableMetadataIcebergSchema {
67264
+ /**
67265
+ * List of schema fields for the Iceberg table. Each field defines a column in the table schema.
67266
+ * See `field` below.
67267
+ */
67268
+ fields?: pulumi.Input<pulumi.Input<inputs.s3tables.TableMetadataIcebergSchemaField>[]>;
67269
+ }
67270
+ interface TableMetadataIcebergSchemaField {
67271
+ /**
67272
+ * The name of the field.
67273
+ */
67274
+ name: pulumi.Input<string>;
67275
+ /**
67276
+ * A Boolean value that specifies whether values are required for each row in this field. Defaults to `false`.
67277
+ */
67278
+ required?: pulumi.Input<boolean>;
67279
+ /**
67280
+ * The field type. S3 Tables supports all Apache Iceberg primitive types including: `boolean`, `int`, `long`, `float`, `double`, `decimal(precision,scale)`, `date`, `time`, `timestamp`, `timestamptz`, `string`, `uuid`, `fixed(length)`, `binary`.
67281
+ */
67282
+ type: pulumi.Input<string>;
67283
+ }
66375
67284
  }
66376
67285
  export declare namespace sagemaker {
66377
67286
  interface AppImageConfigCodeEditorAppImageConfig {
@@ -80160,6 +81069,10 @@ export declare namespace wafv2 {
80160
81069
  * Additional configuration for using the Account Creation Fraud Prevention managed rule group. Use this to specify information such as the registration page of your application and the type of content to accept or reject from the client.
80161
81070
  */
80162
81071
  awsManagedRulesAcfpRuleSet?: pulumi.Input<inputs.wafv2.WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAcfpRuleSet>;
81072
+ /**
81073
+ * Configuration for using the anti-DDoS managed rule group. See `awsManagedRulesAntiDdosRuleSet` for more details.
81074
+ */
81075
+ awsManagedRulesAntiDdosRuleSet?: pulumi.Input<inputs.wafv2.WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAntiDdosRuleSet>;
80163
81076
  /**
80164
81077
  * Additional configuration for using the Account Takeover Protection managed rule group. Use this to specify information such as the sign-in page of your application and the type of content to accept or reject from the client.
80165
81078
  */
@@ -80329,6 +81242,42 @@ export declare namespace wafv2 {
80329
81242
  */
80330
81243
  successCodes: pulumi.Input<pulumi.Input<number>[]>;
80331
81244
  }
81245
+ interface WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAntiDdosRuleSet {
81246
+ /**
81247
+ * Configuration for the request handling that's applied by the managed rule group rules `ChallengeAllDuringEvent` and `ChallengeDDoSRequests` during a distributed denial of service (DDoS) attack. See `clientSideActionConfig` for more details.
81248
+ */
81249
+ clientSideActionConfig: pulumi.Input<inputs.wafv2.WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAntiDdosRuleSetClientSideActionConfig>;
81250
+ /**
81251
+ * Sensitivity that the rule group rule DDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are `LOW` (Default), `MEDIUM`, and `HIGH`.
81252
+ */
81253
+ sensitivityToBlock?: pulumi.Input<string>;
81254
+ }
81255
+ interface WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAntiDdosRuleSetClientSideActionConfig {
81256
+ /**
81257
+ * Configuration for the use of the `AWSManagedRulesAntiDDoSRuleSet` rules `ChallengeAllDuringEvent` and `ChallengeDDoSRequests`.
81258
+ */
81259
+ challenge: pulumi.Input<inputs.wafv2.WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallenge>;
81260
+ }
81261
+ interface WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallenge {
81262
+ /**
81263
+ * Block for the list of the regular expressions to match against the web request URI, used to identify requests that can't handle a silent browser challenge.
81264
+ */
81265
+ exemptUriRegularExpressions?: pulumi.Input<pulumi.Input<inputs.wafv2.WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpression>[]>;
81266
+ /**
81267
+ * Sensitivity that the rule group rule ChallengeDDoSRequests uses when matching against the DDoS suspicion labeling on a request. Valid values are `LOW`, `MEDIUM` and `HIGH` (Default).
81268
+ */
81269
+ sensitivity?: pulumi.Input<string>;
81270
+ /**
81271
+ * Configuration whether to use the `AWSManagedRulesAntiDDoSRuleSet` rules `ChallengeAllDuringEvent` and `ChallengeDDoSRequests` in the rule group evaluation. Valid values are `ENABLED` and `DISABLED`.
81272
+ */
81273
+ usageOfAction: pulumi.Input<string>;
81274
+ }
81275
+ interface WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAntiDdosRuleSetClientSideActionConfigChallengeExemptUriRegularExpression {
81276
+ /**
81277
+ * Regular expression string.
81278
+ */
81279
+ regexString?: pulumi.Input<string>;
81280
+ }
80332
81281
  interface WebAclRuleStatementManagedRuleGroupStatementManagedRuleGroupConfigAwsManagedRulesAtpRuleSet {
80333
81282
  /**
80334
81283
  * Whether or not to allow the use of regular expressions in the login page path.
@@ -80478,9 +81427,6 @@ export declare namespace wafv2 {
80478
81427
  * Instructs AWS WAF to run a Captcha check against the web request. See `captcha` below for details.
80479
81428
  */
80480
81429
  captcha?: pulumi.Input<inputs.wafv2.WebAclRuleStatementManagedRuleGroupStatementRuleActionOverrideActionToUseCaptcha>;
80481
- /**
80482
- * Instructs AWS WAF to run a check against the request to verify that the request is coming from a legitimate client session. See `challenge` below for details.
80483
- */
80484
81430
  challenge?: pulumi.Input<inputs.wafv2.WebAclRuleStatementManagedRuleGroupStatementRuleActionOverrideActionToUseChallenge>;
80485
81431
  count?: pulumi.Input<inputs.wafv2.WebAclRuleStatementManagedRuleGroupStatementRuleActionOverrideActionToUseCount>;
80486
81432
  }
@@ -84123,9 +85069,6 @@ export declare namespace wafv2 {
84123
85069
  * Instructs AWS WAF to run a Captcha check against the web request. See `captcha` below for details.
84124
85070
  */
84125
85071
  captcha?: pulumi.Input<inputs.wafv2.WebAclRuleStatementRuleGroupReferenceStatementRuleActionOverrideActionToUseCaptcha>;
84126
- /**
84127
- * Instructs AWS WAF to run a check against the request to verify that the request is coming from a legitimate client session. See `challenge` below for details.
84128
- */
84129
85072
  challenge?: pulumi.Input<inputs.wafv2.WebAclRuleStatementRuleGroupReferenceStatementRuleActionOverrideActionToUseChallenge>;
84130
85073
  count?: pulumi.Input<inputs.wafv2.WebAclRuleStatementRuleGroupReferenceStatementRuleActionOverrideActionToUseCount>;
84131
85074
  }