import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.clouddesktop.v1.api"; /** A desktop resource. */ export interface Desktop { /** Desktop ID. */ id: string; /** ID of the folder that the desktop belongs to. */ folderId: string; /** ID of the desktop group that the desktop belongs to. */ desktopGroupId: string; /** Creation timestamp in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. */ createdAt?: Date; /** Status of the desktop. */ status: Desktop_Status; /** Name of the desktop. */ name: string; /** Resources of the desktop. */ resources?: Resources; networkInterfaces: NetworkInterface[]; users: User[]; /** Labels of the desktop. */ labels: { [key: string]: string; }; } export declare enum Desktop_Status { STATUS_UNSPECIFIED = 0, /** CREATING - Desktop is being created. */ CREATING = 1, /** ACTIVE - Desktop is ready to be used. */ ACTIVE = 2, /** DELETING - Desktop is being deleted. */ DELETING = 3, /** RESTARTING - Desktop is restarting. */ RESTARTING = 4, /** UPDATING - Desktop is updating. */ UPDATING = 5, /** STARTING - Desktop is starting. */ STARTING = 6, /** STOPPING - Desktop is stopping. */ STOPPING = 7, /** STOPPED - Desktop is stopped. */ STOPPED = 8, /** ERROR - Desktop did not manage start or restart. */ ERROR = 9, /** CREATION_FAILED - Desktop did not manage to get created or updated. */ CREATION_FAILED = 10, UNRECOGNIZED = -1 } export declare function desktop_StatusFromJSON(object: any): Desktop_Status; export declare function desktop_StatusToJSON(object: Desktop_Status): string; export interface Desktop_LabelsEntry { key: string; value: string; } export interface Resources { memory: number; cores: number; coreFraction: number; } export interface User { /** Identity of the access binding. */ subjectId: string; /** Type of the access binding, e.g. userAccount, serviceAccount, system. */ subjectType: string; } export interface NetworkInterface { networkId: string; subnetId: string; } export declare const Desktop: { encode(message: Desktop, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Desktop; fromJSON(object: any): Desktop; toJSON(message: Desktop): unknown; fromPartial, never>) | undefined; networkInterfaces?: ({ networkId?: string | undefined; subnetId?: string | undefined; }[] & ({ networkId?: string | undefined; subnetId?: string | undefined; } & { networkId?: string | undefined; subnetId?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; users?: ({ subjectId?: string | undefined; subjectType?: string | undefined; }[] & ({ subjectId?: string | undefined; subjectType?: string | undefined; } & { subjectId?: string | undefined; subjectType?: string | undefined; } & Record, never>)[] & Record, never>) | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Desktop; }; export declare const Desktop_LabelsEntry: { encode(message: Desktop_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Desktop_LabelsEntry; fromJSON(object: any): Desktop_LabelsEntry; toJSON(message: Desktop_LabelsEntry): unknown; fromPartial, never>>(object: I): Desktop_LabelsEntry; }; export declare const Resources: { encode(message: Resources, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Resources; fromJSON(object: any): Resources; toJSON(message: Resources): unknown; fromPartial, never>>(object: I): Resources; }; export declare const User: { encode(message: User, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): User; fromJSON(object: any): User; toJSON(message: User): unknown; fromPartial, never>>(object: I): User; }; export declare const NetworkInterface: { encode(message: NetworkInterface, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): NetworkInterface; fromJSON(object: any): NetworkInterface; toJSON(message: NetworkInterface): unknown; fromPartial, never>>(object: I): NetworkInterface; }; 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 {};