diff --git a/homeassistant/components/sensor/__init__.py b/homeassistant/components/sensor/__init__.py index 2cab631d1f0f58..55d2be6dfc6767 100644 --- a/homeassistant/components/sensor/__init__.py +++ b/homeassistant/components/sensor/__init__.py @@ -11,6 +11,8 @@ from math import ceil, floor, isfinite, log10 from typing import Any, Final, Self, cast, final +from typing_extensions import override + from homeassistant.config_entries import ConfigEntry # pylint: disable-next=hass-deprecated-import @@ -262,6 +264,7 @@ def _default_to_device_class_name(self) -> bool: return self.device_class not in (None, SensorDeviceClass.ENUM) @property + @override def device_class(self) -> SensorDeviceClass | None: """Return the class of this entity.""" if hasattr(self, "_attr_device_class"): @@ -317,6 +320,7 @@ def last_reset(self) -> datetime | None: return None @property + @override def capability_attributes(self) -> Mapping[str, Any] | None: """Return the capability attributes.""" if state_class := self.state_class: @@ -362,6 +366,7 @@ def get_initial_entity_options(self) -> er.EntityOptionsType | None: @final @property + @override def state_attributes(self) -> dict[str, Any] | None: """Return state attributes.""" if last_reset := self.last_reset: @@ -439,6 +444,7 @@ def suggested_unit_of_measurement(self) -> str | None: @final @property + @override def unit_of_measurement(self) -> str | None: """Return the unit of measurement of the entity, after unit conversion.""" # Highest priority, for registered entities: unit set by user,with fallback to @@ -468,6 +474,7 @@ def unit_of_measurement(self) -> str | None: @final @property + @override def state(self) -> Any: """Return the state of the sensor and perform unit conversions, if needed.""" native_unit_of_measurement = self.native_unit_of_measurement