@homebridge-plugins/homebridge-air
Version:
The AirNow plugin allows you to monitor the current AirQuality for your Zip Code from HomeKit and Siri.
47 lines • 2.08 kB
TypeScript
import type { API, CharacteristicValue, HAP, Logging, PlatformAccessory, Service } from 'homebridge';
import type { AirPlatform } from '../platform.js';
import type { AirPlatformConfig, devicesConfig } from '../settings.js';
export declare abstract class deviceBase {
protected readonly platform: AirPlatform;
protected accessory: PlatformAccessory;
protected device: devicesConfig;
readonly api: API;
readonly log: Logging;
readonly config: AirPlatformConfig;
protected readonly hap: HAP;
protected deviceLogging: string;
protected deviceRefreshRate: number;
protected deviceUpdateRate: number;
protected devicePushRate: number;
protected deviceFirmwareVersion: string;
constructor(platform: AirPlatform, accessory: PlatformAccessory, device: devicesConfig);
getDeviceLogSettings(device: devicesConfig): Promise<void>;
getDeviceRateSettings(device: devicesConfig): Promise<void>;
getDeviceConfigSettings(device: devicesConfig): Promise<void>;
getDeviceContext(accessory: PlatformAccessory, device: devicesConfig): Promise<void>;
/**
* Update the characteristic value and log the change.
*
* @param Service Service
* @param Characteristic Characteristic
* @param CharacteristicValue CharacteristicValue | undefined
* @param CharacteristicName string
* @return: void
*
*/
updateCharacteristic(Service: Service, Characteristic: any, CharacteristicValue: CharacteristicValue | undefined, CharacteristicName: string): Promise<void>;
/**
* Logging for Device
*/
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>;
enablingDeviceLogging(): Promise<boolean>;
}
//# sourceMappingURL=device.d.ts.map