UNPKG

homebridge-lutron-caseta-leap-fast

Version:
59 lines 2.13 kB
import { DeviceDefinition, Response, SmartBridge } from 'lutron-leap'; import { API, DynamicPlatformPlugin, Logging, PlatformAccessory, PlatformConfig } from 'homebridge'; import TypedEmitter from 'typed-emitter'; type PlatformEvents = { unsolicited: (response: Response) => void; }; export interface GlobalOptions { filterPico: boolean; filterBlinds: boolean; clickSpeedLong: 'quick' | 'default' | 'relaxed' | 'disabled'; clickSpeedDouble: 'quick' | 'default' | 'relaxed' | 'disabled'; logSSLKeyDangerous: boolean; } interface BridgeAuthEntry { bridgeid: string; ca: string; key: string; cert: string; } export declare enum DeviceWireResultType { Success = 0, Skipped = 1, Error = 2 } export type DeviceWireResult = WireSuccess | DeviceSkipped | WireError; export interface WireSuccess { kind: DeviceWireResultType.Success; name: string; } export interface DeviceSkipped { kind: DeviceWireResultType.Skipped; reason: string; } export interface WireError { kind: DeviceWireResultType.Error; reason: string; } declare const LutronCasetaLeap_base: new () => TypedEmitter<PlatformEvents>; export declare class LutronCasetaLeap extends LutronCasetaLeap_base implements DynamicPlatformPlugin { readonly log: Logging; readonly config: PlatformConfig; readonly api: API; private readonly accessories; private finder; private options; private secrets; private bridgeMgr; constructor(log: Logging, config: PlatformConfig, api: API); optionsFromConfig(config: PlatformConfig): GlobalOptions; secretsFromConfig(config: PlatformConfig): Map<string, BridgeAuthEntry>; configureAccessory(accessory: PlatformAccessory): void; private handleBridgeDiscovery; private processAllDevices; processDevice(bridge: SmartBridge, d: DeviceDefinition): Promise<string>; wireAccessory(accessory: PlatformAccessory, bridge: SmartBridge, device: DeviceDefinition): Promise<DeviceWireResult>; handleUnsolicitedMessage(bridgeID: string, response: Response): void; } export {}; //# sourceMappingURL=platform.d.ts.map