diff --git a/homeassistant/components/tailscale/binary_sensor.py b/homeassistant/components/tailscale/binary_sensor.py index ecc561f0355..ee1c682c559 100644 --- a/homeassistant/components/tailscale/binary_sensor.py +++ b/homeassistant/components/tailscale/binary_sensor.py @@ -20,20 +20,13 @@ from . import TailscaleEntity from .const import DOMAIN -@dataclass -class TailscaleBinarySensorEntityDescriptionMixin: - """Mixin for required keys.""" +@dataclass(kw_only=True) +class TailscaleBinarySensorEntityDescription(BinarySensorEntityDescription): + """Describes a Tailscale binary sensor entity.""" is_on_fn: Callable[[TailscaleDevice], bool | None] -@dataclass -class TailscaleBinarySensorEntityDescription( - BinarySensorEntityDescription, TailscaleBinarySensorEntityDescriptionMixin -): - """Describes a Tailscale binary sensor entity.""" - - BINARY_SENSORS: tuple[TailscaleBinarySensorEntityDescription, ...] = ( TailscaleBinarySensorEntityDescription( key="update_available", diff --git a/homeassistant/components/tailscale/sensor.py b/homeassistant/components/tailscale/sensor.py index 75dca4ed840..f5850848c8c 100644 --- a/homeassistant/components/tailscale/sensor.py +++ b/homeassistant/components/tailscale/sensor.py @@ -21,20 +21,13 @@ from . import TailscaleEntity from .const import DOMAIN -@dataclass -class TailscaleSensorEntityDescriptionMixin: - """Mixin for required keys.""" +@dataclass(kw_only=True) +class TailscaleSensorEntityDescription(SensorEntityDescription): + """Describes a Tailscale sensor entity.""" value_fn: Callable[[TailscaleDevice], datetime | str | None] -@dataclass -class TailscaleSensorEntityDescription( - SensorEntityDescription, TailscaleSensorEntityDescriptionMixin -): - """Describes a Tailscale sensor entity.""" - - SENSORS: tuple[TailscaleSensorEntityDescription, ...] = ( TailscaleSensorEntityDescription( key="expires",