mqtt-discovery-types
Version:
Typescript Types For HomeAssistant MQTT Discovery
58 lines (49 loc) • 1.86 kB
TypeScript
import type { OptionallyStatefulCommandEntityDiscovery } from "./BaseEntityDiscovery.ts";
/**
* @see https://www.home-assistant.io/integrations/number/#device-class
*/
export type NumberDeviceClass =
'None' | 'apparent_power' | 'aqi' | 'atmospheric_pressure' | 'battery' | 'carbon_dioxide' | 'carbon_monoxide' |
'current' | 'data_rate' | 'data_size' | 'distance' | 'energy' | 'energy_storage' | 'frequency' | 'gas' | 'humidity' |
'illuminance' | 'irradiance' | 'moisture' | 'nitrogen_dioxide' | 'nitrogen_monoxide' | 'nitrous_oxide' | 'ozone' |
'ph' | 'pm1' | 'pm10' | 'pm25' | 'power' | 'power_factor' | 'pressure' | 'precipitation' | 'precipitation_intensity' |
'reactive_power' | 'signal_strength' | 'sound_pressure' | 'speed' | 'sulfur_dioxide' | 'temperature' | 'volatile_organic_compounds' |
'voltage' | 'volume' | 'volume_storage' | 'water' | 'weight' | 'wind_speed';
/**
* @see https://www.home-assistant.io/integrations/number.mqtt/#configuration-variables
*/
export interface NumberDiscovery extends OptionallyStatefulCommandEntityDiscovery {
device_class?: NumberDeviceClass;
/**
* The minimum value.
* @defaultValue 1
*/
min?: number;
/**
* The maximum value.
* @defaultValue 100
*/
max?: number;
/**
* Control how the slider will be rendered.
* @defaultValue 'auto'
*/
mode?: 'slider' | 'box' | 'auto';
/**
* Flag that defines if the number works in optimistic mode.
*/
optimistic?: boolean;
/**
* A special payload that resets the state to `unknown` when received on `state_topic`.
*/
payload_reset?: string;
/**
* Step value. Smallest value is 0.001.
* @defaultValue 1
*/
step: number;
/**
* Defines unit of measurement of the sensor, if any.
*/
unit_of_measurement?: string;
}