aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
1 lines • 277 kB
JavaScript
"use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k,_l,_m,_o,_p,_q,_r,_s,_t,_u,_v,_w,_x;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnTopicRuleDestination=exports.CfnTopicRule=exports.CfnThingPrincipalAttachment=exports.CfnThing=exports.CfnSecurityProfile=exports.CfnScheduledAudit=exports.CfnRoleAlias=exports.CfnResourceSpecificLogging=exports.CfnProvisioningTemplate=exports.CfnPolicyPrincipalAttachment=exports.CfnPolicy=exports.CfnMitigationAction=exports.CfnLogging=exports.CfnJobTemplate=exports.CfnFleetMetric=exports.CfnDomainConfiguration=exports.CfnDimension=exports.CfnCustomMetric=exports.CfnCertificate=exports.CfnCACertificate=exports.CfnAuthorizer=exports.CfnAccountAuditConfiguration=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 CfnAccountAuditConfigurationPropsValidator(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("accountId",cdk.requiredValidator)(properties.accountId)),errors.collect(cdk.propertyValidator("accountId",cdk.validateString)(properties.accountId)),errors.collect(cdk.propertyValidator("auditCheckConfigurations",cdk.requiredValidator)(properties.auditCheckConfigurations)),errors.collect(cdk.propertyValidator("auditCheckConfigurations",CfnAccountAuditConfiguration_AuditCheckConfigurationsPropertyValidator)(properties.auditCheckConfigurations)),errors.collect(cdk.propertyValidator("auditNotificationTargetConfigurations",CfnAccountAuditConfiguration_AuditNotificationTargetConfigurationsPropertyValidator)(properties.auditNotificationTargetConfigurations)),errors.collect(cdk.propertyValidator("roleArn",cdk.requiredValidator)(properties.roleArn)),errors.collect(cdk.propertyValidator("roleArn",cdk.validateString)(properties.roleArn)),errors.wrap('supplied properties not correct for "CfnAccountAuditConfigurationProps"')}function cfnAccountAuditConfigurationPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccountAuditConfigurationPropsValidator(properties).assertSuccess(),{AccountId:cdk.stringToCloudFormation(properties.accountId),AuditCheckConfigurations:cfnAccountAuditConfigurationAuditCheckConfigurationsPropertyToCloudFormation(properties.auditCheckConfigurations),RoleArn:cdk.stringToCloudFormation(properties.roleArn),AuditNotificationTargetConfigurations:cfnAccountAuditConfigurationAuditNotificationTargetConfigurationsPropertyToCloudFormation(properties.auditNotificationTargetConfigurations)}):properties}function CfnAccountAuditConfigurationPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("accountId","AccountId",cfn_parse.FromCloudFormation.getString(properties.AccountId)),ret.addPropertyResult("auditCheckConfigurations","AuditCheckConfigurations",CfnAccountAuditConfigurationAuditCheckConfigurationsPropertyFromCloudFormation(properties.AuditCheckConfigurations)),ret.addPropertyResult("roleArn","RoleArn",cfn_parse.FromCloudFormation.getString(properties.RoleArn)),ret.addPropertyResult("auditNotificationTargetConfigurations","AuditNotificationTargetConfigurations",properties.AuditNotificationTargetConfigurations!=null?CfnAccountAuditConfigurationAuditNotificationTargetConfigurationsPropertyFromCloudFormation(properties.AuditNotificationTargetConfigurations):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAccountAuditConfiguration extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnAccountAuditConfiguration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iot_CfnAccountAuditConfigurationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAccountAuditConfiguration),error}cdk.requireProperty(props,"accountId",this),cdk.requireProperty(props,"auditCheckConfigurations",this),cdk.requireProperty(props,"roleArn",this),this.accountId=props.accountId,this.auditCheckConfigurations=props.auditCheckConfigurations,this.roleArn=props.roleArn,this.auditNotificationTargetConfigurations=props.auditNotificationTargetConfigurations}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAccountAuditConfigurationPropsFromCloudFormation(resourceProperties),ret=new CfnAccountAuditConfiguration(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",CfnAccountAuditConfiguration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{accountId:this.accountId,auditCheckConfigurations:this.auditCheckConfigurations,roleArn:this.roleArn,auditNotificationTargetConfigurations:this.auditNotificationTargetConfigurations}}renderProperties(props){return cfnAccountAuditConfigurationPropsToCloudFormation(props)}}exports.CfnAccountAuditConfiguration=CfnAccountAuditConfiguration,_a=JSII_RTTI_SYMBOL_1,CfnAccountAuditConfiguration[_a]={fqn:"aws-cdk-lib.aws_iot.CfnAccountAuditConfiguration",version:"2.70.0"},CfnAccountAuditConfiguration.CFN_RESOURCE_TYPE_NAME="AWS::IoT::AccountAuditConfiguration";function CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator(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("enabled",cdk.validateBoolean)(properties.enabled)),errors.wrap('supplied properties not correct for "AuditCheckConfigurationProperty"')}function cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator(properties).assertSuccess(),{Enabled:cdk.booleanToCloudFormation(properties.enabled)}):properties}function CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccountAuditConfiguration_AuditCheckConfigurationsPropertyValidator(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("authenticatedCognitoRoleOverlyPermissiveCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.authenticatedCognitoRoleOverlyPermissiveCheck)),errors.collect(cdk.propertyValidator("caCertificateExpiringCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.caCertificateExpiringCheck)),errors.collect(cdk.propertyValidator("caCertificateKeyQualityCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.caCertificateKeyQualityCheck)),errors.collect(cdk.propertyValidator("conflictingClientIdsCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.conflictingClientIdsCheck)),errors.collect(cdk.propertyValidator("deviceCertificateExpiringCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.deviceCertificateExpiringCheck)),errors.collect(cdk.propertyValidator("deviceCertificateKeyQualityCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.deviceCertificateKeyQualityCheck)),errors.collect(cdk.propertyValidator("deviceCertificateSharedCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.deviceCertificateSharedCheck)),errors.collect(cdk.propertyValidator("intermediateCaRevokedForActiveDeviceCertificatesCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.intermediateCaRevokedForActiveDeviceCertificatesCheck)),errors.collect(cdk.propertyValidator("ioTPolicyPotentialMisConfigurationCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.ioTPolicyPotentialMisConfigurationCheck)),errors.collect(cdk.propertyValidator("iotPolicyOverlyPermissiveCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.iotPolicyOverlyPermissiveCheck)),errors.collect(cdk.propertyValidator("iotRoleAliasAllowsAccessToUnusedServicesCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.iotRoleAliasAllowsAccessToUnusedServicesCheck)),errors.collect(cdk.propertyValidator("iotRoleAliasOverlyPermissiveCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.iotRoleAliasOverlyPermissiveCheck)),errors.collect(cdk.propertyValidator("loggingDisabledCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.loggingDisabledCheck)),errors.collect(cdk.propertyValidator("revokedCaCertificateStillActiveCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.revokedCaCertificateStillActiveCheck)),errors.collect(cdk.propertyValidator("revokedDeviceCertificateStillActiveCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.revokedDeviceCertificateStillActiveCheck)),errors.collect(cdk.propertyValidator("unauthenticatedCognitoRoleOverlyPermissiveCheck",CfnAccountAuditConfiguration_AuditCheckConfigurationPropertyValidator)(properties.unauthenticatedCognitoRoleOverlyPermissiveCheck)),errors.wrap('supplied properties not correct for "AuditCheckConfigurationsProperty"')}function cfnAccountAuditConfigurationAuditCheckConfigurationsPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccountAuditConfiguration_AuditCheckConfigurationsPropertyValidator(properties).assertSuccess(),{AuthenticatedCognitoRoleOverlyPermissiveCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.authenticatedCognitoRoleOverlyPermissiveCheck),CaCertificateExpiringCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.caCertificateExpiringCheck),CaCertificateKeyQualityCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.caCertificateKeyQualityCheck),ConflictingClientIdsCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.conflictingClientIdsCheck),DeviceCertificateExpiringCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.deviceCertificateExpiringCheck),DeviceCertificateKeyQualityCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.deviceCertificateKeyQualityCheck),DeviceCertificateSharedCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.deviceCertificateSharedCheck),IntermediateCaRevokedForActiveDeviceCertificatesCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.intermediateCaRevokedForActiveDeviceCertificatesCheck),IoTPolicyPotentialMisConfigurationCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.ioTPolicyPotentialMisConfigurationCheck),IotPolicyOverlyPermissiveCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.iotPolicyOverlyPermissiveCheck),IotRoleAliasAllowsAccessToUnusedServicesCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.iotRoleAliasAllowsAccessToUnusedServicesCheck),IotRoleAliasOverlyPermissiveCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.iotRoleAliasOverlyPermissiveCheck),LoggingDisabledCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.loggingDisabledCheck),RevokedCaCertificateStillActiveCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.revokedCaCertificateStillActiveCheck),RevokedDeviceCertificateStillActiveCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.revokedDeviceCertificateStillActiveCheck),UnauthenticatedCognitoRoleOverlyPermissiveCheck:cfnAccountAuditConfigurationAuditCheckConfigurationPropertyToCloudFormation(properties.unauthenticatedCognitoRoleOverlyPermissiveCheck)}):properties}function CfnAccountAuditConfigurationAuditCheckConfigurationsPropertyFromCloudFormation(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("authenticatedCognitoRoleOverlyPermissiveCheck","AuthenticatedCognitoRoleOverlyPermissiveCheck",properties.AuthenticatedCognitoRoleOverlyPermissiveCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.AuthenticatedCognitoRoleOverlyPermissiveCheck):void 0),ret.addPropertyResult("caCertificateExpiringCheck","CaCertificateExpiringCheck",properties.CaCertificateExpiringCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.CaCertificateExpiringCheck):void 0),ret.addPropertyResult("caCertificateKeyQualityCheck","CaCertificateKeyQualityCheck",properties.CaCertificateKeyQualityCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.CaCertificateKeyQualityCheck):void 0),ret.addPropertyResult("conflictingClientIdsCheck","ConflictingClientIdsCheck",properties.ConflictingClientIdsCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.ConflictingClientIdsCheck):void 0),ret.addPropertyResult("deviceCertificateExpiringCheck","DeviceCertificateExpiringCheck",properties.DeviceCertificateExpiringCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.DeviceCertificateExpiringCheck):void 0),ret.addPropertyResult("deviceCertificateKeyQualityCheck","DeviceCertificateKeyQualityCheck",properties.DeviceCertificateKeyQualityCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.DeviceCertificateKeyQualityCheck):void 0),ret.addPropertyResult("deviceCertificateSharedCheck","DeviceCertificateSharedCheck",properties.DeviceCertificateSharedCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.DeviceCertificateSharedCheck):void 0),ret.addPropertyResult("intermediateCaRevokedForActiveDeviceCertificatesCheck","IntermediateCaRevokedForActiveDeviceCertificatesCheck",properties.IntermediateCaRevokedForActiveDeviceCertificatesCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.IntermediateCaRevokedForActiveDeviceCertificatesCheck):void 0),ret.addPropertyResult("ioTPolicyPotentialMisConfigurationCheck","IoTPolicyPotentialMisConfigurationCheck",properties.IoTPolicyPotentialMisConfigurationCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.IoTPolicyPotentialMisConfigurationCheck):void 0),ret.addPropertyResult("iotPolicyOverlyPermissiveCheck","IotPolicyOverlyPermissiveCheck",properties.IotPolicyOverlyPermissiveCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.IotPolicyOverlyPermissiveCheck):void 0),ret.addPropertyResult("iotRoleAliasAllowsAccessToUnusedServicesCheck","IotRoleAliasAllowsAccessToUnusedServicesCheck",properties.IotRoleAliasAllowsAccessToUnusedServicesCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.IotRoleAliasAllowsAccessToUnusedServicesCheck):void 0),ret.addPropertyResult("iotRoleAliasOverlyPermissiveCheck","IotRoleAliasOverlyPermissiveCheck",properties.IotRoleAliasOverlyPermissiveCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.IotRoleAliasOverlyPermissiveCheck):void 0),ret.addPropertyResult("loggingDisabledCheck","LoggingDisabledCheck",properties.LoggingDisabledCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.LoggingDisabledCheck):void 0),ret.addPropertyResult("revokedCaCertificateStillActiveCheck","RevokedCaCertificateStillActiveCheck",properties.RevokedCaCertificateStillActiveCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.RevokedCaCertificateStillActiveCheck):void 0),ret.addPropertyResult("revokedDeviceCertificateStillActiveCheck","RevokedDeviceCertificateStillActiveCheck",properties.RevokedDeviceCertificateStillActiveCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.RevokedDeviceCertificateStillActiveCheck):void 0),ret.addPropertyResult("unauthenticatedCognitoRoleOverlyPermissiveCheck","UnauthenticatedCognitoRoleOverlyPermissiveCheck",properties.UnauthenticatedCognitoRoleOverlyPermissiveCheck!=null?CfnAccountAuditConfigurationAuditCheckConfigurationPropertyFromCloudFormation(properties.UnauthenticatedCognitoRoleOverlyPermissiveCheck):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccountAuditConfiguration_AuditNotificationTargetPropertyValidator(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("enabled",cdk.validateBoolean)(properties.enabled)),errors.collect(cdk.propertyValidator("roleArn",cdk.validateString)(properties.roleArn)),errors.collect(cdk.propertyValidator("targetArn",cdk.validateString)(properties.targetArn)),errors.wrap('supplied properties not correct for "AuditNotificationTargetProperty"')}function cfnAccountAuditConfigurationAuditNotificationTargetPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccountAuditConfiguration_AuditNotificationTargetPropertyValidator(properties).assertSuccess(),{Enabled:cdk.booleanToCloudFormation(properties.enabled),RoleArn:cdk.stringToCloudFormation(properties.roleArn),TargetArn:cdk.stringToCloudFormation(properties.targetArn)}):properties}function CfnAccountAuditConfigurationAuditNotificationTargetPropertyFromCloudFormation(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("enabled","Enabled",properties.Enabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse.FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("targetArn","TargetArn",properties.TargetArn!=null?cfn_parse.FromCloudFormation.getString(properties.TargetArn):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAccountAuditConfiguration_AuditNotificationTargetConfigurationsPropertyValidator(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("sns",CfnAccountAuditConfiguration_AuditNotificationTargetPropertyValidator)(properties.sns)),errors.wrap('supplied properties not correct for "AuditNotificationTargetConfigurationsProperty"')}function cfnAccountAuditConfigurationAuditNotificationTargetConfigurationsPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAccountAuditConfiguration_AuditNotificationTargetConfigurationsPropertyValidator(properties).assertSuccess(),{Sns:cfnAccountAuditConfigurationAuditNotificationTargetPropertyToCloudFormation(properties.sns)}):properties}function CfnAccountAuditConfigurationAuditNotificationTargetConfigurationsPropertyFromCloudFormation(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("sns","Sns",properties.Sns!=null?CfnAccountAuditConfigurationAuditNotificationTargetPropertyFromCloudFormation(properties.Sns):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAuthorizerPropsValidator(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("authorizerFunctionArn",cdk.requiredValidator)(properties.authorizerFunctionArn)),errors.collect(cdk.propertyValidator("authorizerFunctionArn",cdk.validateString)(properties.authorizerFunctionArn)),errors.collect(cdk.propertyValidator("authorizerName",cdk.validateString)(properties.authorizerName)),errors.collect(cdk.propertyValidator("enableCachingForHttp",cdk.validateBoolean)(properties.enableCachingForHttp)),errors.collect(cdk.propertyValidator("signingDisabled",cdk.validateBoolean)(properties.signingDisabled)),errors.collect(cdk.propertyValidator("status",cdk.validateString)(properties.status)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("tokenKeyName",cdk.validateString)(properties.tokenKeyName)),errors.collect(cdk.propertyValidator("tokenSigningPublicKeys",cdk.hashValidator(cdk.validateString))(properties.tokenSigningPublicKeys)),errors.wrap('supplied properties not correct for "CfnAuthorizerProps"')}function cfnAuthorizerPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnAuthorizerPropsValidator(properties).assertSuccess(),{AuthorizerFunctionArn:cdk.stringToCloudFormation(properties.authorizerFunctionArn),AuthorizerName:cdk.stringToCloudFormation(properties.authorizerName),EnableCachingForHttp:cdk.booleanToCloudFormation(properties.enableCachingForHttp),SigningDisabled:cdk.booleanToCloudFormation(properties.signingDisabled),Status:cdk.stringToCloudFormation(properties.status),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),TokenKeyName:cdk.stringToCloudFormation(properties.tokenKeyName),TokenSigningPublicKeys:cdk.hashMapper(cdk.stringToCloudFormation)(properties.tokenSigningPublicKeys)}):properties}function CfnAuthorizerPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("authorizerFunctionArn","AuthorizerFunctionArn",cfn_parse.FromCloudFormation.getString(properties.AuthorizerFunctionArn)),ret.addPropertyResult("authorizerName","AuthorizerName",properties.AuthorizerName!=null?cfn_parse.FromCloudFormation.getString(properties.AuthorizerName):void 0),ret.addPropertyResult("enableCachingForHttp","EnableCachingForHttp",properties.EnableCachingForHttp!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EnableCachingForHttp):void 0),ret.addPropertyResult("signingDisabled","SigningDisabled",properties.SigningDisabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.SigningDisabled):void 0),ret.addPropertyResult("status","Status",properties.Status!=null?cfn_parse.FromCloudFormation.getString(properties.Status):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("tokenKeyName","TokenKeyName",properties.TokenKeyName!=null?cfn_parse.FromCloudFormation.getString(properties.TokenKeyName):void 0),ret.addPropertyResult("tokenSigningPublicKeys","TokenSigningPublicKeys",properties.TokenSigningPublicKeys!=null?cfn_parse.FromCloudFormation.getMap(cfn_parse.FromCloudFormation.getString)(properties.TokenSigningPublicKeys):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAuthorizer extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnAuthorizer.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iot_CfnAuthorizerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAuthorizer),error}cdk.requireProperty(props,"authorizerFunctionArn",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.authorizerFunctionArn=props.authorizerFunctionArn,this.authorizerName=props.authorizerName,this.enableCachingForHttp=props.enableCachingForHttp,this.signingDisabled=props.signingDisabled,this.status=props.status,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::IoT::Authorizer",props.tags,{tagPropertyName:"tags"}),this.tokenKeyName=props.tokenKeyName,this.tokenSigningPublicKeys=props.tokenSigningPublicKeys}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAuthorizerPropsFromCloudFormation(resourceProperties),ret=new CfnAuthorizer(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",CfnAuthorizer.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{authorizerFunctionArn:this.authorizerFunctionArn,authorizerName:this.authorizerName,enableCachingForHttp:this.enableCachingForHttp,signingDisabled:this.signingDisabled,status:this.status,tags:this.tags.renderTags(),tokenKeyName:this.tokenKeyName,tokenSigningPublicKeys:this.tokenSigningPublicKeys}}renderProperties(props){return cfnAuthorizerPropsToCloudFormation(props)}}exports.CfnAuthorizer=CfnAuthorizer,_b=JSII_RTTI_SYMBOL_1,CfnAuthorizer[_b]={fqn:"aws-cdk-lib.aws_iot.CfnAuthorizer",version:"2.70.0"},CfnAuthorizer.CFN_RESOURCE_TYPE_NAME="AWS::IoT::Authorizer";function CfnCACertificatePropsValidator(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("autoRegistrationStatus",cdk.validateString)(properties.autoRegistrationStatus)),errors.collect(cdk.propertyValidator("caCertificatePem",cdk.requiredValidator)(properties.caCertificatePem)),errors.collect(cdk.propertyValidator("caCertificatePem",cdk.validateString)(properties.caCertificatePem)),errors.collect(cdk.propertyValidator("certificateMode",cdk.validateString)(properties.certificateMode)),errors.collect(cdk.propertyValidator("registrationConfig",CfnCACertificate_RegistrationConfigPropertyValidator)(properties.registrationConfig)),errors.collect(cdk.propertyValidator("removeAutoRegistration",cdk.validateBoolean)(properties.removeAutoRegistration)),errors.collect(cdk.propertyValidator("status",cdk.requiredValidator)(properties.status)),errors.collect(cdk.propertyValidator("status",cdk.validateString)(properties.status)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("verificationCertificatePem",cdk.validateString)(properties.verificationCertificatePem)),errors.wrap('supplied properties not correct for "CfnCACertificateProps"')}function cfnCACertificatePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCACertificatePropsValidator(properties).assertSuccess(),{CACertificatePem:cdk.stringToCloudFormation(properties.caCertificatePem),Status:cdk.stringToCloudFormation(properties.status),AutoRegistrationStatus:cdk.stringToCloudFormation(properties.autoRegistrationStatus),CertificateMode:cdk.stringToCloudFormation(properties.certificateMode),RegistrationConfig:cfnCACertificateRegistrationConfigPropertyToCloudFormation(properties.registrationConfig),RemoveAutoRegistration:cdk.booleanToCloudFormation(properties.removeAutoRegistration),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),VerificationCertificatePem:cdk.stringToCloudFormation(properties.verificationCertificatePem)}):properties}function CfnCACertificatePropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("caCertificatePem","CACertificatePem",cfn_parse.FromCloudFormation.getString(properties.CACertificatePem)),ret.addPropertyResult("status","Status",cfn_parse.FromCloudFormation.getString(properties.Status)),ret.addPropertyResult("autoRegistrationStatus","AutoRegistrationStatus",properties.AutoRegistrationStatus!=null?cfn_parse.FromCloudFormation.getString(properties.AutoRegistrationStatus):void 0),ret.addPropertyResult("certificateMode","CertificateMode",properties.CertificateMode!=null?cfn_parse.FromCloudFormation.getString(properties.CertificateMode):void 0),ret.addPropertyResult("registrationConfig","RegistrationConfig",properties.RegistrationConfig!=null?CfnCACertificateRegistrationConfigPropertyFromCloudFormation(properties.RegistrationConfig):void 0),ret.addPropertyResult("removeAutoRegistration","RemoveAutoRegistration",properties.RemoveAutoRegistration!=null?cfn_parse.FromCloudFormation.getBoolean(properties.RemoveAutoRegistration):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("verificationCertificatePem","VerificationCertificatePem",properties.VerificationCertificatePem!=null?cfn_parse.FromCloudFormation.getString(properties.VerificationCertificatePem):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCACertificate extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnCACertificate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iot_CfnCACertificateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCACertificate),error}cdk.requireProperty(props,"caCertificatePem",this),cdk.requireProperty(props,"status",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.attrId=cdk.Token.asString(this.getAtt("Id",cdk.ResolutionTypeHint.STRING)),this.caCertificatePem=props.caCertificatePem,this.status=props.status,this.autoRegistrationStatus=props.autoRegistrationStatus,this.certificateMode=props.certificateMode,this.registrationConfig=props.registrationConfig,this.removeAutoRegistration=props.removeAutoRegistration,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::IoT::CACertificate",props.tags,{tagPropertyName:"tags"}),this.verificationCertificatePem=props.verificationCertificatePem}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCACertificatePropsFromCloudFormation(resourceProperties),ret=new CfnCACertificate(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",CfnCACertificate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{caCertificatePem:this.caCertificatePem,status:this.status,autoRegistrationStatus:this.autoRegistrationStatus,certificateMode:this.certificateMode,registrationConfig:this.registrationConfig,removeAutoRegistration:this.removeAutoRegistration,tags:this.tags.renderTags(),verificationCertificatePem:this.verificationCertificatePem}}renderProperties(props){return cfnCACertificatePropsToCloudFormation(props)}}exports.CfnCACertificate=CfnCACertificate,_c=JSII_RTTI_SYMBOL_1,CfnCACertificate[_c]={fqn:"aws-cdk-lib.aws_iot.CfnCACertificate",version:"2.70.0"},CfnCACertificate.CFN_RESOURCE_TYPE_NAME="AWS::IoT::CACertificate";function CfnCACertificate_RegistrationConfigPropertyValidator(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("roleArn",cdk.validateString)(properties.roleArn)),errors.collect(cdk.propertyValidator("templateBody",cdk.validateString)(properties.templateBody)),errors.collect(cdk.propertyValidator("templateName",cdk.validateString)(properties.templateName)),errors.wrap('supplied properties not correct for "RegistrationConfigProperty"')}function cfnCACertificateRegistrationConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCACertificate_RegistrationConfigPropertyValidator(properties).assertSuccess(),{RoleArn:cdk.stringToCloudFormation(properties.roleArn),TemplateBody:cdk.stringToCloudFormation(properties.templateBody),TemplateName:cdk.stringToCloudFormation(properties.templateName)}):properties}function CfnCACertificateRegistrationConfigPropertyFromCloudFormation(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("roleArn","RoleArn",properties.RoleArn!=null?cfn_parse.FromCloudFormation.getString(properties.RoleArn):void 0),ret.addPropertyResult("templateBody","TemplateBody",properties.TemplateBody!=null?cfn_parse.FromCloudFormation.getString(properties.TemplateBody):void 0),ret.addPropertyResult("templateName","TemplateName",properties.TemplateName!=null?cfn_parse.FromCloudFormation.getString(properties.TemplateName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCertificatePropsValidator(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("caCertificatePem",cdk.validateString)(properties.caCertificatePem)),errors.collect(cdk.propertyValidator("certificateMode",cdk.validateString)(properties.certificateMode)),errors.collect(cdk.propertyValidator("certificatePem",cdk.validateString)(properties.certificatePem)),errors.collect(cdk.propertyValidator("certificateSigningRequest",cdk.validateString)(properties.certificateSigningRequest)),errors.collect(cdk.propertyValidator("status",cdk.requiredValidator)(properties.status)),errors.collect(cdk.propertyValidator("status",cdk.validateString)(properties.status)),errors.wrap('supplied properties not correct for "CfnCertificateProps"')}function cfnCertificatePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCertificatePropsValidator(properties).assertSuccess(),{Status:cdk.stringToCloudFormation(properties.status),CACertificatePem:cdk.stringToCloudFormation(properties.caCertificatePem),CertificateMode:cdk.stringToCloudFormation(properties.certificateMode),CertificatePem:cdk.stringToCloudFormation(properties.certificatePem),CertificateSigningRequest:cdk.stringToCloudFormation(properties.certificateSigningRequest)}):properties}function CfnCertificatePropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("status","Status",cfn_parse.FromCloudFormation.getString(properties.Status)),ret.addPropertyResult("caCertificatePem","CACertificatePem",properties.CACertificatePem!=null?cfn_parse.FromCloudFormation.getString(properties.CACertificatePem):void 0),ret.addPropertyResult("certificateMode","CertificateMode",properties.CertificateMode!=null?cfn_parse.FromCloudFormation.getString(properties.CertificateMode):void 0),ret.addPropertyResult("certificatePem","CertificatePem",properties.CertificatePem!=null?cfn_parse.FromCloudFormation.getString(properties.CertificatePem):void 0),ret.addPropertyResult("certificateSigningRequest","CertificateSigningRequest",properties.CertificateSigningRequest!=null?cfn_parse.FromCloudFormation.getString(properties.CertificateSigningRequest):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCertificate extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnCertificate.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iot_CfnCertificateProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCertificate),error}cdk.requireProperty(props,"status",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.attrId=cdk.Token.asString(this.getAtt("Id",cdk.ResolutionTypeHint.STRING)),this.status=props.status,this.caCertificatePem=props.caCertificatePem,this.certificateMode=props.certificateMode,this.certificatePem=props.certificatePem,this.certificateSigningRequest=props.certificateSigningRequest}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCertificatePropsFromCloudFormation(resourceProperties),ret=new CfnCertificate(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",CfnCertificate.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{status:this.status,caCertificatePem:this.caCertificatePem,certificateMode:this.certificateMode,certificatePem:this.certificatePem,certificateSigningRequest:this.certificateSigningRequest}}renderProperties(props){return cfnCertificatePropsToCloudFormation(props)}}exports.CfnCertificate=CfnCertificate,_d=JSII_RTTI_SYMBOL_1,CfnCertificate[_d]={fqn:"aws-cdk-lib.aws_iot.CfnCertificate",version:"2.70.0"},CfnCertificate.CFN_RESOURCE_TYPE_NAME="AWS::IoT::Certificate";function CfnCustomMetricPropsValidator(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("displayName",cdk.validateString)(properties.displayName)),errors.collect(cdk.propertyValidator("metricName",cdk.validateString)(properties.metricName)),errors.collect(cdk.propertyValidator("metricType",cdk.requiredValidator)(properties.metricType)),errors.collect(cdk.propertyValidator("metricType",cdk.validateString)(properties.metricType)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnCustomMetricProps"')}function cfnCustomMetricPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCustomMetricPropsValidator(properties).assertSuccess(),{MetricType:cdk.stringToCloudFormation(properties.metricType),DisplayName:cdk.stringToCloudFormation(properties.displayName),MetricName:cdk.stringToCloudFormation(properties.metricName),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnCustomMetricPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("metricType","MetricType",cfn_parse.FromCloudFormation.getString(properties.MetricType)),ret.addPropertyResult("displayName","DisplayName",properties.DisplayName!=null?cfn_parse.FromCloudFormation.getString(properties.DisplayName):void 0),ret.addPropertyResult("metricName","MetricName",properties.MetricName!=null?cfn_parse.FromCloudFormation.getString(properties.MetricName):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCustomMetric extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnCustomMetric.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iot_CfnCustomMetricProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCustomMetric),error}cdk.requireProperty(props,"metricType",this),this.attrMetricArn=cdk.Token.asString(this.getAtt("MetricArn",cdk.ResolutionTypeHint.STRING)),this.metricType=props.metricType,this.displayName=props.displayName,this.metricName=props.metricName,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::IoT::CustomMetric",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnCustomMetricPropsFromCloudFormation(resourceProperties),ret=new CfnCustomMetric(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",CfnCustomMetric.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{metricType:this.metricType,displayName:this.displayName,metricName:this.metricName,tags:this.tags.renderTags()}}renderProperties(props){return cfnCustomMetricPropsToCloudFormation(props)}}exports.CfnCustomMetric=CfnCustomMetric,_e=JSII_RTTI_SYMBOL_1,CfnCustomMetric[_e]={fqn:"aws-cdk-lib.aws_iot.CfnCustomMetric",version:"2.70.0"},CfnCustomMetric.CFN_RESOURCE_TYPE_NAME="AWS::IoT::CustomMetric";function CfnDimensionPropsValidator(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.validateString)(properties.name)),errors.collect(cdk.propertyValidator("stringValues",cdk.requiredValidator)(properties.stringValues)),errors.collect(cdk.propertyValidator("stringValues",cdk.listValidator(cdk.validateString))(properties.stringValues)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "CfnDimensionProps"')}function cfnDimensionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnDimensionPropsValidator(properties).assertSuccess(),{StringValues:cdk.listMapper(cdk.stringToCloudFormation)(properties.stringValues),Type:cdk.stringToCloudFormation(properties.type),Name:cdk.stringToCloudFormation(properties.name),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnDimensionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("stringValues","StringValues",cfn_parse.FromCloudFormation.getStringArray(properties.StringValues)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDimension extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnDimension.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iot_CfnDimensionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDimension),error}cdk.requireProperty(props,"stringValues",this),cdk.requireProperty(props,"type",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn",cdk.ResolutionTypeHint.STRING)),this.stringValues=props.stringValues,this.type=props.type,this.name=props.name,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::IoT::Dimension",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDimensionPropsFromCloudFormation(resourceProperties),ret=new CfnDimension(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",CfnDimension.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{stringValues:this.stringValues,type:this.type,name:this.name,tags:this.tags.renderTags()}}renderProperties(props){return cfnDimensionPropsToCloudFormation(props)}}exports.CfnDimension=CfnDimension,_f=JSII_RTTI_SYMBOL_1,CfnDimension[_f]={fqn:"aws-cdk-lib.aws_iot.CfnDimension",version:"2.70.0"},CfnDimension.CFN_RESOURCE_TYPE_NAME="AWS::IoT::Dimension";function CfnDomainConfigurationPropsValidator(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