UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

1,028 lines (1,027 loc) 584 kB
"use strict"; var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6; Object.defineProperty(exports, "__esModule", { value: true }); exports.OpensearchDomain = exports.OpensearchDomainVpcOptionsOutputReference = exports.OpensearchDomainTimeoutsOutputReference = exports.OpensearchDomainSoftwareUpdateOptionsOutputReference = exports.OpensearchDomainSnapshotOptionsOutputReference = exports.OpensearchDomainOffPeakWindowOptionsOutputReference = exports.OpensearchDomainOffPeakWindowOptionsOffPeakWindowOutputReference = exports.OpensearchDomainOffPeakWindowOptionsOffPeakWindowWindowStartTimeOutputReference = exports.OpensearchDomainNodeToNodeEncryptionOutputReference = exports.OpensearchDomainLogPublishingOptionsList = exports.OpensearchDomainLogPublishingOptionsOutputReference = exports.OpensearchDomainIdentityCenterOptionsOutputReference = exports.OpensearchDomainEncryptAtRestOutputReference = exports.OpensearchDomainEbsOptionsOutputReference = exports.OpensearchDomainDomainEndpointOptionsOutputReference = exports.OpensearchDomainCognitoOptionsOutputReference = exports.OpensearchDomainClusterConfigOutputReference = exports.OpensearchDomainClusterConfigZoneAwarenessConfigOutputReference = exports.OpensearchDomainClusterConfigNodeOptionsList = exports.OpensearchDomainClusterConfigNodeOptionsOutputReference = exports.OpensearchDomainClusterConfigNodeOptionsNodeConfigOutputReference = exports.OpensearchDomainClusterConfigColdStorageOptionsOutputReference = exports.OpensearchDomainAutoTuneOptionsOutputReference = exports.OpensearchDomainAutoTuneOptionsMaintenanceScheduleList = exports.OpensearchDomainAutoTuneOptionsMaintenanceScheduleOutputReference = exports.OpensearchDomainAutoTuneOptionsMaintenanceScheduleDurationOutputReference = exports.OpensearchDomainAimlOptionsOutputReference = exports.OpensearchDomainAimlOptionsS3VectorsEngineOutputReference = exports.OpensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsOutputReference = exports.OpensearchDomainAdvancedSecurityOptionsOutputReference = exports.OpensearchDomainAdvancedSecurityOptionsMasterUserOptionsOutputReference = void 0; exports.opensearchDomainAdvancedSecurityOptionsMasterUserOptionsToTerraform = opensearchDomainAdvancedSecurityOptionsMasterUserOptionsToTerraform; exports.opensearchDomainAdvancedSecurityOptionsMasterUserOptionsToHclTerraform = opensearchDomainAdvancedSecurityOptionsMasterUserOptionsToHclTerraform; exports.opensearchDomainAdvancedSecurityOptionsToTerraform = opensearchDomainAdvancedSecurityOptionsToTerraform; exports.opensearchDomainAdvancedSecurityOptionsToHclTerraform = opensearchDomainAdvancedSecurityOptionsToHclTerraform; exports.opensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsToTerraform = opensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsToTerraform; exports.opensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsToHclTerraform = opensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsToHclTerraform; exports.opensearchDomainAimlOptionsS3VectorsEngineToTerraform = opensearchDomainAimlOptionsS3VectorsEngineToTerraform; exports.opensearchDomainAimlOptionsS3VectorsEngineToHclTerraform = opensearchDomainAimlOptionsS3VectorsEngineToHclTerraform; exports.opensearchDomainAimlOptionsToTerraform = opensearchDomainAimlOptionsToTerraform; exports.opensearchDomainAimlOptionsToHclTerraform = opensearchDomainAimlOptionsToHclTerraform; exports.opensearchDomainAutoTuneOptionsMaintenanceScheduleDurationToTerraform = opensearchDomainAutoTuneOptionsMaintenanceScheduleDurationToTerraform; exports.opensearchDomainAutoTuneOptionsMaintenanceScheduleDurationToHclTerraform = opensearchDomainAutoTuneOptionsMaintenanceScheduleDurationToHclTerraform; exports.opensearchDomainAutoTuneOptionsMaintenanceScheduleToTerraform = opensearchDomainAutoTuneOptionsMaintenanceScheduleToTerraform; exports.opensearchDomainAutoTuneOptionsMaintenanceScheduleToHclTerraform = opensearchDomainAutoTuneOptionsMaintenanceScheduleToHclTerraform; exports.opensearchDomainAutoTuneOptionsToTerraform = opensearchDomainAutoTuneOptionsToTerraform; exports.opensearchDomainAutoTuneOptionsToHclTerraform = opensearchDomainAutoTuneOptionsToHclTerraform; exports.opensearchDomainClusterConfigColdStorageOptionsToTerraform = opensearchDomainClusterConfigColdStorageOptionsToTerraform; exports.opensearchDomainClusterConfigColdStorageOptionsToHclTerraform = opensearchDomainClusterConfigColdStorageOptionsToHclTerraform; exports.opensearchDomainClusterConfigNodeOptionsNodeConfigToTerraform = opensearchDomainClusterConfigNodeOptionsNodeConfigToTerraform; exports.opensearchDomainClusterConfigNodeOptionsNodeConfigToHclTerraform = opensearchDomainClusterConfigNodeOptionsNodeConfigToHclTerraform; exports.opensearchDomainClusterConfigNodeOptionsToTerraform = opensearchDomainClusterConfigNodeOptionsToTerraform; exports.opensearchDomainClusterConfigNodeOptionsToHclTerraform = opensearchDomainClusterConfigNodeOptionsToHclTerraform; exports.opensearchDomainClusterConfigZoneAwarenessConfigToTerraform = opensearchDomainClusterConfigZoneAwarenessConfigToTerraform; exports.opensearchDomainClusterConfigZoneAwarenessConfigToHclTerraform = opensearchDomainClusterConfigZoneAwarenessConfigToHclTerraform; exports.opensearchDomainClusterConfigToTerraform = opensearchDomainClusterConfigToTerraform; exports.opensearchDomainClusterConfigToHclTerraform = opensearchDomainClusterConfigToHclTerraform; exports.opensearchDomainCognitoOptionsToTerraform = opensearchDomainCognitoOptionsToTerraform; exports.opensearchDomainCognitoOptionsToHclTerraform = opensearchDomainCognitoOptionsToHclTerraform; exports.opensearchDomainDomainEndpointOptionsToTerraform = opensearchDomainDomainEndpointOptionsToTerraform; exports.opensearchDomainDomainEndpointOptionsToHclTerraform = opensearchDomainDomainEndpointOptionsToHclTerraform; exports.opensearchDomainEbsOptionsToTerraform = opensearchDomainEbsOptionsToTerraform; exports.opensearchDomainEbsOptionsToHclTerraform = opensearchDomainEbsOptionsToHclTerraform; exports.opensearchDomainEncryptAtRestToTerraform = opensearchDomainEncryptAtRestToTerraform; exports.opensearchDomainEncryptAtRestToHclTerraform = opensearchDomainEncryptAtRestToHclTerraform; exports.opensearchDomainIdentityCenterOptionsToTerraform = opensearchDomainIdentityCenterOptionsToTerraform; exports.opensearchDomainIdentityCenterOptionsToHclTerraform = opensearchDomainIdentityCenterOptionsToHclTerraform; exports.opensearchDomainLogPublishingOptionsToTerraform = opensearchDomainLogPublishingOptionsToTerraform; exports.opensearchDomainLogPublishingOptionsToHclTerraform = opensearchDomainLogPublishingOptionsToHclTerraform; exports.opensearchDomainNodeToNodeEncryptionToTerraform = opensearchDomainNodeToNodeEncryptionToTerraform; exports.opensearchDomainNodeToNodeEncryptionToHclTerraform = opensearchDomainNodeToNodeEncryptionToHclTerraform; exports.opensearchDomainOffPeakWindowOptionsOffPeakWindowWindowStartTimeToTerraform = opensearchDomainOffPeakWindowOptionsOffPeakWindowWindowStartTimeToTerraform; exports.opensearchDomainOffPeakWindowOptionsOffPeakWindowWindowStartTimeToHclTerraform = opensearchDomainOffPeakWindowOptionsOffPeakWindowWindowStartTimeToHclTerraform; exports.opensearchDomainOffPeakWindowOptionsOffPeakWindowToTerraform = opensearchDomainOffPeakWindowOptionsOffPeakWindowToTerraform; exports.opensearchDomainOffPeakWindowOptionsOffPeakWindowToHclTerraform = opensearchDomainOffPeakWindowOptionsOffPeakWindowToHclTerraform; exports.opensearchDomainOffPeakWindowOptionsToTerraform = opensearchDomainOffPeakWindowOptionsToTerraform; exports.opensearchDomainOffPeakWindowOptionsToHclTerraform = opensearchDomainOffPeakWindowOptionsToHclTerraform; exports.opensearchDomainSnapshotOptionsToTerraform = opensearchDomainSnapshotOptionsToTerraform; exports.opensearchDomainSnapshotOptionsToHclTerraform = opensearchDomainSnapshotOptionsToHclTerraform; exports.opensearchDomainSoftwareUpdateOptionsToTerraform = opensearchDomainSoftwareUpdateOptionsToTerraform; exports.opensearchDomainSoftwareUpdateOptionsToHclTerraform = opensearchDomainSoftwareUpdateOptionsToHclTerraform; exports.opensearchDomainTimeoutsToTerraform = opensearchDomainTimeoutsToTerraform; exports.opensearchDomainTimeoutsToHclTerraform = opensearchDomainTimeoutsToHclTerraform; exports.opensearchDomainVpcOptionsToTerraform = opensearchDomainVpcOptionsToTerraform; exports.opensearchDomainVpcOptionsToHclTerraform = opensearchDomainVpcOptionsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function opensearchDomainAdvancedSecurityOptionsMasterUserOptionsToTerraform(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 { master_user_arn: cdktf.stringToTerraform(struct.masterUserArn), master_user_name: cdktf.stringToTerraform(struct.masterUserName), master_user_password: cdktf.stringToTerraform(struct.masterUserPassword), }; } function opensearchDomainAdvancedSecurityOptionsMasterUserOptionsToHclTerraform(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 = { master_user_arn: { value: cdktf.stringToHclTerraform(struct.masterUserArn), isBlock: false, type: "simple", storageClassType: "string", }, master_user_name: { value: cdktf.stringToHclTerraform(struct.masterUserName), isBlock: false, type: "simple", storageClassType: "string", }, master_user_password: { value: cdktf.stringToHclTerraform(struct.masterUserPassword), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainAdvancedSecurityOptionsMasterUserOptionsOutputReference 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._masterUserArn !== undefined) { hasAnyValues = true; internalValueResult.masterUserArn = this._masterUserArn; } if (this._masterUserName !== undefined) { hasAnyValues = true; internalValueResult.masterUserName = this._masterUserName; } if (this._masterUserPassword !== undefined) { hasAnyValues = true; internalValueResult.masterUserPassword = this._masterUserPassword; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._masterUserArn = undefined; this._masterUserName = undefined; this._masterUserPassword = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._masterUserArn = value.masterUserArn; this._masterUserName = value.masterUserName; this._masterUserPassword = value.masterUserPassword; } } get masterUserArn() { return this.getStringAttribute('master_user_arn'); } set masterUserArn(value) { this._masterUserArn = value; } resetMasterUserArn() { this._masterUserArn = undefined; } // Temporarily expose input value. Use with caution. get masterUserArnInput() { return this._masterUserArn; } get masterUserName() { return this.getStringAttribute('master_user_name'); } set masterUserName(value) { this._masterUserName = value; } resetMasterUserName() { this._masterUserName = undefined; } // Temporarily expose input value. Use with caution. get masterUserNameInput() { return this._masterUserName; } get masterUserPassword() { return this.getStringAttribute('master_user_password'); } set masterUserPassword(value) { this._masterUserPassword = value; } resetMasterUserPassword() { this._masterUserPassword = undefined; } // Temporarily expose input value. Use with caution. get masterUserPasswordInput() { return this._masterUserPassword; } } exports.OpensearchDomainAdvancedSecurityOptionsMasterUserOptionsOutputReference = OpensearchDomainAdvancedSecurityOptionsMasterUserOptionsOutputReference; _a = JSII_RTTI_SYMBOL_1; OpensearchDomainAdvancedSecurityOptionsMasterUserOptionsOutputReference[_a] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAdvancedSecurityOptionsMasterUserOptionsOutputReference", version: "21.22.1" }; function opensearchDomainAdvancedSecurityOptionsToTerraform(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 { anonymous_auth_enabled: cdktf.booleanToTerraform(struct.anonymousAuthEnabled), enabled: cdktf.booleanToTerraform(struct.enabled), internal_user_database_enabled: cdktf.booleanToTerraform(struct.internalUserDatabaseEnabled), master_user_options: opensearchDomainAdvancedSecurityOptionsMasterUserOptionsToTerraform(struct.masterUserOptions), }; } function opensearchDomainAdvancedSecurityOptionsToHclTerraform(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 = { anonymous_auth_enabled: { value: cdktf.booleanToHclTerraform(struct.anonymousAuthEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, internal_user_database_enabled: { value: cdktf.booleanToHclTerraform(struct.internalUserDatabaseEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, master_user_options: { value: opensearchDomainAdvancedSecurityOptionsMasterUserOptionsToHclTerraform(struct.masterUserOptions), isBlock: true, type: "list", storageClassType: "OpensearchDomainAdvancedSecurityOptionsMasterUserOptionsList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainAdvancedSecurityOptionsOutputReference 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; // master_user_options - computed: false, optional: true, required: false this._masterUserOptions = new OpensearchDomainAdvancedSecurityOptionsMasterUserOptionsOutputReference(this, "master_user_options"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._anonymousAuthEnabled !== undefined) { hasAnyValues = true; internalValueResult.anonymousAuthEnabled = this._anonymousAuthEnabled; } if (this._enabled !== undefined) { hasAnyValues = true; internalValueResult.enabled = this._enabled; } if (this._internalUserDatabaseEnabled !== undefined) { hasAnyValues = true; internalValueResult.internalUserDatabaseEnabled = this._internalUserDatabaseEnabled; } if (this._masterUserOptions?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.masterUserOptions = this._masterUserOptions?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._anonymousAuthEnabled = undefined; this._enabled = undefined; this._internalUserDatabaseEnabled = undefined; this._masterUserOptions.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._anonymousAuthEnabled = value.anonymousAuthEnabled; this._enabled = value.enabled; this._internalUserDatabaseEnabled = value.internalUserDatabaseEnabled; this._masterUserOptions.internalValue = value.masterUserOptions; } } get anonymousAuthEnabled() { return this.getBooleanAttribute('anonymous_auth_enabled'); } set anonymousAuthEnabled(value) { this._anonymousAuthEnabled = value; } resetAnonymousAuthEnabled() { this._anonymousAuthEnabled = undefined; } // Temporarily expose input value. Use with caution. get anonymousAuthEnabledInput() { return this._anonymousAuthEnabled; } get enabled() { return this.getBooleanAttribute('enabled'); } set enabled(value) { this._enabled = value; } // Temporarily expose input value. Use with caution. get enabledInput() { return this._enabled; } get internalUserDatabaseEnabled() { return this.getBooleanAttribute('internal_user_database_enabled'); } set internalUserDatabaseEnabled(value) { this._internalUserDatabaseEnabled = value; } resetInternalUserDatabaseEnabled() { this._internalUserDatabaseEnabled = undefined; } // Temporarily expose input value. Use with caution. get internalUserDatabaseEnabledInput() { return this._internalUserDatabaseEnabled; } get masterUserOptions() { return this._masterUserOptions; } putMasterUserOptions(value) { this._masterUserOptions.internalValue = value; } resetMasterUserOptions() { this._masterUserOptions.internalValue = undefined; } // Temporarily expose input value. Use with caution. get masterUserOptionsInput() { return this._masterUserOptions.internalValue; } } exports.OpensearchDomainAdvancedSecurityOptionsOutputReference = OpensearchDomainAdvancedSecurityOptionsOutputReference; _b = JSII_RTTI_SYMBOL_1; OpensearchDomainAdvancedSecurityOptionsOutputReference[_b] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAdvancedSecurityOptionsOutputReference", version: "21.22.1" }; function opensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsToTerraform(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 { desired_state: cdktf.stringToTerraform(struct.desiredState), }; } function opensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsToHclTerraform(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 = { desired_state: { value: cdktf.stringToHclTerraform(struct.desiredState), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsOutputReference 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._desiredState !== undefined) { hasAnyValues = true; internalValueResult.desiredState = this._desiredState; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._desiredState = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._desiredState = value.desiredState; } } get desiredState() { return this.getStringAttribute('desired_state'); } set desiredState(value) { this._desiredState = value; } resetDesiredState() { this._desiredState = undefined; } // Temporarily expose input value. Use with caution. get desiredStateInput() { return this._desiredState; } } exports.OpensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsOutputReference = OpensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsOutputReference; _c = JSII_RTTI_SYMBOL_1; OpensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsOutputReference[_c] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsOutputReference", version: "21.22.1" }; function opensearchDomainAimlOptionsS3VectorsEngineToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { enabled: cdktf.booleanToTerraform(struct.enabled), }; } function opensearchDomainAimlOptionsS3VectorsEngineToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainAimlOptionsS3VectorsEngineOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource, terraformAttribute) { super(terraformResource, terraformAttribute, false, 0); this.isEmptyObject = false; } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._enabled !== undefined) { hasAnyValues = true; internalValueResult.enabled = this._enabled; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._enabled = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._enabled = value.enabled; } } get enabled() { return this.getBooleanAttribute('enabled'); } set enabled(value) { this._enabled = value; } resetEnabled() { this._enabled = undefined; } // Temporarily expose input value. Use with caution. get enabledInput() { return this._enabled; } } exports.OpensearchDomainAimlOptionsS3VectorsEngineOutputReference = OpensearchDomainAimlOptionsS3VectorsEngineOutputReference; _d = JSII_RTTI_SYMBOL_1; OpensearchDomainAimlOptionsS3VectorsEngineOutputReference[_d] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAimlOptionsS3VectorsEngineOutputReference", version: "21.22.1" }; function opensearchDomainAimlOptionsToTerraform(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 { natural_language_query_generation_options: opensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsToTerraform(struct.naturalLanguageQueryGenerationOptions), s3_vectors_engine: opensearchDomainAimlOptionsS3VectorsEngineToTerraform(struct.s3VectorsEngine), }; } function opensearchDomainAimlOptionsToHclTerraform(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 = { natural_language_query_generation_options: { value: opensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsToHclTerraform(struct.naturalLanguageQueryGenerationOptions), isBlock: true, type: "list", storageClassType: "OpensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsList", }, s3_vectors_engine: { value: opensearchDomainAimlOptionsS3VectorsEngineToHclTerraform(struct.s3VectorsEngine), isBlock: true, type: "list", storageClassType: "OpensearchDomainAimlOptionsS3VectorsEngineList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainAimlOptionsOutputReference 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; // natural_language_query_generation_options - computed: false, optional: true, required: false this._naturalLanguageQueryGenerationOptions = new OpensearchDomainAimlOptionsNaturalLanguageQueryGenerationOptionsOutputReference(this, "natural_language_query_generation_options"); // s3_vectors_engine - computed: false, optional: true, required: false this._s3VectorsEngine = new OpensearchDomainAimlOptionsS3VectorsEngineOutputReference(this, "s3_vectors_engine"); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._naturalLanguageQueryGenerationOptions?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.naturalLanguageQueryGenerationOptions = this._naturalLanguageQueryGenerationOptions?.internalValue; } if (this._s3VectorsEngine?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.s3VectorsEngine = this._s3VectorsEngine?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._naturalLanguageQueryGenerationOptions.internalValue = undefined; this._s3VectorsEngine.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._naturalLanguageQueryGenerationOptions.internalValue = value.naturalLanguageQueryGenerationOptions; this._s3VectorsEngine.internalValue = value.s3VectorsEngine; } } get naturalLanguageQueryGenerationOptions() { return this._naturalLanguageQueryGenerationOptions; } putNaturalLanguageQueryGenerationOptions(value) { this._naturalLanguageQueryGenerationOptions.internalValue = value; } resetNaturalLanguageQueryGenerationOptions() { this._naturalLanguageQueryGenerationOptions.internalValue = undefined; } // Temporarily expose input value. Use with caution. get naturalLanguageQueryGenerationOptionsInput() { return this._naturalLanguageQueryGenerationOptions.internalValue; } get s3VectorsEngine() { return this._s3VectorsEngine; } putS3VectorsEngine(value) { this._s3VectorsEngine.internalValue = value; } resetS3VectorsEngine() { this._s3VectorsEngine.internalValue = undefined; } // Temporarily expose input value. Use with caution. get s3VectorsEngineInput() { return this._s3VectorsEngine.internalValue; } } exports.OpensearchDomainAimlOptionsOutputReference = OpensearchDomainAimlOptionsOutputReference; _e = JSII_RTTI_SYMBOL_1; OpensearchDomainAimlOptionsOutputReference[_e] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAimlOptionsOutputReference", version: "21.22.1" }; function opensearchDomainAutoTuneOptionsMaintenanceScheduleDurationToTerraform(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 { unit: cdktf.stringToTerraform(struct.unit), value: cdktf.numberToTerraform(struct.value), }; } function opensearchDomainAutoTuneOptionsMaintenanceScheduleDurationToHclTerraform(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 = { unit: { value: cdktf.stringToHclTerraform(struct.unit), isBlock: false, type: "simple", storageClassType: "string", }, value: { value: cdktf.numberToHclTerraform(struct.value), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainAutoTuneOptionsMaintenanceScheduleDurationOutputReference 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._unit !== undefined) { hasAnyValues = true; internalValueResult.unit = this._unit; } if (this._value !== undefined) { hasAnyValues = true; internalValueResult.value = this._value; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._unit = undefined; this._value = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._unit = value.unit; this._value = value.value; } } get unit() { return this.getStringAttribute('unit'); } set unit(value) { this._unit = value; } // Temporarily expose input value. Use with caution. get unitInput() { return this._unit; } get value() { return this.getNumberAttribute('value'); } set value(value) { this._value = value; } // Temporarily expose input value. Use with caution. get valueInput() { return this._value; } } exports.OpensearchDomainAutoTuneOptionsMaintenanceScheduleDurationOutputReference = OpensearchDomainAutoTuneOptionsMaintenanceScheduleDurationOutputReference; _f = JSII_RTTI_SYMBOL_1; OpensearchDomainAutoTuneOptionsMaintenanceScheduleDurationOutputReference[_f] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAutoTuneOptionsMaintenanceScheduleDurationOutputReference", version: "21.22.1" }; function opensearchDomainAutoTuneOptionsMaintenanceScheduleToTerraform(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 { cron_expression_for_recurrence: cdktf.stringToTerraform(struct.cronExpressionForRecurrence), start_at: cdktf.stringToTerraform(struct.startAt), duration: opensearchDomainAutoTuneOptionsMaintenanceScheduleDurationToTerraform(struct.duration), }; } function opensearchDomainAutoTuneOptionsMaintenanceScheduleToHclTerraform(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 = { cron_expression_for_recurrence: { value: cdktf.stringToHclTerraform(struct.cronExpressionForRecurrence), isBlock: false, type: "simple", storageClassType: "string", }, start_at: { value: cdktf.stringToHclTerraform(struct.startAt), isBlock: false, type: "simple", storageClassType: "string", }, duration: { value: opensearchDomainAutoTuneOptionsMaintenanceScheduleDurationToHclTerraform(struct.duration), isBlock: true, type: "list", storageClassType: "OpensearchDomainAutoTuneOptionsMaintenanceScheduleDurationList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainAutoTuneOptionsMaintenanceScheduleOutputReference 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; // duration - computed: false, optional: false, required: true this._duration = new OpensearchDomainAutoTuneOptionsMaintenanceScheduleDurationOutputReference(this, "duration"); } get internalValue() { if (this.resolvableValue) { return this.resolvableValue; } let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._cronExpressionForRecurrence !== undefined) { hasAnyValues = true; internalValueResult.cronExpressionForRecurrence = this._cronExpressionForRecurrence; } if (this._startAt !== undefined) { hasAnyValues = true; internalValueResult.startAt = this._startAt; } if (this._duration?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.duration = this._duration?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this.resolvableValue = undefined; this._cronExpressionForRecurrence = undefined; this._startAt = undefined; this._duration.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._cronExpressionForRecurrence = value.cronExpressionForRecurrence; this._startAt = value.startAt; this._duration.internalValue = value.duration; } } get cronExpressionForRecurrence() { return this.getStringAttribute('cron_expression_for_recurrence'); } set cronExpressionForRecurrence(value) { this._cronExpressionForRecurrence = value; } // Temporarily expose input value. Use with caution. get cronExpressionForRecurrenceInput() { return this._cronExpressionForRecurrence; } get startAt() { return this.getStringAttribute('start_at'); } set startAt(value) { this._startAt = value; } // Temporarily expose input value. Use with caution. get startAtInput() { return this._startAt; } get duration() { return this._duration; } putDuration(value) { this._duration.internalValue = value; } // Temporarily expose input value. Use with caution. get durationInput() { return this._duration.internalValue; } } exports.OpensearchDomainAutoTuneOptionsMaintenanceScheduleOutputReference = OpensearchDomainAutoTuneOptionsMaintenanceScheduleOutputReference; _g = JSII_RTTI_SYMBOL_1; OpensearchDomainAutoTuneOptionsMaintenanceScheduleOutputReference[_g] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAutoTuneOptionsMaintenanceScheduleOutputReference", version: "21.22.1" }; class OpensearchDomainAutoTuneOptionsMaintenanceScheduleList 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 OpensearchDomainAutoTuneOptionsMaintenanceScheduleOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.OpensearchDomainAutoTuneOptionsMaintenanceScheduleList = OpensearchDomainAutoTuneOptionsMaintenanceScheduleList; _h = JSII_RTTI_SYMBOL_1; OpensearchDomainAutoTuneOptionsMaintenanceScheduleList[_h] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAutoTuneOptionsMaintenanceScheduleList", version: "21.22.1" }; function opensearchDomainAutoTuneOptionsToTerraform(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 { desired_state: cdktf.stringToTerraform(struct.desiredState), rollback_on_disable: cdktf.stringToTerraform(struct.rollbackOnDisable), use_off_peak_window: cdktf.booleanToTerraform(struct.useOffPeakWindow), maintenance_schedule: cdktf.listMapper(opensearchDomainAutoTuneOptionsMaintenanceScheduleToTerraform, true)(struct.maintenanceSchedule), }; } function opensearchDomainAutoTuneOptionsToHclTerraform(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 = { desired_state: { value: cdktf.stringToHclTerraform(struct.desiredState), isBlock: false, type: "simple", storageClassType: "string", }, rollback_on_disable: { value: cdktf.stringToHclTerraform(struct.rollbackOnDisable), isBlock: false, type: "simple", storageClassType: "string", }, use_off_peak_window: { value: cdktf.booleanToHclTerraform(struct.useOffPeakWindow), isBlock: false, type: "simple", storageClassType: "boolean", }, maintenance_schedule: { value: cdktf.listMapperHcl(opensearchDomainAutoTuneOptionsMaintenanceScheduleToHclTerraform, true)(struct.maintenanceSchedule), isBlock: true, type: "set", storageClassType: "OpensearchDomainAutoTuneOptionsMaintenanceScheduleList", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainAutoTuneOptionsOutputReference 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; // maintenance_schedule - computed: false, optional: true, required: false this._maintenanceSchedule = new OpensearchDomainAutoTuneOptionsMaintenanceScheduleList(this, "maintenance_schedule", true); } get internalValue() { let hasAnyValues = this.isEmptyObject; const internalValueResult = {}; if (this._desiredState !== undefined) { hasAnyValues = true; internalValueResult.desiredState = this._desiredState; } if (this._rollbackOnDisable !== undefined) { hasAnyValues = true; internalValueResult.rollbackOnDisable = this._rollbackOnDisable; } if (this._useOffPeakWindow !== undefined) { hasAnyValues = true; internalValueResult.useOffPeakWindow = this._useOffPeakWindow; } if (this._maintenanceSchedule?.internalValue !== undefined) { hasAnyValues = true; internalValueResult.maintenanceSchedule = this._maintenanceSchedule?.internalValue; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._desiredState = undefined; this._rollbackOnDisable = undefined; this._useOffPeakWindow = undefined; this._maintenanceSchedule.internalValue = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._desiredState = value.desiredState; this._rollbackOnDisable = value.rollbackOnDisable; this._useOffPeakWindow = value.useOffPeakWindow; this._maintenanceSchedule.internalValue = value.maintenanceSchedule; } } get desiredState() { return this.getStringAttribute('desired_state'); } set desiredState(value) { this._desiredState = value; } // Temporarily expose input value. Use with caution. get desiredStateInput() { return this._desiredState; } get rollbackOnDisable() { return this.getStringAttribute('rollback_on_disable'); } set rollbackOnDisable(value) { this._rollbackOnDisable = value; } resetRollbackOnDisable() { this._rollbackOnDisable = undefined; } // Temporarily expose input value. Use with caution. get rollbackOnDisableInput() { return this._rollbackOnDisable; } get useOffPeakWindow() { return this.getBooleanAttribute('use_off_peak_window'); } set useOffPeakWindow(value) { this._useOffPeakWindow = value; } resetUseOffPeakWindow() { this._useOffPeakWindow = undefined; } // Temporarily expose input value. Use with caution. get useOffPeakWindowInput() { return this._useOffPeakWindow; } get maintenanceSchedule() { return this._maintenanceSchedule; } putMaintenanceSchedule(value) { this._maintenanceSchedule.internalValue = value; } resetMaintenanceSchedule() { this._maintenanceSchedule.internalValue = undefined; } // Temporarily expose input value. Use with caution. get maintenanceScheduleInput() { return this._maintenanceSchedule.internalValue; } } exports.OpensearchDomainAutoTuneOptionsOutputReference = OpensearchDomainAutoTuneOptionsOutputReference; _j = JSII_RTTI_SYMBOL_1; OpensearchDomainAutoTuneOptionsOutputReference[_j] = { fqn: "@cdktf/provider-aws.opensearchDomain.OpensearchDomainAutoTuneOptionsOutputReference", version: "21.22.1" }; function opensearchDomainClusterConfigColdStorageOptionsToTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } return { enabled: cdktf.booleanToTerraform(struct.enabled), }; } function opensearchDomainClusterConfigColdStorageOptionsToHclTerraform(struct) { if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) { return struct; } if (cdktf.isComplexElement(struct)) { throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration"); } const attrs = { enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class OpensearchDomainClusterConfigColdStorageOptionsOutputReference 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 = {};