UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

929 lines 195 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p; Object.defineProperty(exports, "__esModule", { value: true }); exports.DataAwsCloudwatchLogDataProtectionPolicyDocument = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementList = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3OutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationOutputReference = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierList = exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierOutputReference = void 0; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3ToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3ToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3ToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3ToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationToHclTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementToTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementToTerraform; exports.dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementToHclTerraform = dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierToTerraform(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), regex: cdktf.stringToTerraform(struct.regex), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierToHclTerraform(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", }, regex: { value: cdktf.stringToHclTerraform(struct.regex), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierOutputReference 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._regex !== undefined) { hasAnyValues = true; internalValueResult.regex = this._regex; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._name = undefined; this._regex = 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._regex = value.regex; } } 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 regex() { return this.getStringAttribute('regex'); } set regex(value) { this._regex = value; } // Temporarily expose input value. Use with caution. get regexInput() { return this._regex; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierOutputReference; _a = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierOutputReference[_a] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierOutputReference", version: "21.22.1" }; class DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierList 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 DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierList = DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierList; _b = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierList[_b] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierList", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationToTerraform(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 { custom_data_identifier: cdktf.listMapper(dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierToTerraform, true)(struct.customDataIdentifier), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationToHclTerraform(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 = { custom_data_identifier: { value: cdktf.listMapperHcl(dataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierToHclTerraform, true)(struct.customDataIdentifier), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationOutputReference 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; // custom_data_identifier - computed: false, optional: true, required: false this._customDataIdentifier = new DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationCustomDataIdentifierList(this, "custom_data_identifier", false); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._customDataIdentifier?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.customDataIdentifier = this._customDataIdentifier?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._customDataIdentifier.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._customDataIdentifier.internalValue = value.customDataIdentifier; } } get customDataIdentifier() { return this._customDataIdentifier; } putCustomDataIdentifier(value) { this._customDataIdentifier.internalValue = value; } resetCustomDataIdentifier() { this._customDataIdentifier.internalValue = undefined; } // Temporarily expose input value. Use with caution. get customDataIdentifierInput() { return this._customDataIdentifier.internalValue; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationOutputReference; _c = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationOutputReference[_c] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentConfigurationOutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsToTerraform(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 { log_group: cdktf.stringToTerraform(struct.logGroup), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsToHclTerraform(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 = { log_group: { value: cdktf.stringToHclTerraform(struct.logGroup), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsOutputReference 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._logGroup !== undefined) { hasAnyValues = true; internalValueResult.logGroup = this._logGroup; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._logGroup = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._logGroup = value.logGroup; } } get logGroup() { return this.getStringAttribute('log_group'); } set logGroup(value) { this._logGroup = value; } // Temporarily expose input value. Use with caution. get logGroupInput() { return this._logGroup; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsOutputReference; _d = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsOutputReference[_d] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsOutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseToTerraform(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 { delivery_stream: cdktf.stringToTerraform(struct.deliveryStream), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseToHclTerraform(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 = { delivery_stream: { value: cdktf.stringToHclTerraform(struct.deliveryStream), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseOutputReference 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._deliveryStream !== undefined) { hasAnyValues = true; internalValueResult.deliveryStream = this._deliveryStream; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._deliveryStream = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._deliveryStream = value.deliveryStream; } } get deliveryStream() { return this.getStringAttribute('delivery_stream'); } set deliveryStream(value) { this._deliveryStream = value; } // Temporarily expose input value. Use with caution. get deliveryStreamInput() { return this._deliveryStream; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseOutputReference; _e = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseOutputReference[_e] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseOutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3ToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { bucket: cdktf.stringToTerraform(struct.bucket), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3ToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { bucket: { value: cdktf.stringToHclTerraform(struct.bucket), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3OutputReference 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._bucket !== undefined) { hasAnyValues = true; internalValueResult.bucket = this._bucket; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._bucket = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._bucket = value.bucket; } } get bucket() { return this.getStringAttribute('bucket'); } set bucket(value) { this._bucket = value; } // Temporarily expose input value. Use with caution. get bucketInput() { return this._bucket; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3OutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3OutputReference; _f = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3OutputReference[_f] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3OutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { cloudwatch_logs: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsToTerraform(struct.cloudwatchLogs), firehose: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseToTerraform(struct.firehose), s3: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3ToTerraform(struct.s3), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { cloudwatch_logs: { value: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsToHclTerraform(struct.cloudwatchLogs), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsList", }, firehose: { value: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseToHclTerraform(struct.firehose), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseList", }, s3: { value: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3ToHclTerraform(struct.s3), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3List", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); this.isEmptyObject = false; // cloudwatch_logs - computed: false, optional: true, required: false this._cloudwatchLogs = new DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationCloudwatchLogsOutputReference(this, "cloudwatch_logs"); // firehose - computed: false, optional: true, required: false this._firehose = new DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationFirehoseOutputReference(this, "firehose"); // s3 - computed: false, optional: true, required: false this._s3 = new DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationS3OutputReference(this, "s3"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._cloudwatchLogs?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.cloudwatchLogs = this._cloudwatchLogs?.internalValue; } if (this._firehose?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.firehose = this._firehose?.internalValue; } if (this._s3?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.s3 = this._s3?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._cloudwatchLogs.internalValue = undefined; this._firehose.internalValue = undefined; this._s3.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._cloudwatchLogs.internalValue = value.cloudwatchLogs; this._firehose.internalValue = value.firehose; this._s3.internalValue = value.s3; } } get cloudwatchLogs() { return this._cloudwatchLogs; } putCloudwatchLogs(value) { this._cloudwatchLogs.internalValue = value; } resetCloudwatchLogs() { this._cloudwatchLogs.internalValue = undefined; } // Temporarily expose input value. Use with caution. get cloudwatchLogsInput() { return this._cloudwatchLogs.internalValue; } get firehose() { return this._firehose; } putFirehose(value) { this._firehose.internalValue = value; } resetFirehose() { this._firehose.internalValue = undefined; } // Temporarily expose input value. Use with caution. get firehoseInput() { return this._firehose.internalValue; } get s3() { return this._s3; } putS3(value) { this._s3.internalValue = value; } resetS3() { this._s3.internalValue = undefined; } // Temporarily expose input value. Use with caution. get s3Input() { return this._s3.internalValue; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationOutputReference; _g = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationOutputReference[_g] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationOutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditToTerraform(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 { findings_destination: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationToTerraform(struct.findingsDestination), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditToHclTerraform(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 = { findings_destination: { value: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationToHclTerraform(struct.findingsDestination), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditOutputReference 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; // findings_destination - computed: false, optional: false, required: true this._findingsDestination = new DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditFindingsDestinationOutputReference(this, "findings_destination"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._findingsDestination?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.findingsDestination = this._findingsDestination?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._findingsDestination.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._findingsDestination.internalValue = value.findingsDestination; } } get findingsDestination() { return this._findingsDestination; } putFindingsDestination(value) { this._findingsDestination.internalValue = value; } // Temporarily expose input value. Use with caution. get findingsDestinationInput() { return this._findingsDestination.internalValue; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditOutputReference; _h = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditOutputReference[_h] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditOutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigToTerraform(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 {}; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigToHclTerraform(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 = {}; return attrs; } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigOutputReference 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 = {}; return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; } else { this.isEmptyObject = Object.keys(value).length === 0; } } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigOutputReference; _j = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigOutputReference[_j] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigOutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyToTerraform(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 { mask_config: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigToTerraform(struct.maskConfig), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyToHclTerraform(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 = { mask_config: { value: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigToHclTerraform(struct.maskConfig), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyOutputReference 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; // mask_config - computed: false, optional: false, required: true this._maskConfig = new DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyMaskConfigOutputReference(this, "mask_config"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._maskConfig?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.maskConfig = this._maskConfig?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._maskConfig.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._maskConfig.internalValue = value.maskConfig; } } get maskConfig() { return this._maskConfig; } putMaskConfig(value) { this._maskConfig.internalValue = value; } // Temporarily expose input value. Use with caution. get maskConfigInput() { return this._maskConfig.internalValue; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyOutputReference; _k = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyOutputReference[_k] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyOutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationToTerraform(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 { audit: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditToTerraform(struct.audit), deidentify: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyToTerraform(struct.deidentify), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationToHclTerraform(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 = { audit: { value: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditToHclTerraform(struct.audit), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditList", }, deidentify: { value: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyToHclTerraform(struct.deidentify), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationOutputReference 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; // audit - computed: false, optional: true, required: false this._audit = new DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationAuditOutputReference(this, "audit"); // deidentify - computed: false, optional: true, required: false this._deidentify = new DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationDeidentifyOutputReference(this, "deidentify"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._audit?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.audit = this._audit?.internalValue; } if (this._deidentify?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.deidentify = this._deidentify?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._audit.internalValue = undefined; this._deidentify.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._audit.internalValue = value.audit; this._deidentify.internalValue = value.deidentify; } } get audit() { return this._audit; } putAudit(value) { this._audit.internalValue = value; } resetAudit() { this._audit.internalValue = undefined; } // Temporarily expose input value. Use with caution. get auditInput() { return this._audit.internalValue; } get deidentify() { return this._deidentify; } putDeidentify(value) { this._deidentify.internalValue = value; } resetDeidentify() { this._deidentify.internalValue = undefined; } // Temporarily expose input value. Use with caution. get deidentifyInput() { return this._deidentify.internalValue; } } exports.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationOutputReference = DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationOutputReference; _l = JSII_RTTI_SYMBOL_1; DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationOutputReference[_l] = { fqn: "@cdktf/provider-aws.dataAwsCloudwatchLogDataProtectionPolicyDocument.DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationOutputReference", version: "21.22.1" }; function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementToTerraform(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 { data_identifiers: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.dataIdentifiers), sid: cdktf.stringToTerraform(struct.sid), operation: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationToTerraform(struct.operation), }; } function dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementToHclTerraform(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 = { data_identifiers: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.dataIdentifiers), isBlock: false, type: "set", storageClassType: "stringList", }, sid: { value: cdktf.stringToHclTerraform(struct.sid), isBlock: false, type: "simple", storageClassType: "string", }, operation: { value: dataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationToHclTerraform(struct.operation), isBlock: true, type: "list", storageClassType: "DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOutputReference 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; // operation - computed: false, optional: false, required: true this._operation = new DataAwsCloudwatchLogDataProtectionPolicyDocumentStatementOperationOutputReference(this, "operation"); } get internalValue() { if (this.resolvableVa