UNPKG

googleapis

Version:
1,497 lines 509 kB
import { OAuth2Client, JWT, Compute, UserRefreshClient, BaseExternalAccountClient, GaxiosResponseWithHTTP2, GoogleConfigurable, MethodOptions, StreamMethodOptions, GlobalOptions, GoogleAuth, BodyResponseCallback, APIRequestContext } from 'googleapis-common'; import { Readable } from 'stream'; export declare namespace migrationcenter_v1alpha1 { export interface Options extends GlobalOptions { version: 'v1alpha1'; } interface StandardParameters { /** * Auth client or API Key for the request */ auth?: string | OAuth2Client | JWT | Compute | UserRefreshClient | BaseExternalAccountClient | GoogleAuth; /** * V1 error format. */ '$.xgafv'?: string; /** * OAuth access token. */ access_token?: string; /** * Data format for response. */ alt?: string; /** * JSONP */ callback?: string; /** * Selector specifying which fields to include in a partial response. */ fields?: string; /** * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */ quotaUser?: string; /** * Legacy upload protocol for media (e.g. "media", "multipart"). */ uploadType?: string; /** * Upload protocol for media (e.g. "raw", "multipart"). */ upload_protocol?: string; } /** * Migration Center API * * A unified platform that helps you accelerate your end-to-end cloud journey from your current on-premises or cloud environments to Google Cloud. * * @example * ```js * const {google} = require('googleapis'); * const migrationcenter = google.migrationcenter('v1alpha1'); * ``` */ export class Migrationcenter { context: APIRequestContext; projects: Resource$Projects; constructor(options: GlobalOptions, google?: GoogleConfigurable); } /** * A request to add assets to a group. */ export interface Schema$AddAssetsToGroupRequest { /** * Optional. When this value is set to `false` and one of the given assets is already an existing member of the group, the operation fails with an `Already Exists` error. When set to `true` this situation is silently ignored by the server. Default value is `false`. */ allowExisting?: boolean | null; /** * Required. List of assets to be added. The maximum number of assets that can be added in a single request is 2000. */ assets?: Schema$AssetList; /** * Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore 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 | null; } /** * A request to aggregate one or more values. */ export interface Schema$AggregateAssetsValuesRequest { /** * Array of aggregations to perform. Up to 25 aggregations can be defined. */ aggregations?: Schema$Aggregation[]; /** * Optional. The aggregation will be performed on assets that match the provided filter. */ filter?: string | null; /** * Optional. When this value is set to 'true' the response will include all assets, including those that are hidden. */ showHidden?: boolean | null; } /** * A response to a request to aggregated assets values. */ export interface Schema$AggregateAssetsValuesResponse { /** * The aggregation results. */ results?: Schema$AggregationResult[]; } /** * Message describing an aggregation. The message includes the aggregation type, parameters, and the field on which to perform the aggregation. */ export interface Schema$Aggregation { /** * Count the number of matching objects. */ count?: Schema$AggregationCount; /** * The name of the field on which to aggregate. */ field?: string | null; /** * Creates a frequency distribution of all field values. */ frequency?: Schema$AggregationFrequency; /** * Creates a bucketed histogram of field values. */ histogram?: Schema$AggregationHistogram; /** * Sum over a numeric field. */ sum?: Schema$AggregationSum; } /** * Object count. */ export interface Schema$AggregationCount { } /** * Frequency distribution of all field values. */ export interface Schema$AggregationFrequency { } /** * Histogram of bucketed assets counts by field value. */ export interface Schema$AggregationHistogram { /** * Lower bounds of buckets. The response will contain `n+1` buckets for `n` bounds. The first bucket will count all assets for which the field value is smaller than the first bound. Subsequent buckets will count assets for which the field value is greater or equal to a lower bound and smaller than the next one. The last bucket will count assets for which the field value is greater or equal to the final lower bound. You can define up to 20 lower bounds. */ lowerBounds?: number[] | null; } /** * Message describing a result of an aggregation. */ export interface Schema$AggregationResult { count?: Schema$AggregationResultCount; field?: string | null; frequency?: Schema$AggregationResultFrequency; histogram?: Schema$AggregationResultHistogram; sum?: Schema$AggregationResultSum; } /** * The result of a count aggregation. */ export interface Schema$AggregationResultCount { value?: string | null; } /** * The result of a frequency distribution aggregation. */ export interface Schema$AggregationResultFrequency { values?: { [key: string]: string; } | null; } /** * The result of a bucketed histogram aggregation. */ export interface Schema$AggregationResultHistogram { /** * Buckets in the histogram. There will be `n+1` buckets matching `n` lower bounds in the request. The first bucket will be from -infinity to the first bound. Subsequent buckets will be between one bound and the next. The final bucket will be from the final bound to infinity. */ buckets?: Schema$AggregationResultHistogramBucket[]; } /** * A histogram bucket with a lower and upper bound, and a count of items with a field value between those bounds. The lower bound is inclusive and the upper bound is exclusive. Lower bound may be -infinity and upper bound may be infinity. */ export interface Schema$AggregationResultHistogramBucket { /** * Count of items in the bucket. */ count?: string | null; /** * Lower bound - inclusive. */ lowerBound?: number | null; /** * Upper bound - exclusive. */ upperBound?: number | null; } /** * The result of a sum aggregation. */ export interface Schema$AggregationResultSum { value?: number | null; } /** * Sum of field values. */ export interface Schema$AggregationSum { } /** * An asset represents a resource in your environment. Asset types include virtual machines and databases. */ export interface Schema$Asset { /** * Output only. The list of groups that the asset is assigned to. */ assignedGroups?: string[] | null; /** * Generic asset attributes. */ attributes?: { [key: string]: string; } | null; /** * Output only. Asset information specific for AWS CloudFront distributions. */ awsCloudFrontDistributionDetails?: Schema$AwsCloudFrontDistributionDetails; /** * Output only. Asset information specific for AWS DynamoDB tables. */ awsDynamodbTableDetails?: Schema$AwsDynamoDBTableDetails; /** * Output only. Asset information specific for AWS ECS clusters. */ awsEcsClusterDetails?: Schema$AwsEcsClusterDetails; /** * Output only. Asset information specific for AWS EFS file systems. */ awsEfsFileSystemDetails?: Schema$AwsEfsFileSystemDetails; /** * Output only. Asset information specific for AWS EKS clusters. */ awsEksClusterDetails?: Schema$AwsEksClusterDetails; /** * Output only. Asset information specific for AWS Load Balancers. */ awsElbLoadBalancerDetails?: Schema$AwsElbLoadBalancerDetails; /** * Output only. Asset information specific for AWS Lambda functions. */ awsLambdaFunctionDetails?: Schema$AwsLambdaFunctionDetails; /** * Output only. Asset information specific for AwsNatGatewayDetails */ awsNatGatewayDetails?: Schema$AwsNatGatewayDetails; /** * Output only. Asset information specific for AWS Redshift */ awsRedshiftDetails?: Schema$AwsRedshiftDetails; /** * Output only. Asset information specific for AwsRoute53HostedZoneDetails */ awsRoute53HostedZoneDetails?: Schema$AwsRoute53HostedZoneDetails; /** * Output only. Asset information specific for AWS S3 buckets. */ awsS3BucketDetails?: Schema$AwsS3BucketDetails; /** * Output only. Asset information specific for AWS VPCs. */ awsVpcDetails?: Schema$AwsVpcDetails; /** * Output only. The timestamp when the asset was created. */ createTime?: string | null; /** * Output only. Asset information specific for database deployments. */ databaseDeploymentDetails?: Schema$DatabaseDeploymentDetails; /** * Output only. Asset information specific for logical databases. */ databaseDetails?: Schema$DatabaseDetails; /** * Optional. Indicates if the asset is hidden. */ hidden?: boolean | null; /** * Optional. An optional reason for marking this asset as hidden. */ hideReason?: string | null; /** * Output only. The timestamp when the asset was marked as hidden. */ hideTime?: string | null; /** * Output only. Details about the hosting provider of the asset. */ hostingProviderDetails?: Schema$HostingProviderDetails; /** * Output only. The list of insights associated with the asset. */ insightList?: Schema$InsightList; /** * Labels as key value pairs. */ labels?: { [key: string]: string; } | null; /** * Output only. Asset information specific for virtual machines. */ machineDetails?: Schema$MachineDetails; /** * Output only. The full name of the asset. */ name?: string | null; /** * Performance data for the asset. */ performanceData?: Schema$AssetPerformanceData; /** * Output only. The list of sources contributing to the asset. */ sources?: string[] | null; /** * Optional. Generic structured asset attributes. */ structuredAttributes?: { [key: string]: any; } | null; /** * Output only. Server generated human readable name of the asset. */ title?: string | null; /** * Output only. The timestamp when the asset was last updated. */ updateTime?: string | null; /** * Output only. Asset information specific for virtual machines. */ virtualMachineDetails?: Schema$VirtualMachineDetails; } /** * Contains data reported from an inventory source on an asset. */ export interface Schema$AssetFrame { /** * Generic asset attributes. */ attributes?: { [key: string]: string; } | null; /** * Asset information specific for AWS CloudFront distributions. */ awsCloudFrontDistributionDetails?: Schema$AwsCloudFrontDistributionDetails; /** * Asset information specific for AWS DynamoDB tables. */ awsDynamodbTableDetails?: Schema$AwsDynamoDBTableDetails; /** * Asset information specific for AWS ECS clusters. */ awsEcsClusterDetails?: Schema$AwsEcsClusterDetails; /** * Asset information specific for AWS EFS file systems. */ awsEfsFileSystemDetails?: Schema$AwsEfsFileSystemDetails; /** * Asset information specific for AWS EKS clusters. */ awsEksClusterDetails?: Schema$AwsEksClusterDetails; /** * Asset information specific for AWS Load Balancers. */ awsElbLoadBalancerDetails?: Schema$AwsElbLoadBalancerDetails; /** * Asset information specific for AWS Lambda functions. */ awsLambdaFunctionDetails?: Schema$AwsLambdaFunctionDetails; /** * Asset information specific for AwsNatGatewayDetails */ awsNatGatewayDetails?: Schema$AwsNatGatewayDetails; /** * Asset information specific for AWS Redshift clusters. */ awsRedshiftDetails?: Schema$AwsRedshiftDetails; /** * Asset information specific for AwsRoute53HostedZoneDetails */ awsRoute53HostedZoneDetails?: Schema$AwsRoute53HostedZoneDetails; /** * Asset information specific for AWS S3 buckets. */ awsS3BucketDetails?: Schema$AwsS3BucketDetails; /** * Asset information specific for AWS VPCs. */ awsVpcDetails?: Schema$AwsVpcDetails; /** * Optional. Frame collection type, if not specified the collection type will be based on the source type of the source the frame was reported on. */ collectionType?: string | null; /** * Asset information specific for database deployments. */ databaseDeploymentDetails?: Schema$DatabaseDeploymentDetails; /** * Asset information specific for logical databases. */ databaseDetails?: Schema$DatabaseDetails; /** * Optional. Details about the hosting provider of the asset. */ hostingProviderDetails?: Schema$HostingProviderDetails; /** * Labels as key value pairs. */ labels?: { [key: string]: string; } | null; /** * Asset information specific for virtual and physical machines. */ machineDetails?: Schema$MachineDetails; /** * Asset performance data samples. Samples that are from more than 40 days ago or after tomorrow are ignored. */ performanceSamples?: Schema$PerformanceSample[]; /** * The time the data was reported. */ reportTime?: string | null; /** * Optional. Generic structured asset attributes. */ structuredAttributes?: { [key: string]: any; } | null; /** * Optional. Trace token is optionally provided to assist with debugging and traceability. */ traceToken?: string | null; /** * Asset information specific for virtual machines. */ virtualMachineDetails?: Schema$VirtualMachineDetails; } /** * Lists the asset IDs of all assets. */ export interface Schema$AssetList { /** * Required. A list of asset IDs */ assetIds?: string[] | null; } /** * Performance data for an asset. */ export interface Schema$AssetPerformanceData { /** * Daily resource usage aggregations. Contains all of the data available for an asset, up to the last 420 days. Aggregations are sorted from oldest to most recent. */ dailyResourceUsageAggregations?: Schema$DailyResourceUsageAggregation[]; } /** * Assets export job message. */ export interface Schema$AssetsExportJob { /** * Optional. Conditions for selecting assets to export. */ condition?: Schema$AssetsExportJobExportCondition; /** * Output only. Resource creation time. */ createTime?: string | null; /** * Export asset inventory details. */ inventory?: Schema$AssetsExportJobInventory; /** * Optional. Labels as key value pairs. Labels must meet the following constraints: * Keys and values can contain only lowercase letters, numeric characters, underscores, and dashes. * All characters must use UTF-8 encoding, and international characters are allowed. * Keys must start with a lowercase letter or international character. * Each resource is limited to a maximum of 64 labels. Both keys and values are additionally constrained to be <= 128 bytes. */ labels?: { [key: string]: string; } | null; /** * Output only. Identifier. Resource name. */ name?: string | null; /** * Export data regarding asset network dependencies. */ networkDependencies?: Schema$AssetsExportJobNetworkDependencies; /** * Export asset with performance data. */ performanceData?: Schema$AssetsExportJobPerformanceData; /** * Output only. Recent non expired executions of the job. */ recentExecutions?: Schema$AssetsExportJobExecution[]; /** * Optional. When this value is set to 'true' the response will include all assets, including those that are hidden. */ showHidden?: boolean | null; /** * Export to Cloud Storage files downloadable using signed URIs. */ signedUriDestination?: Schema$SignedUriDestination; /** * Output only. Resource update time. */ updateTime?: string | null; } /** * Execution status of assets export job. */ export interface Schema$AssetsExportJobExecution { /** * Output only. Completion time of the export. */ endTime?: string | null; /** * Output only. Globally unique identifier of the execution. */ executionId?: string | null; /** * Output only. Expiration time for the export and artifacts. */ expireTime?: string | null; /** * Output only. Number of assets requested for export after resolving the requested filters. */ requestedAssetCount?: number | null; /** * Output only. Result of the export execution. */ result?: Schema$AssetsExportJobExecutionResult; /** * Output only. Execution timestamp. */ startTime?: string | null; } /** * Contains the result of the assets export. */ export interface Schema$AssetsExportJobExecutionResult { /** * Output only. Error encountered during export. */ error?: Schema$Status; /** * Output only. List of output files. */ outputFiles?: Schema$OutputFileList; /** * Output only. Signed URLs for downloading export artifacts. */ signedUris?: Schema$SignedUris; } /** * Conditions for selecting assets to export. */ export interface Schema$AssetsExportJobExportCondition { /** * Optional. Assets filter, supports the same syntax as asset listing. */ filter?: string | null; } /** * Configuration for asset inventory details exports. */ export interface Schema$AssetsExportJobInventory { } /** * Configuration for network dependencies exports. */ export interface Schema$AssetsExportJobNetworkDependencies { } /** * Configuration for performance data exports. */ export interface Schema$AssetsExportJobPerformanceData { /** * Optional. When this value is set to a positive integer, performance data will be returned for the most recent days for which data is available. When this value is unset (or set to zero), all available data is returned. The maximum value is 420; values above 420 will be coerced to 420. If unset (0 value) a default value of 40 will be used. */ maxDays?: number | null; } /** * Details of an AWS CloudFront distribution. */ export interface Schema$AwsCloudFrontDistributionDetails { } /** * Details of an AWS DynamoDB table. */ export interface Schema$AwsDynamoDBTableDetails { } /** * AWS EC2 specific details. */ export interface Schema$AwsEc2PlatformDetails { /** * Optional. Whether the machine is hyperthreaded. */ hyperthreading?: string | null; /** * The location of the machine in the AWS format. */ location?: string | null; /** * AWS platform's machine type label. */ machineTypeLabel?: string | null; } /** * Details of an AWS ECS cluster. */ export interface Schema$AwsEcsClusterDetails { } /** * Details of an AWS EFS file system. */ export interface Schema$AwsEfsFileSystemDetails { } /** * Asset information specific for AWS EKS clusters. */ export interface Schema$AwsEksClusterDetails { } /** * Asset information specific for AWS Load Balancers. */ export interface Schema$AwsElbLoadBalancerDetails { } /** * Asset information specific for AWS Lambda functions. */ export interface Schema$AwsLambdaFunctionDetails { } /** * Details of an AWS NAT Gateway. */ export interface Schema$AwsNatGatewayDetails { } /** * Specific details for an AWS RDS database deployment. */ export interface Schema$AwsRds { } /** * Details of an AWS Redshift cluster. */ export interface Schema$AwsRedshiftDetails { } /** * Details of an AWS Route 53 Hosted Zone. */ export interface Schema$AwsRoute53HostedZoneDetails { } /** * Asset information specific for AWS S3 buckets. */ export interface Schema$AwsS3BucketDetails { /** * Optional. The metadata of the objects in the bucket. */ objectsMetadata?: Schema$AwsS3BucketDetailsObjectsMetadata; /** * Optional. The storage classes in the bucket. */ storageClasses?: Schema$AwsS3BucketDetailsStorageClass[]; /** * Optional. Versioning configuration of the bucket. */ versioning?: Schema$AwsS3BucketDetailsVersioning; } /** * The metadata of the objects in the bucket. */ export interface Schema$AwsS3BucketDetailsObjectsMetadata { /** * Optional. The total number of objects in the bucket. */ totalObjects?: Schema$AwsS3BucketDetailsObjectsMetadataTotalObjects; } /** * Information about the total number of objects in the bucket. */ export interface Schema$AwsS3BucketDetailsObjectsMetadataTotalObjects { /** * Optional. The total number of objects in the bucket. */ value?: number | null; } /** * Details about storage class. */ export interface Schema$AwsS3BucketDetailsStorageClass { /** * Optional. The total size of the storage class in bytes. */ totalBytes?: string | null; /** * Required. Type of the storage class. */ type?: string | null; } /** * Versioning configuration of the bucket. */ export interface Schema$AwsS3BucketDetailsVersioning { /** * Optional. Whether versioning is enabled. */ enabled?: boolean | null; } /** * Asset information specific for AWS VPCs. */ export interface Schema$AwsVpcDetails { } /** * Azure VM specific details. */ export interface Schema$AzureVmPlatformDetails { /** * Whether the machine is hyperthreaded. */ hyperthreading?: string | null; /** * The location of the machine in the Azure format. */ location?: string | null; /** * Azure platform's machine type label. */ machineTypeLabel?: string | null; /** * Azure platform's provisioning state. */ provisioningState?: string | null; } /** * A request to delete a list of asset. */ export interface Schema$BatchDeleteAssetsRequest { /** * Optional. When this value is set to `true` the request is a no-op for non-existing assets. See https://google.aip.dev/135#delete-if-existing for additional details. Default value is `false`. */ allowMissing?: boolean | null; /** * Optional. Optional cascading rules for deleting related assets. */ cascadingRules?: Schema$CascadingRule[]; /** * Required. The IDs of the assets to delete. A maximum of 1000 assets can be deleted in a batch. Format: projects/{project\}/locations/{location\}/assets/{name\}. */ names?: string[] | null; } /** * A request to update a list of assets. */ export interface Schema$BatchUpdateAssetsRequest { /** * Required. The request message specifying the resources to update. A maximum of 1000 assets can be modified in a batch. */ requests?: Schema$UpdateAssetRequest[]; } /** * Response for updating a list of assets. */ export interface Schema$BatchUpdateAssetsResponse { /** * Update asset content. The content only includes values after field mask being applied. */ assets?: Schema$Asset[]; } /** * Details about the BIOS. */ export interface Schema$BiosDetails { /** * BIOS manufacturer. */ biosManufacturer?: string | null; /** * BIOS name. */ biosName?: string | null; /** * BIOS release date. */ biosReleaseDate?: string | null; /** * BIOS version. */ biosVersion?: string | null; /** * BIOS ID. */ id?: string | null; /** * BIOS manufacturer. */ manufacturer?: string | null; /** * BIOS release date. */ releaseTime?: string | null; /** * SMBIOS UUID. */ smbiosUuid?: string | null; /** * BIOS version. */ version?: string | null; } /** * The request message for Operations.CancelOperation. */ export interface Schema$CancelOperationRequest { } /** * Cascading rule for related logical DBs. */ export interface Schema$CascadeLogicalDBsRule { } /** * Specifies cascading rules for traversing relations. */ export interface Schema$CascadingRule { /** * Cascading rule for related logical DBs. */ cascadeLogicalDbs?: Schema$CascadeLogicalDBsRule; } /** * Cloud database migration target. */ export interface Schema$CloudDatabaseMigrationTarget { /** * Cloud SQL for MySQL database shape. */ cloudSqlForMysqlShape?: Schema$CloudSqlForMySqlShape; /** * Cloud SQL for PostgreSQL database shape. */ cloudSqlForPostgresqlShape?: Schema$CloudSqlForPostgreSqlShape; /** * Cloud SQL for SQL Server database shape. */ cloudSqlShape?: Schema$CloudSqlForSqlServerShape; } /** * Cloud SQL for MySQL database shape. */ export interface Schema$CloudSqlForMySqlShape { /** * Output only. Predicted backup storage size in GiB. */ backupStorageGb?: number | null; /** * Output only. Cloud SQL edition. */ edition?: string | null; /** * Output only. Predicted Network Out traffic GiB per month. */ egressGbPerMonth?: string | null; /** * Output only. Number of logical cores. */ logicalCoreCount?: number | null; /** * Output only. Predicted amount of memory in MiB. */ memoryMb?: number | null; /** * Output only. Predicted storage shape. */ storage?: Schema$ComputeStorageDescriptor; /** * Output only. MySQL version to be used on the Cloud SQL for MySQL instance. */ version?: string | null; /** * Output only. Cloud SQL zone availability. */ zoneAvailability?: string | null; } /** * Cloud SQL for PostgreSQL database shape. */ export interface Schema$CloudSqlForPostgreSqlShape { /** * Output only. Predicted backup storage size in GiB. */ backupStorageGb?: number | null; /** * Output only. Cloud SQL edition. */ edition?: string | null; /** * Output only. Predicted Network Out traffic GiB per month. */ egressGbPerMonth?: string | null; /** * Output only. Number of logical cores. */ logicalCoreCount?: number | null; /** * Output only. Predicted amount of memory in MiB. */ memoryMb?: number | null; /** * Output only. Predicted storage shape. */ storage?: Schema$ComputeStorageDescriptor; /** * Output only. PostgreSql version to be used on the Cloud SQL for PostgreSql instance. */ version?: string | null; /** * Output only. Cloud SQL zone availability. */ zoneAvailability?: string | null; } /** * Cloud SQL for SQL Server database shape. */ export interface Schema$CloudSqlForSqlServerShape { /** * Output only. Predicted backup storage size in GiB. */ backupStorageGb?: number | null; /** * Output only. Cloud SQL edition. */ edition?: string | null; /** * Output only. Predicted Network Out traffic GiB per month. */ egressGbPerMonth?: string | null; /** * Output only. Number of logical cores. */ logicalCoreCount?: number | null; /** * Output only. Predicted amount of memory in MiB. */ memoryMb?: number | null; /** * Output only. Whether simultaneous multithreading is enabled (see https://cloud.google.com/sql/docs/sqlserver/create-instance#smt-create-instance). */ smtEnabled?: boolean | null; /** * Output only. Predicted storage shape. */ storage?: Schema$ComputeStorageDescriptor; /** * Output only. Microsoft SQL Server version to be used on the Cloud SQL for SQL server instance. */ version?: string | null; /** * Output only. Cloud SQL zone availability. */ zoneAvailability?: string | null; } /** * Compute engine migration target. */ export interface Schema$ComputeEngineMigrationTarget { /** * Description of the suggested shape for the migration target. */ shape?: Schema$ComputeEngineShapeDescriptor; } /** * The user preferences relating to Compute Engine target platform. */ export interface Schema$ComputeEnginePreferences { /** * License type to consider when calculating costs for operating systems. If unspecified, costs are calculated based on the default licensing plan. If os_pricing_preferences is specified, it overrides this field. */ licenseType?: string | null; /** * Preferences concerning the machine types to consider on Compute Engine. */ machinePreferences?: Schema$MachinePreferences; /** * Optional. Preferences for multithreading support on Windows Server. */ multithreading?: string | null; /** * Optional. Pricing options for OS images. */ osPricingPreferences?: Schema$OperatingSystemPricingPreferences; /** * Persistent disk type to use. If unspecified (default), all types are considered, based on available usage data. */ persistentDiskType?: string | null; } /** * Compute Engine target shape descriptor. */ export interface Schema$ComputeEngineShapeDescriptor { /** * Output only. Number of logical cores. */ logicalCoreCount?: number | null; /** * Output only. Compute Engine machine type. */ machineType?: string | null; /** * Output only. Memory in mebibytes. */ memoryMb?: number | null; /** * Output only. Number of physical cores. */ physicalCoreCount?: number | null; /** * Output only. Compute Engine machine series. */ series?: string | null; /** * Output only. Whether simultaneous multithreading is enabled (see https://cloud.google.com/compute/docs/instances/set-threads-per-core). */ smtEnabled?: boolean | null; /** * Output only. Compute Engine storage. Never empty. */ storage?: Schema$ComputeStorageDescriptor[]; } /** * Compute engine sole tenant migration target. */ export interface Schema$ComputeEngineSoleTenantMigrationTarget { } /** * Compute Engine storage option descriptor. */ export interface Schema$ComputeStorageDescriptor { /** * Disk size in GiB. */ sizeGb?: number | null; /** * Output only. Disk type backing the storage. */ type?: string | null; } /** * CPU usage sample. */ export interface Schema$CpuUsageSample { /** * Percentage of total CPU capacity utilized. Must be in the interval [0, 100]. On most systems can be calculated using 100 - idle percentage. */ utilizedPercentage?: number | null; } /** * Contains a single output file of type CSV. */ export interface Schema$CsvOutputFile { /** * Output only. Number of columns in the file. */ columnsCount?: number | null; /** * Output only. Number of rows in the file. */ rowCount?: number | null; /** * Output only. Signed URI destination. */ signedUri?: Schema$SignedUri; } /** * Usage data aggregation for a single day. */ export interface Schema$DailyResourceUsageAggregation { /** * CPU usage. */ cpu?: Schema$DailyResourceUsageAggregationCPU; /** * Aggregation date. Day boundaries are at midnight UTC. */ date?: Schema$Date; /** * Disk usage. */ disk?: Schema$DailyResourceUsageAggregationDisk; /** * Memory usage. */ memory?: Schema$DailyResourceUsageAggregationMemory; /** * Network usage. */ network?: Schema$DailyResourceUsageAggregationNetwork; } /** * Statistical aggregation of CPU usage. */ export interface Schema$DailyResourceUsageAggregationCPU { /** * CPU utilization percentage. */ utilizationPercentage?: Schema$DailyResourceUsageAggregationStats; } /** * Statistical aggregation of disk usage. */ export interface Schema$DailyResourceUsageAggregationDisk { /** * Disk I/O operations per second. */ iops?: Schema$DailyResourceUsageAggregationStats; /** * Disk read I/O operations per second. */ readIops?: Schema$DailyResourceUsageAggregationStats; /** * Disk write I/O operations per second. */ writeIops?: Schema$DailyResourceUsageAggregationStats; } /** * Statistical aggregation of memory usage. */ export interface Schema$DailyResourceUsageAggregationMemory { /** * Memory utilization percentage. */ utilizationPercentage?: Schema$DailyResourceUsageAggregationStats; } /** * Statistical aggregation of network usage. */ export interface Schema$DailyResourceUsageAggregationNetwork { /** * Network egress in B/s. */ egressBps?: Schema$DailyResourceUsageAggregationStats; /** * Network ingress in B/s. */ ingressBps?: Schema$DailyResourceUsageAggregationStats; } /** * Statistical aggregation of samples for a single resource usage. */ export interface Schema$DailyResourceUsageAggregationStats { /** * Average usage value. */ average?: number | null; /** * Median usage value. */ median?: number | null; /** * 95th percentile usage value. */ ninteyFifthPercentile?: number | null; /** * Peak usage value. */ peak?: number | null; } /** * The details of a database deployment asset. */ export interface Schema$DatabaseDeploymentDetails { /** * Output only. Aggregated stats for the database deployment. */ aggregatedStats?: Schema$DatabaseDeploymentDetailsAggregatedStats; /** * Optional. Details of an AWS RDS instance. */ awsRds?: Schema$AwsRds; /** * The database deployment edition. */ edition?: string | null; /** * The database deployment generated ID. */ generatedId?: string | null; /** * A manual unique ID set by the user. */ manualUniqueId?: string | null; /** * Details of a MYSQL database deployment. */ mysql?: Schema$MysqlDatabaseDeployment; /** * Details of a PostgreSQL database deployment. */ postgresql?: Schema$PostgreSqlDatabaseDeployment; /** * Details of a Microsoft SQL Server database deployment. */ sqlServer?: Schema$SqlServerDatabaseDeployment; /** * Details of the database deployment topology. */ topology?: Schema$DatabaseDeploymentTopology; /** * The database deployment version. */ version?: string | null; } /** * Aggregated stats for the database deployment. */ export interface Schema$DatabaseDeploymentDetailsAggregatedStats { /** * Output only. The number of databases in the deployment. */ databaseCount?: number | null; } /** * Details of database deployment's topology. */ export interface Schema$DatabaseDeploymentTopology { /** * Optional. Number of total logical cores. */ coreCount?: number | null; /** * Optional. Number of total logical cores limited by db deployment. */ coreLimit?: number | null; /** * Optional. Disk allocated in bytes. */ diskAllocatedBytes?: string | null; /** * Optional. Disk used in bytes. */ diskUsedBytes?: string | null; /** * Optional. List of database instances. */ instances?: Schema$DatabaseInstance[]; /** * Optional. Total memory in bytes. */ memoryBytes?: string | null; /** * Optional. Total memory in bytes limited by db deployment. */ memoryLimitBytes?: string | null; /** * Optional. Number of total physical cores. */ physicalCoreCount?: number | null; /** * Optional. Number of total physical cores limited by db deployment. */ physicalCoreLimit?: number | null; } /** * Details of a logical database. */ export interface Schema$DatabaseDetails { /** * The allocated storage for the database in bytes. */ allocatedStorageBytes?: string | null; /** * The name of the database. */ databaseName?: string | null; /** * The parent database deployment that contains the logical database. */ parentDatabaseDeployment?: Schema$DatabaseDetailsParentDatabaseDeployment; /** * The database schemas. */ schemas?: Schema$DatabaseSchema[]; } /** * The identifiers of the parent database deployment. */ export interface Schema$DatabaseDetailsParentDatabaseDeployment { /** * The parent database deployment generated ID. */ generatedId?: string | null; /** * The parent database deployment optional manual unique ID set by the user. */ manualUniqueId?: string | null; } /** * Details of a database instance. */ export interface Schema$DatabaseInstance { /** * The instance's name. */ instanceName?: string | null; /** * Optional. Networking details. */ network?: Schema$DatabaseInstanceNetwork; /** * The instance role in the database engine. */ role?: string | null; } /** * Network details of a database instance. */ export interface Schema$DatabaseInstanceNetwork { /** * Optional. The instance's host names. */ hostNames?: string[] | null; /** * Optional. The instance's IP addresses. */ ipAddresses?: string[] | null; /** * Optional. The instance's primary MAC address. */ primaryMacAddress?: string | null; } /** * Details of a group of database objects. */ export interface Schema$DatabaseObjects { /** * The category of the objects. */ category?: string | null; /** * The number of objects. */ count?: string | null; } /** * DatabasePreferences enables you to create sets of preferences for your migrated databases. */ export interface Schema$DatabasePreferences { /** * Optional. Preferences for target SQL Server on Cloud SQL when migrating from source Microsoft SQL server. */ mssqlToCloudSqlForSqlServerPreferences?: Schema$DatabasePreferencesCloudSqlSqlServer; /** * Optional. Preferences for target MySQL on Cloud SQL when migrating from source MySQL. */ mysqlToCloudSqlForMysqlPreferences?: Schema$DatabasePreferencesCloudSqlMySql; /** * Optional. Preferences for target PostgreSQL on Cloud SQL when migrating from source PostgreSQL. */ postgresqlToCloudSqlForPostgresqlPreferences?: Schema$DatabasePreferencesCloudSqlPostgreSql; } /** * Preferences common to Cloud SQL databases. */ export interface Schema$DatabasePreferencesCloudSqlCommon { /** * Optional. Preferences for database backups. */ backup?: Schema$DatabasePreferencesCloudSqlCommonBackup; /** * Optional. Commitment plan to consider when calculating costs. Only regular CUDs (not flexible) are currently available. */ commitmentPlan?: string | null; /** * Optional. Preferred Cloud SQL edition. */ edition?: string | null; /** * Optional. Persistent disk type to use. If unspecified, a disk type is recommended based on available usage data. For SQL Server, only SSD is available. For MySQL and PostgreSQL, only STANDARD (HDD) and SSD types are available. */ persistentDiskType?: string | null; /** * Optional. Sizing optimization strategy of the database. Currently supported for Cloud SQL are just two values: SIZING_OPTIMIZATION_STRATEGY_MODERATE and SIZING_OPTIMIZATION_STRATEGY_SAME_AS_SOURCE. SIZING_OPTIMIZATION_STRATEGY_UNSPECIFIED will behave like SIZING_OPTIMIZATION_STRATEGY_MODERATE. */ sizingOptimizationStrategy?: string | null; /** * Optional. Preferred zone availability. */ zoneAvailability?: string | null; } /** * Preferences for database backups. */ export interface Schema$DatabasePreferencesCloudSqlCommonBackup { /** * Optional. Automated backup mode. */ backupMode?: string | null; } /** * Preferences for MySQL on Cloud SQL. */ export interface Schema$DatabasePreferencesCloudSqlMySql { /** * Optional. Preferences to Cloud SQL databases. */ common?: Schema$DatabasePreferencesCloudSqlCommon; } /** * Preferences for PostgreSQL on Cloud SQL. */ export interface Schema$DatabasePreferencesCloudSqlPostgreSql { /** * Optional. Preferences to Cloud SQL databases. */ common?: Schema$DatabasePreferencesCloudSqlCommon; } /** * Preferences for SQL Server on Cloud SQL. */ export interface Schema$DatabasePreferencesCloudSqlSqlServer { /** * Optional. Preferences to Cloud SQL databases. */ common?: Schema$DatabasePreferencesCloudSqlCommon; /** * Optional. Preferences for multithreading support. */ multithreading?: string | null; /** * Optional. Edition of Microsoft SQL version that is used on a Cloud SQL for SQL server instance. */ versionType?: string | null; } /** * Details of a database schema. */ export interface Schema$DatabaseSchema { /** * Details of a Mysql schema. */ mysql?: Schema$MySqlSchemaDetails; /** * List of details of objects by category. */ objects?: Schema$DatabaseObjects[]; /** * Details of a PostgreSql schema. */ postgresql?: Schema$PostgreSqlSchemaDetails; /** * The name of the schema. */ schemaName?: string | null; /** * Details of a SqlServer schema. */ sqlServer?: Schema$SqlServerSchemaDetails; /** * The total size of tables in bytes. */ tablesSizeBytes?: string | null; } /** * Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp */ export interface Schema$Date { /** * Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant. */ day?: number | null; /** * Month of a yea