"use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.SubnetGroup=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),rds_generated_1=require("./rds.generated"),ec2=require("../../aws-ec2"),core_1=require("../../core");class SubnetGroup extends core_1.Resource{static fromSubnetGroupName(scope,id,subnetGroupName){return new class extends core_1.Resource{constructor(){super(...arguments),this.subnetGroupName=subnetGroupName}}(scope,id)}constructor(scope,id,props){super(scope,id);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_SubnetGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SubnetGroup),error}const{subnetIds}=props.vpc.selectSubnets(props.vpcSubnets??{subnetType:ec2.SubnetType.PRIVATE_WITH_EGRESS}),subnetGroup=new rds_generated_1.CfnDBSubnetGroup(this,"Default",{dbSubnetGroupDescription:props.description,dbSubnetGroupName:core_1.Token.isUnresolved(props.subnetGroupName)?props.subnetGroupName:props.subnetGroupName?.toLowerCase(),subnetIds});props.removalPolicy&&subnetGroup.applyRemovalPolicy(props.removalPolicy),this.subnetGroupName=subnetGroup.ref}}exports.SubnetGroup=SubnetGroup,_a=JSII_RTTI_SYMBOL_1,SubnetGroup[_a]={fqn:"aws-cdk-lib.aws_rds.SubnetGroup",version:"2.96.1"};
