1 """Describe homeassistant logbook events."""
3 from __future__
import annotations
5 from collections.abc
import Callable
10 LOGBOOK_ENTRY_MESSAGE,
18 from .const
import DOMAIN
20 EVENT_TO_NAME: dict[EventType[Any] | str, str] = {
21 EVENT_HOMEASSISTANT_STOP:
"stopped",
22 EVENT_HOMEASSISTANT_START:
"started",
29 async_describe_event: Callable[
30 [str, EventType[NoEventData] | str, Callable[[Event], dict[str, str]]],
None
33 """Describe logbook events."""
36 def async_describe_hass_event(event: Event[NoEventData]) -> dict[str, str]:
37 """Describe homeassistant logbook event."""
39 LOGBOOK_ENTRY_NAME:
"Home Assistant",
40 LOGBOOK_ENTRY_MESSAGE: EVENT_TO_NAME[event.event_type],
41 LOGBOOK_ENTRY_ICON:
"mdi:home-assistant",
44 async_describe_event(DOMAIN, EVENT_HOMEASSISTANT_STOP, async_describe_hass_event)
45 async_describe_event(DOMAIN, EVENT_HOMEASSISTANT_START, async_describe_hass_event)
None async_describe_events(HomeAssistant hass, Callable[[str, EventType[NoEventData]|str, Callable[[Event], dict[str, str]]], None] async_describe_event)