The configuration type specific to this component
Creates a new discoverable entity
The configuration type specific to this component
The component settings including MQTT configuration
Array of state topic names
Callback to be called when state changes
OptionalonConnect: () => void
Optional callback to be called when MQTT connection is established
Optionaloptions: DiscoverableOptions
Optional behavioural flags. See DiscoverableOptions.
ProtectedattributesMQTT topic for entity attributes
ProtectedavailabilityMQTT topic for entity availability status
ProtectedbaseBase MQTT topic name for this entity
ProtectedcomponentThe component configuration containing entity-specific settings
ProtectedconfigMQTT topic for entity configuration
ProtectedidentifierUnique identifier for this entity
ProtectedloggerLogger instance for debugging and error reporting
ProtectedmqttThe MQTT client instance used for communication
ProtectedsettingsThe component settings including MQTT configuration
ProtectedstateCallback function to handle state changes
ProtectedstateList of MQTT topics for entity state
ProtectedwroteFlag indicating whether configuration has been written to MQTT
ProtectedgetGets the complete configuration for this entity including MQTT topics
The resolved component configuration with all required MQTT topics
Clears the entity's retained discovery configuration, causing Home Assistant to remove the entity.
Use this when an entity that may have been published by a previous run should no longer exist. Because writeConfig retains its payload, simply not calling it leaves the entity in place indefinitely.
Sets additional attributes for the entity
Key-value pairs of attributes to set
Sets the availability state of the entity
True if the entity is available, false otherwise
Writes the entity's configuration to MQTT for Home Assistant discovery Also sets the entity's initial availability state if not manually managed
Base class for Home Assistant MQTT discoverable entities. Handles the MQTT discovery protocol and provides common functionality for all entity types.
Type Param: TState
The type of state data this component can handle