@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
965 lines • 635 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AppmeshGatewayRoute = exports.AppmeshGatewayRouteSpecOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteMatchOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteMatchQueryParameterList = exports.AppmeshGatewayRouteSpecHttpRouteMatchQueryParameterOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteMatchQueryParameterMatchOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteMatchPathOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteMatchHostnameOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteMatchHeaderList = exports.AppmeshGatewayRouteSpecHttpRouteMatchHeaderOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteMatchHeaderMatchOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteMatchHeaderMatchRangeOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteActionOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteActionTargetOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteActionTargetVirtualServiceOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteActionRewriteOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteActionRewritePrefixOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteActionRewritePathOutputReference = exports.AppmeshGatewayRouteSpecHttpRouteActionRewriteHostnameOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteMatchOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteMatchQueryParameterList = exports.AppmeshGatewayRouteSpecHttp2RouteMatchQueryParameterOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteMatchQueryParameterMatchOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteMatchPathOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteMatchHostnameOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteMatchHeaderList = exports.AppmeshGatewayRouteSpecHttp2RouteMatchHeaderOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchRangeOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteActionOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteActionTargetOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteActionRewriteOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteActionRewritePrefixOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteActionRewritePathOutputReference = exports.AppmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameOutputReference = exports.AppmeshGatewayRouteSpecGrpcRouteOutputReference = exports.AppmeshGatewayRouteSpecGrpcRouteMatchOutputReference = exports.AppmeshGatewayRouteSpecGrpcRouteActionOutputReference = exports.AppmeshGatewayRouteSpecGrpcRouteActionTargetOutputReference = exports.AppmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceOutputReference = void 0;
exports.appmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceToTerraform = appmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceToTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceToHclTerraform = appmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceToHclTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteActionTargetToTerraform = appmeshGatewayRouteSpecGrpcRouteActionTargetToTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteActionTargetToHclTerraform = appmeshGatewayRouteSpecGrpcRouteActionTargetToHclTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteActionToTerraform = appmeshGatewayRouteSpecGrpcRouteActionToTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteActionToHclTerraform = appmeshGatewayRouteSpecGrpcRouteActionToHclTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteMatchToTerraform = appmeshGatewayRouteSpecGrpcRouteMatchToTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteMatchToHclTerraform = appmeshGatewayRouteSpecGrpcRouteMatchToHclTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteToTerraform = appmeshGatewayRouteSpecGrpcRouteToTerraform;
exports.appmeshGatewayRouteSpecGrpcRouteToHclTerraform = appmeshGatewayRouteSpecGrpcRouteToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameToTerraform = appmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameToHclTerraform = appmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionRewritePathToTerraform = appmeshGatewayRouteSpecHttp2RouteActionRewritePathToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionRewritePathToHclTerraform = appmeshGatewayRouteSpecHttp2RouteActionRewritePathToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionRewritePrefixToTerraform = appmeshGatewayRouteSpecHttp2RouteActionRewritePrefixToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionRewritePrefixToHclTerraform = appmeshGatewayRouteSpecHttp2RouteActionRewritePrefixToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionRewriteToTerraform = appmeshGatewayRouteSpecHttp2RouteActionRewriteToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionRewriteToHclTerraform = appmeshGatewayRouteSpecHttp2RouteActionRewriteToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceToTerraform = appmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceToHclTerraform = appmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionTargetToTerraform = appmeshGatewayRouteSpecHttp2RouteActionTargetToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionTargetToHclTerraform = appmeshGatewayRouteSpecHttp2RouteActionTargetToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionToTerraform = appmeshGatewayRouteSpecHttp2RouteActionToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteActionToHclTerraform = appmeshGatewayRouteSpecHttp2RouteActionToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchRangeToTerraform = appmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchRangeToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchRangeToHclTerraform = appmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchRangeToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchToTerraform = appmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchToHclTerraform = appmeshGatewayRouteSpecHttp2RouteMatchHeaderMatchToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchHeaderToTerraform = appmeshGatewayRouteSpecHttp2RouteMatchHeaderToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchHeaderToHclTerraform = appmeshGatewayRouteSpecHttp2RouteMatchHeaderToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchHostnameToTerraform = appmeshGatewayRouteSpecHttp2RouteMatchHostnameToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchHostnameToHclTerraform = appmeshGatewayRouteSpecHttp2RouteMatchHostnameToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchPathToTerraform = appmeshGatewayRouteSpecHttp2RouteMatchPathToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchPathToHclTerraform = appmeshGatewayRouteSpecHttp2RouteMatchPathToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchQueryParameterMatchToTerraform = appmeshGatewayRouteSpecHttp2RouteMatchQueryParameterMatchToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchQueryParameterMatchToHclTerraform = appmeshGatewayRouteSpecHttp2RouteMatchQueryParameterMatchToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchQueryParameterToTerraform = appmeshGatewayRouteSpecHttp2RouteMatchQueryParameterToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchQueryParameterToHclTerraform = appmeshGatewayRouteSpecHttp2RouteMatchQueryParameterToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchToTerraform = appmeshGatewayRouteSpecHttp2RouteMatchToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteMatchToHclTerraform = appmeshGatewayRouteSpecHttp2RouteMatchToHclTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteToTerraform = appmeshGatewayRouteSpecHttp2RouteToTerraform;
exports.appmeshGatewayRouteSpecHttp2RouteToHclTerraform = appmeshGatewayRouteSpecHttp2RouteToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionRewriteHostnameToTerraform = appmeshGatewayRouteSpecHttpRouteActionRewriteHostnameToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionRewriteHostnameToHclTerraform = appmeshGatewayRouteSpecHttpRouteActionRewriteHostnameToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionRewritePathToTerraform = appmeshGatewayRouteSpecHttpRouteActionRewritePathToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionRewritePathToHclTerraform = appmeshGatewayRouteSpecHttpRouteActionRewritePathToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionRewritePrefixToTerraform = appmeshGatewayRouteSpecHttpRouteActionRewritePrefixToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionRewritePrefixToHclTerraform = appmeshGatewayRouteSpecHttpRouteActionRewritePrefixToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionRewriteToTerraform = appmeshGatewayRouteSpecHttpRouteActionRewriteToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionRewriteToHclTerraform = appmeshGatewayRouteSpecHttpRouteActionRewriteToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionTargetVirtualServiceToTerraform = appmeshGatewayRouteSpecHttpRouteActionTargetVirtualServiceToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionTargetVirtualServiceToHclTerraform = appmeshGatewayRouteSpecHttpRouteActionTargetVirtualServiceToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionTargetToTerraform = appmeshGatewayRouteSpecHttpRouteActionTargetToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionTargetToHclTerraform = appmeshGatewayRouteSpecHttpRouteActionTargetToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionToTerraform = appmeshGatewayRouteSpecHttpRouteActionToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteActionToHclTerraform = appmeshGatewayRouteSpecHttpRouteActionToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchHeaderMatchRangeToTerraform = appmeshGatewayRouteSpecHttpRouteMatchHeaderMatchRangeToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchHeaderMatchRangeToHclTerraform = appmeshGatewayRouteSpecHttpRouteMatchHeaderMatchRangeToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchHeaderMatchToTerraform = appmeshGatewayRouteSpecHttpRouteMatchHeaderMatchToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchHeaderMatchToHclTerraform = appmeshGatewayRouteSpecHttpRouteMatchHeaderMatchToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchHeaderToTerraform = appmeshGatewayRouteSpecHttpRouteMatchHeaderToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchHeaderToHclTerraform = appmeshGatewayRouteSpecHttpRouteMatchHeaderToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchHostnameToTerraform = appmeshGatewayRouteSpecHttpRouteMatchHostnameToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchHostnameToHclTerraform = appmeshGatewayRouteSpecHttpRouteMatchHostnameToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchPathToTerraform = appmeshGatewayRouteSpecHttpRouteMatchPathToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchPathToHclTerraform = appmeshGatewayRouteSpecHttpRouteMatchPathToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchQueryParameterMatchToTerraform = appmeshGatewayRouteSpecHttpRouteMatchQueryParameterMatchToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchQueryParameterMatchToHclTerraform = appmeshGatewayRouteSpecHttpRouteMatchQueryParameterMatchToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchQueryParameterToTerraform = appmeshGatewayRouteSpecHttpRouteMatchQueryParameterToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchQueryParameterToHclTerraform = appmeshGatewayRouteSpecHttpRouteMatchQueryParameterToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchToTerraform = appmeshGatewayRouteSpecHttpRouteMatchToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteMatchToHclTerraform = appmeshGatewayRouteSpecHttpRouteMatchToHclTerraform;
exports.appmeshGatewayRouteSpecHttpRouteToTerraform = appmeshGatewayRouteSpecHttpRouteToTerraform;
exports.appmeshGatewayRouteSpecHttpRouteToHclTerraform = appmeshGatewayRouteSpecHttpRouteToHclTerraform;
exports.appmeshGatewayRouteSpecToTerraform = appmeshGatewayRouteSpecToTerraform;
exports.appmeshGatewayRouteSpecToHclTerraform = appmeshGatewayRouteSpecToHclTerraform;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function appmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
virtual_service_name: cdktf.stringToTerraform(struct.virtualServiceName),
};
}
function appmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
virtual_service_name: {
value: cdktf.stringToHclTerraform(struct.virtualServiceName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._virtualServiceName !== undefined) {
hasAnyValues = true;
internalValueResult.virtualServiceName = this._virtualServiceName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._virtualServiceName = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._virtualServiceName = value.virtualServiceName;
}
}
get virtualServiceName() {
return this.getStringAttribute('virtual_service_name');
}
set virtualServiceName(value) {
this._virtualServiceName = value;
}
// Temporarily expose input value. Use with caution.
get virtualServiceNameInput() {
return this._virtualServiceName;
}
}
exports.AppmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceOutputReference = AppmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceOutputReference;
_a = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceOutputReference[_a] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecGrpcRouteActionTargetToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
port: cdktf.numberToTerraform(struct.port),
virtual_service: appmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceToTerraform(struct.virtualService),
};
}
function appmeshGatewayRouteSpecGrpcRouteActionTargetToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
port: {
value: cdktf.numberToHclTerraform(struct.port),
isBlock: false,
type: "simple",
storageClassType: "number",
},
virtual_service: {
value: appmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceToHclTerraform(struct.virtualService),
isBlock: true,
type: "list",
storageClassType: "AppmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecGrpcRouteActionTargetOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// virtual_service - computed: false, optional: false, required: true
this._virtualService = new AppmeshGatewayRouteSpecGrpcRouteActionTargetVirtualServiceOutputReference(this, "virtual_service");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._port !== undefined) {
hasAnyValues = true;
internalValueResult.port = this._port;
}
if (this._virtualService?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.virtualService = this._virtualService?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._port = undefined;
this._virtualService.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._port = value.port;
this._virtualService.internalValue = value.virtualService;
}
}
get port() {
return this.getNumberAttribute('port');
}
set port(value) {
this._port = value;
}
resetPort() {
this._port = undefined;
}
// Temporarily expose input value. Use with caution.
get portInput() {
return this._port;
}
get virtualService() {
return this._virtualService;
}
putVirtualService(value) {
this._virtualService.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get virtualServiceInput() {
return this._virtualService.internalValue;
}
}
exports.AppmeshGatewayRouteSpecGrpcRouteActionTargetOutputReference = AppmeshGatewayRouteSpecGrpcRouteActionTargetOutputReference;
_b = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecGrpcRouteActionTargetOutputReference[_b] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecGrpcRouteActionTargetOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecGrpcRouteActionToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
target: appmeshGatewayRouteSpecGrpcRouteActionTargetToTerraform(struct.target),
};
}
function appmeshGatewayRouteSpecGrpcRouteActionToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
target: {
value: appmeshGatewayRouteSpecGrpcRouteActionTargetToHclTerraform(struct.target),
isBlock: true,
type: "list",
storageClassType: "AppmeshGatewayRouteSpecGrpcRouteActionTargetList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecGrpcRouteActionOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// target - computed: false, optional: false, required: true
this._target = new AppmeshGatewayRouteSpecGrpcRouteActionTargetOutputReference(this, "target");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._target?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.target = this._target?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._target.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._target.internalValue = value.target;
}
}
get target() {
return this._target;
}
putTarget(value) {
this._target.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get targetInput() {
return this._target.internalValue;
}
}
exports.AppmeshGatewayRouteSpecGrpcRouteActionOutputReference = AppmeshGatewayRouteSpecGrpcRouteActionOutputReference;
_c = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecGrpcRouteActionOutputReference[_c] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecGrpcRouteActionOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecGrpcRouteMatchToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
port: cdktf.numberToTerraform(struct.port),
service_name: cdktf.stringToTerraform(struct.serviceName),
};
}
function appmeshGatewayRouteSpecGrpcRouteMatchToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
port: {
value: cdktf.numberToHclTerraform(struct.port),
isBlock: false,
type: "simple",
storageClassType: "number",
},
service_name: {
value: cdktf.stringToHclTerraform(struct.serviceName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecGrpcRouteMatchOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._port !== undefined) {
hasAnyValues = true;
internalValueResult.port = this._port;
}
if (this._serviceName !== undefined) {
hasAnyValues = true;
internalValueResult.serviceName = this._serviceName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._port = undefined;
this._serviceName = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._port = value.port;
this._serviceName = value.serviceName;
}
}
get port() {
return this.getNumberAttribute('port');
}
set port(value) {
this._port = value;
}
resetPort() {
this._port = undefined;
}
// Temporarily expose input value. Use with caution.
get portInput() {
return this._port;
}
get serviceName() {
return this.getStringAttribute('service_name');
}
set serviceName(value) {
this._serviceName = value;
}
// Temporarily expose input value. Use with caution.
get serviceNameInput() {
return this._serviceName;
}
}
exports.AppmeshGatewayRouteSpecGrpcRouteMatchOutputReference = AppmeshGatewayRouteSpecGrpcRouteMatchOutputReference;
_d = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecGrpcRouteMatchOutputReference[_d] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecGrpcRouteMatchOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecGrpcRouteToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
action: appmeshGatewayRouteSpecGrpcRouteActionToTerraform(struct.action),
match: appmeshGatewayRouteSpecGrpcRouteMatchToTerraform(struct.match),
};
}
function appmeshGatewayRouteSpecGrpcRouteToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
action: {
value: appmeshGatewayRouteSpecGrpcRouteActionToHclTerraform(struct.action),
isBlock: true,
type: "list",
storageClassType: "AppmeshGatewayRouteSpecGrpcRouteActionList",
},
match: {
value: appmeshGatewayRouteSpecGrpcRouteMatchToHclTerraform(struct.match),
isBlock: true,
type: "list",
storageClassType: "AppmeshGatewayRouteSpecGrpcRouteMatchList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecGrpcRouteOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// action - computed: false, optional: false, required: true
this._action = new AppmeshGatewayRouteSpecGrpcRouteActionOutputReference(this, "action");
// match - computed: false, optional: false, required: true
this._match = new AppmeshGatewayRouteSpecGrpcRouteMatchOutputReference(this, "match");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._action?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.action = this._action?.internalValue;
}
if (this._match?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.match = this._match?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._action.internalValue = undefined;
this._match.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._action.internalValue = value.action;
this._match.internalValue = value.match;
}
}
get action() {
return this._action;
}
putAction(value) {
this._action.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get actionInput() {
return this._action.internalValue;
}
get match() {
return this._match;
}
putMatch(value) {
this._match.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get matchInput() {
return this._match.internalValue;
}
}
exports.AppmeshGatewayRouteSpecGrpcRouteOutputReference = AppmeshGatewayRouteSpecGrpcRouteOutputReference;
_e = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecGrpcRouteOutputReference[_e] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecGrpcRouteOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
default_target_hostname: cdktf.stringToTerraform(struct.defaultTargetHostname),
};
}
function appmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
default_target_hostname: {
value: cdktf.stringToHclTerraform(struct.defaultTargetHostname),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._defaultTargetHostname !== undefined) {
hasAnyValues = true;
internalValueResult.defaultTargetHostname = this._defaultTargetHostname;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._defaultTargetHostname = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._defaultTargetHostname = value.defaultTargetHostname;
}
}
get defaultTargetHostname() {
return this.getStringAttribute('default_target_hostname');
}
set defaultTargetHostname(value) {
this._defaultTargetHostname = value;
}
// Temporarily expose input value. Use with caution.
get defaultTargetHostnameInput() {
return this._defaultTargetHostname;
}
}
exports.AppmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameOutputReference = AppmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameOutputReference;
_f = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameOutputReference[_f] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecHttp2RouteActionRewritePathToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
exact: cdktf.stringToTerraform(struct.exact),
};
}
function appmeshGatewayRouteSpecHttp2RouteActionRewritePathToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
exact: {
value: cdktf.stringToHclTerraform(struct.exact),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecHttp2RouteActionRewritePathOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._exact !== undefined) {
hasAnyValues = true;
internalValueResult.exact = this._exact;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._exact = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._exact = value.exact;
}
}
get exact() {
return this.getStringAttribute('exact');
}
set exact(value) {
this._exact = value;
}
// Temporarily expose input value. Use with caution.
get exactInput() {
return this._exact;
}
}
exports.AppmeshGatewayRouteSpecHttp2RouteActionRewritePathOutputReference = AppmeshGatewayRouteSpecHttp2RouteActionRewritePathOutputReference;
_g = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecHttp2RouteActionRewritePathOutputReference[_g] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecHttp2RouteActionRewritePathOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecHttp2RouteActionRewritePrefixToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
default_prefix: cdktf.stringToTerraform(struct.defaultPrefix),
value: cdktf.stringToTerraform(struct.value),
};
}
function appmeshGatewayRouteSpecHttp2RouteActionRewritePrefixToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
default_prefix: {
value: cdktf.stringToHclTerraform(struct.defaultPrefix),
isBlock: false,
type: "simple",
storageClassType: "string",
},
value: {
value: cdktf.stringToHclTerraform(struct.value),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecHttp2RouteActionRewritePrefixOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._defaultPrefix !== undefined) {
hasAnyValues = true;
internalValueResult.defaultPrefix = this._defaultPrefix;
}
if (this._value !== undefined) {
hasAnyValues = true;
internalValueResult.value = this._value;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._defaultPrefix = undefined;
this._value = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._defaultPrefix = value.defaultPrefix;
this._value = value.value;
}
}
get defaultPrefix() {
return this.getStringAttribute('default_prefix');
}
set defaultPrefix(value) {
this._defaultPrefix = value;
}
resetDefaultPrefix() {
this._defaultPrefix = undefined;
}
// Temporarily expose input value. Use with caution.
get defaultPrefixInput() {
return this._defaultPrefix;
}
get value() {
return this.getStringAttribute('value');
}
set value(value) {
this._value = value;
}
resetValue() {
this._value = undefined;
}
// Temporarily expose input value. Use with caution.
get valueInput() {
return this._value;
}
}
exports.AppmeshGatewayRouteSpecHttp2RouteActionRewritePrefixOutputReference = AppmeshGatewayRouteSpecHttp2RouteActionRewritePrefixOutputReference;
_h = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecHttp2RouteActionRewritePrefixOutputReference[_h] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecHttp2RouteActionRewritePrefixOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecHttp2RouteActionRewriteToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
hostname: appmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameToTerraform(struct.hostname),
path: appmeshGatewayRouteSpecHttp2RouteActionRewritePathToTerraform(struct.path),
prefix: appmeshGatewayRouteSpecHttp2RouteActionRewritePrefixToTerraform(struct.prefix),
};
}
function appmeshGatewayRouteSpecHttp2RouteActionRewriteToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
hostname: {
value: appmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameToHclTerraform(struct.hostname),
isBlock: true,
type: "list",
storageClassType: "AppmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameList",
},
path: {
value: appmeshGatewayRouteSpecHttp2RouteActionRewritePathToHclTerraform(struct.path),
isBlock: true,
type: "list",
storageClassType: "AppmeshGatewayRouteSpecHttp2RouteActionRewritePathList",
},
prefix: {
value: appmeshGatewayRouteSpecHttp2RouteActionRewritePrefixToHclTerraform(struct.prefix),
isBlock: true,
type: "list",
storageClassType: "AppmeshGatewayRouteSpecHttp2RouteActionRewritePrefixList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecHttp2RouteActionRewriteOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
// hostname - computed: false, optional: true, required: false
this._hostname = new AppmeshGatewayRouteSpecHttp2RouteActionRewriteHostnameOutputReference(this, "hostname");
// path - computed: false, optional: true, required: false
this._path = new AppmeshGatewayRouteSpecHttp2RouteActionRewritePathOutputReference(this, "path");
// prefix - computed: false, optional: true, required: false
this._prefix = new AppmeshGatewayRouteSpecHttp2RouteActionRewritePrefixOutputReference(this, "prefix");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._hostname?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.hostname = this._hostname?.internalValue;
}
if (this._path?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.path = this._path?.internalValue;
}
if (this._prefix?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.prefix = this._prefix?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._hostname.internalValue = undefined;
this._path.internalValue = undefined;
this._prefix.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._hostname.internalValue = value.hostname;
this._path.internalValue = value.path;
this._prefix.internalValue = value.prefix;
}
}
get hostname() {
return this._hostname;
}
putHostname(value) {
this._hostname.internalValue = value;
}
resetHostname() {
this._hostname.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get hostnameInput() {
return this._hostname.internalValue;
}
get path() {
return this._path;
}
putPath(value) {
this._path.internalValue = value;
}
resetPath() {
this._path.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get pathInput() {
return this._path.internalValue;
}
get prefix() {
return this._prefix;
}
putPrefix(value) {
this._prefix.internalValue = value;
}
resetPrefix() {
this._prefix.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get prefixInput() {
return this._prefix.internalValue;
}
}
exports.AppmeshGatewayRouteSpecHttp2RouteActionRewriteOutputReference = AppmeshGatewayRouteSpecHttp2RouteActionRewriteOutputReference;
_j = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecHttp2RouteActionRewriteOutputReference[_j] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecHttp2RouteActionRewriteOutputReference", version: "21.22.1" };
function appmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
virtual_service_name: cdktf.stringToTerraform(struct.virtualServiceName),
};
}
function appmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
virtual_service_name: {
value: cdktf.stringToHclTerraform(struct.virtualServiceName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
class AppmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._virtualServiceName !== undefined) {
hasAnyValues = true;
internalValueResult.virtualServiceName = this._virtualServiceName;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._virtualServiceName = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._virtualServiceName = value.virtualServiceName;
}
}
get virtualServiceName() {
return this.getStringAttribute('virtual_service_name');
}
set virtualServiceName(value) {
this._virtualServiceName = value;
}
// Temporarily expose input value. Use with caution.
get virtualServiceNameInput() {
return this._virtualServiceName;
}
}
exports.AppmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceOutputReference = AppmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceOutputReference;
_k = JSII_RTTI_SYMBOL_1;
AppmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceOutputReference[_k] = { fqn: "@cdktf/provider-aws.appmeshGatewayRoute.AppmeshGatewayRouteSpecHttp2RouteActionTargetVirtualServiceOutputReference", version: "21.22.1