import type { DeviceConfigEntry, GoveeLogging, GoveePlatformAccessoryWithControl, GoveePluginConfig, LANDevice, LANParams } from '../types.js'; interface LANPlatformRef { log: GoveeLogging; config: GoveePluginConfig; deviceConf: Record>; receiveUpdateLAN(deviceId: string, data: Record, ip: string): void; } export default class LANClient { private log; private config; lanDevices: LANDevice[]; private receiver; private sender; private latestDeviceScanTimestamp; private connectionPromise; private devicesPolling?; private statusPolling?; constructor(platform: LANPlatformRef); sendScanCommand(): void; getDevices(): Promise; sendDeviceStateRequest(device: LANDevice): Promise; updateDevice(accessory: GoveePlatformAccessoryWithControl, params: LANParams): Promise; startDevicesPolling(): void; startStatusPolling(): void; close(): void; } export {};