UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,102 lines 635 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; Object.defineProperty(exports, "__esModule", { value: true }); exports.SqlDatabaseInstanceSettingsIpConfigurationPscConfigList = exports.SqlDatabaseInstanceSettingsIpConfigurationPscConfigOutputReference = exports.sqlDatabaseInstanceSettingsIpConfigurationPscConfigToHclTerraform = exports.sqlDatabaseInstanceSettingsIpConfigurationPscConfigToTerraform = exports.SqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksList = exports.SqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksOutputReference = exports.sqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksToHclTerraform = exports.sqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksToTerraform = exports.SqlDatabaseInstanceSettingsInsightsConfigOutputReference = exports.sqlDatabaseInstanceSettingsInsightsConfigToHclTerraform = exports.sqlDatabaseInstanceSettingsInsightsConfigToTerraform = exports.SqlDatabaseInstanceSettingsDenyMaintenancePeriodOutputReference = exports.sqlDatabaseInstanceSettingsDenyMaintenancePeriodToHclTerraform = exports.sqlDatabaseInstanceSettingsDenyMaintenancePeriodToTerraform = exports.SqlDatabaseInstanceSettingsDatabaseFlagsList = exports.SqlDatabaseInstanceSettingsDatabaseFlagsOutputReference = exports.sqlDatabaseInstanceSettingsDatabaseFlagsToHclTerraform = exports.sqlDatabaseInstanceSettingsDatabaseFlagsToTerraform = exports.SqlDatabaseInstanceSettingsDataCacheConfigOutputReference = exports.sqlDatabaseInstanceSettingsDataCacheConfigToHclTerraform = exports.sqlDatabaseInstanceSettingsDataCacheConfigToTerraform = exports.SqlDatabaseInstanceSettingsBackupConfigurationOutputReference = exports.sqlDatabaseInstanceSettingsBackupConfigurationToHclTerraform = exports.sqlDatabaseInstanceSettingsBackupConfigurationToTerraform = exports.SqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsOutputReference = exports.sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToHclTerraform = exports.sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToTerraform = exports.SqlDatabaseInstanceSettingsAdvancedMachineFeaturesOutputReference = exports.sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToHclTerraform = exports.sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToTerraform = exports.SqlDatabaseInstanceSettingsActiveDirectoryConfigOutputReference = exports.sqlDatabaseInstanceSettingsActiveDirectoryConfigToHclTerraform = exports.sqlDatabaseInstanceSettingsActiveDirectoryConfigToTerraform = exports.SqlDatabaseInstanceRestoreBackupContextOutputReference = exports.sqlDatabaseInstanceRestoreBackupContextToHclTerraform = exports.sqlDatabaseInstanceRestoreBackupContextToTerraform = exports.SqlDatabaseInstanceReplicaConfigurationOutputReference = exports.sqlDatabaseInstanceReplicaConfigurationToHclTerraform = exports.sqlDatabaseInstanceReplicaConfigurationToTerraform = exports.SqlDatabaseInstanceCloneOutputReference = exports.sqlDatabaseInstanceCloneToHclTerraform = exports.sqlDatabaseInstanceCloneToTerraform = exports.SqlDatabaseInstanceServerCaCertList = exports.SqlDatabaseInstanceServerCaCertOutputReference = exports.sqlDatabaseInstanceServerCaCertToHclTerraform = exports.sqlDatabaseInstanceServerCaCertToTerraform = exports.SqlDatabaseInstanceIpAddressList = exports.SqlDatabaseInstanceIpAddressOutputReference = exports.sqlDatabaseInstanceIpAddressToHclTerraform = exports.sqlDatabaseInstanceIpAddressToTerraform = void 0; exports.SqlDatabaseInstance = exports.SqlDatabaseInstanceTimeoutsOutputReference = exports.sqlDatabaseInstanceTimeoutsToHclTerraform = exports.sqlDatabaseInstanceTimeoutsToTerraform = exports.SqlDatabaseInstanceSettingsOutputReference = exports.sqlDatabaseInstanceSettingsToHclTerraform = exports.sqlDatabaseInstanceSettingsToTerraform = exports.SqlDatabaseInstanceSettingsSqlServerAuditConfigOutputReference = exports.sqlDatabaseInstanceSettingsSqlServerAuditConfigToHclTerraform = exports.sqlDatabaseInstanceSettingsSqlServerAuditConfigToTerraform = exports.SqlDatabaseInstanceSettingsPasswordValidationPolicyOutputReference = exports.sqlDatabaseInstanceSettingsPasswordValidationPolicyToHclTerraform = exports.sqlDatabaseInstanceSettingsPasswordValidationPolicyToTerraform = exports.SqlDatabaseInstanceSettingsMaintenanceWindowOutputReference = exports.sqlDatabaseInstanceSettingsMaintenanceWindowToHclTerraform = exports.sqlDatabaseInstanceSettingsMaintenanceWindowToTerraform = exports.SqlDatabaseInstanceSettingsLocationPreferenceOutputReference = exports.sqlDatabaseInstanceSettingsLocationPreferenceToHclTerraform = exports.sqlDatabaseInstanceSettingsLocationPreferenceToTerraform = exports.SqlDatabaseInstanceSettingsIpConfigurationOutputReference = exports.sqlDatabaseInstanceSettingsIpConfigurationToHclTerraform = exports.sqlDatabaseInstanceSettingsIpConfigurationToTerraform = void 0; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function sqlDatabaseInstanceIpAddressToTerraform(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 {}; } exports.sqlDatabaseInstanceIpAddressToTerraform = sqlDatabaseInstanceIpAddressToTerraform; function sqlDatabaseInstanceIpAddressToHclTerraform(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; } exports.sqlDatabaseInstanceIpAddressToHclTerraform = sqlDatabaseInstanceIpAddressToHclTerraform; class SqlDatabaseInstanceIpAddressOutputReference 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() { 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; } } // ip_address - computed: true, optional: false, required: false get ipAddress() { return this.getStringAttribute('ip_address'); } // time_to_retire - computed: true, optional: false, required: false get timeToRetire() { return this.getStringAttribute('time_to_retire'); } // type - computed: true, optional: false, required: false get type() { return this.getStringAttribute('type'); } } exports.SqlDatabaseInstanceIpAddressOutputReference = SqlDatabaseInstanceIpAddressOutputReference; _a = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceIpAddressOutputReference[_a] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceIpAddressOutputReference", version: "14.3.0" }; class SqlDatabaseInstanceIpAddressList 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 SqlDatabaseInstanceIpAddressOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.SqlDatabaseInstanceIpAddressList = SqlDatabaseInstanceIpAddressList; _b = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceIpAddressList[_b] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceIpAddressList", version: "14.3.0" }; function sqlDatabaseInstanceServerCaCertToTerraform(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 {}; } exports.sqlDatabaseInstanceServerCaCertToTerraform = sqlDatabaseInstanceServerCaCertToTerraform; function sqlDatabaseInstanceServerCaCertToHclTerraform(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; } exports.sqlDatabaseInstanceServerCaCertToHclTerraform = sqlDatabaseInstanceServerCaCertToHclTerraform; class SqlDatabaseInstanceServerCaCertOutputReference 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() { 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; } } // cert - computed: true, optional: false, required: false get cert() { return this.getStringAttribute('cert'); } // common_name - computed: true, optional: false, required: false get commonName() { return this.getStringAttribute('common_name'); } // create_time - computed: true, optional: false, required: false get createTime() { return this.getStringAttribute('create_time'); } // expiration_time - computed: true, optional: false, required: false get expirationTime() { return this.getStringAttribute('expiration_time'); } // sha1_fingerprint - computed: true, optional: false, required: false get sha1Fingerprint() { return this.getStringAttribute('sha1_fingerprint'); } } exports.SqlDatabaseInstanceServerCaCertOutputReference = SqlDatabaseInstanceServerCaCertOutputReference; _c = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceServerCaCertOutputReference[_c] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceServerCaCertOutputReference", version: "14.3.0" }; class SqlDatabaseInstanceServerCaCertList 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 SqlDatabaseInstanceServerCaCertOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.SqlDatabaseInstanceServerCaCertList = SqlDatabaseInstanceServerCaCertList; _d = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceServerCaCertList[_d] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceServerCaCertList", version: "14.3.0" }; function sqlDatabaseInstanceCloneToTerraform(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 { allocated_ip_range: cdktf.stringToTerraform(struct.allocatedIpRange), database_names: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.databaseNames), point_in_time: cdktf.stringToTerraform(struct.pointInTime), preferred_zone: cdktf.stringToTerraform(struct.preferredZone), source_instance_name: cdktf.stringToTerraform(struct.sourceInstanceName), }; } exports.sqlDatabaseInstanceCloneToTerraform = sqlDatabaseInstanceCloneToTerraform; function sqlDatabaseInstanceCloneToHclTerraform(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 = { allocated_ip_range: { value: cdktf.stringToHclTerraform(struct.allocatedIpRange), isBlock: false, type: "simple", storageClassType: "string", }, database_names: { value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.databaseNames), isBlock: false, type: "list", storageClassType: "stringList", }, point_in_time: { value: cdktf.stringToHclTerraform(struct.pointInTime), isBlock: false, type: "simple", storageClassType: "string", }, preferred_zone: { value: cdktf.stringToHclTerraform(struct.preferredZone), isBlock: false, type: "simple", storageClassType: "string", }, source_instance_name: { value: cdktf.stringToHclTerraform(struct.sourceInstanceName), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.sqlDatabaseInstanceCloneToHclTerraform = sqlDatabaseInstanceCloneToHclTerraform; class SqlDatabaseInstanceCloneOutputReference 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._allocatedIpRange !== undefined) { hasAnyValues = true; internalValueResult.allocatedIpRange = this._allocatedIpRange; } if (this._databaseNames !== undefined) { hasAnyValues = true; internalValueResult.databaseNames = this._databaseNames; } if (this._pointInTime !== undefined) { hasAnyValues = true; internalValueResult.pointInTime = this._pointInTime; } if (this._preferredZone !== undefined) { hasAnyValues = true; internalValueResult.preferredZone = this._preferredZone; } if (this._sourceInstanceName !== undefined) { hasAnyValues = true; internalValueResult.sourceInstanceName = this._sourceInstanceName; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._allocatedIpRange = undefined; this._databaseNames = undefined; this._pointInTime = undefined; this._preferredZone = undefined; this._sourceInstanceName = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._allocatedIpRange = value.allocatedIpRange; this._databaseNames = value.databaseNames; this._pointInTime = value.pointInTime; this._preferredZone = value.preferredZone; this._sourceInstanceName = value.sourceInstanceName; } } get allocatedIpRange() { return this.getStringAttribute('allocated_ip_range'); } set allocatedIpRange(value) { this._allocatedIpRange = value; } resetAllocatedIpRange() { this._allocatedIpRange = undefined; } // Temporarily expose input value. Use with caution. get allocatedIpRangeInput() { return this._allocatedIpRange; } get databaseNames() { return this.getListAttribute('database_names'); } set databaseNames(value) { this._databaseNames = value; } resetDatabaseNames() { this._databaseNames = undefined; } // Temporarily expose input value. Use with caution. get databaseNamesInput() { return this._databaseNames; } get pointInTime() { return this.getStringAttribute('point_in_time'); } set pointInTime(value) { this._pointInTime = value; } resetPointInTime() { this._pointInTime = undefined; } // Temporarily expose input value. Use with caution. get pointInTimeInput() { return this._pointInTime; } get preferredZone() { return this.getStringAttribute('preferred_zone'); } set preferredZone(value) { this._preferredZone = value; } resetPreferredZone() { this._preferredZone = undefined; } // Temporarily expose input value. Use with caution. get preferredZoneInput() { return this._preferredZone; } get sourceInstanceName() { return this.getStringAttribute('source_instance_name'); } set sourceInstanceName(value) { this._sourceInstanceName = value; } // Temporarily expose input value. Use with caution. get sourceInstanceNameInput() { return this._sourceInstanceName; } } exports.SqlDatabaseInstanceCloneOutputReference = SqlDatabaseInstanceCloneOutputReference; _e = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceCloneOutputReference[_e] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceCloneOutputReference", version: "14.3.0" }; function sqlDatabaseInstanceReplicaConfigurationToTerraform(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 { ca_certificate: cdktf.stringToTerraform(struct.caCertificate), client_certificate: cdktf.stringToTerraform(struct.clientCertificate), client_key: cdktf.stringToTerraform(struct.clientKey), connect_retry_interval: cdktf.numberToTerraform(struct.connectRetryInterval), dump_file_path: cdktf.stringToTerraform(struct.dumpFilePath), failover_target: cdktf.booleanToTerraform(struct.failoverTarget), master_heartbeat_period: cdktf.numberToTerraform(struct.masterHeartbeatPeriod), password: cdktf.stringToTerraform(struct.password), ssl_cipher: cdktf.stringToTerraform(struct.sslCipher), username: cdktf.stringToTerraform(struct.username), verify_server_certificate: cdktf.booleanToTerraform(struct.verifyServerCertificate), }; } exports.sqlDatabaseInstanceReplicaConfigurationToTerraform = sqlDatabaseInstanceReplicaConfigurationToTerraform; function sqlDatabaseInstanceReplicaConfigurationToHclTerraform(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 = { ca_certificate: { value: cdktf.stringToHclTerraform(struct.caCertificate), isBlock: false, type: "simple", storageClassType: "string", }, client_certificate: { value: cdktf.stringToHclTerraform(struct.clientCertificate), isBlock: false, type: "simple", storageClassType: "string", }, client_key: { value: cdktf.stringToHclTerraform(struct.clientKey), isBlock: false, type: "simple", storageClassType: "string", }, connect_retry_interval: { value: cdktf.numberToHclTerraform(struct.connectRetryInterval), isBlock: false, type: "simple", storageClassType: "number", }, dump_file_path: { value: cdktf.stringToHclTerraform(struct.dumpFilePath), isBlock: false, type: "simple", storageClassType: "string", }, failover_target: { value: cdktf.booleanToHclTerraform(struct.failoverTarget), isBlock: false, type: "simple", storageClassType: "boolean", }, master_heartbeat_period: { value: cdktf.numberToHclTerraform(struct.masterHeartbeatPeriod), isBlock: false, type: "simple", storageClassType: "number", }, password: { value: cdktf.stringToHclTerraform(struct.password), isBlock: false, type: "simple", storageClassType: "string", }, ssl_cipher: { value: cdktf.stringToHclTerraform(struct.sslCipher), isBlock: false, type: "simple", storageClassType: "string", }, username: { value: cdktf.stringToHclTerraform(struct.username), isBlock: false, type: "simple", storageClassType: "string", }, verify_server_certificate: { value: cdktf.booleanToHclTerraform(struct.verifyServerCertificate), isBlock: false, type: "simple", storageClassType: "boolean", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.sqlDatabaseInstanceReplicaConfigurationToHclTerraform = sqlDatabaseInstanceReplicaConfigurationToHclTerraform; class SqlDatabaseInstanceReplicaConfigurationOutputReference 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._caCertificate !== undefined) { hasAnyValues = true; internalValueResult.caCertificate = this._caCertificate; } if (this._clientCertificate !== undefined) { hasAnyValues = true; internalValueResult.clientCertificate = this._clientCertificate; } if (this._clientKey !== undefined) { hasAnyValues = true; internalValueResult.clientKey = this._clientKey; } if (this._connectRetryInterval !== undefined) { hasAnyValues = true; internalValueResult.connectRetryInterval = this._connectRetryInterval; } if (this._dumpFilePath !== undefined) { hasAnyValues = true; internalValueResult.dumpFilePath = this._dumpFilePath; } if (this._failoverTarget !== undefined) { hasAnyValues = true; internalValueResult.failoverTarget = this._failoverTarget; } if (this._masterHeartbeatPeriod !== undefined) { hasAnyValues = true; internalValueResult.masterHeartbeatPeriod = this._masterHeartbeatPeriod; } if (this._password !== undefined) { hasAnyValues = true; internalValueResult.password = this._password; } if (this._sslCipher !== undefined) { hasAnyValues = true; internalValueResult.sslCipher = this._sslCipher; } if (this._username !== undefined) { hasAnyValues = true; internalValueResult.username = this._username; } if (this._verifyServerCertificate !== undefined) { hasAnyValues = true; internalValueResult.verifyServerCertificate = this._verifyServerCertificate; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._caCertificate = undefined; this._clientCertificate = undefined; this._clientKey = undefined; this._connectRetryInterval = undefined; this._dumpFilePath = undefined; this._failoverTarget = undefined; this._masterHeartbeatPeriod = undefined; this._password = undefined; this._sslCipher = undefined; this._username = undefined; this._verifyServerCertificate = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._caCertificate = value.caCertificate; this._clientCertificate = value.clientCertificate; this._clientKey = value.clientKey; this._connectRetryInterval = value.connectRetryInterval; this._dumpFilePath = value.dumpFilePath; this._failoverTarget = value.failoverTarget; this._masterHeartbeatPeriod = value.masterHeartbeatPeriod; this._password = value.password; this._sslCipher = value.sslCipher; this._username = value.username; this._verifyServerCertificate = value.verifyServerCertificate; } } get caCertificate() { return this.getStringAttribute('ca_certificate'); } set caCertificate(value) { this._caCertificate = value; } resetCaCertificate() { this._caCertificate = undefined; } // Temporarily expose input value. Use with caution. get caCertificateInput() { return this._caCertificate; } get clientCertificate() { return this.getStringAttribute('client_certificate'); } set clientCertificate(value) { this._clientCertificate = value; } resetClientCertificate() { this._clientCertificate = undefined; } // Temporarily expose input value. Use with caution. get clientCertificateInput() { return this._clientCertificate; } get clientKey() { return this.getStringAttribute('client_key'); } set clientKey(value) { this._clientKey = value; } resetClientKey() { this._clientKey = undefined; } // Temporarily expose input value. Use with caution. get clientKeyInput() { return this._clientKey; } get connectRetryInterval() { return this.getNumberAttribute('connect_retry_interval'); } set connectRetryInterval(value) { this._connectRetryInterval = value; } resetConnectRetryInterval() { this._connectRetryInterval = undefined; } // Temporarily expose input value. Use with caution. get connectRetryIntervalInput() { return this._connectRetryInterval; } get dumpFilePath() { return this.getStringAttribute('dump_file_path'); } set dumpFilePath(value) { this._dumpFilePath = value; } resetDumpFilePath() { this._dumpFilePath = undefined; } // Temporarily expose input value. Use with caution. get dumpFilePathInput() { return this._dumpFilePath; } get failoverTarget() { return this.getBooleanAttribute('failover_target'); } set failoverTarget(value) { this._failoverTarget = value; } resetFailoverTarget() { this._failoverTarget = undefined; } // Temporarily expose input value. Use with caution. get failoverTargetInput() { return this._failoverTarget; } get masterHeartbeatPeriod() { return this.getNumberAttribute('master_heartbeat_period'); } set masterHeartbeatPeriod(value) { this._masterHeartbeatPeriod = value; } resetMasterHeartbeatPeriod() { this._masterHeartbeatPeriod = undefined; } // Temporarily expose input value. Use with caution. get masterHeartbeatPeriodInput() { return this._masterHeartbeatPeriod; } get password() { return this.getStringAttribute('password'); } set password(value) { this._password = value; } resetPassword() { this._password = undefined; } // Temporarily expose input value. Use with caution. get passwordInput() { return this._password; } get sslCipher() { return this.getStringAttribute('ssl_cipher'); } set sslCipher(value) { this._sslCipher = value; } resetSslCipher() { this._sslCipher = undefined; } // Temporarily expose input value. Use with caution. get sslCipherInput() { return this._sslCipher; } get username() { return this.getStringAttribute('username'); } set username(value) { this._username = value; } resetUsername() { this._username = undefined; } // Temporarily expose input value. Use with caution. get usernameInput() { return this._username; } get verifyServerCertificate() { return this.getBooleanAttribute('verify_server_certificate'); } set verifyServerCertificate(value) { this._verifyServerCertificate = value; } resetVerifyServerCertificate() { this._verifyServerCertificate = undefined; } // Temporarily expose input value. Use with caution. get verifyServerCertificateInput() { return this._verifyServerCertificate; } } exports.SqlDatabaseInstanceReplicaConfigurationOutputReference = SqlDatabaseInstanceReplicaConfigurationOutputReference; _f = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceReplicaConfigurationOutputReference[_f] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceReplicaConfigurationOutputReference", version: "14.3.0" }; function sqlDatabaseInstanceRestoreBackupContextToTerraform(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_run_id: cdktf.numberToTerraform(struct.backupRunId), instance_id: cdktf.stringToTerraform(struct.instanceId), project: cdktf.stringToTerraform(struct.project), }; } exports.sqlDatabaseInstanceRestoreBackupContextToTerraform = sqlDatabaseInstanceRestoreBackupContextToTerraform; function sqlDatabaseInstanceRestoreBackupContextToHclTerraform(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_run_id: { value: cdktf.numberToHclTerraform(struct.backupRunId), isBlock: false, type: "simple", storageClassType: "number", }, instance_id: { value: cdktf.stringToHclTerraform(struct.instanceId), isBlock: false, type: "simple", storageClassType: "string", }, project: { value: cdktf.stringToHclTerraform(struct.project), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.sqlDatabaseInstanceRestoreBackupContextToHclTerraform = sqlDatabaseInstanceRestoreBackupContextToHclTerraform; class SqlDatabaseInstanceRestoreBackupContextOutputReference 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._backupRunId !== undefined) { hasAnyValues = true; internalValueResult.backupRunId = this._backupRunId; } if (this._instanceId !== undefined) { hasAnyValues = true; internalValueResult.instanceId = this._instanceId; } if (this._project !== undefined) { hasAnyValues = true; internalValueResult.project = this._project; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._backupRunId = undefined; this._instanceId = undefined; this._project = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._backupRunId = value.backupRunId; this._instanceId = value.instanceId; this._project = value.project; } } get backupRunId() { return this.getNumberAttribute('backup_run_id'); } set backupRunId(value) { this._backupRunId = value; } // Temporarily expose input value. Use with caution. get backupRunIdInput() { return this._backupRunId; } get instanceId() { return this.getStringAttribute('instance_id'); } set instanceId(value) { this._instanceId = value; } resetInstanceId() { this._instanceId = undefined; } // Temporarily expose input value. Use with caution. get instanceIdInput() { return this._instanceId; } get project() { return this.getStringAttribute('project'); } set project(value) { this._project = value; } resetProject() { this._project = undefined; } // Temporarily expose input value. Use with caution. get projectInput() { return this._project; } } exports.SqlDatabaseInstanceRestoreBackupContextOutputReference = SqlDatabaseInstanceRestoreBackupContextOutputReference; _g = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceRestoreBackupContextOutputReference[_g] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceRestoreBackupContextOutputReference", version: "14.3.0" }; function sqlDatabaseInstanceSettingsActiveDirectoryConfigToTerraform(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 { domain: cdktf.stringToTerraform(struct.domain), }; } exports.sqlDatabaseInstanceSettingsActiveDirectoryConfigToTerraform = sqlDatabaseInstanceSettingsActiveDirectoryConfigToTerraform; function sqlDatabaseInstanceSettingsActiveDirectoryConfigToHclTerraform(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 = { domain: { value: cdktf.stringToHclTerraform(struct.domain), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.sqlDatabaseInstanceSettingsActiveDirectoryConfigToHclTerraform = sqlDatabaseInstanceSettingsActiveDirectoryConfigToHclTerraform; class SqlDatabaseInstanceSettingsActiveDirectoryConfigOutputReference 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._domain !== undefined) { hasAnyValues = true; internalValueResult.domain = this._domain; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._domain = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._domain = value.domain; } } get domain() { return this.getStringAttribute('domain'); } set domain(value) { this._domain = value; } // Temporarily expose input value. Use with caution. get domainInput() { return this._domain; } } exports.SqlDatabaseInstanceSettingsActiveDirectoryConfigOutputReference = SqlDatabaseInstanceSettingsActiveDirectoryConfigOutputReference; _h = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceSettingsActiveDirectoryConfigOutputReference[_h] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceSettingsActiveDirectoryConfigOutputReference", version: "14.3.0" }; function sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToTerraform(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 { threads_per_core: cdktf.numberToTerraform(struct.threadsPerCore), }; } exports.sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToTerraform = sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToTerraform; function sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToHclTerraform(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 = { threads_per_core: { value: cdktf.numberToHclTerraform(struct.threadsPerCore), isBlock: false, type: "simple", storageClassType: "number", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToHclTerraform = sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToHclTerraform; class SqlDatabaseInstanceSettingsAdvancedMachineFeaturesOutputReference 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._threadsPerCore !== undefined) { hasAnyValues = true; internalValueResult.threadsPerCore = this._threadsPerCore; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._threadsPerCore = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._threadsPerCore = value.threadsPerCore; } } get threadsPerCore() { return this.getNumberAttribute('threads_per_core'); } set threadsPerCore(value) { this._threadsPerCore = value; } resetThreadsPerCore() { this._threadsPerCore = undefined; } // Temporarily expose input value. Use with caution. get threadsPerCoreInput() { return this._threadsPerCore; } } exports.SqlDatabaseInstanceSettingsAdvancedMachineFeaturesOutputReference = SqlDatabaseInstanceSettingsAdvancedMachineFeaturesOutputReference; _j = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceSettingsAdvancedMachineFeaturesOutputReference[_j] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceSettingsAdvancedMachineFeaturesOutputReference", version: "14.3.0" }; function sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToTerraform(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 { retained_backups: cdktf.numberToTerraform(struct.retainedBackups), retention_unit: cdktf.stringToTerraform(struct.retentionUnit), }; } exports.sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToTerraform = sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToTerraform; function sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToHclTerraform(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 = { retained_backups: { value: cdktf.numberToHclTerraform(struct.retainedBackups), isBlock: false, type: "simple", storageClassType: "number", }, retention_unit: { value: cdktf.stringToHclTerraform(struct.retentionUnit), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } exports.sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToHclTerraform = sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToHclTerraform; class SqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsOutputReference 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._retainedBackups !== undefined) { hasAnyValues = true; internalValueResult.retainedBackups = this._retainedBackups; } if (this._retentionUnit !== undefined) { hasAnyValues = true; internalValueResult.retentionUnit = this._retentionUnit; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._retainedBackups = undefined; this._retentionUnit = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._retainedBackups = value.retainedBackups; this._retentionUnit = value.retentionUnit; } } get retainedBackups() { return this.getNumberAttribute('retained_backups'); } set retainedBackups(value) { this._retainedBackups = value; } // Temporarily expose input value. Use with caution. get retainedBackupsInput() { return this._retainedBackups; } get retentionUnit() { return this.getStringAttribute('retention_unit'); } set retentionUnit(value) { this._retentionUnit = value; } resetRetentionUnit() { this._retentionUnit = undefined; } // Temporarily expose input value. Use with caution. get retentionUnitInput() { return this._retentionUnit; } } exports.SqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsOutputReference = SqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsOutputReference; _k = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsOutputReference[_k] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsOutputReference", version: "14.3.0" }; function sqlDatabaseInstanceSettingsBackupConfigurationToTerraform(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 { binary_log_enabled: cdktf.booleanToTerraform(struct.binaryLogEnabled), enabled: cdktf.booleanToTerraform(struct.enabled), location: cdktf.stringToTerraform(struct.location), point_in_time_recovery_enabled: cdktf.booleanToTerraform(struct.pointInTimeRecoveryEnabled), start_time: cdktf.stringToTerraform(struct.startTime), transaction_log_retention_days: cdktf.numberToTerraform(struct.transactionLogRetentionDays), backup_retention_settings: sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToTerraform(struct.backupRetentionSettings), }; } exports.sqlDatabaseInstanceSettingsBackupConfigurationToTerraform = sqlDatabaseInstanceSettingsBackupConfigurationToTerraform; function sqlDatabaseInstanceSettingsBackupConfigurationToHclTerraform(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 = { binary_log_enabled: { value: cdktf.booleanToHclTerraform(struct.binaryLogEnabled), isBlock: false, type: "simple", storageClassType: "boolean", }, enabled: { value: cdktf.booleanToHclTerraform(struct.enabled), isBlock: