import { DeviceId } from '../common'; import { DeviceExtensionProperties } from './api/device/models/device-list.response'; export type WiFiData = { name?: string; mac: string; softwareVersion: string; hardwareVersion: string; }; export type BluetoothData = { name: string; mac: string; }; export type Measurement = { min?: number; max?: number; calibration?: number; warning?: boolean; current?: number; }; export type GoveeDeviceStatus = { id: string; cmd?: string; model: string; pactType: number; pactCode: number; state: { battery?: number; online?: boolean; isOn?: boolean; temperature?: Measurement; humidity?: Measurement; lastTime?: number; waterShortage?: boolean; boilWaterCompleteNotification?: boolean; completeNotification?: boolean; autoShudown?: boolean; filterExpired?: boolean; playState?: boolean; pm25?: Measurement; mode?: number; brightness?: number; tempProbes?: Record; colorTemperature?: Measurement; presence?: boolean; probes?: { probe1?: { current?: number; min?: number; max?: number; }; probe2?: { current?: number; min?: number; max?: number; }; probe3?: { current?: number; min?: number; max?: number; }; probe4?: { current?: number; min?: number; max?: number; }; }; color?: { red: number; green: number; blue: number; }; }; op?: { command?: number[][]; }; }; export type GoveeCommandDataColor = { red: number; green: number; blue: number; }; export type GoveeCommandDataColorRGB = { r: number; g: number; b: number; }; export type GoveeCommandData = { command?: number[][] | string[]; color?: GoveeCommandDataColor | GoveeCommandDataColorRGB; value?: number | string | string[]; val?: number | string | string[]; colorTemInKelvin?: number; opcode?: string; modeValue?: string; }; export type GoveeCommand = 'pt' | 'ptReal' | 'multiSync' | 'mode' | 'turn' | 'brightness' | 'color' | 'colorTem' | 'colorwc'; export type GoveeDeviceCommand = { commandId: string; deviceId: DeviceId; command?: GoveeCommand; type?: number; cmdVersion?: number; data: GoveeCommandData; }; export type GoveeDeviceStateCommand = Omit | Omit[]; export type GoveeStatusForStateCommand = Partial & { op?: { command: (number | undefined)[][]; }; }> | Partial & { op?: { command: (number | undefined)[][]; }; }>[]; export type GoveeDevice = { id: string; name: string; model: string; ic: number; iotTopic?: string; groupId: number; pactType: number; pactCode: number; goodsType: number; softwareVersion: string; hardwareVersion: string; wifi?: WiFiData; blueTooth?: BluetoothData; deviceExt?: DeviceExtensionProperties; } & GoveeDeviceStatus; //# sourceMappingURL=govee-device.d.ts.map