UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,189 lines 335 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q; Object.defineProperty(exports, "__esModule", { value: true }); exports.LambdaFunction = exports.LambdaFunctionVpcConfigOutputReference = exports.LambdaFunctionTracingConfigOutputReference = exports.LambdaFunctionTimeoutsOutputReference = exports.LambdaFunctionTenancyConfigOutputReference = exports.LambdaFunctionSnapStartOutputReference = exports.LambdaFunctionLoggingConfigOutputReference = exports.LambdaFunctionImageConfigOutputReference = exports.LambdaFunctionFileSystemConfigOutputReference = exports.LambdaFunctionEphemeralStorageOutputReference = exports.LambdaFunctionEnvironmentOutputReference = exports.LambdaFunctionDurableConfigOutputReference = exports.LambdaFunctionDeadLetterConfigOutputReference = exports.LambdaFunctionCapacityProviderConfigOutputReference = exports.LambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigOutputReference = void 0; exports.lambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigToTerraform = lambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigToTerraform; exports.lambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigToHclTerraform = lambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigToHclTerraform; exports.lambdaFunctionCapacityProviderConfigToTerraform = lambdaFunctionCapacityProviderConfigToTerraform; exports.lambdaFunctionCapacityProviderConfigToHclTerraform = lambdaFunctionCapacityProviderConfigToHclTerraform; exports.lambdaFunctionDeadLetterConfigToTerraform = lambdaFunctionDeadLetterConfigToTerraform; exports.lambdaFunctionDeadLetterConfigToHclTerraform = lambdaFunctionDeadLetterConfigToHclTerraform; exports.lambdaFunctionDurableConfigToTerraform = lambdaFunctionDurableConfigToTerraform; exports.lambdaFunctionDurableConfigToHclTerraform = lambdaFunctionDurableConfigToHclTerraform; exports.lambdaFunctionEnvironmentToTerraform = lambdaFunctionEnvironmentToTerraform; exports.lambdaFunctionEnvironmentToHclTerraform = lambdaFunctionEnvironmentToHclTerraform; exports.lambdaFunctionEphemeralStorageToTerraform = lambdaFunctionEphemeralStorageToTerraform; exports.lambdaFunctionEphemeralStorageToHclTerraform = lambdaFunctionEphemeralStorageToHclTerraform; exports.lambdaFunctionFileSystemConfigToTerraform = lambdaFunctionFileSystemConfigToTerraform; exports.lambdaFunctionFileSystemConfigToHclTerraform = lambdaFunctionFileSystemConfigToHclTerraform; exports.lambdaFunctionImageConfigToTerraform = lambdaFunctionImageConfigToTerraform; exports.lambdaFunctionImageConfigToHclTerraform = lambdaFunctionImageConfigToHclTerraform; exports.lambdaFunctionLoggingConfigToTerraform = lambdaFunctionLoggingConfigToTerraform; exports.lambdaFunctionLoggingConfigToHclTerraform = lambdaFunctionLoggingConfigToHclTerraform; exports.lambdaFunctionSnapStartToTerraform = lambdaFunctionSnapStartToTerraform; exports.lambdaFunctionSnapStartToHclTerraform = lambdaFunctionSnapStartToHclTerraform; exports.lambdaFunctionTenancyConfigToTerraform = lambdaFunctionTenancyConfigToTerraform; exports.lambdaFunctionTenancyConfigToHclTerraform = lambdaFunctionTenancyConfigToHclTerraform; exports.lambdaFunctionTimeoutsToTerraform = lambdaFunctionTimeoutsToTerraform; exports.lambdaFunctionTimeoutsToHclTerraform = lambdaFunctionTimeoutsToHclTerraform; exports.lambdaFunctionTracingConfigToTerraform = lambdaFunctionTracingConfigToTerraform; exports.lambdaFunctionTracingConfigToHclTerraform = lambdaFunctionTracingConfigToHclTerraform; exports.lambdaFunctionVpcConfigToTerraform = lambdaFunctionVpcConfigToTerraform; exports.lambdaFunctionVpcConfigToHclTerraform = lambdaFunctionVpcConfigToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function lambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigToTerraform(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 { capacity_provider_arn: cdktf.stringToTerraform(struct.capacityProviderArn), execution_environment_memory_gib_per_vcpu: cdktf.numberToTerraform(struct.executionEnvironmentMemoryGibPerVcpu), per_execution_environment_max_concurrency: cdktf.numberToTerraform(struct.perExecutionEnvironmentMaxConcurrency), }; } function lambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigToHclTerraform(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 = { capacity_provider_arn: { value: cdktf.stringToHclTerraform(struct.capacityProviderArn), isBlock: false, type: "simple", storageClassType: "string", }, execution_environment_memory_gib_per_vcpu: { value: cdktf.numberToHclTerraform(struct.executionEnvironmentMemoryGibPerVcpu), isBlock: false, type: "simple", storageClassType: "number", }, per_execution_environment_max_concurrency: { value: cdktf.numberToHclTerraform(struct.perExecutionEnvironmentMaxConcurrency), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigOutputReference 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._capacityProviderArn !== undefined) { hasAnyValues = true; internalValueResult.capacityProviderArn = this._capacityProviderArn; } if (this._executionEnvironmentMemoryGibPerVcpu !== undefined) { hasAnyValues = true; internalValueResult.executionEnvironmentMemoryGibPerVcpu = this._executionEnvironmentMemoryGibPerVcpu; } if (this._perExecutionEnvironmentMaxConcurrency !== undefined) { hasAnyValues = true; internalValueResult.perExecutionEnvironmentMaxConcurrency = this._perExecutionEnvironmentMaxConcurrency; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._capacityProviderArn = undefined; this._executionEnvironmentMemoryGibPerVcpu = undefined; this._perExecutionEnvironmentMaxConcurrency = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._capacityProviderArn = value.capacityProviderArn; this._executionEnvironmentMemoryGibPerVcpu = value.executionEnvironmentMemoryGibPerVcpu; this._perExecutionEnvironmentMaxConcurrency = value.perExecutionEnvironmentMaxConcurrency; } } get capacityProviderArn() { return this.getStringAttribute('capacity_provider_arn'); } set capacityProviderArn(value) { this._capacityProviderArn = value; } // Temporarily expose input value. Use with caution. get capacityProviderArnInput() { return this._capacityProviderArn; } get executionEnvironmentMemoryGibPerVcpu() { return this.getNumberAttribute('execution_environment_memory_gib_per_vcpu'); } set executionEnvironmentMemoryGibPerVcpu(value) { this._executionEnvironmentMemoryGibPerVcpu = value; } resetExecutionEnvironmentMemoryGibPerVcpu() { this._executionEnvironmentMemoryGibPerVcpu = undefined; } // Temporarily expose input value. Use with caution. get executionEnvironmentMemoryGibPerVcpuInput() { return this._executionEnvironmentMemoryGibPerVcpu; } get perExecutionEnvironmentMaxConcurrency() { return this.getNumberAttribute('per_execution_environment_max_concurrency'); } set perExecutionEnvironmentMaxConcurrency(value) { this._perExecutionEnvironmentMaxConcurrency = value; } resetPerExecutionEnvironmentMaxConcurrency() { this._perExecutionEnvironmentMaxConcurrency = undefined; } // Temporarily expose input value. Use with caution. get perExecutionEnvironmentMaxConcurrencyInput() { return this._perExecutionEnvironmentMaxConcurrency; } } exports.LambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigOutputReference = LambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigOutputReference; _a = JSII_RTTI_SYMBOL_1; LambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigOutputReference[_a] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigOutputReference", version: "21.22.1" }; function lambdaFunctionCapacityProviderConfigToTerraform(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 { lambda_managed_instances_capacity_provider_config: lambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigToTerraform(struct.lambdaManagedInstancesCapacityProviderConfig), }; } function lambdaFunctionCapacityProviderConfigToHclTerraform(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 = { lambda_managed_instances_capacity_provider_config: { value: lambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigToHclTerraform(struct.lambdaManagedInstancesCapacityProviderConfig), isBlock: true, type: "list", storageClassType: "LambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionCapacityProviderConfigOutputReference 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; // lambda_managed_instances_capacity_provider_config - computed: false, optional: false, required: true this._lambdaManagedInstancesCapacityProviderConfig = new LambdaFunctionCapacityProviderConfigLambdaManagedInstancesCapacityProviderConfigOutputReference(this, "lambda_managed_instances_capacity_provider_config"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._lambdaManagedInstancesCapacityProviderConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.lambdaManagedInstancesCapacityProviderConfig = this._lambdaManagedInstancesCapacityProviderConfig?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._lambdaManagedInstancesCapacityProviderConfig.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._lambdaManagedInstancesCapacityProviderConfig.internalValue = value.lambdaManagedInstancesCapacityProviderConfig; } } get lambdaManagedInstancesCapacityProviderConfig() { return this._lambdaManagedInstancesCapacityProviderConfig; } putLambdaManagedInstancesCapacityProviderConfig(value) { this._lambdaManagedInstancesCapacityProviderConfig.internalValue = value; } // Temporarily expose input value. Use with caution. get lambdaManagedInstancesCapacityProviderConfigInput() { return this._lambdaManagedInstancesCapacityProviderConfig.internalValue; } } exports.LambdaFunctionCapacityProviderConfigOutputReference = LambdaFunctionCapacityProviderConfigOutputReference; _b = JSII_RTTI_SYMBOL_1; LambdaFunctionCapacityProviderConfigOutputReference[_b] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionCapacityProviderConfigOutputReference", version: "21.22.1" }; function lambdaFunctionDeadLetterConfigToTerraform(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_arn: cdktf.stringToTerraform(struct.targetArn), }; } function lambdaFunctionDeadLetterConfigToHclTerraform(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_arn: { value: cdktf.stringToHclTerraform(struct.targetArn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionDeadLetterConfigOutputReference 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._targetArn !== undefined) { hasAnyValues = true; internalValueResult.targetArn = this._targetArn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._targetArn = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._targetArn = value.targetArn; } } get targetArn() { return this.getStringAttribute('target_arn'); } set targetArn(value) { this._targetArn = value; } // Temporarily expose input value. Use with caution. get targetArnInput() { return this._targetArn; } } exports.LambdaFunctionDeadLetterConfigOutputReference = LambdaFunctionDeadLetterConfigOutputReference; _c = JSII_RTTI_SYMBOL_1; LambdaFunctionDeadLetterConfigOutputReference[_c] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionDeadLetterConfigOutputReference", version: "21.22.1" }; function lambdaFunctionDurableConfigToTerraform(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 { execution_timeout: cdktf.numberToTerraform(struct.executionTimeout), retention_period: cdktf.numberToTerraform(struct.retentionPeriod), }; } function lambdaFunctionDurableConfigToHclTerraform(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 = { execution_timeout: { value: cdktf.numberToHclTerraform(struct.executionTimeout), isBlock: false, type: "simple", storageClassType: "number", }, retention_period: { value: cdktf.numberToHclTerraform(struct.retentionPeriod), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionDurableConfigOutputReference 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._executionTimeout !== undefined) { hasAnyValues = true; internalValueResult.executionTimeout = this._executionTimeout; } if (this._retentionPeriod !== undefined) { hasAnyValues = true; internalValueResult.retentionPeriod = this._retentionPeriod; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._executionTimeout = undefined; this._retentionPeriod = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._executionTimeout = value.executionTimeout; this._retentionPeriod = value.retentionPeriod; } } get executionTimeout() { return this.getNumberAttribute('execution_timeout'); } set executionTimeout(value) { this._executionTimeout = value; } // Temporarily expose input value. Use with caution. get executionTimeoutInput() { return this._executionTimeout; } get retentionPeriod() { return this.getNumberAttribute('retention_period'); } set retentionPeriod(value) { this._retentionPeriod = value; } resetRetentionPeriod() { this._retentionPeriod = undefined; } // Temporarily expose input value. Use with caution. get retentionPeriodInput() { return this._retentionPeriod; } } exports.LambdaFunctionDurableConfigOutputReference = LambdaFunctionDurableConfigOutputReference; _d = JSII_RTTI_SYMBOL_1; LambdaFunctionDurableConfigOutputReference[_d] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionDurableConfigOutputReference", version: "21.22.1" }; function lambdaFunctionEnvironmentToTerraform(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 { variables: cdktf.hashMapper(cdktf.stringToTerraform)(struct.variables), }; } function lambdaFunctionEnvironmentToHclTerraform(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 = { variables: { value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.variables), isBlock: false, type: "map", storageClassType: "stringMap", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionEnvironmentOutputReference 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._variables !== undefined) { hasAnyValues = true; internalValueResult.variables = this._variables; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._variables = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._variables = value.variables; } } get variables() { return this.getStringMapAttribute('variables'); } set variables(value) { this._variables = value; } resetVariables() { this._variables = undefined; } // Temporarily expose input value. Use with caution. get variablesInput() { return this._variables; } } exports.LambdaFunctionEnvironmentOutputReference = LambdaFunctionEnvironmentOutputReference; _e = JSII_RTTI_SYMBOL_1; LambdaFunctionEnvironmentOutputReference[_e] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionEnvironmentOutputReference", version: "21.22.1" }; function lambdaFunctionEphemeralStorageToTerraform(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 { size: cdktf.numberToTerraform(struct.size), }; } function lambdaFunctionEphemeralStorageToHclTerraform(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 = { size: { value: cdktf.numberToHclTerraform(struct.size), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionEphemeralStorageOutputReference 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._size !== undefined) { hasAnyValues = true; internalValueResult.size = this._size; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._size = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._size = value.size; } } get size() { return this.getNumberAttribute('size'); } set size(value) { this._size = value; } resetSize() { this._size = undefined; } // Temporarily expose input value. Use with caution. get sizeInput() { return this._size; } } exports.LambdaFunctionEphemeralStorageOutputReference = LambdaFunctionEphemeralStorageOutputReference; _f = JSII_RTTI_SYMBOL_1; LambdaFunctionEphemeralStorageOutputReference[_f] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionEphemeralStorageOutputReference", version: "21.22.1" }; function lambdaFunctionFileSystemConfigToTerraform(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 { arn: cdktf.stringToTerraform(struct.arn), local_mount_path: cdktf.stringToTerraform(struct.localMountPath), }; } function lambdaFunctionFileSystemConfigToHclTerraform(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 = { arn: { value: cdktf.stringToHclTerraform(struct.arn), isBlock: false, type: "simple", storageClassType: "string", }, local_mount_path: { value: cdktf.stringToHclTerraform(struct.localMountPath), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionFileSystemConfigOutputReference 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._arn !== undefined) { hasAnyValues = true; internalValueResult.arn = this._arn; } if (this._localMountPath !== undefined) { hasAnyValues = true; internalValueResult.localMountPath = this._localMountPath; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._arn = undefined; this._localMountPath = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._arn = value.arn; this._localMountPath = value.localMountPath; } } get arn() { return this.getStringAttribute('arn'); } set arn(value) { this._arn = value; } // Temporarily expose input value. Use with caution. get arnInput() { return this._arn; } get localMountPath() { return this.getStringAttribute('local_mount_path'); } set localMountPath(value) { this._localMountPath = value; } // Temporarily expose input value. Use with caution. get localMountPathInput() { return this._localMountPath; } } exports.LambdaFunctionFileSystemConfigOutputReference = LambdaFunctionFileSystemConfigOutputReference; _g = JSII_RTTI_SYMBOL_1; LambdaFunctionFileSystemConfigOutputReference[_g] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionFileSystemConfigOutputReference", version: "21.22.1" }; function lambdaFunctionImageConfigToTerraform(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 { command: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.command), entry_point: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.entryPoint), working_directory: cdktf.stringToTerraform(struct.workingDirectory), }; } function lambdaFunctionImageConfigToHclTerraform(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 = { command: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.command), isBlock: false, type: "list", storageClassType: "stringList", }, entry_point: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.entryPoint), isBlock: false, type: "list", storageClassType: "stringList", }, working_directory: { value: cdktf.stringToHclTerraform(struct.workingDirectory), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionImageConfigOutputReference 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._command !== undefined) { hasAnyValues = true; internalValueResult.command = this._command; } if (this._entryPoint !== undefined) { hasAnyValues = true; internalValueResult.entryPoint = this._entryPoint; } if (this._workingDirectory !== undefined) { hasAnyValues = true; internalValueResult.workingDirectory = this._workingDirectory; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._command = undefined; this._entryPoint = undefined; this._workingDirectory = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._command = value.command; this._entryPoint = value.entryPoint; this._workingDirectory = value.workingDirectory; } } get command() { return this.getListAttribute('command'); } set command(value) { this._command = value; } resetCommand() { this._command = undefined; } // Temporarily expose input value. Use with caution. get commandInput() { return this._command; } get entryPoint() { return this.getListAttribute('entry_point'); } set entryPoint(value) { this._entryPoint = value; } resetEntryPoint() { this._entryPoint = undefined; } // Temporarily expose input value. Use with caution. get entryPointInput() { return this._entryPoint; } get workingDirectory() { return this.getStringAttribute('working_directory'); } set workingDirectory(value) { this._workingDirectory = value; } resetWorkingDirectory() { this._workingDirectory = undefined; } // Temporarily expose input value. Use with caution. get workingDirectoryInput() { return this._workingDirectory; } } exports.LambdaFunctionImageConfigOutputReference = LambdaFunctionImageConfigOutputReference; _h = JSII_RTTI_SYMBOL_1; LambdaFunctionImageConfigOutputReference[_h] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionImageConfigOutputReference", version: "21.22.1" }; function lambdaFunctionLoggingConfigToTerraform(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 { application_log_level: cdktf.stringToTerraform(struct.applicationLogLevel), log_format: cdktf.stringToTerraform(struct.logFormat), log_group: cdktf.stringToTerraform(struct.logGroup), system_log_level: cdktf.stringToTerraform(struct.systemLogLevel), }; } function lambdaFunctionLoggingConfigToHclTerraform(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 = { application_log_level: { value: cdktf.stringToHclTerraform(struct.applicationLogLevel), isBlock: false, type: "simple", storageClassType: "string", }, log_format: { value: cdktf.stringToHclTerraform(struct.logFormat), isBlock: false, type: "simple", storageClassType: "string", }, log_group: { value: cdktf.stringToHclTerraform(struct.logGroup), isBlock: false, type: "simple", storageClassType: "string", }, system_log_level: { value: cdktf.stringToHclTerraform(struct.systemLogLevel), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionLoggingConfigOutputReference 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._applicationLogLevel !== undefined) { hasAnyValues = true; internalValueResult.applicationLogLevel = this._applicationLogLevel; } if (this._logFormat !== undefined) { hasAnyValues = true; internalValueResult.logFormat = this._logFormat; } if (this._logGroup !== undefined) { hasAnyValues = true; internalValueResult.logGroup = this._logGroup; } if (this._systemLogLevel !== undefined) { hasAnyValues = true; internalValueResult.systemLogLevel = this._systemLogLevel; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._applicationLogLevel = undefined; this._logFormat = undefined; this._logGroup = undefined; this._systemLogLevel = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._applicationLogLevel = value.applicationLogLevel; this._logFormat = value.logFormat; this._logGroup = value.logGroup; this._systemLogLevel = value.systemLogLevel; } } get applicationLogLevel() { return this.getStringAttribute('application_log_level'); } set applicationLogLevel(value) { this._applicationLogLevel = value; } resetApplicationLogLevel() { this._applicationLogLevel = undefined; } // Temporarily expose input value. Use with caution. get applicationLogLevelInput() { return this._applicationLogLevel; } get logFormat() { return this.getStringAttribute('log_format'); } set logFormat(value) { this._logFormat = value; } // Temporarily expose input value. Use with caution. get logFormatInput() { return this._logFormat; } get logGroup() { return this.getStringAttribute('log_group'); } set logGroup(value) { this._logGroup = value; } resetLogGroup() { this._logGroup = undefined; } // Temporarily expose input value. Use with caution. get logGroupInput() { return this._logGroup; } get systemLogLevel() { return this.getStringAttribute('system_log_level'); } set systemLogLevel(value) { this._systemLogLevel = value; } resetSystemLogLevel() { this._systemLogLevel = undefined; } // Temporarily expose input value. Use with caution. get systemLogLevelInput() { return this._systemLogLevel; } } exports.LambdaFunctionLoggingConfigOutputReference = LambdaFunctionLoggingConfigOutputReference; _j = JSII_RTTI_SYMBOL_1; LambdaFunctionLoggingConfigOutputReference[_j] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionLoggingConfigOutputReference", version: "21.22.1" }; function lambdaFunctionSnapStartToTerraform(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 { apply_on: cdktf.stringToTerraform(struct.applyOn), }; } function lambdaFunctionSnapStartToHclTerraform(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 = { apply_on: { value: cdktf.stringToHclTerraform(struct.applyOn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionSnapStartOutputReference 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._applyOn !== undefined) { hasAnyValues = true; internalValueResult.applyOn = this._applyOn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._applyOn = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._applyOn = value.applyOn; } } get applyOn() { return this.getStringAttribute('apply_on'); } set applyOn(value) { this._applyOn = value; } // Temporarily expose input value. Use with caution. get applyOnInput() { return this._applyOn; } // optimization_status - computed: true, optional: false, required: false get optimizationStatus() { return this.getStringAttribute('optimization_status'); } } exports.LambdaFunctionSnapStartOutputReference = LambdaFunctionSnapStartOutputReference; _k = JSII_RTTI_SYMBOL_1; LambdaFunctionSnapStartOutputReference[_k] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionSnapStartOutputReference", version: "21.22.1" }; function lambdaFunctionTenancyConfigToTerraform(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 { tenant_isolation_mode: cdktf.stringToTerraform(struct.tenantIsolationMode), }; } function lambdaFunctionTenancyConfigToHclTerraform(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 = { tenant_isolation_mode: { value: cdktf.stringToHclTerraform(struct.tenantIsolationMode), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionTenancyConfigOutputReference 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._tenantIsolationMode !== undefined) { hasAnyValues = true; internalValueResult.tenantIsolationMode = this._tenantIsolationMode; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._tenantIsolationMode = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._tenantIsolationMode = value.tenantIsolationMode; } } get tenantIsolationMode() { return this.getStringAttribute('tenant_isolation_mode'); } set tenantIsolationMode(value) { this._tenantIsolationMode = value; } // Temporarily expose input value. Use with caution. get tenantIsolationModeInput() { return this._tenantIsolationMode; } } exports.LambdaFunctionTenancyConfigOutputReference = LambdaFunctionTenancyConfigOutputReference; _l = JSII_RTTI_SYMBOL_1; LambdaFunctionTenancyConfigOutputReference[_l] = { fqn: "@cdktf/provider-aws.lambdaFunction.LambdaFunctionTenancyConfigOutputReference", version: "21.22.1" }; function lambdaFunctionTimeoutsToTerraform(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 { create: cdktf.stringToTerraform(struct.create), delete: cdktf.stringToTerraform(struct.delete), update: cdktf.stringToTerraform(struct.update), }; } function lambdaFunctionTimeoutsToHclTerraform(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 = { create: { value: cdktf.stringToHclTerraform(struct.create), isBlock: false, type: "simple", storageClassType: "string", }, delete: { value: cdktf.stringToHclTerraform(struct.delete), isBlock: false, type: "simple", storageClassType: "string", }, update: { value: cdktf.stringToHclTerraform(struct.update), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class LambdaFunctionTimeoutsOutputReference 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); this.isEmptyObject = false; } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._create !== undefined) { hasAnyValues = true; internalValueResult.create = this._create; } if (this._delete !== undefined) { hasAnyValues = true; internalValueResult.delete = this._delete; } if (this._update !== undefined) { hasAnyValues = true; internalValueResult.update = this._update; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._create = undefined; this._delete = undefined; this._update = 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._create = value.create; this._delete = value.delete; this._update = value.update; } } get create() { return this.getStringAttribute('create'); } set create(value) { this._create = value; } resetCreate() { this._create = undefined; } // Temporarily expose input value. Use with caution. get createInput() { return this._create; } get delete() { return this.getStringAttribute('delete'); } set delete(value) { this._delete = value; } resetDelete() { this._delete = undefined; } // Temporarily expose input value. Use with caution. get deleteInput() { return this._delete; } get update() { return this.getStringAttribute('update'); } set update(value) { this._update = value; } resetUpdate() { this._update = undefined; } // Temporarily expose input value. Use