homeassistant-stubs 2024.3.3__py3-none-any.whl → 2024.4.0b0__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 (863) hide show
  1. homeassistant-stubs/auth/__init__.pyi +5 -4
  2. homeassistant-stubs/auth/auth_store.pyi +3 -1
  3. homeassistant-stubs/auth/mfa_modules/__init__.pyi +1 -0
  4. homeassistant-stubs/auth/models.pyi +2 -0
  5. homeassistant-stubs/auth/providers/__init__.pyi +8 -7
  6. homeassistant-stubs/auth/providers/command_line.pyi +2 -3
  7. homeassistant-stubs/auth/providers/homeassistant.pyi +2 -3
  8. homeassistant-stubs/auth/providers/insecure_example.pyi +2 -3
  9. homeassistant-stubs/auth/providers/legacy_api_password.pyi +2 -3
  10. homeassistant-stubs/auth/providers/trusted_networks.pyi +2 -3
  11. homeassistant-stubs/bootstrap.pyi +7 -4
  12. homeassistant-stubs/components/__init__.pyi +1 -0
  13. homeassistant-stubs/components/abode/alarm_control_panel.pyi +4 -5
  14. homeassistant-stubs/components/abode/binary_sensor.pyi +2 -2
  15. homeassistant-stubs/components/abode/camera.pyi +2 -2
  16. homeassistant-stubs/components/abode/config_flow.pyi +9 -10
  17. homeassistant-stubs/components/abode/cover.pyi +2 -2
  18. homeassistant-stubs/components/abode/light.pyi +2 -2
  19. homeassistant-stubs/components/abode/lock.pyi +2 -2
  20. homeassistant-stubs/components/abode/sensor.pyi +8 -12
  21. homeassistant-stubs/components/abode/switch.pyi +2 -2
  22. homeassistant-stubs/components/accuweather/config_flow.pyi +3 -5
  23. homeassistant-stubs/components/accuweather/sensor.pyi +3 -7
  24. homeassistant-stubs/components/accuweather/weather.pyi +0 -2
  25. homeassistant-stubs/components/acmeda/config_flow.pyi +4 -5
  26. homeassistant-stubs/components/adax/config_flow.pyi +5 -6
  27. homeassistant-stubs/components/adguard/config_flow.pyi +6 -7
  28. homeassistant-stubs/components/aftership/config_flow.pyi +3 -6
  29. homeassistant-stubs/components/aftership/sensor.pyi +3 -8
  30. homeassistant-stubs/components/airly/config_flow.pyi +3 -4
  31. homeassistant-stubs/components/airnow/config_flow.pyi +4 -6
  32. homeassistant-stubs/components/airnow/sensor.pyi +3 -7
  33. homeassistant-stubs/components/airq/config_flow.pyi +3 -4
  34. homeassistant-stubs/components/airq/sensor.pyi +3 -7
  35. homeassistant-stubs/components/airthings/config_flow.pyi +3 -4
  36. homeassistant-stubs/components/airthings_ble/config_flow.pyi +4 -5
  37. homeassistant-stubs/components/airtouch5/config_flow.pyi +1 -2
  38. homeassistant-stubs/components/airvisual/config_flow.pyi +10 -12
  39. homeassistant-stubs/components/airvisual_pro/config_flow.pyi +6 -8
  40. homeassistant-stubs/components/airzone/config_flow.pyi +6 -6
  41. homeassistant-stubs/components/airzone/select.pyi +3 -7
  42. homeassistant-stubs/components/airzone_cloud/climate.pyi +10 -1
  43. homeassistant-stubs/components/airzone_cloud/config_flow.pyi +4 -5
  44. homeassistant-stubs/components/aladdin_connect/config_flow.pyi +6 -7
  45. homeassistant-stubs/components/aladdin_connect/sensor.pyi +3 -7
  46. homeassistant-stubs/components/alert/__init__.pyi +3 -3
  47. homeassistant-stubs/components/alexa/smart_home.pyi +1 -2
  48. homeassistant-stubs/components/amberelectric/config_flow.pyi +4 -5
  49. homeassistant-stubs/components/ambiclimate/config_flow.pyi +6 -7
  50. homeassistant-stubs/components/ambient_station/config_flow.pyi +4 -5
  51. homeassistant-stubs/components/amcrest/camera.pyi +1 -1
  52. homeassistant-stubs/components/analytics_insights/config_flow.pyi +3 -4
  53. homeassistant-stubs/components/android_ip_webcam/config_flow.pyi +3 -4
  54. homeassistant-stubs/components/android_ip_webcam/sensor.pyi +3 -7
  55. homeassistant-stubs/components/android_ip_webcam/switch.pyi +3 -7
  56. homeassistant-stubs/components/androidtv/config_flow.pyi +10 -11
  57. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +9 -10
  58. homeassistant-stubs/components/anova/config_flow.pyi +2 -3
  59. homeassistant-stubs/components/anthemav/config_flow.pyi +2 -3
  60. homeassistant-stubs/components/apache_kafka/__init__.pyi +3 -3
  61. homeassistant-stubs/components/apcupsd/binary_sensor.pyi +3 -1
  62. homeassistant-stubs/components/apcupsd/config_flow.pyi +4 -5
  63. homeassistant-stubs/components/apcupsd/const.pyi +1 -0
  64. homeassistant-stubs/components/apcupsd/coordinator.pyi +11 -10
  65. homeassistant-stubs/components/apcupsd/diagnostics.pyi +11 -0
  66. homeassistant-stubs/components/apcupsd/sensor.pyi +3 -1
  67. homeassistant-stubs/components/api/__init__.pyi +1 -1
  68. homeassistant-stubs/components/apple_tv/__init__.pyi +3 -0
  69. homeassistant-stubs/components/apple_tv/config_flow.pyi +18 -18
  70. homeassistant-stubs/components/aranet/config_flow.pyi +6 -6
  71. homeassistant-stubs/components/arcam_fmj/config_flow.pyi +7 -8
  72. homeassistant-stubs/components/aseko_pool_live/__init__.pyi +3 -2
  73. homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +3 -7
  74. homeassistant-stubs/components/aseko_pool_live/config_flow.pyi +10 -5
  75. homeassistant-stubs/components/asuswrt/config_flow.pyi +5 -6
  76. homeassistant-stubs/components/auth/__init__.pyi +1 -0
  77. homeassistant-stubs/components/auth/login_flow.pyi +4 -3
  78. homeassistant-stubs/components/automation/__init__.pyi +19 -2
  79. homeassistant-stubs/components/awair/config_flow.pyi +9 -10
  80. homeassistant-stubs/components/awair/sensor.pyi +3 -7
  81. homeassistant-stubs/components/axis/__init__.pyi +1 -1
  82. homeassistant-stubs/components/axis/binary_sensor.pyi +26 -14
  83. homeassistant-stubs/components/axis/camera.pyi +2 -2
  84. homeassistant-stubs/components/axis/config_flow.pyi +20 -18
  85. homeassistant-stubs/components/axis/const.pyi +0 -1
  86. homeassistant-stubs/components/axis/diagnostics.pyi +1 -1
  87. homeassistant-stubs/components/axis/entity.pyi +16 -8
  88. homeassistant-stubs/components/axis/hub/__init__.pyi +2 -0
  89. homeassistant-stubs/components/axis/hub/api.pyi +10 -0
  90. homeassistant-stubs/components/axis/hub/config.pyi +21 -0
  91. homeassistant-stubs/components/axis/hub/entity_loader.pyi +15 -0
  92. homeassistant-stubs/components/axis/hub/hub.pyi +41 -0
  93. homeassistant-stubs/components/axis/light.pyi +17 -8
  94. homeassistant-stubs/components/axis/switch.pyi +13 -5
  95. homeassistant-stubs/components/backup/http.pyi +1 -1
  96. homeassistant-stubs/components/baf/binary_sensor.pyi +3 -7
  97. homeassistant-stubs/components/baf/config_flow.pyi +5 -6
  98. homeassistant-stubs/components/baf/number.pyi +3 -7
  99. homeassistant-stubs/components/baf/sensor.pyi +3 -7
  100. homeassistant-stubs/components/baf/switch.pyi +3 -7
  101. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +5 -6
  102. homeassistant-stubs/components/bang_olufsen/const.pyi +22 -22
  103. homeassistant-stubs/components/bang_olufsen/entity.pyi +1 -4
  104. homeassistant-stubs/components/bang_olufsen/media_player.pyi +4 -5
  105. homeassistant-stubs/components/bang_olufsen/websocket.pyi +1 -1
  106. homeassistant-stubs/components/bayesian/binary_sensor.pyi +2 -2
  107. homeassistant-stubs/components/blue_current/__init__.pyi +10 -12
  108. homeassistant-stubs/components/blue_current/config_flow.pyi +5 -6
  109. homeassistant-stubs/components/bluetooth/config_flow.pyi +5 -6
  110. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +3 -2
  111. homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +3 -7
  112. homeassistant-stubs/components/bmw_connected_drive/button.pyi +3 -7
  113. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +14 -14
  114. homeassistant-stubs/components/bmw_connected_drive/number.pyi +3 -7
  115. homeassistant-stubs/components/bmw_connected_drive/select.pyi +3 -7
  116. homeassistant-stubs/components/bmw_connected_drive/switch.pyi +3 -7
  117. homeassistant-stubs/components/bond/button.pyi +4 -8
  118. homeassistant-stubs/components/bond/config_flow.pyi +7 -8
  119. homeassistant-stubs/components/bond/light.pyi +1 -1
  120. homeassistant-stubs/components/braviatv/button.pyi +3 -7
  121. homeassistant-stubs/components/braviatv/config_flow.pyi +11 -13
  122. homeassistant-stubs/components/brother/config_flow.pyi +7 -7
  123. homeassistant-stubs/components/brother/sensor.pyi +3 -7
  124. homeassistant-stubs/components/bthome/__init__.pyi +3 -2
  125. homeassistant-stubs/components/bthome/config_flow.pyi +7 -8
  126. homeassistant-stubs/components/bthome/logbook.pyi +2 -3
  127. homeassistant-stubs/components/canary/config_flow.pyi +4 -5
  128. homeassistant-stubs/components/cert_expiry/config_flow.pyi +4 -5
  129. homeassistant-stubs/components/cert_expiry/helper.pyi +1 -2
  130. homeassistant-stubs/components/climate/__init__.pyi +10 -7
  131. homeassistant-stubs/components/cloud/__init__.pyi +1 -1
  132. homeassistant-stubs/components/cloud/config_flow.pyi +2 -3
  133. homeassistant-stubs/components/cloud/http_api.pyi +3 -1
  134. homeassistant-stubs/components/cloud/prefs.pyi +1 -0
  135. homeassistant-stubs/components/cloud/repairs.pyi +1 -1
  136. homeassistant-stubs/components/cloud/tts.pyi +3 -3
  137. homeassistant-stubs/components/co2signal/config_flow.pyi +7 -9
  138. homeassistant-stubs/components/command_line/cover.pyi +3 -3
  139. homeassistant-stubs/components/command_line/sensor.pyi +2 -2
  140. homeassistant-stubs/components/command_line/switch.pyi +4 -4
  141. homeassistant-stubs/components/command_line/utils.pyi +3 -2
  142. homeassistant-stubs/components/config/__init__.pyi +3 -47
  143. homeassistant-stubs/components/config/automation.pyi +2 -1
  144. homeassistant-stubs/components/config/category_registry.pyi +12 -0
  145. homeassistant-stubs/components/config/config_entries.pyi +8 -6
  146. homeassistant-stubs/components/config/const.pyi +3 -0
  147. homeassistant-stubs/components/config/core.pyi +1 -1
  148. homeassistant-stubs/components/config/label_registry.pyi +3 -0
  149. homeassistant-stubs/components/config/scene.pyi +2 -1
  150. homeassistant-stubs/components/config/script.pyi +2 -1
  151. homeassistant-stubs/components/config/view.pyi +48 -0
  152. homeassistant-stubs/components/configurator/__init__.pyi +1 -1
  153. homeassistant-stubs/components/cpuspeed/config_flow.pyi +2 -3
  154. homeassistant-stubs/components/crownstone/config_flow.pyi +10 -11
  155. homeassistant-stubs/components/deconz/__init__.pyi +6 -7
  156. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +3 -3
  157. homeassistant-stubs/components/deconz/binary_sensor.pyi +2 -4
  158. homeassistant-stubs/components/deconz/button.pyi +2 -2
  159. homeassistant-stubs/components/deconz/climate.pyi +2 -2
  160. homeassistant-stubs/components/deconz/config_flow.pyi +14 -16
  161. homeassistant-stubs/components/deconz/cover.pyi +2 -2
  162. homeassistant-stubs/components/deconz/deconz_device.pyi +5 -5
  163. homeassistant-stubs/components/deconz/deconz_event.pyi +4 -4
  164. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -1
  165. homeassistant-stubs/components/deconz/diagnostics.pyi +1 -1
  166. homeassistant-stubs/components/deconz/fan.pyi +2 -2
  167. homeassistant-stubs/components/deconz/hub/__init__.pyi +2 -0
  168. homeassistant-stubs/components/deconz/hub/api.pyi +9 -0
  169. homeassistant-stubs/components/deconz/hub/config.pyi +18 -0
  170. homeassistant-stubs/components/deconz/{gateway.pyi → hub/hub.pyi} +10 -19
  171. homeassistant-stubs/components/deconz/light.pyi +3 -3
  172. homeassistant-stubs/components/deconz/lock.pyi +1 -1
  173. homeassistant-stubs/components/deconz/number.pyi +2 -4
  174. homeassistant-stubs/components/deconz/scene.pyi +1 -1
  175. homeassistant-stubs/components/deconz/select.pyi +1 -1
  176. homeassistant-stubs/components/deconz/sensor.pyi +4 -6
  177. homeassistant-stubs/components/deconz/services.pyi +5 -5
  178. homeassistant-stubs/components/deconz/siren.pyi +1 -1
  179. homeassistant-stubs/components/deconz/switch.pyi +1 -1
  180. homeassistant-stubs/components/demo/climate.pyi +3 -8
  181. homeassistant-stubs/components/demo/config_flow.pyi +10 -11
  182. homeassistant-stubs/components/demo/humidifier.pyi +1 -1
  183. homeassistant-stubs/components/derivative/sensor.pyi +2 -2
  184. homeassistant-stubs/components/device_tracker/const.pyi +2 -1
  185. homeassistant-stubs/components/device_tracker/legacy.pyi +6 -2
  186. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +9 -11
  187. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +3 -7
  188. homeassistant-stubs/components/devolo_home_network/button.pyi +3 -7
  189. homeassistant-stubs/components/devolo_home_network/config_flow.pyi +9 -9
  190. homeassistant-stubs/components/devolo_home_network/image.pyi +3 -7
  191. homeassistant-stubs/components/devolo_home_network/sensor.pyi +3 -7
  192. homeassistant-stubs/components/devolo_home_network/switch.pyi +3 -7
  193. homeassistant-stubs/components/devolo_home_network/update.pyi +3 -7
  194. homeassistant-stubs/components/dhcp/__init__.pyi +4 -8
  195. homeassistant-stubs/components/discovergy/config_flow.pyi +5 -7
  196. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +13 -14
  197. homeassistant-stubs/components/dlna_dmr/media_player.pyi +4 -2
  198. homeassistant-stubs/components/dlna_dms/config_flow.pyi +7 -7
  199. homeassistant-stubs/components/dnsip/config_flow.pyi +6 -9
  200. homeassistant-stubs/components/doorbird/button.pyi +3 -7
  201. homeassistant-stubs/components/doorbird/config_flow.pyi +12 -12
  202. homeassistant-stubs/components/doorbird/view.pyi +1 -2
  203. homeassistant-stubs/components/dormakaba_dkey/binary_sensor.pyi +3 -7
  204. homeassistant-stubs/components/dormakaba_dkey/config_flow.pyi +9 -10
  205. homeassistant-stubs/components/downloader/__init__.pyi +7 -12
  206. homeassistant-stubs/components/downloader/config_flow.pyi +12 -0
  207. homeassistant-stubs/components/downloader/const.pyi +13 -0
  208. homeassistant-stubs/components/dsmr/config_flow.pyi +14 -15
  209. homeassistant-stubs/components/dunehd/config_flow.pyi +6 -6
  210. homeassistant-stubs/components/duotecno/config_flow.pyi +3 -4
  211. homeassistant-stubs/components/easyenergy/config_flow.pyi +2 -3
  212. homeassistant-stubs/components/easyenergy/sensor.pyi +3 -7
  213. homeassistant-stubs/components/ecovacs/config_flow.pyi +5 -5
  214. homeassistant-stubs/components/ecovacs/event.pyi +19 -0
  215. homeassistant-stubs/components/ecowitt/config_flow.pyi +3 -4
  216. homeassistant-stubs/components/efergy/config_flow.pyi +4 -5
  217. homeassistant-stubs/components/electrasmart/config_flow.pyi +8 -9
  218. homeassistant-stubs/components/electric_kiwi/config_flow.pyi +4 -5
  219. homeassistant-stubs/components/electric_kiwi/sensor.pyi +6 -14
  220. homeassistant-stubs/components/elgato/config_flow.pyi +6 -7
  221. homeassistant-stubs/components/elkm1/config_flow.pyi +13 -13
  222. homeassistant-stubs/components/elkm1/sensor.pyi +2 -2
  223. homeassistant-stubs/components/emulated_hue/__init__.pyi +2 -1
  224. homeassistant-stubs/components/emulated_hue/config.pyi +3 -3
  225. homeassistant-stubs/components/emulated_hue/hue_api.pyi +2 -3
  226. homeassistant-stubs/components/energy/sensor.pyi +5 -1
  227. homeassistant-stubs/components/energyzero/config_flow.pyi +2 -3
  228. homeassistant-stubs/components/energyzero/sensor.pyi +3 -7
  229. homeassistant-stubs/components/enphase_envoy/binary_sensor.pyi +6 -14
  230. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +5 -6
  231. homeassistant-stubs/components/enphase_envoy/diagnostics.pyi +3 -0
  232. homeassistant-stubs/components/enphase_envoy/number.pyi +6 -14
  233. homeassistant-stubs/components/enphase_envoy/select.pyi +6 -14
  234. homeassistant-stubs/components/enphase_envoy/sensor.pyi +39 -53
  235. homeassistant-stubs/components/enphase_envoy/switch.pyi +9 -21
  236. homeassistant-stubs/components/esphome/alarm_control_panel.pyi +1 -1
  237. homeassistant-stubs/components/esphome/button.pyi +1 -1
  238. homeassistant-stubs/components/esphome/climate.pyi +1 -1
  239. homeassistant-stubs/components/esphome/config_flow.pyi +15 -16
  240. homeassistant-stubs/components/esphome/cover.pyi +1 -1
  241. homeassistant-stubs/components/esphome/date.pyi +14 -0
  242. homeassistant-stubs/components/esphome/entity.pyi +5 -3
  243. homeassistant-stubs/components/esphome/entry_data.pyi +15 -14
  244. homeassistant-stubs/components/esphome/fan.pyi +1 -1
  245. homeassistant-stubs/components/esphome/light.pyi +1 -1
  246. homeassistant-stubs/components/esphome/lock.pyi +1 -1
  247. homeassistant-stubs/components/esphome/manager.pyi +3 -3
  248. homeassistant-stubs/components/esphome/media_player.pyi +1 -1
  249. homeassistant-stubs/components/esphome/number.pyi +1 -1
  250. homeassistant-stubs/components/esphome/select.pyi +1 -1
  251. homeassistant-stubs/components/esphome/switch.pyi +1 -1
  252. homeassistant-stubs/components/esphome/text.pyi +1 -1
  253. homeassistant-stubs/components/esphome/time.pyi +14 -0
  254. homeassistant-stubs/components/esphome/update.pyi +1 -1
  255. homeassistant-stubs/components/evil_genius_labs/config_flow.pyi +3 -4
  256. homeassistant-stubs/components/faa_delays/config_flow.pyi +3 -4
  257. homeassistant-stubs/components/fastdotcom/__init__.pyi +1 -1
  258. homeassistant-stubs/components/fastdotcom/config_flow.pyi +3 -4
  259. homeassistant-stubs/components/fastdotcom/coordinator.pyi +1 -1
  260. homeassistant-stubs/components/fastdotcom/diagnostics.pyi +7 -0
  261. homeassistant-stubs/components/fastdotcom/sensor.pyi +3 -3
  262. homeassistant-stubs/components/fastdotcom/services.pyi +1 -1
  263. homeassistant-stubs/components/file_upload/__init__.pyi +1 -1
  264. homeassistant-stubs/components/filesize/__init__.pyi +0 -2
  265. homeassistant-stubs/components/filesize/config_flow.pyi +2 -3
  266. homeassistant-stubs/components/filesize/coordinator.pyi +6 -1
  267. homeassistant-stubs/components/filter/sensor.pyi +3 -3
  268. homeassistant-stubs/components/fitbit/config_flow.pyi +6 -7
  269. homeassistant-stubs/components/flexit_bacnet/config_flow.pyi +3 -4
  270. homeassistant-stubs/components/flux_led/config_flow.pyi +14 -14
  271. homeassistant-stubs/components/flux_led/discovery.pyi +1 -0
  272. homeassistant-stubs/components/flux_led/number.pyi +0 -5
  273. homeassistant-stubs/components/flux_led/select.pyi +0 -3
  274. homeassistant-stubs/components/flux_led/sensor.pyi +0 -1
  275. homeassistant-stubs/components/flux_led/switch.pyi +0 -4
  276. homeassistant-stubs/components/forecast_solar/config_flow.pyi +3 -4
  277. homeassistant-stubs/components/fritz/button.pyi +3 -7
  278. homeassistant-stubs/components/fritz/config_flow.pyi +11 -12
  279. homeassistant-stubs/components/fritzbox/config_flow.pyi +7 -8
  280. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +9 -10
  281. homeassistant-stubs/components/fronius/config_flow.pyi +5 -6
  282. homeassistant-stubs/components/frontend/__init__.pyi +1 -1
  283. homeassistant-stubs/components/fully_kiosk/button.pyi +3 -7
  284. homeassistant-stubs/components/fully_kiosk/config_flow.pyi +7 -8
  285. homeassistant-stubs/components/fully_kiosk/switch.pyi +3 -7
  286. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +5 -5
  287. homeassistant-stubs/components/generic_thermostat/climate.pyi +3 -3
  288. homeassistant-stubs/components/geo_location/trigger.pyi +2 -2
  289. homeassistant-stubs/components/geocaching/config_flow.pyi +4 -4
  290. homeassistant-stubs/components/geocaching/sensor.pyi +3 -7
  291. homeassistant-stubs/components/gios/config_flow.pyi +3 -4
  292. homeassistant-stubs/components/glances/config_flow.pyi +6 -7
  293. homeassistant-stubs/components/glances/sensor.pyi +3 -7
  294. homeassistant-stubs/components/goalzero/config_flow.pyi +5 -6
  295. homeassistant-stubs/components/google/config_flow.pyi +11 -12
  296. homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +8 -10
  297. homeassistant-stubs/components/google_sheets/config_flow.pyi +4 -5
  298. homeassistant-stubs/components/gpsd/config_flow.pyi +4 -5
  299. homeassistant-stubs/components/group/__init__.pyi +7 -102
  300. homeassistant-stubs/components/group/binary_sensor.pyi +1 -1
  301. homeassistant-stubs/components/group/config_flow.pyi +2 -2
  302. homeassistant-stubs/components/group/const.pyi +12 -0
  303. homeassistant-stubs/components/group/cover.pyi +1 -1
  304. homeassistant-stubs/components/group/entity.pyi +81 -0
  305. homeassistant-stubs/components/group/event.pyi +3 -3
  306. homeassistant-stubs/components/group/fan.pyi +1 -1
  307. homeassistant-stubs/components/group/light.pyi +1 -1
  308. homeassistant-stubs/components/group/lock.pyi +1 -1
  309. homeassistant-stubs/components/group/media_player.pyi +3 -3
  310. homeassistant-stubs/components/group/registry.pyi +23 -0
  311. homeassistant-stubs/components/group/sensor.pyi +1 -1
  312. homeassistant-stubs/components/group/switch.pyi +1 -1
  313. homeassistant-stubs/components/guardian/config_flow.pyi +7 -8
  314. homeassistant-stubs/components/hardkernel/config_flow.pyi +2 -3
  315. homeassistant-stubs/components/here_travel_time/__init__.pyi +1 -0
  316. homeassistant-stubs/components/here_travel_time/config_flow.pyi +17 -18
  317. homeassistant-stubs/components/here_travel_time/sensor.pyi +0 -1
  318. homeassistant-stubs/components/history/__init__.pyi +1 -1
  319. homeassistant-stubs/components/history/websocket_api.pyi +2 -2
  320. homeassistant-stubs/components/history_stats/coordinator.pyi +2 -3
  321. homeassistant-stubs/components/history_stats/data.pyi +2 -3
  322. homeassistant-stubs/components/holiday/config_flow.pyi +7 -5
  323. homeassistant-stubs/components/homeassistant/trigger.pyi +2 -1
  324. homeassistant-stubs/components/homeassistant/triggers/event.pyi +5 -1
  325. homeassistant-stubs/components/homeassistant/triggers/homeassistant.pyi +1 -0
  326. homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +2 -2
  327. homeassistant-stubs/components/homeassistant/triggers/state.pyi +2 -2
  328. homeassistant-stubs/components/homeassistant/triggers/time.pyi +2 -2
  329. homeassistant-stubs/components/homeassistant_green/config_flow.pyi +4 -5
  330. homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +29 -29
  331. homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +1 -1
  332. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +6 -5
  333. homeassistant-stubs/components/homeassistant_sky_connect/const.pyi +18 -0
  334. homeassistant-stubs/components/homeassistant_sky_connect/hardware.pyi +1 -1
  335. homeassistant-stubs/components/homeassistant_sky_connect/util.pyi +2 -0
  336. homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +9 -10
  337. homeassistant-stubs/components/homekit/__init__.pyi +9 -6
  338. homeassistant-stubs/components/homekit/accessories.pyi +5 -6
  339. homeassistant-stubs/components/homekit/config_flow.pyi +16 -18
  340. homeassistant-stubs/components/homekit/const.pyi +3 -0
  341. homeassistant-stubs/components/homekit/type_cameras.pyi +3 -4
  342. homeassistant-stubs/components/homekit/type_covers.pyi +2 -3
  343. homeassistant-stubs/components/homekit/type_humidifiers.pyi +2 -3
  344. homeassistant-stubs/components/homekit/util.pyi +2 -3
  345. homeassistant-stubs/components/homekit_controller/__init__.pyi +1 -0
  346. homeassistant-stubs/components/homekit_controller/config_flow.pyi +13 -13
  347. homeassistant-stubs/components/homekit_controller/select.pyi +3 -7
  348. homeassistant-stubs/components/homewizard/config_flow.pyi +7 -7
  349. homeassistant-stubs/components/homewizard/coordinator.pyi +0 -1
  350. homeassistant-stubs/components/homeworks/__init__.pyi +63 -0
  351. homeassistant-stubs/components/homeworks/binary_sensor.pyi +25 -0
  352. homeassistant-stubs/components/homeworks/button.pyi +18 -0
  353. homeassistant-stubs/components/homeworks/config_flow.pyi +61 -0
  354. homeassistant-stubs/components/homeworks/const.pyi +14 -0
  355. homeassistant-stubs/components/homeworks/light.pyi +34 -0
  356. homeassistant-stubs/components/http/__init__.pyi +4 -3
  357. homeassistant-stubs/components/http/ban.pyi +4 -3
  358. homeassistant-stubs/components/http/const.pyi +1 -2
  359. homeassistant-stubs/components/http/cors.pyi +1 -0
  360. homeassistant-stubs/components/http/static.pyi +0 -1
  361. homeassistant-stubs/components/huawei_lte/config_flow.pyi +12 -13
  362. homeassistant-stubs/components/huawei_lte/select.pyi +3 -7
  363. homeassistant-stubs/components/humidifier/__init__.pyi +8 -8
  364. homeassistant-stubs/components/hydrawise/config_flow.pyi +8 -8
  365. homeassistant-stubs/components/hyperion/config_flow.pyi +12 -13
  366. homeassistant-stubs/components/hyperion/const.pyi +2 -0
  367. homeassistant-stubs/components/hyperion/sensor.pyi +39 -0
  368. homeassistant-stubs/components/ibeacon/config_flow.pyi +7 -8
  369. homeassistant-stubs/components/ibeacon/device_tracker.pyi +1 -2
  370. homeassistant-stubs/components/ibeacon/sensor.pyi +3 -7
  371. homeassistant-stubs/components/idasen_desk/button.pyi +4 -8
  372. homeassistant-stubs/components/idasen_desk/config_flow.pyi +4 -5
  373. homeassistant-stubs/components/idasen_desk/cover.pyi +3 -3
  374. homeassistant-stubs/components/idasen_desk/sensor.pyi +3 -7
  375. homeassistant-stubs/components/image/__init__.pyi +2 -2
  376. homeassistant-stubs/components/image_processing/__init__.pyi +1 -1
  377. homeassistant-stubs/components/image_upload/__init__.pyi +1 -1
  378. homeassistant-stubs/components/imap/config_flow.pyi +10 -10
  379. homeassistant-stubs/components/integration/sensor.pyi +36 -5
  380. homeassistant-stubs/components/ios/__init__.pyi +1 -1
  381. homeassistant-stubs/components/ipp/config_flow.pyi +5 -6
  382. homeassistant-stubs/components/ipp/sensor.pyi +3 -7
  383. homeassistant-stubs/components/iqvia/config_flow.pyi +3 -4
  384. homeassistant-stubs/components/islamic_prayer_times/config_flow.pyi +7 -8
  385. homeassistant-stubs/components/isy994/config_flow.pyi +18 -17
  386. homeassistant-stubs/components/jellyfin/config_flow.pyi +5 -6
  387. homeassistant-stubs/components/jellyfin/sensor.pyi +3 -7
  388. homeassistant-stubs/components/jvc_projector/config_flow.pyi +4 -5
  389. homeassistant-stubs/components/jvc_projector/sensor.pyi +20 -0
  390. homeassistant-stubs/components/kaleidescape/config_flow.pyi +4 -5
  391. homeassistant-stubs/components/kaleidescape/sensor.pyi +3 -7
  392. homeassistant-stubs/components/knx/config_flow.pyi +18 -19
  393. homeassistant-stubs/components/knx/expose.pyi +3 -3
  394. homeassistant-stubs/components/kraken/config_flow.pyi +7 -8
  395. homeassistant-stubs/components/kraken/sensor.pyi +3 -7
  396. homeassistant-stubs/components/lacrosse_view/config_flow.pyi +5 -6
  397. homeassistant-stubs/components/lacrosse_view/sensor.pyi +3 -7
  398. homeassistant-stubs/components/lamarzocco/config_flow.pyi +16 -8
  399. homeassistant-stubs/components/lamarzocco/const.pyi +1 -0
  400. homeassistant-stubs/components/lamarzocco/coordinator.pyi +7 -2
  401. homeassistant-stubs/components/lametric/config_flow.pyi +11 -11
  402. homeassistant-stubs/components/laundrify/binary_sensor.pyi +1 -1
  403. homeassistant-stubs/components/laundrify/config_flow.pyi +5 -6
  404. homeassistant-stubs/components/lcn/config_flow.pyi +4 -5
  405. homeassistant-stubs/components/ld2410_ble/config_flow.pyi +4 -5
  406. homeassistant-stubs/components/led_ble/config_flow.pyi +4 -5
  407. homeassistant-stubs/components/lidarr/config_flow.pyi +4 -5
  408. homeassistant-stubs/components/lifx/config_flow.pyi +10 -11
  409. homeassistant-stubs/components/linear_garage_door/config_flow.pyi +5 -6
  410. homeassistant-stubs/components/litejet/config_flow.pyi +7 -8
  411. homeassistant-stubs/components/litterrobot/config_flow.pyi +5 -6
  412. homeassistant-stubs/components/litterrobot/switch.pyi +2 -5
  413. homeassistant-stubs/components/local_ip/config_flow.pyi +2 -3
  414. homeassistant-stubs/components/local_ip/sensor.pyi +1 -1
  415. homeassistant-stubs/components/local_todo/config_flow.pyi +3 -4
  416. homeassistant-stubs/components/logbook/helpers.pyi +1 -2
  417. homeassistant-stubs/components/logbook/rest_api.pyi +1 -1
  418. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -0
  419. homeassistant-stubs/components/lookin/config_flow.pyi +5 -6
  420. homeassistant-stubs/components/luftdaten/config_flow.pyi +4 -5
  421. homeassistant-stubs/components/map/__init__.pyi +6 -1
  422. homeassistant-stubs/components/matter/config_flow.pyi +14 -14
  423. homeassistant-stubs/components/met_eireann/config_flow.pyi +3 -4
  424. homeassistant-stubs/components/met_eireann/weather.pyi +1 -5
  425. homeassistant-stubs/components/metoffice/config_flow.pyi +7 -6
  426. homeassistant-stubs/components/metoffice/weather.pyi +2 -5
  427. homeassistant-stubs/components/mikrotik/config_flow.pyi +11 -12
  428. homeassistant-stubs/components/min_max/sensor.pyi +3 -3
  429. homeassistant-stubs/components/minecraft_server/binary_sensor.pyi +2 -9
  430. homeassistant-stubs/components/minecraft_server/config_flow.pyi +3 -4
  431. homeassistant-stubs/components/minecraft_server/sensor.pyi +3 -16
  432. homeassistant-stubs/components/mjpeg/config_flow.pyi +3 -4
  433. homeassistant-stubs/components/modbus/__init__.pyi +2 -2
  434. homeassistant-stubs/components/modbus/base_platform.pyi +1 -3
  435. homeassistant-stubs/components/modbus/const.pyi +0 -2
  436. homeassistant-stubs/components/modbus/modbus.pyi +3 -5
  437. homeassistant-stubs/components/modbus/validators.pyi +7 -2
  438. homeassistant-stubs/components/modem_callerid/button.pyi +0 -1
  439. homeassistant-stubs/components/modem_callerid/config_flow.pyi +5 -6
  440. homeassistant-stubs/components/modem_callerid/const.pyi +0 -1
  441. homeassistant-stubs/components/modem_callerid/sensor.pyi +2 -2
  442. homeassistant-stubs/components/moon/config_flow.pyi +2 -3
  443. homeassistant-stubs/components/moon/sensor.pyi +0 -2
  444. homeassistant-stubs/components/mopeka/config_flow.pyi +4 -5
  445. homeassistant-stubs/components/motionmount/config_flow.pyi +6 -7
  446. homeassistant-stubs/components/mqtt/__init__.pyi +2 -2
  447. homeassistant-stubs/components/mqtt/climate.pyi +1 -1
  448. homeassistant-stubs/components/mqtt/config_flow.pyi +8 -9
  449. homeassistant-stubs/components/mqtt/const.pyi +0 -1
  450. homeassistant-stubs/components/mqtt/discovery.pyi +6 -4
  451. homeassistant-stubs/components/mqtt/event.pyi +2 -2
  452. homeassistant-stubs/components/mqtt/humidifier.pyi +1 -1
  453. homeassistant-stubs/components/mqtt/image.pyi +2 -2
  454. homeassistant-stubs/components/mqtt/light/schema_json.pyi +5 -2
  455. homeassistant-stubs/components/mqtt/mixins.pyi +7 -7
  456. homeassistant-stubs/components/mqtt/models.pyi +9 -3
  457. homeassistant-stubs/components/mqtt/sensor.pyi +4 -1
  458. homeassistant-stubs/components/mqtt/tag.pyi +3 -2
  459. homeassistant-stubs/components/mqtt/util.pyi +5 -1
  460. homeassistant-stubs/components/mysensors/config_flow.pyi +8 -10
  461. homeassistant-stubs/components/mysensors/gateway.pyi +1 -1
  462. homeassistant-stubs/components/myuplink/config_flow.pyi +4 -5
  463. homeassistant-stubs/components/myuplink/helpers.pyi +1 -0
  464. homeassistant-stubs/components/myuplink/number.pyi +1 -1
  465. homeassistant-stubs/components/myuplink/sensor.pyi +1 -1
  466. homeassistant-stubs/components/myuplink/switch.pyi +1 -1
  467. homeassistant-stubs/components/nam/config_flow.pyi +8 -9
  468. homeassistant-stubs/components/nam/sensor.pyi +3 -7
  469. homeassistant-stubs/components/nanoleaf/config_flow.pyi +12 -13
  470. homeassistant-stubs/components/nanoleaf/light.pyi +1 -1
  471. homeassistant-stubs/components/neato/config_flow.pyi +5 -6
  472. homeassistant-stubs/components/neato/vacuum.pyi +0 -1
  473. homeassistant-stubs/components/nest/config_flow.pyi +10 -11
  474. homeassistant-stubs/components/netatmo/config_flow.pyi +12 -13
  475. homeassistant-stubs/components/netatmo/sensor.pyi +3 -7
  476. homeassistant-stubs/components/network/network.pyi +1 -0
  477. homeassistant-stubs/components/nextdns/config_flow.pyi +4 -5
  478. homeassistant-stubs/components/nfandroidtv/config_flow.pyi +3 -4
  479. homeassistant-stubs/components/nightscout/config_flow.pyi +5 -5
  480. homeassistant-stubs/components/notify/legacy.pyi +1 -1
  481. homeassistant-stubs/components/notion/__init__.pyi +4 -29
  482. homeassistant-stubs/components/notion/binary_sensor.pyi +1 -0
  483. homeassistant-stubs/components/notion/config_flow.pyi +5 -7
  484. homeassistant-stubs/components/notion/coordinator.pyi +44 -0
  485. homeassistant-stubs/components/notion/diagnostics.pyi +1 -2
  486. homeassistant-stubs/components/notion/sensor.pyi +1 -0
  487. homeassistant-stubs/components/nut/__init__.pyi +10 -9
  488. homeassistant-stubs/components/nut/config_flow.pyi +12 -12
  489. homeassistant-stubs/components/onboarding/__init__.pyi +16 -2
  490. homeassistant-stubs/components/onboarding/views.pyi +8 -6
  491. homeassistant-stubs/components/oncue/config_flow.pyi +3 -4
  492. homeassistant-stubs/components/onewire/config_flow.pyi +5 -6
  493. homeassistant-stubs/components/open_meteo/config_flow.pyi +2 -3
  494. homeassistant-stubs/components/open_meteo/weather.pyi +0 -2
  495. homeassistant-stubs/components/openexchangerates/config_flow.pyi +5 -5
  496. homeassistant-stubs/components/opensky/config_flow.pyi +3 -4
  497. homeassistant-stubs/components/opensky/sensor.pyi +1 -1
  498. homeassistant-stubs/components/openuv/config_flow.pyi +6 -8
  499. homeassistant-stubs/components/oralb/config_flow.pyi +4 -5
  500. homeassistant-stubs/components/otbr/config_flow.pyi +3 -4
  501. homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +3 -7
  502. homeassistant-stubs/components/overkiz/binary_sensor.pyi +3 -7
  503. homeassistant-stubs/components/overkiz/climate_entities/hitachi_air_to_air_heat_pump_ovp.pyi +1 -0
  504. homeassistant-stubs/components/overkiz/config_flow.pyi +10 -12
  505. homeassistant-stubs/components/overkiz/executor.pyi +1 -1
  506. homeassistant-stubs/components/overkiz/number.pyi +3 -7
  507. homeassistant-stubs/components/overkiz/select.pyi +3 -7
  508. homeassistant-stubs/components/overkiz/switch.pyi +3 -7
  509. homeassistant-stubs/components/p1_monitor/config_flow.pyi +2 -3
  510. homeassistant-stubs/components/peco/config_flow.pyi +4 -5
  511. homeassistant-stubs/components/peco/sensor.pyi +3 -7
  512. homeassistant-stubs/components/persistent_notification/__init__.pyi +2 -1
  513. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +3 -7
  514. homeassistant-stubs/components/pi_hole/config_flow.pyi +6 -7
  515. homeassistant-stubs/components/ping/binary_sensor.pyi +2 -3
  516. homeassistant-stubs/components/ping/config_flow.pyi +8 -9
  517. homeassistant-stubs/components/ping/coordinator.pyi +1 -1
  518. homeassistant-stubs/components/ping/entity.pyi +12 -0
  519. homeassistant-stubs/components/ping/sensor.pyi +29 -0
  520. homeassistant-stubs/components/plugwise/config_flow.pyi +3 -4
  521. homeassistant-stubs/components/poolsense/config_flow.pyi +3 -4
  522. homeassistant-stubs/components/powerwall/config_flow.pyi +12 -11
  523. homeassistant-stubs/components/private_ble_device/config_flow.pyi +2 -3
  524. homeassistant-stubs/components/private_ble_device/device_tracker.pyi +1 -2
  525. homeassistant-stubs/components/private_ble_device/sensor.pyi +3 -7
  526. homeassistant-stubs/components/prometheus/__init__.pyi +4 -4
  527. homeassistant-stubs/components/proximity/config_flow.pyi +4 -5
  528. homeassistant-stubs/components/proximity/coordinator.pyi +3 -3
  529. homeassistant-stubs/components/prusalink/__init__.pyi +1 -1
  530. homeassistant-stubs/components/prusalink/config_flow.pyi +6 -5
  531. homeassistant-stubs/components/pure_energie/config_flow.pyi +4 -5
  532. homeassistant-stubs/components/pure_energie/sensor.pyi +3 -7
  533. homeassistant-stubs/components/purpleair/config_flow.pyi +14 -17
  534. homeassistant-stubs/components/pushbullet/config_flow.pyi +3 -4
  535. homeassistant-stubs/components/pvoutput/config_flow.pyi +4 -5
  536. homeassistant-stubs/components/qnap_qsw/button.pyi +3 -7
  537. homeassistant-stubs/components/qnap_qsw/config_flow.pyi +6 -6
  538. homeassistant-stubs/components/rabbitair/config_flow.pyi +2 -3
  539. homeassistant-stubs/components/radarr/config_flow.pyi +4 -5
  540. homeassistant-stubs/components/rainforest_raven/config_flow.pyi +5 -6
  541. homeassistant-stubs/components/rainmachine/config_flow.pyi +8 -10
  542. homeassistant-stubs/components/raspberry_pi/config_flow.pyi +2 -3
  543. homeassistant-stubs/components/rdw/config_flow.pyi +2 -3
  544. homeassistant-stubs/components/recollect_waste/calendar.pyi +1 -1
  545. homeassistant-stubs/components/recollect_waste/config_flow.pyi +7 -8
  546. homeassistant-stubs/components/recorder/core.pyi +4 -3
  547. homeassistant-stubs/components/recorder/db_schema.pyi +7 -0
  548. homeassistant-stubs/components/recorder/history/modern.pyi +4 -4
  549. homeassistant-stubs/components/recorder/migration.pyi +47 -5
  550. homeassistant-stubs/components/recorder/models/legacy.pyi +10 -0
  551. homeassistant-stubs/components/recorder/models/state.pyi +4 -0
  552. homeassistant-stubs/components/recorder/queries.pyi +2 -1
  553. homeassistant-stubs/components/recorder/table_managers/states.pyi +3 -0
  554. homeassistant-stubs/components/renault/binary_sensor.pyi +3 -11
  555. homeassistant-stubs/components/renault/button.pyi +3 -7
  556. homeassistant-stubs/components/renault/config_flow.pyi +8 -9
  557. homeassistant-stubs/components/renault/select.pyi +3 -13
  558. homeassistant-stubs/components/renault/sensor.pyi +3 -12
  559. homeassistant-stubs/components/rest/__init__.pyi +1 -0
  560. homeassistant-stubs/components/rfxtrx/config_flow.pyi +12 -12
  561. homeassistant-stubs/components/rfxtrx/event.pyi +22 -0
  562. homeassistant-stubs/components/rhasspy/config_flow.pyi +3 -4
  563. homeassistant-stubs/components/ridwell/calendar.pyi +1 -1
  564. homeassistant-stubs/components/ridwell/config_flow.pyi +6 -7
  565. homeassistant-stubs/components/rituals_perfume_genie/config_flow.pyi +3 -4
  566. homeassistant-stubs/components/rituals_perfume_genie/switch.pyi +3 -7
  567. homeassistant-stubs/components/roku/binary_sensor.pyi +3 -7
  568. homeassistant-stubs/components/roku/config_flow.pyi +6 -7
  569. homeassistant-stubs/components/roku/select.pyi +6 -10
  570. homeassistant-stubs/components/roku/sensor.pyi +3 -7
  571. homeassistant-stubs/components/romy/config_flow.pyi +5 -6
  572. homeassistant-stubs/components/romy/entity.pyi +11 -0
  573. homeassistant-stubs/components/romy/vacuum.pyi +4 -11
  574. homeassistant-stubs/components/rpi_power/config_flow.pyi +2 -2
  575. homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +9 -10
  576. homeassistant-stubs/components/ruuvi_gateway/config_flow.pyi +5 -6
  577. homeassistant-stubs/components/ruuvitag_ble/config_flow.pyi +4 -5
  578. homeassistant-stubs/components/samsungtv/config_flow.pyi +17 -17
  579. homeassistant-stubs/components/samsungtv/media_player.pyi +1 -0
  580. homeassistant-stubs/components/scrape/config_flow.pyi +1 -0
  581. homeassistant-stubs/components/search/__init__.pyi +41 -20
  582. homeassistant-stubs/components/sensibo/binary_sensor.pyi +6 -14
  583. homeassistant-stubs/components/sensibo/button.pyi +3 -7
  584. homeassistant-stubs/components/sensibo/config_flow.pyi +6 -7
  585. homeassistant-stubs/components/sensibo/number.pyi +3 -7
  586. homeassistant-stubs/components/sensibo/select.pyi +3 -7
  587. homeassistant-stubs/components/sensibo/sensor.pyi +6 -14
  588. homeassistant-stubs/components/sensibo/switch.pyi +3 -7
  589. homeassistant-stubs/components/sensibo/update.pyi +3 -7
  590. homeassistant-stubs/components/sensirion_ble/config_flow.pyi +4 -5
  591. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +3 -7
  592. homeassistant-stubs/components/sfr_box/button.pyi +3 -7
  593. homeassistant-stubs/components/sfr_box/config_flow.pyi +6 -7
  594. homeassistant-stubs/components/sfr_box/sensor.pyi +3 -7
  595. homeassistant-stubs/components/shelly/__init__.pyi +2 -2
  596. homeassistant-stubs/components/shelly/binary_sensor.pyi +4 -4
  597. homeassistant-stubs/components/shelly/button.pyi +3 -7
  598. homeassistant-stubs/components/shelly/config_flow.pyi +15 -14
  599. homeassistant-stubs/components/shelly/const.pyi +2 -2
  600. homeassistant-stubs/components/shelly/coordinator.pyi +3 -1
  601. homeassistant-stubs/components/shelly/entity.pyi +4 -8
  602. homeassistant-stubs/components/shelly/event.pyi +2 -2
  603. homeassistant-stubs/components/shelly/light.pyi +29 -13
  604. homeassistant-stubs/components/shelly/number.pyi +1 -1
  605. homeassistant-stubs/components/shelly/sensor.pyi +4 -4
  606. homeassistant-stubs/components/shelly/switch.pyi +1 -1
  607. homeassistant-stubs/components/shelly/update.pyi +6 -14
  608. homeassistant-stubs/components/shelly/utils.pyi +8 -4
  609. homeassistant-stubs/components/shopping_list/config_flow.pyi +3 -4
  610. homeassistant-stubs/components/shopping_list/todo.pyi +0 -1
  611. homeassistant-stubs/components/simplepush/config_flow.pyi +3 -4
  612. homeassistant-stubs/components/simplisafe/config_flow.pyi +6 -8
  613. homeassistant-stubs/components/skybell/config_flow.pyi +5 -6
  614. homeassistant-stubs/components/skybell/sensor.pyi +3 -7
  615. homeassistant-stubs/components/slack/config_flow.pyi +3 -4
  616. homeassistant-stubs/components/sleepiq/button.pyi +3 -7
  617. homeassistant-stubs/components/sleepiq/config_flow.pyi +5 -6
  618. homeassistant-stubs/components/sleepiq/number.pyi +3 -7
  619. homeassistant-stubs/components/smhi/config_flow.pyi +6 -4
  620. homeassistant-stubs/components/smhi/weather.pyi +0 -2
  621. homeassistant-stubs/components/snooz/config_flow.pyi +8 -9
  622. homeassistant-stubs/components/sonarr/config_flow.pyi +6 -7
  623. homeassistant-stubs/components/speedtestdotnet/__init__.pyi +4 -2
  624. homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +7 -8
  625. homeassistant-stubs/components/speedtestdotnet/const.pyi +0 -1
  626. homeassistant-stubs/components/speedtestdotnet/sensor.pyi +1 -2
  627. homeassistant-stubs/components/sql/config_flow.pyi +6 -7
  628. homeassistant-stubs/components/ssdp/__init__.pyi +9 -7
  629. homeassistant-stubs/components/starlink/binary_sensor.pyi +3 -7
  630. homeassistant-stubs/components/starlink/button.pyi +3 -7
  631. homeassistant-stubs/components/starlink/config_flow.pyi +2 -3
  632. homeassistant-stubs/components/starlink/coordinator.pyi +6 -1
  633. homeassistant-stubs/components/starlink/device_tracker.pyi +3 -7
  634. homeassistant-stubs/components/starlink/sensor.pyi +3 -7
  635. homeassistant-stubs/components/starlink/switch.pyi +3 -7
  636. homeassistant-stubs/components/starlink/time.pyi +33 -0
  637. homeassistant-stubs/components/statistics/sensor.pyi +2 -2
  638. homeassistant-stubs/components/steamist/config_flow.pyi +9 -10
  639. homeassistant-stubs/components/steamist/sensor.pyi +3 -7
  640. homeassistant-stubs/components/stookalert/config_flow.pyi +2 -3
  641. homeassistant-stubs/components/stream/__init__.pyi +1 -0
  642. homeassistant-stubs/components/stream/core.pyi +1 -1
  643. homeassistant-stubs/components/streamlabswater/config_flow.pyi +3 -4
  644. homeassistant-stubs/components/stt/legacy.pyi +1 -1
  645. homeassistant-stubs/components/suez_water/config_flow.pyi +3 -4
  646. homeassistant-stubs/components/sun/__init__.pyi +4 -64
  647. homeassistant-stubs/components/sun/config_flow.pyi +3 -4
  648. homeassistant-stubs/components/sun/const.pyi +11 -0
  649. homeassistant-stubs/components/sun/entity.pyi +64 -0
  650. homeassistant-stubs/components/sun/sensor.pyi +1 -1
  651. homeassistant-stubs/components/surepetcare/config_flow.pyi +5 -6
  652. homeassistant-stubs/components/switch/light.pyi +2 -2
  653. homeassistant-stubs/components/switchbee/config_flow.pyi +3 -4
  654. homeassistant-stubs/components/switchbot_cloud/config_flow.pyi +3 -4
  655. homeassistant-stubs/components/switcher_kis/button.pyi +3 -7
  656. homeassistant-stubs/components/switcher_kis/config_flow.pyi +5 -6
  657. homeassistant-stubs/components/switcher_kis/cover.pyi +1 -1
  658. homeassistant-stubs/components/switcher_kis/switch.pyi +2 -0
  659. homeassistant-stubs/components/synology_dsm/binary_sensor.pyi +2 -2
  660. homeassistant-stubs/components/synology_dsm/button.pyi +3 -7
  661. homeassistant-stubs/components/synology_dsm/camera.pyi +2 -2
  662. homeassistant-stubs/components/synology_dsm/config_flow.pyi +14 -15
  663. homeassistant-stubs/components/synology_dsm/entity.pyi +3 -7
  664. homeassistant-stubs/components/synology_dsm/sensor.pyi +2 -2
  665. homeassistant-stubs/components/synology_dsm/switch.pyi +2 -2
  666. homeassistant-stubs/components/synology_dsm/update.pyi +2 -2
  667. homeassistant-stubs/components/system_log/__init__.pyi +4 -2
  668. homeassistant-stubs/components/systemmonitor/__init__.pyi +3 -1
  669. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +14 -12
  670. homeassistant-stubs/components/systemmonitor/config_flow.pyi +2 -2
  671. homeassistant-stubs/components/systemmonitor/const.pyi +1 -1
  672. homeassistant-stubs/components/systemmonitor/coordinator.pyi +29 -46
  673. homeassistant-stubs/components/systemmonitor/diagnostics.pyi +2 -2
  674. homeassistant-stubs/components/systemmonitor/sensor.pyi +23 -20
  675. homeassistant-stubs/components/systemmonitor/util.pyi +1 -1
  676. homeassistant-stubs/components/tailscale/config_flow.pyi +4 -5
  677. homeassistant-stubs/components/tailwind/config_flow.pyi +9 -9
  678. homeassistant-stubs/components/tami4/config_flow.pyi +4 -5
  679. homeassistant-stubs/components/tautulli/config_flow.pyi +4 -5
  680. homeassistant-stubs/components/tautulli/sensor.pyi +6 -14
  681. homeassistant-stubs/components/technove/config_flow.pyi +4 -5
  682. homeassistant-stubs/components/tedee/config_flow.pyi +7 -5
  683. homeassistant-stubs/components/threshold/binary_sensor.pyi +2 -2
  684. homeassistant-stubs/components/tibber/config_flow.pyi +3 -4
  685. homeassistant-stubs/components/tile/config_flow.pyi +7 -8
  686. homeassistant-stubs/components/tile/device_tracker.pyi +1 -2
  687. homeassistant-stubs/components/tilt_ble/config_flow.pyi +4 -5
  688. homeassistant-stubs/components/tolo/__init__.pyi +3 -3
  689. homeassistant-stubs/components/tolo/binary_sensor.pyi +0 -2
  690. homeassistant-stubs/components/tolo/button.pyi +0 -1
  691. homeassistant-stubs/components/tolo/climate.pyi +6 -5
  692. homeassistant-stubs/components/tolo/config_flow.pyi +5 -6
  693. homeassistant-stubs/components/tolo/const.pyi +11 -7
  694. homeassistant-stubs/components/tolo/number.pyi +6 -11
  695. homeassistant-stubs/components/tolo/select.pyi +19 -7
  696. homeassistant-stubs/components/tolo/sensor.pyi +6 -10
  697. homeassistant-stubs/components/tolo/switch.pyi +30 -0
  698. homeassistant-stubs/components/tplink/config_flow.pyi +14 -16
  699. homeassistant-stubs/components/tplink/switch.pyi +0 -1
  700. homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +17 -20
  701. homeassistant-stubs/components/tplink_omada/config_flow.pyi +6 -7
  702. homeassistant-stubs/components/tplink_omada/entity.pyi +3 -3
  703. homeassistant-stubs/components/tplink_omada/switch.pyi +54 -17
  704. homeassistant-stubs/components/tplink_omada/update.pyi +1 -1
  705. homeassistant-stubs/components/tractive/config_flow.pyi +5 -6
  706. homeassistant-stubs/components/tractive/sensor.pyi +3 -7
  707. homeassistant-stubs/components/tractive/switch.pyi +3 -7
  708. homeassistant-stubs/components/tradfri/config_flow.pyi +6 -7
  709. homeassistant-stubs/components/tradfri/sensor.pyi +3 -7
  710. homeassistant-stubs/components/trafikverket_camera/binary_sensor.pyi +3 -7
  711. homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +7 -8
  712. homeassistant-stubs/components/trafikverket_camera/sensor.pyi +3 -7
  713. homeassistant-stubs/components/trafikverket_ferry/config_flow.pyi +6 -7
  714. homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +3 -8
  715. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +9 -10
  716. homeassistant-stubs/components/trafikverket_train/sensor.pyi +3 -7
  717. homeassistant-stubs/components/trafikverket_weatherstation/config_flow.pyi +6 -7
  718. homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +3 -7
  719. homeassistant-stubs/components/transmission/__init__.pyi +3 -2
  720. homeassistant-stubs/components/transmission/config_flow.pyi +13 -13
  721. homeassistant-stubs/components/transmission/const.pyi +2 -0
  722. homeassistant-stubs/components/transmission/switch.pyi +3 -7
  723. homeassistant-stubs/components/trend/binary_sensor.pyi +2 -2
  724. homeassistant-stubs/components/tts/__init__.pyi +1 -0
  725. homeassistant-stubs/components/tts/legacy.pyi +1 -1
  726. homeassistant-stubs/components/twentemilieu/calendar.pyi +1 -1
  727. homeassistant-stubs/components/twentemilieu/config_flow.pyi +3 -4
  728. homeassistant-stubs/components/unifi/button.pyi +4 -8
  729. homeassistant-stubs/components/unifi/config_flow.pyi +16 -17
  730. homeassistant-stubs/components/unifi/device_tracker.pyi +4 -8
  731. homeassistant-stubs/components/unifi/entity.pyi +12 -15
  732. homeassistant-stubs/components/unifi/hub/config.pyi +31 -0
  733. homeassistant-stubs/components/unifi/hub/entity_loader.pyi +26 -0
  734. homeassistant-stubs/components/unifi/hub/hub.pyi +8 -28
  735. homeassistant-stubs/components/unifi/image.pyi +3 -8
  736. homeassistant-stubs/components/unifi/sensor.pyi +4 -10
  737. homeassistant-stubs/components/unifi/switch.pyi +6 -11
  738. homeassistant-stubs/components/unifi/update.pyi +4 -8
  739. homeassistant-stubs/components/unifiprotect/camera.pyi +5 -2
  740. homeassistant-stubs/components/unifiprotect/config_flow.pyi +16 -17
  741. homeassistant-stubs/components/unifiprotect/migrate.pyi +18 -4
  742. homeassistant-stubs/components/unifiprotect/repairs.pyi +17 -6
  743. homeassistant-stubs/components/unifiprotect/select.pyi +1 -0
  744. homeassistant-stubs/components/unifiprotect/services.pyi +8 -2
  745. homeassistant-stubs/components/unifiprotect/utils.pyi +2 -1
  746. homeassistant-stubs/components/upcloud/config_flow.pyi +8 -9
  747. homeassistant-stubs/components/uptime/config_flow.pyi +2 -3
  748. homeassistant-stubs/components/uptimerobot/config_flow.pyi +5 -6
  749. homeassistant-stubs/components/uptimerobot/sensor.pyi +0 -7
  750. homeassistant-stubs/components/uptimerobot/switch.pyi +1 -1
  751. homeassistant-stubs/components/usb/__init__.pyi +2 -1
  752. homeassistant-stubs/components/vacuum/__init__.pyi +1 -4
  753. homeassistant-stubs/components/vacuum/const.pyi +7 -0
  754. homeassistant-stubs/components/vacuum/group.pyi +1 -1
  755. homeassistant-stubs/components/vallox/binary_sensor.pyi +3 -7
  756. homeassistant-stubs/components/vallox/config_flow.pyi +3 -4
  757. homeassistant-stubs/components/vallox/date.pyi +22 -0
  758. homeassistant-stubs/components/vallox/number.pyi +3 -7
  759. homeassistant-stubs/components/vallox/switch.pyi +3 -7
  760. homeassistant-stubs/components/velbus/config_flow.pyi +6 -7
  761. homeassistant-stubs/components/vlc_telnet/config_flow.pyi +11 -11
  762. homeassistant-stubs/components/wallbox/config_flow.pyi +6 -6
  763. homeassistant-stubs/components/wallbox/number.pyi +3 -7
  764. homeassistant-stubs/components/waqi/__init__.pyi +0 -1
  765. homeassistant-stubs/components/waqi/config_flow.pyi +7 -11
  766. homeassistant-stubs/components/waqi/sensor.pyi +7 -22
  767. homeassistant-stubs/components/water_heater/const.pyi +6 -0
  768. homeassistant-stubs/components/water_heater/group.pyi +1 -1
  769. homeassistant-stubs/components/watttime/config_flow.pyi +10 -12
  770. homeassistant-stubs/components/weather/__init__.pyi +0 -13
  771. homeassistant-stubs/components/webhook/__init__.pyi +1 -2
  772. homeassistant-stubs/components/webostv/config_flow.pyi +8 -8
  773. homeassistant-stubs/components/websocket_api/commands.pyi +2 -3
  774. homeassistant-stubs/components/websocket_api/http.pyi +1 -1
  775. homeassistant-stubs/components/websocket_api/messages.pyi +4 -3
  776. homeassistant-stubs/components/wemo/__init__.pyi +3 -1
  777. homeassistant-stubs/components/wemo/config_flow.pyi +2 -3
  778. homeassistant-stubs/components/wemo/wemo_device.pyi +2 -1
  779. homeassistant-stubs/components/whois/config_flow.pyi +2 -3
  780. homeassistant-stubs/components/withings/__init__.pyi +13 -0
  781. homeassistant-stubs/components/withings/config_flow.pyi +4 -5
  782. homeassistant-stubs/components/wiz/config_flow.pyi +8 -8
  783. homeassistant-stubs/components/wled/config_flow.pyi +6 -10
  784. homeassistant-stubs/components/xiaomi_ble/config_flow.pyi +9 -10
  785. homeassistant-stubs/components/xiaomi_ble/const.pyi +9 -2
  786. homeassistant-stubs/components/xiaomi_ble/device_trigger.pyi +1 -1
  787. homeassistant-stubs/components/xiaomi_ble/event.pyi +1 -1
  788. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +5 -6
  789. homeassistant-stubs/components/yalexs_ble/config_flow.pyi +14 -14
  790. homeassistant-stubs/components/yalexs_ble/sensor.pyi +3 -7
  791. homeassistant-stubs/components/youtube/config_flow.pyi +6 -7
  792. homeassistant-stubs/components/youtube/sensor.pyi +3 -7
  793. homeassistant-stubs/components/zeroconf/__init__.pyi +1 -1
  794. homeassistant-stubs/components/zodiac/config_flow.pyi +2 -3
  795. homeassistant-stubs/components/zodiac/sensor.pyi +0 -2
  796. homeassistant-stubs/components/zone/__init__.pyi +2 -2
  797. homeassistant-stubs/components/zone/config_flow.pyi +2 -2
  798. homeassistant-stubs/components/zone/trigger.pyi +2 -2
  799. homeassistant-stubs/components/zwave_js/api.pyi +1 -2
  800. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +3 -7
  801. homeassistant-stubs/components/zwave_js/config_flow.pyi +39 -38
  802. homeassistant-stubs/components/zwave_js/humidifier.pyi +3 -7
  803. homeassistant-stubs/config.pyi +18 -3
  804. homeassistant-stubs/config_entries.pyi +52 -33
  805. homeassistant-stubs/const.pyi +11 -6
  806. homeassistant-stubs/core.pyi +62 -38
  807. homeassistant-stubs/data_entry_flow.pyi +38 -37
  808. homeassistant-stubs/exceptions.pyi +12 -5
  809. homeassistant-stubs/helpers/area_registry.pyi +7 -19
  810. homeassistant-stubs/helpers/category_registry.pyi +43 -0
  811. homeassistant-stubs/helpers/check_config.pyi +1 -1
  812. homeassistant-stubs/helpers/config_entry_flow.pyi +11 -12
  813. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +6 -7
  814. homeassistant-stubs/helpers/config_validation.pyi +8 -1
  815. homeassistant-stubs/helpers/data_entry_flow.pyi +9 -5
  816. homeassistant-stubs/helpers/debounce.pyi +2 -1
  817. homeassistant-stubs/helpers/device_registry.pyi +9 -5
  818. homeassistant-stubs/helpers/discovery.pyi +2 -1
  819. homeassistant-stubs/helpers/discovery_flow.pyi +2 -2
  820. homeassistant-stubs/helpers/dispatcher.pyi +2 -10
  821. homeassistant-stubs/helpers/entity.pyi +9 -7
  822. homeassistant-stubs/helpers/entity_component.pyi +2 -1
  823. homeassistant-stubs/helpers/entity_platform.pyi +2 -2
  824. homeassistant-stubs/helpers/entity_registry.pyi +14 -9
  825. homeassistant-stubs/helpers/event.pyi +30 -30
  826. homeassistant-stubs/helpers/floor_registry.pyi +12 -24
  827. homeassistant-stubs/helpers/frame.pyi +11 -3
  828. homeassistant-stubs/helpers/http.pyi +6 -3
  829. homeassistant-stubs/helpers/importlib.pyi +11 -0
  830. homeassistant-stubs/helpers/integration_platform.pyi +8 -6
  831. homeassistant-stubs/helpers/issue_registry.pyi +2 -3
  832. homeassistant-stubs/helpers/label_registry.pyi +11 -23
  833. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +22 -0
  834. homeassistant-stubs/helpers/ratelimit.pyi +2 -3
  835. homeassistant-stubs/helpers/registry.pyi +15 -0
  836. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +15 -15
  837. homeassistant-stubs/helpers/script.pyi +22 -8
  838. homeassistant-stubs/helpers/selector.pyi +9 -0
  839. homeassistant-stubs/helpers/service.pyi +9 -4
  840. homeassistant-stubs/helpers/storage.pyi +28 -4
  841. homeassistant-stubs/helpers/system_info.pyi +1 -0
  842. homeassistant-stubs/helpers/template.pyi +18 -3
  843. homeassistant-stubs/helpers/translation.pyi +2 -1
  844. homeassistant-stubs/helpers/trigger.pyi +1 -0
  845. homeassistant-stubs/helpers/typing.pyi +2 -5
  846. homeassistant-stubs/helpers/update_coordinator.pyi +5 -5
  847. homeassistant-stubs/loader.pyi +24 -5
  848. homeassistant-stubs/setup.pyi +21 -4
  849. homeassistant-stubs/util/async_.pyi +2 -2
  850. homeassistant-stubs/util/percentage.pyi +1 -1
  851. homeassistant-stubs/util/signal_type.pyi +20 -0
  852. homeassistant-stubs/util/unit_conversion.pyi +10 -0
  853. {homeassistant_stubs-2024.3.3.dist-info → homeassistant_stubs-2024.4.0b0.dist-info}/METADATA +4 -5
  854. {homeassistant_stubs-2024.3.3.dist-info → homeassistant_stubs-2024.4.0b0.dist-info}/RECORD +856 -817
  855. homeassistant-stubs/components/axis/device.pyi +0 -64
  856. homeassistant-stubs/components/binary_sensor/group.pyi +0 -5
  857. homeassistant-stubs/components/fan/group.pyi +0 -5
  858. homeassistant-stubs/components/humidifier/group.pyi +0 -5
  859. homeassistant-stubs/components/light/group.pyi +0 -5
  860. homeassistant-stubs/components/remote/group.pyi +0 -5
  861. homeassistant-stubs/components/switch/group.pyi +0 -5
  862. {homeassistant_stubs-2024.3.3.dist-info → homeassistant_stubs-2024.4.0b0.dist-info}/LICENSE +0 -0
  863. {homeassistant_stubs-2024.3.3.dist-info → homeassistant_stubs-2024.4.0b0.dist-info}/WHEEL +0 -0
@@ -13,14 +13,14 @@ from .data_entry_flow import FLOW_NOT_COMPLETE_STEPS as FLOW_NOT_COMPLETE_STEPS,
13
13
  from .exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
14
14
  from .helpers import device_registry as device_registry, entity_registry as entity_registry, storage as storage
15
15
  from .helpers.debounce import Debouncer as Debouncer
16
- from .helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
16
+ from .helpers.dispatcher import SignalType as SignalType, async_dispatcher_send as async_dispatcher_send
17
17
  from .helpers.event import RANDOM_MICROSECOND_MAX as RANDOM_MICROSECOND_MAX, RANDOM_MICROSECOND_MIN as RANDOM_MICROSECOND_MIN, async_call_later as async_call_later
18
18
  from .helpers.frame import report as report
19
19
  from .helpers.json import json_bytes as json_bytes, json_fragment as json_fragment
20
20
  from .helpers.service_info.mqtt import MqttServiceInfo as MqttServiceInfo
21
21
  from .helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
22
22
  from .loader import async_suggest_report_issue as async_suggest_report_issue
23
- from .setup import DATA_SETUP_DONE as DATA_SETUP_DONE, async_process_deps_reqs as async_process_deps_reqs, async_setup_component as async_setup_component
23
+ from .setup import DATA_SETUP_DONE as DATA_SETUP_DONE, SetupPhases as SetupPhases, async_pause_setup as async_pause_setup, async_process_deps_reqs as async_process_deps_reqs, async_setup_component as async_setup_component, async_start_setup as async_start_setup
24
24
  from .util.async_ import create_eager_task as create_eager_task
25
25
  from .util.decorator import Registry as Registry
26
26
  from _typeshed import Incomplete
@@ -43,12 +43,14 @@ SOURCE_IMPORT: str
43
43
  SOURCE_INTEGRATION_DISCOVERY: str
44
44
  SOURCE_MQTT: str
45
45
  SOURCE_SSDP: str
46
+ SOURCE_SYSTEM: str
46
47
  SOURCE_USB: str
47
48
  SOURCE_USER: str
48
49
  SOURCE_ZEROCONF: str
49
50
  SOURCE_IGNORE: str
50
51
  SOURCE_UNIGNORE: str
51
52
  SOURCE_REAUTH: str
53
+ SOURCE_RECONFIGURE: str
52
54
  HANDLERS: Registry[str, type[ConfigFlow]]
53
55
  STORAGE_KEY: str
54
56
  STORAGE_VERSION: int
@@ -75,7 +77,7 @@ DISCOVERY_NOTIFICATION_ID: str
75
77
  DISCOVERY_SOURCES: Incomplete
76
78
  RECONFIGURE_NOTIFICATION_ID: str
77
79
  EVENT_FLOW_DISCOVERED: str
78
- SIGNAL_CONFIG_ENTRY_CHANGED: str
80
+ SIGNAL_CONFIG_ENTRY_CHANGED: Incomplete
79
81
  NO_RESET_TRIES_STATES: Incomplete
80
82
 
81
83
  class ConfigEntryChange(StrEnum):
@@ -103,6 +105,10 @@ UpdateListenerType: Incomplete
103
105
  FROZEN_CONFIG_ENTRY_ATTRS: Incomplete
104
106
  UPDATE_ENTRY_CONFIG_ENTRY_ATTRS: Incomplete
105
107
 
108
+ class ConfigFlowResult(FlowResult, total=False):
109
+ minor_version: int
110
+ version: int
111
+
106
112
  class ConfigEntry:
107
113
  entry_id: str
108
114
  domain: str
@@ -121,11 +127,13 @@ class ConfigEntry:
121
127
  supports_unload: Incomplete
122
128
  supports_remove_device: Incomplete
123
129
  _supports_options: Incomplete
130
+ _supports_reconfigure: Incomplete
124
131
  update_listeners: Incomplete
125
132
  _async_cancel_retry_setup: Incomplete
126
133
  _on_unload: Incomplete
127
134
  reload_lock: Incomplete
128
135
  _reauth_lock: Incomplete
136
+ _reconfigure_lock: Incomplete
129
137
  _tasks: Incomplete
130
138
  _background_tasks: Incomplete
131
139
  _integration_for_domain: Incomplete
@@ -135,6 +143,8 @@ class ConfigEntry:
135
143
  def __setattr__(self, key: str, value: Any) -> None: ...
136
144
  @property
137
145
  def supports_options(self) -> bool: ...
146
+ @property
147
+ def supports_reconfigure(self) -> bool: ...
138
148
  def clear_cache(self) -> None: ...
139
149
  @cached_property
140
150
  def as_json_fragment(self) -> json_fragment: ...
@@ -152,7 +162,9 @@ class ConfigEntry:
152
162
  async def _async_process_on_unload(self, hass: HomeAssistant) -> None: ...
153
163
  def async_start_reauth(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
154
164
  async def _async_init_reauth(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
155
- def async_get_active_flows(self, hass: HomeAssistant, sources: set[str]) -> Generator[FlowResult, None, None]: ...
165
+ def async_start_reconfigure(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
166
+ async def _async_init_reconfigure(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
167
+ def async_get_active_flows(self, hass: HomeAssistant, sources: set[str]) -> Generator[ConfigFlowResult, None, None]: ...
156
168
  def async_create_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = False) -> asyncio.Task[_R]: ...
157
169
  def async_create_background_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = False) -> asyncio.Task[_R]: ...
158
170
 
@@ -160,7 +172,8 @@ current_entry: ContextVar[ConfigEntry | None]
160
172
 
161
173
  class FlowCancelledError(Exception): ...
162
174
 
163
- class ConfigEntriesFlowManager(data_entry_flow.FlowManager):
175
+ class ConfigEntriesFlowManager(data_entry_flow.FlowManager[ConfigFlowResult, str]):
176
+ _flow_result = ConfigFlowResult
164
177
  config_entries: Incomplete
165
178
  _hass_config: Incomplete
166
179
  _pending_import_flows: Incomplete
@@ -169,12 +182,12 @@ class ConfigEntriesFlowManager(data_entry_flow.FlowManager):
169
182
  def __init__(self, hass: HomeAssistant, config_entries: ConfigEntries, hass_config: ConfigType) -> None: ...
170
183
  async def async_wait_import_flow_initialized(self, handler: str) -> None: ...
171
184
  def _async_has_other_discovery_flows(self, flow_id: str) -> bool: ...
172
- async def async_init(self, handler: str, *, context: dict[str, Any] | None = None, data: Any = None) -> FlowResult: ...
173
- async def _async_init(self, flow_id: str, handler: str, context: dict, data: Any) -> tuple[data_entry_flow.FlowHandler, FlowResult]: ...
185
+ async def async_init(self, handler: str, *, context: dict[str, Any] | None = None, data: Any = None) -> ConfigFlowResult: ...
186
+ async def _async_init(self, flow_id: str, handler: str, context: dict, data: Any) -> tuple[ConfigFlow, ConfigFlowResult]: ...
174
187
  def async_shutdown(self) -> None: ...
175
- async def async_finish_flow(self, flow: data_entry_flow.FlowHandler, result: data_entry_flow.FlowResult) -> data_entry_flow.FlowResult: ...
188
+ async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult, str], result: ConfigFlowResult) -> ConfigFlowResult: ...
176
189
  async def async_create_flow(self, handler_key: str, *, context: dict | None = None, data: Any = None) -> ConfigFlow: ...
177
- async def async_post_init(self, flow: data_entry_flow.FlowHandler, result: data_entry_flow.FlowResult) -> None: ...
190
+ async def async_post_init(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult, str], result: ConfigFlowResult) -> None: ...
178
191
  def _async_discovery(self) -> None: ...
179
192
 
180
193
  class ConfigEntryItems(UserDict[str, ConfigEntry]):
@@ -201,6 +214,7 @@ class ConfigEntries:
201
214
  def __init__(self, hass: HomeAssistant, hass_config: ConfigType) -> None: ...
202
215
  def async_domains(self, include_ignore: bool = False, include_disabled: bool = False) -> list[str]: ...
203
216
  def async_get_entry(self, entry_id: str) -> ConfigEntry | None: ...
217
+ def async_entry_ids(self) -> list[str]: ...
204
218
  def async_entries(self, domain: str | None = None, include_ignore: bool = True, include_disabled: bool = True) -> list[ConfigEntry]: ...
205
219
  def async_entry_for_domain_unique_id(self, domain: str, unique_id: str) -> ConfigEntry | None: ...
206
220
  async def async_add(self, entry: ConfigEntry) -> None: ...
@@ -216,6 +230,7 @@ class ConfigEntries:
216
230
  def _async_dispatch(self, change_type: ConfigEntryChange, entry: ConfigEntry) -> None: ...
217
231
  async def async_forward_entry_setups(self, entry: ConfigEntry, platforms: Iterable[Platform | str]) -> None: ...
218
232
  async def async_forward_entry_setup(self, entry: ConfigEntry, domain: Platform | str) -> bool: ...
233
+ async def _async_forward_entry_setup(self, entry: ConfigEntry, domain: Platform | str, preload_platform: bool) -> bool: ...
219
234
  async def async_unload_platforms(self, entry: ConfigEntry, platforms: Iterable[Platform | str]) -> bool: ...
220
235
  async def async_forward_entry_unload(self, entry: ConfigEntry, domain: Platform | str) -> bool: ...
221
236
  def _async_schedule_save(self) -> None: ...
@@ -225,7 +240,10 @@ class ConfigEntries:
225
240
  async def _old_conf_migrator(old_config: dict[str, Any]) -> dict[str, Any]: ...
226
241
  def _async_abort_entries_match(other_entries: list[ConfigEntry], match_dict: dict[str, Any] | None = None) -> None: ...
227
242
 
228
- class ConfigFlow(data_entry_flow.FlowHandler):
243
+ class ConfigEntryBaseFlow(data_entry_flow.FlowHandler[ConfigFlowResult, str]):
244
+ _flow_result = ConfigFlowResult
245
+
246
+ class ConfigFlow(ConfigEntryBaseFlow):
229
247
  def __init_subclass__(cls, *, domain: str | None = None, **kwargs: Any) -> None: ...
230
248
  @property
231
249
  def unique_id(self) -> str | None: ...
@@ -239,33 +257,34 @@ class ConfigFlow(data_entry_flow.FlowHandler):
239
257
  def _set_confirm_only(self) -> None: ...
240
258
  def _async_current_entries(self, include_ignore: bool | None = None) -> list[ConfigEntry]: ...
241
259
  def _async_current_ids(self, include_ignore: bool = True) -> set[str | None]: ...
242
- def _async_in_progress(self, include_uninitialized: bool = False, match_context: dict[str, Any] | None = None) -> list[data_entry_flow.FlowResult]: ...
243
- async def async_step_ignore(self, user_input: dict[str, Any]) -> data_entry_flow.FlowResult: ...
244
- async def async_step_unignore(self, user_input: dict[str, Any]) -> data_entry_flow.FlowResult: ...
245
- async def async_step_user(self, user_input: dict[str, Any] | None = None) -> data_entry_flow.FlowResult: ...
260
+ def _async_in_progress(self, include_uninitialized: bool = False, match_context: dict[str, Any] | None = None) -> list[ConfigFlowResult]: ...
261
+ async def async_step_ignore(self, user_input: dict[str, Any]) -> ConfigFlowResult: ...
262
+ async def async_step_unignore(self, user_input: dict[str, Any]) -> ConfigFlowResult: ...
263
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
246
264
  async def _async_handle_discovery_without_unique_id(self) -> None: ...
247
- async def _async_step_discovery_without_unique_id(self) -> data_entry_flow.FlowResult: ...
248
- async def async_step_discovery(self, discovery_info: DiscoveryInfoType) -> data_entry_flow.FlowResult: ...
249
- def async_abort(self, *, reason: str, description_placeholders: Mapping[str, str] | None = None) -> data_entry_flow.FlowResult: ...
250
- async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> data_entry_flow.FlowResult: ...
251
- async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> data_entry_flow.FlowResult: ...
252
- async def async_step_hassio(self, discovery_info: HassioServiceInfo) -> data_entry_flow.FlowResult: ...
253
- async def async_step_integration_discovery(self, discovery_info: DiscoveryInfoType) -> data_entry_flow.FlowResult: ...
254
- async def async_step_homekit(self, discovery_info: ZeroconfServiceInfo) -> data_entry_flow.FlowResult: ...
255
- async def async_step_mqtt(self, discovery_info: MqttServiceInfo) -> data_entry_flow.FlowResult: ...
256
- async def async_step_ssdp(self, discovery_info: SsdpServiceInfo) -> data_entry_flow.FlowResult: ...
257
- async def async_step_usb(self, discovery_info: UsbServiceInfo) -> data_entry_flow.FlowResult: ...
258
- async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> data_entry_flow.FlowResult: ...
259
- def async_create_entry(self, *, title: str, data: Mapping[str, Any], description: str | None = None, description_placeholders: Mapping[str, str] | None = None, options: Mapping[str, Any] | None = None) -> data_entry_flow.FlowResult: ...
260
- def async_update_reload_and_abort(self, entry: ConfigEntry, *, unique_id: str | None | UndefinedType = ..., title: str | UndefinedType = ..., data: Mapping[str, Any] | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., reason: str = 'reauth_successful') -> data_entry_flow.FlowResult: ...
265
+ async def _async_step_discovery_without_unique_id(self) -> ConfigFlowResult: ...
266
+ async def async_step_discovery(self, discovery_info: DiscoveryInfoType) -> ConfigFlowResult: ...
267
+ def async_abort(self, *, reason: str, description_placeholders: Mapping[str, str] | None = None) -> ConfigFlowResult: ...
268
+ async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> ConfigFlowResult: ...
269
+ async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
270
+ async def async_step_hassio(self, discovery_info: HassioServiceInfo) -> ConfigFlowResult: ...
271
+ async def async_step_integration_discovery(self, discovery_info: DiscoveryInfoType) -> ConfigFlowResult: ...
272
+ async def async_step_homekit(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
273
+ async def async_step_mqtt(self, discovery_info: MqttServiceInfo) -> ConfigFlowResult: ...
274
+ async def async_step_ssdp(self, discovery_info: SsdpServiceInfo) -> ConfigFlowResult: ...
275
+ async def async_step_usb(self, discovery_info: UsbServiceInfo) -> ConfigFlowResult: ...
276
+ async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
277
+ def async_create_entry(self, *, title: str, data: Mapping[str, Any], description: str | None = None, description_placeholders: Mapping[str, str] | None = None, options: Mapping[str, Any] | None = None) -> ConfigFlowResult: ...
278
+ def async_update_reload_and_abort(self, entry: ConfigEntry, *, unique_id: str | None | UndefinedType = ..., title: str | UndefinedType = ..., data: Mapping[str, Any] | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., reason: str = 'reauth_successful') -> ConfigFlowResult: ...
261
279
 
262
- class OptionsFlowManager(data_entry_flow.FlowManager):
280
+ class OptionsFlowManager(data_entry_flow.FlowManager[ConfigFlowResult, str]):
281
+ _flow_result = ConfigFlowResult
263
282
  def _async_get_config_entry(self, config_entry_id: str) -> ConfigEntry: ...
264
283
  async def async_create_flow(self, handler_key: str, *, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> OptionsFlow: ...
265
- async def async_finish_flow(self, flow: data_entry_flow.FlowHandler, result: data_entry_flow.FlowResult) -> data_entry_flow.FlowResult: ...
266
- async def _async_setup_preview(self, flow: data_entry_flow.FlowHandler) -> None: ...
284
+ async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult, str], result: ConfigFlowResult) -> ConfigFlowResult: ...
285
+ async def _async_setup_preview(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult, str]) -> None: ...
267
286
 
268
- class OptionsFlow(data_entry_flow.FlowHandler):
287
+ class OptionsFlow(ConfigEntryBaseFlow):
269
288
  handler: str
270
289
  def _async_abort_entries_match(self, match_dict: dict[str, Any] | None = None) -> None: ...
271
290
 
@@ -288,7 +307,7 @@ class EntityRegistryDisabledHandler:
288
307
  def _handle_entry_updated(self, event: Event) -> None: ...
289
308
  async def _handle_reload(self, _now: Any) -> None: ...
290
309
 
291
- def _handle_entry_updated_filter(event: Event) -> bool: ...
310
+ def _handle_entry_updated_filter(event_data: Mapping[str, Any]) -> bool: ...
292
311
  async def support_entry_unload(hass: HomeAssistant, domain: str) -> bool: ...
293
312
  async def support_remove_from_device(hass: HomeAssistant, domain: str) -> bool: ...
294
313
  async def _support_single_config_entry_only(hass: HomeAssistant, domain: str) -> bool: ...
@@ -1,4 +1,5 @@
1
1
  from .helpers.deprecation import DeprecatedConstant as DeprecatedConstant, DeprecatedConstantEnum as DeprecatedConstantEnum, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
2
+ from .util.signal_type import SignalType as SignalType
2
3
  from _typeshed import Incomplete
3
4
  from enum import StrEnum
4
5
  from typing import Final
@@ -274,6 +275,7 @@ EVENT_LOGGING_CHANGED: Final[str]
274
275
  EVENT_SERVICE_REGISTERED: Final[str]
275
276
  EVENT_SERVICE_REMOVED: Final[str]
276
277
  EVENT_STATE_CHANGED: Final[str]
278
+ EVENT_STATE_REPORTED: Final[str]
277
279
  EVENT_THEMES_UPDATED: Final[str]
278
280
  EVENT_PANELS_UPDATED: Final[str]
279
281
  EVENT_LOVELACE_UPDATED: Final[str]
@@ -354,6 +356,8 @@ ATTR_NAME: Final[str]
354
356
  ATTR_ENTITY_ID: Final[str]
355
357
  ATTR_AREA_ID: Final[str]
356
358
  ATTR_DEVICE_ID: Final[str]
359
+ ATTR_FLOOR_ID: Final[str]
360
+ ATTR_LABEL_ID: Final[str]
357
361
  ATTR_FRIENDLY_NAME: Final[str]
358
362
  ATTR_ENTITY_PICTURE: Final[str]
359
363
  ATTR_IDENTIFIERS: Final[str]
@@ -608,6 +612,7 @@ CONCENTRATION_PARTS_PER_MILLION: Final[str]
608
612
  CONCENTRATION_PARTS_PER_BILLION: Final[str]
609
613
 
610
614
  class UnitOfSpeed(StrEnum):
615
+ BEAUFORT: str
611
616
  FEET_PER_SECOND: str
612
617
  METERS_PER_SECOND: str
613
618
  KILOMETERS_PER_HOUR: str
@@ -694,11 +699,11 @@ _DEPRECATED_DATA_RATE_GIGABYTES_PER_SECOND: Final[Incomplete]
694
699
  _DEPRECATED_DATA_RATE_KIBIBYTES_PER_SECOND: Final[Incomplete]
695
700
  _DEPRECATED_DATA_RATE_MEBIBYTES_PER_SECOND: Final[Incomplete]
696
701
  _DEPRECATED_DATA_RATE_GIBIBYTES_PER_SECOND: Final[Incomplete]
697
- COMPRESSED_STATE_STATE: str
698
- COMPRESSED_STATE_ATTRIBUTES: str
699
- COMPRESSED_STATE_CONTEXT: str
700
- COMPRESSED_STATE_LAST_CHANGED: str
701
- COMPRESSED_STATE_LAST_UPDATED: str
702
+ COMPRESSED_STATE_STATE: Final[str]
703
+ COMPRESSED_STATE_ATTRIBUTES: Final[str]
704
+ COMPRESSED_STATE_CONTEXT: Final[str]
705
+ COMPRESSED_STATE_LAST_CHANGED: Final[str]
706
+ COMPRESSED_STATE_LAST_UPDATED: Final[str]
702
707
  SERVICE_TURN_ON: Final[str]
703
708
  SERVICE_TURN_OFF: Final[str]
704
709
  SERVICE_TOGGLE: Final[str]
@@ -792,7 +797,7 @@ ENTITY_CATEGORIES: Final[list[str]]
792
797
  CAST_APP_ID_HOMEASSISTANT_MEDIA: Final[str]
793
798
  CAST_APP_ID_HOMEASSISTANT_LOVELACE: Final[str]
794
799
  HASSIO_USER_NAME: str
795
- SIGNAL_BOOTSTRAP_INTEGRATIONS: str
800
+ SIGNAL_BOOTSTRAP_INTEGRATIONS: SignalType[dict[str, float]]
796
801
  KEY_DATA_LOGGING: str
797
802
  FORMAT_DATE: Final[str]
798
803
  FORMAT_TIME: Final[str]
@@ -7,7 +7,7 @@ from . import block_async_io as block_async_io, util as util
7
7
  from .auth import AuthManager as AuthManager
8
8
  from .components.http import ApiConfig as ApiConfig, HomeAssistantHTTP as HomeAssistantHTTP
9
9
  from .config_entries import ConfigEntries as ConfigEntries
10
- from .const import ATTR_DOMAIN as ATTR_DOMAIN, ATTR_FRIENDLY_NAME as ATTR_FRIENDLY_NAME, ATTR_SERVICE as ATTR_SERVICE, ATTR_SERVICE_DATA as ATTR_SERVICE_DATA, COMPRESSED_STATE_ATTRIBUTES as COMPRESSED_STATE_ATTRIBUTES, COMPRESSED_STATE_CONTEXT as COMPRESSED_STATE_CONTEXT, COMPRESSED_STATE_LAST_CHANGED as COMPRESSED_STATE_LAST_CHANGED, COMPRESSED_STATE_LAST_UPDATED as COMPRESSED_STATE_LAST_UPDATED, COMPRESSED_STATE_STATE as COMPRESSED_STATE_STATE, EVENT_CALL_SERVICE as EVENT_CALL_SERVICE, EVENT_CORE_CONFIG_UPDATE as EVENT_CORE_CONFIG_UPDATE, EVENT_HOMEASSISTANT_CLOSE as EVENT_HOMEASSISTANT_CLOSE, EVENT_HOMEASSISTANT_FINAL_WRITE as EVENT_HOMEASSISTANT_FINAL_WRITE, EVENT_HOMEASSISTANT_START as EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, EVENT_SERVICE_REGISTERED as EVENT_SERVICE_REGISTERED, EVENT_SERVICE_REMOVED as EVENT_SERVICE_REMOVED, EVENT_STATE_CHANGED as EVENT_STATE_CHANGED, MATCH_ALL as MATCH_ALL, MAX_LENGTH_EVENT_EVENT_TYPE as MAX_LENGTH_EVENT_EVENT_TYPE, MAX_LENGTH_STATE_STATE as MAX_LENGTH_STATE_STATE, UnitOfLength as UnitOfLength, __version__ as __version__
10
+ from .const import ATTR_DOMAIN as ATTR_DOMAIN, ATTR_FRIENDLY_NAME as ATTR_FRIENDLY_NAME, ATTR_SERVICE as ATTR_SERVICE, ATTR_SERVICE_DATA as ATTR_SERVICE_DATA, COMPRESSED_STATE_ATTRIBUTES as COMPRESSED_STATE_ATTRIBUTES, COMPRESSED_STATE_CONTEXT as COMPRESSED_STATE_CONTEXT, COMPRESSED_STATE_LAST_CHANGED as COMPRESSED_STATE_LAST_CHANGED, COMPRESSED_STATE_LAST_UPDATED as COMPRESSED_STATE_LAST_UPDATED, COMPRESSED_STATE_STATE as COMPRESSED_STATE_STATE, EVENT_CALL_SERVICE as EVENT_CALL_SERVICE, EVENT_CORE_CONFIG_UPDATE as EVENT_CORE_CONFIG_UPDATE, EVENT_HOMEASSISTANT_CLOSE as EVENT_HOMEASSISTANT_CLOSE, EVENT_HOMEASSISTANT_FINAL_WRITE as EVENT_HOMEASSISTANT_FINAL_WRITE, EVENT_HOMEASSISTANT_START as EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, EVENT_LOGGING_CHANGED as EVENT_LOGGING_CHANGED, EVENT_SERVICE_REGISTERED as EVENT_SERVICE_REGISTERED, EVENT_SERVICE_REMOVED as EVENT_SERVICE_REMOVED, EVENT_STATE_CHANGED as EVENT_STATE_CHANGED, EVENT_STATE_REPORTED as EVENT_STATE_REPORTED, MATCH_ALL as MATCH_ALL, MAX_LENGTH_EVENT_EVENT_TYPE as MAX_LENGTH_EVENT_EVENT_TYPE, MAX_LENGTH_STATE_STATE as MAX_LENGTH_STATE_STATE, UnitOfLength as UnitOfLength, __version__ as __version__
11
11
  from .exceptions import HomeAssistantError as HomeAssistantError, InvalidEntityFormatError as InvalidEntityFormatError, InvalidStateError as InvalidStateError, MaxLengthExceeded as MaxLengthExceeded, ServiceNotFound as ServiceNotFound, Unauthorized as Unauthorized
12
12
  from .helpers.deprecation import DeprecatedConstantEnum as DeprecatedConstantEnum, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
13
13
  from .helpers.entity import StateInfo as StateInfo
@@ -26,7 +26,8 @@ from collections import UserDict
26
26
  from collections.abc import Callable, Collection, Coroutine, Iterable, KeysView, Mapping, ValuesView
27
27
  from dataclasses import dataclass
28
28
  from functools import cached_property as cached_property
29
- from typing import Any, Generic, Literal, ParamSpec, Self, TypeVar, overload
29
+ from typing import Any, Generic, Literal, NotRequired, ParamSpec, Self, TypeVarTuple, TypedDict, overload
30
+ from typing_extensions import TypeVar
30
31
 
31
32
  STOPPING_STAGE_SHUTDOWN_TIMEOUT: int
32
33
  STOP_STAGE_SHUTDOWN_TIMEOUT: int
@@ -36,8 +37,10 @@ _T = TypeVar('_T')
36
37
  _R = TypeVar('_R')
37
38
  _R_co = TypeVar('_R_co', covariant=True)
38
39
  _P = ParamSpec('_P')
40
+ _Ts = TypeVarTuple('_Ts')
39
41
  _UNDEF: dict[Any, Any]
40
42
  _CallableT = TypeVar('_CallableT', bound=Callable[..., Any])
43
+ _DataT = TypeVar('_DataT', bound=Mapping[str, Any], default=Mapping[str, Any])
41
44
  CALLBACK_TYPE = Callable[[], None]
42
45
  CORE_STORAGE_KEY: str
43
46
  CORE_STORAGE_VERSION: int
@@ -58,6 +61,7 @@ _DEPRECATED_SOURCE_STORAGE: Incomplete
58
61
  _DEPRECATED_SOURCE_YAML: Incomplete
59
62
  TIMEOUT_EVENT_START: int
60
63
  MAX_EXPECTED_ENTITY_IDS: int
64
+ EVENTS_EXCLUDED_FROM_MATCH_ALL: Incomplete
61
65
  _LOGGER: Incomplete
62
66
 
63
67
  def split_entity_id(entity_id: str) -> tuple[str, str]: ...
@@ -88,12 +92,13 @@ class HassJobType(enum.Enum):
88
92
  Executor: int
89
93
 
90
94
  class HassJob(Generic[_P, _R_co]):
91
- __slots__: Incomplete
92
95
  target: Incomplete
93
96
  name: Incomplete
94
- job_type: Incomplete
95
97
  _cancel_on_shutdown: Incomplete
98
+ _job_type: Incomplete
96
99
  def __init__(self, target: Callable[_P, _R_co], name: str | None = None, *, cancel_on_shutdown: bool | None = None, job_type: HassJobType | None = None) -> None: ...
100
+ @cached_property
101
+ def job_type(self) -> HassJobType: ...
97
102
  @property
98
103
  def cancel_on_shutdown(self) -> bool | None: ...
99
104
  def __repr__(self) -> str: ...
@@ -104,7 +109,7 @@ class HassJobWithArgs:
104
109
  args: Iterable[Any]
105
110
  def __init__(self, job, args) -> None: ...
106
111
 
107
- def _get_hassjob_callable_job_type(target: Callable[..., Any]) -> HassJobType: ...
112
+ def get_hassjob_callable_job_type(target: Callable[..., Any]) -> HassJobType: ...
108
113
 
109
114
  class CoreState(enum.Enum):
110
115
  not_running: str
@@ -121,6 +126,7 @@ class HomeAssistant:
121
126
  config_entries: ConfigEntries
122
127
  def __new__(cls, config_dir: str) -> HomeAssistant: ...
123
128
  def __repr__(self) -> str: ...
129
+ data: Incomplete
124
130
  loop: Incomplete
125
131
  _tasks: Incomplete
126
132
  _background_tasks: Incomplete
@@ -130,7 +136,6 @@ class HomeAssistant:
130
136
  config: Incomplete
131
137
  components: Incomplete
132
138
  helpers: Incomplete
133
- data: Incomplete
134
139
  state: Incomplete
135
140
  exit_code: int
136
141
  _stopped: Incomplete
@@ -139,6 +144,8 @@ class HomeAssistant:
139
144
  _shutdown_jobs: Incomplete
140
145
  import_executor: Incomplete
141
146
  def __init__(self, config_dir: str) -> None: ...
147
+ @property
148
+ def _active_tasks(self) -> set[asyncio.Future[Any]]: ...
142
149
  @cached_property
143
150
  def is_running(self) -> bool: ...
144
151
  @cached_property
@@ -147,34 +154,34 @@ class HomeAssistant:
147
154
  def start(self) -> int: ...
148
155
  async def async_run(self, *, attach_signals: bool = True) -> int: ...
149
156
  async def async_start(self) -> None: ...
150
- def add_job(self, target: Callable[..., Any] | Coroutine[Any, Any, Any], *args: Any) -> None: ...
157
+ def add_job(self, target: Callable[[Unpack[_Ts]], Any] | Coroutine[Any, Any, Any], *args: Unpack[_Ts]) -> None: ...
151
158
  @overload
152
- def async_add_job(self, target: Callable[..., Coroutine[Any, Any, _R]], *args: Any) -> asyncio.Future[_R] | None: ...
159
+ def async_add_job(self, target: Callable[[Unpack[_Ts]], Coroutine[Any, Any, _R]], *args: Unpack[_Ts], eager_start: bool = False) -> asyncio.Future[_R] | None: ...
153
160
  @overload
154
- def async_add_job(self, target: Callable[..., Coroutine[Any, Any, _R] | _R], *args: Any) -> asyncio.Future[_R] | None: ...
161
+ def async_add_job(self, target: Callable[[Unpack[_Ts]], Coroutine[Any, Any, _R] | _R], *args: Unpack[_Ts], eager_start: bool = False) -> asyncio.Future[_R] | None: ...
155
162
  @overload
156
- def async_add_job(self, target: Coroutine[Any, Any, _R], *args: Any) -> asyncio.Future[_R] | None: ...
163
+ def async_add_job(self, target: Coroutine[Any, Any, _R], *args: Any, eager_start: bool = False) -> asyncio.Future[_R] | None: ...
157
164
  @overload
158
- def async_add_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R]], *args: Any) -> asyncio.Future[_R] | None: ...
165
+ def async_add_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R]], *args: Any, eager_start: bool = False, background: bool = False) -> asyncio.Future[_R] | None: ...
159
166
  @overload
160
- def async_add_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R] | _R], *args: Any) -> asyncio.Future[_R] | None: ...
167
+ def async_add_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R] | _R], *args: Any, eager_start: bool = False, background: bool = False) -> asyncio.Future[_R] | None: ...
161
168
  def create_task(self, target: Coroutine[Any, Any, Any], name: str | None = None) -> None: ...
162
169
  def async_create_task(self, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = False) -> asyncio.Task[_R]: ...
163
170
  def async_create_background_task(self, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = False) -> asyncio.Task[_R]: ...
164
- def async_add_executor_job(self, target: Callable[..., _T], *args: Any) -> asyncio.Future[_T]: ...
165
- def async_add_import_executor_job(self, target: Callable[..., _T], *args: Any) -> asyncio.Future[_T]: ...
171
+ def async_add_executor_job(self, target: Callable[[Unpack[_Ts]], _T], *args: Unpack[_Ts]) -> asyncio.Future[_T]: ...
172
+ def async_add_import_executor_job(self, target: Callable[[Unpack[_Ts]], _T], *args: Unpack[_Ts]) -> asyncio.Future[_T]: ...
166
173
  @overload
167
- def async_run_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R]], *args: Any) -> asyncio.Future[_R] | None: ...
174
+ def async_run_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R]], *args: Any, background: bool = False) -> asyncio.Future[_R] | None: ...
168
175
  @overload
169
- def async_run_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R] | _R], *args: Any) -> asyncio.Future[_R] | None: ...
176
+ def async_run_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R] | _R], *args: Any, background: bool = False) -> asyncio.Future[_R] | None: ...
170
177
  @overload
171
- def async_run_job(self, target: Callable[..., Coroutine[Any, Any, _R]], *args: Any) -> asyncio.Future[_R] | None: ...
178
+ def async_run_job(self, target: Callable[[Unpack[_Ts]], Coroutine[Any, Any, _R]], *args: Unpack[_Ts]) -> asyncio.Future[_R] | None: ...
172
179
  @overload
173
- def async_run_job(self, target: Callable[..., Coroutine[Any, Any, _R] | _R], *args: Any) -> asyncio.Future[_R] | None: ...
180
+ def async_run_job(self, target: Callable[[Unpack[_Ts]], Coroutine[Any, Any, _R] | _R], *args: Unpack[_Ts]) -> asyncio.Future[_R] | None: ...
174
181
  @overload
175
182
  def async_run_job(self, target: Coroutine[Any, Any, _R], *args: Any) -> asyncio.Future[_R] | None: ...
176
183
  def block_till_done(self) -> None: ...
177
- async def async_block_till_done(self) -> None: ...
184
+ async def async_block_till_done(self, wait_background_tasks: bool = False) -> None: ...
178
185
  async def _await_and_log_pending(self, pending: Collection[asyncio.Future[Any]]) -> None: ...
179
186
  @overload
180
187
  def async_add_shutdown_job(self, hassjob: HassJob[..., Coroutine[Any, Any, Any]], *args: Any) -> CALLBACK_TYPE: ...
@@ -205,15 +212,15 @@ class EventOrigin(enum.Enum):
205
212
  remote: str
206
213
  def __str__(self) -> str: ...
207
214
 
208
- class Event:
215
+ class Event(Generic[_DataT]):
209
216
  event_type: Incomplete
210
217
  data: Incomplete
211
218
  origin: Incomplete
212
- time_fired: Incomplete
219
+ time_fired_timestamp: Incomplete
213
220
  context: Incomplete
214
- def __init__(self, event_type: str, data: Mapping[str, Any] | None = None, origin: EventOrigin = ..., time_fired: datetime.datetime | None = None, context: Context | None = None) -> None: ...
221
+ def __init__(self, event_type: str, data: _DataT | None = None, origin: EventOrigin = ..., time_fired_timestamp: float | None = None, context: Context | None = None) -> None: ...
215
222
  @cached_property
216
- def time_fired_timestamp(self) -> float: ...
223
+ def time_fired(self) -> datetime.datetime: ...
217
224
  @cached_property
218
225
  def _as_dict(self) -> dict[str, Any]: ...
219
226
  def as_dict(self) -> ReadOnlyDict[str, Any]: ...
@@ -223,16 +230,20 @@ class Event:
223
230
  def json_fragment(self) -> json_fragment: ...
224
231
  def __repr__(self) -> str: ...
225
232
 
233
+ def _event_repr(event_type: str, origin: EventOrigin, data: Mapping[str, Any] | None) -> str: ...
234
+
226
235
  _FilterableJobType: Incomplete
227
236
 
228
237
  @dataclass(slots=True)
229
238
  class _OneTimeListener:
230
239
  hass: HomeAssistant
231
- listener: Callable[[Event], Coroutine[Any, Any, None] | None]
240
+ listener_job: HassJob[[Event], Coroutine[Any, Any, None] | None]
232
241
  remove: CALLBACK_TYPE | None = ...
233
242
  def __call__(self, event: Event) -> None: ...
234
243
  def __repr__(self) -> str: ...
235
- def __init__(self, hass, listener, remove) -> None: ...
244
+ def __init__(self, hass, listener_job, remove) -> None: ...
245
+
246
+ EMPTY_LIST: list[Any]
236
247
 
237
248
  class EventBus:
238
249
  __slots__: Incomplete
@@ -240,34 +251,47 @@ class EventBus:
240
251
  _match_all_listeners: Incomplete
241
252
  _hass: Incomplete
242
253
  def __init__(self, hass: HomeAssistant) -> None: ...
254
+ _debug: Incomplete
255
+ def _async_logging_changed(self, event: Event | None = None) -> None: ...
243
256
  def async_listeners(self) -> dict[str, int]: ...
244
257
  @property
245
258
  def listeners(self) -> dict[str, int]: ...
246
259
  def fire(self, event_type: str, event_data: Mapping[str, Any] | None = None, origin: EventOrigin = ..., context: Context | None = None) -> None: ...
247
- def async_fire(self, event_type: str, event_data: Mapping[str, Any] | None = None, origin: EventOrigin = ..., context: Context | None = None, time_fired: datetime.datetime | None = None) -> None: ...
248
- def listen(self, event_type: str, listener: Callable[[Event], Coroutine[Any, Any, None] | None]) -> CALLBACK_TYPE: ...
249
- def async_listen(self, event_type: str, listener: Callable[[Event], Coroutine[Any, Any, None] | None], event_filter: Callable[[Event], bool] | None = None, run_immediately: bool = False) -> CALLBACK_TYPE: ...
250
- def _async_listen_filterable_job(self, event_type: str, filterable_job: _FilterableJobType) -> CALLBACK_TYPE: ...
251
- def listen_once(self, event_type: str, listener: Callable[[Event], Coroutine[Any, Any, None] | None]) -> CALLBACK_TYPE: ...
252
- def async_listen_once(self, event_type: str, listener: Callable[[Event], Coroutine[Any, Any, None] | None]) -> CALLBACK_TYPE: ...
260
+ def async_fire(self, event_type: str, event_data: Mapping[str, Any] | None = None, origin: EventOrigin = ..., context: Context | None = None, time_fired: float | None = None) -> None: ...
261
+ def _async_fire(self, event_type: str, event_data: Mapping[str, Any] | None = None, origin: EventOrigin = ..., context: Context | None = None, time_fired: float | None = None) -> None: ...
262
+ def listen(self, event_type: str, listener: Callable[[Event[Any]], Coroutine[Any, Any, None] | None]) -> CALLBACK_TYPE: ...
263
+ def async_listen(self, event_type: str, listener: Callable[[Event[_DataT]], Coroutine[Any, Any, None] | None], event_filter: Callable[[_DataT], bool] | None = None, run_immediately: bool = False) -> CALLBACK_TYPE: ...
264
+ def _async_listen_filterable_job(self, event_type: str, filterable_job: _FilterableJobType[Any]) -> CALLBACK_TYPE: ...
265
+ def listen_once(self, event_type: str, listener: Callable[[Event[Any]], Coroutine[Any, Any, None] | None]) -> CALLBACK_TYPE: ...
266
+ def async_listen_once(self, event_type: str, listener: Callable[[Event[Any]], Coroutine[Any, Any, None] | None], run_immediately: bool = False) -> CALLBACK_TYPE: ...
253
267
  def _async_remove_listener(self, event_type: str, filterable_job: _FilterableJobType) -> None: ...
254
268
 
269
+ class CompressedState(TypedDict):
270
+ s: str
271
+ a: ReadOnlyDict[str, Any]
272
+ c: str | dict[str, Any]
273
+ lc: float
274
+ lu: NotRequired[float]
275
+
255
276
  class State:
256
277
  entity_id: Incomplete
257
278
  state: Incomplete
258
279
  attributes: Incomplete
280
+ last_reported: Incomplete
259
281
  last_updated: Incomplete
260
282
  last_changed: Incomplete
261
283
  context: Incomplete
262
284
  state_info: Incomplete
263
- def __init__(self, entity_id: str, state: str, attributes: Mapping[str, Any] | None = None, last_changed: datetime.datetime | None = None, last_updated: datetime.datetime | None = None, context: Context | None = None, validate_entity_id: bool | None = True, state_info: StateInfo | None = None) -> None: ...
285
+ def __init__(self, entity_id: str, state: str, attributes: Mapping[str, Any] | None = None, last_changed: datetime.datetime | None = None, last_reported: datetime.datetime | None = None, last_updated: datetime.datetime | None = None, context: Context | None = None, validate_entity_id: bool | None = True, state_info: StateInfo | None = None) -> None: ...
264
286
  @cached_property
265
287
  def name(self) -> str: ...
266
288
  @cached_property
267
- def last_updated_timestamp(self) -> float: ...
268
- @cached_property
269
289
  def last_changed_timestamp(self) -> float: ...
270
290
  @cached_property
291
+ def last_reported_timestamp(self) -> float: ...
292
+ @cached_property
293
+ def last_updated_timestamp(self) -> float: ...
294
+ @cached_property
271
295
  def _as_dict(self) -> dict[str, Any]: ...
272
296
  def as_dict(self) -> ReadOnlyDict[str, datetime.datetime | Collection[Any]]: ...
273
297
  @cached_property
@@ -277,7 +301,7 @@ class State:
277
301
  @cached_property
278
302
  def json_fragment(self) -> json_fragment: ...
279
303
  @cached_property
280
- def as_compressed_state(self) -> dict[str, Any]: ...
304
+ def as_compressed_state(self) -> CompressedState: ...
281
305
  @cached_property
282
306
  def as_compressed_state_json(self) -> bytes: ...
283
307
  @classmethod
@@ -326,7 +350,7 @@ class Service:
326
350
  job: Incomplete
327
351
  schema: Incomplete
328
352
  supports_response: Incomplete
329
- def __init__(self, func: Callable[[ServiceCall], Coroutine[Any, Any, ServiceResponse | EntityServiceResponse] | ServiceResponse | EntityServiceResponse | None], schema: vol.Schema | None, domain: str, service: str, context: Context | None = None, supports_response: SupportsResponse = ...) -> None: ...
353
+ def __init__(self, func: Callable[[ServiceCall], Coroutine[Any, Any, ServiceResponse | EntityServiceResponse] | ServiceResponse | EntityServiceResponse | None], schema: vol.Schema | None, domain: str, service: str, context: Context | None = None, supports_response: SupportsResponse = ..., job_type: HassJobType | None = None) -> None: ...
330
354
 
331
355
  class ServiceCall:
332
356
  __slots__: Incomplete
@@ -351,7 +375,7 @@ class ServiceRegistry:
351
375
  def has_service(self, domain: str, service: str) -> bool: ...
352
376
  def supports_response(self, domain: str, service: str) -> SupportsResponse: ...
353
377
  def register(self, domain: str, service: str, service_func: Callable[[ServiceCall], Coroutine[Any, Any, ServiceResponse] | ServiceResponse | None], schema: vol.Schema | None = None, supports_response: SupportsResponse = ...) -> None: ...
354
- def async_register(self, domain: str, service: str, service_func: Callable[[ServiceCall], Coroutine[Any, Any, ServiceResponse | EntityServiceResponse] | ServiceResponse | EntityServiceResponse | None], schema: vol.Schema | None = None, supports_response: SupportsResponse = ...) -> None: ...
378
+ def async_register(self, domain: str, service: str, service_func: Callable[[ServiceCall], Coroutine[Any, Any, ServiceResponse | EntityServiceResponse] | ServiceResponse | EntityServiceResponse | None], schema: vol.Schema | None = None, supports_response: SupportsResponse = ..., job_type: HassJobType | None = None) -> None: ...
355
379
  def remove(self, domain: str, service: str) -> None: ...
356
380
  def async_remove(self, domain: str, service: str) -> None: ...
357
381
  def call(self, domain: str, service: str, service_data: dict[str, Any] | None = None, blocking: bool = False, context: Context | None = None, target: dict[str, Any] | None = None, return_response: bool = False) -> ServiceResponse: ...
@@ -398,7 +422,7 @@ class Config:
398
422
  async def _async_store(self) -> None: ...
399
423
  class _ConfigStore(Store[dict[str, Any]]):
400
424
  _original_unit_system: Incomplete
401
- def __init__(self, hass: HomeAssistant) -> None: ...
425
+ def __init__(self, hass: HomeAssistant, config_dir: str) -> None: ...
402
426
  async def _async_migrate_func(self, old_major_version: int, old_minor_version: int, old_data: dict[str, Any]) -> dict[str, Any]: ...
403
427
  async def async_save(self, data: dict[str, Any]) -> None: ...
404
428