diff --git a/homeassistant/components/broadlink/__init__.py b/homeassistant/components/broadlink/__init__.py index 5d996c2ee1f..559aae25abf 100644 --- a/homeassistant/components/broadlink/__init__.py +++ b/homeassistant/components/broadlink/__init__.py @@ -16,7 +16,7 @@ from .heartbeat import BroadlinkHeartbeat class BroadlinkData: """Class for sharing data within the Broadlink integration.""" - devices: dict = field(default_factory=dict) + devices: dict[str, BroadlinkDevice] = field(default_factory=dict) platforms: dict = field(default_factory=dict) heartbeat: BroadlinkHeartbeat | None = None @@ -29,7 +29,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: """Set up a Broadlink device from a config entry.""" - data = hass.data[DOMAIN] + data: BroadlinkData = hass.data[DOMAIN] if data.heartbeat is None: data.heartbeat = BroadlinkHeartbeat(hass) @@ -41,12 +41,12 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: """Unload a config entry.""" - data = hass.data[DOMAIN] + data: BroadlinkData = hass.data[DOMAIN] device = data.devices.pop(entry.entry_id) result = await device.async_unload() - if not data.devices: + if data.heartbeat and not data.devices: await data.heartbeat.async_unload() data.heartbeat = None