UNPKG

homebridge-resideo

Version:

The Resideo plugin allows you to access your Resideo device(s) from HomeKit.

96 lines 4.68 kB
import type { AxiosInstance } from 'axios'; import type { API, DynamicPlatformPlugin, HAP, Logging, PlatformAccessory } from 'homebridge'; import type { accessoryAttribute, devicesConfig, location, locations, options, resideoDevice, ResideoPlatformConfig, sensorAccessory, T9groups } from './settings.js'; export declare class ResideoPlatform implements DynamicPlatformPlugin { accessories: PlatformAccessory[]; readonly api: API; readonly log: Logging; protected readonly hap: HAP; config: ResideoPlatformConfig; sensorData: never[]; refreshInterval: any; locations?: locations; sensorAccessory: sensorAccessory; firmware: accessoryAttribute['softwareRevision']; platformConfig: ResideoPlatformConfig; platformLogging: options['logging']; platformRefreshRate: options['refreshRate']; platformPushRate: options['pushRate']; platformUpdateRate: options['updateRate']; platformMaxRetries: options['maxRetries']; platformDelayBetweenRetries: options['delayBetweenRetries']; debugMode: boolean; version: string; action: string; axios: AxiosInstance; constructor(log: Logging, config: ResideoPlatformConfig, api: API); configureAccessory(accessory: PlatformAccessory): void; verifyConfig(): void; refreshAccessToken(): Promise<void>; getAccessToken(): Promise<void>; updateRefreshToken(newRefreshToken: string): Promise<void>; discoverlocations(): Promise<location[]>; getCurrentSensorData(location: location, device: resideoDevice & devicesConfig, group: T9groups): Promise<any>; private normalizeSensorDate; getSoftwareRevision(location: location, device: resideoDevice & devicesConfig): Promise<any>; private discoverDevices; private mergeByDeviceID; private deviceClass; private discoverRoomSensors; private roomsensordisplaymethod; private createThermostat; private createLeak; private createValve; private createRoomSensors; private createRoomSensorThermostat; registerDevice(device: resideoDevice & devicesConfig): Promise<boolean>; private leaksensorFirmwareNewAccessory; private leaksensorFirmwareExistingAccessory; private valveFirmwareNewAccessory; private valveFirmwareExistingAccessory; private roomsensorFirmwareNewAccessory; private roomsensorFirmwareExistingAccessory; thermostatFirmwareNewAccessory(device: resideoDevice & devicesConfig, accessory: PlatformAccessory, location: any): Promise<void>; thermostatFirmwareExistingAccessory(device: resideoDevice & devicesConfig, existingAccessory: PlatformAccessory, location: any): Promise<void>; externalOrPlatform(device: resideoDevice & devicesConfig, accessory: PlatformAccessory): Promise<void>; externalAccessory(accessory: PlatformAccessory): Promise<void>; unregisterPlatformAccessories(existingAccessory: PlatformAccessory): void; apiError(e: any): void; statusCode(statusCode: number, action: string): Promise<void>; getPlatformLogSettings(): Promise<void>; getPlatformRateSettings(): Promise<void>; getPlatformConfigSettings(): Promise<void>; /** * Asynchronously retrieves the version of the plugin from the package.json file. * * This method reads the package.json file located in the parent directory, * parses its content to extract the version, and logs the version using the debug logger. * The extracted version is then assigned to the `version` property of the class. * * @returns {Promise<void>} A promise that resolves when the version has been retrieved and logged. */ getVersion(): Promise<void>; /** * Validate and clean a string value for a Name Characteristic. * @param displayName - The display name of the accessory. * @param name - The name of the characteristic. * @param value - The value to be validated and cleaned. * @returns The cleaned string value. */ validateAndCleanDisplayName(displayName: string, name: string, value: string): Promise<string>; /** * If device level logging is turned on, log to log.warn * Otherwise send debug logs to log.debug */ infoLog(...log: any[]): Promise<void>; successLog(...log: any[]): Promise<void>; debugSuccessLog(...log: any[]): Promise<void>; warnLog(...log: any[]): Promise<void>; debugWarnLog(...log: any[]): Promise<void>; errorLog(...log: any[]): Promise<void>; debugErrorLog(...log: any[]): Promise<void>; debugLog(...log: any[]): Promise<void>; loggingIsDebug(): Promise<boolean>; enablingPlatformLogging(): Promise<boolean>; } //# sourceMappingURL=platform.d.ts.map