UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,054 lines (1,053 loc) 361 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; Object.defineProperty(exports, "__esModule", { value: true }); exports.EmrserverlessApplication = exports.EmrserverlessApplicationSchedulerConfigurationOutputReference = exports.EmrserverlessApplicationRuntimeConfigurationList = exports.EmrserverlessApplicationRuntimeConfigurationOutputReference = exports.EmrserverlessApplicationNetworkConfigurationOutputReference = exports.EmrserverlessApplicationMonitoringConfigurationOutputReference = exports.EmrserverlessApplicationMonitoringConfigurationS3MonitoringConfigurationOutputReference = exports.EmrserverlessApplicationMonitoringConfigurationPrometheusMonitoringConfigurationOutputReference = exports.EmrserverlessApplicationMonitoringConfigurationManagedPersistenceMonitoringConfigurationOutputReference = exports.EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationOutputReference = exports.EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesList = exports.EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesOutputReference = exports.EmrserverlessApplicationMaximumCapacityOutputReference = exports.EmrserverlessApplicationInteractiveConfigurationOutputReference = exports.EmrserverlessApplicationInitialCapacityList = exports.EmrserverlessApplicationInitialCapacityOutputReference = exports.EmrserverlessApplicationInitialCapacityInitialCapacityConfigOutputReference = exports.EmrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationOutputReference = exports.EmrserverlessApplicationImageConfigurationOutputReference = exports.EmrserverlessApplicationAutoStopConfigurationOutputReference = exports.EmrserverlessApplicationAutoStartConfigurationOutputReference = void 0; exports.emrserverlessApplicationAutoStartConfigurationToTerraform = emrserverlessApplicationAutoStartConfigurationToTerraform; exports.emrserverlessApplicationAutoStartConfigurationToHclTerraform = emrserverlessApplicationAutoStartConfigurationToHclTerraform; exports.emrserverlessApplicationAutoStopConfigurationToTerraform = emrserverlessApplicationAutoStopConfigurationToTerraform; exports.emrserverlessApplicationAutoStopConfigurationToHclTerraform = emrserverlessApplicationAutoStopConfigurationToHclTerraform; exports.emrserverlessApplicationImageConfigurationToTerraform = emrserverlessApplicationImageConfigurationToTerraform; exports.emrserverlessApplicationImageConfigurationToHclTerraform = emrserverlessApplicationImageConfigurationToHclTerraform; exports.emrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationToTerraform = emrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationToTerraform; exports.emrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationToHclTerraform = emrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationToHclTerraform; exports.emrserverlessApplicationInitialCapacityInitialCapacityConfigToTerraform = emrserverlessApplicationInitialCapacityInitialCapacityConfigToTerraform; exports.emrserverlessApplicationInitialCapacityInitialCapacityConfigToHclTerraform = emrserverlessApplicationInitialCapacityInitialCapacityConfigToHclTerraform; exports.emrserverlessApplicationInitialCapacityToTerraform = emrserverlessApplicationInitialCapacityToTerraform; exports.emrserverlessApplicationInitialCapacityToHclTerraform = emrserverlessApplicationInitialCapacityToHclTerraform; exports.emrserverlessApplicationInteractiveConfigurationToTerraform = emrserverlessApplicationInteractiveConfigurationToTerraform; exports.emrserverlessApplicationInteractiveConfigurationToHclTerraform = emrserverlessApplicationInteractiveConfigurationToHclTerraform; exports.emrserverlessApplicationMaximumCapacityToTerraform = emrserverlessApplicationMaximumCapacityToTerraform; exports.emrserverlessApplicationMaximumCapacityToHclTerraform = emrserverlessApplicationMaximumCapacityToHclTerraform; exports.emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesToTerraform = emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesToTerraform; exports.emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesToHclTerraform = emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesToHclTerraform; exports.emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationToTerraform = emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationToTerraform; exports.emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationToHclTerraform = emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationToHclTerraform; exports.emrserverlessApplicationMonitoringConfigurationManagedPersistenceMonitoringConfigurationToTerraform = emrserverlessApplicationMonitoringConfigurationManagedPersistenceMonitoringConfigurationToTerraform; exports.emrserverlessApplicationMonitoringConfigurationManagedPersistenceMonitoringConfigurationToHclTerraform = emrserverlessApplicationMonitoringConfigurationManagedPersistenceMonitoringConfigurationToHclTerraform; exports.emrserverlessApplicationMonitoringConfigurationPrometheusMonitoringConfigurationToTerraform = emrserverlessApplicationMonitoringConfigurationPrometheusMonitoringConfigurationToTerraform; exports.emrserverlessApplicationMonitoringConfigurationPrometheusMonitoringConfigurationToHclTerraform = emrserverlessApplicationMonitoringConfigurationPrometheusMonitoringConfigurationToHclTerraform; exports.emrserverlessApplicationMonitoringConfigurationS3MonitoringConfigurationToTerraform = emrserverlessApplicationMonitoringConfigurationS3MonitoringConfigurationToTerraform; exports.emrserverlessApplicationMonitoringConfigurationS3MonitoringConfigurationToHclTerraform = emrserverlessApplicationMonitoringConfigurationS3MonitoringConfigurationToHclTerraform; exports.emrserverlessApplicationMonitoringConfigurationToTerraform = emrserverlessApplicationMonitoringConfigurationToTerraform; exports.emrserverlessApplicationMonitoringConfigurationToHclTerraform = emrserverlessApplicationMonitoringConfigurationToHclTerraform; exports.emrserverlessApplicationNetworkConfigurationToTerraform = emrserverlessApplicationNetworkConfigurationToTerraform; exports.emrserverlessApplicationNetworkConfigurationToHclTerraform = emrserverlessApplicationNetworkConfigurationToHclTerraform; exports.emrserverlessApplicationRuntimeConfigurationToTerraform = emrserverlessApplicationRuntimeConfigurationToTerraform; exports.emrserverlessApplicationRuntimeConfigurationToHclTerraform = emrserverlessApplicationRuntimeConfigurationToHclTerraform; exports.emrserverlessApplicationSchedulerConfigurationToTerraform = emrserverlessApplicationSchedulerConfigurationToTerraform; exports.emrserverlessApplicationSchedulerConfigurationToHclTerraform = emrserverlessApplicationSchedulerConfigurationToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function emrserverlessApplicationAutoStartConfigurationToTerraform(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 { enabled: cdktf.booleanToTerraform(struct.enabled), }; } function emrserverlessApplicationAutoStartConfigurationToHclTerraform(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 = { enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationAutoStartConfigurationOutputReference 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._enabled !== undefined) { hasAnyValues = true; internalValueResult.enabled = this._enabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enabled = value.enabled; } } get enabled() { return this.getBooleanAttribute('enabled'); } set enabled(value) { this._enabled = value; } resetEnabled() { this._enabled = undefined; } // Temporarily expose input value. Use with caution. get enabledInput() { return this._enabled; } } exports.EmrserverlessApplicationAutoStartConfigurationOutputReference = EmrserverlessApplicationAutoStartConfigurationOutputReference; _a = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationAutoStartConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationAutoStartConfigurationOutputReference", version: "21.22.1" }; function emrserverlessApplicationAutoStopConfigurationToTerraform(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 { enabled: cdktf.booleanToTerraform(struct.enabled), idle_timeout_minutes: cdktf.numberToTerraform(struct.idleTimeoutMinutes), }; } function emrserverlessApplicationAutoStopConfigurationToHclTerraform(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 = { enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, idle_timeout_minutes: { value: cdktf.numberToHclTerraform(struct.idleTimeoutMinutes), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationAutoStopConfigurationOutputReference 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._enabled !== undefined) { hasAnyValues = true; internalValueResult.enabled = this._enabled; } if (this._idleTimeoutMinutes !== undefined) { hasAnyValues = true; internalValueResult.idleTimeoutMinutes = this._idleTimeoutMinutes; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enabled = undefined; this._idleTimeoutMinutes = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enabled = value.enabled; this._idleTimeoutMinutes = value.idleTimeoutMinutes; } } get enabled() { return this.getBooleanAttribute('enabled'); } set enabled(value) { this._enabled = value; } resetEnabled() { this._enabled = undefined; } // Temporarily expose input value. Use with caution. get enabledInput() { return this._enabled; } get idleTimeoutMinutes() { return this.getNumberAttribute('idle_timeout_minutes'); } set idleTimeoutMinutes(value) { this._idleTimeoutMinutes = value; } resetIdleTimeoutMinutes() { this._idleTimeoutMinutes = undefined; } // Temporarily expose input value. Use with caution. get idleTimeoutMinutesInput() { return this._idleTimeoutMinutes; } } exports.EmrserverlessApplicationAutoStopConfigurationOutputReference = EmrserverlessApplicationAutoStopConfigurationOutputReference; _b = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationAutoStopConfigurationOutputReference[_b] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationAutoStopConfigurationOutputReference", version: "21.22.1" }; function emrserverlessApplicationImageConfigurationToTerraform(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 { image_uri: cdktf.stringToTerraform(struct.imageUri), }; } function emrserverlessApplicationImageConfigurationToHclTerraform(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 = { image_uri: { value: cdktf.stringToHclTerraform(struct.imageUri), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationImageConfigurationOutputReference 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._imageUri !== undefined) { hasAnyValues = true; internalValueResult.imageUri = this._imageUri; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._imageUri = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._imageUri = value.imageUri; } } get imageUri() { return this.getStringAttribute('image_uri'); } set imageUri(value) { this._imageUri = value; } // Temporarily expose input value. Use with caution. get imageUriInput() { return this._imageUri; } } exports.EmrserverlessApplicationImageConfigurationOutputReference = EmrserverlessApplicationImageConfigurationOutputReference; _c = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationImageConfigurationOutputReference[_c] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationImageConfigurationOutputReference", version: "21.22.1" }; function emrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationToTerraform(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 { cpu: cdktf.stringToTerraform(struct.cpu), disk: cdktf.stringToTerraform(struct.disk), memory: cdktf.stringToTerraform(struct.memory), }; } function emrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationToHclTerraform(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 = { cpu: { value: cdktf.stringToHclTerraform(struct.cpu), isBlock: false, type: "simple", storageClassType: "string", }, disk: { value: cdktf.stringToHclTerraform(struct.disk), isBlock: false, type: "simple", storageClassType: "string", }, memory: { value: cdktf.stringToHclTerraform(struct.memory), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationOutputReference 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._cpu !== undefined) { hasAnyValues = true; internalValueResult.cpu = this._cpu; } if (this._disk !== undefined) { hasAnyValues = true; internalValueResult.disk = this._disk; } if (this._memory !== undefined) { hasAnyValues = true; internalValueResult.memory = this._memory; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._cpu = undefined; this._disk = undefined; this._memory = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._cpu = value.cpu; this._disk = value.disk; this._memory = value.memory; } } get cpu() { return this.getStringAttribute('cpu'); } set cpu(value) { this._cpu = value; } // Temporarily expose input value. Use with caution. get cpuInput() { return this._cpu; } get disk() { return this.getStringAttribute('disk'); } set disk(value) { this._disk = value; } resetDisk() { this._disk = undefined; } // Temporarily expose input value. Use with caution. get diskInput() { return this._disk; } get memory() { return this.getStringAttribute('memory'); } set memory(value) { this._memory = value; } // Temporarily expose input value. Use with caution. get memoryInput() { return this._memory; } } exports.EmrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationOutputReference = EmrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationOutputReference; _d = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationOutputReference[_d] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationOutputReference", version: "21.22.1" }; function emrserverlessApplicationInitialCapacityInitialCapacityConfigToTerraform(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 { worker_count: cdktf.numberToTerraform(struct.workerCount), worker_configuration: emrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationToTerraform(struct.workerConfiguration), }; } function emrserverlessApplicationInitialCapacityInitialCapacityConfigToHclTerraform(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 = { worker_count: { value: cdktf.numberToHclTerraform(struct.workerCount), isBlock: false, type: "simple", storageClassType: "number", }, worker_configuration: { value: emrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationToHclTerraform(struct.workerConfiguration), isBlock: true, type: "list", storageClassType: "EmrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationInitialCapacityInitialCapacityConfigOutputReference 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; // worker_configuration - computed: false, optional: true, required: false this._workerConfiguration = new EmrserverlessApplicationInitialCapacityInitialCapacityConfigWorkerConfigurationOutputReference(this, "worker_configuration"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._workerCount !== undefined) { hasAnyValues = true; internalValueResult.workerCount = this._workerCount; } if (this._workerConfiguration?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.workerConfiguration = this._workerConfiguration?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._workerCount = undefined; this._workerConfiguration.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._workerCount = value.workerCount; this._workerConfiguration.internalValue = value.workerConfiguration; } } get workerCount() { return this.getNumberAttribute('worker_count'); } set workerCount(value) { this._workerCount = value; } // Temporarily expose input value. Use with caution. get workerCountInput() { return this._workerCount; } get workerConfiguration() { return this._workerConfiguration; } putWorkerConfiguration(value) { this._workerConfiguration.internalValue = value; } resetWorkerConfiguration() { this._workerConfiguration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get workerConfigurationInput() { return this._workerConfiguration.internalValue; } } exports.EmrserverlessApplicationInitialCapacityInitialCapacityConfigOutputReference = EmrserverlessApplicationInitialCapacityInitialCapacityConfigOutputReference; _e = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationInitialCapacityInitialCapacityConfigOutputReference[_e] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationInitialCapacityInitialCapacityConfigOutputReference", version: "21.22.1" }; function emrserverlessApplicationInitialCapacityToTerraform(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 { initial_capacity_type: cdktf.stringToTerraform(struct.initialCapacityType), initial_capacity_config: emrserverlessApplicationInitialCapacityInitialCapacityConfigToTerraform(struct.initialCapacityConfig), }; } function emrserverlessApplicationInitialCapacityToHclTerraform(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 = { initial_capacity_type: { value: cdktf.stringToHclTerraform(struct.initialCapacityType), isBlock: false, type: "simple", storageClassType: "string", }, initial_capacity_config: { value: emrserverlessApplicationInitialCapacityInitialCapacityConfigToHclTerraform(struct.initialCapacityConfig), isBlock: true, type: "list", storageClassType: "EmrserverlessApplicationInitialCapacityInitialCapacityConfigList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationInitialCapacityOutputReference 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; // initial_capacity_config - computed: false, optional: true, required: false this._initialCapacityConfig = new EmrserverlessApplicationInitialCapacityInitialCapacityConfigOutputReference(this, "initial_capacity_config"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._initialCapacityType !== undefined) { hasAnyValues = true; internalValueResult.initialCapacityType = this._initialCapacityType; } if (this._initialCapacityConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.initialCapacityConfig = this._initialCapacityConfig?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._initialCapacityType = undefined; this._initialCapacityConfig.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._initialCapacityType = value.initialCapacityType; this._initialCapacityConfig.internalValue = value.initialCapacityConfig; } } get initialCapacityType() { return this.getStringAttribute('initial_capacity_type'); } set initialCapacityType(value) { this._initialCapacityType = value; } // Temporarily expose input value. Use with caution. get initialCapacityTypeInput() { return this._initialCapacityType; } get initialCapacityConfig() { return this._initialCapacityConfig; } putInitialCapacityConfig(value) { this._initialCapacityConfig.internalValue = value; } resetInitialCapacityConfig() { this._initialCapacityConfig.internalValue = undefined; } // Temporarily expose input value. Use with caution. get initialCapacityConfigInput() { return this._initialCapacityConfig.internalValue; } } exports.EmrserverlessApplicationInitialCapacityOutputReference = EmrserverlessApplicationInitialCapacityOutputReference; _f = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationInitialCapacityOutputReference[_f] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationInitialCapacityOutputReference", version: "21.22.1" }; class EmrserverlessApplicationInitialCapacityList 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 EmrserverlessApplicationInitialCapacityOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.EmrserverlessApplicationInitialCapacityList = EmrserverlessApplicationInitialCapacityList; _g = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationInitialCapacityList[_g] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationInitialCapacityList", version: "21.22.1" }; function emrserverlessApplicationInteractiveConfigurationToTerraform(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 { livy_endpoint_enabled: cdktf.booleanToTerraform(struct.livyEndpointEnabled), studio_enabled: cdktf.booleanToTerraform(struct.studioEnabled), }; } function emrserverlessApplicationInteractiveConfigurationToHclTerraform(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 = { livy_endpoint_enabled: { value: cdktf.booleanToHclTerraform(struct.livyEndpointEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, studio_enabled: { value: cdktf.booleanToHclTerraform(struct.studioEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationInteractiveConfigurationOutputReference 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._livyEndpointEnabled !== undefined) { hasAnyValues = true; internalValueResult.livyEndpointEnabled = this._livyEndpointEnabled; } if (this._studioEnabled !== undefined) { hasAnyValues = true; internalValueResult.studioEnabled = this._studioEnabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._livyEndpointEnabled = undefined; this._studioEnabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._livyEndpointEnabled = value.livyEndpointEnabled; this._studioEnabled = value.studioEnabled; } } get livyEndpointEnabled() { return this.getBooleanAttribute('livy_endpoint_enabled'); } set livyEndpointEnabled(value) { this._livyEndpointEnabled = value; } resetLivyEndpointEnabled() { this._livyEndpointEnabled = undefined; } // Temporarily expose input value. Use with caution. get livyEndpointEnabledInput() { return this._livyEndpointEnabled; } get studioEnabled() { return this.getBooleanAttribute('studio_enabled'); } set studioEnabled(value) { this._studioEnabled = value; } resetStudioEnabled() { this._studioEnabled = undefined; } // Temporarily expose input value. Use with caution. get studioEnabledInput() { return this._studioEnabled; } } exports.EmrserverlessApplicationInteractiveConfigurationOutputReference = EmrserverlessApplicationInteractiveConfigurationOutputReference; _h = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationInteractiveConfigurationOutputReference[_h] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationInteractiveConfigurationOutputReference", version: "21.22.1" }; function emrserverlessApplicationMaximumCapacityToTerraform(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 { cpu: cdktf.stringToTerraform(struct.cpu), disk: cdktf.stringToTerraform(struct.disk), memory: cdktf.stringToTerraform(struct.memory), }; } function emrserverlessApplicationMaximumCapacityToHclTerraform(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 = { cpu: { value: cdktf.stringToHclTerraform(struct.cpu), isBlock: false, type: "simple", storageClassType: "string", }, disk: { value: cdktf.stringToHclTerraform(struct.disk), isBlock: false, type: "simple", storageClassType: "string", }, memory: { value: cdktf.stringToHclTerraform(struct.memory), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationMaximumCapacityOutputReference 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._cpu !== undefined) { hasAnyValues = true; internalValueResult.cpu = this._cpu; } if (this._disk !== undefined) { hasAnyValues = true; internalValueResult.disk = this._disk; } if (this._memory !== undefined) { hasAnyValues = true; internalValueResult.memory = this._memory; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._cpu = undefined; this._disk = undefined; this._memory = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._cpu = value.cpu; this._disk = value.disk; this._memory = value.memory; } } get cpu() { return this.getStringAttribute('cpu'); } set cpu(value) { this._cpu = value; } // Temporarily expose input value. Use with caution. get cpuInput() { return this._cpu; } get disk() { return this.getStringAttribute('disk'); } set disk(value) { this._disk = value; } resetDisk() { this._disk = undefined; } // Temporarily expose input value. Use with caution. get diskInput() { return this._disk; } get memory() { return this.getStringAttribute('memory'); } set memory(value) { this._memory = value; } // Temporarily expose input value. Use with caution. get memoryInput() { return this._memory; } } exports.EmrserverlessApplicationMaximumCapacityOutputReference = EmrserverlessApplicationMaximumCapacityOutputReference; _j = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationMaximumCapacityOutputReference[_j] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationMaximumCapacityOutputReference", version: "21.22.1" }; function emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesToTerraform(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 { name: cdktf.stringToTerraform(struct.name), values: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.values), }; } function emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesToHclTerraform(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 = { name: { value: cdktf.stringToHclTerraform(struct.name), isBlock: false, type: "simple", storageClassType: "string", }, values: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.values), isBlock: false, type: "set", storageClassType: "stringList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesOutputReference 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._name !== undefined) { hasAnyValues = true; internalValueResult.name = this._name; } if (this._values !== undefined) { hasAnyValues = true; internalValueResult.values = this._values; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._values = 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._name = value.name; this._values = value.values; } } 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 values() { return cdktf.Fn.tolist(this.getListAttribute('values')); } set values(value) { this._values = value; } // Temporarily expose input value. Use with caution. get valuesInput() { return this._values; } } exports.EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesOutputReference = EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesOutputReference; _k = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesOutputReference[_k] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesOutputReference", version: "21.22.1" }; class EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesList 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 EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesList = EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesList; _l = JSII_RTTI_SYMBOL_1; EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesList[_l] = { fqn: "@cdktf/provider-aws.emrserverlessApplication.EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesList", version: "21.22.1" }; function emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationToTerraform(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 { enabled: cdktf.booleanToTerraform(struct.enabled), encryption_key_arn: cdktf.stringToTerraform(struct.encryptionKeyArn), log_group_name: cdktf.stringToTerraform(struct.logGroupName), log_stream_name_prefix: cdktf.stringToTerraform(struct.logStreamNamePrefix), log_types: cdktf.listMapper(emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesToTerraform, true)(struct.logTypes), }; } function emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationToHclTerraform(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 = { enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, encryption_key_arn: { value: cdktf.stringToHclTerraform(struct.encryptionKeyArn), isBlock: false, type: "simple", storageClassType: "string", }, log_group_name: { value: cdktf.stringToHclTerraform(struct.logGroupName), isBlock: false, type: "simple", storageClassType: "string", }, log_stream_name_prefix: { value: cdktf.stringToHclTerraform(struct.logStreamNamePrefix), isBlock: false, type: "simple", storageClassType: "string", }, log_types: { value: cdktf.listMapperHcl(emrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesToHclTerraform, true)(struct.logTypes), isBlock: true, type: "set", storageClassType: "EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationOutputReference 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; // log_types - computed: false, optional: true, required: false this._logTypes = new EmrserverlessApplicationMonitoringConfigurationCloudwatchLoggingConfigurationLogTypesList(this, "log_types", true); } get internalValue() { let hasAnyValues = this.isEmptyObject;