homeassistant-stubs 2025.1.0b8__py3-none-any.whl → 2025.1.1__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 (646) hide show
  1. homeassistant-stubs/auth/__init__.pyi +2 -2
  2. homeassistant-stubs/auth/auth_store.pyi +4 -4
  3. homeassistant-stubs/auth/mfa_modules/notify.pyi +5 -5
  4. homeassistant-stubs/auth/mfa_modules/totp.pyi +1 -1
  5. homeassistant-stubs/auth/models.pyi +3 -0
  6. homeassistant-stubs/auth/providers/__init__.pyi +4 -4
  7. homeassistant-stubs/auth/providers/command_line.pyi +1 -1
  8. homeassistant-stubs/auth/providers/homeassistant.pyi +2 -2
  9. homeassistant-stubs/bootstrap.pyi +2 -1
  10. homeassistant-stubs/components/abode/camera.pyi +2 -1
  11. homeassistant-stubs/components/abode/config_flow.pyi +3 -3
  12. homeassistant-stubs/components/acaia/config_flow.pyi +2 -2
  13. homeassistant-stubs/components/acmeda/config_flow.pyi +1 -2
  14. homeassistant-stubs/components/acmeda/hub.pyi +4 -3
  15. homeassistant-stubs/components/actiontec/device_tracker.pyi +4 -4
  16. homeassistant-stubs/components/aftership/sensor.pyi +2 -2
  17. homeassistant-stubs/components/airgradient/config_flow.pyi +3 -2
  18. homeassistant-stubs/components/airgradient/update.pyi +2 -0
  19. homeassistant-stubs/components/airq/sensor.pyi +1 -1
  20. homeassistant-stubs/components/airthings_ble/config_flow.pyi +2 -2
  21. homeassistant-stubs/components/airvisual/config_flow.pyi +2 -2
  22. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +6 -1
  23. homeassistant-stubs/components/alert/entity.pyi +1 -1
  24. homeassistant-stubs/components/alexa/auth.pyi +3 -2
  25. homeassistant-stubs/components/alexa/config.pyi +3 -3
  26. homeassistant-stubs/components/alexa/intent.pyi +5 -5
  27. homeassistant-stubs/components/alexa/resources.pyi +5 -5
  28. homeassistant-stubs/components/alexa/state_report.pyi +6 -6
  29. homeassistant-stubs/components/amazon_polly/tts.pyi +2 -2
  30. homeassistant-stubs/components/amberelectric/config_flow.pyi +3 -4
  31. homeassistant-stubs/components/ambient_network/config_flow.pyi +1 -2
  32. homeassistant-stubs/components/ambient_station/__init__.pyi +1 -1
  33. homeassistant-stubs/components/amcrest/__init__.pyi +1 -1
  34. homeassistant-stubs/components/amcrest/binary_sensor.pyi +1 -1
  35. homeassistant-stubs/components/amcrest/camera.pyi +9 -8
  36. homeassistant-stubs/components/analytics/analytics.pyi +1 -1
  37. homeassistant-stubs/components/androidtv/config_flow.pyi +4 -4
  38. homeassistant-stubs/components/androidtv/media_player.pyi +8 -7
  39. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +2 -2
  40. homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -1
  41. homeassistant-stubs/components/androidtv_remote/media_player.pyi +2 -1
  42. homeassistant-stubs/components/anova/coordinator.pyi +1 -1
  43. homeassistant-stubs/components/apple_tv/config_flow.pyi +2 -2
  44. homeassistant-stubs/components/apple_tv/media_player.pyi +2 -2
  45. homeassistant-stubs/components/aranet/config_flow.pyi +3 -3
  46. homeassistant-stubs/components/arris_tg2492lg/device_tracker.pyi +1 -1
  47. homeassistant-stubs/components/aruba/device_tracker.pyi +4 -4
  48. homeassistant-stubs/components/assist_pipeline/audio_enhancer.pyi +4 -2
  49. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +4 -4
  50. homeassistant-stubs/components/assist_satellite/entity.pyi +0 -1
  51. homeassistant-stubs/components/asuswrt/bridge.pyi +6 -6
  52. homeassistant-stubs/components/asuswrt/config_flow.pyi +1 -1
  53. homeassistant-stubs/components/asuswrt/router.pyi +8 -8
  54. homeassistant-stubs/components/auth/indieauth.pyi +1 -1
  55. homeassistant-stubs/components/automation/__init__.pyi +15 -1
  56. homeassistant-stubs/components/automation/trace.pyi +1 -2
  57. homeassistant-stubs/components/axis/binary_sensor.pyi +1 -1
  58. homeassistant-stubs/components/axis/config_flow.pyi +2 -2
  59. homeassistant-stubs/components/axis/hub/entity_loader.pyi +3 -3
  60. homeassistant-stubs/components/axis/hub/hub.pyi +2 -1
  61. homeassistant-stubs/components/backup/agent.pyi +2 -0
  62. homeassistant-stubs/components/backup/backup.pyi +1 -1
  63. homeassistant-stubs/components/backup/manager.pyi +11 -11
  64. homeassistant-stubs/components/backup/store.pyi +1 -1
  65. homeassistant-stubs/components/baf/config_flow.pyi +1 -1
  66. homeassistant-stubs/components/bang_olufsen/entity.pyi +10 -9
  67. homeassistant-stubs/components/bang_olufsen/media_player.pyi +13 -13
  68. homeassistant-stubs/components/bayesian/binary_sensor.pyi +3 -3
  69. homeassistant-stubs/components/binary_sensor/__init__.pyi +4 -2
  70. homeassistant-stubs/components/blue_current/__init__.pyi +3 -2
  71. homeassistant-stubs/components/blueprint/models.pyi +1 -1
  72. homeassistant-stubs/components/bluesound/config_flow.pyi +2 -2
  73. homeassistant-stubs/components/bluesound/media_player.pyi +10 -9
  74. homeassistant-stubs/components/bluetooth/active_update_coordinator.pyi +3 -3
  75. homeassistant-stubs/components/bluetooth/active_update_processor.pyi +2 -2
  76. homeassistant-stubs/components/bluetooth/config_flow.pyi +4 -4
  77. homeassistant-stubs/components/bluetooth/manager.pyi +1 -1
  78. homeassistant-stubs/components/bluetooth/match.pyi +13 -11
  79. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +1 -2
  80. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +4 -4
  81. homeassistant-stubs/components/bluetooth/storage.pyi +2 -3
  82. homeassistant-stubs/components/bluetooth/update_coordinator.pyi +1 -1
  83. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +2 -2
  84. homeassistant-stubs/components/bmw_connected_drive/coordinator.pyi +1 -1
  85. homeassistant-stubs/components/bond/config_flow.pyi +1 -1
  86. homeassistant-stubs/components/bond/entity.pyi +1 -1
  87. homeassistant-stubs/components/bond/fan.pyi +3 -3
  88. homeassistant-stubs/components/bond/utils.pyi +5 -5
  89. homeassistant-stubs/components/braviatv/config_flow.pyi +3 -3
  90. homeassistant-stubs/components/braviatv/coordinator.pyi +14 -13
  91. homeassistant-stubs/components/brother/config_flow.pyi +3 -2
  92. homeassistant-stubs/components/bthome/config_flow.pyi +3 -4
  93. homeassistant-stubs/components/button/__init__.pyi +4 -2
  94. homeassistant-stubs/components/calendar/__init__.pyi +0 -1
  95. homeassistant-stubs/components/calendar/trigger.pyi +3 -3
  96. homeassistant-stubs/components/cambridge_audio/config_flow.pyi +1 -1
  97. homeassistant-stubs/components/camera/__init__.pyi +24 -9
  98. homeassistant-stubs/components/camera/prefs.pyi +1 -1
  99. homeassistant-stubs/components/canary/alarm_control_panel.pyi +1 -1
  100. homeassistant-stubs/components/canary/camera.pyi +3 -3
  101. homeassistant-stubs/components/cert_expiry/config_flow.pyi +1 -1
  102. homeassistant-stubs/components/cert_expiry/coordinator.pyi +1 -1
  103. homeassistant-stubs/components/clickatell/notify.pyi +2 -2
  104. homeassistant-stubs/components/clicksend/notify.pyi +4 -4
  105. homeassistant-stubs/components/climate/__init__.pyi +26 -1
  106. homeassistant-stubs/components/cloud/alexa_config.pyi +3 -3
  107. homeassistant-stubs/components/cloud/backup.pyi +1 -0
  108. homeassistant-stubs/components/cloud/client.pyi +4 -4
  109. homeassistant-stubs/components/cloud/prefs.pyi +2 -2
  110. homeassistant-stubs/components/command_line/binary_sensor.pyi +2 -1
  111. homeassistant-stubs/components/command_line/cover.pyi +3 -2
  112. homeassistant-stubs/components/command_line/sensor.pyi +4 -3
  113. homeassistant-stubs/components/command_line/switch.pyi +2 -1
  114. homeassistant-stubs/components/configurator/__init__.pyi +1 -1
  115. homeassistant-stubs/components/counter/__init__.pyi +2 -2
  116. homeassistant-stubs/components/cover/__init__.pyi +8 -2
  117. homeassistant-stubs/components/crownstone/config_flow.pyi +4 -4
  118. homeassistant-stubs/components/crownstone/entry_manager.pyi +3 -2
  119. homeassistant-stubs/components/date/__init__.pyi +4 -1
  120. homeassistant-stubs/components/datetime/__init__.pyi +4 -1
  121. homeassistant-stubs/components/deconz/button.pyi +1 -1
  122. homeassistant-stubs/components/deconz/deconz_event.pyi +1 -1
  123. homeassistant-stubs/components/deconz/entity.pyi +1 -1
  124. homeassistant-stubs/components/deconz/hub/hub.pyi +6 -6
  125. homeassistant-stubs/components/deconz/light.pyi +2 -2
  126. homeassistant-stubs/components/demo/cover.pyi +4 -4
  127. homeassistant-stubs/components/demo/fan.pyi +4 -4
  128. homeassistant-stubs/components/demo/geo_location.pyi +1 -1
  129. homeassistant-stubs/components/demo/media_player.pyi +2 -2
  130. homeassistant-stubs/components/demo/remote.pyi +1 -1
  131. homeassistant-stubs/components/demo/vacuum.pyi +1 -1
  132. homeassistant-stubs/components/derivative/sensor.pyi +3 -2
  133. homeassistant-stubs/components/device_tracker/config_entry.pyi +10 -2
  134. homeassistant-stubs/components/device_tracker/legacy.pyi +6 -4
  135. homeassistant-stubs/components/devolo_home_control/entity.pyi +2 -2
  136. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +1 -2
  137. homeassistant-stubs/components/devolo_home_network/image.pyi +1 -1
  138. homeassistant-stubs/components/devolo_home_network/update.pyi +1 -1
  139. homeassistant-stubs/components/dhcp/__init__.pyi +5 -3
  140. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +7 -7
  141. homeassistant-stubs/components/dlna_dmr/media_player.pyi +1 -1
  142. homeassistant-stubs/components/dlna_dms/config_flow.pyi +4 -4
  143. homeassistant-stubs/components/dlna_dms/dms.pyi +2 -0
  144. homeassistant-stubs/components/doorbird/camera.pyi +1 -1
  145. homeassistant-stubs/components/doorbird/config_flow.pyi +1 -1
  146. homeassistant-stubs/components/doorbird/device.pyi +9 -3
  147. homeassistant-stubs/components/dormakaba_dkey/config_flow.pyi +4 -3
  148. homeassistant-stubs/components/dsmr/config_flow.pyi +1 -1
  149. homeassistant-stubs/components/dsmr/sensor.pyi +1 -1
  150. homeassistant-stubs/components/dunehd/media_player.pyi +2 -2
  151. homeassistant-stubs/components/ecovacs/controller.pyi +4 -4
  152. homeassistant-stubs/components/ecovacs/entity.pyi +3 -3
  153. homeassistant-stubs/components/ecovacs/vacuum.pyi +1 -1
  154. homeassistant-stubs/components/ecowitt/entity.pyi +1 -1
  155. homeassistant-stubs/components/eheimdigital/config_flow.pyi +1 -1
  156. homeassistant-stubs/components/eheimdigital/coordinator.pyi +2 -2
  157. homeassistant-stubs/components/electrasmart/config_flow.pyi +6 -5
  158. homeassistant-stubs/components/electric_kiwi/coordinator.pyi +1 -1
  159. homeassistant-stubs/components/elevenlabs/config_flow.pyi +5 -5
  160. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +5 -5
  161. homeassistant-stubs/components/elkm1/config_flow.pyi +2 -2
  162. homeassistant-stubs/components/elkm1/entity.pyi +1 -1
  163. homeassistant-stubs/components/emulated_hue/config.pyi +12 -12
  164. homeassistant-stubs/components/emulated_hue/upnp.pyi +1 -1
  165. homeassistant-stubs/components/energy/data.pyi +2 -2
  166. homeassistant-stubs/components/energy/sensor.pyi +3 -3
  167. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +2 -2
  168. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +1 -1
  169. homeassistant-stubs/components/esphome/assist_satellite.pyi +4 -4
  170. homeassistant-stubs/components/esphome/bluetooth.pyi +1 -2
  171. homeassistant-stubs/components/esphome/camera.pyi +2 -1
  172. homeassistant-stubs/components/esphome/config_flow.pyi +8 -8
  173. homeassistant-stubs/components/esphome/coordinator.pyi +1 -1
  174. homeassistant-stubs/components/esphome/dashboard.pyi +5 -4
  175. homeassistant-stubs/components/esphome/domain_data.pyi +1 -3
  176. homeassistant-stubs/components/esphome/entity.pyi +1 -1
  177. homeassistant-stubs/components/esphome/enum_mapper.pyi +1 -1
  178. homeassistant-stubs/components/esphome/manager.pyi +3 -3
  179. homeassistant-stubs/components/esphome/select.pyi +1 -1
  180. homeassistant-stubs/components/event/__init__.pyi +5 -3
  181. homeassistant-stubs/components/evohome/__init__.pyi +7 -5
  182. homeassistant-stubs/components/evohome/coordinator.pyi +1 -1
  183. homeassistant-stubs/components/evohome/entity.pyi +3 -3
  184. homeassistant-stubs/components/fan/__init__.pyi +8 -1
  185. homeassistant-stubs/components/feedreader/coordinator.pyi +6 -6
  186. homeassistant-stubs/components/filter/sensor.pyi +7 -6
  187. homeassistant-stubs/components/fitbit/api.pyi +1 -1
  188. homeassistant-stubs/components/flux_led/config_flow.pyi +2 -3
  189. homeassistant-stubs/components/flux_led/entity.pyi +2 -2
  190. homeassistant-stubs/components/flux_led/number.pyi +4 -2
  191. homeassistant-stubs/components/fritz/config_flow.pyi +1 -1
  192. homeassistant-stubs/components/fritz/coordinator.pyi +22 -19
  193. homeassistant-stubs/components/fritz/device_tracker.pyi +2 -1
  194. homeassistant-stubs/components/fritz/entity.pyi +3 -4
  195. homeassistant-stubs/components/fritz/image.pyi +1 -1
  196. homeassistant-stubs/components/fritz/switch.pyi +1 -1
  197. homeassistant-stubs/components/fritzbox/config_flow.pyi +3 -3
  198. homeassistant-stubs/components/fritzbox/coordinator.pyi +2 -2
  199. homeassistant-stubs/components/fritzbox/light.pyi +1 -1
  200. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +1 -1
  201. homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +4 -3
  202. homeassistant-stubs/components/fronius/__init__.pyi +8 -8
  203. homeassistant-stubs/components/fronius/config_flow.pyi +1 -1
  204. homeassistant-stubs/components/fronius/coordinator.pyi +1 -1
  205. homeassistant-stubs/components/frontend/__init__.pyi +4 -1
  206. homeassistant-stubs/components/fully_kiosk/config_flow.pyi +1 -2
  207. homeassistant-stubs/components/fully_kiosk/switch.pyi +2 -2
  208. homeassistant-stubs/components/fyta/coordinator.pyi +2 -2
  209. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +2 -2
  210. homeassistant-stubs/components/generic_thermostat/climate.pyi +1 -1
  211. homeassistant-stubs/components/geo_location/__init__.pyi +5 -0
  212. homeassistant-stubs/components/glances/coordinator.pyi +1 -1
  213. homeassistant-stubs/components/go2rtc/__init__.pyi +2 -2
  214. homeassistant-stubs/components/go2rtc/server.pyi +5 -4
  215. homeassistant-stubs/components/google/api.pyi +5 -5
  216. homeassistant-stubs/components/google/calendar.pyi +1 -1
  217. homeassistant-stubs/components/google/config_flow.pyi +1 -1
  218. homeassistant-stubs/components/google/coordinator.pyi +1 -1
  219. homeassistant-stubs/components/google/store.pyi +1 -1
  220. homeassistant-stubs/components/google_assistant_sdk/__init__.pyi +4 -3
  221. homeassistant-stubs/components/google_assistant_sdk/helpers.pyi +3 -3
  222. homeassistant-stubs/components/govee_ble/config_flow.pyi +4 -4
  223. homeassistant-stubs/components/govee_ble/coordinator.pyi +1 -1
  224. homeassistant-stubs/components/greeneye_monitor/sensor.pyi +5 -5
  225. homeassistant-stubs/components/group/cover.pyi +2 -2
  226. homeassistant-stubs/components/group/entity.pyi +5 -5
  227. homeassistant-stubs/components/group/fan.pyi +2 -2
  228. homeassistant-stubs/components/group/media_player.pyi +1 -1
  229. homeassistant-stubs/components/group/registry.pyi +4 -4
  230. homeassistant-stubs/components/group/sensor.pyi +4 -4
  231. homeassistant-stubs/components/guardian/__init__.pyi +2 -2
  232. homeassistant-stubs/components/guardian/config_flow.pyi +1 -1
  233. homeassistant-stubs/components/here_travel_time/config_flow.pyi +2 -2
  234. homeassistant-stubs/components/history_stats/coordinator.pyi +2 -2
  235. homeassistant-stubs/components/history_stats/data.pyi +2 -2
  236. homeassistant-stubs/components/holiday/config_flow.pyi +1 -1
  237. homeassistant-stubs/components/homeassistant/exposed_entities.pyi +2 -2
  238. homeassistant-stubs/components/homeassistant/repairs.pyi +1 -1
  239. homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +7 -5
  240. homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +9 -9
  241. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +2 -2
  242. homeassistant-stubs/components/homekit/__init__.pyi +7 -6
  243. homeassistant-stubs/components/homekit/accessories.pyi +2 -2
  244. homeassistant-stubs/components/homekit/aidmanager.pyi +3 -3
  245. homeassistant-stubs/components/homekit/config_flow.pyi +3 -3
  246. homeassistant-stubs/components/homekit/iidmanager.pyi +3 -3
  247. homeassistant-stubs/components/homekit/type_cameras.pyi +1 -1
  248. homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
  249. homeassistant-stubs/components/homekit/type_fans.pyi +2 -2
  250. homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
  251. homeassistant-stubs/components/homekit/type_lights.pyi +2 -2
  252. homeassistant-stubs/components/homekit/type_media_players.pyi +2 -2
  253. homeassistant-stubs/components/homekit/type_remotes.pyi +2 -2
  254. homeassistant-stubs/components/homekit/type_switches.pyi +1 -1
  255. homeassistant-stubs/components/homekit/type_thermostats.pyi +3 -3
  256. homeassistant-stubs/components/homekit/type_triggers.pyi +1 -1
  257. homeassistant-stubs/components/homekit_controller/config_flow.pyi +7 -7
  258. homeassistant-stubs/components/homekit_controller/storage.pyi +1 -1
  259. homeassistant-stubs/components/http/__init__.pyi +3 -3
  260. homeassistant-stubs/components/http/ban.pyi +1 -1
  261. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +1 -1
  262. homeassistant-stubs/components/huawei_lte/entity.pyi +1 -1
  263. homeassistant-stubs/components/humidifier/__init__.pyi +11 -2
  264. homeassistant-stubs/components/husqvarna_automower/api.pyi +1 -1
  265. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +1 -1
  266. homeassistant-stubs/components/hyperion/camera.pyi +1 -1
  267. homeassistant-stubs/components/hyperion/config_flow.pyi +5 -4
  268. homeassistant-stubs/components/hyperion/light.pyi +6 -6
  269. homeassistant-stubs/components/hyperion/sensor.pyi +1 -1
  270. homeassistant-stubs/components/ibeacon/coordinator.pyi +14 -14
  271. homeassistant-stubs/components/idasen_desk/config_flow.pyi +2 -2
  272. homeassistant-stubs/components/image/__init__.pyi +6 -2
  273. homeassistant-stubs/components/image_processing/__init__.pyi +4 -5
  274. homeassistant-stubs/components/imap/coordinator.pyi +8 -7
  275. homeassistant-stubs/components/integration/sensor.pyi +7 -7
  276. homeassistant-stubs/components/intent/timers.pyi +6 -3
  277. homeassistant-stubs/components/ipp/config_flow.pyi +1 -1
  278. homeassistant-stubs/components/iron_os/config_flow.pyi +2 -3
  279. homeassistant-stubs/components/islamic_prayer_times/coordinator.pyi +1 -1
  280. homeassistant-stubs/components/isy994/binary_sensor.pyi +4 -4
  281. homeassistant-stubs/components/isy994/button.pyi +1 -1
  282. homeassistant-stubs/components/isy994/config_flow.pyi +2 -2
  283. homeassistant-stubs/components/isy994/entity.pyi +5 -5
  284. homeassistant-stubs/components/isy994/light.pyi +1 -1
  285. homeassistant-stubs/components/isy994/number.pyi +2 -2
  286. homeassistant-stubs/components/isy994/select.pyi +1 -1
  287. homeassistant-stubs/components/isy994/sensor.pyi +2 -2
  288. homeassistant-stubs/components/isy994/switch.pyi +1 -1
  289. homeassistant-stubs/components/jellyfin/config_flow.pyi +1 -1
  290. homeassistant-stubs/components/jellyfin/coordinator.pyi +8 -8
  291. homeassistant-stubs/components/jellyfin/entity.pyi +5 -5
  292. homeassistant-stubs/components/jellyfin/media_player.pyi +2 -2
  293. homeassistant-stubs/components/jewish_calendar/sensor.pyi +1 -1
  294. homeassistant-stubs/components/knocki/coordinator.pyi +1 -1
  295. homeassistant-stubs/components/knx/__init__.pyi +7 -6
  296. homeassistant-stubs/components/knx/climate.pyi +3 -3
  297. homeassistant-stubs/components/knx/config_flow.pyi +10 -9
  298. homeassistant-stubs/components/knx/cover.pyi +1 -1
  299. homeassistant-stubs/components/knx/device.pyi +1 -1
  300. homeassistant-stubs/components/knx/expose.pyi +7 -6
  301. homeassistant-stubs/components/knx/fan.pyi +1 -1
  302. homeassistant-stubs/components/knx/light.pyi +6 -4
  303. homeassistant-stubs/components/knx/select.pyi +1 -1
  304. homeassistant-stubs/components/knx/sensor.pyi +1 -1
  305. homeassistant-stubs/components/knx/storage/config_store.pyi +1 -1
  306. homeassistant-stubs/components/knx/telegrams.pyi +3 -2
  307. homeassistant-stubs/components/kraken/__init__.pyi +2 -2
  308. homeassistant-stubs/components/lacrosse/sensor.pyi +1 -1
  309. homeassistant-stubs/components/lacrosse_view/config_flow.pyi +2 -2
  310. homeassistant-stubs/components/lamarzocco/config_flow.pyi +3 -3
  311. homeassistant-stubs/components/lamarzocco/coordinator.pyi +1 -1
  312. homeassistant-stubs/components/lawn_mower/__init__.pyi +3 -1
  313. homeassistant-stubs/components/lcn/entity.pyi +3 -3
  314. homeassistant-stubs/components/ld2410_ble/config_flow.pyi +2 -2
  315. homeassistant-stubs/components/ld2410_ble/coordinator.pyi +1 -1
  316. homeassistant-stubs/components/led_ble/config_flow.pyi +2 -2
  317. homeassistant-stubs/components/lektrico/coordinator.pyi +3 -3
  318. homeassistant-stubs/components/lifx/__init__.pyi +1 -1
  319. homeassistant-stubs/components/lifx/config_flow.pyi +2 -3
  320. homeassistant-stubs/components/lifx/coordinator.pyi +7 -1
  321. homeassistant-stubs/components/lifx/light.pyi +3 -2
  322. homeassistant-stubs/components/lifx/manager.pyi +1 -1
  323. homeassistant-stubs/components/light/__init__.pyi +19 -2
  324. homeassistant-stubs/components/linear_garage_door/config_flow.pyi +1 -1
  325. homeassistant-stubs/components/linkplay/config_flow.pyi +1 -1
  326. homeassistant-stubs/components/lock/__init__.pyi +10 -1
  327. homeassistant-stubs/components/logbook/models.pyi +7 -0
  328. homeassistant-stubs/components/logbook/processor.pyi +3 -3
  329. homeassistant-stubs/components/logger/helpers.pyi +1 -1
  330. homeassistant-stubs/components/lookin/__init__.pyi +2 -2
  331. homeassistant-stubs/components/lookin/config_flow.pyi +2 -2
  332. homeassistant-stubs/components/lookin/entity.pyi +2 -2
  333. homeassistant-stubs/components/lookin/media_player.pyi +1 -1
  334. homeassistant-stubs/components/madvr/sensor.pyi +1 -1
  335. homeassistant-stubs/components/manual/alarm_control_panel.pyi +6 -6
  336. homeassistant-stubs/components/matrix/__init__.pyi +4 -4
  337. homeassistant-stubs/components/matter/adapter.pyi +2 -2
  338. homeassistant-stubs/components/matter/climate.pyi +1 -1
  339. homeassistant-stubs/components/matter/config_flow.pyi +4 -3
  340. homeassistant-stubs/components/matter/entity.pyi +4 -2
  341. homeassistant-stubs/components/media_player/__init__.pyi +37 -3
  342. homeassistant-stubs/components/met_eireann/__init__.pyi +3 -3
  343. homeassistant-stubs/components/mikrotik/coordinator.pyi +4 -4
  344. homeassistant-stubs/components/mikrotik/device.pyi +3 -3
  345. homeassistant-stubs/components/min_max/sensor.pyi +11 -11
  346. homeassistant-stubs/components/modbus/binary_sensor.pyi +2 -2
  347. homeassistant-stubs/components/modbus/climate.pyi +4 -4
  348. homeassistant-stubs/components/modbus/entity.pyi +5 -5
  349. homeassistant-stubs/components/modbus/modbus.pyi +4 -3
  350. homeassistant-stubs/components/modbus/sensor.pyi +1 -1
  351. homeassistant-stubs/components/modem_callerid/config_flow.pyi +1 -1
  352. homeassistant-stubs/components/mold_indicator/sensor.pyi +6 -6
  353. homeassistant-stubs/components/mopeka/config_flow.pyi +4 -3
  354. homeassistant-stubs/components/motionmount/config_flow.pyi +1 -1
  355. homeassistant-stubs/components/motionmount/select.pyi +1 -1
  356. homeassistant-stubs/components/mqtt/client.pyi +13 -12
  357. homeassistant-stubs/components/mqtt/config_flow.pyi +4 -3
  358. homeassistant-stubs/components/mqtt/entity.pyi +10 -10
  359. homeassistant-stubs/components/mqtt/models.pyi +3 -3
  360. homeassistant-stubs/components/mqtt/tag.pyi +1 -1
  361. homeassistant-stubs/components/mqtt/util.pyi +2 -2
  362. homeassistant-stubs/components/mqtt/vacuum.pyi +1 -1
  363. homeassistant-stubs/components/music_assistant/config_flow.pyi +1 -2
  364. homeassistant-stubs/components/music_assistant/media_player.pyi +1 -1
  365. homeassistant-stubs/components/mysensors/config_flow.pyi +1 -1
  366. homeassistant-stubs/components/mysensors/entity.pyi +7 -7
  367. homeassistant-stubs/components/mysensors/light.pyi +1 -1
  368. homeassistant-stubs/components/nasweb/coordinator.pyi +4 -4
  369. homeassistant-stubs/components/neato/camera.pyi +4 -4
  370. homeassistant-stubs/components/neato/entity.pyi +1 -1
  371. homeassistant-stubs/components/neato/hub.pyi +1 -1
  372. homeassistant-stubs/components/neato/sensor.pyi +3 -2
  373. homeassistant-stubs/components/neato/switch.pyi +2 -2
  374. homeassistant-stubs/components/neato/vacuum.pyi +18 -18
  375. homeassistant-stubs/components/nest/camera.pyi +4 -4
  376. homeassistant-stubs/components/nest/config_flow.pyi +5 -5
  377. homeassistant-stubs/components/nest/media_source.pyi +2 -2
  378. homeassistant-stubs/components/netatmo/data_handler.pyi +3 -2
  379. homeassistant-stubs/components/netatmo/entity.pyi +2 -1
  380. homeassistant-stubs/components/network/network.pyi +2 -2
  381. homeassistant-stubs/components/nextdns/config_flow.pyi +2 -2
  382. homeassistant-stubs/components/nextdns/sensor.pyi +1 -1
  383. homeassistant-stubs/components/nightscout/sensor.pyi +2 -1
  384. homeassistant-stubs/components/nissan_leaf/__init__.pyi +6 -6
  385. homeassistant-stubs/components/nordpool/coordinator.pyi +1 -1
  386. homeassistant-stubs/components/notify/__init__.pyi +2 -1
  387. homeassistant-stubs/components/number/__init__.pyi +18 -11
  388. homeassistant-stubs/components/nut/__init__.pyi +3 -3
  389. homeassistant-stubs/components/nut/config_flow.pyi +4 -4
  390. homeassistant-stubs/components/onewire/config_flow.pyi +1 -1
  391. homeassistant-stubs/components/onewire/entity.pyi +2 -2
  392. homeassistant-stubs/components/onewire/onewirehub.pyi +3 -2
  393. homeassistant-stubs/components/openai_conversation/conversation.pyi +1 -1
  394. homeassistant-stubs/components/openexchangerates/config_flow.pyi +1 -2
  395. homeassistant-stubs/components/opensky/coordinator.pyi +1 -1
  396. homeassistant-stubs/components/openuv/config_flow.pyi +1 -1
  397. homeassistant-stubs/components/oralb/config_flow.pyi +4 -4
  398. homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control_zone.pyi +4 -1
  399. homeassistant-stubs/components/overkiz/coordinator.pyi +2 -2
  400. homeassistant-stubs/components/overkiz/light.pyi +1 -1
  401. homeassistant-stubs/components/overkiz/water_heater/domestic_hot_water_production.pyi +1 -1
  402. homeassistant-stubs/components/pi_hole/config_flow.pyi +1 -1
  403. homeassistant-stubs/components/plugwise/coordinator.pyi +2 -2
  404. homeassistant-stubs/components/powerwall/config_flow.pyi +2 -2
  405. homeassistant-stubs/components/private_ble_device/coordinator.pyi +8 -8
  406. homeassistant-stubs/components/private_ble_device/entity.pyi +1 -1
  407. homeassistant-stubs/components/prometheus/__init__.pyi +3 -3
  408. homeassistant-stubs/components/proximity/coordinator.pyi +8 -8
  409. homeassistant-stubs/components/purpleair/config_flow.pyi +2 -2
  410. homeassistant-stubs/components/pushbullet/api.pyi +1 -1
  411. homeassistant-stubs/components/radarr/coordinator.pyi +2 -2
  412. homeassistant-stubs/components/rainforest_raven/config_flow.pyi +2 -3
  413. homeassistant-stubs/components/rainmachine/coordinator.pyi +1 -1
  414. homeassistant-stubs/components/rainmachine/sensor.pyi +2 -2
  415. homeassistant-stubs/components/recollect_waste/calendar.pyi +1 -1
  416. homeassistant-stubs/components/recorder/core.pyi +26 -22
  417. homeassistant-stubs/components/recorder/executor.pyi +1 -1
  418. homeassistant-stubs/components/recorder/models/legacy.pyi +5 -5
  419. homeassistant-stubs/components/recorder/models/state.pyi +12 -2
  420. homeassistant-stubs/components/recorder/table_managers/__init__.pyi +1 -1
  421. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +2 -2
  422. homeassistant-stubs/components/recorder/table_managers/recorder_runs.pyi +2 -2
  423. homeassistant-stubs/components/recorder/table_managers/states.pyi +4 -5
  424. homeassistant-stubs/components/recorder/table_managers/statistics_meta.pyi +2 -1
  425. homeassistant-stubs/components/remote/__init__.pyi +4 -1
  426. homeassistant-stubs/components/renault/config_flow.pyi +1 -1
  427. homeassistant-stubs/components/renault/renault_hub.pyi +2 -2
  428. homeassistant-stubs/components/renault/renault_vehicle.pyi +1 -1
  429. homeassistant-stubs/components/reolink/__init__.pyi +1 -0
  430. homeassistant-stubs/components/reolink/config_flow.pyi +2 -2
  431. homeassistant-stubs/components/reolink/host.pyi +12 -10
  432. homeassistant-stubs/components/reolink/media_source.pyi +2 -3
  433. homeassistant-stubs/components/reolink/update.pyi +3 -3
  434. homeassistant-stubs/components/reolink/util.pyi +2 -0
  435. homeassistant-stubs/components/reolink/views.pyi +21 -0
  436. homeassistant-stubs/components/rest/binary_sensor.pyi +1 -1
  437. homeassistant-stubs/components/rest/data.pyi +4 -4
  438. homeassistant-stubs/components/rest/switch.pyi +10 -10
  439. homeassistant-stubs/components/rfxtrx/binary_sensor.pyi +1 -1
  440. homeassistant-stubs/components/rfxtrx/config_flow.pyi +5 -5
  441. homeassistant-stubs/components/rfxtrx/cover.pyi +1 -1
  442. homeassistant-stubs/components/rfxtrx/entity.pyi +1 -1
  443. homeassistant-stubs/components/ridwell/calendar.pyi +1 -1
  444. homeassistant-stubs/components/ridwell/config_flow.pyi +2 -2
  445. homeassistant-stubs/components/ridwell/coordinator.pyi +1 -1
  446. homeassistant-stubs/components/ring/binary_sensor.pyi +1 -1
  447. homeassistant-stubs/components/ring/camera.pyi +4 -4
  448. homeassistant-stubs/components/ring/coordinator.pyi +5 -5
  449. homeassistant-stubs/components/roborock/config_flow.pyi +2 -2
  450. homeassistant-stubs/components/roborock/coordinator.pyi +10 -4
  451. homeassistant-stubs/components/ruuvi_gateway/coordinator.pyi +1 -1
  452. homeassistant-stubs/components/ruuvitag_ble/config_flow.pyi +4 -4
  453. homeassistant-stubs/components/samsungtv/__init__.pyi +2 -1
  454. homeassistant-stubs/components/samsungtv/bridge.pyi +16 -14
  455. homeassistant-stubs/components/samsungtv/config_flow.pyi +15 -14
  456. homeassistant-stubs/components/samsungtv/coordinator.pyi +4 -3
  457. homeassistant-stubs/components/samsungtv/entity.pyi +2 -2
  458. homeassistant-stubs/components/samsungtv/media_player.pyi +8 -5
  459. homeassistant-stubs/components/schlage/coordinator.pyi +1 -1
  460. homeassistant-stubs/components/script/__init__.pyi +16 -0
  461. homeassistant-stubs/components/search/__init__.pyi +2 -1
  462. homeassistant-stubs/components/select/__init__.pyi +4 -2
  463. homeassistant-stubs/components/sensirion_ble/config_flow.pyi +4 -4
  464. homeassistant-stubs/components/sensor/__init__.pyi +17 -9
  465. homeassistant-stubs/components/sensoterra/coordinator.pyi +1 -1
  466. homeassistant-stubs/components/shelly/climate.pyi +8 -7
  467. homeassistant-stubs/components/shelly/coordinator.pyi +19 -15
  468. homeassistant-stubs/components/shelly/cover.pyi +1 -1
  469. homeassistant-stubs/components/shelly/entity.pyi +6 -6
  470. homeassistant-stubs/components/shelly/light.pyi +1 -1
  471. homeassistant-stubs/components/shelly/number.pyi +1 -1
  472. homeassistant-stubs/components/shelly/sensor.pyi +2 -2
  473. homeassistant-stubs/components/shelly/switch.pyi +2 -2
  474. homeassistant-stubs/components/shelly/update.pyi +2 -2
  475. homeassistant-stubs/components/shelly/valve.pyi +1 -1
  476. homeassistant-stubs/components/shopping_list/__init__.pyi +2 -2
  477. homeassistant-stubs/components/simplepush/notify.pyi +4 -4
  478. homeassistant-stubs/components/simplisafe/__init__.pyi +8 -6
  479. homeassistant-stubs/components/simplisafe/binary_sensor.pyi +2 -2
  480. homeassistant-stubs/components/simplisafe/config_flow.pyi +1 -1
  481. homeassistant-stubs/components/simplisafe/sensor.pyi +1 -1
  482. homeassistant-stubs/components/siren/__init__.pyi +4 -2
  483. homeassistant-stubs/components/skybell/binary_sensor.pyi +1 -1
  484. homeassistant-stubs/components/smhi/weather.pyi +2 -2
  485. homeassistant-stubs/components/smlight/config_flow.pyi +2 -1
  486. homeassistant-stubs/components/smlight/coordinator.pyi +1 -1
  487. homeassistant-stubs/components/smlight/sensor.pyi +1 -1
  488. homeassistant-stubs/components/smlight/update.pyi +2 -2
  489. homeassistant-stubs/components/snooz/config_flow.pyi +4 -4
  490. homeassistant-stubs/components/solarlog/config_flow.pyi +2 -3
  491. homeassistant-stubs/components/solarlog/coordinator.pyi +2 -2
  492. homeassistant-stubs/components/sonarr/coordinator.pyi +1 -1
  493. homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +1 -2
  494. homeassistant-stubs/components/speedtestdotnet/coordinator.pyi +1 -1
  495. homeassistant-stubs/components/speedtestdotnet/sensor.pyi +2 -2
  496. homeassistant-stubs/components/spotify/coordinator.pyi +2 -2
  497. homeassistant-stubs/components/squeezebox/config_flow.pyi +1 -1
  498. homeassistant-stubs/components/squeezebox/coordinator.pyi +1 -1
  499. homeassistant-stubs/components/squeezebox/media_player.pyi +2 -2
  500. homeassistant-stubs/components/ssdp/__init__.pyi +9 -8
  501. homeassistant-stubs/components/statistics/sensor.pyi +15 -15
  502. homeassistant-stubs/components/steamist/config_flow.pyi +2 -2
  503. homeassistant-stubs/components/stream/__init__.pyi +5 -4
  504. homeassistant-stubs/components/stream/core.pyi +7 -6
  505. homeassistant-stubs/components/stream/diagnostics.pyi +3 -3
  506. homeassistant-stubs/components/stream/recorder.pyi +1 -1
  507. homeassistant-stubs/components/stream/worker.pyi +6 -4
  508. homeassistant-stubs/components/sun/entity.pyi +4 -4
  509. homeassistant-stubs/components/switch/__init__.pyi +3 -2
  510. homeassistant-stubs/components/switchbee/climate.pyi +1 -1
  511. homeassistant-stubs/components/switchbee/coordinator.pyi +1 -1
  512. homeassistant-stubs/components/switcher_kis/light.pyi +2 -2
  513. homeassistant-stubs/components/switcher_kis/switch.pyi +1 -1
  514. homeassistant-stubs/components/synology_dsm/common.pyi +19 -11
  515. homeassistant-stubs/components/synology_dsm/config_flow.pyi +4 -4
  516. homeassistant-stubs/components/synology_dsm/coordinator.pyi +1 -1
  517. homeassistant-stubs/components/synology_dsm/entity.pyi +5 -5
  518. homeassistant-stubs/components/synology_dsm/sensor.pyi +2 -3
  519. homeassistant-stubs/components/system_log/__init__.pyi +1 -1
  520. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +1 -1
  521. homeassistant-stubs/components/systemmonitor/coordinator.pyi +2 -2
  522. homeassistant-stubs/components/systemmonitor/sensor.pyi +3 -3
  523. homeassistant-stubs/components/tag/__init__.pyi +1 -1
  524. homeassistant-stubs/components/tautulli/coordinator.pyi +3 -3
  525. homeassistant-stubs/components/tcp/entity.pyi +4 -3
  526. homeassistant-stubs/components/tedee/coordinator.pyi +3 -3
  527. homeassistant-stubs/components/text/__init__.pyi +10 -5
  528. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -3
  529. homeassistant-stubs/components/tibber/sensor.pyi +5 -4
  530. homeassistant-stubs/components/tile/config_flow.pyi +2 -2
  531. homeassistant-stubs/components/tilt_ble/config_flow.pyi +4 -4
  532. homeassistant-stubs/components/time/__init__.pyi +4 -1
  533. homeassistant-stubs/components/timer/__init__.pyi +7 -7
  534. homeassistant-stubs/components/tod/binary_sensor.pyi +1 -1
  535. homeassistant-stubs/components/todo/__init__.pyi +2 -0
  536. homeassistant-stubs/components/tplink/camera.pyi +2 -2
  537. homeassistant-stubs/components/tplink/config_flow.pyi +2 -2
  538. homeassistant-stubs/components/tplink/siren.pyi +1 -1
  539. homeassistant-stubs/components/tplink_omada/config_flow.pyi +2 -2
  540. homeassistant-stubs/components/tplink_omada/controller.pyi +1 -1
  541. homeassistant-stubs/components/trace/models.pyi +10 -9
  542. homeassistant-stubs/components/tractive/__init__.pyi +2 -1
  543. homeassistant-stubs/components/tractive/device_tracker.pyi +3 -3
  544. homeassistant-stubs/components/tradfri/config_flow.pyi +1 -1
  545. homeassistant-stubs/components/tradfri/coordinator.pyi +1 -1
  546. homeassistant-stubs/components/tradfri/entity.pyi +1 -1
  547. homeassistant-stubs/components/trafikverket_ferry/coordinator.pyi +5 -5
  548. homeassistant-stubs/components/trafikverket_train/coordinator.pyi +4 -4
  549. homeassistant-stubs/components/transmission/coordinator.pyi +5 -5
  550. homeassistant-stubs/components/trend/binary_sensor.pyi +2 -1
  551. homeassistant-stubs/components/tts/__init__.pyi +10 -5
  552. homeassistant-stubs/components/tts/notify.pyi +2 -2
  553. homeassistant-stubs/components/twentemilieu/calendar.pyi +1 -1
  554. homeassistant-stubs/components/unifi/__init__.pyi +3 -3
  555. homeassistant-stubs/components/unifi/config_flow.pyi +3 -2
  556. homeassistant-stubs/components/unifi/device_tracker.pyi +3 -0
  557. homeassistant-stubs/components/unifi/hub/entity_helper.pyi +4 -4
  558. homeassistant-stubs/components/unifi/hub/entity_loader.pyi +2 -2
  559. homeassistant-stubs/components/unifi/hub/websocket.pyi +3 -2
  560. homeassistant-stubs/components/unifiprotect/camera.pyi +1 -1
  561. homeassistant-stubs/components/unifiprotect/config_flow.pyi +1 -1
  562. homeassistant-stubs/components/unifiprotect/data.pyi +4 -3
  563. homeassistant-stubs/components/update/__init__.pyi +15 -4
  564. homeassistant-stubs/components/usb/__init__.pyi +7 -4
  565. homeassistant-stubs/components/uvc/camera.pyi +2 -2
  566. homeassistant-stubs/components/vacuum/__init__.pyi +8 -1
  567. homeassistant-stubs/components/velbus/config_flow.pyi +1 -2
  568. homeassistant-stubs/components/velbus/sensor.pyi +1 -1
  569. homeassistant-stubs/components/waqi/config_flow.pyi +1 -1
  570. homeassistant-stubs/components/water_heater/__init__.pyi +9 -2
  571. homeassistant-stubs/components/watttime/config_flow.pyi +3 -2
  572. homeassistant-stubs/components/weather/__init__.pyi +20 -2
  573. homeassistant-stubs/components/webostv/config_flow.pyi +1 -1
  574. homeassistant-stubs/components/webostv/media_player.pyi +1 -1
  575. homeassistant-stubs/components/websocket_api/connection.pyi +7 -6
  576. homeassistant-stubs/components/websocket_api/http.pyi +9 -7
  577. homeassistant-stubs/components/wemo/__init__.pyi +6 -6
  578. homeassistant-stubs/components/wemo/coordinator.pyi +1 -1
  579. homeassistant-stubs/components/withings/coordinator.pyi +2 -2
  580. homeassistant-stubs/components/wiz/config_flow.pyi +1 -1
  581. homeassistant-stubs/components/wled/coordinator.pyi +1 -1
  582. homeassistant-stubs/components/workday/repairs.pyi +3 -3
  583. homeassistant-stubs/components/xiaomi_ble/config_flow.pyi +3 -3
  584. homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +2 -2
  585. homeassistant-stubs/components/yale_smart_alarm/entity.pyi +3 -3
  586. homeassistant-stubs/components/yalexs_ble/config_flow.pyi +4 -3
  587. homeassistant-stubs/components/zeroconf/__init__.pyi +2 -2
  588. homeassistant-stubs/components/zone/__init__.pyi +3 -3
  589. homeassistant-stubs/components/zwave_js/__init__.pyi +3 -3
  590. homeassistant-stubs/components/zwave_js/climate.pyi +6 -6
  591. homeassistant-stubs/components/zwave_js/config_flow.pyi +14 -13
  592. homeassistant-stubs/components/zwave_js/event.pyi +1 -1
  593. homeassistant-stubs/components/zwave_js/light.pyi +8 -8
  594. homeassistant-stubs/components/zwave_js/number.pyi +1 -1
  595. homeassistant-stubs/components/zwave_js/repairs.pyi +2 -3
  596. homeassistant-stubs/components/zwave_js/switch.pyi +1 -1
  597. homeassistant-stubs/components/zwave_js/update.pyi +8 -8
  598. homeassistant-stubs/config_entries.pyi +11 -8
  599. homeassistant-stubs/core.pyi +50 -28
  600. homeassistant-stubs/core_config.pyi +18 -18
  601. homeassistant-stubs/data_entry_flow.pyi +6 -5
  602. homeassistant-stubs/helpers/area_registry.pyi +4 -2
  603. homeassistant-stubs/helpers/category_registry.pyi +1 -1
  604. homeassistant-stubs/helpers/check_config.pyi +2 -3
  605. homeassistant-stubs/helpers/collection.pyi +6 -6
  606. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +2 -2
  607. homeassistant-stubs/helpers/debounce.pyi +3 -2
  608. homeassistant-stubs/helpers/device_registry.pyi +9 -5
  609. homeassistant-stubs/helpers/discovery_flow.pyi +1 -1
  610. homeassistant-stubs/helpers/dispatcher.pyi +8 -8
  611. homeassistant-stubs/helpers/entity.pyi +43 -14
  612. homeassistant-stubs/helpers/entity_component.pyi +3 -3
  613. homeassistant-stubs/helpers/entity_platform.pyi +12 -12
  614. homeassistant-stubs/helpers/entity_registry.pyi +13 -6
  615. homeassistant-stubs/helpers/entityfilter.pyi +1 -1
  616. homeassistant-stubs/helpers/event.pyi +6 -6
  617. homeassistant-stubs/helpers/frame.pyi +4 -0
  618. homeassistant-stubs/helpers/icon.pyi +2 -2
  619. homeassistant-stubs/helpers/intent.pyi +15 -12
  620. homeassistant-stubs/helpers/issue_registry.pyi +1 -1
  621. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +1 -2
  622. homeassistant-stubs/helpers/ratelimit.pyi +4 -3
  623. homeassistant-stubs/helpers/restore_state.pyi +3 -3
  624. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +1 -1
  625. homeassistant-stubs/helpers/script.pyi +16 -10
  626. homeassistant-stubs/helpers/script_variables.pyi +1 -1
  627. homeassistant-stubs/helpers/service.pyi +1 -1
  628. homeassistant-stubs/helpers/significant_change.pyi +1 -1
  629. homeassistant-stubs/helpers/storage.pyi +12 -9
  630. homeassistant-stubs/helpers/template.pyi +22 -18
  631. homeassistant-stubs/helpers/trace.pyi +6 -6
  632. homeassistant-stubs/helpers/trigger_template_entity.pyi +2 -2
  633. homeassistant-stubs/helpers/update_coordinator.pyi +10 -7
  634. homeassistant-stubs/loader.pyi +23 -4
  635. homeassistant-stubs/requirements.pyi +4 -3
  636. homeassistant-stubs/util/aiohttp.pyi +2 -2
  637. homeassistant-stubs/util/async_.pyi +1 -1
  638. homeassistant-stubs/util/frozen_dataclass_compat.pyi +3 -1
  639. homeassistant-stubs/util/logging.pyi +7 -7
  640. homeassistant-stubs/util/signal_type.pyi +1 -1
  641. homeassistant-stubs/util/timeout.pyi +29 -30
  642. homeassistant-stubs/util/yaml/loader.pyi +4 -1
  643. {homeassistant_stubs-2025.1.0b8.dist-info → homeassistant_stubs-2025.1.1.dist-info}/METADATA +2 -2
  644. {homeassistant_stubs-2025.1.0b8.dist-info → homeassistant_stubs-2025.1.1.dist-info}/RECORD +646 -645
  645. {homeassistant_stubs-2025.1.0b8.dist-info → homeassistant_stubs-2025.1.1.dist-info}/WHEEL +0 -0
  646. {homeassistant_stubs-2025.1.0b8.dist-info → homeassistant_stubs-2025.1.1.dist-info}/licenses/LICENSE +0 -0
@@ -21,8 +21,8 @@ async def validate_input(hass: HomeAssistant, data: dict[str, str]) -> dict[str,
21
21
 
22
22
  class PowerwallConfigFlow(ConfigFlow, domain=DOMAIN):
23
23
  VERSION: int
24
- ip_address: Incomplete
25
- title: Incomplete
24
+ ip_address: str | None
25
+ title: str | None
26
26
  def __init__(self) -> None: ...
27
27
  async def _async_powerwall_is_offline(self, entry: ConfigEntry) -> bool: ...
28
28
  async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
@@ -14,14 +14,14 @@ def async_last_service_info(hass: HomeAssistant, irk: bytes) -> bluetooth.Blueto
14
14
 
15
15
  class PrivateDevicesCoordinator:
16
16
  hass: Incomplete
17
- _irks: Incomplete
18
- _unavailable_callbacks: Incomplete
19
- _service_info_callbacks: Incomplete
20
- _mac_to_irk: Incomplete
21
- _irk_to_mac: Incomplete
22
- _ignored: Incomplete
23
- _unavailability_trackers: Incomplete
24
- _listener_cancel: Incomplete
17
+ _irks: dict[bytes, Cipher]
18
+ _unavailable_callbacks: dict[bytes, list[UnavailableCallback]]
19
+ _service_info_callbacks: dict[bytes, list[bluetooth.BluetoothCallback]]
20
+ _mac_to_irk: dict[str, bytes]
21
+ _irk_to_mac: dict[bytes, str]
22
+ _ignored: dict[str, Cancellable]
23
+ _unavailability_trackers: dict[bytes, Cancellable]
24
+ _listener_cancel: Cancellable | None
25
25
  def __init__(self, hass: HomeAssistant) -> None: ...
26
26
  def _async_ensure_started(self) -> None: ...
27
27
  def _async_ensure_stopped(self) -> None: ...
@@ -16,7 +16,7 @@ class BasePrivateDeviceEntity(Entity, metaclass=abc.ABCMeta):
16
16
  _attr_device_info: Incomplete
17
17
  _entry: Incomplete
18
18
  _irk: Incomplete
19
- _last_info: Incomplete
19
+ _last_info: bluetooth.BluetoothServiceInfoBleak | None
20
20
  def __init__(self, config_entry: ConfigEntry) -> None: ...
21
21
  async def async_added_to_hass(self) -> None: ...
22
22
  @abstractmethod
@@ -51,10 +51,10 @@ class PrometheusMetrics:
51
51
  _override_metric: Incomplete
52
52
  _default_metric: Incomplete
53
53
  _filter: Incomplete
54
- _sensor_metric_handlers: Incomplete
54
+ _sensor_metric_handlers: list[Callable[[State, str | None], str | None]]
55
55
  metrics_prefix: Incomplete
56
- _metrics: Incomplete
57
- _metrics_by_entity_id: Incomplete
56
+ _metrics: dict[str, MetricWrapperBase]
57
+ _metrics_by_entity_id: dict[str, set[MetricNameWithLabelValues]]
58
58
  _climate_units: Incomplete
59
59
  def __init__(self, entity_filter: entityfilter.EntityFilter, namespace: str, climate_units: UnitOfTemperature, component_config: EntityValues, override_metric: str | None, default_metric: str | None) -> None: ...
60
60
  def handle_state_changed_event(self, event: Event[EventStateChangedData]) -> None: ...
@@ -30,15 +30,15 @@ DEFAULT_PROXIMITY_DATA: dict[str, str | int | None]
30
30
 
31
31
  class ProximityDataUpdateCoordinator(DataUpdateCoordinator[ProximityData]):
32
32
  config_entry: ProximityConfigEntry
33
- ignored_zone_ids: Incomplete
34
- tracked_entities: Incomplete
35
- tolerance: Incomplete
36
- proximity_zone_id: Incomplete
37
- proximity_zone_name: Incomplete
38
- unit_of_measurement: Incomplete
39
- entity_mapping: Incomplete
33
+ ignored_zone_ids: list[str]
34
+ tracked_entities: list[str]
35
+ tolerance: int
36
+ proximity_zone_id: str
37
+ proximity_zone_name: str
38
+ unit_of_measurement: str
39
+ entity_mapping: dict[str, list[str]]
40
40
  data: Incomplete
41
- state_change_data: Incomplete
41
+ state_change_data: StateChangedData | None
42
42
  def __init__(self, hass: HomeAssistant, friendly_name: str, config: ConfigType) -> None: ...
43
43
  def async_add_entity_mapping(self, tracked_entity_id: str, entity_id: str) -> None: ...
44
44
  async def async_check_proximity_state_change(self, event: Event[EventStateChangedData]) -> None: ...
@@ -38,7 +38,7 @@ async def async_validate_coordinates(hass: HomeAssistant, api_key: str, latitude
38
38
 
39
39
  class PurpleAirConfigFlow(ConfigFlow, domain=DOMAIN):
40
40
  VERSION: int
41
- _flow_data: Incomplete
41
+ _flow_data: dict[str, Any]
42
42
  def __init__(self) -> None: ...
43
43
  @staticmethod
44
44
  def async_get_options_flow(config_entry: ConfigEntry) -> PurpleAirOptionsFlowHandler: ...
@@ -49,7 +49,7 @@ class PurpleAirConfigFlow(ConfigFlow, domain=DOMAIN):
49
49
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
50
50
 
51
51
  class PurpleAirOptionsFlowHandler(OptionsFlow):
52
- _flow_data: Incomplete
52
+ _flow_data: dict[str, Any]
53
53
  def __init__(self) -> None: ...
54
54
  @property
55
55
  def settings_schema(self) -> vol.Schema: ...
@@ -8,7 +8,7 @@ from typing import Any
8
8
  class PushBulletNotificationProvider(Listener):
9
9
  hass: Incomplete
10
10
  pushbullet: Incomplete
11
- data: Incomplete
11
+ data: dict[str, Any]
12
12
  daemon: bool
13
13
  def __init__(self, hass: HomeAssistant, pushbullet: PushBullet) -> None: ...
14
14
  def update_data(self, data: dict[str, Any]) -> None: ...
@@ -52,8 +52,8 @@ class QueueDataUpdateCoordinator(RadarrDataUpdateCoordinator):
52
52
 
53
53
  class CalendarUpdateCoordinator(RadarrDataUpdateCoordinator[None]):
54
54
  _update_interval: Incomplete
55
- event: Incomplete
56
- _events: Incomplete
55
+ event: RadarrEvent | None
56
+ _events: list[RadarrEvent]
57
57
  def __init__(self, hass: HomeAssistant, host_configuration: PyArrHostConfiguration, api_client: RadarrClient) -> None: ...
58
58
  async def _fetch_data(self) -> None: ...
59
59
  async def async_get_events(self, start_date: datetime, end_date: datetime) -> list[RadarrEvent]: ...
@@ -1,5 +1,4 @@
1
1
  from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
2
- from _typeshed import Incomplete
3
2
  from homeassistant.components import usb as usb
4
3
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
5
4
  from homeassistant.const import CONF_DEVICE as CONF_DEVICE, CONF_MAC as CONF_MAC, CONF_NAME as CONF_NAME
@@ -11,8 +10,8 @@ def _format_id(value: str | int) -> str: ...
11
10
  def _generate_unique_id(info: ListPortInfo | usb.UsbServiceInfo) -> str: ...
12
11
 
13
12
  class RainforestRavenConfigFlow(ConfigFlow, domain=DOMAIN):
14
- _dev_path: Incomplete
15
- _meter_macs: Incomplete
13
+ _dev_path: str | None
14
+ _meter_macs: set[str]
16
15
  def __init__(self) -> None: ...
17
16
  async def _validate_device(self, dev_path: str) -> None: ...
18
17
  async def async_step_meters(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -14,7 +14,7 @@ SIGNAL_REBOOT_REQUESTED: str
14
14
  class RainMachineDataUpdateCoordinator(DataUpdateCoordinator[dict]):
15
15
  config_entry: RainMachineConfigEntry
16
16
  _rebooting: bool
17
- _signal_handler_unsubs: Incomplete
17
+ _signal_handler_unsubs: list[Callable[[], None]]
18
18
  signal_reboot_completed: Incomplete
19
19
  signal_reboot_requested: Incomplete
20
20
  def __init__(self, hass: HomeAssistant, *, entry: RainMachineConfigEntry, name: str, api_category: str, update_interval: timedelta, update_method: Callable[[], Coroutine[Any, Any, dict]]) -> None: ...
@@ -40,8 +40,8 @@ async def async_setup_entry(hass: HomeAssistant, entry: RainMachineConfigEntry,
40
40
 
41
41
  class TimeRemainingSensor(RainMachineEntity, RestoreSensor):
42
42
  entity_description: RainMachineSensorCompletionTimerDescription
43
- _current_run_state: Incomplete
44
- _previous_run_state: Incomplete
43
+ _current_run_state: RunStates | None
44
+ _previous_run_state: RunStates | None
45
45
  def __init__(self, entry: ConfigEntry, data: RainMachineData, description: RainMachineSensorCompletionTimerDescription) -> None: ...
46
46
  @property
47
47
  def activity_data(self) -> dict[str, Any]: ...
@@ -17,7 +17,7 @@ class ReCollectWasteCalendar(ReCollectWasteEntity, CalendarEntity):
17
17
  _attr_name: Incomplete
18
18
  _attr_translation_key: str
19
19
  _attr_unique_id: Incomplete
20
- _event: Incomplete
20
+ _event: CalendarEvent | None
21
21
  def __init__(self, coordinator: DataUpdateCoordinator[list[PickupEvent]], entry: ConfigEntry) -> None: ...
22
22
  @property
23
23
  def event(self) -> CalendarEvent | None: ...
@@ -1,4 +1,6 @@
1
1
  import asyncio
2
+ import psutil_home_assistant as ha_psutil
3
+ import queue
2
4
  import threading
3
5
  from . import migration as migration, statistics as statistics
4
6
  from .const import DB_WORKER_PREFIX as DB_WORKER_PREFIX, DOMAIN as DOMAIN, KEEPALIVE_TIME as KEEPALIVE_TIME, LAST_REPORTED_SCHEMA_VERSION as LAST_REPORTED_SCHEMA_VERSION, MARIADB_PYMYSQL_URL_PREFIX as MARIADB_PYMYSQL_URL_PREFIX, MARIADB_URL_PREFIX as MARIADB_URL_PREFIX, MAX_QUEUE_BACKLOG_MIN_VALUE as MAX_QUEUE_BACKLOG_MIN_VALUE, MIN_AVAILABLE_MEMORY_FOR_QUEUE_BACKLOG as MIN_AVAILABLE_MEMORY_FOR_QUEUE_BACKLOG, MYSQLDB_PYMYSQL_URL_PREFIX as MYSQLDB_PYMYSQL_URL_PREFIX, MYSQLDB_URL_PREFIX as MYSQLDB_URL_PREFIX, SQLITE_MAX_BIND_VARS as SQLITE_MAX_BIND_VARS, SQLITE_URL_PREFIX as SQLITE_URL_PREFIX, SupportedDialect as SupportedDialect
@@ -26,6 +28,7 @@ from homeassistant.helpers.start import async_at_started as async_at_started
26
28
  from homeassistant.helpers.typing import UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
27
29
  from homeassistant.util.enum import try_parse_enum as try_parse_enum
28
30
  from homeassistant.util.event_type import EventType as EventType
31
+ from propcache import cached_property
29
32
  from sqlalchemy.engine import Engine as Engine
30
33
  from sqlalchemy.engine.interfaces import DBAPIConnection as DBAPIConnection
31
34
  from sqlalchemy.orm.session import Session as Session
@@ -49,26 +52,26 @@ MAX_DB_EXECUTOR_WORKERS: Incomplete
49
52
  class Recorder(threading.Thread):
50
53
  stop_requested: bool
51
54
  hass: Incomplete
52
- thread_id: Incomplete
53
- recorder_and_worker_thread_ids: Incomplete
55
+ thread_id: int | None
56
+ recorder_and_worker_thread_ids: set[int]
54
57
  auto_purge: Incomplete
55
58
  auto_repack: Incomplete
56
59
  keep_days: Incomplete
57
60
  is_running: bool
58
- _hass_started: Incomplete
61
+ _hass_started: asyncio.Future[object]
59
62
  commit_interval: Incomplete
60
- _queue: Incomplete
63
+ _queue: queue.SimpleQueue[RecorderTask | Event]
61
64
  db_url: Incomplete
62
65
  db_max_retries: Incomplete
63
66
  db_retry_wait: Incomplete
64
- database_engine: Incomplete
65
- async_db_connected: Incomplete
66
- async_db_ready: Incomplete
67
+ database_engine: DatabaseEngine | None
68
+ async_db_connected: asyncio.Future[bool]
69
+ async_db_ready: asyncio.Future[bool]
67
70
  async_recorder_ready: Incomplete
68
71
  _queue_watch: Incomplete
69
- engine: Incomplete
70
- max_backlog: Incomplete
71
- _psutil: Incomplete
72
+ engine: Engine | None
73
+ max_backlog: int
74
+ _psutil: ha_psutil.PsutilWrapper | None
72
75
  entity_filter: Incomplete
73
76
  exclude_event_types: Incomplete
74
77
  schema_version: int
@@ -81,26 +84,27 @@ class Recorder(threading.Thread):
81
84
  states_meta_manager: Incomplete
82
85
  state_attributes_manager: Incomplete
83
86
  statistics_meta_manager: Incomplete
84
- event_session: Incomplete
85
- _get_session: Incomplete
86
- _completed_first_database_setup: Incomplete
87
+ event_session: Session | None
88
+ _get_session: Callable[[], Session] | None
89
+ _completed_first_database_setup: bool | None
87
90
  migration_in_progress: bool
88
91
  migration_is_live: bool
89
92
  use_legacy_events_index: bool
90
- _database_lock_task: Incomplete
91
- _db_executor: Incomplete
92
- _event_listener: Incomplete
93
- _queue_watcher: Incomplete
94
- _keep_alive_listener: Incomplete
95
- _commit_listener: Incomplete
96
- _periodic_listener: Incomplete
97
- _nightly_listener: Incomplete
98
- _dialect_name: Incomplete
93
+ _database_lock_task: DatabaseLockTask | None
94
+ _db_executor: DBInterruptibleThreadPoolExecutor | None
95
+ _event_listener: CALLBACK_TYPE | None
96
+ _queue_watcher: CALLBACK_TYPE | None
97
+ _keep_alive_listener: CALLBACK_TYPE | None
98
+ _commit_listener: CALLBACK_TYPE | None
99
+ _periodic_listener: CALLBACK_TYPE | None
100
+ _nightly_listener: CALLBACK_TYPE | None
101
+ _dialect_name: SupportedDialect | None
99
102
  enabled: bool
100
103
  max_bind_vars: Incomplete
101
104
  def __init__(self, hass: HomeAssistant, auto_purge: bool, auto_repack: bool, keep_days: int, commit_interval: int, uri: str, db_max_retries: int, db_retry_wait: int, entity_filter: Callable[[str], bool] | None, exclude_event_types: set[EventType[Any] | str]) -> None: ...
102
105
  @property
103
106
  def backlog(self) -> int: ...
107
+ @cached_property
104
108
  def dialect_name(self) -> SupportedDialect | None: ...
105
109
  @property
106
110
  def _using_file_sqlite(self) -> bool: ...
@@ -6,7 +6,7 @@ from typing import Any
6
6
  def _worker_with_shutdown_hook(shutdown_hook: Callable[[], None], recorder_and_worker_thread_ids: set[int], *args: Any, **kwargs: Any) -> None: ...
7
7
 
8
8
  class DBInterruptibleThreadPoolExecutor(InterruptibleThreadPoolExecutor):
9
- _shutdown_hook: Incomplete
9
+ _shutdown_hook: Callable[[], None]
10
10
  recorder_and_worker_thread_ids: Incomplete
11
11
  def __init__(self, recorder_and_worker_thread_ids: set[int], *args: Any, **kwargs: Any) -> None: ...
12
12
  def _adjust_thread_count(self) -> None: ...
@@ -12,11 +12,11 @@ class LegacyLazyState(State):
12
12
  _row: Incomplete
13
13
  entity_id: Incomplete
14
14
  state: Incomplete
15
- _attributes: Incomplete
16
- _last_updated_ts: Incomplete
17
- _last_changed_ts: Incomplete
18
- _last_reported_ts: Incomplete
19
- _context: Incomplete
15
+ _attributes: dict[str, Any] | None
16
+ _last_updated_ts: float | None
17
+ _last_changed_ts: float | None
18
+ _last_reported_ts: float | None
19
+ _context: Context | None
20
20
  attr_cache: Incomplete
21
21
  def __init__(self, row: Row, attr_cache: dict[str, dict[str, Any]], start_time: datetime | None, entity_id: str | None = None) -> None: ...
22
22
  @property
@@ -3,6 +3,7 @@ from _typeshed import Incomplete
3
3
  from datetime import datetime
4
4
  from homeassistant.const import COMPRESSED_STATE_ATTRIBUTES as COMPRESSED_STATE_ATTRIBUTES, COMPRESSED_STATE_LAST_CHANGED as COMPRESSED_STATE_LAST_CHANGED, COMPRESSED_STATE_LAST_UPDATED as COMPRESSED_STATE_LAST_UPDATED, COMPRESSED_STATE_STATE as COMPRESSED_STATE_STATE
5
5
  from homeassistant.core import Context as Context, State as State
6
+ from propcache import cached_property
6
7
  from sqlalchemy.engine.row import Row as Row
7
8
  from typing import Any
8
9
 
@@ -15,19 +16,28 @@ class LazyState(State):
15
16
  _row: Incomplete
16
17
  entity_id: Incomplete
17
18
  state: Incomplete
18
- _attributes: Incomplete
19
- _last_updated_ts: Incomplete
19
+ _attributes: dict[str, Any] | None
20
+ _last_updated_ts: float | None
20
21
  attr_cache: Incomplete
21
22
  context: Incomplete
22
23
  def __init__(self, row: Row, attr_cache: dict[str, dict[str, Any]], start_time_ts: float | None, entity_id: str, state: str, last_updated_ts: float | None, no_attributes: bool) -> None: ...
24
+ @cached_property
23
25
  def attributes(self) -> dict[str, Any]: ...
26
+ @cached_property
24
27
  def _last_changed_ts(self) -> float | None: ...
28
+ @cached_property
25
29
  def last_changed(self) -> datetime: ...
30
+ @cached_property
26
31
  def _last_reported_ts(self) -> float | None: ...
32
+ @cached_property
27
33
  def last_reported(self) -> datetime: ...
34
+ @cached_property
28
35
  def last_updated(self) -> datetime: ...
36
+ @cached_property
29
37
  def last_updated_timestamp(self) -> float: ...
38
+ @cached_property
30
39
  def last_changed_timestamp(self) -> float: ...
40
+ @cached_property
31
41
  def last_reported_timestamp(self) -> float: ...
32
42
  def as_dict(self) -> dict[str, Any]: ...
33
43
 
@@ -7,7 +7,7 @@ from typing import Any
7
7
  class BaseTableManager[_DataT]:
8
8
  _id_map: LRU[EventType[Any] | str, int]
9
9
  recorder: Incomplete
10
- _pending: Incomplete
10
+ _pending: dict[EventType[Any] | str, _DataT]
11
11
  def __init__(self, recorder: Recorder) -> None: ...
12
12
  def get_from_cache(self, data: str) -> int | None: ...
13
13
  def get_pending(self, shared_data: EventType[Any] | str) -> _DataT | None: ...
@@ -4,18 +4,18 @@ from ..db_schema import EventTypes as EventTypes
4
4
  from ..queries import find_event_type_ids as find_event_type_ids
5
5
  from ..tasks import RefreshEventTypesTask as RefreshEventTypesTask
6
6
  from ..util import execute_stmt_lambda_element as execute_stmt_lambda_element
7
- from _typeshed import Incomplete
8
7
  from collections.abc import Iterable
9
8
  from homeassistant.core import Event as Event
10
9
  from homeassistant.util.collection import chunked_or_all as chunked_or_all
11
10
  from homeassistant.util.event_type import EventType as EventType
11
+ from lru import LRU
12
12
  from sqlalchemy.orm.session import Session as Session
13
13
  from typing import Any
14
14
 
15
15
  CACHE_SIZE: int
16
16
 
17
17
  class EventTypeManager(BaseLRUTableManager[EventTypes]):
18
- _non_existent_event_types: Incomplete
18
+ _non_existent_event_types: LRU[EventType[Any] | str, None]
19
19
  def __init__(self, recorder: Recorder) -> None: ...
20
20
  def load(self, events: list[Event], session: Session) -> None: ...
21
21
  def get(self, event_type: EventType[Any] | str, session: Session, from_recorder: bool = False) -> int | None: ...
@@ -5,8 +5,8 @@ from sqlalchemy.orm.session import Session as Session
5
5
 
6
6
  class RecorderRunsManager:
7
7
  _recording_start: Incomplete
8
- _current_run_info: Incomplete
9
- _first_run: Incomplete
8
+ _current_run_info: RecorderRuns | None
9
+ _first_run: RecorderRuns | None
10
10
  def __init__(self) -> None: ...
11
11
  @property
12
12
  def recording_start(self) -> datetime: ...
@@ -1,14 +1,13 @@
1
1
  from ..db_schema import States as States
2
2
  from ..queries import find_oldest_state as find_oldest_state
3
3
  from ..util import execute_stmt_lambda_element as execute_stmt_lambda_element
4
- from _typeshed import Incomplete
5
4
  from sqlalchemy.orm.session import Session as Session
6
5
 
7
6
  class StatesManager:
8
- _pending: Incomplete
9
- _last_committed_id: Incomplete
10
- _last_reported: Incomplete
11
- _oldest_ts: Incomplete
7
+ _pending: dict[str, States]
8
+ _last_committed_id: dict[str, int]
9
+ _last_reported: dict[int, float]
10
+ _oldest_ts: float | None
12
11
  def __init__(self) -> None: ...
13
12
  @property
14
13
  def oldest_ts(self) -> float | None: ...
@@ -3,6 +3,7 @@ from ..db_schema import StatisticsMeta as StatisticsMeta
3
3
  from ..models import StatisticMetaData as StatisticMetaData
4
4
  from ..util import execute_stmt_lambda_element as execute_stmt_lambda_element
5
5
  from _typeshed import Incomplete
6
+ from lru import LRU
6
7
  from sqlalchemy.orm.session import Session as Session
7
8
  from sqlalchemy.sql.lambdas import StatementLambdaElement as StatementLambdaElement
8
9
  from typing import Final, Literal
@@ -22,7 +23,7 @@ def _generate_get_metadata_stmt(statistic_ids: set[str] | None = None, statistic
22
23
 
23
24
  class StatisticsMetaManager:
24
25
  recorder: Incomplete
25
- _stat_id_to_id_meta: Incomplete
26
+ _stat_id_to_id_meta: LRU[str, tuple[int, StatisticMetaData]]
26
27
  def __init__(self, recorder: Recorder) -> None: ...
27
28
  def _clear_cache(self, statistic_ids: list[str]) -> None: ...
28
29
  def _get_from_database(self, session: Session, statistic_ids: set[str] | None = None, statistic_type: Literal['mean', 'sum'] | None = None, statistic_source: str | None = None) -> dict[str, tuple[int, StatisticMetaData]]: ...
@@ -9,6 +9,7 @@ from homeassistant.helpers.entity_component import EntityComponent as EntityComp
9
9
  from homeassistant.helpers.typing import ConfigType as ConfigType
10
10
  from homeassistant.loader import bind_hass as bind_hass
11
11
  from homeassistant.util.hass_dict import HassKey as HassKey
12
+ from propcache import cached_property
12
13
  from typing import Any
13
14
 
14
15
  _LOGGER: Incomplete
@@ -51,7 +52,6 @@ async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: .
51
52
 
52
53
  class RemoteEntityDescription(ToggleEntityDescription, frozen_or_thawed=True):
53
54
  def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=...) -> None: ...
54
- def __replace__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=...) -> None: ...
55
55
 
56
56
  CACHED_PROPERTIES_WITH_ATTR_: Incomplete
57
57
 
@@ -60,8 +60,11 @@ class RemoteEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_)
60
60
  _attr_activity_list: list[str] | None
61
61
  _attr_current_activity: str | None
62
62
  _attr_supported_features: RemoteEntityFeature
63
+ @cached_property
63
64
  def supported_features(self) -> RemoteEntityFeature: ...
65
+ @cached_property
64
66
  def current_activity(self) -> str | None: ...
67
+ @cached_property
65
68
  def activity_list(self) -> list[str] | None: ...
66
69
  @property
67
70
  def state_attributes(self) -> dict[str, Any] | None: ...
@@ -11,7 +11,7 @@ REAUTH_SCHEMA: Incomplete
11
11
 
12
12
  class RenaultFlowHandler(ConfigFlow, domain=DOMAIN):
13
13
  renault_hub: RenaultHub
14
- renault_config: Incomplete
14
+ renault_config: dict[str, Any]
15
15
  def __init__(self) -> None: ...
16
16
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
17
17
  async def async_step_kamereon(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -16,8 +16,8 @@ LOGGER: Incomplete
16
16
  class RenaultHub:
17
17
  _hass: Incomplete
18
18
  _client: Incomplete
19
- _account: Incomplete
20
- _vehicles: Incomplete
19
+ _account: RenaultAccount | None
20
+ _vehicles: dict[str, RenaultVehicleProxy]
21
21
  def __init__(self, hass: HomeAssistant, locale: str) -> None: ...
22
22
  async def attempt_login(self, username: str, password: str) -> bool: ...
23
23
  async def async_initialise(self, config_entry: ConfigEntry) -> None: ...
@@ -28,7 +28,7 @@ class RenaultVehicleProxy:
28
28
  _vehicle: Incomplete
29
29
  _details: Incomplete
30
30
  _device_info: Incomplete
31
- coordinators: Incomplete
31
+ coordinators: dict[str, RenaultDataUpdateCoordinator]
32
32
  hvac_target_temperature: int
33
33
  _scan_interval: Incomplete
34
34
  def __init__(self, hass: HomeAssistant, vehicle: RenaultVehicle, details: models.KamereonVehicleDetails, scan_interval: timedelta) -> None: ...
@@ -3,6 +3,7 @@ from .exceptions import PasswordIncompatible as PasswordIncompatible, ReolinkExc
3
3
  from .host import ReolinkHost as ReolinkHost
4
4
  from .services import async_setup_services as async_setup_services
5
5
  from .util import ReolinkConfigEntry as ReolinkConfigEntry, ReolinkData as ReolinkData, get_device_uid_and_ch as get_device_uid_and_ch
6
+ from .views import PlaybackProxyView as PlaybackProxyView
6
7
  from _typeshed import Incomplete
7
8
  from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
8
9
  from homeassistant.const import CONF_PORT as CONF_PORT, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
@@ -22,9 +22,9 @@ class ReolinkOptionsFlowHandler(OptionsFlow):
22
22
 
23
23
  class ReolinkFlowHandler(ConfigFlow, domain=DOMAIN):
24
24
  VERSION: int
25
- _host: Incomplete
25
+ _host: str | None
26
26
  _username: str
27
- _password: Incomplete
27
+ _password: str | None
28
28
  def __init__(self) -> None: ...
29
29
  @staticmethod
30
30
  def async_get_options_flow(config_entry: ReolinkConfigEntry) -> ReolinkOptionsFlowHandler: ...
@@ -1,7 +1,9 @@
1
+ import asyncio
1
2
  from .const import CONF_USE_HTTPS as CONF_USE_HTTPS, DOMAIN as DOMAIN
2
3
  from .exceptions import PasswordIncompatible as PasswordIncompatible, ReolinkSetupException as ReolinkSetupException, ReolinkWebhookException as ReolinkWebhookException, UserNotAdmin as UserNotAdmin
3
4
  from _typeshed import Incomplete
4
5
  from aiohttp.web import Request as Request
6
+ from collections import defaultdict
5
7
  from collections.abc import Mapping
6
8
  from homeassistant.components import webhook as webhook
7
9
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_PROTOCOL as CONF_PROTOCOL, CONF_USERNAME as CONF_USERNAME
@@ -28,15 +30,15 @@ BATTERY_WAKE_UPDATE_INTERVAL: int
28
30
  _LOGGER: Incomplete
29
31
 
30
32
  class ReolinkHost:
31
- _hass: Incomplete
33
+ _hass: HomeAssistant
32
34
  _unique_id: str
33
35
  _api: Incomplete
34
- last_wake: int
35
- update_cmd: Incomplete
36
- firmware_ch_list: Incomplete
36
+ last_wake: float
37
+ update_cmd: defaultdict[str, defaultdict[int | None, int]]
38
+ firmware_ch_list: list[int | None]
37
39
  starting: bool
38
40
  credential_errors: int
39
- webhook_id: Incomplete
41
+ webhook_id: str | None
40
42
  _onvif_push_supported: bool
41
43
  _onvif_long_poll_supported: bool
42
44
  _base_url: str
@@ -44,13 +46,13 @@ class ReolinkHost:
44
46
  _webhook_reachable: bool
45
47
  _long_poll_received: bool
46
48
  _long_poll_error: bool
47
- _cancel_poll: Incomplete
48
- _cancel_tcp_push_check: Incomplete
49
- _cancel_onvif_check: Incomplete
50
- _cancel_long_poll_check: Incomplete
49
+ _cancel_poll: CALLBACK_TYPE | None
50
+ _cancel_tcp_push_check: CALLBACK_TYPE | None
51
+ _cancel_onvif_check: CALLBACK_TYPE | None
52
+ _cancel_long_poll_check: CALLBACK_TYPE | None
51
53
  _poll_job: Incomplete
52
54
  _fast_poll_error: bool
53
- _long_poll_task: Incomplete
55
+ _long_poll_task: asyncio.Task | None
54
56
  _lost_subscription: bool
55
57
  def __init__(self, hass: HomeAssistant, config: Mapping[str, Any], options: Mapping[str, Any]) -> None: ...
56
58
  def async_register_update_cmd(self, cmd: str, channel: int | None = None) -> None: ...
@@ -1,6 +1,6 @@
1
1
  from .const import DOMAIN as DOMAIN
2
- from .host import ReolinkHost as ReolinkHost
3
- from .util import ReolinkConfigEntry as ReolinkConfigEntry
2
+ from .util import get_host as get_host
3
+ from .views import async_generate_playback_proxy_url as async_generate_playback_proxy_url
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.components.camera import DynamicStreamSettings as DynamicStreamSettings
6
6
  from homeassistant.components.media_player import MediaClass as MediaClass, MediaType as MediaType
@@ -13,7 +13,6 @@ _LOGGER: Incomplete
13
13
 
14
14
  async def async_get_media_source(hass: HomeAssistant) -> ReolinkVODMediaSource: ...
15
15
  def res_name(stream: str) -> str: ...
16
- def get_host(hass: HomeAssistant, config_entry_id: str) -> ReolinkHost: ...
17
16
 
18
17
  class ReolinkVODMediaSource(MediaSource):
19
18
  name: str
@@ -34,9 +34,9 @@ class ReolinkUpdateBaseEntity(CoordinatorEntity[DataUpdateCoordinator[None]], Up
34
34
  _attr_release_url: str
35
35
  _channel: Incomplete
36
36
  _host: Incomplete
37
- _cancel_update: Incomplete
38
- _cancel_resume: Incomplete
39
- _cancel_progress: Incomplete
37
+ _cancel_update: CALLBACK_TYPE | None
38
+ _cancel_resume: CALLBACK_TYPE | None
39
+ _cancel_progress: CALLBACK_TYPE | None
40
40
  _installing: bool
41
41
  _reolink_data: Incomplete
42
42
  def __init__(self, reolink_data: ReolinkData, channel: int | None, coordinator: DataUpdateCoordinator[None]) -> None: ...
@@ -3,6 +3,7 @@ from .host import ReolinkHost as ReolinkHost
3
3
  from collections.abc import Awaitable, Callable as Callable, Coroutine
4
4
  from dataclasses import dataclass
5
5
  from homeassistant import config_entries as config_entries
6
+ from homeassistant.components.media_source import Unresolvable as Unresolvable
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant
7
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
8
9
  from homeassistant.helpers import device_registry as dr
@@ -18,6 +19,7 @@ class ReolinkData:
18
19
  def __init__(self, host, device_coordinator, firmware_coordinator) -> None: ...
19
20
 
20
21
  def is_connected(hass: HomeAssistant, config_entry: config_entries.ConfigEntry) -> bool: ...
22
+ def get_host(hass: HomeAssistant, config_entry_id: str) -> ReolinkHost: ...
21
23
  def get_device_uid_and_ch(device: dr.DeviceEntry, host: ReolinkHost) -> tuple[list[str], int | None, bool]: ...
22
24
  T = TypeVar('T')
23
25
  P = ParamSpec('P')
@@ -0,0 +1,21 @@
1
+ from .util import get_host as get_host
2
+ from _typeshed import Incomplete
3
+ from aiohttp import web
4
+ from homeassistant.components.http import HomeAssistantView as HomeAssistantView
5
+ from homeassistant.components.media_source import Unresolvable as Unresolvable
6
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
+ from homeassistant.util.ssl import SSLCipherList as SSLCipherList
9
+
10
+ _LOGGER: Incomplete
11
+
12
+ def async_generate_playback_proxy_url(config_entry_id: str, channel: int, filename: str, stream_res: str, vod_type: str) -> str: ...
13
+
14
+ class PlaybackProxyView(HomeAssistantView):
15
+ requires_auth: bool
16
+ url: str
17
+ name: str
18
+ hass: Incomplete
19
+ session: Incomplete
20
+ def __init__(self, hass: HomeAssistant) -> None: ...
21
+ async def get(self, request: web.Request, config_entry_id: str, channel: str, stream_res: str, vod_type: str, filename: str, retry: int = 2) -> web.StreamResponse: ...
@@ -22,7 +22,7 @@ async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_ad
22
22
 
23
23
  class RestBinarySensor(ManualTriggerEntity, RestEntity, BinarySensorEntity):
24
24
  _previous_data: Incomplete
25
- _value_template: Incomplete
25
+ _value_template: Template | None
26
26
  def __init__(self, hass: HomeAssistant, coordinator: DataUpdateCoordinator[None] | None, rest: RestData, config: ConfigType, trigger_entity_config: ConfigType) -> None: ...
27
27
  @property
28
28
  def available(self) -> bool: ...