import _m0 from 'protobufjs/minimal'; import { ResourcesSpec } from '../../../../yandex/cloud/compute/v1/instance_service'; import { GpuSettings, NetworkSettings } from '../../../../yandex/cloud/compute/v1/instance'; export declare const protobufPackage = "yandex.cloud.compute.v1"; export interface ProductIDs { /** * License IDs that indicate which licenses are attached to resource. * License IDs are used to calculate additional charges for the use of the virtual machine. */ productIds: string[]; } /** * Specification used to determine required product_ids * You can specify product ids explicitly or use disk_id|image_id|snapshot_id to infer products ids from them. */ export interface BootDiskSpec { /** Disk ID. */ diskId: string | undefined; /** Image ID. */ imageId: string | undefined; /** Snapshot ID. */ snapshotId: string | undefined; /** Product IDs. */ productIds?: ProductIDs | undefined; } /** A Reserved Instance Pool resource. */ export interface ReservedInstancePool { /** ID of the pool. */ id: string; /** ID of the availability zone where the pool resides. */ zoneId: string; /** ID of the cloud that the pool belongs to. */ cloudId: string; /** ID of the folder that the pool belongs to. */ folderId: string; /** Name of the pool. 1-63 characters long. */ name: string; /** Description of the pool. 0-256 characters long. */ description: string; /** Resource labels as `key:value` pairs. Maximum of 64 per resource. */ labels: { [key: string]: string; }; createdAt?: Date; /** ID of the hardware platform configuration for pool instances. */ platformId: string; /** Computing resources of pool instances, such as the amount of memory and number of cores. */ resourcesSpec?: ResourcesSpec; /** GPU settings. */ gpuSettings?: GpuSettings; /** * License IDs that indicate which licenses are attached to resource. * License IDs are used to calculate additional charges for the use of the virtual machine. */ productIds: string[]; /** Network Settings. */ networkSettings?: NetworkSettings; /** Desired size of the pool (number of slots for instances in this pool). */ size: number; } export interface ReservedInstancePool_LabelsEntry { key: string; value: string; } export declare const ProductIDs: { encode(message: ProductIDs, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ProductIDs; fromJSON(object: any): ProductIDs; toJSON(message: ProductIDs): unknown; fromPartial, never>) | undefined; } & Record, never>>(object: I): ProductIDs; }; export declare const BootDiskSpec: { encode(message: BootDiskSpec, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): BootDiskSpec; fromJSON(object: any): BootDiskSpec; toJSON(message: BootDiskSpec): unknown; fromPartial, never>) | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): BootDiskSpec; }; export declare const ReservedInstancePool: { encode(message: ReservedInstancePool, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ReservedInstancePool; fromJSON(object: any): ReservedInstancePool; toJSON(message: ReservedInstancePool): 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>>(object: I): ReservedInstancePool; }; export declare const ReservedInstancePool_LabelsEntry: { encode(message: ReservedInstancePool_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): ReservedInstancePool_LabelsEntry; fromJSON(object: any): ReservedInstancePool_LabelsEntry; toJSON(message: ReservedInstancePool_LabelsEntry): unknown; fromPartial, never>>(object: I): ReservedInstancePool_LabelsEntry; }; 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 {};