import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.compute.v1"; export interface PlacementGroup { /** ID of the placement group. Generated at creation time. */ id: string; /** ID of the folder that the placement group belongs to. */ folderId: string; /** Creation timestamp. */ createdAt?: Date; /** * Name of the placement group. * The name is unique within the folder. */ name: string; /** Description of the placement group. 0-256 characters long. */ description: string; /** Placement group labels as `key:value` pairs. */ labels: { [key: string]: string; }; /** * Anti-affinity placement strategy (`spread`). Instances are distributed * over distinct failure domains. */ spreadPlacementStrategy?: SpreadPlacementStrategy | undefined; partitionPlacementStrategy?: PartitionPlacementStrategy | undefined; } export interface PlacementGroup_LabelsEntry { key: string; value: string; } /** * This is an empty structure that must be passed to explicitly * specify the required placement strategy. */ export interface SpreadPlacementStrategy { } export interface PartitionPlacementStrategy { partitions: number; } export declare const PlacementGroup: { encode(message: PlacementGroup, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PlacementGroup; fromJSON(object: any): PlacementGroup; toJSON(message: PlacementGroup): unknown; fromPartial, never>) | undefined; spreadPlacementStrategy?: ({} & {} & Record, never>) | undefined; partitionPlacementStrategy?: ({ partitions?: number | undefined; } & { partitions?: number | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): PlacementGroup; }; export declare const PlacementGroup_LabelsEntry: { encode(message: PlacementGroup_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PlacementGroup_LabelsEntry; fromJSON(object: any): PlacementGroup_LabelsEntry; toJSON(message: PlacementGroup_LabelsEntry): unknown; fromPartial, never>>(object: I): PlacementGroup_LabelsEntry; }; export declare const SpreadPlacementStrategy: { encode(_: SpreadPlacementStrategy, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): SpreadPlacementStrategy; fromJSON(_: any): SpreadPlacementStrategy; toJSON(_: SpreadPlacementStrategy): unknown; fromPartial, never>>(_: I): SpreadPlacementStrategy; }; export declare const PartitionPlacementStrategy: { encode(message: PartitionPlacementStrategy, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): PartitionPlacementStrategy; fromJSON(object: any): PartitionPlacementStrategy; toJSON(message: PartitionPlacementStrategy): unknown; fromPartial, never>>(object: I): PartitionPlacementStrategy; }; 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 {};