/** * VeSync Switch Classes */ import { VeSyncBaseDevice } from './vesyncBaseDevice'; import { VeSync } from './vesync'; interface SwitchConfig { [key: string]: { module: string; features: string[]; }; } export declare const switchConfig: SwitchConfig; /** * Base class for VeSync Switches */ export declare abstract class VeSyncSwitch extends VeSyncBaseDevice { protected details: Record; protected features: string[]; constructor(details: Record, manager: VeSync); /** * Get active time of switch */ get activeTime(): number; /** * Return true if switch is dimmable */ isDimmable(): boolean; /** * Return formatted device info to stdout */ display(): void; /** * Return JSON details for switch */ displayJSON(): string; /** * Get switch details */ abstract getDetails(): Promise; /** * Update switch details */ update(): Promise; abstract getConfig(): Promise; abstract turnOn(): Promise; abstract turnOff(): Promise; } export {};