// Copyright 2022 Luca Casonato. All rights reserved. MIT license. /** * Oracle Database@Google Cloud API Client for Deno * ================================================ * * The Oracle Database@Google Cloud API provides a set of APIs to manage Oracle database services, such as Exadata and Autonomous Databases. * * Docs: https://cloud.google.com/oracle/database/docs * Source: https://googleapis.deno.dev/v1/oracledatabase:v1.ts */ import { auth, CredentialsClient, GoogleAuth, request } from "/_/base@v1/mod.ts"; export { auth, GoogleAuth }; export type { CredentialsClient }; /** * The Oracle Database@Google Cloud API provides a set of APIs to manage Oracle * database services, such as Exadata and Autonomous Databases. */ export class Oracledatabase { #client: CredentialsClient | undefined; #baseUrl: string; constructor(client?: CredentialsClient, baseUrl: string = "https://oracledatabase.googleapis.com/") { this.#client = client; this.#baseUrl = baseUrl; } /** * Lists the long-term and automatic backups of an Autonomous Database. * * @param parent Required. The parent value for ListAutonomousDatabaseBackups in the following format: projects/{project}/locations/{location}. */ async projectsLocationsAutonomousDatabaseBackupsList(parent: string, opts: ProjectsLocationsAutonomousDatabaseBackupsListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/autonomousDatabaseBackups`); if (opts.filter !== undefined) { url.searchParams.append("filter", String(opts.filter)); } if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListAutonomousDatabaseBackupsResponse; } /** * Lists Autonomous Database Character Sets in a given project and location. * * @param parent Required. The parent value for the Autonomous Database in the following format: projects/{project}/locations/{location}. */ async projectsLocationsAutonomousDatabaseCharacterSetsList(parent: string, opts: ProjectsLocationsAutonomousDatabaseCharacterSetsListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/autonomousDatabaseCharacterSets`); if (opts.filter !== undefined) { url.searchParams.append("filter", String(opts.filter)); } if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListAutonomousDatabaseCharacterSetsResponse; } /** * Creates a new Autonomous Database in a given project and location. * * @param parent Required. The name of the parent in the following format: projects/{project}/locations/{location}. */ async projectsLocationsAutonomousDatabasesCreate(parent: string, req: AutonomousDatabase, opts: ProjectsLocationsAutonomousDatabasesCreateOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/autonomousDatabases`); if (opts.autonomousDatabaseId !== undefined) { url.searchParams.append("autonomousDatabaseId", String(opts.autonomousDatabaseId)); } if (opts.requestId !== undefined) { url.searchParams.append("requestId", String(opts.requestId)); } const body = JSON.stringify(req); const data = await request(url.href, { client: this.#client, method: "POST", body, }); return data as Operation; } /** * Deletes a single Autonomous Database. * * @param name Required. The name of the resource in the following format: projects/{project}/locations/{location}/autonomousDatabases/{autonomous_database}. */ async projectsLocationsAutonomousDatabasesDelete(name: string, opts: ProjectsLocationsAutonomousDatabasesDeleteOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); if (opts.requestId !== undefined) { url.searchParams.append("requestId", String(opts.requestId)); } const data = await request(url.href, { client: this.#client, method: "DELETE", }); return data as Operation; } /** * Generates a wallet for an Autonomous Database. * * @param name Required. The name of the Autonomous Database in the following format: projects/{project}/locations/{location}/autonomousDatabases/{autonomous_database}. */ async projectsLocationsAutonomousDatabasesGenerateWallet(name: string, req: GenerateAutonomousDatabaseWalletRequest): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }:generateWallet`); const body = JSON.stringify(req); const data = await request(url.href, { client: this.#client, method: "POST", body, }); return data as GenerateAutonomousDatabaseWalletResponse; } /** * Gets the details of a single Autonomous Database. * * @param name Required. The name of the Autonomous Database in the following format: projects/{project}/locations/{location}/autonomousDatabases/{autonomous_database}. */ async projectsLocationsAutonomousDatabasesGet(name: string): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); const data = await request(url.href, { client: this.#client, method: "GET", }); return data as AutonomousDatabase; } /** * Lists the Autonomous Databases in a given project and location. * * @param parent Required. The parent value for the Autonomous Database in the following format: projects/{project}/locations/{location}. */ async projectsLocationsAutonomousDatabasesList(parent: string, opts: ProjectsLocationsAutonomousDatabasesListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/autonomousDatabases`); if (opts.filter !== undefined) { url.searchParams.append("filter", String(opts.filter)); } if (opts.orderBy !== undefined) { url.searchParams.append("orderBy", String(opts.orderBy)); } if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListAutonomousDatabasesResponse; } /** * Restores a single Autonomous Database. * * @param name Required. The name of the Autonomous Database in the following format: projects/{project}/locations/{location}/autonomousDatabases/{autonomous_database}. */ async projectsLocationsAutonomousDatabasesRestore(name: string, req: RestoreAutonomousDatabaseRequest): Promise { req = serializeRestoreAutonomousDatabaseRequest(req); const url = new URL(`${this.#baseUrl}v1/${ name }:restore`); const body = JSON.stringify(req); const data = await request(url.href, { client: this.#client, method: "POST", body, }); return data as Operation; } /** * Lists all the available Autonomous Database versions for a project and * location. * * @param parent Required. The parent value for the Autonomous Database in the following format: projects/{project}/locations/{location}. */ async projectsLocationsAutonomousDbVersionsList(parent: string, opts: ProjectsLocationsAutonomousDbVersionsListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/autonomousDbVersions`); if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListAutonomousDbVersionsResponse; } /** * Creates a new Exadata Infrastructure in a given project and location. * * @param parent Required. The parent value for CloudExadataInfrastructure in the following format: projects/{project}/locations/{location}. */ async projectsLocationsCloudExadataInfrastructuresCreate(parent: string, req: CloudExadataInfrastructure, opts: ProjectsLocationsCloudExadataInfrastructuresCreateOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/cloudExadataInfrastructures`); if (opts.cloudExadataInfrastructureId !== undefined) { url.searchParams.append("cloudExadataInfrastructureId", String(opts.cloudExadataInfrastructureId)); } if (opts.requestId !== undefined) { url.searchParams.append("requestId", String(opts.requestId)); } const body = JSON.stringify(req); const data = await request(url.href, { client: this.#client, method: "POST", body, }); return data as Operation; } /** * Lists the database servers of an Exadata Infrastructure instance. * * @param parent Required. The parent value for database server in the following format: projects/{project}/locations/{location}/cloudExadataInfrastructures/{cloudExadataInfrastructure}. */ async projectsLocationsCloudExadataInfrastructuresDbServersList(parent: string, opts: ProjectsLocationsCloudExadataInfrastructuresDbServersListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/dbServers`); if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListDbServersResponse; } /** * Deletes a single Exadata Infrastructure. * * @param name Required. The name of the Cloud Exadata Infrastructure in the following format: projects/{project}/locations/{location}/cloudExadataInfrastructures/{cloud_exadata_infrastructure}. */ async projectsLocationsCloudExadataInfrastructuresDelete(name: string, opts: ProjectsLocationsCloudExadataInfrastructuresDeleteOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); if (opts.force !== undefined) { url.searchParams.append("force", String(opts.force)); } if (opts.requestId !== undefined) { url.searchParams.append("requestId", String(opts.requestId)); } const data = await request(url.href, { client: this.#client, method: "DELETE", }); return data as Operation; } /** * Gets details of a single Exadata Infrastructure. * * @param name Required. The name of the Cloud Exadata Infrastructure in the following format: projects/{project}/locations/{location}/cloudExadataInfrastructures/{cloud_exadata_infrastructure}. */ async projectsLocationsCloudExadataInfrastructuresGet(name: string): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); const data = await request(url.href, { client: this.#client, method: "GET", }); return data as CloudExadataInfrastructure; } /** * Lists Exadata Infrastructures in a given project and location. * * @param parent Required. The parent value for CloudExadataInfrastructure in the following format: projects/{project}/locations/{location}. */ async projectsLocationsCloudExadataInfrastructuresList(parent: string, opts: ProjectsLocationsCloudExadataInfrastructuresListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/cloudExadataInfrastructures`); if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListCloudExadataInfrastructuresResponse; } /** * Creates a new VM Cluster in a given project and location. * * @param parent Required. The name of the parent in the following format: projects/{project}/locations/{location}. */ async projectsLocationsCloudVmClustersCreate(parent: string, req: CloudVmCluster, opts: ProjectsLocationsCloudVmClustersCreateOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/cloudVmClusters`); if (opts.cloudVmClusterId !== undefined) { url.searchParams.append("cloudVmClusterId", String(opts.cloudVmClusterId)); } if (opts.requestId !== undefined) { url.searchParams.append("requestId", String(opts.requestId)); } const body = JSON.stringify(req); const data = await request(url.href, { client: this.#client, method: "POST", body, }); return data as Operation; } /** * Lists the database nodes of a VM Cluster. * * @param parent Required. The parent value for database node in the following format: projects/{project}/locations/{location}/cloudVmClusters/{cloudVmCluster}. */ async projectsLocationsCloudVmClustersDbNodesList(parent: string, opts: ProjectsLocationsCloudVmClustersDbNodesListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/dbNodes`); if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListDbNodesResponse; } /** * Deletes a single VM Cluster. * * @param name Required. The name of the Cloud VM Cluster in the following format: projects/{project}/locations/{location}/cloudVmClusters/{cloud_vm_cluster}. */ async projectsLocationsCloudVmClustersDelete(name: string, opts: ProjectsLocationsCloudVmClustersDeleteOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); if (opts.force !== undefined) { url.searchParams.append("force", String(opts.force)); } if (opts.requestId !== undefined) { url.searchParams.append("requestId", String(opts.requestId)); } const data = await request(url.href, { client: this.#client, method: "DELETE", }); return data as Operation; } /** * Gets details of a single VM Cluster. * * @param name Required. The name of the Cloud VM Cluster in the following format: projects/{project}/locations/{location}/cloudVmClusters/{cloud_vm_cluster}. */ async projectsLocationsCloudVmClustersGet(name: string): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); const data = await request(url.href, { client: this.#client, method: "GET", }); return data as CloudVmCluster; } /** * Lists the VM Clusters in a given project and location. * * @param parent Required. The name of the parent in the following format: projects/{project}/locations/{location}. */ async projectsLocationsCloudVmClustersList(parent: string, opts: ProjectsLocationsCloudVmClustersListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/cloudVmClusters`); if (opts.filter !== undefined) { url.searchParams.append("filter", String(opts.filter)); } if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListCloudVmClustersResponse; } /** * Lists the database system shapes available for the project and location. * * @param parent Required. The parent value for Database System Shapes in the following format: projects/{project}/locations/{location}. */ async projectsLocationsDbSystemShapesList(parent: string, opts: ProjectsLocationsDbSystemShapesListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/dbSystemShapes`); if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListDbSystemShapesResponse; } /** * Lists the entitlements in a given project. * * @param parent Required. The parent value for the entitlement in the following format: projects/{project}/locations/{location}. */ async projectsLocationsEntitlementsList(parent: string, opts: ProjectsLocationsEntitlementsListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/entitlements`); if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListEntitlementsResponse; } /** * Gets information about a location. * * @param name Resource name for the location. */ async projectsLocationsGet(name: string): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); const data = await request(url.href, { client: this.#client, method: "GET", }); return data as Location; } /** * Lists all the valid Oracle Grid Infrastructure (GI) versions for the given * project and location. * * @param parent Required. The parent value for Grid Infrastructure Version in the following format: Format: projects/{project}/locations/{location}. */ async projectsLocationsGiVersionsList(parent: string, opts: ProjectsLocationsGiVersionsListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ parent }/giVersions`); if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListGiVersionsResponse; } /** * Lists information about the supported locations for this service. * * @param name The resource that owns the locations collection, if applicable. */ async projectsLocationsList(name: string, opts: ProjectsLocationsListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }/locations`); if (opts.filter !== undefined) { url.searchParams.append("filter", String(opts.filter)); } if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListLocationsResponse; } /** * Starts asynchronous cancellation on a long-running operation. The server * makes a best effort to cancel the operation, but success is not guaranteed. * If the server doesn't support this method, it returns * `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or * other methods to check whether the cancellation succeeded or whether the * operation completed despite cancellation. On successful cancellation, the * operation is not deleted; instead, it becomes an operation with an * Operation.error value with a google.rpc.Status.code of 1, corresponding to * `Code.CANCELLED`. * * @param name The name of the operation resource to be cancelled. */ async projectsLocationsOperationsCancel(name: string, req: CancelOperationRequest): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }:cancel`); const body = JSON.stringify(req); const data = await request(url.href, { client: this.#client, method: "POST", body, }); return data as Empty; } /** * Deletes a long-running operation. This method indicates that the client is * no longer interested in the operation result. It does not cancel the * operation. If the server doesn't support this method, it returns * `google.rpc.Code.UNIMPLEMENTED`. * * @param name The name of the operation resource to be deleted. */ async projectsLocationsOperationsDelete(name: string): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); const data = await request(url.href, { client: this.#client, method: "DELETE", }); return data as Empty; } /** * Gets the latest state of a long-running operation. Clients can use this * method to poll the operation result at intervals as recommended by the API * service. * * @param name The name of the operation resource. */ async projectsLocationsOperationsGet(name: string): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }`); const data = await request(url.href, { client: this.#client, method: "GET", }); return data as Operation; } /** * Lists operations that match the specified filter in the request. If the * server doesn't support this method, it returns `UNIMPLEMENTED`. * * @param name The name of the operation's parent resource. */ async projectsLocationsOperationsList(name: string, opts: ProjectsLocationsOperationsListOptions = {}): Promise { const url = new URL(`${this.#baseUrl}v1/${ name }/operations`); if (opts.filter !== undefined) { url.searchParams.append("filter", String(opts.filter)); } if (opts.pageSize !== undefined) { url.searchParams.append("pageSize", String(opts.pageSize)); } if (opts.pageToken !== undefined) { url.searchParams.append("pageToken", String(opts.pageToken)); } const data = await request(url.href, { client: this.#client, method: "GET", }); return data as ListOperationsResponse; } } /** * A list of all connection strings that can be used to connect to the * Autonomous Database. */ export interface AllConnectionStrings { /** * Output only. The database service provides the highest level of resources * to each SQL statement. */ readonly high?: string; /** * Output only. The database service provides the least level of resources to * each SQL statement. */ readonly low?: string; /** * Output only. The database service provides a lower level of resources to * each SQL statement. */ readonly medium?: string; } /** * Details of the Autonomous Database resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabase/ */ export interface AutonomousDatabase { /** * Optional. The password for the default ADMIN user. */ adminPassword?: string; /** * Required. The subnet CIDR range for the Autonmous Database. */ cidr?: string; /** * Output only. The date and time that the Autonomous Database was created. */ readonly createTime?: Date; /** * Optional. The name of the Autonomous Database. The database name must be * unique in the project. The name must begin with a letter and can contain a * maximum of 30 alphanumeric characters. */ database?: string; /** * Optional. The display name for the Autonomous Database. The name does not * have to be unique within your project. */ displayName?: string; /** * Output only. The ID of the subscription entitlement associated with the * Autonomous Database. */ readonly entitlementId?: string; /** * Optional. The labels or tags associated with the Autonomous Database. */ labels?: { [key: string]: string }; /** * Identifier. The name of the Autonomous Database resource in the following * format: * projects/{project}/locations/{region}/autonomousDatabases/{autonomous_database} */ name?: string; /** * Required. The name of the VPC network used by the Autonomous Database in * the following format: projects/{project}/global/networks/{network} */ network?: string; /** * Optional. The properties of the Autonomous Database. */ properties?: AutonomousDatabaseProperties; } /** * Oracle APEX Application Development. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseApex */ export interface AutonomousDatabaseApex { /** * Output only. The Oracle APEX Application Development version. */ readonly apexVersion?: string; /** * Output only. The Oracle REST Data Services (ORDS) version. */ readonly ordsVersion?: string; } /** * Details of the Autonomous Database Backup resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabaseBackup/ */ export interface AutonomousDatabaseBackup { /** * Required. The name of the Autonomous Database resource for which the * backup is being created. Format: * projects/{project}/locations/{region}/autonomousDatabases/{autonomous_database} */ autonomousDatabase?: string; /** * Optional. User friendly name for the Backup. The name does not have to be * unique. */ displayName?: string; /** * Optional. labels or tags associated with the resource. */ labels?: { [key: string]: string }; /** * Identifier. The name of the Autonomous Database Backup resource with the * format: * projects/{project}/locations/{region}/autonomousDatabaseBackups/{autonomous_database_backup} */ name?: string; /** * Optional. Various properties of the backup. */ properties?: AutonomousDatabaseBackupProperties; } /** * Properties of the Autonomous Database Backup resource. */ export interface AutonomousDatabaseBackupProperties { /** * Output only. Timestamp until when the backup will be available. */ readonly availableTillTime?: Date; /** * Output only. The OCID of the compartment. */ readonly compartmentId?: string; /** * Output only. The quantity of data in the database, in terabytes. */ readonly databaseSizeTb?: number; /** * Output only. A valid Oracle Database version for Autonomous Database. */ readonly dbVersion?: string; /** * Output only. The date and time the backup completed. */ readonly endTime?: Date; /** * Output only. Indicates if the backup is automatic or user initiated. */ readonly isAutomaticBackup?: boolean; /** * Output only. Indicates if the backup is long term backup. */ readonly isLongTermBackup?: boolean; /** * Output only. Indicates if the backup can be used to restore the Autonomous * Database. */ readonly isRestorable?: boolean; /** * Optional. The OCID of the key store of Oracle Vault. */ keyStoreId?: string; /** * Optional. The wallet name for Oracle Key Vault. */ keyStoreWallet?: string; /** * Optional. The OCID of the key container that is used as the master * encryption key in database transparent data encryption (TDE) operations. */ kmsKeyId?: string; /** * Optional. The OCID of the key container version that is used in database * transparent data encryption (TDE) operations KMS Key can have multiple key * versions. If none is specified, the current key version (latest) of the Key * Id is used for the operation. Autonomous Database Serverless does not use * key versions, hence is not applicable for Autonomous Database Serverless * instances. */ kmsKeyVersionId?: string; /** * Output only. Additional information about the current lifecycle state. */ readonly lifecycleDetails?: string; /** * Output only. The lifecycle state of the backup. */ readonly lifecycleState?: | "STATE_UNSPECIFIED" | "CREATING" | "ACTIVE" | "DELETING" | "DELETED" | "FAILED" | "UPDATING"; /** * Output only. OCID of the Autonomous Database backup. * https://docs.oracle.com/en-us/iaas/Content/General/Concepts/identifiers.htm#Oracle */ readonly ocid?: string; /** * Optional. Retention period in days for the backup. */ retentionPeriodDays?: number; /** * Output only. The backup size in terabytes. */ readonly sizeTb?: number; /** * Output only. The date and time the backup started. */ readonly startTime?: Date; /** * Output only. The type of the backup. */ readonly type?: | "TYPE_UNSPECIFIED" | "INCREMENTAL" | "FULL" | "LONG_TERM"; /** * Optional. The OCID of the vault. */ vaultId?: string; } /** * Details of the Autonomous Database character set resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDatabaseCharacterSets/ */ export interface AutonomousDatabaseCharacterSet { /** * Output only. The character set name for the Autonomous Database which is * the ID in the resource name. */ readonly characterSet?: string; /** * Output only. The character set type for the Autonomous Database. */ readonly characterSetType?: | "CHARACTER_SET_TYPE_UNSPECIFIED" | "DATABASE" | "NATIONAL"; /** * Identifier. The name of the Autonomous Database Character Set resource in * the following format: * projects/{project}/locations/{region}/autonomousDatabaseCharacterSets/{autonomous_database_character_set} */ name?: string; } /** * The connection string used to connect to the Autonomous Database. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseConnectionStrings */ export interface AutonomousDatabaseConnectionStrings { /** * Output only. Returns all connection strings that can be used to connect to * the Autonomous Database. */ readonly allConnectionStrings?: AllConnectionStrings; /** * Output only. The database service provides the least level of resources to * each SQL statement, but supports the most number of concurrent SQL * statements. */ readonly dedicated?: string; /** * Output only. The database service provides the highest level of resources * to each SQL statement. */ readonly high?: string; /** * Output only. The database service provides the least level of resources to * each SQL statement. */ readonly low?: string; /** * Output only. The database service provides a lower level of resources to * each SQL statement. */ readonly medium?: string; /** * Output only. A list of connection string profiles to allow clients to * group, filter, and select values based on the structured metadata. */ readonly profiles?: DatabaseConnectionStringProfile[]; } /** * 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 */ export interface AutonomousDatabaseConnectionUrls { /** * Output only. Oracle Application Express (APEX) URL. */ readonly apexUri?: string; /** * Output only. The URL of the Database Transforms for the Autonomous * Database. */ readonly databaseTransformsUri?: string; /** * Output only. The URL of the Graph Studio for the Autonomous Database. */ readonly graphStudioUri?: string; /** * Output only. The URL of the Oracle Machine Learning (OML) Notebook for the * Autonomous Database. */ readonly machineLearningNotebookUri?: string; /** * Output only. The URL of Machine Learning user management the Autonomous * Database. */ readonly machineLearningUserManagementUri?: string; /** * Output only. The URL of the MongoDB API for the Autonomous Database. */ readonly mongoDbUri?: string; /** * Output only. The Oracle REST Data Services (ORDS) URL of the Web Access * for the Autonomous Database. */ readonly ordsUri?: string; /** * Output only. The URL of the Oracle SQL Developer Web for the Autonomous * Database. */ readonly sqlDevWebUri?: string; } /** * The properties of an Autonomous Database. */ export interface AutonomousDatabaseProperties { /** * Output only. The amount of storage currently being used for user and * system data, in terabytes. */ readonly actualUsedDataStorageSizeTb?: number; /** * Output only. The amount of storage currently allocated for the database * tables and billed for, rounded up in terabytes. */ readonly allocatedStorageSizeTb?: number; /** * Output only. The details for the Oracle APEX Application Development. */ readonly apexDetails?: AutonomousDatabaseApex; /** * Output only. 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. */ readonly arePrimaryAllowlistedIpsUsed?: boolean; /** * Output only. The Autonomous Container Database OCID. */ readonly autonomousContainerDatabaseId?: string; /** * Output only. The list of available Oracle Database upgrade versions for an * Autonomous Database. */ readonly availableUpgradeVersions?: string[]; /** * Optional. 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. */ backupRetentionPeriodDays?: number; /** * Optional. The character set for the Autonomous Database. The default is * AL32UTF8. */ characterSet?: string; /** * Optional. The number of compute servers for the Autonomous Database. */ computeCount?: number; /** * Output only. The connection strings used to connect to an Autonomous * Database. */ readonly connectionStrings?: AutonomousDatabaseConnectionStrings; /** * Output only. The Oracle Connection URLs for an Autonomous Database. */ readonly connectionUrls?: AutonomousDatabaseConnectionUrls; /** * Optional. The number of CPU cores to be made available to the database. */ cpuCoreCount?: number; /** * Optional. The list of customer contacts. */ customerContacts?: CustomerContact[]; /** * Output only. The current state of database management for the Autonomous * Database. */ readonly databaseManagementState?: | "DATABASE_MANAGEMENT_STATE_UNSPECIFIED" | "ENABLING" | "ENABLED" | "DISABLING" | "NOT_ENABLED" | "FAILED_ENABLING" | "FAILED_DISABLING"; /** * Output only. The current state of the Data Safe registration for the * Autonomous Database. */ readonly dataSafeState?: | "DATA_SAFE_STATE_UNSPECIFIED" | "REGISTERING" | "REGISTERED" | "DEREGISTERING" | "NOT_REGISTERED" | "FAILED"; /** * Optional. The size of the data stored in the database, in gigabytes. */ dataStorageSizeGb?: number; /** * Optional. The size of the data stored in the database, in terabytes. */ dataStorageSizeTb?: number; /** * Optional. The edition of the Autonomous Databases. */ dbEdition?: | "DATABASE_EDITION_UNSPECIFIED" | "STANDARD_EDITION" | "ENTERPRISE_EDITION"; /** * Optional. The Oracle Database version for the Autonomous Database. */ dbVersion?: string; /** * Required. The workload type of the Autonomous Database. */ dbWorkload?: | "DB_WORKLOAD_UNSPECIFIED" | "OLTP" | "DW" | "AJD" | "APEX"; /** * Output only. This field indicates the number of seconds of data loss * during a Data Guard failover. */ readonly failedDataRecoveryDuration?: number /* Duration */; /** * Optional. This field indicates if auto scaling is enabled for the * Autonomous Database CPU core count. */ isAutoScalingEnabled?: boolean; /** * Output only. This field indicates whether the Autonomous Database has * local (in-region) Data Guard enabled. */ readonly isLocalDataGuardEnabled?: boolean; /** * Optional. This field indicates if auto scaling is enabled for the * Autonomous Database storage. */ isStorageAutoScalingEnabled?: boolean; /** * Required. The license type used for the Autonomous Database. */ licenseType?: | "LICENSE_TYPE_UNSPECIFIED" | "LICENSE_INCLUDED" | "BRING_YOUR_OWN_LICENSE"; /** * Output only. The details of the current lifestyle state of the Autonomous * Database. */ readonly lifecycleDetails?: string; /** * Output only. This field indicates the maximum data loss limit for an * Autonomous Database, in seconds. */ readonly localAdgAutoFailoverMaxDataLossLimit?: number; /** * Output only. This field indicates the local disaster recovery (DR) type of * an Autonomous Database. */ readonly localDisasterRecoveryType?: | "LOCAL_DISASTER_RECOVERY_TYPE_UNSPECIFIED" | "ADG" | "BACKUP_BASED"; /** * Output only. The details of the Autonomous Data Guard standby database. */ readonly localStandbyDb?: AutonomousDatabaseStandbySummary; /** * Output only. The date and time when maintenance will begin. */ readonly maintenanceBeginTime?: Date; /** * Output only. The date and time when maintenance will end. */ readonly maintenanceEndTime?: Date; /** * Optional. The maintenance schedule of the Autonomous Database. */ maintenanceScheduleType?: | "MAINTENANCE_SCHEDULE_TYPE_UNSPECIFIED" | "EARLY" | "REGULAR"; /** * Output only. The amount of memory enabled per ECPU, in gigabytes. */ readonly memoryPerOracleComputeUnitGbs?: number; /** * Output only. The memory assigned to in-memory tables in an Autonomous * Database. */ readonly memoryTableGbs?: number; /** * Optional. This field specifies if the Autonomous Database requires mTLS * connections. */ mtlsConnectionRequired?: boolean; /** * Optional. The national character set for the Autonomous Database. The * default is AL16UTF16. */ nCharacterSet?: string; /** * Output only. The long term backup schedule of the Autonomous Database. */ readonly nextLongTermBackupTime?: Date; /** * Output only. OCID of the Autonomous Database. * https://docs.oracle.com/en-us/iaas/Content/General/Concepts/identifiers.htm#Oracle */ readonly ocid?: string; /** * Output only. The Oracle Cloud Infrastructure link for the Autonomous * Database. */ readonly ociUrl?: string; /** * Output only. This field indicates the current mode of the Autonomous * Database. */ readonly openMode?: | "OPEN_MODE_UNSPECIFIED" | "READ_ONLY" | "READ_WRITE"; /** * Output only. This field indicates the state of Operations Insights for the * Autonomous Database. */ readonly operationsInsightsState?: | "OPERATIONS_INSIGHTS_STATE_UNSPECIFIED" | "ENABLING" | "ENABLED" | "DISABLING" | "NOT_ENABLED" | "FAILED_ENABLING" | "FAILED_DISABLING"; /** * Output only. The list of OCIDs of standby databases located in Autonomous * Data Guard remote regions that are associated with the source database. */ readonly peerDbIds?: string[]; /** * Output only. The permission level of the Autonomous Database. */ readonly permissionLevel?: | "PERMISSION_LEVEL_UNSPECIFIED" | "RESTRICTED" | "UNRESTRICTED"; /** * Output only. The private endpoint for the Autonomous Database. */ readonly privateEndpoint?: string; /** * Optional. The private endpoint IP address for the Autonomous Database. */ privateEndpointIp?: string; /** * Optional. The private endpoint label for the Autonomous Database. */ privateEndpointLabel?: string; /** * Output only. The refresh mode of the cloned Autonomous Database. */ readonly refreshableMode?: | "REFRESHABLE_MODE_UNSPECIFIED" | "AUTOMATIC" | "MANUAL"; /** * Output only. The refresh State of the clone. */ readonly refreshableState?: | "REFRESHABLE_STATE_UNSPECIFIED" | "REFRESHING" | "NOT_REFRESHING"; /** * Output only. The Data Guard role of the Autonomous Database. */ readonly role?: | "ROLE_UNSPECIFIED" | "PRIMARY" | "STANDBY" | "DISABLED_STANDBY" | "BACKUP_COPY" | "SNAPSHOT_STANDBY"; /** * Output only. The list and details of the scheduled operations of the * Autonomous Database. */ readonly scheduledOperationDetails?: ScheduledOperationDetails[]; /** * Optional. The ID of the Oracle Cloud Infrastructure vault secret. */ secretId?: string; /** * Output only. The SQL Web Developer URL for the Autonomous Database. */ readonly sqlWebDeveloperUrl?: string; /** * Output only. The current lifecycle state of the Autonomous Database. */ readonly state?: | "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"; /** * Output only. The list of available regions that can be used to create a * clone for the Autonomous Database. */ readonly supportedCloneRegions?: string[]; /** * Output only. The storage space used by automatic backups of Autonomous * Database, in gigabytes. */ readonly totalAutoBackupStorageSizeGbs?: number; /** * Output only. The storage space used by Autonomous Database, in gigabytes. */ readonly usedDataStorageSizeTbs?: number; /** * Optional. The ID of the Oracle Cloud Infrastructure vault. */ vaultId?: string; } /** * Autonomous Data Guard standby database details. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/AutonomousDatabaseStandbySummary */ export interface AutonomousDatabaseStandbySummary { /** * Output only. The date and time the Autonomous Data Guard role was switched * for the standby Autonomous Database. */ readonly dataGuardRoleChangedTime?: Date; /** * Output only. The date and time the Disaster Recovery role was switched for * the standby Autonomous Database. */ readonly disasterRecoveryRoleChangedTime?: Date; /** * Output only. The amount of time, in seconds, that the data of the standby * database lags in comparison to the data of the primary database. */ readonly lagTimeDuration?: number /* Duration */; /** * Output only. The additional details about the current lifecycle state of * the Autonomous Database. */ readonly lifecycleDetails?: string; /** * Output only. The current lifecycle state of the Autonomous Database. */ readonly state?: | "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"; } /** * Details of the Autonomous Database version. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/AutonomousDbVersionSummary/ */ export interface AutonomousDbVersion { /** * Output only. The Autonomous Database workload type. */ readonly dbWorkload?: | "DB_WORKLOAD_UNSPECIFIED" | "OLTP" | "DW" | "AJD" | "APEX"; /** * Identifier. The name of the Autonomous Database Version resource with the * format: * projects/{project}/locations/{region}/autonomousDbVersions/{autonomous_db_version} */ name?: string; /** * Output only. An Oracle Database version for Autonomous Database. */ readonly version?: string; /** * Output only. A URL that points to a detailed description of the Autonomous * Database version. */ readonly workloadUri?: string; } /** * The request message for Operations.CancelOperation. */ export interface CancelOperationRequest { } /** * Details of the OCI Cloud Account. */ export interface CloudAccountDetails { /** * Output only. URL to create a new account and link. */ readonly accountCreationUri?: string; /** * Output only. OCI account name. */ readonly cloudAccount?: string; /** * Output only. OCI account home region. */ readonly cloudAccountHomeRegion?: string; /** * Output only. URL to link an existing account. */ readonly linkExistingAccountUri?: string; } /** * Represents CloudExadataInfrastructure resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/CloudExadataInfrastructure/ */ export interface CloudExadataInfrastructure { /** * Output only. The date and time that the Exadata Infrastructure was * created. */ readonly createTime?: Date; /** * Optional. User friendly name for this resource. */ displayName?: string; /** * Output only. Entitlement ID of the private offer against which this * infrastructure resource is provisioned. */ readonly entitlementId?: string; /** * Optional. Google Cloud Platform location where Oracle Exadata is hosted. */ gcpOracleZone?: string; /** * Optional. Labels or tags associated with the resource. */ labels?: { [key: string]: string }; /** * Identifier. The name of the Exadata Infrastructure resource with the * format: * projects/{project}/locations/{region}/cloudExadataInfrastructures/{cloud_exadata_infrastructure} */ name?: string; /** * Optional. Various properties of the infra. */ properties?: CloudExadataInfrastructureProperties; } /** * Various properties of Exadata Infrastructure. */ export interface CloudExadataInfrastructureProperties { /** * Output only. The requested number of additional storage servers activated * for the Exadata Infrastructure. */ readonly activatedStorageCount?: number; /** * Output only. The requested number of additional storage servers for the * Exadata Infrastructure. */ readonly additionalStorageCount?: number; /** * Output only. The available storage can be allocated to the Exadata * Infrastructure resource, in gigabytes (GB). */ readonly availableStorageSizeGb?: number; /** * Optional. The number of compute servers for the Exadata Infrastructure. */ computeCount?: number; /** * Output only. The number of enabled CPU cores. */ readonly cpuCount?: number; /** * Optional. The list of customer contacts. */ customerContacts?: CustomerContact[]; /** * Output only. Size, in terabytes, of the DATA disk group. */ readonly dataStorageSizeTb?: number; /** * Output only. The local node storage allocated in GBs. */ readonly dbNodeStorageSizeGb?: number; /** * Output only. The software version of the database servers (dom0) in the * Exadata Infrastructure. */ readonly dbServerVersion?: string; /** * Optional. Maintenance window for repair. */ maintenanceWindow?: MaintenanceWindow; /** * Output only. The total number of CPU cores available. */ readonly maxCpuCount?: number; /** * Output only. The total available DATA disk group size. */ readonly maxDataStorageTb?: number; /** * Output only. The total local node storage available in GBs. */ readonly maxDbNodeStorageSizeGb?: number; /** * Output only. The total memory available in GBs. */ readonly maxMemoryGb?: number; /** * Output only. The memory allocated in GBs. */ readonly memorySizeGb?: number; /** * Output only. The monthly software version of the database servers (dom0) * in the Exadata Infrastructure. Example: 20.1.15 */ readonly monthlyDbServerVersion?: string; /** * Output only. The monthly software version of the storage servers (cells) * in the Exadata Infrastructure. Example: 20.1.15 */ readonly monthlyStorageServerVersion?: string; /** * Output only. The OCID of the next maintenance run. */ readonly nextMaintenanceRunId?: string; /** * Output only. The time when the next maintenance run will occur. */ readonly nextMaintenanceRunTime?: Date; /** * Output only. The time when the next security maintenance run will occur. */ readonly nextSecurityMaintenanceRunTime?: Date; /** * Output only. OCID of created infra. * https://docs.oracle.com/en-us/iaas/Content/General/Concepts/identifiers.htm#Oracle */ readonly ocid?: string; /** * Output only. Deep link to the OCI console to view this resource. */ readonly ociUrl?: string; /** * Required. The shape of the Exadata Infrastructure. The shape determines * the amount of CPU, storage, and memory resources allocated to the instance. */ shape?: string; /** * Output only. The current lifecycle state of the Exadata Infrastructure. */ readonly state?: | "STATE_UNSPECIFIED" | "PROVISIONING" | "AVAILABLE" | "UPDATING" | "TERMINATING" | "TERMINATED" | "FAILED" | "MAINTENANCE_IN_PROGRESS"; /** * Optional. The number of Cloud Exadata storage servers for the Exadata * Infrastructure. */ storageCount?: number; /** * Output only. The software version of the storage servers (cells) in the * Exadata Infrastructure. */ readonly storageServerVersion?: string; /** * Optional. The total storage allocated to the Exadata Infrastructure * resource, in gigabytes (GB). */ totalStorageSizeGb?: number; } /** * Details of the Cloud VM Cluster resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/CloudVmCluster/ */ export interface CloudVmCluster { /** * Required. CIDR range of the backup subnet. */ backupSubnetCidr?: string; /** * Required. Network settings. CIDR to use for cluster IP allocation. */ cidr?: string; /** * Output only. The date and time that the VM cluster was created. */ readonly createTime?: Date; /** * Optional. User friendly name for this resource. */ displayName?: string; /** * Required. The name of the Exadata Infrastructure resource on which VM * cluster resource is created, in the following format: * projects/{project}/locations/{region}/cloudExadataInfrastuctures/{cloud_extradata_infrastructure} */ exadataInfrastructure?: string; /** * Output only. Google Cloud Platform location where Oracle Exadata is * hosted. It is same as Google Cloud Platform Oracle zone of Exadata * infrastructure. */ readonly gcpOracleZone?: string; /** * Optional. Labels or tags associated with the VM Cluster. */ labels?: { [key: string]: string }; /** * Identifier. The name of the VM Cluster resource with the format: * projects/{project}/locations/{region}/cloudVmClusters/{cloud_vm_cluster} */ name?: string; /** * Required. The name of the VPC network. Format: * projects/{project}/global/networks/{network} */ network?: string; /** * Optional. Various properties of the VM Cluster. */ properties?: CloudVmClusterProperties; } /** * Various properties and settings associated with Exadata VM cluster. */ export interface CloudVmClusterProperties { /** * Optional. OCI Cluster name. */ clusterName?: string; /** * Output only. Compartment ID of cluster. */ readonly compartmentId?: string; /** * Required. Number of enabled CPU cores. */ cpuCoreCount?: number; /** * Optional. The data disk group size to be allocated in TBs. */ dataStorageSizeTb?: number; /** * Optional. Local storage per VM. */ dbNodeStorageSizeGb?: number; /** * Optional. OCID of database servers. */ dbServerOcids?: string[]; /** * Optional. Data collection options for diagnostics. */ diagnosticsDataCollectionOptions?: DataCollectionOptions; /** * Optional. The type of redundancy. */ diskRedundancy?: | "DISK_REDUNDANCY_UNSPECIFIED" | "HIGH" | "NORMAL"; /** * Output only. DNS listener IP. */ readonly dnsListenerIp?: string; /** * Output only. Parent DNS domain where SCAN DNS and hosts names are * qualified. ex: ocispdelegated.ocisp10jvnet.oraclevcn.com */ readonly domain?: string; /** * Optional. Grid Infrastructure Version. */ giVersion?: string; /** * Output only. host name without domain. format: "-" with some suffix. ex: * sp2-yi0xq where "sp2" is the hostname_prefix. */ readonly hostname?: string; /** * Optional. Prefix for VM cluster host names. */ hostnamePrefix?: string; /** * Required. License type of VM Cluster. */ licenseType?: | "LICENSE_TYPE_UNSPECIFIED" | "LICENSE_INCLUDED" | "BRING_YOUR_OWN_LICENSE"; /** * Optional. Use local backup. */ localBackupEnabled?: boolean; /** * Optional. Memory allocated in GBs. */ memorySizeGb?: number; /** * Optional. Number of database servers. */ nodeCount?: number; /** * Output only. Oracle Cloud Infrastructure ID of VM Cluster. */ readonly ocid?: string; /** * Output only. Deep link to the OCI console to view this resource. */ readonly ociUrl?: string; /** * Optional. OCPU count per VM. Minimum is 0.1. */ ocpuCount?: number; /** * Output only. SCAN DNS name. ex: * sp2-yi0xq-scan.ocispdelegated.ocisp10jvnet.oraclevcn.com */ readonly scanDns?: string; /** * Output only. OCID of scan DNS record. */ readonly scanDnsRecordId?: string; /** * Output only. OCIDs of scan IPs. */ readonly scanIpIds?: string[]; /** * Output only. SCAN listener port - TCP */ readonly scanListenerPortTcp?: number; /** * Output only. SCAN listener port - TLS */ readonly scanListenerPortTcpSsl?: number; /** * Output only. Shape of VM Cluster. */ readonly shape?: string; /** * Optional. Use exadata sparse snapshots. */ sparseDiskgroupEnabled?: boolean; /** * Optional. SSH public keys to be stored with cluster. */ sshPublicKeys?: string[]; /** * Output only. State of the cluster. */ readonly state?: | "STATE_UNSPECIFIED" | "PROVISIONING" | "AVAILABLE" | "UPDATING" | "TERMINATING" | "TERMINATED" | "FAILED" | "MAINTENANCE_IN_PROGRESS"; /** * Output only. The storage allocation for the disk group, in gigabytes (GB). */ readonly storageSizeGb?: number; /** * Output only. Operating system version of the image. */ readonly systemVersion?: string; /** * Optional. Time zone of VM Cluster to set. Defaults to UTC if not * specified. */ timeZone?: TimeZone; } /** * The CustomerContact reference as defined by Oracle. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/CustomerContact */ export interface CustomerContact { /** * Required. The email address used by Oracle to send notifications regarding * databases and infrastructure. */ email?: string; } /** * The connection string profile to allow clients to group. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/DatabaseConnectionStringProfile */ export interface DatabaseConnectionStringProfile { /** * Output only. The current consumer group being used by the connection. */ readonly consumerGroup?: | "CONSUMER_GROUP_UNSPECIFIED" | "HIGH" | "MEDIUM" | "LOW" | "TP" | "TPURGENT"; /** * Output only. The display name for the database connection. */ readonly displayName?: string; /** * Output only. The host name format being currently used in connection * string. */ readonly hostFormat?: | "HOST_FORMAT_UNSPECIFIED" | "FQDN" | "IP"; /** * Output only. This field indicates if the connection string is regional and * is only applicable for cross-region Data Guard. */ readonly isRegional?: boolean; /** * Output only. The protocol being used by the connection. */ readonly protocol?: | "PROTOCOL_UNSPECIFIED" | "TCP" | "TCPS"; /** * Output only. The current session mode of the connection. */ readonly sessionMode?: | "SESSION_MODE_UNSPECIFIED" | "DIRECT" | "INDIRECT"; /** * Output only. The syntax of the connection string. */ readonly syntaxFormat?: | "SYNTAX_FORMAT_UNSPECIFIED" | "LONG" | "EZCONNECT" | "EZCONNECTPLUS"; /** * Output only. This field indicates the TLS authentication type of the * connection. */ readonly tlsAuthentication?: | "TLS_AUTHENTICATION_UNSPECIFIED" | "SERVER" | "MUTUAL"; /** * Output only. The value of the connection string. */ readonly value?: string; } /** * Data collection options for diagnostics. */ export interface DataCollectionOptions { /** * Optional. Indicates whether diagnostic collection is enabled for the VM * cluster */ diagnosticsEventsEnabled?: boolean; /** * Optional. Indicates whether health monitoring is enabled for the VM * cluster */ healthMonitoringEnabled?: boolean; /** * Optional. Indicates whether incident logs and trace collection are enabled * for the VM cluster */ incidentLogsEnabled?: boolean; } /** * Details of the database node resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/DbNode/ */ export interface DbNode { /** * Identifier. The name of the database node resource in the following * format: * projects/{project}/locations/{location}/cloudVmClusters/{cloud_vm_cluster}/dbNodes/{db_node} */ name?: string; /** * Optional. Various properties of the database node. */ properties?: DbNodeProperties; } /** * Various properties and settings associated with Db node. */ export interface DbNodeProperties { /** * Optional. Local storage per database node. */ dbNodeStorageSizeGb?: number; /** * Optional. Database server OCID. */ dbServerOcid?: string; /** * Optional. DNS */ hostname?: string; /** * Memory allocated in GBs. */ memorySizeGb?: number; /** * Output only. OCID of database node. */ readonly ocid?: string; /** * Optional. OCPU count per database node. */ ocpuCount?: number; /** * Output only. State of the database node. */ readonly state?: | "STATE_UNSPECIFIED" | "PROVISIONING" | "AVAILABLE" | "UPDATING" | "STOPPING" | "STOPPED" | "STARTING" | "TERMINATING" | "TERMINATED" | "FAILED"; /** * Total CPU core count of the database node. */ totalCpuCoreCount?: number; } /** * Details of the database server resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/DbServer/ */ export interface DbServer { /** * Optional. User friendly name for this resource. */ displayName?: string; /** * Identifier. The name of the database server resource with the format: * projects/{project}/locations/{location}/cloudExadataInfrastructures/{cloud_exadata_infrastructure}/dbServers/{db_server} */ name?: string; /** * Optional. Various properties of the database server. */ properties?: DbServerProperties; } /** * Various properties and settings associated with Exadata database server. */ export interface DbServerProperties { /** * Output only. OCID of database nodes associated with the database server. */ readonly dbNodeIds?: string[]; /** * Optional. Local storage per VM. */ dbNodeStorageSizeGb?: number; /** * Optional. Maximum local storage per VM. */ maxDbNodeStorageSizeGb?: number; /** * Optional. Maximum memory allocated in GBs. */ maxMemorySizeGb?: number; /** * Optional. Maximum OCPU count per database. */ maxOcpuCount?: number; /** * Optional. Memory allocated in GBs. */ memorySizeGb?: number; /** * Output only. OCID of database server. */ readonly ocid?: string; /** * Optional. OCPU count per database. */ ocpuCount?: number; /** * Output only. State of the database server. */ readonly state?: | "STATE_UNSPECIFIED" | "CREATING" | "AVAILABLE" | "UNAVAILABLE" | "DELETING" | "DELETED"; /** * Optional. Vm count per database. */ vmCount?: number; } /** * Details of the Database System Shapes resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/DbSystemShapeSummary/ */ export interface DbSystemShape { /** * Optional. Number of cores per node. */ availableCoreCountPerNode?: number; /** * Optional. Storage per storage server in terabytes. */ availableDataStorageTb?: number; /** * Optional. Memory per database server node in gigabytes. */ availableMemoryPerNodeGb?: number; /** * Optional. Maximum number of database servers. */ maxNodeCount?: number; /** * Optional. Maximum number of storage servers. */ maxStorageCount?: number; /** * Optional. Minimum core count per node. */ minCoreCountPerNode?: number; /** * Optional. Minimum node storage per database server in gigabytes. */ minDbNodeStoragePerNodeGb?: number; /** * Optional. Minimum memory per node in gigabytes. */ minMemoryPerNodeGb?: number; /** * Optional. Minimum number of database servers. */ minNodeCount?: number; /** * Optional. Minimum number of storage servers. */ minStorageCount?: number; /** * Identifier. The name of the Database System Shape resource with the * format: * projects/{project}/locations/{region}/dbSystemShapes/{db_system_shape} */ name?: string; /** * Optional. shape */ shape?: string; } /** * A generic empty message that you can re-use to avoid defining duplicated * empty messages in your APIs. A typical example is to use it as the request or * the response type of an API method. For instance: service Foo { rpc * Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } */ export interface Empty { } /** * Details of the Entitlement resource. */ export interface Entitlement { /** * Details of the OCI Cloud Account. */ cloudAccountDetails?: CloudAccountDetails; /** * Output only. Google Cloud Marketplace order ID (aka entitlement ID) */ readonly entitlementId?: string; /** * Identifier. The name of the Entitlement resource with the format: * projects/{project}/locations/{region}/entitlements/{entitlement} */ name?: string; /** * Output only. Entitlement State. */ readonly state?: | "STATE_UNSPECIFIED" | "ACCOUNT_NOT_LINKED" | "ACCOUNT_NOT_ACTIVE" | "ACTIVE"; } /** * The request for `AutonomousDatabase.GenerateWallet`. */ export interface GenerateAutonomousDatabaseWalletRequest { /** * Optional. True when requesting regional connection strings in PDB connect * info, applicable to cross-region Data Guard only. */ isRegional?: boolean; /** * Required. The password used to encrypt the keys inside the wallet. The * password must be a minimum of 8 characters. */ password?: string; /** * Optional. The type of wallet generation for the Autonomous Database. The * default value is SINGLE. */ type?: | "GENERATE_TYPE_UNSPECIFIED" | "ALL" | "SINGLE"; } /** * The response for `AutonomousDatabase.GenerateWallet`. */ export interface GenerateAutonomousDatabaseWalletResponse { /** * Output only. The base64 encoded wallet files. */ readonly archiveContent?: Uint8Array; } /** * Details of the Oracle Grid Infrastructure (GI) version resource. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/GiVersionSummary/ */ export interface GiVersion { /** * Identifier. The name of the Oracle Grid Infrastructure (GI) version * resource with the format: * projects/{project}/locations/{region}/giVersions/{gi_versions} */ name?: string; /** * Optional. version */ version?: string; } /** * The response for `AutonomousDatabaseBackup.List`. */ export interface ListAutonomousDatabaseBackupsResponse { /** * The list of Autonomous Database Backups. */ autonomousDatabaseBackups?: AutonomousDatabaseBackup[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string; } /** * The response for `AutonomousDatabaseCharacterSet.List`. */ export interface ListAutonomousDatabaseCharacterSetsResponse { /** * The list of Autonomous Database Character Sets. */ autonomousDatabaseCharacterSets?: AutonomousDatabaseCharacterSet[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string; } /** * The response for `AutonomousDatabase.List`. */ export interface ListAutonomousDatabasesResponse { /** * The list of Autonomous Databases. */ autonomousDatabases?: AutonomousDatabase[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string; } /** * The response for `AutonomousDbVersion.List`. */ export interface ListAutonomousDbVersionsResponse { /** * The list of Autonomous Database versions. */ autonomousDbVersions?: AutonomousDbVersion[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string; } /** * The response for `CloudExadataInfrastructures.list`. */ export interface ListCloudExadataInfrastructuresResponse { /** * The list of Exadata Infrastructures. */ cloudExadataInfrastructures?: CloudExadataInfrastructure[]; /** * A token for fetching next page of response. */ nextPageToken?: string; } /** * The response for `CloudVmCluster.List`. */ export interface ListCloudVmClustersResponse { /** * The list of VM Clusters. */ cloudVmClusters?: CloudVmCluster[]; /** * A token to fetch the next page of results. */ nextPageToken?: string; } /** * The response for `DbNode.List`. */ export interface ListDbNodesResponse { /** * The list of DB Nodes */ dbNodes?: DbNode[]; /** * A token identifying a page of results the node should return. */ nextPageToken?: string; } /** * The response for `DbServer.List`. */ export interface ListDbServersResponse { /** * The list of database servers. */ dbServers?: DbServer[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string; } /** * The response for `DbSystemShape.List`. */ export interface ListDbSystemShapesResponse { /** * The list of Database System shapes. */ dbSystemShapes?: DbSystemShape[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string; } /** * The response for `Entitlement.List`. */ export interface ListEntitlementsResponse { /** * The list of Entitlements */ entitlements?: Entitlement[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string; } /** * The response for `GiVersion.List`. */ export interface ListGiVersionsResponse { /** * The list of Oracle Grid Infrastructure (GI) versions. */ giVersions?: GiVersion[]; /** * A token identifying a page of results the server should return. */ nextPageToken?: string; } /** * The response message for Locations.ListLocations. */ export interface ListLocationsResponse { /** * A list of locations that matches the specified filter in the request. */ locations?: Location[]; /** * The standard List next-page token. */ nextPageToken?: string; } /** * The response message for Operations.ListOperations. */ export interface ListOperationsResponse { /** * The standard List next-page token. */ nextPageToken?: string; /** * A list of operations that matches the specified filter in the request. */ operations?: Operation[]; } /** * A resource that represents a Google Cloud location. */ export interface Location { /** * The friendly name for this location, typically a nearby city name. For * example, "Tokyo". */ displayName?: string; /** * Cross-service attributes for the location. For example * {"cloud.googleapis.com/region": "us-east1"} */ labels?: { [key: string]: string }; /** * The canonical id for this location. For example: `"us-east1"`. */ locationId?: string; /** * Service-specific metadata. For example the available capacity at the given * location. */ metadata?: { [key: string]: any }; /** * Resource name for the location, which may vary between implementations. * For example: `"projects/example-project/locations/us-east1"` */ name?: string; } /** * Metadata for a given Location. */ export interface LocationMetadata { /** * Output only. Google Cloud Platform Oracle zones in a location. */ readonly gcpOracleZones?: string[]; } /** * Maintenance window as defined by Oracle. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/MaintenanceWindow */ export interface MaintenanceWindow { /** * Optional. Determines the amount of time the system will wait before the * start of each database server patching operation. Custom action timeout is * in minutes and valid value is between 15 to 120 (inclusive). */ customActionTimeoutMins?: number; /** * Optional. Days during the week when maintenance should be performed. */ daysOfWeek?: | "DAY_OF_WEEK_UNSPECIFIED" | "MONDAY" | "TUESDAY" | "WEDNESDAY" | "THURSDAY" | "FRIDAY" | "SATURDAY" | "SUNDAY"[]; /** * Optional. The window of hours during the day when maintenance should be * performed. The window is a 4 hour slot. Valid values are: 0 - represents * time slot 0:00 - 3:59 UTC 4 - represents time slot 4:00 - 7:59 UTC 8 - * represents time slot 8:00 - 11:59 UTC 12 - represents time slot 12:00 - * 15:59 UTC 16 - represents time slot 16:00 - 19:59 UTC 20 - represents time * slot 20:00 - 23:59 UTC */ hoursOfDay?: number[]; /** * Optional. If true, enables the configuration of a custom action timeout * (waiting period) between database server patching operations. */ isCustomActionTimeoutEnabled?: boolean; /** * Optional. Lead time window allows user to set a lead time to prepare for a * down time. The lead time is in weeks and valid value is between 1 to 4. */ leadTimeWeek?: number; /** * Optional. Months during the year when maintenance should be performed. */ months?: | "MONTH_UNSPECIFIED" | "JANUARY" | "FEBRUARY" | "MARCH" | "APRIL" | "MAY" | "JUNE" | "JULY" | "AUGUST" | "SEPTEMBER" | "OCTOBER" | "NOVEMBER" | "DECEMBER"[]; /** * Optional. Cloud CloudExadataInfrastructure node patching method, either * "ROLLING" or "NONROLLING". Default value is ROLLING. */ patchingMode?: | "PATCHING_MODE_UNSPECIFIED" | "ROLLING" | "NON_ROLLING"; /** * Optional. The maintenance window scheduling preference. */ preference?: | "MAINTENANCE_WINDOW_PREFERENCE_UNSPECIFIED" | "CUSTOM_PREFERENCE" | "NO_PREFERENCE"; /** * Optional. Weeks during the month when maintenance should be performed. * Weeks start on the 1st, 8th, 15th, and 22nd days of the month, and have a * duration of 7 days. Weeks start and end based on calendar dates, not days * of the week. */ weeksOfMonth?: number[]; } /** * This resource represents a long-running operation that is the result of a * network API call. */ export interface Operation { /** * If the value is `false`, it means the operation is still in progress. If * `true`, the operation is completed, and either `error` or `response` is * available. */ done?: boolean; /** * The error result of the operation in case of failure or cancellation. */ error?: Status; /** * Service-specific metadata associated with the operation. It typically * contains progress information and common metadata such as create time. Some * services might not provide such metadata. Any method that returns a * long-running operation should document the metadata type, if any. */ metadata?: { [key: string]: any }; /** * The server-assigned name, which is only unique within the same service * that originally returns it. If you use the default HTTP mapping, the `name` * should be a resource name ending with `operations/{unique_id}`. */ name?: string; /** * The normal, successful response of the operation. If the original method * returns no data on success, such as `Delete`, the response is * `google.protobuf.Empty`. If the original method is standard * `Get`/`Create`/`Update`, the response should be the resource. For other * methods, the response should have the type `XxxResponse`, where `Xxx` is * the original method name. For example, if the original method name is * `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. */ response?: { [key: string]: any }; } /** * Represents the metadata of the long-running operation. */ export interface OperationMetadata { /** * Output only. API version used to start the operation. */ readonly apiVersion?: string; /** * Output only. The time the operation was created. */ readonly createTime?: Date; /** * Output only. The time the operation finished running. */ readonly endTime?: Date; /** * Output only. An estimated percentage of the operation that has been * completed at a given moment of time, between 0 and 100. */ readonly percentComplete?: number; /** * Output only. Identifies whether the user has requested cancellation of the * operation. Operations that have been cancelled successfully have * Operation.error value with a google.rpc.Status.code of 1, corresponding to * `Code.CANCELLED`. */ readonly requestedCancellation?: boolean; /** * Output only. The status of the operation. */ readonly statusMessage?: string; /** * Output only. Server-defined resource path for the target of the operation. */ readonly target?: string; /** * Output only. Name of the verb executed by the operation. */ readonly verb?: string; } /** * Additional options for * Oracledatabase#projectsLocationsAutonomousDatabaseBackupsList. */ export interface ProjectsLocationsAutonomousDatabaseBackupsListOptions { /** * Optional. An expression for filtering the results of the request. Only the * **autonomous_database_id** field is supported in the following format: * `autonomous_database_id="{autonomous_database_id}"`. The accepted values * must be a valid Autonomous Database ID, limited to the naming restrictions * of the ID: ^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$). The ID must start with a * letter, end with a letter or a number, and be a maximum of 63 characters. */ filter?: string; /** * Optional. The maximum number of items to return. If unspecified, at most * 50 Autonomous DB Backups will be returned. The maximum value is 1000; * values above 1000 will be coerced to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for * Oracledatabase#projectsLocationsAutonomousDatabaseCharacterSetsList. */ export interface ProjectsLocationsAutonomousDatabaseCharacterSetsListOptions { /** * Optional. An expression for filtering the results of the request. Only the * **character_set_type** field is supported in the following format: * `character_set_type="{characterSetType}"`. Accepted values include * `DATABASE` and `NATIONAL`. */ filter?: string; /** * Optional. The maximum number of items to return. If unspecified, at most * 50 Autonomous DB Character Sets will be returned. The maximum value is * 1000; values above 1000 will be coerced to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for * Oracledatabase#projectsLocationsAutonomousDatabasesCreate. */ export interface ProjectsLocationsAutonomousDatabasesCreateOptions { /** * Required. The ID of the Autonomous Database to create. This value is * restricted to (^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$) and must be a maximum of * 63 characters in length. The value must start with a letter and end with a * letter or a number. */ autonomousDatabaseId?: string; /** * Optional. An optional ID to identify the request. This value is used to * identify duplicate requests. If you make a request with the same request ID * and the original request is still in progress or completed, the server * ignores the second request. This prevents clients from accidentally * creating duplicate commitments. The request ID must be a valid UUID with * the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). */ requestId?: string; } /** * Additional options for * Oracledatabase#projectsLocationsAutonomousDatabasesDelete. */ export interface ProjectsLocationsAutonomousDatabasesDeleteOptions { /** * Optional. An optional ID to identify the request. This value is used to * identify duplicate requests. If you make a request with the same request ID * and the original request is still in progress or completed, the server * ignores the second request. This prevents clients from accidentally * creating duplicate commitments. The request ID must be a valid UUID with * the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). */ requestId?: string; } /** * Additional options for * Oracledatabase#projectsLocationsAutonomousDatabasesList. */ export interface ProjectsLocationsAutonomousDatabasesListOptions { /** * Optional. An expression for filtering the results of the request. */ filter?: string; /** * Optional. An expression for ordering the results of the request. */ orderBy?: string; /** * Optional. The maximum number of items to return. If unspecified, at most * 50 Autonomous Database will be returned. The maximum value is 1000; values * above 1000 will be coerced to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for * Oracledatabase#projectsLocationsAutonomousDbVersionsList. */ export interface ProjectsLocationsAutonomousDbVersionsListOptions { /** * Optional. The maximum number of items to return. If unspecified, at most * 50 Autonomous DB Versions will be returned. The maximum value is 1000; * values above 1000 will be coerced to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for * Oracledatabase#projectsLocationsCloudExadataInfrastructuresCreate. */ export interface ProjectsLocationsCloudExadataInfrastructuresCreateOptions { /** * Required. The ID of the Exadata Infrastructure to create. This value is * restricted to (^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$) and must be a maximum of * 63 characters in length. The value must start with a letter and end with a * letter or a number. */ cloudExadataInfrastructureId?: string; /** * Optional. An optional ID to identify the request. This value is used to * identify duplicate requests. If you make a request with the same request ID * and the original request is still in progress or completed, the server * ignores the second request. This prevents clients from accidentally * creating duplicate commitments. The request ID must be a valid UUID with * the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). */ requestId?: string; } /** * Additional options for * Oracledatabase#projectsLocationsCloudExadataInfrastructuresDbServersList. */ export interface ProjectsLocationsCloudExadataInfrastructuresDbServersListOptions { /** * Optional. The maximum number of items to return. If unspecified, a maximum * of 50 db servers will be returned. The maximum value is 1000; values above * 1000 will be reset to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for * Oracledatabase#projectsLocationsCloudExadataInfrastructuresDelete. */ export interface ProjectsLocationsCloudExadataInfrastructuresDeleteOptions { /** * Optional. If set to true, all VM clusters for this Exadata Infrastructure * will be deleted. An Exadata Infrastructure can only be deleted once all its * VM clusters have been deleted. */ force?: boolean; /** * Optional. An optional ID to identify the request. This value is used to * identify duplicate requests. If you make a request with the same request ID * and the original request is still in progress or completed, the server * ignores the second request. This prevents clients from accidentally * creating duplicate commitments. The request ID must be a valid UUID with * the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). */ requestId?: string; } /** * Additional options for * Oracledatabase#projectsLocationsCloudExadataInfrastructuresList. */ export interface ProjectsLocationsCloudExadataInfrastructuresListOptions { /** * Optional. The maximum number of items to return. If unspecified, at most * 50 Exadata infrastructures will be returned. The maximum value is 1000; * values above 1000 will be coerced to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for * Oracledatabase#projectsLocationsCloudVmClustersCreate. */ export interface ProjectsLocationsCloudVmClustersCreateOptions { /** * Required. The ID of the VM Cluster to create. This value is restricted to * (^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$) and must be a maximum of 63 characters * in length. The value must start with a letter and end with a letter or a * number. */ cloudVmClusterId?: string; /** * Optional. An optional ID to identify the request. This value is used to * identify duplicate requests. If you make a request with the same request ID * and the original request is still in progress or completed, the server * ignores the second request. This prevents clients from accidentally * creating duplicate commitments. The request ID must be a valid UUID with * the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). */ requestId?: string; } /** * Additional options for * Oracledatabase#projectsLocationsCloudVmClustersDbNodesList. */ export interface ProjectsLocationsCloudVmClustersDbNodesListOptions { /** * Optional. The maximum number of items to return. If unspecified, at most * 50 db nodes will be returned. The maximum value is 1000; values above 1000 * will be coerced to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the node should return. */ pageToken?: string; } /** * Additional options for * Oracledatabase#projectsLocationsCloudVmClustersDelete. */ export interface ProjectsLocationsCloudVmClustersDeleteOptions { /** * Optional. If set to true, all child resources for the VM Cluster will be * deleted. A VM Cluster can only be deleted once all its child resources have * been deleted. */ force?: boolean; /** * Optional. An optional ID to identify the request. This value is used to * identify duplicate requests. If you make a request with the same request ID * and the original request is still in progress or completed, the server * ignores the second request. This prevents clients from accidentally * creating duplicate commitments. The request ID must be a valid UUID with * the exception that zero UUID is not supported * (00000000-0000-0000-0000-000000000000). */ requestId?: string; } /** * Additional options for Oracledatabase#projectsLocationsCloudVmClustersList. */ export interface ProjectsLocationsCloudVmClustersListOptions { /** * Optional. An expression for filtering the results of the request. */ filter?: string; /** * Optional. The number of VM clusters to return. If unspecified, at most 50 * VM clusters will be returned. The maximum value is 1,000. */ pageSize?: number; /** * Optional. A token identifying the page of results the server returns. */ pageToken?: string; } /** * Additional options for Oracledatabase#projectsLocationsDbSystemShapesList. */ export interface ProjectsLocationsDbSystemShapesListOptions { /** * Optional. The maximum number of items to return. If unspecified, at most * 50 database system shapes will be returned. The maximum value is 1000; * values above 1000 will be coerced to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for Oracledatabase#projectsLocationsEntitlementsList. */ export interface ProjectsLocationsEntitlementsListOptions { /** * Optional. The maximum number of items to return. If unspecified, a maximum * of 50 entitlements will be returned. The maximum value is 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for Oracledatabase#projectsLocationsGiVersionsList. */ export interface ProjectsLocationsGiVersionsListOptions { /** * Optional. The maximum number of items to return. If unspecified, a maximum * of 50 Oracle Grid Infrastructure (GI) versions will be returned. The * maximum value is 1000; values above 1000 will be reset to 1000. */ pageSize?: number; /** * Optional. A token identifying a page of results the server should return. */ pageToken?: string; } /** * Additional options for Oracledatabase#projectsLocationsList. */ export interface ProjectsLocationsListOptions { /** * A filter to narrow down results to a preferred subset. The filtering * language accepts strings like `"displayName=tokyo"`, and is documented in * more detail in [AIP-160](https://google.aip.dev/160). */ filter?: string; /** * The maximum number of results to return. If not set, the service selects a * default. */ pageSize?: number; /** * A page token received from the `next_page_token` field in the response. * Send that page token to receive the subsequent page. */ pageToken?: string; } /** * Additional options for Oracledatabase#projectsLocationsOperationsList. */ export interface ProjectsLocationsOperationsListOptions { /** * The standard list filter. */ filter?: string; /** * The standard list page size. */ pageSize?: number; /** * The standard list page token. */ pageToken?: string; } /** * The request for `AutonomousDatabase.Restore`. */ export interface RestoreAutonomousDatabaseRequest { /** * Required. The time and date to restore the database to. */ restoreTime?: Date; } function serializeRestoreAutonomousDatabaseRequest(data: any): RestoreAutonomousDatabaseRequest { return { ...data, restoreTime: data["restoreTime"] !== undefined ? data["restoreTime"].toISOString() : undefined, }; } function deserializeRestoreAutonomousDatabaseRequest(data: any): RestoreAutonomousDatabaseRequest { return { ...data, restoreTime: data["restoreTime"] !== undefined ? new Date(data["restoreTime"]) : undefined, }; } /** * Details of scheduled operation. * https://docs.oracle.com/en-us/iaas/api/#/en/database/20160918/datatypes/ScheduledOperationDetails */ export interface ScheduledOperationDetails { /** * Output only. Day of week. */ readonly dayOfWeek?: | "DAY_OF_WEEK_UNSPECIFIED" | "MONDAY" | "TUESDAY" | "WEDNESDAY" | "THURSDAY" | "FRIDAY" | "SATURDAY" | "SUNDAY"; /** * Output only. Auto start time. */ readonly startTime?: TimeOfDay; /** * Output only. Auto stop time. */ readonly stopTime?: TimeOfDay; } /** * The `Status` type defines a logical error model that is suitable for * different programming environments, including REST APIs and RPC APIs. It is * used by [gRPC](https://github.com/grpc). Each `Status` message contains three * pieces of data: error code, error message, and error details. You can find * out more about this error model and how to work with it in the [API Design * Guide](https://cloud.google.com/apis/design/errors). */ export interface Status { /** * The status code, which should be an enum value of google.rpc.Code. */ code?: number; /** * A list of messages that carry the error details. There is a common set of * message types for APIs to use. */ details?: { [key: string]: any }[]; /** * A developer-facing error message, which should be in English. Any * user-facing error message should be localized and sent in the * google.rpc.Status.details field, or localized by the client. */ message?: string; } /** * Represents a time of day. The date and time zone are either not significant * or are specified elsewhere. An API may choose to allow leap seconds. Related * types are google.type.Date and `google.protobuf.Timestamp`. */ export interface TimeOfDay { /** * Hours of a day in 24 hour format. Must be greater than or equal to 0 and * typically must be less than or equal to 23. An API may choose to allow the * value "24:00:00" for scenarios like business closing time. */ hours?: number; /** * Minutes of an hour. Must be greater than or equal to 0 and less than or * equal to 59. */ minutes?: number; /** * Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 * and less than or equal to 999,999,999. */ nanos?: number; /** * Seconds of a minute. Must be greater than or equal to 0 and typically must * be less than or equal to 59. An API may allow the value 60 if it allows * leap-seconds. */ seconds?: number; } /** * Represents a time zone from the [IANA Time Zone * Database](https://www.iana.org/time-zones). */ export interface TimeZone { /** * IANA Time Zone Database time zone, e.g. "America/New_York". */ id?: string; /** * Optional. IANA Time Zone Database version number, e.g. "2019a". */ version?: string; }