@wanderxjtu/homebridge-yeelighter
Version:
Yeelight support for Homebridge with particular support of ceiling lights
53 lines • 1.3 kB
TypeScript
/**
* Yeelight Device Handling.
*/
/// <reference types="node" />
import { EventEmitter } from "node:events";
import net from "node:net";
export interface DeviceInfo {
location: string;
id: string;
model: string;
support: string;
power: boolean;
bright: number;
color_mode: number;
ct: number;
rgb: string;
hue: number;
sat: number;
host: string;
port: number;
debug: boolean;
trackedAttributes: string[];
fw_ver: string;
name: string;
}
export declare const EMPTY_DEVICEINFO: DeviceInfo;
export interface Command {
id: number;
method: string;
params: Array<number | string | boolean>;
}
/**
* Handles the connection to a concrete Yee light.
*/
export declare class Device extends EventEmitter {
info: DeviceInfo;
debug: boolean;
connected: boolean;
forceDisconnect: boolean;
retryTimer?: NodeJS.Timeout;
socket?: net.Socket;
rest: string;
constructor(info: DeviceInfo);
connect(): void;
disconnect(forceDisconnect?: boolean): void;
bindSocket(): void;
socketClosed(error?: Error): void;
didConnect(): void;
didReceiveResponse(data: any): void;
sendCommand(data: any): void;
updateDevice(device: any): void;
}
//# sourceMappingURL=yeedevice.d.ts.map