homeassistant-stubs 2024.9.3__py3-none-any.whl → 2024.10.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (858) hide show
  1. homeassistant-stubs/components/__init__.pyi +0 -8
  2. homeassistant-stubs/components/abode/binary_sensor.pyi +1 -1
  3. homeassistant-stubs/components/accuweather/sensor.pyi +1 -1
  4. homeassistant-stubs/components/acmeda/__init__.pyi +1 -0
  5. homeassistant-stubs/components/acmeda/cover.pyi +2 -2
  6. homeassistant-stubs/components/acmeda/{base.pyi → entity.pyi} +1 -1
  7. homeassistant-stubs/components/acmeda/sensor.pyi +2 -2
  8. homeassistant-stubs/components/actiontec/device_tracker.pyi +1 -1
  9. homeassistant-stubs/components/air_quality/__init__.pyi +2 -0
  10. homeassistant-stubs/components/airgradient/__init__.pyi +2 -10
  11. homeassistant-stubs/components/airgradient/button.pyi +4 -4
  12. homeassistant-stubs/components/airgradient/coordinator.pyi +13 -11
  13. homeassistant-stubs/components/airgradient/diagnostics.pyi +5 -0
  14. homeassistant-stubs/components/airgradient/number.pyi +2 -3
  15. homeassistant-stubs/components/airgradient/select.pyi +2 -3
  16. homeassistant-stubs/components/airgradient/sensor.pyi +9 -9
  17. homeassistant-stubs/components/airgradient/switch.pyi +2 -3
  18. homeassistant-stubs/components/airgradient/update.pyi +2 -3
  19. homeassistant-stubs/components/airnow/__init__.pyi +0 -1
  20. homeassistant-stubs/components/airnow/const.pyi +4 -1
  21. homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
  22. homeassistant-stubs/components/airnow/sensor.pyi +2 -1
  23. homeassistant-stubs/components/airvisual/__init__.pyi +6 -14
  24. homeassistant-stubs/components/airvisual/diagnostics.pyi +3 -4
  25. homeassistant-stubs/components/airvisual/entity.pyi +13 -0
  26. homeassistant-stubs/components/airvisual/sensor.pyi +4 -3
  27. homeassistant-stubs/components/airvisual_pro/__init__.pyi +2 -11
  28. homeassistant-stubs/components/airvisual_pro/entity.pyi +12 -0
  29. homeassistant-stubs/components/airvisual_pro/sensor.pyi +2 -1
  30. homeassistant-stubs/components/airzone/diagnostics.pyi +1 -1
  31. homeassistant-stubs/components/airzone_cloud/diagnostics.pyi +1 -1
  32. homeassistant-stubs/components/airzone_cloud/sensor.pyi +1 -1
  33. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +2 -0
  34. homeassistant-stubs/components/alert/__init__.pyi +3 -43
  35. homeassistant-stubs/components/alert/entity.pyi +45 -0
  36. homeassistant-stubs/components/alexa/capabilities.pyi +2 -1
  37. homeassistant-stubs/components/alexa/config.pyi +1 -1
  38. homeassistant-stubs/components/alexa/smart_home.pyi +1 -1
  39. homeassistant-stubs/components/amazon_polly/tts.pyi +3 -1
  40. homeassistant-stubs/components/amberelectric/__init__.pyi +5 -3
  41. homeassistant-stubs/components/amberelectric/binary_sensor.pyi +3 -3
  42. homeassistant-stubs/components/amberelectric/sensor.pyi +3 -3
  43. homeassistant-stubs/components/ambient_network/__init__.pyi +3 -3
  44. homeassistant-stubs/components/ambient_network/sensor.pyi +2 -3
  45. homeassistant-stubs/components/androidtv_remote/media_player.pyi +1 -2
  46. homeassistant-stubs/components/anova/__init__.pyi +3 -5
  47. homeassistant-stubs/components/anova/models.pyi +3 -0
  48. homeassistant-stubs/components/anova/sensor.pyi +2 -4
  49. homeassistant-stubs/components/anthemav/__init__.pyi +4 -3
  50. homeassistant-stubs/components/anthemav/media_player.pyi +2 -3
  51. homeassistant-stubs/components/apcupsd/__init__.pyi +3 -4
  52. homeassistant-stubs/components/apcupsd/binary_sensor.pyi +2 -4
  53. homeassistant-stubs/components/apcupsd/diagnostics.pyi +2 -4
  54. homeassistant-stubs/components/apcupsd/sensor.pyi +3 -3
  55. homeassistant-stubs/components/apple_tv/__init__.pyi +2 -19
  56. homeassistant-stubs/components/apple_tv/const.pyi +2 -0
  57. homeassistant-stubs/components/apple_tv/entity.pyi +21 -0
  58. homeassistant-stubs/components/apple_tv/media_player.pyi +2 -1
  59. homeassistant-stubs/components/apple_tv/remote.pyi +2 -1
  60. homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -2
  61. homeassistant-stubs/components/arris_tg2492lg/device_tracker.pyi +1 -1
  62. homeassistant-stubs/components/aruba/device_tracker.pyi +1 -1
  63. homeassistant-stubs/components/assist_pipeline/__init__.pyi +4 -3
  64. homeassistant-stubs/components/assist_pipeline/const.pyi +1 -0
  65. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
  66. homeassistant-stubs/components/assist_pipeline/repair_flows.pyi +11 -0
  67. homeassistant-stubs/components/assist_pipeline/select.pyi +1 -3
  68. homeassistant-stubs/components/assist_satellite/__init__.pyi +5 -0
  69. homeassistant-stubs/components/assist_satellite/connection_test.pyi +15 -0
  70. homeassistant-stubs/components/assist_satellite/const.pyi +12 -0
  71. homeassistant-stubs/components/assist_satellite/entity.pyi +88 -0
  72. homeassistant-stubs/components/assist_satellite/errors.pyi +4 -0
  73. homeassistant-stubs/components/assist_satellite/websocket_api.pyi +16 -0
  74. homeassistant-stubs/components/asuswrt/bridge.pyi +8 -1
  75. homeassistant-stubs/components/asuswrt/const.pyi +3 -0
  76. homeassistant-stubs/components/asuswrt/device_tracker.pyi +1 -3
  77. homeassistant-stubs/components/asuswrt/sensor.pyi +3 -2
  78. homeassistant-stubs/components/autarco/coordinator.pyi +6 -4
  79. homeassistant-stubs/components/autarco/sensor.pyi +18 -2
  80. homeassistant-stubs/components/automation/__init__.pyi +5 -3
  81. homeassistant-stubs/components/automation/config.pyi +6 -2
  82. homeassistant-stubs/components/automation/const.pyi +2 -0
  83. homeassistant-stubs/components/axis/hub/__init__.pyi +2 -0
  84. homeassistant-stubs/components/axis/hub/event_source.pyi +1 -1
  85. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +1 -0
  86. homeassistant-stubs/components/bang_olufsen/const.pyi +6 -0
  87. homeassistant-stubs/components/bang_olufsen/media_player.pyi +21 -4
  88. homeassistant-stubs/components/bang_olufsen/util.pyi +1 -0
  89. homeassistant-stubs/components/bang_olufsen/websocket.pyi +2 -1
  90. homeassistant-stubs/components/bayesian/binary_sensor.pyi +9 -4
  91. homeassistant-stubs/components/bayesian/const.pyi +1 -0
  92. homeassistant-stubs/components/bayesian/helpers.pyi +2 -1
  93. homeassistant-stubs/components/binary_sensor/__init__.pyi +2 -0
  94. homeassistant-stubs/components/blueprint/__init__.pyi +1 -1
  95. homeassistant-stubs/components/blueprint/importer.pyi +1 -1
  96. homeassistant-stubs/components/blueprint/models.pyi +4 -3
  97. homeassistant-stubs/components/blueprint/websocket_api.pyi +1 -0
  98. homeassistant-stubs/components/bluesound/__init__.pyi +25 -0
  99. homeassistant-stubs/components/bluesound/config_flow.pyi +24 -0
  100. homeassistant-stubs/components/bluesound/const.pyi +8 -0
  101. homeassistant-stubs/components/bluesound/media_player.pyi +136 -0
  102. homeassistant-stubs/components/bluesound/utils.pyi +3 -0
  103. homeassistant-stubs/components/bluetooth/manager.pyi +3 -0
  104. homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +1 -3
  105. homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +1 -1
  106. homeassistant-stubs/components/braviatv/entity.pyi +1 -1
  107. homeassistant-stubs/components/braviatv/media_player.pyi +1 -2
  108. homeassistant-stubs/components/bryant_evolution/config_flow.pyi +3 -1
  109. homeassistant-stubs/components/bthome/device_trigger.pyi +4 -3
  110. homeassistant-stubs/components/button/__init__.pyi +2 -0
  111. homeassistant-stubs/components/calendar/__init__.pyi +7 -5
  112. homeassistant-stubs/components/calendar/const.pyi +5 -0
  113. homeassistant-stubs/components/calendar/trigger.pyi +2 -1
  114. homeassistant-stubs/components/camera/__init__.pyi +4 -4
  115. homeassistant-stubs/components/camera/const.pyi +12 -2
  116. homeassistant-stubs/components/camera/media_source.pyi +2 -4
  117. homeassistant-stubs/components/cert_expiry/entity.pyi +8 -0
  118. homeassistant-stubs/components/cert_expiry/sensor.pyi +3 -8
  119. homeassistant-stubs/components/climate/__init__.pyi +6 -2
  120. homeassistant-stubs/components/climate/const.pyi +1 -0
  121. homeassistant-stubs/components/climate/intent.pyi +1 -3
  122. homeassistant-stubs/components/cloud/alexa_config.pyi +1 -1
  123. homeassistant-stubs/components/cloud/google_config.pyi +1 -1
  124. homeassistant-stubs/components/co2signal/__init__.pyi +0 -1
  125. homeassistant-stubs/components/co2signal/config_flow.pyi +2 -1
  126. homeassistant-stubs/components/config/automation.pyi +1 -1
  127. homeassistant-stubs/components/config/category_registry.pyi +1 -1
  128. homeassistant-stubs/components/config/device_registry.pyi +1 -1
  129. homeassistant-stubs/components/config/entity_registry.pyi +1 -2
  130. homeassistant-stubs/components/config/floor_registry.pyi +1 -1
  131. homeassistant-stubs/components/config/label_registry.pyi +1 -1
  132. homeassistant-stubs/components/config/scene.pyi +1 -1
  133. homeassistant-stubs/components/config/script.pyi +0 -1
  134. homeassistant-stubs/components/cover/__init__.pyi +3 -1
  135. homeassistant-stubs/components/cover/const.pyi +2 -0
  136. homeassistant-stubs/components/cover/intent.pyi +1 -4
  137. homeassistant-stubs/components/crownstone/{devices.pyi → entity.pyi} +1 -1
  138. homeassistant-stubs/components/crownstone/light.pyi +2 -2
  139. homeassistant-stubs/components/deako/__init__.pyi +14 -0
  140. homeassistant-stubs/components/deako/config_flow.pyi +6 -0
  141. homeassistant-stubs/components/deako/const.pyi +2 -0
  142. homeassistant-stubs/components/deako/light.pyi +32 -0
  143. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +3 -3
  144. homeassistant-stubs/components/deconz/binary_sensor.pyi +3 -3
  145. homeassistant-stubs/components/deconz/button.pyi +4 -4
  146. homeassistant-stubs/components/deconz/climate.pyi +3 -3
  147. homeassistant-stubs/components/deconz/cover.pyi +3 -3
  148. homeassistant-stubs/components/deconz/deconz_event.pyi +1 -1
  149. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -2
  150. homeassistant-stubs/components/deconz/fan.pyi +3 -3
  151. homeassistant-stubs/components/deconz/hub/__init__.pyi +2 -0
  152. homeassistant-stubs/components/deconz/light.pyi +3 -3
  153. homeassistant-stubs/components/deconz/lock.pyi +3 -3
  154. homeassistant-stubs/components/deconz/number.pyi +3 -3
  155. homeassistant-stubs/components/deconz/scene.pyi +3 -3
  156. homeassistant-stubs/components/deconz/select.pyi +6 -6
  157. homeassistant-stubs/components/deconz/sensor.pyi +6 -5
  158. homeassistant-stubs/components/deconz/siren.pyi +3 -3
  159. homeassistant-stubs/components/deconz/switch.pyi +3 -3
  160. homeassistant-stubs/components/demo/lock.pyi +1 -2
  161. homeassistant-stubs/components/demo/notify.pyi +1 -1
  162. homeassistant-stubs/components/derivative/sensor.pyi +1 -1
  163. homeassistant-stubs/components/device_automation/__init__.pyi +1 -1
  164. homeassistant-stubs/components/device_tracker/__init__.pyi +1 -1
  165. homeassistant-stubs/components/device_tracker/config_entry.pyi +30 -4
  166. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
  167. homeassistant-stubs/components/devolo_home_control/devolo_multi_level_switch.pyi +1 -1
  168. homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
  169. homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
  170. homeassistant-stubs/components/devolo_home_network/__init__.pyi +1 -1
  171. homeassistant-stubs/components/devolo_home_network/const.pyi +1 -0
  172. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -6
  173. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
  174. homeassistant-stubs/components/devolo_home_network/sensor.pyi +19 -14
  175. homeassistant-stubs/components/dhcp/__init__.pyi +7 -1
  176. homeassistant-stubs/components/discovergy/config_flow.pyi +1 -0
  177. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +0 -1
  178. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -2
  179. homeassistant-stubs/components/dlna_dms/media_source.pyi +1 -2
  180. homeassistant-stubs/components/downloader/__init__.pyi +1 -9
  181. homeassistant-stubs/components/downloader/config_flow.pyi +0 -1
  182. homeassistant-stubs/components/dsmr/const.pyi +1 -0
  183. homeassistant-stubs/components/dsmr/sensor.pyi +4 -2
  184. homeassistant-stubs/components/efergy/__init__.pyi +0 -9
  185. homeassistant-stubs/components/efergy/entity.pyi +11 -0
  186. homeassistant-stubs/components/efergy/sensor.pyi +2 -1
  187. homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
  188. homeassistant-stubs/components/elevenlabs/config_flow.pyi +8 -2
  189. homeassistant-stubs/components/elevenlabs/const.pyi +11 -0
  190. homeassistant-stubs/components/elevenlabs/tts.pyi +7 -3
  191. homeassistant-stubs/components/elkm1/__init__.pyi +1 -34
  192. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
  193. homeassistant-stubs/components/elkm1/binary_sensor.pyi +2 -1
  194. homeassistant-stubs/components/elkm1/climate.pyi +4 -1
  195. homeassistant-stubs/components/elkm1/entity.pyi +43 -0
  196. homeassistant-stubs/components/elkm1/light.pyi +2 -1
  197. homeassistant-stubs/components/elkm1/scene.pyi +2 -1
  198. homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
  199. homeassistant-stubs/components/elkm1/switch.pyi +19 -1
  200. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +3 -1
  201. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -0
  202. homeassistant-stubs/components/enphase_envoy/sensor.pyi +13 -1
  203. homeassistant-stubs/components/enphase_envoy/switch.pyi +1 -1
  204. homeassistant-stubs/components/esphome/__init__.pyi +3 -2
  205. homeassistant-stubs/components/esphome/assist_satellite.pyi +75 -0
  206. homeassistant-stubs/components/esphome/binary_sensor.pyi +3 -0
  207. homeassistant-stubs/components/esphome/const.pyi +1 -0
  208. homeassistant-stubs/components/esphome/entry_data.pyi +3 -2
  209. homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +49 -0
  210. homeassistant-stubs/components/esphome/manager.pyi +2 -9
  211. homeassistant-stubs/components/esphome/media_player.pyi +7 -1
  212. homeassistant-stubs/components/esphome/repairs.pyi +5 -0
  213. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +0 -7
  214. homeassistant-stubs/components/evil_genius_labs/entity.pyi +9 -0
  215. homeassistant-stubs/components/evil_genius_labs/light.pyi +1 -1
  216. homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
  217. homeassistant-stubs/components/evohome/const.pyi +5 -5
  218. homeassistant-stubs/components/fan/__init__.pyi +2 -0
  219. homeassistant-stubs/components/forecast_solar/coordinator.pyi +1 -1
  220. homeassistant-stubs/components/fritz/device_tracker.pyi +1 -3
  221. homeassistant-stubs/components/fritz/switch.pyi +1 -1
  222. homeassistant-stubs/components/fritzbox/__init__.pyi +1 -27
  223. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +1 -1
  224. homeassistant-stubs/components/fritzbox/button.pyi +1 -1
  225. homeassistant-stubs/components/fritzbox/climate.pyi +1 -1
  226. homeassistant-stubs/components/fritzbox/cover.pyi +1 -1
  227. homeassistant-stubs/components/fritzbox/entity.pyi +29 -0
  228. homeassistant-stubs/components/fritzbox/light.pyi +2 -2
  229. homeassistant-stubs/components/fritzbox/sensor.pyi +1 -1
  230. homeassistant-stubs/components/fritzbox/switch.pyi +1 -1
  231. homeassistant-stubs/components/frontend/__init__.pyi +1 -1
  232. homeassistant-stubs/components/frontend/storage.pyi +1 -1
  233. homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +2 -1
  234. homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +3 -1
  235. homeassistant-stubs/components/fujitsu_fglair/const.pyi +3 -1
  236. homeassistant-stubs/components/fully_kiosk/diagnostics.pyi +1 -1
  237. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +6 -6
  238. homeassistant-stubs/components/geo_location/__init__.pyi +2 -0
  239. homeassistant-stubs/components/google/calendar.pyi +20 -6
  240. homeassistant-stubs/components/google_cloud/__init__.pyi +10 -0
  241. homeassistant-stubs/components/google_cloud/config_flow.pyi +27 -0
  242. homeassistant-stubs/components/google_cloud/const.pyi +19 -0
  243. homeassistant-stubs/components/google_cloud/helpers.pyi +14 -0
  244. homeassistant-stubs/components/google_cloud/stt.pyi +34 -0
  245. homeassistant-stubs/components/google_cloud/tts.pyi +47 -0
  246. homeassistant-stubs/components/google_photos/__init__.pyi +3 -0
  247. homeassistant-stubs/components/google_photos/api.pyi +15 -0
  248. homeassistant-stubs/components/google_photos/application_credentials.pyi +6 -0
  249. homeassistant-stubs/components/google_photos/config_flow.pyi +19 -0
  250. homeassistant-stubs/components/google_photos/const.pyi +8 -0
  251. homeassistant-stubs/components/google_photos/coordinator.pyi +17 -0
  252. homeassistant-stubs/components/google_photos/media_source.pyi +54 -0
  253. homeassistant-stubs/components/google_photos/services.pyi +15 -0
  254. homeassistant-stubs/components/google_photos/types.pyi +4 -0
  255. homeassistant-stubs/components/group/__init__.pyi +1 -3
  256. homeassistant-stubs/components/group/button.pyi +1 -1
  257. homeassistant-stubs/components/group/const.pyi +7 -3
  258. homeassistant-stubs/components/group/cover.pyi +1 -1
  259. homeassistant-stubs/components/group/entity.pyi +1 -1
  260. homeassistant-stubs/components/group/event.pyi +1 -1
  261. homeassistant-stubs/components/group/fan.pyi +1 -1
  262. homeassistant-stubs/components/group/lock.pyi +2 -2
  263. homeassistant-stubs/components/group/media_player.pyi +1 -1
  264. homeassistant-stubs/components/group/notify.pyi +1 -1
  265. homeassistant-stubs/components/group/registry.pyi +2 -1
  266. homeassistant-stubs/components/group/sensor.pyi +1 -1
  267. homeassistant-stubs/components/group/switch.pyi +1 -1
  268. homeassistant-stubs/components/guardian/__init__.pyi +0 -24
  269. homeassistant-stubs/components/guardian/binary_sensor.pyi +2 -1
  270. homeassistant-stubs/components/guardian/button.pyi +2 -1
  271. homeassistant-stubs/components/guardian/entity.pyi +29 -0
  272. homeassistant-stubs/components/guardian/sensor.pyi +2 -1
  273. homeassistant-stubs/components/guardian/switch.pyi +2 -1
  274. homeassistant-stubs/components/guardian/util.pyi +1 -1
  275. homeassistant-stubs/components/guardian/valve.pyi +2 -1
  276. homeassistant-stubs/components/history/websocket_api.pyi +1 -2
  277. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -1
  278. homeassistant-stubs/components/homeassistant/triggers/time.pyi +9 -1
  279. homeassistant-stubs/components/homekit/config_flow.pyi +3 -3
  280. homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
  281. homeassistant-stubs/components/homekit/type_fans.pyi +1 -1
  282. homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
  283. homeassistant-stubs/components/homekit/type_lights.pyi +1 -1
  284. homeassistant-stubs/components/homekit/type_locks.pyi +1 -1
  285. homeassistant-stubs/components/homekit/type_media_players.pyi +1 -1
  286. homeassistant-stubs/components/homekit/type_security_systems.pyi +1 -1
  287. homeassistant-stubs/components/homekit/type_switches.pyi +0 -1
  288. homeassistant-stubs/components/homekit/util.pyi +1 -0
  289. homeassistant-stubs/components/homekit_controller/config_flow.pyi +0 -1
  290. homeassistant-stubs/components/homekit_controller/lock.pyi +3 -3
  291. homeassistant-stubs/components/homeworks/__init__.pyi +0 -15
  292. homeassistant-stubs/components/homeworks/binary_sensor.pyi +2 -1
  293. homeassistant-stubs/components/homeworks/button.pyi +2 -1
  294. homeassistant-stubs/components/homeworks/config_flow.pyi +6 -2
  295. homeassistant-stubs/components/homeworks/entity.pyi +16 -0
  296. homeassistant-stubs/components/homeworks/light.pyi +2 -1
  297. homeassistant-stubs/components/homeworks/util.pyi +1 -0
  298. homeassistant-stubs/components/http/__init__.pyi +1 -1
  299. homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -24
  300. homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +1 -1
  301. homeassistant-stubs/components/huawei_lte/button.pyi +1 -1
  302. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +3 -4
  303. homeassistant-stubs/components/huawei_lte/entity.pyi +31 -0
  304. homeassistant-stubs/components/huawei_lte/select.pyi +2 -1
  305. homeassistant-stubs/components/huawei_lte/sensor.pyi +2 -1
  306. homeassistant-stubs/components/huawei_lte/switch.pyi +1 -1
  307. homeassistant-stubs/components/humidifier/__init__.pyi +7 -2
  308. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
  309. homeassistant-stubs/components/husqvarna_automower/button.pyi +20 -6
  310. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +21 -0
  311. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
  312. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +1 -3
  313. homeassistant-stubs/components/husqvarna_automower/entity.pyi +16 -2
  314. homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -10
  315. homeassistant-stubs/components/husqvarna_automower/switch.pyi +12 -1
  316. homeassistant-stubs/components/image/__init__.pyi +1 -1
  317. homeassistant-stubs/components/image/const.pyi +4 -0
  318. homeassistant-stubs/components/image/media_source.pyi +2 -5
  319. homeassistant-stubs/components/ios/__init__.pyi +1 -15
  320. homeassistant-stubs/components/ios/const.pyi +16 -0
  321. homeassistant-stubs/components/ios/notify.pyi +1 -1
  322. homeassistant-stubs/components/ios/sensor.pyi +2 -2
  323. homeassistant-stubs/components/iotty/cover.pyi +36 -0
  324. homeassistant-stubs/components/iotty/entity.pyi +19 -0
  325. homeassistant-stubs/components/iotty/switch.pyi +2 -11
  326. homeassistant-stubs/components/iqvia/__init__.pyi +2 -15
  327. homeassistant-stubs/components/iqvia/entity.pyi +18 -0
  328. homeassistant-stubs/components/iqvia/sensor.pyi +1 -1
  329. homeassistant-stubs/components/isy994/const.pyi +2 -1
  330. homeassistant-stubs/components/jellyfin/browse_media.pyi +1 -2
  331. homeassistant-stubs/components/jellyfin/media_player.pyi +1 -2
  332. homeassistant-stubs/components/jellyfin/media_source.pyi +1 -1
  333. homeassistant-stubs/components/jellyfin/sensor.pyi +1 -0
  334. homeassistant-stubs/components/knx/__init__.pyi +4 -2
  335. homeassistant-stubs/components/knx/binary_sensor.pyi +2 -2
  336. homeassistant-stubs/components/knx/button.pyi +2 -2
  337. homeassistant-stubs/components/knx/climate.pyi +9 -3
  338. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  339. homeassistant-stubs/components/knx/const.pyi +9 -3
  340. homeassistant-stubs/components/knx/cover.pyi +2 -2
  341. homeassistant-stubs/components/knx/date.pyi +2 -2
  342. homeassistant-stubs/components/knx/datetime.pyi +2 -2
  343. homeassistant-stubs/components/knx/device_trigger.pyi +3 -5
  344. homeassistant-stubs/components/knx/diagnostics.pyi +1 -1
  345. homeassistant-stubs/components/knx/fan.pyi +2 -2
  346. homeassistant-stubs/components/knx/light.pyi +2 -2
  347. homeassistant-stubs/components/knx/notify.pyi +2 -2
  348. homeassistant-stubs/components/knx/number.pyi +2 -2
  349. homeassistant-stubs/components/knx/scene.pyi +2 -2
  350. homeassistant-stubs/components/knx/schema.pyi +8 -2
  351. homeassistant-stubs/components/knx/select.pyi +2 -2
  352. homeassistant-stubs/components/knx/sensor.pyi +2 -2
  353. homeassistant-stubs/components/knx/services.pyi +1 -1
  354. homeassistant-stubs/components/knx/switch.pyi +2 -2
  355. homeassistant-stubs/components/knx/text.pyi +2 -2
  356. homeassistant-stubs/components/knx/time.pyi +2 -2
  357. homeassistant-stubs/components/knx/weather.pyi +2 -2
  358. homeassistant-stubs/components/knx/websocket.pyi +1 -1
  359. homeassistant-stubs/components/lamarzocco/config_flow.pyi +5 -1
  360. homeassistant-stubs/components/laundrify/__init__.pyi +2 -0
  361. homeassistant-stubs/components/laundrify/binary_sensor.pyi +0 -1
  362. homeassistant-stubs/components/laundrify/config_flow.pyi +1 -0
  363. homeassistant-stubs/components/laundrify/sensor.pyi +41 -0
  364. homeassistant-stubs/components/lawn_mower/__init__.pyi +2 -0
  365. homeassistant-stubs/components/lcn/__init__.pyi +8 -30
  366. homeassistant-stubs/components/lcn/binary_sensor.pyi +7 -7
  367. homeassistant-stubs/components/lcn/climate.pyi +5 -5
  368. homeassistant-stubs/components/lcn/config_flow.pyi +8 -3
  369. homeassistant-stubs/components/lcn/const.pyi +1 -0
  370. homeassistant-stubs/components/lcn/cover.pyi +6 -6
  371. homeassistant-stubs/components/lcn/entity.pyi +28 -0
  372. homeassistant-stubs/components/lcn/helpers.pyi +2 -2
  373. homeassistant-stubs/components/lcn/light.pyi +6 -6
  374. homeassistant-stubs/components/lcn/scene.pyi +4 -5
  375. homeassistant-stubs/components/lcn/sensor.pyi +6 -6
  376. homeassistant-stubs/components/lcn/services.pyi +16 -0
  377. homeassistant-stubs/components/lcn/switch.pyi +6 -6
  378. homeassistant-stubs/components/lcn/websocket.pyi +3 -1
  379. homeassistant-stubs/components/lektrico/__init__.pyi +12 -0
  380. homeassistant-stubs/components/lektrico/button.pyi +27 -0
  381. homeassistant-stubs/components/lektrico/config_flow.pyi +24 -0
  382. homeassistant-stubs/components/lektrico/const.pyi +4 -0
  383. homeassistant-stubs/components/lektrico/coordinator.pyi +19 -0
  384. homeassistant-stubs/components/lektrico/entity.pyi +10 -0
  385. homeassistant-stubs/components/lektrico/number.pyi +29 -0
  386. homeassistant-stubs/components/lektrico/select.pyi +30 -0
  387. homeassistant-stubs/components/lektrico/sensor.pyi +34 -0
  388. homeassistant-stubs/components/lidarr/__init__.pyi +2 -11
  389. homeassistant-stubs/components/lidarr/entity.pyi +13 -0
  390. homeassistant-stubs/components/lidarr/sensor.pyi +2 -1
  391. homeassistant-stubs/components/light/__init__.pyi +4 -2
  392. homeassistant-stubs/components/linkplay/const.pyi +1 -1
  393. homeassistant-stubs/components/linkplay/media_player.pyi +9 -3
  394. homeassistant-stubs/components/linkplay/utils.pyi +1 -1
  395. homeassistant-stubs/components/local_todo/todo.pyi +1 -0
  396. homeassistant-stubs/components/lock/__init__.pyi +4 -2
  397. homeassistant-stubs/components/lock/const.pyi +11 -0
  398. homeassistant-stubs/components/lock/device_condition.pyi +2 -2
  399. homeassistant-stubs/components/lock/device_trigger.pyi +2 -2
  400. homeassistant-stubs/components/lock/reproduce_state.pyi +2 -2
  401. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -2
  402. homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
  403. homeassistant-stubs/components/madvr/__init__.pyi +1 -1
  404. homeassistant-stubs/components/madvr/config_flow.pyi +2 -1
  405. homeassistant-stubs/components/madvr/diagnostics.pyi +10 -0
  406. homeassistant-stubs/components/matter/button.pyi +25 -0
  407. homeassistant-stubs/components/matter/entity.pyi +1 -4
  408. homeassistant-stubs/components/matter/light.pyi +0 -1
  409. homeassistant-stubs/components/matter/models.pyi +5 -3
  410. homeassistant-stubs/components/matter/number.pyi +2 -2
  411. homeassistant-stubs/components/matter/sensor.pyi +9 -0
  412. homeassistant-stubs/components/matter/valve.pyi +33 -0
  413. homeassistant-stubs/components/media_player/__init__.pyi +11 -4
  414. homeassistant-stubs/components/media_player/const.pyi +67 -63
  415. homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -3
  416. homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -0
  417. homeassistant-stubs/components/minecraft_server/diagnostics.pyi +1 -1
  418. homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -1
  419. homeassistant-stubs/components/modbus/climate.pyi +1 -1
  420. homeassistant-stubs/components/modbus/cover.pyi +1 -1
  421. homeassistant-stubs/components/modbus/fan.pyi +1 -1
  422. homeassistant-stubs/components/modbus/light.pyi +1 -1
  423. homeassistant-stubs/components/modbus/sensor.pyi +1 -1
  424. homeassistant-stubs/components/modbus/switch.pyi +1 -1
  425. homeassistant-stubs/components/mold_indicator/__init__.pyi +10 -0
  426. homeassistant-stubs/components/mold_indicator/config_flow.pyi +20 -0
  427. homeassistant-stubs/components/mold_indicator/const.pyi +6 -0
  428. homeassistant-stubs/components/mold_indicator/sensor.pyi +60 -0
  429. homeassistant-stubs/components/mopeka/__init__.pyi +1 -1
  430. homeassistant-stubs/components/motionmount/entity.pyi +3 -0
  431. homeassistant-stubs/components/motionmount/number.pyi +1 -0
  432. homeassistant-stubs/components/motionmount/select.pyi +5 -0
  433. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -1
  434. homeassistant-stubs/components/mqtt/binary_sensor.pyi +1 -1
  435. homeassistant-stubs/components/mqtt/button.pyi +1 -1
  436. homeassistant-stubs/components/mqtt/camera.pyi +1 -1
  437. homeassistant-stubs/components/mqtt/climate.pyi +1 -6
  438. homeassistant-stubs/components/mqtt/config_flow.pyi +1 -2
  439. homeassistant-stubs/components/mqtt/cover.pyi +1 -1
  440. homeassistant-stubs/components/mqtt/device_automation.pyi +1 -1
  441. homeassistant-stubs/components/mqtt/device_tracker.pyi +3 -3
  442. homeassistant-stubs/components/mqtt/device_trigger.pyi +1 -1
  443. homeassistant-stubs/components/mqtt/discovery.pyi +1 -1
  444. homeassistant-stubs/components/mqtt/{mixins.pyi → entity.pyi} +0 -3
  445. homeassistant-stubs/components/mqtt/event.pyi +1 -1
  446. homeassistant-stubs/components/mqtt/fan.pyi +1 -1
  447. homeassistant-stubs/components/mqtt/humidifier.pyi +1 -1
  448. homeassistant-stubs/components/mqtt/image.pyi +1 -1
  449. homeassistant-stubs/components/mqtt/lawn_mower.pyi +1 -1
  450. homeassistant-stubs/components/mqtt/light/__init__.pyi +1 -1
  451. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -1
  452. homeassistant-stubs/components/mqtt/light/schema_json.pyi +1 -1
  453. homeassistant-stubs/components/mqtt/light/schema_template.pyi +1 -1
  454. homeassistant-stubs/components/mqtt/lock.pyi +1 -1
  455. homeassistant-stubs/components/mqtt/notify.pyi +1 -1
  456. homeassistant-stubs/components/mqtt/number.pyi +1 -1
  457. homeassistant-stubs/components/mqtt/scene.pyi +1 -1
  458. homeassistant-stubs/components/mqtt/select.pyi +1 -1
  459. homeassistant-stubs/components/mqtt/sensor.pyi +1 -1
  460. homeassistant-stubs/components/mqtt/siren.pyi +1 -1
  461. homeassistant-stubs/components/mqtt/switch.pyi +1 -1
  462. homeassistant-stubs/components/mqtt/tag.pyi +1 -1
  463. homeassistant-stubs/components/mqtt/text.pyi +1 -1
  464. homeassistant-stubs/components/mqtt/trigger.pyi +3 -2
  465. homeassistant-stubs/components/mqtt/update.pyi +1 -1
  466. homeassistant-stubs/components/mqtt/vacuum.pyi +1 -1
  467. homeassistant-stubs/components/mqtt/valve.pyi +3 -3
  468. homeassistant-stubs/components/mqtt/water_heater.pyi +1 -1
  469. homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
  470. homeassistant-stubs/components/mysensors/binary_sensor.pyi +3 -2
  471. homeassistant-stubs/components/mysensors/climate.pyi +3 -2
  472. homeassistant-stubs/components/mysensors/cover.pyi +3 -2
  473. homeassistant-stubs/components/mysensors/device_tracker.pyi +5 -10
  474. homeassistant-stubs/components/mysensors/handler.pyi +1 -1
  475. homeassistant-stubs/components/mysensors/light.pyi +3 -3
  476. homeassistant-stubs/components/mysensors/remote.pyi +1 -1
  477. homeassistant-stubs/components/mysensors/sensor.pyi +4 -3
  478. homeassistant-stubs/components/mysensors/switch.pyi +1 -1
  479. homeassistant-stubs/components/mysensors/text.pyi +2 -2
  480. homeassistant-stubs/components/nanoleaf/device_trigger.pyi +1 -2
  481. homeassistant-stubs/components/nest/device_trigger.pyi +1 -2
  482. homeassistant-stubs/components/nest/media_source.pyi +1 -2
  483. homeassistant-stubs/components/netatmo/device_trigger.pyi +1 -2
  484. homeassistant-stubs/components/netatmo/media_source.pyi +1 -2
  485. homeassistant-stubs/components/network/websocket.pyi +1 -1
  486. homeassistant-stubs/components/nextdns/__init__.pyi +1 -1
  487. homeassistant-stubs/components/nextdns/config_flow.pyi +11 -1
  488. homeassistant-stubs/components/nextdns/coordinator.pyi +1 -0
  489. homeassistant-stubs/components/nissan_leaf/__init__.pyi +3 -14
  490. homeassistant-stubs/components/nissan_leaf/binary_sensor.pyi +2 -1
  491. homeassistant-stubs/components/nissan_leaf/button.pyi +2 -1
  492. homeassistant-stubs/components/nissan_leaf/const.pyi +1 -0
  493. homeassistant-stubs/components/nissan_leaf/entity.pyi +18 -0
  494. homeassistant-stubs/components/nissan_leaf/sensor.pyi +2 -1
  495. homeassistant-stubs/components/nissan_leaf/switch.pyi +2 -1
  496. homeassistant-stubs/components/notify/__init__.pyi +3 -2
  497. homeassistant-stubs/components/notify/legacy.pyi +5 -6
  498. homeassistant-stubs/components/notify/repairs.pyi +1 -2
  499. homeassistant-stubs/components/notion/__init__.pyi +1 -23
  500. homeassistant-stubs/components/notion/binary_sensor.pyi +1 -2
  501. homeassistant-stubs/components/notion/entity.pyi +33 -0
  502. homeassistant-stubs/components/notion/sensor.pyi +1 -2
  503. homeassistant-stubs/components/onewire/binary_sensor.pyi +1 -1
  504. homeassistant-stubs/components/onewire/sensor.pyi +1 -1
  505. homeassistant-stubs/components/onewire/switch.pyi +1 -1
  506. homeassistant-stubs/components/onkyo/media_player.pyi +84 -0
  507. homeassistant-stubs/components/onkyo/receiver.pyi +19 -0
  508. homeassistant-stubs/components/openuv/__init__.pyi +0 -11
  509. homeassistant-stubs/components/openuv/binary_sensor.pyi +1 -1
  510. homeassistant-stubs/components/openuv/entity.pyi +14 -0
  511. homeassistant-stubs/components/openuv/sensor.pyi +1 -1
  512. homeassistant-stubs/components/otbr/config_flow.pyi +3 -2
  513. homeassistant-stubs/components/overkiz/{climate_entities → climate}/__init__.pyi +9 -0
  514. homeassistant-stubs/components/overkiz/{water_heater.pyi → cover/__init__.pyi} +5 -4
  515. homeassistant-stubs/components/overkiz/executor.pyi +1 -1
  516. homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +17 -0
  517. homeassistant-stubs/components/pi_hole/__init__.pyi +1 -10
  518. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +2 -1
  519. homeassistant-stubs/components/pi_hole/entity.pyi +13 -0
  520. homeassistant-stubs/components/pi_hole/sensor.pyi +2 -1
  521. homeassistant-stubs/components/pi_hole/switch.pyi +2 -1
  522. homeassistant-stubs/components/pi_hole/update.pyi +2 -1
  523. homeassistant-stubs/components/ping/binary_sensor.pyi +0 -8
  524. homeassistant-stubs/components/ping/device_tracker.pyi +1 -3
  525. homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -1
  526. homeassistant-stubs/components/prusalink/__init__.pyi +1 -8
  527. homeassistant-stubs/components/prusalink/binary_sensor.pyi +1 -1
  528. homeassistant-stubs/components/prusalink/button.pyi +1 -1
  529. homeassistant-stubs/components/prusalink/camera.pyi +1 -1
  530. homeassistant-stubs/components/prusalink/entity.pyi +9 -0
  531. homeassistant-stubs/components/prusalink/sensor.pyi +1 -1
  532. homeassistant-stubs/components/purpleair/__init__.pyi +1 -17
  533. homeassistant-stubs/components/purpleair/entity.pyi +21 -0
  534. homeassistant-stubs/components/purpleair/sensor.pyi +1 -1
  535. homeassistant-stubs/components/qnap_qsw/diagnostics.pyi +1 -1
  536. homeassistant-stubs/components/radarr/__init__.pyi +2 -15
  537. homeassistant-stubs/components/radarr/binary_sensor.pyi +2 -1
  538. homeassistant-stubs/components/radarr/calendar.pyi +2 -1
  539. homeassistant-stubs/components/radarr/entity.pyi +16 -0
  540. homeassistant-stubs/components/radarr/sensor.pyi +2 -1
  541. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -18
  542. homeassistant-stubs/components/rainmachine/binary_sensor.pyi +2 -2
  543. homeassistant-stubs/components/rainmachine/button.pyi +2 -2
  544. homeassistant-stubs/components/rainmachine/entity.pyi +30 -0
  545. homeassistant-stubs/components/rainmachine/select.pyi +2 -2
  546. homeassistant-stubs/components/rainmachine/sensor.pyi +2 -2
  547. homeassistant-stubs/components/rainmachine/switch.pyi +2 -2
  548. homeassistant-stubs/components/rainmachine/update.pyi +2 -2
  549. homeassistant-stubs/components/recorder/const.pyi +2 -2
  550. homeassistant-stubs/components/recorder/core.pyi +3 -7
  551. homeassistant-stubs/components/recorder/history/legacy.pyi +9 -10
  552. homeassistant-stubs/components/recorder/history/modern.pyi +1 -1
  553. homeassistant-stubs/components/recorder/migration.pyi +28 -25
  554. homeassistant-stubs/components/recorder/models/__init__.pyi +2 -2
  555. homeassistant-stubs/components/recorder/models/legacy.pyi +1 -37
  556. homeassistant-stubs/components/recorder/models/time.pyi +0 -1
  557. homeassistant-stubs/components/recorder/statistics.pyi +2 -1
  558. homeassistant-stubs/components/recorder/tasks.pyi +4 -17
  559. homeassistant-stubs/components/recorder/util.pyi +6 -2
  560. homeassistant-stubs/components/recorder/websocket_api.pyi +6 -3
  561. homeassistant-stubs/components/remote/__init__.pyi +2 -0
  562. homeassistant-stubs/components/renault/device_tracker.pyi +8 -4
  563. homeassistant-stubs/components/renault/renault_hub.pyi +1 -1
  564. homeassistant-stubs/components/renault/renault_vehicle.pyi +2 -0
  565. homeassistant-stubs/components/renault/services.pyi +4 -0
  566. homeassistant-stubs/components/rfxtrx/__init__.pyi +2 -27
  567. homeassistant-stubs/components/rfxtrx/binary_sensor.pyi +2 -1
  568. homeassistant-stubs/components/rfxtrx/const.pyi +1 -0
  569. homeassistant-stubs/components/rfxtrx/cover.pyi +2 -1
  570. homeassistant-stubs/components/rfxtrx/device_action.pyi +1 -1
  571. homeassistant-stubs/components/rfxtrx/device_trigger.pyi +1 -2
  572. homeassistant-stubs/components/rfxtrx/entity.pyi +33 -0
  573. homeassistant-stubs/components/rfxtrx/event.pyi +2 -1
  574. homeassistant-stubs/components/rfxtrx/light.pyi +2 -1
  575. homeassistant-stubs/components/rfxtrx/sensor.pyi +2 -1
  576. homeassistant-stubs/components/rfxtrx/siren.pyi +2 -1
  577. homeassistant-stubs/components/rfxtrx/switch.pyi +3 -2
  578. homeassistant-stubs/components/ring/__init__.pyi +10 -9
  579. homeassistant-stubs/components/ring/binary_sensor.pyi +24 -20
  580. homeassistant-stubs/components/ring/button.pyi +2 -4
  581. homeassistant-stubs/components/ring/camera.pyi +2 -4
  582. homeassistant-stubs/components/ring/config_flow.pyi +2 -1
  583. homeassistant-stubs/components/ring/const.pyi +1 -1
  584. homeassistant-stubs/components/ring/coordinator.pyi +22 -7
  585. homeassistant-stubs/components/ring/diagnostics.pyi +2 -4
  586. homeassistant-stubs/components/ring/entity.pyi +27 -7
  587. homeassistant-stubs/components/ring/event.pyi +30 -0
  588. homeassistant-stubs/components/ring/light.pyi +2 -4
  589. homeassistant-stubs/components/ring/number.pyi +33 -0
  590. homeassistant-stubs/components/ring/sensor.pyi +6 -8
  591. homeassistant-stubs/components/ring/siren.pyi +30 -14
  592. homeassistant-stubs/components/ring/switch.pyi +25 -17
  593. homeassistant-stubs/components/roborock/binary_sensor.pyi +1 -1
  594. homeassistant-stubs/components/roborock/button.pyi +1 -1
  595. homeassistant-stubs/components/roborock/diagnostics.pyi +1 -1
  596. homeassistant-stubs/components/roborock/image.pyi +1 -1
  597. homeassistant-stubs/components/roborock/number.pyi +3 -2
  598. homeassistant-stubs/components/roborock/select.pyi +2 -1
  599. homeassistant-stubs/components/roborock/sensor.pyi +1 -1
  600. homeassistant-stubs/components/roborock/switch.pyi +3 -2
  601. homeassistant-stubs/components/roborock/time.pyi +3 -2
  602. homeassistant-stubs/components/roborock/vacuum.pyi +1 -1
  603. homeassistant-stubs/components/samsungtv/device_trigger.pyi +1 -2
  604. homeassistant-stubs/components/scene/__init__.pyi +2 -0
  605. homeassistant-stubs/components/schedule/__init__.pyi +5 -1
  606. homeassistant-stubs/components/schedule/const.pyi +1 -0
  607. homeassistant-stubs/components/script/helpers.pyi +1 -1
  608. homeassistant-stubs/components/sensibo/diagnostics.pyi +1 -1
  609. homeassistant-stubs/components/sensor/device_condition.pyi +1 -2
  610. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -2
  611. homeassistant-stubs/components/sensor/recorder.pyi +10 -6
  612. homeassistant-stubs/components/sensoterra/__init__.pyi +10 -0
  613. homeassistant-stubs/components/sensoterra/config_flow.pyi +11 -0
  614. homeassistant-stubs/components/sensoterra/const.pyi +9 -0
  615. homeassistant-stubs/components/sensoterra/coordinator.pyi +15 -0
  616. homeassistant-stubs/components/sensoterra/sensor.pyi +39 -0
  617. homeassistant-stubs/components/shelly/cover.pyi +7 -1
  618. homeassistant-stubs/components/shelly/device_trigger.pyi +1 -2
  619. homeassistant-stubs/components/shelly/update.pyi +1 -0
  620. homeassistant-stubs/components/simplisafe/__init__.pyi +4 -38
  621. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -1
  622. homeassistant-stubs/components/simplisafe/binary_sensor.pyi +2 -1
  623. homeassistant-stubs/components/simplisafe/button.pyi +2 -1
  624. homeassistant-stubs/components/simplisafe/const.pyi +6 -0
  625. homeassistant-stubs/components/simplisafe/entity.pyi +38 -0
  626. homeassistant-stubs/components/simplisafe/lock.pyi +2 -1
  627. homeassistant-stubs/components/simplisafe/sensor.pyi +2 -1
  628. homeassistant-stubs/components/siren/__init__.pyi +2 -0
  629. homeassistant-stubs/components/slack/__init__.pyi +1 -13
  630. homeassistant-stubs/components/slack/entity.pyi +15 -0
  631. homeassistant-stubs/components/slack/sensor.pyi +1 -1
  632. homeassistant-stubs/components/smlight/__init__.pyi +18 -0
  633. homeassistant-stubs/components/smlight/binary_sensor.pyi +46 -0
  634. homeassistant-stubs/components/smlight/button.pyi +32 -0
  635. homeassistant-stubs/components/smlight/config_flow.pyi +27 -0
  636. homeassistant-stubs/components/smlight/const.pyi +11 -0
  637. homeassistant-stubs/components/smlight/coordinator.pyi +49 -0
  638. homeassistant-stubs/components/smlight/diagnostics.pyi +5 -0
  639. homeassistant-stubs/components/smlight/entity.pyi +10 -0
  640. homeassistant-stubs/components/smlight/sensor.pyi +56 -0
  641. homeassistant-stubs/components/smlight/switch.pyi +39 -0
  642. homeassistant-stubs/components/smlight/update.pyi +48 -0
  643. homeassistant-stubs/components/solarlog/__init__.pyi +14 -0
  644. homeassistant-stubs/components/solarlog/config_flow.pyi +27 -0
  645. homeassistant-stubs/components/solarlog/const.pyi +4 -0
  646. homeassistant-stubs/components/solarlog/coordinator.pyi +19 -0
  647. homeassistant-stubs/components/solarlog/diagnostics.pyi +10 -0
  648. homeassistant-stubs/components/solarlog/entity.pyi +23 -0
  649. homeassistant-stubs/components/solarlog/sensor.pyi +36 -0
  650. homeassistant-stubs/components/squeezebox/__init__.pyi +24 -0
  651. homeassistant-stubs/components/squeezebox/binary_sensor.pyi +17 -0
  652. homeassistant-stubs/components/squeezebox/browse_media.pyi +18 -0
  653. homeassistant-stubs/components/squeezebox/config_flow.pyi +27 -0
  654. homeassistant-stubs/components/squeezebox/const.pyi +29 -0
  655. homeassistant-stubs/components/squeezebox/coordinator.pyi +14 -0
  656. homeassistant-stubs/components/squeezebox/entity.pyi +14 -0
  657. homeassistant-stubs/components/squeezebox/media_player.pyi +111 -0
  658. homeassistant-stubs/components/squeezebox/sensor.pyi +18 -0
  659. homeassistant-stubs/components/ssdp/__init__.pyi +3 -1
  660. homeassistant-stubs/components/starlink/device_tracker.pyi +2 -5
  661. homeassistant-stubs/components/starlink/diagnostics.pyi +1 -1
  662. homeassistant-stubs/components/stt/const.pyi +6 -2
  663. homeassistant-stubs/components/surepetcare/lock.pyi +3 -4
  664. homeassistant-stubs/components/switch/__init__.pyi +2 -0
  665. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  666. homeassistant-stubs/components/switchbot_cloud/const.pyi +4 -0
  667. homeassistant-stubs/components/switchbot_cloud/entity.pyi +1 -1
  668. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +32 -0
  669. homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -1
  670. homeassistant-stubs/components/switcher_kis/config_flow.pyi +23 -2
  671. homeassistant-stubs/components/switcher_kis/coordinator.pyi +2 -0
  672. homeassistant-stubs/components/switcher_kis/cover.pyi +2 -1
  673. homeassistant-stubs/components/switcher_kis/utils.pyi +1 -1
  674. homeassistant-stubs/components/tailscale/__init__.pyi +0 -13
  675. homeassistant-stubs/components/tailscale/binary_sensor.pyi +1 -1
  676. homeassistant-stubs/components/tailscale/config_flow.pyi +2 -0
  677. homeassistant-stubs/components/tailscale/entity.pyi +15 -0
  678. homeassistant-stubs/components/tailscale/sensor.pyi +1 -1
  679. homeassistant-stubs/components/tailwind/cover.pyi +1 -1
  680. homeassistant-stubs/components/tami4/button.pyi +14 -1
  681. homeassistant-stubs/components/tautulli/__init__.pyi +0 -13
  682. homeassistant-stubs/components/tautulli/entity.pyi +15 -0
  683. homeassistant-stubs/components/tautulli/sensor.pyi +2 -1
  684. homeassistant-stubs/components/tcp/binary_sensor.pyi +2 -1
  685. homeassistant-stubs/components/tcp/common.pyi +0 -17
  686. homeassistant-stubs/components/tcp/entity.pyi +21 -0
  687. homeassistant-stubs/components/tcp/sensor.pyi +2 -1
  688. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -17
  689. homeassistant-stubs/components/threshold/const.pyi +20 -5
  690. homeassistant-stubs/components/tibber/services.pyi +2 -2
  691. homeassistant-stubs/components/tile/device_tracker.pyi +1 -3
  692. homeassistant-stubs/components/todo/__init__.pyi +1 -1
  693. homeassistant-stubs/components/todo/const.pyi +4 -0
  694. homeassistant-stubs/components/todo/intent.pyi +2 -2
  695. homeassistant-stubs/components/tolo/__init__.pyi +3 -22
  696. homeassistant-stubs/components/tolo/binary_sensor.pyi +2 -1
  697. homeassistant-stubs/components/tolo/button.pyi +2 -1
  698. homeassistant-stubs/components/tolo/climate.pyi +2 -1
  699. homeassistant-stubs/components/tolo/coordinator.pyi +20 -0
  700. homeassistant-stubs/components/tolo/entity.pyi +11 -0
  701. homeassistant-stubs/components/tolo/fan.pyi +2 -1
  702. homeassistant-stubs/components/tolo/light.pyi +2 -1
  703. homeassistant-stubs/components/tolo/number.pyi +2 -1
  704. homeassistant-stubs/components/tolo/select.pyi +2 -1
  705. homeassistant-stubs/components/tolo/sensor.pyi +2 -1
  706. homeassistant-stubs/components/tolo/switch.pyi +2 -1
  707. homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -1
  708. homeassistant-stubs/components/tplink/button.pyi +2 -1
  709. homeassistant-stubs/components/tplink/deprecate.pyi +18 -0
  710. homeassistant-stubs/components/tplink/entity.pyi +8 -4
  711. homeassistant-stubs/components/tplink/number.pyi +3 -1
  712. homeassistant-stubs/components/tplink/select.pyi +1 -1
  713. homeassistant-stubs/components/tplink/sensor.pyi +2 -1
  714. homeassistant-stubs/components/tplink/siren.pyi +22 -0
  715. homeassistant-stubs/components/tplink/switch.pyi +1 -1
  716. homeassistant-stubs/components/tplink_omada/__init__.pyi +2 -0
  717. homeassistant-stubs/components/tplink_omada/controller.pyi +10 -5
  718. homeassistant-stubs/components/tplink_omada/coordinator.pyi +7 -2
  719. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +1 -3
  720. homeassistant-stubs/components/tplink_omada/entity.pyi +0 -1
  721. homeassistant-stubs/components/tplink_omada/update.pyi +8 -7
  722. homeassistant-stubs/components/trace/__init__.pyi +1 -2
  723. homeassistant-stubs/components/trace/const.pyi +7 -3
  724. homeassistant-stubs/components/tractive/device_tracker.pyi +3 -9
  725. homeassistant-stubs/components/tradfri/cover.pyi +1 -1
  726. homeassistant-stubs/components/tradfri/fan.pyi +1 -1
  727. homeassistant-stubs/components/tradfri/light.pyi +1 -1
  728. homeassistant-stubs/components/tradfri/sensor.pyi +1 -1
  729. homeassistant-stubs/components/tradfri/switch.pyi +1 -1
  730. homeassistant-stubs/components/tts/__init__.pyi +2 -1
  731. homeassistant-stubs/components/tts/const.pyi +6 -1
  732. homeassistant-stubs/components/tts/helper.pyi +2 -3
  733. homeassistant-stubs/components/tts/legacy.pyi +0 -1
  734. homeassistant-stubs/components/tts/media_source.pyi +3 -3
  735. homeassistant-stubs/components/unifi/device_tracker.pyi +2 -4
  736. homeassistant-stubs/components/unifi/hub/__init__.pyi +2 -0
  737. homeassistant-stubs/components/unifi/switch.pyi +1 -1
  738. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +1 -2
  739. homeassistant-stubs/components/unifiprotect/button.pyi +1 -2
  740. homeassistant-stubs/components/unifiprotect/entity.pyi +40 -3
  741. homeassistant-stubs/components/unifiprotect/event.pyi +1 -2
  742. homeassistant-stubs/components/unifiprotect/media_source.pyi +1 -1
  743. homeassistant-stubs/components/unifiprotect/number.pyi +1 -2
  744. homeassistant-stubs/components/unifiprotect/select.pyi +1 -2
  745. homeassistant-stubs/components/unifiprotect/sensor.pyi +1 -2
  746. homeassistant-stubs/components/unifiprotect/switch.pyi +1 -2
  747. homeassistant-stubs/components/unifiprotect/text.pyi +1 -2
  748. homeassistant-stubs/components/upcloud/__init__.pyi +2 -37
  749. homeassistant-stubs/components/upcloud/binary_sensor.pyi +2 -1
  750. homeassistant-stubs/components/upcloud/const.pyi +1 -0
  751. homeassistant-stubs/components/upcloud/entity.pyi +38 -0
  752. homeassistant-stubs/components/upcloud/switch.pyi +4 -1
  753. homeassistant-stubs/components/update/__init__.pyi +1 -0
  754. homeassistant-stubs/components/uvc/__init__.pyi +0 -0
  755. homeassistant-stubs/components/uvc/camera.pyi +54 -0
  756. homeassistant-stubs/components/vacuum/__init__.pyi +21 -14
  757. homeassistant-stubs/components/vallox/__init__.pyi +6 -9
  758. homeassistant-stubs/components/vallox/binary_sensor.pyi +1 -1
  759. homeassistant-stubs/components/vallox/config_flow.pyi +5 -2
  760. homeassistant-stubs/components/vallox/const.pyi +3 -3
  761. homeassistant-stubs/components/vallox/date.pyi +1 -1
  762. homeassistant-stubs/components/vallox/entity.pyi +12 -0
  763. homeassistant-stubs/components/vallox/fan.pyi +2 -2
  764. homeassistant-stubs/components/vallox/number.pyi +1 -1
  765. homeassistant-stubs/components/vallox/sensor.pyi +2 -2
  766. homeassistant-stubs/components/vallox/switch.pyi +1 -1
  767. homeassistant-stubs/components/valve/__init__.pyi +3 -1
  768. homeassistant-stubs/components/valve/const.pyi +9 -0
  769. homeassistant-stubs/components/velbus/climate.pyi +4 -1
  770. homeassistant-stubs/components/wallbox/const.pyi +4 -0
  771. homeassistant-stubs/components/wallbox/coordinator.pyi +3 -1
  772. homeassistant-stubs/components/wallbox/number.pyi +1 -1
  773. homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
  774. homeassistant-stubs/components/water_heater/__init__.pyi +2 -0
  775. homeassistant-stubs/components/weather/__init__.pyi +1 -1
  776. homeassistant-stubs/components/weather/const.pyi +5 -0
  777. homeassistant-stubs/components/weather/intent.pyi +1 -3
  778. homeassistant-stubs/components/weather/websocket_api.pyi +1 -2
  779. homeassistant-stubs/components/webostv/device_trigger.pyi +1 -2
  780. homeassistant-stubs/components/withings/config_flow.pyi +1 -1
  781. homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +1 -0
  782. homeassistant-stubs/components/yale_smart_alarm/entity.pyi +9 -1
  783. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +10 -6
  784. homeassistant-stubs/components/yale_smart_alarm/switch.pyi +20 -0
  785. homeassistant-stubs/components/youtube/const.pyi +1 -0
  786. homeassistant-stubs/components/youtube/coordinator.pyi +1 -1
  787. homeassistant-stubs/components/youtube/sensor.pyi +1 -1
  788. homeassistant-stubs/components/zeroconf/__init__.pyi +4 -0
  789. homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
  790. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +1 -0
  791. homeassistant-stubs/components/zwave_js/const.pyi +1 -0
  792. homeassistant-stubs/components/zwave_js/cover.pyi +5 -0
  793. homeassistant-stubs/components/zwave_js/device_condition.pyi +1 -1
  794. homeassistant-stubs/components/zwave_js/device_trigger.pyi +1 -2
  795. homeassistant-stubs/components/zwave_js/diagnostics.pyi +1 -2
  796. homeassistant-stubs/components/zwave_js/entity.pyi +1 -2
  797. homeassistant-stubs/components/zwave_js/lock.pyi +2 -3
  798. homeassistant-stubs/components/zwave_js/migrate.pyi +8 -7
  799. homeassistant-stubs/components/zwave_js/sensor.pyi +8 -4
  800. homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +1 -1
  801. homeassistant-stubs/config_entries.pyi +9 -4
  802. homeassistant-stubs/const.pyi +19 -8
  803. homeassistant-stubs/helpers/aiohttp_client.pyi +8 -7
  804. homeassistant-stubs/helpers/condition.pyi +2 -0
  805. homeassistant-stubs/helpers/config_validation.pyi +5 -1
  806. homeassistant-stubs/helpers/discovery.pyi +1 -1
  807. homeassistant-stubs/helpers/discovery_flow.pyi +12 -2
  808. homeassistant-stubs/helpers/frame.pyi +1 -1
  809. homeassistant-stubs/helpers/llm.pyi +5 -5
  810. homeassistant-stubs/helpers/script.pyi +1 -1
  811. homeassistant-stubs/helpers/state.pyi +2 -1
  812. homeassistant-stubs/helpers/template.pyi +5 -1
  813. homeassistant-stubs/util/aiohttp.pyi +10 -0
  814. homeassistant-stubs/util/package.pyi +3 -0
  815. homeassistant-stubs/util/ssl.pyi +8 -4
  816. homeassistant-stubs/util/unit_conversion.pyi +2 -0
  817. homeassistant-stubs/util/unit_system.pyi +1 -0
  818. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0.dist-info}/METADATA +2 -2
  819. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0.dist-info}/RECORD +850 -725
  820. homeassistant-stubs/components/esphome/voice_assistant.pyi +0 -66
  821. homeassistant-stubs/components/notion/model.pyi +0 -7
  822. homeassistant-stubs/components/overkiz/climate.pyi +0 -10
  823. homeassistant-stubs/components/overkiz/cover.pyi +0 -11
  824. homeassistant-stubs/components/overkiz/water_heater_entities/__init__.pyi +0 -8
  825. homeassistant-stubs/components/rainmachine/model.pyi +0 -7
  826. homeassistant-stubs/components/recorder/history/common.pyi +0 -4
  827. homeassistant-stubs/components/unifiprotect/models.pyi +0 -44
  828. /homeassistant-stubs/components/deconz/{deconz_device.pyi → entity.pyi} +0 -0
  829. /homeassistant-stubs/components/devolo_home_control/{devolo_device.pyi → entity.pyi} +0 -0
  830. /homeassistant-stubs/components/knx/{knx_entity.pyi → entity.pyi} +0 -0
  831. /homeassistant-stubs/components/modbus/{base_platform.pyi → entity.pyi} +0 -0
  832. /homeassistant-stubs/components/mysensors/{device.pyi → entity.pyi} +0 -0
  833. /homeassistant-stubs/components/onewire/{onewire_entities.pyi → entity.pyi} +0 -0
  834. /homeassistant-stubs/components/{overkiz/cover_entities → onkyo}/__init__.pyi +0 -0
  835. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater.pyi +0 -0
  836. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +0 -0
  837. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_towel_dryer.pyi +0 -0
  838. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_heat_recovery_ventilation.pyi +0 -0
  839. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heat_pump_main_component.pyi +0 -0
  840. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heating_zone.pyi +0 -0
  841. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control.pyi +0 -0
  842. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control_zone.pyi +0 -0
  843. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_hlrrwifi.pyi +0 -0
  844. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_ovp.pyi +0 -0
  845. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_heating_temperature_interface.pyi +0 -0
  846. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_thermostat.pyi +0 -0
  847. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/valve_heating_temperature_interface.pyi +0 -0
  848. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/awning.pyi +0 -0
  849. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/generic_cover.pyi +0 -0
  850. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/vertical_cover.pyi +0 -0
  851. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_domestic_hot_water_production_mlb_component.pyi +0 -0
  852. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_pass_apc_dhw.pyi +0 -0
  853. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/domestic_hot_water_production.pyi +0 -0
  854. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/hitachi_dhw.pyi +0 -0
  855. /homeassistant-stubs/components/roborock/{device.pyi → entity.pyi} +0 -0
  856. /homeassistant-stubs/components/tradfri/{base_class.pyi → entity.pyi} +0 -0
  857. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0.dist-info}/WHEEL +0 -0
  858. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,88 @@
1
+ import abc
2
+ import asyncio
3
+ from .const import AssistSatelliteEntityFeature as AssistSatelliteEntityFeature
4
+ from .errors import AssistSatelliteError as AssistSatelliteError, SatelliteBusyError as SatelliteBusyError
5
+ from _typeshed import Incomplete
6
+ from abc import abstractmethod
7
+ from collections.abc import AsyncIterable
8
+ from dataclasses import dataclass
9
+ from enum import StrEnum
10
+ from homeassistant.components import media_source as media_source, stt as stt, tts as tts
11
+ from homeassistant.components.assist_pipeline import AudioSettings as AudioSettings, OPTION_PREFERRED as OPTION_PREFERRED, PipelineEvent as PipelineEvent, PipelineEventType as PipelineEventType, PipelineStage as PipelineStage, async_get_pipeline as async_get_pipeline, async_get_pipelines as async_get_pipelines, async_pipeline_from_audio_stream as async_pipeline_from_audio_stream, vad as vad
12
+ from homeassistant.components.media_player import async_process_play_media_url as async_process_play_media_url
13
+ from homeassistant.core import Context as Context, callback as callback
14
+ from homeassistant.helpers import entity as entity
15
+ from homeassistant.helpers.entity import EntityDescription as EntityDescription
16
+ from typing import Any, Final, Literal
17
+
18
+ _CONVERSATION_TIMEOUT_SEC: Final[Incomplete]
19
+ _LOGGER: Incomplete
20
+
21
+ class AssistSatelliteState(StrEnum):
22
+ IDLE = 'idle'
23
+ LISTENING = 'listening'
24
+ PROCESSING = 'processing'
25
+ RESPONDING = 'responding'
26
+
27
+ class AssistSatelliteEntityDescription(EntityDescription, frozen_or_thawed=True):
28
+ 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: ...
29
+
30
+ @dataclass(frozen=True)
31
+ class AssistSatelliteWakeWord:
32
+ id: str
33
+ wake_word: str
34
+ trained_languages: list[str]
35
+ def __init__(self, id, wake_word, trained_languages) -> None: ...
36
+
37
+ @dataclass
38
+ class AssistSatelliteConfiguration:
39
+ available_wake_words: list[AssistSatelliteWakeWord]
40
+ active_wake_words: list[str]
41
+ max_active_wake_words: int
42
+ def __init__(self, available_wake_words, active_wake_words, max_active_wake_words) -> None: ...
43
+
44
+ @dataclass
45
+ class AssistSatelliteAnnouncement:
46
+ message: str
47
+ media_id: str
48
+ media_id_source: Literal['url', 'media_id', 'tts']
49
+ def __init__(self, message, media_id, media_id_source) -> None: ...
50
+
51
+ class AssistSatelliteEntity(entity.Entity, metaclass=abc.ABCMeta):
52
+ entity_description: AssistSatelliteEntityDescription
53
+ _attr_should_poll: bool
54
+ _attr_supported_features: Incomplete
55
+ _attr_pipeline_entity_id: str | None
56
+ _attr_vad_sensitivity_entity_id: str | None
57
+ _conversation_id: str | None
58
+ _conversation_id_time: float | None
59
+ _run_has_tts: bool
60
+ _is_announcing: bool
61
+ _wake_word_intercept_future: asyncio.Future[str | None] | None
62
+ _attr_tts_options: dict[str, Any] | None
63
+ _pipeline_task: asyncio.Task | None
64
+ __assist_satellite_state: Incomplete
65
+ @property
66
+ def state(self) -> str | None: ...
67
+ @property
68
+ def pipeline_entity_id(self) -> str | None: ...
69
+ @property
70
+ def vad_sensitivity_entity_id(self) -> str | None: ...
71
+ @property
72
+ def tts_options(self) -> dict[str, Any] | None: ...
73
+ @abstractmethod
74
+ def async_get_configuration(self) -> AssistSatelliteConfiguration: ...
75
+ @abstractmethod
76
+ async def async_set_configuration(self, config: AssistSatelliteConfiguration) -> None: ...
77
+ async def async_intercept_wake_word(self) -> str | None: ...
78
+ async def async_internal_announce(self, message: str | None = None, media_id: str | None = None) -> None: ...
79
+ async def async_announce(self, announcement: AssistSatelliteAnnouncement) -> None: ...
80
+ async def async_accept_pipeline_from_satellite(self, audio_stream: AsyncIterable[bytes], start_stage: PipelineStage = ..., end_stage: PipelineStage = ..., wake_word_phrase: str | None = None) -> None: ...
81
+ async def _cancel_running_pipeline(self) -> None: ...
82
+ @abstractmethod
83
+ def on_pipeline_event(self, event: PipelineEvent) -> None: ...
84
+ def _internal_on_pipeline_event(self, event: PipelineEvent) -> None: ...
85
+ def _set_state(self, state: AssistSatelliteState) -> None: ...
86
+ def tts_response_finished(self) -> None: ...
87
+ def _resolve_pipeline(self) -> str | None: ...
88
+ def _resolve_vad_sensitivity(self) -> float: ...
@@ -0,0 +1,4 @@
1
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
2
+
3
+ class AssistSatelliteError(HomeAssistantError): ...
4
+ class SatelliteBusyError(AssistSatelliteError): ...
@@ -0,0 +1,16 @@
1
+ from .connection_test import CONNECTION_TEST_URL_BASE as CONNECTION_TEST_URL_BASE
2
+ from .const import AssistSatelliteEntityFeature as AssistSatelliteEntityFeature, CONNECTION_TEST_DATA as CONNECTION_TEST_DATA, DATA_COMPONENT as DATA_COMPONENT, DOMAIN as DOMAIN
3
+ from .entity import AssistSatelliteEntity as AssistSatelliteEntity
4
+ from homeassistant.components import websocket_api as websocket_api
5
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
6
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
7
+ from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
8
+ from typing import Any
9
+
10
+ CONNECTION_TEST_TIMEOUT: int
11
+
12
+ def async_register_websocket_api(hass: HomeAssistant) -> None: ...
13
+ async def websocket_intercept_wake_word(hass: HomeAssistant, connection: websocket_api.connection.ActiveConnection, msg: dict[str, Any]) -> None: ...
14
+ def websocket_get_configuration(hass: HomeAssistant, connection: websocket_api.connection.ActiveConnection, msg: dict[str, Any]) -> None: ...
15
+ async def websocket_set_wake_words(hass: HomeAssistant, connection: websocket_api.connection.ActiveConnection, msg: dict[str, Any]) -> None: ...
16
+ async def websocket_test_connection(hass: HomeAssistant, connection: websocket_api.connection.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -1,5 +1,5 @@
1
1
  import abc
2
- from .const import CONF_DNSMASQ as CONF_DNSMASQ, CONF_INTERFACE as CONF_INTERFACE, CONF_REQUIRE_IP as CONF_REQUIRE_IP, CONF_SSH_KEY as CONF_SSH_KEY, DEFAULT_DNSMASQ as DEFAULT_DNSMASQ, DEFAULT_INTERFACE as DEFAULT_INTERFACE, KEY_METHOD as KEY_METHOD, KEY_SENSORS as KEY_SENSORS, PROTOCOL_HTTP as PROTOCOL_HTTP, PROTOCOL_HTTPS as PROTOCOL_HTTPS, PROTOCOL_TELNET as PROTOCOL_TELNET, SENSORS_BYTES as SENSORS_BYTES, SENSORS_LOAD_AVG as SENSORS_LOAD_AVG, SENSORS_RATES as SENSORS_RATES, SENSORS_TEMPERATURES as SENSORS_TEMPERATURES, SENSORS_TEMPERATURES_LEGACY as SENSORS_TEMPERATURES_LEGACY
2
+ from .const import CONF_DNSMASQ as CONF_DNSMASQ, CONF_INTERFACE as CONF_INTERFACE, CONF_REQUIRE_IP as CONF_REQUIRE_IP, CONF_SSH_KEY as CONF_SSH_KEY, DEFAULT_DNSMASQ as DEFAULT_DNSMASQ, DEFAULT_INTERFACE as DEFAULT_INTERFACE, KEY_METHOD as KEY_METHOD, KEY_SENSORS as KEY_SENSORS, PROTOCOL_HTTP as PROTOCOL_HTTP, PROTOCOL_HTTPS as PROTOCOL_HTTPS, PROTOCOL_TELNET as PROTOCOL_TELNET, SENSORS_BYTES as SENSORS_BYTES, SENSORS_CPU as SENSORS_CPU, SENSORS_LOAD_AVG as SENSORS_LOAD_AVG, SENSORS_MEMORY as SENSORS_MEMORY, SENSORS_RATES as SENSORS_RATES, SENSORS_TEMPERATURES as SENSORS_TEMPERATURES, SENSORS_TEMPERATURES_LEGACY as SENSORS_TEMPERATURES_LEGACY, SENSORS_UPTIME as SENSORS_UPTIME
3
3
  from _typeshed import Incomplete
4
4
  from abc import ABC, abstractmethod
5
5
  from aioasuswrt.asuswrt import AsusWrt as AsusWrtLegacy
@@ -15,9 +15,12 @@ from typing import Any, NamedTuple
15
15
 
16
16
  SENSORS_TYPE_BYTES: str
17
17
  SENSORS_TYPE_COUNT: str
18
+ SENSORS_TYPE_CPU: str
18
19
  SENSORS_TYPE_LOAD_AVG: str
20
+ SENSORS_TYPE_MEMORY: str
19
21
  SENSORS_TYPE_RATES: str
20
22
  SENSORS_TYPE_TEMPERATURES: str
23
+ SENSORS_TYPE_UPTIME: str
21
24
 
22
25
  class WrtDevice(NamedTuple):
23
26
  ip: Incomplete
@@ -97,9 +100,13 @@ class AsusWrtHttpBridge(AsusWrtBridge):
97
100
  async def async_disconnect(self) -> None: ...
98
101
  async def async_get_connected_devices(self) -> dict[str, WrtDevice]: ...
99
102
  async def async_get_available_sensors(self) -> dict[str, dict[str, Any]]: ...
103
+ async def _get_available_cpu_sensors(self) -> list[str]: ...
100
104
  async def _get_available_temperature_sensors(self) -> list[str]: ...
101
105
  async def _get_loadavg_sensors_availability(self) -> list[str]: ...
102
106
  async def _get_bytes(self) -> Any: ...
103
107
  async def _get_rates(self) -> Any: ...
104
108
  async def _get_load_avg(self) -> Any: ...
105
109
  async def _get_temperatures(self) -> Any: ...
110
+ async def _get_cpu_usage(self) -> Any: ...
111
+ async def _get_memory_usage(self) -> Any: ...
112
+ async def _get_uptime(self) -> dict[str, Any]: ...
@@ -20,7 +20,10 @@ PROTOCOL_SSH: str
20
20
  PROTOCOL_TELNET: str
21
21
  SENSORS_BYTES: Incomplete
22
22
  SENSORS_CONNECTED_DEVICE: Incomplete
23
+ SENSORS_CPU: Incomplete
23
24
  SENSORS_LOAD_AVG: Incomplete
25
+ SENSORS_MEMORY: Incomplete
24
26
  SENSORS_RATES: Incomplete
25
27
  SENSORS_TEMPERATURES_LEGACY: Incomplete
26
28
  SENSORS_TEMPERATURES: Incomplete
29
+ SENSORS_UPTIME: Incomplete
@@ -1,7 +1,7 @@
1
1
  from . import AsusWrtConfigEntry as AsusWrtConfigEntry
2
2
  from .router import AsusWrtDevInfo as AsusWrtDevInfo, AsusWrtRouter as AsusWrtRouter
3
3
  from _typeshed import Incomplete
4
- from homeassistant.components.device_tracker import ScannerEntity as ScannerEntity, SourceType as SourceType
4
+ from homeassistant.components.device_tracker import ScannerEntity as ScannerEntity
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
6
6
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
7
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -22,8 +22,6 @@ class AsusWrtDevice(ScannerEntity):
22
22
  @property
23
23
  def is_connected(self) -> bool: ...
24
24
  @property
25
- def source_type(self) -> SourceType: ...
26
- @property
27
25
  def hostname(self) -> str | None: ...
28
26
  @property
29
27
  def icon(self) -> str: ...
@@ -1,10 +1,10 @@
1
1
  from . import AsusWrtConfigEntry as AsusWrtConfigEntry
2
- from .const import KEY_COORDINATOR as KEY_COORDINATOR, KEY_SENSORS as KEY_SENSORS, SENSORS_BYTES as SENSORS_BYTES, SENSORS_CONNECTED_DEVICE as SENSORS_CONNECTED_DEVICE, SENSORS_LOAD_AVG as SENSORS_LOAD_AVG, SENSORS_RATES as SENSORS_RATES, SENSORS_TEMPERATURES as SENSORS_TEMPERATURES
2
+ from .const import KEY_COORDINATOR as KEY_COORDINATOR, KEY_SENSORS as KEY_SENSORS, SENSORS_BYTES as SENSORS_BYTES, SENSORS_CONNECTED_DEVICE as SENSORS_CONNECTED_DEVICE, SENSORS_CPU as SENSORS_CPU, SENSORS_LOAD_AVG as SENSORS_LOAD_AVG, SENSORS_MEMORY as SENSORS_MEMORY, SENSORS_RATES as SENSORS_RATES, SENSORS_TEMPERATURES as SENSORS_TEMPERATURES, SENSORS_UPTIME as SENSORS_UPTIME
3
3
  from .router import AsusWrtRouter as AsusWrtRouter
4
4
  from _typeshed import Incomplete
5
5
  from dataclasses import dataclass
6
6
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
7
- from homeassistant.const import EntityCategory as EntityCategory, UnitOfDataRate as UnitOfDataRate, UnitOfInformation as UnitOfInformation, UnitOfTemperature as UnitOfTemperature
7
+ from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfDataRate as UnitOfDataRate, UnitOfInformation as UnitOfInformation, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime
8
8
  from homeassistant.core import HomeAssistant as HomeAssistant
9
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
10
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity, DataUpdateCoordinator as DataUpdateCoordinator
@@ -16,6 +16,7 @@ class AsusWrtSensorEntityDescription(SensorEntityDescription):
16
16
  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=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., factor=...) -> None: ...
17
17
 
18
18
  UNIT_DEVICES: str
19
+ CPU_CORE_SENSORS: tuple[AsusWrtSensorEntityDescription, ...]
19
20
  CONNECTION_SENSORS: tuple[AsusWrtSensorEntityDescription, ...]
20
21
 
21
22
  async def async_setup_entry(hass: HomeAssistant, entry: AsusWrtConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -1,18 +1,20 @@
1
1
  from .const import DOMAIN as DOMAIN, LOGGER as LOGGER, SCAN_INTERVAL as SCAN_INTERVAL
2
2
  from _typeshed import Incomplete
3
- from autarco import AccountSite as AccountSite, Autarco as Autarco, Inverter as Inverter, Solar as Solar
3
+ from autarco import AccountSite as AccountSite, Autarco as Autarco, Battery as Battery, Inverter as Inverter, Site as Site, Solar as Solar
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
6
- from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
6
+ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
7
7
  from typing import NamedTuple
8
8
 
9
9
  class AutarcoData(NamedTuple):
10
10
  solar: Solar
11
11
  inverters: dict[str, Inverter]
12
+ site: Site
13
+ battery: Battery | None
12
14
 
13
15
  class AutarcoDataUpdateCoordinator(DataUpdateCoordinator[AutarcoData]):
14
16
  config_entry: ConfigEntry
15
17
  client: Incomplete
16
- site: Incomplete
17
- def __init__(self, hass: HomeAssistant, client: Autarco, site: AccountSite) -> None: ...
18
+ account_site: Incomplete
19
+ def __init__(self, hass: HomeAssistant, client: Autarco, account_site: AccountSite) -> None: ...
18
20
  async def _async_update_data(self) -> AutarcoData: ...
@@ -2,17 +2,24 @@ from . import AutarcoConfigEntry as AutarcoConfigEntry
2
2
  from .const import DOMAIN as DOMAIN
3
3
  from .coordinator import AutarcoDataUpdateCoordinator as AutarcoDataUpdateCoordinator
4
4
  from _typeshed import Incomplete
5
- from autarco import Inverter as Inverter, Solar as Solar
5
+ from autarco import Battery as Battery, Inverter as Inverter, Solar as Solar
6
6
  from collections.abc import Callable as Callable
7
7
  from dataclasses import dataclass
8
8
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
9
- from homeassistant.const import UnitOfEnergy as UnitOfEnergy, UnitOfPower as UnitOfPower
9
+ from homeassistant.const import PERCENTAGE as PERCENTAGE, UnitOfEnergy as UnitOfEnergy, UnitOfPower as UnitOfPower
10
10
  from homeassistant.core import HomeAssistant as HomeAssistant
11
11
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
12
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
13
13
  from homeassistant.helpers.typing import StateType as StateType
14
14
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
15
15
 
16
+ @dataclass(frozen=True, kw_only=True)
17
+ class AutarcoBatterySensorEntityDescription(SensorEntityDescription):
18
+ value_fn: Callable[[Battery], StateType]
19
+ 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=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., value_fn) -> None: ...
20
+
21
+ SENSORS_BATTERY: tuple[AutarcoBatterySensorEntityDescription, ...]
22
+
16
23
  @dataclass(frozen=True, kw_only=True)
17
24
  class AutarcoSolarSensorEntityDescription(SensorEntityDescription):
18
25
  value_fn: Callable[[Solar], StateType]
@@ -29,6 +36,15 @@ SENSORS_INVERTER: tuple[AutarcoInverterSensorEntityDescription, ...]
29
36
 
30
37
  async def async_setup_entry(hass: HomeAssistant, entry: AutarcoConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
31
38
 
39
+ class AutarcoBatterySensorEntity(CoordinatorEntity[AutarcoDataUpdateCoordinator], SensorEntity):
40
+ entity_description: AutarcoBatterySensorEntityDescription
41
+ _attr_has_entity_name: bool
42
+ _attr_unique_id: Incomplete
43
+ _attr_device_info: Incomplete
44
+ def __init__(self, *, coordinator: AutarcoDataUpdateCoordinator, description: AutarcoBatterySensorEntityDescription) -> None: ...
45
+ @property
46
+ def native_value(self) -> StateType: ...
47
+
32
48
  class AutarcoSolarSensorEntity(CoordinatorEntity[AutarcoDataUpdateCoordinator], SensorEntity):
33
49
  entity_description: AutarcoSolarSensorEntityDescription
34
50
  _attr_has_entity_name: bool
@@ -1,6 +1,6 @@
1
1
  import abc
2
2
  from .config import AutomationConfig as AutomationConfig, ValidationStatus as ValidationStatus
3
- from .const import CONF_ACTION as CONF_ACTION, CONF_INITIAL_STATE as CONF_INITIAL_STATE, CONF_TRACE as CONF_TRACE, CONF_TRIGGER as CONF_TRIGGER, CONF_TRIGGER_VARIABLES as CONF_TRIGGER_VARIABLES, DEFAULT_INITIAL_STATE as DEFAULT_INITIAL_STATE, DOMAIN as DOMAIN, LOGGER as LOGGER
3
+ from .const import CONF_ACTIONS as CONF_ACTIONS, CONF_INITIAL_STATE as CONF_INITIAL_STATE, CONF_TRACE as CONF_TRACE, CONF_TRIGGERS as CONF_TRIGGERS, CONF_TRIGGER_VARIABLES as CONF_TRIGGER_VARIABLES, DEFAULT_INITIAL_STATE as DEFAULT_INITIAL_STATE, DOMAIN as DOMAIN, LOGGER as LOGGER
4
4
  from .helpers import async_get_blueprints as async_get_blueprints
5
5
  from .trace import trace_automation as trace_automation
6
6
  from _typeshed import Incomplete
@@ -10,9 +10,9 @@ from dataclasses import dataclass
10
10
  from functools import cached_property as cached_property
11
11
  from homeassistant.components import websocket_api as websocket_api
12
12
  from homeassistant.components.blueprint import CONF_USE_BLUEPRINT as CONF_USE_BLUEPRINT
13
- from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_MODE as ATTR_MODE, ATTR_NAME as ATTR_NAME, CONF_ALIAS as CONF_ALIAS, CONF_CONDITION as CONF_CONDITION, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_EVENT_DATA as CONF_EVENT_DATA, CONF_ID as CONF_ID, CONF_MODE as CONF_MODE, CONF_PATH as CONF_PATH, CONF_PLATFORM as CONF_PLATFORM, CONF_VARIABLES as CONF_VARIABLES, CONF_ZONE as CONF_ZONE, EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, SERVICE_RELOAD as SERVICE_RELOAD, SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
13
+ from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_MODE as ATTR_MODE, ATTR_NAME as ATTR_NAME, CONF_ALIAS as CONF_ALIAS, CONF_CONDITIONS as CONF_CONDITIONS, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_EVENT_DATA as CONF_EVENT_DATA, CONF_ID as CONF_ID, CONF_MODE as CONF_MODE, CONF_PATH as CONF_PATH, CONF_PLATFORM as CONF_PLATFORM, CONF_VARIABLES as CONF_VARIABLES, CONF_ZONE as CONF_ZONE, EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, SERVICE_RELOAD as SERVICE_RELOAD, SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
14
14
  from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Context as Context, CoreState as CoreState, Event as Event, HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback, split_entity_id as split_entity_id, valid_entity_id as valid_entity_id
15
- from homeassistant.exceptions import ConditionError as ConditionError, ConditionErrorContainer as ConditionErrorContainer, ConditionErrorIndex as ConditionErrorIndex, HomeAssistantError as HomeAssistantError, ServiceNotFound as ServiceNotFound, TemplateError as TemplateError
15
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceNotFound as ServiceNotFound, TemplateError as TemplateError
16
16
  from homeassistant.helpers import condition as condition
17
17
  from homeassistant.helpers.deprecation import DeprecatedConstant as DeprecatedConstant, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
18
18
  from homeassistant.helpers.entity import ToggleEntity as ToggleEntity
@@ -27,8 +27,10 @@ from homeassistant.helpers.trigger import TriggerActionType as TriggerActionType
27
27
  from homeassistant.helpers.typing import ConfigType as ConfigType
28
28
  from homeassistant.loader import bind_hass as bind_hass
29
29
  from homeassistant.util.dt import parse_datetime as parse_datetime
30
+ from homeassistant.util.hass_dict import HassKey as HassKey
30
31
  from typing import Any, Protocol
31
32
 
33
+ DATA_COMPONENT: HassKey[EntityComponent[BaseAutomationEntity]]
32
34
  ENTITY_ID_FORMAT: Incomplete
33
35
  CONF_SKIP_CONDITION: str
34
36
  CONF_STOP_ACTIONS: str
@@ -1,11 +1,11 @@
1
- from .const import CONF_ACTION as CONF_ACTION, CONF_HIDE_ENTITY as CONF_HIDE_ENTITY, CONF_INITIAL_STATE as CONF_INITIAL_STATE, CONF_TRACE as CONF_TRACE, CONF_TRIGGER as CONF_TRIGGER, CONF_TRIGGER_VARIABLES as CONF_TRIGGER_VARIABLES, DOMAIN as DOMAIN, LOGGER as LOGGER
1
+ from .const import CONF_ACTION as CONF_ACTION, CONF_ACTIONS as CONF_ACTIONS, CONF_HIDE_ENTITY as CONF_HIDE_ENTITY, CONF_INITIAL_STATE as CONF_INITIAL_STATE, CONF_TRACE as CONF_TRACE, CONF_TRIGGER as CONF_TRIGGER, CONF_TRIGGERS as CONF_TRIGGERS, CONF_TRIGGER_VARIABLES as CONF_TRIGGER_VARIABLES, DOMAIN as DOMAIN, LOGGER as LOGGER
2
2
  from .helpers import async_get_blueprints as async_get_blueprints
3
3
  from _typeshed import Incomplete
4
4
  from enum import StrEnum
5
5
  from homeassistant.components import blueprint as blueprint
6
6
  from homeassistant.components.trace import TRACE_CONFIG_SCHEMA as TRACE_CONFIG_SCHEMA
7
7
  from homeassistant.config import config_per_platform as config_per_platform, config_without_domain as config_without_domain
8
- from homeassistant.const import CONF_ALIAS as CONF_ALIAS, CONF_CONDITION as CONF_CONDITION, CONF_DESCRIPTION as CONF_DESCRIPTION, CONF_ID as CONF_ID, CONF_VARIABLES as CONF_VARIABLES
8
+ from homeassistant.const import CONF_ALIAS as CONF_ALIAS, CONF_CONDITION as CONF_CONDITION, CONF_CONDITIONS as CONF_CONDITIONS, CONF_DESCRIPTION as CONF_DESCRIPTION, CONF_ID as CONF_ID, CONF_VARIABLES as CONF_VARIABLES
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
11
11
  from homeassistant.helpers import script as script
@@ -17,7 +17,11 @@ from typing import Any
17
17
 
18
18
  PACKAGE_MERGE_HINT: str
19
19
  _MINIMAL_PLATFORM_SCHEMA: Incomplete
20
+
21
+ def _backward_compat_schema(value: Any | None) -> Any: ...
22
+
20
23
  PLATFORM_SCHEMA: Incomplete
24
+ AUTOMATION_BLUEPRINT_SCHEMA: Incomplete
21
25
 
22
26
  async def _async_validate_config_item(hass: HomeAssistant, config: ConfigType, raise_on_errors: bool, warn_on_errors: bool) -> AutomationConfig: ...
23
27
 
@@ -1,7 +1,9 @@
1
1
  from _typeshed import Incomplete
2
2
 
3
3
  CONF_ACTION: str
4
+ CONF_ACTIONS: str
4
5
  CONF_TRIGGER: str
6
+ CONF_TRIGGERS: str
5
7
  CONF_TRIGGER_VARIABLES: str
6
8
  DOMAIN: str
7
9
  CONF_HIDE_ENTITY: str
@@ -1,2 +1,4 @@
1
1
  from .api import get_axis_api as get_axis_api
2
2
  from .hub import AxisHub as AxisHub
3
+
4
+ __all__ = ['AxisHub', 'get_axis_api']
@@ -2,7 +2,7 @@ import axis
2
2
  from _typeshed import Incomplete
3
3
  from axis.stream_manager import Signal
4
4
  from homeassistant.components import mqtt as mqtt
5
- from homeassistant.components.mqtt.models import ReceiveMessage as ReceiveMessage
5
+ from homeassistant.components.mqtt import ReceiveMessage as ReceiveMessage
6
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
8
  from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
@@ -1,4 +1,5 @@
1
1
  from .const import ATTR_FRIENDLY_NAME as ATTR_FRIENDLY_NAME, ATTR_ITEM_NUMBER as ATTR_ITEM_NUMBER, ATTR_SERIAL_NUMBER as ATTR_SERIAL_NUMBER, ATTR_TYPE_NUMBER as ATTR_TYPE_NUMBER, COMPATIBLE_MODELS as COMPATIBLE_MODELS, CONF_SERIAL_NUMBER as CONF_SERIAL_NUMBER, DEFAULT_MODEL as DEFAULT_MODEL, DOMAIN as DOMAIN
2
+ from .util import get_serial_number_from_jid as get_serial_number_from_jid
2
3
  from _typeshed import Incomplete
3
4
  from homeassistant.components.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
4
5
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
@@ -36,6 +36,7 @@ class BangOlufsenModel(StrEnum):
36
36
  BEOSOUND_THEATRE = 'Beosound Theatre'
37
37
 
38
38
  class WebsocketNotification(StrEnum):
39
+ ACTIVE_LISTENING_MODE = 'active_listening_mode'
39
40
  PLAYBACK_ERROR = 'playback_error'
40
41
  PLAYBACK_METADATA = 'playback_metadata'
41
42
  PLAYBACK_PROGRESS = 'playback_progress'
@@ -44,6 +45,11 @@ class WebsocketNotification(StrEnum):
44
45
  SOFTWARE_UPDATE_STATE = 'software_update_state'
45
46
  SOURCE_CHANGE = 'source_change'
46
47
  VOLUME = 'volume'
48
+ BEOLINK = 'beolink'
49
+ BEOLINK_PEERS = 'beolinkPeers'
50
+ BEOLINK_LISTENERS = 'beolinkListeners'
51
+ BEOLINK_AVAILABLE_LISTENERS = 'beolinkAvailableListeners'
52
+ CONFIGURATION = 'configuration'
47
53
  NOTIFICATION = 'notification'
48
54
  REMOTE_MENU_CHANGED = 'remoteMenuChanged'
49
55
  ALL = 'all'
@@ -1,19 +1,20 @@
1
1
  from . import BangOlufsenData as BangOlufsenData
2
2
  from .const import BANG_OLUFSEN_STATES as BANG_OLUFSEN_STATES, BangOlufsenMediaType as BangOlufsenMediaType, BangOlufsenSource as BangOlufsenSource, CONF_BEOLINK_JID as CONF_BEOLINK_JID, CONNECTION_STATUS as CONNECTION_STATUS, DOMAIN as DOMAIN, FALLBACK_SOURCES as FALLBACK_SOURCES, HIDDEN_SOURCE_IDS as HIDDEN_SOURCE_IDS, VALID_MEDIA_TYPES as VALID_MEDIA_TYPES, WebsocketNotification as WebsocketNotification
3
3
  from .entity import BangOlufsenEntity as BangOlufsenEntity
4
+ from .util import get_serial_number_from_jid as get_serial_number_from_jid
4
5
  from _typeshed import Incomplete
5
6
  from collections.abc import Callable as Callable
6
7
  from homeassistant.components import media_source as media_source
7
8
  from homeassistant.components.media_player import ATTR_MEDIA_EXTRA as ATTR_MEDIA_EXTRA, BrowseMedia as BrowseMedia, MediaPlayerDeviceClass as MediaPlayerDeviceClass, MediaPlayerEntity as MediaPlayerEntity, MediaPlayerEntityFeature as MediaPlayerEntityFeature, MediaPlayerState as MediaPlayerState, MediaType as MediaType, async_process_play_media_url as async_process_play_media_url
8
9
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
- from homeassistant.const import CONF_MODEL as CONF_MODEL
10
+ from homeassistant.const import CONF_MODEL as CONF_MODEL, Platform as Platform
10
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
11
12
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
12
13
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
13
14
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
14
15
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
15
16
  from homeassistant.util.dt import utcnow as utcnow
16
- from mozart_api.models import PlaybackContentMetadata as PlaybackContentMetadata, PlaybackError as PlaybackError, PlaybackProgress, RenderingState as RenderingState, Source, VolumeState as VolumeState
17
+ from mozart_api.models import BeolinkLeader as BeolinkLeader, ListeningModeProps as ListeningModeProps, ListeningModeRef as ListeningModeRef, PlaybackContentMetadata as PlaybackContentMetadata, PlaybackError as PlaybackError, PlaybackProgress, RenderingState as RenderingState, Source, VolumeState as VolumeState
17
18
  from mozart_api.mozart_client import MozartClient as MozartClient
18
19
  from typing import Any
19
20
 
@@ -37,6 +38,9 @@ class BangOlufsenMediaPlayer(BangOlufsenEntity, MediaPlayerEntity):
37
38
  _sources: Incomplete
38
39
  _state: Incomplete
39
40
  _video_sources: Incomplete
41
+ _sound_modes: Incomplete
42
+ _beolink_sources: Incomplete
43
+ _remote_leader: Incomplete
40
44
  def __init__(self, entry: ConfigEntry, client: MozartClient) -> None: ...
41
45
  async def async_added_to_hass(self) -> None: ...
42
46
  _volume: Incomplete
@@ -45,15 +49,22 @@ class BangOlufsenMediaPlayer(BangOlufsenEntity, MediaPlayerEntity):
45
49
  _source_change: Incomplete
46
50
  _playback_state: Incomplete
47
51
  _attr_media_position_updated_at: Incomplete
48
- _attr_source_list: Incomplete
49
52
  async def _initialize(self) -> None: ...
53
+ _attr_source_list: Incomplete
50
54
  async def _async_update_sources(self) -> None: ...
51
- def _async_update_playback_metadata(self, data: PlaybackContentMetadata) -> None: ...
55
+ async def _async_update_playback_metadata_and_beolink(self, data: PlaybackContentMetadata) -> None: ...
52
56
  def _async_update_playback_error(self, data: PlaybackError) -> None: ...
53
57
  def _async_update_playback_progress(self, data: PlaybackProgress) -> None: ...
54
58
  def _async_update_playback_state(self, data: RenderingState) -> None: ...
55
59
  def _async_update_source_change(self, data: Source) -> None: ...
56
60
  def _async_update_volume(self, data: VolumeState) -> None: ...
61
+ _attr_group_members: Incomplete
62
+ async def _async_update_beolink(self) -> None: ...
63
+ def _get_entity_id_from_jid(self, jid: str) -> str | None: ...
64
+ def _get_beolink_jid(self, entity_id: str) -> str: ...
65
+ _attr_sound_mode: Incomplete
66
+ _attr_sound_mode_list: Incomplete
67
+ async def _async_update_sound_modes(self, active_sound_mode: ListeningModeProps | ListeningModeRef | None = None) -> None: ...
57
68
  @property
58
69
  def state(self) -> MediaPlayerState: ...
59
70
  @property
@@ -94,5 +105,11 @@ class BangOlufsenMediaPlayer(BangOlufsenEntity, MediaPlayerEntity):
94
105
  async def async_media_previous_track(self) -> None: ...
95
106
  async def async_clear_playlist(self) -> None: ...
96
107
  async def async_select_source(self, source: str) -> None: ...
108
+ async def async_select_sound_mode(self, sound_mode: str) -> None: ...
97
109
  async def async_play_media(self, media_type: MediaType | str, media_id: str, announce: bool | None = None, **kwargs: Any) -> None: ...
98
110
  async def async_browse_media(self, media_content_type: MediaType | str | None = None, media_content_id: str | None = None) -> BrowseMedia: ...
111
+ async def async_join_players(self, group_members: list[str]) -> None: ...
112
+ async def async_unjoin_player(self) -> None: ...
113
+ async def _async_beolink_join(self) -> None: ...
114
+ async def _async_beolink_expand(self, beolink_jids: list[str]) -> None: ...
115
+ async def _async_beolink_leave(self) -> None: ...
@@ -3,3 +3,4 @@ from homeassistant.core import HomeAssistant as HomeAssistant
3
3
  from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
4
4
 
5
5
  def get_device(hass: HomeAssistant, unique_id: str) -> DeviceEntry: ...
6
+ def get_serial_number_from_jid(jid: str) -> str: ...
@@ -6,7 +6,7 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
8
8
  from homeassistant.util.enum import try_parse_enum as try_parse_enum
9
- from mozart_api.models import PlaybackContentMetadata as PlaybackContentMetadata, PlaybackError as PlaybackError, PlaybackProgress as PlaybackProgress, RenderingState as RenderingState, SoftwareUpdateState as SoftwareUpdateState, Source as Source, VolumeState as VolumeState, WebsocketNotificationTag as WebsocketNotificationTag
9
+ from mozart_api.models import ListeningModeProps as ListeningModeProps, PlaybackContentMetadata as PlaybackContentMetadata, PlaybackError as PlaybackError, PlaybackProgress as PlaybackProgress, RenderingState as RenderingState, SoftwareUpdateState as SoftwareUpdateState, Source as Source, VolumeState as VolumeState, WebsocketNotificationTag as WebsocketNotificationTag
10
10
  from mozart_api.mozart_client import MozartClient as MozartClient
11
11
 
12
12
  _LOGGER: Incomplete
@@ -18,6 +18,7 @@ class BangOlufsenWebsocket(BangOlufsenBase):
18
18
  def _update_connection_status(self) -> None: ...
19
19
  def on_connection(self) -> None: ...
20
20
  def on_connection_lost(self) -> None: ...
21
+ def on_active_listening_mode(self, notification: ListeningModeProps) -> None: ...
21
22
  def on_notification_notification(self, notification: WebsocketNotificationTag) -> None: ...
22
23
  def on_playback_error_notification(self, notification: PlaybackError) -> None: ...
23
24
  def on_playback_metadata_notification(self, notification: PlaybackContentMetadata) -> None: ...
@@ -1,5 +1,5 @@
1
1
  from . import DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
2
- from .const import ATTR_OBSERVATIONS as ATTR_OBSERVATIONS, ATTR_OCCURRED_OBSERVATION_ENTITIES as ATTR_OCCURRED_OBSERVATION_ENTITIES, ATTR_PROBABILITY as ATTR_PROBABILITY, ATTR_PROBABILITY_THRESHOLD as ATTR_PROBABILITY_THRESHOLD, CONF_OBSERVATIONS as CONF_OBSERVATIONS, CONF_PRIOR as CONF_PRIOR, CONF_PROBABILITY_THRESHOLD as CONF_PROBABILITY_THRESHOLD, CONF_P_GIVEN_F as CONF_P_GIVEN_F, CONF_P_GIVEN_T as CONF_P_GIVEN_T, CONF_TEMPLATE as CONF_TEMPLATE, CONF_TO_STATE as CONF_TO_STATE, DEFAULT_NAME as DEFAULT_NAME, DEFAULT_PROBABILITY_THRESHOLD as DEFAULT_PROBABILITY_THRESHOLD
2
+ from .const import ATTR_OBSERVATIONS as ATTR_OBSERVATIONS, ATTR_OCCURRED_OBSERVATION_ENTITIES as ATTR_OCCURRED_OBSERVATION_ENTITIES, ATTR_PROBABILITY as ATTR_PROBABILITY, ATTR_PROBABILITY_THRESHOLD as ATTR_PROBABILITY_THRESHOLD, CONF_NUMERIC_STATE as CONF_NUMERIC_STATE, CONF_OBSERVATIONS as CONF_OBSERVATIONS, CONF_PRIOR as CONF_PRIOR, CONF_PROBABILITY_THRESHOLD as CONF_PROBABILITY_THRESHOLD, CONF_P_GIVEN_F as CONF_P_GIVEN_F, CONF_P_GIVEN_T as CONF_P_GIVEN_T, CONF_TEMPLATE as CONF_TEMPLATE, CONF_TO_STATE as CONF_TO_STATE, DEFAULT_NAME as DEFAULT_NAME, DEFAULT_PROBABILITY_THRESHOLD as DEFAULT_PROBABILITY_THRESHOLD
3
3
  from .helpers import Observation as Observation
4
4
  from .issues import raise_mirrored_entries as raise_mirrored_entries, raise_no_prob_given_false as raise_no_prob_given_false
5
5
  from _typeshed import Incomplete
@@ -19,7 +19,13 @@ from typing import Any
19
19
  from uuid import UUID
20
20
 
21
21
  _LOGGER: Incomplete
22
+
23
+ def _above_greater_than_below(config: dict[str, Any]) -> dict[str, Any]: ...
24
+
22
25
  NUMERIC_STATE_SCHEMA: Incomplete
26
+
27
+ def _no_overlapping(configs: list[dict]) -> list[dict]: ...
28
+
23
29
  STATE_SCHEMA: Incomplete
24
30
  TEMPLATE_SCHEMA: Incomplete
25
31
  PLATFORM_SCHEMA: Incomplete
@@ -50,9 +56,8 @@ class BayesianBinarySensor(BinarySensorEntity):
50
56
  def _calculate_new_probability(self) -> float: ...
51
57
  def _build_observations_by_entity(self) -> dict[str, list[Observation]]: ...
52
58
  def _build_observations_by_template(self) -> dict[Template, list[Observation]]: ...
53
- def _process_numeric_state(self, entity_observation: Observation) -> bool | None: ...
54
- def _process_state(self, entity_observation: Observation) -> bool | None: ...
55
- def _process_multi_state(self, entity_observation: Observation) -> bool | None: ...
59
+ def _process_numeric_state(self, entity_observation: Observation, multi: bool = False) -> bool | None: ...
60
+ def _process_state(self, entity_observation: Observation, multi: bool = False) -> bool | None: ...
56
61
  @property
57
62
  def extra_state_attributes(self) -> dict[str, Any]: ...
58
63
  async def async_update(self) -> None: ...
@@ -5,6 +5,7 @@ ATTR_PROBABILITY_THRESHOLD: str
5
5
  CONF_OBSERVATIONS: str
6
6
  CONF_PRIOR: str
7
7
  CONF_TEMPLATE: str
8
+ CONF_NUMERIC_STATE: str
8
9
  CONF_PROBABILITY_THRESHOLD: str
9
10
  CONF_P_GIVEN_F: str
10
11
  CONF_P_GIVEN_T: str
@@ -15,9 +15,10 @@ class Observation:
15
15
  below: float | None
16
16
  value_template: Template | None
17
17
  observed: bool | None = ...
18
+ multi: bool = ...
18
19
  id: uuid.UUID = ...
19
20
  def to_dict(self) -> dict[str, str | float | bool | None]: ...
20
21
  def is_mirror(self, other: Observation) -> bool: ...
21
22
  @property
22
23
  def template(self) -> str | None: ...
23
- def __init__(self, entity_id, platform, prob_given_true, prob_given_false, to_state, above, below, value_template, observed=..., id=...) -> None: ...
24
+ def __init__(self, entity_id, platform, prob_given_true, prob_given_false, to_state, above, below, value_template, observed=..., multi=..., id=...) -> None: ...
@@ -9,10 +9,12 @@ from homeassistant.helpers.deprecation import DeprecatedConstantEnum as Deprecat
9
9
  from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
10
10
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
11
11
  from homeassistant.helpers.typing import ConfigType as ConfigType
12
+ from homeassistant.util.hass_dict import HassKey as HassKey
12
13
  from typing import Literal
13
14
 
14
15
  _LOGGER: Incomplete
15
16
  DOMAIN: str
17
+ DATA_COMPONENT: HassKey[EntityComponent[BinarySensorEntity]]
16
18
  ENTITY_ID_FORMAT: Incomplete
17
19
  PLATFORM_SCHEMA: Incomplete
18
20
  PLATFORM_SCHEMA_BASE: Incomplete
@@ -2,7 +2,7 @@ from . import websocket_api as websocket_api
2
2
  from .const import CONF_USE_BLUEPRINT as CONF_USE_BLUEPRINT, DOMAIN as DOMAIN
3
3
  from .errors import BlueprintException as BlueprintException, BlueprintWithNameException as BlueprintWithNameException, FailedToLoad as FailedToLoad, InvalidBlueprint as InvalidBlueprint, InvalidBlueprintInputs as InvalidBlueprintInputs, MissingInput as MissingInput
4
4
  from .models import Blueprint as Blueprint, BlueprintInputs as BlueprintInputs, DomainBlueprints as DomainBlueprints
5
- from .schemas import is_blueprint_instance_config as is_blueprint_instance_config
5
+ from .schemas import BLUEPRINT_SCHEMA as BLUEPRINT_SCHEMA, is_blueprint_instance_config as is_blueprint_instance_config
6
6
  from _typeshed import Incomplete
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -1,5 +1,5 @@
1
1
  from .models import Blueprint as Blueprint
2
- from .schemas import is_blueprint_config as is_blueprint_config
2
+ from .schemas import BLUEPRINT_SCHEMA as BLUEPRINT_SCHEMA, is_blueprint_config as is_blueprint_config
3
3
  from _typeshed import Incomplete
4
4
  from dataclasses import dataclass
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -2,7 +2,7 @@ import logging
2
2
  import pathlib
3
3
  from .const import BLUEPRINT_FOLDER as BLUEPRINT_FOLDER, CONF_BLUEPRINT as CONF_BLUEPRINT, CONF_HOMEASSISTANT as CONF_HOMEASSISTANT, CONF_INPUT as CONF_INPUT, CONF_MIN_VERSION as CONF_MIN_VERSION, CONF_SOURCE_URL as CONF_SOURCE_URL, CONF_USE_BLUEPRINT as CONF_USE_BLUEPRINT, DOMAIN as DOMAIN
4
4
  from .errors import BlueprintException as BlueprintException, BlueprintInUse as BlueprintInUse, FailedToLoad as FailedToLoad, FileAlreadyExists as FileAlreadyExists, InvalidBlueprint as InvalidBlueprint, InvalidBlueprintInputs as InvalidBlueprintInputs, MissingInput as MissingInput
5
- from .schemas import BLUEPRINT_INSTANCE_FIELDS as BLUEPRINT_INSTANCE_FIELDS, BLUEPRINT_SCHEMA as BLUEPRINT_SCHEMA
5
+ from .schemas import BLUEPRINT_INSTANCE_FIELDS as BLUEPRINT_INSTANCE_FIELDS
6
6
  from _typeshed import Incomplete
7
7
  from collections.abc import Awaitable, Callable as Callable
8
8
  from homeassistant import loader as loader
@@ -14,7 +14,7 @@ from typing import Any
14
14
 
15
15
  class Blueprint:
16
16
  domain: Incomplete
17
- def __init__(self, data: dict[str, Any], *, path: str | None = None, expected_domain: str | None = None) -> None: ...
17
+ def __init__(self, data: dict[str, Any], *, path: str | None = None, expected_domain: str | None = None, schema: Callable[[Any], Any]) -> None: ...
18
18
  @property
19
19
  def name(self) -> str: ...
20
20
  @property
@@ -44,7 +44,8 @@ class DomainBlueprints:
44
44
  _reload_blueprint_consumers: Incomplete
45
45
  _blueprints: Incomplete
46
46
  _load_lock: Incomplete
47
- def __init__(self, hass: HomeAssistant, domain: str, logger: logging.Logger, blueprint_in_use: Callable[[HomeAssistant, str], bool], reload_blueprint_consumers: Callable[[HomeAssistant, str], Awaitable[None]]) -> None: ...
47
+ _blueprint_schema: Incomplete
48
+ def __init__(self, hass: HomeAssistant, domain: str, logger: logging.Logger, blueprint_in_use: Callable[[HomeAssistant, str], bool], reload_blueprint_consumers: Callable[[HomeAssistant, str], Awaitable[None]], blueprint_schema: Callable[[Any], Any]) -> None: ...
48
49
  @property
49
50
  def blueprint_folder(self) -> pathlib.Path: ...
50
51
  async def async_reset_cache(self) -> None: ...
@@ -1,6 +1,7 @@
1
1
  from . import importer as importer, models as models
2
2
  from .const import DOMAIN as DOMAIN
3
3
  from .errors import BlueprintException as BlueprintException, FailedToLoad as FailedToLoad, FileAlreadyExists as FileAlreadyExists
4
+ from .schemas import BLUEPRINT_SCHEMA as BLUEPRINT_SCHEMA
4
5
  from collections.abc import Callable as Callable, Coroutine
5
6
  from homeassistant.components import websocket_api as websocket_api
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback