aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1 lines • 192 kB
JavaScript
"use strict";var _a,_b,_c,_d,_e,_f;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnStorageLens=exports.CfnMultiRegionAccessPointPolicy=exports.CfnMultiRegionAccessPoint=exports.CfnBucketPolicy=exports.CfnBucket=exports.CfnAccessPoint=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnAccessPointPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("bucket",cdk.requiredValidator)(properties.bucket)),errors.collect(cdk.propertyValidator("bucket",cdk.validateString)(properties.bucket)),errors.collect(cdk.propertyValidator("bucketAccountId",cdk.validateString)(properties.bucketAccountId)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("policy",cdk.validateObject)(properties.policy)),errors.collect(cdk.propertyValidator("policyStatus",cdk.validateObject)(properties.policyStatus)),errors.collect(cdk.propertyValidator("publicAccessBlockConfiguration",CfnAccessPoint_PublicAccessBlockConfigurationPropertyValidator)(properties.publicAccessBlockConfiguration)),errors.collect(cdk.propertyValidator("vpcConfiguration",CfnAccessPoint_VpcConfigurationPropertyValidator)(properties.vpcConfiguration)),errors.wrap('supplied properties not correct for "CfnAccessPointProps"')}function cfnAccessPointPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccessPointPropsValidator(properties).assertSuccess(),{Bucket:cdk.stringToCloudFormation(properties.bucket),BucketAccountId:cdk.stringToCloudFormation(properties.bucketAccountId),Name:cdk.stringToCloudFormation(properties.name),Policy:cdk.objectToCloudFormation(properties.policy),PolicyStatus:cdk.objectToCloudFormation(properties.policyStatus),PublicAccessBlockConfiguration:cfnAccessPointPublicAccessBlockConfigurationPropertyToCloudFormation(properties.publicAccessBlockConfiguration),VpcConfiguration:cfnAccessPointVpcConfigurationPropertyToCloudFormation(properties.vpcConfiguration)}):properties}function CfnAccessPointPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("bucket","Bucket",cfn_parse.FromCloudFormation.getString(properties.Bucket)),ret.addPropertyResult("bucketAccountId","BucketAccountId",properties.BucketAccountId!=null?cfn_parse.FromCloudFormation.getString(properties.BucketAccountId):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("policy","Policy",properties.Policy!=null?cfn_parse.FromCloudFormation.getAny(properties.Policy):void 0),ret.addPropertyResult("policyStatus","PolicyStatus",properties.PolicyStatus!=null?cfn_parse.FromCloudFormation.getAny(properties.PolicyStatus):void 0),ret.addPropertyResult("publicAccessBlockConfiguration","PublicAccessBlockConfiguration",properties.PublicAccessBlockConfiguration!=null?CfnAccessPointPublicAccessBlockConfigurationPropertyFromCloudFormation(properties.PublicAccessBlockConfiguration):void 0),ret.addPropertyResult("vpcConfiguration","VpcConfiguration",properties.VpcConfiguration!=null?CfnAccessPointVpcConfigurationPropertyFromCloudFormation(properties.VpcConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAccessPoint extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnAccessPoint.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_s3_CfnAccessPointProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAccessPoint),error}cdk.requireProperty(props,"bucket",this),this.attrAlias=cdk.Token.asString(this.getAtt("Alias",cdk.ResolutionTypeHint.STRING)),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.attrName=cdk.Token.asString(this.getAtt("Name",cdk.ResolutionTypeHint.STRING)),this.attrNetworkOrigin=cdk.Token.asString(this.getAtt("NetworkOrigin",cdk.ResolutionTypeHint.STRING)),this.bucket=props.bucket,this.bucketAccountId=props.bucketAccountId,this.name=props.name,this.policy=props.policy,this.policyStatus=props.policyStatus,this.publicAccessBlockConfiguration=props.publicAccessBlockConfiguration,this.vpcConfiguration=props.vpcConfiguration}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAccessPointPropsFromCloudFormation(resourceProperties),ret=new CfnAccessPoint(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnAccessPoint.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{bucket:this.bucket,bucketAccountId:this.bucketAccountId,name:this.name,policy:this.policy,policyStatus:this.policyStatus,publicAccessBlockConfiguration:this.publicAccessBlockConfiguration,vpcConfiguration:this.vpcConfiguration}}renderProperties(props){return cfnAccessPointPropsToCloudFormation(props)}}exports.CfnAccessPoint=CfnAccessPoint,_a=JSII_RTTI_SYMBOL_1,CfnAccessPoint[_a]={fqn:"aws-cdk-lib.aws_s3.CfnAccessPoint",version:"2.70.0"},CfnAccessPoint.CFN_RESOURCE_TYPE_NAME="AWS::S3::AccessPoint";function CfnAccessPoint_PolicyStatusPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("isPublic",cdk.validateString)(properties.isPublic)),errors.wrap('supplied properties not correct for "PolicyStatusProperty"')}function cfnAccessPointPolicyStatusPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccessPoint_PolicyStatusPropertyValidator(properties).assertSuccess(),{IsPublic:cdk.stringToCloudFormation(properties.isPublic)}):properties}function CfnAccessPointPolicyStatusPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("isPublic","IsPublic",properties.IsPublic!=null?cfn_parse.FromCloudFormation.getString(properties.IsPublic):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPoint_PublicAccessBlockConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("blockPublicAcls",cdk.validateBoolean)(properties.blockPublicAcls)),errors.collect(cdk.propertyValidator("blockPublicPolicy",cdk.validateBoolean)(properties.blockPublicPolicy)),errors.collect(cdk.propertyValidator("ignorePublicAcls",cdk.validateBoolean)(properties.ignorePublicAcls)),errors.collect(cdk.propertyValidator("restrictPublicBuckets",cdk.validateBoolean)(properties.restrictPublicBuckets)),errors.wrap('supplied properties not correct for "PublicAccessBlockConfigurationProperty"')}function cfnAccessPointPublicAccessBlockConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccessPoint_PublicAccessBlockConfigurationPropertyValidator(properties).assertSuccess(),{BlockPublicAcls:cdk.booleanToCloudFormation(properties.blockPublicAcls),BlockPublicPolicy:cdk.booleanToCloudFormation(properties.blockPublicPolicy),IgnorePublicAcls:cdk.booleanToCloudFormation(properties.ignorePublicAcls),RestrictPublicBuckets:cdk.booleanToCloudFormation(properties.restrictPublicBuckets)}):properties}function CfnAccessPointPublicAccessBlockConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("blockPublicAcls","BlockPublicAcls",properties.BlockPublicAcls!=null?cfn_parse.FromCloudFormation.getBoolean(properties.BlockPublicAcls):void 0),ret.addPropertyResult("blockPublicPolicy","BlockPublicPolicy",properties.BlockPublicPolicy!=null?cfn_parse.FromCloudFormation.getBoolean(properties.BlockPublicPolicy):void 0),ret.addPropertyResult("ignorePublicAcls","IgnorePublicAcls",properties.IgnorePublicAcls!=null?cfn_parse.FromCloudFormation.getBoolean(properties.IgnorePublicAcls):void 0),ret.addPropertyResult("restrictPublicBuckets","RestrictPublicBuckets",properties.RestrictPublicBuckets!=null?cfn_parse.FromCloudFormation.getBoolean(properties.RestrictPublicBuckets):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccessPoint_VpcConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("vpcId",cdk.validateString)(properties.vpcId)),errors.wrap('supplied properties not correct for "VpcConfigurationProperty"')}function cfnAccessPointVpcConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccessPoint_VpcConfigurationPropertyValidator(properties).assertSuccess(),{VpcId:cdk.stringToCloudFormation(properties.vpcId)}):properties}function CfnAccessPointVpcConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("vpcId","VpcId",properties.VpcId!=null?cfn_parse.FromCloudFormation.getString(properties.VpcId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucketPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("accelerateConfiguration",CfnBucket_AccelerateConfigurationPropertyValidator)(properties.accelerateConfiguration)),errors.collect(cdk.propertyValidator("accessControl",cdk.validateString)(properties.accessControl)),errors.collect(cdk.propertyValidator("analyticsConfigurations",cdk.listValidator(CfnBucket_AnalyticsConfigurationPropertyValidator))(properties.analyticsConfigurations)),errors.collect(cdk.propertyValidator("bucketEncryption",CfnBucket_BucketEncryptionPropertyValidator)(properties.bucketEncryption)),errors.collect(cdk.propertyValidator("bucketName",cdk.validateString)(properties.bucketName)),errors.collect(cdk.propertyValidator("corsConfiguration",CfnBucket_CorsConfigurationPropertyValidator)(properties.corsConfiguration)),errors.collect(cdk.propertyValidator("intelligentTieringConfigurations",cdk.listValidator(CfnBucket_IntelligentTieringConfigurationPropertyValidator))(properties.intelligentTieringConfigurations)),errors.collect(cdk.propertyValidator("inventoryConfigurations",cdk.listValidator(CfnBucket_InventoryConfigurationPropertyValidator))(properties.inventoryConfigurations)),errors.collect(cdk.propertyValidator("lifecycleConfiguration",CfnBucket_LifecycleConfigurationPropertyValidator)(properties.lifecycleConfiguration)),errors.collect(cdk.propertyValidator("loggingConfiguration",CfnBucket_LoggingConfigurationPropertyValidator)(properties.loggingConfiguration)),errors.collect(cdk.propertyValidator("metricsConfigurations",cdk.listValidator(CfnBucket_MetricsConfigurationPropertyValidator))(properties.metricsConfigurations)),errors.collect(cdk.propertyValidator("notificationConfiguration",CfnBucket_NotificationConfigurationPropertyValidator)(properties.notificationConfiguration)),errors.collect(cdk.propertyValidator("objectLockConfiguration",CfnBucket_ObjectLockConfigurationPropertyValidator)(properties.objectLockConfiguration)),errors.collect(cdk.propertyValidator("objectLockEnabled",cdk.validateBoolean)(properties.objectLockEnabled)),errors.collect(cdk.propertyValidator("ownershipControls",CfnBucket_OwnershipControlsPropertyValidator)(properties.ownershipControls)),errors.collect(cdk.propertyValidator("publicAccessBlockConfiguration",CfnBucket_PublicAccessBlockConfigurationPropertyValidator)(properties.publicAccessBlockConfiguration)),errors.collect(cdk.propertyValidator("replicationConfiguration",CfnBucket_ReplicationConfigurationPropertyValidator)(properties.replicationConfiguration)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("versioningConfiguration",CfnBucket_VersioningConfigurationPropertyValidator)(properties.versioningConfiguration)),errors.collect(cdk.propertyValidator("websiteConfiguration",CfnBucket_WebsiteConfigurationPropertyValidator)(properties.websiteConfiguration)),errors.wrap('supplied properties not correct for "CfnBucketProps"')}function cfnBucketPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucketPropsValidator(properties).assertSuccess(),{AccelerateConfiguration:cfnBucketAccelerateConfigurationPropertyToCloudFormation(properties.accelerateConfiguration),AccessControl:cdk.stringToCloudFormation(properties.accessControl),AnalyticsConfigurations:cdk.listMapper(cfnBucketAnalyticsConfigurationPropertyToCloudFormation)(properties.analyticsConfigurations),BucketEncryption:cfnBucketBucketEncryptionPropertyToCloudFormation(properties.bucketEncryption),BucketName:cdk.stringToCloudFormation(properties.bucketName),CorsConfiguration:cfnBucketCorsConfigurationPropertyToCloudFormation(properties.corsConfiguration),IntelligentTieringConfigurations:cdk.listMapper(cfnBucketIntelligentTieringConfigurationPropertyToCloudFormation)(properties.intelligentTieringConfigurations),InventoryConfigurations:cdk.listMapper(cfnBucketInventoryConfigurationPropertyToCloudFormation)(properties.inventoryConfigurations),LifecycleConfiguration:cfnBucketLifecycleConfigurationPropertyToCloudFormation(properties.lifecycleConfiguration),LoggingConfiguration:cfnBucketLoggingConfigurationPropertyToCloudFormation(properties.loggingConfiguration),MetricsConfigurations:cdk.listMapper(cfnBucketMetricsConfigurationPropertyToCloudFormation)(properties.metricsConfigurations),NotificationConfiguration:cfnBucketNotificationConfigurationPropertyToCloudFormation(properties.notificationConfiguration),ObjectLockConfiguration:cfnBucketObjectLockConfigurationPropertyToCloudFormation(properties.objectLockConfiguration),ObjectLockEnabled:cdk.booleanToCloudFormation(properties.objectLockEnabled),OwnershipControls:cfnBucketOwnershipControlsPropertyToCloudFormation(properties.ownershipControls),PublicAccessBlockConfiguration:cfnBucketPublicAccessBlockConfigurationPropertyToCloudFormation(properties.publicAccessBlockConfiguration),ReplicationConfiguration:cfnBucketReplicationConfigurationPropertyToCloudFormation(properties.replicationConfiguration),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),VersioningConfiguration:cfnBucketVersioningConfigurationPropertyToCloudFormation(properties.versioningConfiguration),WebsiteConfiguration:cfnBucketWebsiteConfigurationPropertyToCloudFormation(properties.websiteConfiguration)}):properties}function CfnBucketPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("accelerateConfiguration","AccelerateConfiguration",properties.AccelerateConfiguration!=null?CfnBucketAccelerateConfigurationPropertyFromCloudFormation(properties.AccelerateConfiguration):void 0),ret.addPropertyResult("accessControl","AccessControl",properties.AccessControl!=null?cfn_parse.FromCloudFormation.getString(properties.AccessControl):void 0),ret.addPropertyResult("analyticsConfigurations","AnalyticsConfigurations",properties.AnalyticsConfigurations!=null?cfn_parse.FromCloudFormation.getArray(CfnBucketAnalyticsConfigurationPropertyFromCloudFormation)(properties.AnalyticsConfigurations):void 0),ret.addPropertyResult("bucketEncryption","BucketEncryption",properties.BucketEncryption!=null?CfnBucketBucketEncryptionPropertyFromCloudFormation(properties.BucketEncryption):void 0),ret.addPropertyResult("bucketName","BucketName",properties.BucketName!=null?cfn_parse.FromCloudFormation.getString(properties.BucketName):void 0),ret.addPropertyResult("corsConfiguration","CorsConfiguration",properties.CorsConfiguration!=null?CfnBucketCorsConfigurationPropertyFromCloudFormation(properties.CorsConfiguration):void 0),ret.addPropertyResult("intelligentTieringConfigurations","IntelligentTieringConfigurations",properties.IntelligentTieringConfigurations!=null?cfn_parse.FromCloudFormation.getArray(CfnBucketIntelligentTieringConfigurationPropertyFromCloudFormation)(properties.IntelligentTieringConfigurations):void 0),ret.addPropertyResult("inventoryConfigurations","InventoryConfigurations",properties.InventoryConfigurations!=null?cfn_parse.FromCloudFormation.getArray(CfnBucketInventoryConfigurationPropertyFromCloudFormation)(properties.InventoryConfigurations):void 0),ret.addPropertyResult("lifecycleConfiguration","LifecycleConfiguration",properties.LifecycleConfiguration!=null?CfnBucketLifecycleConfigurationPropertyFromCloudFormation(properties.LifecycleConfiguration):void 0),ret.addPropertyResult("loggingConfiguration","LoggingConfiguration",properties.LoggingConfiguration!=null?CfnBucketLoggingConfigurationPropertyFromCloudFormation(properties.LoggingConfiguration):void 0),ret.addPropertyResult("metricsConfigurations","MetricsConfigurations",properties.MetricsConfigurations!=null?cfn_parse.FromCloudFormation.getArray(CfnBucketMetricsConfigurationPropertyFromCloudFormation)(properties.MetricsConfigurations):void 0),ret.addPropertyResult("notificationConfiguration","NotificationConfiguration",properties.NotificationConfiguration!=null?CfnBucketNotificationConfigurationPropertyFromCloudFormation(properties.NotificationConfiguration):void 0),ret.addPropertyResult("objectLockConfiguration","ObjectLockConfiguration",properties.ObjectLockConfiguration!=null?CfnBucketObjectLockConfigurationPropertyFromCloudFormation(properties.ObjectLockConfiguration):void 0),ret.addPropertyResult("objectLockEnabled","ObjectLockEnabled",properties.ObjectLockEnabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.ObjectLockEnabled):void 0),ret.addPropertyResult("ownershipControls","OwnershipControls",properties.OwnershipControls!=null?CfnBucketOwnershipControlsPropertyFromCloudFormation(properties.OwnershipControls):void 0),ret.addPropertyResult("publicAccessBlockConfiguration","PublicAccessBlockConfiguration",properties.PublicAccessBlockConfiguration!=null?CfnBucketPublicAccessBlockConfigurationPropertyFromCloudFormation(properties.PublicAccessBlockConfiguration):void 0),ret.addPropertyResult("replicationConfiguration","ReplicationConfiguration",properties.ReplicationConfiguration!=null?CfnBucketReplicationConfigurationPropertyFromCloudFormation(properties.ReplicationConfiguration):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("versioningConfiguration","VersioningConfiguration",properties.VersioningConfiguration!=null?CfnBucketVersioningConfigurationPropertyFromCloudFormation(properties.VersioningConfiguration):void 0),ret.addPropertyResult("websiteConfiguration","WebsiteConfiguration",properties.WebsiteConfiguration!=null?CfnBucketWebsiteConfigurationPropertyFromCloudFormation(properties.WebsiteConfiguration):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnBucket extends cdk.CfnResource{constructor(scope,id,props={}){super(scope,id,{type:CfnBucket.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_s3_CfnBucketProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnBucket),error}this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.attrDomainName=cdk.Token.asString(this.getAtt("DomainName",cdk.ResolutionTypeHint.STRING)),this.attrDualStackDomainName=cdk.Token.asString(this.getAtt("DualStackDomainName",cdk.ResolutionTypeHint.STRING)),this.attrRegionalDomainName=cdk.Token.asString(this.getAtt("RegionalDomainName",cdk.ResolutionTypeHint.STRING)),this.attrWebsiteUrl=cdk.Token.asString(this.getAtt("WebsiteURL",cdk.ResolutionTypeHint.STRING)),this.accelerateConfiguration=props.accelerateConfiguration,this.accessControl=props.accessControl,this.analyticsConfigurations=props.analyticsConfigurations,this.bucketEncryption=props.bucketEncryption,this.bucketName=props.bucketName,this.corsConfiguration=props.corsConfiguration,this.intelligentTieringConfigurations=props.intelligentTieringConfigurations,this.inventoryConfigurations=props.inventoryConfigurations,this.lifecycleConfiguration=props.lifecycleConfiguration,this.loggingConfiguration=props.loggingConfiguration,this.metricsConfigurations=props.metricsConfigurations,this.notificationConfiguration=props.notificationConfiguration,this.objectLockConfiguration=props.objectLockConfiguration,this.objectLockEnabled=props.objectLockEnabled,this.ownershipControls=props.ownershipControls,this.publicAccessBlockConfiguration=props.publicAccessBlockConfiguration,this.replicationConfiguration=props.replicationConfiguration,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::S3::Bucket",props.tags,{tagPropertyName:"tags"}),this.versioningConfiguration=props.versioningConfiguration,this.websiteConfiguration=props.websiteConfiguration,this.node.scope&&cdk.Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::S3::Bucket' is a stateful resource type, and you must specify a Removal Policy for it. Call 'resource.applyRemovalPolicy()'."]:[]})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnBucketPropsFromCloudFormation(resourceProperties),ret=new CfnBucket(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnBucket.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{accelerateConfiguration:this.accelerateConfiguration,accessControl:this.accessControl,analyticsConfigurations:this.analyticsConfigurations,bucketEncryption:this.bucketEncryption,bucketName:this.bucketName,corsConfiguration:this.corsConfiguration,intelligentTieringConfigurations:this.intelligentTieringConfigurations,inventoryConfigurations:this.inventoryConfigurations,lifecycleConfiguration:this.lifecycleConfiguration,loggingConfiguration:this.loggingConfiguration,metricsConfigurations:this.metricsConfigurations,notificationConfiguration:this.notificationConfiguration,objectLockConfiguration:this.objectLockConfiguration,objectLockEnabled:this.objectLockEnabled,ownershipControls:this.ownershipControls,publicAccessBlockConfiguration:this.publicAccessBlockConfiguration,replicationConfiguration:this.replicationConfiguration,tags:this.tags.renderTags(),versioningConfiguration:this.versioningConfiguration,websiteConfiguration:this.websiteConfiguration}}renderProperties(props){return cfnBucketPropsToCloudFormation(props)}}exports.CfnBucket=CfnBucket,_b=JSII_RTTI_SYMBOL_1,CfnBucket[_b]={fqn:"aws-cdk-lib.aws_s3.CfnBucket",version:"2.70.0"},CfnBucket.CFN_RESOURCE_TYPE_NAME="AWS::S3::Bucket";function CfnBucket_AbortIncompleteMultipartUploadPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("daysAfterInitiation",cdk.requiredValidator)(properties.daysAfterInitiation)),errors.collect(cdk.propertyValidator("daysAfterInitiation",cdk.validateNumber)(properties.daysAfterInitiation)),errors.wrap('supplied properties not correct for "AbortIncompleteMultipartUploadProperty"')}function cfnBucketAbortIncompleteMultipartUploadPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_AbortIncompleteMultipartUploadPropertyValidator(properties).assertSuccess(),{DaysAfterInitiation:cdk.numberToCloudFormation(properties.daysAfterInitiation)}):properties}function CfnBucketAbortIncompleteMultipartUploadPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("daysAfterInitiation","DaysAfterInitiation",cfn_parse.FromCloudFormation.getNumber(properties.DaysAfterInitiation)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_AccelerateConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("accelerationStatus",cdk.requiredValidator)(properties.accelerationStatus)),errors.collect(cdk.propertyValidator("accelerationStatus",cdk.validateString)(properties.accelerationStatus)),errors.wrap('supplied properties not correct for "AccelerateConfigurationProperty"')}function cfnBucketAccelerateConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_AccelerateConfigurationPropertyValidator(properties).assertSuccess(),{AccelerationStatus:cdk.stringToCloudFormation(properties.accelerationStatus)}):properties}function CfnBucketAccelerateConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("accelerationStatus","AccelerationStatus",cfn_parse.FromCloudFormation.getString(properties.AccelerationStatus)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_AccessControlTranslationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("owner",cdk.requiredValidator)(properties.owner)),errors.collect(cdk.propertyValidator("owner",cdk.validateString)(properties.owner)),errors.wrap('supplied properties not correct for "AccessControlTranslationProperty"')}function cfnBucketAccessControlTranslationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_AccessControlTranslationPropertyValidator(properties).assertSuccess(),{Owner:cdk.stringToCloudFormation(properties.owner)}):properties}function CfnBucketAccessControlTranslationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("owner","Owner",cfn_parse.FromCloudFormation.getString(properties.Owner)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_AnalyticsConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("id",cdk.requiredValidator)(properties.id)),errors.collect(cdk.propertyValidator("id",cdk.validateString)(properties.id)),errors.collect(cdk.propertyValidator("prefix",cdk.validateString)(properties.prefix)),errors.collect(cdk.propertyValidator("storageClassAnalysis",cdk.requiredValidator)(properties.storageClassAnalysis)),errors.collect(cdk.propertyValidator("storageClassAnalysis",CfnBucket_StorageClassAnalysisPropertyValidator)(properties.storageClassAnalysis)),errors.collect(cdk.propertyValidator("tagFilters",cdk.listValidator(CfnBucket_TagFilterPropertyValidator))(properties.tagFilters)),errors.wrap('supplied properties not correct for "AnalyticsConfigurationProperty"')}function cfnBucketAnalyticsConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_AnalyticsConfigurationPropertyValidator(properties).assertSuccess(),{Id:cdk.stringToCloudFormation(properties.id),Prefix:cdk.stringToCloudFormation(properties.prefix),StorageClassAnalysis:cfnBucketStorageClassAnalysisPropertyToCloudFormation(properties.storageClassAnalysis),TagFilters:cdk.listMapper(cfnBucketTagFilterPropertyToCloudFormation)(properties.tagFilters)}):properties}function CfnBucketAnalyticsConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("id","Id",cfn_parse.FromCloudFormation.getString(properties.Id)),ret.addPropertyResult("prefix","Prefix",properties.Prefix!=null?cfn_parse.FromCloudFormation.getString(properties.Prefix):void 0),ret.addPropertyResult("storageClassAnalysis","StorageClassAnalysis",CfnBucketStorageClassAnalysisPropertyFromCloudFormation(properties.StorageClassAnalysis)),ret.addPropertyResult("tagFilters","TagFilters",properties.TagFilters!=null?cfn_parse.FromCloudFormation.getArray(CfnBucketTagFilterPropertyFromCloudFormation)(properties.TagFilters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_BucketEncryptionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("serverSideEncryptionConfiguration",cdk.requiredValidator)(properties.serverSideEncryptionConfiguration)),errors.collect(cdk.propertyValidator("serverSideEncryptionConfiguration",cdk.listValidator(CfnBucket_ServerSideEncryptionRulePropertyValidator))(properties.serverSideEncryptionConfiguration)),errors.wrap('supplied properties not correct for "BucketEncryptionProperty"')}function cfnBucketBucketEncryptionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_BucketEncryptionPropertyValidator(properties).assertSuccess(),{ServerSideEncryptionConfiguration:cdk.listMapper(cfnBucketServerSideEncryptionRulePropertyToCloudFormation)(properties.serverSideEncryptionConfiguration)}):properties}function CfnBucketBucketEncryptionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("serverSideEncryptionConfiguration","ServerSideEncryptionConfiguration",cfn_parse.FromCloudFormation.getArray(CfnBucketServerSideEncryptionRulePropertyFromCloudFormation)(properties.ServerSideEncryptionConfiguration)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_CorsConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("corsRules",cdk.requiredValidator)(properties.corsRules)),errors.collect(cdk.propertyValidator("corsRules",cdk.listValidator(CfnBucket_CorsRulePropertyValidator))(properties.corsRules)),errors.wrap('supplied properties not correct for "CorsConfigurationProperty"')}function cfnBucketCorsConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_CorsConfigurationPropertyValidator(properties).assertSuccess(),{CorsRules:cdk.listMapper(cfnBucketCorsRulePropertyToCloudFormation)(properties.corsRules)}):properties}function CfnBucketCorsConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("corsRules","CorsRules",cfn_parse.FromCloudFormation.getArray(CfnBucketCorsRulePropertyFromCloudFormation)(properties.CorsRules)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_CorsRulePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allowedHeaders",cdk.listValidator(cdk.validateString))(properties.allowedHeaders)),errors.collect(cdk.propertyValidator("allowedMethods",cdk.requiredValidator)(properties.allowedMethods)),errors.collect(cdk.propertyValidator("allowedMethods",cdk.listValidator(cdk.validateString))(properties.allowedMethods)),errors.collect(cdk.propertyValidator("allowedOrigins",cdk.requiredValidator)(properties.allowedOrigins)),errors.collect(cdk.propertyValidator("allowedOrigins",cdk.listValidator(cdk.validateString))(properties.allowedOrigins)),errors.collect(cdk.propertyValidator("exposedHeaders",cdk.listValidator(cdk.validateString))(properties.exposedHeaders)),errors.collect(cdk.propertyValidator("id",cdk.validateString)(properties.id)),errors.collect(cdk.propertyValidator("maxAge",cdk.validateNumber)(properties.maxAge)),errors.wrap('supplied properties not correct for "CorsRuleProperty"')}function cfnBucketCorsRulePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_CorsRulePropertyValidator(properties).assertSuccess(),{AllowedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.allowedHeaders),AllowedMethods:cdk.listMapper(cdk.stringToCloudFormation)(properties.allowedMethods),AllowedOrigins:cdk.listMapper(cdk.stringToCloudFormation)(properties.allowedOrigins),ExposedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.exposedHeaders),Id:cdk.stringToCloudFormation(properties.id),MaxAge:cdk.numberToCloudFormation(properties.maxAge)}):properties}function CfnBucketCorsRulePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allowedHeaders","AllowedHeaders",properties.AllowedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.AllowedHeaders):void 0),ret.addPropertyResult("allowedMethods","AllowedMethods",cfn_parse.FromCloudFormation.getStringArray(properties.AllowedMethods)),ret.addPropertyResult("allowedOrigins","AllowedOrigins",cfn_parse.FromCloudFormation.getStringArray(properties.AllowedOrigins)),ret.addPropertyResult("exposedHeaders","ExposedHeaders",properties.ExposedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExposedHeaders):void 0),ret.addPropertyResult("id","Id",properties.Id!=null?cfn_parse.FromCloudFormation.getString(properties.Id):void 0),ret.addPropertyResult("maxAge","MaxAge",properties.MaxAge!=null?cfn_parse.FromCloudFormation.getNumber(properties.MaxAge):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_DataExportPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("destination",cdk.requiredValidator)(properties.destination)),errors.collect(cdk.propertyValidator("destination",CfnBucket_DestinationPropertyValidator)(properties.destination)),errors.collect(cdk.propertyValidator("outputSchemaVersion",cdk.requiredValidator)(properties.outputSchemaVersion)),errors.collect(cdk.propertyValidator("outputSchemaVersion",cdk.validateString)(properties.outputSchemaVersion)),errors.wrap('supplied properties not correct for "DataExportProperty"')}function cfnBucketDataExportPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_DataExportPropertyValidator(properties).assertSuccess(),{Destination:cfnBucketDestinationPropertyToCloudFormation(properties.destination),OutputSchemaVersion:cdk.stringToCloudFormation(properties.outputSchemaVersion)}):properties}function CfnBucketDataExportPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("destination","Destination",CfnBucketDestinationPropertyFromCloudFormation(properties.Destination)),ret.addPropertyResult("outputSchemaVersion","OutputSchemaVersion",cfn_parse.FromCloudFormation.getString(properties.OutputSchemaVersion)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_DefaultRetentionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("days",cdk.validateNumber)(properties.days)),errors.collect(cdk.propertyValidator("mode",cdk.validateString)(properties.mode)),errors.collect(cdk.propertyValidator("years",cdk.validateNumber)(properties.years)),errors.wrap('supplied properties not correct for "DefaultRetentionProperty"')}function cfnBucketDefaultRetentionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_DefaultRetentionPropertyValidator(properties).assertSuccess(),{Days:cdk.numberToCloudFormation(properties.days),Mode:cdk.stringToCloudFormation(properties.mode),Years:cdk.numberToCloudFormation(properties.years)}):properties}function CfnBucketDefaultRetentionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("days","Days",properties.Days!=null?cfn_parse.FromCloudFormation.getNumber(properties.Days):void 0),ret.addPropertyResult("mode","Mode",properties.Mode!=null?cfn_parse.FromCloudFormation.getString(properties.Mode):void 0),ret.addPropertyResult("years","Years",properties.Years!=null?cfn_parse.FromCloudFormation.getNumber(properties.Years):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_DeleteMarkerReplicationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("status",cdk.validateString)(properties.status)),errors.wrap('supplied properties not correct for "DeleteMarkerReplicationProperty"')}function cfnBucketDeleteMarkerReplicationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_DeleteMarkerReplicationPropertyValidator(properties).assertSuccess(),{Status:cdk.stringToCloudFormation(properties.status)}):properties}function CfnBucketDeleteMarkerReplicationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("status","Status",properties.Status!=null?cfn_parse.FromCloudFormation.getString(properties.Status):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_DestinationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("bucketAccountId",cdk.validateString)(properties.bucketAccountId)),errors.collect(cdk.propertyValidator("bucketArn",cdk.requiredValidator)(properties.bucketArn)),errors.collect(cdk.propertyValidator("bucketArn",cdk.validateString)(properties.bucketArn)),errors.collect(cdk.propertyValidator("format",cdk.requiredValidator)(properties.format)),errors.collect(cdk.propertyValidator("format",cdk.validateString)(properties.format)),errors.collect(cdk.propertyValidator("prefix",cdk.validateString)(properties.prefix)),errors.wrap('supplied properties not correct for "DestinationProperty"')}function cfnBucketDestinationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_DestinationPropertyValidator(properties).assertSuccess(),{BucketAccountId:cdk.stringToCloudFormation(properties.bucketAccountId),BucketArn:cdk.stringToCloudFormation(properties.bucketArn),Format:cdk.stringToCloudFormation(properties.format),Prefix:cdk.stringToCloudFormation(properties.prefix)}):properties}function CfnBucketDestinationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("bucketAccountId","BucketAccountId",properties.BucketAccountId!=null?cfn_parse.FromCloudFormation.getString(properties.BucketAccountId):void 0),ret.addPropertyResult("bucketArn","BucketArn",cfn_parse.FromCloudFormation.getString(properties.BucketArn)),ret.addPropertyResult("format","Format",cfn_parse.FromCloudFormation.getString(properties.Format)),ret.addPropertyResult("prefix","Prefix",properties.Prefix!=null?cfn_parse.FromCloudFormation.getString(properties.Prefix):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_EncryptionConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("replicaKmsKeyId",cdk.requiredValidator)(properties.replicaKmsKeyId)),errors.collect(cdk.propertyValidator("replicaKmsKeyId",cdk.validateString)(properties.replicaKmsKeyId)),errors.wrap('supplied properties not correct for "EncryptionConfigurationProperty"')}function cfnBucketEncryptionConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_EncryptionConfigurationPropertyValidator(properties).assertSuccess(),{ReplicaKmsKeyID:cdk.stringToCloudFormation(properties.replicaKmsKeyId)}):properties}function CfnBucketEncryptionConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("replicaKmsKeyId","ReplicaKmsKeyID",cfn_parse.FromCloudFormation.getString(properties.ReplicaKmsKeyID)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_EventBridgeConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("eventBridgeEnabled",cdk.validateBoolean)(properties.eventBridgeEnabled)),errors.wrap('supplied properties not correct for "EventBridgeConfigurationProperty"')}function cfnBucketEventBridgeConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_EventBridgeConfigurationPropertyValidator(properties).assertSuccess(),{EventBridgeEnabled:cdk.booleanToCloudFormation(properties.eventBridgeEnabled)}):properties}function CfnBucketEventBridgeConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("eventBridgeEnabled","EventBridgeEnabled",properties.EventBridgeEnabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EventBridgeEnabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnBucket_FilterRulePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("value",cdk.requiredValidator)(properties.value)),errors.collect(cdk.propertyValidator("value",cdk.validateString)(properties.value)),errors.wrap('supplied properties not correct for "FilterRuleProperty"')}function cfnBucketFilterRulePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnBucket_FilterRulePropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),Value:cdk.stringToCloudFormation(properties.value)}):properties}function CfnBucketFilterRulePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.