UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

894 lines 212 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r; Object.defineProperty(exports, "__esModule", { value: true }); exports.ObservabilityadminCentralizationRuleForOrganization = exports.ObservabilityadminCentralizationRuleForOrganizationTimeoutsOutputReference = exports.ObservabilityadminCentralizationRuleForOrganizationRuleList = exports.ObservabilityadminCentralizationRuleForOrganizationRuleOutputReference = exports.ObservabilityadminCentralizationRuleForOrganizationRuleSourceList = exports.ObservabilityadminCentralizationRuleForOrganizationRuleSourceOutputReference = exports.ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationList = exports.ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationOutputReference = exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationList = exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationOutputReference = exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationList = exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationOutputReference = exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationList = exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationOutputReference = exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationList = exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationOutputReference = void 0; exports.observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationToTerraform = observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationToTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationToHclTerraform = observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationToHclTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationToTerraform = observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationToTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationToHclTerraform = observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationToHclTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationToTerraform = observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationToTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationToHclTerraform = observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationToHclTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleDestinationToTerraform = observabilityadminCentralizationRuleForOrganizationRuleDestinationToTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleDestinationToHclTerraform = observabilityadminCentralizationRuleForOrganizationRuleDestinationToHclTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationToTerraform = observabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationToTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationToHclTerraform = observabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationToHclTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleSourceToTerraform = observabilityadminCentralizationRuleForOrganizationRuleSourceToTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleSourceToHclTerraform = observabilityadminCentralizationRuleForOrganizationRuleSourceToHclTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleToTerraform = observabilityadminCentralizationRuleForOrganizationRuleToTerraform; exports.observabilityadminCentralizationRuleForOrganizationRuleToHclTerraform = observabilityadminCentralizationRuleForOrganizationRuleToHclTerraform; exports.observabilityadminCentralizationRuleForOrganizationTimeoutsToTerraform = observabilityadminCentralizationRuleForOrganizationTimeoutsToTerraform; exports.observabilityadminCentralizationRuleForOrganizationTimeoutsToHclTerraform = observabilityadminCentralizationRuleForOrganizationTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationToTerraform(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), region: cdktf.stringToTerraform(struct.region), }; } function observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationToHclTerraform(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", }, region: { value: cdktf.stringToHclTerraform(struct.region), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationOutputReference 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._kmsKeyArn !== undefined) { hasAnyValues = true; internalValueResult.kmsKeyArn = this._kmsKeyArn; } if (this._region !== undefined) { hasAnyValues = true; internalValueResult.region = this._region; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._kmsKeyArn = undefined; this._region = 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._region = value.region; } } 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 region() { return this.getStringAttribute('region'); } set region(value) { this._region = value; } resetRegion() { this._region = undefined; } // Temporarily expose input value. Use with caution. get regionInput() { return this._region; } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationOutputReference = ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationOutputReference; _a = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationOutputReference[_a] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationOutputReference", version: "21.22.1" }; class ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationList 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 ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationList = ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationList; _b = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationList[_b] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationList", version: "21.22.1" }; function observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationToTerraform(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 { encryption_conflict_resolution_strategy: cdktf.stringToTerraform(struct.encryptionConflictResolutionStrategy), encryption_strategy: cdktf.stringToTerraform(struct.encryptionStrategy), kms_key_arn: cdktf.stringToTerraform(struct.kmsKeyArn), }; } function observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationToHclTerraform(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 = { encryption_conflict_resolution_strategy: { value: cdktf.stringToHclTerraform(struct.encryptionConflictResolutionStrategy), isBlock: false, type: "simple", storageClassType: "string", }, encryption_strategy: { value: cdktf.stringToHclTerraform(struct.encryptionStrategy), isBlock: false, type: "simple", storageClassType: "string", }, kms_key_arn: { value: cdktf.stringToHclTerraform(struct.kmsKeyArn), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationOutputReference 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._encryptionConflictResolutionStrategy !== undefined) { hasAnyValues = true; internalValueResult.encryptionConflictResolutionStrategy = this._encryptionConflictResolutionStrategy; } if (this._encryptionStrategy !== undefined) { hasAnyValues = true; internalValueResult.encryptionStrategy = this._encryptionStrategy; } if (this._kmsKeyArn !== undefined) { hasAnyValues = true; internalValueResult.kmsKeyArn = this._kmsKeyArn; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._encryptionConflictResolutionStrategy = undefined; this._encryptionStrategy = undefined; this._kmsKeyArn = 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._encryptionConflictResolutionStrategy = value.encryptionConflictResolutionStrategy; this._encryptionStrategy = value.encryptionStrategy; this._kmsKeyArn = value.kmsKeyArn; } } get encryptionConflictResolutionStrategy() { return this.getStringAttribute('encryption_conflict_resolution_strategy'); } set encryptionConflictResolutionStrategy(value) { this._encryptionConflictResolutionStrategy = value; } resetEncryptionConflictResolutionStrategy() { this._encryptionConflictResolutionStrategy = undefined; } // Temporarily expose input value. Use with caution. get encryptionConflictResolutionStrategyInput() { return this._encryptionConflictResolutionStrategy; } get encryptionStrategy() { return this.getStringAttribute('encryption_strategy'); } set encryptionStrategy(value) { this._encryptionStrategy = value; } // Temporarily expose input value. Use with caution. get encryptionStrategyInput() { return this._encryptionStrategy; } 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; } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationOutputReference = ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationOutputReference; _c = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationOutputReference[_c] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationOutputReference", version: "21.22.1" }; class ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationList 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 ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationList = ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationList; _d = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationList[_d] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationList", version: "21.22.1" }; function observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationToTerraform(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 { backup_configuration: cdktf.listMapper(observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationToTerraform, true)(struct.backupConfiguration), logs_encryption_configuration: cdktf.listMapper(observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationToTerraform, true)(struct.logsEncryptionConfiguration), }; } function observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationToHclTerraform(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 = { backup_configuration: { value: cdktf.listMapperHcl(observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationToHclTerraform, true)(struct.backupConfiguration), isBlock: true, type: "list", storageClassType: "ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationList", }, logs_encryption_configuration: { value: cdktf.listMapperHcl(observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationToHclTerraform, true)(struct.logsEncryptionConfiguration), isBlock: true, type: "list", storageClassType: "ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationOutputReference 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; // backup_configuration - computed: false, optional: true, required: false this._backupConfiguration = new ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationBackupConfigurationList(this, "backup_configuration", false); // logs_encryption_configuration - computed: false, optional: true, required: false this._logsEncryptionConfiguration = new ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationLogsEncryptionConfigurationList(this, "logs_encryption_configuration", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._backupConfiguration?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.backupConfiguration = this._backupConfiguration?.internalValue; } if (this._logsEncryptionConfiguration?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.logsEncryptionConfiguration = this._logsEncryptionConfiguration?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._backupConfiguration.internalValue = undefined; this._logsEncryptionConfiguration.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._backupConfiguration.internalValue = value.backupConfiguration; this._logsEncryptionConfiguration.internalValue = value.logsEncryptionConfiguration; } } get backupConfiguration() { return this._backupConfiguration; } putBackupConfiguration(value) { this._backupConfiguration.internalValue = value; } resetBackupConfiguration() { this._backupConfiguration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get backupConfigurationInput() { return this._backupConfiguration.internalValue; } get logsEncryptionConfiguration() { return this._logsEncryptionConfiguration; } putLogsEncryptionConfiguration(value) { this._logsEncryptionConfiguration.internalValue = value; } resetLogsEncryptionConfiguration() { this._logsEncryptionConfiguration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get logsEncryptionConfigurationInput() { return this._logsEncryptionConfiguration.internalValue; } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationOutputReference = ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationOutputReference; _e = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationOutputReference[_e] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationOutputReference", version: "21.22.1" }; class ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationList 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 ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationList = ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationList; _f = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationList[_f] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationList", version: "21.22.1" }; function observabilityadminCentralizationRuleForOrganizationRuleDestinationToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { account: cdktf.stringToTerraform(struct.account), region: cdktf.stringToTerraform(struct.region), destination_logs_configuration: cdktf.listMapper(observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationToTerraform, true)(struct.destinationLogsConfiguration), }; } function observabilityadminCentralizationRuleForOrganizationRuleDestinationToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { account: { value: cdktf.stringToHclTerraform(struct.account), isBlock: false, type: "simple", storageClassType: "string", }, region: { value: cdktf.stringToHclTerraform(struct.region), isBlock: false, type: "simple", storageClassType: "string", }, destination_logs_configuration: { value: cdktf.listMapperHcl(observabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationToHclTerraform, true)(struct.destinationLogsConfiguration), isBlock: true, type: "list", storageClassType: "ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ObservabilityadminCentralizationRuleForOrganizationRuleDestinationOutputReference 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; // destination_logs_configuration - computed: false, optional: true, required: false this._destinationLogsConfiguration = new ObservabilityadminCentralizationRuleForOrganizationRuleDestinationDestinationLogsConfigurationList(this, "destination_logs_configuration", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._account !== undefined) { hasAnyValues = true; internalValueResult.account = this._account; } if (this._region !== undefined) { hasAnyValues = true; internalValueResult.region = this._region; } if (this._destinationLogsConfiguration?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.destinationLogsConfiguration = this._destinationLogsConfiguration?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._account = undefined; this._region = undefined; this._destinationLogsConfiguration.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._account = value.account; this._region = value.region; this._destinationLogsConfiguration.internalValue = value.destinationLogsConfiguration; } } get account() { return this.getStringAttribute('account'); } set account(value) { this._account = value; } // Temporarily expose input value. Use with caution. get accountInput() { return this._account; } get region() { return this.getStringAttribute('region'); } set region(value) { this._region = value; } // Temporarily expose input value. Use with caution. get regionInput() { return this._region; } get destinationLogsConfiguration() { return this._destinationLogsConfiguration; } putDestinationLogsConfiguration(value) { this._destinationLogsConfiguration.internalValue = value; } resetDestinationLogsConfiguration() { this._destinationLogsConfiguration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get destinationLogsConfigurationInput() { return this._destinationLogsConfiguration.internalValue; } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationOutputReference = ObservabilityadminCentralizationRuleForOrganizationRuleDestinationOutputReference; _g = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleDestinationOutputReference[_g] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationOutputReference", version: "21.22.1" }; class ObservabilityadminCentralizationRuleForOrganizationRuleDestinationList 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 ObservabilityadminCentralizationRuleForOrganizationRuleDestinationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationList = ObservabilityadminCentralizationRuleForOrganizationRuleDestinationList; _h = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleDestinationList[_h] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleDestinationList", version: "21.22.1" }; function observabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationToTerraform(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 { encrypted_log_group_strategy: cdktf.stringToTerraform(struct.encryptedLogGroupStrategy), log_group_selection_criteria: cdktf.stringToTerraform(struct.logGroupSelectionCriteria), }; } function observabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationToHclTerraform(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 = { encrypted_log_group_strategy: { value: cdktf.stringToHclTerraform(struct.encryptedLogGroupStrategy), isBlock: false, type: "simple", storageClassType: "string", }, log_group_selection_criteria: { value: cdktf.stringToHclTerraform(struct.logGroupSelectionCriteria), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationOutputReference 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._encryptedLogGroupStrategy !== undefined) { hasAnyValues = true; internalValueResult.encryptedLogGroupStrategy = this._encryptedLogGroupStrategy; } if (this._logGroupSelectionCriteria !== undefined) { hasAnyValues = true; internalValueResult.logGroupSelectionCriteria = this._logGroupSelectionCriteria; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._encryptedLogGroupStrategy = undefined; this._logGroupSelectionCriteria = 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._encryptedLogGroupStrategy = value.encryptedLogGroupStrategy; this._logGroupSelectionCriteria = value.logGroupSelectionCriteria; } } get encryptedLogGroupStrategy() { return this.getStringAttribute('encrypted_log_group_strategy'); } set encryptedLogGroupStrategy(value) { this._encryptedLogGroupStrategy = value; } // Temporarily expose input value. Use with caution. get encryptedLogGroupStrategyInput() { return this._encryptedLogGroupStrategy; } get logGroupSelectionCriteria() { return this.getStringAttribute('log_group_selection_criteria'); } set logGroupSelectionCriteria(value) { this._logGroupSelectionCriteria = value; } // Temporarily expose input value. Use with caution. get logGroupSelectionCriteriaInput() { return this._logGroupSelectionCriteria; } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationOutputReference = ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationOutputReference; _j = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationOutputReference[_j] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationOutputReference", version: "21.22.1" }; class ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationList 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 ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationList = ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationList; _k = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationList[_k] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationList", version: "21.22.1" }; function observabilityadminCentralizationRuleForOrganizationRuleSourceToTerraform(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 { regions: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.regions), scope: cdktf.stringToTerraform(struct.scope), source_logs_configuration: cdktf.listMapper(observabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationToTerraform, true)(struct.sourceLogsConfiguration), }; } function observabilityadminCentralizationRuleForOrganizationRuleSourceToHclTerraform(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 = { regions: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.regions), isBlock: false, type: "set", storageClassType: "stringList", }, scope: { value: cdktf.stringToHclTerraform(struct.scope), isBlock: false, type: "simple", storageClassType: "string", }, source_logs_configuration: { value: cdktf.listMapperHcl(observabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationToHclTerraform, true)(struct.sourceLogsConfiguration), isBlock: true, type: "list", storageClassType: "ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class ObservabilityadminCentralizationRuleForOrganizationRuleSourceOutputReference 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; // source_logs_configuration - computed: false, optional: true, required: false this._sourceLogsConfiguration = new ObservabilityadminCentralizationRuleForOrganizationRuleSourceSourceLogsConfigurationList(this, "source_logs_configuration", false); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._regions !== undefined) { hasAnyValues = true; internalValueResult.regions = this._regions; } if (this._scope !== undefined) { hasAnyValues = true; internalValueResult.scope = this._scope; } if (this._sourceLogsConfiguration?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.sourceLogsConfiguration = this._sourceLogsConfiguration?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._regions = undefined; this._scope = undefined; this._sourceLogsConfiguration.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._regions = value.regions; this._scope = value.scope; this._sourceLogsConfiguration.internalValue = value.sourceLogsConfiguration; } } get regions() { return cdktf.Fn.tolist(this.getListAttribute('regions')); } set regions(value) { this._regions = value; } // Temporarily expose input value. Use with caution. get regionsInput() { return this._regions; } get scope() { return this.getStringAttribute('scope'); } set scope(value) { this._scope = value; } // Temporarily expose input value. Use with caution. get scopeInput() { return this._scope; } get sourceLogsConfiguration() { return this._sourceLogsConfiguration; } putSourceLogsConfiguration(value) { this._sourceLogsConfiguration.internalValue = value; } resetSourceLogsConfiguration() { this._sourceLogsConfiguration.internalValue = undefined; } // Temporarily expose input value. Use with caution. get sourceLogsConfigurationInput() { return this._sourceLogsConfiguration.internalValue; } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleSourceOutputReference = ObservabilityadminCentralizationRuleForOrganizationRuleSourceOutputReference; _l = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleSourceOutputReference[_l] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleSourceOutputReference", version: "21.22.1" }; class ObservabilityadminCentralizationRuleForOrganizationRuleSourceList 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 ObservabilityadminCentralizationRuleForOrganizationRuleSourceOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.ObservabilityadminCentralizationRuleForOrganizationRuleSourceList = ObservabilityadminCentralizationRuleForOrganizationRuleSourceList; _m = JSII_RTTI_SYMBOL_1; ObservabilityadminCentralizationRuleForOrganizationRuleSourceList[_m] = { fqn: "@cdktf/provider-aws.observabilityadminCentralizationRuleForOrganization.ObservabilityadminCentralizationRuleForOrganizationRuleSourceList", version: "21.22.1" }; function observabilityadminCentralizationRuleForOrganizationRuleToTerraform(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 { destination: cdktf.listMapper(observabilityadminCentralizationRuleForOrgan