homebridge-aplvibe
Version:
Homebridge plugin for SleepMe devices using APL as core logic engine
36 lines • 1.46 kB
TypeScript
import { Logger } from 'homebridge';
import { APLEngine, APLResult, QueueRequest } from './types';
export declare class APLEngineImpl implements APLEngine {
private logger;
private aplProcess;
private aplPath;
private eventHandlers;
constructor(logger: Logger);
private initializeAPL;
private execAPL;
private simulateAPLExecution;
private simulateInit;
private simulateGetDevices;
private simulateRestore;
private simulateGetState;
private simulateSetState;
private simulateQueue;
private simulateProcessQueue;
private simulateTemperatureConversion;
private simulateValidateTemperature;
private simulateApplySchedule;
init(config: string): Promise<APLResult>;
getDevices(): Promise<APLResult>;
restoreAccessory(uuid: string): Promise<APLResult>;
getState(deviceId: string, characteristic: string): Promise<APLResult>;
setState(deviceId: string, characteristic: string, value: any): Promise<APLResult>;
queueRequest(request: QueueRequest): Promise<APLResult>;
processQueue(): Promise<APLResult>;
convertTemperature(value: number, unit: 'C' | 'F'): Promise<APLResult>;
validateTemperature(value: number, unit: 'C' | 'F'): Promise<APLResult>;
applySchedule(deviceId: string): Promise<APLResult>;
onEvent(event: string, handler: (data: any) => void): void;
private emitEvent;
destroy(): void;
}
//# sourceMappingURL=apl-engine.d.ts.map