UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,058 lines (1,057 loc) 363 kB
"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; Object.defineProperty(exports, "__esModule", { value: true }); exports.FisExperimentTemplate = exports.FisExperimentTemplateTimeoutsOutputReference = exports.FisExperimentTemplateTargetList = exports.FisExperimentTemplateTargetOutputReference = exports.FisExperimentTemplateTargetResourceTagList = exports.FisExperimentTemplateTargetResourceTagOutputReference = exports.FisExperimentTemplateTargetFilterList = exports.FisExperimentTemplateTargetFilterOutputReference = exports.FisExperimentTemplateStopConditionList = exports.FisExperimentTemplateStopConditionOutputReference = exports.FisExperimentTemplateLogConfigurationOutputReference = exports.FisExperimentTemplateLogConfigurationS3ConfigurationOutputReference = exports.FisExperimentTemplateLogConfigurationCloudwatchLogsConfigurationOutputReference = exports.FisExperimentTemplateExperimentReportConfigurationOutputReference = exports.FisExperimentTemplateExperimentReportConfigurationOutputsOutputReference = exports.FisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationOutputReference = exports.FisExperimentTemplateExperimentReportConfigurationDataSourcesOutputReference = exports.FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardList = exports.FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardOutputReference = exports.FisExperimentTemplateExperimentOptionsOutputReference = exports.FisExperimentTemplateActionList = exports.FisExperimentTemplateActionOutputReference = exports.FisExperimentTemplateActionTargetOutputReference = exports.FisExperimentTemplateActionParameterList = exports.FisExperimentTemplateActionParameterOutputReference = void 0; exports.fisExperimentTemplateActionParameterToTerraform = fisExperimentTemplateActionParameterToTerraform; exports.fisExperimentTemplateActionParameterToHclTerraform = fisExperimentTemplateActionParameterToHclTerraform; exports.fisExperimentTemplateActionTargetToTerraform = fisExperimentTemplateActionTargetToTerraform; exports.fisExperimentTemplateActionTargetToHclTerraform = fisExperimentTemplateActionTargetToHclTerraform; exports.fisExperimentTemplateActionToTerraform = fisExperimentTemplateActionToTerraform; exports.fisExperimentTemplateActionToHclTerraform = fisExperimentTemplateActionToHclTerraform; exports.fisExperimentTemplateExperimentOptionsToTerraform = fisExperimentTemplateExperimentOptionsToTerraform; exports.fisExperimentTemplateExperimentOptionsToHclTerraform = fisExperimentTemplateExperimentOptionsToHclTerraform; exports.fisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardToTerraform = fisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardToTerraform; exports.fisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardToHclTerraform = fisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardToHclTerraform; exports.fisExperimentTemplateExperimentReportConfigurationDataSourcesToTerraform = fisExperimentTemplateExperimentReportConfigurationDataSourcesToTerraform; exports.fisExperimentTemplateExperimentReportConfigurationDataSourcesToHclTerraform = fisExperimentTemplateExperimentReportConfigurationDataSourcesToHclTerraform; exports.fisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationToTerraform = fisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationToTerraform; exports.fisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationToHclTerraform = fisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationToHclTerraform; exports.fisExperimentTemplateExperimentReportConfigurationOutputsToTerraform = fisExperimentTemplateExperimentReportConfigurationOutputsToTerraform; exports.fisExperimentTemplateExperimentReportConfigurationOutputsToHclTerraform = fisExperimentTemplateExperimentReportConfigurationOutputsToHclTerraform; exports.fisExperimentTemplateExperimentReportConfigurationToTerraform = fisExperimentTemplateExperimentReportConfigurationToTerraform; exports.fisExperimentTemplateExperimentReportConfigurationToHclTerraform = fisExperimentTemplateExperimentReportConfigurationToHclTerraform; exports.fisExperimentTemplateLogConfigurationCloudwatchLogsConfigurationToTerraform = fisExperimentTemplateLogConfigurationCloudwatchLogsConfigurationToTerraform; exports.fisExperimentTemplateLogConfigurationCloudwatchLogsConfigurationToHclTerraform = fisExperimentTemplateLogConfigurationCloudwatchLogsConfigurationToHclTerraform; exports.fisExperimentTemplateLogConfigurationS3ConfigurationToTerraform = fisExperimentTemplateLogConfigurationS3ConfigurationToTerraform; exports.fisExperimentTemplateLogConfigurationS3ConfigurationToHclTerraform = fisExperimentTemplateLogConfigurationS3ConfigurationToHclTerraform; exports.fisExperimentTemplateLogConfigurationToTerraform = fisExperimentTemplateLogConfigurationToTerraform; exports.fisExperimentTemplateLogConfigurationToHclTerraform = fisExperimentTemplateLogConfigurationToHclTerraform; exports.fisExperimentTemplateStopConditionToTerraform = fisExperimentTemplateStopConditionToTerraform; exports.fisExperimentTemplateStopConditionToHclTerraform = fisExperimentTemplateStopConditionToHclTerraform; exports.fisExperimentTemplateTargetFilterToTerraform = fisExperimentTemplateTargetFilterToTerraform; exports.fisExperimentTemplateTargetFilterToHclTerraform = fisExperimentTemplateTargetFilterToHclTerraform; exports.fisExperimentTemplateTargetResourceTagToTerraform = fisExperimentTemplateTargetResourceTagToTerraform; exports.fisExperimentTemplateTargetResourceTagToHclTerraform = fisExperimentTemplateTargetResourceTagToHclTerraform; exports.fisExperimentTemplateTargetToTerraform = fisExperimentTemplateTargetToTerraform; exports.fisExperimentTemplateTargetToHclTerraform = fisExperimentTemplateTargetToHclTerraform; exports.fisExperimentTemplateTimeoutsToTerraform = fisExperimentTemplateTimeoutsToTerraform; exports.fisExperimentTemplateTimeoutsToHclTerraform = fisExperimentTemplateTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function fisExperimentTemplateActionParameterToTerraform(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 { key: cdktf.stringToTerraform(struct.key), value: cdktf.stringToTerraform(struct.value), }; } function fisExperimentTemplateActionParameterToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), 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 FisExperimentTemplateActionParameterOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._key = undefined; this._value = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._key = value.key; this._value = value.value; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.FisExperimentTemplateActionParameterOutputReference = FisExperimentTemplateActionParameterOutputReference; _a = JSII_RTTI_SYMBOL_1; FisExperimentTemplateActionParameterOutputReference[_a] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateActionParameterOutputReference", version: "21.22.1" }; class FisExperimentTemplateActionParameterList extends cdktf.ComplexList { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new FisExperimentTemplateActionParameterOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.FisExperimentTemplateActionParameterList = FisExperimentTemplateActionParameterList; _b = JSII_RTTI_SYMBOL_1; FisExperimentTemplateActionParameterList[_b] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateActionParameterList", version: "21.22.1" }; function fisExperimentTemplateActionTargetToTerraform(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 { key: cdktf.stringToTerraform(struct.key), value: cdktf.stringToTerraform(struct.value), }; } function fisExperimentTemplateActionTargetToHclTerraform(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 = { key: { value: cdktf.stringToHclTerraform(struct.key), 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 FisExperimentTemplateActionTargetOutputReference 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._key !== undefined) { hasAnyValues = true; internalValueResult.key = this._key; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._key = undefined; this._value = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._key = value.key; this._value = value.value; } } get key() { return this.getStringAttribute('key'); } set key(value) { this._key = value; } // Temporarily expose input value. Use with caution. get keyInput() { return this._key; } get value() { return this.getStringAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.FisExperimentTemplateActionTargetOutputReference = FisExperimentTemplateActionTargetOutputReference; _c = JSII_RTTI_SYMBOL_1; FisExperimentTemplateActionTargetOutputReference[_c] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateActionTargetOutputReference", version: "21.22.1" }; function fisExperimentTemplateActionToTerraform(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_id: cdktf.stringToTerraform(struct.actionId), description: cdktf.stringToTerraform(struct.description), name: cdktf.stringToTerraform(struct.name), start_after: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.startAfter), parameter: cdktf.listMapper(fisExperimentTemplateActionParameterToTerraform, true)(struct.parameter), target: fisExperimentTemplateActionTargetToTerraform(struct.target), }; } function fisExperimentTemplateActionToHclTerraform(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_id: { value: cdktf.stringToHclTerraform(struct.actionId), isBlock: false, type: "simple", storageClassType: "string", }, description: { value: cdktf.stringToHclTerraform(struct.description), isBlock: false, type: "simple", storageClassType: "string", }, name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, start_after: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.startAfter), isBlock: false, type: "set", storageClassType: "stringList", }, parameter: { value: cdktf.listMapperHcl(fisExperimentTemplateActionParameterToHclTerraform, true)(struct.parameter), isBlock: true, type: "set", storageClassType: "FisExperimentTemplateActionParameterList", }, target: { value: fisExperimentTemplateActionTargetToHclTerraform(struct.target), isBlock: true, type: "list", storageClassType: "FisExperimentTemplateActionTargetList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class FisExperimentTemplateActionOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; // parameter - computed: false, optional: true, required: false this._parameter = new FisExperimentTemplateActionParameterList(this, "parameter", true); // target - computed: false, optional: true, required: false this._target = new FisExperimentTemplateActionTargetOutputReference(this, "target"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._actionId !== undefined) { hasAnyValues = true; internalValueResult.actionId = this._actionId; } if (this._description !== undefined) { hasAnyValues = true; internalValueResult.description = this._description; } if (this._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._startAfter !== undefined) { hasAnyValues = true; internalValueResult.startAfter = this._startAfter; } if (this._parameter?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.parameter = this._parameter?.internalValue; } 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.resolvableValue = undefined; this._actionId = undefined; this._description = undefined; this._name = undefined; this._startAfter = undefined; this._parameter.internalValue = undefined; this._target.internalValue = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._actionId = value.actionId; this._description = value.description; this._name = value.name; this._startAfter = value.startAfter; this._parameter.internalValue = value.parameter; this._target.internalValue = value.target; } } get actionId() { return this.getStringAttribute('action_id'); } set actionId(value) { this._actionId = value; } // Temporarily expose input value. Use with caution. get actionIdInput() { return this._actionId; } get description() { return this.getStringAttribute('description'); } set description(value) { this._description = value; } resetDescription() { this._description = undefined; } // Temporarily expose input value. Use with caution. get descriptionInput() { return this._description; } get name() { return this.getStringAttribute('name'); } set name(value) { this._name = value; } // Temporarily expose input value. Use with caution. get nameInput() { return this._name; } get startAfter() { return cdktf.Fn.tolist(this.getListAttribute('start_after')); } set startAfter(value) { this._startAfter = value; } resetStartAfter() { this._startAfter = undefined; } // Temporarily expose input value. Use with caution. get startAfterInput() { return this._startAfter; } get parameter() { return this._parameter; } putParameter(value) { this._parameter.internalValue = value; } resetParameter() { this._parameter.internalValue = undefined; } // Temporarily expose input value. Use with caution. get parameterInput() { return this._parameter.internalValue; } get target() { return this._target; } putTarget(value) { this._target.internalValue = value; } resetTarget() { this._target.internalValue = undefined; } // Temporarily expose input value. Use with caution. get targetInput() { return this._target.internalValue; } } exports.FisExperimentTemplateActionOutputReference = FisExperimentTemplateActionOutputReference; _d = JSII_RTTI_SYMBOL_1; FisExperimentTemplateActionOutputReference[_d] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateActionOutputReference", version: "21.22.1" }; class FisExperimentTemplateActionList extends cdktf.ComplexList { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new FisExperimentTemplateActionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.FisExperimentTemplateActionList = FisExperimentTemplateActionList; _e = JSII_RTTI_SYMBOL_1; FisExperimentTemplateActionList[_e] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateActionList", version: "21.22.1" }; function fisExperimentTemplateExperimentOptionsToTerraform(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 { account_targeting: cdktf.stringToTerraform(struct.accountTargeting), empty_target_resolution_mode: cdktf.stringToTerraform(struct.emptyTargetResolutionMode), }; } function fisExperimentTemplateExperimentOptionsToHclTerraform(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 = { account_targeting: { value: cdktf.stringToHclTerraform(struct.accountTargeting), isBlock: false, type: "simple", storageClassType: "string", }, empty_target_resolution_mode: { value: cdktf.stringToHclTerraform(struct.emptyTargetResolutionMode), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class FisExperimentTemplateExperimentOptionsOutputReference 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._accountTargeting !== undefined) { hasAnyValues = true; internalValueResult.accountTargeting = this._accountTargeting; } if (this._emptyTargetResolutionMode !== undefined) { hasAnyValues = true; internalValueResult.emptyTargetResolutionMode = this._emptyTargetResolutionMode; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._accountTargeting = undefined; this._emptyTargetResolutionMode = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._accountTargeting = value.accountTargeting; this._emptyTargetResolutionMode = value.emptyTargetResolutionMode; } } get accountTargeting() { return this.getStringAttribute('account_targeting'); } set accountTargeting(value) { this._accountTargeting = value; } resetAccountTargeting() { this._accountTargeting = undefined; } // Temporarily expose input value. Use with caution. get accountTargetingInput() { return this._accountTargeting; } get emptyTargetResolutionMode() { return this.getStringAttribute('empty_target_resolution_mode'); } set emptyTargetResolutionMode(value) { this._emptyTargetResolutionMode = value; } resetEmptyTargetResolutionMode() { this._emptyTargetResolutionMode = undefined; } // Temporarily expose input value. Use with caution. get emptyTargetResolutionModeInput() { return this._emptyTargetResolutionMode; } } exports.FisExperimentTemplateExperimentOptionsOutputReference = FisExperimentTemplateExperimentOptionsOutputReference; _f = JSII_RTTI_SYMBOL_1; FisExperimentTemplateExperimentOptionsOutputReference[_f] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateExperimentOptionsOutputReference", version: "21.22.1" }; function fisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardToTerraform(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 { dashboard_arn: cdktf.stringToTerraform(struct.dashboardArn), }; } function fisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardToHclTerraform(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 = { dashboard_arn: { value: cdktf.stringToHclTerraform(struct.dashboardArn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) { super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._dashboardArn !== undefined) { hasAnyValues = true; internalValueResult.dashboardArn = this._dashboardArn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._dashboardArn = undefined; } else if (cdktf.Tokenization.isResolvable(value)) { this.isEmptyObject = false; this.resolvableValue = value; } else { this.isEmptyObject = Object.keys(value).length === 0; this.resolvableValue = undefined; this._dashboardArn = value.dashboardArn; } } get dashboardArn() { return this.getStringAttribute('dashboard_arn'); } set dashboardArn(value) { this._dashboardArn = value; } resetDashboardArn() { this._dashboardArn = undefined; } // Temporarily expose input value. Use with caution. get dashboardArnInput() { return this._dashboardArn; } } exports.FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardOutputReference = FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardOutputReference; _g = JSII_RTTI_SYMBOL_1; FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardOutputReference[_g] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardOutputReference", version: "21.22.1" }; class FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardList extends cdktf.ComplexList { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource, terraformAttribute, wrapsSet) { super(terraformResource, terraformAttribute, wrapsSet); this.terraformResource = terraformResource; this.terraformAttribute = terraformAttribute; this.wrapsSet = wrapsSet; } /** * @param index the index of the item to return */ get(index) { return new FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardList = FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardList; _h = JSII_RTTI_SYMBOL_1; FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardList[_h] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardList", version: "21.22.1" }; function fisExperimentTemplateExperimentReportConfigurationDataSourcesToTerraform(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 { cloudwatch_dashboard: cdktf.listMapper(fisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardToTerraform, true)(struct.cloudwatchDashboard), }; } function fisExperimentTemplateExperimentReportConfigurationDataSourcesToHclTerraform(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 = { cloudwatch_dashboard: { value: cdktf.listMapperHcl(fisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardToHclTerraform, true)(struct.cloudwatchDashboard), isBlock: true, type: "list", storageClassType: "FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class FisExperimentTemplateExperimentReportConfigurationDataSourcesOutputReference 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; // cloudwatch_dashboard - computed: false, optional: true, required: false this._cloudwatchDashboard = new FisExperimentTemplateExperimentReportConfigurationDataSourcesCloudwatchDashboardList(this, "cloudwatch_dashboard", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._cloudwatchDashboard?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.cloudwatchDashboard = this._cloudwatchDashboard?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._cloudwatchDashboard.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._cloudwatchDashboard.internalValue = value.cloudwatchDashboard; } } get cloudwatchDashboard() { return this._cloudwatchDashboard; } putCloudwatchDashboard(value) { this._cloudwatchDashboard.internalValue = value; } resetCloudwatchDashboard() { this._cloudwatchDashboard.internalValue = undefined; } // Temporarily expose input value. Use with caution. get cloudwatchDashboardInput() { return this._cloudwatchDashboard.internalValue; } } exports.FisExperimentTemplateExperimentReportConfigurationDataSourcesOutputReference = FisExperimentTemplateExperimentReportConfigurationDataSourcesOutputReference; _j = JSII_RTTI_SYMBOL_1; FisExperimentTemplateExperimentReportConfigurationDataSourcesOutputReference[_j] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateExperimentReportConfigurationDataSourcesOutputReference", version: "21.22.1" }; function fisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationToTerraform(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 { bucket_name: cdktf.stringToTerraform(struct.bucketName), prefix: cdktf.stringToTerraform(struct.prefix), }; } function fisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationToHclTerraform(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 = { bucket_name: { value: cdktf.stringToHclTerraform(struct.bucketName), isBlock: false, type: "simple", storageClassType: "string", }, prefix: { value: cdktf.stringToHclTerraform(struct.prefix), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class FisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationOutputReference 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._bucketName !== undefined) { hasAnyValues = true; internalValueResult.bucketName = this._bucketName; } if (this._prefix !== undefined) { hasAnyValues = true; internalValueResult.prefix = this._prefix; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._bucketName = undefined; this._prefix = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._bucketName = value.bucketName; this._prefix = value.prefix; } } get bucketName() { return this.getStringAttribute('bucket_name'); } set bucketName(value) { this._bucketName = value; } // Temporarily expose input value. Use with caution. get bucketNameInput() { return this._bucketName; } get prefix() { return this.getStringAttribute('prefix'); } set prefix(value) { this._prefix = value; } resetPrefix() { this._prefix = undefined; } // Temporarily expose input value. Use with caution. get prefixInput() { return this._prefix; } } exports.FisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationOutputReference = FisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationOutputReference; _k = JSII_RTTI_SYMBOL_1; FisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationOutputReference[_k] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationOutputReference", version: "21.22.1" }; function fisExperimentTemplateExperimentReportConfigurationOutputsToTerraform(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 { s3_configuration: fisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationToTerraform(struct.s3Configuration), }; } function fisExperimentTemplateExperimentReportConfigurationOutputsToHclTerraform(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 = { s3_configuration: { value: fisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationToHclTerraform(struct.s3Configuration), isBlock: true, type: "list", storageClassType: "FisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class FisExperimentTemplateExperimentReportConfigurationOutputsOutputReference 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; // s3_configuration - computed: false, optional: true, required: false this._s3Configuration = new FisExperimentTemplateExperimentReportConfigurationOutputsS3ConfigurationOutputReference(this, "s3_configuration"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._s3Configuration?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.s3Configuration = this._s3Configuration?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._s3Configuration.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._s3Configuration.internalValue = value.s3Configuration; } } get s3Configuration() { return this._s3Configuration; } putS3Configuration(value) { this._s3Configuration.internalValue = value; } resetS3Configuration() { this._s3Configuration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get s3ConfigurationInput() { return this._s3Configuration.internalValue; } } exports.FisExperimentTemplateExperimentReportConfigurationOutputsOutputReference = FisExperimentTemplateExperimentReportConfigurationOutputsOutputReference; _l = JSII_RTTI_SYMBOL_1; FisExperimentTemplateExperimentReportConfigurationOutputsOutputReference[_l] = { fqn: "@cdktf/provider-aws.fisExperimentTemplate.FisExperimentTemplateExperimentReportConfigurationOutputsOutputReference", version: "21.22.1" }; function fisExperimentTemplateExperimentReportConfigurationToTerraform(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 { post_experiment_duration: cdktf.stringToTerraform(struct.postExperimentDuration), pre_experiment_duration: cdktf.stringToTerraform(struct.preExperimentDuration), data_sources: fisExperimentTemplateExperimentReportConfigurationDataSourcesToTerraform(struct.dataSources), outputs: fisExperimentTemplateExperimentReportConfigurationOutputsToTerraform(struct.outputs), }; } function fisExperimentTemplateExperimentReportConfigurationToHclTerraform(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 = { post_experiment_duration: { value: cdktf.stringToHclTerraform(struct.postExperimentDuration), isBlock: false, type: "simple", storageClassType: "string", }, pre_experiment_duration: { value: cdktf.stringToHclTerraform(struct.preExperimentDuration), isBlock: false, type: "simple", storageClassType: "string", }, data_sources: { value: fisExperimentTemplateExperimentReportConfigurationDataSourcesToHclTerraform(struct.dataSources), isBlock: true, type: "list", storageClassType: "FisExperimentTemplateExperimentReportConfigurationDataSourcesList", }, outputs: { value: fisExperimentTemplateExperimentReportConfigurationOutputsToHclTerraform(struct.outputs), isBlock: true, type: "list", storageClassType: "FisExperimentTemplateExperimentReportConfigurationOutputsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class FisExperimentTemplateExperimentReportConfigurationOutputReference 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; // data_sources - computed: false, optional: true, required: false this._dataSources = new FisExperimentTemplateExperimentReportConfigurationDataSourcesOutputReference(this, "data_sources"); // outputs - computed: false, optional: true, required: false this._outputs = new FisExperimentTemplateExperimentReportConfigurationOutputsOutputReference(this, "outputs"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._postExperimentDuration !== undefined) { hasAnyValues = true; internalValueResult.postExperimentDuration = this._postExperimentDuration; } if (this._preExperimentDuration !== undefined) { hasAnyValues = true; internalValueResult.preExperimentDuration = this._preExperimentDuration; } if (this._dataSources?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.dataSources = this._dataSources?.internalValue; } if (this._outputs?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.outputs = this._outputs?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._postExperimentDuration = undefined; this._preExperimentDuration = undefined; this._dataSources.internalValue = undefined; this._outputs.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._postExperimentDuration = value.postExperimentDuration; this._preExperimentDuration = value.preExperimentDuration; this._dataSources.internalValue = value.dataSources; this._outputs.internalValue = value.outputs; } } get postExperimentDuration() { return this.getStringAttribute('post_experiment_duration'); } set postExperimentDuration(value) { this._postExperimentDuration = value;