homeassistant-stubs 2025.4.3__py3-none-any.whl → 2025.5.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (402) hide show
  1. homeassistant-stubs/components/adax/__init__.pyi +5 -4
  2. homeassistant-stubs/components/adax/climate.pyi +25 -17
  3. homeassistant-stubs/components/adax/const.pyi +2 -0
  4. homeassistant-stubs/components/adax/coordinator.pyi +21 -0
  5. homeassistant-stubs/components/androidtv_remote/media_player.pyi +1 -1
  6. homeassistant-stubs/components/apcupsd/binary_sensor.pyi +1 -1
  7. homeassistant-stubs/components/apcupsd/coordinator.pyi +2 -0
  8. homeassistant-stubs/components/apcupsd/sensor.pyi +1 -1
  9. homeassistant-stubs/components/apsystems/coordinator.pyi +1 -0
  10. homeassistant-stubs/components/apsystems/switch.pyi +1 -1
  11. homeassistant-stubs/components/asuswrt/router.pyi +2 -3
  12. homeassistant-stubs/components/automation/__init__.pyi +2 -2
  13. homeassistant-stubs/components/automation/config.pyi +2 -2
  14. homeassistant-stubs/components/automation/const.pyi +0 -4
  15. homeassistant-stubs/components/axis/hub/api.pyi +2 -2
  16. homeassistant-stubs/components/backup/config.pyi +10 -2
  17. homeassistant-stubs/components/backup/onboarding.pyi +30 -0
  18. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +3 -0
  19. homeassistant-stubs/components/bluetooth/storage.pyi +1 -1
  20. homeassistant-stubs/components/bond/config_flow.pyi +3 -0
  21. homeassistant-stubs/components/bosch_alarm/__init__.pyi +1 -1
  22. homeassistant-stubs/components/bosch_alarm/alarm_control_panel.pyi +2 -11
  23. homeassistant-stubs/components/bosch_alarm/config_flow.pyi +5 -1
  24. homeassistant-stubs/components/bosch_alarm/diagnostics.pyi +11 -0
  25. homeassistant-stubs/components/bosch_alarm/entity.pyi +29 -0
  26. homeassistant-stubs/components/bosch_alarm/sensor.pyi +30 -0
  27. homeassistant-stubs/components/cambridge_audio/media_player.pyi +2 -0
  28. homeassistant-stubs/components/canary/__init__.pyi +1 -5
  29. homeassistant-stubs/components/canary/config_flow.pyi +0 -1
  30. homeassistant-stubs/components/cloud/const.pyi +1 -0
  31. homeassistant-stubs/components/cloud/http_api.pyi +1 -1
  32. homeassistant-stubs/components/cloud/onboarding.pyi +35 -0
  33. homeassistant-stubs/components/cloud/tts.pyi +4 -1
  34. homeassistant-stubs/components/comelit/__init__.pyi +1 -0
  35. homeassistant-stubs/components/comelit/alarm_control_panel.pyi +0 -1
  36. homeassistant-stubs/components/comelit/binary_sensor.pyi +0 -1
  37. homeassistant-stubs/components/comelit/climate.pyi +2 -7
  38. homeassistant-stubs/components/comelit/config_flow.pyi +1 -0
  39. homeassistant-stubs/components/comelit/coordinator.pyi +3 -2
  40. homeassistant-stubs/components/comelit/cover.pyi +2 -7
  41. homeassistant-stubs/components/comelit/entity.pyi +11 -0
  42. homeassistant-stubs/components/comelit/humidifier.pyi +2 -6
  43. homeassistant-stubs/components/comelit/light.pyi +2 -9
  44. homeassistant-stubs/components/comelit/sensor.pyi +2 -7
  45. homeassistant-stubs/components/comelit/switch.pyi +2 -6
  46. homeassistant-stubs/components/comelit/utils.pyi +5 -0
  47. homeassistant-stubs/components/command_line/__init__.pyi +1 -1
  48. homeassistant-stubs/components/command_line/binary_sensor.pyi +2 -2
  49. homeassistant-stubs/components/command_line/cover.pyi +2 -2
  50. homeassistant-stubs/components/command_line/sensor.pyi +2 -2
  51. homeassistant-stubs/components/command_line/switch.pyi +2 -2
  52. homeassistant-stubs/components/config/config_entries.pyi +3 -1
  53. homeassistant-stubs/components/demo/light.pyi +3 -2
  54. homeassistant-stubs/components/demo/media_player.pyi +4 -0
  55. homeassistant-stubs/components/device_tracker/config_entry.pyi +2 -2
  56. homeassistant-stubs/components/devolo_home_control/__init__.pyi +2 -2
  57. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +1 -2
  58. homeassistant-stubs/components/dhcp/__init__.pyi +6 -13
  59. homeassistant-stubs/components/dhcp/const.pyi +5 -0
  60. homeassistant-stubs/components/dhcp/helpers.pyi +8 -0
  61. homeassistant-stubs/components/dhcp/models.pyi +25 -0
  62. homeassistant-stubs/components/dhcp/websocket_api.pyi +13 -0
  63. homeassistant-stubs/components/ecovacs/image.pyi +1 -0
  64. homeassistant-stubs/components/eheimdigital/number.pyi +38 -0
  65. homeassistant-stubs/components/eheimdigital/sensor.pyi +32 -0
  66. homeassistant-stubs/components/eheimdigital/switch.pyi +26 -0
  67. homeassistant-stubs/components/eheimdigital/time.pyi +37 -0
  68. homeassistant-stubs/components/elevenlabs/tts.pyi +2 -2
  69. homeassistant-stubs/components/energy/sensor.pyi +5 -0
  70. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +3 -1
  71. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +12 -1
  72. homeassistant-stubs/components/esphome/__init__.pyi +5 -4
  73. homeassistant-stubs/components/esphome/alarm_control_panel.pyi +1 -0
  74. homeassistant-stubs/components/esphome/assist_satellite.pyi +7 -6
  75. homeassistant-stubs/components/esphome/binary_sensor.pyi +5 -13
  76. homeassistant-stubs/components/esphome/button.pyi +2 -0
  77. homeassistant-stubs/components/esphome/camera.pyi +2 -0
  78. homeassistant-stubs/components/esphome/climate.pyi +1 -0
  79. homeassistant-stubs/components/esphome/config_flow.pyi +26 -5
  80. homeassistant-stubs/components/esphome/const.pyi +2 -1
  81. homeassistant-stubs/components/esphome/coordinator.pyi +4 -3
  82. homeassistant-stubs/components/esphome/cover.pyi +2 -0
  83. homeassistant-stubs/components/esphome/dashboard.pyi +1 -1
  84. homeassistant-stubs/components/esphome/date.pyi +2 -0
  85. homeassistant-stubs/components/esphome/datetime.pyi +2 -0
  86. homeassistant-stubs/components/esphome/diagnostics.pyi +2 -0
  87. homeassistant-stubs/components/esphome/entity.pyi +12 -9
  88. homeassistant-stubs/components/esphome/event.pyi +2 -0
  89. homeassistant-stubs/components/esphome/fan.pyi +4 -3
  90. homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +10 -2
  91. homeassistant-stubs/components/esphome/light.pyi +8 -7
  92. homeassistant-stubs/components/esphome/lock.pyi +6 -4
  93. homeassistant-stubs/components/esphome/manager.pyi +7 -3
  94. homeassistant-stubs/components/esphome/media_player.pyi +2 -1
  95. homeassistant-stubs/components/esphome/number.pyi +1 -0
  96. homeassistant-stubs/components/esphome/repairs.pyi +21 -2
  97. homeassistant-stubs/components/esphome/select.pyi +3 -2
  98. homeassistant-stubs/components/esphome/sensor.pyi +4 -2
  99. homeassistant-stubs/components/esphome/switch.pyi +3 -1
  100. homeassistant-stubs/components/esphome/text.pyi +1 -0
  101. homeassistant-stubs/components/esphome/time.pyi +2 -0
  102. homeassistant-stubs/components/esphome/update.pyi +8 -9
  103. homeassistant-stubs/components/esphome/valve.pyi +3 -1
  104. homeassistant-stubs/components/fritz/binary_sensor.pyi +1 -0
  105. homeassistant-stubs/components/fritz/button.pyi +1 -0
  106. homeassistant-stubs/components/fritz/coordinator.pyi +3 -4
  107. homeassistant-stubs/components/fritz/device_tracker.pyi +1 -0
  108. homeassistant-stubs/components/fritz/image.pyi +1 -0
  109. homeassistant-stubs/components/fritz/sensor.pyi +1 -0
  110. homeassistant-stubs/components/fritz/switch.pyi +1 -0
  111. homeassistant-stubs/components/fritz/update.pyi +1 -0
  112. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +2 -5
  113. homeassistant-stubs/components/fritzbox/climate.pyi +4 -3
  114. homeassistant-stubs/components/fritzbox/coordinator.pyi +1 -1
  115. homeassistant-stubs/components/fritzbox/sensor.pyi +3 -6
  116. homeassistant-stubs/components/heos/const.pyi +4 -0
  117. homeassistant-stubs/components/heos/media_player.pyi +5 -4
  118. homeassistant-stubs/components/heos/services.pyi +22 -2
  119. homeassistant-stubs/components/history/websocket_api.pyi +1 -1
  120. homeassistant-stubs/components/history_stats/data.pyi +2 -1
  121. homeassistant-stubs/components/home_connect/__init__.pyi +0 -1
  122. homeassistant-stubs/components/home_connect/binary_sensor.pyi +2 -13
  123. homeassistant-stubs/components/home_connect/coordinator.pyi +5 -0
  124. homeassistant-stubs/components/home_connect/repairs.pyi +10 -0
  125. homeassistant-stubs/components/home_connect/select.pyi +7 -3
  126. homeassistant-stubs/components/home_connect/sensor.pyi +5 -3
  127. homeassistant-stubs/components/homee/climate.pyi +47 -0
  128. homeassistant-stubs/components/homee/const.pyi +1 -0
  129. homeassistant-stubs/components/homee/number.pyi +12 -4
  130. homeassistant-stubs/components/homekit/__init__.pyi +5 -3
  131. homeassistant-stubs/components/homekit/accessories.pyi +2 -1
  132. homeassistant-stubs/components/homekit/const.pyi +13 -0
  133. homeassistant-stubs/components/homekit/type_air_purifiers.pyi +69 -0
  134. homeassistant-stubs/components/homekit/type_fans.pyi +7 -4
  135. homeassistant-stubs/components/homekit/type_media_players.pyi +2 -1
  136. homeassistant-stubs/components/homekit/type_switches.pyi +1 -1
  137. homeassistant-stubs/components/homekit/type_triggers.pyi +1 -1
  138. homeassistant-stubs/components/homekit/util.pyi +2 -1
  139. homeassistant-stubs/components/http/headers.pyi +6 -0
  140. homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +3 -1
  141. homeassistant-stubs/components/huawei_lte/config_flow.pyi +1 -1
  142. homeassistant-stubs/components/huawei_lte/entity.pyi +0 -3
  143. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
  144. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +2 -1
  145. homeassistant-stubs/components/hyperion/__init__.pyi +12 -5
  146. homeassistant-stubs/components/hyperion/camera.pyi +3 -4
  147. homeassistant-stubs/components/hyperion/const.pyi +0 -3
  148. homeassistant-stubs/components/hyperion/light.pyi +4 -6
  149. homeassistant-stubs/components/hyperion/sensor.pyi +3 -4
  150. homeassistant-stubs/components/hyperion/switch.pyi +3 -4
  151. homeassistant-stubs/components/incomfort/climate.pyi +1 -2
  152. homeassistant-stubs/components/iron_os/__init__.pyi +1 -3
  153. homeassistant-stubs/components/iron_os/config_flow.pyi +3 -0
  154. homeassistant-stubs/components/iron_os/coordinator.pyi +4 -2
  155. homeassistant-stubs/components/iron_os/entity.pyi +2 -0
  156. homeassistant-stubs/components/iron_os/update.pyi +4 -2
  157. homeassistant-stubs/components/isy994/entity.pyi +1 -0
  158. homeassistant-stubs/components/isy994/services.pyi +1 -0
  159. homeassistant-stubs/components/isy994/switch.pyi +1 -1
  160. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +1 -2
  161. homeassistant-stubs/components/jewish_calendar/const.pyi +1 -0
  162. homeassistant-stubs/components/jewish_calendar/entity.pyi +0 -1
  163. homeassistant-stubs/components/jewish_calendar/sensor.pyi +1 -0
  164. homeassistant-stubs/components/jewish_calendar/service.pyi +4 -3
  165. homeassistant-stubs/components/kulersky/__init__.pyi +14 -0
  166. homeassistant-stubs/components/kulersky/config_flow.pyi +17 -0
  167. homeassistant-stubs/components/kulersky/const.pyi +4 -0
  168. homeassistant-stubs/components/kulersky/light.pyi +34 -0
  169. homeassistant-stubs/components/lamarzocco/__init__.pyi +5 -3
  170. homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +3 -7
  171. homeassistant-stubs/components/lamarzocco/calendar.pyi +3 -4
  172. homeassistant-stubs/components/lamarzocco/config_flow.pyi +5 -4
  173. homeassistant-stubs/components/lamarzocco/coordinator.pyi +16 -16
  174. homeassistant-stubs/components/lamarzocco/diagnostics.pyi +3 -8
  175. homeassistant-stubs/components/lamarzocco/entity.pyi +1 -6
  176. homeassistant-stubs/components/lamarzocco/number.pyi +4 -29
  177. homeassistant-stubs/components/lamarzocco/select.pyi +3 -8
  178. homeassistant-stubs/components/lamarzocco/sensor.pyi +11 -24
  179. homeassistant-stubs/components/lamarzocco/switch.pyi +6 -5
  180. homeassistant-stubs/components/lamarzocco/update.pyi +4 -1
  181. homeassistant-stubs/components/lcn/__init__.pyi +4 -3
  182. homeassistant-stubs/components/lcn/entity.pyi +3 -3
  183. homeassistant-stubs/components/lcn/helpers.pyi +2 -2
  184. homeassistant-stubs/components/lcn/websocket.pyi +1 -1
  185. homeassistant-stubs/components/linkplay/__init__.pyi +1 -1
  186. homeassistant-stubs/components/linkplay/const.pyi +8 -2
  187. homeassistant-stubs/components/linkplay/media_player.pyi +8 -4
  188. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -1
  189. homeassistant-stubs/components/logger/__init__.pyi +1 -1
  190. homeassistant-stubs/components/logger/helpers.pyi +4 -2
  191. homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
  192. homeassistant-stubs/components/matter/entity.pyi +1 -0
  193. homeassistant-stubs/components/matter/select.pyi +1 -1
  194. homeassistant-stubs/components/matter/sensor.pyi +3 -1
  195. homeassistant-stubs/components/matter/switch.pyi +20 -0
  196. homeassistant-stubs/components/matter/water_heater.pyi +39 -0
  197. homeassistant-stubs/components/mcp/application_credentials.pyi +12 -0
  198. homeassistant-stubs/components/mcp/config_flow.pyi +27 -6
  199. homeassistant-stubs/components/mcp/const.pyi +3 -0
  200. homeassistant-stubs/components/mcp/coordinator.pyi +8 -5
  201. homeassistant-stubs/components/media_player/__init__.pyi +7 -3
  202. homeassistant-stubs/components/media_player/browse_media.pyi +16 -1
  203. homeassistant-stubs/components/media_player/const.pyi +4 -0
  204. homeassistant-stubs/components/media_player/errors.pyi +1 -0
  205. homeassistant-stubs/components/media_source/error.pyi +1 -0
  206. homeassistant-stubs/components/met_eireann/__init__.pyi +2 -2
  207. homeassistant-stubs/components/met_eireann/weather.pyi +3 -3
  208. homeassistant-stubs/components/mjpeg/config_flow.pyi +2 -2
  209. homeassistant-stubs/components/motionmount/select.pyi +1 -1
  210. homeassistant-stubs/components/mqtt/config_flow.pyi +18 -4
  211. homeassistant-stubs/components/mqtt/const.pyi +3 -0
  212. homeassistant-stubs/components/mqtt/device_tracker.pyi +11 -14
  213. homeassistant-stubs/components/mqtt/entity.pyi +3 -0
  214. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -2
  215. homeassistant-stubs/components/mqtt/light/schema_json.pyi +3 -2
  216. homeassistant-stubs/components/music_assistant/media_browser.pyi +17 -2
  217. homeassistant-stubs/components/music_assistant/media_player.pyi +3 -2
  218. homeassistant-stubs/components/network/__init__.pyi +2 -0
  219. homeassistant-stubs/components/ntfy/__init__.pyi +16 -0
  220. homeassistant-stubs/components/ntfy/config_flow.pyi +29 -0
  221. homeassistant-stubs/components/ntfy/const.pyi +6 -0
  222. homeassistant-stubs/components/ntfy/diagnostics.pyi +7 -0
  223. homeassistant-stubs/components/ntfy/notify.pyi +25 -0
  224. homeassistant-stubs/components/nut/__init__.pyi +7 -3
  225. homeassistant-stubs/components/nut/config_flow.pyi +11 -14
  226. homeassistant-stubs/components/nut/const.pyi +0 -1
  227. homeassistant-stubs/components/nut/device_action.pyi +5 -1
  228. homeassistant-stubs/components/nut/sensor.pyi +6 -3
  229. homeassistant-stubs/components/ohme/__init__.pyi +15 -0
  230. homeassistant-stubs/components/ohme/button.pyi +26 -0
  231. homeassistant-stubs/components/ohme/config_flow.pyi +17 -0
  232. homeassistant-stubs/components/ohme/const.pyi +5 -0
  233. homeassistant-stubs/components/ohme/coordinator.pyi +44 -0
  234. homeassistant-stubs/components/ohme/diagnostics.pyi +5 -0
  235. homeassistant-stubs/components/ohme/entity.pyi +23 -0
  236. homeassistant-stubs/components/ohme/number.pyi +30 -0
  237. homeassistant-stubs/components/ohme/select.pyi +33 -0
  238. homeassistant-stubs/components/ohme/sensor.pyi +26 -0
  239. homeassistant-stubs/components/ohme/services.pyi +19 -0
  240. homeassistant-stubs/components/ohme/switch.pyi +45 -0
  241. homeassistant-stubs/components/ohme/time.pyi +30 -0
  242. homeassistant-stubs/components/onboarding/__init__.pyi +1 -0
  243. homeassistant-stubs/components/onboarding/views.pyi +29 -43
  244. homeassistant-stubs/components/oncue/__init__.pyi +5 -11
  245. homeassistant-stubs/components/oncue/config_flow.pyi +2 -13
  246. homeassistant-stubs/components/onewire/sensor.pyi +1 -2
  247. homeassistant-stubs/components/onkyo/config_flow.pyi +2 -3
  248. homeassistant-stubs/components/onkyo/const.pyi +0 -2
  249. homeassistant-stubs/components/onkyo/media_player.pyi +3 -14
  250. homeassistant-stubs/components/openai_conversation/config_flow.pyi +3 -3
  251. homeassistant-stubs/components/openai_conversation/const.pyi +1 -0
  252. homeassistant-stubs/components/openai_conversation/conversation.pyi +1 -1
  253. homeassistant-stubs/components/overkiz/climate/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +4 -1
  254. homeassistant-stubs/components/overkiz/climate/atlantic_electrical_towel_dryer.pyi +2 -1
  255. homeassistant-stubs/components/overkiz/config_flow.pyi +1 -7
  256. homeassistant-stubs/components/overkiz/entity.pyi +2 -1
  257. homeassistant-stubs/components/overkiz/number.pyi +1 -1
  258. homeassistant-stubs/components/overkiz/sensor.pyi +1 -1
  259. homeassistant-stubs/components/pegel_online/__init__.pyi +13 -0
  260. homeassistant-stubs/components/pegel_online/config_flow.pyi +15 -0
  261. homeassistant-stubs/components/pegel_online/const.pyi +6 -0
  262. homeassistant-stubs/components/pegel_online/coordinator.pyi +16 -0
  263. homeassistant-stubs/components/pegel_online/diagnostics.pyi +5 -0
  264. homeassistant-stubs/components/pegel_online/entity.pyi +12 -0
  265. homeassistant-stubs/components/pegel_online/sensor.pyi +28 -0
  266. homeassistant-stubs/components/powerwall/sensor.pyi +0 -1
  267. homeassistant-stubs/components/recorder/core.pyi +2 -0
  268. homeassistant-stubs/components/recorder/entity_registry.pyi +2 -1
  269. homeassistant-stubs/components/recorder/tasks.pyi +2 -1
  270. homeassistant-stubs/components/remote_calendar/calendar.pyi +2 -0
  271. homeassistant-stubs/components/remote_calendar/config_flow.pyi +1 -0
  272. homeassistant-stubs/components/remote_calendar/coordinator.pyi +1 -0
  273. homeassistant-stubs/components/remote_calendar/ics.pyi +10 -0
  274. homeassistant-stubs/components/renault/binary_sensor.pyi +8 -2
  275. homeassistant-stubs/components/renault/config_flow.pyi +2 -1
  276. homeassistant-stubs/components/renault/const.pyi +2 -1
  277. homeassistant-stubs/components/renault/coordinator.pyi +4 -1
  278. homeassistant-stubs/components/renault/entity.pyi +2 -0
  279. homeassistant-stubs/components/renault/renault_hub.pyi +5 -2
  280. homeassistant-stubs/components/renault/renault_vehicle.pyi +5 -2
  281. homeassistant-stubs/components/renault/services.pyi +5 -0
  282. homeassistant-stubs/components/rest/binary_sensor.pyi +2 -2
  283. homeassistant-stubs/components/rest/schema.pyi +1 -1
  284. homeassistant-stubs/components/rest/sensor.pyi +2 -2
  285. homeassistant-stubs/components/rest/switch.pyi +4 -3
  286. homeassistant-stubs/components/roborock/__init__.pyi +1 -0
  287. homeassistant-stubs/components/roborock/config_flow.pyi +1 -0
  288. homeassistant-stubs/components/samsungtv/__init__.pyi +6 -7
  289. homeassistant-stubs/components/samsungtv/config_flow.pyi +1 -1
  290. homeassistant-stubs/components/samsungtv/entity.pyi +3 -2
  291. homeassistant-stubs/components/samsungtv/media_player.pyi +1 -2
  292. homeassistant-stubs/components/samsungtv/remote.pyi +2 -2
  293. homeassistant-stubs/components/scrape/__init__.pyi +1 -1
  294. homeassistant-stubs/components/scrape/sensor.pyi +4 -5
  295. homeassistant-stubs/components/shelly/__init__.pyi +1 -0
  296. homeassistant-stubs/components/shelly/climate.pyi +2 -1
  297. homeassistant-stubs/components/shelly/const.pyi +2 -0
  298. homeassistant-stubs/components/shelly/coordinator.pyi +1 -0
  299. homeassistant-stubs/components/shelly/entity.pyi +5 -2
  300. homeassistant-stubs/components/shelly/number.pyi +4 -3
  301. homeassistant-stubs/components/shelly/repairs.pyi +19 -0
  302. homeassistant-stubs/components/shelly/select.pyi +3 -1
  303. homeassistant-stubs/components/shelly/text.pyi +4 -1
  304. homeassistant-stubs/components/shelly/utils.pyi +2 -3
  305. homeassistant-stubs/components/smlight/binary_sensor.pyi +1 -0
  306. homeassistant-stubs/components/smlight/button.pyi +1 -0
  307. homeassistant-stubs/components/smlight/sensor.pyi +2 -0
  308. homeassistant-stubs/components/smlight/switch.pyi +1 -0
  309. homeassistant-stubs/components/smlight/update.pyi +3 -1
  310. homeassistant-stubs/components/smtp/__init__.pyi +0 -0
  311. homeassistant-stubs/components/smtp/const.pyi +17 -0
  312. homeassistant-stubs/components/smtp/notify.pyi +47 -0
  313. homeassistant-stubs/components/sql/__init__.pyi +1 -1
  314. homeassistant-stubs/components/sql/sensor.pyi +4 -4
  315. homeassistant-stubs/components/ssdp/__init__.pyi +6 -96
  316. homeassistant-stubs/components/ssdp/common.pyi +5 -0
  317. homeassistant-stubs/components/ssdp/const.pyi +3 -0
  318. homeassistant-stubs/components/ssdp/scanner.pyi +75 -0
  319. homeassistant-stubs/components/ssdp/server.pyi +30 -0
  320. homeassistant-stubs/components/ssdp/websocket_api.pyi +16 -0
  321. homeassistant-stubs/components/switcher_kis/button.pyi +2 -1
  322. homeassistant-stubs/components/switcher_kis/climate.pyi +2 -4
  323. homeassistant-stubs/components/switcher_kis/config_flow.pyi +3 -2
  324. homeassistant-stubs/components/switcher_kis/cover.pyi +0 -2
  325. homeassistant-stubs/components/switcher_kis/entity.pyi +4 -0
  326. homeassistant-stubs/components/switcher_kis/light.pyi +3 -8
  327. homeassistant-stubs/components/switcher_kis/sensor.pyi +13 -6
  328. homeassistant-stubs/components/switcher_kis/switch.pyi +9 -15
  329. homeassistant-stubs/components/switcher_kis/utils.pyi +1 -1
  330. homeassistant-stubs/components/synology_dsm/common.pyi +3 -0
  331. homeassistant-stubs/components/synology_dsm/sensor.pyi +9 -1
  332. homeassistant-stubs/components/todo/__init__.pyi +1 -0
  333. homeassistant-stubs/components/tplink_omada/config_flow.pyi +1 -2
  334. homeassistant-stubs/components/tractive/__init__.pyi +1 -1
  335. homeassistant-stubs/components/tractive/binary_sensor.pyi +9 -3
  336. homeassistant-stubs/components/tractive/const.pyi +1 -0
  337. homeassistant-stubs/components/tractive/device_tracker.pyi +1 -1
  338. homeassistant-stubs/components/tts/__init__.pyi +22 -13
  339. homeassistant-stubs/components/tts/legacy.pyi +1 -0
  340. homeassistant-stubs/components/tts/media_source.pyi +5 -2
  341. homeassistant-stubs/components/unifi/hub/api.pyi +2 -2
  342. homeassistant-stubs/components/uptimerobot/__init__.pyi +4 -5
  343. homeassistant-stubs/components/uptimerobot/binary_sensor.pyi +4 -4
  344. homeassistant-stubs/components/uptimerobot/coordinator.pyi +3 -2
  345. homeassistant-stubs/components/uptimerobot/diagnostics.pyi +2 -4
  346. homeassistant-stubs/components/uptimerobot/entity.pyi +0 -2
  347. homeassistant-stubs/components/uptimerobot/sensor.pyi +3 -4
  348. homeassistant-stubs/components/uptimerobot/switch.pyi +5 -4
  349. homeassistant-stubs/components/vodafone_station/__init__.pyi +1 -1
  350. homeassistant-stubs/components/vodafone_station/config_flow.pyi +1 -0
  351. homeassistant-stubs/components/vodafone_station/coordinator.pyi +2 -1
  352. homeassistant-stubs/components/vodafone_station/utils.pyi +5 -0
  353. homeassistant-stubs/components/websocket_api/commands.pyi +3 -1
  354. homeassistant-stubs/components/websocket_api/http.pyi +4 -1
  355. homeassistant-stubs/components/wemo/__init__.pyi +1 -1
  356. homeassistant-stubs/components/wemo/coordinator.pyi +1 -1
  357. homeassistant-stubs/components/wemo/models.pyi +3 -4
  358. homeassistant-stubs/components/workday/config_flow.pyi +1 -1
  359. homeassistant-stubs/components/xiaomi_ble/const.pyi +2 -0
  360. homeassistant-stubs/components/xiaomi_ble/device_trigger.pyi +1 -1
  361. homeassistant-stubs/components/xiaomi_ble/sensor.pyi +2 -2
  362. homeassistant-stubs/components/zeroconf/__init__.pyi +6 -49
  363. homeassistant-stubs/components/zeroconf/const.pyi +3 -0
  364. homeassistant-stubs/components/zeroconf/discovery.pyi +63 -0
  365. homeassistant-stubs/components/zeroconf/websocket_api.pyi +40 -0
  366. homeassistant-stubs/components/zone/__init__.pyi +4 -1
  367. homeassistant-stubs/components/zwave_js/__init__.pyi +2 -2
  368. homeassistant-stubs/components/zwave_js/api.pyi +9 -3
  369. homeassistant-stubs/components/zwave_js/config_flow.pyi +42 -59
  370. homeassistant-stubs/components/zwave_js/helpers.pyi +2 -1
  371. homeassistant-stubs/config_entries.pyi +13 -9
  372. homeassistant-stubs/const.pyi +5 -0
  373. homeassistant-stubs/core.pyi +1 -3
  374. homeassistant-stubs/core_config.pyi +1 -1
  375. homeassistant-stubs/data_entry_flow.pyi +5 -1
  376. homeassistant-stubs/helpers/aiohttp_client.pyi +9 -1
  377. homeassistant-stubs/helpers/area_registry.pyi +5 -1
  378. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +1 -1
  379. homeassistant-stubs/helpers/config_validation.pyi +1 -0
  380. homeassistant-stubs/helpers/device_registry.pyi +1 -3
  381. homeassistant-stubs/helpers/entity.pyi +1 -1
  382. homeassistant-stubs/helpers/entity_platform.pyi +3 -3
  383. homeassistant-stubs/helpers/entity_registry.pyi +6 -6
  384. homeassistant-stubs/helpers/event.pyi +2 -0
  385. homeassistant-stubs/helpers/floor_registry.pyi +12 -3
  386. homeassistant-stubs/helpers/llm.pyi +24 -1
  387. homeassistant-stubs/helpers/network.pyi +1 -1
  388. homeassistant-stubs/helpers/script.pyi +2 -1
  389. homeassistant-stubs/helpers/template.pyi +1 -0
  390. homeassistant-stubs/helpers/trigger_template_entity.pyi +17 -2
  391. homeassistant-stubs/loader.pyi +2 -11
  392. homeassistant-stubs/setup.pyi +7 -6
  393. homeassistant-stubs/util/ssl.pyi +2 -0
  394. {homeassistant_stubs-2025.4.3.dist-info → homeassistant_stubs-2025.5.0.dist-info}/METADATA +3 -3
  395. {homeassistant_stubs-2025.4.3.dist-info → homeassistant_stubs-2025.5.0.dist-info}/RECORD +397 -339
  396. homeassistant-stubs/components/oncue/binary_sensor.pyi +0 -16
  397. homeassistant-stubs/components/oncue/const.pyi +0 -6
  398. homeassistant-stubs/components/oncue/entity.pyi +0 -20
  399. homeassistant-stubs/components/oncue/sensor.pyi +0 -21
  400. homeassistant-stubs/components/oncue/types.pyi +0 -5
  401. {homeassistant_stubs-2025.4.3.dist-info → homeassistant_stubs-2025.5.0.dist-info}/WHEEL +0 -0
  402. {homeassistant_stubs-2025.4.3.dist-info → homeassistant_stubs-2025.5.0.dist-info}/licenses/LICENSE +0 -0
@@ -8,6 +8,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callb
8
8
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
9
9
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
10
10
  from synology_dsm import SynologyDSM
11
+ from synology_dsm.api.core.external_usb import SynoCoreExternalUSB
11
12
  from synology_dsm.api.core.security import SynoCoreSecurity
12
13
  from synology_dsm.api.core.system import SynoCoreSystem
13
14
  from synology_dsm.api.core.upgrade import SynoCoreUpgrade
@@ -36,6 +37,7 @@ class SynoApi:
36
37
  system: SynoCoreSystem | None
37
38
  upgrade: SynoCoreUpgrade | None
38
39
  utilisation: SynoCoreUtilization | None
40
+ external_usb: SynoCoreExternalUSB | None
39
41
  _fetching_entities: dict[str, set[str]]
40
42
  _with_file_station: bool
41
43
  _with_information: bool
@@ -46,6 +48,7 @@ class SynoApi:
46
48
  _with_system: bool
47
49
  _with_upgrade: bool
48
50
  _with_utilisation: bool
51
+ _with_external_usb: bool
49
52
  _login_future: asyncio.Future[None] | None
50
53
  def __init__(self, hass: HomeAssistant, entry: ConfigEntry) -> None: ...
51
54
  async def async_login(self) -> None: ...
@@ -5,7 +5,7 @@ from .entity import SynologyDSMBaseEntity as SynologyDSMBaseEntity, SynologyDSMD
5
5
  from dataclasses import dataclass
6
6
  from datetime import datetime
7
7
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
8
- from homeassistant.const import CONF_DISKS as CONF_DISKS, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfDataRate as UnitOfDataRate, UnitOfInformation as UnitOfInformation, UnitOfTemperature as UnitOfTemperature
8
+ from homeassistant.const import CONF_DEVICES as CONF_DEVICES, CONF_DISKS as CONF_DISKS, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfDataRate as UnitOfDataRate, UnitOfInformation as UnitOfInformation, UnitOfTemperature as UnitOfTemperature
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
11
11
  from homeassistant.helpers.typing import StateType as StateType
@@ -17,6 +17,8 @@ class SynologyDSMSensorEntityDescription(SensorEntityDescription, SynologyDSMEnt
17
17
  UTILISATION_SENSORS: tuple[SynologyDSMSensorEntityDescription, ...]
18
18
  STORAGE_VOL_SENSORS: tuple[SynologyDSMSensorEntityDescription, ...]
19
19
  STORAGE_DISK_SENSORS: tuple[SynologyDSMSensorEntityDescription, ...]
20
+ EXTERNAL_USB_DISK_SENSORS: tuple[SynologyDSMSensorEntityDescription, ...]
21
+ EXTERNAL_USB_PARTITION_SENSORS: tuple[SynologyDSMSensorEntityDescription, ...]
20
22
  INFORMATION_SENSORS: tuple[SynologyDSMSensorEntityDescription, ...]
21
23
 
22
24
  async def async_setup_entry(hass: HomeAssistant, entry: SynologyDSMConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
@@ -37,6 +39,12 @@ class SynoDSMStorageSensor(SynologyDSMDeviceEntity, SynoDSMSensor):
37
39
  @property
38
40
  def native_value(self) -> StateType: ...
39
41
 
42
+ class SynoDSMExternalUSBSensor(SynologyDSMDeviceEntity, SynoDSMSensor):
43
+ entity_description: SynologyDSMSensorEntityDescription
44
+ def __init__(self, api: SynoApi, coordinator: SynologyDSMCentralUpdateCoordinator, description: SynologyDSMSensorEntityDescription, device_id: str | None = None) -> None: ...
45
+ @property
46
+ def native_value(self) -> StateType: ...
47
+
40
48
  class SynoDSMInfoSensor(SynoDSMSensor):
41
49
  _previous_uptime: str | None
42
50
  _last_boot: datetime | None
@@ -32,6 +32,7 @@ class TodoItemFieldDescription:
32
32
  TODO_ITEM_FIELDS: Incomplete
33
33
  TODO_ITEM_FIELD_SCHEMA: Incomplete
34
34
  TODO_ITEM_FIELD_VALIDATIONS: Incomplete
35
+ TODO_SERVICE_GET_ITEMS_SCHEMA: Incomplete
35
36
 
36
37
  def _validate_supported_features(supported_features: int | None, call_data: dict[str, Any]) -> None: ...
37
38
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
@@ -7,14 +7,13 @@ from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers import selector as selector
8
8
  from homeassistant.helpers.aiohttp_client import async_create_clientsession as async_create_clientsession, async_get_clientsession as async_get_clientsession
9
9
  from tplink_omada_client import OmadaClient, OmadaSite as OmadaSite
10
- from types import MappingProxyType
11
10
  from typing import Any, NamedTuple
12
11
 
13
12
  _LOGGER: Incomplete
14
13
  CONF_SITE: str
15
14
  STEP_USER_DATA_SCHEMA: Incomplete
16
15
 
17
- async def create_omada_client(hass: HomeAssistant, data: MappingProxyType[str, Any]) -> OmadaClient: ...
16
+ async def create_omada_client(hass: HomeAssistant, data: Mapping[str, Any]) -> OmadaClient: ...
18
17
 
19
18
  class HubInfo(NamedTuple):
20
19
  controller_id: str
@@ -1,6 +1,6 @@
1
1
  import aiotractive
2
2
  import asyncio
3
- from .const import ATTR_ACTIVITY_LABEL as ATTR_ACTIVITY_LABEL, ATTR_CALORIES as ATTR_CALORIES, ATTR_DAILY_GOAL as ATTR_DAILY_GOAL, ATTR_MINUTES_ACTIVE as ATTR_MINUTES_ACTIVE, ATTR_MINUTES_DAY_SLEEP as ATTR_MINUTES_DAY_SLEEP, ATTR_MINUTES_NIGHT_SLEEP as ATTR_MINUTES_NIGHT_SLEEP, ATTR_MINUTES_REST as ATTR_MINUTES_REST, ATTR_SLEEP_LABEL as ATTR_SLEEP_LABEL, ATTR_TRACKER_STATE as ATTR_TRACKER_STATE, CLIENT_ID as CLIENT_ID, RECONNECT_INTERVAL as RECONNECT_INTERVAL, SERVER_UNAVAILABLE as SERVER_UNAVAILABLE, SWITCH_KEY_MAP as SWITCH_KEY_MAP, TRACKER_HARDWARE_STATUS_UPDATED as TRACKER_HARDWARE_STATUS_UPDATED, TRACKER_POSITION_UPDATED as TRACKER_POSITION_UPDATED, TRACKER_SWITCH_STATUS_UPDATED as TRACKER_SWITCH_STATUS_UPDATED, TRACKER_WELLNESS_STATUS_UPDATED as TRACKER_WELLNESS_STATUS_UPDATED
3
+ from .const import ATTR_ACTIVITY_LABEL as ATTR_ACTIVITY_LABEL, ATTR_CALORIES as ATTR_CALORIES, ATTR_DAILY_GOAL as ATTR_DAILY_GOAL, ATTR_MINUTES_ACTIVE as ATTR_MINUTES_ACTIVE, ATTR_MINUTES_DAY_SLEEP as ATTR_MINUTES_DAY_SLEEP, ATTR_MINUTES_NIGHT_SLEEP as ATTR_MINUTES_NIGHT_SLEEP, ATTR_MINUTES_REST as ATTR_MINUTES_REST, ATTR_POWER_SAVING as ATTR_POWER_SAVING, ATTR_SLEEP_LABEL as ATTR_SLEEP_LABEL, ATTR_TRACKER_STATE as ATTR_TRACKER_STATE, CLIENT_ID as CLIENT_ID, RECONNECT_INTERVAL as RECONNECT_INTERVAL, SERVER_UNAVAILABLE as SERVER_UNAVAILABLE, SWITCH_KEY_MAP as SWITCH_KEY_MAP, TRACKER_HARDWARE_STATUS_UPDATED as TRACKER_HARDWARE_STATUS_UPDATED, TRACKER_POSITION_UPDATED as TRACKER_POSITION_UPDATED, TRACKER_SWITCH_STATUS_UPDATED as TRACKER_SWITCH_STATUS_UPDATED, TRACKER_WELLNESS_STATUS_UPDATED as TRACKER_WELLNESS_STATUS_UPDATED
4
4
  from _typeshed import Incomplete
5
5
  from dataclasses import dataclass
6
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -1,7 +1,9 @@
1
1
  from . import Trackables as Trackables, TractiveClient as TractiveClient, TractiveConfigEntry as TractiveConfigEntry
2
- from .const import TRACKER_HARDWARE_STATUS_UPDATED as TRACKER_HARDWARE_STATUS_UPDATED
2
+ from .const import ATTR_POWER_SAVING as ATTR_POWER_SAVING, TRACKER_HARDWARE_STATUS_UPDATED as TRACKER_HARDWARE_STATUS_UPDATED
3
3
  from .entity import TractiveEntity as TractiveEntity
4
4
  from _typeshed import Incomplete
5
+ from collections.abc import Callable as Callable
6
+ from dataclasses import dataclass
5
7
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
6
8
  from homeassistant.const import ATTR_BATTERY_CHARGING as ATTR_BATTERY_CHARGING, EntityCategory as EntityCategory
7
9
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
@@ -12,11 +14,15 @@ class TractiveBinarySensor(TractiveEntity, BinarySensorEntity):
12
14
  _attr_unique_id: Incomplete
13
15
  _attr_available: bool
14
16
  entity_description: Incomplete
15
- def __init__(self, client: TractiveClient, item: Trackables, description: BinarySensorEntityDescription) -> None: ...
17
+ def __init__(self, client: TractiveClient, item: Trackables, description: TractiveBinarySensorEntityDescription) -> None: ...
16
18
  _attr_is_on: Incomplete
17
19
  @callback
18
20
  def handle_status_update(self, event: dict[str, Any]) -> None: ...
19
21
 
20
- SENSOR_TYPE: Incomplete
22
+ @dataclass(frozen=True, kw_only=True)
23
+ class TractiveBinarySensorEntityDescription(BinarySensorEntityDescription):
24
+ supported: Callable[[dict], bool] = ...
25
+
26
+ SENSOR_TYPES: Incomplete
21
27
 
22
28
  async def async_setup_entry(hass: HomeAssistant, entry: TractiveConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
@@ -12,6 +12,7 @@ ATTR_MINUTES_ACTIVE: str
12
12
  ATTR_MINUTES_DAY_SLEEP: str
13
13
  ATTR_MINUTES_NIGHT_SLEEP: str
14
14
  ATTR_MINUTES_REST: str
15
+ ATTR_POWER_SAVING: str
15
16
  ATTR_SLEEP_LABEL: str
16
17
  ATTR_TRACKER_STATE: str
17
18
  CLIENT_ID: str
@@ -15,7 +15,7 @@ class TractiveDeviceTracker(TractiveEntity, TrackerEntity):
15
15
  _battery_level: int | None
16
16
  _attr_latitude: Incomplete
17
17
  _attr_longitude: Incomplete
18
- _attr_location_accuracy: int
18
+ _attr_location_accuracy: float
19
19
  _source_type: str
20
20
  _attr_unique_id: Incomplete
21
21
  def __init__(self, client: TractiveClient, item: Trackables) -> None: ...
@@ -1,21 +1,22 @@
1
1
  import asyncio
2
2
  from .const import DEFAULT_CACHE_DIR as DEFAULT_CACHE_DIR, TtsAudioType as TtsAudioType
3
- from .entity import TextToSpeechEntity as TextToSpeechEntity
3
+ from .entity import TTSAudioResponse as TTSAudioResponse, TextToSpeechEntity as TextToSpeechEntity
4
4
  from .legacy import PLATFORM_SCHEMA as PLATFORM_SCHEMA, PLATFORM_SCHEMA_BASE as PLATFORM_SCHEMA_BASE, Provider as Provider
5
5
  from .media_source import generate_media_source_id as generate_media_source_id
6
6
  from .models import Voice as Voice
7
7
  from _typeshed import Incomplete
8
8
  from aiohttp import web
9
- from collections.abc import AsyncGenerator
10
- from dataclasses import dataclass
9
+ from collections.abc import AsyncGenerator, MutableMapping
10
+ from dataclasses import dataclass, field
11
11
  from datetime import datetime
12
12
  from homeassistant.components.http import HomeAssistantView
13
13
  from homeassistant.core import CALLBACK_TYPE, Event, HomeAssistant, callback
14
14
  from homeassistant.helpers.typing import ConfigType
15
15
  from propcache.api import cached_property
16
- from typing import Any
16
+ from time import monotonic
17
+ from typing import Any, Generic, Protocol, TypeVar
17
18
 
18
- __all__ = ['ATTR_AUDIO_OUTPUT', 'ATTR_PREFERRED_FORMAT', 'ATTR_PREFERRED_SAMPLE_BYTES', 'ATTR_PREFERRED_SAMPLE_CHANNELS', 'ATTR_PREFERRED_SAMPLE_RATE', 'CONF_LANG', 'DEFAULT_CACHE_DIR', 'PLATFORM_SCHEMA', 'PLATFORM_SCHEMA_BASE', 'Provider', 'ResultStream', 'SampleFormat', 'TextToSpeechEntity', 'TtsAudioType', 'Voice', 'async_default_engine', 'async_get_media_source_audio', 'generate_media_source_id']
19
+ __all__ = ['ATTR_AUDIO_OUTPUT', 'ATTR_PREFERRED_FORMAT', 'ATTR_PREFERRED_SAMPLE_BYTES', 'ATTR_PREFERRED_SAMPLE_CHANNELS', 'ATTR_PREFERRED_SAMPLE_RATE', 'CONF_LANG', 'DEFAULT_CACHE_DIR', 'PLATFORM_SCHEMA', 'PLATFORM_SCHEMA_BASE', 'Provider', 'ResultStream', 'SampleFormat', 'TTSAudioResponse', 'TextToSpeechEntity', 'TtsAudioType', 'Voice', 'async_default_engine', 'async_get_media_source_audio', 'generate_media_source_id']
19
20
 
20
21
  ATTR_AUDIO_OUTPUT: str
21
22
  ATTR_PREFERRED_FORMAT: str
@@ -43,6 +44,7 @@ async def async_get_media_source_audio(hass: HomeAssistant, media_source_id: str
43
44
 
44
45
  @dataclass
45
46
  class ResultStream:
47
+ last_used: float = field(default_factory=monotonic, init=False)
46
48
  token: str
47
49
  extension: str
48
50
  content_type: str
@@ -56,18 +58,22 @@ class ResultStream:
56
58
  @cached_property
57
59
  def _result_cache(self) -> asyncio.Future[TTSCache]: ...
58
60
  @callback
59
- def async_set_message_cache(self, cache: TTSCache) -> None: ...
60
- @callback
61
61
  def async_set_message(self, message: str) -> None: ...
62
+ @callback
63
+ def async_set_message_stream(self, message_stream: AsyncGenerator[str]) -> None: ...
62
64
  async def async_stream_result(self) -> AsyncGenerator[bytes]: ...
63
65
 
64
- class MemcacheCleanup:
66
+ class HasLastUsed(Protocol):
67
+ last_used: float
68
+ T = TypeVar('T', bound=HasLastUsed)
69
+
70
+ class DictCleaning(Generic[T]):
65
71
  unsub: CALLBACK_TYPE | None
66
72
  hass: Incomplete
67
73
  maxage: Incomplete
68
74
  memcache: Incomplete
69
75
  cleanup_job: Incomplete
70
- def __init__(self, hass: HomeAssistant, maxage: float, memcache: dict[str, TTSCache]) -> None: ...
76
+ def __init__(self, hass: HomeAssistant, maxage: float, memcache: MutableMapping[str, T]) -> None: ...
71
77
  @callback
72
78
  def schedule(self) -> None: ...
73
79
  @callback
@@ -85,6 +91,7 @@ class SpeechManager:
85
91
  mem_cache: dict[str, TTSCache]
86
92
  token_to_stream: dict[str, ResultStream]
87
93
  memcache_cleanup: Incomplete
94
+ token_to_stream_cleanup: Incomplete
88
95
  def __init__(self, hass: HomeAssistant, use_file_cache: bool, cache_dir: str, memory_cache_maxage: int) -> None: ...
89
96
  def _init_cache(self) -> dict[str, str]: ...
90
97
  async def async_init_cache(self) -> None: ...
@@ -94,13 +101,15 @@ class SpeechManager:
94
101
  @callback
95
102
  def process_options(self, engine_instance: TextToSpeechEntity | Provider, language: str | None, options: dict | None) -> tuple[str, dict[str, Any]]: ...
96
103
  @callback
97
- def async_create_result_stream(self, engine: str, message: str | None = None, use_file_cache: bool | None = None, language: str | None = None, options: dict | None = None) -> ResultStream: ...
104
+ def async_get_result_stream(self, token: str) -> ResultStream | None: ...
105
+ @callback
106
+ def async_create_result_stream(self, engine: str, use_file_cache: bool | None = None, language: str | None = None, options: dict | None = None) -> ResultStream: ...
98
107
  @callback
99
- def async_cache_message_in_memory(self, engine: str, message: str, use_file_cache: bool | None = None, language: str | None = None, options: dict | None = None) -> TTSCache: ...
108
+ def async_cache_message_stream_in_memory(self, engine: str, message_stream: AsyncGenerator[str], language: str, options: dict) -> TTSCache: ...
100
109
  @callback
101
- def _async_ensure_cached_in_memory(self, engine: str, engine_instance: TextToSpeechEntity | Provider, message: str, use_file_cache: bool, language: str, options: dict) -> TTSCache: ...
110
+ def async_cache_message_in_memory(self, engine: str, message: str, use_file_cache: bool, language: str, options: dict) -> TTSCache: ...
102
111
  async def _load_data_into_cache(self, cache: TTSCache, engine_instance: TextToSpeechEntity | Provider, message: str, store_to_disk: bool, language: str, options: dict) -> None: ...
103
- async def _async_generate_tts_audio(self, engine_instance: TextToSpeechEntity | Provider, message: str, language: str, options: dict[str, Any]) -> AsyncGenerator[bytes]: ...
112
+ async def _async_generate_tts_audio(self, engine_instance: TextToSpeechEntity | Provider, message_stream: AsyncGenerator[str], language: str, options: dict[str, Any]) -> AsyncGenerator[bytes]: ...
104
113
  async def _async_load_file(self, cache_key: str) -> AsyncGenerator[bytes]: ...
105
114
  @staticmethod
106
115
  def write_tags(filename: str, data: bytes, engine_name: str, message: str, language: str, options: dict | None) -> bytes: ...
@@ -31,6 +31,7 @@ async def async_setup_legacy(hass: HomeAssistant, config: ConfigType) -> list[Co
31
31
  class Provider(metaclass=abc.ABCMeta):
32
32
  hass: HomeAssistant | None
33
33
  name: str | None
34
+ has_entity: bool
34
35
  @property
35
36
  def default_language(self) -> str | None: ...
36
37
  @property
@@ -15,13 +15,16 @@ def generate_media_source_id(hass: HomeAssistant, message: str, engine: str | No
15
15
 
16
16
  class MediaSourceOptions(TypedDict):
17
17
  engine: str
18
- message: str
19
18
  language: str | None
20
19
  options: dict | None
21
20
  use_file_cache: bool | None
22
21
 
22
+ class ParsedMediaSourceId(TypedDict):
23
+ options: MediaSourceOptions
24
+ message: str
25
+
23
26
  @callback
24
- def media_source_id_to_kwargs(media_source_id: str) -> MediaSourceOptions: ...
27
+ def parse_media_source_id(media_source_id: str) -> ParsedMediaSourceId: ...
25
28
 
26
29
  class TTSMediaSource(MediaSource):
27
30
  name: str
@@ -1,10 +1,10 @@
1
1
  import aiounifi
2
2
  from ..const import CONF_SITE_ID as CONF_SITE_ID, LOGGER as LOGGER
3
3
  from ..errors import AuthenticationRequired as AuthenticationRequired, CannotConnect as CannotConnect
4
+ from collections.abc import Mapping
4
5
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME, CONF_VERIFY_SSL as CONF_VERIFY_SSL
5
6
  from homeassistant.core import HomeAssistant as HomeAssistant
6
7
  from homeassistant.helpers import aiohttp_client as aiohttp_client
7
- from types import MappingProxyType
8
8
  from typing import Any
9
9
 
10
- async def get_unifi_api(hass: HomeAssistant, config: MappingProxyType[str, Any]) -> aiounifi.Controller: ...
10
+ async def get_unifi_api(hass: HomeAssistant, config: Mapping[str, Any]) -> aiounifi.Controller: ...
@@ -1,10 +1,9 @@
1
- from .const import DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
2
- from .coordinator import UptimeRobotDataUpdateCoordinator as UptimeRobotDataUpdateCoordinator
3
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
1
+ from .const import PLATFORMS as PLATFORMS
2
+ from .coordinator import UptimeRobotConfigEntry as UptimeRobotConfigEntry, UptimeRobotDataUpdateCoordinator as UptimeRobotDataUpdateCoordinator
4
3
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY
5
4
  from homeassistant.core import HomeAssistant as HomeAssistant
6
5
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
7
6
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
7
 
9
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
10
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
8
+ async def async_setup_entry(hass: HomeAssistant, entry: UptimeRobotConfigEntry) -> bool: ...
9
+ async def async_unload_entry(hass: HomeAssistant, entry: UptimeRobotConfigEntry) -> bool: ...
@@ -1,12 +1,12 @@
1
- from .const import DOMAIN as DOMAIN
2
- from .coordinator import UptimeRobotDataUpdateCoordinator as UptimeRobotDataUpdateCoordinator
1
+ from .coordinator import UptimeRobotConfigEntry as UptimeRobotConfigEntry
3
2
  from .entity import UptimeRobotEntity as UptimeRobotEntity
4
3
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
4
  from homeassistant.core import HomeAssistant as HomeAssistant
7
5
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
8
6
 
9
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
7
+ PARALLEL_UPDATES: int
8
+
9
+ async def async_setup_entry(hass: HomeAssistant, entry: UptimeRobotConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
10
10
 
11
11
  class UptimeRobotBinarySensor(UptimeRobotEntity, BinarySensorEntity):
12
12
  @property
@@ -6,9 +6,10 @@ from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFai
6
6
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
7
7
  from pyuptimerobot import UptimeRobot as UptimeRobot, UptimeRobotMonitor
8
8
 
9
+ type UptimeRobotConfigEntry = ConfigEntry[UptimeRobotDataUpdateCoordinator]
9
10
  class UptimeRobotDataUpdateCoordinator(DataUpdateCoordinator[list[UptimeRobotMonitor]]):
10
- config_entry: ConfigEntry
11
+ config_entry: UptimeRobotConfigEntry
11
12
  _device_registry: Incomplete
12
13
  api: Incomplete
13
- def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry, api: UptimeRobot) -> None: ...
14
+ def __init__(self, hass: HomeAssistant, config_entry: UptimeRobotConfigEntry, api: UptimeRobot) -> None: ...
14
15
  async def _async_update_data(self) -> list[UptimeRobotMonitor]: ...
@@ -1,7 +1,5 @@
1
- from .const import DOMAIN as DOMAIN
2
- from .coordinator import UptimeRobotDataUpdateCoordinator as UptimeRobotDataUpdateCoordinator
3
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
1
+ from .coordinator import UptimeRobotConfigEntry as UptimeRobotConfigEntry
4
2
  from homeassistant.core import HomeAssistant as HomeAssistant
5
3
  from typing import Any
6
4
 
7
- async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: ConfigEntry) -> dict[str, Any]: ...
5
+ async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: UptimeRobotConfigEntry) -> dict[str, Any]: ...
@@ -21,5 +21,3 @@ class UptimeRobotEntity(CoordinatorEntity[UptimeRobotDataUpdateCoordinator]):
21
21
  def _monitors(self) -> list[UptimeRobotMonitor]: ...
22
22
  @property
23
23
  def monitor(self) -> UptimeRobotMonitor: ...
24
- @property
25
- def monitor_available(self) -> bool: ...
@@ -1,16 +1,15 @@
1
- from .const import DOMAIN as DOMAIN
2
- from .coordinator import UptimeRobotDataUpdateCoordinator as UptimeRobotDataUpdateCoordinator
1
+ from .coordinator import UptimeRobotConfigEntry as UptimeRobotConfigEntry
3
2
  from .entity import UptimeRobotEntity as UptimeRobotEntity
4
3
  from _typeshed import Incomplete
5
4
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
5
  from homeassistant.const import EntityCategory as EntityCategory
8
6
  from homeassistant.core import HomeAssistant as HomeAssistant
9
7
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
10
8
 
11
9
  SENSORS_INFO: Incomplete
10
+ PARALLEL_UPDATES: int
12
11
 
13
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
12
+ async def async_setup_entry(hass: HomeAssistant, entry: UptimeRobotConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
14
13
 
15
14
  class UptimeRobotSensor(UptimeRobotEntity, SensorEntity):
16
15
  @property
@@ -1,13 +1,14 @@
1
- from .const import API_ATTR_OK as API_ATTR_OK, DOMAIN as DOMAIN, LOGGER as LOGGER
2
- from .coordinator import UptimeRobotDataUpdateCoordinator as UptimeRobotDataUpdateCoordinator
1
+ from .const import API_ATTR_OK as API_ATTR_OK, LOGGER as LOGGER
2
+ from .coordinator import UptimeRobotConfigEntry as UptimeRobotConfigEntry
3
3
  from .entity import UptimeRobotEntity as UptimeRobotEntity
4
4
  from homeassistant.components.switch import SwitchDeviceClass as SwitchDeviceClass, SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
5
  from homeassistant.core import HomeAssistant as HomeAssistant
7
6
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
8
7
  from typing import Any
9
8
 
10
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
9
+ PARALLEL_UPDATES: int
10
+
11
+ async def async_setup_entry(hass: HomeAssistant, entry: UptimeRobotConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
11
12
 
12
13
  class UptimeRobotSwitch(UptimeRobotEntity, SwitchEntity):
13
14
  _attr_translation_key: str
@@ -1,5 +1,5 @@
1
- from .const import DOMAIN as DOMAIN
2
1
  from .coordinator import VodafoneConfigEntry as VodafoneConfigEntry, VodafoneStationRouter as VodafoneStationRouter
2
+ from .utils import async_client_session as async_client_session
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, Platform as Platform
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -1,6 +1,7 @@
1
1
  import voluptuous as vol
2
2
  from .const import DEFAULT_HOST as DEFAULT_HOST, DEFAULT_USERNAME as DEFAULT_USERNAME, DOMAIN as DOMAIN, _LOGGER as _LOGGER
3
3
  from .coordinator import VodafoneConfigEntry as VodafoneConfigEntry
4
+ from .utils import async_client_session as async_client_session
4
5
  from _typeshed import Incomplete
5
6
  from collections.abc import Mapping
6
7
  from homeassistant.components.device_tracker import CONF_CONSIDER_HOME as CONF_CONSIDER_HOME, DEFAULT_CONSIDER_HOME as DEFAULT_CONSIDER_HOME
@@ -1,6 +1,7 @@
1
1
  from .const import DOMAIN as DOMAIN, SCAN_INTERVAL as SCAN_INTERVAL, _LOGGER as _LOGGER
2
2
  from .helpers import cleanup_device_tracker as cleanup_device_tracker
3
3
  from _typeshed import Incomplete
4
+ from aiohttp import ClientSession as ClientSession
4
5
  from aiovodafone import VodafoneStationDevice as VodafoneStationDevice
5
6
  from dataclasses import dataclass
6
7
  from datetime import datetime
@@ -32,7 +33,7 @@ class VodafoneStationRouter(DataUpdateCoordinator[UpdateCoordinatorDataType]):
32
33
  api: Incomplete
33
34
  _id: Incomplete
34
35
  previous_devices: Incomplete
35
- def __init__(self, hass: HomeAssistant, host: str, username: str, password: str, config_entry: VodafoneConfigEntry) -> None: ...
36
+ def __init__(self, hass: HomeAssistant, host: str, username: str, password: str, config_entry: VodafoneConfigEntry, session: ClientSession) -> None: ...
36
37
  def _calculate_update_time_and_consider_home(self, device: VodafoneStationDevice, utc_point_in_time: datetime) -> tuple[datetime | None, bool]: ...
37
38
  async def _async_update_data(self) -> UpdateCoordinatorDataType: ...
38
39
  @property
@@ -0,0 +1,5 @@
1
+ from aiohttp import ClientSession as ClientSession
2
+ from homeassistant.core import HomeAssistant as HomeAssistant
3
+ from homeassistant.helpers import aiohttp_client as aiohttp_client
4
+
5
+ async def async_client_session(hass: HomeAssistant) -> ClientSession: ...
@@ -17,7 +17,7 @@ from homeassistant.helpers.event import TrackTemplate as TrackTemplate, TrackTem
17
17
  from homeassistant.helpers.json import ExtendedJSONEncoder as ExtendedJSONEncoder, JSON_DUMP as JSON_DUMP, find_paths_unserializable_data as find_paths_unserializable_data, json_bytes as json_bytes, json_fragment as json_fragment
18
18
  from homeassistant.helpers.service import async_get_all_descriptions as async_get_all_descriptions
19
19
  from homeassistant.loader import IntegrationNotFound as IntegrationNotFound, async_get_integration as async_get_integration, async_get_integration_descriptions as async_get_integration_descriptions, async_get_integrations as async_get_integrations
20
- from homeassistant.setup import async_get_loaded_integrations as async_get_loaded_integrations, async_get_setup_timings as async_get_setup_timings
20
+ from homeassistant.setup import async_get_loaded_integrations as async_get_loaded_integrations, async_get_setup_timings as async_get_setup_timings, async_wait_component as async_wait_component
21
21
  from homeassistant.util.json import format_unserializable_data as format_unserializable_data
22
22
  from typing import Any
23
23
 
@@ -88,3 +88,5 @@ def handle_supported_features(hass: HomeAssistant, connection: ActiveConnection,
88
88
  @decorators.require_admin
89
89
  @decorators.async_response
90
90
  async def handle_integration_descriptions(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
91
+ @decorators.async_response
92
+ async def handle_integration_wait(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -13,7 +13,7 @@ from aiohttp.http_websocket import WebSocketWriter as WebSocketWriter
13
13
  from collections import deque
14
14
  from collections.abc import Callable as Callable, Coroutine
15
15
  from homeassistant.components.http import HomeAssistantView as HomeAssistantView, KEY_HASS as KEY_HASS
16
- from homeassistant.const import EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP
16
+ from homeassistant.const import EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, EVENT_LOGGING_CHANGED as EVENT_LOGGING_CHANGED
17
17
  from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
18
18
  from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
19
19
  from homeassistant.helpers.event import async_call_later as async_call_later
@@ -50,6 +50,9 @@ class WebSocketHandler:
50
50
  _ready_future: asyncio.Future[int] | None
51
51
  _release_ready_queue_size: int
52
52
  def __init__(self, hass: HomeAssistant, request: web.Request) -> None: ...
53
+ _debug: Incomplete
54
+ @callback
55
+ def _async_logging_changed(self, event: Event | None = None) -> None: ...
53
56
  def __repr__(self) -> str: ...
54
57
  @property
55
58
  def description(self) -> str: ...
@@ -1,7 +1,7 @@
1
1
  import pywemo
2
2
  from .const import DOMAIN as DOMAIN
3
3
  from .coordinator import DeviceCoordinator as DeviceCoordinator, async_register_device as async_register_device
4
- from .models import WemoConfigEntryData as WemoConfigEntryData, WemoData as WemoData, async_wemo_data as async_wemo_data
4
+ from .models import DATA_WEMO as DATA_WEMO, WemoConfigEntryData as WemoConfigEntryData, WemoData as WemoData
5
5
  from _typeshed import Incomplete
6
6
  from collections.abc import Callable, Coroutine, Sequence
7
7
  from datetime import datetime
@@ -1,5 +1,5 @@
1
1
  from .const import DOMAIN as DOMAIN, WEMO_SUBSCRIPTION_EVENT as WEMO_SUBSCRIPTION_EVENT
2
- from .models import async_wemo_data as async_wemo_data
2
+ from .models import DATA_WEMO as DATA_WEMO
3
3
  from _typeshed import Incomplete
4
4
  from dataclasses import dataclass
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -4,7 +4,9 @@ from .const import DOMAIN as DOMAIN
4
4
  from .coordinator import DeviceCoordinator as DeviceCoordinator
5
5
  from collections.abc import Sequence
6
6
  from dataclasses import dataclass
7
- from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.util.hass_dict import HassKey as HassKey
8
+
9
+ DATA_WEMO: HassKey[WemoData]
8
10
 
9
11
  @dataclass
10
12
  class WemoConfigEntryData:
@@ -18,6 +20,3 @@ class WemoData:
18
20
  static_config: Sequence[HostPortTuple]
19
21
  registry: pywemo.SubscriptionRegistry
20
22
  config_entry_data: WemoConfigEntryData = ...
21
-
22
- @callback
23
- def async_wemo_data(hass: HomeAssistant) -> WemoData: ...
@@ -6,7 +6,7 @@ from homeassistant.const import CONF_COUNTRY as CONF_COUNTRY, CONF_LANGUAGE as C
6
6
  from homeassistant.core import callback as callback
7
7
  from homeassistant.data_entry_flow import AbortFlow as AbortFlow
8
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
- from homeassistant.helpers.selector import CountrySelector as CountrySelector, CountrySelectorConfig as CountrySelectorConfig, LanguageSelector as LanguageSelector, LanguageSelectorConfig as LanguageSelectorConfig, NumberSelector as NumberSelector, NumberSelectorConfig as NumberSelectorConfig, NumberSelectorMode as NumberSelectorMode, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode, TextSelector as TextSelector
9
+ from homeassistant.helpers.selector import CountrySelector as CountrySelector, CountrySelectorConfig as CountrySelectorConfig, LanguageSelector as LanguageSelector, LanguageSelectorConfig as LanguageSelectorConfig, NumberSelector as NumberSelector, NumberSelectorConfig as NumberSelectorConfig, NumberSelectorMode as NumberSelectorMode, SelectOptionDict as SelectOptionDict, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode, TextSelector as TextSelector
10
10
  from typing import Any
11
11
 
12
12
  def add_province_and_language_to_schema(schema: vol.Schema, country: str | None) -> vol.Schema: ...
@@ -28,6 +28,7 @@ LOCK_FINGERPRINT: str
28
28
  MOTION_DEVICE: Final[str]
29
29
  DOUBLE_BUTTON: Final[str]
30
30
  TRIPPLE_BUTTON: Final[str]
31
+ QUADRUPLE_BUTTON: Final[str]
31
32
  REMOTE: Final[str]
32
33
  REMOTE_FAN: Final[str]
33
34
  REMOTE_VENFAN: Final[str]
@@ -38,6 +39,7 @@ BUTTON_PRESS_LONG: Final[str]
38
39
  BUTTON_PRESS_DOUBLE_LONG: Final[str]
39
40
  DOUBLE_BUTTON_PRESS_DOUBLE_LONG: Final[str]
40
41
  TRIPPLE_BUTTON_PRESS_DOUBLE_LONG: Final[str]
42
+ QUADRUPLE_BUTTON_PRESS_DOUBLE_LONG: Final[str]
41
43
 
42
44
  class XiaomiBleEvent(TypedDict):
43
45
  device_id: str
@@ -1,4 +1,4 @@
1
- from .const import BUTTON as BUTTON, BUTTON_PRESS as BUTTON_PRESS, BUTTON_PRESS_DOUBLE_LONG as BUTTON_PRESS_DOUBLE_LONG, BUTTON_PRESS_LONG as BUTTON_PRESS_LONG, CONF_SUBTYPE as CONF_SUBTYPE, CUBE as CUBE, DIMMER as DIMMER, DOMAIN as DOMAIN, DOUBLE_BUTTON as DOUBLE_BUTTON, DOUBLE_BUTTON_PRESS_DOUBLE_LONG as DOUBLE_BUTTON_PRESS_DOUBLE_LONG, ERROR as ERROR, EVENT_CLASS as EVENT_CLASS, EVENT_CLASS_BUTTON as EVENT_CLASS_BUTTON, EVENT_CLASS_CUBE as EVENT_CLASS_CUBE, EVENT_CLASS_DIMMER as EVENT_CLASS_DIMMER, EVENT_CLASS_ERROR as EVENT_CLASS_ERROR, EVENT_CLASS_FINGERPRINT as EVENT_CLASS_FINGERPRINT, EVENT_CLASS_LOCK as EVENT_CLASS_LOCK, EVENT_CLASS_MOTION as EVENT_CLASS_MOTION, EVENT_TYPE as EVENT_TYPE, FINGERPRINT as FINGERPRINT, LOCK as LOCK, LOCK_FINGERPRINT as LOCK_FINGERPRINT, MOTION as MOTION, MOTION_DEVICE as MOTION_DEVICE, REMOTE as REMOTE, REMOTE_BATHROOM as REMOTE_BATHROOM, REMOTE_FAN as REMOTE_FAN, REMOTE_VENFAN as REMOTE_VENFAN, TRIPPLE_BUTTON as TRIPPLE_BUTTON, TRIPPLE_BUTTON_PRESS_DOUBLE_LONG as TRIPPLE_BUTTON_PRESS_DOUBLE_LONG, XIAOMI_BLE_EVENT as XIAOMI_BLE_EVENT
1
+ from .const import BUTTON as BUTTON, BUTTON_PRESS as BUTTON_PRESS, BUTTON_PRESS_DOUBLE_LONG as BUTTON_PRESS_DOUBLE_LONG, BUTTON_PRESS_LONG as BUTTON_PRESS_LONG, CONF_SUBTYPE as CONF_SUBTYPE, CUBE as CUBE, DIMMER as DIMMER, DOMAIN as DOMAIN, DOUBLE_BUTTON as DOUBLE_BUTTON, DOUBLE_BUTTON_PRESS_DOUBLE_LONG as DOUBLE_BUTTON_PRESS_DOUBLE_LONG, ERROR as ERROR, EVENT_CLASS as EVENT_CLASS, EVENT_CLASS_BUTTON as EVENT_CLASS_BUTTON, EVENT_CLASS_CUBE as EVENT_CLASS_CUBE, EVENT_CLASS_DIMMER as EVENT_CLASS_DIMMER, EVENT_CLASS_ERROR as EVENT_CLASS_ERROR, EVENT_CLASS_FINGERPRINT as EVENT_CLASS_FINGERPRINT, EVENT_CLASS_LOCK as EVENT_CLASS_LOCK, EVENT_CLASS_MOTION as EVENT_CLASS_MOTION, EVENT_TYPE as EVENT_TYPE, FINGERPRINT as FINGERPRINT, LOCK as LOCK, LOCK_FINGERPRINT as LOCK_FINGERPRINT, MOTION as MOTION, MOTION_DEVICE as MOTION_DEVICE, QUADRUPLE_BUTTON as QUADRUPLE_BUTTON, QUADRUPLE_BUTTON_PRESS_DOUBLE_LONG as QUADRUPLE_BUTTON_PRESS_DOUBLE_LONG, REMOTE as REMOTE, REMOTE_BATHROOM as REMOTE_BATHROOM, REMOTE_FAN as REMOTE_FAN, REMOTE_VENFAN as REMOTE_VENFAN, TRIPPLE_BUTTON as TRIPPLE_BUTTON, TRIPPLE_BUTTON_PRESS_DOUBLE_LONG as TRIPPLE_BUTTON_PRESS_DOUBLE_LONG, XIAOMI_BLE_EVENT as XIAOMI_BLE_EVENT
2
2
  from _typeshed import Incomplete
3
3
  from dataclasses import dataclass
4
4
  from homeassistant.components.device_automation import DEVICE_TRIGGER_BASE_SCHEMA as DEVICE_TRIGGER_BASE_SCHEMA
@@ -2,8 +2,8 @@ from .coordinator import XiaomiPassiveBluetoothDataProcessor as XiaomiPassiveBlu
2
2
  from .device import device_key_to_bluetooth_entity_key as device_key_to_bluetooth_entity_key
3
3
  from .types import XiaomiBLEConfigEntry as XiaomiBLEConfigEntry
4
4
  from _typeshed import Incomplete
5
- from homeassistant.components.bluetooth.passive_update_processor import PassiveBluetoothDataUpdate as PassiveBluetoothDataUpdate, PassiveBluetoothProcessorEntity as PassiveBluetoothProcessorEntity
6
- from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
5
+ from homeassistant.components.bluetooth.passive_update_processor import PassiveBluetoothDataUpdate as PassiveBluetoothDataUpdate, PassiveBluetoothEntityKey as PassiveBluetoothEntityKey, PassiveBluetoothProcessorEntity as PassiveBluetoothProcessorEntity
6
+ from homeassistant.components.sensor import EntityDescription as EntityDescription, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
7
7
  from homeassistant.const import CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER as CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, EntityCategory as EntityCategory, LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfConductivity as UnitOfConductivity, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfMass as UnitOfMass, UnitOfPressure as UnitOfPressure, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime
8
8
  from homeassistant.core import HomeAssistant as HomeAssistant
9
9
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback