The configuration type specific to this component
Creates a new discoverable entity
The component settings including MQTT configuration
Array of state topic names
Callback to be called when state changes
Optional
onConnect: () => voidOptional callback to be called when MQTT connection is established
Protected
attributesMQTT topic for entity attributes
Protected
availabilityMQTT topic for entity availability status
Protected
baseBase MQTT topic name for this entity
Protected
componentThe component configuration containing entity-specific settings
Protected
configMQTT topic for entity configuration
Protected
identifierUnique identifier for this entity
Protected
loggerLogger instance for debugging and error reporting
Protected
mqttThe MQTT client instance used for communication
Protected
settingsThe component settings including MQTT configuration
Protected
stateCallback function to handle state changes
Protected
stateList of MQTT topics for entity state
Protected
wroteFlag indicating whether configuration has been written to MQTT
Protected
getGets the complete configuration for this entity including MQTT topics
The resolved component configuration with all required MQTT topics
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