import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.iot.devices.v1"; export declare enum DeviceView { /** * BASIC - Server responses without monitoring data. * The default value. */ BASIC = 0, /** FULL - Server responses with monitoring data. */ FULL = 1, UNRECOGNIZED = -1 } export declare function deviceViewFromJSON(object: any): DeviceView; export declare function deviceViewToJSON(object: DeviceView): string; /** A device. For more information, see [Device](/docs/iot-core/concepts/index#device). */ export interface Device { /** ID of the device. */ id: string; /** ID of the registry that the device belongs to. */ registryId: string; /** Creation timestamp. */ createdAt?: Date; /** Name of the device. The name is unique within the registry. */ name: string; /** Description of the device. 0-256 characters long. */ description: string; /** * Alias of a device topic. * * Alias is an alternate name of a device topic assigned by the user. Map alias to canonical topic name prefix, e.g. `my/custom/alias` match to `$device/abcdef/events`. */ topicAliases: { [key: string]: string; }; /** Status of the device. */ status: Device_Status; /** Device monitoring data, returns if FULL view specified. */ monitoringData?: DeviceMonitoringData; /** Resource labels as `key:value` pairs. Maximum of 64 per resource. */ labels: { [key: string]: string; }; } export declare enum Device_Status { STATUS_UNSPECIFIED = 0, /** CREATING - Device is being created. */ CREATING = 1, /** ACTIVE - Device is ready to use. */ ACTIVE = 2, /** DELETING - Device is being deleted. */ DELETING = 3, UNRECOGNIZED = -1 } export declare function device_StatusFromJSON(object: any): Device_Status; export declare function device_StatusToJSON(object: Device_Status): string; export interface Device_TopicAliasesEntry { key: string; value: string; } export interface Device_LabelsEntry { key: string; value: string; } /** A device certificate. For more information, see [Managing device certificates](/docs/iot-core/operations/certificates/device-certificates). */ export interface DeviceCertificate { /** ID of the device that the certificate belongs to. */ deviceId: string; /** SHA256 hash of the certificate. */ fingerprint: string; /** Public part of the certificate. */ certificateData: string; /** Creation timestamp. */ createdAt?: Date; } /** A device password. */ export interface DevicePassword { /** ID of the device that the password belongs to. */ deviceId: string; /** ID of the password. */ id: string; /** Creation timestamp. */ createdAt?: Date; } export interface DeviceMonitoringData { lastAuthIp: string; lastAuthTime?: Date; lastPubActivityTime?: Date; lastSubActivityTime?: Date; lastOnlineTime?: Date; lastDisconnectTime?: Date; } export declare const Device: { encode(message: Device, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Device; fromJSON(object: any): Device; toJSON(message: Device): unknown; fromPartial, never>) | undefined; status?: Device_Status | undefined; monitoringData?: ({ lastAuthIp?: string | undefined; lastAuthTime?: Date | undefined; lastPubActivityTime?: Date | undefined; lastSubActivityTime?: Date | undefined; lastOnlineTime?: Date | undefined; lastDisconnectTime?: Date | undefined; } & { lastAuthIp?: string | undefined; lastAuthTime?: Date | undefined; lastPubActivityTime?: Date | undefined; lastSubActivityTime?: Date | undefined; lastOnlineTime?: Date | undefined; lastDisconnectTime?: Date | undefined; } & Record, never>) | undefined; labels?: ({ [x: string]: string | undefined; } & { [x: string]: string | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): Device; }; export declare const Device_TopicAliasesEntry: { encode(message: Device_TopicAliasesEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Device_TopicAliasesEntry; fromJSON(object: any): Device_TopicAliasesEntry; toJSON(message: Device_TopicAliasesEntry): unknown; fromPartial, never>>(object: I): Device_TopicAliasesEntry; }; export declare const Device_LabelsEntry: { encode(message: Device_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): Device_LabelsEntry; fromJSON(object: any): Device_LabelsEntry; toJSON(message: Device_LabelsEntry): unknown; fromPartial, never>>(object: I): Device_LabelsEntry; }; export declare const DeviceCertificate: { encode(message: DeviceCertificate, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeviceCertificate; fromJSON(object: any): DeviceCertificate; toJSON(message: DeviceCertificate): unknown; fromPartial, never>>(object: I): DeviceCertificate; }; export declare const DevicePassword: { encode(message: DevicePassword, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DevicePassword; fromJSON(object: any): DevicePassword; toJSON(message: DevicePassword): unknown; fromPartial, never>>(object: I): DevicePassword; }; export declare const DeviceMonitoringData: { encode(message: DeviceMonitoringData, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): DeviceMonitoringData; fromJSON(object: any): DeviceMonitoringData; toJSON(message: DeviceMonitoringData): unknown; fromPartial, never>>(object: I): DeviceMonitoringData; }; 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 {};