Files
2026-05-06 18:55:16 -05:00

2 lines
172 KiB
JavaScript

"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnRoutingRule=exports.CfnVpcLink=exports.CfnStage=exports.CfnRouteResponse=exports.CfnRoute=exports.CfnModel=exports.CfnIntegrationResponse=exports.CfnIntegration=exports.CfnDomainName=exports.CfnDeployment=exports.CfnAuthorizer=exports.CfnApiMapping=exports.CfnApiGatewayManagedOverrides=exports.CfnApi=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 CfnApi extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnApi",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::Api";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnApiPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnApi(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 isCfnApi(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnApi.CFN_RESOURCE_TYPE_NAME}static fromApiId(scope,id,apiId){class Import extends cdk().Resource{apiRef;constructor(scope2,id2,apiId2){super(scope2,id2),this.apiRef={apiId:apiId2}}}return new Import(scope,id,apiId)}static arnForApi(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_apigatewayv2_IApiRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForApi),error}return new(cfn_parse()).TemplateString("arn:${Partition}:apigateway:${Region}::/apis/${ApiId}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,ApiId:resource.apiRef.apiId})}_apiKeySelectionExpression;_basePath;_body;_bodyS3Location;_corsConfiguration;_credentialsArn;_description;_disableExecuteApiEndpoint;_disableSchemaValidation;_failOnWarnings;_ipAddressType;_name;_protocolType;_routeKey;_routeSelectionExpression;tags;_tagsRaw;_target;_version;cfnPropertyNames={apiKeySelectionExpression:"ApiKeySelectionExpression",basePath:"BasePath",body:"Body",bodyS3Location:"BodyS3Location",corsConfiguration:"CorsConfiguration",credentialsArn:"CredentialsArn",description:"Description",disableExecuteApiEndpoint:"DisableExecuteApiEndpoint",disableSchemaValidation:"DisableSchemaValidation",failOnWarnings:"FailOnWarnings",ipAddressType:"IpAddressType",name:"Name",protocolType:"ProtocolType",routeKey:"RouteKey",routeSelectionExpression:"RouteSelectionExpression",tags:"Tags",target:"Target",version:"Version"};constructor(scope,id,props={}){super(scope,id,{type:CfnApi.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnApiProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApi),error}this._apiKeySelectionExpression=props.apiKeySelectionExpression,this._basePath=props.basePath,this._body=props.body,this._bodyS3Location=props.bodyS3Location,this._corsConfiguration=props.corsConfiguration,this._credentialsArn=props.credentialsArn,this._description=props.description,this._disableExecuteApiEndpoint=props.disableExecuteApiEndpoint,this._disableSchemaValidation=props.disableSchemaValidation,this._failOnWarnings=props.failOnWarnings,this._ipAddressType=props.ipAddressType,this._name=props.name,this._protocolType=props.protocolType,this._routeKey=props.routeKey,this._routeSelectionExpression=props.routeSelectionExpression,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::ApiGatewayV2::Api",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags,this._target=cdk().getRefProperty(props.target?.functionRef,"functionArn")??cdk().ensureStringOrUndefined(props.target,"target","lambda.IFunctionRef | string"),this._version=props.version}get apiRef(){return{apiId:this.ref}}get apiKeySelectionExpression(){return this._apiKeySelectionExpression}set apiKeySelectionExpression(value){cdk().traceProperty(this.node,"ApiKeySelectionExpression"),this._apiKeySelectionExpression=value}get basePath(){return this._basePath}set basePath(value){cdk().traceProperty(this.node,"BasePath"),this._basePath=value}get body(){return this._body}set body(value){cdk().traceProperty(this.node,"Body"),this._body=value}get bodyS3Location(){return this._bodyS3Location}set bodyS3Location(value){cdk().traceProperty(this.node,"BodyS3Location"),this._bodyS3Location=value}get corsConfiguration(){return this._corsConfiguration}set corsConfiguration(value){cdk().traceProperty(this.node,"CorsConfiguration"),this._corsConfiguration=value}get credentialsArn(){return this._credentialsArn}set credentialsArn(value){cdk().traceProperty(this.node,"CredentialsArn"),this._credentialsArn=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get disableExecuteApiEndpoint(){return this._disableExecuteApiEndpoint}set disableExecuteApiEndpoint(value){cdk().traceProperty(this.node,"DisableExecuteApiEndpoint"),this._disableExecuteApiEndpoint=value}get disableSchemaValidation(){return this._disableSchemaValidation}set disableSchemaValidation(value){cdk().traceProperty(this.node,"DisableSchemaValidation"),this._disableSchemaValidation=value}get failOnWarnings(){return this._failOnWarnings}set failOnWarnings(value){cdk().traceProperty(this.node,"FailOnWarnings"),this._failOnWarnings=value}get ipAddressType(){return this._ipAddressType}set ipAddressType(value){cdk().traceProperty(this.node,"IpAddressType"),this._ipAddressType=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get protocolType(){return this._protocolType}set protocolType(value){cdk().traceProperty(this.node,"ProtocolType"),this._protocolType=value}get routeKey(){return this._routeKey}set routeKey(value){cdk().traceProperty(this.node,"RouteKey"),this._routeKey=value}get routeSelectionExpression(){return this._routeSelectionExpression}set routeSelectionExpression(value){cdk().traceProperty(this.node,"RouteSelectionExpression"),this._routeSelectionExpression=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get target(){return this._target}set target(value){cdk().traceProperty(this.node,"Target"),this._target=value}get version(){return this._version}set version(value){cdk().traceProperty(this.node,"Version"),this._version=value}get attrApiEndpoint(){return cdk().Token.asString(this.getAtt("ApiEndpoint",cdk().ResolutionTypeHint.STRING))}get attrApiId(){return cdk().Token.asString(this.getAtt("ApiId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiKeySelectionExpression:this._apiKeySelectionExpression,basePath:this._basePath,body:this._body,bodyS3Location:this._bodyS3Location,corsConfiguration:this._corsConfiguration,credentialsArn:this._credentialsArn,description:this._description,disableExecuteApiEndpoint:this._disableExecuteApiEndpoint,disableSchemaValidation:this._disableSchemaValidation,failOnWarnings:this._failOnWarnings,ipAddressType:this._ipAddressType,name:this._name,protocolType:this._protocolType,routeKey:this._routeKey,routeSelectionExpression:this._routeSelectionExpression,tags:this.tags.renderTags(),target:this._target,version:this._version}}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",CfnApi.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnApiPropsToCloudFormation(props)}}exports.CfnApi=CfnApi;function CfnApiBodyS3LocationPropertyValidator(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("bucket",cdk().validateString)(properties.bucket)),errors.collect(cdk().propertyValidator("etag",cdk().validateString)(properties.etag)),errors.collect(cdk().propertyValidator("key",cdk().validateString)(properties.key)),errors.collect(cdk().propertyValidator("version",cdk().validateString)(properties.version)),errors.wrap('supplied properties not correct for "BodyS3LocationProperty"')}function convertCfnApiBodyS3LocationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiBodyS3LocationPropertyValidator(properties).assertSuccess(),{Bucket:cdk().stringToCloudFormation(properties.bucket),Etag:cdk().stringToCloudFormation(properties.etag),Key:cdk().stringToCloudFormation(properties.key),Version:cdk().stringToCloudFormation(properties.version)}):properties}function CfnApiBodyS3LocationPropertyFromCloudFormation(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("bucket","Bucket",properties.Bucket!=null?cfn_parse().FromCloudFormation.getString(properties.Bucket):void 0),ret.addPropertyResult("etag","Etag",properties.Etag!=null?cfn_parse().FromCloudFormation.getString(properties.Etag):void 0),ret.addPropertyResult("key","Key",properties.Key!=null?cfn_parse().FromCloudFormation.getString(properties.Key):void 0),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse().FromCloudFormation.getString(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApiCorsPropertyValidator(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("allowCredentials",cdk().validateBoolean)(properties.allowCredentials)),errors.collect(cdk().propertyValidator("allowHeaders",cdk().listValidator(cdk().validateString))(properties.allowHeaders)),errors.collect(cdk().propertyValidator("allowMethods",cdk().listValidator(cdk().validateString))(properties.allowMethods)),errors.collect(cdk().propertyValidator("allowOrigins",cdk().listValidator(cdk().validateString))(properties.allowOrigins)),errors.collect(cdk().propertyValidator("exposeHeaders",cdk().listValidator(cdk().validateString))(properties.exposeHeaders)),errors.collect(cdk().propertyValidator("maxAge",cdk().validateNumber)(properties.maxAge)),errors.wrap('supplied properties not correct for "CorsProperty"')}function convertCfnApiCorsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiCorsPropertyValidator(properties).assertSuccess(),{AllowCredentials:cdk().booleanToCloudFormation(properties.allowCredentials),AllowHeaders:cdk().listMapper(cdk().stringToCloudFormation)(properties.allowHeaders),AllowMethods:cdk().listMapper(cdk().stringToCloudFormation)(properties.allowMethods),AllowOrigins:cdk().listMapper(cdk().stringToCloudFormation)(properties.allowOrigins),ExposeHeaders:cdk().listMapper(cdk().stringToCloudFormation)(properties.exposeHeaders),MaxAge:cdk().numberToCloudFormation(properties.maxAge)}):properties}function CfnApiCorsPropertyFromCloudFormation(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("allowCredentials","AllowCredentials",properties.AllowCredentials!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AllowCredentials):void 0),ret.addPropertyResult("allowHeaders","AllowHeaders",properties.AllowHeaders!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AllowHeaders):void 0),ret.addPropertyResult("allowMethods","AllowMethods",properties.AllowMethods!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AllowMethods):void 0),ret.addPropertyResult("allowOrigins","AllowOrigins",properties.AllowOrigins!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AllowOrigins):void 0),ret.addPropertyResult("exposeHeaders","ExposeHeaders",properties.ExposeHeaders!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.ExposeHeaders):void 0),ret.addPropertyResult("maxAge","MaxAge",properties.MaxAge!=null?cfn_parse().FromCloudFormation.getNumber(properties.MaxAge):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApiPropsValidator(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("apiKeySelectionExpression",cdk().validateString)(properties.apiKeySelectionExpression)),errors.collect(cdk().propertyValidator("basePath",cdk().validateString)(properties.basePath)),errors.collect(cdk().propertyValidator("body",cdk().validateObject)(properties.body)),errors.collect(cdk().propertyValidator("bodyS3Location",CfnApiBodyS3LocationPropertyValidator)(properties.bodyS3Location)),errors.collect(cdk().propertyValidator("corsConfiguration",CfnApiCorsPropertyValidator)(properties.corsConfiguration)),errors.collect(cdk().propertyValidator("credentialsArn",cdk().validateString)(properties.credentialsArn)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("disableExecuteApiEndpoint",cdk().validateBoolean)(properties.disableExecuteApiEndpoint)),errors.collect(cdk().propertyValidator("disableSchemaValidation",cdk().validateBoolean)(properties.disableSchemaValidation)),errors.collect(cdk().propertyValidator("failOnWarnings",cdk().validateBoolean)(properties.failOnWarnings)),errors.collect(cdk().propertyValidator("ipAddressType",cdk().validateString)(properties.ipAddressType)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("protocolType",cdk().validateString)(properties.protocolType)),errors.collect(cdk().propertyValidator("routeKey",cdk().validateString)(properties.routeKey)),errors.collect(cdk().propertyValidator("routeSelectionExpression",cdk().validateString)(properties.routeSelectionExpression)),errors.collect(cdk().propertyValidator("tags",cdk().hashValidator(cdk().validateString))(properties.tags)),errors.collect(cdk().propertyValidator("target",cdk().validateString)(properties.target)),errors.collect(cdk().propertyValidator("version",cdk().validateString)(properties.version)),errors.wrap('supplied properties not correct for "CfnApiProps"')}function convertCfnApiPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiPropsValidator(properties).assertSuccess(),{ApiKeySelectionExpression:cdk().stringToCloudFormation(properties.apiKeySelectionExpression),BasePath:cdk().stringToCloudFormation(properties.basePath),Body:cdk().objectToCloudFormation(properties.body),BodyS3Location:convertCfnApiBodyS3LocationPropertyToCloudFormation(properties.bodyS3Location),CorsConfiguration:convertCfnApiCorsPropertyToCloudFormation(properties.corsConfiguration),CredentialsArn:cdk().stringToCloudFormation(properties.credentialsArn),Description:cdk().stringToCloudFormation(properties.description),DisableExecuteApiEndpoint:cdk().booleanToCloudFormation(properties.disableExecuteApiEndpoint),DisableSchemaValidation:cdk().booleanToCloudFormation(properties.disableSchemaValidation),FailOnWarnings:cdk().booleanToCloudFormation(properties.failOnWarnings),IpAddressType:cdk().stringToCloudFormation(properties.ipAddressType),Name:cdk().stringToCloudFormation(properties.name),ProtocolType:cdk().stringToCloudFormation(properties.protocolType),RouteKey:cdk().stringToCloudFormation(properties.routeKey),RouteSelectionExpression:cdk().stringToCloudFormation(properties.routeSelectionExpression),Tags:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tags),Target:cdk().stringToCloudFormation(properties.target),Version:cdk().stringToCloudFormation(properties.version)}):properties}function CfnApiPropsFromCloudFormation(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("apiKeySelectionExpression","ApiKeySelectionExpression",properties.ApiKeySelectionExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ApiKeySelectionExpression):void 0),ret.addPropertyResult("basePath","BasePath",properties.BasePath!=null?cfn_parse().FromCloudFormation.getString(properties.BasePath):void 0),ret.addPropertyResult("body","Body",properties.Body!=null?cfn_parse().FromCloudFormation.getAny(properties.Body):void 0),ret.addPropertyResult("bodyS3Location","BodyS3Location",properties.BodyS3Location!=null?CfnApiBodyS3LocationPropertyFromCloudFormation(properties.BodyS3Location):void 0),ret.addPropertyResult("corsConfiguration","CorsConfiguration",properties.CorsConfiguration!=null?CfnApiCorsPropertyFromCloudFormation(properties.CorsConfiguration):void 0),ret.addPropertyResult("credentialsArn","CredentialsArn",properties.CredentialsArn!=null?cfn_parse().FromCloudFormation.getString(properties.CredentialsArn):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("disableExecuteApiEndpoint","DisableExecuteApiEndpoint",properties.DisableExecuteApiEndpoint!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DisableExecuteApiEndpoint):void 0),ret.addPropertyResult("disableSchemaValidation","DisableSchemaValidation",properties.DisableSchemaValidation!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DisableSchemaValidation):void 0),ret.addPropertyResult("failOnWarnings","FailOnWarnings",properties.FailOnWarnings!=null?cfn_parse().FromCloudFormation.getBoolean(properties.FailOnWarnings):void 0),ret.addPropertyResult("ipAddressType","IpAddressType",properties.IpAddressType!=null?cfn_parse().FromCloudFormation.getString(properties.IpAddressType):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("protocolType","ProtocolType",properties.ProtocolType!=null?cfn_parse().FromCloudFormation.getString(properties.ProtocolType):void 0),ret.addPropertyResult("routeKey","RouteKey",properties.RouteKey!=null?cfn_parse().FromCloudFormation.getString(properties.RouteKey):void 0),ret.addPropertyResult("routeSelectionExpression","RouteSelectionExpression",properties.RouteSelectionExpression!=null?cfn_parse().FromCloudFormation.getString(properties.RouteSelectionExpression):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Tags):void 0),ret.addPropertyResult("target","Target",properties.Target!=null?cfn_parse().FromCloudFormation.getString(properties.Target):void 0),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse().FromCloudFormation.getString(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnApiGatewayManagedOverrides extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnApiGatewayManagedOverrides",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::ApiGatewayManagedOverrides";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnApiGatewayManagedOverridesPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnApiGatewayManagedOverrides(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 isCfnApiGatewayManagedOverrides(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnApiGatewayManagedOverrides.CFN_RESOURCE_TYPE_NAME}_apiId;_integration;_route;_stage;cfnPropertyNames={apiId:"ApiId",integration:"Integration",route:"Route",stage:"Stage"};constructor(scope,id,props){super(scope,id,{type:CfnApiGatewayManagedOverrides.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnApiGatewayManagedOverridesProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApiGatewayManagedOverrides),error}cdk().requireProperty(props,"apiId",this),this._apiId=props.apiId,this._integration=props.integration,this._route=props.route,this._stage=props.stage}get apiGatewayManagedOverridesRef(){return{apiGatewayManagedOverridesId:this.ref}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get integration(){return this._integration}set integration(value){cdk().traceProperty(this.node,"Integration"),this._integration=value}get route(){return this._route}set route(value){cdk().traceProperty(this.node,"Route"),this._route=value}get stage(){return this._stage}set stage(value){cdk().traceProperty(this.node,"Stage"),this._stage=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,integration:this._integration,route:this._route,stage:this._stage}}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",CfnApiGatewayManagedOverrides.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnApiGatewayManagedOverridesPropsToCloudFormation(props)}}exports.CfnApiGatewayManagedOverrides=CfnApiGatewayManagedOverrides;function CfnApiGatewayManagedOverridesIntegrationOverridesPropertyValidator(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("integrationMethod",cdk().validateString)(properties.integrationMethod)),errors.collect(cdk().propertyValidator("payloadFormatVersion",cdk().validateString)(properties.payloadFormatVersion)),errors.collect(cdk().propertyValidator("timeoutInMillis",cdk().validateNumber)(properties.timeoutInMillis)),errors.wrap('supplied properties not correct for "IntegrationOverridesProperty"')}function convertCfnApiGatewayManagedOverridesIntegrationOverridesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiGatewayManagedOverridesIntegrationOverridesPropertyValidator(properties).assertSuccess(),{Description:cdk().stringToCloudFormation(properties.description),IntegrationMethod:cdk().stringToCloudFormation(properties.integrationMethod),PayloadFormatVersion:cdk().stringToCloudFormation(properties.payloadFormatVersion),TimeoutInMillis:cdk().numberToCloudFormation(properties.timeoutInMillis)}):properties}function CfnApiGatewayManagedOverridesIntegrationOverridesPropertyFromCloudFormation(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("integrationMethod","IntegrationMethod",properties.IntegrationMethod!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationMethod):void 0),ret.addPropertyResult("payloadFormatVersion","PayloadFormatVersion",properties.PayloadFormatVersion!=null?cfn_parse().FromCloudFormation.getString(properties.PayloadFormatVersion):void 0),ret.addPropertyResult("timeoutInMillis","TimeoutInMillis",properties.TimeoutInMillis!=null?cfn_parse().FromCloudFormation.getNumber(properties.TimeoutInMillis):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApiGatewayManagedOverridesAccessLogSettingsPropertyValidator(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("destinationArn",cdk().validateString)(properties.destinationArn)),errors.collect(cdk().propertyValidator("format",cdk().validateString)(properties.format)),errors.wrap('supplied properties not correct for "AccessLogSettingsProperty"')}function convertCfnApiGatewayManagedOverridesAccessLogSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiGatewayManagedOverridesAccessLogSettingsPropertyValidator(properties).assertSuccess(),{DestinationArn:cdk().stringToCloudFormation(properties.destinationArn),Format:cdk().stringToCloudFormation(properties.format)}):properties}function CfnApiGatewayManagedOverridesAccessLogSettingsPropertyFromCloudFormation(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("destinationArn","DestinationArn",properties.DestinationArn!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationArn):void 0),ret.addPropertyResult("format","Format",properties.Format!=null?cfn_parse().FromCloudFormation.getString(properties.Format):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApiGatewayManagedOverridesRouteSettingsPropertyValidator(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("dataTraceEnabled",cdk().validateBoolean)(properties.dataTraceEnabled)),errors.collect(cdk().propertyValidator("detailedMetricsEnabled",cdk().validateBoolean)(properties.detailedMetricsEnabled)),errors.collect(cdk().propertyValidator("loggingLevel",cdk().validateString)(properties.loggingLevel)),errors.collect(cdk().propertyValidator("throttlingBurstLimit",cdk().validateNumber)(properties.throttlingBurstLimit)),errors.collect(cdk().propertyValidator("throttlingRateLimit",cdk().validateNumber)(properties.throttlingRateLimit)),errors.wrap('supplied properties not correct for "RouteSettingsProperty"')}function convertCfnApiGatewayManagedOverridesRouteSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiGatewayManagedOverridesRouteSettingsPropertyValidator(properties).assertSuccess(),{DataTraceEnabled:cdk().booleanToCloudFormation(properties.dataTraceEnabled),DetailedMetricsEnabled:cdk().booleanToCloudFormation(properties.detailedMetricsEnabled),LoggingLevel:cdk().stringToCloudFormation(properties.loggingLevel),ThrottlingBurstLimit:cdk().numberToCloudFormation(properties.throttlingBurstLimit),ThrottlingRateLimit:cdk().numberToCloudFormation(properties.throttlingRateLimit)}):properties}function CfnApiGatewayManagedOverridesRouteSettingsPropertyFromCloudFormation(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("dataTraceEnabled","DataTraceEnabled",properties.DataTraceEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DataTraceEnabled):void 0),ret.addPropertyResult("detailedMetricsEnabled","DetailedMetricsEnabled",properties.DetailedMetricsEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DetailedMetricsEnabled):void 0),ret.addPropertyResult("loggingLevel","LoggingLevel",properties.LoggingLevel!=null?cfn_parse().FromCloudFormation.getString(properties.LoggingLevel):void 0),ret.addPropertyResult("throttlingBurstLimit","ThrottlingBurstLimit",properties.ThrottlingBurstLimit!=null?cfn_parse().FromCloudFormation.getNumber(properties.ThrottlingBurstLimit):void 0),ret.addPropertyResult("throttlingRateLimit","ThrottlingRateLimit",properties.ThrottlingRateLimit!=null?cfn_parse().FromCloudFormation.getNumber(properties.ThrottlingRateLimit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApiGatewayManagedOverridesStageOverridesPropertyValidator(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("accessLogSettings",CfnApiGatewayManagedOverridesAccessLogSettingsPropertyValidator)(properties.accessLogSettings)),errors.collect(cdk().propertyValidator("autoDeploy",cdk().validateBoolean)(properties.autoDeploy)),errors.collect(cdk().propertyValidator("defaultRouteSettings",CfnApiGatewayManagedOverridesRouteSettingsPropertyValidator)(properties.defaultRouteSettings)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("routeSettings",cdk().validateObject)(properties.routeSettings)),errors.collect(cdk().propertyValidator("stageVariables",cdk().validateObject)(properties.stageVariables)),errors.wrap('supplied properties not correct for "StageOverridesProperty"')}function convertCfnApiGatewayManagedOverridesStageOverridesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiGatewayManagedOverridesStageOverridesPropertyValidator(properties).assertSuccess(),{AccessLogSettings:convertCfnApiGatewayManagedOverridesAccessLogSettingsPropertyToCloudFormation(properties.accessLogSettings),AutoDeploy:cdk().booleanToCloudFormation(properties.autoDeploy),DefaultRouteSettings:convertCfnApiGatewayManagedOverridesRouteSettingsPropertyToCloudFormation(properties.defaultRouteSettings),Description:cdk().stringToCloudFormation(properties.description),RouteSettings:cdk().objectToCloudFormation(properties.routeSettings),StageVariables:cdk().objectToCloudFormation(properties.stageVariables)}):properties}function CfnApiGatewayManagedOverridesStageOverridesPropertyFromCloudFormation(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("accessLogSettings","AccessLogSettings",properties.AccessLogSettings!=null?CfnApiGatewayManagedOverridesAccessLogSettingsPropertyFromCloudFormation(properties.AccessLogSettings):void 0),ret.addPropertyResult("autoDeploy","AutoDeploy",properties.AutoDeploy!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AutoDeploy):void 0),ret.addPropertyResult("defaultRouteSettings","DefaultRouteSettings",properties.DefaultRouteSettings!=null?CfnApiGatewayManagedOverridesRouteSettingsPropertyFromCloudFormation(properties.DefaultRouteSettings):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("routeSettings","RouteSettings",properties.RouteSettings!=null?cfn_parse().FromCloudFormation.getAny(properties.RouteSettings):void 0),ret.addPropertyResult("stageVariables","StageVariables",properties.StageVariables!=null?cfn_parse().FromCloudFormation.getAny(properties.StageVariables):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApiGatewayManagedOverridesRouteOverridesPropertyValidator(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("authorizationScopes",cdk().listValidator(cdk().validateString))(properties.authorizationScopes)),errors.collect(cdk().propertyValidator("authorizationType",cdk().validateString)(properties.authorizationType)),errors.collect(cdk().propertyValidator("authorizerId",cdk().validateString)(properties.authorizerId)),errors.collect(cdk().propertyValidator("operationName",cdk().validateString)(properties.operationName)),errors.collect(cdk().propertyValidator("target",cdk().validateString)(properties.target)),errors.wrap('supplied properties not correct for "RouteOverridesProperty"')}function convertCfnApiGatewayManagedOverridesRouteOverridesPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiGatewayManagedOverridesRouteOverridesPropertyValidator(properties).assertSuccess(),{AuthorizationScopes:cdk().listMapper(cdk().stringToCloudFormation)(properties.authorizationScopes),AuthorizationType:cdk().stringToCloudFormation(properties.authorizationType),AuthorizerId:cdk().stringToCloudFormation(properties.authorizerId),OperationName:cdk().stringToCloudFormation(properties.operationName),Target:cdk().stringToCloudFormation(properties.target)}):properties}function CfnApiGatewayManagedOverridesRouteOverridesPropertyFromCloudFormation(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("authorizationScopes","AuthorizationScopes",properties.AuthorizationScopes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AuthorizationScopes):void 0),ret.addPropertyResult("authorizationType","AuthorizationType",properties.AuthorizationType!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizationType):void 0),ret.addPropertyResult("authorizerId","AuthorizerId",properties.AuthorizerId!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizerId):void 0),ret.addPropertyResult("operationName","OperationName",properties.OperationName!=null?cfn_parse().FromCloudFormation.getString(properties.OperationName):void 0),ret.addPropertyResult("target","Target",properties.Target!=null?cfn_parse().FromCloudFormation.getString(properties.Target):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnApiGatewayManagedOverridesPropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("integration",CfnApiGatewayManagedOverridesIntegrationOverridesPropertyValidator)(properties.integration)),errors.collect(cdk().propertyValidator("route",CfnApiGatewayManagedOverridesRouteOverridesPropertyValidator)(properties.route)),errors.collect(cdk().propertyValidator("stage",CfnApiGatewayManagedOverridesStageOverridesPropertyValidator)(properties.stage)),errors.wrap('supplied properties not correct for "CfnApiGatewayManagedOverridesProps"')}function convertCfnApiGatewayManagedOverridesPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiGatewayManagedOverridesPropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),Integration:convertCfnApiGatewayManagedOverridesIntegrationOverridesPropertyToCloudFormation(properties.integration),Route:convertCfnApiGatewayManagedOverridesRouteOverridesPropertyToCloudFormation(properties.route),Stage:convertCfnApiGatewayManagedOverridesStageOverridesPropertyToCloudFormation(properties.stage)}):properties}function CfnApiGatewayManagedOverridesPropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("integration","Integration",properties.Integration!=null?CfnApiGatewayManagedOverridesIntegrationOverridesPropertyFromCloudFormation(properties.Integration):void 0),ret.addPropertyResult("route","Route",properties.Route!=null?CfnApiGatewayManagedOverridesRouteOverridesPropertyFromCloudFormation(properties.Route):void 0),ret.addPropertyResult("stage","Stage",properties.Stage!=null?CfnApiGatewayManagedOverridesStageOverridesPropertyFromCloudFormation(properties.Stage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnApiMapping extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnApiMapping",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::ApiMapping";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnApiMappingPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnApiMapping(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 isCfnApiMapping(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnApiMapping.CFN_RESOURCE_TYPE_NAME}_apiId;_apiMappingKey;_domainName;_stage;cfnPropertyNames={apiId:"ApiId",apiMappingKey:"ApiMappingKey",domainName:"DomainName",stage:"Stage"};constructor(scope,id,props){super(scope,id,{type:CfnApiMapping.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnApiMappingProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnApiMapping),error}cdk().requireProperty(props,"apiId",this),cdk().requireProperty(props,"domainName",this),cdk().requireProperty(props,"stage",this),this._apiId=cdk().getRefProperty(props.apiId?.apiRef,"apiId")??cdk().getRefProperty(props.apiId?.restApiRef,"restApiId")??cdk().ensureStringOrUndefined(props.apiId,"apiId","apigatewayv2.IApiRef | apigateway.IRestApiRef | string"),this._apiMappingKey=props.apiMappingKey,this._domainName=cdk().getRefProperty(props.domainName?.domainNameRef,"domainName")??cdk().getRefProperty(props.domainName?.domainNameRef,"domainName")??cdk().ensureStringOrUndefined(props.domainName,"domainName","apigatewayv2.IDomainNameRef | apigateway.IDomainNameRef | string"),this._stage=props.stage}get apiMappingRef(){return{apiMappingId:this.ref,domainName:this.domainName}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get apiMappingKey(){return this._apiMappingKey}set apiMappingKey(value){cdk().traceProperty(this.node,"ApiMappingKey"),this._apiMappingKey=value}get domainName(){return this._domainName}set domainName(value){cdk().traceProperty(this.node,"DomainName"),this._domainName=value}get stage(){return this._stage}set stage(value){cdk().traceProperty(this.node,"Stage"),this._stage=value}get attrApiMappingId(){return cdk().Token.asString(this.getAtt("ApiMappingId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,apiMappingKey:this._apiMappingKey,domainName:this._domainName,stage:this._stage}}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",CfnApiMapping.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnApiMappingPropsToCloudFormation(props)}}exports.CfnApiMapping=CfnApiMapping;function CfnApiMappingPropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("apiMappingKey",cdk().validateString)(properties.apiMappingKey)),errors.collect(cdk().propertyValidator("domainName",cdk().requiredValidator)(properties.domainName)),errors.collect(cdk().propertyValidator("domainName",cdk().validateString)(properties.domainName)),errors.collect(cdk().propertyValidator("stage",cdk().requiredValidator)(properties.stage)),errors.collect(cdk().propertyValidator("stage",cdk().validateString)(properties.stage)),errors.wrap('supplied properties not correct for "CfnApiMappingProps"')}function convertCfnApiMappingPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnApiMappingPropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),ApiMappingKey:cdk().stringToCloudFormation(properties.apiMappingKey),DomainName:cdk().stringToCloudFormation(properties.domainName),Stage:cdk().stringToCloudFormation(properties.stage)}):properties}function CfnApiMappingPropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("apiMappingKey","ApiMappingKey",properties.ApiMappingKey!=null?cfn_parse().FromCloudFormation.getString(properties.ApiMappingKey):void 0),ret.addPropertyResult("domainName","DomainName",properties.DomainName!=null?cfn_parse().FromCloudFormation.getString(properties.DomainName):void 0),ret.addPropertyResult("stage","Stage",properties.Stage!=null?cfn_parse().FromCloudFormation.getString(properties.Stage):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnAuthorizer extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnAuthorizer",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::Authorizer";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnAuthorizerPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnAuthorizer(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}static isCfnAuthorizer(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnAuthorizer.CFN_RESOURCE_TYPE_NAME}_apiId;_authorizerCredentialsArn;_authorizerPayloadFormatVersion;_authorizerResultTtlInSeconds;_authorizerType;_authorizerUri;_enableSimpleResponses;_identitySource;_identityValidationExpression;_jwtConfiguration;_name;cfnPropertyNames={apiId:"ApiId",authorizerCredentialsArn:"AuthorizerCredentialsArn",authorizerPayloadFormatVersion:"AuthorizerPayloadFormatVersion",authorizerResultTtlInSeconds:"AuthorizerResultTtlInSeconds",authorizerType:"AuthorizerType",authorizerUri:"AuthorizerUri",enableSimpleResponses:"EnableSimpleResponses",identitySource:"IdentitySource",identityValidationExpression:"IdentityValidationExpression",jwtConfiguration:"JwtConfiguration",name:"Name"};constructor(scope,id,props){super(scope,id,{type:CfnAuthorizer.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnAuthorizerProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnAuthorizer),error}cdk().requireProperty(props,"apiId",this),cdk().requireProperty(props,"authorizerType",this),cdk().requireProperty(props,"name",this),this._apiId=cdk().getRefProperty(props.apiId?.apiRef,"apiId")??cdk().ensureStringOrUndefined(props.apiId,"apiId","apigatewayv2.IApiRef | string"),this._authorizerCredentialsArn=props.authorizerCredentialsArn,this._authorizerPayloadFormatVersion=props.authorizerPayloadFormatVersion,this._authorizerResultTtlInSeconds=props.authorizerResultTtlInSeconds,this._authorizerType=props.authorizerType,this._authorizerUri=props.authorizerUri,this._enableSimpleResponses=props.enableSimpleResponses,this._identitySource=props.identitySource,this._identityValidationExpression=props.identityValidationExpression,this._jwtConfiguration=props.jwtConfiguration,this._name=props.name}get authorizerRef(){return{authorizerId:this.ref,apiId:this.apiId}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get authorizerCredentialsArn(){return this._authorizerCredentialsArn}set authorizerCredentialsArn(value){cdk().traceProperty(this.node,"AuthorizerCredentialsArn"),this._authorizerCredentialsArn=value}get authorizerPayloadFormatVersion(){return this._authorizerPayloadFormatVersion}set authorizerPayloadFormatVersion(value){cdk().traceProperty(this.node,"AuthorizerPayloadFormatVersion"),this._authorizerPayloadFormatVersion=value}get authorizerResultTtlInSeconds(){return this._authorizerResultTtlInSeconds}set authorizerResultTtlInSeconds(value){cdk().traceProperty(this.node,"AuthorizerResultTtlInSeconds"),this._authorizerResultTtlInSeconds=value}get authorizerType(){return this._authorizerType}set authorizerType(value){cdk().traceProperty(this.node,"AuthorizerType"),this._authorizerType=value}get authorizerUri(){return this._authorizerUri}set authorizerUri(value){cdk().traceProperty(this.node,"AuthorizerUri"),this._authorizerUri=value}get enableSimpleResponses(){return this._enableSimpleResponses}set enableSimpleResponses(value){cdk().traceProperty(this.node,"EnableSimpleResponses"),this._enableSimpleResponses=value}get identitySource(){return this._identitySource}set identitySource(value){cdk().traceProperty(this.node,"IdentitySource"),this._identitySource=value}get identityValidationExpression(){return this._identityValidationExpression}set identityValidationExpression(value){cdk().traceProperty(this.node,"IdentityValidationExpression"),this._identityValidationExpression=value}get jwtConfiguration(){return this._jwtConfiguration}set jwtConfiguration(value){cdk().traceProperty(this.node,"JwtConfiguration"),this._jwtConfiguration=value}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get attrAuthorizerId(){return cdk().Token.asString(this.getAtt("AuthorizerId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,authorizerCredentialsArn:this._authorizerCredentialsArn,authorizerPayloadFormatVersion:this._authorizerPayloadFormatVersion,authorizerResultTtlInSeconds:this._authorizerResultTtlInSeconds,authorizerType:this._authorizerType,authorizerUri:this._authorizerUri,enableSimpleResponses:this._enableSimpleResponses,identitySource:this._identitySource,identityValidationExpression:this._identityValidationExpression,jwtConfiguration:this._jwtConfiguration,name:this._name}}inspect(inspector){try{jsiiDeprecationWarnings().aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnAuthorizer.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnAuthorizerPropsToCloudFormation(props)}}exports.CfnAuthorizer=CfnAuthorizer;function CfnAuthorizerJWTConfigurationPropertyValidator(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("audience",cdk().listValidator(cdk().validateString))(properties.audience)),errors.collect(cdk().propertyValidator("issuer",cdk().validateString)(properties.issuer)),errors.wrap('supplied properties not correct for "JWTConfigurationProperty"')}function convertCfnAuthorizerJWTConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAuthorizerJWTConfigurationPropertyValidator(properties).assertSuccess(),{Audience:cdk().listMapper(cdk().stringToCloudFormation)(properties.audience),Issuer:cdk().stringToCloudFormation(properties.issuer)}):properties}function CfnAuthorizerJWTConfigurationPropertyFromCloudFormation(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("audience","Audience",properties.Audience!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.Audience):void 0),ret.addPropertyResult("issuer","Issuer",properties.Issuer!=null?cfn_parse().FromCloudFormation.getString(properties.Issuer):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnAuthorizerPropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("authorizerCredentialsArn",cdk().validateString)(properties.authorizerCredentialsArn)),errors.collect(cdk().propertyValidator("authorizerPayloadFormatVersion",cdk().validateString)(properties.authorizerPayloadFormatVersion)),errors.collect(cdk().propertyValidator("authorizerResultTtlInSeconds",cdk().validateNumber)(properties.authorizerResultTtlInSeconds)),errors.collect(cdk().propertyValidator("authorizerType",cdk().requiredValidator)(properties.authorizerType)),errors.collect(cdk().propertyValidator("authorizerType",cdk().validateString)(properties.authorizerType)),errors.collect(cdk().propertyValidator("authorizerUri",cdk().validateString)(properties.authorizerUri)),errors.collect(cdk().propertyValidator("enableSimpleResponses",cdk().validateBoolean)(properties.enableSimpleResponses)),errors.collect(cdk().propertyValidator("identitySource",cdk().listValidator(cdk().validateString))(properties.identitySource)),errors.collect(cdk().propertyValidator("identityValidationExpression",cdk().validateString)(properties.identityValidationExpression)),errors.collect(cdk().propertyValidator("jwtConfiguration",CfnAuthorizerJWTConfigurationPropertyValidator)(properties.jwtConfiguration)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.wrap('supplied properties not correct for "CfnAuthorizerProps"')}function convertCfnAuthorizerPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnAuthorizerPropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),AuthorizerCredentialsArn:cdk().stringToCloudFormation(properties.authorizerCredentialsArn),AuthorizerPayloadFormatVersion:cdk().stringToCloudFormation(properties.authorizerPayloadFormatVersion),AuthorizerResultTtlInSeconds:cdk().numberToCloudFormation(properties.authorizerResultTtlInSeconds),AuthorizerType:cdk().stringToCloudFormation(properties.authorizerType),AuthorizerUri:cdk().stringToCloudFormation(properties.authorizerUri),EnableSimpleResponses:cdk().booleanToCloudFormation(properties.enableSimpleResponses),IdentitySource:cdk().listMapper(cdk().stringToCloudFormation)(properties.identitySource),IdentityValidationExpression:cdk().stringToCloudFormation(properties.identityValidationExpression),JwtConfiguration:convertCfnAuthorizerJWTConfigurationPropertyToCloudFormation(properties.jwtConfiguration),Name:cdk().stringToCloudFormation(properties.name)}):properties}function CfnAuthorizerPropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("authorizerCredentialsArn","AuthorizerCredentialsArn",properties.AuthorizerCredentialsArn!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizerCredentialsArn):void 0),ret.addPropertyResult("authorizerPayloadFormatVersion","AuthorizerPayloadFormatVersion",properties.AuthorizerPayloadFormatVersion!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizerPayloadFormatVersion):void 0),ret.addPropertyResult("authorizerResultTtlInSeconds","AuthorizerResultTtlInSeconds",properties.AuthorizerResultTtlInSeconds!=null?cfn_parse().FromCloudFormation.getNumber(properties.AuthorizerResultTtlInSeconds):void 0),ret.addPropertyResult("authorizerType","AuthorizerType",properties.AuthorizerType!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizerType):void 0),ret.addPropertyResult("authorizerUri","AuthorizerUri",properties.AuthorizerUri!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizerUri):void 0),ret.addPropertyResult("enableSimpleResponses","EnableSimpleResponses",properties.EnableSimpleResponses!=null?cfn_parse().FromCloudFormation.getBoolean(properties.EnableSimpleResponses):void 0),ret.addPropertyResult("identitySource","IdentitySource",properties.IdentitySource!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.IdentitySource):void 0),ret.addPropertyResult("identityValidationExpression","IdentityValidationExpression",properties.IdentityValidationExpression!=null?cfn_parse().FromCloudFormation.getString(properties.IdentityValidationExpression):void 0),ret.addPropertyResult("jwtConfiguration","JwtConfiguration",properties.JwtConfiguration!=null?CfnAuthorizerJWTConfigurationPropertyFromCloudFormation(properties.JwtConfiguration):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse().FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDeployment extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnDeployment",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::Deployment";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDeploymentPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDeployment(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 isCfnDeployment(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDeployment.CFN_RESOURCE_TYPE_NAME}_apiId;_description;_stageName;cfnPropertyNames={apiId:"ApiId",description:"Description",stageName:"StageName"};constructor(scope,id,props){super(scope,id,{type:CfnDeployment.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnDeploymentProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDeployment),error}cdk().requireProperty(props,"apiId",this),this._apiId=cdk().getRefProperty(props.apiId?.apiRef,"apiId")??cdk().ensureStringOrUndefined(props.apiId,"apiId","apigatewayv2.IApiRef | string"),this._description=props.description,this._stageName=props.stageName}get deploymentRef(){return{apiId:this.apiId,deploymentId:this.ref}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get stageName(){return this._stageName}set stageName(value){cdk().traceProperty(this.node,"StageName"),this._stageName=value}get attrDeploymentId(){return cdk().Token.asString(this.getAtt("DeploymentId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,description:this._description,stageName:this._stageName}}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",CfnDeployment.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDeploymentPropsToCloudFormation(props)}}exports.CfnDeployment=CfnDeployment;function CfnDeploymentPropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("stageName",cdk().validateString)(properties.stageName)),errors.wrap('supplied properties not correct for "CfnDeploymentProps"')}function convertCfnDeploymentPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDeploymentPropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),Description:cdk().stringToCloudFormation(properties.description),StageName:cdk().stringToCloudFormation(properties.stageName)}):properties}function CfnDeploymentPropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("stageName","StageName",properties.StageName!=null?cfn_parse().FromCloudFormation.getString(properties.StageName):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnDomainName extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnDomainName",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::DomainName";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnDomainNamePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnDomainName(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 isCfnDomainName(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnDomainName.CFN_RESOURCE_TYPE_NAME}static arnForDomainName(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_apigatewayv2_IDomainNameRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForDomainName),error}return resource.domainNameRef.domainNameArn}_domainName;_domainNameConfigurations;_mutualTlsAuthentication;_routingMode;tags;_tagsRaw;cfnPropertyNames={domainName:"DomainName",domainNameConfigurations:"DomainNameConfigurations",mutualTlsAuthentication:"MutualTlsAuthentication",routingMode:"RoutingMode",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnDomainName.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnDomainNameProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnDomainName),error}cdk().requireProperty(props,"domainName",this),this._domainName=props.domainName,this._domainNameConfigurations=props.domainNameConfigurations,this._mutualTlsAuthentication=props.mutualTlsAuthentication,this._routingMode=props.routingMode,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::ApiGatewayV2::DomainName",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get domainNameRef(){return{domainName:this.ref,domainNameArn:this.attrDomainNameArn}}get domainName(){return this._domainName}set domainName(value){cdk().traceProperty(this.node,"DomainName"),this._domainName=value}get domainNameConfigurations(){return this._domainNameConfigurations}set domainNameConfigurations(value){cdk().traceProperty(this.node,"DomainNameConfigurations"),this._domainNameConfigurations=value}get mutualTlsAuthentication(){return this._mutualTlsAuthentication}set mutualTlsAuthentication(value){cdk().traceProperty(this.node,"MutualTlsAuthentication"),this._mutualTlsAuthentication=value}get routingMode(){return this._routingMode}set routingMode(value){cdk().traceProperty(this.node,"RoutingMode"),this._routingMode=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrDomainNameArn(){return cdk().Token.asString(this.getAtt("DomainNameArn",cdk().ResolutionTypeHint.STRING))}get attrRegionalDomainName(){return cdk().Token.asString(this.getAtt("RegionalDomainName",cdk().ResolutionTypeHint.STRING))}get attrRegionalHostedZoneId(){return cdk().Token.asString(this.getAtt("RegionalHostedZoneId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{domainName:this._domainName,domainNameConfigurations:this._domainNameConfigurations,mutualTlsAuthentication:this._mutualTlsAuthentication,routingMode:this._routingMode,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",CfnDomainName.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnDomainNamePropsToCloudFormation(props)}}exports.CfnDomainName=CfnDomainName;function CfnDomainNameMutualTlsAuthenticationPropertyValidator(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("truststoreUri",cdk().validateString)(properties.truststoreUri)),errors.collect(cdk().propertyValidator("truststoreVersion",cdk().validateString)(properties.truststoreVersion)),errors.wrap('supplied properties not correct for "MutualTlsAuthenticationProperty"')}function convertCfnDomainNameMutualTlsAuthenticationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainNameMutualTlsAuthenticationPropertyValidator(properties).assertSuccess(),{TruststoreUri:cdk().stringToCloudFormation(properties.truststoreUri),TruststoreVersion:cdk().stringToCloudFormation(properties.truststoreVersion)}):properties}function CfnDomainNameMutualTlsAuthenticationPropertyFromCloudFormation(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("truststoreUri","TruststoreUri",properties.TruststoreUri!=null?cfn_parse().FromCloudFormation.getString(properties.TruststoreUri):void 0),ret.addPropertyResult("truststoreVersion","TruststoreVersion",properties.TruststoreVersion!=null?cfn_parse().FromCloudFormation.getString(properties.TruststoreVersion):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainNameDomainNameConfigurationPropertyValidator(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("certificateArn",cdk().validateString)(properties.certificateArn)),errors.collect(cdk().propertyValidator("certificateName",cdk().validateString)(properties.certificateName)),errors.collect(cdk().propertyValidator("endpointType",cdk().validateString)(properties.endpointType)),errors.collect(cdk().propertyValidator("ipAddressType",cdk().validateString)(properties.ipAddressType)),errors.collect(cdk().propertyValidator("ownershipVerificationCertificateArn",cdk().validateString)(properties.ownershipVerificationCertificateArn)),errors.collect(cdk().propertyValidator("securityPolicy",cdk().validateString)(properties.securityPolicy)),errors.wrap('supplied properties not correct for "DomainNameConfigurationProperty"')}function convertCfnDomainNameDomainNameConfigurationPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainNameDomainNameConfigurationPropertyValidator(properties).assertSuccess(),{CertificateArn:cdk().stringToCloudFormation(properties.certificateArn),CertificateName:cdk().stringToCloudFormation(properties.certificateName),EndpointType:cdk().stringToCloudFormation(properties.endpointType),IpAddressType:cdk().stringToCloudFormation(properties.ipAddressType),OwnershipVerificationCertificateArn:cdk().stringToCloudFormation(properties.ownershipVerificationCertificateArn),SecurityPolicy:cdk().stringToCloudFormation(properties.securityPolicy)}):properties}function CfnDomainNameDomainNameConfigurationPropertyFromCloudFormation(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("certificateArn","CertificateArn",properties.CertificateArn!=null?cfn_parse().FromCloudFormation.getString(properties.CertificateArn):void 0),ret.addPropertyResult("certificateName","CertificateName",properties.CertificateName!=null?cfn_parse().FromCloudFormation.getString(properties.CertificateName):void 0),ret.addPropertyResult("endpointType","EndpointType",properties.EndpointType!=null?cfn_parse().FromCloudFormation.getString(properties.EndpointType):void 0),ret.addPropertyResult("ipAddressType","IpAddressType",properties.IpAddressType!=null?cfn_parse().FromCloudFormation.getString(properties.IpAddressType):void 0),ret.addPropertyResult("ownershipVerificationCertificateArn","OwnershipVerificationCertificateArn",properties.OwnershipVerificationCertificateArn!=null?cfn_parse().FromCloudFormation.getString(properties.OwnershipVerificationCertificateArn):void 0),ret.addPropertyResult("securityPolicy","SecurityPolicy",properties.SecurityPolicy!=null?cfn_parse().FromCloudFormation.getString(properties.SecurityPolicy):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnDomainNamePropsValidator(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("domainName",cdk().requiredValidator)(properties.domainName)),errors.collect(cdk().propertyValidator("domainName",cdk().validateString)(properties.domainName)),errors.collect(cdk().propertyValidator("domainNameConfigurations",cdk().listValidator(CfnDomainNameDomainNameConfigurationPropertyValidator))(properties.domainNameConfigurations)),errors.collect(cdk().propertyValidator("mutualTlsAuthentication",CfnDomainNameMutualTlsAuthenticationPropertyValidator)(properties.mutualTlsAuthentication)),errors.collect(cdk().propertyValidator("routingMode",cdk().validateString)(properties.routingMode)),errors.collect(cdk().propertyValidator("tags",cdk().hashValidator(cdk().validateString))(properties.tags)),errors.wrap('supplied properties not correct for "CfnDomainNameProps"')}function convertCfnDomainNamePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnDomainNamePropsValidator(properties).assertSuccess(),{DomainName:cdk().stringToCloudFormation(properties.domainName),DomainNameConfigurations:cdk().listMapper(convertCfnDomainNameDomainNameConfigurationPropertyToCloudFormation)(properties.domainNameConfigurations),MutualTlsAuthentication:convertCfnDomainNameMutualTlsAuthenticationPropertyToCloudFormation(properties.mutualTlsAuthentication),RoutingMode:cdk().stringToCloudFormation(properties.routingMode),Tags:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tags)}):properties}function CfnDomainNamePropsFromCloudFormation(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("domainName","DomainName",properties.DomainName!=null?cfn_parse().FromCloudFormation.getString(properties.DomainName):void 0),ret.addPropertyResult("domainNameConfigurations","DomainNameConfigurations",properties.DomainNameConfigurations!=null?cfn_parse().FromCloudFormation.getArray(CfnDomainNameDomainNameConfigurationPropertyFromCloudFormation)(properties.DomainNameConfigurations):void 0),ret.addPropertyResult("mutualTlsAuthentication","MutualTlsAuthentication",properties.MutualTlsAuthentication!=null?CfnDomainNameMutualTlsAuthenticationPropertyFromCloudFormation(properties.MutualTlsAuthentication):void 0),ret.addPropertyResult("routingMode","RoutingMode",properties.RoutingMode!=null?cfn_parse().FromCloudFormation.getString(properties.RoutingMode):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnIntegration extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnIntegration",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::Integration";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnIntegrationPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnIntegration(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 isCfnIntegration(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnIntegration.CFN_RESOURCE_TYPE_NAME}_apiId;_connectionId;_connectionType;_contentHandlingStrategy;_credentialsArn;_description;_integrationMethod;_integrationSubtype;_integrationType;_integrationUri;_passthroughBehavior;_payloadFormatVersion;_requestParameters;_requestTemplates;_responseParameters;_templateSelectionExpression;_timeoutInMillis;_tlsConfig;cfnPropertyNames={apiId:"ApiId",connectionId:"ConnectionId",connectionType:"ConnectionType",contentHandlingStrategy:"ContentHandlingStrategy",credentialsArn:"CredentialsArn",description:"Description",integrationMethod:"IntegrationMethod",integrationSubtype:"IntegrationSubtype",integrationType:"IntegrationType",integrationUri:"IntegrationUri",passthroughBehavior:"PassthroughBehavior",payloadFormatVersion:"PayloadFormatVersion",requestParameters:"RequestParameters",requestTemplates:"RequestTemplates",responseParameters:"ResponseParameters",templateSelectionExpression:"TemplateSelectionExpression",timeoutInMillis:"TimeoutInMillis",tlsConfig:"TlsConfig"};constructor(scope,id,props){super(scope,id,{type:CfnIntegration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnIntegrationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnIntegration),error}cdk().requireProperty(props,"apiId",this),cdk().requireProperty(props,"integrationType",this),this._apiId=cdk().getRefProperty(props.apiId?.apiRef,"apiId")??cdk().ensureStringOrUndefined(props.apiId,"apiId","apigatewayv2.IApiRef | string"),this._connectionId=props.connectionId,this._connectionType=props.connectionType,this._contentHandlingStrategy=props.contentHandlingStrategy,this._credentialsArn=props.credentialsArn,this._description=props.description,this._integrationMethod=props.integrationMethod,this._integrationSubtype=props.integrationSubtype,this._integrationType=props.integrationType,this._integrationUri=cdk().getRefProperty(props.integrationUri?.functionRef,"functionArn")??cdk().ensureStringOrUndefined(props.integrationUri,"integrationUri","lambda.IFunctionRef | string"),this._passthroughBehavior=props.passthroughBehavior,this._payloadFormatVersion=props.payloadFormatVersion,this._requestParameters=props.requestParameters,this._requestTemplates=props.requestTemplates,this._responseParameters=props.responseParameters,this._templateSelectionExpression=props.templateSelectionExpression,this._timeoutInMillis=props.timeoutInMillis,this._tlsConfig=props.tlsConfig}get integrationRef(){return{apiId:this.apiId,integrationId:this.ref}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get connectionId(){return this._connectionId}set connectionId(value){cdk().traceProperty(this.node,"ConnectionId"),this._connectionId=value}get connectionType(){return this._connectionType}set connectionType(value){cdk().traceProperty(this.node,"ConnectionType"),this._connectionType=value}get contentHandlingStrategy(){return this._contentHandlingStrategy}set contentHandlingStrategy(value){cdk().traceProperty(this.node,"ContentHandlingStrategy"),this._contentHandlingStrategy=value}get credentialsArn(){return this._credentialsArn}set credentialsArn(value){cdk().traceProperty(this.node,"CredentialsArn"),this._credentialsArn=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get integrationMethod(){return this._integrationMethod}set integrationMethod(value){cdk().traceProperty(this.node,"IntegrationMethod"),this._integrationMethod=value}get integrationSubtype(){return this._integrationSubtype}set integrationSubtype(value){cdk().traceProperty(this.node,"IntegrationSubtype"),this._integrationSubtype=value}get integrationType(){return this._integrationType}set integrationType(value){cdk().traceProperty(this.node,"IntegrationType"),this._integrationType=value}get integrationUri(){return this._integrationUri}set integrationUri(value){cdk().traceProperty(this.node,"IntegrationUri"),this._integrationUri=value}get passthroughBehavior(){return this._passthroughBehavior}set passthroughBehavior(value){cdk().traceProperty(this.node,"PassthroughBehavior"),this._passthroughBehavior=value}get payloadFormatVersion(){return this._payloadFormatVersion}set payloadFormatVersion(value){cdk().traceProperty(this.node,"PayloadFormatVersion"),this._payloadFormatVersion=value}get requestParameters(){return this._requestParameters}set requestParameters(value){cdk().traceProperty(this.node,"RequestParameters"),this._requestParameters=value}get requestTemplates(){return this._requestTemplates}set requestTemplates(value){cdk().traceProperty(this.node,"RequestTemplates"),this._requestTemplates=value}get responseParameters(){return this._responseParameters}set responseParameters(value){cdk().traceProperty(this.node,"ResponseParameters"),this._responseParameters=value}get templateSelectionExpression(){return this._templateSelectionExpression}set templateSelectionExpression(value){cdk().traceProperty(this.node,"TemplateSelectionExpression"),this._templateSelectionExpression=value}get timeoutInMillis(){return this._timeoutInMillis}set timeoutInMillis(value){cdk().traceProperty(this.node,"TimeoutInMillis"),this._timeoutInMillis=value}get tlsConfig(){return this._tlsConfig}set tlsConfig(value){cdk().traceProperty(this.node,"TlsConfig"),this._tlsConfig=value}get attrIntegrationId(){return cdk().Token.asString(this.getAtt("IntegrationId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,connectionId:this._connectionId,connectionType:this._connectionType,contentHandlingStrategy:this._contentHandlingStrategy,credentialsArn:this._credentialsArn,description:this._description,integrationMethod:this._integrationMethod,integrationSubtype:this._integrationSubtype,integrationType:this._integrationType,integrationUri:this._integrationUri,passthroughBehavior:this._passthroughBehavior,payloadFormatVersion:this._payloadFormatVersion,requestParameters:this._requestParameters,requestTemplates:this._requestTemplates,responseParameters:this._responseParameters,templateSelectionExpression:this._templateSelectionExpression,timeoutInMillis:this._timeoutInMillis,tlsConfig:this._tlsConfig}}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",CfnIntegration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnIntegrationPropsToCloudFormation(props)}}exports.CfnIntegration=CfnIntegration;function CfnIntegrationResponseParameterPropertyValidator(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("destination",cdk().validateString)(properties.destination)),errors.collect(cdk().propertyValidator("source",cdk().validateString)(properties.source)),errors.wrap('supplied properties not correct for "ResponseParameterProperty"')}function convertCfnIntegrationResponseParameterPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationResponseParameterPropertyValidator(properties).assertSuccess(),{Destination:cdk().stringToCloudFormation(properties.destination),Source:cdk().stringToCloudFormation(properties.source)}):properties}function CfnIntegrationResponseParameterPropertyFromCloudFormation(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("destination","Destination",properties.Destination!=null?cfn_parse().FromCloudFormation.getString(properties.Destination):void 0),ret.addPropertyResult("source","Source",properties.Source!=null?cfn_parse().FromCloudFormation.getString(properties.Source):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnIntegrationResponseParameterMapPropertyValidator(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("responseParameters",cdk().listValidator(CfnIntegrationResponseParameterPropertyValidator))(properties.responseParameters)),errors.wrap('supplied properties not correct for "ResponseParameterMapProperty"')}function convertCfnIntegrationResponseParameterMapPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationResponseParameterMapPropertyValidator(properties).assertSuccess(),{ResponseParameters:cdk().listMapper(convertCfnIntegrationResponseParameterPropertyToCloudFormation)(properties.responseParameters)}):properties}function CfnIntegrationResponseParameterMapPropertyFromCloudFormation(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("responseParameters","ResponseParameters",properties.ResponseParameters!=null?cfn_parse().FromCloudFormation.getArray(CfnIntegrationResponseParameterPropertyFromCloudFormation)(properties.ResponseParameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnIntegrationTlsConfigPropertyValidator(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("serverNameToVerify",cdk().validateString)(properties.serverNameToVerify)),errors.wrap('supplied properties not correct for "TlsConfigProperty"')}function convertCfnIntegrationTlsConfigPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationTlsConfigPropertyValidator(properties).assertSuccess(),{ServerNameToVerify:cdk().stringToCloudFormation(properties.serverNameToVerify)}):properties}function CfnIntegrationTlsConfigPropertyFromCloudFormation(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("serverNameToVerify","ServerNameToVerify",properties.ServerNameToVerify!=null?cfn_parse().FromCloudFormation.getString(properties.ServerNameToVerify):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnIntegrationPropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("connectionId",cdk().validateString)(properties.connectionId)),errors.collect(cdk().propertyValidator("connectionType",cdk().validateString)(properties.connectionType)),errors.collect(cdk().propertyValidator("contentHandlingStrategy",cdk().validateString)(properties.contentHandlingStrategy)),errors.collect(cdk().propertyValidator("credentialsArn",cdk().validateString)(properties.credentialsArn)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("integrationMethod",cdk().validateString)(properties.integrationMethod)),errors.collect(cdk().propertyValidator("integrationSubtype",cdk().validateString)(properties.integrationSubtype)),errors.collect(cdk().propertyValidator("integrationType",cdk().requiredValidator)(properties.integrationType)),errors.collect(cdk().propertyValidator("integrationType",cdk().validateString)(properties.integrationType)),errors.collect(cdk().propertyValidator("integrationUri",cdk().validateString)(properties.integrationUri)),errors.collect(cdk().propertyValidator("passthroughBehavior",cdk().validateString)(properties.passthroughBehavior)),errors.collect(cdk().propertyValidator("payloadFormatVersion",cdk().validateString)(properties.payloadFormatVersion)),errors.collect(cdk().propertyValidator("requestParameters",cdk().validateObject)(properties.requestParameters)),errors.collect(cdk().propertyValidator("requestTemplates",cdk().validateObject)(properties.requestTemplates)),errors.collect(cdk().propertyValidator("responseParameters",cdk().validateObject)(properties.responseParameters)),errors.collect(cdk().propertyValidator("templateSelectionExpression",cdk().validateString)(properties.templateSelectionExpression)),errors.collect(cdk().propertyValidator("timeoutInMillis",cdk().validateNumber)(properties.timeoutInMillis)),errors.collect(cdk().propertyValidator("tlsConfig",CfnIntegrationTlsConfigPropertyValidator)(properties.tlsConfig)),errors.wrap('supplied properties not correct for "CfnIntegrationProps"')}function convertCfnIntegrationPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationPropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),ConnectionId:cdk().stringToCloudFormation(properties.connectionId),ConnectionType:cdk().stringToCloudFormation(properties.connectionType),ContentHandlingStrategy:cdk().stringToCloudFormation(properties.contentHandlingStrategy),CredentialsArn:cdk().stringToCloudFormation(properties.credentialsArn),Description:cdk().stringToCloudFormation(properties.description),IntegrationMethod:cdk().stringToCloudFormation(properties.integrationMethod),IntegrationSubtype:cdk().stringToCloudFormation(properties.integrationSubtype),IntegrationType:cdk().stringToCloudFormation(properties.integrationType),IntegrationUri:cdk().stringToCloudFormation(properties.integrationUri),PassthroughBehavior:cdk().stringToCloudFormation(properties.passthroughBehavior),PayloadFormatVersion:cdk().stringToCloudFormation(properties.payloadFormatVersion),RequestParameters:cdk().objectToCloudFormation(properties.requestParameters),RequestTemplates:cdk().objectToCloudFormation(properties.requestTemplates),ResponseParameters:cdk().objectToCloudFormation(properties.responseParameters),TemplateSelectionExpression:cdk().stringToCloudFormation(properties.templateSelectionExpression),TimeoutInMillis:cdk().numberToCloudFormation(properties.timeoutInMillis),TlsConfig:convertCfnIntegrationTlsConfigPropertyToCloudFormation(properties.tlsConfig)}):properties}function CfnIntegrationPropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("connectionId","ConnectionId",properties.ConnectionId!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectionId):void 0),ret.addPropertyResult("connectionType","ConnectionType",properties.ConnectionType!=null?cfn_parse().FromCloudFormation.getString(properties.ConnectionType):void 0),ret.addPropertyResult("contentHandlingStrategy","ContentHandlingStrategy",properties.ContentHandlingStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.ContentHandlingStrategy):void 0),ret.addPropertyResult("credentialsArn","CredentialsArn",properties.CredentialsArn!=null?cfn_parse().FromCloudFormation.getString(properties.CredentialsArn):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("integrationMethod","IntegrationMethod",properties.IntegrationMethod!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationMethod):void 0),ret.addPropertyResult("integrationSubtype","IntegrationSubtype",properties.IntegrationSubtype!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationSubtype):void 0),ret.addPropertyResult("integrationType","IntegrationType",properties.IntegrationType!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationType):void 0),ret.addPropertyResult("integrationUri","IntegrationUri",properties.IntegrationUri!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationUri):void 0),ret.addPropertyResult("passthroughBehavior","PassthroughBehavior",properties.PassthroughBehavior!=null?cfn_parse().FromCloudFormation.getString(properties.PassthroughBehavior):void 0),ret.addPropertyResult("payloadFormatVersion","PayloadFormatVersion",properties.PayloadFormatVersion!=null?cfn_parse().FromCloudFormation.getString(properties.PayloadFormatVersion):void 0),ret.addPropertyResult("requestParameters","RequestParameters",properties.RequestParameters!=null?cfn_parse().FromCloudFormation.getAny(properties.RequestParameters):void 0),ret.addPropertyResult("requestTemplates","RequestTemplates",properties.RequestTemplates!=null?cfn_parse().FromCloudFormation.getAny(properties.RequestTemplates):void 0),ret.addPropertyResult("responseParameters","ResponseParameters",properties.ResponseParameters!=null?cfn_parse().FromCloudFormation.getAny(properties.ResponseParameters):void 0),ret.addPropertyResult("templateSelectionExpression","TemplateSelectionExpression",properties.TemplateSelectionExpression!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateSelectionExpression):void 0),ret.addPropertyResult("timeoutInMillis","TimeoutInMillis",properties.TimeoutInMillis!=null?cfn_parse().FromCloudFormation.getNumber(properties.TimeoutInMillis):void 0),ret.addPropertyResult("tlsConfig","TlsConfig",properties.TlsConfig!=null?CfnIntegrationTlsConfigPropertyFromCloudFormation(properties.TlsConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnIntegrationResponseParameterListPropertyValidator(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("responseParameters",cdk().listValidator(CfnIntegrationResponseParameterPropertyValidator))(properties.responseParameters)),errors.wrap('supplied properties not correct for "ResponseParameterListProperty"')}function convertCfnIntegrationResponseParameterListPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationResponseParameterListPropertyValidator(properties).assertSuccess(),{ResponseParameters:cdk().listMapper(convertCfnIntegrationResponseParameterPropertyToCloudFormation)(properties.responseParameters)}):properties}function CfnIntegrationResponseParameterListPropertyFromCloudFormation(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("responseParameters","ResponseParameters",properties.ResponseParameters!=null?cfn_parse().FromCloudFormation.getArray(CfnIntegrationResponseParameterPropertyFromCloudFormation)(properties.ResponseParameters):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnIntegrationResponse extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnIntegrationResponse",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::IntegrationResponse";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnIntegrationResponsePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnIntegrationResponse(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 isCfnIntegrationResponse(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnIntegrationResponse.CFN_RESOURCE_TYPE_NAME}_apiId;_contentHandlingStrategy;_integrationId;_integrationResponseKey;_responseParameters;_responseTemplates;_templateSelectionExpression;cfnPropertyNames={apiId:"ApiId",contentHandlingStrategy:"ContentHandlingStrategy",integrationId:"IntegrationId",integrationResponseKey:"IntegrationResponseKey",responseParameters:"ResponseParameters",responseTemplates:"ResponseTemplates",templateSelectionExpression:"TemplateSelectionExpression"};constructor(scope,id,props){super(scope,id,{type:CfnIntegrationResponse.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnIntegrationResponseProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnIntegrationResponse),error}cdk().requireProperty(props,"apiId",this),cdk().requireProperty(props,"integrationId",this),cdk().requireProperty(props,"integrationResponseKey",this),this._apiId=cdk().getRefProperty(props.apiId?.apiRef,"apiId")??cdk().ensureStringOrUndefined(props.apiId,"apiId","apigatewayv2.IApiRef | string"),this._contentHandlingStrategy=props.contentHandlingStrategy,this._integrationId=cdk().getRefProperty(props.integrationId?.integrationRef,"integrationId")??cdk().ensureStringOrUndefined(props.integrationId,"integrationId","apigatewayv2.IIntegrationRef | string"),this._integrationResponseKey=props.integrationResponseKey,this._responseParameters=props.responseParameters,this._responseTemplates=props.responseTemplates,this._templateSelectionExpression=props.templateSelectionExpression}get integrationResponseRef(){return{apiId:this.apiId,integrationId:this.integrationId,integrationResponseId:this.ref}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get contentHandlingStrategy(){return this._contentHandlingStrategy}set contentHandlingStrategy(value){cdk().traceProperty(this.node,"ContentHandlingStrategy"),this._contentHandlingStrategy=value}get integrationId(){return this._integrationId}set integrationId(value){cdk().traceProperty(this.node,"IntegrationId"),this._integrationId=value}get integrationResponseKey(){return this._integrationResponseKey}set integrationResponseKey(value){cdk().traceProperty(this.node,"IntegrationResponseKey"),this._integrationResponseKey=value}get responseParameters(){return this._responseParameters}set responseParameters(value){cdk().traceProperty(this.node,"ResponseParameters"),this._responseParameters=value}get responseTemplates(){return this._responseTemplates}set responseTemplates(value){cdk().traceProperty(this.node,"ResponseTemplates"),this._responseTemplates=value}get templateSelectionExpression(){return this._templateSelectionExpression}set templateSelectionExpression(value){cdk().traceProperty(this.node,"TemplateSelectionExpression"),this._templateSelectionExpression=value}get attrIntegrationResponseId(){return cdk().Token.asString(this.getAtt("IntegrationResponseId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,contentHandlingStrategy:this._contentHandlingStrategy,integrationId:this._integrationId,integrationResponseKey:this._integrationResponseKey,responseParameters:this._responseParameters,responseTemplates:this._responseTemplates,templateSelectionExpression:this._templateSelectionExpression}}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",CfnIntegrationResponse.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnIntegrationResponsePropsToCloudFormation(props)}}exports.CfnIntegrationResponse=CfnIntegrationResponse;function CfnIntegrationResponsePropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("contentHandlingStrategy",cdk().validateString)(properties.contentHandlingStrategy)),errors.collect(cdk().propertyValidator("integrationId",cdk().requiredValidator)(properties.integrationId)),errors.collect(cdk().propertyValidator("integrationId",cdk().validateString)(properties.integrationId)),errors.collect(cdk().propertyValidator("integrationResponseKey",cdk().requiredValidator)(properties.integrationResponseKey)),errors.collect(cdk().propertyValidator("integrationResponseKey",cdk().validateString)(properties.integrationResponseKey)),errors.collect(cdk().propertyValidator("responseParameters",cdk().validateObject)(properties.responseParameters)),errors.collect(cdk().propertyValidator("responseTemplates",cdk().validateObject)(properties.responseTemplates)),errors.collect(cdk().propertyValidator("templateSelectionExpression",cdk().validateString)(properties.templateSelectionExpression)),errors.wrap('supplied properties not correct for "CfnIntegrationResponseProps"')}function convertCfnIntegrationResponsePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnIntegrationResponsePropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),ContentHandlingStrategy:cdk().stringToCloudFormation(properties.contentHandlingStrategy),IntegrationId:cdk().stringToCloudFormation(properties.integrationId),IntegrationResponseKey:cdk().stringToCloudFormation(properties.integrationResponseKey),ResponseParameters:cdk().objectToCloudFormation(properties.responseParameters),ResponseTemplates:cdk().objectToCloudFormation(properties.responseTemplates),TemplateSelectionExpression:cdk().stringToCloudFormation(properties.templateSelectionExpression)}):properties}function CfnIntegrationResponsePropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("contentHandlingStrategy","ContentHandlingStrategy",properties.ContentHandlingStrategy!=null?cfn_parse().FromCloudFormation.getString(properties.ContentHandlingStrategy):void 0),ret.addPropertyResult("integrationId","IntegrationId",properties.IntegrationId!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationId):void 0),ret.addPropertyResult("integrationResponseKey","IntegrationResponseKey",properties.IntegrationResponseKey!=null?cfn_parse().FromCloudFormation.getString(properties.IntegrationResponseKey):void 0),ret.addPropertyResult("responseParameters","ResponseParameters",properties.ResponseParameters!=null?cfn_parse().FromCloudFormation.getAny(properties.ResponseParameters):void 0),ret.addPropertyResult("responseTemplates","ResponseTemplates",properties.ResponseTemplates!=null?cfn_parse().FromCloudFormation.getAny(properties.ResponseTemplates):void 0),ret.addPropertyResult("templateSelectionExpression","TemplateSelectionExpression",properties.TemplateSelectionExpression!=null?cfn_parse().FromCloudFormation.getString(properties.TemplateSelectionExpression):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnModel extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnModel",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::Model";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnModelPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnModel(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 isCfnModel(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnModel.CFN_RESOURCE_TYPE_NAME}_apiId;_contentType;_description;_name;_schema;cfnPropertyNames={apiId:"ApiId",contentType:"ContentType",description:"Description",name:"Name",schema:"Schema"};constructor(scope,id,props){super(scope,id,{type:CfnModel.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnModelProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnModel),error}cdk().requireProperty(props,"apiId",this),cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"schema",this),this._apiId=cdk().getRefProperty(props.apiId?.apiRef,"apiId")??cdk().ensureStringOrUndefined(props.apiId,"apiId","apigatewayv2.IApiRef | string"),this._contentType=props.contentType,this._description=props.description,this._name=props.name,this._schema=props.schema}get modelRef(){return{apiId:this.apiId,modelId:this.ref}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get contentType(){return this._contentType}set contentType(value){cdk().traceProperty(this.node,"ContentType"),this._contentType=value}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 schema(){return this._schema}set schema(value){cdk().traceProperty(this.node,"Schema"),this._schema=value}get attrModelId(){return cdk().Token.asString(this.getAtt("ModelId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,contentType:this._contentType,description:this._description,name:this._name,schema:this._schema}}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",CfnModel.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnModelPropsToCloudFormation(props)}}exports.CfnModel=CfnModel;function CfnModelPropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("contentType",cdk().validateString)(properties.contentType)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("name",cdk().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("schema",cdk().requiredValidator)(properties.schema)),errors.collect(cdk().propertyValidator("schema",cdk().validateObject)(properties.schema)),errors.wrap('supplied properties not correct for "CfnModelProps"')}function convertCfnModelPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnModelPropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),ContentType:cdk().stringToCloudFormation(properties.contentType),Description:cdk().stringToCloudFormation(properties.description),Name:cdk().stringToCloudFormation(properties.name),Schema:cdk().objectToCloudFormation(properties.schema)}):properties}function CfnModelPropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("contentType","ContentType",properties.ContentType!=null?cfn_parse().FromCloudFormation.getString(properties.ContentType):void 0),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("schema","Schema",properties.Schema!=null?cfn_parse().FromCloudFormation.getAny(properties.Schema):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnRoute extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnRoute",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::Route";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnRoutePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnRoute(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 isCfnRoute(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnRoute.CFN_RESOURCE_TYPE_NAME}_apiId;_apiKeyRequired;_authorizationScopes;_authorizationType;_authorizerId;_modelSelectionExpression;_operationName;_requestModels;_requestParameters;_routeKey;_routeResponseSelectionExpression;_target;cfnPropertyNames={apiId:"ApiId",apiKeyRequired:"ApiKeyRequired",authorizationScopes:"AuthorizationScopes",authorizationType:"AuthorizationType",authorizerId:"AuthorizerId",modelSelectionExpression:"ModelSelectionExpression",operationName:"OperationName",requestModels:"RequestModels",requestParameters:"RequestParameters",routeKey:"RouteKey",routeResponseSelectionExpression:"RouteResponseSelectionExpression",target:"Target"};constructor(scope,id,props){super(scope,id,{type:CfnRoute.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnRouteProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnRoute),error}cdk().requireProperty(props,"apiId",this),cdk().requireProperty(props,"routeKey",this),this._apiId=cdk().getRefProperty(props.apiId?.apiRef,"apiId")??cdk().ensureStringOrUndefined(props.apiId,"apiId","apigatewayv2.IApiRef | string"),this._apiKeyRequired=props.apiKeyRequired,this._authorizationScopes=props.authorizationScopes,this._authorizationType=props.authorizationType,this._authorizerId=cdk().getRefProperty(props.authorizerId?.authorizerRef,"authorizerId")??cdk().ensureStringOrUndefined(props.authorizerId,"authorizerId","apigatewayv2.IAuthorizerRef | string"),this._modelSelectionExpression=props.modelSelectionExpression,this._operationName=props.operationName,this._requestModels=props.requestModels,this._requestParameters=props.requestParameters,this._routeKey=props.routeKey,this._routeResponseSelectionExpression=props.routeResponseSelectionExpression,this._target=cdk().getRefProperty(props.target?.integrationRef,"integrationId")??cdk().ensureStringOrUndefined(props.target,"target","apigatewayv2.IIntegrationRef | string")}get routeRef(){return{apiId:this.apiId,routeId:this.ref}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get apiKeyRequired(){return this._apiKeyRequired}set apiKeyRequired(value){cdk().traceProperty(this.node,"ApiKeyRequired"),this._apiKeyRequired=value}get authorizationScopes(){return this._authorizationScopes}set authorizationScopes(value){cdk().traceProperty(this.node,"AuthorizationScopes"),this._authorizationScopes=value}get authorizationType(){return this._authorizationType}set authorizationType(value){cdk().traceProperty(this.node,"AuthorizationType"),this._authorizationType=value}get authorizerId(){return this._authorizerId}set authorizerId(value){cdk().traceProperty(this.node,"AuthorizerId"),this._authorizerId=value}get modelSelectionExpression(){return this._modelSelectionExpression}set modelSelectionExpression(value){cdk().traceProperty(this.node,"ModelSelectionExpression"),this._modelSelectionExpression=value}get operationName(){return this._operationName}set operationName(value){cdk().traceProperty(this.node,"OperationName"),this._operationName=value}get requestModels(){return this._requestModels}set requestModels(value){cdk().traceProperty(this.node,"RequestModels"),this._requestModels=value}get requestParameters(){return this._requestParameters}set requestParameters(value){cdk().traceProperty(this.node,"RequestParameters"),this._requestParameters=value}get routeKey(){return this._routeKey}set routeKey(value){cdk().traceProperty(this.node,"RouteKey"),this._routeKey=value}get routeResponseSelectionExpression(){return this._routeResponseSelectionExpression}set routeResponseSelectionExpression(value){cdk().traceProperty(this.node,"RouteResponseSelectionExpression"),this._routeResponseSelectionExpression=value}get target(){return this._target}set target(value){cdk().traceProperty(this.node,"Target"),this._target=value}get attrRouteId(){return cdk().Token.asString(this.getAtt("RouteId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,apiKeyRequired:this._apiKeyRequired,authorizationScopes:this._authorizationScopes,authorizationType:this._authorizationType,authorizerId:this._authorizerId,modelSelectionExpression:this._modelSelectionExpression,operationName:this._operationName,requestModels:this._requestModels,requestParameters:this._requestParameters,routeKey:this._routeKey,routeResponseSelectionExpression:this._routeResponseSelectionExpression,target:this._target}}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",CfnRoute.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnRoutePropsToCloudFormation(props)}}exports.CfnRoute=CfnRoute;function CfnRoutePropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("apiKeyRequired",cdk().validateBoolean)(properties.apiKeyRequired)),errors.collect(cdk().propertyValidator("authorizationScopes",cdk().listValidator(cdk().validateString))(properties.authorizationScopes)),errors.collect(cdk().propertyValidator("authorizationType",cdk().validateString)(properties.authorizationType)),errors.collect(cdk().propertyValidator("authorizerId",cdk().validateString)(properties.authorizerId)),errors.collect(cdk().propertyValidator("modelSelectionExpression",cdk().validateString)(properties.modelSelectionExpression)),errors.collect(cdk().propertyValidator("operationName",cdk().validateString)(properties.operationName)),errors.collect(cdk().propertyValidator("requestModels",cdk().validateObject)(properties.requestModels)),errors.collect(cdk().propertyValidator("requestParameters",cdk().validateObject)(properties.requestParameters)),errors.collect(cdk().propertyValidator("routeKey",cdk().requiredValidator)(properties.routeKey)),errors.collect(cdk().propertyValidator("routeKey",cdk().validateString)(properties.routeKey)),errors.collect(cdk().propertyValidator("routeResponseSelectionExpression",cdk().validateString)(properties.routeResponseSelectionExpression)),errors.collect(cdk().propertyValidator("target",cdk().validateString)(properties.target)),errors.wrap('supplied properties not correct for "CfnRouteProps"')}function convertCfnRoutePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRoutePropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),ApiKeyRequired:cdk().booleanToCloudFormation(properties.apiKeyRequired),AuthorizationScopes:cdk().listMapper(cdk().stringToCloudFormation)(properties.authorizationScopes),AuthorizationType:cdk().stringToCloudFormation(properties.authorizationType),AuthorizerId:cdk().stringToCloudFormation(properties.authorizerId),ModelSelectionExpression:cdk().stringToCloudFormation(properties.modelSelectionExpression),OperationName:cdk().stringToCloudFormation(properties.operationName),RequestModels:cdk().objectToCloudFormation(properties.requestModels),RequestParameters:cdk().objectToCloudFormation(properties.requestParameters),RouteKey:cdk().stringToCloudFormation(properties.routeKey),RouteResponseSelectionExpression:cdk().stringToCloudFormation(properties.routeResponseSelectionExpression),Target:cdk().stringToCloudFormation(properties.target)}):properties}function CfnRoutePropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("apiKeyRequired","ApiKeyRequired",properties.ApiKeyRequired!=null?cfn_parse().FromCloudFormation.getBoolean(properties.ApiKeyRequired):void 0),ret.addPropertyResult("authorizationScopes","AuthorizationScopes",properties.AuthorizationScopes!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AuthorizationScopes):void 0),ret.addPropertyResult("authorizationType","AuthorizationType",properties.AuthorizationType!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizationType):void 0),ret.addPropertyResult("authorizerId","AuthorizerId",properties.AuthorizerId!=null?cfn_parse().FromCloudFormation.getString(properties.AuthorizerId):void 0),ret.addPropertyResult("modelSelectionExpression","ModelSelectionExpression",properties.ModelSelectionExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ModelSelectionExpression):void 0),ret.addPropertyResult("operationName","OperationName",properties.OperationName!=null?cfn_parse().FromCloudFormation.getString(properties.OperationName):void 0),ret.addPropertyResult("requestModels","RequestModels",properties.RequestModels!=null?cfn_parse().FromCloudFormation.getAny(properties.RequestModels):void 0),ret.addPropertyResult("requestParameters","RequestParameters",properties.RequestParameters!=null?cfn_parse().FromCloudFormation.getAny(properties.RequestParameters):void 0),ret.addPropertyResult("routeKey","RouteKey",properties.RouteKey!=null?cfn_parse().FromCloudFormation.getString(properties.RouteKey):void 0),ret.addPropertyResult("routeResponseSelectionExpression","RouteResponseSelectionExpression",properties.RouteResponseSelectionExpression!=null?cfn_parse().FromCloudFormation.getString(properties.RouteResponseSelectionExpression):void 0),ret.addPropertyResult("target","Target",properties.Target!=null?cfn_parse().FromCloudFormation.getString(properties.Target):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRouteParameterConstraintsPropertyValidator(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("required",cdk().requiredValidator)(properties.required)),errors.collect(cdk().propertyValidator("required",cdk().validateBoolean)(properties.required)),errors.wrap('supplied properties not correct for "ParameterConstraintsProperty"')}function convertCfnRouteParameterConstraintsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRouteParameterConstraintsPropertyValidator(properties).assertSuccess(),{Required:cdk().booleanToCloudFormation(properties.required)}):properties}function CfnRouteParameterConstraintsPropertyFromCloudFormation(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("required","Required",properties.Required!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Required):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnRouteResponse extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnRouteResponse",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::RouteResponse";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnRouteResponsePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnRouteResponse(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 isCfnRouteResponse(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnRouteResponse.CFN_RESOURCE_TYPE_NAME}_apiId;_modelSelectionExpression;_responseModels;_responseParameters;_routeId;_routeResponseKey;cfnPropertyNames={apiId:"ApiId",modelSelectionExpression:"ModelSelectionExpression",responseModels:"ResponseModels",responseParameters:"ResponseParameters",routeId:"RouteId",routeResponseKey:"RouteResponseKey"};constructor(scope,id,props){super(scope,id,{type:CfnRouteResponse.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnRouteResponseProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnRouteResponse),error}cdk().requireProperty(props,"apiId",this),cdk().requireProperty(props,"routeId",this),cdk().requireProperty(props,"routeResponseKey",this),this._apiId=cdk().getRefProperty(props.apiId?.apiRef,"apiId")??cdk().ensureStringOrUndefined(props.apiId,"apiId","apigatewayv2.IApiRef | string"),this._modelSelectionExpression=props.modelSelectionExpression,this._responseModels=props.responseModels,this._responseParameters=props.responseParameters,this._routeId=cdk().getRefProperty(props.routeId?.routeRef,"routeId")??cdk().ensureStringOrUndefined(props.routeId,"routeId","apigatewayv2.IRouteRef | string"),this._routeResponseKey=props.routeResponseKey}get routeResponseRef(){return{apiId:this.apiId,routeId:this.routeId,routeResponseId:this.ref}}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get modelSelectionExpression(){return this._modelSelectionExpression}set modelSelectionExpression(value){cdk().traceProperty(this.node,"ModelSelectionExpression"),this._modelSelectionExpression=value}get responseModels(){return this._responseModels}set responseModels(value){cdk().traceProperty(this.node,"ResponseModels"),this._responseModels=value}get responseParameters(){return this._responseParameters}set responseParameters(value){cdk().traceProperty(this.node,"ResponseParameters"),this._responseParameters=value}get routeId(){return this._routeId}set routeId(value){cdk().traceProperty(this.node,"RouteId"),this._routeId=value}get routeResponseKey(){return this._routeResponseKey}set routeResponseKey(value){cdk().traceProperty(this.node,"RouteResponseKey"),this._routeResponseKey=value}get attrRouteResponseId(){return cdk().Token.asString(this.getAtt("RouteResponseId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{apiId:this._apiId,modelSelectionExpression:this._modelSelectionExpression,responseModels:this._responseModels,responseParameters:this._responseParameters,routeId:this._routeId,routeResponseKey:this._routeResponseKey}}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",CfnRouteResponse.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnRouteResponsePropsToCloudFormation(props)}}exports.CfnRouteResponse=CfnRouteResponse;function CfnRouteResponseParameterConstraintsPropertyValidator(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("required",cdk().requiredValidator)(properties.required)),errors.collect(cdk().propertyValidator("required",cdk().validateBoolean)(properties.required)),errors.wrap('supplied properties not correct for "ParameterConstraintsProperty"')}function convertCfnRouteResponseParameterConstraintsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRouteResponseParameterConstraintsPropertyValidator(properties).assertSuccess(),{Required:cdk().booleanToCloudFormation(properties.required)}):properties}function CfnRouteResponseParameterConstraintsPropertyFromCloudFormation(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("required","Required",properties.Required!=null?cfn_parse().FromCloudFormation.getBoolean(properties.Required):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRouteResponsePropsValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("modelSelectionExpression",cdk().validateString)(properties.modelSelectionExpression)),errors.collect(cdk().propertyValidator("responseModels",cdk().validateObject)(properties.responseModels)),errors.collect(cdk().propertyValidator("responseParameters",cdk().hashValidator(CfnRouteResponseParameterConstraintsPropertyValidator))(properties.responseParameters)),errors.collect(cdk().propertyValidator("routeId",cdk().requiredValidator)(properties.routeId)),errors.collect(cdk().propertyValidator("routeId",cdk().validateString)(properties.routeId)),errors.collect(cdk().propertyValidator("routeResponseKey",cdk().requiredValidator)(properties.routeResponseKey)),errors.collect(cdk().propertyValidator("routeResponseKey",cdk().validateString)(properties.routeResponseKey)),errors.wrap('supplied properties not correct for "CfnRouteResponseProps"')}function convertCfnRouteResponsePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRouteResponsePropsValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),ModelSelectionExpression:cdk().stringToCloudFormation(properties.modelSelectionExpression),ResponseModels:cdk().objectToCloudFormation(properties.responseModels),ResponseParameters:cdk().hashMapper(convertCfnRouteResponseParameterConstraintsPropertyToCloudFormation)(properties.responseParameters),RouteId:cdk().stringToCloudFormation(properties.routeId),RouteResponseKey:cdk().stringToCloudFormation(properties.routeResponseKey)}):properties}function CfnRouteResponsePropsFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("modelSelectionExpression","ModelSelectionExpression",properties.ModelSelectionExpression!=null?cfn_parse().FromCloudFormation.getString(properties.ModelSelectionExpression):void 0),ret.addPropertyResult("responseModels","ResponseModels",properties.ResponseModels!=null?cfn_parse().FromCloudFormation.getAny(properties.ResponseModels):void 0),ret.addPropertyResult("responseParameters","ResponseParameters",properties.ResponseParameters!=null?cfn_parse().FromCloudFormation.getMap(CfnRouteResponseParameterConstraintsPropertyFromCloudFormation)(properties.ResponseParameters):void 0),ret.addPropertyResult("routeId","RouteId",properties.RouteId!=null?cfn_parse().FromCloudFormation.getString(properties.RouteId):void 0),ret.addPropertyResult("routeResponseKey","RouteResponseKey",properties.RouteResponseKey!=null?cfn_parse().FromCloudFormation.getString(properties.RouteResponseKey):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnStage extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnStage",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::Stage";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnStagePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnStage(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 isCfnStage(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnStage.CFN_RESOURCE_TYPE_NAME}_accessLogSettings;_accessPolicyId;_apiId;_autoDeploy;_clientCertificateId;_defaultRouteSettings;_deploymentId;_description;_routeSettings;_stageName;_stageVariables;tags;_tagsRaw;cfnPropertyNames={accessLogSettings:"AccessLogSettings",accessPolicyId:"AccessPolicyId",apiId:"ApiId",autoDeploy:"AutoDeploy",clientCertificateId:"ClientCertificateId",defaultRouteSettings:"DefaultRouteSettings",deploymentId:"DeploymentId",description:"Description",routeSettings:"RouteSettings",stageName:"StageName",stageVariables:"StageVariables",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnStage.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnStageProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnStage),error}cdk().requireProperty(props,"apiId",this),cdk().requireProperty(props,"stageName",this),this._accessLogSettings=props.accessLogSettings,this._accessPolicyId=props.accessPolicyId,this._apiId=props.apiId,this._autoDeploy=props.autoDeploy,this._clientCertificateId=props.clientCertificateId,this._defaultRouteSettings=props.defaultRouteSettings,this._deploymentId=props.deploymentId,this._description=props.description,this._routeSettings=props.routeSettings,this._stageName=props.stageName,this._stageVariables=props.stageVariables,this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::ApiGatewayV2::Stage",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get stageRef(){return{stageName:this.ref}}get accessLogSettings(){return this._accessLogSettings}set accessLogSettings(value){cdk().traceProperty(this.node,"AccessLogSettings"),this._accessLogSettings=value}get accessPolicyId(){return this._accessPolicyId}set accessPolicyId(value){cdk().traceProperty(this.node,"AccessPolicyId"),this._accessPolicyId=value}get apiId(){return this._apiId}set apiId(value){cdk().traceProperty(this.node,"ApiId"),this._apiId=value}get autoDeploy(){return this._autoDeploy}set autoDeploy(value){cdk().traceProperty(this.node,"AutoDeploy"),this._autoDeploy=value}get clientCertificateId(){return this._clientCertificateId}set clientCertificateId(value){cdk().traceProperty(this.node,"ClientCertificateId"),this._clientCertificateId=value}get defaultRouteSettings(){return this._defaultRouteSettings}set defaultRouteSettings(value){cdk().traceProperty(this.node,"DefaultRouteSettings"),this._defaultRouteSettings=value}get deploymentId(){return this._deploymentId}set deploymentId(value){cdk().traceProperty(this.node,"DeploymentId"),this._deploymentId=value}get description(){return this._description}set description(value){cdk().traceProperty(this.node,"Description"),this._description=value}get routeSettings(){return this._routeSettings}set routeSettings(value){cdk().traceProperty(this.node,"RouteSettings"),this._routeSettings=value}get stageName(){return this._stageName}set stageName(value){cdk().traceProperty(this.node,"StageName"),this._stageName=value}get stageVariables(){return this._stageVariables}set stageVariables(value){cdk().traceProperty(this.node,"StageVariables"),this._stageVariables=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrId(){return cdk().Token.asString(this.getAtt("Id",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{accessLogSettings:this._accessLogSettings,accessPolicyId:this._accessPolicyId,apiId:this._apiId,autoDeploy:this._autoDeploy,clientCertificateId:this._clientCertificateId,defaultRouteSettings:this._defaultRouteSettings,deploymentId:this._deploymentId,description:this._description,routeSettings:this._routeSettings,stageName:this._stageName,stageVariables:this._stageVariables,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",CfnStage.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnStagePropsToCloudFormation(props)}}exports.CfnStage=CfnStage;function CfnStageAccessLogSettingsPropertyValidator(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("destinationArn",cdk().validateString)(properties.destinationArn)),errors.collect(cdk().propertyValidator("format",cdk().validateString)(properties.format)),errors.wrap('supplied properties not correct for "AccessLogSettingsProperty"')}function convertCfnStageAccessLogSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnStageAccessLogSettingsPropertyValidator(properties).assertSuccess(),{DestinationArn:cdk().stringToCloudFormation(properties.destinationArn),Format:cdk().stringToCloudFormation(properties.format)}):properties}function CfnStageAccessLogSettingsPropertyFromCloudFormation(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("destinationArn","DestinationArn",properties.DestinationArn!=null?cfn_parse().FromCloudFormation.getString(properties.DestinationArn):void 0),ret.addPropertyResult("format","Format",properties.Format!=null?cfn_parse().FromCloudFormation.getString(properties.Format):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnStageRouteSettingsPropertyValidator(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("dataTraceEnabled",cdk().validateBoolean)(properties.dataTraceEnabled)),errors.collect(cdk().propertyValidator("detailedMetricsEnabled",cdk().validateBoolean)(properties.detailedMetricsEnabled)),errors.collect(cdk().propertyValidator("loggingLevel",cdk().validateString)(properties.loggingLevel)),errors.collect(cdk().propertyValidator("throttlingBurstLimit",cdk().validateNumber)(properties.throttlingBurstLimit)),errors.collect(cdk().propertyValidator("throttlingRateLimit",cdk().validateNumber)(properties.throttlingRateLimit)),errors.wrap('supplied properties not correct for "RouteSettingsProperty"')}function convertCfnStageRouteSettingsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnStageRouteSettingsPropertyValidator(properties).assertSuccess(),{DataTraceEnabled:cdk().booleanToCloudFormation(properties.dataTraceEnabled),DetailedMetricsEnabled:cdk().booleanToCloudFormation(properties.detailedMetricsEnabled),LoggingLevel:cdk().stringToCloudFormation(properties.loggingLevel),ThrottlingBurstLimit:cdk().numberToCloudFormation(properties.throttlingBurstLimit),ThrottlingRateLimit:cdk().numberToCloudFormation(properties.throttlingRateLimit)}):properties}function CfnStageRouteSettingsPropertyFromCloudFormation(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("dataTraceEnabled","DataTraceEnabled",properties.DataTraceEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DataTraceEnabled):void 0),ret.addPropertyResult("detailedMetricsEnabled","DetailedMetricsEnabled",properties.DetailedMetricsEnabled!=null?cfn_parse().FromCloudFormation.getBoolean(properties.DetailedMetricsEnabled):void 0),ret.addPropertyResult("loggingLevel","LoggingLevel",properties.LoggingLevel!=null?cfn_parse().FromCloudFormation.getString(properties.LoggingLevel):void 0),ret.addPropertyResult("throttlingBurstLimit","ThrottlingBurstLimit",properties.ThrottlingBurstLimit!=null?cfn_parse().FromCloudFormation.getNumber(properties.ThrottlingBurstLimit):void 0),ret.addPropertyResult("throttlingRateLimit","ThrottlingRateLimit",properties.ThrottlingRateLimit!=null?cfn_parse().FromCloudFormation.getNumber(properties.ThrottlingRateLimit):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnStagePropsValidator(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("accessLogSettings",CfnStageAccessLogSettingsPropertyValidator)(properties.accessLogSettings)),errors.collect(cdk().propertyValidator("accessPolicyId",cdk().validateString)(properties.accessPolicyId)),errors.collect(cdk().propertyValidator("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("autoDeploy",cdk().validateBoolean)(properties.autoDeploy)),errors.collect(cdk().propertyValidator("clientCertificateId",cdk().validateString)(properties.clientCertificateId)),errors.collect(cdk().propertyValidator("defaultRouteSettings",CfnStageRouteSettingsPropertyValidator)(properties.defaultRouteSettings)),errors.collect(cdk().propertyValidator("deploymentId",cdk().validateString)(properties.deploymentId)),errors.collect(cdk().propertyValidator("description",cdk().validateString)(properties.description)),errors.collect(cdk().propertyValidator("routeSettings",cdk().validateObject)(properties.routeSettings)),errors.collect(cdk().propertyValidator("stageName",cdk().requiredValidator)(properties.stageName)),errors.collect(cdk().propertyValidator("stageName",cdk().validateString)(properties.stageName)),errors.collect(cdk().propertyValidator("stageVariables",cdk().validateObject)(properties.stageVariables)),errors.collect(cdk().propertyValidator("tags",cdk().validateObject)(properties.tags)),errors.wrap('supplied properties not correct for "CfnStageProps"')}function convertCfnStagePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnStagePropsValidator(properties).assertSuccess(),{AccessLogSettings:convertCfnStageAccessLogSettingsPropertyToCloudFormation(properties.accessLogSettings),AccessPolicyId:cdk().stringToCloudFormation(properties.accessPolicyId),ApiId:cdk().stringToCloudFormation(properties.apiId),AutoDeploy:cdk().booleanToCloudFormation(properties.autoDeploy),ClientCertificateId:cdk().stringToCloudFormation(properties.clientCertificateId),DefaultRouteSettings:convertCfnStageRouteSettingsPropertyToCloudFormation(properties.defaultRouteSettings),DeploymentId:cdk().stringToCloudFormation(properties.deploymentId),Description:cdk().stringToCloudFormation(properties.description),RouteSettings:cdk().objectToCloudFormation(properties.routeSettings),StageName:cdk().stringToCloudFormation(properties.stageName),StageVariables:cdk().objectToCloudFormation(properties.stageVariables),Tags:cdk().objectToCloudFormation(properties.tags)}):properties}function CfnStagePropsFromCloudFormation(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("accessLogSettings","AccessLogSettings",properties.AccessLogSettings!=null?CfnStageAccessLogSettingsPropertyFromCloudFormation(properties.AccessLogSettings):void 0),ret.addPropertyResult("accessPolicyId","AccessPolicyId",properties.AccessPolicyId!=null?cfn_parse().FromCloudFormation.getString(properties.AccessPolicyId):void 0),ret.addPropertyResult("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("autoDeploy","AutoDeploy",properties.AutoDeploy!=null?cfn_parse().FromCloudFormation.getBoolean(properties.AutoDeploy):void 0),ret.addPropertyResult("clientCertificateId","ClientCertificateId",properties.ClientCertificateId!=null?cfn_parse().FromCloudFormation.getString(properties.ClientCertificateId):void 0),ret.addPropertyResult("defaultRouteSettings","DefaultRouteSettings",properties.DefaultRouteSettings!=null?CfnStageRouteSettingsPropertyFromCloudFormation(properties.DefaultRouteSettings):void 0),ret.addPropertyResult("deploymentId","DeploymentId",properties.DeploymentId!=null?cfn_parse().FromCloudFormation.getString(properties.DeploymentId):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse().FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("routeSettings","RouteSettings",properties.RouteSettings!=null?cfn_parse().FromCloudFormation.getAny(properties.RouteSettings):void 0),ret.addPropertyResult("stageName","StageName",properties.StageName!=null?cfn_parse().FromCloudFormation.getString(properties.StageName):void 0),ret.addPropertyResult("stageVariables","StageVariables",properties.StageVariables!=null?cfn_parse().FromCloudFormation.getAny(properties.StageVariables):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getAny(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnVpcLink extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnVpcLink",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::VpcLink";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnVpcLinkPropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnVpcLink(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 isCfnVpcLink(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnVpcLink.CFN_RESOURCE_TYPE_NAME}static fromVpcLinkId(scope,id,vpcLinkId){class Import extends cdk().Resource{vpcLinkRef;constructor(scope2,id2,vpcLinkId2){super(scope2,id2),this.vpcLinkRef={vpcLinkId:vpcLinkId2}}}return new Import(scope,id,vpcLinkId)}static arnForVpcLink(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_apigatewayv2_IVpcLinkRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForVpcLink),error}return new(cfn_parse()).TemplateString("arn:${Partition}:apigateway:${Region}::/vpclinks/${VpcLinkId}").interpolate({Partition:cdk().Stack.of(resource).partition,Region:resource.env.region,Account:resource.env.account,VpcLinkId:resource.vpcLinkRef.vpcLinkId})}_name;_securityGroupIds;_subnetIds;tags;_tagsRaw;cfnPropertyNames={name:"Name",securityGroupIds:"SecurityGroupIds",subnetIds:"SubnetIds",tags:"Tags"};constructor(scope,id,props){super(scope,id,{type:CfnVpcLink.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnVpcLinkProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnVpcLink),error}cdk().requireProperty(props,"name",this),cdk().requireProperty(props,"subnetIds",this),this._name=props.name,this._securityGroupIds=cdk().mapArrayInPlace(props.securityGroupIds,item=>cdk().getRefProperty(item?.securityGroupRef,"securityGroupId")??cdk().ensureStringOrUndefined(item,"securityGroupIds","ec2.ISecurityGroupRef | string")),this._subnetIds=cdk().mapArrayInPlace(props.subnetIds,item=>cdk().getRefProperty(item?.subnetRef,"subnetId")??cdk().ensureStringOrUndefined(item,"subnetIds","ec2.ISubnetRef | string")),this.tags=new(cdk()).TagManager(cdk().TagType.MAP,"AWS::ApiGatewayV2::VpcLink",props.tags,{tagPropertyName:"tags"}),this._tagsRaw=props.tags}get vpcLinkRef(){return{vpcLinkId:this.ref}}get name(){return this._name}set name(value){cdk().traceProperty(this.node,"Name"),this._name=value}get securityGroupIds(){return this._securityGroupIds}set securityGroupIds(value){cdk().traceProperty(this.node,"SecurityGroupIds"),this._securityGroupIds=value}get subnetIds(){return this._subnetIds}set subnetIds(value){cdk().traceProperty(this.node,"SubnetIds"),this._subnetIds=value}get tagsRaw(){return this._tagsRaw}set tagsRaw(value){cdk().traceProperty(this.node,"Tags"),this._tagsRaw=value}get attrVpcLinkId(){return cdk().Token.asString(this.getAtt("VpcLinkId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{name:this._name,securityGroupIds:this._securityGroupIds,subnetIds:this._subnetIds,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",CfnVpcLink.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnVpcLinkPropsToCloudFormation(props)}}exports.CfnVpcLink=CfnVpcLink;function CfnVpcLinkPropsValidator(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().requiredValidator)(properties.name)),errors.collect(cdk().propertyValidator("name",cdk().validateString)(properties.name)),errors.collect(cdk().propertyValidator("securityGroupIds",cdk().listValidator(cdk().validateString))(properties.securityGroupIds)),errors.collect(cdk().propertyValidator("subnetIds",cdk().requiredValidator)(properties.subnetIds)),errors.collect(cdk().propertyValidator("subnetIds",cdk().listValidator(cdk().validateString))(properties.subnetIds)),errors.collect(cdk().propertyValidator("tags",cdk().hashValidator(cdk().validateString))(properties.tags)),errors.wrap('supplied properties not correct for "CfnVpcLinkProps"')}function convertCfnVpcLinkPropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnVpcLinkPropsValidator(properties).assertSuccess(),{Name:cdk().stringToCloudFormation(properties.name),SecurityGroupIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.securityGroupIds),SubnetIds:cdk().listMapper(cdk().stringToCloudFormation)(properties.subnetIds),Tags:cdk().hashMapper(cdk().stringToCloudFormation)(properties.tags)}):properties}function CfnVpcLinkPropsFromCloudFormation(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("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnetIds","SubnetIds",properties.SubnetIds!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.SubnetIds):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse().FromCloudFormation.getMap(cfn_parse().FromCloudFormation.getString)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnRoutingRule extends cdk().CfnResource{static[JSII_RTTI_SYMBOL_1]={fqn:"aws-cdk-lib.aws_apigatewayv2.CfnRoutingRule",version:"2.252.0"};static CFN_RESOURCE_TYPE_NAME="AWS::ApiGatewayV2::RoutingRule";static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnRoutingRulePropsFromCloudFormation(resourceProperties);if(cdk().isResolvableObject(propsResult.value))throw new(cdk_errors()).ValidationError(cfn_parse().lit`UnexpectedIResolvable`,"Unexpected IResolvable",scope);const ret=new CfnRoutingRule(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 isCfnRoutingRule(x){return cdk().CfnResource.isCfnResource(x)&&x.cfnResourceType===CfnRoutingRule.CFN_RESOURCE_TYPE_NAME}static arnForRoutingRule(resource){try{jsiiDeprecationWarnings().aws_cdk_lib_interfaces_aws_apigatewayv2_IRoutingRuleRef(resource)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.arnForRoutingRule),error}return resource.routingRuleRef.routingRuleArn}_actions;_conditions;_domainNameArn;_priority;cfnPropertyNames={actions:"Actions",conditions:"Conditions",domainNameArn:"DomainNameArn",priority:"Priority"};constructor(scope,id,props){super(scope,id,{type:CfnRoutingRule.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings().aws_cdk_lib_aws_apigatewayv2_CfnRoutingRuleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnRoutingRule),error}cdk().requireProperty(props,"actions",this),cdk().requireProperty(props,"conditions",this),cdk().requireProperty(props,"domainNameArn",this),cdk().requireProperty(props,"priority",this),this._actions=props.actions,this._conditions=props.conditions,this._domainNameArn=props.domainNameArn,this._priority=props.priority}get routingRuleRef(){return{routingRuleArn:this.ref}}get actions(){return this._actions}set actions(value){cdk().traceProperty(this.node,"Actions"),this._actions=value}get conditions(){return this._conditions}set conditions(value){cdk().traceProperty(this.node,"Conditions"),this._conditions=value}get domainNameArn(){return this._domainNameArn}set domainNameArn(value){cdk().traceProperty(this.node,"DomainNameArn"),this._domainNameArn=value}get priority(){return this._priority}set priority(value){cdk().traceProperty(this.node,"Priority"),this._priority=value}get attrRoutingRuleArn(){return cdk().Token.asString(this.getAtt("RoutingRuleArn",cdk().ResolutionTypeHint.STRING))}get attrRoutingRuleId(){return cdk().Token.asString(this.getAtt("RoutingRuleId",cdk().ResolutionTypeHint.STRING))}get cfnProperties(){return{actions:this._actions,conditions:this._conditions,domainNameArn:this._domainNameArn,priority:this._priority}}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",CfnRoutingRule.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:logicalId",this._synthesizeLogicalId()),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}renderProperties(props){return convertCfnRoutingRulePropsToCloudFormation(props)}}exports.CfnRoutingRule=CfnRoutingRule;function CfnRoutingRuleMatchHeaderValuePropertyValidator(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("header",cdk().requiredValidator)(properties.header)),errors.collect(cdk().propertyValidator("header",cdk().validateString)(properties.header)),errors.collect(cdk().propertyValidator("valueGlob",cdk().requiredValidator)(properties.valueGlob)),errors.collect(cdk().propertyValidator("valueGlob",cdk().validateString)(properties.valueGlob)),errors.wrap('supplied properties not correct for "MatchHeaderValueProperty"')}function convertCfnRoutingRuleMatchHeaderValuePropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRoutingRuleMatchHeaderValuePropertyValidator(properties).assertSuccess(),{Header:cdk().stringToCloudFormation(properties.header),ValueGlob:cdk().stringToCloudFormation(properties.valueGlob)}):properties}function CfnRoutingRuleMatchHeaderValuePropertyFromCloudFormation(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("header","Header",properties.Header!=null?cfn_parse().FromCloudFormation.getString(properties.Header):void 0),ret.addPropertyResult("valueGlob","ValueGlob",properties.ValueGlob!=null?cfn_parse().FromCloudFormation.getString(properties.ValueGlob):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRoutingRuleMatchHeadersPropertyValidator(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("anyOf",cdk().requiredValidator)(properties.anyOf)),errors.collect(cdk().propertyValidator("anyOf",cdk().listValidator(CfnRoutingRuleMatchHeaderValuePropertyValidator))(properties.anyOf)),errors.wrap('supplied properties not correct for "MatchHeadersProperty"')}function convertCfnRoutingRuleMatchHeadersPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRoutingRuleMatchHeadersPropertyValidator(properties).assertSuccess(),{AnyOf:cdk().listMapper(convertCfnRoutingRuleMatchHeaderValuePropertyToCloudFormation)(properties.anyOf)}):properties}function CfnRoutingRuleMatchHeadersPropertyFromCloudFormation(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("anyOf","AnyOf",properties.AnyOf!=null?cfn_parse().FromCloudFormation.getArray(CfnRoutingRuleMatchHeaderValuePropertyFromCloudFormation)(properties.AnyOf):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRoutingRuleMatchBasePathsPropertyValidator(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("anyOf",cdk().requiredValidator)(properties.anyOf)),errors.collect(cdk().propertyValidator("anyOf",cdk().listValidator(cdk().validateString))(properties.anyOf)),errors.wrap('supplied properties not correct for "MatchBasePathsProperty"')}function convertCfnRoutingRuleMatchBasePathsPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRoutingRuleMatchBasePathsPropertyValidator(properties).assertSuccess(),{AnyOf:cdk().listMapper(cdk().stringToCloudFormation)(properties.anyOf)}):properties}function CfnRoutingRuleMatchBasePathsPropertyFromCloudFormation(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("anyOf","AnyOf",properties.AnyOf!=null?cfn_parse().FromCloudFormation.getArray(cfn_parse().FromCloudFormation.getString)(properties.AnyOf):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRoutingRuleConditionPropertyValidator(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("matchBasePaths",CfnRoutingRuleMatchBasePathsPropertyValidator)(properties.matchBasePaths)),errors.collect(cdk().propertyValidator("matchHeaders",CfnRoutingRuleMatchHeadersPropertyValidator)(properties.matchHeaders)),errors.wrap('supplied properties not correct for "ConditionProperty"')}function convertCfnRoutingRuleConditionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRoutingRuleConditionPropertyValidator(properties).assertSuccess(),{MatchBasePaths:convertCfnRoutingRuleMatchBasePathsPropertyToCloudFormation(properties.matchBasePaths),MatchHeaders:convertCfnRoutingRuleMatchHeadersPropertyToCloudFormation(properties.matchHeaders)}):properties}function CfnRoutingRuleConditionPropertyFromCloudFormation(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("matchBasePaths","MatchBasePaths",properties.MatchBasePaths!=null?CfnRoutingRuleMatchBasePathsPropertyFromCloudFormation(properties.MatchBasePaths):void 0),ret.addPropertyResult("matchHeaders","MatchHeaders",properties.MatchHeaders!=null?CfnRoutingRuleMatchHeadersPropertyFromCloudFormation(properties.MatchHeaders):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRoutingRuleActionInvokeApiPropertyValidator(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("apiId",cdk().requiredValidator)(properties.apiId)),errors.collect(cdk().propertyValidator("apiId",cdk().validateString)(properties.apiId)),errors.collect(cdk().propertyValidator("stage",cdk().requiredValidator)(properties.stage)),errors.collect(cdk().propertyValidator("stage",cdk().validateString)(properties.stage)),errors.collect(cdk().propertyValidator("stripBasePath",cdk().validateBoolean)(properties.stripBasePath)),errors.wrap('supplied properties not correct for "ActionInvokeApiProperty"')}function convertCfnRoutingRuleActionInvokeApiPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRoutingRuleActionInvokeApiPropertyValidator(properties).assertSuccess(),{ApiId:cdk().stringToCloudFormation(properties.apiId),Stage:cdk().stringToCloudFormation(properties.stage),StripBasePath:cdk().booleanToCloudFormation(properties.stripBasePath)}):properties}function CfnRoutingRuleActionInvokeApiPropertyFromCloudFormation(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("apiId","ApiId",properties.ApiId!=null?cfn_parse().FromCloudFormation.getString(properties.ApiId):void 0),ret.addPropertyResult("stage","Stage",properties.Stage!=null?cfn_parse().FromCloudFormation.getString(properties.Stage):void 0),ret.addPropertyResult("stripBasePath","StripBasePath",properties.StripBasePath!=null?cfn_parse().FromCloudFormation.getBoolean(properties.StripBasePath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRoutingRuleActionPropertyValidator(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("invokeApi",cdk().requiredValidator)(properties.invokeApi)),errors.collect(cdk().propertyValidator("invokeApi",CfnRoutingRuleActionInvokeApiPropertyValidator)(properties.invokeApi)),errors.wrap('supplied properties not correct for "ActionProperty"')}function convertCfnRoutingRuleActionPropertyToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRoutingRuleActionPropertyValidator(properties).assertSuccess(),{InvokeApi:convertCfnRoutingRuleActionInvokeApiPropertyToCloudFormation(properties.invokeApi)}):properties}function CfnRoutingRuleActionPropertyFromCloudFormation(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("invokeApi","InvokeApi",properties.InvokeApi!=null?CfnRoutingRuleActionInvokeApiPropertyFromCloudFormation(properties.InvokeApi):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRoutingRulePropsValidator(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("actions",cdk().requiredValidator)(properties.actions)),errors.collect(cdk().propertyValidator("actions",cdk().listValidator(CfnRoutingRuleActionPropertyValidator))(properties.actions)),errors.collect(cdk().propertyValidator("conditions",cdk().requiredValidator)(properties.conditions)),errors.collect(cdk().propertyValidator("conditions",cdk().listValidator(CfnRoutingRuleConditionPropertyValidator))(properties.conditions)),errors.collect(cdk().propertyValidator("domainNameArn",cdk().requiredValidator)(properties.domainNameArn)),errors.collect(cdk().propertyValidator("domainNameArn",cdk().validateString)(properties.domainNameArn)),errors.collect(cdk().propertyValidator("priority",cdk().requiredValidator)(properties.priority)),errors.collect(cdk().propertyValidator("priority",cdk().validateNumber)(properties.priority)),errors.wrap('supplied properties not correct for "CfnRoutingRuleProps"')}function convertCfnRoutingRulePropsToCloudFormation(properties){return cdk().canInspect(properties)?(CfnRoutingRulePropsValidator(properties).assertSuccess(),{Actions:cdk().listMapper(convertCfnRoutingRuleActionPropertyToCloudFormation)(properties.actions),Conditions:cdk().listMapper(convertCfnRoutingRuleConditionPropertyToCloudFormation)(properties.conditions),DomainNameArn:cdk().stringToCloudFormation(properties.domainNameArn),Priority:cdk().numberToCloudFormation(properties.priority)}):properties}function CfnRoutingRulePropsFromCloudFormation(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("actions","Actions",properties.Actions!=null?cfn_parse().FromCloudFormation.getArray(CfnRoutingRuleActionPropertyFromCloudFormation)(properties.Actions):void 0),ret.addPropertyResult("conditions","Conditions",properties.Conditions!=null?cfn_parse().FromCloudFormation.getArray(CfnRoutingRuleConditionPropertyFromCloudFormation)(properties.Conditions):void 0),ret.addPropertyResult("domainNameArn","DomainNameArn",properties.DomainNameArn!=null?cfn_parse().FromCloudFormation.getString(properties.DomainNameArn):void 0),ret.addPropertyResult("priority","Priority",properties.Priority!=null?cfn_parse().FromCloudFormation.getNumber(properties.Priority):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}