Cleanup august dataclasses (#119938)

This commit is contained in:
J. Nick Koston 2024-06-18 18:21:19 -05:00 committed by GitHub
parent 025d861e67
commit 8f3dcd6557
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 10 deletions

View File

@ -66,7 +66,7 @@ async def async_validate_input(
}
@dataclass
@dataclass(slots=True)
class ValidateResult:
"""Result from validation."""

View File

@ -58,20 +58,13 @@ def _retrieve_linked_keypad_battery_state(detail: KeypadDetail) -> int | None:
_T = TypeVar("_T", LockDetail, KeypadDetail)
@dataclass(frozen=True)
class AugustRequiredKeysMixin(Generic[_T]):
@dataclass(frozen=True, kw_only=True)
class AugustSensorEntityDescription(SensorEntityDescription, Generic[_T]):
"""Mixin for required keys."""
value_fn: Callable[[_T], int | None]
@dataclass(frozen=True)
class AugustSensorEntityDescription(
SensorEntityDescription, AugustRequiredKeysMixin[_T]
):
"""Describes August sensor entity."""
SENSOR_TYPE_DEVICE_BATTERY = AugustSensorEntityDescription[LockDetail](
key="device_battery",
entity_category=EntityCategory.DIAGNOSTIC,