diff --git a/homeassistant/components/netgear/button.py b/homeassistant/components/netgear/button.py index 307bfab92d4..e5b9ec209c7 100644 --- a/homeassistant/components/netgear/button.py +++ b/homeassistant/components/netgear/button.py @@ -20,20 +20,13 @@ from .entity import NetgearRouterCoordinatorEntity from .router import NetgearRouter -@dataclass(frozen=True) -class NetgearButtonEntityDescriptionRequired: - """Required attributes of NetgearButtonEntityDescription.""" +@dataclass(frozen=True, kw_only=True) +class NetgearButtonEntityDescription(ButtonEntityDescription): + """Class describing Netgear button entities.""" action: Callable[[NetgearRouter], Callable[[], Coroutine[Any, Any, None]]] -@dataclass(frozen=True) -class NetgearButtonEntityDescription( - ButtonEntityDescription, NetgearButtonEntityDescriptionRequired -): - """Class describing Netgear button entities.""" - - BUTTONS = [ NetgearButtonEntityDescription( key="reboot", diff --git a/homeassistant/components/netgear/switch.py b/homeassistant/components/netgear/switch.py index 34a4258b085..e39d4030f3f 100644 --- a/homeassistant/components/netgear/switch.py +++ b/homeassistant/components/netgear/switch.py @@ -36,17 +36,15 @@ SWITCH_TYPES = [ class NetgearSwitchEntityDescriptionRequired: """Required attributes of NetgearSwitchEntityDescription.""" + +@dataclass(frozen=True, kw_only=True) +class NetgearSwitchEntityDescription(SwitchEntityDescription): + """Class describing Netgear Switch entities.""" + update: Callable[[NetgearRouter], bool] action: Callable[[NetgearRouter], bool] -@dataclass(frozen=True) -class NetgearSwitchEntityDescription( - SwitchEntityDescription, NetgearSwitchEntityDescriptionRequired -): - """Class describing Netgear Switch entities.""" - - ROUTER_SWITCH_TYPES = [ NetgearSwitchEntityDescription( key="access_control",