UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,120 lines 204 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.S3TablesTable = exports.S3TablesTableMetadataList = exports.S3TablesTableMetadataOutputReference = exports.S3TablesTableMetadataIcebergList = exports.S3TablesTableMetadataIcebergOutputReference = exports.S3TablesTableMetadataIcebergSchemaList = exports.S3TablesTableMetadataIcebergSchemaOutputReference = exports.S3TablesTableMetadataIcebergSchemaFieldList = exports.S3TablesTableMetadataIcebergSchemaFieldOutputReference = exports.S3TablesTableMaintenanceConfigurationOutputReference = exports.S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementOutputReference = exports.S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsOutputReference = exports.S3TablesTableMaintenanceConfigurationIcebergCompactionOutputReference = exports.S3TablesTableMaintenanceConfigurationIcebergCompactionSettingsOutputReference = exports.S3TablesTableEncryptionConfigurationOutputReference = void 0; exports.s3TablesTableEncryptionConfigurationToTerraform = s3TablesTableEncryptionConfigurationToTerraform; exports.s3TablesTableEncryptionConfigurationToHclTerraform = s3TablesTableEncryptionConfigurationToHclTerraform; exports.s3TablesTableMaintenanceConfigurationIcebergCompactionSettingsToTerraform = s3TablesTableMaintenanceConfigurationIcebergCompactionSettingsToTerraform; exports.s3TablesTableMaintenanceConfigurationIcebergCompactionSettingsToHclTerraform = s3TablesTableMaintenanceConfigurationIcebergCompactionSettingsToHclTerraform; exports.s3TablesTableMaintenanceConfigurationIcebergCompactionToTerraform = s3TablesTableMaintenanceConfigurationIcebergCompactionToTerraform; exports.s3TablesTableMaintenanceConfigurationIcebergCompactionToHclTerraform = s3TablesTableMaintenanceConfigurationIcebergCompactionToHclTerraform; exports.s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsToTerraform = s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsToTerraform; exports.s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsToHclTerraform = s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsToHclTerraform; exports.s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementToTerraform = s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementToTerraform; exports.s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementToHclTerraform = s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementToHclTerraform; exports.s3TablesTableMaintenanceConfigurationToTerraform = s3TablesTableMaintenanceConfigurationToTerraform; exports.s3TablesTableMaintenanceConfigurationToHclTerraform = s3TablesTableMaintenanceConfigurationToHclTerraform; exports.s3TablesTableMetadataIcebergSchemaFieldToTerraform = s3TablesTableMetadataIcebergSchemaFieldToTerraform; exports.s3TablesTableMetadataIcebergSchemaFieldToHclTerraform = s3TablesTableMetadataIcebergSchemaFieldToHclTerraform; exports.s3TablesTableMetadataIcebergSchemaToTerraform = s3TablesTableMetadataIcebergSchemaToTerraform; exports.s3TablesTableMetadataIcebergSchemaToHclTerraform = s3TablesTableMetadataIcebergSchemaToHclTerraform; exports.s3TablesTableMetadataIcebergToTerraform = s3TablesTableMetadataIcebergToTerraform; exports.s3TablesTableMetadataIcebergToHclTerraform = s3TablesTableMetadataIcebergToHclTerraform; exports.s3TablesTableMetadataToTerraform = s3TablesTableMetadataToTerraform; exports.s3TablesTableMetadataToHclTerraform = s3TablesTableMetadataToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function s3TablesTableEncryptionConfigurationToTerraform(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 { kms_key_arn: cdktf.stringToTerraform(struct.kmsKeyArn), sse_algorithm: cdktf.stringToTerraform(struct.sseAlgorithm), }; } function s3TablesTableEncryptionConfigurationToHclTerraform(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 = { kms_key_arn: { value: cdktf.stringToHclTerraform(struct.kmsKeyArn), isBlock: false, type: "simple", storageClassType: "string", }, sse_algorithm: { value: cdktf.stringToHclTerraform(struct.sseAlgorithm), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableEncryptionConfigurationOutputReference 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._kmsKeyArn !== undefined) { hasAnyValues = true; internalValueResult.kmsKeyArn = this._kmsKeyArn; } if (this._sseAlgorithm !== undefined) { hasAnyValues = true; internalValueResult.sseAlgorithm = this._sseAlgorithm; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._kmsKeyArn = undefined; this._sseAlgorithm = 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._kmsKeyArn = value.kmsKeyArn; this._sseAlgorithm = value.sseAlgorithm; } } get kmsKeyArn() { return this.getStringAttribute('kms_key_arn'); } set kmsKeyArn(value) { this._kmsKeyArn = value; } resetKmsKeyArn() { this._kmsKeyArn = undefined; } // Temporarily expose input value. Use with caution. get kmsKeyArnInput() { return this._kmsKeyArn; } get sseAlgorithm() { return this.getStringAttribute('sse_algorithm'); } set sseAlgorithm(value) { this._sseAlgorithm = value; } resetSseAlgorithm() { this._sseAlgorithm = undefined; } // Temporarily expose input value. Use with caution. get sseAlgorithmInput() { return this._sseAlgorithm; } } exports.S3TablesTableEncryptionConfigurationOutputReference = S3TablesTableEncryptionConfigurationOutputReference; _a = JSII_RTTI_SYMBOL_1; S3TablesTableEncryptionConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableEncryptionConfigurationOutputReference", version: "21.22.1" }; function s3TablesTableMaintenanceConfigurationIcebergCompactionSettingsToTerraform(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_file_size_mb: cdktf.numberToTerraform(struct.targetFileSizeMb), }; } function s3TablesTableMaintenanceConfigurationIcebergCompactionSettingsToHclTerraform(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_file_size_mb: { value: cdktf.numberToHclTerraform(struct.targetFileSizeMb), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMaintenanceConfigurationIcebergCompactionSettingsOutputReference 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._targetFileSizeMb !== undefined) { hasAnyValues = true; internalValueResult.targetFileSizeMb = this._targetFileSizeMb; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._targetFileSizeMb = 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._targetFileSizeMb = value.targetFileSizeMb; } } get targetFileSizeMb() { return this.getNumberAttribute('target_file_size_mb'); } set targetFileSizeMb(value) { this._targetFileSizeMb = value; } resetTargetFileSizeMb() { this._targetFileSizeMb = undefined; } // Temporarily expose input value. Use with caution. get targetFileSizeMbInput() { return this._targetFileSizeMb; } } exports.S3TablesTableMaintenanceConfigurationIcebergCompactionSettingsOutputReference = S3TablesTableMaintenanceConfigurationIcebergCompactionSettingsOutputReference; _b = JSII_RTTI_SYMBOL_1; S3TablesTableMaintenanceConfigurationIcebergCompactionSettingsOutputReference[_b] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMaintenanceConfigurationIcebergCompactionSettingsOutputReference", version: "21.22.1" }; function s3TablesTableMaintenanceConfigurationIcebergCompactionToTerraform(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 { settings: s3TablesTableMaintenanceConfigurationIcebergCompactionSettingsToTerraform(struct.settings), status: cdktf.stringToTerraform(struct.status), }; } function s3TablesTableMaintenanceConfigurationIcebergCompactionToHclTerraform(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 = { settings: { value: s3TablesTableMaintenanceConfigurationIcebergCompactionSettingsToHclTerraform(struct.settings), isBlock: true, type: "struct", storageClassType: "S3TablesTableMaintenanceConfigurationIcebergCompactionSettings", }, status: { value: cdktf.stringToHclTerraform(struct.status), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMaintenanceConfigurationIcebergCompactionOutputReference 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; // settings - computed: true, optional: true, required: false this._settings = new S3TablesTableMaintenanceConfigurationIcebergCompactionSettingsOutputReference(this, "settings"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._settings?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.settings = this._settings?.internalValue; } if (this._status !== undefined) { hasAnyValues = true; internalValueResult.status = this._status; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._settings.internalValue = undefined; this._status = 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._settings.internalValue = value.settings; this._status = value.status; } } get settings() { return this._settings; } putSettings(value) { this._settings.internalValue = value; } resetSettings() { this._settings.internalValue = undefined; } // Temporarily expose input value. Use with caution. get settingsInput() { return this._settings.internalValue; } get status() { return this.getStringAttribute('status'); } set status(value) { this._status = value; } resetStatus() { this._status = undefined; } // Temporarily expose input value. Use with caution. get statusInput() { return this._status; } } exports.S3TablesTableMaintenanceConfigurationIcebergCompactionOutputReference = S3TablesTableMaintenanceConfigurationIcebergCompactionOutputReference; _c = JSII_RTTI_SYMBOL_1; S3TablesTableMaintenanceConfigurationIcebergCompactionOutputReference[_c] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMaintenanceConfigurationIcebergCompactionOutputReference", version: "21.22.1" }; function s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsToTerraform(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 { max_snapshot_age_hours: cdktf.numberToTerraform(struct.maxSnapshotAgeHours), min_snapshots_to_keep: cdktf.numberToTerraform(struct.minSnapshotsToKeep), }; } function s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsToHclTerraform(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 = { max_snapshot_age_hours: { value: cdktf.numberToHclTerraform(struct.maxSnapshotAgeHours), isBlock: false, type: "simple", storageClassType: "number", }, min_snapshots_to_keep: { value: cdktf.numberToHclTerraform(struct.minSnapshotsToKeep), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsOutputReference 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._maxSnapshotAgeHours !== undefined) { hasAnyValues = true; internalValueResult.maxSnapshotAgeHours = this._maxSnapshotAgeHours; } if (this._minSnapshotsToKeep !== undefined) { hasAnyValues = true; internalValueResult.minSnapshotsToKeep = this._minSnapshotsToKeep; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._maxSnapshotAgeHours = undefined; this._minSnapshotsToKeep = 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._maxSnapshotAgeHours = value.maxSnapshotAgeHours; this._minSnapshotsToKeep = value.minSnapshotsToKeep; } } get maxSnapshotAgeHours() { return this.getNumberAttribute('max_snapshot_age_hours'); } set maxSnapshotAgeHours(value) { this._maxSnapshotAgeHours = value; } resetMaxSnapshotAgeHours() { this._maxSnapshotAgeHours = undefined; } // Temporarily expose input value. Use with caution. get maxSnapshotAgeHoursInput() { return this._maxSnapshotAgeHours; } get minSnapshotsToKeep() { return this.getNumberAttribute('min_snapshots_to_keep'); } set minSnapshotsToKeep(value) { this._minSnapshotsToKeep = value; } resetMinSnapshotsToKeep() { this._minSnapshotsToKeep = undefined; } // Temporarily expose input value. Use with caution. get minSnapshotsToKeepInput() { return this._minSnapshotsToKeep; } } exports.S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsOutputReference = S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsOutputReference; _d = JSII_RTTI_SYMBOL_1; S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsOutputReference[_d] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsOutputReference", version: "21.22.1" }; function s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementToTerraform(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 { settings: s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsToTerraform(struct.settings), status: cdktf.stringToTerraform(struct.status), }; } function s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementToHclTerraform(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 = { settings: { value: s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsToHclTerraform(struct.settings), isBlock: true, type: "struct", storageClassType: "S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettings", }, status: { value: cdktf.stringToHclTerraform(struct.status), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementOutputReference 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; // settings - computed: true, optional: true, required: false this._settings = new S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementSettingsOutputReference(this, "settings"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._settings?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.settings = this._settings?.internalValue; } if (this._status !== undefined) { hasAnyValues = true; internalValueResult.status = this._status; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._settings.internalValue = undefined; this._status = 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._settings.internalValue = value.settings; this._status = value.status; } } get settings() { return this._settings; } putSettings(value) { this._settings.internalValue = value; } resetSettings() { this._settings.internalValue = undefined; } // Temporarily expose input value. Use with caution. get settingsInput() { return this._settings.internalValue; } get status() { return this.getStringAttribute('status'); } set status(value) { this._status = value; } resetStatus() { this._status = undefined; } // Temporarily expose input value. Use with caution. get statusInput() { return this._status; } } exports.S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementOutputReference = S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementOutputReference; _e = JSII_RTTI_SYMBOL_1; S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementOutputReference[_e] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementOutputReference", version: "21.22.1" }; function s3TablesTableMaintenanceConfigurationToTerraform(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 { iceberg_compaction: s3TablesTableMaintenanceConfigurationIcebergCompactionToTerraform(struct.icebergCompaction), iceberg_snapshot_management: s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementToTerraform(struct.icebergSnapshotManagement), }; } function s3TablesTableMaintenanceConfigurationToHclTerraform(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 = { iceberg_compaction: { value: s3TablesTableMaintenanceConfigurationIcebergCompactionToHclTerraform(struct.icebergCompaction), isBlock: true, type: "struct", storageClassType: "S3TablesTableMaintenanceConfigurationIcebergCompaction", }, iceberg_snapshot_management: { value: s3TablesTableMaintenanceConfigurationIcebergSnapshotManagementToHclTerraform(struct.icebergSnapshotManagement), isBlock: true, type: "struct", storageClassType: "S3TablesTableMaintenanceConfigurationIcebergSnapshotManagement", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMaintenanceConfigurationOutputReference 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; // iceberg_compaction - computed: true, optional: true, required: false this._icebergCompaction = new S3TablesTableMaintenanceConfigurationIcebergCompactionOutputReference(this, "iceberg_compaction"); // iceberg_snapshot_management - computed: true, optional: true, required: false this._icebergSnapshotManagement = new S3TablesTableMaintenanceConfigurationIcebergSnapshotManagementOutputReference(this, "iceberg_snapshot_management"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._icebergCompaction?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.icebergCompaction = this._icebergCompaction?.internalValue; } if (this._icebergSnapshotManagement?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.icebergSnapshotManagement = this._icebergSnapshotManagement?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._icebergCompaction.internalValue = undefined; this._icebergSnapshotManagement.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._icebergCompaction.internalValue = value.icebergCompaction; this._icebergSnapshotManagement.internalValue = value.icebergSnapshotManagement; } } get icebergCompaction() { return this._icebergCompaction; } putIcebergCompaction(value) { this._icebergCompaction.internalValue = value; } resetIcebergCompaction() { this._icebergCompaction.internalValue = undefined; } // Temporarily expose input value. Use with caution. get icebergCompactionInput() { return this._icebergCompaction.internalValue; } get icebergSnapshotManagement() { return this._icebergSnapshotManagement; } putIcebergSnapshotManagement(value) { this._icebergSnapshotManagement.internalValue = value; } resetIcebergSnapshotManagement() { this._icebergSnapshotManagement.internalValue = undefined; } // Temporarily expose input value. Use with caution. get icebergSnapshotManagementInput() { return this._icebergSnapshotManagement.internalValue; } } exports.S3TablesTableMaintenanceConfigurationOutputReference = S3TablesTableMaintenanceConfigurationOutputReference; _f = JSII_RTTI_SYMBOL_1; S3TablesTableMaintenanceConfigurationOutputReference[_f] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMaintenanceConfigurationOutputReference", version: "21.22.1" }; function s3TablesTableMetadataIcebergSchemaFieldToTerraform(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), required: cdktf.booleanToTerraform(struct.required), type: cdktf.stringToTerraform(struct.type), }; } function s3TablesTableMetadataIcebergSchemaFieldToHclTerraform(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", }, required: { value: cdktf.booleanToHclTerraform(struct.required), isBlock: false, type: "simple", storageClassType: "boolean", }, type: { value: cdktf.stringToHclTerraform(struct.type), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMetadataIcebergSchemaFieldOutputReference 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._required !== undefined) { hasAnyValues = true; internalValueResult.required = this._required; } if (this._type !== undefined) { hasAnyValues = true; internalValueResult.type = this._type; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._required = undefined; this._type = 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._required = value.required; this._type = value.type; } } 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 required() { return this.getBooleanAttribute('required'); } set required(value) { this._required = value; } resetRequired() { this._required = undefined; } // Temporarily expose input value. Use with caution. get requiredInput() { return this._required; } get type() { return this.getStringAttribute('type'); } set type(value) { this._type = value; } // Temporarily expose input value. Use with caution. get typeInput() { return this._type; } } exports.S3TablesTableMetadataIcebergSchemaFieldOutputReference = S3TablesTableMetadataIcebergSchemaFieldOutputReference; _g = JSII_RTTI_SYMBOL_1; S3TablesTableMetadataIcebergSchemaFieldOutputReference[_g] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMetadataIcebergSchemaFieldOutputReference", version: "21.22.1" }; class S3TablesTableMetadataIcebergSchemaFieldList 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 S3TablesTableMetadataIcebergSchemaFieldOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.S3TablesTableMetadataIcebergSchemaFieldList = S3TablesTableMetadataIcebergSchemaFieldList; _h = JSII_RTTI_SYMBOL_1; S3TablesTableMetadataIcebergSchemaFieldList[_h] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMetadataIcebergSchemaFieldList", version: "21.22.1" }; function s3TablesTableMetadataIcebergSchemaToTerraform(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 { field: cdktf.listMapper(s3TablesTableMetadataIcebergSchemaFieldToTerraform, true)(struct.field), }; } function s3TablesTableMetadataIcebergSchemaToHclTerraform(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 = { field: { value: cdktf.listMapperHcl(s3TablesTableMetadataIcebergSchemaFieldToHclTerraform, true)(struct.field), isBlock: true, type: "list", storageClassType: "S3TablesTableMetadataIcebergSchemaFieldList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMetadataIcebergSchemaOutputReference 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; // field - computed: false, optional: true, required: false this._field = new S3TablesTableMetadataIcebergSchemaFieldList(this, "field", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._field?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.field = this._field?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._field.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._field.internalValue = value.field; } } get field() { return this._field; } putField(value) { this._field.internalValue = value; } resetField() { this._field.internalValue = undefined; } // Temporarily expose input value. Use with caution. get fieldInput() { return this._field.internalValue; } } exports.S3TablesTableMetadataIcebergSchemaOutputReference = S3TablesTableMetadataIcebergSchemaOutputReference; _j = JSII_RTTI_SYMBOL_1; S3TablesTableMetadataIcebergSchemaOutputReference[_j] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMetadataIcebergSchemaOutputReference", version: "21.22.1" }; class S3TablesTableMetadataIcebergSchemaList 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 S3TablesTableMetadataIcebergSchemaOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.S3TablesTableMetadataIcebergSchemaList = S3TablesTableMetadataIcebergSchemaList; _k = JSII_RTTI_SYMBOL_1; S3TablesTableMetadataIcebergSchemaList[_k] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMetadataIcebergSchemaList", version: "21.22.1" }; function s3TablesTableMetadataIcebergToTerraform(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 { schema: cdktf.listMapper(s3TablesTableMetadataIcebergSchemaToTerraform, true)(struct.schema), }; } function s3TablesTableMetadataIcebergToHclTerraform(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 = { schema: { value: cdktf.listMapperHcl(s3TablesTableMetadataIcebergSchemaToHclTerraform, true)(struct.schema), isBlock: true, type: "list", storageClassType: "S3TablesTableMetadataIcebergSchemaList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMetadataIcebergOutputReference 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; // schema - computed: false, optional: true, required: false this._schema = new S3TablesTableMetadataIcebergSchemaList(this, "schema", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._schema?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.schema = this._schema?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._schema.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._schema.internalValue = value.schema; } } get schema() { return this._schema; } putSchema(value) { this._schema.internalValue = value; } resetSchema() { this._schema.internalValue = undefined; } // Temporarily expose input value. Use with caution. get schemaInput() { return this._schema.internalValue; } } exports.S3TablesTableMetadataIcebergOutputReference = S3TablesTableMetadataIcebergOutputReference; _l = JSII_RTTI_SYMBOL_1; S3TablesTableMetadataIcebergOutputReference[_l] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMetadataIcebergOutputReference", version: "21.22.1" }; class S3TablesTableMetadataIcebergList 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 S3TablesTableMetadataIcebergOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.S3TablesTableMetadataIcebergList = S3TablesTableMetadataIcebergList; _m = JSII_RTTI_SYMBOL_1; S3TablesTableMetadataIcebergList[_m] = { fqn: "@cdktf/provider-aws.s3TablesTable.S3TablesTableMetadataIcebergList", version: "21.22.1" }; function s3TablesTableMetadataToTerraform(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 { iceberg: cdktf.listMapper(s3TablesTableMetadataIcebergToTerraform, true)(struct.iceberg), }; } function s3TablesTableMetadataToHclTerraform(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 = { iceberg: { value: cdktf.listMapperHcl(s3TablesTableMetadataIcebergToHclTerraform, true)(struct.iceberg), isBlock: true, type: "list", storageClassType: "S3TablesTableMetadataIcebergList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class S3TablesTableMetadataOutputReference 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; // iceberg - computed: false, optional: true, required: false this._iceberg = new S3TablesTableMetadataIcebergList(this, "iceberg", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._iceberg?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.iceberg = this._iceberg?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._iceberg.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._iceberg.internalValue = value.iceberg; } } get iceberg() { return this._iceberg; } putIceberg(value) { this._iceberg.internalValue = value; } resetIceberg() { this._iceberg.internalValue = undefined; } // Temporarily expose input value. Use with caution. get icebergInput() { return this._iceberg.internalValue; } } exports.S3TablesTableMetadataOutputReference = S3TablesTableMetadataOutputReference; _o = JSII_RTTI_SYMBOL_1; S3TablesTableMetadataOutputReference[_o] = { fqn: "@c