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
OptionalonConnect: () => voidOptional callback to be called when MQTT connection is established
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
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