UNPKG

@cdktf/provider-google

Version:

Prebuilt google Provider for Terraform CDK (cdktf)

1,080 lines 750 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, _7, _8, _9, _10, _11, _12; Object.defineProperty(exports, "__esModule", { value: true }); exports.SqlDatabaseInstance = exports.SqlDatabaseInstanceTimeoutsOutputReference = exports.SqlDatabaseInstanceSettingsOutputReference = exports.SqlDatabaseInstanceSettingsSqlServerAuditConfigOutputReference = exports.SqlDatabaseInstanceSettingsPasswordValidationPolicyOutputReference = exports.SqlDatabaseInstanceSettingsMaintenanceWindowOutputReference = exports.SqlDatabaseInstanceSettingsLocationPreferenceOutputReference = exports.SqlDatabaseInstanceSettingsIpConfigurationOutputReference = exports.SqlDatabaseInstanceSettingsIpConfigurationPscConfigList = exports.SqlDatabaseInstanceSettingsIpConfigurationPscConfigOutputReference = exports.SqlDatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionsList = exports.SqlDatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionsOutputReference = exports.SqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksList = exports.SqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksOutputReference = exports.SqlDatabaseInstanceSettingsInsightsConfigOutputReference = exports.SqlDatabaseInstanceSettingsDenyMaintenancePeriodOutputReference = exports.SqlDatabaseInstanceSettingsDatabaseFlagsList = exports.SqlDatabaseInstanceSettingsDatabaseFlagsOutputReference = exports.SqlDatabaseInstanceSettingsDataCacheConfigOutputReference = exports.SqlDatabaseInstanceSettingsConnectionPoolConfigList = exports.SqlDatabaseInstanceSettingsConnectionPoolConfigOutputReference = exports.SqlDatabaseInstanceSettingsConnectionPoolConfigFlagsList = exports.SqlDatabaseInstanceSettingsConnectionPoolConfigFlagsOutputReference = exports.SqlDatabaseInstanceSettingsBackupConfigurationOutputReference = exports.SqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsOutputReference = exports.SqlDatabaseInstanceSettingsAdvancedMachineFeaturesOutputReference = exports.SqlDatabaseInstanceSettingsActiveDirectoryConfigOutputReference = exports.SqlDatabaseInstanceRestoreBackupContextOutputReference = exports.SqlDatabaseInstanceReplicationClusterOutputReference = exports.SqlDatabaseInstanceReplicaConfigurationOutputReference = exports.SqlDatabaseInstanceCloneOutputReference = exports.SqlDatabaseInstanceServerCaCertList = exports.SqlDatabaseInstanceServerCaCertOutputReference = exports.SqlDatabaseInstanceIpAddressList = exports.SqlDatabaseInstanceIpAddressOutputReference = exports.SqlDatabaseInstanceDnsNamesList = exports.SqlDatabaseInstanceDnsNamesOutputReference = void 0; exports.sqlDatabaseInstanceDnsNamesToTerraform = sqlDatabaseInstanceDnsNamesToTerraform; exports.sqlDatabaseInstanceDnsNamesToHclTerraform = sqlDatabaseInstanceDnsNamesToHclTerraform; exports.sqlDatabaseInstanceIpAddressToTerraform = sqlDatabaseInstanceIpAddressToTerraform; exports.sqlDatabaseInstanceIpAddressToHclTerraform = sqlDatabaseInstanceIpAddressToHclTerraform; exports.sqlDatabaseInstanceServerCaCertToTerraform = sqlDatabaseInstanceServerCaCertToTerraform; exports.sqlDatabaseInstanceServerCaCertToHclTerraform = sqlDatabaseInstanceServerCaCertToHclTerraform; exports.sqlDatabaseInstanceCloneToTerraform = sqlDatabaseInstanceCloneToTerraform; exports.sqlDatabaseInstanceCloneToHclTerraform = sqlDatabaseInstanceCloneToHclTerraform; exports.sqlDatabaseInstanceReplicaConfigurationToTerraform = sqlDatabaseInstanceReplicaConfigurationToTerraform; exports.sqlDatabaseInstanceReplicaConfigurationToHclTerraform = sqlDatabaseInstanceReplicaConfigurationToHclTerraform; exports.sqlDatabaseInstanceReplicationClusterToTerraform = sqlDatabaseInstanceReplicationClusterToTerraform; exports.sqlDatabaseInstanceReplicationClusterToHclTerraform = sqlDatabaseInstanceReplicationClusterToHclTerraform; exports.sqlDatabaseInstanceRestoreBackupContextToTerraform = sqlDatabaseInstanceRestoreBackupContextToTerraform; exports.sqlDatabaseInstanceRestoreBackupContextToHclTerraform = sqlDatabaseInstanceRestoreBackupContextToHclTerraform; exports.sqlDatabaseInstanceSettingsActiveDirectoryConfigToTerraform = sqlDatabaseInstanceSettingsActiveDirectoryConfigToTerraform; exports.sqlDatabaseInstanceSettingsActiveDirectoryConfigToHclTerraform = sqlDatabaseInstanceSettingsActiveDirectoryConfigToHclTerraform; exports.sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToTerraform = sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToTerraform; exports.sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToHclTerraform = sqlDatabaseInstanceSettingsAdvancedMachineFeaturesToHclTerraform; exports.sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToTerraform = sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToTerraform; exports.sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToHclTerraform = sqlDatabaseInstanceSettingsBackupConfigurationBackupRetentionSettingsToHclTerraform; exports.sqlDatabaseInstanceSettingsBackupConfigurationToTerraform = sqlDatabaseInstanceSettingsBackupConfigurationToTerraform; exports.sqlDatabaseInstanceSettingsBackupConfigurationToHclTerraform = sqlDatabaseInstanceSettingsBackupConfigurationToHclTerraform; exports.sqlDatabaseInstanceSettingsConnectionPoolConfigFlagsToTerraform = sqlDatabaseInstanceSettingsConnectionPoolConfigFlagsToTerraform; exports.sqlDatabaseInstanceSettingsConnectionPoolConfigFlagsToHclTerraform = sqlDatabaseInstanceSettingsConnectionPoolConfigFlagsToHclTerraform; exports.sqlDatabaseInstanceSettingsConnectionPoolConfigToTerraform = sqlDatabaseInstanceSettingsConnectionPoolConfigToTerraform; exports.sqlDatabaseInstanceSettingsConnectionPoolConfigToHclTerraform = sqlDatabaseInstanceSettingsConnectionPoolConfigToHclTerraform; exports.sqlDatabaseInstanceSettingsDataCacheConfigToTerraform = sqlDatabaseInstanceSettingsDataCacheConfigToTerraform; exports.sqlDatabaseInstanceSettingsDataCacheConfigToHclTerraform = sqlDatabaseInstanceSettingsDataCacheConfigToHclTerraform; exports.sqlDatabaseInstanceSettingsDatabaseFlagsToTerraform = sqlDatabaseInstanceSettingsDatabaseFlagsToTerraform; exports.sqlDatabaseInstanceSettingsDatabaseFlagsToHclTerraform = sqlDatabaseInstanceSettingsDatabaseFlagsToHclTerraform; exports.sqlDatabaseInstanceSettingsDenyMaintenancePeriodToTerraform = sqlDatabaseInstanceSettingsDenyMaintenancePeriodToTerraform; exports.sqlDatabaseInstanceSettingsDenyMaintenancePeriodToHclTerraform = sqlDatabaseInstanceSettingsDenyMaintenancePeriodToHclTerraform; exports.sqlDatabaseInstanceSettingsInsightsConfigToTerraform = sqlDatabaseInstanceSettingsInsightsConfigToTerraform; exports.sqlDatabaseInstanceSettingsInsightsConfigToHclTerraform = sqlDatabaseInstanceSettingsInsightsConfigToHclTerraform; exports.sqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksToTerraform = sqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksToTerraform; exports.sqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksToHclTerraform = sqlDatabaseInstanceSettingsIpConfigurationAuthorizedNetworksToHclTerraform; exports.sqlDatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionsToTerraform = sqlDatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionsToTerraform; exports.sqlDatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionsToHclTerraform = sqlDatabaseInstanceSettingsIpConfigurationPscConfigPscAutoConnectionsToHclTerraform; exports.sqlDatabaseInstanceSettingsIpConfigurationPscConfigToTerraform = sqlDatabaseInstanceSettingsIpConfigurationPscConfigToTerraform; exports.sqlDatabaseInstanceSettingsIpConfigurationPscConfigToHclTerraform = sqlDatabaseInstanceSettingsIpConfigurationPscConfigToHclTerraform; exports.sqlDatabaseInstanceSettingsIpConfigurationToTerraform = sqlDatabaseInstanceSettingsIpConfigurationToTerraform; exports.sqlDatabaseInstanceSettingsIpConfigurationToHclTerraform = sqlDatabaseInstanceSettingsIpConfigurationToHclTerraform; exports.sqlDatabaseInstanceSettingsLocationPreferenceToTerraform = sqlDatabaseInstanceSettingsLocationPreferenceToTerraform; exports.sqlDatabaseInstanceSettingsLocationPreferenceToHclTerraform = sqlDatabaseInstanceSettingsLocationPreferenceToHclTerraform; exports.sqlDatabaseInstanceSettingsMaintenanceWindowToTerraform = sqlDatabaseInstanceSettingsMaintenanceWindowToTerraform; exports.sqlDatabaseInstanceSettingsMaintenanceWindowToHclTerraform = sqlDatabaseInstanceSettingsMaintenanceWindowToHclTerraform; exports.sqlDatabaseInstanceSettingsPasswordValidationPolicyToTerraform = sqlDatabaseInstanceSettingsPasswordValidationPolicyToTerraform; exports.sqlDatabaseInstanceSettingsPasswordValidationPolicyToHclTerraform = sqlDatabaseInstanceSettingsPasswordValidationPolicyToHclTerraform; exports.sqlDatabaseInstanceSettingsSqlServerAuditConfigToTerraform = sqlDatabaseInstanceSettingsSqlServerAuditConfigToTerraform; exports.sqlDatabaseInstanceSettingsSqlServerAuditConfigToHclTerraform = sqlDatabaseInstanceSettingsSqlServerAuditConfigToHclTerraform; exports.sqlDatabaseInstanceSettingsToTerraform = sqlDatabaseInstanceSettingsToTerraform; exports.sqlDatabaseInstanceSettingsToHclTerraform = sqlDatabaseInstanceSettingsToHclTerraform; exports.sqlDatabaseInstanceTimeoutsToTerraform = sqlDatabaseInstanceTimeoutsToTerraform; exports.sqlDatabaseInstanceTimeoutsToHclTerraform = sqlDatabaseInstanceTimeoutsToHclTerraform; const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti"); const cdktf = require("cdktf"); function sqlDatabaseInstanceDnsNamesToTerraform(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 sqlDatabaseInstanceDnsNamesToHclTerraform(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 SqlDatabaseInstanceDnsNamesOutputReference 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; } } // connection_type - computed: true, optional: false, required: false get connectionType() { return this.getStringAttribute('connection_type'); } // dns_scope - computed: true, optional: false, required: false get dnsScope() { return this.getStringAttribute('dns_scope'); } // name - computed: true, optional: false, required: false get name() { return this.getStringAttribute('name'); } } exports.SqlDatabaseInstanceDnsNamesOutputReference = SqlDatabaseInstanceDnsNamesOutputReference; _a = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceDnsNamesOutputReference[_a] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceDnsNamesOutputReference", version: "14.35.0" }; class SqlDatabaseInstanceDnsNamesList 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 SqlDatabaseInstanceDnsNamesOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet); } } exports.SqlDatabaseInstanceDnsNamesList = SqlDatabaseInstanceDnsNamesList; _b = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceDnsNamesList[_b] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceDnsNamesList", version: "14.35.0" }; 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 {}; } 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; } 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; _c = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceIpAddressOutputReference[_c] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceIpAddressOutputReference", version: "14.35.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; _d = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceIpAddressList[_d] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceIpAddressList", version: "14.35.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 {}; } 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; } 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; _e = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceServerCaCertOutputReference[_e] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceServerCaCertOutputReference", version: "14.35.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; _f = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceServerCaCertList[_f] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceServerCaCertList", version: "14.35.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), }; } 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)); } 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; _g = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceCloneOutputReference[_g] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceCloneOutputReference", version: "14.35.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), cascadable_replica: cdktf.booleanToTerraform(struct.cascadableReplica), 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), }; } 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", }, cascadable_replica: { value: cdktf.booleanToHclTerraform(struct.cascadableReplica), isBlock: false, type: "simple", storageClassType: "boolean", }, 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)); } 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._cascadableReplica !== undefined) { hasAnyValues = true; internalValueResult.cascadableReplica = this._cascadableReplica; } 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._cascadableReplica = 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._cascadableReplica = value.cascadableReplica; 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 cascadableReplica() { return this.getBooleanAttribute('cascadable_replica'); } set cascadableReplica(value) { this._cascadableReplica = value; } resetCascadableReplica() { this._cascadableReplica = undefined; } // Temporarily expose input value. Use with caution. get cascadableReplicaInput() { return this._cascadableReplica; } 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; _h = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceReplicaConfigurationOutputReference[_h] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceReplicaConfigurationOutputReference", version: "14.35.0" }; function sqlDatabaseInstanceReplicationClusterToTerraform(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 { failover_dr_replica_name: cdktf.stringToTerraform(struct.failoverDrReplicaName), }; } function sqlDatabaseInstanceReplicationClusterToHclTerraform(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 = { failover_dr_replica_name: { value: cdktf.stringToHclTerraform(struct.failoverDrReplicaName), isBlock: false, type: "simple", storageClassType: "string", }, }; // remove undefined attributes return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined)); } class SqlDatabaseInstanceReplicationClusterOutputReference 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._failoverDrReplicaName !== undefined) { hasAnyValues = true; internalValueResult.failoverDrReplicaName = this._failoverDrReplicaName; } return hasAnyValues ? internalValueResult : undefined; } set internalValue(value) { if (value === undefined) { this.isEmptyObject = false; this._failoverDrReplicaName = undefined; } else { this.isEmptyObject = Object.keys(value).length === 0; this._failoverDrReplicaName = value.failoverDrReplicaName; } } // dr_replica - computed: true, optional: false, required: false get drReplica() { return this.getBooleanAttribute('dr_replica'); } get failoverDrReplicaName() { return this.getStringAttribute('failover_dr_replica_name'); } set failoverDrReplicaName(value) { this._failoverDrReplicaName = value; } resetFailoverDrReplicaName() { this._failoverDrReplicaName = undefined; } // Temporarily expose input value. Use with caution. get failoverDrReplicaNameInput() { return this._failoverDrReplicaName; } } exports.SqlDatabaseInstanceReplicationClusterOutputReference = SqlDatabaseInstanceReplicationClusterOutputReference; _j = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceReplicationClusterOutputReference[_j] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceReplicationClusterOutputReference", version: "14.35.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), }; } 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)); } 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; _k = JSII_RTTI_SYMBOL_1; SqlDatabaseInstanceRestoreBackupContextOutputReference[_k] = { fqn: "@cdktf/provider-google.sqlDatabaseInstance.SqlDatabaseInstanceRestoreBackupContextOutputReference", version: "14.35.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), }; } 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)); } class SqlDatabaseInstanceSettingsActiveDirectoryConfigOutputReference extends cdktf.ComplexObject { /** * @param terraformResource The parent resource * @param terraf