UNPKG

@yandex-cloud/nodejs-sdk

Version:
1,035 lines 270 kB
/// <reference types="node" /> import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, Client, ClientUnaryCall, Metadata, CallOptions, ServiceError } from "@grpc/grpc-js"; import _m0 from "protobufjs/minimal"; import { FieldMask } from "../../../../google/protobuf/field_mask"; import { NetworkPolicy, IPAllocationPolicy, MasterMaintenancePolicy, MasterLogging, ReleaseChannel, KMSProvider, Cluster, Cilium } from "../../../../yandex/cloud/k8s/v1/cluster"; import { UpdateVersionSpec } from "../../../../yandex/cloud/k8s/v1/version"; import { Operation } from "../../../../yandex/cloud/operation/operation"; import { NodeGroup } from "../../../../yandex/cloud/k8s/v1/node_group"; import { Node } from "../../../../yandex/cloud/k8s/v1/node"; export declare const protobufPackage = "yandex.cloud.k8s.v1"; export interface GetClusterRequest { $type: "yandex.cloud.k8s.v1.GetClusterRequest"; /** ID of the Kubernetes cluster to return. */ clusterId: string; } export interface ListClustersRequest { $type: "yandex.cloud.k8s.v1.ListClustersRequest"; /** * ID of the folder to list Kubernetes cluster in. * To get the folder ID use 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 service returns a [ListClustersResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. * Default value: 100. */ pageSize: number; /** * Page token. To get the next page of results, set `page_token` to the * [ListClustersResponse.next_page_token] returned by a previous list request. */ pageToken: string; /** * A filter expression that filters resources listed in the response. * The expression must specify: * 1. The field name. Currently you can use filtering only on [Cluster.name] 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]`. */ filter: string; } export interface ListClustersResponse { $type: "yandex.cloud.k8s.v1.ListClustersResponse"; /** List of Kubernetes cluster. */ clusters: Cluster[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListClustersRequest.page_size], use * the `next_page_token` as the value * for the [ListClustersRequest.page_token] query parameter * in the next list request. Each subsequent list request will have its own * `next_page_token` to continue paging through the results. */ nextPageToken: string; } export interface DeleteClusterRequest { $type: "yandex.cloud.k8s.v1.DeleteClusterRequest"; /** * ID of the Kubernetes cluster to delete. * To get Kubernetes cluster ID use a [ClusterService.List] request. */ clusterId: string; } export interface DeleteClusterMetadata { $type: "yandex.cloud.k8s.v1.DeleteClusterMetadata"; /** ID of the Kubernetes cluster that is being deleted. */ clusterId: string; } export interface StopClusterRequest { $type: "yandex.cloud.k8s.v1.StopClusterRequest"; /** * ID of the Kubernetes cluster to stop. * To get Kubernetes cluster ID use a [ClusterService.List] request. */ clusterId: string; } export interface StopClusterMetadata { $type: "yandex.cloud.k8s.v1.StopClusterMetadata"; /** ID of the Kubernetes cluster that is being stopped. */ clusterId: string; } export interface StartClusterRequest { $type: "yandex.cloud.k8s.v1.StartClusterRequest"; /** * ID of the Kubernetes cluster to start. * To get Kubernetes cluster ID use a [ClusterService.List] request. */ clusterId: string; } export interface StartClusterMetadata { $type: "yandex.cloud.k8s.v1.StartClusterMetadata"; /** ID of the Kubernetes cluster that is being started. */ clusterId: string; } export interface UpdateClusterRequest { $type: "yandex.cloud.k8s.v1.UpdateClusterRequest"; /** * ID of the Kubernetes cluster to update. * To get the Kubernetes cluster ID use a [ClusterService.List] request. */ clusterId: string; updateMask?: FieldMask; /** * Name of the Kubernetes cluster. * The name must be unique within the folder. */ name: string; /** Description of the Kubernetes cluster. */ description: string; /** * Resource labels as `key:value` pairs. * * Existing set of `labels` is completely replaced by the provided set. */ labels: { [key: string]: string; }; /** Gateway IPv4 address. */ gatewayIpv4Address: string | undefined; /** Specification of the master update. */ masterSpec?: MasterUpdateSpec; /** * Service account to be used for provisioning Compute Cloud and VPC resources for Kubernetes cluster. * Selected service account should have `edit` role on the folder where the Kubernetes cluster will be * located and on the folder where selected network resides. */ serviceAccountId: string; /** * Service account to be used by the worker nodes of the Kubernetes cluster to access Container Registry * or to push node logs and metrics. */ nodeServiceAccountId: string; networkPolicy?: NetworkPolicy; ipAllocationPolicy?: IPAllocationPolicy; } export interface UpdateClusterRequest_LabelsEntry { $type: "yandex.cloud.k8s.v1.UpdateClusterRequest.LabelsEntry"; key: string; value: string; } export interface MasterUpdateSpec { $type: "yandex.cloud.k8s.v1.MasterUpdateSpec"; /** Specification of the master update. */ version?: UpdateVersionSpec; /** Maintenance policy of the master. */ maintenancePolicy?: MasterMaintenancePolicy; /** Master security groups. */ securityGroupIds: string[]; /** Cloud Logging for master components. */ masterLogging?: MasterLogging; /** Update master instance locations. */ locations: LocationSpec[]; } export interface UpdateClusterMetadata { $type: "yandex.cloud.k8s.v1.UpdateClusterMetadata"; /** ID of the Kubernetes cluster that is being updated. */ clusterId: string; } export interface CreateClusterRequest { $type: "yandex.cloud.k8s.v1.CreateClusterRequest"; /** * ID of the folder to create a Kubernetes cluster in. * To get the folder ID use a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** * Name of the Kubernetes cluster. * The name must be unique within the folder. */ name: string; /** Description of the Kubernetes cluster. */ description: string; /** Resource labels as `key:value` pairs. */ labels: { [key: string]: string; }; /** ID of the network. */ networkId: string; /** Master specification of the Kubernetes cluster. */ masterSpec?: MasterSpec; /** IP allocation policy of the Kubernetes cluster. */ ipAllocationPolicy?: IPAllocationPolicy; /** Gateway IPv4 address. */ gatewayIpv4Address: string | undefined; /** * Service account to be used for provisioning Compute Cloud and VPC resources for Kubernetes cluster. * Selected service account should have `edit` role on the folder where the Kubernetes cluster will be * located and on the folder where selected network resides. */ serviceAccountId: string; /** Service account to be used by the worker nodes of the Kubernetes cluster to access Container Registry or to push node logs and metrics. */ nodeServiceAccountId: string; /** Release channel for the master. */ releaseChannel: ReleaseChannel; networkPolicy?: NetworkPolicy; /** KMS provider configuration. */ kmsProvider?: KMSProvider; cilium?: Cilium | undefined; } export interface CreateClusterRequest_LabelsEntry { $type: "yandex.cloud.k8s.v1.CreateClusterRequest.LabelsEntry"; key: string; value: string; } export interface CreateClusterMetadata { $type: "yandex.cloud.k8s.v1.CreateClusterMetadata"; /** ID of the Kubernetes cluster that is being created. */ clusterId: string; } export interface AutoUpgradeMasterMetadata { $type: "yandex.cloud.k8s.v1.AutoUpgradeMasterMetadata"; /** ID of the Kubernetes cluster that is being auto upgraded. */ clusterId: string; } export interface ListClusterOperationsRequest { $type: "yandex.cloud.k8s.v1.ListClusterOperationsRequest"; /** ID of the Kubernetes cluster to list operations for. */ clusterId: string; /** * The maximum number of results per page that should be returned. If the number of available * results is larger than [page_size], the service returns a [ListClusterOperationsResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. * Default value: 100. */ pageSize: number; /** * Page token. To get the next page of results, set `page_token` to the * [ListClusterOperationsResponse.next_page_token] returned by a previous list request. */ pageToken: string; /** * A filter expression that filters resources listed in the response. * Currently you can use filtering only on [Cluster.name] field. */ filter: string; } export interface ListClusterOperationsResponse { $type: "yandex.cloud.k8s.v1.ListClusterOperationsResponse"; /** List of operations for the specified Kubernetes cluster. */ operations: Operation[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListClusterOperationsRequest.page_size], use the `next_page_token` as the value * for the [ListClusterOperationsRequest.page_token] query parameter in the next list request. * Each subsequent list request will have its own `next_page_token` to continue paging through the results. */ nextPageToken: string; } export interface ListClusterNodeGroupsRequest { $type: "yandex.cloud.k8s.v1.ListClusterNodeGroupsRequest"; /** * ID of the Kubernetes cluster to list node groups in. * To get the Kubernetes cluster ID use 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 service returns a [ListClusterNodeGroupsResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. * Default value: 100. */ pageSize: number; /** * Page token. To get the next page of results, set `page_token` to the * [ListClusterNodeGroupsResponse.next_page_token] returned by a previous list request. */ pageToken: string; /** * A filter expression that filters resources listed in the response. * Currently you can use filtering only on [Cluster.name] field. */ filter: string; } export interface ListClusterNodeGroupsResponse { $type: "yandex.cloud.k8s.v1.ListClusterNodeGroupsResponse"; /** List of node groups for the specified Kubernetes cluster. */ nodeGroups: NodeGroup[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListClusterNodeGroupsRequest.page_size], use * the `next_page_token` as the value * for the [ListClusterNodeGroupsRequest.page_token] query parameter * in the next list request. Each subsequent list request will have its own * `next_page_token` to continue paging through the results. */ nextPageToken: string; } export interface ListClusterNodesRequest { $type: "yandex.cloud.k8s.v1.ListClusterNodesRequest"; /** * ID of the Kubernetes cluster to list nodes in. * To get the Kubernetes cluster ID use 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 service returns a [ListClusterNodesResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. * Default value: 100. */ pageSize: number; /** * Page token. To get the next page of results, set `page_token` to the * [ListClusterNodeGroupsResponse.next_page_token] returned by a previous list request. */ pageToken: string; } export interface ListClusterNodesResponse { $type: "yandex.cloud.k8s.v1.ListClusterNodesResponse"; /** List of nodes for the specified Kubernetes cluster. */ nodes: Node[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListClusterNodesRequest.page_size], use * the `next_page_token` as the value * for the [ListClusterNodesRequest.page_token] query parameter * in the next list request. Each subsequent list request will have its own * `next_page_token` to continue paging through the results. */ nextPageToken: string; } export interface MasterSpec { $type: "yandex.cloud.k8s.v1.MasterSpec"; /** Specification of the zonal master. */ zonalMasterSpec?: ZonalMasterSpec | undefined; /** Specification of the regional master. */ regionalMasterSpec?: RegionalMasterSpec | undefined; /** * Locations specification for Kubernetes control-plane (master) instances. * Works in conjunction with [etcd_cluster_size]. See it's documentation for details. * Possible combinations: * - 1 location and etcd_cluster_size = 1 - a single node cluster whose availability is limited by the availability of a single Compute Instance; downtime is expected during cluster updates. * - 1 location and etcd_cluster_size = 3 - a highly available cluster within a single availability zone; can survive the failure of a Compute Instance, a server, or an individual server rack. * - 3 location and etcd_cluster_size = 3 - a highly available cluster with each etcd instance located within separate availability zone; can survive the failure of a single availability zone. */ locations: LocationSpec[]; /** * Number of etcd nodes in cluster. * Works in conjunction with [locations]. See it's documentation for details. * Optional. If not set, will be assumed equal to the number of locations. */ etcdClusterSize: number; /** Specification of parameters for external IPv4 networking. */ externalV4AddressSpec?: ExternalAddressSpec; /** Specification of parameters for external IPv6 networking. */ externalV6AddressSpec?: ExternalAddressSpec; /** Version of Kubernetes components that runs on the master. */ version: string; /** Maintenance policy of the master. */ maintenancePolicy?: MasterMaintenancePolicy; /** Master security groups. */ securityGroupIds: string[]; /** Cloud Logging for master components. */ masterLogging?: MasterLogging; } export interface ZonalMasterSpec { $type: "yandex.cloud.k8s.v1.ZonalMasterSpec"; /** ID of the availability zone. */ zoneId: string; /** Specification of parameters for internal IPv4 networking. */ internalV4AddressSpec?: InternalAddressSpec; /** Specification of parameters for external IPv4 networking. */ externalV4AddressSpec?: ExternalAddressSpec; } export interface RegionalMasterSpec { $type: "yandex.cloud.k8s.v1.RegionalMasterSpec"; /** ID of the availability zone where the master resides. */ regionId: string; /** List of locations where the master will be allocated. */ locations: MasterLocation[]; /** Specify to allocate a static public IP for the master. */ externalV4AddressSpec?: ExternalAddressSpec; /** Specification of parameters for external IPv6 networking. */ externalV6AddressSpec?: ExternalAddressSpec; } export interface InternalAddressSpec { $type: "yandex.cloud.k8s.v1.InternalAddressSpec"; /** ID of the subnet. If no ID is specified, and there only one subnet in specified zone, an address in this subnet will be allocated. */ subnetId: string; } export interface ExternalAddressSpec { $type: "yandex.cloud.k8s.v1.ExternalAddressSpec"; /** IP address. */ address: string; } export interface MasterLocation { $type: "yandex.cloud.k8s.v1.MasterLocation"; /** ID of the availability zone. */ zoneId: string; /** * If not specified and there is a single subnet in specified zone, address * in this subnet will be allocated. */ internalV4AddressSpec?: InternalAddressSpec; } export interface LocationSpec { $type: "yandex.cloud.k8s.v1.LocationSpec"; /** ID of the availability zone where the master resides. */ zoneId: string; /** * ID of the VPC network's subnet where the master resides. * If not specified and there is a single subnet in specified zone, address in this subnet will be allocated. */ subnetId: string; } export declare const GetClusterRequest: { $type: "yandex.cloud.k8s.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.k8s.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.k8s.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/k8s/v1/cluster").Cluster_Status | undefined; folderId?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; logGroupId?: string | undefined; networkId?: string | undefined; serviceAccountId?: string | undefined; health?: import("../../../../yandex/cloud/k8s/v1/cluster").Cluster_Health | undefined; nodeServiceAccountId?: string | undefined; releaseChannel?: ReleaseChannel | undefined; master?: { securityGroupIds?: string[] | undefined; endpoints?: { internalV4Endpoint?: string | undefined; externalV4Endpoint?: string | undefined; externalV6Endpoint?: string | undefined; } | undefined; locations?: { subnetId?: string | undefined; zoneId?: string | undefined; }[] | undefined; maintenancePolicy?: { autoUpgrade?: boolean | undefined; maintenanceWindow?: { anytime?: {} | undefined; dailyMaintenanceWindow?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } | undefined; weeklyMaintenanceWindow?: { daysOfWeek?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; }[] | undefined; } | undefined; } | undefined; } | undefined; version?: string | undefined; zonalMaster?: { zoneId?: string | undefined; internalV4Address?: string | undefined; externalV4Address?: string | undefined; } | undefined; regionalMaster?: { regionId?: string | undefined; internalV4Address?: string | undefined; externalV4Address?: string | undefined; externalV6Address?: string | undefined; } | undefined; etcdClusterSize?: number | undefined; masterAuth?: { clusterCaCertificate?: string | undefined; } | undefined; versionInfo?: { currentVersion?: string | undefined; newRevisionAvailable?: boolean | undefined; newRevisionSummary?: string | undefined; versionDeprecated?: boolean | undefined; } | undefined; masterLogging?: { folderId?: string | undefined; logGroupId?: string | undefined; enabled?: boolean | undefined; auditEnabled?: boolean | undefined; clusterAutoscalerEnabled?: boolean | undefined; kubeApiserverEnabled?: boolean | undefined; eventsEnabled?: boolean | undefined; } | undefined; } | undefined; ipAllocationPolicy?: { clusterIpv4CidrBlock?: string | undefined; nodeIpv4CidrMaskSize?: number | undefined; serviceIpv4CidrBlock?: string | undefined; clusterIpv6CidrBlock?: string | undefined; serviceIpv6CidrBlock?: string | undefined; } | undefined; gatewayIpv4Address?: string | undefined; networkPolicy?: { provider?: import("../../../../yandex/cloud/k8s/v1/cluster").NetworkPolicy_Provider | undefined; } | undefined; kmsProvider?: { keyId?: string | undefined; } | undefined; cilium?: { routingMode?: import("../../../../yandex/cloud/k8s/v1/cluster").Cilium_RoutingMode | undefined; } | undefined; }[] | undefined; } & { nextPageToken?: string | undefined; clusters?: ({ description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; status?: import("../../../../yandex/cloud/k8s/v1/cluster").Cluster_Status | undefined; folderId?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; logGroupId?: string | undefined; networkId?: string | undefined; serviceAccountId?: string | undefined; health?: import("../../../../yandex/cloud/k8s/v1/cluster").Cluster_Health | undefined; nodeServiceAccountId?: string | undefined; releaseChannel?: ReleaseChannel | undefined; master?: { securityGroupIds?: string[] | undefined; endpoints?: { internalV4Endpoint?: string | undefined; externalV4Endpoint?: string | undefined; externalV6Endpoint?: string | undefined; } | undefined; locations?: { subnetId?: string | undefined; zoneId?: string | undefined; }[] | undefined; maintenancePolicy?: { autoUpgrade?: boolean | undefined; maintenanceWindow?: { anytime?: {} | undefined; dailyMaintenanceWindow?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } | undefined; weeklyMaintenanceWindow?: { daysOfWeek?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; }[] | undefined; } | undefined; } | undefined; } | undefined; version?: string | undefined; zonalMaster?: { zoneId?: string | undefined; internalV4Address?: string | undefined; externalV4Address?: string | undefined; } | undefined; regionalMaster?: { regionId?: string | undefined; internalV4Address?: string | undefined; externalV4Address?: string | undefined; externalV6Address?: string | undefined; } | undefined; etcdClusterSize?: number | undefined; masterAuth?: { clusterCaCertificate?: string | undefined; } | undefined; versionInfo?: { currentVersion?: string | undefined; newRevisionAvailable?: boolean | undefined; newRevisionSummary?: string | undefined; versionDeprecated?: boolean | undefined; } | undefined; masterLogging?: { folderId?: string | undefined; logGroupId?: string | undefined; enabled?: boolean | undefined; auditEnabled?: boolean | undefined; clusterAutoscalerEnabled?: boolean | undefined; kubeApiserverEnabled?: boolean | undefined; eventsEnabled?: boolean | undefined; } | undefined; } | undefined; ipAllocationPolicy?: { clusterIpv4CidrBlock?: string | undefined; nodeIpv4CidrMaskSize?: number | undefined; serviceIpv4CidrBlock?: string | undefined; clusterIpv6CidrBlock?: string | undefined; serviceIpv6CidrBlock?: string | undefined; } | undefined; gatewayIpv4Address?: string | undefined; networkPolicy?: { provider?: import("../../../../yandex/cloud/k8s/v1/cluster").NetworkPolicy_Provider | undefined; } | undefined; kmsProvider?: { keyId?: string | undefined; } | undefined; cilium?: { routingMode?: import("../../../../yandex/cloud/k8s/v1/cluster").Cilium_RoutingMode | undefined; } | undefined; }[] & ({ description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; status?: import("../../../../yandex/cloud/k8s/v1/cluster").Cluster_Status | undefined; folderId?: string | undefined; labels?: { [x: string]: string | undefined; [x: number]: string | undefined; } | undefined; logGroupId?: string | undefined; networkId?: string | undefined; serviceAccountId?: string | undefined; health?: import("../../../../yandex/cloud/k8s/v1/cluster").Cluster_Health | undefined; nodeServiceAccountId?: string | undefined; releaseChannel?: ReleaseChannel | undefined; master?: { securityGroupIds?: string[] | undefined; endpoints?: { internalV4Endpoint?: string | undefined; externalV4Endpoint?: string | undefined; externalV6Endpoint?: string | undefined; } | undefined; locations?: { subnetId?: string | undefined; zoneId?: string | undefined; }[] | undefined; maintenancePolicy?: { autoUpgrade?: boolean | undefined; maintenanceWindow?: { anytime?: {} | undefined; dailyMaintenanceWindow?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } | undefined; weeklyMaintenanceWindow?: { daysOfWeek?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; }[] | undefined; } | undefined; } | undefined; } | undefined; version?: string | undefined; zonalMaster?: { zoneId?: string | undefined; internalV4Address?: string | undefined; externalV4Address?: string | undefined; } | undefined; regionalMaster?: { regionId?: string | undefined; internalV4Address?: string | undefined; externalV4Address?: string | undefined; externalV6Address?: string | undefined; } | undefined; etcdClusterSize?: number | undefined; masterAuth?: { clusterCaCertificate?: string | undefined; } | undefined; versionInfo?: { currentVersion?: string | undefined; newRevisionAvailable?: boolean | undefined; newRevisionSummary?: string | undefined; versionDeprecated?: boolean | undefined; } | undefined; masterLogging?: { folderId?: string | undefined; logGroupId?: string | undefined; enabled?: boolean | undefined; auditEnabled?: boolean | undefined; clusterAutoscalerEnabled?: boolean | undefined; kubeApiserverEnabled?: boolean | undefined; eventsEnabled?: boolean | undefined; } | undefined; } | undefined; ipAllocationPolicy?: { clusterIpv4CidrBlock?: string | undefined; nodeIpv4CidrMaskSize?: number | undefined; serviceIpv4CidrBlock?: string | undefined; clusterIpv6CidrBlock?: string | undefined; serviceIpv6CidrBlock?: string | undefined; } | undefined; gatewayIpv4Address?: string | undefined; networkPolicy?: { provider?: import("../../../../yandex/cloud/k8s/v1/cluster").NetworkPolicy_Provider | undefined; } | undefined; kmsProvider?: { keyId?: string | undefined; } | undefined; cilium?: { routingMode?: import("../../../../yandex/cloud/k8s/v1/cluster").Cilium_RoutingMode | undefined; } | undefined; } & { description?: string | undefined; id?: string | undefined; name?: string | undefined; createdAt?: Date | undefined; status?: import("../../../../yandex/cloud/k8s/v1/cluster").Cluster_Status | undefined; folderId?: string | undefined; labels?: ({ [x: string]: string | undefined; [x: number]: string | undefined; } & { [x: string]: string | undefined; [x: number]: string | undefined; } & Record<Exclude<keyof I["clusters"][number]["labels"], string | number>, never>) | undefined; logGroupId?: string | undefined; networkId?: string | undefined; serviceAccountId?: string | undefined; health?: import("../../../../yandex/cloud/k8s/v1/cluster").Cluster_Health | undefined; nodeServiceAccountId?: string | undefined; releaseChannel?: ReleaseChannel | undefined; master?: ({ securityGroupIds?: string[] | undefined; endpoints?: { internalV4Endpoint?: string | undefined; externalV4Endpoint?: string | undefined; externalV6Endpoint?: string | undefined; } | undefined; locations?: { subnetId?: string | undefined; zoneId?: string | undefined; }[] | undefined; maintenancePolicy?: { autoUpgrade?: boolean | undefined; maintenanceWindow?: { anytime?: {} | undefined; dailyMaintenanceWindow?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } | undefined; weeklyMaintenanceWindow?: { daysOfWeek?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; }[] | undefined; } | undefined; } | undefined; } | undefined; version?: string | undefined; zonalMaster?: { zoneId?: string | undefined; internalV4Address?: string | undefined; externalV4Address?: string | undefined; } | undefined; regionalMaster?: { regionId?: string | undefined; internalV4Address?: string | undefined; externalV4Address?: string | undefined; externalV6Address?: string | undefined; } | undefined; etcdClusterSize?: number | undefined; masterAuth?: { clusterCaCertificate?: string | undefined; } | undefined; versionInfo?: { currentVersion?: string | undefined; newRevisionAvailable?: boolean | undefined; newRevisionSummary?: string | undefined; versionDeprecated?: boolean | undefined; } | undefined; masterLogging?: { folderId?: string | undefined; logGroupId?: string | undefined; enabled?: boolean | undefined; auditEnabled?: boolean | undefined; clusterAutoscalerEnabled?: boolean | undefined; kubeApiserverEnabled?: boolean | undefined; eventsEnabled?: boolean | undefined; } | undefined; } & { securityGroupIds?: (string[] & string[] & Record<Exclude<keyof I["clusters"][number]["master"]["securityGroupIds"], "$type" | keyof string[]>, never>) | undefined; endpoints?: ({ internalV4Endpoint?: string | undefined; externalV4Endpoint?: string | undefined; externalV6Endpoint?: string | undefined; } & { internalV4Endpoint?: string | undefined; externalV4Endpoint?: string | undefined; externalV6Endpoint?: string | undefined; } & Record<Exclude<keyof I["clusters"][number]["master"]["endpoints"], "$type" | "internalV4Endpoint" | "externalV4Endpoint" | "externalV6Endpoint">, never>) | undefined; locations?: ({ subnetId?: string | undefined; zoneId?: string | undefined; }[] & ({ subnetId?: string | undefined; zoneId?: string | undefined; } & { subnetId?: string | undefined; zoneId?: string | undefined; } & Record<Exclude<keyof I["clusters"][number]["master"]["locations"][number], "$type" | "subnetId" | "zoneId">, never>)[] & Record<Exclude<keyof I["clusters"][number]["master"]["locations"], "$type" | keyof { subnetId?: string | undefined; zoneId?: string | undefined; }[]>, never>) | undefined; maintenancePolicy?: ({ autoUpgrade?: boolean | undefined; maintenanceWindow?: { anytime?: {} | undefined; dailyMaintenanceWindow?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } | undefined; weeklyMaintenanceWindow?: { daysOfWeek?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; }[] | undefined; } | undefined; } | undefined; } & { autoUpgrade?: boolean | undefined; maintenanceWindow?: ({ anytime?: {} | undefined; dailyMaintenanceWindow?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } | undefined; weeklyMaintenanceWindow?: { daysOfWeek?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; }[] | undefined; } | undefined; } & { anytime?: ({} & {} & Record<Exclude<keyof I["clusters"][number]["master"]["maintenancePolicy"]["maintenanceWindow"]["anytime"], "$type">, never>) | undefined; dailyMaintenanceWindow?: ({ startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; } & { startTime?: ({ seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } & Record<Exclude<keyof I["clusters"][number]["master"]["maintenancePolicy"]["maintenanceWindow"]["dailyMaintenanceWindow"]["startTime"], "$type" | "seconds" | "nanos" | "hours" | "minutes">, never>) | undefined; duration?: ({ seconds?: number | undefined; nanos?: number | undefined; } & { seconds?: number | undefined; nanos?: number | undefined; } & Record<Exclude<keyof I["clusters"][number]["master"]["maintenancePolicy"]["maintenanceWindow"]["dailyMaintenanceWindow"]["duration"], "$type" | "seconds" | "nanos">, never>) | undefined; } & Record<Exclude<keyof I["clusters"][number]["master"]["maintenancePolicy"]["maintenanceWindow"]["dailyMaintenanceWindow"], "$type" | "startTime" | "duration">, never>) | undefined; weeklyMaintenanceWindow?: ({ daysOfWeek?: { startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; }[] | undefined; } & { daysOfWeek?: ({ startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undefined; }[] & ({ startTime?: { seconds?: number | undefined; nanos?: number | undefined; hours?: number | undefined; minutes?: number | undefined; } | undefined; duration?: { seconds?: number | undefined; nanos?: number | undefined; } | undefined; days?: import("../../../../google/type/dayofweek").DayOfWeek[] | undef