UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

1 lines 142 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.251.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(cfn_parse().lit`UnexpectedIResolvable`,"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:resource.env.region,Account:resource.env.account,AssociationId:resource.associationRef.associationId})}_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._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=cdk().getRefProperty(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 applyOnlyAtCronInterval(){return this._applyOnlyAtCronInterval}set applyOnlyAtCronInterval(value){cdk().traceProperty(this.node,"ApplyOnlyAtCronInterval"),this._applyOnlyAtCronInterval=value}get associationName(){return this._associationName}set associationName(value){cdk().traceProperty(this.node,"AssociationName"),this._associationName=value}get automationTargetParameterName(){return this._automationTargetParameterName}set automationTargetParameterName(value){cdk().traceProperty(this.node,"AutomationTargetParameterName"),this._automationTargetParameterName=value}get calendarNames(){return this._calendarNames}set calendarNames(value){cdk().traceProperty(this.node,"CalendarNames"),this._calendarNames=value}get complianceSeverity(){return this._complianceSeverity}set complianceSeverity(value){cdk().traceProperty(this.node,"ComplianceSeverity"),this._complianceSeverity=value}get documentVersion(){return this._documentVersion}set documentVersion(value){cdk().traceProperty(this.node,"DocumentVersion"),this._documentVersion=value}get instanceId(){return this._instanceId}set instanceId(value){cdk().traceProperty(this.node,"InstanceId"),this._instanceId=value}get maxConcurrency(){return this._maxConcurrency}set maxConcurrency(value){cdk().traceProperty(this.node,"MaxConcurrency"),this._maxConcurrency=value}get maxErrors(){return this._maxErrors}set maxErrors(value){cdk().traceProperty(this.node,"MaxErrors"),this._maxErrors=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get outputLocation(){return this._outputLocation}set outputLocation(value){cdk().traceProperty(this.node,"OutputLocation"),this._outputLocation=value}get parameters(){return this._parameters}set parameters(value){cdk().traceProperty(this.node,"Parameters"),this._parameters=value}get scheduleExpression(){return this._scheduleExpression}set scheduleExpression(value){cdk().traceProperty(this.node,"ScheduleExpression"),this._scheduleExpression=value}get scheduleOffset(){return this._scheduleOffset}set scheduleOffset(value){cdk().traceProperty(this.node,"ScheduleOffset"),this._scheduleOffset=value}get syncCompliance(){return this._syncCompliance}set syncCompliance(value){cdk().traceProperty(this.node,"SyncCompliance"),this._syncCompliance=value}get targets(){return this._targets}set targets(value){cdk().traceProperty(this.node,"Targets"),this._targets=value}get waitForSuccessTimeoutSeconds(){return this._waitForSuccessTimeoutSeconds}set waitForSuccessTimeoutSeconds(value){cdk().traceProperty(this.node,"WaitForSuccessTimeoutSeconds"),this._waitForSuccessTimeoutSeconds=value}get attrAssociationId(){return cdk().Token.asString(this.getAtt("AssociationId",cdk().ResolutionTypeHint.STRING))}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:logicalId",this._synthesizeLogicalId()),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.251.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(cfn_parse().lit`UnexpectedIResolvable`,"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:resource.env.region,Account:resource.env.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 attachments(){return this._attachments}set attachments(value){cdk().traceProperty(this.node,"Attachments"),this._attachments=value}get content(){return this._content}set content(value){cdk().traceProperty(this.node,"Content"),this._content=value}get documentFormat(){return this._documentFormat}set documentFormat(value){cdk().traceProperty(this.node,"DocumentFormat"),this._documentFormat=value}get documentType(){return this._documentType}set documentType(value){cdk().traceProperty(this.node,"DocumentType"),this._documentType=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get requires(){return this._requires}set requires(value){cdk().traceProperty(this.node,"Requires"),this._requires=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get targetType(){return this._targetType}set targetType(value){cdk().traceProperty(this.node,"TargetType"),this._targetType=value}get updateMethod(){return this._updateMethod}set updateMethod(value){cdk().traceProperty(this.node,"UpdateMethod"),this._updateMethod=value}get versionName(){return this._versionName}set versionName(value){cdk().traceProperty(this.node,"VersionName"),this._versionName=value}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:logicalId",this._synthesizeLogicalId()),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.251.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(cfn_parse().lit`UnexpectedIResolvable`,"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}_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._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{windowId:this.ref}}get allowUnassociatedTargets(){return this._allowUnassociatedTargets}set allowUnassociatedTargets(value){cdk().traceProperty(this.node,"AllowUnassociatedTargets"),this._allowUnassociatedTargets=value}get cutoff(){return this._cutoff}set cutoff(value){cdk().traceProperty(this.node,"Cutoff"),this._cutoff=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get duration(){return this._duration}set duration(value){cdk().traceProperty(this.node,"Duration"),this._duration=value}get endDate(){return this._endDate}set endDate(value){cdk().traceProperty(this.node,"EndDate"),this._endDate=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get schedule(){return this._schedule}set schedule(value){cdk().traceProperty(this.node,"Schedule"),this._schedule=value}get scheduleOffset(){return this._scheduleOffset}set scheduleOffset(value){cdk().traceProperty(this.node,"ScheduleOffset"),this._scheduleOffset=value}get scheduleTimezone(){return this._scheduleTimezone}set scheduleTimezone(value){cdk().traceProperty(this.node,"ScheduleTimezone"),this._scheduleTimezone=value}get startDate(){return this._startDate}set startDate(value){cdk().traceProperty(this.node,"StartDate"),this._startDate=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrWindowId(){return cdk().Token.asString(this.getAtt("WindowId",cdk().ResolutionTypeHint.STRING))}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:logicalId",this._synthesizeLogicalId()),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.251.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(cfn_parse().lit`UnexpectedIResolvable`,"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:resource.env.region,Account:resource.env.account,WindowTargetId:resource.maintenanceWindowTargetRef.windowTargetId})}_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._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:this.windowId,windowTargetId:this.ref}}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get ownerInformation(){return this._ownerInformation}set ownerInformation(value){cdk().traceProperty(this.node,"OwnerInformation"),this._ownerInformation=value}get resourceType(){return this._resourceType}set resourceType(value){cdk().traceProperty(this.node,"ResourceType"),this._resourceType=value}get targets(){return this._targets}set targets(value){cdk().traceProperty(this.node,"Targets"),this._targets=value}get windowId(){return this._windowId}set windowId(value){cdk().traceProperty(this.node,"WindowId"),this._windowId=value}get attrWindowTargetId(){return cdk().Token.asString(this.getAtt("WindowTargetId",cdk().ResolutionTypeHint.STRING))}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:logicalId",this._synthesizeLogicalId()),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.add