/** * Humidity Service Handler * * Implements the HomeKit HumiditySensor service for Dyson devices. * Humidity is reported directly as a percentage (no conversion needed). */ import type { API, Logging, PlatformAccessory, Service } from 'homebridge'; import type { DysonDevice } from '../../devices/dysonDevice.js'; /** * Configuration for HumidityService */ export interface HumidityServiceConfig { accessory: PlatformAccessory; device: DysonDevice; api: API; log: Logging; /** Humidity offset (can be positive or negative) */ humidityOffset?: number; /** Primary service to link this service to */ primaryService?: Service; } /** * HumidityService handles the HumiditySensor HomeKit service * * Maps HomeKit characteristics to Dyson device state: * - CurrentRelativeHumidity (0-100%) ↔ humidity (0-100%) */ export declare class HumidityService { private readonly service; private readonly device; private readonly log; private readonly api; private readonly humidityOffset; private readonly boundHandleStateChange; constructor(config: HumidityServiceConfig); /** * Get the underlying HomeKit service */ getService(): Service; /** * Clean up event listeners */ destroy(): void; /** * Handle CurrentRelativeHumidity GET request * Returns humidity as percentage */ private handleHumidityGet; /** * Get humidity value with offset and default fallback * * @param humidity - Humidity percentage from device * @returns Humidity percentage (0-100) with offset applied, or default if unavailable */ private getHumidity; /** * Handle device state changes * Updates HomeKit characteristic to reflect current device state */ private handleStateChange; /** * Update characteristic from current device state * Call this after connecting to sync HomeKit with device */ updateFromState(): void; } //# sourceMappingURL=humidityService.d.ts.map