/// import { ChannelCredentials, ChannelOptions, UntypedServiceImplementation, handleUnaryCall, Client, ClientUnaryCall, Metadata, CallOptions, ServiceError } from '@grpc/grpc-js'; import _m0 from 'protobufjs/minimal'; import { ResourcesSpec } from '../../../../yandex/cloud/compute/v1/instance_service'; import { GpuSettings, NetworkSettings } from '../../../../yandex/cloud/compute/v1/instance'; import { BootDiskSpec, ReservedInstancePool } from '../../../../yandex/cloud/compute/v1/reserved_instance_pool'; import { FieldMask } from '../../../../google/protobuf/field_mask'; import { Operation } from '../../../../yandex/cloud/operation/operation'; export declare const protobufPackage = "yandex.cloud.compute.v1"; export interface GetReservedInstancePoolRequest { /** * ID of the reserved instance pool resource to return. * To get the reserved instance pool ID, use a [ReservedInstancePoolService.List] request. */ reservedInstancePoolId: string; } export interface ListReservedInstancePoolsRequest { /** * ID of the Folder to list reserved instance pools in. * To get the folder ID, use a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** * The maximum number of results per page to return. If the number of available * results is larger than [page_size], * the service returns a [ListReservedInstancePoolsResponse.next_page_token] * that can be used to get the next page of results in subsequent list requests. */ pageSize: number; /** * Page token. To get the next page of results, * set [page_token] to the [ListReservedInstancePoolsResponse.next_page_token] * returned by a previous list request. */ pageToken: string; /** * A filter expression that filters resources listed in the response. * The expression consists of one or more conditions united by `AND` operator: ` [AND [<...> AND ]]`. * * Each condition has the form ` `, where: * 1. `` is the field name. Currently you can use filtering only on the limited number of fields. * 2. `` is a logical operator, one of `=`, `!=`, `IN`, `NOT IN`. * 3. `` represents a value. * String values should be written in double (`"`) or single (`'`) quotes. C-style escape sequences are supported (`\"` turns to `"`, `\'` to `'`, `\\` to backslash). */ filter: string; /** * By which column the listing should be ordered and in which direction, * format is "createdAt desc". "id asc" if omitted. */ orderBy: string; } export interface ListReservedInstancePoolsResponse { /** List of reserved instance pool resources. */ reservedInstancePools: ReservedInstancePool[]; /** * This token allows you to get the next page of results for list requests. If the number of results * is larger than [ListReservedInstancePoolsRequest.page_size], use * the [next_page_token] as the value * for the [ListReservedInstancePoolsRequest.page_token] query parameter * in the next list request. Each subsequent list request will have its own * [next_page_token] to continue paging through the results. */ nextPageToken: string; } export interface CreateReservedInstancePoolRequest { /** Name of the reserved instance pool. */ name: string; /** Description of the reserved instance pool. */ description: string; /** Resource labels as `key:value` pairs. */ labels: { [key: string]: string; }; /** * ID of the availability zone where the reserved instance pool resides. * To get a list of available zones, use the [yandex.cloud.compute.v1.ZoneService.List] request */ zoneId: string; /** * ID of the folder to create the reserved instance pool in. * To get the folder ID, use a [yandex.cloud.resourcemanager.v1.FolderService.List] request. */ folderId: string; /** * ID of the hardware platform configuration for the reserved instance pool. * This field affects the available values in [resources_spec] field. * * For more information, see [Platforms](/docs/compute/concepts/vm-platforms). */ platformId: string; /** * Computing resources of the reserved instance pool instances, such as the amount of memory and number of cores. * To get a list of available values, see [Levels of core performance](/docs/compute/concepts/performance-levels). */ resourcesSpec?: ResourcesSpec; /** GPU settings. */ gpuSettings?: GpuSettings; /** Spec is used to determine which License IDs should be allowed for instances created in the pool. */ bootDiskSpec?: BootDiskSpec; /** Network settings. */ networkSettings?: NetworkSettings; /** Desired size of the pool (number of slots for instances in this pool). */ size: number; } export interface CreateReservedInstancePoolRequest_LabelsEntry { key: string; value: string; } export interface CreateReservedInstancePoolMetadata { /** ID of the reserved instance pool that is being created. */ reservedInstancePoolId: string; } export interface UpdateReservedInstancePoolRequest { /** * ID of the reserved instance pool to update. * To get the reserved instance pool ID, use a [ReservedInstancePoolService.List] request. */ reservedInstancePoolId: string; /** Field mask that specifies which fields of the reserved instance pool should be updated. */ updateMask?: FieldMask; /** New name for the reserved instance pool. */ name: string; /** Description of the reserved instance pool. */ description: string; /** * Resource labels as `key:value` pairs. * * Existing set of `labels` is completely replaced by the provided set. */ labels: { [key: string]: string; }; /** Desired size of the pool. */ size: number; } export interface UpdateReservedInstancePoolRequest_LabelsEntry { key: string; value: string; } export interface UpdateReservedInstancePoolMetadata { /** ID of the reserved instance pool that is being updated. */ reservedInstancePoolId: string; } export interface DeleteReservedInstancePoolRequest { /** * ID of the reserved instance pool to delete. * To get the reserved instance pool ID, use a [ReservedInstancePoolService.List] request. */ reservedInstancePoolId: string; } export interface DeleteReservedInstancePoolMetadata { /** ID of the reserved instance pool that is being deleted. */ reservedInstancePoolId: string; } export interface DeleteReservedInstancePoolResponse { } export declare const GetReservedInstancePoolRequest: { encode(message: GetReservedInstancePoolRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): GetReservedInstancePoolRequest; fromJSON(object: any): GetReservedInstancePoolRequest; toJSON(message: GetReservedInstancePoolRequest): unknown; fromPartial, never>>(object: I): GetReservedInstancePoolRequest; }; export declare const ListReservedInstancePoolsRequest: { encode(message: ListReservedInstancePoolsRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListReservedInstancePoolsRequest; fromJSON(object: any): ListReservedInstancePoolsRequest; toJSON(message: ListReservedInstancePoolsRequest): unknown; fromPartial, never>>(object: I): ListReservedInstancePoolsRequest; }; export declare const ListReservedInstancePoolsResponse: { encode(message: ListReservedInstancePoolsResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ListReservedInstancePoolsResponse; fromJSON(object: any): ListReservedInstancePoolsResponse; toJSON(message: ListReservedInstancePoolsResponse): unknown; fromPartial, never>) | undefined; createdAt?: Date | undefined; platformId?: string | undefined; resourcesSpec?: ({ memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; gpus?: number | undefined; } & { memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; gpus?: number | undefined; } & Record, never>) | undefined; gpuSettings?: ({ gpuClusterId?: string | undefined; } & { gpuClusterId?: string | undefined; } & Record, never>) | undefined; productIds?: (string[] & string[] & Record, never>) | undefined; networkSettings?: ({ type?: import("../../../../yandex/cloud/compute/v1/instance").NetworkSettings_Type | undefined; } & { type?: import("../../../../yandex/cloud/compute/v1/instance").NetworkSettings_Type | undefined; } & Record, never>) | undefined; size?: number | undefined; } & Record, never>)[] & Record, never>) | undefined; nextPageToken?: string | undefined; } & Record, never>>(object: I): ListReservedInstancePoolsResponse; }; export declare const CreateReservedInstancePoolRequest: { encode(message: CreateReservedInstancePoolRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateReservedInstancePoolRequest; fromJSON(object: any): CreateReservedInstancePoolRequest; toJSON(message: CreateReservedInstancePoolRequest): unknown; fromPartial, never>) | undefined; zoneId?: string | undefined; folderId?: string | undefined; platformId?: string | undefined; resourcesSpec?: ({ memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; gpus?: number | undefined; } & { memory?: number | undefined; cores?: number | undefined; coreFraction?: number | undefined; gpus?: number | undefined; } & Record, never>) | undefined; gpuSettings?: ({ gpuClusterId?: string | undefined; } & { gpuClusterId?: string | undefined; } & Record, never>) | undefined; bootDiskSpec?: ({ diskId?: string | undefined; imageId?: string | undefined; snapshotId?: string | undefined; productIds?: { productIds?: string[] | undefined; } | undefined; } & { diskId?: string | undefined; imageId?: string | undefined; snapshotId?: string | undefined; productIds?: ({ productIds?: string[] | undefined; } & { productIds?: (string[] & string[] & Record, never>) | undefined; } & Record, never>) | undefined; } & Record, never>) | undefined; networkSettings?: ({ type?: import("../../../../yandex/cloud/compute/v1/instance").NetworkSettings_Type | undefined; } & { type?: import("../../../../yandex/cloud/compute/v1/instance").NetworkSettings_Type | undefined; } & Record, never>) | undefined; size?: number | undefined; } & Record, never>>(object: I): CreateReservedInstancePoolRequest; }; export declare const CreateReservedInstancePoolRequest_LabelsEntry: { encode(message: CreateReservedInstancePoolRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateReservedInstancePoolRequest_LabelsEntry; fromJSON(object: any): CreateReservedInstancePoolRequest_LabelsEntry; toJSON(message: CreateReservedInstancePoolRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): CreateReservedInstancePoolRequest_LabelsEntry; }; export declare const CreateReservedInstancePoolMetadata: { encode(message: CreateReservedInstancePoolMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): CreateReservedInstancePoolMetadata; fromJSON(object: any): CreateReservedInstancePoolMetadata; toJSON(message: CreateReservedInstancePoolMetadata): unknown; fromPartial, never>>(object: I): CreateReservedInstancePoolMetadata; }; export declare const UpdateReservedInstancePoolRequest: { encode(message: UpdateReservedInstancePoolRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateReservedInstancePoolRequest; fromJSON(object: any): UpdateReservedInstancePoolRequest; toJSON(message: UpdateReservedInstancePoolRequest): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; name?: string | undefined; description?: string | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; size?: number | undefined; } & Record, never>>(object: I): UpdateReservedInstancePoolRequest; }; export declare const UpdateReservedInstancePoolRequest_LabelsEntry: { encode(message: UpdateReservedInstancePoolRequest_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateReservedInstancePoolRequest_LabelsEntry; fromJSON(object: any): UpdateReservedInstancePoolRequest_LabelsEntry; toJSON(message: UpdateReservedInstancePoolRequest_LabelsEntry): unknown; fromPartial, never>>(object: I): UpdateReservedInstancePoolRequest_LabelsEntry; }; export declare const UpdateReservedInstancePoolMetadata: { encode(message: UpdateReservedInstancePoolMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): UpdateReservedInstancePoolMetadata; fromJSON(object: any): UpdateReservedInstancePoolMetadata; toJSON(message: UpdateReservedInstancePoolMetadata): unknown; fromPartial, never>>(object: I): UpdateReservedInstancePoolMetadata; }; export declare const DeleteReservedInstancePoolRequest: { encode(message: DeleteReservedInstancePoolRequest, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteReservedInstancePoolRequest; fromJSON(object: any): DeleteReservedInstancePoolRequest; toJSON(message: DeleteReservedInstancePoolRequest): unknown; fromPartial, never>>(object: I): DeleteReservedInstancePoolRequest; }; export declare const DeleteReservedInstancePoolMetadata: { encode(message: DeleteReservedInstancePoolMetadata, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteReservedInstancePoolMetadata; fromJSON(object: any): DeleteReservedInstancePoolMetadata; toJSON(message: DeleteReservedInstancePoolMetadata): unknown; fromPartial, never>>(object: I): DeleteReservedInstancePoolMetadata; }; export declare const DeleteReservedInstancePoolResponse: { encode(_: DeleteReservedInstancePoolResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeleteReservedInstancePoolResponse; fromJSON(_: any): DeleteReservedInstancePoolResponse; toJSON(_: DeleteReservedInstancePoolResponse): unknown; fromPartial, never>>(_: I): DeleteReservedInstancePoolResponse; }; /** A set of methods for managing reserved instance pool resources. */ export declare const ReservedInstancePoolServiceService: { /** * Returns the specified reserved instance pool resource. * * To get the list of available reserved instance pool resources, make a [List] request. */ readonly get: { readonly path: "/yandex.cloud.compute.v1.ReservedInstancePoolService/Get"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: GetReservedInstancePoolRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => GetReservedInstancePoolRequest; readonly responseSerialize: (value: ReservedInstancePool) => Buffer; readonly responseDeserialize: (value: Buffer) => ReservedInstancePool; }; /** Retrieves the list of reserved instance pool resources in the specified folder. */ readonly list: { readonly path: "/yandex.cloud.compute.v1.ReservedInstancePoolService/List"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: ListReservedInstancePoolsRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => ListReservedInstancePoolsRequest; readonly responseSerialize: (value: ListReservedInstancePoolsResponse) => Buffer; readonly responseDeserialize: (value: Buffer) => ListReservedInstancePoolsResponse; }; /** * Creates an reserved instance pool in the specified folder. * Method starts an asynchronous operation that can be cancelled while it is in progress. */ readonly create: { readonly path: "/yandex.cloud.compute.v1.ReservedInstancePoolService/Create"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: CreateReservedInstancePoolRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => CreateReservedInstancePoolRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Updates the specified reserved instance pool. */ readonly update: { readonly path: "/yandex.cloud.compute.v1.ReservedInstancePoolService/Update"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: UpdateReservedInstancePoolRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => UpdateReservedInstancePoolRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; /** Deletes the specified reserved instance pool. */ readonly delete: { readonly path: "/yandex.cloud.compute.v1.ReservedInstancePoolService/Delete"; readonly requestStream: false; readonly responseStream: false; readonly requestSerialize: (value: DeleteReservedInstancePoolRequest) => Buffer; readonly requestDeserialize: (value: Buffer) => DeleteReservedInstancePoolRequest; readonly responseSerialize: (value: Operation) => Buffer; readonly responseDeserialize: (value: Buffer) => Operation; }; }; export interface ReservedInstancePoolServiceServer extends UntypedServiceImplementation { /** * Returns the specified reserved instance pool resource. * * To get the list of available reserved instance pool resources, make a [List] request. */ get: handleUnaryCall; /** Retrieves the list of reserved instance pool resources in the specified folder. */ list: handleUnaryCall; /** * Creates an reserved instance pool in the specified folder. * Method starts an asynchronous operation that can be cancelled while it is in progress. */ create: handleUnaryCall; /** Updates the specified reserved instance pool. */ update: handleUnaryCall; /** Deletes the specified reserved instance pool. */ delete: handleUnaryCall; } export interface ReservedInstancePoolServiceClient extends Client { /** * Returns the specified reserved instance pool resource. * * To get the list of available reserved instance pool resources, make a [List] request. */ get(request: GetReservedInstancePoolRequest, callback: (error: ServiceError | null, response: ReservedInstancePool) => void): ClientUnaryCall; get(request: GetReservedInstancePoolRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ReservedInstancePool) => void): ClientUnaryCall; get(request: GetReservedInstancePoolRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ReservedInstancePool) => void): ClientUnaryCall; /** Retrieves the list of reserved instance pool resources in the specified folder. */ list(request: ListReservedInstancePoolsRequest, callback: (error: ServiceError | null, response: ListReservedInstancePoolsResponse) => void): ClientUnaryCall; list(request: ListReservedInstancePoolsRequest, metadata: Metadata, callback: (error: ServiceError | null, response: ListReservedInstancePoolsResponse) => void): ClientUnaryCall; list(request: ListReservedInstancePoolsRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: ListReservedInstancePoolsResponse) => void): ClientUnaryCall; /** * Creates an reserved instance pool in the specified folder. * Method starts an asynchronous operation that can be cancelled while it is in progress. */ create(request: CreateReservedInstancePoolRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateReservedInstancePoolRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; create(request: CreateReservedInstancePoolRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Updates the specified reserved instance pool. */ update(request: UpdateReservedInstancePoolRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateReservedInstancePoolRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; update(request: UpdateReservedInstancePoolRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; /** Deletes the specified reserved instance pool. */ delete(request: DeleteReservedInstancePoolRequest, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteReservedInstancePoolRequest, metadata: Metadata, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; delete(request: DeleteReservedInstancePoolRequest, metadata: Metadata, options: Partial, callback: (error: ServiceError | null, response: Operation) => void): ClientUnaryCall; } export declare const ReservedInstancePoolServiceClient: { new (address: string, credentials: ChannelCredentials, options?: Partial): ReservedInstancePoolServiceClient; service: typeof ReservedInstancePoolServiceService; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact; } & Record>, never>; export {};
= P extends Builtin ? P : P & { [K in keyof P]: Exact
; } & Record>, never>; export {};