@yandex-cloud/nodejs-sdk
Version:
Yandex.Cloud NodeJS SDK
1,035 lines • 270 kB
TypeScript
/// <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