homeassistant-stubs 2024.9.2__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 (867) 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/aseko_pool_live/__init__.pyi +1 -2
  64. homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +5 -8
  65. homeassistant-stubs/components/aseko_pool_live/config_flow.pyi +0 -1
  66. homeassistant-stubs/components/aseko_pool_live/coordinator.pyi +6 -5
  67. homeassistant-stubs/components/aseko_pool_live/entity.pyi +8 -3
  68. homeassistant-stubs/components/aseko_pool_live/sensor.pyi +16 -14
  69. homeassistant-stubs/components/assist_pipeline/__init__.pyi +4 -3
  70. homeassistant-stubs/components/assist_pipeline/const.pyi +1 -0
  71. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
  72. homeassistant-stubs/components/assist_pipeline/repair_flows.pyi +11 -0
  73. homeassistant-stubs/components/assist_pipeline/select.pyi +1 -3
  74. homeassistant-stubs/components/assist_satellite/__init__.pyi +5 -0
  75. homeassistant-stubs/components/assist_satellite/connection_test.pyi +15 -0
  76. homeassistant-stubs/components/assist_satellite/const.pyi +12 -0
  77. homeassistant-stubs/components/assist_satellite/entity.pyi +88 -0
  78. homeassistant-stubs/components/assist_satellite/errors.pyi +4 -0
  79. homeassistant-stubs/components/assist_satellite/websocket_api.pyi +16 -0
  80. homeassistant-stubs/components/asuswrt/bridge.pyi +8 -1
  81. homeassistant-stubs/components/asuswrt/const.pyi +3 -0
  82. homeassistant-stubs/components/asuswrt/device_tracker.pyi +1 -3
  83. homeassistant-stubs/components/asuswrt/sensor.pyi +3 -2
  84. homeassistant-stubs/components/autarco/coordinator.pyi +6 -4
  85. homeassistant-stubs/components/autarco/sensor.pyi +18 -2
  86. homeassistant-stubs/components/automation/__init__.pyi +5 -3
  87. homeassistant-stubs/components/automation/config.pyi +6 -2
  88. homeassistant-stubs/components/automation/const.pyi +2 -0
  89. homeassistant-stubs/components/axis/hub/__init__.pyi +2 -0
  90. homeassistant-stubs/components/axis/hub/event_source.pyi +1 -1
  91. homeassistant-stubs/components/bang_olufsen/__init__.pyi +1 -0
  92. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +2 -0
  93. homeassistant-stubs/components/bang_olufsen/const.pyi +6 -0
  94. homeassistant-stubs/components/bang_olufsen/media_player.pyi +21 -4
  95. homeassistant-stubs/components/bang_olufsen/util.pyi +1 -0
  96. homeassistant-stubs/components/bang_olufsen/websocket.pyi +2 -1
  97. homeassistant-stubs/components/bayesian/binary_sensor.pyi +9 -4
  98. homeassistant-stubs/components/bayesian/const.pyi +1 -0
  99. homeassistant-stubs/components/bayesian/helpers.pyi +2 -1
  100. homeassistant-stubs/components/binary_sensor/__init__.pyi +2 -0
  101. homeassistant-stubs/components/blueprint/__init__.pyi +1 -1
  102. homeassistant-stubs/components/blueprint/importer.pyi +1 -1
  103. homeassistant-stubs/components/blueprint/models.pyi +4 -3
  104. homeassistant-stubs/components/blueprint/websocket_api.pyi +1 -0
  105. homeassistant-stubs/components/bluesound/__init__.pyi +25 -0
  106. homeassistant-stubs/components/bluesound/config_flow.pyi +24 -0
  107. homeassistant-stubs/components/bluesound/const.pyi +8 -0
  108. homeassistant-stubs/components/bluesound/media_player.pyi +136 -0
  109. homeassistant-stubs/components/bluesound/utils.pyi +3 -0
  110. homeassistant-stubs/components/bluetooth/manager.pyi +3 -0
  111. homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +1 -3
  112. homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +1 -1
  113. homeassistant-stubs/components/braviatv/entity.pyi +1 -1
  114. homeassistant-stubs/components/braviatv/media_player.pyi +1 -2
  115. homeassistant-stubs/components/bryant_evolution/config_flow.pyi +3 -1
  116. homeassistant-stubs/components/bthome/device_trigger.pyi +4 -3
  117. homeassistant-stubs/components/button/__init__.pyi +2 -0
  118. homeassistant-stubs/components/calendar/__init__.pyi +7 -5
  119. homeassistant-stubs/components/calendar/const.pyi +5 -0
  120. homeassistant-stubs/components/calendar/trigger.pyi +2 -1
  121. homeassistant-stubs/components/camera/__init__.pyi +4 -4
  122. homeassistant-stubs/components/camera/const.pyi +12 -2
  123. homeassistant-stubs/components/camera/media_source.pyi +2 -4
  124. homeassistant-stubs/components/cert_expiry/entity.pyi +8 -0
  125. homeassistant-stubs/components/cert_expiry/sensor.pyi +3 -8
  126. homeassistant-stubs/components/climate/__init__.pyi +6 -2
  127. homeassistant-stubs/components/climate/const.pyi +1 -0
  128. homeassistant-stubs/components/climate/intent.pyi +1 -3
  129. homeassistant-stubs/components/cloud/alexa_config.pyi +1 -1
  130. homeassistant-stubs/components/cloud/google_config.pyi +1 -1
  131. homeassistant-stubs/components/co2signal/__init__.pyi +0 -1
  132. homeassistant-stubs/components/co2signal/config_flow.pyi +2 -1
  133. homeassistant-stubs/components/config/automation.pyi +1 -1
  134. homeassistant-stubs/components/config/category_registry.pyi +1 -1
  135. homeassistant-stubs/components/config/device_registry.pyi +1 -1
  136. homeassistant-stubs/components/config/entity_registry.pyi +1 -2
  137. homeassistant-stubs/components/config/floor_registry.pyi +1 -1
  138. homeassistant-stubs/components/config/label_registry.pyi +1 -1
  139. homeassistant-stubs/components/config/scene.pyi +1 -1
  140. homeassistant-stubs/components/config/script.pyi +0 -1
  141. homeassistant-stubs/components/cover/__init__.pyi +3 -1
  142. homeassistant-stubs/components/cover/const.pyi +2 -0
  143. homeassistant-stubs/components/cover/intent.pyi +1 -4
  144. homeassistant-stubs/components/crownstone/{devices.pyi → entity.pyi} +1 -1
  145. homeassistant-stubs/components/crownstone/light.pyi +2 -2
  146. homeassistant-stubs/components/deako/__init__.pyi +14 -0
  147. homeassistant-stubs/components/deako/config_flow.pyi +6 -0
  148. homeassistant-stubs/components/deako/const.pyi +2 -0
  149. homeassistant-stubs/components/deako/light.pyi +32 -0
  150. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +3 -3
  151. homeassistant-stubs/components/deconz/binary_sensor.pyi +3 -3
  152. homeassistant-stubs/components/deconz/button.pyi +4 -4
  153. homeassistant-stubs/components/deconz/climate.pyi +3 -3
  154. homeassistant-stubs/components/deconz/cover.pyi +3 -3
  155. homeassistant-stubs/components/deconz/deconz_event.pyi +1 -1
  156. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -2
  157. homeassistant-stubs/components/deconz/fan.pyi +3 -3
  158. homeassistant-stubs/components/deconz/hub/__init__.pyi +2 -0
  159. homeassistant-stubs/components/deconz/light.pyi +3 -3
  160. homeassistant-stubs/components/deconz/lock.pyi +3 -3
  161. homeassistant-stubs/components/deconz/number.pyi +3 -3
  162. homeassistant-stubs/components/deconz/scene.pyi +3 -3
  163. homeassistant-stubs/components/deconz/select.pyi +6 -6
  164. homeassistant-stubs/components/deconz/sensor.pyi +6 -5
  165. homeassistant-stubs/components/deconz/siren.pyi +3 -3
  166. homeassistant-stubs/components/deconz/switch.pyi +3 -3
  167. homeassistant-stubs/components/demo/lock.pyi +1 -2
  168. homeassistant-stubs/components/demo/notify.pyi +1 -1
  169. homeassistant-stubs/components/derivative/sensor.pyi +1 -1
  170. homeassistant-stubs/components/device_automation/__init__.pyi +1 -1
  171. homeassistant-stubs/components/device_tracker/__init__.pyi +1 -1
  172. homeassistant-stubs/components/device_tracker/config_entry.pyi +30 -4
  173. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
  174. homeassistant-stubs/components/devolo_home_control/devolo_multi_level_switch.pyi +1 -1
  175. homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
  176. homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
  177. homeassistant-stubs/components/devolo_home_network/__init__.pyi +1 -1
  178. homeassistant-stubs/components/devolo_home_network/const.pyi +1 -0
  179. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -6
  180. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
  181. homeassistant-stubs/components/devolo_home_network/sensor.pyi +19 -14
  182. homeassistant-stubs/components/dhcp/__init__.pyi +7 -1
  183. homeassistant-stubs/components/discovergy/config_flow.pyi +1 -0
  184. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +0 -1
  185. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -2
  186. homeassistant-stubs/components/dlna_dms/media_source.pyi +1 -2
  187. homeassistant-stubs/components/downloader/__init__.pyi +1 -9
  188. homeassistant-stubs/components/downloader/config_flow.pyi +0 -1
  189. homeassistant-stubs/components/dsmr/const.pyi +1 -0
  190. homeassistant-stubs/components/dsmr/sensor.pyi +4 -2
  191. homeassistant-stubs/components/efergy/__init__.pyi +0 -9
  192. homeassistant-stubs/components/efergy/entity.pyi +11 -0
  193. homeassistant-stubs/components/efergy/sensor.pyi +2 -1
  194. homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
  195. homeassistant-stubs/components/elevenlabs/config_flow.pyi +8 -2
  196. homeassistant-stubs/components/elevenlabs/const.pyi +11 -0
  197. homeassistant-stubs/components/elevenlabs/tts.pyi +7 -3
  198. homeassistant-stubs/components/elkm1/__init__.pyi +1 -34
  199. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
  200. homeassistant-stubs/components/elkm1/binary_sensor.pyi +2 -1
  201. homeassistant-stubs/components/elkm1/climate.pyi +4 -1
  202. homeassistant-stubs/components/elkm1/entity.pyi +43 -0
  203. homeassistant-stubs/components/elkm1/light.pyi +2 -1
  204. homeassistant-stubs/components/elkm1/scene.pyi +2 -1
  205. homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
  206. homeassistant-stubs/components/elkm1/switch.pyi +19 -1
  207. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +3 -1
  208. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -0
  209. homeassistant-stubs/components/enphase_envoy/sensor.pyi +13 -1
  210. homeassistant-stubs/components/enphase_envoy/switch.pyi +1 -1
  211. homeassistant-stubs/components/esphome/__init__.pyi +3 -2
  212. homeassistant-stubs/components/esphome/assist_satellite.pyi +75 -0
  213. homeassistant-stubs/components/esphome/binary_sensor.pyi +3 -0
  214. homeassistant-stubs/components/esphome/const.pyi +1 -0
  215. homeassistant-stubs/components/esphome/entry_data.pyi +3 -2
  216. homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +49 -0
  217. homeassistant-stubs/components/esphome/manager.pyi +2 -9
  218. homeassistant-stubs/components/esphome/media_player.pyi +7 -1
  219. homeassistant-stubs/components/esphome/repairs.pyi +5 -0
  220. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +0 -7
  221. homeassistant-stubs/components/evil_genius_labs/entity.pyi +9 -0
  222. homeassistant-stubs/components/evil_genius_labs/light.pyi +1 -1
  223. homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
  224. homeassistant-stubs/components/evohome/const.pyi +5 -5
  225. homeassistant-stubs/components/fan/__init__.pyi +2 -0
  226. homeassistant-stubs/components/forecast_solar/coordinator.pyi +1 -1
  227. homeassistant-stubs/components/fritz/device_tracker.pyi +1 -3
  228. homeassistant-stubs/components/fritz/switch.pyi +1 -1
  229. homeassistant-stubs/components/fritzbox/__init__.pyi +1 -27
  230. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +1 -1
  231. homeassistant-stubs/components/fritzbox/button.pyi +1 -1
  232. homeassistant-stubs/components/fritzbox/climate.pyi +1 -1
  233. homeassistant-stubs/components/fritzbox/cover.pyi +1 -1
  234. homeassistant-stubs/components/fritzbox/entity.pyi +29 -0
  235. homeassistant-stubs/components/fritzbox/light.pyi +2 -2
  236. homeassistant-stubs/components/fritzbox/sensor.pyi +5 -3
  237. homeassistant-stubs/components/fritzbox/switch.pyi +1 -1
  238. homeassistant-stubs/components/frontend/__init__.pyi +1 -1
  239. homeassistant-stubs/components/frontend/storage.pyi +1 -1
  240. homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +2 -1
  241. homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +3 -1
  242. homeassistant-stubs/components/fujitsu_fglair/const.pyi +3 -1
  243. homeassistant-stubs/components/fully_kiosk/diagnostics.pyi +1 -1
  244. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +6 -6
  245. homeassistant-stubs/components/geo_location/__init__.pyi +2 -0
  246. homeassistant-stubs/components/google/calendar.pyi +20 -6
  247. homeassistant-stubs/components/google_cloud/__init__.pyi +10 -0
  248. homeassistant-stubs/components/google_cloud/config_flow.pyi +27 -0
  249. homeassistant-stubs/components/google_cloud/const.pyi +19 -0
  250. homeassistant-stubs/components/google_cloud/helpers.pyi +14 -0
  251. homeassistant-stubs/components/google_cloud/stt.pyi +34 -0
  252. homeassistant-stubs/components/google_cloud/tts.pyi +47 -0
  253. homeassistant-stubs/components/google_photos/__init__.pyi +3 -0
  254. homeassistant-stubs/components/google_photos/api.pyi +15 -0
  255. homeassistant-stubs/components/google_photos/application_credentials.pyi +6 -0
  256. homeassistant-stubs/components/google_photos/config_flow.pyi +19 -0
  257. homeassistant-stubs/components/google_photos/const.pyi +8 -0
  258. homeassistant-stubs/components/google_photos/coordinator.pyi +17 -0
  259. homeassistant-stubs/components/google_photos/media_source.pyi +54 -0
  260. homeassistant-stubs/components/google_photos/services.pyi +15 -0
  261. homeassistant-stubs/components/google_photos/types.pyi +4 -0
  262. homeassistant-stubs/components/group/__init__.pyi +1 -3
  263. homeassistant-stubs/components/group/button.pyi +1 -1
  264. homeassistant-stubs/components/group/const.pyi +7 -3
  265. homeassistant-stubs/components/group/cover.pyi +1 -1
  266. homeassistant-stubs/components/group/entity.pyi +1 -1
  267. homeassistant-stubs/components/group/event.pyi +1 -1
  268. homeassistant-stubs/components/group/fan.pyi +1 -1
  269. homeassistant-stubs/components/group/lock.pyi +2 -2
  270. homeassistant-stubs/components/group/media_player.pyi +1 -1
  271. homeassistant-stubs/components/group/notify.pyi +1 -1
  272. homeassistant-stubs/components/group/registry.pyi +2 -1
  273. homeassistant-stubs/components/group/sensor.pyi +1 -1
  274. homeassistant-stubs/components/group/switch.pyi +1 -1
  275. homeassistant-stubs/components/guardian/__init__.pyi +0 -24
  276. homeassistant-stubs/components/guardian/binary_sensor.pyi +2 -1
  277. homeassistant-stubs/components/guardian/button.pyi +2 -1
  278. homeassistant-stubs/components/guardian/entity.pyi +29 -0
  279. homeassistant-stubs/components/guardian/sensor.pyi +2 -1
  280. homeassistant-stubs/components/guardian/switch.pyi +2 -1
  281. homeassistant-stubs/components/guardian/util.pyi +1 -1
  282. homeassistant-stubs/components/guardian/valve.pyi +2 -1
  283. homeassistant-stubs/components/history/websocket_api.pyi +1 -2
  284. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -1
  285. homeassistant-stubs/components/homeassistant/triggers/time.pyi +9 -1
  286. homeassistant-stubs/components/homekit/config_flow.pyi +3 -3
  287. homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
  288. homeassistant-stubs/components/homekit/type_fans.pyi +1 -1
  289. homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
  290. homeassistant-stubs/components/homekit/type_lights.pyi +1 -1
  291. homeassistant-stubs/components/homekit/type_locks.pyi +1 -1
  292. homeassistant-stubs/components/homekit/type_media_players.pyi +1 -1
  293. homeassistant-stubs/components/homekit/type_security_systems.pyi +1 -1
  294. homeassistant-stubs/components/homekit/type_switches.pyi +0 -1
  295. homeassistant-stubs/components/homekit/util.pyi +1 -0
  296. homeassistant-stubs/components/homekit_controller/config_flow.pyi +0 -1
  297. homeassistant-stubs/components/homekit_controller/lock.pyi +3 -3
  298. homeassistant-stubs/components/homeworks/__init__.pyi +0 -15
  299. homeassistant-stubs/components/homeworks/binary_sensor.pyi +2 -1
  300. homeassistant-stubs/components/homeworks/button.pyi +2 -1
  301. homeassistant-stubs/components/homeworks/config_flow.pyi +6 -2
  302. homeassistant-stubs/components/homeworks/entity.pyi +16 -0
  303. homeassistant-stubs/components/homeworks/light.pyi +2 -1
  304. homeassistant-stubs/components/homeworks/util.pyi +1 -0
  305. homeassistant-stubs/components/http/__init__.pyi +1 -1
  306. homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -24
  307. homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +1 -1
  308. homeassistant-stubs/components/huawei_lte/button.pyi +1 -1
  309. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +3 -4
  310. homeassistant-stubs/components/huawei_lte/entity.pyi +31 -0
  311. homeassistant-stubs/components/huawei_lte/select.pyi +2 -1
  312. homeassistant-stubs/components/huawei_lte/sensor.pyi +2 -1
  313. homeassistant-stubs/components/huawei_lte/switch.pyi +1 -1
  314. homeassistant-stubs/components/humidifier/__init__.pyi +7 -2
  315. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
  316. homeassistant-stubs/components/husqvarna_automower/button.pyi +20 -6
  317. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +21 -0
  318. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
  319. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +1 -3
  320. homeassistant-stubs/components/husqvarna_automower/entity.pyi +16 -2
  321. homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -10
  322. homeassistant-stubs/components/husqvarna_automower/switch.pyi +12 -1
  323. homeassistant-stubs/components/image/__init__.pyi +1 -1
  324. homeassistant-stubs/components/image/const.pyi +4 -0
  325. homeassistant-stubs/components/image/media_source.pyi +2 -5
  326. homeassistant-stubs/components/ios/__init__.pyi +1 -15
  327. homeassistant-stubs/components/ios/const.pyi +16 -0
  328. homeassistant-stubs/components/ios/notify.pyi +1 -1
  329. homeassistant-stubs/components/ios/sensor.pyi +2 -2
  330. homeassistant-stubs/components/iotty/cover.pyi +36 -0
  331. homeassistant-stubs/components/iotty/entity.pyi +19 -0
  332. homeassistant-stubs/components/iotty/switch.pyi +2 -11
  333. homeassistant-stubs/components/iqvia/__init__.pyi +2 -15
  334. homeassistant-stubs/components/iqvia/entity.pyi +18 -0
  335. homeassistant-stubs/components/iqvia/sensor.pyi +1 -1
  336. homeassistant-stubs/components/isy994/const.pyi +2 -1
  337. homeassistant-stubs/components/jellyfin/browse_media.pyi +1 -2
  338. homeassistant-stubs/components/jellyfin/media_player.pyi +1 -2
  339. homeassistant-stubs/components/jellyfin/media_source.pyi +1 -1
  340. homeassistant-stubs/components/jellyfin/sensor.pyi +1 -0
  341. homeassistant-stubs/components/jvc_projector/coordinator.pyi +2 -1
  342. homeassistant-stubs/components/knx/__init__.pyi +4 -2
  343. homeassistant-stubs/components/knx/binary_sensor.pyi +2 -2
  344. homeassistant-stubs/components/knx/button.pyi +2 -2
  345. homeassistant-stubs/components/knx/climate.pyi +9 -3
  346. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  347. homeassistant-stubs/components/knx/const.pyi +9 -3
  348. homeassistant-stubs/components/knx/cover.pyi +2 -2
  349. homeassistant-stubs/components/knx/date.pyi +2 -2
  350. homeassistant-stubs/components/knx/datetime.pyi +2 -2
  351. homeassistant-stubs/components/knx/device_trigger.pyi +3 -5
  352. homeassistant-stubs/components/knx/diagnostics.pyi +1 -1
  353. homeassistant-stubs/components/knx/{knx_entity.pyi → entity.pyi} +10 -5
  354. homeassistant-stubs/components/knx/fan.pyi +2 -2
  355. homeassistant-stubs/components/knx/light.pyi +3 -9
  356. homeassistant-stubs/components/knx/notify.pyi +2 -2
  357. homeassistant-stubs/components/knx/number.pyi +2 -2
  358. homeassistant-stubs/components/knx/scene.pyi +2 -2
  359. homeassistant-stubs/components/knx/schema.pyi +8 -2
  360. homeassistant-stubs/components/knx/select.pyi +2 -2
  361. homeassistant-stubs/components/knx/sensor.pyi +2 -2
  362. homeassistant-stubs/components/knx/services.pyi +1 -1
  363. homeassistant-stubs/components/knx/switch.pyi +3 -9
  364. homeassistant-stubs/components/knx/text.pyi +2 -2
  365. homeassistant-stubs/components/knx/time.pyi +2 -2
  366. homeassistant-stubs/components/knx/weather.pyi +2 -2
  367. homeassistant-stubs/components/knx/websocket.pyi +1 -1
  368. homeassistant-stubs/components/lamarzocco/config_flow.pyi +5 -1
  369. homeassistant-stubs/components/laundrify/__init__.pyi +2 -0
  370. homeassistant-stubs/components/laundrify/binary_sensor.pyi +0 -1
  371. homeassistant-stubs/components/laundrify/config_flow.pyi +1 -0
  372. homeassistant-stubs/components/laundrify/sensor.pyi +41 -0
  373. homeassistant-stubs/components/lawn_mower/__init__.pyi +2 -0
  374. homeassistant-stubs/components/lcn/__init__.pyi +8 -30
  375. homeassistant-stubs/components/lcn/binary_sensor.pyi +7 -7
  376. homeassistant-stubs/components/lcn/climate.pyi +5 -5
  377. homeassistant-stubs/components/lcn/config_flow.pyi +8 -3
  378. homeassistant-stubs/components/lcn/const.pyi +1 -0
  379. homeassistant-stubs/components/lcn/cover.pyi +6 -6
  380. homeassistant-stubs/components/lcn/entity.pyi +28 -0
  381. homeassistant-stubs/components/lcn/helpers.pyi +2 -2
  382. homeassistant-stubs/components/lcn/light.pyi +6 -6
  383. homeassistant-stubs/components/lcn/scene.pyi +4 -5
  384. homeassistant-stubs/components/lcn/sensor.pyi +6 -6
  385. homeassistant-stubs/components/lcn/services.pyi +16 -0
  386. homeassistant-stubs/components/lcn/switch.pyi +6 -6
  387. homeassistant-stubs/components/lcn/websocket.pyi +3 -1
  388. homeassistant-stubs/components/lektrico/__init__.pyi +12 -0
  389. homeassistant-stubs/components/lektrico/button.pyi +27 -0
  390. homeassistant-stubs/components/lektrico/config_flow.pyi +24 -0
  391. homeassistant-stubs/components/lektrico/const.pyi +4 -0
  392. homeassistant-stubs/components/lektrico/coordinator.pyi +19 -0
  393. homeassistant-stubs/components/lektrico/entity.pyi +10 -0
  394. homeassistant-stubs/components/lektrico/number.pyi +29 -0
  395. homeassistant-stubs/components/lektrico/select.pyi +30 -0
  396. homeassistant-stubs/components/lektrico/sensor.pyi +34 -0
  397. homeassistant-stubs/components/lidarr/__init__.pyi +2 -11
  398. homeassistant-stubs/components/lidarr/entity.pyi +13 -0
  399. homeassistant-stubs/components/lidarr/sensor.pyi +2 -1
  400. homeassistant-stubs/components/light/__init__.pyi +4 -2
  401. homeassistant-stubs/components/linkplay/const.pyi +1 -1
  402. homeassistant-stubs/components/linkplay/media_player.pyi +9 -3
  403. homeassistant-stubs/components/linkplay/utils.pyi +1 -1
  404. homeassistant-stubs/components/local_todo/todo.pyi +1 -0
  405. homeassistant-stubs/components/lock/__init__.pyi +4 -2
  406. homeassistant-stubs/components/lock/const.pyi +11 -0
  407. homeassistant-stubs/components/lock/device_condition.pyi +2 -2
  408. homeassistant-stubs/components/lock/device_trigger.pyi +2 -2
  409. homeassistant-stubs/components/lock/reproduce_state.pyi +2 -2
  410. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -2
  411. homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
  412. homeassistant-stubs/components/madvr/__init__.pyi +1 -1
  413. homeassistant-stubs/components/madvr/config_flow.pyi +2 -1
  414. homeassistant-stubs/components/madvr/diagnostics.pyi +10 -0
  415. homeassistant-stubs/components/matter/button.pyi +25 -0
  416. homeassistant-stubs/components/matter/entity.pyi +1 -4
  417. homeassistant-stubs/components/matter/light.pyi +0 -1
  418. homeassistant-stubs/components/matter/models.pyi +5 -3
  419. homeassistant-stubs/components/matter/number.pyi +2 -2
  420. homeassistant-stubs/components/matter/sensor.pyi +9 -0
  421. homeassistant-stubs/components/matter/valve.pyi +33 -0
  422. homeassistant-stubs/components/media_player/__init__.pyi +11 -4
  423. homeassistant-stubs/components/media_player/const.pyi +67 -63
  424. homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -3
  425. homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -0
  426. homeassistant-stubs/components/minecraft_server/diagnostics.pyi +1 -1
  427. homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -1
  428. homeassistant-stubs/components/modbus/climate.pyi +1 -1
  429. homeassistant-stubs/components/modbus/cover.pyi +1 -1
  430. homeassistant-stubs/components/modbus/fan.pyi +1 -1
  431. homeassistant-stubs/components/modbus/light.pyi +1 -1
  432. homeassistant-stubs/components/modbus/sensor.pyi +1 -1
  433. homeassistant-stubs/components/modbus/switch.pyi +1 -1
  434. homeassistant-stubs/components/mold_indicator/__init__.pyi +10 -0
  435. homeassistant-stubs/components/mold_indicator/config_flow.pyi +20 -0
  436. homeassistant-stubs/components/mold_indicator/const.pyi +6 -0
  437. homeassistant-stubs/components/mold_indicator/sensor.pyi +60 -0
  438. homeassistant-stubs/components/mopeka/__init__.pyi +1 -1
  439. homeassistant-stubs/components/motionmount/entity.pyi +3 -0
  440. homeassistant-stubs/components/motionmount/number.pyi +1 -0
  441. homeassistant-stubs/components/motionmount/select.pyi +5 -0
  442. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -1
  443. homeassistant-stubs/components/mqtt/binary_sensor.pyi +1 -1
  444. homeassistant-stubs/components/mqtt/button.pyi +1 -1
  445. homeassistant-stubs/components/mqtt/camera.pyi +1 -1
  446. homeassistant-stubs/components/mqtt/climate.pyi +1 -6
  447. homeassistant-stubs/components/mqtt/config_flow.pyi +1 -2
  448. homeassistant-stubs/components/mqtt/cover.pyi +1 -1
  449. homeassistant-stubs/components/mqtt/device_automation.pyi +1 -1
  450. homeassistant-stubs/components/mqtt/device_tracker.pyi +3 -3
  451. homeassistant-stubs/components/mqtt/device_trigger.pyi +1 -1
  452. homeassistant-stubs/components/mqtt/discovery.pyi +1 -1
  453. homeassistant-stubs/components/mqtt/{mixins.pyi → entity.pyi} +0 -3
  454. homeassistant-stubs/components/mqtt/event.pyi +1 -1
  455. homeassistant-stubs/components/mqtt/fan.pyi +1 -1
  456. homeassistant-stubs/components/mqtt/humidifier.pyi +1 -1
  457. homeassistant-stubs/components/mqtt/image.pyi +1 -1
  458. homeassistant-stubs/components/mqtt/lawn_mower.pyi +1 -1
  459. homeassistant-stubs/components/mqtt/light/__init__.pyi +1 -1
  460. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -1
  461. homeassistant-stubs/components/mqtt/light/schema_json.pyi +1 -1
  462. homeassistant-stubs/components/mqtt/light/schema_template.pyi +1 -1
  463. homeassistant-stubs/components/mqtt/lock.pyi +1 -1
  464. homeassistant-stubs/components/mqtt/notify.pyi +1 -1
  465. homeassistant-stubs/components/mqtt/number.pyi +1 -1
  466. homeassistant-stubs/components/mqtt/scene.pyi +1 -1
  467. homeassistant-stubs/components/mqtt/select.pyi +1 -1
  468. homeassistant-stubs/components/mqtt/sensor.pyi +1 -1
  469. homeassistant-stubs/components/mqtt/siren.pyi +1 -1
  470. homeassistant-stubs/components/mqtt/switch.pyi +1 -1
  471. homeassistant-stubs/components/mqtt/tag.pyi +1 -1
  472. homeassistant-stubs/components/mqtt/text.pyi +1 -1
  473. homeassistant-stubs/components/mqtt/trigger.pyi +3 -2
  474. homeassistant-stubs/components/mqtt/update.pyi +1 -1
  475. homeassistant-stubs/components/mqtt/vacuum.pyi +1 -1
  476. homeassistant-stubs/components/mqtt/valve.pyi +3 -3
  477. homeassistant-stubs/components/mqtt/water_heater.pyi +1 -1
  478. homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
  479. homeassistant-stubs/components/mysensors/binary_sensor.pyi +3 -2
  480. homeassistant-stubs/components/mysensors/climate.pyi +3 -2
  481. homeassistant-stubs/components/mysensors/cover.pyi +3 -2
  482. homeassistant-stubs/components/mysensors/device_tracker.pyi +5 -10
  483. homeassistant-stubs/components/mysensors/handler.pyi +1 -1
  484. homeassistant-stubs/components/mysensors/light.pyi +3 -3
  485. homeassistant-stubs/components/mysensors/remote.pyi +1 -1
  486. homeassistant-stubs/components/mysensors/sensor.pyi +4 -3
  487. homeassistant-stubs/components/mysensors/switch.pyi +1 -1
  488. homeassistant-stubs/components/mysensors/text.pyi +2 -2
  489. homeassistant-stubs/components/nanoleaf/device_trigger.pyi +1 -2
  490. homeassistant-stubs/components/nest/device_trigger.pyi +1 -2
  491. homeassistant-stubs/components/nest/media_source.pyi +1 -2
  492. homeassistant-stubs/components/netatmo/device_trigger.pyi +1 -2
  493. homeassistant-stubs/components/netatmo/media_source.pyi +1 -2
  494. homeassistant-stubs/components/network/websocket.pyi +1 -1
  495. homeassistant-stubs/components/nextdns/__init__.pyi +1 -1
  496. homeassistant-stubs/components/nextdns/config_flow.pyi +11 -1
  497. homeassistant-stubs/components/nextdns/coordinator.pyi +1 -0
  498. homeassistant-stubs/components/nissan_leaf/__init__.pyi +3 -14
  499. homeassistant-stubs/components/nissan_leaf/binary_sensor.pyi +2 -1
  500. homeassistant-stubs/components/nissan_leaf/button.pyi +2 -1
  501. homeassistant-stubs/components/nissan_leaf/const.pyi +1 -0
  502. homeassistant-stubs/components/nissan_leaf/entity.pyi +18 -0
  503. homeassistant-stubs/components/nissan_leaf/sensor.pyi +2 -1
  504. homeassistant-stubs/components/nissan_leaf/switch.pyi +2 -1
  505. homeassistant-stubs/components/notify/__init__.pyi +3 -2
  506. homeassistant-stubs/components/notify/legacy.pyi +5 -6
  507. homeassistant-stubs/components/notify/repairs.pyi +1 -2
  508. homeassistant-stubs/components/notion/__init__.pyi +1 -23
  509. homeassistant-stubs/components/notion/binary_sensor.pyi +1 -2
  510. homeassistant-stubs/components/notion/entity.pyi +33 -0
  511. homeassistant-stubs/components/notion/sensor.pyi +1 -2
  512. homeassistant-stubs/components/onewire/binary_sensor.pyi +1 -1
  513. homeassistant-stubs/components/onewire/sensor.pyi +1 -1
  514. homeassistant-stubs/components/onewire/switch.pyi +1 -1
  515. homeassistant-stubs/components/onkyo/media_player.pyi +84 -0
  516. homeassistant-stubs/components/onkyo/receiver.pyi +19 -0
  517. homeassistant-stubs/components/openuv/__init__.pyi +0 -11
  518. homeassistant-stubs/components/openuv/binary_sensor.pyi +1 -1
  519. homeassistant-stubs/components/openuv/entity.pyi +14 -0
  520. homeassistant-stubs/components/openuv/sensor.pyi +1 -1
  521. homeassistant-stubs/components/otbr/config_flow.pyi +3 -2
  522. homeassistant-stubs/components/overkiz/{climate_entities → climate}/__init__.pyi +9 -0
  523. homeassistant-stubs/components/overkiz/{water_heater.pyi → cover/__init__.pyi} +5 -4
  524. homeassistant-stubs/components/overkiz/executor.pyi +1 -1
  525. homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +17 -0
  526. homeassistant-stubs/components/pi_hole/__init__.pyi +1 -10
  527. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +2 -1
  528. homeassistant-stubs/components/pi_hole/entity.pyi +13 -0
  529. homeassistant-stubs/components/pi_hole/sensor.pyi +2 -1
  530. homeassistant-stubs/components/pi_hole/switch.pyi +2 -1
  531. homeassistant-stubs/components/pi_hole/update.pyi +2 -1
  532. homeassistant-stubs/components/ping/binary_sensor.pyi +0 -8
  533. homeassistant-stubs/components/ping/device_tracker.pyi +1 -3
  534. homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -1
  535. homeassistant-stubs/components/prusalink/__init__.pyi +1 -8
  536. homeassistant-stubs/components/prusalink/binary_sensor.pyi +1 -1
  537. homeassistant-stubs/components/prusalink/button.pyi +1 -1
  538. homeassistant-stubs/components/prusalink/camera.pyi +1 -1
  539. homeassistant-stubs/components/prusalink/entity.pyi +9 -0
  540. homeassistant-stubs/components/prusalink/sensor.pyi +1 -1
  541. homeassistant-stubs/components/purpleair/__init__.pyi +1 -17
  542. homeassistant-stubs/components/purpleair/entity.pyi +21 -0
  543. homeassistant-stubs/components/purpleair/sensor.pyi +1 -1
  544. homeassistant-stubs/components/qnap_qsw/diagnostics.pyi +1 -1
  545. homeassistant-stubs/components/radarr/__init__.pyi +2 -15
  546. homeassistant-stubs/components/radarr/binary_sensor.pyi +2 -1
  547. homeassistant-stubs/components/radarr/calendar.pyi +2 -1
  548. homeassistant-stubs/components/radarr/entity.pyi +16 -0
  549. homeassistant-stubs/components/radarr/sensor.pyi +2 -1
  550. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -18
  551. homeassistant-stubs/components/rainmachine/binary_sensor.pyi +2 -2
  552. homeassistant-stubs/components/rainmachine/button.pyi +2 -2
  553. homeassistant-stubs/components/rainmachine/entity.pyi +30 -0
  554. homeassistant-stubs/components/rainmachine/select.pyi +2 -2
  555. homeassistant-stubs/components/rainmachine/sensor.pyi +2 -2
  556. homeassistant-stubs/components/rainmachine/switch.pyi +2 -2
  557. homeassistant-stubs/components/rainmachine/update.pyi +2 -2
  558. homeassistant-stubs/components/recorder/const.pyi +2 -2
  559. homeassistant-stubs/components/recorder/core.pyi +3 -7
  560. homeassistant-stubs/components/recorder/history/legacy.pyi +9 -10
  561. homeassistant-stubs/components/recorder/history/modern.pyi +1 -1
  562. homeassistant-stubs/components/recorder/migration.pyi +28 -25
  563. homeassistant-stubs/components/recorder/models/__init__.pyi +2 -2
  564. homeassistant-stubs/components/recorder/models/legacy.pyi +1 -37
  565. homeassistant-stubs/components/recorder/models/time.pyi +0 -1
  566. homeassistant-stubs/components/recorder/statistics.pyi +2 -1
  567. homeassistant-stubs/components/recorder/tasks.pyi +4 -17
  568. homeassistant-stubs/components/recorder/util.pyi +6 -2
  569. homeassistant-stubs/components/recorder/websocket_api.pyi +6 -3
  570. homeassistant-stubs/components/remote/__init__.pyi +2 -0
  571. homeassistant-stubs/components/renault/device_tracker.pyi +8 -4
  572. homeassistant-stubs/components/renault/renault_hub.pyi +1 -1
  573. homeassistant-stubs/components/renault/renault_vehicle.pyi +2 -0
  574. homeassistant-stubs/components/renault/services.pyi +4 -0
  575. homeassistant-stubs/components/rfxtrx/__init__.pyi +2 -27
  576. homeassistant-stubs/components/rfxtrx/binary_sensor.pyi +2 -1
  577. homeassistant-stubs/components/rfxtrx/const.pyi +1 -0
  578. homeassistant-stubs/components/rfxtrx/cover.pyi +2 -1
  579. homeassistant-stubs/components/rfxtrx/device_action.pyi +1 -1
  580. homeassistant-stubs/components/rfxtrx/device_trigger.pyi +1 -2
  581. homeassistant-stubs/components/rfxtrx/entity.pyi +33 -0
  582. homeassistant-stubs/components/rfxtrx/event.pyi +2 -1
  583. homeassistant-stubs/components/rfxtrx/light.pyi +2 -1
  584. homeassistant-stubs/components/rfxtrx/sensor.pyi +2 -1
  585. homeassistant-stubs/components/rfxtrx/siren.pyi +2 -1
  586. homeassistant-stubs/components/rfxtrx/switch.pyi +3 -2
  587. homeassistant-stubs/components/ring/__init__.pyi +10 -9
  588. homeassistant-stubs/components/ring/binary_sensor.pyi +24 -20
  589. homeassistant-stubs/components/ring/button.pyi +2 -4
  590. homeassistant-stubs/components/ring/camera.pyi +2 -4
  591. homeassistant-stubs/components/ring/config_flow.pyi +2 -1
  592. homeassistant-stubs/components/ring/const.pyi +1 -1
  593. homeassistant-stubs/components/ring/coordinator.pyi +22 -7
  594. homeassistant-stubs/components/ring/diagnostics.pyi +2 -4
  595. homeassistant-stubs/components/ring/entity.pyi +27 -7
  596. homeassistant-stubs/components/ring/event.pyi +30 -0
  597. homeassistant-stubs/components/ring/light.pyi +2 -4
  598. homeassistant-stubs/components/ring/number.pyi +33 -0
  599. homeassistant-stubs/components/ring/sensor.pyi +6 -8
  600. homeassistant-stubs/components/ring/siren.pyi +30 -14
  601. homeassistant-stubs/components/ring/switch.pyi +25 -17
  602. homeassistant-stubs/components/roborock/binary_sensor.pyi +1 -1
  603. homeassistant-stubs/components/roborock/button.pyi +1 -1
  604. homeassistant-stubs/components/roborock/diagnostics.pyi +1 -1
  605. homeassistant-stubs/components/roborock/image.pyi +1 -1
  606. homeassistant-stubs/components/roborock/number.pyi +3 -2
  607. homeassistant-stubs/components/roborock/select.pyi +2 -1
  608. homeassistant-stubs/components/roborock/sensor.pyi +1 -1
  609. homeassistant-stubs/components/roborock/switch.pyi +3 -2
  610. homeassistant-stubs/components/roborock/time.pyi +3 -2
  611. homeassistant-stubs/components/roborock/vacuum.pyi +1 -1
  612. homeassistant-stubs/components/samsungtv/device_trigger.pyi +1 -2
  613. homeassistant-stubs/components/scene/__init__.pyi +2 -0
  614. homeassistant-stubs/components/schedule/__init__.pyi +5 -1
  615. homeassistant-stubs/components/schedule/const.pyi +1 -0
  616. homeassistant-stubs/components/script/helpers.pyi +1 -1
  617. homeassistant-stubs/components/sensibo/diagnostics.pyi +1 -1
  618. homeassistant-stubs/components/sensor/device_condition.pyi +1 -2
  619. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -2
  620. homeassistant-stubs/components/sensor/recorder.pyi +10 -6
  621. homeassistant-stubs/components/sensoterra/__init__.pyi +10 -0
  622. homeassistant-stubs/components/sensoterra/config_flow.pyi +11 -0
  623. homeassistant-stubs/components/sensoterra/const.pyi +9 -0
  624. homeassistant-stubs/components/sensoterra/coordinator.pyi +15 -0
  625. homeassistant-stubs/components/sensoterra/sensor.pyi +39 -0
  626. homeassistant-stubs/components/shelly/cover.pyi +7 -1
  627. homeassistant-stubs/components/shelly/device_trigger.pyi +1 -2
  628. homeassistant-stubs/components/shelly/update.pyi +1 -0
  629. homeassistant-stubs/components/simplisafe/__init__.pyi +4 -38
  630. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -1
  631. homeassistant-stubs/components/simplisafe/binary_sensor.pyi +2 -1
  632. homeassistant-stubs/components/simplisafe/button.pyi +2 -1
  633. homeassistant-stubs/components/simplisafe/const.pyi +6 -0
  634. homeassistant-stubs/components/simplisafe/entity.pyi +38 -0
  635. homeassistant-stubs/components/simplisafe/lock.pyi +2 -1
  636. homeassistant-stubs/components/simplisafe/sensor.pyi +2 -1
  637. homeassistant-stubs/components/siren/__init__.pyi +2 -0
  638. homeassistant-stubs/components/slack/__init__.pyi +1 -13
  639. homeassistant-stubs/components/slack/entity.pyi +15 -0
  640. homeassistant-stubs/components/slack/sensor.pyi +1 -1
  641. homeassistant-stubs/components/smlight/__init__.pyi +18 -0
  642. homeassistant-stubs/components/smlight/binary_sensor.pyi +46 -0
  643. homeassistant-stubs/components/smlight/button.pyi +32 -0
  644. homeassistant-stubs/components/smlight/config_flow.pyi +27 -0
  645. homeassistant-stubs/components/smlight/const.pyi +11 -0
  646. homeassistant-stubs/components/smlight/coordinator.pyi +49 -0
  647. homeassistant-stubs/components/smlight/diagnostics.pyi +5 -0
  648. homeassistant-stubs/components/smlight/entity.pyi +10 -0
  649. homeassistant-stubs/components/smlight/sensor.pyi +56 -0
  650. homeassistant-stubs/components/smlight/switch.pyi +39 -0
  651. homeassistant-stubs/components/smlight/update.pyi +48 -0
  652. homeassistant-stubs/components/solarlog/__init__.pyi +14 -0
  653. homeassistant-stubs/components/solarlog/config_flow.pyi +27 -0
  654. homeassistant-stubs/components/solarlog/const.pyi +4 -0
  655. homeassistant-stubs/components/solarlog/coordinator.pyi +19 -0
  656. homeassistant-stubs/components/solarlog/diagnostics.pyi +10 -0
  657. homeassistant-stubs/components/solarlog/entity.pyi +23 -0
  658. homeassistant-stubs/components/solarlog/sensor.pyi +36 -0
  659. homeassistant-stubs/components/squeezebox/__init__.pyi +24 -0
  660. homeassistant-stubs/components/squeezebox/binary_sensor.pyi +17 -0
  661. homeassistant-stubs/components/squeezebox/browse_media.pyi +18 -0
  662. homeassistant-stubs/components/squeezebox/config_flow.pyi +27 -0
  663. homeassistant-stubs/components/squeezebox/const.pyi +29 -0
  664. homeassistant-stubs/components/squeezebox/coordinator.pyi +14 -0
  665. homeassistant-stubs/components/squeezebox/entity.pyi +14 -0
  666. homeassistant-stubs/components/squeezebox/media_player.pyi +111 -0
  667. homeassistant-stubs/components/squeezebox/sensor.pyi +18 -0
  668. homeassistant-stubs/components/ssdp/__init__.pyi +3 -1
  669. homeassistant-stubs/components/starlink/device_tracker.pyi +2 -5
  670. homeassistant-stubs/components/starlink/diagnostics.pyi +1 -1
  671. homeassistant-stubs/components/stt/const.pyi +6 -2
  672. homeassistant-stubs/components/surepetcare/config_flow.pyi +2 -6
  673. homeassistant-stubs/components/surepetcare/lock.pyi +3 -4
  674. homeassistant-stubs/components/switch/__init__.pyi +2 -0
  675. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  676. homeassistant-stubs/components/switchbot_cloud/const.pyi +4 -0
  677. homeassistant-stubs/components/switchbot_cloud/entity.pyi +1 -1
  678. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +32 -0
  679. homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -1
  680. homeassistant-stubs/components/switcher_kis/config_flow.pyi +23 -2
  681. homeassistant-stubs/components/switcher_kis/coordinator.pyi +2 -0
  682. homeassistant-stubs/components/switcher_kis/cover.pyi +2 -1
  683. homeassistant-stubs/components/switcher_kis/utils.pyi +1 -1
  684. homeassistant-stubs/components/tailscale/__init__.pyi +0 -13
  685. homeassistant-stubs/components/tailscale/binary_sensor.pyi +1 -1
  686. homeassistant-stubs/components/tailscale/config_flow.pyi +2 -0
  687. homeassistant-stubs/components/tailscale/entity.pyi +15 -0
  688. homeassistant-stubs/components/tailscale/sensor.pyi +1 -1
  689. homeassistant-stubs/components/tailwind/cover.pyi +1 -1
  690. homeassistant-stubs/components/tami4/button.pyi +14 -1
  691. homeassistant-stubs/components/tautulli/__init__.pyi +0 -13
  692. homeassistant-stubs/components/tautulli/entity.pyi +15 -0
  693. homeassistant-stubs/components/tautulli/sensor.pyi +2 -1
  694. homeassistant-stubs/components/tcp/binary_sensor.pyi +2 -1
  695. homeassistant-stubs/components/tcp/common.pyi +0 -17
  696. homeassistant-stubs/components/tcp/entity.pyi +21 -0
  697. homeassistant-stubs/components/tcp/sensor.pyi +2 -1
  698. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -17
  699. homeassistant-stubs/components/threshold/const.pyi +20 -5
  700. homeassistant-stubs/components/tibber/services.pyi +2 -2
  701. homeassistant-stubs/components/tile/device_tracker.pyi +1 -3
  702. homeassistant-stubs/components/todo/__init__.pyi +1 -1
  703. homeassistant-stubs/components/todo/const.pyi +4 -0
  704. homeassistant-stubs/components/todo/intent.pyi +2 -2
  705. homeassistant-stubs/components/tolo/__init__.pyi +3 -22
  706. homeassistant-stubs/components/tolo/binary_sensor.pyi +2 -1
  707. homeassistant-stubs/components/tolo/button.pyi +2 -1
  708. homeassistant-stubs/components/tolo/climate.pyi +2 -1
  709. homeassistant-stubs/components/tolo/coordinator.pyi +20 -0
  710. homeassistant-stubs/components/tolo/entity.pyi +11 -0
  711. homeassistant-stubs/components/tolo/fan.pyi +2 -1
  712. homeassistant-stubs/components/tolo/light.pyi +2 -1
  713. homeassistant-stubs/components/tolo/number.pyi +2 -1
  714. homeassistant-stubs/components/tolo/select.pyi +2 -1
  715. homeassistant-stubs/components/tolo/sensor.pyi +2 -1
  716. homeassistant-stubs/components/tolo/switch.pyi +2 -1
  717. homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -1
  718. homeassistant-stubs/components/tplink/button.pyi +2 -1
  719. homeassistant-stubs/components/tplink/deprecate.pyi +18 -0
  720. homeassistant-stubs/components/tplink/entity.pyi +8 -4
  721. homeassistant-stubs/components/tplink/number.pyi +3 -1
  722. homeassistant-stubs/components/tplink/select.pyi +1 -1
  723. homeassistant-stubs/components/tplink/sensor.pyi +2 -1
  724. homeassistant-stubs/components/tplink/siren.pyi +22 -0
  725. homeassistant-stubs/components/tplink/switch.pyi +1 -1
  726. homeassistant-stubs/components/tplink_omada/__init__.pyi +2 -0
  727. homeassistant-stubs/components/tplink_omada/controller.pyi +10 -5
  728. homeassistant-stubs/components/tplink_omada/coordinator.pyi +7 -2
  729. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +1 -3
  730. homeassistant-stubs/components/tplink_omada/entity.pyi +0 -1
  731. homeassistant-stubs/components/tplink_omada/update.pyi +8 -7
  732. homeassistant-stubs/components/trace/__init__.pyi +1 -2
  733. homeassistant-stubs/components/trace/const.pyi +7 -3
  734. homeassistant-stubs/components/tractive/device_tracker.pyi +3 -9
  735. homeassistant-stubs/components/tradfri/cover.pyi +1 -1
  736. homeassistant-stubs/components/tradfri/fan.pyi +1 -1
  737. homeassistant-stubs/components/tradfri/light.pyi +1 -1
  738. homeassistant-stubs/components/tradfri/sensor.pyi +1 -1
  739. homeassistant-stubs/components/tradfri/switch.pyi +1 -1
  740. homeassistant-stubs/components/tts/__init__.pyi +2 -1
  741. homeassistant-stubs/components/tts/const.pyi +6 -1
  742. homeassistant-stubs/components/tts/helper.pyi +2 -3
  743. homeassistant-stubs/components/tts/legacy.pyi +0 -1
  744. homeassistant-stubs/components/tts/media_source.pyi +3 -3
  745. homeassistant-stubs/components/unifi/device_tracker.pyi +2 -4
  746. homeassistant-stubs/components/unifi/hub/__init__.pyi +2 -0
  747. homeassistant-stubs/components/unifi/switch.pyi +1 -1
  748. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +1 -2
  749. homeassistant-stubs/components/unifiprotect/button.pyi +1 -2
  750. homeassistant-stubs/components/unifiprotect/entity.pyi +40 -3
  751. homeassistant-stubs/components/unifiprotect/event.pyi +1 -2
  752. homeassistant-stubs/components/unifiprotect/media_source.pyi +1 -1
  753. homeassistant-stubs/components/unifiprotect/number.pyi +1 -2
  754. homeassistant-stubs/components/unifiprotect/select.pyi +1 -2
  755. homeassistant-stubs/components/unifiprotect/sensor.pyi +1 -2
  756. homeassistant-stubs/components/unifiprotect/switch.pyi +1 -2
  757. homeassistant-stubs/components/unifiprotect/text.pyi +1 -2
  758. homeassistant-stubs/components/upcloud/__init__.pyi +2 -37
  759. homeassistant-stubs/components/upcloud/binary_sensor.pyi +2 -1
  760. homeassistant-stubs/components/upcloud/const.pyi +1 -0
  761. homeassistant-stubs/components/upcloud/entity.pyi +38 -0
  762. homeassistant-stubs/components/upcloud/switch.pyi +4 -1
  763. homeassistant-stubs/components/update/__init__.pyi +1 -0
  764. homeassistant-stubs/components/uvc/__init__.pyi +0 -0
  765. homeassistant-stubs/components/uvc/camera.pyi +54 -0
  766. homeassistant-stubs/components/vacuum/__init__.pyi +21 -14
  767. homeassistant-stubs/components/vallox/__init__.pyi +6 -9
  768. homeassistant-stubs/components/vallox/binary_sensor.pyi +1 -1
  769. homeassistant-stubs/components/vallox/config_flow.pyi +5 -2
  770. homeassistant-stubs/components/vallox/const.pyi +3 -3
  771. homeassistant-stubs/components/vallox/date.pyi +1 -1
  772. homeassistant-stubs/components/vallox/entity.pyi +12 -0
  773. homeassistant-stubs/components/vallox/fan.pyi +2 -2
  774. homeassistant-stubs/components/vallox/number.pyi +1 -1
  775. homeassistant-stubs/components/vallox/sensor.pyi +2 -2
  776. homeassistant-stubs/components/vallox/switch.pyi +1 -1
  777. homeassistant-stubs/components/valve/__init__.pyi +3 -1
  778. homeassistant-stubs/components/valve/const.pyi +9 -0
  779. homeassistant-stubs/components/velbus/climate.pyi +4 -1
  780. homeassistant-stubs/components/wallbox/const.pyi +4 -0
  781. homeassistant-stubs/components/wallbox/coordinator.pyi +3 -1
  782. homeassistant-stubs/components/wallbox/number.pyi +1 -1
  783. homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
  784. homeassistant-stubs/components/water_heater/__init__.pyi +2 -0
  785. homeassistant-stubs/components/weather/__init__.pyi +1 -1
  786. homeassistant-stubs/components/weather/const.pyi +5 -0
  787. homeassistant-stubs/components/weather/intent.pyi +1 -3
  788. homeassistant-stubs/components/weather/websocket_api.pyi +1 -2
  789. homeassistant-stubs/components/webostv/device_trigger.pyi +1 -2
  790. homeassistant-stubs/components/withings/config_flow.pyi +1 -1
  791. homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +1 -0
  792. homeassistant-stubs/components/yale_smart_alarm/entity.pyi +9 -1
  793. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +10 -6
  794. homeassistant-stubs/components/yale_smart_alarm/switch.pyi +20 -0
  795. homeassistant-stubs/components/youtube/const.pyi +1 -0
  796. homeassistant-stubs/components/youtube/coordinator.pyi +1 -1
  797. homeassistant-stubs/components/youtube/sensor.pyi +1 -1
  798. homeassistant-stubs/components/zeroconf/__init__.pyi +4 -0
  799. homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
  800. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +1 -0
  801. homeassistant-stubs/components/zwave_js/const.pyi +1 -0
  802. homeassistant-stubs/components/zwave_js/cover.pyi +5 -0
  803. homeassistant-stubs/components/zwave_js/device_condition.pyi +1 -1
  804. homeassistant-stubs/components/zwave_js/device_trigger.pyi +1 -2
  805. homeassistant-stubs/components/zwave_js/diagnostics.pyi +1 -2
  806. homeassistant-stubs/components/zwave_js/entity.pyi +1 -2
  807. homeassistant-stubs/components/zwave_js/lock.pyi +2 -3
  808. homeassistant-stubs/components/zwave_js/migrate.pyi +8 -7
  809. homeassistant-stubs/components/zwave_js/sensor.pyi +8 -4
  810. homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +1 -1
  811. homeassistant-stubs/config_entries.pyi +9 -4
  812. homeassistant-stubs/const.pyi +19 -8
  813. homeassistant-stubs/helpers/aiohttp_client.pyi +8 -7
  814. homeassistant-stubs/helpers/condition.pyi +2 -0
  815. homeassistant-stubs/helpers/config_validation.pyi +5 -1
  816. homeassistant-stubs/helpers/discovery.pyi +1 -1
  817. homeassistant-stubs/helpers/discovery_flow.pyi +12 -2
  818. homeassistant-stubs/helpers/frame.pyi +1 -1
  819. homeassistant-stubs/helpers/llm.pyi +5 -5
  820. homeassistant-stubs/helpers/script.pyi +1 -1
  821. homeassistant-stubs/helpers/state.pyi +2 -1
  822. homeassistant-stubs/helpers/template.pyi +5 -1
  823. homeassistant-stubs/util/aiohttp.pyi +10 -0
  824. homeassistant-stubs/util/package.pyi +3 -0
  825. homeassistant-stubs/util/ssl.pyi +8 -4
  826. homeassistant-stubs/util/unit_conversion.pyi +2 -0
  827. homeassistant-stubs/util/unit_system.pyi +1 -0
  828. {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/METADATA +14 -16
  829. {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/RECORD +904 -779
  830. {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/WHEEL +1 -1
  831. homeassistant-stubs/components/esphome/voice_assistant.pyi +0 -66
  832. homeassistant-stubs/components/notion/model.pyi +0 -7
  833. homeassistant-stubs/components/overkiz/climate.pyi +0 -10
  834. homeassistant-stubs/components/overkiz/cover.pyi +0 -11
  835. homeassistant-stubs/components/overkiz/water_heater_entities/__init__.pyi +0 -8
  836. homeassistant-stubs/components/rainmachine/model.pyi +0 -7
  837. homeassistant-stubs/components/recorder/history/common.pyi +0 -4
  838. homeassistant-stubs/components/unifiprotect/models.pyi +0 -44
  839. /homeassistant-stubs/components/deconz/{deconz_device.pyi → entity.pyi} +0 -0
  840. /homeassistant-stubs/components/devolo_home_control/{devolo_device.pyi → entity.pyi} +0 -0
  841. /homeassistant-stubs/components/modbus/{base_platform.pyi → entity.pyi} +0 -0
  842. /homeassistant-stubs/components/mysensors/{device.pyi → entity.pyi} +0 -0
  843. /homeassistant-stubs/components/onewire/{onewire_entities.pyi → entity.pyi} +0 -0
  844. /homeassistant-stubs/components/{overkiz/cover_entities → onkyo}/__init__.pyi +0 -0
  845. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater.pyi +0 -0
  846. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +0 -0
  847. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_towel_dryer.pyi +0 -0
  848. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_heat_recovery_ventilation.pyi +0 -0
  849. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heat_pump_main_component.pyi +0 -0
  850. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heating_zone.pyi +0 -0
  851. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control.pyi +0 -0
  852. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control_zone.pyi +0 -0
  853. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_hlrrwifi.pyi +0 -0
  854. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_ovp.pyi +0 -0
  855. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_heating_temperature_interface.pyi +0 -0
  856. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_thermostat.pyi +0 -0
  857. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/valve_heating_temperature_interface.pyi +0 -0
  858. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/awning.pyi +0 -0
  859. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/generic_cover.pyi +0 -0
  860. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/vertical_cover.pyi +0 -0
  861. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_domestic_hot_water_production_mlb_component.pyi +0 -0
  862. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_pass_apc_dhw.pyi +0 -0
  863. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/domestic_hot_water_production.pyi +0 -0
  864. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/hitachi_dhw.pyi +0 -0
  865. /homeassistant-stubs/components/roborock/{device.pyi → entity.pyi} +0 -0
  866. /homeassistant-stubs/components/tradfri/{base_class.pyi → entity.pyi} +0 -0
  867. {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info/licenses}/LICENSE +0 -0
@@ -1,17 +1,19 @@
1
1
  from . import EleventLabsConfigEntry as EleventLabsConfigEntry
2
- from .const import CONF_VOICE as CONF_VOICE, DOMAIN as DOMAIN
2
+ from .const import CONF_OPTIMIZE_LATENCY as CONF_OPTIMIZE_LATENCY, CONF_SIMILARITY as CONF_SIMILARITY, CONF_STABILITY as CONF_STABILITY, CONF_STYLE as CONF_STYLE, CONF_USE_SPEAKER_BOOST as CONF_USE_SPEAKER_BOOST, CONF_VOICE as CONF_VOICE, DEFAULT_OPTIMIZE_LATENCY as DEFAULT_OPTIMIZE_LATENCY, DEFAULT_SIMILARITY as DEFAULT_SIMILARITY, DEFAULT_STABILITY as DEFAULT_STABILITY, DEFAULT_STYLE as DEFAULT_STYLE, DEFAULT_USE_SPEAKER_BOOST as DEFAULT_USE_SPEAKER_BOOST, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from elevenlabs.client import AsyncElevenLabs as AsyncElevenLabs
5
- from elevenlabs.types import Model as Model, Voice as ElevenLabsVoice
5
+ from elevenlabs.types import Model as Model, Voice as ElevenLabsVoice, VoiceSettings
6
6
  from homeassistant.components.tts import ATTR_VOICE as ATTR_VOICE, TextToSpeechEntity as TextToSpeechEntity, TtsAudioType as TtsAudioType, Voice as Voice
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
9
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
+ from types import MappingProxyType
11
12
  from typing import Any
12
13
 
13
14
  _LOGGER: Incomplete
14
15
 
16
+ def to_voice_settings(options: MappingProxyType[str, Any]) -> VoiceSettings: ...
15
17
  async def async_setup_entry(hass: HomeAssistant, config_entry: EleventLabsConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
18
 
17
19
  class ElevenLabsTTSEntity(TextToSpeechEntity):
@@ -20,11 +22,13 @@ class ElevenLabsTTSEntity(TextToSpeechEntity):
20
22
  _model: Incomplete
21
23
  _default_voice_id: Incomplete
22
24
  _voices: Incomplete
25
+ _voice_settings: Incomplete
26
+ _latency: Incomplete
23
27
  _attr_unique_id: Incomplete
24
28
  _attr_name: Incomplete
25
29
  _attr_device_info: Incomplete
26
30
  _attr_supported_languages: Incomplete
27
31
  _attr_default_language: Incomplete
28
- def __init__(self, client: AsyncElevenLabs, model: Model, voices: list[ElevenLabsVoice], default_voice_id: str, entry_id: str, title: str) -> None: ...
32
+ def __init__(self, client: AsyncElevenLabs, model: Model, voices: list[ElevenLabsVoice], default_voice_id: str, entry_id: str, title: str, voice_settings: VoiceSettings, latency: int = 0) -> None: ...
29
33
  def async_get_supported_voices(self, language: str) -> list[Voice]: ...
30
34
  async def async_get_tts_audio(self, message: str, language: str, options: dict[str, Any]) -> TtsAudioType: ...
@@ -2,19 +2,15 @@ from .const import ATTR_KEY as ATTR_KEY, ATTR_KEYPAD_ID as ATTR_KEYPAD_ID, ATTR_
2
2
  from .discovery import async_discover_device as async_discover_device, async_discover_devices as async_discover_devices, async_trigger_discovery as async_trigger_discovery, async_update_entry_from_discovery as async_update_entry_from_discovery
3
3
  from .models import ELKM1Data as ELKM1Data
4
4
  from _typeshed import Incomplete
5
- from collections.abc import Iterable
6
5
  from elkm1_lib.elements import Element as Element
7
6
  from elkm1_lib.elk import Elk, Panel as Panel
8
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_IMPORT as SOURCE_IMPORT
9
- from homeassistant.const import ATTR_CONNECTIONS as ATTR_CONNECTIONS, CONF_ENABLED as CONF_ENABLED, CONF_EXCLUDE as CONF_EXCLUDE, CONF_HOST as CONF_HOST, CONF_INCLUDE as CONF_INCLUDE, CONF_PASSWORD as CONF_PASSWORD, CONF_PREFIX as CONF_PREFIX, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_USERNAME as CONF_USERNAME, CONF_ZONE as CONF_ZONE, Platform as Platform, UnitOfTemperature as UnitOfTemperature
8
+ from homeassistant.const import CONF_ENABLED as CONF_ENABLED, CONF_EXCLUDE as CONF_EXCLUDE, CONF_HOST as CONF_HOST, CONF_INCLUDE as CONF_INCLUDE, CONF_PASSWORD as CONF_PASSWORD, CONF_PREFIX as CONF_PREFIX, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_USERNAME as CONF_USERNAME, CONF_ZONE as CONF_ZONE, Platform as Platform, UnitOfTemperature as UnitOfTemperature
10
9
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
11
10
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
12
- from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo
13
- from homeassistant.helpers.entity import Entity as Entity
14
11
  from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
15
12
  from homeassistant.helpers.typing import ConfigType as ConfigType
16
13
  from homeassistant.util.network import is_ip_address as is_ip_address
17
- from typing import Any
18
14
 
19
15
  ElkM1ConfigEntry = ConfigEntry[ELKM1Data]
20
16
  SYNC_TIMEOUT: int
@@ -41,32 +37,3 @@ async def async_unload_entry(hass: HomeAssistant, entry: ElkM1ConfigEntry) -> bo
41
37
  async def async_wait_for_elk_to_sync(elk: Elk, login_timeout: int, sync_timeout: int) -> bool: ...
42
38
  def _async_get_elk_panel(hass: HomeAssistant, service: ServiceCall) -> Panel: ...
43
39
  def _create_elk_services(hass: HomeAssistant) -> None: ...
44
- def create_elk_entities(elk_data: ELKM1Data, elk_elements: Iterable[Element], element_type: str, class_: Any, entities: list[ElkEntity]) -> list[ElkEntity] | None: ...
45
-
46
- class ElkEntity(Entity):
47
- _attr_has_entity_name: bool
48
- _attr_should_poll: bool
49
- _elk: Incomplete
50
- _element: Incomplete
51
- _mac: Incomplete
52
- _prefix: Incomplete
53
- _temperature_unit: Incomplete
54
- _unique_id: Incomplete
55
- _attr_name: Incomplete
56
- def __init__(self, element: Element, elk: Elk, elk_data: ELKM1Data) -> None: ...
57
- @property
58
- def unique_id(self) -> str: ...
59
- @property
60
- def extra_state_attributes(self) -> dict[str, Any]: ...
61
- @property
62
- def available(self) -> bool: ...
63
- def initial_attrs(self) -> dict[str, Any]: ...
64
- def _element_changed(self, element: Element, changeset: dict[str, Any]) -> None: ...
65
- def _element_callback(self, element: Element, changeset: dict[str, Any]) -> None: ...
66
- async def async_added_to_hass(self) -> None: ...
67
- @property
68
- def device_info(self) -> DeviceInfo: ...
69
-
70
- class ElkAttachedEntity(ElkEntity):
71
- @property
72
- def device_info(self) -> DeviceInfo: ...
@@ -1,5 +1,6 @@
1
- from . import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry, create_elk_entities as create_elk_entities
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
2
  from .const import ATTR_CHANGED_BY_ID as ATTR_CHANGED_BY_ID, ATTR_CHANGED_BY_KEYPAD as ATTR_CHANGED_BY_KEYPAD, ATTR_CHANGED_BY_TIME as ATTR_CHANGED_BY_TIME, ELK_USER_CODE_SERVICE_SCHEMA as ELK_USER_CODE_SERVICE_SCHEMA
3
+ from .entity import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, create_elk_entities as create_elk_entities
3
4
  from .models import ELKM1Data as ELKM1Data
4
5
  from _typeshed import Incomplete
5
6
  from elkm1_lib.areas import Area as Area
@@ -1,4 +1,5 @@
1
- from . import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
+ from .entity import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity
2
3
  from _typeshed import Incomplete
3
4
  from elkm1_lib.elements import Element as Element
4
5
  from elkm1_lib.zones import Zone as Zone
@@ -1,4 +1,6 @@
1
- from . import ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry, create_elk_entities as create_elk_entities
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
+ from .const import DOMAIN as DOMAIN
3
+ from .entity import ElkEntity as ElkEntity, create_elk_entities as create_elk_entities
2
4
  from _typeshed import Incomplete
3
5
  from elkm1_lib.const import ThermostatFan, ThermostatMode
4
6
  from elkm1_lib.elements import Element as Element
@@ -7,6 +9,7 @@ from homeassistant.components.climate import ATTR_TARGET_TEMP_HIGH as ATTR_TARGE
7
9
  from homeassistant.const import PRECISION_WHOLE as PRECISION_WHOLE
8
10
  from homeassistant.core import HomeAssistant as HomeAssistant
9
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
+ from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
10
13
  from typing import Any
11
14
 
12
15
  SUPPORT_HVAC: Incomplete
@@ -0,0 +1,43 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from .models import ELKM1Data as ELKM1Data
3
+ from _typeshed import Incomplete
4
+ from collections.abc import Iterable
5
+ from elkm1_lib.elements import Element as Element
6
+ from elkm1_lib.elk import Elk as Elk
7
+ from homeassistant.const import ATTR_CONNECTIONS as ATTR_CONNECTIONS
8
+ from homeassistant.core import callback as callback
9
+ from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo
10
+ from homeassistant.helpers.entity import Entity as Entity
11
+ from typing import Any
12
+
13
+ _LOGGER: Incomplete
14
+
15
+ def create_elk_entities(elk_data: ELKM1Data, elk_elements: Iterable[Element], element_type: str, class_: Any, entities: list[ElkEntity]) -> list[ElkEntity] | None: ...
16
+
17
+ class ElkEntity(Entity):
18
+ _attr_has_entity_name: bool
19
+ _attr_should_poll: bool
20
+ _elk: Incomplete
21
+ _element: Incomplete
22
+ _mac: Incomplete
23
+ _prefix: Incomplete
24
+ _temperature_unit: Incomplete
25
+ _unique_id: Incomplete
26
+ _attr_name: Incomplete
27
+ def __init__(self, element: Element, elk: Elk, elk_data: ELKM1Data) -> None: ...
28
+ @property
29
+ def unique_id(self) -> str: ...
30
+ @property
31
+ def extra_state_attributes(self) -> dict[str, Any]: ...
32
+ @property
33
+ def available(self) -> bool: ...
34
+ def initial_attrs(self) -> dict[str, Any]: ...
35
+ def _element_changed(self, element: Element, changeset: dict[str, Any]) -> None: ...
36
+ def _element_callback(self, element: Element, changeset: dict[str, Any]) -> None: ...
37
+ async def async_added_to_hass(self) -> None: ...
38
+ @property
39
+ def device_info(self) -> DeviceInfo: ...
40
+
41
+ class ElkAttachedEntity(ElkEntity):
42
+ @property
43
+ def device_info(self) -> DeviceInfo: ...
@@ -1,4 +1,5 @@
1
- from . import ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry, create_elk_entities as create_elk_entities
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
+ from .entity import ElkEntity as ElkEntity, create_elk_entities as create_elk_entities
2
3
  from .models import ELKM1Data as ELKM1Data
3
4
  from _typeshed import Incomplete
4
5
  from elkm1_lib.elements import Element as Element
@@ -1,4 +1,5 @@
1
- from . import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry, create_elk_entities as create_elk_entities
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
+ from .entity import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, create_elk_entities as create_elk_entities
2
3
  from elkm1_lib.tasks import Task as Task
3
4
  from homeassistant.components.scene import Scene as Scene
4
5
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -1,5 +1,6 @@
1
- from . import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry, create_elk_entities as create_elk_entities
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
2
  from .const import ATTR_VALUE as ATTR_VALUE, ELK_USER_CODE_SERVICE_SCHEMA as ELK_USER_CODE_SERVICE_SCHEMA
3
+ from .entity import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, create_elk_entities as create_elk_entities
3
4
  from _typeshed import Incomplete
4
5
  from elkm1_lib.counters import Counter as Counter
5
6
  from elkm1_lib.elements import Element as Element
@@ -1,5 +1,12 @@
1
- from . import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry, create_elk_entities as create_elk_entities
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
+ from .entity import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, create_elk_entities as create_elk_entities
3
+ from .models import ELKM1Data as ELKM1Data
4
+ from _typeshed import Incomplete
5
+ from elkm1_lib.const import ThermostatMode
6
+ from elkm1_lib.elements import Element as Element
7
+ from elkm1_lib.elk import Elk as Elk
2
8
  from elkm1_lib.outputs import Output as Output
9
+ from elkm1_lib.thermostats import Thermostat as Thermostat
3
10
  from homeassistant.components.switch import SwitchEntity as SwitchEntity
4
11
  from homeassistant.core import HomeAssistant as HomeAssistant
5
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -13,3 +20,14 @@ class ElkOutput(ElkAttachedEntity, SwitchEntity):
13
20
  def is_on(self) -> bool: ...
14
21
  async def async_turn_on(self, **kwargs: Any) -> None: ...
15
22
  async def async_turn_off(self, **kwargs: Any) -> None: ...
23
+
24
+ class ElkThermostatEMHeat(ElkEntity, SwitchEntity):
25
+ _element: Thermostat
26
+ _unique_id: Incomplete
27
+ _attr_name: Incomplete
28
+ def __init__(self, element: Element, elk: Elk, elk_data: ELKM1Data) -> None: ...
29
+ @property
30
+ def is_on(self) -> bool: ...
31
+ def _elk_set(self, mode: ThermostatMode) -> None: ...
32
+ async def async_turn_on(self, **kwargs: Any) -> None: ...
33
+ async def async_turn_off(self, **kwargs: Any) -> None: ...
@@ -20,6 +20,7 @@ async def validate_input(hass: HomeAssistant, host: str, username: str, password
20
20
 
21
21
  class EnphaseConfigFlow(ConfigFlow, domain=DOMAIN):
22
22
  VERSION: int
23
+ _reconnect_entry: ConfigEntry
23
24
  ip_address: Incomplete
24
25
  username: Incomplete
25
26
  protovers: Incomplete
@@ -33,7 +34,8 @@ class EnphaseConfigFlow(ConfigFlow, domain=DOMAIN):
33
34
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
34
35
  def _async_envoy_name(self) -> str: ...
35
36
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
36
- async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
37
+ async def async_step_reconfigure(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
38
+ async def async_step_reconfigure_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
37
39
 
38
40
  class EnvoyOptionsFlowHandler(OptionsFlowWithConfigEntry):
39
41
  async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -13,11 +13,13 @@ from typing import Any
13
13
  SCAN_INTERVAL: Incomplete
14
14
  TOKEN_REFRESH_CHECK_INTERVAL: Incomplete
15
15
  STALE_TOKEN_THRESHOLD: Incomplete
16
+ NOTIFICATION_ID: str
16
17
  _LOGGER: Incomplete
17
18
  EnphaseConfigEntry = ConfigEntry[EnphaseUpdateCoordinator]
18
19
 
19
20
  class EnphaseUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
20
21
  envoy_serial_number: str
22
+ envoy_firmware: str
21
23
  envoy: Incomplete
22
24
  entry: Incomplete
23
25
  username: Incomplete
@@ -6,7 +6,7 @@ from _typeshed import Incomplete
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 PERCENTAGE as PERCENTAGE, UnitOfApparentPower as UnitOfApparentPower, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfFrequency as UnitOfFrequency, UnitOfPower as UnitOfPower, UnitOfTemperature as UnitOfTemperature
9
+ from homeassistant.const import PERCENTAGE as PERCENTAGE, UnitOfApparentPower as UnitOfApparentPower, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfFrequency as UnitOfFrequency, UnitOfPower as UnitOfPower, UnitOfTemperature as UnitOfTemperature
10
10
  from homeassistant.core import HomeAssistant as HomeAssistant
11
11
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
12
12
  from homeassistant.helpers.entity import Entity as Entity
@@ -43,6 +43,8 @@ class EnvoyConsumptionSensorEntityDescription(SensorEntityDescription):
43
43
 
44
44
  CONSUMPTION_SENSORS: Incomplete
45
45
  CONSUMPTION_PHASE_SENSORS: Incomplete
46
+ NET_CONSUMPTION_SENSORS: Incomplete
47
+ NET_CONSUMPTION_PHASE_SENSORS: Incomplete
46
48
 
47
49
  @dataclass(frozen=True, kw_only=True)
48
50
  class EnvoyCTSensorEntityDescription(SensorEntityDescription):
@@ -110,6 +112,11 @@ class EnvoyConsumptionEntity(EnvoySystemSensorEntity):
110
112
  @property
111
113
  def native_value(self) -> int | None: ...
112
114
 
115
+ class EnvoyNetConsumptionEntity(EnvoySystemSensorEntity):
116
+ entity_description: EnvoyConsumptionSensorEntityDescription
117
+ @property
118
+ def native_value(self) -> int | None: ...
119
+
113
120
  class EnvoyProductionPhaseEntity(EnvoySystemSensorEntity):
114
121
  entity_description: EnvoyProductionSensorEntityDescription
115
122
  @property
@@ -120,6 +127,11 @@ class EnvoyConsumptionPhaseEntity(EnvoySystemSensorEntity):
120
127
  @property
121
128
  def native_value(self) -> int | None: ...
122
129
 
130
+ class EnvoyNetConsumptionPhaseEntity(EnvoySystemSensorEntity):
131
+ entity_description: EnvoyConsumptionSensorEntityDescription
132
+ @property
133
+ def native_value(self) -> int | None: ...
134
+
123
135
  class EnvoyConsumptionCTEntity(EnvoySystemSensorEntity):
124
136
  entity_description: EnvoyCTSensorEntityDescription
125
137
  @property
@@ -72,7 +72,7 @@ class EnvoyStorageSettingsSwitchEntity(EnvoyBaseEntity, SwitchEntity):
72
72
  _serial_number: Incomplete
73
73
  _attr_unique_id: Incomplete
74
74
  _attr_device_info: Incomplete
75
- def __init__(self, coordinator: EnphaseUpdateCoordinator, description: EnvoyStorageSettingsSwitchEntityDescription, enpower: EnvoyEnpower) -> None: ...
75
+ def __init__(self, coordinator: EnphaseUpdateCoordinator, description: EnvoyStorageSettingsSwitchEntityDescription, enpower: EnvoyEnpower | None) -> None: ...
76
76
  @property
77
77
  def is_on(self) -> bool: ...
78
78
  async def async_turn_on(self, **kwargs: Any) -> None: ...
@@ -1,9 +1,10 @@
1
- from .const import CONF_NOISE_PSK as CONF_NOISE_PSK, DOMAIN as DOMAIN
1
+ from .const import CONF_NOISE_PSK as CONF_NOISE_PSK, DATA_FFMPEG_PROXY as DATA_FFMPEG_PROXY, DOMAIN as DOMAIN
2
2
  from .domain_data import DomainData as DomainData
3
3
  from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry, RuntimeEntryData as RuntimeEntryData
4
+ from .ffmpeg_proxy import FFmpegProxyData as FFmpegProxyData, FFmpegProxyView as FFmpegProxyView
4
5
  from .manager import ESPHomeManager as ESPHomeManager, cleanup_instance as cleanup_instance
5
6
  from _typeshed import Incomplete
6
- from homeassistant.components import zeroconf as zeroconf
7
+ from homeassistant.components import ffmpeg as ffmpeg, zeroconf as zeroconf
7
8
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT
8
9
  from homeassistant.core import HomeAssistant as HomeAssistant
9
10
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -0,0 +1,75 @@
1
+ import asyncio
2
+ from .const import DOMAIN as DOMAIN
3
+ from .entity import EsphomeAssistEntity as EsphomeAssistEntity
4
+ from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry, RuntimeEntryData as RuntimeEntryData
5
+ from .enum_mapper import EsphomeEnumMapper as EsphomeEnumMapper
6
+ from .ffmpeg_proxy import async_create_proxy_url as async_create_proxy_url
7
+ from _typeshed import Incomplete
8
+ from aioesphomeapi import MediaPlayerSupportedFormat as MediaPlayerSupportedFormat, VoiceAssistantAnnounceFinished as VoiceAssistantAnnounceFinished, VoiceAssistantAudioSettings as VoiceAssistantAudioSettings, VoiceAssistantEventType, VoiceAssistantTimerEventType
9
+ from collections.abc import AsyncIterable
10
+ from homeassistant.components import assist_satellite as assist_satellite, tts as tts
11
+ from homeassistant.components.assist_pipeline import PipelineEvent as PipelineEvent, PipelineEventType as PipelineEventType, PipelineStage as PipelineStage
12
+ from homeassistant.components.intent import TimerEventType as TimerEventType, TimerInfo as TimerInfo, async_register_timer_handler as async_register_timer_handler
13
+ from homeassistant.components.media_player import async_process_play_media_url as async_process_play_media_url
14
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
15
+ from homeassistant.const import EntityCategory as EntityCategory, Platform as Platform
16
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
17
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
18
+ from typing import Any
19
+
20
+ _LOGGER: Incomplete
21
+ _VOICE_ASSISTANT_EVENT_TYPES: EsphomeEnumMapper[VoiceAssistantEventType, PipelineEventType]
22
+ _TIMER_EVENT_TYPES: EsphomeEnumMapper[VoiceAssistantTimerEventType, TimerEventType]
23
+ _ANNOUNCEMENT_TIMEOUT_SEC: Incomplete
24
+ _CONFIG_TIMEOUT_SEC: int
25
+
26
+ async def async_setup_entry(hass: HomeAssistant, entry: ESPHomeConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
27
+
28
+ class EsphomeAssistSatellite(EsphomeAssistEntity, assist_satellite.AssistSatelliteEntity):
29
+ entity_description: Incomplete
30
+ config_entry: Incomplete
31
+ entry_data: Incomplete
32
+ cli: Incomplete
33
+ _is_running: bool
34
+ _pipeline_task: Incomplete
35
+ _audio_queue: Incomplete
36
+ _tts_streaming_task: Incomplete
37
+ _udp_server: Incomplete
38
+ _satellite_config: Incomplete
39
+ def __init__(self, config_entry: ConfigEntry, entry_data: RuntimeEntryData) -> None: ...
40
+ @property
41
+ def pipeline_entity_id(self) -> str | None: ...
42
+ @property
43
+ def vad_sensitivity_entity_id(self) -> str | None: ...
44
+ def async_get_configuration(self) -> assist_satellite.AssistSatelliteConfiguration: ...
45
+ async def async_set_configuration(self, config: assist_satellite.AssistSatelliteConfiguration) -> None: ...
46
+ async def _update_satellite_config(self) -> None: ...
47
+ async def async_added_to_hass(self) -> None: ...
48
+ async def async_will_remove_from_hass(self) -> None: ...
49
+ def on_pipeline_event(self, event: PipelineEvent) -> None: ...
50
+ async def async_announce(self, announcement: assist_satellite.AssistSatelliteAnnouncement) -> None: ...
51
+ _attr_tts_options: Incomplete
52
+ async def handle_pipeline_start(self, conversation_id: str, flags: int, audio_settings: VoiceAssistantAudioSettings, wake_word_phrase: str | None) -> int | None: ...
53
+ async def handle_audio(self, data: bytes) -> None: ...
54
+ async def handle_pipeline_stop(self, abort: bool) -> None: ...
55
+ def handle_pipeline_finished(self) -> None: ...
56
+ def handle_timer_event(self, event_type: TimerEventType, timer_info: TimerInfo) -> None: ...
57
+ async def handle_announcement_finished(self, announce_finished: VoiceAssistantAnnounceFinished) -> None: ...
58
+ def _update_tts_format(self) -> None: ...
59
+ async def _stream_tts_audio(self, media_id: str, sample_rate: int = 16000, sample_width: int = 2, sample_channels: int = 1, samples_per_chunk: int = 512) -> None: ...
60
+ async def _wrap_audio_stream(self) -> AsyncIterable[bytes]: ...
61
+ def _stop_pipeline(self) -> None: ...
62
+ def _abort_pipeline(self) -> None: ...
63
+ async def _start_udp_server(self) -> int: ...
64
+ def _stop_udp_server(self) -> None: ...
65
+
66
+ class VoiceAssistantUDPServer(asyncio.DatagramProtocol):
67
+ transport: asyncio.DatagramTransport | None
68
+ remote_addr: tuple[str, int] | None
69
+ _audio_queue: Incomplete
70
+ def __init__(self, audio_queue: asyncio.Queue[bytes | None], *args: Any, **kwargs: Any) -> None: ...
71
+ def connection_made(self, transport: asyncio.BaseTransport) -> None: ...
72
+ def datagram_received(self, data: bytes, addr: tuple[str, int]) -> None: ...
73
+ def error_received(self, exc: Exception) -> None: ...
74
+ def close(self) -> None: ...
75
+ def send_audio_bytes(self, data: bytes) -> None: ...
@@ -1,3 +1,4 @@
1
+ from .const import DOMAIN as DOMAIN
1
2
  from .entity import EsphomeAssistEntity as EsphomeAssistEntity, EsphomeEntity as EsphomeEntity, platform_async_setup_entry as platform_async_setup_entry
2
3
  from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry
3
4
  from _typeshed import Incomplete
@@ -19,5 +20,7 @@ class EsphomeBinarySensor(EsphomeEntity[BinarySensorInfo, BinarySensorState], Bi
19
20
 
20
21
  class EsphomeAssistInProgressBinarySensor(EsphomeAssistEntity, BinarySensorEntity):
21
22
  entity_description: Incomplete
23
+ async def async_added_to_hass(self) -> None: ...
24
+ async def async_will_remove_from_hass(self) -> None: ...
22
25
  @property
23
26
  def is_on(self) -> bool | None: ...
@@ -10,3 +10,4 @@ STABLE_BLE_VERSION_STR: str
10
10
  STABLE_BLE_VERSION: Incomplete
11
11
  PROJECT_URLS: Incomplete
12
12
  DEFAULT_URL: Incomplete
13
+ DATA_FFMPEG_PROXY: Incomplete
@@ -2,7 +2,7 @@ import asyncio
2
2
  from .const import DOMAIN as DOMAIN
3
3
  from .dashboard import async_get_dashboard as async_get_dashboard
4
4
  from _typeshed import Incomplete
5
- from aioesphomeapi import APIClient as APIClient, APIVersion, DeviceInfo, EntityInfo as EntityInfo, EntityState as EntityState, UserService
5
+ from aioesphomeapi import APIClient as APIClient, APIVersion, DeviceInfo, EntityInfo as EntityInfo, EntityState as EntityState, MediaPlayerSupportedFormat as MediaPlayerSupportedFormat, UserService
6
6
  from bleak_esphome.backend.device import ESPHomeBluetoothDevice as ESPHomeBluetoothDevice
7
7
  from collections import defaultdict
8
8
  from collections.abc import Callable as Callable, Iterable
@@ -56,6 +56,7 @@ class RuntimeEntryData:
56
56
  entity_info_callbacks: dict[type[EntityInfo], list[Callable[[list[EntityInfo]], None]]] = ...
57
57
  entity_info_key_updated_callbacks: dict[tuple[type[EntityInfo], int], list[Callable[[EntityInfo], None]]] = ...
58
58
  original_options: dict[str, Any] = ...
59
+ media_player_formats: dict[str, list[MediaPlayerSupportedFormat]] = ...
59
60
  @property
60
61
  def name(self) -> str: ...
61
62
  @property
@@ -85,4 +86,4 @@ class RuntimeEntryData:
85
86
  async def async_update_listener(self, hass: HomeAssistant, entry: ESPHomeConfigEntry) -> None: ...
86
87
  def async_on_disconnect(self) -> None: ...
87
88
  def async_on_connect(self, device_info: DeviceInfo, api_version: APIVersion) -> None: ...
88
- def __init__(self, entry_id, title, client, store, state=..., stale_state=..., info=..., services=..., available=..., expected_disconnect=..., device_info=..., bluetooth_device=..., api_version=..., cleanup_callbacks=..., disconnect_callbacks=..., state_subscriptions=..., device_update_subscriptions=..., static_info_update_subscriptions=..., loaded_platforms=..., platform_load_lock=..., _storage_contents=..., _pending_storage=..., assist_pipeline_update_callbacks=..., assist_pipeline_state=..., entity_info_callbacks=..., entity_info_key_updated_callbacks=..., original_options=...) -> None: ...
89
+ def __init__(self, entry_id, title, client, store, state=..., stale_state=..., info=..., services=..., available=..., expected_disconnect=..., device_info=..., bluetooth_device=..., api_version=..., cleanup_callbacks=..., disconnect_callbacks=..., state_subscriptions=..., device_update_subscriptions=..., static_info_update_subscriptions=..., loaded_platforms=..., platform_load_lock=..., _storage_contents=..., _pending_storage=..., assist_pipeline_update_callbacks=..., assist_pipeline_state=..., entity_info_callbacks=..., entity_info_key_updated_callbacks=..., original_options=..., media_player_formats=...) -> None: ...
@@ -0,0 +1,49 @@
1
+ import asyncio
2
+ from .const import DATA_FFMPEG_PROXY as DATA_FFMPEG_PROXY
3
+ from _typeshed import Incomplete
4
+ from aiohttp import web
5
+ from aiohttp.abc import AbstractStreamWriter as AbstractStreamWriter, BaseRequest as BaseRequest
6
+ from dataclasses import dataclass
7
+ from homeassistant.components.ffmpeg import FFmpegManager as FFmpegManager
8
+ from homeassistant.components.http import HomeAssistantView as HomeAssistantView
9
+ from homeassistant.core import HomeAssistant as HomeAssistant
10
+
11
+ _LOGGER: Incomplete
12
+
13
+ def async_create_proxy_url(hass: HomeAssistant, device_id: str, media_url: str, media_format: str, rate: int | None = None, channels: int | None = None, width: int | None = None) -> str: ...
14
+
15
+ @dataclass
16
+ class FFmpegConversionInfo:
17
+ convert_id: str
18
+ media_url: str
19
+ media_format: str
20
+ rate: int | None
21
+ channels: int | None
22
+ width: int | None
23
+ proc: asyncio.subprocess.Process | None = ...
24
+ def __init__(self, convert_id, media_url, media_format, rate, channels, width, proc=...) -> None: ...
25
+
26
+ @dataclass
27
+ class FFmpegProxyData:
28
+ conversions: dict[str, FFmpegConversionInfo] = ...
29
+ def async_create_proxy_url(self, device_id: str, media_url: str, media_format: str, rate: int | None, channels: int | None, width: int | None) -> str: ...
30
+ def __init__(self, conversions=...) -> None: ...
31
+
32
+ class FFmpegConvertResponse(web.StreamResponse):
33
+ hass: Incomplete
34
+ manager: Incomplete
35
+ convert_info: Incomplete
36
+ device_id: Incomplete
37
+ proxy_data: Incomplete
38
+ chunk_size: Incomplete
39
+ def __init__(self, manager: FFmpegManager, convert_info: FFmpegConversionInfo, device_id: str, proxy_data: FFmpegProxyData, chunk_size: int = 2048) -> None: ...
40
+ async def prepare(self, request: BaseRequest) -> AbstractStreamWriter | None: ...
41
+
42
+ class FFmpegProxyView(HomeAssistantView):
43
+ requires_auth: bool
44
+ url: str
45
+ name: str
46
+ manager: Incomplete
47
+ proxy_data: Incomplete
48
+ def __init__(self, manager: FFmpegManager, proxy_data: FFmpegProxyData) -> None: ...
49
+ async def get(self, request: web.Request, device_id: str, filename: str) -> web.StreamResponse: ...
@@ -3,12 +3,10 @@ from .const import CONF_ALLOW_SERVICE_CALLS as CONF_ALLOW_SERVICE_CALLS, CONF_DE
3
3
  from .dashboard import async_get_dashboard as async_get_dashboard
4
4
  from .domain_data import DomainData as DomainData
5
5
  from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry, RuntimeEntryData as RuntimeEntryData
6
- from .voice_assistant import VoiceAssistantAPIPipeline as VoiceAssistantAPIPipeline, VoiceAssistantPipeline as VoiceAssistantPipeline, VoiceAssistantUDPPipeline as VoiceAssistantUDPPipeline, handle_timer_event as handle_timer_event
7
6
  from _typeshed import Incomplete
8
- from aioesphomeapi import APIClient as APIClient, APIVersion as APIVersion, DeviceInfo as EsphomeDeviceInfo, EntityInfo as EntityInfo, HomeassistantServiceCall as HomeassistantServiceCall, UserService as UserService, VoiceAssistantAudioSettings as VoiceAssistantAudioSettings
7
+ from aioesphomeapi import APIClient as APIClient, APIVersion as APIVersion, DeviceInfo as EsphomeDeviceInfo, EntityInfo as EntityInfo, HomeassistantServiceCall as HomeassistantServiceCall, UserService as UserService
9
8
  from homeassistant.components import tag as tag, zeroconf as zeroconf
10
- from homeassistant.components.intent import async_register_timer_handler as async_register_timer_handler
11
- from homeassistant.const import ATTR_DEVICE_ID as ATTR_DEVICE_ID, CONF_MODE as CONF_MODE, EVENT_HOMEASSISTANT_CLOSE as EVENT_HOMEASSISTANT_CLOSE, EVENT_LOGGING_CHANGED as EVENT_LOGGING_CHANGED
9
+ from homeassistant.const import ATTR_DEVICE_ID as ATTR_DEVICE_ID, CONF_MODE as CONF_MODE, EVENT_HOMEASSISTANT_CLOSE as EVENT_HOMEASSISTANT_CLOSE, EVENT_LOGGING_CHANGED as EVENT_LOGGING_CHANGED, Platform as Platform
12
10
  from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, State as State, callback as callback
13
11
  from homeassistant.exceptions import TemplateError as TemplateError
14
12
  from homeassistant.helpers import template as template
@@ -34,7 +32,6 @@ class ESPHomeManager:
34
32
  cli: Incomplete
35
33
  device_id: Incomplete
36
34
  domain_data: Incomplete
37
- voice_assistant_pipeline: Incomplete
38
35
  reconnect_logic: Incomplete
39
36
  zeroconf_instance: Incomplete
40
37
  entry_data: Incomplete
@@ -47,10 +44,6 @@ class ESPHomeManager:
47
44
  def _send_home_assistant_state_event(self, attribute: str | None, event: Event[EventStateChangedData]) -> None: ...
48
45
  def async_on_state_subscription(self, entity_id: str, attribute: str | None = None) -> None: ...
49
46
  def async_on_state_request(self, entity_id: str, attribute: str | None = None) -> None: ...
50
- def _handle_pipeline_finished(self) -> None: ...
51
- async def _handle_pipeline_start(self, conversation_id: str, flags: int, audio_settings: VoiceAssistantAudioSettings, wake_word_phrase: str | None) -> int | None: ...
52
- async def _handle_pipeline_stop(self) -> None: ...
53
- async def _handle_audio(self, data: bytes) -> None: ...
54
47
  async def on_connect(self) -> None: ...
55
48
  async def _on_connnect(self) -> None: ...
56
49
  async def on_disconnect(self, expected_disconnect: bool) -> None: ...
@@ -1,12 +1,14 @@
1
1
  from .entity import EsphomeEntity as EsphomeEntity, convert_api_error_ha_error as convert_api_error_ha_error, esphome_float_state_property as esphome_float_state_property, esphome_state_property as esphome_state_property, platform_async_setup_entry as platform_async_setup_entry
2
2
  from .enum_mapper import EsphomeEnumMapper as EsphomeEnumMapper
3
+ from .ffmpeg_proxy import async_create_proxy_url as async_create_proxy_url
3
4
  from _typeshed import Incomplete
4
- from aioesphomeapi import EntityInfo as EntityInfo, MediaPlayerEntityState, MediaPlayerInfo, MediaPlayerState as EspMediaPlayerState
5
+ from aioesphomeapi import EntityInfo as EntityInfo, MediaPlayerEntityState, MediaPlayerInfo, MediaPlayerState as EspMediaPlayerState, MediaPlayerSupportedFormat as MediaPlayerSupportedFormat
5
6
  from homeassistant.components import media_source as media_source
6
7
  from homeassistant.components.media_player import ATTR_MEDIA_ANNOUNCE as ATTR_MEDIA_ANNOUNCE, 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
7
8
  from homeassistant.core import callback as callback
8
9
  from typing import Any
9
10
 
11
+ _LOGGER: Incomplete
10
12
  _STATES: EsphomeEnumMapper[EspMediaPlayerState, MediaPlayerState]
11
13
 
12
14
  class EsphomeMediaPlayer(EsphomeEntity[MediaPlayerInfo, MediaPlayerEntityState], MediaPlayerEntity):
@@ -20,6 +22,8 @@ class EsphomeMediaPlayer(EsphomeEntity[MediaPlayerInfo, MediaPlayerEntityState],
20
22
  @property
21
23
  def volume_level(self) -> float | None: ...
22
24
  async def async_play_media(self, media_type: MediaType | str, media_id: str, **kwargs: Any) -> None: ...
25
+ async def async_will_remove_from_hass(self) -> None: ...
26
+ def _get_proxy_url(self, supported_formats: list[MediaPlayerSupportedFormat], url: str, announcement: bool) -> str | None: ...
23
27
  async def async_browse_media(self, media_content_type: MediaType | str | None = None, media_content_id: str | None = None) -> BrowseMedia: ...
24
28
  async def async_set_volume_level(self, volume: float) -> None: ...
25
29
  async def async_media_pause(self) -> None: ...
@@ -27,4 +31,6 @@ class EsphomeMediaPlayer(EsphomeEntity[MediaPlayerInfo, MediaPlayerEntityState],
27
31
  async def async_media_stop(self) -> None: ...
28
32
  async def async_mute_volume(self, mute: bool) -> None: ...
29
33
 
34
+ def _is_url(url: str) -> bool: ...
35
+
30
36
  async_setup_entry: Incomplete
@@ -0,0 +1,5 @@
1
+ from homeassistant.components.assist_pipeline.repair_flows import AssistInProgressDeprecatedRepairFlow as AssistInProgressDeprecatedRepairFlow
2
+ from homeassistant.components.repairs import RepairsFlow as RepairsFlow
3
+ from homeassistant.core import HomeAssistant as HomeAssistant
4
+
5
+ async def async_create_fix_flow(hass: HomeAssistant, issue_id: str, data: dict[str, str | int | float | None] | None) -> RepairsFlow: ...
@@ -5,16 +5,9 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
5
  from homeassistant.const import Platform as Platform
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers import aiohttp_client as aiohttp_client
8
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
9
- from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
10
8
 
11
9
  PLATFORMS: Incomplete
12
10
  UPDATE_INTERVAL: int
13
11
 
14
12
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
15
13
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
16
-
17
- class EvilGeniusEntity(CoordinatorEntity[EvilGeniusUpdateCoordinator]):
18
- _attr_has_entity_name: bool
19
- @property
20
- def device_info(self) -> DeviceInfo: ...
@@ -0,0 +1,9 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from .coordinator import EvilGeniusUpdateCoordinator as EvilGeniusUpdateCoordinator
3
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
4
+ from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
5
+
6
+ class EvilGeniusEntity(CoordinatorEntity[EvilGeniusUpdateCoordinator]):
7
+ _attr_has_entity_name: bool
8
+ @property
9
+ def device_info(self) -> DeviceInfo: ...
@@ -1,6 +1,6 @@
1
- from . import EvilGeniusEntity as EvilGeniusEntity
2
1
  from .const import DOMAIN as DOMAIN
3
2
  from .coordinator import EvilGeniusUpdateCoordinator as EvilGeniusUpdateCoordinator
3
+ from .entity import EvilGeniusEntity as EvilGeniusEntity
4
4
  from .util import update_when_done as update_when_done
5
5
  from _typeshed import Incomplete
6
6
  from homeassistant.components import light as light
@@ -1,4 +1,4 @@
1
- from . import EvilGeniusEntity as EvilGeniusEntity
1
+ from .entity import EvilGeniusEntity as EvilGeniusEntity
2
2
  from collections.abc import Awaitable as Awaitable, Callable as Callable, Coroutine
3
3
  from typing import Any, Concatenate
4
4
 
@@ -32,8 +32,8 @@ ATTR_ZONE_TEMP: Final[str]
32
32
  ATTR_DURATION_UNTIL: Final[str]
33
33
 
34
34
  class EvoService(StrEnum):
35
- REFRESH_SYSTEM: Final[str]
36
- SET_SYSTEM_MODE: Final[str]
37
- RESET_SYSTEM: Final[str]
38
- SET_ZONE_OVERRIDE: Final[str]
39
- RESET_ZONE_OVERRIDE: Final[str]
35
+ REFRESH_SYSTEM = 'refresh_system'
36
+ SET_SYSTEM_MODE = 'set_system_mode'
37
+ RESET_SYSTEM = 'reset_system'
38
+ SET_ZONE_OVERRIDE = 'set_zone_override'
39
+ RESET_ZONE_OVERRIDE = 'clear_zone_override'