import { Long, unknownFieldsSymbol } from "../../../../runtime/protos/index.js"; import type { Dayjs, Duration, MessageDescriptor, MessageFns, EnumInstance, EnumClass } from "../../../../runtime/protos/index.js"; import { customJson } from "../../../../runtime/util/logging.js"; import { ChannelCredentials, Client, ClientUnaryCall, ClientOptions, CallOptions, Metadata, ServiceError as GrpcServiceError, handleUnaryCall, UntypedServiceImplementation } from "@grpc/grpc-js"; import type { SDKInterface } from "../../../../sdk.js"; import { Request as SDKRequestClass, type RetryOptions } from "../../../../runtime/request.js"; import { Operation as OperationWrapper } from "../../../../runtime/operation.js"; import { GetByNameRequest, GetOperationRequest, Operation, OperationService, PreflightCheckContext, PreflightCheckDiagnostic, RecurrentResourceEvent, ResourceMetadata } from "../../common/v1/index.js"; /** Represents the `nebius.mk8s.v1.CreateClusterRequest` protobuf message. */ export interface CreateClusterRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.CreateClusterRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `metadata` protobuf field. */ metadata?: ResourceMetadata | undefined; /** Contains the `spec` protobuf field. */ spec?: ClusterSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateClusterRequest} messages. */ export declare const CreateClusterRequest: MessageFns; /** Represents the `nebius.mk8s.v1.GetClusterRequest` protobuf message. */ export interface GetClusterRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.GetClusterRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `id` protobuf field. */ id: string; /** Contains the `resource_version` protobuf field. */ resourceVersion: string; } /** Encodes, decodes, converts, and creates {@link GetClusterRequest} messages. */ export declare const GetClusterRequest: MessageFns; /** Represents the `nebius.mk8s.v1.ListClustersRequest` protobuf message. */ export interface ListClustersRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ListClustersRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the IAM container we are listing the resources in. * */ parentId: string; /** * Specifies the maximum number of items to return in the response. * */ pageSize: Long; /** * Token for pagination, allowing the retrieval of the next set of results. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListClustersRequest} messages. */ export declare const ListClustersRequest: MessageFns; /** Represents the `nebius.mk8s.v1.ListClustersResponse` protobuf message. */ export interface ListClustersResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ListClustersResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: Cluster[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListClustersResponse} messages. */ export declare const ListClustersResponse: MessageFns; /** Represents the `nebius.mk8s.v1.UpdateClusterRequest` protobuf message. */ export interface UpdateClusterRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.UpdateClusterRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Metadata associated with the instance. * Includes ID of the instance to update. * */ metadata?: ResourceMetadata | undefined; /** * Updated specifications for the instance. * */ spec?: ClusterSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateClusterRequest} messages. */ export declare const UpdateClusterRequest: MessageFns; /** Represents the `nebius.mk8s.v1.DeleteClusterRequest` protobuf message. */ export interface DeleteClusterRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.DeleteClusterRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `id` protobuf field. */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteClusterRequest} messages. */ export declare const DeleteClusterRequest: MessageFns; /** Represents the `nebius.mk8s.v1.ListClusterControlPlaneVersionsRequest` protobuf message. */ export interface ListClusterControlPlaneVersionsRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ListClusterControlPlaneVersionsRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; } /** Encodes, decodes, converts, and creates {@link ListClusterControlPlaneVersionsRequest} messages. */ export declare const ListClusterControlPlaneVersionsRequest: MessageFns; /** Represents the `nebius.mk8s.v1.ListClusterControlPlaneVersionsResponse` protobuf message. */ export interface ListClusterControlPlaneVersionsResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ListClusterControlPlaneVersionsResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: ClusterControlPlaneVersion[]; } /** Encodes, decodes, converts, and creates {@link ListClusterControlPlaneVersionsResponse} messages. */ export declare const ListClusterControlPlaneVersionsResponse: MessageFns; /** Represents the `nebius.mk8s.v1.ClusterControlPlaneVersion` protobuf message. */ export interface ClusterControlPlaneVersion { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ClusterControlPlaneVersion"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Format of the version includes only MAJOR.MINOR, the same as can be passed to cluster creation API. For example "1.31". * */ version: string; /** * Restricted shows versions available only for internal Nebius use, mostly those about to get released to public. * To use such versions - a feature restricted_k8s_versions should be enabled on a cluster. * */ restricted: boolean; /** * EndOfLife determines when the version will be forced out of use. * */ endOfLife?: Dayjs | undefined; /** * Deprecated marks version to be soon deleted from API. * Creation of clusters with this version is forbidden. * */ deprecated: boolean; } /** Encodes, decodes, converts, and creates {@link ClusterControlPlaneVersion} messages. */ export declare const ClusterControlPlaneVersion: MessageFns; /** * Defines the gRPC methods for the `nebius.mk8s.v1.ClusterService` service. */ export type ClusterServiceServiceDescription = typeof ClusterServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.mk8s.v1.ClusterService` service. */ export declare const ClusterServiceServiceDescription: { readonly get: { readonly path: "/nebius.mk8s.v1.ClusterService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetClusterRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetClusterRequest; readonly responseSerialize: (value: Cluster) => Buffer; readonly responseDeserialize: (value: Buffer) => Cluster; }; readonly getByName: { readonly path: "/nebius.mk8s.v1.ClusterService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetByNameRequest; readonly responseSerialize: (value: Cluster) => Buffer; readonly responseDeserialize: (value: Buffer) => Cluster; }; readonly list: { readonly path: "/nebius.mk8s.v1.ClusterService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListClustersRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListClustersRequest; readonly responseSerialize: (value: ListClustersResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListClustersResponse; }; readonly create: { readonly path: "/nebius.mk8s.v1.ClusterService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateClusterRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateClusterRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.mk8s.v1.ClusterService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateClusterRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateClusterRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.mk8s.v1.ClusterService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteClusterRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteClusterRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly listControlPlaneVersions: { readonly path: "/nebius.mk8s.v1.ClusterService/ListControlPlaneVersions"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListClusterControlPlaneVersionsRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListClusterControlPlaneVersionsRequest; readonly responseSerialize: (value: ListClusterControlPlaneVersionsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListClusterControlPlaneVersionsResponse; }; }; /** * Handles server calls for the `nebius.mk8s.v1.ClusterService` service. */ export interface ClusterServiceServer extends UntypedServiceImplementation { /** * Returns a specific mk8s cluster by its unique identifier. * */ get: handleUnaryCall; /** * Returns a specific mk8s cluster by its unique name. * */ getByName: handleUnaryCall; /** * Returns a list of all mk8s clusters in the specified project. * */ list: handleUnaryCall; /** * Creates a new mk8s cluster. * */ create: handleUnaryCall; /** * Modifies an existing mk8s cluster. * */ update: handleUnaryCall; /** * Deletes an mk8s cluster. * */ delete: handleUnaryCall; /** * ListControlPlaneVersions returns all k8s release versions available in Nebius API. * */ listControlPlaneVersions: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.mk8s.v1.ClusterService` service. */ export interface ClusterServiceBaseClient extends Client { /** * Returns a specific mk8s cluster by its unique identifier. * */ get(request: GetClusterRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Cluster) => void): ClientUnaryCall; /** * Returns a specific mk8s cluster by its unique name. * */ getByName(request: GetByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Cluster) => void): ClientUnaryCall; /** * Returns a list of all mk8s clusters in the specified project. * */ list(request: ListClustersRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListClustersResponse) => void): ClientUnaryCall; /** * Creates a new mk8s cluster. * */ create(request: CreateClusterRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Modifies an existing mk8s cluster. * */ update(request: UpdateClusterRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Deletes an mk8s cluster. * */ delete(request: DeleteClusterRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * ListControlPlaneVersions returns all k8s release versions available in Nebius API. * */ listControlPlaneVersions(request: ListClusterControlPlaneVersionsRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListClusterControlPlaneVersionsResponse) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.mk8s.v1.ClusterService` service. */ export declare const ClusterServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): ClusterServiceBaseClient; /** Contains the gRPC service description. */ service: typeof ClusterServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * Calls the `nebius.mk8s.v1.ClusterService` service. */ export interface ClusterService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.mk8s.v1.ClusterService"; /** * Returns a specific mk8s cluster by its unique identifier. * */ get(request: GetClusterRequest): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique identifier. * */ get(request: GetClusterRequest, metadata: Metadata): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique identifier. * */ get(request: GetClusterRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique name. * */ getByName(request: GetByNameRequest): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique name. * */ getByName(request: GetByNameRequest, metadata: Metadata): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique name. * */ getByName(request: GetByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Returns a list of all mk8s clusters in the specified project. * */ list(request: ListClustersRequest): SDKRequestClass; /** * Returns a list of all mk8s clusters in the specified project. * */ list(request: ListClustersRequest, metadata: Metadata): SDKRequestClass; /** * Returns a list of all mk8s clusters in the specified project. * */ list(request: ListClustersRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new mk8s cluster. * */ create(request: CreateClusterRequest): SDKRequestClass>; /** * Creates a new mk8s cluster. * */ create(request: CreateClusterRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new mk8s cluster. * */ create(request: CreateClusterRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Modifies an existing mk8s cluster. * */ update(request: UpdateClusterRequest): SDKRequestClass>; /** * Modifies an existing mk8s cluster. * */ update(request: UpdateClusterRequest, metadata: Metadata): SDKRequestClass>; /** * Modifies an existing mk8s cluster. * */ update(request: UpdateClusterRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes an mk8s cluster. * */ delete(request: DeleteClusterRequest): SDKRequestClass>; /** * Deletes an mk8s cluster. * */ delete(request: DeleteClusterRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes an mk8s cluster. * */ delete(request: DeleteClusterRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * ListControlPlaneVersions returns all k8s release versions available in Nebius API. * */ listControlPlaneVersions(request: ListClusterControlPlaneVersionsRequest): SDKRequestClass; /** * ListControlPlaneVersions returns all k8s release versions available in Nebius API. * */ listControlPlaneVersions(request: ListClusterControlPlaneVersionsRequest, metadata: Metadata): SDKRequestClass; /** * ListControlPlaneVersions returns all k8s release versions available in Nebius API. * */ listControlPlaneVersions(request: ListClusterControlPlaneVersionsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; } /** * Calls the `nebius.mk8s.v1.ClusterService` service through the Nebius SDK. */ export declare class ClusterService implements ClusterService { private sdk; $type: "nebius.mk8s.v1.ClusterService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Returns a specific mk8s cluster by its unique identifier. * */ get(request: GetClusterRequest): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique identifier. * */ get(request: GetClusterRequest, metadata: Metadata): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique identifier. * */ get(request: GetClusterRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique name. * */ getByName(request: GetByNameRequest): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique name. * */ getByName(request: GetByNameRequest, metadata: Metadata): SDKRequestClass; /** * Returns a specific mk8s cluster by its unique name. * */ getByName(request: GetByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Returns a list of all mk8s clusters in the specified project. * */ list(request: ListClustersRequest): SDKRequestClass; /** * Returns a list of all mk8s clusters in the specified project. * */ list(request: ListClustersRequest, metadata: Metadata): SDKRequestClass; /** * Returns a list of all mk8s clusters in the specified project. * */ list(request: ListClustersRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Creates a new mk8s cluster. * */ create(request: CreateClusterRequest): SDKRequestClass>; /** * Creates a new mk8s cluster. * */ create(request: CreateClusterRequest, metadata: Metadata): SDKRequestClass>; /** * Creates a new mk8s cluster. * */ create(request: CreateClusterRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Modifies an existing mk8s cluster. * */ update(request: UpdateClusterRequest): SDKRequestClass>; /** * Modifies an existing mk8s cluster. * */ update(request: UpdateClusterRequest, metadata: Metadata): SDKRequestClass>; /** * Modifies an existing mk8s cluster. * */ update(request: UpdateClusterRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Deletes an mk8s cluster. * */ delete(request: DeleteClusterRequest): SDKRequestClass>; /** * Deletes an mk8s cluster. * */ delete(request: DeleteClusterRequest, metadata: Metadata): SDKRequestClass>; /** * Deletes an mk8s cluster. * */ delete(request: DeleteClusterRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * ListControlPlaneVersions returns all k8s release versions available in Nebius API. * */ listControlPlaneVersions(request: ListClusterControlPlaneVersionsRequest): SDKRequestClass; /** * ListControlPlaneVersions returns all k8s release versions available in Nebius API. * */ listControlPlaneVersions(request: ListClusterControlPlaneVersionsRequest, metadata: Metadata): SDKRequestClass; /** * ListControlPlaneVersions returns all k8s release versions available in Nebius API. * */ listControlPlaneVersions(request: ListClusterControlPlaneVersionsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; } /** * Represents the `nebius.mk8s.v1.ClusterStatus.State` protobuf enum. */ export type ClusterStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; /** Defines the static values of {@link ClusterStatus_State}. */ export interface ClusterStatus_StateValueMembers { /** * Represents the `STATE_UNSPECIFIED` protobuf enum value. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; /** * Represents the `PROVISIONING` protobuf enum value. */ readonly PROVISIONING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; /** * Represents the `RUNNING` protobuf enum value. */ readonly RUNNING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; /** * Represents the `DELETING` protobuf enum value. */ readonly DELETING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; } /** Defines the runtime API for {@link ClusterStatus_State}. */ export type ClusterStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING"> & ClusterStatus_StateValueMembers; /** Converts and creates {@link ClusterStatus_State} values. */ export declare const ClusterStatus_State: ClusterStatus_StateClass; /** Represents the `nebius.mk8s.v1.Cluster` protobuf message. */ export interface Cluster { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.Cluster"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `metadata` protobuf field. */ metadata?: ResourceMetadata | undefined; /** Contains the `spec` protobuf field. */ spec?: ClusterSpec | undefined; /** Contains the `status` protobuf field. */ status?: ClusterStatus | undefined; } /** Encodes, decodes, converts, and creates {@link Cluster} messages. */ export declare const Cluster: MessageFns; /** Represents the `nebius.mk8s.v1.ClusterSpec` protobuf message. */ export interface ClusterSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ClusterSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `control_plane` protobuf field. */ controlPlane?: ControlPlaneSpec | undefined; /** * Defines kubernetes network configuration, like IP allocation. * */ kubeNetwork?: KubeNetworkSpec | undefined; } /** Encodes, decodes, converts, and creates {@link ClusterSpec} messages. */ export declare const ClusterSpec: MessageFns; /** Represents the `nebius.mk8s.v1.ControlPlaneSpec` protobuf message. */ export interface ControlPlaneSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ControlPlaneSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Desired Kubernetes version of the cluster. May be lower than the actual cluster version * if the desired version is no longer supported and the cluster has been automatically updated. * For now only acceptable format is `.` like "1.31". * Option for patch version update will be added later. * */ version: string; /** * Nebius VPC Subnet ID where control plane instances will be located. * Also will be default NodeGroup subnet. * */ subnetId: string; /** * Specification of endpoints of cluster control plane. * */ endpoints?: ControlPlaneEndpointsSpec | undefined; /** * Number of instances in etcd cluster. * 3 by default. * Control plane with `etcd_cluster_size: 3` called "Highly Available" ("HA"), because it's Kubernetes API * will be available despite a failure of one control plane instance. * */ etcdClusterSize: Long; /** * Specify configuration of the pushing k8s audit logs into service logs and show it in the UI. * By default cluster will be created without it. * */ auditLogs?: AuditLogsSpec | undefined; /** * Enables installation of the Karpenter inside a cluster. * Karpenter will be installed as a helm chart inside cluster * so it requires creation of at least one CPU public node group. * * Please note that there is no feature parity between Karpenter node pools and * public node groups. * By default cluster will be created without it. * */ karpenter?: Karpenter | undefined; } /** Encodes, decodes, converts, and creates {@link ControlPlaneSpec} messages. */ export declare const ControlPlaneSpec: MessageFns; /** Represents the `nebius.mk8s.v1.ControlPlaneEndpointsSpec` protobuf message. */ export interface ControlPlaneEndpointsSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ControlPlaneEndpointsSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Public endpoint specification. When set, a public endpoint is created. * */ publicEndpoint?: PublicEndpointSpec | undefined; } /** Encodes, decodes, converts, and creates {@link ControlPlaneEndpointsSpec} messages. */ export declare const ControlPlaneEndpointsSpec: MessageFns; /** Represents the `nebius.mk8s.v1.PublicEndpointSpec` protobuf message. */ export interface PublicEndpointSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.PublicEndpointSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * List of CIDR blocks from which access to public endpoint is allowed. * If field is not set, or list is empty, it means that access is not restricted at all. * */ allowedCidrs: string[]; } /** Encodes, decodes, converts, and creates {@link PublicEndpointSpec} messages. */ export declare const PublicEndpointSpec: MessageFns; /** Represents the `nebius.mk8s.v1.KubeNetworkSpec` protobuf message. */ export interface KubeNetworkSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.KubeNetworkSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * CIDR blocks for Service ClusterIP allocation. * For now, only one value is supported. * Must be a valid CIDR block or prefix length. * In case of prefix length, certain CIDR is auto allocated. * Specified CIDR blocks will be reserved in Cluster.spec.control_plane.subnet_id to prevent address duplication. * Allowed prefix length is from "/12" to "/28". * Empty value treated as ["/16"]. * */ serviceCidrs: string[]; } /** Encodes, decodes, converts, and creates {@link KubeNetworkSpec} messages. */ export declare const KubeNetworkSpec: MessageFns; /** Represents the `nebius.mk8s.v1.AuditLogsSpec` protobuf message. */ export interface AuditLogsSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.AuditLogsSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; } /** Encodes, decodes, converts, and creates {@link AuditLogsSpec} messages. */ export declare const AuditLogsSpec: MessageFns; /** Represents the `nebius.mk8s.v1.Karpenter` protobuf message. */ export interface Karpenter { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.Karpenter"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; } /** Encodes, decodes, converts, and creates {@link Karpenter} messages. */ export declare const Karpenter: MessageFns; /** Represents the `nebius.mk8s.v1.ClusterStatus` protobuf message. */ export interface ClusterStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ClusterStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `state` protobuf field. */ state: ClusterStatus_State; /** Contains the `control_plane` protobuf field. */ controlPlane?: ControlPlaneStatus | undefined; /** Contains the `events` protobuf field. */ events: RecurrentResourceEvent[]; /** * Show that changes are in flight * */ reconciling: boolean; } /** Encodes, decodes, converts, and creates {@link ClusterStatus} messages. */ export declare const ClusterStatus: MessageFns; /** Represents the `nebius.mk8s.v1.ControlPlaneStatus` protobuf message. */ export interface ControlPlaneStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ControlPlaneStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Actual Kubernetes and configuration version. * Version has format `..-nebius-cp.` like * "1.30.0-nebius-cp.3", where `..` is Kubernetes version and `` is version of control plane * infrastructure and configuration, updating of which may include bug fixes, security updates and new features of components running on * control plane, like CCM or Cluster Autoscaler. * */ version: string; /** Contains the `endpoints` protobuf field. */ endpoints?: ControlPlaneStatusEndpoints | undefined; /** * Number of instances in etcd cluster. * */ etcdClusterSize: Long; /** Contains the `auth` protobuf field. */ auth?: ControlPlaneStatusAuth | undefined; } /** Encodes, decodes, converts, and creates {@link ControlPlaneStatus} messages. */ export declare const ControlPlaneStatus: MessageFns; /** * Endpoints of Kubernetes control plane. Kubernetes API can be accessed at `https://endpoint/`. * */ export interface ControlPlaneStatusEndpoints { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ControlPlaneStatusEndpoints"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * DNS name or IP address accessible from the Internet. * */ publicEndpoint: string; /** * DNS name or IP address accessible from the user VPC. * */ privateEndpoint: string; } /** Encodes, decodes, converts, and creates {@link ControlPlaneStatusEndpoints} messages. */ export declare const ControlPlaneStatusEndpoints: MessageFns; /** Represents the `nebius.mk8s.v1.ControlPlaneStatusAuth` protobuf message. */ export interface ControlPlaneStatusAuth { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ControlPlaneStatusAuth"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * PEM with the Cluster Certificate Authority, that must be used for TLS connection to Kubernetes API. * */ clusterCaCertificate: string; } /** Encodes, decodes, converts, and creates {@link ControlPlaneStatusAuth} messages. */ export declare const ControlPlaneStatusAuth: MessageFns; /** * Represents the `nebius.mk8s.v1.DiskSpec.DiskType` protobuf enum. */ export type DiskSpec_DiskType = EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "NETWORK_SSD" | "NETWORK_HDD" | "NETWORK_SSD_IO_M3" | "NETWORK_SSD_NON_REPLICATED">; /** Defines the static values of {@link DiskSpec_DiskType}. */ export interface DiskSpec_DiskTypeValueMembers { /** * Represents the `UNSPECIFIED` protobuf enum value. */ readonly UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "NETWORK_SSD" | "NETWORK_HDD" | "NETWORK_SSD_IO_M3" | "NETWORK_SSD_NON_REPLICATED">; /** * Represents the `NETWORK_SSD` protobuf enum value. */ readonly NETWORK_SSD: EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "NETWORK_SSD" | "NETWORK_HDD" | "NETWORK_SSD_IO_M3" | "NETWORK_SSD_NON_REPLICATED">; /** * Represents the `NETWORK_HDD` protobuf enum value. */ readonly NETWORK_HDD: EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "NETWORK_SSD" | "NETWORK_HDD" | "NETWORK_SSD_IO_M3" | "NETWORK_SSD_NON_REPLICATED">; /** * Represents the `NETWORK_SSD_IO_M3` protobuf enum value. */ readonly NETWORK_SSD_IO_M3: EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "NETWORK_SSD" | "NETWORK_HDD" | "NETWORK_SSD_IO_M3" | "NETWORK_SSD_NON_REPLICATED">; /** * Represents the `NETWORK_SSD_NON_REPLICATED` protobuf enum value. */ readonly NETWORK_SSD_NON_REPLICATED: EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "NETWORK_SSD" | "NETWORK_HDD" | "NETWORK_SSD_IO_M3" | "NETWORK_SSD_NON_REPLICATED">; } /** Defines the runtime API for {@link DiskSpec_DiskType}. */ export type DiskSpec_DiskTypeClass = EnumClass<"UNRECOGNIZED" | "UNSPECIFIED" | "NETWORK_SSD" | "NETWORK_HDD" | "NETWORK_SSD_IO_M3" | "NETWORK_SSD_NON_REPLICATED"> & DiskSpec_DiskTypeValueMembers; /** Converts and creates {@link DiskSpec_DiskType} values. */ export declare const DiskSpec_DiskType: DiskSpec_DiskTypeClass; /** * Represents the `nebius.mk8s.v1.DiskEncryption.DiskEncryptionType` protobuf enum. */ export type DiskEncryption_DiskEncryptionType = EnumInstance<"UNRECOGNIZED" | "DISK_ENCRYPTION_UNSPECIFIED" | "DISK_ENCRYPTION_MANAGED">; /** Defines the static values of {@link DiskEncryption_DiskEncryptionType}. */ export interface DiskEncryption_DiskEncryptionTypeValueMembers { /** * Represents the `DISK_ENCRYPTION_UNSPECIFIED` protobuf enum value. */ readonly DISK_ENCRYPTION_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "DISK_ENCRYPTION_UNSPECIFIED" | "DISK_ENCRYPTION_MANAGED">; /** * Represents the `DISK_ENCRYPTION_MANAGED` protobuf enum value. */ readonly DISK_ENCRYPTION_MANAGED: EnumInstance<"UNRECOGNIZED" | "DISK_ENCRYPTION_UNSPECIFIED" | "DISK_ENCRYPTION_MANAGED">; } /** Defines the runtime API for {@link DiskEncryption_DiskEncryptionType}. */ export type DiskEncryption_DiskEncryptionTypeClass = EnumClass<"UNRECOGNIZED" | "DISK_ENCRYPTION_UNSPECIFIED" | "DISK_ENCRYPTION_MANAGED"> & DiskEncryption_DiskEncryptionTypeValueMembers; /** Converts and creates {@link DiskEncryption_DiskEncryptionType} values. */ export declare const DiskEncryption_DiskEncryptionType: DiskEncryption_DiskEncryptionTypeClass; /** Represents the `nebius.mk8s.v1.DiskSpec` protobuf message. */ export interface DiskSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.DiskSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `block_size_bytes` protobuf field. */ blockSizeBytes: Long; /** Contains the `type` protobuf field. */ type: DiskSpec_DiskType; /** Contains the `disk_encryption` protobuf field. */ diskEncryption?: DiskEncryption | undefined; /** Contains the selected value for the `size` protobuf oneof. */ size?: { $case: "sizeBytes"; sizeBytes: Long; } | { $case: "sizeKibibytes"; sizeKibibytes: Long; } | { $case: "sizeMebibytes"; sizeMebibytes: Long; } | { $case: "sizeGibibytes"; sizeGibibytes: Long; } | undefined; } /** Encodes, decodes, converts, and creates {@link DiskSpec} messages. */ export declare const DiskSpec: MessageFns; /** Represents the `nebius.mk8s.v1.DiskEncryption` protobuf message. */ export interface DiskEncryption { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.DiskEncryption"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `type` protobuf field. */ type: DiskEncryption_DiskEncryptionType; } /** Encodes, decodes, converts, and creates {@link DiskEncryption} messages. */ export declare const DiskEncryption: MessageFns; /** Represents the `nebius.mk8s.v1.ResourcesSpec` protobuf message. */ export interface ResourcesSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ResourcesSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `platform` protobuf field. */ platform: string; /** Contains the selected value for the `size` protobuf oneof. */ size?: { $case: "preset"; preset: string; } | undefined; } /** Encodes, decodes, converts, and creates {@link ResourcesSpec} messages. */ export declare const ResourcesSpec: MessageFns; /** Represents the `nebius.mk8s.v1.GetNodeGroupCompatibilityMatrixRequest` protobuf message. */ export interface GetNodeGroupCompatibilityMatrixRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.GetNodeGroupCompatibilityMatrixRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Cluster kubernetes version. * */ clusterKubernetesVersion: string; /** * Hardware platform for which the capabilities are requested. * */ platform: string; } /** Encodes, decodes, converts, and creates {@link GetNodeGroupCompatibilityMatrixRequest} messages. */ export declare const GetNodeGroupCompatibilityMatrixRequest: MessageFns; /** Represents the `nebius.mk8s.v1.NodeGroupCompatibilityMatrix` protobuf message. */ export interface NodeGroupCompatibilityMatrix { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroupCompatibilityMatrix"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * List of available versions. * */ versions: NodeGroupCompatibilityVersion[]; } /** Encodes, decodes, converts, and creates {@link NodeGroupCompatibilityMatrix} messages. */ export declare const NodeGroupCompatibilityMatrix: MessageFns; /** Represents the `nebius.mk8s.v1.NodeGroupCompatibilityVersion` protobuf message. */ export interface NodeGroupCompatibilityVersion { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroupCompatibilityVersion"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Kubernetes version. * */ kubernetesVersion: string; /** * List of available images. * */ items: NodeGroupCompatibilityVersionItem[]; } /** Encodes, decodes, converts, and creates {@link NodeGroupCompatibilityVersion} messages. */ export declare const NodeGroupCompatibilityVersion: MessageFns; /** Represents the `nebius.mk8s.v1.NodeGroupCompatibilityVersionItem` protobuf message. */ export interface NodeGroupCompatibilityVersionItem { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroupCompatibilityVersionItem"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Operating system. * */ os: string; /** * Drivers preset name. * */ driversPreset: string; /** * Hardware platforms. * */ compatiblePlatforms: string[]; } /** Encodes, decodes, converts, and creates {@link NodeGroupCompatibilityVersionItem} messages. */ export declare const NodeGroupCompatibilityVersionItem: MessageFns; /** Represents the `nebius.mk8s.v1.CreateNodeGroupRequest` protobuf message. */ export interface CreateNodeGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.CreateNodeGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `metadata` protobuf field. */ metadata?: ResourceMetadata | undefined; /** Contains the `spec` protobuf field. */ spec?: NodeGroupSpec | undefined; } /** Encodes, decodes, converts, and creates {@link CreateNodeGroupRequest} messages. */ export declare const CreateNodeGroupRequest: MessageFns; /** Represents the `nebius.mk8s.v1.GetNodeGroupRequest` protobuf message. */ export interface GetNodeGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.GetNodeGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `id` protobuf field. */ id: string; /** Contains the `resource_version` protobuf field. */ resourceVersion: string; } /** Encodes, decodes, converts, and creates {@link GetNodeGroupRequest} messages. */ export declare const GetNodeGroupRequest: MessageFns; /** Represents the `nebius.mk8s.v1.ListNodeGroupsRequest` protobuf message. */ export interface ListNodeGroupsRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ListNodeGroupsRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * ID of the parent Cluster. * */ parentId: string; /** * Specifies the maximum number of items to return in the response. * */ pageSize: Long; /** * Token for pagination, allowing the retrieval of the next set of results. * */ pageToken: string; } /** Encodes, decodes, converts, and creates {@link ListNodeGroupsRequest} messages. */ export declare const ListNodeGroupsRequest: MessageFns; /** Represents the `nebius.mk8s.v1.ListNodeGroupsResponse` protobuf message. */ export interface ListNodeGroupsResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ListNodeGroupsResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `items` protobuf field. */ items: NodeGroup[]; /** Contains the `next_page_token` protobuf field. */ nextPageToken: string; } /** Encodes, decodes, converts, and creates {@link ListNodeGroupsResponse} messages. */ export declare const ListNodeGroupsResponse: MessageFns; /** Represents the `nebius.mk8s.v1.UpdateNodeGroupRequest` protobuf message. */ export interface UpdateNodeGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.UpdateNodeGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `metadata` protobuf field. */ metadata?: ResourceMetadata | undefined; /** Contains the `spec` protobuf field. */ spec?: NodeGroupSpec | undefined; } /** Encodes, decodes, converts, and creates {@link UpdateNodeGroupRequest} messages. */ export declare const UpdateNodeGroupRequest: MessageFns; /** Represents the `nebius.mk8s.v1.PreflightCheckNodeGroupRequest` protobuf message. */ export interface PreflightCheckNodeGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.PreflightCheckNodeGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `context` protobuf field. */ context?: PreflightCheckContext | undefined; /** Contains the `metadata` protobuf field. */ metadata?: ResourceMetadata | undefined; /** Contains the `spec` protobuf field. */ spec?: NodeGroupSpec | undefined; } /** Encodes, decodes, converts, and creates {@link PreflightCheckNodeGroupRequest} messages. */ export declare const PreflightCheckNodeGroupRequest: MessageFns; /** Represents the `nebius.mk8s.v1.PreflightCheckNodeGroupResponse` protobuf message. */ export interface PreflightCheckNodeGroupResponse { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.PreflightCheckNodeGroupResponse"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `diagnostics` protobuf field. */ diagnostics: PreflightCheckDiagnostic[]; /** Contains the `paths_require_recreate` protobuf field. */ pathsRequireRecreate: string; /** Contains the `requires_user_approval` protobuf field. */ requiresUserApproval: boolean; } /** Encodes, decodes, converts, and creates {@link PreflightCheckNodeGroupResponse} messages. */ export declare const PreflightCheckNodeGroupResponse: MessageFns; /** Represents the `nebius.mk8s.v1.DeleteNodeGroupRequest` protobuf message. */ export interface DeleteNodeGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.DeleteNodeGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `id` protobuf field. */ id: string; } /** Encodes, decodes, converts, and creates {@link DeleteNodeGroupRequest} messages. */ export declare const DeleteNodeGroupRequest: MessageFns; /** Represents the `nebius.mk8s.v1.UpgradeNodeGroupRequest` protobuf message. */ export interface UpgradeNodeGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.UpgradeNodeGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `id` protobuf field. */ id: string; /** Contains the selected value for the `upgrade_type` protobuf oneof. */ upgradeType?: { $case: "latestInfraVersion"; latestInfraVersion: {}; } | undefined; } /** Encodes, decodes, converts, and creates {@link UpgradeNodeGroupRequest} messages. */ export declare const UpgradeNodeGroupRequest: MessageFns; /** * Defines the gRPC methods for the `nebius.mk8s.v1.NodeGroupService` service. */ export type NodeGroupServiceServiceDescription = typeof NodeGroupServiceServiceDescription; /** * Describes the gRPC methods for the `nebius.mk8s.v1.NodeGroupService` service. */ export declare const NodeGroupServiceServiceDescription: { readonly get: { readonly path: "/nebius.mk8s.v1.NodeGroupService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetNodeGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetNodeGroupRequest; readonly responseSerialize: (value: NodeGroup) => Buffer; readonly responseDeserialize: (value: Buffer) => NodeGroup; }; readonly getByName: { readonly path: "/nebius.mk8s.v1.NodeGroupService/GetByName"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetByNameRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetByNameRequest; readonly responseSerialize: (value: NodeGroup) => Buffer; readonly responseDeserialize: (value: Buffer) => NodeGroup; }; readonly list: { readonly path: "/nebius.mk8s.v1.NodeGroupService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListNodeGroupsRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => ListNodeGroupsRequest; readonly responseSerialize: (value: ListNodeGroupsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListNodeGroupsResponse; }; readonly create: { readonly path: "/nebius.mk8s.v1.NodeGroupService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateNodeGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => CreateNodeGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly update: { readonly path: "/nebius.mk8s.v1.NodeGroupService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateNodeGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: true; readonly requestDeserialize: (value: Buffer) => UpdateNodeGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly delete: { readonly path: "/nebius.mk8s.v1.NodeGroupService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteNodeGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => DeleteNodeGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly upgrade: { readonly path: "/nebius.mk8s.v1.NodeGroupService/Upgrade"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpgradeNodeGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => UpgradeNodeGroupRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; readonly preflightCheck: { readonly path: "/nebius.mk8s.v1.NodeGroupService/PreflightCheck"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: PreflightCheckNodeGroupRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => PreflightCheckNodeGroupRequest; readonly responseSerialize: (value: PreflightCheckNodeGroupResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => PreflightCheckNodeGroupResponse; }; readonly getCompatibilityMatrix: { readonly path: "/nebius.mk8s.v1.NodeGroupService/GetCompatibilityMatrix"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetNodeGroupCompatibilityMatrixRequest) => Buffer; readonly requestDescriptor: () => MessageDescriptor | undefined; readonly sendResetMask: false; readonly requestDeserialize: (value: Buffer) => GetNodeGroupCompatibilityMatrixRequest; readonly responseSerialize: (value: NodeGroupCompatibilityMatrix) => Buffer; readonly responseDeserialize: (value: Buffer) => NodeGroupCompatibilityMatrix; }; }; /** * Handles server calls for the `nebius.mk8s.v1.NodeGroupService` service. */ export interface NodeGroupServiceServer extends UntypedServiceImplementation { /** * Handles the `Get` RPC. */ get: handleUnaryCall; /** * Handles the `GetByName` RPC. */ getByName: handleUnaryCall; /** * Handles the `List` RPC. */ list: handleUnaryCall; /** * Handles the `Create` RPC. */ create: handleUnaryCall; /** * Handles the `Update` RPC. */ update: handleUnaryCall; /** * Handles the `Delete` RPC. */ delete: handleUnaryCall; /** * Handles the `Upgrade` RPC. */ upgrade: handleUnaryCall; /** * Handles the `PreflightCheck` RPC. */ preflightCheck: handleUnaryCall; /** * Handles the `GetCompatibilityMatrix` RPC. */ getCompatibilityMatrix: handleUnaryCall; } /** * Defines the low-level gRPC client for the `nebius.mk8s.v1.NodeGroupService` service. */ export interface NodeGroupServiceBaseClient extends Client { /** * Calls the `Get` RPC. */ get(request: GetNodeGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: NodeGroup) => void): ClientUnaryCall; /** * Calls the `GetByName` RPC. */ getByName(request: GetByNameRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: NodeGroup) => void): ClientUnaryCall; /** * Calls the `List` RPC. */ list(request: ListNodeGroupsRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: ListNodeGroupsResponse) => void): ClientUnaryCall; /** * Calls the `Create` RPC. */ create(request: CreateNodeGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Calls the `Update` RPC. */ update(request: UpdateNodeGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Calls the `Delete` RPC. */ delete(request: DeleteNodeGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Calls the `Upgrade` RPC. */ upgrade(request: UpgradeNodeGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: Operation) => void): ClientUnaryCall; /** * Calls the `PreflightCheck` RPC. */ preflightCheck(request: PreflightCheckNodeGroupRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: PreflightCheckNodeGroupResponse) => void): ClientUnaryCall; /** * Calls the `GetCompatibilityMatrix` RPC. */ getCompatibilityMatrix(request: GetNodeGroupCompatibilityMatrixRequest, metadata: Metadata, options: Partial, callback: (error: GrpcServiceError | null, response: NodeGroupCompatibilityMatrix) => void): ClientUnaryCall; } /** * Creates low-level gRPC clients for the `nebius.mk8s.v1.NodeGroupService` service. */ export declare const NodeGroupServiceBaseClient: { /** Creates a low-level client for the service address. */ new (address: string, credentials: ChannelCredentials, options?: Partial): NodeGroupServiceBaseClient; /** Contains the gRPC service description. */ service: typeof NodeGroupServiceServiceDescription; /** Contains the fully qualified protobuf service name. */ serviceName: string; }; /** * Calls the `nebius.mk8s.v1.NodeGroupService` service. */ export interface NodeGroupService { /** Contains the fully qualified protobuf service name. */ $type: "nebius.mk8s.v1.NodeGroupService"; /** * Calls the `Get` RPC. */ get(request: GetNodeGroupRequest): SDKRequestClass; /** * Calls the `Get` RPC. */ get(request: GetNodeGroupRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `Get` RPC. */ get(request: GetNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Calls the `GetByName` RPC. */ getByName(request: GetByNameRequest): SDKRequestClass; /** * Calls the `GetByName` RPC. */ getByName(request: GetByNameRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `GetByName` RPC. */ getByName(request: GetByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Calls the `List` RPC. */ list(request: ListNodeGroupsRequest): SDKRequestClass; /** * Calls the `List` RPC. */ list(request: ListNodeGroupsRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `List` RPC. */ list(request: ListNodeGroupsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Calls the `Create` RPC. */ create(request: CreateNodeGroupRequest): SDKRequestClass>; /** * Calls the `Create` RPC. */ create(request: CreateNodeGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Calls the `Create` RPC. */ create(request: CreateNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Calls the `Update` RPC. */ update(request: UpdateNodeGroupRequest): SDKRequestClass>; /** * Calls the `Update` RPC. */ update(request: UpdateNodeGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Calls the `Update` RPC. */ update(request: UpdateNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Calls the `Delete` RPC. */ delete(request: DeleteNodeGroupRequest): SDKRequestClass>; /** * Calls the `Delete` RPC. */ delete(request: DeleteNodeGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Calls the `Delete` RPC. */ delete(request: DeleteNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Calls the `Upgrade` RPC. */ upgrade(request: UpgradeNodeGroupRequest): SDKRequestClass>; /** * Calls the `Upgrade` RPC. */ upgrade(request: UpgradeNodeGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Calls the `Upgrade` RPC. */ upgrade(request: UpgradeNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Calls the `PreflightCheck` RPC. */ preflightCheck(request: PreflightCheckNodeGroupRequest): SDKRequestClass; /** * Calls the `PreflightCheck` RPC. */ preflightCheck(request: PreflightCheckNodeGroupRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `PreflightCheck` RPC. */ preflightCheck(request: PreflightCheckNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Calls the `GetCompatibilityMatrix` RPC. */ getCompatibilityMatrix(request: GetNodeGroupCompatibilityMatrixRequest): SDKRequestClass; /** * Calls the `GetCompatibilityMatrix` RPC. */ getCompatibilityMatrix(request: GetNodeGroupCompatibilityMatrixRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `GetCompatibilityMatrix` RPC. */ getCompatibilityMatrix(request: GetNodeGroupCompatibilityMatrixRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; } /** * Calls the `nebius.mk8s.v1.NodeGroupService` service through the Nebius SDK. */ export declare class NodeGroupService implements NodeGroupService { private sdk; $type: "nebius.mk8s.v1.NodeGroupService"; private addr; private spec; private apiServiceName; /** Creates a client that uses the SDK service address. */ constructor(sdk: SDKInterface); /** Returns the operation service for this service address. */ getOperationService(): OperationService; /** * Calls the `Get` RPC. */ get(request: GetNodeGroupRequest): SDKRequestClass; /** * Calls the `Get` RPC. */ get(request: GetNodeGroupRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `Get` RPC. */ get(request: GetNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Calls the `GetByName` RPC. */ getByName(request: GetByNameRequest): SDKRequestClass; /** * Calls the `GetByName` RPC. */ getByName(request: GetByNameRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `GetByName` RPC. */ getByName(request: GetByNameRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Calls the `List` RPC. */ list(request: ListNodeGroupsRequest): SDKRequestClass; /** * Calls the `List` RPC. */ list(request: ListNodeGroupsRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `List` RPC. */ list(request: ListNodeGroupsRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Calls the `Create` RPC. */ create(request: CreateNodeGroupRequest): SDKRequestClass>; /** * Calls the `Create` RPC. */ create(request: CreateNodeGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Calls the `Create` RPC. */ create(request: CreateNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Calls the `Update` RPC. */ update(request: UpdateNodeGroupRequest): SDKRequestClass>; /** * Calls the `Update` RPC. */ update(request: UpdateNodeGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Calls the `Update` RPC. */ update(request: UpdateNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Calls the `Delete` RPC. */ delete(request: DeleteNodeGroupRequest): SDKRequestClass>; /** * Calls the `Delete` RPC. */ delete(request: DeleteNodeGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Calls the `Delete` RPC. */ delete(request: DeleteNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Calls the `Upgrade` RPC. */ upgrade(request: UpgradeNodeGroupRequest): SDKRequestClass>; /** * Calls the `Upgrade` RPC. */ upgrade(request: UpgradeNodeGroupRequest, metadata: Metadata): SDKRequestClass>; /** * Calls the `Upgrade` RPC. */ upgrade(request: UpgradeNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass>; /** * Calls the `PreflightCheck` RPC. */ preflightCheck(request: PreflightCheckNodeGroupRequest): SDKRequestClass; /** * Calls the `PreflightCheck` RPC. */ preflightCheck(request: PreflightCheckNodeGroupRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `PreflightCheck` RPC. */ preflightCheck(request: PreflightCheckNodeGroupRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; /** * Calls the `GetCompatibilityMatrix` RPC. */ getCompatibilityMatrix(request: GetNodeGroupCompatibilityMatrixRequest): SDKRequestClass; /** * Calls the `GetCompatibilityMatrix` RPC. */ getCompatibilityMatrix(request: GetNodeGroupCompatibilityMatrixRequest, metadata: Metadata): SDKRequestClass; /** * Calls the `GetCompatibilityMatrix` RPC. */ getCompatibilityMatrix(request: GetNodeGroupCompatibilityMatrixRequest, metadata: Metadata, options: Partial & RetryOptions): SDKRequestClass; } /** * Represents the `nebius.mk8s.v1.ConditionStatus` protobuf enum. */ export type ConditionStatus = EnumInstance<"UNRECOGNIZED" | "CONDITION_STATUS_UNSPECIFIED" | "TRUE" | "FALSE" | "UNKNOWN">; /** Defines the static values of {@link ConditionStatus}. */ export interface ConditionStatusValueMembers { /** * Represents the `CONDITION_STATUS_UNSPECIFIED` protobuf enum value. */ readonly CONDITION_STATUS_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "CONDITION_STATUS_UNSPECIFIED" | "TRUE" | "FALSE" | "UNKNOWN">; /** * Represents the `TRUE` protobuf enum value. */ readonly TRUE: EnumInstance<"UNRECOGNIZED" | "CONDITION_STATUS_UNSPECIFIED" | "TRUE" | "FALSE" | "UNKNOWN">; /** * Represents the `FALSE` protobuf enum value. */ readonly FALSE: EnumInstance<"UNRECOGNIZED" | "CONDITION_STATUS_UNSPECIFIED" | "TRUE" | "FALSE" | "UNKNOWN">; /** * Represents the `UNKNOWN` protobuf enum value. */ readonly UNKNOWN: EnumInstance<"UNRECOGNIZED" | "CONDITION_STATUS_UNSPECIFIED" | "TRUE" | "FALSE" | "UNKNOWN">; } /** Defines the runtime API for {@link ConditionStatus}. */ export type ConditionStatusClass = EnumClass<"UNRECOGNIZED" | "CONDITION_STATUS_UNSPECIFIED" | "TRUE" | "FALSE" | "UNKNOWN"> & ConditionStatusValueMembers; /** Converts and creates {@link ConditionStatus} values. */ export declare const ConditionStatus: ConditionStatusClass; /** * Represents the `nebius.mk8s.v1.AttachedFilesystemSpec.AttachMode` protobuf enum. */ export type AttachedFilesystemSpec_AttachMode = EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "READ_ONLY" | "READ_WRITE">; /** Defines the static values of {@link AttachedFilesystemSpec_AttachMode}. */ export interface AttachedFilesystemSpec_AttachModeValueMembers { /** * Represents the `UNSPECIFIED` protobuf enum value. */ readonly UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "READ_ONLY" | "READ_WRITE">; /** * Represents the `READ_ONLY` protobuf enum value. */ readonly READ_ONLY: EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "READ_ONLY" | "READ_WRITE">; /** * Represents the `READ_WRITE` protobuf enum value. */ readonly READ_WRITE: EnumInstance<"UNRECOGNIZED" | "UNSPECIFIED" | "READ_ONLY" | "READ_WRITE">; } /** Defines the runtime API for {@link AttachedFilesystemSpec_AttachMode}. */ export type AttachedFilesystemSpec_AttachModeClass = EnumClass<"UNRECOGNIZED" | "UNSPECIFIED" | "READ_ONLY" | "READ_WRITE"> & AttachedFilesystemSpec_AttachModeValueMembers; /** Converts and creates {@link AttachedFilesystemSpec_AttachMode} values. */ export declare const AttachedFilesystemSpec_AttachMode: AttachedFilesystemSpec_AttachModeClass; /** * Represents the `nebius.mk8s.v1.NodeTaint.Effect` protobuf enum. */ export type NodeTaint_Effect = EnumInstance<"UNRECOGNIZED" | "EFFECT_UNSPECIFIED" | "NO_EXECUTE" | "NO_SCHEDULE" | "PREFER_NO_SCHEDULE">; /** Defines the static values of {@link NodeTaint_Effect}. */ export interface NodeTaint_EffectValueMembers { /** * Represents the `EFFECT_UNSPECIFIED` protobuf enum value. */ readonly EFFECT_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "EFFECT_UNSPECIFIED" | "NO_EXECUTE" | "NO_SCHEDULE" | "PREFER_NO_SCHEDULE">; /** * Represents the `NO_EXECUTE` protobuf enum value. */ readonly NO_EXECUTE: EnumInstance<"UNRECOGNIZED" | "EFFECT_UNSPECIFIED" | "NO_EXECUTE" | "NO_SCHEDULE" | "PREFER_NO_SCHEDULE">; /** * Represents the `NO_SCHEDULE` protobuf enum value. */ readonly NO_SCHEDULE: EnumInstance<"UNRECOGNIZED" | "EFFECT_UNSPECIFIED" | "NO_EXECUTE" | "NO_SCHEDULE" | "PREFER_NO_SCHEDULE">; /** * Represents the `PREFER_NO_SCHEDULE` protobuf enum value. */ readonly PREFER_NO_SCHEDULE: EnumInstance<"UNRECOGNIZED" | "EFFECT_UNSPECIFIED" | "NO_EXECUTE" | "NO_SCHEDULE" | "PREFER_NO_SCHEDULE">; } /** Defines the runtime API for {@link NodeTaint_Effect}. */ export type NodeTaint_EffectClass = EnumClass<"UNRECOGNIZED" | "EFFECT_UNSPECIFIED" | "NO_EXECUTE" | "NO_SCHEDULE" | "PREFER_NO_SCHEDULE"> & NodeTaint_EffectValueMembers; /** Converts and creates {@link NodeTaint_Effect} values. */ export declare const NodeTaint_Effect: NodeTaint_EffectClass; /** * Represents the `nebius.mk8s.v1.ReservationPolicy.Policy` protobuf enum. */ export type ReservationPolicy_Policy = EnumInstance<"UNRECOGNIZED" | "AUTO" | "FORBID" | "STRICT">; /** Defines the static values of {@link ReservationPolicy_Policy}. */ export interface ReservationPolicy_PolicyValueMembers { /** * 1) Will try to launch instance in any reservation_ids if provided. * 2) Will try to launch instance in any of the available capacity block. * 3) Will try to launch instance in PAYG if 1 & 2 are not satisfied. * */ readonly AUTO: EnumInstance<"UNRECOGNIZED" | "AUTO" | "FORBID" | "STRICT">; /** * The instance is launched only using on-demand (PAYG) capacity. * No attempt is made to find or use a Capacity Block. * It's an error to provide reservation_ids with policy = FORBID * */ readonly FORBID: EnumInstance<"UNRECOGNIZED" | "AUTO" | "FORBID" | "STRICT">; /** * 1) Will try to launch the instance in Capacity Blocks from reservation_ids if provided. * 2) If reservation_ids are not provided will try to launch instance in suitable & available Capacity Block. * 3) Fail otherwise. * */ readonly STRICT: EnumInstance<"UNRECOGNIZED" | "AUTO" | "FORBID" | "STRICT">; } /** Defines the runtime API for {@link ReservationPolicy_Policy}. */ export type ReservationPolicy_PolicyClass = EnumClass<"UNRECOGNIZED" | "AUTO" | "FORBID" | "STRICT"> & ReservationPolicy_PolicyValueMembers; /** Converts and creates {@link ReservationPolicy_Policy} values. */ export declare const ReservationPolicy_Policy: ReservationPolicy_PolicyClass; /** * Represents the `nebius.mk8s.v1.NodeGroupStatus.State` protobuf enum. */ export type NodeGroupStatus_State = EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; /** Defines the static values of {@link NodeGroupStatus_State}. */ export interface NodeGroupStatus_StateValueMembers { /** * Represents the `STATE_UNSPECIFIED` protobuf enum value. */ readonly STATE_UNSPECIFIED: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; /** * Represents the `PROVISIONING` protobuf enum value. */ readonly PROVISIONING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; /** * Represents the `RUNNING` protobuf enum value. */ readonly RUNNING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; /** * Represents the `DELETING` protobuf enum value. */ readonly DELETING: EnumInstance<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING">; } /** Defines the runtime API for {@link NodeGroupStatus_State}. */ export type NodeGroupStatus_StateClass = EnumClass<"UNRECOGNIZED" | "STATE_UNSPECIFIED" | "PROVISIONING" | "RUNNING" | "DELETING"> & NodeGroupStatus_StateValueMembers; /** Converts and creates {@link NodeGroupStatus_State} values. */ export declare const NodeGroupStatus_State: NodeGroupStatus_StateClass; /** * NodeGroup represents Kubernetes node pool - set of worker machines having the same configuration. * A Node is a Nebius Compute Instance created in Cluster.metadata.parent_id container, running kubelet * that registers in Kubernetes API and a Node object created. * */ export interface NodeGroup { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroup"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `metadata` protobuf field. */ metadata?: ResourceMetadata | undefined; /** Contains the `spec` protobuf field. */ spec?: NodeGroupSpec | undefined; /** Contains the `status` protobuf field. */ status?: NodeGroupStatus | undefined; } /** Encodes, decodes, converts, and creates {@link NodeGroup} messages. */ export declare const NodeGroup: MessageFns; /** Represents the `nebius.mk8s.v1.NodeGroupSpec` protobuf message. */ export interface NodeGroupSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroupSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Version is desired Kubernetes version of the cluster. For now only acceptable format is * `.` like "1.31". Option for patch version update will be added later. * By default the cluster control plane `.` version will be used. * */ version: string; /** * Parameters for Kubernetes Node object and Nebius Compute Instance * If not written opposite a NodeTemplate field update will cause NodeGroup roll-out according NodeGroupDeploymentStrategy. * */ template?: NodeTemplate | undefined; /** * Defines deployment - roll-out, or nodes re-creation during configuration change. * Allows to setup compromise in roll-out speed, extra resources consumption and workloads disruption. * */ strategy?: NodeGroupDeploymentStrategy | undefined; /** * Parameters for nodes auto repair. * */ autoRepair?: NodeGroupAutoRepairSpec | undefined; /** Contains the selected value for the `size` protobuf oneof. */ size?: { $case: "fixedNodeCount"; fixedNodeCount: Long; } | { $case: "autoscaling"; autoscaling: NodeGroupAutoscalingSpec; } | undefined; } /** Encodes, decodes, converts, and creates {@link NodeGroupSpec} messages. */ export declare const NodeGroupSpec: MessageFns; /** Represents the `nebius.mk8s.v1.NodeTemplate` protobuf message. */ export interface NodeTemplate { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeTemplate"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `metadata` protobuf field. */ metadata?: NodeMetadataTemplate | undefined; /** * Kubernetes Node taints. * For now change will not be propagated to existing nodes, so will be applied only to Kubernetes Nodes created after the field change. * That behaviour may change later. * So, for now you will need to manually set them to existing nodes, if that is needed. * Field change will NOT trigger NodeGroup roll out. * */ taints: NodeTaint[]; /** * Resources that will have Nebius Compute Instance where Node kubelet will run. * */ resources?: ResourcesSpec | undefined; /** * Parameters of a Node Nebius Compute Instance boot disk. * */ bootDisk?: DiskSpec | undefined; /** * GPU-related settings. * */ gpuSettings?: GpuSettings | undefined; /** * OS version that will be used to create the boot disk of Compute Instances in the NodeGroup. * Supported OS depend on the platform and Kubernetes version. * To get the up-to-date list of supported OS for a given Kubernetes version and platform, run: * nebius mk8s node-group get-compatibility-matrix --cluster-kubernetes-version VERSION --platform PLATFORM * */ os: string; /** * Nebius Compute GPUCluster ID that will be attached to node. * */ gpuCluster?: GpuClusterSpec | undefined; /** Contains the `network_interfaces` protobuf field. */ networkInterfaces: NetworkInterfaceTemplate[]; /** * Static attachments of Compute Filesystem. * Can be used as a workaround, until CSI for Compute Disk and Filesystem will be available. * */ filesystems: AttachedFilesystemSpec[]; /** * cloud-init user-data * Should contain at least one SSH key. * */ cloudInitUserData: string; /** * the Nebius service account whose credentials will be available on the nodes of the group. * With these credentials, it is possible to make `nebius` CLI or public API requests from the nodes * without the need for extra authentication. * This service account is also used to make requests to container registry. * * `resource.serviceaccount.issueAccessToken` permission is required to use this field. * */ serviceAccountId: string; /** * Metadata propagated to the Compute Instances in the NodeGroup. * */ instanceMetadata?: InstanceMetadataTemplate | undefined; /** * Configures whether the nodes in the group are preemptible. * Set to empty value to enable preemptible nodes. * */ preemptible?: PreemptibleSpec | undefined; /** * NVLinkSpec configures NVLink settings for the NodeGroup. * */ nvlink?: NVLinkSpec | undefined; /** * reservation_policy is an interface of the "capacity block" (or "capacity block group") mechanism of Nebius Compute. * */ reservationPolicy?: ReservationPolicy | undefined; /** * local_disks enables the provisioning of fast local drives. * This type of storage is strictly ephemeral: on node restart, all data is erased, similar to RAM. * */ localDisks?: LocalDisksSpec | undefined; /** * The maximum number of Pods per node for your cluster. If omitted, MK8S assigns the default value of 110. When you * configure the maximum number of Pods per node for the cluster, MK8S uses this value to allocate a CIDR range for every node * in group. The node CIDR prefix is calculated as `32 - ceil(log2(2 * max_pods))`, i.e. the smallest IPv4 subnet whose total address * count is at least `2 * max_pods`. Not all IPs are usable for workload Pods because some of them are consumed by system Pods. * */ maxPods: Long; } /** Encodes, decodes, converts, and creates {@link NodeTemplate} messages. */ export declare const NodeTemplate: MessageFns; /** Represents the `nebius.mk8s.v1.NVLinkSpec` protobuf message. */ export interface NVLinkSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NVLinkSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the selected value for the `nvl_group` protobuf oneof. */ nvlGroup?: { $case: "nvlInstanceGroupId"; nvlInstanceGroupId: string; } | undefined; } /** Encodes, decodes, converts, and creates {@link NVLinkSpec} messages. */ export declare const NVLinkSpec: MessageFns; /** Represents the `nebius.mk8s.v1.NodeMetadataTemplate` protobuf message. */ export interface NodeMetadataTemplate { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeMetadataTemplate"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Kubernetes Node labels. * * Keys and values must follow Kubernetes label syntax: * https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ * * For now change will not be propagated to existing nodes, so will be applied only to Kubernetes Nodes created after the field change. * That behavior may change later. * So, for now you will need to manually set them to existing nodes, if that is needed. * * System labels containing "kubernetes.io" and "k8s.io" will be ignored. * Field change will NOT trigger NodeGroup roll out. * */ labels: { [key: string]: string; }; } /** Encodes, decodes, converts, and creates {@link NodeMetadataTemplate} messages. */ export declare const NodeMetadataTemplate: MessageFns; /** * GPU-related settings. * */ export interface GpuSettings { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.GpuSettings"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Identifier of the predefined set of drivers included in the ComputeImage deployed on ComputeInstances that are part of the NodeGroup. * Supported presets depend on the platform and Kubernetes version. * To get the up-to-date list of supported presets for a given Kubernetes version and platform, run: * nebius mk8s node-group get-compatibility-matrix --cluster-kubernetes-version VERSION --platform PLATFORM * Leave empty for GPU nodes that do not have preinstalled drivers, including DRA-enabled node groups. * */ driversPreset: string; /** * Enables Dynamic Resource Allocation for this GPU node group. * For nodes whose image contains preinstalled NVIDIA drivers, disables the legacy NVIDIA device plugin. * For GPU nodes attached to a Compute GPU cluster, advertises RDMA capability through the managed DRANet DaemonSet. * */ dra: boolean; } /** Encodes, decodes, converts, and creates {@link GpuSettings} messages. */ export declare const GpuSettings: MessageFns; /** Represents the `nebius.mk8s.v1.GpuClusterSpec` protobuf message. */ export interface GpuClusterSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.GpuClusterSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `id` protobuf field. */ id: string; } /** Encodes, decodes, converts, and creates {@link GpuClusterSpec} messages. */ export declare const GpuClusterSpec: MessageFns; /** Represents the `nebius.mk8s.v1.NetworkInterfaceTemplate` protobuf message. */ export interface NetworkInterfaceTemplate { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NetworkInterfaceTemplate"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Parameters for Public IPv4 address associated with the interface. * Set to empty value, to enable it. * */ publicIpAddress?: PublicIPAddress | undefined; /** * Nebius VPC Subnet ID that will be attached to a node cloud instance network interface. * By default Cluster control plane subnet_id used. * Subnet should be located in the same network with control plane. * */ subnetId: string; /** * User provided VPC Security Groups which will be assigned to all nodes of this NodeGroup. * */ securityGroups: SecurityGroup[]; } /** Encodes, decodes, converts, and creates {@link NetworkInterfaceTemplate} messages. */ export declare const NetworkInterfaceTemplate: MessageFns; /** * Describes a public IP address. * */ export interface PublicIPAddress { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.PublicIPAddress"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; } /** Encodes, decodes, converts, and creates {@link PublicIPAddress} messages. */ export declare const PublicIPAddress: MessageFns; /** Represents the `nebius.mk8s.v1.SecurityGroup` protobuf message. */ export interface SecurityGroup { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.SecurityGroup"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `id` protobuf field. */ id: string; } /** Encodes, decodes, converts, and creates {@link SecurityGroup} messages. */ export declare const SecurityGroup: MessageFns; /** Represents the `nebius.mk8s.v1.AttachedFilesystemSpec` protobuf message. */ export interface AttachedFilesystemSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.AttachedFilesystemSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `attach_mode` protobuf field. */ attachMode: AttachedFilesystemSpec_AttachMode; /** * Specifies the user-defined identifier, allowing to use it as a device in mount command. * */ mountTag: string; /** Contains the selected value for the `type` protobuf oneof. */ type?: { $case: "existingFilesystem"; existingFilesystem: ExistingFilesystem; } | undefined; } /** Encodes, decodes, converts, and creates {@link AttachedFilesystemSpec} messages. */ export declare const AttachedFilesystemSpec: MessageFns; /** Represents the `nebius.mk8s.v1.ExistingFilesystem` protobuf message. */ export interface ExistingFilesystem { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ExistingFilesystem"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `id` protobuf field. */ id: string; } /** Encodes, decodes, converts, and creates {@link ExistingFilesystem} messages. */ export declare const ExistingFilesystem: MessageFns; /** Represents the `nebius.mk8s.v1.NodeGroupAutoscalingSpec` protobuf message. */ export interface NodeGroupAutoscalingSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroupAutoscalingSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `min_node_count` protobuf field. */ minNodeCount: Long; /** Contains the `max_node_count` protobuf field. */ maxNodeCount: Long; } /** Encodes, decodes, converts, and creates {@link NodeGroupAutoscalingSpec} messages. */ export declare const NodeGroupAutoscalingSpec: MessageFns; /** Represents the `nebius.mk8s.v1.InstanceMetadataTemplate` protobuf message. */ export interface InstanceMetadataTemplate { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.InstanceMetadataTemplate"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Labels propagated into Compute Instance metadata. * Provider-managed labels take precedence over user-provided instance labels. * */ labels: { [key: string]: string; }; } /** Encodes, decodes, converts, and creates {@link InstanceMetadataTemplate} messages. */ export declare const InstanceMetadataTemplate: MessageFns; /** * See https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ * */ export interface NodeTaint { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeTaint"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `key` protobuf field. */ key: string; /** Contains the `value` protobuf field. */ value: string; /** Contains the `effect` protobuf field. */ effect: NodeTaint_Effect; } /** Encodes, decodes, converts, and creates {@link NodeTaint} messages. */ export declare const NodeTaint: MessageFns; /** Represents the `nebius.mk8s.v1.NodeGroupDeploymentStrategy` protobuf message. */ export interface NodeGroupDeploymentStrategy { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroupDeploymentStrategy"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * The maximum number of nodes that can be simultaneously unavailable during the update process. * * This value can be specified either as an absolute number (for example 3) or as a percentage of the desired * number of nodes (for example 5%). * * When specified as a percentage, the actual number is calculated by rounding down to the nearest whole number. * This value cannot be 0 if `max_surge` is also set to 0. * * On 2026-08-01, defaults to 0. * IMPORTANT: starting from Q3 2026 new default is 1; * for new clusters it will default to 1, * node groups in existing clusters will be gradually migrated during Q3 to the default of 1 as well. * To get the actual value for your node group, please see 'strategy' in its status. * * Example: If set to 20%, up to 20% of the nodes can be taken offline at once during the update, * ensuring that at least 80% of the desired nodes remain operational. * */ maxUnavailable?: PercentOrCount | undefined; /** * The maximum number of additional nodes that can be provisioned above the desired number of nodes during the update process. * * This value can be specified either as an absolute number (for example 3) or as a percentage of the desired * number of nodes (for example 5%). * * When specified as a percentage, the actual number is calculated by rounding up to the nearest whole number. * This value cannot be 0 if `max_unavailable` is also set to 0. * * On 2026-08-01, defaults to 1. * IMPORTANT: starting from Q3 2026 new default is 0; * for new clusters it will default to 0, * node groups in existing clusters will be gradually migrated during Q3 to the default of 0 as well. * To get the actual value for your node group, please see 'strategy' in its status. * * Example: If set to 25%, the node group can scale up by an additional 25% during the update, * allowing new nodes to be added before old nodes are removed, which helps minimize workload disruption. * * NOTE: * * it is user responsibility to ensure that there are enough quota for provision nodes above the desired number. * Available quota effectively limits `max_surge`. * In case of not enough quota even for one extra node, update operation will hung because of quota exhausted error. * Such error will be visible in Operation.progress_data. * */ maxSurge?: PercentOrCount | undefined; /** * Maximum amount of time that the service will spend attempting to gracefully drain a node * (evicting its pods) before falling back to pod deletion. * A value of 0 means no timeout: the node can be drained for an unlimited time. * Important consequence of that is if PodDisruptionBudget doesn't allow evicting a pod, * then NodeGroup update with node re-creation will hang on that pod eviction. * Note that this is different from `kubectl drain --timeout`, which gives up and returns an error. * * On 2026-08-01, defaults to 0. * IMPORTANT: starting from Q3 2026 new default is 10m; * for new clusters it will default to 10m, * node groups in existing clusters will be gradually migrated during Q3 to the default of 10m as well. * To get the actual value for your node group, please see 'strategy' in its status. * */ drainTimeout?: Duration | undefined; } /** Encodes, decodes, converts, and creates {@link NodeGroupDeploymentStrategy} messages. */ export declare const NodeGroupDeploymentStrategy: MessageFns; /** Represents the `nebius.mk8s.v1.PercentOrCount` protobuf message. */ export interface PercentOrCount { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.PercentOrCount"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the selected value for the `value` protobuf oneof. */ value?: { $case: "percent"; percent: Long; } | { $case: "count"; count: Long; } | undefined; } /** Encodes, decodes, converts, and creates {@link PercentOrCount} messages. */ export declare const PercentOrCount: MessageFns; /** Represents the `nebius.mk8s.v1.NodeGroupAutoRepairSpec` protobuf message. */ export interface NodeGroupAutoRepairSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroupAutoRepairSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Conditions that determine whether a node should be auto repaired. * */ conditions: NodeAutoRepairCondition[]; } /** Encodes, decodes, converts, and creates {@link NodeGroupAutoRepairSpec} messages. */ export declare const NodeGroupAutoRepairSpec: MessageFns; /** Represents the `nebius.mk8s.v1.NodeAutoRepairCondition` protobuf message. */ export interface NodeAutoRepairCondition { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeAutoRepairCondition"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Node condition type. * */ type: string; /** * Node condition status. * */ status: ConditionStatus; /** Contains the selected value for the `trigger` protobuf oneof. */ trigger?: { $case: "timeout"; timeout: Duration; } | { $case: "disabled"; disabled: boolean; } | undefined; } /** Encodes, decodes, converts, and creates {@link NodeAutoRepairCondition} messages. */ export declare const NodeAutoRepairCondition: MessageFns; /** Represents the `nebius.mk8s.v1.PreemptibleSpec` protobuf message. */ export interface PreemptibleSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.PreemptibleSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; } /** Encodes, decodes, converts, and creates {@link PreemptibleSpec} messages. */ export declare const PreemptibleSpec: MessageFns; /** * ReservationPolicy is copied as-is from NebiusAPI `compute/v1/instance.proto`. * */ export interface ReservationPolicy { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ReservationPolicy"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `policy` protobuf field. */ policy: ReservationPolicy_Policy; /** * Capacity block groups, order matters * */ reservationIds: string[]; } /** Encodes, decodes, converts, and creates {@link ReservationPolicy} messages. */ export declare const ReservationPolicy: MessageFns; /** Represents the `nebius.mk8s.v1.LocalDisksSpec` protobuf message. */ export interface LocalDisksSpec { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.LocalDisksSpec"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * config defines actions that managed Kubernetes service performs on mounted local disks * to provide them inside Kubernetes cluster with a convenient interface. * * When omitted, a default value is generated. * */ config?: LocalDisksSpecConfig | undefined; /** Contains the selected value for the `request` protobuf oneof. */ request?: { $case: "passthroughGroup"; passthroughGroup: PassthroughGroupRequest; } | undefined; } /** Encodes, decodes, converts, and creates {@link LocalDisksSpec} messages. */ export declare const LocalDisksSpec: MessageFns; /** Represents the `nebius.mk8s.v1.PassthroughGroupRequest` protobuf message. */ export interface PassthroughGroupRequest { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.PassthroughGroupRequest"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Passthrough local disks from the underlying host. * * Devices are expected to appear in the guest as NVMe devices (nvme0, nvme1, ...), * but the exact number depends on the preset. * Enabled only when this field is explicitly set. * */ requested: boolean; } /** Encodes, decodes, converts, and creates {@link PassthroughGroupRequest} messages. */ export declare const PassthroughGroupRequest: MessageFns; /** * LocalDisksSpecConfig defines actions that managed Kubernetes service performs on mounted local disks * to provide them inside Kubernetes cluster with a convenient interface. * */ export interface LocalDisksSpecConfig { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.LocalDisksSpecConfig"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the selected value for the `type` protobuf oneof. */ type?: { $case: "none"; none: boolean; } | { $case: "kubeletEphemeral"; kubeletEphemeral: boolean; } | undefined; } /** Encodes, decodes, converts, and creates {@link LocalDisksSpecConfig} messages. */ export declare const LocalDisksSpecConfig: MessageFns; /** Represents the `nebius.mk8s.v1.NodeGroupStatus` protobuf message. */ export interface NodeGroupStatus { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.NodeGroupStatus"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** Contains the `state` protobuf field. */ state: NodeGroupStatus_State; /** * Actual version of NodeGroup. Have format `..-nebius-node.` like "1.30.0-nebius-node.10". * Where `..` is Kubernetes version and `` is version of Node infrastructure and configuration, * which update may include bug fixes, security updates and new features depending on worker node configuration. * */ version: string; /** * Desired total number of nodes that should be in the node group. * It is either `NodeGroupSpec.fixed_node_count` or arbitrary number between * `NodeGroupAutoscalingSpec.min_node_count` and `NodeGroupAutoscalingSpec.max_node_count` decided by autoscaler. * */ targetNodeCount: Long; /** * Total number of nodes that are currently in the node group. * Both ready and not ready nodes are counted. * */ nodeCount: Long; /** * Total number of nodes that has outdated node configuration. * These nodes will be replaced by new nodes with up-to-date configuration. * */ outdatedNodeCount: Long; /** * Total number of nodes that successfully joined the cluster and are ready to serve workloads. * Both outdated and up-to-date nodes are counted. * */ readyNodeCount: Long; /** Contains the `events` protobuf field. */ events: RecurrentResourceEvent[]; /** * Deployment strategy used by the service for node group rollouts and node deletions. * It includes default values applied by the service. A drain_timeout value of 0 means * that node draining is not time-limited. * */ strategy?: NodeGroupDeploymentStrategy | undefined; /** * Show that there are changes are in flight. * */ reconciling: boolean; } /** Encodes, decodes, converts, and creates {@link NodeGroupStatus} messages. */ export declare const NodeGroupStatus: MessageFns; /** Represents the `nebius.mk8s.v1.ProgressData` protobuf message. */ export interface ProgressData { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.ProgressData"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Problems encountered during the operation execution. * */ problems: Problem[]; } /** Encodes, decodes, converts, and creates {@link ProgressData} messages. */ export declare const ProgressData: MessageFns; /** Represents the `nebius.mk8s.v1.Problem` protobuf message. */ export interface Problem { /** Contains the fully qualified protobuf type name. */ $type: "nebius.mk8s.v1.Problem"; /** Preserves protobuf fields that this SDK version does not recognize. */ [unknownFieldsSymbol]?: Uint8Array | undefined; /** Returns a safe value for JSON logs. */ [customJson]?: () => unknown; /** * Stage on which the problem occurred. * */ stage: string; /** * Message describing the problem. * */ message: string; } /** Encodes, decodes, converts, and creates {@link Problem} messages. */ export declare const Problem: MessageFns; //# sourceMappingURL=index.d.ts.map