"use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.ClientVpnRoute=exports.ClientVpnRouteTarget=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),ec2_generated_1=require("./ec2.generated");class ClientVpnRouteTarget{static subnet(subnet){return jsiiDeprecationWarnings.aws_cdk_lib_aws_ec2_ISubnet(subnet),{subnetId:subnet.subnetId}}static local(){return{subnetId:"local"}}}exports.ClientVpnRouteTarget=ClientVpnRouteTarget,_a=JSII_RTTI_SYMBOL_1,ClientVpnRouteTarget[_a]={fqn:"aws-cdk-lib.aws_ec2.ClientVpnRouteTarget",version:"2.13.0"};class ClientVpnRoute extends core_1.Resource{constructor(scope,id,props){if(jsiiDeprecationWarnings.aws_cdk_lib_aws_ec2_ClientVpnRouteProps(props),!props.clientVpnEndoint&&!props.clientVpnEndpoint)throw new Error("ClientVpnRoute: either clientVpnEndpoint or clientVpnEndoint (deprecated) must be specified");if(props.clientVpnEndoint&&props.clientVpnEndpoint)throw new Error("ClientVpnRoute: either clientVpnEndpoint or clientVpnEndoint (deprecated) must be specified, but not both");const clientVpnEndpoint=props.clientVpnEndoint||props.clientVpnEndpoint;super(scope,id);new ec2_generated_1.CfnClientVpnRoute(this,"Resource",{clientVpnEndpointId:clientVpnEndpoint.endpointId,description:props.description,destinationCidrBlock:props.cidr,targetVpcSubnetId:props.target.subnetId}).node.addDependency(clientVpnEndpoint.targetNetworksAssociated)}}exports.ClientVpnRoute=ClientVpnRoute,_b=JSII_RTTI_SYMBOL_1,ClientVpnRoute[_b]={fqn:"aws-cdk-lib.aws_ec2.ClientVpnRoute",version:"2.13.0"};
//# sourceMappingURL=client-vpn-route.js.map
