UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 128 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnResourcePolicy=exports.CfnResourceDataSync=exports.CfnPatchBaseline=exports.CfnParameter=exports.CfnMaintenanceWindowTask=exports.CfnMaintenanceWindowTarget=exports.CfnMaintenanceWindow=exports.CfnDocument=exports.CfnAssociation=void 0;var jsiiDeprecationWarnings=()=>{var tmp=require("../../.warnings.jsii.js");return jsiiDeprecationWarnings=()=>tmp,tmp};const JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti");var cdk=()=>{var tmp=require("../../core/lib");return cdk=()=>tmp,tmp},cfn_parse=()=>{var tmp=require("../../core/lib/helpers-internal");return cfn_parse=()=>tmp,tmp},cdk_errors=()=>{var tmp=require("../../core/lib/errors");return cdk_errors=()=>tmp,tmp};class CfnAssociation extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ssm.CfnAssociation",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SSM::Association";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAssociationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnAssociation(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}static isCfnAssociation(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAssociation.CFN_RESOURCE_TYPE_NAME}static fromAssociationId(scope,id,associationId){class Import extends cdk().Resource{associationRef;constructor(scope2,id2,associationId2){super(scope2,id2),this.associationRef={associationId:associationId2}}}return new Import(scope,id,associationId)}static arnForAssociation(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ssm_IAssociationRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForAssociation),error}return new(cfn_parse()).TemplateString("arn:${Partition}:ssm:${Region}:${Account}:association/${AssociationId}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:cdk().Stack.of(resource).region,Account:cdk().Stack.of(resource).account,AssociationId:resource.associationRef.associationId})}attrAssociationId;applyOnlyAtCronInterval;associationName;automationTargetParameterName;calendarNames;complianceSeverity;documentVersion;instanceId;maxConcurrency;maxErrors;name;outputLocation;parameters;scheduleExpression;scheduleOffset;syncCompliance;targets;waitForSuccessTimeoutSeconds;constructor(scope,id,props){super(scope,id,{type:CfnAssociation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ssm_CfnAssociationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAssociation),error}cdk().requireProperty(props,"name",this),this.attrAssociationId=cdk().Token.asString(this.getAtt("AssociationId",cdk().ResolutionTypeHint.STRING)),this.applyOnlyAtCronInterval=props.applyOnlyAtCronInterval,this.associationName=props.associationName,this.automationTargetParameterName=props.automationTargetParameterName,this.calendarNames=props.calendarNames,this.complianceSeverity=props.complianceSeverity,this.documentVersion=props.documentVersion,this.instanceId=props.instanceId,this.maxConcurrency=props.maxConcurrency,this.maxErrors=props.maxErrors,this.name=props.name?.documentRef?.documentName??cdk().ensureStringOrUndefined(props.name,"name","ssm.IDocumentRef | string"),this.outputLocation=props.outputLocation,this.parameters=props.parameters,this.scheduleExpression=props.scheduleExpression,this.scheduleOffset=props.scheduleOffset,this.syncCompliance=props.syncCompliance,this.targets=props.targets,this.waitForSuccessTimeoutSeconds=props.waitForSuccessTimeoutSeconds}get associationRef(){return{associationId:this.ref}}get cfnProperties(){return{applyOnlyAtCronInterval:this.applyOnlyAtCronInterval,associationName:this.associationName,automationTargetParameterName:this.automationTargetParameterName,calendarNames:this.calendarNames,complianceSeverity:this.complianceSeverity,documentVersion:this.documentVersion,instanceId:this.instanceId,maxConcurrency:this.maxConcurrency,maxErrors:this.maxErrors,name:this.name,outputLocation:this.outputLocation,parameters:this.parameters,scheduleExpression:this.scheduleExpression,scheduleOffset:this.scheduleOffset,syncCompliance:this.syncCompliance,targets:this.targets,waitForSuccessTimeoutSeconds:this.waitForSuccessTimeoutSeconds}}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",CfnAssociation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAssociationPropsToCloudFormation(props)}}exports.CfnAssociation=CfnAssociation;function CfnAssociationTargetPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "TargetProperty"')}function convertCfnAssociationTargetPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssociationTargetPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnAssociationTargetPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssociationS3OutputLocationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("outputS3BucketName",cdk().validateString)(properties.outputS3BucketName)),errors.collect(cdk().propertyValidator("outputS3KeyPrefix",cdk().validateString)(properties.outputS3KeyPrefix)),errors.collect(cdk().propertyValidator("outputS3Region",cdk().validateString)(properties.outputS3Region)),errors.wrap('supplied properties not correct for "S3OutputLocationProperty"')}function convertCfnAssociationS3OutputLocationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssociationS3OutputLocationPropertyValidator(properties).assertSuccess(),{OutputS3BucketName:cdk().stringToCloudFormation(properties.outputS3BucketName),OutputS3KeyPrefix:cdk().stringToCloudFormation(properties.outputS3KeyPrefix),OutputS3Region:cdk().stringToCloudFormation(properties.outputS3Region)}):properties}function CfnAssociationS3OutputLocationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("outputS3BucketName","OutputS3BucketName",properties.OutputS3BucketName!=null?cfn_parse().FromCloudFormation.getString(properties.OutputS3BucketName):void 0),ret.addPropertyResult("outputS3KeyPrefix","OutputS3KeyPrefix",properties.OutputS3KeyPrefix!=null?cfn_parse().FromCloudFormation.getString(properties.OutputS3KeyPrefix):void 0),ret.addPropertyResult("outputS3Region","OutputS3Region",properties.OutputS3Region!=null?cfn_parse().FromCloudFormation.getString(properties.OutputS3Region):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssociationInstanceAssociationOutputLocationPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("s3Location",CfnAssociationS3OutputLocationPropertyValidator)(properties.s3Location)),errors.wrap('supplied properties not correct for "InstanceAssociationOutputLocationProperty"')}function convertCfnAssociationInstanceAssociationOutputLocationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssociationInstanceAssociationOutputLocationPropertyValidator(properties).assertSuccess(),{S3Location:convertCfnAssociationS3OutputLocationPropertyToCloudFormation(properties.s3Location)}):properties}function CfnAssociationInstanceAssociationOutputLocationPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("s3Location","S3Location",properties.S3Location!=null?CfnAssociationS3OutputLocationPropertyFromCloudFormation(properties.S3Location):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAssociationPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("applyOnlyAtCronInterval",cdk().validateBoolean)(properties.applyOnlyAtCronInterval)),errors.collect(cdk().propertyValidator("associationName",cdk().validateString)(properties.associationName)),errors.collect(cdk().propertyValidator("automationTargetParameterName",cdk().validateString)(properties.automationTargetParameterName)),errors.collect(cdk().propertyValidator("calendarNames",cdk().listValidator(cdk().validateString))(properties.calendarNames)),errors.collect(cdk().propertyValidator("complianceSeverity",cdk().validateString)(properties.complianceSeverity)),errors.collect(cdk().propertyValidator("documentVersion",cdk().validateString)(properties.documentVersion)),errors.collect(cdk().propertyValidator("instanceId",cdk().validateString)(properties.instanceId)),errors.collect(cdk().propertyValidator("maxConcurrency",cdk().validateString)(properties.maxConcurrency)),errors.collect(cdk().propertyValidator("maxErrors",cdk().validateString)(properties.maxErrors)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("outputLocation",CfnAssociationInstanceAssociationOutputLocationPropertyValidator)(properties.outputLocation)),errors.collect(cdk().propertyValidator("parameters",cdk().validateObject)(properties.parameters)),errors.collect(cdk().propertyValidator("scheduleExpression",cdk().validateString)(properties.scheduleExpression)),errors.collect(cdk().propertyValidator("scheduleOffset",cdk().validateNumber)(properties.scheduleOffset)),errors.collect(cdk().propertyValidator("syncCompliance",cdk().validateString)(properties.syncCompliance)),errors.collect(cdk().propertyValidator("targets",cdk().listValidator(CfnAssociationTargetPropertyValidator))(properties.targets)),errors.collect(cdk().propertyValidator("waitForSuccessTimeoutSeconds",cdk().validateNumber)(properties.waitForSuccessTimeoutSeconds)),errors.wrap('supplied properties not correct for "CfnAssociationProps"')}function convertCfnAssociationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAssociationPropsValidator(properties).assertSuccess(),{ApplyOnlyAtCronInterval:cdk().booleanToCloudFormation(properties.applyOnlyAtCronInterval),AssociationName:cdk().stringToCloudFormation(properties.associationName),AutomationTargetParameterName:cdk().stringToCloudFormation(properties.automationTargetParameterName),CalendarNames:cdk().listMapper(cdk().stringToCloudFormation)(properties.calendarNames),ComplianceSeverity:cdk().stringToCloudFormation(properties.complianceSeverity),DocumentVersion:cdk().stringToCloudFormation(properties.documentVersion),InstanceId:cdk().stringToCloudFormation(properties.instanceId),MaxConcurrency:cdk().stringToCloudFormation(properties.maxConcurrency),MaxErrors:cdk().stringToCloudFormation(properties.maxErrors),Name:cdk().stringToCloudFormation(properties.name),OutputLocation:convertCfnAssociationInstanceAssociationOutputLocationPropertyToCloudFormation(properties.outputLocation),Parameters:cdk().objectToCloudFormation(properties.parameters),ScheduleExpression:cdk().stringToCloudFormation(properties.scheduleExpression),ScheduleOffset:cdk().numberToCloudFormation(properties.scheduleOffset),SyncCompliance:cdk().stringToCloudFormation(properties.syncCompliance),Targets:cdk().listMapper(convertCfnAssociationTargetPropertyToCloudFormation)(properties.targets),WaitForSuccessTimeoutSeconds:cdk().numberToCloudFormation(properties.waitForSuccessTimeoutSeconds)}):properties}function CfnAssociationPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("applyOnlyAtCronInterval","ApplyOnlyAtCronInterval",properties.ApplyOnlyAtCronInterval!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ApplyOnlyAtCronInterval):void 0),ret.addPropertyResult("associationName","AssociationName",properties.AssociationName!=null?cfn_parse().FromCloudFormation.getString(properties.AssociationName):void 0),ret.addPropertyResult("automationTargetParameterName","AutomationTargetParameterName",properties.AutomationTargetParameterName!=null?cfn_parse().FromCloudFormation.getString(properties.AutomationTargetParameterName):void 0),ret.addPropertyResult("calendarNames","CalendarNames",properties.CalendarNames!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.CalendarNames):void 0),ret.addPropertyResult("complianceSeverity","ComplianceSeverity",properties.ComplianceSeverity!=null?cfn_parse().FromCloudFormation.getString(properties.ComplianceSeverity):void 0),ret.addPropertyResult("documentVersion","DocumentVersion",properties.DocumentVersion!=null?cfn_parse().FromCloudFormation.getString(properties.DocumentVersion):void 0),ret.addPropertyResult("instanceId","InstanceId",properties.InstanceId!=null?cfn_parse().FromCloudFormation.getString(properties.InstanceId):void 0),ret.addPropertyResult("maxConcurrency","MaxConcurrency",properties.MaxConcurrency!=null?cfn_parse().FromCloudFormation.getString(properties.MaxConcurrency):void 0),ret.addPropertyResult("maxErrors","MaxErrors",properties.MaxErrors!=null?cfn_parse().FromCloudFormation.getString(properties.MaxErrors):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("outputLocation","OutputLocation",properties.OutputLocation!=null?CfnAssociationInstanceAssociationOutputLocationPropertyFromCloudFormation(properties.OutputLocation):void 0),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse().FromCloudFormation.getAny(properties.Parameters):void 0),ret.addPropertyResult("scheduleExpression","ScheduleExpression",properties.ScheduleExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ScheduleExpression):void 0),ret.addPropertyResult("scheduleOffset","ScheduleOffset",properties.ScheduleOffset!=null?cfn_parse().FromCloudFormation.getNumber(properties.ScheduleOffset):void 0),ret.addPropertyResult("syncCompliance","SyncCompliance",properties.SyncCompliance!=null?cfn_parse().FromCloudFormation.getString(properties.SyncCompliance):void 0),ret.addPropertyResult("targets","Targets",properties.Targets!=null?cfn_parse().FromCloudFormation.getArray(CfnAssociationTargetPropertyFromCloudFormation)(properties.Targets):void 0),ret.addPropertyResult("waitForSuccessTimeoutSeconds","WaitForSuccessTimeoutSeconds",properties.WaitForSuccessTimeoutSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.WaitForSuccessTimeoutSeconds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDocument extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ssm.CfnDocument",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SSM::Document";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDocumentPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnDocument(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}static isCfnDocument(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDocument.CFN_RESOURCE_TYPE_NAME}static fromDocumentName(scope,id,documentName){class Import extends cdk().Resource{documentRef;constructor(scope2,id2,documentName2){super(scope2,id2),this.documentRef={documentName:documentName2}}}return new Import(scope,id,documentName)}static arnForDocument(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ssm_IDocumentRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDocument),error}return new(cfn_parse()).TemplateString("arn:${Partition}:ssm:${Region}:${Account}:document/${DocumentName}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:cdk().Stack.of(resource).region,Account:cdk().Stack.of(resource).account,DocumentName:resource.documentRef.documentName})}attachments;content;documentFormat;documentType;name;requires;tags;tagsRaw;targetType;updateMethod;versionName;constructor(scope,id,props){super(scope,id,{type:CfnDocument.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ssm_CfnDocumentProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDocument),error}cdk().requireProperty(props,"content",this),this.attachments=props.attachments,this.content=props.content,this.documentFormat=props.documentFormat,this.documentType=props.documentType,this.name=props.name,this.requires=props.requires,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SSM::Document",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags,this.targetType=props.targetType,this.updateMethod=props.updateMethod,this.versionName=props.versionName}get documentRef(){return{documentName:this.ref}}get cfnProperties(){return{attachments:this.attachments,content:this.content,documentFormat:this.documentFormat,documentType:this.documentType,name:this.name,requires:this.requires,tags:this.tags.renderTags(),targetType:this.targetType,updateMethod:this.updateMethod,versionName:this.versionName}}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",CfnDocument.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDocumentPropsToCloudFormation(props)}}exports.CfnDocument=CfnDocument;function CfnDocumentDocumentRequiresPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||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("version",cdk().validateString)(properties.version)),errors.wrap('supplied properties not correct for "DocumentRequiresProperty"')}function convertCfnDocumentDocumentRequiresPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDocumentDocumentRequiresPropertyValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),Version:cdk().stringToCloudFormation(properties.version)}):properties}function CfnDocumentDocumentRequiresPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse().FromCloudFormation.getString(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDocumentAttachmentsSourcePropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "AttachmentsSourceProperty"')}function convertCfnDocumentAttachmentsSourcePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDocumentAttachmentsSourcePropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Name:cdk().stringToCloudFormation(properties.name),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnDocumentAttachmentsSourcePropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDocumentPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("attachments",cdk().listValidator(CfnDocumentAttachmentsSourcePropertyValidator))(properties.attachments)),errors.collect(cdk().propertyValidator("content",cdk().requiredValidator)(properties.content)),errors.collect(cdk().propertyValidator("content",cdk().validateObject)(properties.content)),errors.collect(cdk().propertyValidator("documentFormat",cdk().validateString)(properties.documentFormat)),errors.collect(cdk().propertyValidator("documentType",cdk().validateString)(properties.documentType)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("requires",cdk().listValidator(CfnDocumentDocumentRequiresPropertyValidator))(properties.requires)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.collect(cdk().propertyValidator("targetType",cdk().validateString)(properties.targetType)),errors.collect(cdk().propertyValidator("updateMethod",cdk().validateString)(properties.updateMethod)),errors.collect(cdk().propertyValidator("versionName",cdk().validateString)(properties.versionName)),errors.wrap('supplied properties not correct for "CfnDocumentProps"')}function convertCfnDocumentPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDocumentPropsValidator(properties).assertSuccess(),{Attachments:cdk().listMapper(convertCfnDocumentAttachmentsSourcePropertyToCloudFormation)(properties.attachments),Content:cdk().objectToCloudFormation(properties.content),DocumentFormat:cdk().stringToCloudFormation(properties.documentFormat),DocumentType:cdk().stringToCloudFormation(properties.documentType),Name:cdk().stringToCloudFormation(properties.name),Requires:cdk().listMapper(convertCfnDocumentDocumentRequiresPropertyToCloudFormation)(properties.requires),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags),TargetType:cdk().stringToCloudFormation(properties.targetType),UpdateMethod:cdk().stringToCloudFormation(properties.updateMethod),VersionName:cdk().stringToCloudFormation(properties.versionName)}):properties}function CfnDocumentPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("attachments","Attachments",properties.Attachments!=null?cfn_parse().FromCloudFormation.getArray(CfnDocumentAttachmentsSourcePropertyFromCloudFormation)(properties.Attachments):void 0),ret.addPropertyResult("content","Content",properties.Content!=null?cfn_parse().FromCloudFormation.getAny(properties.Content):void 0),ret.addPropertyResult("documentFormat","DocumentFormat",properties.DocumentFormat!=null?cfn_parse().FromCloudFormation.getString(properties.DocumentFormat):void 0),ret.addPropertyResult("documentType","DocumentType",properties.DocumentType!=null?cfn_parse().FromCloudFormation.getString(properties.DocumentType):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("requires","Requires",properties.Requires!=null?cfn_parse().FromCloudFormation.getArray(CfnDocumentDocumentRequiresPropertyFromCloudFormation)(properties.Requires):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("targetType","TargetType",properties.TargetType!=null?cfn_parse().FromCloudFormation.getString(properties.TargetType):void 0),ret.addPropertyResult("updateMethod","UpdateMethod",properties.UpdateMethod!=null?cfn_parse().FromCloudFormation.getString(properties.UpdateMethod):void 0),ret.addPropertyResult("versionName","VersionName",properties.VersionName!=null?cfn_parse().FromCloudFormation.getString(properties.VersionName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMaintenanceWindow extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ssm.CfnMaintenanceWindow",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SSM::MaintenanceWindow";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMaintenanceWindowPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnMaintenanceWindow(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}static isCfnMaintenanceWindow(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMaintenanceWindow.CFN_RESOURCE_TYPE_NAME}attrId;allowUnassociatedTargets;cutoff;description;duration;endDate;name;schedule;scheduleOffset;scheduleTimezone;startDate;tags;tagsRaw;constructor(scope,id,props){super(scope,id,{type:CfnMaintenanceWindow.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ssm_CfnMaintenanceWindowProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMaintenanceWindow),error}cdk().requireProperty(props,"allowUnassociatedTargets",this),cdk().requireProperty(props,"cutoff",this),cdk().requireProperty(props,"duration",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"schedule",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.allowUnassociatedTargets=props.allowUnassociatedTargets,this.cutoff=props.cutoff,this.description=props.description,this.duration=props.duration,this.endDate=props.endDate,this.name=props.name,this.schedule=props.schedule,this.scheduleOffset=props.scheduleOffset,this.scheduleTimezone=props.scheduleTimezone,this.startDate=props.startDate,this.tags=new(cdk()).TagManager(cdk().TagType.STANDARD,"AWS::SSM::MaintenanceWindow",props.tags,{tagPropertyName:"tags"}),this.tagsRaw=props.tags}get maintenanceWindowRef(){return{maintenanceWindowId:this.ref}}get cfnProperties(){return{allowUnassociatedTargets:this.allowUnassociatedTargets,cutoff:this.cutoff,description:this.description,duration:this.duration,endDate:this.endDate,name:this.name,schedule:this.schedule,scheduleOffset:this.scheduleOffset,scheduleTimezone:this.scheduleTimezone,startDate:this.startDate,tags:this.tags.renderTags()}}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",CfnMaintenanceWindow.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMaintenanceWindowPropsToCloudFormation(props)}}exports.CfnMaintenanceWindow=CfnMaintenanceWindow;function CfnMaintenanceWindowPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("allowUnassociatedTargets",cdk().requiredValidator)(properties.allowUnassociatedTargets)),errors.collect(cdk().propertyValidator("allowUnassociatedTargets",cdk().validateBoolean)(properties.allowUnassociatedTargets)),errors.collect(cdk().propertyValidator("cutoff",cdk().requiredValidator)(properties.cutoff)),errors.collect(cdk().propertyValidator("cutoff",cdk().validateNumber)(properties.cutoff)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("duration",cdk().requiredValidator)(properties.duration)),errors.collect(cdk().propertyValidator("duration",cdk().validateNumber)(properties.duration)),errors.collect(cdk().propertyValidator("endDate",cdk().validateString)(properties.endDate)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("schedule",cdk().requiredValidator)(properties.schedule)),errors.collect(cdk().propertyValidator("schedule",cdk().validateString)(properties.schedule)),errors.collect(cdk().propertyValidator("scheduleOffset",cdk().validateNumber)(properties.scheduleOffset)),errors.collect(cdk().propertyValidator("scheduleTimezone",cdk().validateString)(properties.scheduleTimezone)),errors.collect(cdk().propertyValidator("startDate",cdk().validateString)(properties.startDate)),errors.collect(cdk().propertyValidator("tags",cdk().listValidator(cdk().validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnMaintenanceWindowProps"')}function convertCfnMaintenanceWindowPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMaintenanceWindowPropsValidator(properties).assertSuccess(),{AllowUnassociatedTargets:cdk().booleanToCloudFormation(properties.allowUnassociatedTargets),Cutoff:cdk().numberToCloudFormation(properties.cutoff),Description:cdk().stringToCloudFormation(properties.description),Duration:cdk().numberToCloudFormation(properties.duration),EndDate:cdk().stringToCloudFormation(properties.endDate),Name:cdk().stringToCloudFormation(properties.name),Schedule:cdk().stringToCloudFormation(properties.schedule),ScheduleOffset:cdk().numberToCloudFormation(properties.scheduleOffset),ScheduleTimezone:cdk().stringToCloudFormation(properties.scheduleTimezone),StartDate:cdk().stringToCloudFormation(properties.startDate),Tags:cdk().listMapper(cdk().cfnTagToCloudFormation)(properties.tags)}):properties}function CfnMaintenanceWindowPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("allowUnassociatedTargets","AllowUnassociatedTargets",properties.AllowUnassociatedTargets!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AllowUnassociatedTargets):void 0),ret.addPropertyResult("cutoff","Cutoff",properties.Cutoff!=null?cfn_parse().FromCloudFormation.getNumber(properties.Cutoff):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("duration","Duration",properties.Duration!=null?cfn_parse().FromCloudFormation.getNumber(properties.Duration):void 0),ret.addPropertyResult("endDate","EndDate",properties.EndDate!=null?cfn_parse().FromCloudFormation.getString(properties.EndDate):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("schedule","Schedule",properties.Schedule!=null?cfn_parse().FromCloudFormation.getString(properties.Schedule):void 0),ret.addPropertyResult("scheduleOffset","ScheduleOffset",properties.ScheduleOffset!=null?cfn_parse().FromCloudFormation.getNumber(properties.ScheduleOffset):void 0),ret.addPropertyResult("scheduleTimezone","ScheduleTimezone",properties.ScheduleTimezone!=null?cfn_parse().FromCloudFormation.getString(properties.ScheduleTimezone):void 0),ret.addPropertyResult("startDate","StartDate",properties.StartDate!=null?cfn_parse().FromCloudFormation.getString(properties.StartDate):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 CfnMaintenanceWindowTarget extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ssm.CfnMaintenanceWindowTarget",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SSM::MaintenanceWindowTarget";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMaintenanceWindowTargetPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnMaintenanceWindowTarget(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}static isCfnMaintenanceWindowTarget(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMaintenanceWindowTarget.CFN_RESOURCE_TYPE_NAME}static arnForMaintenanceWindowTarget(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ssm_IMaintenanceWindowTargetRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMaintenanceWindowTarget),error}return new(cfn_parse()).TemplateString("arn:${Partition}:ssm:${Region}:${Account}:windowtarget/${WindowTargetId}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:cdk().Stack.of(resource).region,Account:cdk().Stack.of(resource).account,WindowTargetId:resource.maintenanceWindowTargetRef.windowTargetId})}attrId;attrWindowTargetId;description;name;ownerInformation;resourceType;targets;windowId;constructor(scope,id,props){super(scope,id,{type:CfnMaintenanceWindowTarget.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ssm_CfnMaintenanceWindowTargetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMaintenanceWindowTarget),error}cdk().requireProperty(props,"resourceType",this),cdk().requireProperty(props,"targets",this),cdk().requireProperty(props,"windowId",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.attrWindowTargetId=cdk().Token.asString(this.getAtt("WindowTargetId",cdk().ResolutionTypeHint.STRING)),this.description=props.description,this.name=props.name,this.ownerInformation=props.ownerInformation,this.resourceType=props.resourceType,this.targets=props.targets,this.windowId=props.windowId}get maintenanceWindowTargetRef(){return{windowId:cdk().Fn.select(0,cdk().Fn.split("|",this.ref)),windowTargetId:cdk().Fn.select(1,cdk().Fn.split("|",this.ref))}}get cfnProperties(){return{description:this.description,name:this.name,ownerInformation:this.ownerInformation,resourceType:this.resourceType,targets:this.targets,windowId:this.windowId}}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",CfnMaintenanceWindowTarget.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnMaintenanceWindowTargetPropsToCloudFormation(props)}}exports.CfnMaintenanceWindowTarget=CfnMaintenanceWindowTarget;function CfnMaintenanceWindowTargetTargetsPropertyValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("key",cdk().requiredValidator)(properties.key)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("values",cdk().requiredValidator)(properties.values)),errors.collect(cdk().propertyValidator("values",cdk().listValidator(cdk().validateString))(properties.values)),errors.wrap('supplied properties not correct for "TargetsProperty"')}function convertCfnMaintenanceWindowTargetTargetsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMaintenanceWindowTargetTargetsPropertyValidator(properties).assertSuccess(),{Key:cdk().stringToCloudFormation(properties.key),Values:cdk().listMapper(cdk().stringToCloudFormation)(properties.values)}):properties}function CfnMaintenanceWindowTargetTargetsPropertyFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("values","Values",properties.Values!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Values):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnMaintenanceWindowTargetPropsValidator(properties){if(!cdk().canInspect(properties))return cdk().VALIDATION_SUCCESS;const errors=new(cdk()).ValidationResults;return properties&&typeof properties=="object"&&!Array.isArray(properties)||errors.collect(new(cdk()).ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("ownerInformation",cdk().validateString)(properties.ownerInformation)),errors.collect(cdk().propertyValidator("resourceType",cdk().requiredValidator)(properties.resourceType)),errors.collect(cdk().propertyValidator("resourceType",cdk().validateString)(properties.resourceType)),errors.collect(cdk().propertyValidator("targets",cdk().requiredValidator)(properties.targets)),errors.collect(cdk().propertyValidator("targets",cdk().listValidator(CfnMaintenanceWindowTargetTargetsPropertyValidator))(properties.targets)),errors.collect(cdk().propertyValidator("windowId",cdk().requiredValidator)(properties.windowId)),errors.collect(cdk().propertyValidator("windowId",cdk().validateString)(properties.windowId)),errors.wrap('supplied properties not correct for "CfnMaintenanceWindowTargetProps"')}function convertCfnMaintenanceWindowTargetPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnMaintenanceWindowTargetPropsValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),OwnerInformation:cdk().stringToCloudFormation(properties.ownerInformation),ResourceType:cdk().stringToCloudFormation(properties.resourceType),Targets:cdk().listMapper(convertCfnMaintenanceWindowTargetTargetsPropertyToCloudFormation)(properties.targets),WindowId:cdk().stringToCloudFormation(properties.windowId)}):properties}function CfnMaintenanceWindowTargetPropsFromCloudFormation(properties){if(cdk().isResolvableObject(properties))return new(cfn_parse()).FromCloudFormationResult(properties);if(properties=properties??{},!(properties&&typeof properties=="object"&&!Array.isArray(properties)))return new(cfn_parse()).FromCloudFormationResult(properties);const ret=new(cfn_parse()).FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("ownerInformation","OwnerInformation",properties.OwnerInformation!=null?cfn_parse().FromCloudFormation.getString(properties.OwnerInformation):void 0),ret.addPropertyResult("resourceType","ResourceType",properties.ResourceType!=null?cfn_parse().FromCloudFormation.getString(properties.ResourceType):void 0),ret.addPropertyResult("targets","Targets",properties.Targets!=null?cfn_parse().FromCloudFormation.getArray(CfnMaintenanceWindowTargetTargetsPropertyFromCloudFormation)(properties.Targets):void 0),ret.addPropertyResult("windowId","WindowId",properties.WindowId!=null?cfn_parse().FromCloudFormation.getString(properties.WindowId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnMaintenanceWindowTask extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_ssm.CfnMaintenanceWindowTask",version:"2.233.0"};static CFN_RESOURCE_TYPE_NAME="AWS::SSM::MaintenanceWindowTask";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnMaintenanceWindowTaskPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError("Unexpected IResolvable",scope);const ret=new CfnMaintenanceWindowTask(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}static isCfnMaintenanceWindowTask(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnMaintenanceWindowTask.CFN_RESOURCE_TYPE_NAME}static arnForMaintenanceWindowTask(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_ssm_IMaintenanceWindowTaskRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForMaintenanceWindowTask),error}return new(cfn_parse()).TemplateString("arn:${Partition}:ssm:${Region}:${Account}:windowtask/${WindowTaskId}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:cdk().Stack.of(resource).region,Account:cdk().Stack.of(resource).account,WindowTaskId:resource.maintenanceWindowTaskRef.windowTaskId})}attrId;attrWindowTaskId;cutoffBehavior;description;loggingInfo;maxConcurrency;maxErrors;name;priority;serviceRoleArn;targets;taskArn;taskInvocationParameters;taskParameters;taskType;windowId;constructor(scope,id,props){super(scope,id,{type:CfnMaintenanceWindowTask.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_ssm_CfnMaintenanceWindowTaskProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnMaintenanceWindowTask),error}cdk().requireProperty(props,"priority",this),cdk().requireProperty(props,"taskArn",this),cdk().requireProperty(props,"taskType",this),cdk().requireProperty(props,"windowId",this),this.attrId=cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING)),this.attrWindowTaskId=cdk().Token.asString(this.getAtt("WindowTaskId",cdk().ResolutionTypeHint.STRING)),this.cutoffBehavior=props.cutoffBehavior,this.description=props.description,this.loggingInfo=props.loggingInfo,this.maxConcurrency=props.maxConcurrency,this.maxErrors=props.maxErrors,this.name=props.name,this.priority=props.priority,this.serviceRoleArn=props.serviceRoleArn,this.targets=props.targets,this.taskArn=props.taskArn,this.taskInvocationParameters=props.taskInvocationParameters,this.taskParameters=props.taskParameters,this.taskType=props.taskType,this.windowId=props.windowId}get maintenanceWindowTaskRef(){return{maintenanceWindowTaskId:this.ref,windowTaskId:this.attrW