All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.gcp.oracledatabase.kotlin.inputs.AutonomousDatabasePropertiesArgs.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.gcp.oracledatabase.kotlin.inputs

import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.gcp.oracledatabase.inputs.AutonomousDatabasePropertiesArgs.builder
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiNullFieldException
import com.pulumi.kotlin.PulumiTagMarker
import com.pulumi.kotlin.applySuspend
import kotlin.Boolean
import kotlin.Double
import kotlin.Int
import kotlin.String
import kotlin.Suppress
import kotlin.Unit
import kotlin.collections.List
import kotlin.jvm.JvmName

/**
 *
 * @property actualUsedDataStorageSizeTb (Output)
 * The amount of storage currently being used for user and system data, in
 * terabytes.
 * @property allocatedStorageSizeTb (Output)
 * The amount of storage currently allocated for the database tables and
 * billed for, rounded up in terabytes.
 * @property apexDetails (Output)
 * Oracle APEX Application Development.
 * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex
 * Structure is documented below.
 * @property arePrimaryAllowlistedIpsUsed (Output)
 * This field indicates the status of Data Guard and Access control for the
 * Autonomous Database. The field's value is null if Data Guard is disabled
 * or Access Control is disabled. The field's value is TRUE if both Data Guard
 * and Access Control are enabled, and the Autonomous Database is using
 * primary IP access control list (ACL) for standby. The field's value is
 * FALSE if both Data Guard and Access Control are enabled, and the Autonomous
 * Database is using a different IP access control list (ACL) for standby
 * compared to primary.
 * @property autonomousContainerDatabaseId (Output)
 * The Autonomous Container Database OCID.
 * @property availableUpgradeVersions (Output)
 * The list of available Oracle Database upgrade versions for an Autonomous
 * Database.
 * @property backupRetentionPeriodDays The retention period for the Autonomous Database. This field is specified
 * in days, can range from 1 day to 60 days, and has a default value of
 * 60 days.
 * @property characterSet The character set for the Autonomous Database. The default is AL32UTF8.
 * @property computeCount The number of compute servers for the Autonomous Database.
 * @property connectionStrings (Output)
 * The connection string used to connect to the Autonomous Database.
 * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings
 * Structure is documented below.
 * @property connectionUrls (Output)
 * The URLs for accessing Oracle Application Express (APEX) and SQL Developer
 * Web with a browser from a Compute instance.
 * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionUrls
 * Structure is documented below.
 * @property customerContacts The list of customer contacts.
 * Structure is documented below.
 * @property dataSafeState (Output)
 * The current state of the Data Safe registration for the
 * Autonomous Database.
 * Possible values:
 * DATA_SAFE_STATE_UNSPECIFIED
 * REGISTERING
 * REGISTERED
 * DEREGISTERING
 * NOT_REGISTERED
 * FAILED
 * @property dataStorageSizeGb The size of the data stored in the database, in gigabytes.
 * @property dataStorageSizeTb The size of the data stored in the database, in terabytes.
 * @property databaseManagementState (Output)
 * The current state of database management for the Autonomous Database.
 * Possible values:
 * DATABASE_MANAGEMENT_STATE_UNSPECIFIED
 * ENABLING
 * ENABLED
 * DISABLING
 * NOT_ENABLED
 * FAILED_ENABLING
 * FAILED_DISABLING
 * @property dbEdition The edition of the Autonomous Databases.
 * Possible values:
 * DATABASE_EDITION_UNSPECIFIED
 * STANDARD_EDITION
 * ENTERPRISE_EDITION
 * @property dbVersion The Oracle Database version for the Autonomous Database.
 * @property dbWorkload Possible values:
 * DB_WORKLOAD_UNSPECIFIED
 * OLTP
 * DW
 * AJD
 * APEX
 * @property failedDataRecoveryDuration (Output)
 * This field indicates the number of seconds of data loss during a Data
 * Guard failover.
 * @property isAutoScalingEnabled This field indicates if auto scaling is enabled for the Autonomous Database
 * CPU core count.
 * @property isLocalDataGuardEnabled (Output)
 * This field indicates whether the Autonomous Database has local (in-region)
 * Data Guard enabled.
 * @property isStorageAutoScalingEnabled This field indicates if auto scaling is enabled for the Autonomous Database
 * storage.
 * @property licenseType The license type used for the Autonomous Database.
 * Possible values:
 * LICENSE_TYPE_UNSPECIFIED
 * LICENSE_INCLUDED
 * BRING_YOUR_OWN_LICENSE
 * @property lifecycleDetails (Output)
 * The details of the current lifestyle state of the Autonomous Database.
 * @property localAdgAutoFailoverMaxDataLossLimit (Output)
 * This field indicates the maximum data loss limit for an Autonomous
 * Database, in seconds.
 * @property localDisasterRecoveryType (Output)
 * This field indicates the local disaster recovery (DR) type of an
 * Autonomous Database.
 * Possible values:
 * LOCAL_DISASTER_RECOVERY_TYPE_UNSPECIFIED
 * ADG
 * BACKUP_BASED
 * @property localStandbyDbs (Output)
 * Autonomous Data Guard standby database details.
 * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary
 * Structure is documented below.
 * @property maintenanceBeginTime (Output)
 * The date and time when maintenance will begin.
 * @property maintenanceEndTime (Output)
 * The date and time when maintenance will end.
 * @property maintenanceScheduleType The maintenance schedule of the Autonomous Database.
 * Possible values:
 * MAINTENANCE_SCHEDULE_TYPE_UNSPECIFIED
 * EARLY
 * REGULAR
 * @property memoryPerOracleComputeUnitGbs (Output)
 * The amount of memory enabled per ECPU, in gigabytes.
 * @property memoryTableGbs (Output)
 * The memory assigned to in-memory tables in an Autonomous Database.
 * @property mtlsConnectionRequired This field specifies if the Autonomous Database requires mTLS connections.
 * @property nCharacterSet The national character set for the Autonomous Database. The default is
 * AL16UTF16.
 * @property nextLongTermBackupTime (Output)
 * The long term backup schedule of the Autonomous Database.
 * @property ociUrl (Output)
 * The Oracle Cloud Infrastructure link for the Autonomous Database.
 * @property ocid (Output)
 * OCID of the Autonomous Database.
 * https://docs.oracle.com/en-us/iaas/Content/General/Concepts/identifiers.htm#Oracle
 * @property openMode (Output)
 * This field indicates the current mode of the Autonomous Database.
 * Possible values:
 * OPEN_MODE_UNSPECIFIED
 * READ_ONLY
 * READ_WRITE
 * @property operationsInsightsState Possible values:
 * OPERATIONS_INSIGHTS_STATE_UNSPECIFIED
 * ENABLING
 * ENABLED
 * DISABLING
 * NOT_ENABLED
 * FAILED_ENABLING
 * FAILED_DISABLING
 * @property peerDbIds (Output)
 * The list of OCIDs of standby databases located in Autonomous Data Guard
 * remote regions that are associated with the source database.
 * @property permissionLevel (Output)
 * The permission level of the Autonomous Database.
 * Possible values:
 * PERMISSION_LEVEL_UNSPECIFIED
 * RESTRICTED
 * UNRESTRICTED
 * @property privateEndpoint (Output)
 * The private endpoint for the Autonomous Database.
 * @property privateEndpointIp The private endpoint IP address for the Autonomous Database.
 * @property privateEndpointLabel The private endpoint label for the Autonomous Database.
 * @property refreshableMode (Output)
 * The refresh mode of the cloned Autonomous Database.
 * Possible values:
 * REFRESHABLE_MODE_UNSPECIFIED
 * AUTOMATIC
 * MANUAL
 * @property refreshableState (Output)
 * The refresh State of the clone.
 * Possible values:
 * REFRESHABLE_STATE_UNSPECIFIED
 * REFRESHING
 * NOT_REFRESHING
 * @property role (Output)
 * The Data Guard role of the Autonomous Database.
 * Possible values:
 * ROLE_UNSPECIFIED
 * PRIMARY
 * STANDBY
 * DISABLED_STANDBY
 * BACKUP_COPY
 * SNAPSHOT_STANDBY
 * @property scheduledOperationDetails (Output)
 * The list and details of the scheduled operations of the Autonomous
 * Database.
 * Structure is documented below.
 * @property sqlWebDeveloperUrl (Output)
 * The SQL Web Developer URL for the Autonomous Database.
 * @property state (Output)
 * Possible values:
 * STATE_UNSPECIFIED
 * PROVISIONING
 * AVAILABLE
 * STOPPING
 * STOPPED
 * STARTING
 * TERMINATING
 * TERMINATED
 * UNAVAILABLE
 * RESTORE_IN_PROGRESS
 * RESTORE_FAILED
 * BACKUP_IN_PROGRESS
 * SCALE_IN_PROGRESS
 * AVAILABLE_NEEDS_ATTENTION
 * UPDATING
 * MAINTENANCE_IN_PROGRESS
 * RESTARTING
 * RECREATING
 * ROLE_CHANGE_IN_PROGRESS
 * UPGRADING
 * INACCESSIBLE
 * STANDBY
 * @property supportedCloneRegions (Output)
 * The list of available regions that can be used to create a clone for the
 * Autonomous Database.
 * @property totalAutoBackupStorageSizeGbs (Output)
 * The storage space used by automatic backups of Autonomous Database, in
 * gigabytes.
 * @property usedDataStorageSizeTbs (Output)
 * The storage space used by Autonomous Database, in gigabytes.
 */
public data class AutonomousDatabasePropertiesArgs(
    public val actualUsedDataStorageSizeTb: Output? = null,
    public val allocatedStorageSizeTb: Output? = null,
    public val apexDetails: Output>? = null,
    public val arePrimaryAllowlistedIpsUsed: Output? = null,
    public val autonomousContainerDatabaseId: Output? = null,
    public val availableUpgradeVersions: Output>? = null,
    public val backupRetentionPeriodDays: Output? = null,
    public val characterSet: Output? = null,
    public val computeCount: Output? = null,
    public val connectionStrings: Output>? =
        null,
    public val connectionUrls: Output>? = null,
    public val customerContacts: Output>? =
        null,
    public val dataSafeState: Output? = null,
    public val dataStorageSizeGb: Output? = null,
    public val dataStorageSizeTb: Output? = null,
    public val databaseManagementState: Output? = null,
    public val dbEdition: Output? = null,
    public val dbVersion: Output? = null,
    public val dbWorkload: Output,
    public val failedDataRecoveryDuration: Output? = null,
    public val isAutoScalingEnabled: Output? = null,
    public val isLocalDataGuardEnabled: Output? = null,
    public val isStorageAutoScalingEnabled: Output? = null,
    public val licenseType: Output,
    public val lifecycleDetails: Output? = null,
    public val localAdgAutoFailoverMaxDataLossLimit: Output? = null,
    public val localDisasterRecoveryType: Output? = null,
    public val localStandbyDbs: Output>? = null,
    public val maintenanceBeginTime: Output? = null,
    public val maintenanceEndTime: Output? = null,
    public val maintenanceScheduleType: Output? = null,
    public val memoryPerOracleComputeUnitGbs: Output? = null,
    public val memoryTableGbs: Output? = null,
    public val mtlsConnectionRequired: Output? = null,
    public val nCharacterSet: Output? = null,
    public val nextLongTermBackupTime: Output? = null,
    public val ociUrl: Output? = null,
    public val ocid: Output? = null,
    public val openMode: Output? = null,
    public val operationsInsightsState: Output? = null,
    public val peerDbIds: Output>? = null,
    public val permissionLevel: Output? = null,
    public val privateEndpoint: Output? = null,
    public val privateEndpointIp: Output? = null,
    public val privateEndpointLabel: Output? = null,
    public val refreshableMode: Output? = null,
    public val refreshableState: Output? = null,
    public val role: Output? = null,
    public val scheduledOperationDetails: Output>? = null,
    public val sqlWebDeveloperUrl: Output? = null,
    public val state: Output? = null,
    public val supportedCloneRegions: Output>? = null,
    public val totalAutoBackupStorageSizeGbs: Output? = null,
    public val usedDataStorageSizeTbs: Output? = null,
) : ConvertibleToJava {
    override fun toJava(): com.pulumi.gcp.oracledatabase.inputs.AutonomousDatabasePropertiesArgs =
        com.pulumi.gcp.oracledatabase.inputs.AutonomousDatabasePropertiesArgs.builder()
            .actualUsedDataStorageSizeTb(actualUsedDataStorageSizeTb?.applyValue({ args0 -> args0 }))
            .allocatedStorageSizeTb(allocatedStorageSizeTb?.applyValue({ args0 -> args0 }))
            .apexDetails(
                apexDetails?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .arePrimaryAllowlistedIpsUsed(arePrimaryAllowlistedIpsUsed?.applyValue({ args0 -> args0 }))
            .autonomousContainerDatabaseId(autonomousContainerDatabaseId?.applyValue({ args0 -> args0 }))
            .availableUpgradeVersions(
                availableUpgradeVersions?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0
                    })
                }),
            )
            .backupRetentionPeriodDays(backupRetentionPeriodDays?.applyValue({ args0 -> args0 }))
            .characterSet(characterSet?.applyValue({ args0 -> args0 }))
            .computeCount(computeCount?.applyValue({ args0 -> args0 }))
            .connectionStrings(
                connectionStrings?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .connectionUrls(
                connectionUrls?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .customerContacts(
                customerContacts?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .dataSafeState(dataSafeState?.applyValue({ args0 -> args0 }))
            .dataStorageSizeGb(dataStorageSizeGb?.applyValue({ args0 -> args0 }))
            .dataStorageSizeTb(dataStorageSizeTb?.applyValue({ args0 -> args0 }))
            .databaseManagementState(databaseManagementState?.applyValue({ args0 -> args0 }))
            .dbEdition(dbEdition?.applyValue({ args0 -> args0 }))
            .dbVersion(dbVersion?.applyValue({ args0 -> args0 }))
            .dbWorkload(dbWorkload.applyValue({ args0 -> args0 }))
            .failedDataRecoveryDuration(failedDataRecoveryDuration?.applyValue({ args0 -> args0 }))
            .isAutoScalingEnabled(isAutoScalingEnabled?.applyValue({ args0 -> args0 }))
            .isLocalDataGuardEnabled(isLocalDataGuardEnabled?.applyValue({ args0 -> args0 }))
            .isStorageAutoScalingEnabled(isStorageAutoScalingEnabled?.applyValue({ args0 -> args0 }))
            .licenseType(licenseType.applyValue({ args0 -> args0 }))
            .lifecycleDetails(lifecycleDetails?.applyValue({ args0 -> args0 }))
            .localAdgAutoFailoverMaxDataLossLimit(
                localAdgAutoFailoverMaxDataLossLimit?.applyValue({ args0 ->
                    args0
                }),
            )
            .localDisasterRecoveryType(localDisasterRecoveryType?.applyValue({ args0 -> args0 }))
            .localStandbyDbs(
                localStandbyDbs?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 ->
                            args0.toJava()
                        })
                    })
                }),
            )
            .maintenanceBeginTime(maintenanceBeginTime?.applyValue({ args0 -> args0 }))
            .maintenanceEndTime(maintenanceEndTime?.applyValue({ args0 -> args0 }))
            .maintenanceScheduleType(maintenanceScheduleType?.applyValue({ args0 -> args0 }))
            .memoryPerOracleComputeUnitGbs(memoryPerOracleComputeUnitGbs?.applyValue({ args0 -> args0 }))
            .memoryTableGbs(memoryTableGbs?.applyValue({ args0 -> args0 }))
            .mtlsConnectionRequired(mtlsConnectionRequired?.applyValue({ args0 -> args0 }))
            .nCharacterSet(nCharacterSet?.applyValue({ args0 -> args0 }))
            .nextLongTermBackupTime(nextLongTermBackupTime?.applyValue({ args0 -> args0 }))
            .ociUrl(ociUrl?.applyValue({ args0 -> args0 }))
            .ocid(ocid?.applyValue({ args0 -> args0 }))
            .openMode(openMode?.applyValue({ args0 -> args0 }))
            .operationsInsightsState(operationsInsightsState?.applyValue({ args0 -> args0 }))
            .peerDbIds(peerDbIds?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .permissionLevel(permissionLevel?.applyValue({ args0 -> args0 }))
            .privateEndpoint(privateEndpoint?.applyValue({ args0 -> args0 }))
            .privateEndpointIp(privateEndpointIp?.applyValue({ args0 -> args0 }))
            .privateEndpointLabel(privateEndpointLabel?.applyValue({ args0 -> args0 }))
            .refreshableMode(refreshableMode?.applyValue({ args0 -> args0 }))
            .refreshableState(refreshableState?.applyValue({ args0 -> args0 }))
            .role(role?.applyValue({ args0 -> args0 }))
            .scheduledOperationDetails(
                scheduledOperationDetails?.applyValue({ args0 ->
                    args0.map({ args0 ->
                        args0.let({ args0 -> args0.toJava() })
                    })
                }),
            )
            .sqlWebDeveloperUrl(sqlWebDeveloperUrl?.applyValue({ args0 -> args0 }))
            .state(state?.applyValue({ args0 -> args0 }))
            .supportedCloneRegions(supportedCloneRegions?.applyValue({ args0 -> args0.map({ args0 -> args0 }) }))
            .totalAutoBackupStorageSizeGbs(totalAutoBackupStorageSizeGbs?.applyValue({ args0 -> args0 }))
            .usedDataStorageSizeTbs(usedDataStorageSizeTbs?.applyValue({ args0 -> args0 })).build()
}

/**
 * Builder for [AutonomousDatabasePropertiesArgs].
 */
@PulumiTagMarker
public class AutonomousDatabasePropertiesArgsBuilder internal constructor() {
    private var actualUsedDataStorageSizeTb: Output? = null

    private var allocatedStorageSizeTb: Output? = null

    private var apexDetails: Output>? = null

    private var arePrimaryAllowlistedIpsUsed: Output? = null

    private var autonomousContainerDatabaseId: Output? = null

    private var availableUpgradeVersions: Output>? = null

    private var backupRetentionPeriodDays: Output? = null

    private var characterSet: Output? = null

    private var computeCount: Output? = null

    private var connectionStrings: Output>? =
        null

    private var connectionUrls: Output>? = null

    private var customerContacts: Output>? =
        null

    private var dataSafeState: Output? = null

    private var dataStorageSizeGb: Output? = null

    private var dataStorageSizeTb: Output? = null

    private var databaseManagementState: Output? = null

    private var dbEdition: Output? = null

    private var dbVersion: Output? = null

    private var dbWorkload: Output? = null

    private var failedDataRecoveryDuration: Output? = null

    private var isAutoScalingEnabled: Output? = null

    private var isLocalDataGuardEnabled: Output? = null

    private var isStorageAutoScalingEnabled: Output? = null

    private var licenseType: Output? = null

    private var lifecycleDetails: Output? = null

    private var localAdgAutoFailoverMaxDataLossLimit: Output? = null

    private var localDisasterRecoveryType: Output? = null

    private var localStandbyDbs: Output>? = null

    private var maintenanceBeginTime: Output? = null

    private var maintenanceEndTime: Output? = null

    private var maintenanceScheduleType: Output? = null

    private var memoryPerOracleComputeUnitGbs: Output? = null

    private var memoryTableGbs: Output? = null

    private var mtlsConnectionRequired: Output? = null

    private var nCharacterSet: Output? = null

    private var nextLongTermBackupTime: Output? = null

    private var ociUrl: Output? = null

    private var ocid: Output? = null

    private var openMode: Output? = null

    private var operationsInsightsState: Output? = null

    private var peerDbIds: Output>? = null

    private var permissionLevel: Output? = null

    private var privateEndpoint: Output? = null

    private var privateEndpointIp: Output? = null

    private var privateEndpointLabel: Output? = null

    private var refreshableMode: Output? = null

    private var refreshableState: Output? = null

    private var role: Output? = null

    private var scheduledOperationDetails:
        Output>? = null

    private var sqlWebDeveloperUrl: Output? = null

    private var state: Output? = null

    private var supportedCloneRegions: Output>? = null

    private var totalAutoBackupStorageSizeGbs: Output? = null

    private var usedDataStorageSizeTbs: Output? = null

    /**
     * @param value (Output)
     * The amount of storage currently being used for user and system data, in
     * terabytes.
     */
    @JvmName("knbkksbtpghuvbvw")
    public suspend fun actualUsedDataStorageSizeTb(`value`: Output) {
        this.actualUsedDataStorageSizeTb = value
    }

    /**
     * @param value (Output)
     * The amount of storage currently allocated for the database tables and
     * billed for, rounded up in terabytes.
     */
    @JvmName("lchhhomlqetbxito")
    public suspend fun allocatedStorageSizeTb(`value`: Output) {
        this.allocatedStorageSizeTb = value
    }

    /**
     * @param value (Output)
     * Oracle APEX Application Development.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex
     * Structure is documented below.
     */
    @JvmName("mlwjmkfaddklrqum")
    public suspend fun apexDetails(`value`: Output>) {
        this.apexDetails = value
    }

    @JvmName("yiewkrmrmevpwemb")
    public suspend fun apexDetails(vararg values: Output) {
        this.apexDetails = Output.all(values.asList())
    }

    /**
     * @param values (Output)
     * Oracle APEX Application Development.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex
     * Structure is documented below.
     */
    @JvmName("tqbblkstpjewkkxl")
    public suspend fun apexDetails(values: List>) {
        this.apexDetails = Output.all(values)
    }

    /**
     * @param value (Output)
     * This field indicates the status of Data Guard and Access control for the
     * Autonomous Database. The field's value is null if Data Guard is disabled
     * or Access Control is disabled. The field's value is TRUE if both Data Guard
     * and Access Control are enabled, and the Autonomous Database is using
     * primary IP access control list (ACL) for standby. The field's value is
     * FALSE if both Data Guard and Access Control are enabled, and the Autonomous
     * Database is using a different IP access control list (ACL) for standby
     * compared to primary.
     */
    @JvmName("eeyjvlxhbrosneig")
    public suspend fun arePrimaryAllowlistedIpsUsed(`value`: Output) {
        this.arePrimaryAllowlistedIpsUsed = value
    }

    /**
     * @param value (Output)
     * The Autonomous Container Database OCID.
     */
    @JvmName("crucpslrgoiilwrq")
    public suspend fun autonomousContainerDatabaseId(`value`: Output) {
        this.autonomousContainerDatabaseId = value
    }

    /**
     * @param value (Output)
     * The list of available Oracle Database upgrade versions for an Autonomous
     * Database.
     */
    @JvmName("isrgmtmqbcbsbktf")
    public suspend fun availableUpgradeVersions(`value`: Output>) {
        this.availableUpgradeVersions = value
    }

    @JvmName("mlsqfoyoojyhrvix")
    public suspend fun availableUpgradeVersions(vararg values: Output) {
        this.availableUpgradeVersions = Output.all(values.asList())
    }

    /**
     * @param values (Output)
     * The list of available Oracle Database upgrade versions for an Autonomous
     * Database.
     */
    @JvmName("kfempnpctlwlvvqo")
    public suspend fun availableUpgradeVersions(values: List>) {
        this.availableUpgradeVersions = Output.all(values)
    }

    /**
     * @param value The retention period for the Autonomous Database. This field is specified
     * in days, can range from 1 day to 60 days, and has a default value of
     * 60 days.
     */
    @JvmName("wyabwuybktxpwrnl")
    public suspend fun backupRetentionPeriodDays(`value`: Output) {
        this.backupRetentionPeriodDays = value
    }

    /**
     * @param value The character set for the Autonomous Database. The default is AL32UTF8.
     */
    @JvmName("bmvbabflkvfywcle")
    public suspend fun characterSet(`value`: Output) {
        this.characterSet = value
    }

    /**
     * @param value The number of compute servers for the Autonomous Database.
     */
    @JvmName("emsxdfgnjytxeuxx")
    public suspend fun computeCount(`value`: Output) {
        this.computeCount = value
    }

    /**
     * @param value (Output)
     * The connection string used to connect to the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings
     * Structure is documented below.
     */
    @JvmName("daxujhsrevbwcjpl")
    public suspend fun connectionStrings(`value`: Output>) {
        this.connectionStrings = value
    }

    @JvmName("ngcojtgplgqclrlg")
    public suspend fun connectionStrings(vararg values: Output) {
        this.connectionStrings = Output.all(values.asList())
    }

    /**
     * @param values (Output)
     * The connection string used to connect to the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings
     * Structure is documented below.
     */
    @JvmName("pnrnkfchsdebemck")
    public suspend fun connectionStrings(values: List>) {
        this.connectionStrings = Output.all(values)
    }

    /**
     * @param value (Output)
     * The URLs for accessing Oracle Application Express (APEX) and SQL Developer
     * Web with a browser from a Compute instance.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionUrls
     * Structure is documented below.
     */
    @JvmName("nincuenfwuwqyohb")
    public suspend fun connectionUrls(`value`: Output>) {
        this.connectionUrls = value
    }

    @JvmName("majbmklkuopeydvo")
    public suspend fun connectionUrls(vararg values: Output) {
        this.connectionUrls = Output.all(values.asList())
    }

    /**
     * @param values (Output)
     * The URLs for accessing Oracle Application Express (APEX) and SQL Developer
     * Web with a browser from a Compute instance.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionUrls
     * Structure is documented below.
     */
    @JvmName("vhgaimpqgoybemtt")
    public suspend fun connectionUrls(values: List>) {
        this.connectionUrls = Output.all(values)
    }

    /**
     * @param value The list of customer contacts.
     * Structure is documented below.
     */
    @JvmName("qsixcykakjhjvxxp")
    public suspend fun customerContacts(`value`: Output>) {
        this.customerContacts = value
    }

    @JvmName("nbculwwxnngpeycu")
    public suspend fun customerContacts(vararg values: Output) {
        this.customerContacts = Output.all(values.asList())
    }

    /**
     * @param values The list of customer contacts.
     * Structure is documented below.
     */
    @JvmName("tsojmsmvycwtwliw")
    public suspend fun customerContacts(values: List>) {
        this.customerContacts = Output.all(values)
    }

    /**
     * @param value (Output)
     * The current state of the Data Safe registration for the
     * Autonomous Database.
     * Possible values:
     * DATA_SAFE_STATE_UNSPECIFIED
     * REGISTERING
     * REGISTERED
     * DEREGISTERING
     * NOT_REGISTERED
     * FAILED
     */
    @JvmName("ooigcshoiuympdww")
    public suspend fun dataSafeState(`value`: Output) {
        this.dataSafeState = value
    }

    /**
     * @param value The size of the data stored in the database, in gigabytes.
     */
    @JvmName("jqdbpkybsvqvnssg")
    public suspend fun dataStorageSizeGb(`value`: Output) {
        this.dataStorageSizeGb = value
    }

    /**
     * @param value The size of the data stored in the database, in terabytes.
     */
    @JvmName("bhcjaecommaldocr")
    public suspend fun dataStorageSizeTb(`value`: Output) {
        this.dataStorageSizeTb = value
    }

    /**
     * @param value (Output)
     * The current state of database management for the Autonomous Database.
     * Possible values:
     * DATABASE_MANAGEMENT_STATE_UNSPECIFIED
     * ENABLING
     * ENABLED
     * DISABLING
     * NOT_ENABLED
     * FAILED_ENABLING
     * FAILED_DISABLING
     */
    @JvmName("ooidsefjjqcqdptl")
    public suspend fun databaseManagementState(`value`: Output) {
        this.databaseManagementState = value
    }

    /**
     * @param value The edition of the Autonomous Databases.
     * Possible values:
     * DATABASE_EDITION_UNSPECIFIED
     * STANDARD_EDITION
     * ENTERPRISE_EDITION
     */
    @JvmName("etdpgivjxcdaysgu")
    public suspend fun dbEdition(`value`: Output) {
        this.dbEdition = value
    }

    /**
     * @param value The Oracle Database version for the Autonomous Database.
     */
    @JvmName("dshglpjagdrjdafx")
    public suspend fun dbVersion(`value`: Output) {
        this.dbVersion = value
    }

    /**
     * @param value Possible values:
     * DB_WORKLOAD_UNSPECIFIED
     * OLTP
     * DW
     * AJD
     * APEX
     */
    @JvmName("hmppyspowabijsqc")
    public suspend fun dbWorkload(`value`: Output) {
        this.dbWorkload = value
    }

    /**
     * @param value (Output)
     * This field indicates the number of seconds of data loss during a Data
     * Guard failover.
     */
    @JvmName("mcfejkxtqpfckhxw")
    public suspend fun failedDataRecoveryDuration(`value`: Output) {
        this.failedDataRecoveryDuration = value
    }

    /**
     * @param value This field indicates if auto scaling is enabled for the Autonomous Database
     * CPU core count.
     */
    @JvmName("fgluewddngdvspyi")
    public suspend fun isAutoScalingEnabled(`value`: Output) {
        this.isAutoScalingEnabled = value
    }

    /**
     * @param value (Output)
     * This field indicates whether the Autonomous Database has local (in-region)
     * Data Guard enabled.
     */
    @JvmName("qfwvqugrqjlxybvt")
    public suspend fun isLocalDataGuardEnabled(`value`: Output) {
        this.isLocalDataGuardEnabled = value
    }

    /**
     * @param value This field indicates if auto scaling is enabled for the Autonomous Database
     * storage.
     */
    @JvmName("lowgeuxwxvdlccml")
    public suspend fun isStorageAutoScalingEnabled(`value`: Output) {
        this.isStorageAutoScalingEnabled = value
    }

    /**
     * @param value The license type used for the Autonomous Database.
     * Possible values:
     * LICENSE_TYPE_UNSPECIFIED
     * LICENSE_INCLUDED
     * BRING_YOUR_OWN_LICENSE
     */
    @JvmName("abyvvyvvecplpoaf")
    public suspend fun licenseType(`value`: Output) {
        this.licenseType = value
    }

    /**
     * @param value (Output)
     * The details of the current lifestyle state of the Autonomous Database.
     */
    @JvmName("xxvllcgjvcabneqd")
    public suspend fun lifecycleDetails(`value`: Output) {
        this.lifecycleDetails = value
    }

    /**
     * @param value (Output)
     * This field indicates the maximum data loss limit for an Autonomous
     * Database, in seconds.
     */
    @JvmName("akoupxcmrvxyrkdv")
    public suspend fun localAdgAutoFailoverMaxDataLossLimit(`value`: Output) {
        this.localAdgAutoFailoverMaxDataLossLimit = value
    }

    /**
     * @param value (Output)
     * This field indicates the local disaster recovery (DR) type of an
     * Autonomous Database.
     * Possible values:
     * LOCAL_DISASTER_RECOVERY_TYPE_UNSPECIFIED
     * ADG
     * BACKUP_BASED
     */
    @JvmName("nwpuwjaxnjacrcyb")
    public suspend fun localDisasterRecoveryType(`value`: Output) {
        this.localDisasterRecoveryType = value
    }

    /**
     * @param value (Output)
     * Autonomous Data Guard standby database details.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary
     * Structure is documented below.
     */
    @JvmName("rlklbtucbbirmbjo")
    public suspend fun localStandbyDbs(`value`: Output>) {
        this.localStandbyDbs = value
    }

    @JvmName("wbsrktyuwfuhfaqc")
    public suspend fun localStandbyDbs(vararg values: Output) {
        this.localStandbyDbs = Output.all(values.asList())
    }

    /**
     * @param values (Output)
     * Autonomous Data Guard standby database details.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary
     * Structure is documented below.
     */
    @JvmName("vhshcwdvleimochj")
    public suspend fun localStandbyDbs(values: List>) {
        this.localStandbyDbs = Output.all(values)
    }

    /**
     * @param value (Output)
     * The date and time when maintenance will begin.
     */
    @JvmName("bwffbsrcwoqsjkcu")
    public suspend fun maintenanceBeginTime(`value`: Output) {
        this.maintenanceBeginTime = value
    }

    /**
     * @param value (Output)
     * The date and time when maintenance will end.
     */
    @JvmName("wbmiudbeljvfgncf")
    public suspend fun maintenanceEndTime(`value`: Output) {
        this.maintenanceEndTime = value
    }

    /**
     * @param value The maintenance schedule of the Autonomous Database.
     * Possible values:
     * MAINTENANCE_SCHEDULE_TYPE_UNSPECIFIED
     * EARLY
     * REGULAR
     */
    @JvmName("tloqjordbljjaaog")
    public suspend fun maintenanceScheduleType(`value`: Output) {
        this.maintenanceScheduleType = value
    }

    /**
     * @param value (Output)
     * The amount of memory enabled per ECPU, in gigabytes.
     */
    @JvmName("srknjmywkkrnlcvn")
    public suspend fun memoryPerOracleComputeUnitGbs(`value`: Output) {
        this.memoryPerOracleComputeUnitGbs = value
    }

    /**
     * @param value (Output)
     * The memory assigned to in-memory tables in an Autonomous Database.
     */
    @JvmName("vojwlorkycqhgtvq")
    public suspend fun memoryTableGbs(`value`: Output) {
        this.memoryTableGbs = value
    }

    /**
     * @param value This field specifies if the Autonomous Database requires mTLS connections.
     */
    @JvmName("xaoivqvmouwlagiq")
    public suspend fun mtlsConnectionRequired(`value`: Output) {
        this.mtlsConnectionRequired = value
    }

    /**
     * @param value The national character set for the Autonomous Database. The default is
     * AL16UTF16.
     */
    @JvmName("ehkatufvgwbuvoli")
    public suspend fun nCharacterSet(`value`: Output) {
        this.nCharacterSet = value
    }

    /**
     * @param value (Output)
     * The long term backup schedule of the Autonomous Database.
     */
    @JvmName("vvrtnliqktwpmrvr")
    public suspend fun nextLongTermBackupTime(`value`: Output) {
        this.nextLongTermBackupTime = value
    }

    /**
     * @param value (Output)
     * The Oracle Cloud Infrastructure link for the Autonomous Database.
     */
    @JvmName("blarsajwrssouwci")
    public suspend fun ociUrl(`value`: Output) {
        this.ociUrl = value
    }

    /**
     * @param value (Output)
     * OCID of the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/Content/General/Concepts/identifiers.htm#Oracle
     */
    @JvmName("dijekkfdjdpqexuw")
    public suspend fun ocid(`value`: Output) {
        this.ocid = value
    }

    /**
     * @param value (Output)
     * This field indicates the current mode of the Autonomous Database.
     * Possible values:
     * OPEN_MODE_UNSPECIFIED
     * READ_ONLY
     * READ_WRITE
     */
    @JvmName("qoxsumsahoawthqa")
    public suspend fun openMode(`value`: Output) {
        this.openMode = value
    }

    /**
     * @param value Possible values:
     * OPERATIONS_INSIGHTS_STATE_UNSPECIFIED
     * ENABLING
     * ENABLED
     * DISABLING
     * NOT_ENABLED
     * FAILED_ENABLING
     * FAILED_DISABLING
     */
    @JvmName("rubyevxfiuxgtxhw")
    public suspend fun operationsInsightsState(`value`: Output) {
        this.operationsInsightsState = value
    }

    /**
     * @param value (Output)
     * The list of OCIDs of standby databases located in Autonomous Data Guard
     * remote regions that are associated with the source database.
     */
    @JvmName("dlbueaxcaobocwqi")
    public suspend fun peerDbIds(`value`: Output>) {
        this.peerDbIds = value
    }

    @JvmName("bsywnckdlvaoncfc")
    public suspend fun peerDbIds(vararg values: Output) {
        this.peerDbIds = Output.all(values.asList())
    }

    /**
     * @param values (Output)
     * The list of OCIDs of standby databases located in Autonomous Data Guard
     * remote regions that are associated with the source database.
     */
    @JvmName("ligkfyoixsjhqvli")
    public suspend fun peerDbIds(values: List>) {
        this.peerDbIds = Output.all(values)
    }

    /**
     * @param value (Output)
     * The permission level of the Autonomous Database.
     * Possible values:
     * PERMISSION_LEVEL_UNSPECIFIED
     * RESTRICTED
     * UNRESTRICTED
     */
    @JvmName("gaxdskybprmienwi")
    public suspend fun permissionLevel(`value`: Output) {
        this.permissionLevel = value
    }

    /**
     * @param value (Output)
     * The private endpoint for the Autonomous Database.
     */
    @JvmName("bmhqqspqybjshaoc")
    public suspend fun privateEndpoint(`value`: Output) {
        this.privateEndpoint = value
    }

    /**
     * @param value The private endpoint IP address for the Autonomous Database.
     */
    @JvmName("lcojeevlmvrequle")
    public suspend fun privateEndpointIp(`value`: Output) {
        this.privateEndpointIp = value
    }

    /**
     * @param value The private endpoint label for the Autonomous Database.
     */
    @JvmName("hweqdkbwjqbceltx")
    public suspend fun privateEndpointLabel(`value`: Output) {
        this.privateEndpointLabel = value
    }

    /**
     * @param value (Output)
     * The refresh mode of the cloned Autonomous Database.
     * Possible values:
     * REFRESHABLE_MODE_UNSPECIFIED
     * AUTOMATIC
     * MANUAL
     */
    @JvmName("piptnumwhtdromdw")
    public suspend fun refreshableMode(`value`: Output) {
        this.refreshableMode = value
    }

    /**
     * @param value (Output)
     * The refresh State of the clone.
     * Possible values:
     * REFRESHABLE_STATE_UNSPECIFIED
     * REFRESHING
     * NOT_REFRESHING
     */
    @JvmName("idmamkbfabrtyqkd")
    public suspend fun refreshableState(`value`: Output) {
        this.refreshableState = value
    }

    /**
     * @param value (Output)
     * The Data Guard role of the Autonomous Database.
     * Possible values:
     * ROLE_UNSPECIFIED
     * PRIMARY
     * STANDBY
     * DISABLED_STANDBY
     * BACKUP_COPY
     * SNAPSHOT_STANDBY
     */
    @JvmName("xfeppvgxaahaqxow")
    public suspend fun role(`value`: Output) {
        this.role = value
    }

    /**
     * @param value (Output)
     * The list and details of the scheduled operations of the Autonomous
     * Database.
     * Structure is documented below.
     */
    @JvmName("jimvsnllowqtnvtl")
    public suspend fun scheduledOperationDetails(`value`: Output>) {
        this.scheduledOperationDetails = value
    }

    @JvmName("ngibnoderalceskx")
    public suspend fun scheduledOperationDetails(vararg values: Output) {
        this.scheduledOperationDetails = Output.all(values.asList())
    }

    /**
     * @param values (Output)
     * The list and details of the scheduled operations of the Autonomous
     * Database.
     * Structure is documented below.
     */
    @JvmName("qldpihcgmrbmfukd")
    public suspend fun scheduledOperationDetails(values: List>) {
        this.scheduledOperationDetails = Output.all(values)
    }

    /**
     * @param value (Output)
     * The SQL Web Developer URL for the Autonomous Database.
     */
    @JvmName("xsycymwfrigrpyht")
    public suspend fun sqlWebDeveloperUrl(`value`: Output) {
        this.sqlWebDeveloperUrl = value
    }

    /**
     * @param value (Output)
     * Possible values:
     * STATE_UNSPECIFIED
     * PROVISIONING
     * AVAILABLE
     * STOPPING
     * STOPPED
     * STARTING
     * TERMINATING
     * TERMINATED
     * UNAVAILABLE
     * RESTORE_IN_PROGRESS
     * RESTORE_FAILED
     * BACKUP_IN_PROGRESS
     * SCALE_IN_PROGRESS
     * AVAILABLE_NEEDS_ATTENTION
     * UPDATING
     * MAINTENANCE_IN_PROGRESS
     * RESTARTING
     * RECREATING
     * ROLE_CHANGE_IN_PROGRESS
     * UPGRADING
     * INACCESSIBLE
     * STANDBY
     */
    @JvmName("kubenwotwudbuedk")
    public suspend fun state(`value`: Output) {
        this.state = value
    }

    /**
     * @param value (Output)
     * The list of available regions that can be used to create a clone for the
     * Autonomous Database.
     */
    @JvmName("tiwsamndlptpngjq")
    public suspend fun supportedCloneRegions(`value`: Output>) {
        this.supportedCloneRegions = value
    }

    @JvmName("nrryqplwnfstdlns")
    public suspend fun supportedCloneRegions(vararg values: Output) {
        this.supportedCloneRegions = Output.all(values.asList())
    }

    /**
     * @param values (Output)
     * The list of available regions that can be used to create a clone for the
     * Autonomous Database.
     */
    @JvmName("sqyboafavayejvjh")
    public suspend fun supportedCloneRegions(values: List>) {
        this.supportedCloneRegions = Output.all(values)
    }

    /**
     * @param value (Output)
     * The storage space used by automatic backups of Autonomous Database, in
     * gigabytes.
     */
    @JvmName("tvkyhvxmqbboljav")
    public suspend fun totalAutoBackupStorageSizeGbs(`value`: Output) {
        this.totalAutoBackupStorageSizeGbs = value
    }

    /**
     * @param value (Output)
     * The storage space used by Autonomous Database, in gigabytes.
     */
    @JvmName("vexthdtlqqfidgrt")
    public suspend fun usedDataStorageSizeTbs(`value`: Output) {
        this.usedDataStorageSizeTbs = value
    }

    /**
     * @param value (Output)
     * The amount of storage currently being used for user and system data, in
     * terabytes.
     */
    @JvmName("ttuwxtauawutibdq")
    public suspend fun actualUsedDataStorageSizeTb(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.actualUsedDataStorageSizeTb = mapped
    }

    /**
     * @param value (Output)
     * The amount of storage currently allocated for the database tables and
     * billed for, rounded up in terabytes.
     */
    @JvmName("wlhbpjfsinuewggj")
    public suspend fun allocatedStorageSizeTb(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.allocatedStorageSizeTb = mapped
    }

    /**
     * @param value (Output)
     * Oracle APEX Application Development.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex
     * Structure is documented below.
     */
    @JvmName("vnddmbxcqbqaeden")
    public suspend fun apexDetails(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.apexDetails = mapped
    }

    /**
     * @param argument (Output)
     * Oracle APEX Application Development.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex
     * Structure is documented below.
     */
    @JvmName("krvnpepmqnpaicti")
    public suspend fun apexDetails(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesApexDetailArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.apexDetails = mapped
    }

    /**
     * @param argument (Output)
     * Oracle APEX Application Development.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex
     * Structure is documented below.
     */
    @JvmName("ckcoqmldrsomruni")
    public suspend fun apexDetails(vararg argument: suspend AutonomousDatabasePropertiesApexDetailArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesApexDetailArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.apexDetails = mapped
    }

    /**
     * @param argument (Output)
     * Oracle APEX Application Development.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex
     * Structure is documented below.
     */
    @JvmName("ltwtjlgrbpgtwtss")
    public suspend fun apexDetails(argument: suspend AutonomousDatabasePropertiesApexDetailArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            AutonomousDatabasePropertiesApexDetailArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.apexDetails = mapped
    }

    /**
     * @param values (Output)
     * Oracle APEX Application Development.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex
     * Structure is documented below.
     */
    @JvmName("niywrxvyygjuwqnf")
    public suspend fun apexDetails(vararg values: AutonomousDatabasePropertiesApexDetailArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.apexDetails = mapped
    }

    /**
     * @param value (Output)
     * This field indicates the status of Data Guard and Access control for the
     * Autonomous Database. The field's value is null if Data Guard is disabled
     * or Access Control is disabled. The field's value is TRUE if both Data Guard
     * and Access Control are enabled, and the Autonomous Database is using
     * primary IP access control list (ACL) for standby. The field's value is
     * FALSE if both Data Guard and Access Control are enabled, and the Autonomous
     * Database is using a different IP access control list (ACL) for standby
     * compared to primary.
     */
    @JvmName("rcqskwhsckujndng")
    public suspend fun arePrimaryAllowlistedIpsUsed(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.arePrimaryAllowlistedIpsUsed = mapped
    }

    /**
     * @param value (Output)
     * The Autonomous Container Database OCID.
     */
    @JvmName("vrupqkajlfudxcck")
    public suspend fun autonomousContainerDatabaseId(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.autonomousContainerDatabaseId = mapped
    }

    /**
     * @param value (Output)
     * The list of available Oracle Database upgrade versions for an Autonomous
     * Database.
     */
    @JvmName("wnerfakcnikmxmjr")
    public suspend fun availableUpgradeVersions(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.availableUpgradeVersions = mapped
    }

    /**
     * @param values (Output)
     * The list of available Oracle Database upgrade versions for an Autonomous
     * Database.
     */
    @JvmName("lgollvgfvshqqqji")
    public suspend fun availableUpgradeVersions(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.availableUpgradeVersions = mapped
    }

    /**
     * @param value The retention period for the Autonomous Database. This field is specified
     * in days, can range from 1 day to 60 days, and has a default value of
     * 60 days.
     */
    @JvmName("hlrccgepqqitccgk")
    public suspend fun backupRetentionPeriodDays(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.backupRetentionPeriodDays = mapped
    }

    /**
     * @param value The character set for the Autonomous Database. The default is AL32UTF8.
     */
    @JvmName("vgxnoajmbeoolahg")
    public suspend fun characterSet(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.characterSet = mapped
    }

    /**
     * @param value The number of compute servers for the Autonomous Database.
     */
    @JvmName("bwfupebnqotydtgv")
    public suspend fun computeCount(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.computeCount = mapped
    }

    /**
     * @param value (Output)
     * The connection string used to connect to the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings
     * Structure is documented below.
     */
    @JvmName("pmhmtlgsntjtcsnd")
    public suspend fun connectionStrings(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.connectionStrings = mapped
    }

    /**
     * @param argument (Output)
     * The connection string used to connect to the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings
     * Structure is documented below.
     */
    @JvmName("rsyahkcqherrqqjh")
    public suspend fun connectionStrings(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesConnectionStringArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.connectionStrings = mapped
    }

    /**
     * @param argument (Output)
     * The connection string used to connect to the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings
     * Structure is documented below.
     */
    @JvmName("kygwclfsijlwdnjb")
    public suspend fun connectionStrings(vararg argument: suspend AutonomousDatabasePropertiesConnectionStringArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesConnectionStringArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.connectionStrings = mapped
    }

    /**
     * @param argument (Output)
     * The connection string used to connect to the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings
     * Structure is documented below.
     */
    @JvmName("qbyfdfffdoyyhcik")
    public suspend fun connectionStrings(argument: suspend AutonomousDatabasePropertiesConnectionStringArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            AutonomousDatabasePropertiesConnectionStringArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.connectionStrings = mapped
    }

    /**
     * @param values (Output)
     * The connection string used to connect to the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings
     * Structure is documented below.
     */
    @JvmName("qykdjwwsncjvwobo")
    public suspend fun connectionStrings(vararg values: AutonomousDatabasePropertiesConnectionStringArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.connectionStrings = mapped
    }

    /**
     * @param value (Output)
     * The URLs for accessing Oracle Application Express (APEX) and SQL Developer
     * Web with a browser from a Compute instance.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionUrls
     * Structure is documented below.
     */
    @JvmName("ecpcuijsmwoewhtd")
    public suspend fun connectionUrls(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.connectionUrls = mapped
    }

    /**
     * @param argument (Output)
     * The URLs for accessing Oracle Application Express (APEX) and SQL Developer
     * Web with a browser from a Compute instance.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionUrls
     * Structure is documented below.
     */
    @JvmName("xegesanuroeglvem")
    public suspend fun connectionUrls(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesConnectionUrlArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.connectionUrls = mapped
    }

    /**
     * @param argument (Output)
     * The URLs for accessing Oracle Application Express (APEX) and SQL Developer
     * Web with a browser from a Compute instance.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionUrls
     * Structure is documented below.
     */
    @JvmName("ctoxdrhvquccwnko")
    public suspend fun connectionUrls(vararg argument: suspend AutonomousDatabasePropertiesConnectionUrlArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesConnectionUrlArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.connectionUrls = mapped
    }

    /**
     * @param argument (Output)
     * The URLs for accessing Oracle Application Express (APEX) and SQL Developer
     * Web with a browser from a Compute instance.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionUrls
     * Structure is documented below.
     */
    @JvmName("lridneccxrnwcect")
    public suspend fun connectionUrls(argument: suspend AutonomousDatabasePropertiesConnectionUrlArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            AutonomousDatabasePropertiesConnectionUrlArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.connectionUrls = mapped
    }

    /**
     * @param values (Output)
     * The URLs for accessing Oracle Application Express (APEX) and SQL Developer
     * Web with a browser from a Compute instance.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionUrls
     * Structure is documented below.
     */
    @JvmName("bbwctrqumlrjhmti")
    public suspend fun connectionUrls(vararg values: AutonomousDatabasePropertiesConnectionUrlArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.connectionUrls = mapped
    }

    /**
     * @param value The list of customer contacts.
     * Structure is documented below.
     */
    @JvmName("xbrpjpwycvyxjkdm")
    public suspend fun customerContacts(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.customerContacts = mapped
    }

    /**
     * @param argument The list of customer contacts.
     * Structure is documented below.
     */
    @JvmName("krusppbunupbywvw")
    public suspend fun customerContacts(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesCustomerContactArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.customerContacts = mapped
    }

    /**
     * @param argument The list of customer contacts.
     * Structure is documented below.
     */
    @JvmName("sfhjnuxuvtsyutir")
    public suspend fun customerContacts(vararg argument: suspend AutonomousDatabasePropertiesCustomerContactArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesCustomerContactArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.customerContacts = mapped
    }

    /**
     * @param argument The list of customer contacts.
     * Structure is documented below.
     */
    @JvmName("awbemegeposkcmcb")
    public suspend fun customerContacts(argument: suspend AutonomousDatabasePropertiesCustomerContactArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            AutonomousDatabasePropertiesCustomerContactArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.customerContacts = mapped
    }

    /**
     * @param values The list of customer contacts.
     * Structure is documented below.
     */
    @JvmName("jdirmjyclxvsmxjs")
    public suspend fun customerContacts(vararg values: AutonomousDatabasePropertiesCustomerContactArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.customerContacts = mapped
    }

    /**
     * @param value (Output)
     * The current state of the Data Safe registration for the
     * Autonomous Database.
     * Possible values:
     * DATA_SAFE_STATE_UNSPECIFIED
     * REGISTERING
     * REGISTERED
     * DEREGISTERING
     * NOT_REGISTERED
     * FAILED
     */
    @JvmName("qnxkpangjhhtbjtx")
    public suspend fun dataSafeState(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dataSafeState = mapped
    }

    /**
     * @param value The size of the data stored in the database, in gigabytes.
     */
    @JvmName("fnbefnnncsyforkr")
    public suspend fun dataStorageSizeGb(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dataStorageSizeGb = mapped
    }

    /**
     * @param value The size of the data stored in the database, in terabytes.
     */
    @JvmName("vpjietgutqaorjkf")
    public suspend fun dataStorageSizeTb(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dataStorageSizeTb = mapped
    }

    /**
     * @param value (Output)
     * The current state of database management for the Autonomous Database.
     * Possible values:
     * DATABASE_MANAGEMENT_STATE_UNSPECIFIED
     * ENABLING
     * ENABLED
     * DISABLING
     * NOT_ENABLED
     * FAILED_ENABLING
     * FAILED_DISABLING
     */
    @JvmName("foibduvwwtbuurgf")
    public suspend fun databaseManagementState(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.databaseManagementState = mapped
    }

    /**
     * @param value The edition of the Autonomous Databases.
     * Possible values:
     * DATABASE_EDITION_UNSPECIFIED
     * STANDARD_EDITION
     * ENTERPRISE_EDITION
     */
    @JvmName("waxghtonqwdjjsta")
    public suspend fun dbEdition(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dbEdition = mapped
    }

    /**
     * @param value The Oracle Database version for the Autonomous Database.
     */
    @JvmName("rssiwwieofuwcukx")
    public suspend fun dbVersion(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.dbVersion = mapped
    }

    /**
     * @param value Possible values:
     * DB_WORKLOAD_UNSPECIFIED
     * OLTP
     * DW
     * AJD
     * APEX
     */
    @JvmName("vtdfonkanicmtbsd")
    public suspend fun dbWorkload(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.dbWorkload = mapped
    }

    /**
     * @param value (Output)
     * This field indicates the number of seconds of data loss during a Data
     * Guard failover.
     */
    @JvmName("ppfymisbiyaufvge")
    public suspend fun failedDataRecoveryDuration(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.failedDataRecoveryDuration = mapped
    }

    /**
     * @param value This field indicates if auto scaling is enabled for the Autonomous Database
     * CPU core count.
     */
    @JvmName("qsshusikyoteyigs")
    public suspend fun isAutoScalingEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.isAutoScalingEnabled = mapped
    }

    /**
     * @param value (Output)
     * This field indicates whether the Autonomous Database has local (in-region)
     * Data Guard enabled.
     */
    @JvmName("ivwdoymmlkrpxcta")
    public suspend fun isLocalDataGuardEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.isLocalDataGuardEnabled = mapped
    }

    /**
     * @param value This field indicates if auto scaling is enabled for the Autonomous Database
     * storage.
     */
    @JvmName("biugmeonkdwhcccb")
    public suspend fun isStorageAutoScalingEnabled(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.isStorageAutoScalingEnabled = mapped
    }

    /**
     * @param value The license type used for the Autonomous Database.
     * Possible values:
     * LICENSE_TYPE_UNSPECIFIED
     * LICENSE_INCLUDED
     * BRING_YOUR_OWN_LICENSE
     */
    @JvmName("ucsidsukymkjjuqu")
    public suspend fun licenseType(`value`: String) {
        val toBeMapped = value
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.licenseType = mapped
    }

    /**
     * @param value (Output)
     * The details of the current lifestyle state of the Autonomous Database.
     */
    @JvmName("mgkrvwihrgdkvrwp")
    public suspend fun lifecycleDetails(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.lifecycleDetails = mapped
    }

    /**
     * @param value (Output)
     * This field indicates the maximum data loss limit for an Autonomous
     * Database, in seconds.
     */
    @JvmName("flcpgfinomptafcx")
    public suspend fun localAdgAutoFailoverMaxDataLossLimit(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.localAdgAutoFailoverMaxDataLossLimit = mapped
    }

    /**
     * @param value (Output)
     * This field indicates the local disaster recovery (DR) type of an
     * Autonomous Database.
     * Possible values:
     * LOCAL_DISASTER_RECOVERY_TYPE_UNSPECIFIED
     * ADG
     * BACKUP_BASED
     */
    @JvmName("eikkjyxnniwbcepr")
    public suspend fun localDisasterRecoveryType(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.localDisasterRecoveryType = mapped
    }

    /**
     * @param value (Output)
     * Autonomous Data Guard standby database details.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary
     * Structure is documented below.
     */
    @JvmName("wyiycsyobrqcyjau")
    public suspend fun localStandbyDbs(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.localStandbyDbs = mapped
    }

    /**
     * @param argument (Output)
     * Autonomous Data Guard standby database details.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary
     * Structure is documented below.
     */
    @JvmName("olieiocryqwafoje")
    public suspend fun localStandbyDbs(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesLocalStandbyDbArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.localStandbyDbs = mapped
    }

    /**
     * @param argument (Output)
     * Autonomous Data Guard standby database details.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary
     * Structure is documented below.
     */
    @JvmName("wanayjekukybnbbu")
    public suspend fun localStandbyDbs(vararg argument: suspend AutonomousDatabasePropertiesLocalStandbyDbArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesLocalStandbyDbArgsBuilder().applySuspend { it() }.build()
        }
        val mapped = of(toBeMapped)
        this.localStandbyDbs = mapped
    }

    /**
     * @param argument (Output)
     * Autonomous Data Guard standby database details.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary
     * Structure is documented below.
     */
    @JvmName("sfinnooxdrookyyk")
    public suspend fun localStandbyDbs(argument: suspend AutonomousDatabasePropertiesLocalStandbyDbArgsBuilder.() -> Unit) {
        val toBeMapped = listOf(
            AutonomousDatabasePropertiesLocalStandbyDbArgsBuilder().applySuspend {
                argument()
            }.build(),
        )
        val mapped = of(toBeMapped)
        this.localStandbyDbs = mapped
    }

    /**
     * @param values (Output)
     * Autonomous Data Guard standby database details.
     * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary
     * Structure is documented below.
     */
    @JvmName("etchuprehqsvnqyn")
    public suspend fun localStandbyDbs(vararg values: AutonomousDatabasePropertiesLocalStandbyDbArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.localStandbyDbs = mapped
    }

    /**
     * @param value (Output)
     * The date and time when maintenance will begin.
     */
    @JvmName("qcmwyiplcubrgvou")
    public suspend fun maintenanceBeginTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maintenanceBeginTime = mapped
    }

    /**
     * @param value (Output)
     * The date and time when maintenance will end.
     */
    @JvmName("gkrtonsyuqhabfnk")
    public suspend fun maintenanceEndTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maintenanceEndTime = mapped
    }

    /**
     * @param value The maintenance schedule of the Autonomous Database.
     * Possible values:
     * MAINTENANCE_SCHEDULE_TYPE_UNSPECIFIED
     * EARLY
     * REGULAR
     */
    @JvmName("pnmytvdskyfokdyx")
    public suspend fun maintenanceScheduleType(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.maintenanceScheduleType = mapped
    }

    /**
     * @param value (Output)
     * The amount of memory enabled per ECPU, in gigabytes.
     */
    @JvmName("gciyikstxychcuse")
    public suspend fun memoryPerOracleComputeUnitGbs(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.memoryPerOracleComputeUnitGbs = mapped
    }

    /**
     * @param value (Output)
     * The memory assigned to in-memory tables in an Autonomous Database.
     */
    @JvmName("bobxxkaoyyisyvvh")
    public suspend fun memoryTableGbs(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.memoryTableGbs = mapped
    }

    /**
     * @param value This field specifies if the Autonomous Database requires mTLS connections.
     */
    @JvmName("hfjatctmtwrlotjd")
    public suspend fun mtlsConnectionRequired(`value`: Boolean?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.mtlsConnectionRequired = mapped
    }

    /**
     * @param value The national character set for the Autonomous Database. The default is
     * AL16UTF16.
     */
    @JvmName("smacnvwtpobskpxy")
    public suspend fun nCharacterSet(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.nCharacterSet = mapped
    }

    /**
     * @param value (Output)
     * The long term backup schedule of the Autonomous Database.
     */
    @JvmName("tmcxbupsdjkwbmnj")
    public suspend fun nextLongTermBackupTime(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.nextLongTermBackupTime = mapped
    }

    /**
     * @param value (Output)
     * The Oracle Cloud Infrastructure link for the Autonomous Database.
     */
    @JvmName("ilswpaywdqvluqaf")
    public suspend fun ociUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ociUrl = mapped
    }

    /**
     * @param value (Output)
     * OCID of the Autonomous Database.
     * https://docs.oracle.com/en-us/iaas/Content/General/Concepts/identifiers.htm#Oracle
     */
    @JvmName("wyhuumbotxtsqxjo")
    public suspend fun ocid(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.ocid = mapped
    }

    /**
     * @param value (Output)
     * This field indicates the current mode of the Autonomous Database.
     * Possible values:
     * OPEN_MODE_UNSPECIFIED
     * READ_ONLY
     * READ_WRITE
     */
    @JvmName("lbmksdiobccjicmi")
    public suspend fun openMode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.openMode = mapped
    }

    /**
     * @param value Possible values:
     * OPERATIONS_INSIGHTS_STATE_UNSPECIFIED
     * ENABLING
     * ENABLED
     * DISABLING
     * NOT_ENABLED
     * FAILED_ENABLING
     * FAILED_DISABLING
     */
    @JvmName("mrmpbbvtuyllhqjk")
    public suspend fun operationsInsightsState(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.operationsInsightsState = mapped
    }

    /**
     * @param value (Output)
     * The list of OCIDs of standby databases located in Autonomous Data Guard
     * remote regions that are associated with the source database.
     */
    @JvmName("cgfrypolfwtmbvir")
    public suspend fun peerDbIds(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.peerDbIds = mapped
    }

    /**
     * @param values (Output)
     * The list of OCIDs of standby databases located in Autonomous Data Guard
     * remote regions that are associated with the source database.
     */
    @JvmName("jghlheorahocqkur")
    public suspend fun peerDbIds(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.peerDbIds = mapped
    }

    /**
     * @param value (Output)
     * The permission level of the Autonomous Database.
     * Possible values:
     * PERMISSION_LEVEL_UNSPECIFIED
     * RESTRICTED
     * UNRESTRICTED
     */
    @JvmName("xdewvjjehvomseap")
    public suspend fun permissionLevel(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.permissionLevel = mapped
    }

    /**
     * @param value (Output)
     * The private endpoint for the Autonomous Database.
     */
    @JvmName("fduuhapjpacnsucu")
    public suspend fun privateEndpoint(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.privateEndpoint = mapped
    }

    /**
     * @param value The private endpoint IP address for the Autonomous Database.
     */
    @JvmName("udyhkpsapajnnaqc")
    public suspend fun privateEndpointIp(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.privateEndpointIp = mapped
    }

    /**
     * @param value The private endpoint label for the Autonomous Database.
     */
    @JvmName("bnrsmlegrhepdnye")
    public suspend fun privateEndpointLabel(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.privateEndpointLabel = mapped
    }

    /**
     * @param value (Output)
     * The refresh mode of the cloned Autonomous Database.
     * Possible values:
     * REFRESHABLE_MODE_UNSPECIFIED
     * AUTOMATIC
     * MANUAL
     */
    @JvmName("sanbnspkkcpuesii")
    public suspend fun refreshableMode(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.refreshableMode = mapped
    }

    /**
     * @param value (Output)
     * The refresh State of the clone.
     * Possible values:
     * REFRESHABLE_STATE_UNSPECIFIED
     * REFRESHING
     * NOT_REFRESHING
     */
    @JvmName("vjtqadommhgidvdx")
    public suspend fun refreshableState(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.refreshableState = mapped
    }

    /**
     * @param value (Output)
     * The Data Guard role of the Autonomous Database.
     * Possible values:
     * ROLE_UNSPECIFIED
     * PRIMARY
     * STANDBY
     * DISABLED_STANDBY
     * BACKUP_COPY
     * SNAPSHOT_STANDBY
     */
    @JvmName("lltopyrfjkehpaxe")
    public suspend fun role(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.role = mapped
    }

    /**
     * @param value (Output)
     * The list and details of the scheduled operations of the Autonomous
     * Database.
     * Structure is documented below.
     */
    @JvmName("ssahdwksftfcpfws")
    public suspend fun scheduledOperationDetails(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.scheduledOperationDetails = mapped
    }

    /**
     * @param argument (Output)
     * The list and details of the scheduled operations of the Autonomous
     * Database.
     * Structure is documented below.
     */
    @JvmName("pqnalinbaytaluup")
    public suspend fun scheduledOperationDetails(argument: List Unit>) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesScheduledOperationDetailArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.scheduledOperationDetails = mapped
    }

    /**
     * @param argument (Output)
     * The list and details of the scheduled operations of the Autonomous
     * Database.
     * Structure is documented below.
     */
    @JvmName("mxrnymmwulrsjhkh")
    public suspend fun scheduledOperationDetails(vararg argument: suspend AutonomousDatabasePropertiesScheduledOperationDetailArgsBuilder.() -> Unit) {
        val toBeMapped = argument.toList().map {
            AutonomousDatabasePropertiesScheduledOperationDetailArgsBuilder().applySuspend {
                it()
            }.build()
        }
        val mapped = of(toBeMapped)
        this.scheduledOperationDetails = mapped
    }

    /**
     * @param argument (Output)
     * The list and details of the scheduled operations of the Autonomous
     * Database.
     * Structure is documented below.
     */
    @JvmName("hrxlywpspfikrmly")
    public suspend fun scheduledOperationDetails(argument: suspend AutonomousDatabasePropertiesScheduledOperationDetailArgsBuilder.() -> Unit) {
        val toBeMapped =
            listOf(
                AutonomousDatabasePropertiesScheduledOperationDetailArgsBuilder().applySuspend {
                    argument()
                }.build(),
            )
        val mapped = of(toBeMapped)
        this.scheduledOperationDetails = mapped
    }

    /**
     * @param values (Output)
     * The list and details of the scheduled operations of the Autonomous
     * Database.
     * Structure is documented below.
     */
    @JvmName("yjjojkudwsmmkrrr")
    public suspend fun scheduledOperationDetails(vararg values: AutonomousDatabasePropertiesScheduledOperationDetailArgs) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.scheduledOperationDetails = mapped
    }

    /**
     * @param value (Output)
     * The SQL Web Developer URL for the Autonomous Database.
     */
    @JvmName("udgamihpouloclix")
    public suspend fun sqlWebDeveloperUrl(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.sqlWebDeveloperUrl = mapped
    }

    /**
     * @param value (Output)
     * Possible values:
     * STATE_UNSPECIFIED
     * PROVISIONING
     * AVAILABLE
     * STOPPING
     * STOPPED
     * STARTING
     * TERMINATING
     * TERMINATED
     * UNAVAILABLE
     * RESTORE_IN_PROGRESS
     * RESTORE_FAILED
     * BACKUP_IN_PROGRESS
     * SCALE_IN_PROGRESS
     * AVAILABLE_NEEDS_ATTENTION
     * UPDATING
     * MAINTENANCE_IN_PROGRESS
     * RESTARTING
     * RECREATING
     * ROLE_CHANGE_IN_PROGRESS
     * UPGRADING
     * INACCESSIBLE
     * STANDBY
     */
    @JvmName("rxkipsqhbrqrsiao")
    public suspend fun state(`value`: String?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.state = mapped
    }

    /**
     * @param value (Output)
     * The list of available regions that can be used to create a clone for the
     * Autonomous Database.
     */
    @JvmName("ttorsfowlhhysgwr")
    public suspend fun supportedCloneRegions(`value`: List?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.supportedCloneRegions = mapped
    }

    /**
     * @param values (Output)
     * The list of available regions that can be used to create a clone for the
     * Autonomous Database.
     */
    @JvmName("kicjwxahjglpnmop")
    public suspend fun supportedCloneRegions(vararg values: String) {
        val toBeMapped = values.toList()
        val mapped = toBeMapped.let({ args0 -> of(args0) })
        this.supportedCloneRegions = mapped
    }

    /**
     * @param value (Output)
     * The storage space used by automatic backups of Autonomous Database, in
     * gigabytes.
     */
    @JvmName("ivqvdrooneeiofrp")
    public suspend fun totalAutoBackupStorageSizeGbs(`value`: Double?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.totalAutoBackupStorageSizeGbs = mapped
    }

    /**
     * @param value (Output)
     * The storage space used by Autonomous Database, in gigabytes.
     */
    @JvmName("egnctdbketxxjhtp")
    public suspend fun usedDataStorageSizeTbs(`value`: Int?) {
        val toBeMapped = value
        val mapped = toBeMapped?.let({ args0 -> of(args0) })
        this.usedDataStorageSizeTbs = mapped
    }

    internal fun build(): AutonomousDatabasePropertiesArgs = AutonomousDatabasePropertiesArgs(
        actualUsedDataStorageSizeTb = actualUsedDataStorageSizeTb,
        allocatedStorageSizeTb = allocatedStorageSizeTb,
        apexDetails = apexDetails,
        arePrimaryAllowlistedIpsUsed = arePrimaryAllowlistedIpsUsed,
        autonomousContainerDatabaseId = autonomousContainerDatabaseId,
        availableUpgradeVersions = availableUpgradeVersions,
        backupRetentionPeriodDays = backupRetentionPeriodDays,
        characterSet = characterSet,
        computeCount = computeCount,
        connectionStrings = connectionStrings,
        connectionUrls = connectionUrls,
        customerContacts = customerContacts,
        dataSafeState = dataSafeState,
        dataStorageSizeGb = dataStorageSizeGb,
        dataStorageSizeTb = dataStorageSizeTb,
        databaseManagementState = databaseManagementState,
        dbEdition = dbEdition,
        dbVersion = dbVersion,
        dbWorkload = dbWorkload ?: throw PulumiNullFieldException("dbWorkload"),
        failedDataRecoveryDuration = failedDataRecoveryDuration,
        isAutoScalingEnabled = isAutoScalingEnabled,
        isLocalDataGuardEnabled = isLocalDataGuardEnabled,
        isStorageAutoScalingEnabled = isStorageAutoScalingEnabled,
        licenseType = licenseType ?: throw PulumiNullFieldException("licenseType"),
        lifecycleDetails = lifecycleDetails,
        localAdgAutoFailoverMaxDataLossLimit = localAdgAutoFailoverMaxDataLossLimit,
        localDisasterRecoveryType = localDisasterRecoveryType,
        localStandbyDbs = localStandbyDbs,
        maintenanceBeginTime = maintenanceBeginTime,
        maintenanceEndTime = maintenanceEndTime,
        maintenanceScheduleType = maintenanceScheduleType,
        memoryPerOracleComputeUnitGbs = memoryPerOracleComputeUnitGbs,
        memoryTableGbs = memoryTableGbs,
        mtlsConnectionRequired = mtlsConnectionRequired,
        nCharacterSet = nCharacterSet,
        nextLongTermBackupTime = nextLongTermBackupTime,
        ociUrl = ociUrl,
        ocid = ocid,
        openMode = openMode,
        operationsInsightsState = operationsInsightsState,
        peerDbIds = peerDbIds,
        permissionLevel = permissionLevel,
        privateEndpoint = privateEndpoint,
        privateEndpointIp = privateEndpointIp,
        privateEndpointLabel = privateEndpointLabel,
        refreshableMode = refreshableMode,
        refreshableState = refreshableState,
        role = role,
        scheduledOperationDetails = scheduledOperationDetails,
        sqlWebDeveloperUrl = sqlWebDeveloperUrl,
        state = state,
        supportedCloneRegions = supportedCloneRegions,
        totalAutoBackupStorageSizeGbs = totalAutoBackupStorageSizeGbs,
        usedDataStorageSizeTbs = usedDataStorageSizeTbs,
    )
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy