import { PlatformAccessory } from 'homebridge'; import { DingzDeviceHWInfo, DingzDeviceConfig, DingzDevices } from './lib/dingzTypes'; import { AccessoryActionUrl } from './lib/commonTypes'; import { DingzDaHomebridgePlatform } from './platform'; import { DingzDaBaseAccessory } from './lib/dingzDaBaseAccessory'; /** * Platform Accessory * An instance of this class is created for each accessory your platform registers * Each accessory may expose multiple services of different service types. */ export declare class DingzAccessory extends DingzDaBaseAccessory { private readonly _platform; private readonly _accessory; private mustInit; private motionService?; private dingzStates; private motionTimer?; private config; private hw; private configTimestamp; /** * DingzAccessory constructor * @param _platform platform pointer * @param _accessory accessory pointer */ constructor(_platform: DingzDaHomebridgePlatform, _accessory: PlatformAccessory); private setOutputHandlers; /** * Set the accessory information * - Firmware * - Manufacturer * - S/N etc. */ protected reconfigureAccessory(init?: boolean): void; private setButtonCallbacks; protected getDeviceStateUpdate(): Promise; private addTemperatureService; private updateTemperature; /** * Handle the "GET" requests from HomeKit * to get the current value of the "Current Temperature" characteristic */ private getTemperature; private addLightSensorService; private updateLightSensor; private configureBlinds; private configureButtons; private reconfigureButtonService; private getButtonState; private getSwitchButtonState; private reconfigureOutput; private updateDimmerState; private setOn; /** * Handle the "GET" requests from HomeKit */ private getOn; private setBrightness; /** * Configure a WindowCovering */ private reconfigureWindowCovering; private initWindowCoveringService; private updateWindowCoveringState; private setPosition; private getPosition; private setTiltAngle; /** * Handle the "GET" requests from HomeKit */ private getTiltAngle; private getPositionState; /** * Motion Service Methods */ private addMotionService; private removeMotionService; protected updateAccessory({ deviceHwInfo, dingzConfig, }: { deviceHwInfo: DingzDeviceHWInfo; dingzConfig: DingzDeviceConfig; }): void; /** * Updates the dimemr services based on their current configuration */ private configureOutputs; private removeOutput; private addLEDService; private updateLEDState; private setLEDOn; private getLEDOn; private setLEDHue; private setLEDSaturation; private setLEDBrightness; static getConfig({ address, token, }: { address: string; token?: string; caller?: string; }): Promise<{ dingzDevices: DingzDevices; dingzConfig: DingzDeviceConfig; }>; private getDeviceMotion; private setDeviceDimmer; private setWindowCovering; /** * Set the LED on the dingz * @param callback: Characteristic callback */ private setDeviceLED; private getDeviceState; /** * Returns the callback URL for the device */ getButtonCallbackUrl(): Promise; /** * Get the right blind state. * It's complicated ... * @param index *aboslute* index value (i.e. 0/1) */ private getWindowCoveringId; /** * Enable the PIR callback */ private enablePIRCallback; } //# sourceMappingURL=dingzAccessory.d.ts.map