homeassistant-stubs 2025.1.2__py3-none-any.whl → 2025.1.3__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 (1170) hide show
  1. homeassistant-stubs/auth/__init__.pyi +15 -0
  2. homeassistant-stubs/auth/auth_store.pyi +10 -0
  3. homeassistant-stubs/auth/mfa_modules/notify.pyi +1 -0
  4. homeassistant-stubs/auth/providers/__init__.pyi +2 -0
  5. homeassistant-stubs/auth/providers/homeassistant.pyi +6 -0
  6. homeassistant-stubs/auth/providers/insecure_example.pyi +1 -0
  7. homeassistant-stubs/auth/providers/trusted_networks.pyi +2 -0
  8. homeassistant-stubs/bootstrap.pyi +1 -0
  9. homeassistant-stubs/components/acaia/sensor.pyi +1 -0
  10. homeassistant-stubs/components/accuweather/sensor.pyi +2 -0
  11. homeassistant-stubs/components/accuweather/system_health.pyi +1 -0
  12. homeassistant-stubs/components/accuweather/weather.pyi +1 -0
  13. homeassistant-stubs/components/acmeda/entity.pyi +1 -0
  14. homeassistant-stubs/components/acmeda/helpers.pyi +1 -0
  15. homeassistant-stubs/components/air_quality/__init__.pyi +2 -1
  16. homeassistant-stubs/components/airly/sensor.pyi +1 -0
  17. homeassistant-stubs/components/airly/system_health.pyi +1 -0
  18. homeassistant-stubs/components/airnow/config_flow.pyi +1 -0
  19. homeassistant-stubs/components/airq/config_flow.pyi +1 -0
  20. homeassistant-stubs/components/airq/sensor.pyi +1 -0
  21. homeassistant-stubs/components/airthings_ble/sensor.pyi +1 -0
  22. homeassistant-stubs/components/airtouch5/climate.pyi +2 -0
  23. homeassistant-stubs/components/airtouch5/cover.pyi +1 -0
  24. homeassistant-stubs/components/airtouch5/entity.pyi +1 -0
  25. homeassistant-stubs/components/airvisual/__init__.pyi +5 -0
  26. homeassistant-stubs/components/airvisual/config_flow.pyi +1 -0
  27. homeassistant-stubs/components/airvisual/entity.pyi +1 -0
  28. homeassistant-stubs/components/airvisual/sensor.pyi +1 -0
  29. homeassistant-stubs/components/airvisual_pro/sensor.pyi +1 -0
  30. homeassistant-stubs/components/airzone/binary_sensor.pyi +2 -0
  31. homeassistant-stubs/components/airzone/climate.pyi +2 -0
  32. homeassistant-stubs/components/airzone/select.pyi +2 -0
  33. homeassistant-stubs/components/airzone/sensor.pyi +2 -0
  34. homeassistant-stubs/components/airzone/switch.pyi +2 -0
  35. homeassistant-stubs/components/airzone/water_heater.pyi +2 -0
  36. homeassistant-stubs/components/airzone_cloud/binary_sensor.pyi +2 -0
  37. homeassistant-stubs/components/airzone_cloud/climate.pyi +3 -0
  38. homeassistant-stubs/components/airzone_cloud/select.pyi +2 -0
  39. homeassistant-stubs/components/airzone_cloud/sensor.pyi +2 -0
  40. homeassistant-stubs/components/airzone_cloud/switch.pyi +2 -0
  41. homeassistant-stubs/components/airzone_cloud/water_heater.pyi +2 -0
  42. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +17 -1
  43. homeassistant-stubs/components/alarm_control_panel/device_condition.pyi +1 -0
  44. homeassistant-stubs/components/alarm_control_panel/significant_change.pyi +1 -0
  45. homeassistant-stubs/components/alexa/auth.pyi +2 -0
  46. homeassistant-stubs/components/alexa/config.pyi +5 -0
  47. homeassistant-stubs/components/alexa/diagnostics.pyi +2 -0
  48. homeassistant-stubs/components/alexa/entities.pyi +1 -0
  49. homeassistant-stubs/components/alexa/flash_briefings.pyi +2 -0
  50. homeassistant-stubs/components/alexa/intent.pyi +1 -0
  51. homeassistant-stubs/components/alexa/logbook.pyi +1 -0
  52. homeassistant-stubs/components/alexa/smart_home.pyi +3 -0
  53. homeassistant-stubs/components/ambient_network/entity.pyi +1 -0
  54. homeassistant-stubs/components/ambient_station/__init__.pyi +2 -0
  55. homeassistant-stubs/components/ambient_station/binary_sensor.pyi +1 -0
  56. homeassistant-stubs/components/ambient_station/entity.pyi +2 -0
  57. homeassistant-stubs/components/ambient_station/sensor.pyi +1 -0
  58. homeassistant-stubs/components/amcrest/__init__.pyi +8 -0
  59. homeassistant-stubs/components/amcrest/binary_sensor.pyi +2 -0
  60. homeassistant-stubs/components/amcrest/camera.pyi +1 -0
  61. homeassistant-stubs/components/analytics/__init__.pyi +4 -0
  62. homeassistant-stubs/components/analytics/analytics.pyi +1 -0
  63. homeassistant-stubs/components/analytics_insights/config_flow.pyi +1 -0
  64. homeassistant-stubs/components/androidtv/config_flow.pyi +6 -0
  65. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +3 -0
  66. homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -0
  67. homeassistant-stubs/components/androidtv_remote/media_player.pyi +2 -0
  68. homeassistant-stubs/components/androidtv_remote/remote.pyi +1 -0
  69. homeassistant-stubs/components/anthemav/media_player.pyi +1 -0
  70. homeassistant-stubs/components/apcupsd/sensor.pyi +1 -0
  71. homeassistant-stubs/components/api/__init__.pyi +16 -0
  72. homeassistant-stubs/components/apple_tv/__init__.pyi +1 -0
  73. homeassistant-stubs/components/apple_tv/config_flow.pyi +3 -0
  74. homeassistant-stubs/components/apple_tv/media_player.pyi +7 -0
  75. homeassistant-stubs/components/aqualogic/sensor.pyi +1 -0
  76. homeassistant-stubs/components/aquostv/media_player.pyi +12 -0
  77. homeassistant-stubs/components/arcam_fmj/media_player.pyi +9 -0
  78. homeassistant-stubs/components/assist_pipeline/logbook.pyi +1 -0
  79. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +13 -0
  80. homeassistant-stubs/components/assist_pipeline/select.pyi +3 -0
  81. homeassistant-stubs/components/assist_pipeline/websocket_api.pyi +11 -0
  82. homeassistant-stubs/components/assist_satellite/entity.pyi +8 -1
  83. homeassistant-stubs/components/assist_satellite/websocket_api.pyi +7 -0
  84. homeassistant-stubs/components/asuswrt/config_flow.pyi +2 -0
  85. homeassistant-stubs/components/asuswrt/device_tracker.pyi +2 -0
  86. homeassistant-stubs/components/asuswrt/router.pyi +1 -0
  87. homeassistant-stubs/components/auth/__init__.pyi +10 -0
  88. homeassistant-stubs/components/auth/login_flow.pyi +3 -0
  89. homeassistant-stubs/components/auth/mfa_setup_flow.pyi +3 -0
  90. homeassistant-stubs/components/automation/__init__.pyi +15 -0
  91. homeassistant-stubs/components/automation/helpers.pyi +1 -0
  92. homeassistant-stubs/components/automation/logbook.pyi +1 -0
  93. homeassistant-stubs/components/automation/trace.pyi +2 -0
  94. homeassistant-stubs/components/awair/config_flow.pyi +1 -0
  95. homeassistant-stubs/components/axis/binary_sensor.pyi +10 -0
  96. homeassistant-stubs/components/axis/config_flow.pyi +1 -0
  97. homeassistant-stubs/components/axis/entity.pyi +2 -0
  98. homeassistant-stubs/components/axis/hub/entity_loader.pyi +3 -0
  99. homeassistant-stubs/components/axis/hub/event_source.pyi +5 -0
  100. homeassistant-stubs/components/axis/hub/hub.pyi +2 -0
  101. homeassistant-stubs/components/axis/light.pyi +2 -0
  102. homeassistant-stubs/components/axis/switch.pyi +1 -0
  103. homeassistant-stubs/components/backup/agent.pyi +1 -0
  104. homeassistant-stubs/components/backup/config.pyi +5 -0
  105. homeassistant-stubs/components/backup/http.pyi +2 -0
  106. homeassistant-stubs/components/backup/manager.pyi +4 -0
  107. homeassistant-stubs/components/backup/store.pyi +2 -0
  108. homeassistant-stubs/components/backup/websocket.pyi +23 -0
  109. homeassistant-stubs/components/baf/binary_sensor.pyi +1 -0
  110. homeassistant-stubs/components/baf/climate.pyi +1 -0
  111. homeassistant-stubs/components/baf/entity.pyi +2 -0
  112. homeassistant-stubs/components/baf/fan.pyi +1 -0
  113. homeassistant-stubs/components/baf/light.pyi +2 -0
  114. homeassistant-stubs/components/baf/number.pyi +1 -0
  115. homeassistant-stubs/components/baf/sensor.pyi +1 -0
  116. homeassistant-stubs/components/baf/switch.pyi +1 -0
  117. homeassistant-stubs/components/bang_olufsen/entity.pyi +1 -0
  118. homeassistant-stubs/components/bang_olufsen/media_player.pyi +5 -0
  119. homeassistant-stubs/components/bayesian/binary_sensor.pyi +1 -0
  120. homeassistant-stubs/components/binary_sensor/__init__.pyi +2 -1
  121. homeassistant-stubs/components/binary_sensor/device_condition.pyi +1 -0
  122. homeassistant-stubs/components/binary_sensor/significant_change.pyi +1 -0
  123. homeassistant-stubs/components/blue_current/entity.pyi +1 -0
  124. homeassistant-stubs/components/blue_current/sensor.pyi +3 -0
  125. homeassistant-stubs/components/blueprint/models.pyi +2 -0
  126. homeassistant-stubs/components/blueprint/schemas.pyi +2 -0
  127. homeassistant-stubs/components/blueprint/websocket_api.pyi +9 -0
  128. homeassistant-stubs/components/bluetooth/__init__.pyi +1 -0
  129. homeassistant-stubs/components/bluetooth/active_update_coordinator.pyi +3 -0
  130. homeassistant-stubs/components/bluetooth/active_update_processor.pyi +2 -0
  131. homeassistant-stubs/components/bluetooth/api.pyi +17 -1
  132. homeassistant-stubs/components/bluetooth/config_flow.pyi +3 -0
  133. homeassistant-stubs/components/bluetooth/manager.pyi +5 -1
  134. homeassistant-stubs/components/bluetooth/match.pyi +1 -0
  135. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +4 -0
  136. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +13 -0
  137. homeassistant-stubs/components/bluetooth/storage.pyi +4 -0
  138. homeassistant-stubs/components/bluetooth/update_coordinator.pyi +5 -0
  139. homeassistant-stubs/components/bluetooth/util.pyi +2 -0
  140. homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +1 -0
  141. homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +1 -0
  142. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +1 -0
  143. homeassistant-stubs/components/bmw_connected_drive/lock.pyi +1 -0
  144. homeassistant-stubs/components/bmw_connected_drive/select.pyi +1 -0
  145. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +1 -0
  146. homeassistant-stubs/components/bond/__init__.pyi +1 -0
  147. homeassistant-stubs/components/bond/entity.pyi +4 -0
  148. homeassistant-stubs/components/bond/light.pyi +1 -0
  149. homeassistant-stubs/components/braviatv/coordinator.pyi +16 -0
  150. homeassistant-stubs/components/brother/sensor.pyi +1 -0
  151. homeassistant-stubs/components/bthome/event.pyi +1 -0
  152. homeassistant-stubs/components/bthome/logbook.pyi +1 -0
  153. homeassistant-stubs/components/button/__init__.pyi +3 -0
  154. homeassistant-stubs/components/calendar/__init__.pyi +7 -1
  155. homeassistant-stubs/components/calendar/trigger.pyi +2 -0
  156. homeassistant-stubs/components/cambridge_audio/media_player.pyi +17 -0
  157. homeassistant-stubs/components/cambridge_audio/select.pyi +1 -0
  158. homeassistant-stubs/components/cambridge_audio/switch.pyi +2 -0
  159. homeassistant-stubs/components/camera/__init__.pyi +19 -1
  160. homeassistant-stubs/components/camera/significant_change.pyi +1 -0
  161. homeassistant-stubs/components/camera/webrtc.pyi +11 -0
  162. homeassistant-stubs/components/canary/config_flow.pyi +1 -0
  163. homeassistant-stubs/components/climate/__init__.pyi +10 -1
  164. homeassistant-stubs/components/climate/device_condition.pyi +1 -0
  165. homeassistant-stubs/components/climate/significant_change.pyi +1 -0
  166. homeassistant-stubs/components/cloud/__init__.pyi +13 -0
  167. homeassistant-stubs/components/cloud/account_link.pyi +1 -0
  168. homeassistant-stubs/components/cloud/alexa_config.pyi +4 -0
  169. homeassistant-stubs/components/cloud/backup.pyi +2 -0
  170. homeassistant-stubs/components/cloud/client.pyi +2 -0
  171. homeassistant-stubs/components/cloud/google_config.pyi +4 -0
  172. homeassistant-stubs/components/cloud/http_api.pyi +58 -0
  173. homeassistant-stubs/components/cloud/prefs.pyi +2 -0
  174. homeassistant-stubs/components/cloud/repairs.pyi +1 -0
  175. homeassistant-stubs/components/cloud/system_health.pyi +1 -0
  176. homeassistant-stubs/components/cloud/tts.pyi +4 -0
  177. homeassistant-stubs/components/config/area_registry.pyi +8 -0
  178. homeassistant-stubs/components/config/auth.pyi +9 -0
  179. homeassistant-stubs/components/config/auth_provider_homeassistant.pyi +10 -0
  180. homeassistant-stubs/components/config/automation.pyi +1 -0
  181. homeassistant-stubs/components/config/category_registry.pyi +9 -0
  182. homeassistant-stubs/components/config/config_entries.pyi +12 -0
  183. homeassistant-stubs/components/config/core.pyi +6 -0
  184. homeassistant-stubs/components/config/device_registry.pyi +6 -0
  185. homeassistant-stubs/components/config/entity_registry.pyi +9 -0
  186. homeassistant-stubs/components/config/floor_registry.pyi +9 -0
  187. homeassistant-stubs/components/config/label_registry.pyi +9 -0
  188. homeassistant-stubs/components/config/scene.pyi +1 -0
  189. homeassistant-stubs/components/config/script.pyi +1 -0
  190. homeassistant-stubs/components/config/view.pyi +3 -0
  191. homeassistant-stubs/components/configurator/__init__.pyi +13 -1
  192. homeassistant-stubs/components/counter/__init__.pyi +5 -0
  193. homeassistant-stubs/components/cover/__init__.pyi +4 -1
  194. homeassistant-stubs/components/cover/device_condition.pyi +1 -0
  195. homeassistant-stubs/components/cover/significant_change.pyi +1 -0
  196. homeassistant-stubs/components/crownstone/config_flow.pyi +1 -0
  197. homeassistant-stubs/components/crownstone/entry_manager.pyi +1 -0
  198. homeassistant-stubs/components/crownstone/listeners.pyi +2 -0
  199. homeassistant-stubs/components/date/__init__.pyi +4 -0
  200. homeassistant-stubs/components/datetime/__init__.pyi +4 -0
  201. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +1 -0
  202. homeassistant-stubs/components/deconz/config_flow.pyi +2 -0
  203. homeassistant-stubs/components/deconz/deconz_event.pyi +7 -0
  204. homeassistant-stubs/components/deconz/entity.pyi +2 -0
  205. homeassistant-stubs/components/deconz/fan.pyi +1 -0
  206. homeassistant-stubs/components/deconz/hub/hub.pyi +5 -0
  207. homeassistant-stubs/components/deconz/light.pyi +1 -0
  208. homeassistant-stubs/components/deconz/logbook.pyi +1 -0
  209. homeassistant-stubs/components/deconz/sensor.pyi +1 -0
  210. homeassistant-stubs/components/deconz/services.pyi +1 -0
  211. homeassistant-stubs/components/demo/config_flow.pyi +1 -0
  212. homeassistant-stubs/components/demo/cover.pyi +2 -0
  213. homeassistant-stubs/components/demo/event.pyi +1 -0
  214. homeassistant-stubs/components/demo/sensor.pyi +1 -0
  215. homeassistant-stubs/components/derivative/config_flow.pyi +1 -0
  216. homeassistant-stubs/components/device_automation/__init__.pyi +15 -0
  217. homeassistant-stubs/components/device_automation/toggle_entity.pyi +1 -0
  218. homeassistant-stubs/components/device_tracker/__init__.pyi +1 -0
  219. homeassistant-stubs/components/device_tracker/config_entry.pyi +8 -0
  220. homeassistant-stubs/components/device_tracker/device_condition.pyi +1 -0
  221. homeassistant-stubs/components/device_tracker/legacy.pyi +5 -1
  222. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +1 -0
  223. homeassistant-stubs/components/devolo_home_network/__init__.pyi +2 -0
  224. homeassistant-stubs/components/devolo_home_network/image.pyi +1 -0
  225. homeassistant-stubs/components/dhcp/__init__.pyi +13 -0
  226. homeassistant-stubs/components/diagnostics/__init__.pyi +2 -2
  227. homeassistant-stubs/components/discovergy/system_health.pyi +1 -0
  228. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -0
  229. homeassistant-stubs/components/dlna_dmr/media_player.pyi +12 -0
  230. homeassistant-stubs/components/dlna_dms/dms.pyi +6 -0
  231. homeassistant-stubs/components/dnsip/config_flow.pyi +1 -0
  232. homeassistant-stubs/components/doorbird/config_flow.pyi +1 -0
  233. homeassistant-stubs/components/doorbird/event.pyi +1 -0
  234. homeassistant-stubs/components/doorbird/logbook.pyi +1 -0
  235. homeassistant-stubs/components/doorbird/util.pyi +1 -0
  236. homeassistant-stubs/components/dormakaba_dkey/binary_sensor.pyi +1 -0
  237. homeassistant-stubs/components/dormakaba_dkey/entity.pyi +3 -0
  238. homeassistant-stubs/components/dormakaba_dkey/lock.pyi +1 -0
  239. homeassistant-stubs/components/dormakaba_dkey/sensor.pyi +1 -0
  240. homeassistant-stubs/components/dsmr/__init__.pyi +1 -0
  241. homeassistant-stubs/components/dsmr/config_flow.pyi +1 -0
  242. homeassistant-stubs/components/dsmr/sensor.pyi +1 -0
  243. homeassistant-stubs/components/duckdns/__init__.pyi +2 -0
  244. homeassistant-stubs/components/duotecno/climate.pyi +3 -0
  245. homeassistant-stubs/components/duotecno/cover.pyi +3 -0
  246. homeassistant-stubs/components/duotecno/light.pyi +2 -0
  247. homeassistant-stubs/components/duotecno/switch.pyi +2 -0
  248. homeassistant-stubs/components/easyenergy/services.pyi +1 -0
  249. homeassistant-stubs/components/ecovacs/util.pyi +2 -0
  250. homeassistant-stubs/components/eheimdigital/entity.pyi +1 -0
  251. homeassistant-stubs/components/elgato/config_flow.pyi +2 -0
  252. homeassistant-stubs/components/elkm1/__init__.pyi +2 -0
  253. homeassistant-stubs/components/elkm1/discovery.pyi +2 -0
  254. homeassistant-stubs/components/elkm1/entity.pyi +1 -0
  255. homeassistant-stubs/components/elkm1/logbook.pyi +1 -0
  256. homeassistant-stubs/components/emulated_hue/config.pyi +4 -0
  257. homeassistant-stubs/components/emulated_hue/hue_api.pyi +6 -0
  258. homeassistant-stubs/components/emulated_hue/upnp.pyi +1 -0
  259. homeassistant-stubs/components/energy/data.pyi +1 -0
  260. homeassistant-stubs/components/energy/sensor.pyi +5 -0
  261. homeassistant-stubs/components/energy/validate.pyi +4 -0
  262. homeassistant-stubs/components/energy/websocket_api.pyi +12 -0
  263. homeassistant-stubs/components/energyzero/services.pyi +1 -0
  264. homeassistant-stubs/components/enigma2/config_flow.pyi +1 -0
  265. homeassistant-stubs/components/enigma2/media_player.pyi +1 -0
  266. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +3 -0
  267. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +3 -0
  268. homeassistant-stubs/components/eq3btsmart/climate.pyi +3 -0
  269. homeassistant-stubs/components/eq3btsmart/entity.pyi +2 -0
  270. homeassistant-stubs/components/esphome/alarm_control_panel.pyi +9 -0
  271. homeassistant-stubs/components/esphome/assist_satellite.pyi +2 -0
  272. homeassistant-stubs/components/esphome/binary_sensor.pyi +1 -0
  273. homeassistant-stubs/components/esphome/bluetooth.pyi +3 -1
  274. homeassistant-stubs/components/esphome/button.pyi +3 -0
  275. homeassistant-stubs/components/esphome/camera.pyi +3 -0
  276. homeassistant-stubs/components/esphome/climate.pyi +18 -0
  277. homeassistant-stubs/components/esphome/config_flow.pyi +2 -0
  278. homeassistant-stubs/components/esphome/cover.pyi +13 -0
  279. homeassistant-stubs/components/esphome/dashboard.pyi +2 -0
  280. homeassistant-stubs/components/esphome/date.pyi +1 -0
  281. homeassistant-stubs/components/esphome/datetime.pyi +1 -0
  282. homeassistant-stubs/components/esphome/domain_data.pyi +2 -0
  283. homeassistant-stubs/components/esphome/entity.pyi +6 -0
  284. homeassistant-stubs/components/esphome/entry_data.pyi +23 -0
  285. homeassistant-stubs/components/esphome/event.pyi +2 -0
  286. homeassistant-stubs/components/esphome/fan.pyi +11 -0
  287. homeassistant-stubs/components/esphome/light.pyi +15 -0
  288. homeassistant-stubs/components/esphome/lock.pyi +8 -0
  289. homeassistant-stubs/components/esphome/manager.pyi +12 -0
  290. homeassistant-stubs/components/esphome/media_player.pyi +10 -0
  291. homeassistant-stubs/components/esphome/number.pyi +3 -0
  292. homeassistant-stubs/components/esphome/select.pyi +3 -0
  293. homeassistant-stubs/components/esphome/sensor.pyi +2 -0
  294. homeassistant-stubs/components/esphome/switch.pyi +4 -0
  295. homeassistant-stubs/components/esphome/text.pyi +3 -0
  296. homeassistant-stubs/components/esphome/time.pyi +1 -0
  297. homeassistant-stubs/components/esphome/update.pyi +13 -0
  298. homeassistant-stubs/components/esphome/valve.pyi +9 -0
  299. homeassistant-stubs/components/event/__init__.pyi +6 -1
  300. homeassistant-stubs/components/evil_genius_labs/light.pyi +2 -0
  301. homeassistant-stubs/components/evohome/__init__.pyi +1 -0
  302. homeassistant-stubs/components/fan/__init__.pyi +7 -1
  303. homeassistant-stubs/components/fan/device_condition.pyi +1 -0
  304. homeassistant-stubs/components/fan/significant_change.pyi +1 -0
  305. homeassistant-stubs/components/feedreader/config_flow.pyi +1 -0
  306. homeassistant-stubs/components/feedreader/coordinator.pyi +6 -0
  307. homeassistant-stubs/components/feedreader/event.pyi +1 -0
  308. homeassistant-stubs/components/file_upload/__init__.pyi +3 -0
  309. homeassistant-stubs/components/filter/sensor.pyi +2 -0
  310. homeassistant-stubs/components/fitbit/sensor.pyi +2 -0
  311. homeassistant-stubs/components/flux_led/__init__.pyi +1 -0
  312. homeassistant-stubs/components/flux_led/config_flow.pyi +2 -0
  313. homeassistant-stubs/components/flux_led/discovery.pyi +7 -0
  314. homeassistant-stubs/components/flux_led/entity.pyi +1 -0
  315. homeassistant-stubs/components/flux_led/light.pyi +1 -0
  316. homeassistant-stubs/components/flux_led/select.pyi +1 -0
  317. homeassistant-stubs/components/forecast_solar/config_flow.pyi +1 -0
  318. homeassistant-stubs/components/fritz/button.pyi +1 -0
  319. homeassistant-stubs/components/fritz/config_flow.pyi +2 -0
  320. homeassistant-stubs/components/fritz/device_tracker.pyi +1 -0
  321. homeassistant-stubs/components/fritzbox/climate.pyi +1 -0
  322. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +1 -0
  323. homeassistant-stubs/components/fronius/coordinator.pyi +1 -0
  324. homeassistant-stubs/components/fronius/sensor.pyi +1 -0
  325. homeassistant-stubs/components/frontend/__init__.pyi +13 -0
  326. homeassistant-stubs/components/frontend/storage.pyi +5 -0
  327. homeassistant-stubs/components/fully_kiosk/camera.pyi +1 -0
  328. homeassistant-stubs/components/fully_kiosk/media_player.pyi +1 -0
  329. homeassistant-stubs/components/fully_kiosk/sensor.pyi +1 -0
  330. homeassistant-stubs/components/fully_kiosk/switch.pyi +1 -0
  331. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +2 -0
  332. homeassistant-stubs/components/generic_thermostat/climate.pyi +2 -0
  333. homeassistant-stubs/components/geo_location/__init__.pyi +3 -1
  334. homeassistant-stubs/components/gios/system_health.pyi +1 -0
  335. homeassistant-stubs/components/glances/sensor.pyi +1 -0
  336. homeassistant-stubs/components/go2rtc/__init__.pyi +2 -0
  337. homeassistant-stubs/components/google/api.pyi +3 -0
  338. homeassistant-stubs/components/google/config_flow.pyi +1 -0
  339. homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +1 -0
  340. homeassistant-stubs/components/google_cloud/config_flow.pyi +1 -0
  341. homeassistant-stubs/components/google_cloud/tts.pyi +1 -0
  342. homeassistant-stubs/components/govee_ble/event.pyi +1 -0
  343. homeassistant-stubs/components/group/__init__.pyi +2 -0
  344. homeassistant-stubs/components/group/binary_sensor.pyi +2 -0
  345. homeassistant-stubs/components/group/button.pyi +2 -0
  346. homeassistant-stubs/components/group/config_flow.pyi +4 -0
  347. homeassistant-stubs/components/group/cover.pyi +3 -0
  348. homeassistant-stubs/components/group/entity.pyi +13 -0
  349. homeassistant-stubs/components/group/event.pyi +2 -0
  350. homeassistant-stubs/components/group/fan.pyi +3 -0
  351. homeassistant-stubs/components/group/light.pyi +2 -0
  352. homeassistant-stubs/components/group/lock.pyi +2 -0
  353. homeassistant-stubs/components/group/media_player.pyi +5 -0
  354. homeassistant-stubs/components/group/notify.pyi +2 -0
  355. homeassistant-stubs/components/group/registry.pyi +3 -0
  356. homeassistant-stubs/components/group/sensor.pyi +2 -0
  357. homeassistant-stubs/components/group/switch.pyi +2 -0
  358. homeassistant-stubs/components/guardian/__init__.pyi +1 -0
  359. homeassistant-stubs/components/guardian/button.pyi +1 -0
  360. homeassistant-stubs/components/guardian/config_flow.pyi +2 -0
  361. homeassistant-stubs/components/guardian/switch.pyi +3 -0
  362. homeassistant-stubs/components/guardian/util.pyi +2 -0
  363. homeassistant-stubs/components/guardian/valve.pyi +5 -0
  364. homeassistant-stubs/components/hardkernel/hardware.pyi +1 -0
  365. homeassistant-stubs/components/hardware/hardware.pyi +1 -0
  366. homeassistant-stubs/components/hardware/models.pyi +1 -0
  367. homeassistant-stubs/components/hardware/websocket_api.pyi +2 -0
  368. homeassistant-stubs/components/here_travel_time/config_flow.pyi +1 -0
  369. homeassistant-stubs/components/here_travel_time/sensor.pyi +1 -0
  370. homeassistant-stubs/components/history/websocket_api.pyi +5 -0
  371. homeassistant-stubs/components/history_stats/coordinator.pyi +4 -0
  372. homeassistant-stubs/components/history_stats/helpers.pyi +1 -0
  373. homeassistant-stubs/components/history_stats/sensor.pyi +2 -0
  374. homeassistant-stubs/components/holiday/calendar.pyi +1 -0
  375. homeassistant-stubs/components/holiday/config_flow.pyi +1 -0
  376. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -0
  377. homeassistant-stubs/components/homeassistant/exposed_entities.pyi +23 -0
  378. homeassistant-stubs/components/homeassistant/logbook.pyi +1 -0
  379. homeassistant-stubs/components/homeassistant/scene.pyi +2 -0
  380. homeassistant-stubs/components/homeassistant/system_health.pyi +1 -0
  381. homeassistant-stubs/components/homeassistant_green/config_flow.pyi +1 -0
  382. homeassistant-stubs/components/homeassistant_green/hardware.pyi +1 -0
  383. homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +1 -0
  384. homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +5 -0
  385. homeassistant-stubs/components/homeassistant_hardware/util.pyi +2 -0
  386. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +1 -0
  387. homeassistant-stubs/components/homeassistant_sky_connect/hardware.pyi +1 -0
  388. homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +4 -1
  389. homeassistant-stubs/components/homeassistant_yellow/hardware.pyi +1 -0
  390. homeassistant-stubs/components/homekit/__init__.pyi +12 -0
  391. homeassistant-stubs/components/homekit/accessories.pyi +15 -1
  392. homeassistant-stubs/components/homekit/aidmanager.pyi +2 -0
  393. homeassistant-stubs/components/homekit/config_flow.pyi +7 -0
  394. homeassistant-stubs/components/homekit/doorbell.pyi +6 -1
  395. homeassistant-stubs/components/homekit/iidmanager.pyi +2 -0
  396. homeassistant-stubs/components/homekit/logbook.pyi +1 -0
  397. homeassistant-stubs/components/homekit/type_cameras.pyi +8 -0
  398. homeassistant-stubs/components/homekit/type_covers.pyi +9 -0
  399. homeassistant-stubs/components/homekit/type_fans.pyi +1 -0
  400. homeassistant-stubs/components/homekit/type_humidifiers.pyi +7 -0
  401. homeassistant-stubs/components/homekit/type_lights.pyi +3 -1
  402. homeassistant-stubs/components/homekit/type_locks.pyi +1 -0
  403. homeassistant-stubs/components/homekit/type_media_players.pyi +2 -0
  404. homeassistant-stubs/components/homekit/type_remotes.pyi +2 -0
  405. homeassistant-stubs/components/homekit/type_security_systems.pyi +1 -0
  406. homeassistant-stubs/components/homekit/type_sensors.pyi +11 -0
  407. homeassistant-stubs/components/homekit/type_switches.pyi +5 -0
  408. homeassistant-stubs/components/homekit/type_thermostats.pyi +5 -2
  409. homeassistant-stubs/components/homekit/type_triggers.pyi +5 -0
  410. homeassistant-stubs/components/homekit/util.pyi +4 -0
  411. homeassistant-stubs/components/homekit_controller/config_flow.pyi +2 -0
  412. homeassistant-stubs/components/homekit_controller/storage.pyi +4 -0
  413. homeassistant-stubs/components/homekit_controller/utils.pyi +2 -0
  414. homeassistant-stubs/components/homewizard/button.pyi +1 -0
  415. homeassistant-stubs/components/homewizard/number.pyi +1 -0
  416. homeassistant-stubs/components/homewizard/switch.pyi +2 -0
  417. homeassistant-stubs/components/homeworks/__init__.pyi +2 -0
  418. homeassistant-stubs/components/homeworks/binary_sensor.pyi +1 -0
  419. homeassistant-stubs/components/homeworks/config_flow.pyi +1 -0
  420. homeassistant-stubs/components/homeworks/light.pyi +1 -0
  421. homeassistant-stubs/components/http/__init__.pyi +2 -0
  422. homeassistant-stubs/components/http/auth.pyi +2 -0
  423. homeassistant-stubs/components/http/ban.pyi +4 -1
  424. homeassistant-stubs/components/http/cors.pyi +1 -0
  425. homeassistant-stubs/components/http/forwarded.pyi +1 -0
  426. homeassistant-stubs/components/http/headers.pyi +1 -0
  427. homeassistant-stubs/components/http/request_context.pyi +1 -0
  428. homeassistant-stubs/components/http/security_filter.pyi +1 -0
  429. homeassistant-stubs/components/huawei_lte/config_flow.pyi +1 -0
  430. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +1 -0
  431. homeassistant-stubs/components/humidifier/__init__.pyi +3 -1
  432. homeassistant-stubs/components/humidifier/device_condition.pyi +1 -0
  433. homeassistant-stubs/components/humidifier/significant_change.pyi +1 -0
  434. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
  435. homeassistant-stubs/components/husqvarna_automower/entity.pyi +2 -0
  436. homeassistant-stubs/components/husqvarna_automower/number.pyi +1 -0
  437. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +4 -0
  438. homeassistant-stubs/components/hydrawise/entity.pyi +1 -0
  439. homeassistant-stubs/components/hyperion/__init__.pyi +1 -0
  440. homeassistant-stubs/components/hyperion/camera.pyi +2 -0
  441. homeassistant-stubs/components/hyperion/config_flow.pyi +1 -0
  442. homeassistant-stubs/components/hyperion/light.pyi +6 -0
  443. homeassistant-stubs/components/hyperion/sensor.pyi +1 -0
  444. homeassistant-stubs/components/hyperion/switch.pyi +1 -0
  445. homeassistant-stubs/components/ibeacon/config_flow.pyi +1 -0
  446. homeassistant-stubs/components/ibeacon/coordinator.pyi +17 -0
  447. homeassistant-stubs/components/ibeacon/device_tracker.pyi +2 -0
  448. homeassistant-stubs/components/ibeacon/entity.pyi +2 -0
  449. homeassistant-stubs/components/ibeacon/sensor.pyi +2 -0
  450. homeassistant-stubs/components/image/__init__.pyi +4 -1
  451. homeassistant-stubs/components/image_processing/__init__.pyi +3 -1
  452. homeassistant-stubs/components/image_upload/__init__.pyi +1 -0
  453. homeassistant-stubs/components/imap/__init__.pyi +1 -0
  454. homeassistant-stubs/components/imap/config_flow.pyi +1 -0
  455. homeassistant-stubs/components/imap/diagnostics.pyi +1 -0
  456. homeassistant-stubs/components/input_button/__init__.pyi +1 -0
  457. homeassistant-stubs/components/input_select/__init__.pyi +1 -0
  458. homeassistant-stubs/components/input_text/__init__.pyi +1 -0
  459. homeassistant-stubs/components/integration/config_flow.pyi +1 -0
  460. homeassistant-stubs/components/integration/sensor.pyi +5 -0
  461. homeassistant-stubs/components/intent/timers.pyi +2 -0
  462. homeassistant-stubs/components/ios/__init__.pyi +2 -0
  463. homeassistant-stubs/components/ios/sensor.pyi +1 -0
  464. homeassistant-stubs/components/iotty/cover.pyi +1 -0
  465. homeassistant-stubs/components/iotty/switch.pyi +1 -0
  466. homeassistant-stubs/components/iqvia/entity.pyi +2 -0
  467. homeassistant-stubs/components/iqvia/sensor.pyi +3 -0
  468. homeassistant-stubs/components/islamic_prayer_times/config_flow.pyi +1 -0
  469. homeassistant-stubs/components/islamic_prayer_times/coordinator.pyi +1 -0
  470. homeassistant-stubs/components/isy994/__init__.pyi +1 -0
  471. homeassistant-stubs/components/isy994/binary_sensor.pyi +5 -0
  472. homeassistant-stubs/components/isy994/button.pyi +1 -0
  473. homeassistant-stubs/components/isy994/config_flow.pyi +1 -0
  474. homeassistant-stubs/components/isy994/entity.pyi +3 -0
  475. homeassistant-stubs/components/isy994/light.pyi +1 -0
  476. homeassistant-stubs/components/isy994/lock.pyi +1 -0
  477. homeassistant-stubs/components/isy994/number.pyi +2 -0
  478. homeassistant-stubs/components/isy994/select.pyi +1 -0
  479. homeassistant-stubs/components/isy994/sensor.pyi +1 -0
  480. homeassistant-stubs/components/isy994/services.pyi +2 -0
  481. homeassistant-stubs/components/isy994/switch.pyi +1 -0
  482. homeassistant-stubs/components/isy994/system_health.pyi +1 -0
  483. homeassistant-stubs/components/isy994/util.pyi +1 -0
  484. homeassistant-stubs/components/jellyfin/config_flow.pyi +1 -0
  485. homeassistant-stubs/components/jellyfin/media_player.pyi +2 -0
  486. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +1 -0
  487. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +1 -0
  488. homeassistant-stubs/components/knocki/coordinator.pyi +1 -0
  489. homeassistant-stubs/components/knx/config_flow.pyi +3 -0
  490. homeassistant-stubs/components/knx/expose.pyi +6 -0
  491. homeassistant-stubs/components/knx/services.pyi +2 -0
  492. homeassistant-stubs/components/knx/storage/config_store.pyi +1 -0
  493. homeassistant-stubs/components/knx/websocket.pyi +40 -0
  494. homeassistant-stubs/components/kraken/config_flow.pyi +1 -0
  495. homeassistant-stubs/components/lacrosse/sensor.pyi +1 -0
  496. homeassistant-stubs/components/lamarzocco/config_flow.pyi +1 -0
  497. homeassistant-stubs/components/lamarzocco/coordinator.pyi +1 -0
  498. homeassistant-stubs/components/lametric/button.pyi +1 -0
  499. homeassistant-stubs/components/lametric/helpers.pyi +1 -0
  500. homeassistant-stubs/components/lametric/number.pyi +7 -1
  501. homeassistant-stubs/components/lametric/select.pyi +1 -0
  502. homeassistant-stubs/components/lametric/services.pyi +1 -0
  503. homeassistant-stubs/components/lametric/switch.pyi +2 -0
  504. homeassistant-stubs/components/laundrify/binary_sensor.pyi +1 -0
  505. homeassistant-stubs/components/lawn_mower/__init__.pyi +2 -0
  506. homeassistant-stubs/components/lcn/websocket.pyi +21 -0
  507. homeassistant-stubs/components/ld2410_ble/binary_sensor.pyi +1 -0
  508. homeassistant-stubs/components/ld2410_ble/coordinator.pyi +3 -0
  509. homeassistant-stubs/components/ld2410_ble/sensor.pyi +1 -0
  510. homeassistant-stubs/components/led_ble/light.pyi +2 -0
  511. homeassistant-stubs/components/lektrico/config_flow.pyi +2 -0
  512. homeassistant-stubs/components/lifx/__init__.pyi +1 -0
  513. homeassistant-stubs/components/lifx/binary_sensor.pyi +2 -0
  514. homeassistant-stubs/components/lifx/config_flow.pyi +2 -0
  515. homeassistant-stubs/components/lifx/coordinator.pyi +2 -0
  516. homeassistant-stubs/components/lifx/discovery.pyi +2 -0
  517. homeassistant-stubs/components/lifx/manager.pyi +3 -0
  518. homeassistant-stubs/components/lifx/migration.pyi +2 -0
  519. homeassistant-stubs/components/lifx/select.pyi +4 -0
  520. homeassistant-stubs/components/lifx/sensor.pyi +2 -0
  521. homeassistant-stubs/components/lifx/util.pyi +2 -0
  522. homeassistant-stubs/components/light/__init__.pyi +8 -1
  523. homeassistant-stubs/components/light/device_condition.pyi +1 -0
  524. homeassistant-stubs/components/light/significant_change.pyi +1 -0
  525. homeassistant-stubs/components/linkplay/button.pyi +1 -0
  526. homeassistant-stubs/components/linkplay/media_player.pyi +16 -0
  527. homeassistant-stubs/components/litejet/config_flow.pyi +1 -0
  528. homeassistant-stubs/components/lock/__init__.pyi +11 -1
  529. homeassistant-stubs/components/lock/device_condition.pyi +1 -0
  530. homeassistant-stubs/components/lock/significant_change.pyi +1 -0
  531. homeassistant-stubs/components/logbook/__init__.pyi +4 -0
  532. homeassistant-stubs/components/logbook/helpers.pyi +4 -0
  533. homeassistant-stubs/components/logbook/models.pyi +1 -0
  534. homeassistant-stubs/components/logbook/rest_api.pyi +1 -0
  535. homeassistant-stubs/components/logbook/websocket_api.pyi +4 -0
  536. homeassistant-stubs/components/logger/helpers.pyi +6 -0
  537. homeassistant-stubs/components/logger/websocket_api.pyi +4 -0
  538. homeassistant-stubs/components/lookin/climate.pyi +3 -0
  539. homeassistant-stubs/components/lookin/coordinator.pyi +1 -0
  540. homeassistant-stubs/components/luftdaten/config_flow.pyi +1 -0
  541. homeassistant-stubs/components/manual/alarm_control_panel.pyi +1 -0
  542. homeassistant-stubs/components/matter/__init__.pyi +4 -0
  543. homeassistant-stubs/components/matter/addon.pyi +1 -0
  544. homeassistant-stubs/components/matter/api.pyi +40 -0
  545. homeassistant-stubs/components/matter/binary_sensor.pyi +1 -0
  546. homeassistant-stubs/components/matter/climate.pyi +3 -0
  547. homeassistant-stubs/components/matter/cover.pyi +1 -0
  548. homeassistant-stubs/components/matter/discovery.pyi +2 -0
  549. homeassistant-stubs/components/matter/entity.pyi +5 -0
  550. homeassistant-stubs/components/matter/event.pyi +1 -0
  551. homeassistant-stubs/components/matter/fan.pyi +2 -0
  552. homeassistant-stubs/components/matter/helpers.pyi +3 -0
  553. homeassistant-stubs/components/matter/light.pyi +1 -0
  554. homeassistant-stubs/components/matter/lock.pyi +3 -0
  555. homeassistant-stubs/components/matter/number.pyi +1 -0
  556. homeassistant-stubs/components/matter/select.pyi +2 -0
  557. homeassistant-stubs/components/matter/sensor.pyi +2 -0
  558. homeassistant-stubs/components/matter/switch.pyi +1 -0
  559. homeassistant-stubs/components/matter/update.pyi +1 -0
  560. homeassistant-stubs/components/matter/vacuum.pyi +2 -0
  561. homeassistant-stubs/components/matter/valve.pyi +2 -0
  562. homeassistant-stubs/components/media_player/__init__.pyi +20 -1
  563. homeassistant-stubs/components/media_player/browse_media.pyi +1 -0
  564. homeassistant-stubs/components/media_player/device_condition.pyi +1 -0
  565. homeassistant-stubs/components/media_player/significant_change.pyi +1 -0
  566. homeassistant-stubs/components/media_source/__init__.pyi +5 -1
  567. homeassistant-stubs/components/media_source/local_source.pyi +6 -0
  568. homeassistant-stubs/components/media_source/models.pyi +1 -0
  569. homeassistant-stubs/components/met_eireann/weather.pyi +2 -0
  570. homeassistant-stubs/components/metoffice/weather.pyi +2 -0
  571. homeassistant-stubs/components/mikrotik/config_flow.pyi +1 -0
  572. homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -0
  573. homeassistant-stubs/components/min_max/sensor.pyi +2 -0
  574. homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -0
  575. homeassistant-stubs/components/minecraft_server/sensor.pyi +2 -0
  576. homeassistant-stubs/components/mjpeg/config_flow.pyi +2 -0
  577. homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -0
  578. homeassistant-stubs/components/modbus/entity.pyi +2 -0
  579. homeassistant-stubs/components/modbus/modbus.pyi +1 -0
  580. homeassistant-stubs/components/modbus/sensor.pyi +1 -0
  581. homeassistant-stubs/components/modem_callerid/sensor.pyi +1 -0
  582. homeassistant-stubs/components/mold_indicator/config_flow.pyi +1 -0
  583. homeassistant-stubs/components/mold_indicator/sensor.pyi +2 -0
  584. homeassistant-stubs/components/mopeka/config_flow.pyi +1 -0
  585. homeassistant-stubs/components/mqtt/__init__.pyi +4 -0
  586. homeassistant-stubs/components/mqtt/addon.pyi +1 -0
  587. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -0
  588. homeassistant-stubs/components/mqtt/binary_sensor.pyi +3 -0
  589. homeassistant-stubs/components/mqtt/button.pyi +1 -0
  590. homeassistant-stubs/components/mqtt/camera.pyi +2 -0
  591. homeassistant-stubs/components/mqtt/client.pyi +30 -0
  592. homeassistant-stubs/components/mqtt/climate.pyi +6 -0
  593. homeassistant-stubs/components/mqtt/config_flow.pyi +2 -0
  594. homeassistant-stubs/components/mqtt/cover.pyi +6 -0
  595. homeassistant-stubs/components/mqtt/device_tracker.pyi +2 -0
  596. homeassistant-stubs/components/mqtt/diagnostics.pyi +2 -0
  597. homeassistant-stubs/components/mqtt/discovery.pyi +11 -0
  598. homeassistant-stubs/components/mqtt/entity.pyi +19 -1
  599. homeassistant-stubs/components/mqtt/event.pyi +2 -0
  600. homeassistant-stubs/components/mqtt/fan.pyi +6 -0
  601. homeassistant-stubs/components/mqtt/humidifier.pyi +6 -0
  602. homeassistant-stubs/components/mqtt/image.pyi +3 -0
  603. homeassistant-stubs/components/mqtt/lawn_mower.pyi +2 -0
  604. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +12 -0
  605. homeassistant-stubs/components/mqtt/light/schema_json.pyi +2 -0
  606. homeassistant-stubs/components/mqtt/light/schema_template.pyi +2 -0
  607. homeassistant-stubs/components/mqtt/lock.pyi +2 -0
  608. homeassistant-stubs/components/mqtt/models.pyi +4 -0
  609. homeassistant-stubs/components/mqtt/notify.pyi +1 -0
  610. homeassistant-stubs/components/mqtt/number.pyi +2 -0
  611. homeassistant-stubs/components/mqtt/scene.pyi +1 -0
  612. homeassistant-stubs/components/mqtt/select.pyi +2 -0
  613. homeassistant-stubs/components/mqtt/sensor.pyi +5 -0
  614. homeassistant-stubs/components/mqtt/siren.pyi +2 -0
  615. homeassistant-stubs/components/mqtt/subscription.pyi +3 -0
  616. homeassistant-stubs/components/mqtt/switch.pyi +2 -0
  617. homeassistant-stubs/components/mqtt/tag.pyi +1 -0
  618. homeassistant-stubs/components/mqtt/text.pyi +2 -0
  619. homeassistant-stubs/components/mqtt/update.pyi +3 -0
  620. homeassistant-stubs/components/mqtt/util.pyi +8 -0
  621. homeassistant-stubs/components/mqtt/vacuum.pyi +2 -0
  622. homeassistant-stubs/components/mqtt/valve.pyi +5 -0
  623. homeassistant-stubs/components/mqtt/water_heater.pyi +2 -0
  624. homeassistant-stubs/components/music_assistant/actions.pyi +2 -0
  625. homeassistant-stubs/components/music_assistant/media_player.pyi +22 -0
  626. homeassistant-stubs/components/mysensors/__init__.pyi +1 -0
  627. homeassistant-stubs/components/mysensors/climate.pyi +1 -0
  628. homeassistant-stubs/components/mysensors/config_flow.pyi +1 -0
  629. homeassistant-stubs/components/mysensors/device_tracker.pyi +1 -0
  630. homeassistant-stubs/components/mysensors/entity.pyi +3 -0
  631. homeassistant-stubs/components/mysensors/handler.pyi +9 -0
  632. homeassistant-stubs/components/mysensors/helpers.pyi +3 -0
  633. homeassistant-stubs/components/mysensors/light.pyi +6 -0
  634. homeassistant-stubs/components/mysensors/remote.pyi +1 -0
  635. homeassistant-stubs/components/mysensors/sensor.pyi +1 -0
  636. homeassistant-stubs/components/myuplink/__init__.pyi +1 -0
  637. homeassistant-stubs/components/nanoleaf/event.pyi +1 -0
  638. homeassistant-stubs/components/nasweb/coordinator.pyi +3 -0
  639. homeassistant-stubs/components/nasweb/switch.pyi +1 -0
  640. homeassistant-stubs/components/nest/camera.pyi +4 -0
  641. homeassistant-stubs/components/nest/device_info.pyi +2 -0
  642. homeassistant-stubs/components/nest/media_source.pyi +1 -0
  643. homeassistant-stubs/components/netatmo/binary_sensor.pyi +1 -0
  644. homeassistant-stubs/components/netatmo/camera.pyi +2 -0
  645. homeassistant-stubs/components/netatmo/climate.pyi +2 -0
  646. homeassistant-stubs/components/netatmo/config_flow.pyi +1 -0
  647. homeassistant-stubs/components/netatmo/cover.pyi +1 -0
  648. homeassistant-stubs/components/netatmo/data_handler.pyi +1 -0
  649. homeassistant-stubs/components/netatmo/entity.pyi +1 -0
  650. homeassistant-stubs/components/netatmo/fan.pyi +1 -0
  651. homeassistant-stubs/components/netatmo/light.pyi +3 -0
  652. homeassistant-stubs/components/netatmo/media_source.pyi +1 -0
  653. homeassistant-stubs/components/netatmo/select.pyi +2 -0
  654. homeassistant-stubs/components/netatmo/sensor.pyi +5 -0
  655. homeassistant-stubs/components/netatmo/switch.pyi +1 -0
  656. homeassistant-stubs/components/network/__init__.pyi +5 -0
  657. homeassistant-stubs/components/network/network.pyi +1 -0
  658. homeassistant-stubs/components/network/util.pyi +1 -0
  659. homeassistant-stubs/components/network/websocket.pyi +7 -0
  660. homeassistant-stubs/components/nextdns/binary_sensor.pyi +1 -0
  661. homeassistant-stubs/components/nextdns/sensor.pyi +1 -0
  662. homeassistant-stubs/components/nextdns/switch.pyi +1 -0
  663. homeassistant-stubs/components/nextdns/system_health.pyi +1 -0
  664. homeassistant-stubs/components/nissan_leaf/entity.pyi +1 -0
  665. homeassistant-stubs/components/notify/__init__.pyi +4 -1
  666. homeassistant-stubs/components/notify/legacy.pyi +3 -0
  667. homeassistant-stubs/components/notify/repairs.pyi +1 -0
  668. homeassistant-stubs/components/notion/__init__.pyi +1 -0
  669. homeassistant-stubs/components/notion/coordinator.pyi +1 -0
  670. homeassistant-stubs/components/notion/entity.pyi +3 -0
  671. homeassistant-stubs/components/number/__init__.pyi +11 -1
  672. homeassistant-stubs/components/number/significant_change.pyi +1 -0
  673. homeassistant-stubs/components/number/websocket_api.pyi +2 -0
  674. homeassistant-stubs/components/nut/__init__.pyi +1 -0
  675. homeassistant-stubs/components/nut/config_flow.pyi +1 -0
  676. homeassistant-stubs/components/onboarding/__init__.pyi +5 -0
  677. homeassistant-stubs/components/onboarding/views.pyi +2 -0
  678. homeassistant-stubs/components/onewire/config_flow.pyi +1 -0
  679. homeassistant-stubs/components/onkyo/config_flow.pyi +1 -0
  680. homeassistant-stubs/components/onkyo/media_player.pyi +10 -0
  681. homeassistant-stubs/components/open_meteo/weather.pyi +2 -0
  682. homeassistant-stubs/components/opensky/config_flow.pyi +1 -0
  683. homeassistant-stubs/components/openuv/binary_sensor.pyi +1 -0
  684. homeassistant-stubs/components/openuv/config_flow.pyi +1 -0
  685. homeassistant-stubs/components/otbr/config_flow.pyi +1 -0
  686. homeassistant-stubs/components/otbr/util.pyi +11 -0
  687. homeassistant-stubs/components/otbr/websocket_api.pyi +12 -0
  688. homeassistant-stubs/components/panel_custom/__init__.pyi +1 -0
  689. homeassistant-stubs/components/peblar/button.pyi +1 -0
  690. homeassistant-stubs/components/peblar/coordinator.pyi +3 -0
  691. homeassistant-stubs/components/peblar/number.pyi +1 -0
  692. homeassistant-stubs/components/peblar/select.pyi +1 -0
  693. homeassistant-stubs/components/peblar/switch.pyi +2 -0
  694. homeassistant-stubs/components/persistent_notification/__init__.pyi +12 -0
  695. homeassistant-stubs/components/ping/config_flow.pyi +1 -0
  696. homeassistant-stubs/components/plugwise/__init__.pyi +1 -0
  697. homeassistant-stubs/components/plugwise/button.pyi +1 -0
  698. homeassistant-stubs/components/plugwise/climate.pyi +3 -0
  699. homeassistant-stubs/components/plugwise/number.pyi +1 -0
  700. homeassistant-stubs/components/plugwise/select.pyi +1 -0
  701. homeassistant-stubs/components/plugwise/switch.pyi +2 -0
  702. homeassistant-stubs/components/powerwall/__init__.pyi +1 -0
  703. homeassistant-stubs/components/private_ble_device/device_tracker.pyi +2 -0
  704. homeassistant-stubs/components/private_ble_device/entity.pyi +2 -0
  705. homeassistant-stubs/components/private_ble_device/sensor.pyi +2 -0
  706. homeassistant-stubs/components/proximity/config_flow.pyi +1 -0
  707. homeassistant-stubs/components/proximity/coordinator.pyi +1 -0
  708. homeassistant-stubs/components/prusalink/coordinator.pyi +1 -0
  709. homeassistant-stubs/components/purpleair/config_flow.pyi +7 -0
  710. homeassistant-stubs/components/purpleair/coordinator.pyi +1 -0
  711. homeassistant-stubs/components/pushbullet/sensor.pyi +1 -0
  712. homeassistant-stubs/components/qnap_qsw/binary_sensor.pyi +1 -0
  713. homeassistant-stubs/components/qnap_qsw/entity.pyi +2 -0
  714. homeassistant-stubs/components/qnap_qsw/sensor.pyi +1 -0
  715. homeassistant-stubs/components/qnap_qsw/update.pyi +2 -0
  716. homeassistant-stubs/components/rabbitair/fan.pyi +1 -0
  717. homeassistant-stubs/components/radarr/calendar.pyi +1 -0
  718. homeassistant-stubs/components/radio_browser/media_source.pyi +2 -0
  719. homeassistant-stubs/components/rainforest_raven/diagnostics.pyi +1 -0
  720. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -0
  721. homeassistant-stubs/components/rainmachine/binary_sensor.pyi +2 -0
  722. homeassistant-stubs/components/rainmachine/config_flow.pyi +3 -0
  723. homeassistant-stubs/components/rainmachine/coordinator.pyi +1 -0
  724. homeassistant-stubs/components/rainmachine/entity.pyi +2 -0
  725. homeassistant-stubs/components/rainmachine/select.pyi +1 -0
  726. homeassistant-stubs/components/rainmachine/sensor.pyi +2 -0
  727. homeassistant-stubs/components/rainmachine/switch.pyi +17 -0
  728. homeassistant-stubs/components/rainmachine/update.pyi +1 -0
  729. homeassistant-stubs/components/rainmachine/util.pyi +1 -0
  730. homeassistant-stubs/components/raspberry_pi/hardware.pyi +1 -0
  731. homeassistant-stubs/components/recollect_waste/calendar.pyi +2 -0
  732. homeassistant-stubs/components/recollect_waste/config_flow.pyi +1 -0
  733. homeassistant-stubs/components/recollect_waste/sensor.pyi +1 -0
  734. homeassistant-stubs/components/recollect_waste/util.pyi +1 -0
  735. homeassistant-stubs/components/recorder/__init__.pyi +1 -0
  736. homeassistant-stubs/components/recorder/basic_websocket_api.pyi +2 -0
  737. homeassistant-stubs/components/recorder/core.pyi +25 -0
  738. homeassistant-stubs/components/recorder/entity_registry.pyi +1 -0
  739. homeassistant-stubs/components/recorder/migration.pyi +2 -1
  740. homeassistant-stubs/components/recorder/services.pyi +5 -0
  741. homeassistant-stubs/components/recorder/statistics.pyi +4 -0
  742. homeassistant-stubs/components/recorder/system_health/__init__.pyi +2 -0
  743. homeassistant-stubs/components/recorder/util.pyi +6 -0
  744. homeassistant-stubs/components/recorder/websocket_api.pyi +17 -0
  745. homeassistant-stubs/components/remote/__init__.pyi +3 -1
  746. homeassistant-stubs/components/remote/device_condition.pyi +1 -0
  747. homeassistant-stubs/components/remote/significant_change.pyi +1 -0
  748. homeassistant-stubs/components/renault/renault_vehicle.pyi +9 -0
  749. homeassistant-stubs/components/reolink/button.pyi +3 -0
  750. homeassistant-stubs/components/reolink/camera.pyi +1 -0
  751. homeassistant-stubs/components/reolink/config_flow.pyi +1 -0
  752. homeassistant-stubs/components/reolink/entity.pyi +1 -0
  753. homeassistant-stubs/components/reolink/host.pyi +2 -0
  754. homeassistant-stubs/components/reolink/light.pyi +4 -0
  755. homeassistant-stubs/components/reolink/number.pyi +3 -0
  756. homeassistant-stubs/components/reolink/select.pyi +2 -0
  757. homeassistant-stubs/components/reolink/services.pyi +1 -0
  758. homeassistant-stubs/components/reolink/siren.pyi +2 -0
  759. homeassistant-stubs/components/reolink/switch.pyi +6 -0
  760. homeassistant-stubs/components/reolink/views.pyi +1 -0
  761. homeassistant-stubs/components/repairs/issue_handler.pyi +2 -0
  762. homeassistant-stubs/components/repairs/websocket_api.pyi +4 -0
  763. homeassistant-stubs/components/rest/__init__.pyi +1 -0
  764. homeassistant-stubs/components/rest/entity.pyi +1 -0
  765. homeassistant-stubs/components/rfxtrx/binary_sensor.pyi +1 -0
  766. homeassistant-stubs/components/rfxtrx/config_flow.pyi +2 -0
  767. homeassistant-stubs/components/rfxtrx/cover.pyi +1 -0
  768. homeassistant-stubs/components/rfxtrx/entity.pyi +1 -0
  769. homeassistant-stubs/components/rfxtrx/event.pyi +1 -0
  770. homeassistant-stubs/components/rfxtrx/helpers.pyi +1 -0
  771. homeassistant-stubs/components/rfxtrx/light.pyi +1 -0
  772. homeassistant-stubs/components/rfxtrx/sensor.pyi +1 -0
  773. homeassistant-stubs/components/rfxtrx/siren.pyi +2 -0
  774. homeassistant-stubs/components/rfxtrx/switch.pyi +1 -0
  775. homeassistant-stubs/components/ridwell/calendar.pyi +1 -0
  776. homeassistant-stubs/components/ring/binary_sensor.pyi +3 -0
  777. homeassistant-stubs/components/ring/button.pyi +1 -0
  778. homeassistant-stubs/components/ring/camera.pyi +4 -0
  779. homeassistant-stubs/components/ring/coordinator.pyi +2 -0
  780. homeassistant-stubs/components/ring/entity.pyi +1 -0
  781. homeassistant-stubs/components/ring/event.pyi +2 -0
  782. homeassistant-stubs/components/ring/light.pyi +2 -0
  783. homeassistant-stubs/components/ring/number.pyi +2 -0
  784. homeassistant-stubs/components/ring/sensor.pyi +1 -0
  785. homeassistant-stubs/components/ring/siren.pyi +3 -0
  786. homeassistant-stubs/components/ring/switch.pyi +2 -0
  787. homeassistant-stubs/components/rituals_perfume_genie/__init__.pyi +1 -0
  788. homeassistant-stubs/components/rituals_perfume_genie/switch.pyi +1 -0
  789. homeassistant-stubs/components/roborock/config_flow.pyi +1 -0
  790. homeassistant-stubs/components/roku/config_flow.pyi +2 -0
  791. homeassistant-stubs/components/romy/vacuum.pyi +1 -0
  792. homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +1 -0
  793. homeassistant-stubs/components/russound_rio/media_player.pyi +6 -0
  794. homeassistant-stubs/components/ruuvi_gateway/bluetooth.pyi +2 -0
  795. homeassistant-stubs/components/samsungtv/__init__.pyi +2 -0
  796. homeassistant-stubs/components/samsungtv/config_flow.pyi +5 -0
  797. homeassistant-stubs/components/samsungtv/helpers.pyi +3 -0
  798. homeassistant-stubs/components/samsungtv/media_player.pyi +2 -0
  799. homeassistant-stubs/components/samsungtv/remote.pyi +1 -0
  800. homeassistant-stubs/components/scene/__init__.pyi +3 -1
  801. homeassistant-stubs/components/schedule/__init__.pyi +3 -0
  802. homeassistant-stubs/components/schlage/coordinator.pyi +1 -0
  803. homeassistant-stubs/components/schlage/lock.pyi +1 -0
  804. homeassistant-stubs/components/schlage/sensor.pyi +1 -0
  805. homeassistant-stubs/components/scrape/sensor.pyi +1 -0
  806. homeassistant-stubs/components/script/__init__.pyi +14 -0
  807. homeassistant-stubs/components/script/helpers.pyi +1 -0
  808. homeassistant-stubs/components/script/logbook.pyi +1 -0
  809. homeassistant-stubs/components/script/trace.pyi +2 -0
  810. homeassistant-stubs/components/search/__init__.pyi +19 -0
  811. homeassistant-stubs/components/select/__init__.pyi +12 -1
  812. homeassistant-stubs/components/select/device_condition.pyi +1 -0
  813. homeassistant-stubs/components/select/significant_change.pyi +1 -0
  814. homeassistant-stubs/components/sensibo/button.pyi +1 -0
  815. homeassistant-stubs/components/sensibo/climate.pyi +5 -0
  816. homeassistant-stubs/components/sensibo/number.pyi +1 -0
  817. homeassistant-stubs/components/sensibo/select.pyi +1 -0
  818. homeassistant-stubs/components/sensibo/switch.pyi +4 -0
  819. homeassistant-stubs/components/sensor/__init__.pyi +14 -2
  820. homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
  821. homeassistant-stubs/components/sensor/helpers.pyi +1 -0
  822. homeassistant-stubs/components/sensor/recorder.pyi +1 -0
  823. homeassistant-stubs/components/sensor/significant_change.pyi +1 -0
  824. homeassistant-stubs/components/sensor/websocket_api.pyi +3 -0
  825. homeassistant-stubs/components/senz/climate.pyi +1 -0
  826. homeassistant-stubs/components/sfr_box/button.pyi +1 -0
  827. homeassistant-stubs/components/shelly/button.pyi +1 -0
  828. homeassistant-stubs/components/shelly/climate.pyi +4 -0
  829. homeassistant-stubs/components/shelly/config_flow.pyi +2 -0
  830. homeassistant-stubs/components/shelly/coordinator.pyi +10 -0
  831. homeassistant-stubs/components/shelly/cover.pyi +3 -0
  832. homeassistant-stubs/components/shelly/entity.pyi +10 -0
  833. homeassistant-stubs/components/shelly/event.pyi +2 -0
  834. homeassistant-stubs/components/shelly/light.pyi +3 -0
  835. homeassistant-stubs/components/shelly/logbook.pyi +1 -0
  836. homeassistant-stubs/components/shelly/switch.pyi +3 -0
  837. homeassistant-stubs/components/shelly/update.pyi +1 -0
  838. homeassistant-stubs/components/shelly/utils.pyi +5 -0
  839. homeassistant-stubs/components/shelly/valve.pyi +2 -0
  840. homeassistant-stubs/components/shopping_list/__init__.pyi +7 -0
  841. homeassistant-stubs/components/simplisafe/__init__.pyi +5 -0
  842. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +3 -0
  843. homeassistant-stubs/components/simplisafe/binary_sensor.pyi +2 -0
  844. homeassistant-stubs/components/simplisafe/config_flow.pyi +2 -0
  845. homeassistant-stubs/components/simplisafe/entity.pyi +6 -0
  846. homeassistant-stubs/components/simplisafe/lock.pyi +2 -0
  847. homeassistant-stubs/components/simplisafe/sensor.pyi +1 -0
  848. homeassistant-stubs/components/siren/__init__.pyi +2 -1
  849. homeassistant-stubs/components/skybell/binary_sensor.pyi +1 -0
  850. homeassistant-stubs/components/slack/notify.pyi +2 -0
  851. homeassistant-stubs/components/sleepiq/binary_sensor.pyi +1 -0
  852. homeassistant-stubs/components/sleepiq/entity.pyi +2 -0
  853. homeassistant-stubs/components/sleepiq/light.pyi +1 -0
  854. homeassistant-stubs/components/sleepiq/number.pyi +1 -0
  855. homeassistant-stubs/components/sleepiq/select.pyi +2 -0
  856. homeassistant-stubs/components/sleepiq/sensor.pyi +1 -0
  857. homeassistant-stubs/components/sleepiq/switch.pyi +1 -0
  858. homeassistant-stubs/components/smlight/binary_sensor.pyi +1 -0
  859. homeassistant-stubs/components/smlight/switch.pyi +1 -0
  860. homeassistant-stubs/components/smlight/update.pyi +3 -0
  861. homeassistant-stubs/components/snooz/fan.pyi +2 -0
  862. homeassistant-stubs/components/sonarr/config_flow.pyi +1 -0
  863. homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +1 -0
  864. homeassistant-stubs/components/spotify/media_player.pyi +19 -0
  865. homeassistant-stubs/components/spotify/system_health.pyi +1 -0
  866. homeassistant-stubs/components/sql/config_flow.pyi +1 -0
  867. homeassistant-stubs/components/sql/sensor.pyi +1 -0
  868. homeassistant-stubs/components/squeezebox/coordinator.pyi +1 -0
  869. homeassistant-stubs/components/squeezebox/media_player.pyi +1 -0
  870. homeassistant-stubs/components/ssdp/__init__.pyi +11 -1
  871. homeassistant-stubs/components/statistics/config_flow.pyi +1 -0
  872. homeassistant-stubs/components/statistics/sensor.pyi +5 -0
  873. homeassistant-stubs/components/steamist/config_flow.pyi +1 -0
  874. homeassistant-stubs/components/steamist/discovery.pyi +5 -0
  875. homeassistant-stubs/components/stookwijzer/__init__.pyi +1 -0
  876. homeassistant-stubs/components/stream/__init__.pyi +2 -1
  877. homeassistant-stubs/components/stream/core.pyi +3 -0
  878. homeassistant-stubs/components/stream/hls.pyi +3 -0
  879. homeassistant-stubs/components/stream/recorder.pyi +1 -0
  880. homeassistant-stubs/components/stt/__init__.pyi +7 -1
  881. homeassistant-stubs/components/stt/legacy.pyi +4 -0
  882. homeassistant-stubs/components/sun/entity.pyi +4 -0
  883. homeassistant-stubs/components/surepetcare/binary_sensor.pyi +3 -0
  884. homeassistant-stubs/components/surepetcare/entity.pyi +2 -0
  885. homeassistant-stubs/components/surepetcare/lock.pyi +1 -0
  886. homeassistant-stubs/components/surepetcare/sensor.pyi +2 -0
  887. homeassistant-stubs/components/switch/__init__.pyi +1 -0
  888. homeassistant-stubs/components/switch/device_condition.pyi +1 -0
  889. homeassistant-stubs/components/switch/significant_change.pyi +1 -0
  890. homeassistant-stubs/components/switch_as_x/__init__.pyi +1 -0
  891. homeassistant-stubs/components/switch_as_x/cover.pyi +1 -0
  892. homeassistant-stubs/components/switch_as_x/entity.pyi +4 -0
  893. homeassistant-stubs/components/switch_as_x/lock.pyi +1 -0
  894. homeassistant-stubs/components/switch_as_x/valve.pyi +1 -0
  895. homeassistant-stubs/components/switchbee/climate.pyi +1 -0
  896. homeassistant-stubs/components/switchbee/coordinator.pyi +1 -0
  897. homeassistant-stubs/components/switchbee/cover.pyi +1 -0
  898. homeassistant-stubs/components/switchbee/light.pyi +1 -0
  899. homeassistant-stubs/components/switchbee/switch.pyi +1 -0
  900. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -0
  901. homeassistant-stubs/components/switchbot_cloud/lock.pyi +1 -0
  902. homeassistant-stubs/components/switchbot_cloud/sensor.pyi +1 -0
  903. homeassistant-stubs/components/switchbot_cloud/switch.pyi +4 -0
  904. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +2 -0
  905. homeassistant-stubs/components/switcher_kis/climate.pyi +1 -0
  906. homeassistant-stubs/components/switcher_kis/coordinator.pyi +1 -0
  907. homeassistant-stubs/components/switcher_kis/cover.pyi +1 -0
  908. homeassistant-stubs/components/switcher_kis/light.pyi +1 -0
  909. homeassistant-stubs/components/switcher_kis/switch.pyi +1 -0
  910. homeassistant-stubs/components/synology_dsm/common.pyi +1 -0
  911. homeassistant-stubs/components/synology_dsm/config_flow.pyi +1 -0
  912. homeassistant-stubs/components/synology_dsm/coordinator.pyi +3 -0
  913. homeassistant-stubs/components/system_health/__init__.pyi +6 -0
  914. homeassistant-stubs/components/system_log/__init__.pyi +2 -0
  915. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +2 -0
  916. homeassistant-stubs/components/systemmonitor/config_flow.pyi +1 -0
  917. homeassistant-stubs/components/systemmonitor/sensor.pyi +3 -0
  918. homeassistant-stubs/components/tag/__init__.pyi +5 -1
  919. homeassistant-stubs/components/tami4/sensor.pyi +1 -0
  920. homeassistant-stubs/components/technove/number.pyi +1 -0
  921. homeassistant-stubs/components/technove/switch.pyi +2 -0
  922. homeassistant-stubs/components/tedee/entity.pyi +1 -0
  923. homeassistant-stubs/components/text/__init__.pyi +5 -1
  924. homeassistant-stubs/components/thethingsnetwork/entity.pyi +1 -0
  925. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -0
  926. homeassistant-stubs/components/threshold/config_flow.pyi +1 -0
  927. homeassistant-stubs/components/tibber/sensor.pyi +5 -0
  928. homeassistant-stubs/components/tibber/services.pyi +1 -0
  929. homeassistant-stubs/components/tile/device_tracker.pyi +2 -0
  930. homeassistant-stubs/components/time/__init__.pyi +4 -0
  931. homeassistant-stubs/components/time_date/config_flow.pyi +1 -0
  932. homeassistant-stubs/components/time_date/sensor.pyi +2 -0
  933. homeassistant-stubs/components/timer/__init__.pyi +7 -0
  934. homeassistant-stubs/components/tod/binary_sensor.pyi +1 -0
  935. homeassistant-stubs/components/todo/__init__.pyi +9 -1
  936. homeassistant-stubs/components/tplink/__init__.pyi +1 -0
  937. homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -0
  938. homeassistant-stubs/components/tplink/camera.pyi +1 -0
  939. homeassistant-stubs/components/tplink/climate.pyi +5 -0
  940. homeassistant-stubs/components/tplink/config_flow.pyi +3 -0
  941. homeassistant-stubs/components/tplink/entity.pyi +3 -0
  942. homeassistant-stubs/components/tplink/fan.pyi +3 -0
  943. homeassistant-stubs/components/tplink/light.pyi +7 -0
  944. homeassistant-stubs/components/tplink/number.pyi +2 -0
  945. homeassistant-stubs/components/tplink/select.pyi +2 -0
  946. homeassistant-stubs/components/tplink/sensor.pyi +1 -0
  947. homeassistant-stubs/components/tplink/siren.pyi +3 -0
  948. homeassistant-stubs/components/tplink/switch.pyi +3 -0
  949. homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +1 -0
  950. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +1 -0
  951. homeassistant-stubs/components/tplink_omada/switch.pyi +1 -0
  952. homeassistant-stubs/components/tplink_omada/update.pyi +2 -0
  953. homeassistant-stubs/components/trace/websocket_api.pyi +21 -0
  954. homeassistant-stubs/components/tractive/binary_sensor.pyi +1 -0
  955. homeassistant-stubs/components/tractive/device_tracker.pyi +2 -0
  956. homeassistant-stubs/components/tractive/entity.pyi +2 -0
  957. homeassistant-stubs/components/tractive/sensor.pyi +1 -0
  958. homeassistant-stubs/components/tractive/switch.pyi +1 -0
  959. homeassistant-stubs/components/tradfri/__init__.pyi +1 -0
  960. homeassistant-stubs/components/tradfri/coordinator.pyi +2 -0
  961. homeassistant-stubs/components/tradfri/entity.pyi +2 -0
  962. homeassistant-stubs/components/tradfri/sensor.pyi +1 -0
  963. homeassistant-stubs/components/trafikverket_camera/binary_sensor.pyi +1 -0
  964. homeassistant-stubs/components/trafikverket_camera/entity.pyi +2 -0
  965. homeassistant-stubs/components/trafikverket_camera/sensor.pyi +1 -0
  966. homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +1 -0
  967. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +1 -0
  968. homeassistant-stubs/components/trafikverket_train/sensor.pyi +2 -0
  969. homeassistant-stubs/components/transmission/config_flow.pyi +1 -0
  970. homeassistant-stubs/components/tts/__init__.pyi +10 -2
  971. homeassistant-stubs/components/tts/legacy.pyi +1 -0
  972. homeassistant-stubs/components/tts/media_source.pyi +3 -0
  973. homeassistant-stubs/components/twentemilieu/calendar.pyi +1 -0
  974. homeassistant-stubs/components/unifi/__init__.pyi +3 -0
  975. homeassistant-stubs/components/unifi/button.pyi +2 -0
  976. homeassistant-stubs/components/unifi/config_flow.pyi +1 -0
  977. homeassistant-stubs/components/unifi/device_tracker.pyi +8 -0
  978. homeassistant-stubs/components/unifi/diagnostics.pyi +2 -0
  979. homeassistant-stubs/components/unifi/entity.pyi +10 -0
  980. homeassistant-stubs/components/unifi/hub/entity_helper.pyi +12 -0
  981. homeassistant-stubs/components/unifi/hub/entity_loader.pyi +5 -0
  982. homeassistant-stubs/components/unifi/hub/hub.pyi +5 -0
  983. homeassistant-stubs/components/unifi/hub/websocket.pyi +5 -0
  984. homeassistant-stubs/components/unifi/image.pyi +2 -0
  985. homeassistant-stubs/components/unifi/sensor.pyi +22 -0
  986. homeassistant-stubs/components/unifi/services.pyi +1 -0
  987. homeassistant-stubs/components/unifi/switch.pyi +9 -0
  988. homeassistant-stubs/components/unifi/update.pyi +2 -0
  989. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +6 -0
  990. homeassistant-stubs/components/unifiprotect/button.pyi +2 -0
  991. homeassistant-stubs/components/unifiprotect/camera.pyi +4 -0
  992. homeassistant-stubs/components/unifiprotect/config_flow.pyi +2 -0
  993. homeassistant-stubs/components/unifiprotect/data.pyi +19 -0
  994. homeassistant-stubs/components/unifiprotect/discovery.pyi +2 -0
  995. homeassistant-stubs/components/unifiprotect/entity.pyi +12 -0
  996. homeassistant-stubs/components/unifiprotect/event.pyi +4 -0
  997. homeassistant-stubs/components/unifiprotect/light.pyi +1 -0
  998. homeassistant-stubs/components/unifiprotect/lock.pyi +1 -0
  999. homeassistant-stubs/components/unifiprotect/media_player.pyi +1 -0
  1000. homeassistant-stubs/components/unifiprotect/media_source.pyi +6 -0
  1001. homeassistant-stubs/components/unifiprotect/migrate.pyi +3 -0
  1002. homeassistant-stubs/components/unifiprotect/number.pyi +1 -0
  1003. homeassistant-stubs/components/unifiprotect/repairs.pyi +3 -0
  1004. homeassistant-stubs/components/unifiprotect/select.pyi +2 -0
  1005. homeassistant-stubs/components/unifiprotect/sensor.pyi +4 -0
  1006. homeassistant-stubs/components/unifiprotect/services.pyi +4 -0
  1007. homeassistant-stubs/components/unifiprotect/switch.pyi +2 -0
  1008. homeassistant-stubs/components/unifiprotect/text.pyi +1 -0
  1009. homeassistant-stubs/components/unifiprotect/utils.pyi +7 -0
  1010. homeassistant-stubs/components/unifiprotect/views.pyi +9 -0
  1011. homeassistant-stubs/components/upcloud/config_flow.pyi +2 -0
  1012. homeassistant-stubs/components/update/__init__.pyi +7 -1
  1013. homeassistant-stubs/components/update/significant_change.pyi +1 -0
  1014. homeassistant-stubs/components/usb/__init__.pyi +7 -1
  1015. homeassistant-stubs/components/vacuum/__init__.pyi +5 -1
  1016. homeassistant-stubs/components/vacuum/device_condition.pyi +1 -0
  1017. homeassistant-stubs/components/vacuum/significant_change.pyi +1 -0
  1018. homeassistant-stubs/components/valve/__init__.pyi +5 -1
  1019. homeassistant-stubs/components/velbus/button.pyi +1 -0
  1020. homeassistant-stubs/components/velbus/climate.pyi +3 -0
  1021. homeassistant-stubs/components/velbus/cover.pyi +4 -0
  1022. homeassistant-stubs/components/velbus/light.pyi +4 -0
  1023. homeassistant-stubs/components/velbus/select.pyi +1 -0
  1024. homeassistant-stubs/components/velbus/switch.pyi +2 -0
  1025. homeassistant-stubs/components/vlc_telnet/media_player.pyi +12 -0
  1026. homeassistant-stubs/components/wake_word/__init__.pyi +6 -1
  1027. homeassistant-stubs/components/wallbox/coordinator.pyi +6 -0
  1028. homeassistant-stubs/components/water_heater/__init__.pyi +4 -1
  1029. homeassistant-stubs/components/water_heater/significant_change.pyi +1 -0
  1030. homeassistant-stubs/components/watttime/config_flow.pyi +2 -0
  1031. homeassistant-stubs/components/weather/__init__.pyi +36 -1
  1032. homeassistant-stubs/components/weather/significant_change.pyi +1 -0
  1033. homeassistant-stubs/components/weather/websocket_api.pyi +3 -0
  1034. homeassistant-stubs/components/webhook/__init__.pyi +11 -0
  1035. homeassistant-stubs/components/webostv/config_flow.pyi +2 -0
  1036. homeassistant-stubs/components/webostv/helpers.pyi +3 -0
  1037. homeassistant-stubs/components/webostv/media_player.pyi +16 -0
  1038. homeassistant-stubs/components/websocket_api/__init__.pyi +2 -0
  1039. homeassistant-stubs/components/websocket_api/commands.pyi +33 -0
  1040. homeassistant-stubs/components/websocket_api/connection.pyi +9 -0
  1041. homeassistant-stubs/components/websocket_api/http.pyi +7 -0
  1042. homeassistant-stubs/components/websocket_api/sensor.pyi +1 -0
  1043. homeassistant-stubs/components/wemo/__init__.pyi +2 -0
  1044. homeassistant-stubs/components/wemo/config_flow.pyi +1 -0
  1045. homeassistant-stubs/components/wemo/coordinator.pyi +4 -0
  1046. homeassistant-stubs/components/wemo/entity.pyi +2 -0
  1047. homeassistant-stubs/components/wemo/fan.pyi +1 -0
  1048. homeassistant-stubs/components/wemo/light.pyi +1 -0
  1049. homeassistant-stubs/components/wemo/models.pyi +1 -0
  1050. homeassistant-stubs/components/wiz/binary_sensor.pyi +1 -0
  1051. homeassistant-stubs/components/wiz/discovery.pyi +1 -0
  1052. homeassistant-stubs/components/wiz/entity.pyi +3 -0
  1053. homeassistant-stubs/components/wiz/light.pyi +1 -0
  1054. homeassistant-stubs/components/wiz/number.pyi +1 -0
  1055. homeassistant-stubs/components/wiz/sensor.pyi +2 -0
  1056. homeassistant-stubs/components/wled/button.pyi +1 -0
  1057. homeassistant-stubs/components/wled/config_flow.pyi +1 -0
  1058. homeassistant-stubs/components/wled/coordinator.pyi +1 -0
  1059. homeassistant-stubs/components/wled/light.pyi +5 -0
  1060. homeassistant-stubs/components/wled/number.pyi +2 -0
  1061. homeassistant-stubs/components/wled/select.pyi +5 -0
  1062. homeassistant-stubs/components/wled/switch.pyi +9 -0
  1063. homeassistant-stubs/components/wled/update.pyi +1 -0
  1064. homeassistant-stubs/components/workday/binary_sensor.pyi +1 -0
  1065. homeassistant-stubs/components/workday/config_flow.pyi +1 -0
  1066. homeassistant-stubs/components/xiaomi_ble/event.pyi +1 -0
  1067. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +1 -0
  1068. homeassistant-stubs/components/yale_smart_alarm/select.pyi +1 -0
  1069. homeassistant-stubs/components/yale_smart_alarm/switch.pyi +1 -0
  1070. homeassistant-stubs/components/yalexs_ble/binary_sensor.pyi +1 -0
  1071. homeassistant-stubs/components/yalexs_ble/config_flow.pyi +1 -0
  1072. homeassistant-stubs/components/yalexs_ble/entity.pyi +3 -0
  1073. homeassistant-stubs/components/yalexs_ble/lock.pyi +1 -0
  1074. homeassistant-stubs/components/yalexs_ble/sensor.pyi +1 -0
  1075. homeassistant-stubs/components/yalexs_ble/util.pyi +1 -0
  1076. homeassistant-stubs/components/youtube/config_flow.pyi +1 -0
  1077. homeassistant-stubs/components/zeroconf/__init__.pyi +7 -0
  1078. homeassistant-stubs/components/zone/__init__.pyi +7 -0
  1079. homeassistant-stubs/components/zwave_js/__init__.pyi +8 -0
  1080. homeassistant-stubs/components/zwave_js/addon.pyi +1 -0
  1081. homeassistant-stubs/components/zwave_js/api.pyi +183 -0
  1082. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +1 -0
  1083. homeassistant-stubs/components/zwave_js/config_flow.pyi +3 -0
  1084. homeassistant-stubs/components/zwave_js/device_automation_helpers.pyi +1 -0
  1085. homeassistant-stubs/components/zwave_js/device_condition.pyi +1 -0
  1086. homeassistant-stubs/components/zwave_js/discovery.pyi +4 -0
  1087. homeassistant-stubs/components/zwave_js/entity.pyi +5 -0
  1088. homeassistant-stubs/components/zwave_js/event.pyi +1 -0
  1089. homeassistant-stubs/components/zwave_js/helpers.pyi +5 -0
  1090. homeassistant-stubs/components/zwave_js/light.pyi +4 -0
  1091. homeassistant-stubs/components/zwave_js/logbook.pyi +1 -0
  1092. homeassistant-stubs/components/zwave_js/migrate.pyi +5 -0
  1093. homeassistant-stubs/components/zwave_js/sensor.pyi +4 -0
  1094. homeassistant-stubs/components/zwave_js/services.pyi +1 -0
  1095. homeassistant-stubs/components/zwave_js/switch.pyi +2 -0
  1096. homeassistant-stubs/components/zwave_js/triggers/trigger_helpers.pyi +1 -0
  1097. homeassistant-stubs/components/zwave_js/update.pyi +4 -0
  1098. homeassistant-stubs/config.pyi +8 -0
  1099. homeassistant-stubs/config_entries.pyi +53 -0
  1100. homeassistant-stubs/core.pyi +47 -0
  1101. homeassistant-stubs/data_entry_flow.pyi +22 -0
  1102. homeassistant-stubs/helpers/aiohttp_client.pyi +11 -0
  1103. homeassistant-stubs/helpers/area_registry.pyi +13 -0
  1104. homeassistant-stubs/helpers/category_registry.pyi +8 -0
  1105. homeassistant-stubs/helpers/collection.pyi +14 -0
  1106. homeassistant-stubs/helpers/condition.pyi +4 -0
  1107. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +4 -0
  1108. homeassistant-stubs/helpers/config_validation.pyi +3 -0
  1109. homeassistant-stubs/helpers/debounce.pyi +5 -0
  1110. homeassistant-stubs/helpers/device.pyi +5 -0
  1111. homeassistant-stubs/helpers/device_registry.pyi +19 -0
  1112. homeassistant-stubs/helpers/discovery.pyi +7 -0
  1113. homeassistant-stubs/helpers/discovery_flow.pyi +5 -0
  1114. homeassistant-stubs/helpers/dispatcher.pyi +15 -0
  1115. homeassistant-stubs/helpers/entity.pyi +27 -1
  1116. homeassistant-stubs/helpers/entity_component.pyi +5 -0
  1117. homeassistant-stubs/helpers/entity_platform.pyi +11 -0
  1118. homeassistant-stubs/helpers/entity_registry.pyi +33 -0
  1119. homeassistant-stubs/helpers/event.pyi +79 -0
  1120. homeassistant-stubs/helpers/floor_registry.pyi +8 -0
  1121. homeassistant-stubs/helpers/hassio.pyi +2 -0
  1122. homeassistant-stubs/helpers/httpx_client.pyi +4 -0
  1123. homeassistant-stubs/helpers/icon.pyi +3 -0
  1124. homeassistant-stubs/helpers/integration_platform.pyi +3 -0
  1125. homeassistant-stubs/helpers/intent.pyi +22 -0
  1126. homeassistant-stubs/helpers/issue_registry.pyi +10 -0
  1127. homeassistant-stubs/helpers/label_registry.pyi +8 -0
  1128. homeassistant-stubs/helpers/llm.pyi +6 -0
  1129. homeassistant-stubs/helpers/network.pyi +6 -0
  1130. homeassistant-stubs/helpers/ratelimit.pyi +5 -0
  1131. homeassistant-stubs/helpers/recorder.pyi +5 -0
  1132. homeassistant-stubs/helpers/registry.pyi +2 -0
  1133. homeassistant-stubs/helpers/reload.pyi +1 -0
  1134. homeassistant-stubs/helpers/restore_state.pyi +6 -0
  1135. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +8 -0
  1136. homeassistant-stubs/helpers/script.pyi +11 -0
  1137. homeassistant-stubs/helpers/script_variables.pyi +1 -0
  1138. homeassistant-stubs/helpers/selector.pyi +2 -0
  1139. homeassistant-stubs/helpers/service.pyi +22 -0
  1140. homeassistant-stubs/helpers/signal.pyi +2 -0
  1141. homeassistant-stubs/helpers/significant_change.pyi +1 -0
  1142. homeassistant-stubs/helpers/start.pyi +3 -0
  1143. homeassistant-stubs/helpers/state.pyi +1 -0
  1144. homeassistant-stubs/helpers/storage.pyi +12 -0
  1145. homeassistant-stubs/helpers/sun.pyi +9 -0
  1146. homeassistant-stubs/helpers/system_info.pyi +1 -0
  1147. homeassistant-stubs/helpers/template.pyi +8 -0
  1148. homeassistant-stubs/helpers/trace.pyi +2 -0
  1149. homeassistant-stubs/helpers/translation.pyi +8 -0
  1150. homeassistant-stubs/helpers/trigger.pyi +4 -0
  1151. homeassistant-stubs/helpers/trigger_template_entity.pyi +1 -0
  1152. homeassistant-stubs/helpers/update_coordinator.pyi +11 -0
  1153. homeassistant-stubs/loader.pyi +5 -0
  1154. homeassistant-stubs/requirements.pyi +2 -0
  1155. homeassistant-stubs/runner.pyi +1 -0
  1156. homeassistant-stubs/scripts/benchmark/__init__.pyi +8 -0
  1157. homeassistant-stubs/setup.pyi +11 -0
  1158. homeassistant-stubs/util/enum.pyi +1 -0
  1159. homeassistant-stubs/util/location.pyi +2 -0
  1160. homeassistant-stubs/util/logging.pyi +2 -0
  1161. homeassistant-stubs/util/loop.pyi +2 -0
  1162. homeassistant-stubs/util/package.pyi +2 -0
  1163. homeassistant-stubs/util/ssl.pyi +3 -0
  1164. homeassistant-stubs/util/system_info.pyi +3 -0
  1165. homeassistant-stubs/util/unit_conversion.pyi +8 -0
  1166. homeassistant-stubs/util/yaml/loader.pyi +5 -0
  1167. {homeassistant_stubs-2025.1.2.dist-info → homeassistant_stubs-2025.1.3.dist-info}/METADATA +2 -2
  1168. {homeassistant_stubs-2025.1.2.dist-info → homeassistant_stubs-2025.1.3.dist-info}/RECORD +1170 -1170
  1169. {homeassistant_stubs-2025.1.2.dist-info → homeassistant_stubs-2025.1.3.dist-info}/WHEEL +0 -0
  1170. {homeassistant_stubs-2025.1.2.dist-info → homeassistant_stubs-2025.1.3.dist-info}/licenses/LICENSE +0 -0
@@ -33,6 +33,7 @@ from collections.abc import Callable, Coroutine, Generator, Iterable, Mapping, V
33
33
  from contextvars import ContextVar
34
34
  from datetime import datetime
35
35
  from enum import Enum, StrEnum
36
+ from functools import cache
36
37
  from propcache import cached_property
37
38
  from types import MappingProxyType
38
39
  from typing import Any, Generic, Self
@@ -86,6 +87,7 @@ RECONFIGURE_NOTIFICATION_ID: str
86
87
  EVENT_FLOW_DISCOVERED: str
87
88
  SIGNAL_CONFIG_ENTRY_CHANGED: Incomplete
88
89
 
90
+ @cache
89
91
  def signal_discovered_config_entry_removed(discovery_domain: str) -> SignalType[ConfigEntry]: ...
90
92
 
91
93
  NO_RESET_TRIES_STATES: Incomplete
@@ -181,22 +183,31 @@ class ConfigEntry(Generic[_DataT]):
181
183
  def as_storage_fragment(self) -> json_fragment: ...
182
184
  async def async_setup(self, hass: HomeAssistant, *, integration: loader.Integration | None = None) -> None: ...
183
185
  async def __async_setup_with_context(self, hass: HomeAssistant, integration: loader.Integration | None) -> None: ...
186
+ @callback
184
187
  def _async_setup_again(self, hass: HomeAssistant, *_: Any) -> None: ...
185
188
  async def async_setup_locked(self, hass: HomeAssistant, integration: loader.Integration | None = None) -> None: ...
189
+ @callback
186
190
  def async_shutdown(self) -> None: ...
191
+ @callback
187
192
  def async_cancel_retry_setup(self) -> None: ...
188
193
  async def async_unload(self, hass: HomeAssistant, *, integration: loader.Integration | None = None) -> bool: ...
189
194
  async def async_remove(self, hass: HomeAssistant) -> None: ...
195
+ @callback
190
196
  def _async_set_state(self, hass: HomeAssistant, state: ConfigEntryState, reason: str | None, error_reason_translation_key: str | None = None, error_reason_translation_placeholders: dict[str, str] | None = None) -> None: ...
191
197
  async def async_migrate(self, hass: HomeAssistant) -> bool: ...
192
198
  def add_update_listener(self, listener: UpdateListenerType) -> CALLBACK_TYPE: ...
193
199
  def as_dict(self) -> dict[str, Any]: ...
200
+ @callback
194
201
  def async_on_unload(self, func: Callable[[], Coroutine[Any, Any, None] | None]) -> None: ...
195
202
  async def _async_process_on_unload(self, hass: HomeAssistant) -> None: ...
203
+ @callback
196
204
  def async_start_reauth(self, hass: HomeAssistant, context: ConfigFlowContext | None = None, data: dict[str, Any] | None = None) -> None: ...
197
205
  async def _async_init_reauth(self, hass: HomeAssistant, context: ConfigFlowContext | None = None, data: dict[str, Any] | None = None) -> None: ...
206
+ @callback
198
207
  def async_get_active_flows(self, hass: HomeAssistant, sources: set[str]) -> Generator[ConfigFlowResult]: ...
208
+ @callback
199
209
  def async_create_task[_R](self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = True) -> asyncio.Task[_R]: ...
210
+ @callback
200
211
  def async_create_background_task[_R](self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = True) -> asyncio.Task[_R]: ...
201
212
 
202
213
  current_entry: ContextVar[ConfigEntry | None]
@@ -214,16 +225,21 @@ class ConfigEntriesFlowManager(data_entry_flow.FlowManager[ConfigFlowContext, Co
214
225
  _discovery_debouncer: Incomplete
215
226
  def __init__(self, hass: HomeAssistant, config_entries: ConfigEntries, hass_config: ConfigType) -> None: ...
216
227
  async def async_wait_import_flow_initialized(self, handler: str) -> None: ...
228
+ @callback
217
229
  def _async_has_other_discovery_flows(self, flow_id: str) -> bool: ...
218
230
  async def async_init(self, handler: str, *, context: ConfigFlowContext | None = None, data: Any = None) -> ConfigFlowResult: ...
219
231
  async def _async_init(self, flow_id: str, handler: str, context: ConfigFlowContext, data: Any) -> tuple[ConfigFlow, ConfigFlowResult]: ...
220
232
  def _set_pending_import_done(self, flow: ConfigFlow) -> None: ...
233
+ @callback
221
234
  def async_shutdown(self) -> None: ...
222
235
  async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
223
236
  async def async_create_flow(self, handler_key: str, *, context: ConfigFlowContext | None = None, data: Any = None) -> ConfigFlow: ...
224
237
  async def async_post_init(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult], result: ConfigFlowResult) -> None: ...
238
+ @callback
225
239
  def _async_discovery(self) -> None: ...
240
+ @callback
226
241
  def async_has_matching_discovery_flow(self, handler: str, match_context: ConfigFlowContext, data: Any) -> bool: ...
242
+ @callback
227
243
  def async_has_matching_flow(self, flow: ConfigFlow) -> bool: ...
228
244
 
229
245
  class ConfigEntryItems(UserDict[str, ConfigEntry]):
@@ -253,26 +269,39 @@ class ConfigEntries:
253
269
  _entries: Incomplete
254
270
  _store: Incomplete
255
271
  def __init__(self, hass: HomeAssistant, hass_config: ConfigType) -> None: ...
272
+ @callback
256
273
  def async_domains(self, include_ignore: bool = False, include_disabled: bool = False) -> list[str]: ...
274
+ @callback
257
275
  def async_get_entry(self, entry_id: str) -> ConfigEntry | None: ...
276
+ @callback
258
277
  def async_get_known_entry(self, entry_id: str) -> ConfigEntry: ...
278
+ @callback
259
279
  def async_entry_ids(self) -> list[str]: ...
280
+ @callback
260
281
  def async_has_entries(self, domain: str, include_ignore: bool = True, include_disabled: bool = True) -> bool: ...
282
+ @callback
261
283
  def async_entries(self, domain: str | None = None, include_ignore: bool = True, include_disabled: bool = True) -> list[ConfigEntry]: ...
284
+ @callback
262
285
  def async_loaded_entries(self, domain: str) -> list[ConfigEntry]: ...
286
+ @callback
263
287
  def async_entry_for_domain_unique_id(self, domain: str, unique_id: str) -> ConfigEntry | None: ...
264
288
  async def async_add(self, entry: ConfigEntry) -> None: ...
265
289
  async def async_remove(self, entry_id: str) -> dict[str, Any]: ...
266
290
  async def _async_remove(self, entry_id: str) -> tuple[bool, ConfigEntry]: ...
291
+ @callback
267
292
  def _async_clean_up(self, entry: ConfigEntry) -> None: ...
293
+ @callback
268
294
  def _async_shutdown(self, event: Event) -> None: ...
269
295
  async def async_initialize(self) -> None: ...
270
296
  async def async_setup(self, entry_id: str, _lock: bool = True) -> bool: ...
271
297
  async def async_unload(self, entry_id: str, _lock: bool = True) -> bool: ...
298
+ @callback
272
299
  def async_schedule_reload(self, entry_id: str) -> None: ...
273
300
  async def async_reload(self, entry_id: str) -> bool: ...
274
301
  async def async_set_disabled_by(self, entry_id: str, disabled_by: ConfigEntryDisabler | None) -> bool: ...
302
+ @callback
275
303
  def async_update_entry(self, entry: ConfigEntry, *, data: Mapping[str, Any] | UndefinedType = ..., discovery_keys: MappingProxyType[str, tuple[DiscoveryKey, ...]] | UndefinedType = ..., minor_version: int | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., pref_disable_new_entities: bool | UndefinedType = ..., pref_disable_polling: bool | UndefinedType = ..., title: str | UndefinedType = ..., unique_id: str | None | UndefinedType = ..., version: int | UndefinedType = ...) -> bool: ...
304
+ @callback
276
305
  def _async_dispatch(self, change_type: ConfigEntryChange, entry: ConfigEntry) -> None: ...
277
306
  async def async_forward_entry_setups(self, entry: ConfigEntry, platforms: Iterable[Platform | str]) -> None: ...
278
307
  async def _async_forward_entry_setups_locked(self, entry: ConfigEntry, platforms: Iterable[Platform | str]) -> None: ...
@@ -280,11 +309,15 @@ class ConfigEntries:
280
309
  async def _async_forward_entry_setup(self, entry: ConfigEntry, domain: Platform | str, preload_platform: bool) -> bool: ...
281
310
  async def async_unload_platforms(self, entry: ConfigEntry, platforms: Iterable[Platform | str]) -> bool: ...
282
311
  async def async_forward_entry_unload(self, entry: ConfigEntry, domain: Platform | str) -> bool: ...
312
+ @callback
283
313
  def _async_schedule_save(self) -> None: ...
314
+ @callback
284
315
  def _data_to_save(self) -> dict[str, list[dict[str, Any]]]: ...
285
316
  async def async_wait_component(self, entry: ConfigEntry) -> bool: ...
317
+ @callback
286
318
  def async_update_issues(self) -> None: ...
287
319
 
320
+ @callback
288
321
  def _async_abort_entries_match(other_entries: list[ConfigEntry], match_dict: dict[str, Any] | None = None) -> None: ...
289
322
 
290
323
  class ConfigEntryBaseFlow(data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult]):
@@ -295,22 +328,32 @@ class ConfigFlow(ConfigEntryBaseFlow):
295
328
  @property
296
329
  def unique_id(self) -> str | None: ...
297
330
  @staticmethod
331
+ @callback
298
332
  def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: ...
299
333
  @classmethod
334
+ @callback
300
335
  def async_supports_options_flow(cls, config_entry: ConfigEntry) -> bool: ...
336
+ @callback
301
337
  def _async_abort_entries_match(self, match_dict: dict[str, Any] | None = None) -> None: ...
338
+ @callback
302
339
  def _abort_if_unique_id_mismatch(self, *, reason: str = 'unique_id_mismatch', description_placeholders: Mapping[str, str] | None = None) -> None: ...
340
+ @callback
303
341
  def _abort_if_unique_id_configured(self, updates: dict[str, Any] | None = None, reload_on_update: bool = True, *, error: str = 'already_configured') -> None: ...
304
342
  async def async_set_unique_id(self, unique_id: str | None = None, *, raise_on_progress: bool = True) -> ConfigEntry | None: ...
343
+ @callback
305
344
  def _set_confirm_only(self) -> None: ...
345
+ @callback
306
346
  def _async_current_entries(self, include_ignore: bool | None = None) -> list[ConfigEntry]: ...
347
+ @callback
307
348
  def _async_current_ids(self, include_ignore: bool = True) -> set[str | None]: ...
349
+ @callback
308
350
  def _async_in_progress(self, include_uninitialized: bool = False, match_context: dict[str, Any] | None = None) -> list[ConfigFlowResult]: ...
309
351
  async def async_step_ignore(self, user_input: dict[str, Any]) -> ConfigFlowResult: ...
310
352
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
311
353
  async def _async_handle_discovery_without_unique_id(self) -> None: ...
312
354
  async def _async_step_discovery_without_unique_id(self) -> ConfigFlowResult: ...
313
355
  async def async_step_discovery(self, discovery_info: DiscoveryInfoType) -> ConfigFlowResult: ...
356
+ @callback
314
357
  def async_abort(self, *, reason: str, description_placeholders: Mapping[str, str] | None = None) -> ConfigFlowResult: ...
315
358
  async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> ConfigFlowResult: ...
316
359
  async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
@@ -321,15 +364,20 @@ class ConfigFlow(ConfigEntryBaseFlow):
321
364
  async def async_step_ssdp(self, discovery_info: SsdpServiceInfo) -> ConfigFlowResult: ...
322
365
  async def async_step_usb(self, discovery_info: UsbServiceInfo) -> ConfigFlowResult: ...
323
366
  async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
367
+ @callback
324
368
  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: ...
369
+ @callback
325
370
  def async_update_reload_and_abort(self, entry: ConfigEntry, *, unique_id: str | None | UndefinedType = ..., title: str | UndefinedType = ..., data: Mapping[str, Any] | UndefinedType = ..., data_updates: Mapping[str, Any] | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., reason: str | UndefinedType = ..., reload_even_if_entry_is_unchanged: bool = True) -> ConfigFlowResult: ...
371
+ @callback
326
372
  def async_show_form(self, *, step_id: str | None = None, data_schema: vol.Schema | None = None, errors: dict[str, str] | None = None, description_placeholders: Mapping[str, str] | None = None, last_step: bool | None = None, preview: str | None = None) -> ConfigFlowResult: ...
327
373
  def is_matching(self, other_flow: Self) -> bool: ...
328
374
  @property
329
375
  def _reauth_entry_id(self) -> str: ...
376
+ @callback
330
377
  def _get_reauth_entry(self) -> ConfigEntry: ...
331
378
  @property
332
379
  def _reconfigure_entry_id(self) -> str: ...
380
+ @callback
333
381
  def _get_reconfigure_entry(self) -> ConfigEntry: ...
334
382
 
335
383
  class OptionsFlowManager(data_entry_flow.FlowManager[ConfigFlowContext, ConfigFlowResult]):
@@ -342,6 +390,7 @@ class OptionsFlowManager(data_entry_flow.FlowManager[ConfigFlowContext, ConfigFl
342
390
  class OptionsFlow(ConfigEntryBaseFlow):
343
391
  handler: str
344
392
  _config_entry: ConfigEntry
393
+ @callback
345
394
  def _async_abort_entries_match(self, match_dict: dict[str, Any] | None = None) -> None: ...
346
395
  @property
347
396
  def _config_entry_id(self) -> str: ...
@@ -363,10 +412,14 @@ class EntityRegistryDisabledHandler:
363
412
  changed: set[str]
364
413
  _remove_call_later: Callable[[], None] | None
365
414
  def __init__(self, hass: HomeAssistant) -> None: ...
415
+ @callback
366
416
  def async_setup(self) -> None: ...
417
+ @callback
367
418
  def _handle_entry_updated(self, event: Event[er.EventEntityRegistryUpdatedData]) -> None: ...
419
+ @callback
368
420
  def _async_handle_reload(self, _now: Any) -> None: ...
369
421
 
422
+ @callback
370
423
  def _handle_entry_updated_filter(event_data: er.EventEntityRegistryUpdatedData) -> bool: ...
371
424
  async def support_entry_unload(hass: HomeAssistant, domain: str) -> bool: ...
372
425
  async def support_remove_from_device(hass: HomeAssistant, domain: str) -> bool: ...
@@ -2,6 +2,7 @@ import asyncio
2
2
  import concurrent.futures
3
3
  import datetime
4
4
  import enum
5
+ import functools
5
6
  import threading
6
7
  import voluptuous as vol
7
8
  from . import util as util
@@ -84,6 +85,7 @@ class _Hass(threading.local):
84
85
 
85
86
  _hass: Incomplete
86
87
 
88
+ @callback
87
89
  def async_get_hass() -> HomeAssistant: ...
88
90
  def async_get_hass_or_none() -> HomeAssistant | None: ...
89
91
 
@@ -93,6 +95,7 @@ class ReleaseChannel(enum.StrEnum):
93
95
  NIGHTLY = 'nightly'
94
96
  STABLE = 'stable'
95
97
 
98
+ @callback
96
99
  def get_release_channel() -> ReleaseChannel: ...
97
100
 
98
101
  class HassJobType(enum.Enum):
@@ -167,41 +170,60 @@ class HomeAssistant:
167
170
  async def async_start(self) -> None: ...
168
171
  def add_job[*_Ts](self, target: Callable[[*_Ts], Any] | Coroutine[Any, Any, Any], *args: *_Ts) -> None: ...
169
172
  @overload
173
+ @callback
170
174
  def async_add_job[_R, *_Ts](self, target: Callable[[*_Ts], Coroutine[Any, Any, _R]], *args: *_Ts, eager_start: bool = False) -> asyncio.Future[_R] | None: ...
171
175
  @overload
176
+ @callback
172
177
  def async_add_job[_R, *_Ts](self, target: Callable[[*_Ts], Coroutine[Any, Any, _R] | _R], *args: *_Ts, eager_start: bool = False) -> asyncio.Future[_R] | None: ...
173
178
  @overload
179
+ @callback
174
180
  def async_add_job[_R](self, target: Coroutine[Any, Any, _R], *args: Any, eager_start: bool = False) -> asyncio.Future[_R] | None: ...
175
181
  @overload
182
+ @callback
176
183
  def async_add_hass_job[_R](self, hassjob: HassJob[..., Coroutine[Any, Any, _R]], *args: Any, eager_start: bool = False, background: bool = False) -> asyncio.Future[_R] | None: ...
177
184
  @overload
185
+ @callback
178
186
  def async_add_hass_job[_R](self, hassjob: HassJob[..., Coroutine[Any, Any, _R] | _R], *args: Any, eager_start: bool = False, background: bool = False) -> asyncio.Future[_R] | None: ...
179
187
  @overload
188
+ @callback
180
189
  def _async_add_hass_job[_R](self, hassjob: HassJob[..., Coroutine[Any, Any, _R]], *args: Any, background: bool = False) -> asyncio.Future[_R] | None: ...
181
190
  @overload
191
+ @callback
182
192
  def _async_add_hass_job[_R](self, hassjob: HassJob[..., Coroutine[Any, Any, _R] | _R], *args: Any, background: bool = False) -> asyncio.Future[_R] | None: ...
183
193
  def create_task(self, target: Coroutine[Any, Any, Any], name: str | None = None) -> None: ...
194
+ @callback
184
195
  def async_create_task[_R](self, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = True) -> asyncio.Task[_R]: ...
196
+ @callback
185
197
  def async_create_task_internal[_R](self, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = True) -> asyncio.Task[_R]: ...
198
+ @callback
186
199
  def async_create_background_task[_R](self, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = True) -> asyncio.Task[_R]: ...
200
+ @callback
187
201
  def async_add_executor_job[*_Ts, _T](self, target: Callable[[*_Ts], _T], *args: *_Ts) -> asyncio.Future[_T]: ...
202
+ @callback
188
203
  def async_add_import_executor_job[*_Ts, _T](self, target: Callable[[*_Ts], _T], *args: *_Ts) -> asyncio.Future[_T]: ...
189
204
  @overload
205
+ @callback
190
206
  def async_run_hass_job[_R](self, hassjob: HassJob[..., Coroutine[Any, Any, _R]], *args: Any, background: bool = False) -> asyncio.Future[_R] | None: ...
191
207
  @overload
208
+ @callback
192
209
  def async_run_hass_job[_R](self, hassjob: HassJob[..., Coroutine[Any, Any, _R] | _R], *args: Any, background: bool = False) -> asyncio.Future[_R] | None: ...
193
210
  @overload
211
+ @callback
194
212
  def async_run_job[_R, *_Ts](self, target: Callable[[*_Ts], Coroutine[Any, Any, _R]], *args: *_Ts) -> asyncio.Future[_R] | None: ...
195
213
  @overload
214
+ @callback
196
215
  def async_run_job[_R, *_Ts](self, target: Callable[[*_Ts], Coroutine[Any, Any, _R] | _R], *args: *_Ts) -> asyncio.Future[_R] | None: ...
197
216
  @overload
217
+ @callback
198
218
  def async_run_job[_R](self, target: Coroutine[Any, Any, _R], *args: Any) -> asyncio.Future[_R] | None: ...
199
219
  def block_till_done(self, wait_background_tasks: bool = False) -> None: ...
200
220
  async def async_block_till_done(self, wait_background_tasks: bool = False) -> None: ...
201
221
  async def _await_and_log_pending(self, pending: Collection[asyncio.Future[Any]]) -> None: ...
202
222
  @overload
223
+ @callback
203
224
  def async_add_shutdown_job(self, hassjob: HassJob[..., Coroutine[Any, Any, Any]], *args: Any) -> CALLBACK_TYPE: ...
204
225
  @overload
226
+ @callback
205
227
  def async_add_shutdown_job(self, hassjob: HassJob[..., Coroutine[Any, Any, Any] | Any], *args: Any) -> CALLBACK_TYPE: ...
206
228
  def stop(self) -> None: ...
207
229
  async def async_stop(self, exit_code: int = 0, *, force: bool = False) -> None: ...
@@ -263,11 +285,13 @@ class _OneTimeListener(Generic[_DataT]):
263
285
  hass: HomeAssistant
264
286
  listener_job: HassJob[[Event[_DataT]], Coroutine[Any, Any, None] | None]
265
287
  remove: CALLBACK_TYPE | None = ...
288
+ @callback
266
289
  def __call__(self, event: Event[_DataT]) -> None: ...
267
290
  def __repr__(self) -> str: ...
268
291
 
269
292
  EMPTY_LIST: list[Any]
270
293
 
294
+ @functools.lru_cache
271
295
  def _verify_event_type_length_or_raise(event_type: EventType[_DataT] | str) -> None: ...
272
296
 
273
297
  class EventBus:
@@ -277,18 +301,26 @@ class EventBus:
277
301
  _hass: Incomplete
278
302
  def __init__(self, hass: HomeAssistant) -> None: ...
279
303
  _debug: Incomplete
304
+ @callback
280
305
  def _async_logging_changed(self, event: Event | None = None) -> None: ...
306
+ @callback
281
307
  def async_listeners(self) -> dict[EventType[Any] | str, int]: ...
282
308
  @property
283
309
  def listeners(self) -> dict[EventType[Any] | str, int]: ...
284
310
  def fire(self, event_type: EventType[_DataT] | str, event_data: _DataT | None = None, origin: EventOrigin = ..., context: Context | None = None) -> None: ...
311
+ @callback
285
312
  def async_fire(self, event_type: EventType[_DataT] | str, event_data: _DataT | None = None, origin: EventOrigin = ..., context: Context | None = None, time_fired: float | None = None) -> None: ...
313
+ @callback
286
314
  def async_fire_internal(self, event_type: EventType[_DataT] | str, event_data: _DataT | None = None, origin: EventOrigin = ..., context: Context | None = None, time_fired: float | None = None) -> None: ...
287
315
  def listen(self, event_type: EventType[_DataT] | str, listener: Callable[[Event[_DataT]], Coroutine[Any, Any, None] | None]) -> CALLBACK_TYPE: ...
316
+ @callback
288
317
  def async_listen(self, event_type: EventType[_DataT] | str, listener: Callable[[Event[_DataT]], Coroutine[Any, Any, None] | None], event_filter: Callable[[_DataT], bool] | None = None, run_immediately: bool | object = ...) -> CALLBACK_TYPE: ...
318
+ @callback
289
319
  def _async_listen_filterable_job(self, event_type: EventType[_DataT] | str, filterable_job: _FilterableJobType[_DataT]) -> CALLBACK_TYPE: ...
290
320
  def listen_once(self, event_type: EventType[_DataT] | str, listener: Callable[[Event[_DataT]], Coroutine[Any, Any, None] | None]) -> CALLBACK_TYPE: ...
321
+ @callback
291
322
  def async_listen_once(self, event_type: EventType[_DataT] | str, listener: Callable[[Event[_DataT]], Coroutine[Any, Any, None] | None], run_immediately: bool | object = ...) -> CALLBACK_TYPE: ...
323
+ @callback
292
324
  def _async_remove_listener(self, event_type: EventType[_DataT] | str, filterable_job: _FilterableJobType[_DataT]) -> None: ...
293
325
 
294
326
  class CompressedState(TypedDict):
@@ -353,18 +385,26 @@ class StateMachine:
353
385
  _loop: Incomplete
354
386
  def __init__(self, bus: EventBus, loop: asyncio.events.AbstractEventLoop) -> None: ...
355
387
  def entity_ids(self, domain_filter: str | None = None) -> list[str]: ...
388
+ @callback
356
389
  def async_entity_ids(self, domain_filter: str | Iterable[str] | None = None) -> list[str]: ...
390
+ @callback
357
391
  def async_entity_ids_count(self, domain_filter: str | Iterable[str] | None = None) -> int: ...
358
392
  def all(self, domain_filter: str | Iterable[str] | None = None) -> list[State]: ...
393
+ @callback
359
394
  def async_all(self, domain_filter: str | Iterable[str] | None = None) -> list[State]: ...
360
395
  def get(self, entity_id: str) -> State | None: ...
361
396
  def is_state(self, entity_id: str, state: str) -> bool: ...
362
397
  def remove(self, entity_id: str) -> bool: ...
398
+ @callback
363
399
  def async_remove(self, entity_id: str, context: Context | None = None) -> bool: ...
364
400
  def set(self, entity_id: str, new_state: str, attributes: Mapping[str, Any] | None = None, force_update: bool = False, context: Context | None = None) -> None: ...
401
+ @callback
365
402
  def async_reserve(self, entity_id: str) -> None: ...
403
+ @callback
366
404
  def async_available(self, entity_id: str) -> bool: ...
405
+ @callback
367
406
  def async_set(self, entity_id: str, new_state: str, attributes: Mapping[str, Any] | None = None, force_update: bool = False, context: Context | None = None, state_info: StateInfo | None = None, timestamp: float | None = None) -> None: ...
407
+ @callback
368
408
  def async_set_internal(self, entity_id: str, new_state: str, attributes: Mapping[str, Any] | None, force_update: bool, context: Context | None, state_info: StateInfo | None, timestamp: float) -> None: ...
369
409
 
370
410
  class SupportsResponse(enum.StrEnum):
@@ -397,16 +437,23 @@ class ServiceRegistry:
397
437
  def __init__(self, hass: HomeAssistant) -> None: ...
398
438
  @property
399
439
  def services(self) -> dict[str, dict[str, Service]]: ...
440
+ @callback
400
441
  def async_services(self) -> dict[str, dict[str, Service]]: ...
442
+ @callback
401
443
  def async_services_for_domain(self, domain: str) -> dict[str, Service]: ...
444
+ @callback
402
445
  def async_services_internal(self) -> dict[str, dict[str, Service]]: ...
403
446
  def has_service(self, domain: str, service: str) -> bool: ...
404
447
  def supports_response(self, domain: str, service: str) -> SupportsResponse: ...
405
448
  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: ...
449
+ @callback
406
450
  def async_register(self, domain: str, service: str, service_func: Callable[[ServiceCall], Coroutine[Any, Any, ServiceResponse | EntityServiceResponse] | ServiceResponse | EntityServiceResponse | None], schema: VolSchemaType | None = None, supports_response: SupportsResponse = ..., job_type: HassJobType | None = None) -> None: ...
451
+ @callback
407
452
  def _async_register(self, domain: str, service: str, service_func: Callable[[ServiceCall], Coroutine[Any, Any, ServiceResponse | EntityServiceResponse] | ServiceResponse | EntityServiceResponse | None], schema: VolSchemaType | None = None, supports_response: SupportsResponse = ..., job_type: HassJobType | None = None) -> None: ...
408
453
  def remove(self, domain: str, service: str) -> None: ...
454
+ @callback
409
455
  def async_remove(self, domain: str, service: str) -> None: ...
456
+ @callback
410
457
  def _async_remove(self, domain: str, service: str) -> None: ...
411
458
  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: ...
412
459
  async def async_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: ...
@@ -91,21 +91,31 @@ class FlowManager(abc.ABC, Generic[_FlowContextT, _FlowResultT, _HandlerT], meta
91
91
  @abc.abstractmethod
92
92
  async def async_finish_flow(self, flow: FlowHandler[_FlowContextT, _FlowResultT, _HandlerT], result: _FlowResultT) -> _FlowResultT: ...
93
93
  async def async_post_init(self, flow: FlowHandler[_FlowContextT, _FlowResultT, _HandlerT], result: _FlowResultT) -> None: ...
94
+ @callback
94
95
  def async_get(self, flow_id: str) -> _FlowResultT: ...
96
+ @callback
95
97
  def async_progress(self, include_uninitialized: bool = False) -> list[_FlowResultT]: ...
98
+ @callback
96
99
  def async_progress_by_handler(self, handler: _HandlerT, include_uninitialized: bool = False, match_context: dict[str, Any] | None = None) -> list[_FlowResultT]: ...
100
+ @callback
97
101
  def async_progress_by_init_data_type(self, init_data_type: type, matcher: Callable[[Any], bool], include_uninitialized: bool = False) -> list[_FlowResultT]: ...
102
+ @callback
98
103
  def _async_progress_by_handler(self, handler: _HandlerT, match_context: dict[str, Any] | None) -> list[FlowHandler[_FlowContextT, _FlowResultT, _HandlerT]]: ...
99
104
  async def async_init(self, handler: _HandlerT, *, context: _FlowContextT | None = None, data: Any = None) -> _FlowResultT: ...
100
105
  async def async_configure(self, flow_id: str, user_input: dict | None = None) -> _FlowResultT: ...
101
106
  async def _async_configure(self, flow_id: str, user_input: dict | None = None) -> _FlowResultT: ...
107
+ @callback
102
108
  def async_abort(self, flow_id: str) -> None: ...
109
+ @callback
103
110
  def _async_add_flow_progress(self, flow: FlowHandler[_FlowContextT, _FlowResultT, _HandlerT]) -> None: ...
111
+ @callback
104
112
  def _async_remove_flow_from_index(self, flow: FlowHandler[_FlowContextT, _FlowResultT, _HandlerT]) -> None: ...
113
+ @callback
105
114
  def _async_remove_flow_progress(self, flow_id: str) -> None: ...
106
115
  async def _async_handle_step(self, flow: FlowHandler[_FlowContextT, _FlowResultT, _HandlerT], step_id: str, user_input: dict | BaseServiceInfo | None) -> _FlowResultT: ...
107
116
  def _raise_if_step_does_not_exist(self, flow: FlowHandler[_FlowContextT, _FlowResultT, _HandlerT], step_id: str) -> None: ...
108
117
  async def _async_setup_preview(self, flow: FlowHandler[_FlowContextT, _FlowResultT, _HandlerT]) -> None: ...
118
+ @callback
109
119
  def _async_flow_handler_to_flow_result(self, flows: Iterable[FlowHandler[_FlowContextT, _FlowResultT, _HandlerT]], include_uninitialized: bool) -> list[_FlowResultT]: ...
110
120
 
111
121
  class FlowHandler(Generic[_FlowContextT, _FlowResultT, _HandlerT]):
@@ -127,19 +137,31 @@ class FlowHandler(Generic[_FlowContextT, _FlowResultT, _HandlerT]):
127
137
  @property
128
138
  def show_advanced_options(self) -> bool: ...
129
139
  def add_suggested_values_to_schema(self, data_schema: vol.Schema, suggested_values: Mapping[str, Any] | None) -> vol.Schema: ...
140
+ @callback
130
141
  def async_show_form(self, *, step_id: str | None = None, data_schema: vol.Schema | None = None, errors: dict[str, str] | None = None, description_placeholders: Mapping[str, str] | None = None, last_step: bool | None = None, preview: str | None = None) -> _FlowResultT: ...
142
+ @callback
131
143
  def async_create_entry(self, *, title: str | None = None, data: Mapping[str, Any], description: str | None = None, description_placeholders: Mapping[str, str] | None = None) -> _FlowResultT: ...
144
+ @callback
132
145
  def async_abort(self, *, reason: str, description_placeholders: Mapping[str, str] | None = None) -> _FlowResultT: ...
146
+ @callback
133
147
  def async_external_step(self, *, step_id: str | None = None, url: str, description_placeholders: Mapping[str, str] | None = None) -> _FlowResultT: ...
148
+ @callback
134
149
  def async_external_step_done(self, *, next_step_id: str) -> _FlowResultT: ...
150
+ @callback
135
151
  def async_show_progress(self, *, step_id: str | None = None, progress_action: str, description_placeholders: Mapping[str, str] | None = None, progress_task: asyncio.Task[Any] | None = None) -> _FlowResultT: ...
152
+ @callback
136
153
  def async_show_progress_done(self, *, next_step_id: str) -> _FlowResultT: ...
154
+ @callback
137
155
  def async_show_menu(self, *, step_id: str | None = None, menu_options: Container[str], description_placeholders: Mapping[str, str] | None = None) -> _FlowResultT: ...
156
+ @callback
138
157
  def async_remove(self) -> None: ...
139
158
  @staticmethod
140
159
  async def async_setup_preview(hass: HomeAssistant) -> None: ...
160
+ @callback
141
161
  def async_cancel_progress_task(self) -> None: ...
162
+ @callback
142
163
  def async_get_progress_task(self) -> asyncio.Task[Any] | None: ...
164
+ @callback
143
165
  def async_set_progress_task(self, progress_task: asyncio.Task[Any]) -> None: ...
144
166
 
145
167
  class SectionConfig(TypedDict, total=False):
@@ -26,16 +26,27 @@ MAXIMUM_CONNECTIONS_PER_HOST: int
26
26
  class HassClientResponse(aiohttp.ClientResponse):
27
27
  async def json(self, *args: Any, loads: JSONDecoder = ..., **kwargs: Any) -> Any: ...
28
28
 
29
+ @callback
30
+ @bind_hass
29
31
  def async_get_clientsession(hass: HomeAssistant, verify_ssl: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ...) -> aiohttp.ClientSession: ...
32
+ @callback
33
+ @bind_hass
30
34
  def async_create_clientsession(hass: HomeAssistant, verify_ssl: bool = True, auto_cleanup: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ..., **kwargs: Any) -> aiohttp.ClientSession: ...
35
+ @callback
31
36
  def _async_create_clientsession(hass: HomeAssistant, verify_ssl: bool = True, auto_cleanup_method: Callable[[HomeAssistant, aiohttp.ClientSession], None] | None = None, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ..., **kwargs: Any) -> aiohttp.ClientSession: ...
37
+ @bind_hass
32
38
  async def async_aiohttp_proxy_web(hass: HomeAssistant, request: web.BaseRequest, web_coro: Awaitable[aiohttp.ClientResponse], buffer_size: int = 102400, timeout: int = 10) -> web.StreamResponse | None: ...
39
+ @bind_hass
33
40
  async def async_aiohttp_proxy_stream(hass: HomeAssistant, request: web.BaseRequest, stream: aiohttp.StreamReader, content_type: str | None, buffer_size: int = 102400, timeout: int = 10) -> web.StreamResponse: ...
41
+ @callback
34
42
  def _async_register_clientsession_shutdown(hass: HomeAssistant, clientsession: aiohttp.ClientSession) -> None: ...
43
+ @callback
35
44
  def _async_register_default_clientsession_shutdown(hass: HomeAssistant, clientsession: aiohttp.ClientSession) -> None: ...
45
+ @callback
36
46
  def _make_key(verify_ssl: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ...) -> tuple[bool, socket.AddressFamily, ssl_util.SSLCipherList]: ...
37
47
 
38
48
  class HomeAssistantTCPConnector(aiohttp.TCPConnector):
39
49
  _cleanup_closed_period: float
40
50
 
51
+ @callback
41
52
  def _async_get_connector(hass: HomeAssistant, verify_ssl: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ...) -> aiohttp.BaseConnector: ...
@@ -68,20 +68,33 @@ class AreaRegistry(BaseRegistry[AreasRegistryStoreData]):
68
68
  hass: Incomplete
69
69
  _store: Incomplete
70
70
  def __init__(self, hass: HomeAssistant) -> None: ...
71
+ @callback
71
72
  def async_get_area(self, area_id: str) -> AreaEntry | None: ...
73
+ @callback
72
74
  def async_get_area_by_name(self, name: str) -> AreaEntry | None: ...
75
+ @callback
73
76
  def async_list_areas(self) -> Iterable[AreaEntry]: ...
77
+ @callback
74
78
  def async_get_or_create(self, name: str) -> AreaEntry: ...
75
79
  def _generate_id(self, name: str) -> str: ...
80
+ @callback
76
81
  def async_create(self, name: str, *, aliases: set[str] | None = None, floor_id: str | None = None, icon: str | None = None, labels: set[str] | None = None, picture: str | None = None) -> AreaEntry: ...
82
+ @callback
77
83
  def async_delete(self, area_id: str) -> None: ...
84
+ @callback
78
85
  def async_update(self, area_id: str, *, aliases: set[str] | UndefinedType = ..., floor_id: str | None | UndefinedType = ..., icon: str | None | UndefinedType = ..., labels: set[str] | UndefinedType = ..., name: str | UndefinedType = ..., picture: str | None | UndefinedType = ...) -> AreaEntry: ...
86
+ @callback
79
87
  def _async_update(self, area_id: str, *, aliases: set[str] | UndefinedType = ..., floor_id: str | None | UndefinedType = ..., icon: str | None | UndefinedType = ..., labels: set[str] | UndefinedType = ..., name: str | UndefinedType = ..., picture: str | None | UndefinedType = ...) -> AreaEntry: ...
80
88
  async def async_load(self) -> None: ...
89
+ @callback
81
90
  def _data_to_save(self) -> AreasRegistryStoreData: ...
91
+ @callback
82
92
  def _async_setup_cleanup(self) -> None: ...
83
93
 
94
+ @callback
84
95
  def async_get(hass: HomeAssistant) -> AreaRegistry: ...
85
96
  async def async_load(hass: HomeAssistant) -> None: ...
97
+ @callback
86
98
  def async_entries_for_floor(registry: AreaRegistry, floor_id: str) -> list[AreaEntry]: ...
99
+ @callback
87
100
  def async_entries_for_label(registry: AreaRegistry, label_id: str) -> list[AreaEntry]: ...
@@ -51,14 +51,22 @@ class CategoryRegistry(BaseRegistry[CategoryRegistryStoreData]):
51
51
  categories: dict[str, dict[str, CategoryEntry]]
52
52
  _store: Incomplete
53
53
  def __init__(self, hass: HomeAssistant) -> None: ...
54
+ @callback
54
55
  def async_get_category(self, *, scope: str, category_id: str) -> CategoryEntry | None: ...
56
+ @callback
55
57
  def async_list_categories(self, *, scope: str) -> Iterable[CategoryEntry]: ...
58
+ @callback
56
59
  def async_create(self, *, name: str, scope: str, icon: str | None = None) -> CategoryEntry: ...
60
+ @callback
57
61
  def async_delete(self, *, scope: str, category_id: str) -> None: ...
62
+ @callback
58
63
  def async_update(self, *, scope: str, category_id: str, icon: str | None | UndefinedType = ..., name: str | UndefinedType = ...) -> CategoryEntry: ...
59
64
  async def async_load(self) -> None: ...
65
+ @callback
60
66
  def _data_to_save(self) -> CategoryRegistryStoreData: ...
67
+ @callback
61
68
  def _async_ensure_name_is_available(self, scope: str, name: str, category_id: str | None = None) -> None: ...
62
69
 
70
+ @callback
63
71
  def async_get(hass: HomeAssistant) -> CategoryRegistry: ...
64
72
  async def async_load(hass: HomeAssistant) -> None: ...
@@ -63,8 +63,11 @@ class ObservableCollection[_ItemT](ABC):
63
63
  listeners: list[ChangeListener]
64
64
  change_set_listeners: list[ChangeSetListener]
65
65
  def __init__(self, id_manager: IDManager | None) -> None: ...
66
+ @callback
66
67
  def async_items(self) -> list[_ItemT]: ...
68
+ @callback
67
69
  def async_add_listener(self, listener: ChangeListener) -> Callable[[], None]: ...
70
+ @callback
68
71
  def async_add_change_set_listener(self, listener: ChangeSetListener) -> Callable[[], None]: ...
69
72
  async def notify_changes(self, change_set: Iterable[CollectionChange]) -> None: ...
70
73
 
@@ -89,6 +92,7 @@ class StorageCollection[_ItemT, _StoreT: SerializedStorageCollection](Observable
89
92
  async def async_load(self) -> None: ...
90
93
  @abstractmethod
91
94
  async def _process_create_data(self, data: dict) -> dict: ...
95
+ @callback
92
96
  @abstractmethod
93
97
  def _get_suggested_id(self, info: dict) -> str: ...
94
98
  @abstractmethod
@@ -102,9 +106,12 @@ class StorageCollection[_ItemT, _StoreT: SerializedStorageCollection](Observable
102
106
  async def async_create_item(self, data: dict) -> _ItemT: ...
103
107
  async def async_update_item(self, item_id: str, updates: dict) -> _ItemT: ...
104
108
  async def async_delete_item(self, item_id: str) -> None: ...
109
+ @callback
105
110
  def _async_schedule_save(self) -> None: ...
111
+ @callback
106
112
  def _base_data_to_save(self) -> SerializedStorageCollection: ...
107
113
  @abstractmethod
114
+ @callback
108
115
  def _data_to_save(self) -> _StoreT: ...
109
116
  def _hash_item(self, item: dict) -> str: ...
110
117
 
@@ -112,6 +119,7 @@ class DictStorageCollection(StorageCollection[dict, SerializedStorageCollection]
112
119
  def _create_item(self, item_id: str, data: dict) -> dict: ...
113
120
  def _deserialize_item(self, data: dict) -> dict: ...
114
121
  def _serialize_item(self, item_id: str, item: dict) -> dict: ...
122
+ @callback
115
123
  def _data_to_save(self) -> SerializedStorageCollection: ...
116
124
 
117
125
  class IDLessCollection(YamlCollection):
@@ -129,13 +137,16 @@ class _CollectionLifeCycle(Generic[_EntityT]):
129
137
  entity_class: type[CollectionEntity]
130
138
  ent_reg: entity_registry.EntityRegistry
131
139
  entities: dict[str, CollectionEntity]
140
+ @callback
132
141
  def async_setup(self) -> None: ...
133
142
  def _entity_removed(self, item_id: str) -> None: ...
143
+ @callback
134
144
  def _add_entity(self, change_set: CollectionChange) -> CollectionEntity: ...
135
145
  async def _remove_entity(self, change_set: CollectionChange) -> None: ...
136
146
  async def _update_entity(self, change_set: CollectionChange) -> None: ...
137
147
  async def _collection_changed(self, change_set: Iterable[CollectionChange]) -> None: ...
138
148
 
149
+ @callback
139
150
  def sync_entity_lifecycle(hass: HomeAssistant, domain: str, platform: str, entity_component: EntityComponent[_EntityT], collection: StorageCollection | YamlCollection, entity_class: type[CollectionEntity]) -> None: ...
140
151
 
141
152
  class StorageCollectionWebsocket[_StorageCollectionT: StorageCollection]:
@@ -149,9 +160,12 @@ class StorageCollectionWebsocket[_StorageCollectionT: StorageCollection]:
149
160
  def __init__(self, storage_collection: _StorageCollectionT, api_prefix: str, model_name: str, create_schema: VolDictType, update_schema: VolDictType) -> None: ...
150
161
  @property
151
162
  def item_id_key(self) -> str: ...
163
+ @callback
152
164
  def async_setup(self, hass: HomeAssistant) -> None: ...
165
+ @callback
153
166
  def ws_list_item(self, hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
154
167
  async def ws_create_item(self, hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
168
+ @callback
155
169
  def _ws_subscribe(self, hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
156
170
  async def ws_update_item(self, hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
157
171
  async def ws_delete_item(self, hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
@@ -6,6 +6,7 @@ from .trace import TraceElement as TraceElement, trace_append_element as trace_a
6
6
  from .typing import ConfigType as ConfigType, TemplateVarsType as TemplateVarsType
7
7
  from _typeshed import Incomplete
8
8
  from collections.abc import Callable, Container, Generator
9
+ from contextlib import contextmanager
9
10
  from datetime import time as dt_time, timedelta
10
11
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass
11
12
  from homeassistant.const import ATTR_DEVICE_CLASS as ATTR_DEVICE_CLASS, ATTR_GPS_ACCURACY as ATTR_GPS_ACCURACY, ATTR_LATITUDE as ATTR_LATITUDE, ATTR_LONGITUDE as ATTR_LONGITUDE, CONF_ABOVE as CONF_ABOVE, CONF_AFTER as CONF_AFTER, CONF_ATTRIBUTE as CONF_ATTRIBUTE, CONF_BEFORE as CONF_BEFORE, CONF_BELOW as CONF_BELOW, CONF_CONDITION as CONF_CONDITION, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_ENABLED as CONF_ENABLED, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_FOR as CONF_FOR, CONF_ID as CONF_ID, CONF_MATCH as CONF_MATCH, CONF_STATE as CONF_STATE, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE, CONF_WEEKDAY as CONF_WEEKDAY, CONF_ZONE as CONF_ZONE, ENTITY_MATCH_ALL as ENTITY_MATCH_ALL, ENTITY_MATCH_ANY as ENTITY_MATCH_ANY, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN, SUN_EVENT_SUNRISE as SUN_EVENT_SUNRISE, SUN_EVENT_SUNSET as SUN_EVENT_SUNSET, WEEKDAYS as WEEKDAYS
@@ -30,6 +31,7 @@ type ConditionCheckerType = Callable[[HomeAssistant, TemplateVarsType], bool | N
30
31
  def condition_trace_append(variables: TemplateVarsType, path: str) -> TraceElement: ...
31
32
  def condition_trace_set_result(result: bool, **kwargs: Any) -> None: ...
32
33
  def condition_trace_update_result(**kwargs: Any) -> None: ...
34
+ @contextmanager
33
35
  def trace_condition(variables: TemplateVarsType) -> Generator[TraceElement]: ...
34
36
  def trace_condition_function(condition: ConditionCheckerType) -> ConditionCheckerType: ...
35
37
  async def _async_get_condition_platform(hass: HomeAssistant, config: ConfigType) -> ConditionProtocol | None: ...
@@ -57,5 +59,7 @@ def state_validate_config(hass: HomeAssistant, config: ConfigType) -> ConfigType
57
59
  async def async_validate_condition_config(hass: HomeAssistant, config: ConfigType) -> ConfigType: ...
58
60
  async def async_validate_conditions_config(hass: HomeAssistant, conditions: list[ConfigType]) -> list[ConfigType | Template]: ...
59
61
  async def async_conditions_from_config(hass: HomeAssistant, condition_configs: list[ConfigType], logger: logging.Logger, name: str) -> Callable[[TemplateVarsType], bool]: ...
62
+ @callback
60
63
  def async_extract_entities(config: ConfigType | Template) -> set[str]: ...
64
+ @callback
61
65
  def async_extract_devices(config: ConfigType | Template) -> set[str]: ...
@@ -81,9 +81,11 @@ class AbstractOAuth2FlowHandler(config_entries.ConfigFlow, metaclass=ABCMeta):
81
81
  @classmethod
82
82
  def async_register_implementation(cls, hass: HomeAssistant, local_impl: LocalOAuth2Implementation) -> None: ...
83
83
 
84
+ @callback
84
85
  def async_register_implementation(hass: HomeAssistant, domain: str, implementation: AbstractOAuth2Implementation) -> None: ...
85
86
  async def async_get_implementations(hass: HomeAssistant, domain: str) -> dict[str, AbstractOAuth2Implementation]: ...
86
87
  async def async_get_config_entry_implementation(hass: HomeAssistant, config_entry: config_entries.ConfigEntry) -> AbstractOAuth2Implementation: ...
88
+ @callback
87
89
  def async_add_implementation_provider(hass: HomeAssistant, provider_domain: str, async_provide_implementation: Callable[[HomeAssistant, str], Awaitable[list[AbstractOAuth2Implementation]]]) -> None: ...
88
90
 
89
91
  class OAuth2AuthorizeCallbackView(http.HomeAssistantView):
@@ -106,5 +108,7 @@ class OAuth2Session:
106
108
  async def async_request(self, method: str, url: str, **kwargs: Any) -> client.ClientResponse: ...
107
109
 
108
110
  async def async_oauth2_request(hass: HomeAssistant, token: dict, method: str, url: str, **kwargs: Any) -> client.ClientResponse: ...
111
+ @callback
109
112
  def _encode_jwt(hass: HomeAssistant, data: dict) -> str: ...
113
+ @callback
110
114
  def _decode_jwt(hass: HomeAssistant, encoded: str) -> dict[str, Any] | None: ...