UNPKG

@yandex-cloud/nodejs-sdk

Version:
1,021 lines 667 kB
/// <reference types="node" /> import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, handleServerStreamingCall, Client, ClientUnaryCall, Metadata, CallOptions, ClientReadableStream, ServiceError } from "@grpc/grpc-js"; import _m0 from "protobufjs/minimal"; import { Cluster_Environment, Resources, Access, PerformanceDiagnostics, Cluster, Host } from "../../../../../yandex/cloud/mdb/mysql/v1/cluster"; import { FieldMask } from "../../../../../google/protobuf/field_mask"; import { MaintenanceWindow } from "../../../../../yandex/cloud/mdb/mysql/v1/maintenance"; import { TimeOfDay } from "../../../../../google/type/timeofday"; import { DatabaseSpec } from "../../../../../yandex/cloud/mdb/mysql/v1/database"; import { UserSpec } from "../../../../../yandex/cloud/mdb/mysql/v1/user"; import { Operation } from "../../../../../yandex/cloud/operation/operation"; import { Backup } from "../../../../../yandex/cloud/mdb/mysql/v1/backup"; import { Mysqlconfig57 } from "../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7"; import { Mysqlconfig80 } from "../../../../../yandex/cloud/mdb/mysql/v1/config/mysql8_0"; export declare const protobufPackage = "yandex.cloud.mdb.mysql.v1"; export interface GetClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.GetClusterRequest"; /** * ID of the cluster to return information about. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; } export interface ListClustersRequest { $type: "yandex.cloud.mdb.mysql.v1.ListClustersRequest"; /** * ID of the folder to list clusters in. * * To get this ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** * The maximum number of results per page to return. * * If the number of available results is larger than [page_size], the API returns a [ListClustersResponse.next_page_token] that can be used to get the next page of results in the subsequent [ClusterService.List] requests. */ pageSize: number; /** * Page token that can be used to iterate through multiple pages of results. * * To get the next page of results, set [page_token] to the [ListClustersResponse.next_page_token] returned by the previous [ClusterService.List] request. */ pageToken: string; /** * A filter expression that selects clusters listed in the response. * * The expression must specify: * 1. The field name. Currently you can only use filtering with the [Cluster.name] field. * 2. An `=` operator. * 3. The value in double quotes (`"`). Must be 1-63 characters long and match the regular expression `[a-zA-Z0-9_-]+`. */ filter: string; } export interface ListClustersResponse { $type: "yandex.cloud.mdb.mysql.v1.ListClustersResponse"; /** List of clusters. */ clusters: Cluster[]; /** * The token that can be used to get the next page of results. * * If the number of results is larger than [ListClustersRequest.page_size], use the [next_page_token] as the value for the [ListClustersRequest.page_token] in the subsequent [ClusterService.List] request to iterate through multiple pages of results. * * Each of the subsequent [ClusterService.List] requests should use the [next_page_token] value returned by the previous request to continue paging through the results. */ nextPageToken: string; } export interface CreateClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.CreateClusterRequest"; /** * ID of the folder to create the cluster in. * * To get this ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** Name of the cluster. The name must be unique within the folder. */ name: string; /** Description of the cluster. */ description: string; /** Custom labels for the cluster as `key:value` pairs. */ labels: { [key: string]: string; }; /** Deployment environment of the cluster. */ environment: Cluster_Environment; /** Configuration of the cluster. */ configSpec?: ConfigSpec; /** Configuration of databases in the cluster. */ databaseSpecs: DatabaseSpec[]; /** Configuration of database users in the cluster. */ userSpecs: UserSpec[]; /** Configuration of hosts in the cluster. */ hostSpecs: HostSpec[]; /** ID of the network to create the cluster in. */ networkId: string; /** List of security group IDs to apply to the cluster. */ securityGroupIds: string[]; /** This option prevents unintended deletion of the cluster. */ deletionProtection: boolean; /** Host groups hosting VMs of the cluster. */ hostGroupIds: string[]; } export interface CreateClusterRequest_LabelsEntry { $type: "yandex.cloud.mdb.mysql.v1.CreateClusterRequest.LabelsEntry"; key: string; value: string; } export interface CreateClusterMetadata { $type: "yandex.cloud.mdb.mysql.v1.CreateClusterMetadata"; /** ID of the cluster that is being created. */ clusterId: string; } export interface UpdateClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.UpdateClusterRequest"; /** * ID of the cluster to update. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** Field mask that specifies which settings of the cluster should be updated. */ updateMask?: FieldMask; /** New description of the cluster. */ description: string; /** * New set of custom labels for the cluster as `key:value` pairs. * * This set will completely replace the current one. * To add a label, request the current label set with the [ClusterService.Get] request, then send an [ClusterService.Update] request with the new label added to the current set. */ labels: { [key: string]: string; }; /** New configuration of the cluster. */ configSpec?: ConfigSpec; /** New name of the cluster. */ name: string; /** Configuration of a maintenance window in an MySQL cluster. */ maintenanceWindow?: MaintenanceWindow; /** New list of security group IDs to apply to the cluster. */ securityGroupIds: string[]; /** This option prevents unintended deletion of the cluster. */ deletionProtection: boolean; } export interface UpdateClusterRequest_LabelsEntry { $type: "yandex.cloud.mdb.mysql.v1.UpdateClusterRequest.LabelsEntry"; key: string; value: string; } export interface UpdateClusterMetadata { $type: "yandex.cloud.mdb.mysql.v1.UpdateClusterMetadata"; /** ID of the cluster that is being updated. */ clusterId: string; } export interface DeleteClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.DeleteClusterRequest"; /** * ID of the cluster to delete. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; } export interface DeleteClusterMetadata { $type: "yandex.cloud.mdb.mysql.v1.DeleteClusterMetadata"; /** ID of the cluster that is being deleted. */ clusterId: string; } export interface BackupClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.BackupClusterRequest"; /** * ID of the cluster to back up. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; } export interface BackupClusterMetadata { $type: "yandex.cloud.mdb.mysql.v1.BackupClusterMetadata"; /** ID of the cluster that is being backed up. */ clusterId: string; /** ID of the MySQL backup that is created. */ backupId: string; } export interface RestoreClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.RestoreClusterRequest"; /** * ID of the backup to restore from. * * To get this ID, make a [BackupService.List] request (lists all backups in a folder) or a [ClusterService.ListBackups] request (lists all backups for an existing cluster). */ backupId: string; /** Timestamp of the moment to which the MySQL cluster should be restored. */ time?: Date; /** Name of the new MySQL cluster the backup will be restored to. The name must be unique within the folder. */ name: string; /** Description of the new cluster. */ description: string; /** Custom labels for the new cluster as `key:value` pairs. */ labels: { [key: string]: string; }; /** Deployment environment for the new cluster. */ environment: Cluster_Environment; /** Configuration of the new cluster. */ configSpec?: ConfigSpec; /** Configuration of hosts in the new cluster. */ hostSpecs: HostSpec[]; /** ID of the network to create the new cluster in. */ networkId: string; /** ID of the folder to create the new cluster in. */ folderId: string; /** List of security group IDs to apply to the new cluster. */ securityGroupIds: string[]; /** Deletion Protection inhibits deletion of the cluster */ deletionProtection: boolean; /** Host groups hosting VMs of the cluster. */ hostGroupIds: string[]; } export interface RestoreClusterRequest_LabelsEntry { $type: "yandex.cloud.mdb.mysql.v1.RestoreClusterRequest.LabelsEntry"; key: string; value: string; } export interface RestoreClusterMetadata { $type: "yandex.cloud.mdb.mysql.v1.RestoreClusterMetadata"; /** ID of the new cluster that is being created from a backup. */ clusterId: string; /** ID of the backup that is being used for creating a cluster. */ backupId: string; } export interface StartClusterFailoverRequest { $type: "yandex.cloud.mdb.mysql.v1.StartClusterFailoverRequest"; /** * ID of the cluster to start failover for. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** * Host name to switch master role to. * If not provided, then the master role is switched to the most up-to-date replica host. * * To get this name, make a [ClusterService.ListHosts] request. */ hostName: string; } export interface StartClusterFailoverMetadata { $type: "yandex.cloud.mdb.mysql.v1.StartClusterFailoverMetadata"; /** ID of the cluster that is being failovered. */ clusterId: string; } export interface RescheduleMaintenanceRequest { $type: "yandex.cloud.mdb.mysql.v1.RescheduleMaintenanceRequest"; /** * ID of the cluster to reschedule the maintenance operation for. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** The type of reschedule request. */ rescheduleType: RescheduleMaintenanceRequest_RescheduleType; /** * The time until which this maintenance operation should be delayed. * The value should be ahead of the first time when the maintenance operation has been scheduled for no more than two weeks. * The value can also point to the past moment of time if `IMMEDIATE` reschedule type is chosen. */ delayedUntil?: Date; } export declare enum RescheduleMaintenanceRequest_RescheduleType { RESCHEDULE_TYPE_UNSPECIFIED = 0, /** IMMEDIATE - Start the maintenance operation immediately. */ IMMEDIATE = 1, /** NEXT_AVAILABLE_WINDOW - Start the maintenance operation within the next available maintenance window. */ NEXT_AVAILABLE_WINDOW = 2, /** SPECIFIC_TIME - Start the maintenance operation at the specific time. */ SPECIFIC_TIME = 3, UNRECOGNIZED = -1 } export declare function rescheduleMaintenanceRequest_RescheduleTypeFromJSON(object: any): RescheduleMaintenanceRequest_RescheduleType; export declare function rescheduleMaintenanceRequest_RescheduleTypeToJSON(object: RescheduleMaintenanceRequest_RescheduleType): string; export interface RescheduleMaintenanceMetadata { $type: "yandex.cloud.mdb.mysql.v1.RescheduleMaintenanceMetadata"; /** ID of the cluster the maintenance operation is being rescheduled for. */ clusterId: string; /** The time until which this maintenance operation is to be delayed. */ delayedUntil?: Date; } /** A single log record. */ export interface LogRecord { $type: "yandex.cloud.mdb.mysql.v1.LogRecord"; /** Timestamp of the log record. */ timestamp?: Date; /** Contents of the log record. */ message: { [key: string]: string; }; } export interface LogRecord_MessageEntry { $type: "yandex.cloud.mdb.mysql.v1.LogRecord.MessageEntry"; key: string; value: string; } export interface ListClusterLogsRequest { $type: "yandex.cloud.mdb.mysql.v1.ListClusterLogsRequest"; /** * ID of the cluster to request logs for. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** * Columns from the logs table to request. * If no columns are specified, complete log records are returned. */ columnFilter: string[]; /** The log type. */ serviceType: ListClusterLogsRequest_ServiceType; /** * Start timestamp for the logs request. * The logs in the response will be within [from_time] to [to_time] range. */ fromTime?: Date; /** * End timestamp for the logs request. * The logs in the response will be within [from_time] to [to_time] range. */ toTime?: Date; /** * The maximum number of results per page to return. * * If the number of available results is larger than [page_size], the API returns a [ListClusterLogsResponse.next_page_token] that can be used to get the next page of results in the subsequent [ClusterService.ListLogs] requests. */ pageSize: number; /** * Page token that can be used to iterate through multiple pages of results. * * To get the next page of results, set [page_token] to the [ListClusterLogsResponse.next_page_token] returned by the previous [ClusterService.ListLogs] request. */ pageToken: string; /** * Option that controls the behavior of result pagination. * If it is set to `true`, then [ListClusterLogsResponse.next_page_token] will always be returned, even if the current page is empty. */ alwaysNextPageToken: boolean; } export declare enum ListClusterLogsRequest_ServiceType { SERVICE_TYPE_UNSPECIFIED = 0, /** MYSQL_ERROR - MySQL error log. */ MYSQL_ERROR = 1, /** MYSQL_GENERAL - MySQL general query log. */ MYSQL_GENERAL = 2, /** MYSQL_SLOW_QUERY - MySQL slow query log. */ MYSQL_SLOW_QUERY = 3, /** MYSQL_AUDIT - MySQL audit log. */ MYSQL_AUDIT = 4, UNRECOGNIZED = -1 } export declare function listClusterLogsRequest_ServiceTypeFromJSON(object: any): ListClusterLogsRequest_ServiceType; export declare function listClusterLogsRequest_ServiceTypeToJSON(object: ListClusterLogsRequest_ServiceType): string; export interface ListClusterLogsResponse { $type: "yandex.cloud.mdb.mysql.v1.ListClusterLogsResponse"; /** Requested log records. */ logs: LogRecord[]; /** * The token that can be used to get the next page of results. * * If the number of results is larger than [ListClusterLogsRequest.page_size], use the [next_page_token] as the value for the [ListClusterLogsRequest.page_token] in the subsequent [ClusterService.ListLogs] request to iterate through multiple pages of results. * * Each of the subsequent [ClusterService.ListLogs] requests should use the [next_page_token] value returned by the previous request to continue paging through the results. * * This value is interchangeable with [StreamLogRecord.next_record_token] from [ClusterService.StreamLogs] method. */ nextPageToken: string; } /** A single log record in the logs stream. */ export interface StreamLogRecord { $type: "yandex.cloud.mdb.mysql.v1.StreamLogRecord"; /** One of the requested log records. */ record?: LogRecord; /** * The token that can be used to continue streaming logs starting from the exact same record. * To continue streaming, specify value of [next_record_token] as the [StreamClusterLogsRequest.record_token] value in the next [ClusterService.StreamLogs] request. * * This value is interchangeable with [ListClusterLogsResponse.next_page_token] from [ClusterService.ListLogs] method. */ nextRecordToken: string; } export interface StreamClusterLogsRequest { $type: "yandex.cloud.mdb.mysql.v1.StreamClusterLogsRequest"; /** * ID of the cluster to stream logs for. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** * Columns from the logs table to request. * If no columns are specified, complete log records are returned. */ columnFilter: string[]; /** The log type. */ serviceType: StreamClusterLogsRequest_ServiceType; /** Start timestamp for the logs request. */ fromTime?: Date; /** * End timestamp for the logs request. * If this field is not set, all existing log records beginning from [from_time] will be returned first, and then the new records will be returned as they appear. * * In essence it has `tail -f` command semantics. */ toTime?: Date; /** * Record token that can be used to control logs streaming. * * Set [record_token] to the [StreamLogRecord.next_record_token], returned by the previous [ClusterService.StreamLogs] request to start streaming from the next log record. */ recordToken: string; /** * A filter expression that selects clusters logs listed in the response. * * The expression must specify: * 1. The field name. Currently filtering can be applied to the [LogRecord.logs.hostname] field. * 2. An `=` operator. * 3. The value in double quotes (`"`). Must be 3-63 characters long and match the regular expression `[a-z][-a-z0-9]{1,61}[a-z0-9]`. * Examples of a filter: `message.hostname='node1.db.cloud.yandex.net'` */ filter: string; } export declare enum StreamClusterLogsRequest_ServiceType { SERVICE_TYPE_UNSPECIFIED = 0, /** MYSQL_ERROR - MySQL error log. */ MYSQL_ERROR = 1, /** MYSQL_GENERAL - MySQL general query log. */ MYSQL_GENERAL = 2, /** MYSQL_SLOW_QUERY - MySQL slow query log. */ MYSQL_SLOW_QUERY = 3, /** MYSQL_AUDIT - MySQL audit log. */ MYSQL_AUDIT = 4, UNRECOGNIZED = -1 } export declare function streamClusterLogsRequest_ServiceTypeFromJSON(object: any): StreamClusterLogsRequest_ServiceType; export declare function streamClusterLogsRequest_ServiceTypeToJSON(object: StreamClusterLogsRequest_ServiceType): string; export interface ListClusterOperationsRequest { $type: "yandex.cloud.mdb.mysql.v1.ListClusterOperationsRequest"; /** * ID of the cluster to list operations for. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** * The maximum number of results per page to return. * * If the number of available results is larger than [page_size], the API returns a [ListClusterOperationsResponse.next_page_token] that can be used to get the next page of results in the subsequent [ClusterService.ListOperations] requests. */ pageSize: number; /** * Page token that can be used to iterate through multiple pages of results. * * To get the next page of results, set [page_token] to the [ListClusterOperationsResponse.next_page_token] returned by the previous [ClusterService.ListOperations] request. */ pageToken: string; } export interface ListClusterOperationsResponse { $type: "yandex.cloud.mdb.mysql.v1.ListClusterOperationsResponse"; /** List of operations in the cluster. */ operations: Operation[]; /** * The token that can be used to get the next page of results. * * If the number of results is larger than [ListClusterOperationsRequest.page_size], use the [next_page_token] as the value for the [ListClusterOperationsRequest.page_token] in the subsequent [ClusterService.ListOperations] request to iterate through multiple pages of results. * * Each of the subsequent [ClusterService.ListOperations] requests should use the [next_page_token] value returned by the previous request to continue paging through the results. */ nextPageToken: string; } export interface ListClusterBackupsRequest { $type: "yandex.cloud.mdb.mysql.v1.ListClusterBackupsRequest"; /** * ID of the cluster to list backups for. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** * The maximum number of results per page to return. * * If the number of available results is larger than [page_size], the API returns a [ListClusterBackupsResponse.next_page_token] that can be used to get the next page of results in the subsequent [ClusterService.ListBackups] requests. */ pageSize: number; /** * Page token that can be used to iterate through multiple pages of results. * * To get the next page of results, set [page_token] to the [ListClusterBackupsResponse.next_page_token] returned by the previous [ClusterService.ListBackups] request. */ pageToken: string; } export interface ListClusterBackupsResponse { $type: "yandex.cloud.mdb.mysql.v1.ListClusterBackupsResponse"; /** List of the cluster backups. */ backups: Backup[]; /** * The token that can be used to get the next page of results. * * If the number of results is larger than [ListClusterBackupsRequest.page_size], use the [next_page_token] as the value for the [ListClusterBackupsRequest.page_token] in the subsequent [ClusterService.ListBackups] request to iterate through multiple pages of results. * * Each of the subsequent [ClusterService.ListBackups] requests should use the [next_page_token] value returned by the previous request to continue paging through the results. */ nextPageToken: string; } export interface ListClusterHostsRequest { $type: "yandex.cloud.mdb.mysql.v1.ListClusterHostsRequest"; /** * ID of the cluster to list hosts for. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** * The maximum number of results per page to return. * * If the number of available results is larger than [page_size], the API returns a [ListClusterHostsResponse.next_page_token] that can be used to get the next page of results in the subsequent [ClusterService.ListHosts] requests. */ pageSize: number; /** * Page token that can be used to iterate through multiple pages of results. * * To get the next page of results, set [page_token] to the [ListClusterHostsResponse.next_page_token] returned by the previous [ClusterService.ListHosts] request. */ pageToken: string; } export interface ListClusterHostsResponse { $type: "yandex.cloud.mdb.mysql.v1.ListClusterHostsResponse"; /** List of hosts in the cluster. */ hosts: Host[]; /** * The token that can be used to get the next page of results. * * If the number of results is larger than [ListClusterHostsRequest.page_size], use the [next_page_token] as the value for the [ListClusterHostsRequest.page_token] in the subsequent [ClusterService.ListHosts] request to iterate through multiple pages of results. * * Each of the subsequent [ClusterService.ListHosts] requests should use the [next_page_token] value returned by the previous request to continue paging through the results. */ nextPageToken: string; } export interface AddClusterHostsRequest { $type: "yandex.cloud.mdb.mysql.v1.AddClusterHostsRequest"; /** * ID of the cluster to add hosts to. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** Configuration of the newly added hosts. */ hostSpecs: HostSpec[]; } export interface AddClusterHostsMetadata { $type: "yandex.cloud.mdb.mysql.v1.AddClusterHostsMetadata"; /** ID of the cluster to which the hosts are being added. */ clusterId: string; /** Names of hosts that are being added. */ hostNames: string[]; } export interface DeleteClusterHostsRequest { $type: "yandex.cloud.mdb.mysql.v1.DeleteClusterHostsRequest"; /** * ID of the cluster to delete hosts from. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** * Names of hosts to delete. * * To get these names, make a [ClusterService.ListHosts] request. */ hostNames: string[]; } export interface DeleteClusterHostsMetadata { $type: "yandex.cloud.mdb.mysql.v1.DeleteClusterHostsMetadata"; /** ID of the cluster from which the hosts are being deleted. */ clusterId: string; /** Names of hosts that are being deleted. */ hostNames: string[]; } export interface StartClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.StartClusterRequest"; /** * ID of the cluster to start. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; } export interface StartClusterMetadata { $type: "yandex.cloud.mdb.mysql.v1.StartClusterMetadata"; /** ID of the cluster that is being started. */ clusterId: string; } export interface StopClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.StopClusterRequest"; /** * ID of the cluster to stop. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; } export interface StopClusterMetadata { $type: "yandex.cloud.mdb.mysql.v1.StopClusterMetadata"; /** ID of the cluster that is being stopped. */ clusterId: string; } export interface MoveClusterRequest { $type: "yandex.cloud.mdb.mysql.v1.MoveClusterRequest"; /** * ID of the cluster to move. * * To get this ID, make a [ClusterService.List] request. */ clusterId: string; /** * ID of the destination folder. * * To get this ID, make a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ destinationFolderId: string; } export interface MoveClusterMetadata { $type: "yandex.cloud.mdb.mysql.v1.MoveClusterMetadata"; /** ID of the cluster that is being moved. */ clusterId: string; /** ID of the source folder. */ sourceFolderId: string; /** ID of the destination folder. */ destinationFolderId: string; } export interface UpdateClusterHostsRequest { $type: "yandex.cloud.mdb.mysql.v1.UpdateClusterHostsRequest"; /** * ID of the MySQL cluster to update hosts in. * To get the MySQL cluster ID, use a [ClusterService.List] request. */ clusterId: string; /** New configurations to apply to hosts. */ updateHostSpecs: UpdateHostSpec[]; } export interface UpdateClusterHostsMetadata { $type: "yandex.cloud.mdb.mysql.v1.UpdateClusterHostsMetadata"; /** ID of the cluster in which the hosts are being updated. */ clusterId: string; /** Names of hosts that are being updated. */ hostNames: string[]; } export interface UpdateHostSpec { $type: "yandex.cloud.mdb.mysql.v1.UpdateHostSpec"; /** * Name of the host to update. * To get a MySQL host name, use a [ClusterService.ListHosts] request. */ hostName: string; /** * [Host.name] of the host to be used as the replication source (for cascading replication). * To get a MySQL host name, use a [ClusterService.ListHosts] request. */ replicationSource: string; /** Field mask that specifies which settings of the MySQL host should be updated. */ updateMask?: FieldMask; /** Host backup priority. */ backupPriority: number; /** Whether the host should get a public IP address on creation. */ assignPublicIp: boolean; /** Host master promotion priority. */ priority: number; } export interface HostSpec { $type: "yandex.cloud.mdb.mysql.v1.HostSpec"; /** * ID of the availability zone where the host resides. * * To get a list of available zones, make the [yandex.cloud.compute.v1.ZoneService.List] request. */ zoneId: string; /** * ID of the subnet to assign to the host. * * This subnet should be a part of the cluster network (the network ID is specified in the [ClusterService.CreateClusterRequest.network_id]). */ subnetId: string; /** * Option that enables public IP address for the host so that the host can be accessed from the internet. * * After a host has been created, this setting cannot be changed. * To remove an assigned public IP address, or to assign a public IP address to a host without one, recreate the host with the appropriate [assign_public_ip] value set. * * Possible values: * * `false` - don't assign a public IP address to the host. * * `true` - assign a public IP address to the host. */ assignPublicIp: boolean; /** [Host.name] of the host to be used as the replication source (for cascading replication). */ replicationSource: string; /** Host backup priority */ backupPriority: number; /** Host master promotion priority */ priority: number; } export interface ConfigSpec { $type: "yandex.cloud.mdb.mysql.v1.ConfigSpec"; /** * Version of MySQL used in the cluster. * * Possible values: `5.7`, `8.0`. */ version: string; /** Configuration for a MySQL 5.7 cluster. */ mysqlConfig57?: Mysqlconfig57 | undefined; /** Configuration for a MySQL 8.0 cluster. */ mysqlConfig80?: Mysqlconfig80 | undefined; /** Resource preset for the cluster hosts. */ resources?: Resources; /** Time to start the daily backup, in the UTC timezone. */ backupWindowStart?: TimeOfDay; /** * Access policy for external services. * * If the specific services need to access the cluster, then set the necessary values in this policy. */ access?: Access; /** Configuration of the performance diagnostics service. */ performanceDiagnostics?: PerformanceDiagnostics; /** Retention policy of automated backups. */ backupRetainPeriodDays?: number; } export declare const GetClusterRequest: { $type: "yandex.cloud.mdb.mysql.v1.GetClusterRequest"; encode(message: GetClusterRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): GetClusterRequest; fromJSON(object: any): GetClusterRequest; toJSON(message: GetClusterRequest): unknown; fromPartial<I extends { clusterId?: string | undefined; } & { clusterId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "clusterId">, never>>(object: I): GetClusterRequest; }; export declare const ListClustersRequest: { $type: "yandex.cloud.mdb.mysql.v1.ListClustersRequest"; encode(message: ListClustersRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListClustersRequest; fromJSON(object: any): ListClustersRequest; toJSON(message: ListClustersRequest): unknown; fromPartial<I extends { pageSize?: number | undefined; pageToken?: string | undefined; filter?: string | undefined; folderId?: string | undefined; } & { pageSize?: number | undefined; pageToken?: string | undefined; filter?: string | undefined; folderId?: string | undefined; } & Record<Exclude<keyof I, "$type" | "pageSize" | "pageToken" | "filter" | "folderId">, never>>(object: I): ListClustersRequest; }; export declare const ListClustersResponse: { $type: "yandex.cloud.mdb.mysql.v1.ListClustersResponse"; encode(message: ListClustersResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number | undefined): ListClustersResponse; fromJSON(object: any): ListClustersResponse; toJSON(message: ListClustersResponse): unknown; fromPartial<I extends { nextPageToken?: string | undefined; clusters?: { description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; status?: import("../../../../../yandex/cloud/mdb/mysql/v1/cluster").Cluster_Status | undefined; config?: { resources?: { diskTypeId?: string | undefined; diskSize?: number | undefined; resourcePresetId?: string | undefined; } | undefined; version?: string | undefined; backupWindowStart?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; access?: { dataLens?: boolean | undefined; webSql?: boolean | undefined; dataTransfer?: boolean | undefined; } | undefined; backupRetainPeriodDays?: number | undefined; performanceDiagnostics?: { enabled?: boolean | undefined; sessionsSamplingInterval?: number | undefined; statementsSamplingInterval?: number | undefined; } | undefined; mysqlConfig57?: { effectiveConfig?: { sqlMode?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_SQLMode[] | undefined; maxConnections?: number | undefined; auditLog?: boolean | undefined; defaultAuthenticationPlugin?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_AuthPlugin | undefined; transactionIsolation?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_TransactionIsolation | undefined; defaultTimeZone?: string | undefined; characterSetServer?: string | undefined; collationServer?: string | undefined; binlogRowImage?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_BinlogRowImage | undefined; slaveParallelType?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_SlaveParallelType | undefined; logSlowRateType?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_LogSlowRateType | undefined; logSlowFilter?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_LogSlowFilterType[] | undefined; binlogTransactionDependencyTracking?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_BinlogTransactionDependencyTracking | undefined; optimizerSwitch?: string | undefined; innodbBufferPoolSize?: number | undefined; longQueryTime?: number | undefined; generalLog?: boolean | undefined; maxAllowedPacket?: number | undefined; innodbFlushLogAtTrxCommit?: number | undefined; innodbLockWaitTimeout?: number | undefined; innodbPrintAllDeadlocks?: boolean | undefined; netReadTimeout?: number | undefined; netWriteTimeout?: number | undefined; groupConcatMaxLen?: number | undefined; tmpTableSize?: number | undefined; maxHeapTableSize?: number | undefined; innodbAdaptiveHashIndex?: boolean | undefined; innodbNumaInterleave?: boolean | undefined; innodbLogBufferSize?: number | undefined; innodbLogFileSize?: number | undefined; innodbIoCapacity?: number | undefined; innodbIoCapacityMax?: number | undefined; innodbReadIoThreads?: number | undefined; innodbWriteIoThreads?: number | undefined; innodbPurgeThreads?: number | undefined; innodbThreadConcurrency?: number | undefined; innodbTempDataFileMaxSize?: number | undefined; threadCacheSize?: number | undefined; threadStack?: number | undefined; joinBufferSize?: number | undefined; sortBufferSize?: number | undefined; tableDefinitionCache?: number | undefined; tableOpenCache?: number | undefined; tableOpenCacheInstances?: number | undefined; explicitDefaultsForTimestamp?: boolean | undefined; autoIncrementIncrement?: number | undefined; autoIncrementOffset?: number | undefined; syncBinlog?: number | undefined; binlogCacheSize?: number | undefined; binlogGroupCommitSyncDelay?: number | undefined; binlogRowsQueryLogEvents?: boolean | undefined; rplSemiSyncMasterWaitForSlaveCount?: number | undefined; slaveParallelWorkers?: number | undefined; mdbPreserveBinlogBytes?: number | undefined; interactiveTimeout?: number | undefined; waitTimeout?: number | undefined; mdbOfflineModeEnableLag?: number | undefined; mdbOfflineModeDisableLag?: number | undefined; rangeOptimizerMaxMemSize?: number | undefined; slowQueryLog?: boolean | undefined; slowQueryLogAlwaysWriteTime?: number | undefined; logSlowRateLimit?: number | undefined; logSlowSpStatements?: boolean | undefined; mdbPriorityChoiceMaxLag?: number | undefined; innodbPageSize?: number | undefined; innodbOnlineAlterLogMaxSize?: number | undefined; innodbFtMinTokenSize?: number | undefined; innodbFtMaxTokenSize?: number | undefined; lowerCaseTableNames?: number | undefined; showCompatibility56?: boolean | undefined; maxSpRecursionDepth?: number | undefined; innodbCompressionLevel?: number | undefined; autocommit?: boolean | undefined; innodbStatusOutput?: boolean | undefined; innodbStrictMode?: boolean | undefined; innodbPrintLockWaitTimeoutInfo?: boolean | undefined; logErrorVerbosity?: number | undefined; maxDigestLength?: number | undefined; queryCacheLimit?: number | undefined; queryCacheSize?: number | undefined; queryCacheType?: number | undefined; lockWaitTimeout?: number | undefined; maxPreparedStmtCount?: number | undefined; optimizerSearchDepth?: number | undefined; queryResponseTimeStats?: boolean | undefined; } | undefined; userConfig?: { sqlMode?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_SQLMode[] | undefined; maxConnections?: number | undefined; auditLog?: boolean | undefined; defaultAuthenticationPlugin?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_AuthPlugin | undefined; transactionIsolation?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_TransactionIsolation | undefined; defaultTimeZone?: string | undefined; characterSetServer?: string | undefined; collationServer?: string | undefined; binlogRowImage?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_BinlogRowImage | undefined; slaveParallelType?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_SlaveParallelType | undefined; logSlowRateType?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_LogSlowRateType | undefined; logSlowFilter?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_LogSlowFilterType[] | undefined; binlogTransactionDependencyTracking?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_BinlogTransactionDependencyTracking | undefined; optimizerSwitch?: string | undefined; innodbBufferPoolSize?: number | undefined; longQueryTime?: number | undefined; generalLog?: boolean | undefined; maxAllowedPacket?: number | undefined; innodbFlushLogAtTrxCommit?: number | undefined; innodbLockWaitTimeout?: number | undefined; innodbPrintAllDeadlocks?: boolean | undefined; netReadTimeout?: number | undefined; netWriteTimeout?: number | undefined; groupConcatMaxLen?: number | undefined; tmpTableSize?: number | undefined; maxHeapTableSize?: number | undefined; innodbAdaptiveHashIndex?: boolean | undefined; innodbNumaInterleave?: boolean | undefined; innodbLogBufferSize?: number | undefined; innodbLogFileSize?: number | undefined; innodbIoCapacity?: number | undefined; innodbIoCapacityMax?: number | undefined; innodbReadIoThreads?: number | undefined; innodbWriteIoThreads?: number | undefined; innodbPurgeThreads?: number | undefined; innodbThreadConcurrency?: number | undefined; innodbTempDataFileMaxSize?: number | undefined; threadCacheSize?: number | undefined; threadStack?: number | undefined; joinBufferSize?: number | undefined; sortBufferSize?: number | undefined; tableDefinitionCache?: number | undefined; tableOpenCache?: number | undefined; tableOpenCacheInstances?: number | undefined; explicitDefaultsForTimestamp?: boolean | undefined; autoIncrementIncrement?: number | undefined; autoIncrementOffset?: number | undefined; syncBinlog?: number | undefined; binlogCacheSize?: number | undefined; binlogGroupCommitSyncDelay?: number | undefined; binlogRowsQueryLogEvents?: boolean | undefined; rplSemiSyncMasterWaitForSlaveCount?: number | undefined; slaveParallelWorkers?: number | undefined; mdbPreserveBinlogBytes?: number | undefined; interactiveTimeout?: number | undefined; waitTimeout?: number | undefined; mdbOfflineModeEnableLag?: number | undefined; mdbOfflineModeDisableLag?: number | undefined; rangeOptimizerMaxMemSize?: number | undefined; slowQueryLog?: boolean | undefined; slowQueryLogAlwaysWriteTime?: number | undefined; logSlowRateLimit?: number | undefined; logSlowSpStatements?: boolean | undefined; mdbPriorityChoiceMaxLag?: number | undefined; innodbPageSize?: number | undefined; innodbOnlineAlterLogMaxSize?: number | undefined; innodbFtMinTokenSize?: number | undefined; innodbFtMaxTokenSize?: number | undefined; lowerCaseTableNames?: number | undefined; showCompatibility56?: boolean | undefined; maxSpRecursionDepth?: number | undefined; innodbCompressionLevel?: number | undefined; autocommit?: boolean | undefined; innodbStatusOutput?: boolean | undefined; innodbStrictMode?: boolean | undefined; innodbPrintLockWaitTimeoutInfo?: boolean | undefined; logErrorVerbosity?: number | undefined; maxDigestLength?: number | undefined; queryCacheLimit?: number | undefined; queryCacheSize?: number | undefined; queryCacheType?: number | undefined; lockWaitTimeout?: number | undefined; maxPreparedStmtCount?: number | undefined; optimizerSearchDepth?: number | undefined; queryResponseTimeStats?: boolean | undefined; } | undefined; defaultConfig?: { sqlMode?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_SQLMode[] | undefined; maxConnections?: number | undefined; auditLog?: boolean | undefined; defaultAuthenticationPlugin?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_AuthPlugin | undefined; transactionIsolation?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_TransactionIsolation | undefined; defaultTimeZone?: string | undefined; characterSetServer?: string | undefined; collationServer?: string | undefined; binlogRowImage?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_BinlogRowImage | undefined; slaveParallelType?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_SlaveParallelType | undefined; logSlowRateType?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_LogSlowRateType | undefined; logSlowFilter?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_LogSlowFilterType[] | undefined; binlogTransactionDependencyTracking?: import("../../../../../yandex/cloud/mdb/mysql/v1/config/mysql5_7").Mysqlconfig57_BinlogTransactionDependencyTracking | undefined; optimizerSwitch?: string | undefined; innodbBufferPoolSize?: number | undefined; longQueryTime?: number | undefined; generalLog?: boolean | undefined; maxAllowedPacket?: number | undefined; innodbFlushLogAtTrxCommit?: number | undefined; innodbLockWaitTimeout?: number | undefined; innodbPrintAllDeadlocks?: boolean | undefined; netReadTimeout?: number | undefined; netWriteTimeout?: number | undefined; groupConcatMaxLen?: number | undefined; tmpTableSize?: number | undefined; maxHeapTableSize?: number | undefined; innodbAdaptiveHashIndex?: boolean | undefined; innodbNumaInterleave?: boolean | undefined; innodbLogBufferSize?: number | undefined; innodbLogFileSize?: number | undefined; innodbIoCapacity?: number | undefined; innodbIoCapacityMax?: number | undefined; innodbReadIoThreads?: number | undefined; innodbWriteIoThreads?: number | undefined; innodbPurgeThreads?: number | undefined; innodbThreadConcurrency?: number | undefined; innodbTempDataFileMaxSize?: number | undefined; threadCacheSize?: number | undefined; threadStack?: number | undefined; joinBufferSize?: number | undefined; sortBufferSize?: number | undefined; tableDefinitionCache?: number | undefined; tableOpenCache?: number | undefined; tableOpenCacheInstan