import type { TServiceParams } from "@digital-alchemy/core"; import type { HumidifierDeviceClass } from "@digital-alchemy/hass"; import type { AddEntityOptions, BasicAddParams, CallbackData, SettableConfiguration } from "../../helpers/index.mts"; export type HumidifierConfiguration = { /** * Returns the current status of the device. */ action?: SettableConfiguration; /** * The available modes. Requires `SUPPORT_MODES`. */ available_modes?: `${HumidifierModes}`[]; /** * The current humidity measured by the device. */ current_humidity?: SettableConfiguration; /** * Type of hygrostat */ device_class?: `${HumidifierDeviceClass}`; /** * Whether the device is on or off. */ is_on?: SettableConfiguration; /** * The maximum humidity. */ max_humidity?: SettableConfiguration; /** * The minimum humidity. */ min_humidity?: SettableConfiguration; /** * The current active mode. Requires `SUPPORT_MODES`. */ mode?: SettableConfiguration<`${HumidifierModes}`, DATA>; /** * The target humidity the device is trying to reach. */ target_humidity?: SettableConfiguration; }; export type HumidifierModes = "normal" | "eco" | "away" | "boost" | "comfort" | "home" | "sleep" | "auto" | "baby"; export type HumidifierEvents = { set_humidity: { humidity: number; }; turn_on: {}; turn_off: {}; }; export declare function VirtualHumidifier({ context, synapse }: TServiceParams): >>(options: AddEntityOptions, HumidifierEvents, PARAMS["attributes"], PARAMS["locals"], DATA>) => import("../../helpers/common-config.mts").SynapseEntityProxy, HumidifierEvents, PARAMS["attributes"], PARAMS["locals"], DATA, import("@digital-alchemy/hass").PICK_ENTITY>;