homeassistant-stubs 2024.10.4__py3-none-any.whl → 2024.11.0b0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (854) hide show
  1. homeassistant-stubs/auth/__init__.pyi +8 -5
  2. homeassistant-stubs/auth/mfa_modules/notify.pyi +1 -0
  3. homeassistant-stubs/auth/models.pyi +8 -5
  4. homeassistant-stubs/auth/permissions/types.pyi +7 -0
  5. homeassistant-stubs/auth/permissions/util.pyi +2 -0
  6. homeassistant-stubs/auth/providers/__init__.pyi +5 -4
  7. homeassistant-stubs/auth/providers/command_line.pyi +2 -2
  8. homeassistant-stubs/auth/providers/homeassistant.pyi +2 -2
  9. homeassistant-stubs/auth/providers/insecure_example.pyi +2 -3
  10. homeassistant-stubs/auth/providers/trusted_networks.pyi +5 -2
  11. homeassistant-stubs/bootstrap.pyi +1 -0
  12. homeassistant-stubs/components/abode/alarm_control_panel.pyi +2 -3
  13. homeassistant-stubs/components/accuweather/__init__.pyi +1 -9
  14. homeassistant-stubs/components/accuweather/coordinator.pyi +11 -2
  15. homeassistant-stubs/components/accuweather/diagnostics.pyi +1 -1
  16. homeassistant-stubs/components/accuweather/sensor.pyi +1 -2
  17. homeassistant-stubs/components/accuweather/system_health.pyi +1 -1
  18. homeassistant-stubs/components/accuweather/weather.pyi +1 -2
  19. homeassistant-stubs/components/acmeda/__init__.pyi +1 -0
  20. homeassistant-stubs/components/adguard/__init__.pyi +1 -0
  21. homeassistant-stubs/components/adguard/config_flow.pyi +1 -1
  22. homeassistant-stubs/components/aftership/__init__.pyi +2 -0
  23. homeassistant-stubs/components/airgradient/__init__.pyi +1 -0
  24. homeassistant-stubs/components/airgradient/update.pyi +0 -2
  25. homeassistant-stubs/components/airly/__init__.pyi +1 -0
  26. homeassistant-stubs/components/airnow/__init__.pyi +1 -0
  27. homeassistant-stubs/components/airthings/__init__.pyi +3 -0
  28. homeassistant-stubs/components/airthings_ble/__init__.pyi +2 -11
  29. homeassistant-stubs/components/airthings_ble/coordinator.pyi +21 -0
  30. homeassistant-stubs/components/airthings_ble/sensor.pyi +1 -1
  31. homeassistant-stubs/components/airtouch5/__init__.pyi +2 -1
  32. homeassistant-stubs/components/airvisual/__init__.pyi +1 -0
  33. homeassistant-stubs/components/airvisual/config_flow.pyi +1 -1
  34. homeassistant-stubs/components/airvisual_pro/__init__.pyi +1 -0
  35. homeassistant-stubs/components/airvisual_pro/config_flow.pyi +2 -3
  36. homeassistant-stubs/components/airzone/__init__.pyi +1 -0
  37. homeassistant-stubs/components/airzone/switch.pyi +33 -0
  38. homeassistant-stubs/components/airzone_cloud/__init__.pyi +1 -0
  39. homeassistant-stubs/components/airzone_cloud/select.pyi +10 -2
  40. homeassistant-stubs/components/airzone_cloud/switch.pyi +33 -0
  41. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +13 -6
  42. homeassistant-stubs/components/alarm_control_panel/const.pyi +12 -0
  43. homeassistant-stubs/components/alarm_control_panel/device_condition.pyi +2 -2
  44. homeassistant-stubs/components/alarm_control_panel/device_trigger.pyi +2 -2
  45. homeassistant-stubs/components/alarm_control_panel/reproduce_state.pyi +2 -2
  46. homeassistant-stubs/components/alexa/capabilities.pyi +2 -2
  47. homeassistant-stubs/components/alexa/handlers.pyi +2 -2
  48. homeassistant-stubs/components/amberelectric/__init__.pyi +1 -0
  49. homeassistant-stubs/components/ambient_network/__init__.pyi +1 -0
  50. homeassistant-stubs/components/ambient_station/__init__.pyi +1 -0
  51. homeassistant-stubs/components/analytics/__init__.pyi +2 -0
  52. homeassistant-stubs/components/analytics/analytics.pyi +1 -0
  53. homeassistant-stubs/components/analytics_insights/__init__.pyi +1 -0
  54. homeassistant-stubs/components/analytics_insights/config_flow.pyi +1 -1
  55. homeassistant-stubs/components/analytics_insights/const.pyi +1 -0
  56. homeassistant-stubs/components/analytics_insights/coordinator.pyi +8 -2
  57. homeassistant-stubs/components/analytics_insights/sensor.pyi +4 -0
  58. homeassistant-stubs/components/android_ip_webcam/__init__.pyi +3 -5
  59. homeassistant-stubs/components/android_ip_webcam/binary_sensor.pyi +3 -4
  60. homeassistant-stubs/components/android_ip_webcam/camera.pyi +2 -3
  61. homeassistant-stubs/components/android_ip_webcam/coordinator.pyi +3 -2
  62. homeassistant-stubs/components/android_ip_webcam/sensor.pyi +2 -4
  63. homeassistant-stubs/components/android_ip_webcam/switch.pyi +2 -4
  64. homeassistant-stubs/components/androidtv/__init__.pyi +3 -1
  65. homeassistant-stubs/components/androidtv/config_flow.pyi +2 -1
  66. homeassistant-stubs/components/androidtv/const.pyi +2 -1
  67. homeassistant-stubs/components/androidtv/entity.pyi +5 -2
  68. homeassistant-stubs/components/androidtv/media_player.pyi +5 -6
  69. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +5 -7
  70. homeassistant-stubs/components/anova/__init__.pyi +2 -1
  71. homeassistant-stubs/components/anova/config_flow.pyi +2 -1
  72. homeassistant-stubs/components/anova/models.pyi +1 -0
  73. homeassistant-stubs/components/anthemav/__init__.pyi +2 -0
  74. homeassistant-stubs/components/apache_kafka/__init__.pyi +1 -1
  75. homeassistant-stubs/components/apcupsd/__init__.pyi +1 -0
  76. homeassistant-stubs/components/apple_tv/__init__.pyi +1 -0
  77. homeassistant-stubs/components/apple_tv/config_flow.pyi +5 -1
  78. homeassistant-stubs/components/apsystems/__init__.pyi +1 -0
  79. homeassistant-stubs/components/apsystems/sensor.pyi +2 -2
  80. homeassistant-stubs/components/aquostv/media_player.pyi +1 -1
  81. homeassistant-stubs/components/aranet/__init__.pyi +3 -3
  82. homeassistant-stubs/components/aranet/sensor.pyi +4 -4
  83. homeassistant-stubs/components/arcam_fmj/__init__.pyi +1 -0
  84. homeassistant-stubs/components/arcam_fmj/config_flow.pyi +2 -0
  85. homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -1
  86. homeassistant-stubs/components/aseko_pool_live/__init__.pyi +4 -6
  87. homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +2 -4
  88. homeassistant-stubs/components/aseko_pool_live/config_flow.pyi +2 -3
  89. homeassistant-stubs/components/aseko_pool_live/coordinator.pyi +2 -0
  90. homeassistant-stubs/components/aseko_pool_live/sensor.pyi +2 -4
  91. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +2 -1
  92. homeassistant-stubs/components/asuswrt/__init__.pyi +1 -0
  93. homeassistant-stubs/components/asuswrt/bridge.pyi +4 -2
  94. homeassistant-stubs/components/autarco/__init__.pyi +1 -0
  95. homeassistant-stubs/components/auth/__init__.pyi +5 -0
  96. homeassistant-stubs/components/auth/login_flow.pyi +1 -1
  97. homeassistant-stubs/components/auth/mfa_setup_flow.pyi +4 -2
  98. homeassistant-stubs/components/automation/__init__.pyi +0 -14
  99. homeassistant-stubs/components/awair/__init__.pyi +4 -6
  100. homeassistant-stubs/components/awair/config_flow.pyi +1 -0
  101. homeassistant-stubs/components/awair/coordinator.pyi +1 -0
  102. homeassistant-stubs/components/awair/sensor.pyi +2 -2
  103. homeassistant-stubs/components/axis/__init__.pyi +1 -0
  104. homeassistant-stubs/components/axis/config_flow.pyi +2 -2
  105. homeassistant-stubs/components/backup/__init__.pyi +2 -2
  106. homeassistant-stubs/components/backup/const.pyi +3 -0
  107. homeassistant-stubs/components/backup/http.pyi +1 -1
  108. homeassistant-stubs/components/backup/manager.pyi +25 -11
  109. homeassistant-stubs/components/backup/websocket.pyi +2 -2
  110. homeassistant-stubs/components/baf/__init__.pyi +2 -0
  111. homeassistant-stubs/components/bang_olufsen/__init__.pyi +3 -2
  112. homeassistant-stubs/components/bang_olufsen/const.pyi +3 -1
  113. homeassistant-stubs/components/bang_olufsen/media_player.pyi +13 -5
  114. homeassistant-stubs/components/binary_sensor/__init__.pyi +0 -3
  115. homeassistant-stubs/components/blue_current/__init__.pyi +4 -3
  116. homeassistant-stubs/components/blue_current/config_flow.pyi +1 -2
  117. homeassistant-stubs/components/blue_current/sensor.pyi +2 -3
  118. homeassistant-stubs/components/blueprint/__init__.pyi +2 -2
  119. homeassistant-stubs/components/bluesound/__init__.pyi +2 -1
  120. homeassistant-stubs/components/bluesound/const.pyi +0 -4
  121. homeassistant-stubs/components/bluesound/media_player.pyi +6 -14
  122. homeassistant-stubs/components/bluesound/services.pyi +21 -0
  123. homeassistant-stubs/components/bluetooth/active_update_coordinator.pyi +1 -1
  124. homeassistant-stubs/components/bluetooth/active_update_processor.pyi +1 -1
  125. homeassistant-stubs/components/bluetooth/match.pyi +1 -1
  126. homeassistant-stubs/components/bluetooth/models.pyi +4 -0
  127. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +4 -4
  128. homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +1 -0
  129. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +3 -2
  130. homeassistant-stubs/components/bond/__init__.pyi +1 -0
  131. homeassistant-stubs/components/braviatv/config_flow.pyi +1 -2
  132. homeassistant-stubs/components/braviatv/coordinator.pyi +1 -1
  133. homeassistant-stubs/components/brother/__init__.pyi +1 -0
  134. homeassistant-stubs/components/brother/config_flow.pyi +2 -4
  135. homeassistant-stubs/components/bryant_evolution/__init__.pyi +2 -0
  136. homeassistant-stubs/components/bryant_evolution/config_flow.pyi +1 -4
  137. homeassistant-stubs/components/bthome/config_flow.pyi +1 -1
  138. homeassistant-stubs/components/bthome/coordinator.pyi +1 -1
  139. homeassistant-stubs/components/bthome/types.pyi +2 -0
  140. homeassistant-stubs/components/button/__init__.pyi +0 -3
  141. homeassistant-stubs/components/calendar/trigger.pyi +3 -1
  142. homeassistant-stubs/components/cambridge_audio/__init__.pyi +14 -0
  143. homeassistant-stubs/components/cambridge_audio/config_flow.pyi +14 -0
  144. homeassistant-stubs/components/cambridge_audio/const.pyi +9 -0
  145. homeassistant-stubs/components/cambridge_audio/diagnostics.pyi +5 -0
  146. homeassistant-stubs/components/cambridge_audio/entity.pyi +21 -0
  147. homeassistant-stubs/components/cambridge_audio/media_player.pyi +71 -0
  148. homeassistant-stubs/components/cambridge_audio/select.pyi +34 -0
  149. homeassistant-stubs/components/cambridge_audio/switch.pyi +30 -0
  150. homeassistant-stubs/components/camera/__init__.pyi +35 -22
  151. homeassistant-stubs/components/camera/const.pyi +1 -2
  152. homeassistant-stubs/components/camera/diagnostics.pyi +1 -1
  153. homeassistant-stubs/components/camera/helper.pyi +6 -0
  154. homeassistant-stubs/components/camera/webrtc.pyi +95 -0
  155. homeassistant-stubs/components/canary/alarm_control_panel.pyi +2 -3
  156. homeassistant-stubs/components/canary/sensor.pyi +1 -0
  157. homeassistant-stubs/components/cert_expiry/__init__.pyi +1 -0
  158. homeassistant-stubs/components/climate/__init__.pyi +0 -24
  159. homeassistant-stubs/components/cloud/client.pyi +5 -1
  160. homeassistant-stubs/components/cloud/const.pyi +1 -0
  161. homeassistant-stubs/components/cloud/http_api.pyi +2 -2
  162. homeassistant-stubs/components/cloud/prefs.pyi +4 -2
  163. homeassistant-stubs/components/co2signal/__init__.pyi +1 -0
  164. homeassistant-stubs/components/co2signal/config_flow.pyi +1 -2
  165. homeassistant-stubs/components/config/automation.pyi +1 -1
  166. homeassistant-stubs/components/config/script.pyi +1 -1
  167. homeassistant-stubs/components/config/view.pyi +2 -2
  168. homeassistant-stubs/components/configurator/__init__.pyi +2 -0
  169. homeassistant-stubs/components/counter/__init__.pyi +1 -1
  170. homeassistant-stubs/components/cover/__init__.pyi +12 -8
  171. homeassistant-stubs/components/cover/device_condition.pyi +2 -2
  172. homeassistant-stubs/components/cover/device_trigger.pyi +2 -2
  173. homeassistant-stubs/components/cover/reproduce_state.pyi +2 -2
  174. homeassistant-stubs/components/date/__init__.pyi +0 -4
  175. homeassistant-stubs/components/datetime/__init__.pyi +0 -4
  176. homeassistant-stubs/components/deako/__init__.pyi +2 -0
  177. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +2 -3
  178. homeassistant-stubs/components/deconz/binary_sensor.pyi +10 -1
  179. homeassistant-stubs/components/deconz/config_flow.pyi +1 -1
  180. homeassistant-stubs/components/deconz/device_trigger.pyi +4 -0
  181. homeassistant-stubs/components/deconz/entity.pyi +6 -2
  182. homeassistant-stubs/components/deconz/light.pyi +1 -1
  183. homeassistant-stubs/components/deconz/number.pyi +3 -1
  184. homeassistant-stubs/components/demo/alarm_control_panel.pyi +2 -1
  185. homeassistant-stubs/components/demo/update.pyi +5 -2
  186. homeassistant-stubs/components/derivative/sensor.pyi +1 -4
  187. homeassistant-stubs/components/device_automation/__init__.pyi +2 -0
  188. homeassistant-stubs/components/device_tracker/config_entry.pyi +0 -10
  189. homeassistant-stubs/components/device_tracker/legacy.pyi +0 -2
  190. homeassistant-stubs/components/devolo_home_control/__init__.pyi +2 -0
  191. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +2 -2
  192. homeassistant-stubs/components/devolo_home_network/__init__.pyi +4 -2
  193. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +2 -2
  194. homeassistant-stubs/components/devolo_home_network/config_flow.pyi +4 -1
  195. homeassistant-stubs/components/devolo_home_network/coordinator.pyi +13 -0
  196. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +4 -3
  197. homeassistant-stubs/components/devolo_home_network/entity.pyi +7 -3
  198. homeassistant-stubs/components/devolo_home_network/image.pyi +2 -2
  199. homeassistant-stubs/components/devolo_home_network/sensor.pyi +9 -10
  200. homeassistant-stubs/components/devolo_home_network/switch.pyi +6 -6
  201. homeassistant-stubs/components/devolo_home_network/update.pyi +3 -3
  202. homeassistant-stubs/components/diagnostics/util.pyi +1 -1
  203. homeassistant-stubs/components/discovergy/__init__.pyi +1 -0
  204. homeassistant-stubs/components/discovergy/config_flow.pyi +2 -2
  205. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -0
  206. homeassistant-stubs/components/dlna_dmr/media_player.pyi +1 -1
  207. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -3
  208. homeassistant-stubs/components/doorbird/config_flow.pyi +1 -1
  209. homeassistant-stubs/components/doorbird/device.pyi +0 -6
  210. homeassistant-stubs/components/doorbird/models.pyi +1 -0
  211. homeassistant-stubs/components/dormakaba_dkey/config_flow.pyi +1 -2
  212. homeassistant-stubs/components/dsmr/__init__.pyi +1 -0
  213. homeassistant-stubs/components/duotecno/entity.pyi +1 -1
  214. homeassistant-stubs/components/ecovacs/__init__.pyi +1 -0
  215. homeassistant-stubs/components/ecowitt/__init__.pyi +2 -0
  216. homeassistant-stubs/components/efergy/__init__.pyi +2 -0
  217. homeassistant-stubs/components/electric_kiwi/config_flow.pyi +1 -4
  218. homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
  219. homeassistant-stubs/components/elgato/__init__.pyi +1 -0
  220. homeassistant-stubs/components/elkm1/__init__.pyi +1 -0
  221. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -3
  222. homeassistant-stubs/components/elkm1/config_flow.pyi +3 -1
  223. homeassistant-stubs/components/energy/data.pyi +1 -0
  224. homeassistant-stubs/components/energy/types.pyi +2 -0
  225. homeassistant-stubs/components/energy/websocket_api.pyi +3 -0
  226. homeassistant-stubs/components/enigma2/__init__.pyi +1 -0
  227. homeassistant-stubs/components/enigma2/config_flow.pyi +0 -2
  228. homeassistant-stubs/components/enigma2/media_player.pyi +1 -6
  229. homeassistant-stubs/components/enphase_envoy/__init__.pyi +3 -1
  230. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +4 -6
  231. homeassistant-stubs/components/enphase_envoy/const.pyi +2 -0
  232. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +1 -0
  233. homeassistant-stubs/components/esphome/alarm_control_panel.pyi +5 -6
  234. homeassistant-stubs/components/esphome/assist_satellite.pyi +1 -1
  235. homeassistant-stubs/components/esphome/config_flow.pyi +6 -5
  236. homeassistant-stubs/components/esphome/entity.pyi +3 -3
  237. homeassistant-stubs/components/esphome/entry_data.pyi +1 -0
  238. homeassistant-stubs/components/esphome/enum_mapper.pyi +1 -1
  239. homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +7 -3
  240. homeassistant-stubs/components/esphome/update.pyi +3 -1
  241. homeassistant-stubs/components/event/__init__.pyi +0 -3
  242. homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
  243. homeassistant-stubs/components/evohome/climate.pyi +2 -3
  244. homeassistant-stubs/components/evohome/entity.pyi +1 -1
  245. homeassistant-stubs/components/fan/__init__.pyi +0 -8
  246. homeassistant-stubs/components/fastdotcom/__init__.pyi +1 -1
  247. homeassistant-stubs/components/feedreader/__init__.pyi +1 -0
  248. homeassistant-stubs/components/feedreader/config_flow.pyi +1 -3
  249. homeassistant-stubs/components/feedreader/event.pyi +1 -0
  250. homeassistant-stubs/components/filesize/__init__.pyi +1 -0
  251. homeassistant-stubs/components/fitbit/api.pyi +1 -1
  252. homeassistant-stubs/components/fitbit/config_flow.pyi +1 -2
  253. homeassistant-stubs/components/flexit_bacnet/sensor.pyi +2 -1
  254. homeassistant-stubs/components/flux_led/config_flow.pyi +3 -1
  255. homeassistant-stubs/components/forecast_solar/__init__.pyi +1 -0
  256. homeassistant-stubs/components/fritz/config_flow.pyi +5 -5
  257. homeassistant-stubs/components/fritz/update.pyi +1 -1
  258. homeassistant-stubs/components/fritzbox/climate.pyi +1 -0
  259. homeassistant-stubs/components/fritzbox/config_flow.pyi +5 -6
  260. homeassistant-stubs/components/fritzbox/coordinator.pyi +1 -0
  261. homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +2 -1
  262. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +5 -0
  263. homeassistant-stubs/components/fronius/__init__.pyi +2 -1
  264. homeassistant-stubs/components/fronius/config_flow.pyi +1 -2
  265. homeassistant-stubs/components/fronius/const.pyi +1 -0
  266. homeassistant-stubs/components/fronius/coordinator.pyi +1 -1
  267. homeassistant-stubs/components/frontend/__init__.pyi +0 -3
  268. homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +1 -0
  269. homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +1 -2
  270. homeassistant-stubs/components/fully_kiosk/config_flow.pyi +1 -0
  271. homeassistant-stubs/components/fyta/__init__.pyi +1 -0
  272. homeassistant-stubs/components/fyta/config_flow.pyi +0 -2
  273. homeassistant-stubs/components/fyta/coordinator.pyi +6 -1
  274. homeassistant-stubs/components/geo_location/__init__.pyi +0 -5
  275. homeassistant-stubs/components/gios/__init__.pyi +1 -0
  276. homeassistant-stubs/components/glances/__init__.pyi +1 -0
  277. homeassistant-stubs/components/glances/config_flow.pyi +1 -2
  278. homeassistant-stubs/components/go2rtc/__init__.pyi +40 -0
  279. homeassistant-stubs/components/go2rtc/config_flow.pyi +7 -0
  280. homeassistant-stubs/components/go2rtc/const.pyi +2 -0
  281. homeassistant-stubs/components/go2rtc/server.pyi +22 -0
  282. homeassistant-stubs/components/goalzero/config_flow.pyi +1 -2
  283. homeassistant-stubs/components/goalzero/coordinator.pyi +1 -0
  284. homeassistant-stubs/components/google/__init__.pyi +1 -1
  285. homeassistant-stubs/components/google/api.pyi +2 -2
  286. homeassistant-stubs/components/google/calendar.pyi +6 -5
  287. homeassistant-stubs/components/google/config_flow.pyi +2 -3
  288. homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +1 -2
  289. homeassistant-stubs/components/google_photos/config_flow.pyi +2 -3
  290. homeassistant-stubs/components/google_photos/types.pyi +2 -0
  291. homeassistant-stubs/components/google_sheets/__init__.pyi +1 -0
  292. homeassistant-stubs/components/google_sheets/config_flow.pyi +1 -3
  293. homeassistant-stubs/components/govee_ble/__init__.pyi +11 -0
  294. homeassistant-stubs/components/govee_ble/binary_sensor.pyi +22 -0
  295. homeassistant-stubs/components/govee_ble/config_flow.pyi +16 -0
  296. homeassistant-stubs/components/govee_ble/const.pyi +2 -0
  297. homeassistant-stubs/components/govee_ble/coordinator.pyi +24 -0
  298. homeassistant-stubs/components/govee_ble/device.pyi +4 -0
  299. homeassistant-stubs/components/govee_ble/event.pyi +27 -0
  300. homeassistant-stubs/components/govee_ble/sensor.pyi +25 -0
  301. homeassistant-stubs/components/gpsd/__init__.pyi +2 -0
  302. homeassistant-stubs/components/greeneye_monitor/sensor.pyi +1 -0
  303. homeassistant-stubs/components/group/cover.pyi +2 -2
  304. homeassistant-stubs/components/group/registry.pyi +2 -1
  305. homeassistant-stubs/components/group/sensor.pyi +10 -11
  306. homeassistant-stubs/components/guardian/config_flow.pyi +0 -1
  307. homeassistant-stubs/components/guardian/util.pyi +1 -1
  308. homeassistant-stubs/components/hardkernel/__init__.pyi +2 -1
  309. homeassistant-stubs/components/here_travel_time/config_flow.pyi +4 -5
  310. homeassistant-stubs/components/history_stats/__init__.pyi +1 -0
  311. homeassistant-stubs/components/history_stats/coordinator.pyi +2 -1
  312. homeassistant-stubs/components/history_stats/sensor.pyi +2 -1
  313. homeassistant-stubs/components/holiday/config_flow.pyi +1 -3
  314. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -0
  315. homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +2 -1
  316. homeassistant-stubs/components/homeassistant/triggers/time.pyi +7 -1
  317. homeassistant-stubs/components/homeassistant_alerts/coordinator.pyi +2 -1
  318. homeassistant-stubs/components/homeassistant_green/__init__.pyi +2 -1
  319. homeassistant-stubs/components/homeassistant_green/config_flow.pyi +2 -1
  320. homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +2 -1
  321. homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +2 -1
  322. homeassistant-stubs/components/homeassistant_hardware/util.pyi +2 -1
  323. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +3 -3
  324. homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +2 -1
  325. homeassistant-stubs/components/homekit/__init__.pyi +0 -1
  326. homeassistant-stubs/components/homekit/models.pyi +1 -0
  327. homeassistant-stubs/components/homekit/type_covers.pyi +2 -2
  328. homeassistant-stubs/components/homekit/type_security_systems.pyi +2 -2
  329. homeassistant-stubs/components/homekit_controller/alarm_control_panel.pyi +4 -4
  330. homeassistant-stubs/components/homekit_controller/config_flow.pyi +4 -1
  331. homeassistant-stubs/components/homekit_controller/utils.pyi +1 -0
  332. homeassistant-stubs/components/homewizard/__init__.pyi +1 -0
  333. homeassistant-stubs/components/homewizard/config_flow.pyi +1 -2
  334. homeassistant-stubs/components/homewizard/helpers.pyi +1 -1
  335. homeassistant-stubs/components/homewizard/sensor.pyi +1 -1
  336. homeassistant-stubs/components/homeworks/config_flow.pyi +2 -5
  337. homeassistant-stubs/components/http/ban.pyi +2 -1
  338. homeassistant-stubs/components/http/data_validator.pyi +1 -1
  339. homeassistant-stubs/components/http/decorators.pyi +7 -4
  340. homeassistant-stubs/components/huawei_lte/config_flow.pyi +2 -0
  341. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +1 -0
  342. homeassistant-stubs/components/humidifier/__init__.pyi +0 -10
  343. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
  344. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +1 -1
  345. homeassistant-stubs/components/husqvarna_automower/button.pyi +1 -3
  346. homeassistant-stubs/components/husqvarna_automower/config_flow.pyi +2 -3
  347. homeassistant-stubs/components/husqvarna_automower/entity.pyi +5 -4
  348. homeassistant-stubs/components/husqvarna_automower/number.pyi +8 -8
  349. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +24 -3
  350. homeassistant-stubs/components/husqvarna_automower/switch.pyi +2 -5
  351. homeassistant-stubs/components/hydrawise/config_flow.pyi +1 -4
  352. homeassistant-stubs/components/hyperion/config_flow.pyi +1 -0
  353. homeassistant-stubs/components/ibeacon/__init__.pyi +1 -0
  354. homeassistant-stubs/components/image/__init__.pyi +7 -6
  355. homeassistant-stubs/components/imap/__init__.pyi +1 -0
  356. homeassistant-stubs/components/imap/config_flow.pyi +1 -2
  357. homeassistant-stubs/components/imgw_pib/__init__.pyi +1 -0
  358. homeassistant-stubs/components/intent/timers.pyi +1 -2
  359. homeassistant-stubs/components/iotty/__init__.pyi +1 -0
  360. homeassistant-stubs/components/iotty/coordinator.pyi +1 -1
  361. homeassistant-stubs/components/ipp/__init__.pyi +1 -0
  362. homeassistant-stubs/components/islamic_prayer_times/__init__.pyi +1 -0
  363. homeassistant-stubs/components/jellyfin/__init__.pyi +2 -2
  364. homeassistant-stubs/components/jellyfin/config_flow.pyi +0 -1
  365. homeassistant-stubs/components/jellyfin/coordinator.pyi +8 -15
  366. homeassistant-stubs/components/jellyfin/entity.pyi +22 -7
  367. homeassistant-stubs/components/jellyfin/media_player.pyi +6 -18
  368. homeassistant-stubs/components/jellyfin/remote.pyi +19 -0
  369. homeassistant-stubs/components/jellyfin/sensor.pyi +10 -8
  370. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +1 -0
  371. homeassistant-stubs/components/jvc_projector/__init__.pyi +1 -0
  372. homeassistant-stubs/components/jvc_projector/config_flow.pyi +1 -2
  373. homeassistant-stubs/components/knocki/__init__.pyi +1 -0
  374. homeassistant-stubs/components/knx/__init__.pyi +0 -1
  375. homeassistant-stubs/components/knx/climate.pyi +2 -0
  376. homeassistant-stubs/components/knx/const.pyi +4 -0
  377. homeassistant-stubs/components/knx/notify.pyi +3 -15
  378. homeassistant-stubs/components/knx/schema.pyi +1 -0
  379. homeassistant-stubs/components/knx/storage/config_store.pyi +2 -2
  380. homeassistant-stubs/components/knx/websocket.pyi +4 -1
  381. homeassistant-stubs/components/kraken/const.pyi +1 -0
  382. homeassistant-stubs/components/lacrosse_view/config_flow.pyi +1 -2
  383. homeassistant-stubs/components/lamarzocco/__init__.pyi +1 -1
  384. homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +1 -1
  385. homeassistant-stubs/components/lamarzocco/button.pyi +3 -1
  386. homeassistant-stubs/components/lamarzocco/calendar.pyi +1 -2
  387. homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -5
  388. homeassistant-stubs/components/lamarzocco/coordinator.pyi +5 -4
  389. homeassistant-stubs/components/lamarzocco/diagnostics.pyi +1 -1
  390. homeassistant-stubs/components/lamarzocco/number.pyi +3 -2
  391. homeassistant-stubs/components/lamarzocco/select.pyi +5 -1
  392. homeassistant-stubs/components/lamarzocco/sensor.pyi +1 -1
  393. homeassistant-stubs/components/lamarzocco/switch.pyi +3 -2
  394. homeassistant-stubs/components/lamarzocco/update.pyi +3 -2
  395. homeassistant-stubs/components/lametric/config_flow.pyi +1 -2
  396. homeassistant-stubs/components/lametric/helpers.pyi +1 -1
  397. homeassistant-stubs/components/lawn_mower/__init__.pyi +0 -3
  398. homeassistant-stubs/components/lcn/__init__.pyi +2 -2
  399. homeassistant-stubs/components/lcn/binary_sensor.pyi +3 -0
  400. homeassistant-stubs/components/lcn/config_flow.pyi +2 -5
  401. homeassistant-stubs/components/lcn/const.pyi +1 -0
  402. homeassistant-stubs/components/lcn/helpers.pyi +4 -0
  403. homeassistant-stubs/components/lcn/sensor.pyi +4 -1
  404. homeassistant-stubs/components/lcn/switch.pyi +24 -1
  405. homeassistant-stubs/components/lcn/websocket.pyi +3 -1
  406. homeassistant-stubs/components/lektrico/__init__.pyi +1 -0
  407. homeassistant-stubs/components/lektrico/switch.pyi +31 -0
  408. homeassistant-stubs/components/lidarr/__init__.pyi +4 -2
  409. homeassistant-stubs/components/lidarr/config_flow.pyi +1 -5
  410. homeassistant-stubs/components/lidarr/coordinator.pyi +4 -1
  411. homeassistant-stubs/components/lifx/config_flow.pyi +3 -1
  412. homeassistant-stubs/components/lifx/coordinator.pyi +0 -6
  413. homeassistant-stubs/components/light/__init__.pyi +0 -15
  414. homeassistant-stubs/components/linear_garage_door/config_flow.pyi +1 -2
  415. homeassistant-stubs/components/linear_garage_door/coordinator.pyi +1 -1
  416. homeassistant-stubs/components/linkplay/__init__.pyi +2 -1
  417. homeassistant-stubs/components/linkplay/const.pyi +4 -0
  418. homeassistant-stubs/components/linkplay/media_player.pyi +12 -4
  419. homeassistant-stubs/components/litterrobot/__init__.pyi +1 -0
  420. homeassistant-stubs/components/litterrobot/vacuum.pyi +0 -1
  421. homeassistant-stubs/components/local_todo/__init__.pyi +1 -0
  422. homeassistant-stubs/components/lock/__init__.pyi +0 -10
  423. homeassistant-stubs/components/logbook/models.pyi +0 -7
  424. homeassistant-stubs/components/lookin/coordinator.pyi +1 -1
  425. homeassistant-stubs/components/madvr/__init__.pyi +1 -0
  426. homeassistant-stubs/components/madvr/config_flow.pyi +2 -5
  427. homeassistant-stubs/components/manual/alarm_control_panel.pyi +19 -10
  428. homeassistant-stubs/components/mastodon/__init__.pyi +1 -0
  429. homeassistant-stubs/components/mastodon/config_flow.pyi +2 -0
  430. homeassistant-stubs/components/matter/api.pyi +1 -1
  431. homeassistant-stubs/components/matter/climate.pyi +1 -0
  432. homeassistant-stubs/components/matter/config_flow.pyi +3 -1
  433. homeassistant-stubs/components/matter/entity.pyi +2 -2
  434. homeassistant-stubs/components/matter/fan.pyi +1 -0
  435. homeassistant-stubs/components/matter/light.pyi +1 -0
  436. homeassistant-stubs/components/matter/lock.pyi +1 -0
  437. homeassistant-stubs/components/matter/models.pyi +2 -0
  438. homeassistant-stubs/components/matter/select.pyi +2 -0
  439. homeassistant-stubs/components/matter/switch.pyi +1 -0
  440. homeassistant-stubs/components/matter/update.pyi +1 -0
  441. homeassistant-stubs/components/matter/vacuum.pyi +47 -0
  442. homeassistant-stubs/components/matter/valve.pyi +1 -0
  443. homeassistant-stubs/components/media_player/__init__.pyi +0 -33
  444. homeassistant-stubs/components/mikrotik/__init__.pyi +1 -0
  445. homeassistant-stubs/components/mikrotik/config_flow.pyi +0 -1
  446. homeassistant-stubs/components/modbus/__init__.pyi +1 -1
  447. homeassistant-stubs/components/modbus/const.pyi +0 -2
  448. homeassistant-stubs/components/modbus/cover.pyi +2 -2
  449. homeassistant-stubs/components/modbus/modbus.pyi +1 -2
  450. homeassistant-stubs/components/modbus/validators.pyi +1 -1
  451. homeassistant-stubs/components/mold_indicator/config_flow.pyi +9 -0
  452. homeassistant-stubs/components/mold_indicator/sensor.pyi +6 -2
  453. homeassistant-stubs/components/monzo/config_flow.pyi +1 -2
  454. homeassistant-stubs/components/mopeka/__init__.pyi +1 -0
  455. homeassistant-stubs/components/mqtt/__init__.pyi +2 -1
  456. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +3 -3
  457. homeassistant-stubs/components/mqtt/client.pyi +4 -0
  458. homeassistant-stubs/components/mqtt/config_flow.pyi +3 -2
  459. homeassistant-stubs/components/mqtt/const.pyi +3 -1
  460. homeassistant-stubs/components/mqtt/cover.pyi +1 -1
  461. homeassistant-stubs/components/mqtt/discovery.pyi +26 -9
  462. homeassistant-stubs/components/mqtt/entity.pyi +5 -2
  463. homeassistant-stubs/components/mqtt/models.pyi +11 -0
  464. homeassistant-stubs/components/mqtt/schemas.pyi +15 -7
  465. homeassistant-stubs/components/mqtt/update.pyi +7 -11
  466. homeassistant-stubs/components/music_assistant/__init__.pyi +27 -0
  467. homeassistant-stubs/components/music_assistant/config_flow.pyi +24 -0
  468. homeassistant-stubs/components/music_assistant/const.pyi +12 -0
  469. homeassistant-stubs/components/music_assistant/entity.pyi +24 -0
  470. homeassistant-stubs/components/music_assistant/media_player.pyi +91 -0
  471. homeassistant-stubs/components/mysensors/const.pyi +6 -1
  472. homeassistant-stubs/components/myuplink/__init__.pyi +1 -0
  473. homeassistant-stubs/components/myuplink/config_flow.pyi +1 -2
  474. homeassistant-stubs/components/myuplink/helpers.pyi +6 -0
  475. homeassistant-stubs/components/nam/__init__.pyi +1 -0
  476. homeassistant-stubs/components/nam/config_flow.pyi +4 -7
  477. homeassistant-stubs/components/nanoleaf/__init__.pyi +1 -0
  478. homeassistant-stubs/components/nanoleaf/config_flow.pyi +1 -2
  479. homeassistant-stubs/components/nest/__init__.pyi +1 -1
  480. homeassistant-stubs/components/nest/api.pyi +5 -3
  481. homeassistant-stubs/components/nest/camera.pyi +12 -6
  482. homeassistant-stubs/components/nest/config_flow.pyi +10 -4
  483. homeassistant-stubs/components/nest/const.pyi +2 -1
  484. homeassistant-stubs/components/netatmo/climate.pyi +1 -0
  485. homeassistant-stubs/components/network/websocket.pyi +2 -0
  486. homeassistant-stubs/components/nextdns/__init__.pyi +1 -0
  487. homeassistant-stubs/components/nextdns/config_flow.pyi +1 -2
  488. homeassistant-stubs/components/notify/__init__.pyi +0 -2
  489. homeassistant-stubs/components/notion/config_flow.pyi +1 -3
  490. homeassistant-stubs/components/number/__init__.pyi +0 -8
  491. homeassistant-stubs/components/nut/__init__.pyi +1 -0
  492. homeassistant-stubs/components/onboarding/views.pyi +1 -0
  493. homeassistant-stubs/components/oncue/config_flow.pyi +1 -3
  494. homeassistant-stubs/components/oncue/types.pyi +3 -0
  495. homeassistant-stubs/components/onewire/__init__.pyi +1 -0
  496. homeassistant-stubs/components/onkyo/__init__.pyi +25 -0
  497. homeassistant-stubs/components/onkyo/config_flow.pyi +30 -0
  498. homeassistant-stubs/components/onkyo/const.pyi +68 -0
  499. homeassistant-stubs/components/onkyo/media_player.pyi +22 -25
  500. homeassistant-stubs/components/onkyo/receiver.pyi +23 -3
  501. homeassistant-stubs/components/onkyo/services.pyi +14 -0
  502. homeassistant-stubs/components/openai_conversation/__init__.pyi +19 -0
  503. homeassistant-stubs/components/openai_conversation/config_flow.pyi +30 -0
  504. homeassistant-stubs/components/openai_conversation/const.pyi +14 -0
  505. homeassistant-stubs/components/openai_conversation/conversation.pyi +36 -0
  506. homeassistant-stubs/components/openexchangerates/config_flow.pyi +1 -2
  507. homeassistant-stubs/components/oralb/__init__.pyi +1 -0
  508. homeassistant-stubs/components/otbr/__init__.pyi +1 -0
  509. homeassistant-stubs/components/otbr/config_flow.pyi +2 -1
  510. homeassistant-stubs/components/otbr/silabs_multiprotocol.pyi +1 -1
  511. homeassistant-stubs/components/otbr/util.pyi +1 -1
  512. homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +12 -12
  513. homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control_zone.pyi +0 -3
  514. homeassistant-stubs/components/overkiz/config_flow.pyi +1 -2
  515. homeassistant-stubs/components/p1_monitor/__init__.pyi +3 -2
  516. homeassistant-stubs/components/p1_monitor/config_flow.pyi +2 -2
  517. homeassistant-stubs/components/p1_monitor/coordinator.pyi +1 -1
  518. homeassistant-stubs/components/p1_monitor/diagnostics.pyi +1 -1
  519. homeassistant-stubs/components/panel_custom/__init__.pyi +28 -0
  520. homeassistant-stubs/components/pi_hole/__init__.pyi +1 -0
  521. homeassistant-stubs/components/pi_hole/update.pyi +1 -1
  522. homeassistant-stubs/components/ping/__init__.pyi +1 -0
  523. homeassistant-stubs/components/plugwise/__init__.pyi +1 -0
  524. homeassistant-stubs/components/plugwise/config_flow.pyi +8 -6
  525. homeassistant-stubs/components/plugwise/const.pyi +4 -1
  526. homeassistant-stubs/components/plugwise/util.pyi +1 -1
  527. homeassistant-stubs/components/powerwall/config_flow.pyi +0 -1
  528. homeassistant-stubs/components/powerwall/models.pyi +1 -0
  529. homeassistant-stubs/components/private_ble_device/coordinator.pyi +3 -0
  530. homeassistant-stubs/components/prometheus/__init__.pyi +7 -4
  531. homeassistant-stubs/components/proximity/coordinator.pyi +1 -0
  532. homeassistant-stubs/components/purpleair/config_flow.pyi +0 -1
  533. homeassistant-stubs/components/pvoutput/config_flow.pyi +1 -2
  534. homeassistant-stubs/components/qnap_qsw/sensor.pyi +8 -2
  535. homeassistant-stubs/components/radarr/__init__.pyi +1 -0
  536. homeassistant-stubs/components/radarr/config_flow.pyi +1 -3
  537. homeassistant-stubs/components/radio_browser/__init__.pyi +10 -0
  538. homeassistant-stubs/components/radio_browser/config_flow.pyi +8 -0
  539. homeassistant-stubs/components/radio_browser/const.pyi +5 -0
  540. homeassistant-stubs/components/radio_browser/media_source.pyi +28 -0
  541. homeassistant-stubs/components/rainforest_raven/__init__.pyi +3 -5
  542. homeassistant-stubs/components/rainforest_raven/coordinator.pyi +3 -12
  543. homeassistant-stubs/components/rainforest_raven/diagnostics.pyi +2 -4
  544. homeassistant-stubs/components/rainforest_raven/sensor.pyi +4 -5
  545. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -0
  546. homeassistant-stubs/components/rainmachine/switch.pyi +1 -1
  547. homeassistant-stubs/components/rainmachine/update.pyi +7 -1
  548. homeassistant-stubs/components/raspberry_pi/__init__.pyi +2 -1
  549. homeassistant-stubs/components/recorder/core.pyi +2 -6
  550. homeassistant-stubs/components/recorder/migration.pyi +36 -16
  551. homeassistant-stubs/components/recorder/models/state.pyi +0 -7
  552. homeassistant-stubs/components/recorder/queries.pyi +1 -0
  553. homeassistant-stubs/components/recorder/table_managers/__init__.pyi +2 -2
  554. homeassistant-stubs/components/recorder/util.pyi +10 -5
  555. homeassistant-stubs/components/remote/__init__.pyi +0 -4
  556. homeassistant-stubs/components/renault/__init__.pyi +1 -0
  557. homeassistant-stubs/components/renault/renault_vehicle.pyi +1 -1
  558. homeassistant-stubs/components/repairs/issue_handler.pyi +1 -1
  559. homeassistant-stubs/components/rfxtrx/cover.pyi +1 -2
  560. homeassistant-stubs/components/rfxtrx/entity.pyi +1 -1
  561. homeassistant-stubs/components/ring/__init__.pyi +1 -0
  562. homeassistant-stubs/components/ring/config_flow.pyi +5 -2
  563. homeassistant-stubs/components/ring/coordinator.pyi +1 -1
  564. homeassistant-stubs/components/ring/entity.pyi +2 -2
  565. homeassistant-stubs/components/roborock/__init__.pyi +1 -0
  566. homeassistant-stubs/components/roborock/config_flow.pyi +1 -2
  567. homeassistant-stubs/components/roborock/coordinator.pyi +0 -5
  568. homeassistant-stubs/components/roku/browse_media.pyi +2 -0
  569. homeassistant-stubs/components/roku/helpers.pyi +5 -2
  570. homeassistant-stubs/components/rtsp_to_webrtc/__init__.pyi +1 -3
  571. homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +1 -1
  572. homeassistant-stubs/components/samsungtv/__init__.pyi +2 -2
  573. homeassistant-stubs/components/samsungtv/bridge.pyi +1 -1
  574. homeassistant-stubs/components/samsungtv/config_flow.pyi +2 -2
  575. homeassistant-stubs/components/scrape/__init__.pyi +1 -0
  576. homeassistant-stubs/components/scrape/coordinator.pyi +2 -1
  577. homeassistant-stubs/components/script/__init__.pyi +3 -18
  578. homeassistant-stubs/components/select/__init__.pyi +0 -3
  579. homeassistant-stubs/components/sensibo/__init__.pyi +1 -0
  580. homeassistant-stubs/components/sensibo/config_flow.pyi +5 -2
  581. homeassistant-stubs/components/sensibo/entity.pyi +1 -1
  582. homeassistant-stubs/components/sensibo/update.pyi +1 -1
  583. homeassistant-stubs/components/sensor/__init__.pyi +0 -9
  584. homeassistant-stubs/components/sensor/websocket_api.pyi +3 -0
  585. homeassistant-stubs/components/sensoterra/__init__.pyi +1 -0
  586. homeassistant-stubs/components/senz/__init__.pyi +2 -0
  587. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +2 -2
  588. homeassistant-stubs/components/sfr_box/button.pyi +1 -1
  589. homeassistant-stubs/components/sfr_box/config_flow.pyi +1 -2
  590. homeassistant-stubs/components/sfr_box/coordinator.pyi +1 -1
  591. homeassistant-stubs/components/sfr_box/sensor.pyi +2 -2
  592. homeassistant-stubs/components/shell_command/__init__.pyi +13 -0
  593. homeassistant-stubs/components/shelly/binary_sensor.pyi +1 -1
  594. homeassistant-stubs/components/shelly/button.pyi +1 -1
  595. homeassistant-stubs/components/shelly/config_flow.pyi +1 -3
  596. homeassistant-stubs/components/shelly/const.pyi +1 -1
  597. homeassistant-stubs/components/shelly/coordinator.pyi +2 -4
  598. homeassistant-stubs/components/shelly/light.pyi +13 -2
  599. homeassistant-stubs/components/shelly/number.pyi +1 -1
  600. homeassistant-stubs/components/shelly/select.pyi +1 -1
  601. homeassistant-stubs/components/shelly/sensor.pyi +1 -1
  602. homeassistant-stubs/components/shelly/switch.pyi +10 -1
  603. homeassistant-stubs/components/shelly/text.pyi +1 -1
  604. homeassistant-stubs/components/shelly/update.pyi +2 -2
  605. homeassistant-stubs/components/shelly/utils.pyi +3 -2
  606. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -3
  607. homeassistant-stubs/components/simplisafe/typing.pyi +4 -0
  608. homeassistant-stubs/components/siren/__init__.pyi +0 -3
  609. homeassistant-stubs/components/sleepiq/config_flow.pyi +1 -3
  610. homeassistant-stubs/components/sleepiq/entity.pyi +3 -2
  611. homeassistant-stubs/components/smhi/config_flow.pyi +1 -3
  612. homeassistant-stubs/components/smlight/__init__.pyi +1 -0
  613. homeassistant-stubs/components/smlight/config_flow.pyi +0 -2
  614. homeassistant-stubs/components/smlight/coordinator.pyi +1 -1
  615. homeassistant-stubs/components/smlight/update.pyi +4 -2
  616. homeassistant-stubs/components/solarlog/__init__.pyi +1 -0
  617. homeassistant-stubs/components/solarlog/config_flow.pyi +1 -4
  618. homeassistant-stubs/components/solarlog/coordinator.pyi +6 -0
  619. homeassistant-stubs/components/sonarr/config_flow.pyi +1 -4
  620. homeassistant-stubs/components/speedtestdotnet/__init__.pyi +1 -0
  621. homeassistant-stubs/components/spotify/__init__.pyi +5 -0
  622. homeassistant-stubs/components/spotify/application_credentials.pyi +4 -0
  623. homeassistant-stubs/components/spotify/browse_media.pyi +49 -0
  624. homeassistant-stubs/components/spotify/config_flow.pyi +19 -0
  625. homeassistant-stubs/components/spotify/const.pyi +9 -0
  626. homeassistant-stubs/components/spotify/coordinator.pyi +34 -0
  627. homeassistant-stubs/components/spotify/diagnostics.pyi +5 -0
  628. homeassistant-stubs/components/spotify/entity.pyi +10 -0
  629. homeassistant-stubs/components/spotify/media_player.pyi +80 -0
  630. homeassistant-stubs/components/spotify/models.pyi +12 -0
  631. homeassistant-stubs/components/spotify/sensor.pyi +28 -0
  632. homeassistant-stubs/components/spotify/system_health.pyi +6 -0
  633. homeassistant-stubs/components/spotify/util.pyi +7 -0
  634. homeassistant-stubs/components/squeezebox/__init__.pyi +6 -3
  635. homeassistant-stubs/components/squeezebox/const.pyi +5 -0
  636. homeassistant-stubs/components/squeezebox/coordinator.pyi +15 -3
  637. homeassistant-stubs/components/squeezebox/media_player.pyi +12 -13
  638. homeassistant-stubs/components/ssdp/__init__.pyi +1 -0
  639. homeassistant-stubs/components/statistics/config_flow.pyi +8 -2
  640. homeassistant-stubs/components/statistics/sensor.pyi +20 -22
  641. homeassistant-stubs/components/steamist/config_flow.pyi +3 -1
  642. homeassistant-stubs/components/sun/entity.pyi +1 -0
  643. homeassistant-stubs/components/surepetcare/config_flow.pyi +1 -2
  644. homeassistant-stubs/components/switch/__init__.pyi +0 -2
  645. homeassistant-stubs/components/switch_as_x/__init__.pyi +3 -0
  646. homeassistant-stubs/components/switch_as_x/config_flow.pyi +18 -0
  647. homeassistant-stubs/components/switch_as_x/const.pyi +5 -0
  648. homeassistant-stubs/components/switch_as_x/cover.pyi +18 -0
  649. homeassistant-stubs/components/switch_as_x/entity.pyi +35 -0
  650. homeassistant-stubs/components/switch_as_x/fan.pyi +17 -0
  651. homeassistant-stubs/components/switch_as_x/light.pyi +13 -0
  652. homeassistant-stubs/components/switch_as_x/lock.pyi +17 -0
  653. homeassistant-stubs/components/switch_as_x/siren.pyi +12 -0
  654. homeassistant-stubs/components/switch_as_x/valve.pyi +19 -0
  655. homeassistant-stubs/components/switchbee/entity.pyi +2 -2
  656. homeassistant-stubs/components/switchbee/switch.pyi +2 -1
  657. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  658. homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +2 -0
  659. homeassistant-stubs/components/switchbot_cloud/lock.pyi +18 -0
  660. homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -0
  661. homeassistant-stubs/components/switcher_kis/button.pyi +2 -5
  662. homeassistant-stubs/components/switcher_kis/climate.pyi +2 -5
  663. homeassistant-stubs/components/switcher_kis/config_flow.pyi +1 -2
  664. homeassistant-stubs/components/switcher_kis/coordinator.pyi +1 -1
  665. homeassistant-stubs/components/switcher_kis/cover.pyi +16 -9
  666. homeassistant-stubs/components/switcher_kis/entity.pyi +9 -0
  667. homeassistant-stubs/components/switcher_kis/light.pyi +44 -0
  668. homeassistant-stubs/components/switcher_kis/sensor.pyi +2 -5
  669. homeassistant-stubs/components/switcher_kis/switch.pyi +2 -5
  670. homeassistant-stubs/components/synology_dsm/coordinator.pyi +2 -2
  671. homeassistant-stubs/components/synology_dsm/entity.pyi +2 -1
  672. homeassistant-stubs/components/synology_dsm/update.pyi +1 -1
  673. homeassistant-stubs/components/system_log/__init__.pyi +1 -0
  674. homeassistant-stubs/components/systemmonitor/__init__.pyi +1 -0
  675. homeassistant-stubs/components/tailscale/config_flow.pyi +1 -2
  676. homeassistant-stubs/components/tailwind/config_flow.pyi +1 -2
  677. homeassistant-stubs/components/tailwind/typing.pyi +2 -0
  678. homeassistant-stubs/components/tautulli/__init__.pyi +1 -0
  679. homeassistant-stubs/components/technove/helpers.pyi +1 -1
  680. homeassistant-stubs/components/tedee/__init__.pyi +1 -1
  681. homeassistant-stubs/components/tedee/binary_sensor.pyi +1 -1
  682. homeassistant-stubs/components/tedee/config_flow.pyi +2 -5
  683. homeassistant-stubs/components/tedee/coordinator.pyi +5 -5
  684. homeassistant-stubs/components/tedee/lock.pyi +2 -2
  685. homeassistant-stubs/components/tedee/sensor.pyi +1 -1
  686. homeassistant-stubs/components/text/__init__.pyi +0 -6
  687. homeassistant-stubs/components/thethingsnetwork/config_flow.pyi +1 -2
  688. homeassistant-stubs/components/thethingsnetwork/sensor.pyi +2 -1
  689. homeassistant-stubs/components/threshold/binary_sensor.pyi +1 -3
  690. homeassistant-stubs/components/tibber/sensor.pyi +1 -0
  691. homeassistant-stubs/components/tile/device_tracker.pyi +3 -6
  692. homeassistant-stubs/components/time/__init__.pyi +0 -4
  693. homeassistant-stubs/components/timer/__init__.pyi +1 -1
  694. homeassistant-stubs/components/tod/binary_sensor.pyi +2 -1
  695. homeassistant-stubs/components/todo/__init__.pyi +0 -2
  696. homeassistant-stubs/components/tplink/__init__.pyi +1 -0
  697. homeassistant-stubs/components/tplink/button.pyi +1 -1
  698. homeassistant-stubs/components/tplink/config_flow.pyi +5 -3
  699. homeassistant-stubs/components/tplink/entity.pyi +4 -4
  700. homeassistant-stubs/components/tplink_omada/__init__.pyi +4 -3
  701. homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +3 -5
  702. homeassistant-stubs/components/tplink_omada/const.pyi +11 -0
  703. homeassistant-stubs/components/tplink_omada/coordinator.pyi +1 -1
  704. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +3 -4
  705. homeassistant-stubs/components/tplink_omada/entity.pyi +3 -1
  706. homeassistant-stubs/components/tplink_omada/sensor.pyi +34 -0
  707. homeassistant-stubs/components/tplink_omada/switch.pyi +3 -5
  708. homeassistant-stubs/components/tplink_omada/update.pyi +3 -6
  709. homeassistant-stubs/components/trace/__init__.pyi +5 -25
  710. homeassistant-stubs/components/trace/const.pyi +1 -1
  711. homeassistant-stubs/components/trace/models.pyi +2 -0
  712. homeassistant-stubs/components/trace/util.pyi +17 -0
  713. homeassistant-stubs/components/trace/websocket_api.pyi +1 -1
  714. homeassistant-stubs/components/tractive/__init__.pyi +1 -0
  715. homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +2 -2
  716. homeassistant-stubs/components/trafikverket_ferry/config_flow.pyi +1 -2
  717. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +0 -1
  718. homeassistant-stubs/components/trafikverket_weatherstation/config_flow.pyi +3 -2
  719. homeassistant-stubs/components/transmission/__init__.pyi +1 -0
  720. homeassistant-stubs/components/transmission/config_flow.pyi +1 -2
  721. homeassistant-stubs/components/trend/binary_sensor.pyi +1 -2
  722. homeassistant-stubs/components/tts/__init__.pyi +0 -5
  723. homeassistant-stubs/components/tts/const.pyi +1 -0
  724. homeassistant-stubs/components/twentemilieu/__init__.pyi +4 -0
  725. homeassistant-stubs/components/unifi/__init__.pyi +1 -0
  726. homeassistant-stubs/components/unifi/config_flow.pyi +1 -2
  727. homeassistant-stubs/components/unifi/device_tracker.pyi +0 -3
  728. homeassistant-stubs/components/unifi/update.pyi +1 -1
  729. homeassistant-stubs/components/unifiprotect/config_flow.pyi +0 -1
  730. homeassistant-stubs/components/unifiprotect/data.pyi +2 -0
  731. homeassistant-stubs/components/update/__init__.pyi +7 -12
  732. homeassistant-stubs/components/update/const.pyi +2 -0
  733. homeassistant-stubs/components/vacuum/__init__.pyi +0 -6
  734. homeassistant-stubs/components/vallox/config_flow.pyi +2 -5
  735. homeassistant-stubs/components/velbus/entity.pyi +1 -1
  736. homeassistant-stubs/components/vlc_telnet/__init__.pyi +1 -0
  737. homeassistant-stubs/components/vlc_telnet/config_flow.pyi +2 -3
  738. homeassistant-stubs/components/vlc_telnet/media_player.pyi +1 -1
  739. homeassistant-stubs/components/wallbox/__init__.pyi +1 -1
  740. homeassistant-stubs/components/wallbox/config_flow.pyi +2 -4
  741. homeassistant-stubs/components/wallbox/coordinator.pyi +3 -3
  742. homeassistant-stubs/components/water_heater/__init__.pyi +0 -9
  743. homeassistant-stubs/components/weather/__init__.pyi +0 -19
  744. homeassistant-stubs/components/webostv/config_flow.pyi +2 -2
  745. homeassistant-stubs/components/webostv/media_player.pyi +1 -1
  746. homeassistant-stubs/components/websocket_api/connection.pyi +3 -0
  747. homeassistant-stubs/components/websocket_api/const.pyi +4 -1
  748. homeassistant-stubs/components/wemo/__init__.pyi +4 -1
  749. homeassistant-stubs/components/wemo/coordinator.pyi +3 -0
  750. homeassistant-stubs/components/withings/__init__.pyi +4 -2
  751. homeassistant-stubs/components/withings/config_flow.pyi +1 -2
  752. homeassistant-stubs/components/withings/coordinator.pyi +7 -2
  753. homeassistant-stubs/components/withings/entity.pyi +14 -2
  754. homeassistant-stubs/components/withings/sensor.pyi +19 -4
  755. homeassistant-stubs/components/wiz/__init__.pyi +1 -0
  756. homeassistant-stubs/components/wled/__init__.pyi +1 -0
  757. homeassistant-stubs/components/wled/helpers.pyi +1 -1
  758. homeassistant-stubs/components/workday/__init__.pyi +13 -0
  759. homeassistant-stubs/components/workday/binary_sensor.pyi +46 -0
  760. homeassistant-stubs/components/workday/config_flow.pyi +33 -0
  761. homeassistant-stubs/components/workday/const.pyi +18 -0
  762. homeassistant-stubs/components/workday/diagnostics.pyi +5 -0
  763. homeassistant-stubs/components/workday/repairs.pyi +28 -0
  764. homeassistant-stubs/components/xiaomi_ble/config_flow.pyi +7 -2
  765. homeassistant-stubs/components/xiaomi_ble/coordinator.pyi +1 -1
  766. homeassistant-stubs/components/xiaomi_ble/types.pyi +2 -0
  767. homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +1 -0
  768. homeassistant-stubs/components/yale_smart_alarm/alarm_control_panel.pyi +2 -3
  769. homeassistant-stubs/components/yale_smart_alarm/binary_sensor.pyi +7 -0
  770. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +0 -1
  771. homeassistant-stubs/components/yale_smart_alarm/const.pyi +2 -1
  772. homeassistant-stubs/components/yale_smart_alarm/select.pyi +21 -0
  773. homeassistant-stubs/components/yalexs_ble/__init__.pyi +1 -0
  774. homeassistant-stubs/components/yalexs_ble/config_flow.pyi +6 -2
  775. homeassistant-stubs/components/youtube/config_flow.pyi +1 -2
  776. homeassistant-stubs/components/zwave_js/api.pyi +1 -1
  777. homeassistant-stubs/components/zwave_js/config_flow.pyi +6 -4
  778. homeassistant-stubs/components/zwave_js/discovery.pyi +2 -1
  779. homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +1 -1
  780. homeassistant-stubs/components/zwave_js/light.pyi +8 -6
  781. homeassistant-stubs/components/zwave_js/services.pyi +4 -1
  782. homeassistant-stubs/components/zwave_js/update.pyi +2 -1
  783. homeassistant-stubs/config.pyi +3 -24
  784. homeassistant-stubs/config_entries.pyi +52 -27
  785. homeassistant-stubs/const.pyi +16 -12
  786. homeassistant-stubs/core.pyi +36 -109
  787. homeassistant-stubs/core_config.pyi +108 -0
  788. homeassistant-stubs/data_entry_flow.pyi +22 -18
  789. homeassistant-stubs/helpers/area_registry.pyi +6 -8
  790. homeassistant-stubs/helpers/category_registry.pyi +1 -0
  791. homeassistant-stubs/helpers/check_config.pyi +2 -1
  792. homeassistant-stubs/helpers/collection.pyi +6 -4
  793. homeassistant-stubs/helpers/condition.pyi +1 -0
  794. homeassistant-stubs/helpers/config_entry_flow.pyi +3 -2
  795. homeassistant-stubs/helpers/config_validation.pyi +6 -6
  796. homeassistant-stubs/helpers/data_entry_flow.pyi +1 -1
  797. homeassistant-stubs/helpers/debounce.pyi +1 -1
  798. homeassistant-stubs/helpers/deprecation.pyi +9 -4
  799. homeassistant-stubs/helpers/device_registry.pyi +7 -8
  800. homeassistant-stubs/helpers/discovery_flow.pyi +5 -5
  801. homeassistant-stubs/helpers/dispatcher.pyi +9 -8
  802. homeassistant-stubs/helpers/entity.pyi +2 -31
  803. homeassistant-stubs/helpers/entity_registry.pyi +7 -9
  804. homeassistant-stubs/helpers/event.pyi +2 -1
  805. homeassistant-stubs/helpers/floor_registry.pyi +3 -3
  806. homeassistant-stubs/helpers/frame.pyi +1 -5
  807. homeassistant-stubs/helpers/hassio.pyi +4 -0
  808. homeassistant-stubs/helpers/http.pyi +2 -0
  809. homeassistant-stubs/helpers/intent.pyi +5 -5
  810. homeassistant-stubs/helpers/json.pyi +3 -0
  811. homeassistant-stubs/helpers/label_registry.pyi +3 -3
  812. homeassistant-stubs/helpers/llm.pyi +1 -2
  813. homeassistant-stubs/helpers/network.pyi +1 -0
  814. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +6 -3
  815. homeassistant-stubs/helpers/ratelimit.pyi +1 -1
  816. homeassistant-stubs/helpers/redact.pyi +2 -2
  817. homeassistant-stubs/helpers/registry.pyi +5 -3
  818. homeassistant-stubs/helpers/script.pyi +3 -7
  819. homeassistant-stubs/helpers/selector.pyi +1 -1
  820. homeassistant-stubs/helpers/service.pyi +2 -2
  821. homeassistant-stubs/helpers/service_info/hassio.pyi +11 -0
  822. homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -0
  823. homeassistant-stubs/helpers/significant_change.pyi +3 -0
  824. homeassistant-stubs/helpers/singleton.pyi +3 -2
  825. homeassistant-stubs/helpers/storage.pyi +4 -5
  826. homeassistant-stubs/helpers/sun.pyi +2 -0
  827. homeassistant-stubs/helpers/system_info.pyi +1 -0
  828. homeassistant-stubs/helpers/template.pyi +4 -3
  829. homeassistant-stubs/helpers/trace.pyi +3 -3
  830. homeassistant-stubs/helpers/typing.pyi +13 -0
  831. homeassistant-stubs/helpers/update_coordinator.pyi +4 -4
  832. homeassistant-stubs/loader.pyi +5 -21
  833. homeassistant-stubs/scripts/benchmark/__init__.pyi +1 -1
  834. homeassistant-stubs/util/__init__.pyi +1 -1
  835. homeassistant-stubs/util/async_.pyi +2 -2
  836. homeassistant-stubs/util/decorator.pyi +2 -1
  837. homeassistant-stubs/util/dt.pyi +3 -2
  838. homeassistant-stubs/util/enum.pyi +2 -2
  839. homeassistant-stubs/util/hass_dict.pyi +17 -17
  840. homeassistant-stubs/util/json.pyi +3 -0
  841. homeassistant-stubs/util/limited_size_dict.pyi +1 -1
  842. homeassistant-stubs/util/logging.pyi +8 -8
  843. homeassistant-stubs/util/loop.pyi +1 -1
  844. homeassistant-stubs/util/percentage.pyi +2 -2
  845. homeassistant-stubs/util/read_only_dict.pyi +1 -1
  846. homeassistant-stubs/util/signal_type.pyi +3 -3
  847. homeassistant-stubs/util/variance.pyi +3 -3
  848. homeassistant-stubs/util/yaml/loader.pyi +2 -4
  849. {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0b0.dist-info}/METADATA +2 -2
  850. {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0b0.dist-info}/RECORD +852 -768
  851. homeassistant-stubs/components/jellyfin/models.pyi +0 -10
  852. homeassistant-stubs/components/map/__init__.pyi +0 -14
  853. {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0b0.dist-info}/WHEEL +0 -0
  854. {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -1,8 +1,11 @@
1
- from .const import SENSOR_UPDATE_INTERVAL as SENSOR_UPDATE_INTERVAL, STATUS_API_TIMEOUT as STATUS_API_TIMEOUT, STATUS_SENSOR_LASTSCAN as STATUS_SENSOR_LASTSCAN, STATUS_SENSOR_NEEDSRESTART as STATUS_SENSOR_NEEDSRESTART, STATUS_SENSOR_RESCAN as STATUS_SENSOR_RESCAN
1
+ from .const import PLAYER_UPDATE_INTERVAL as PLAYER_UPDATE_INTERVAL, SENSOR_UPDATE_INTERVAL as SENSOR_UPDATE_INTERVAL, SIGNAL_PLAYER_REDISCOVERED as SIGNAL_PLAYER_REDISCOVERED, STATUS_API_TIMEOUT as STATUS_API_TIMEOUT, STATUS_SENSOR_LASTSCAN as STATUS_SENSOR_LASTSCAN, STATUS_SENSOR_NEEDSRESTART as STATUS_SENSOR_NEEDSRESTART, STATUS_SENSOR_RESCAN as STATUS_SENSOR_RESCAN
2
2
  from _typeshed import Incomplete
3
- from homeassistant.core import HomeAssistant as HomeAssistant
3
+ from collections.abc import Callable as Callable
4
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
+ from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
4
6
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
5
- from pysqueezebox import Server as Server
7
+ from pysqueezebox import Player as Player, Server as Server
8
+ from typing import Any
6
9
 
7
10
  _LOGGER: Incomplete
8
11
 
@@ -12,3 +15,12 @@ class LMSStatusDataUpdateCoordinator(DataUpdateCoordinator):
12
15
  def __init__(self, hass: HomeAssistant, lms: Server) -> None: ...
13
16
  async def _async_update_data(self) -> dict: ...
14
17
  def _prepare_status_data(self, data: dict) -> dict: ...
18
+
19
+ class SqueezeBoxPlayerUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
20
+ player: Incomplete
21
+ available: bool
22
+ _remove_dispatcher: Incomplete
23
+ server_uuid: Incomplete
24
+ def __init__(self, hass: HomeAssistant, player: Player, server_uuid: str) -> None: ...
25
+ async def _async_update_data(self) -> dict[str, Any]: ...
26
+ def rediscovered(self, unique_id: str, connected: bool) -> None: ...
@@ -1,32 +1,30 @@
1
1
  from . import SqueezeboxConfigEntry as SqueezeboxConfigEntry
2
2
  from .browse_media import build_item_response as build_item_response, generate_playlist as generate_playlist, library_payload as library_payload, media_source_content_filter as media_source_content_filter
3
- from .const import DISCOVERY_TASK as DISCOVERY_TASK, DOMAIN as DOMAIN, KNOWN_PLAYERS as KNOWN_PLAYERS, SQUEEZEBOX_SOURCE_STRINGS as SQUEEZEBOX_SOURCE_STRINGS
3
+ from .const import DISCOVERY_TASK as DISCOVERY_TASK, DOMAIN as DOMAIN, KNOWN_PLAYERS as KNOWN_PLAYERS, KNOWN_SERVERS as KNOWN_SERVERS, SIGNAL_PLAYER_DISCOVERED as SIGNAL_PLAYER_DISCOVERED, SQUEEZEBOX_SOURCE_STRINGS as SQUEEZEBOX_SOURCE_STRINGS
4
+ from .coordinator import SqueezeBoxPlayerUpdateCoordinator as SqueezeBoxPlayerUpdateCoordinator
4
5
  from _typeshed import Incomplete
5
6
  from collections.abc import Callable as Callable
6
7
  from datetime import datetime
7
8
  from homeassistant.components import media_source as media_source
8
9
  from homeassistant.components.media_player import ATTR_MEDIA_ENQUEUE as ATTR_MEDIA_ENQUEUE, BrowseError as BrowseError, BrowseMedia as BrowseMedia, MediaPlayerEnqueue as MediaPlayerEnqueue, MediaPlayerEntity as MediaPlayerEntity, MediaPlayerEntityFeature as MediaPlayerEntityFeature, MediaPlayerState as MediaPlayerState, MediaType as MediaType, RepeatMode as RepeatMode, async_process_play_media_url as async_process_play_media_url
9
10
  from homeassistant.config_entries import SOURCE_INTEGRATION_DISCOVERY as SOURCE_INTEGRATION_DISCOVERY
10
- from homeassistant.const import ATTR_COMMAND as ATTR_COMMAND, CONF_HOST as CONF_HOST, CONF_PORT as CONF_PORT
11
+ from homeassistant.const import ATTR_COMMAND as ATTR_COMMAND, CONF_HOST as CONF_HOST, CONF_PORT as CONF_PORT, Platform as Platform
11
12
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
12
13
  from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
13
14
  from homeassistant.helpers import discovery_flow as discovery_flow, entity_platform as entity_platform
14
15
  from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo, format_mac as format_mac
15
- from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send as async_dispatcher_send
16
+ from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
16
17
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
17
- from homeassistant.helpers.event import async_call_later as async_call_later
18
18
  from homeassistant.helpers.start import async_at_start as async_at_start
19
+ from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
19
20
  from homeassistant.util.dt import utcnow as utcnow
20
- from pysqueezebox import Player as Player, Server as Server
21
+ from pysqueezebox import Server as Server
21
22
  from typing import Any
22
23
 
23
24
  SERVICE_CALL_METHOD: str
24
25
  SERVICE_CALL_QUERY: str
25
26
  ATTR_QUERY_RESULT: str
26
- SIGNAL_PLAYER_REDISCOVERED: str
27
27
  _LOGGER: Incomplete
28
- DISCOVERY_INTERVAL: int
29
- KNOWN_SERVERS: str
30
28
  ATTR_PARAMETERS: str
31
29
  ATTR_OTHER_PLAYER: str
32
30
  ATTR_TO_PROPERTY: Incomplete
@@ -35,24 +33,25 @@ SQUEEZEBOX_MODE: Incomplete
35
33
  async def start_server_discovery(hass: HomeAssistant) -> None: ...
36
34
  async def async_setup_entry(hass: HomeAssistant, entry: SqueezeboxConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
37
35
 
38
- class SqueezeBoxEntity(MediaPlayerEntity):
36
+ class SqueezeBoxMediaPlayerEntity(CoordinatorEntity[SqueezeBoxPlayerUpdateCoordinator], MediaPlayerEntity):
39
37
  _attr_supported_features: Incomplete
40
38
  _attr_has_entity_name: bool
41
39
  _attr_name: Incomplete
42
40
  _last_update: datetime | None
43
- _attr_available: bool
44
41
  _player: Incomplete
45
42
  _query_result: Incomplete
46
43
  _remove_dispatcher: Incomplete
44
+ _previous_media_position: int
47
45
  _attr_unique_id: Incomplete
48
46
  _attr_device_info: Incomplete
49
- def __init__(self, player: Player, server: Server) -> None: ...
47
+ def __init__(self, coordinator: SqueezeBoxPlayerUpdateCoordinator) -> None: ...
48
+ def _handle_coordinator_update(self) -> None: ...
49
+ @property
50
+ def available(self) -> bool: ...
50
51
  @property
51
52
  def extra_state_attributes(self) -> dict[str, Any]: ...
52
- def rediscovered(self, unique_id: str, connected: bool) -> None: ...
53
53
  @property
54
54
  def state(self) -> MediaPlayerState | None: ...
55
- async def async_update(self) -> None: ...
56
55
  async def async_will_remove_from_hass(self) -> None: ...
57
56
  @property
58
57
  def volume_level(self) -> float | None: ...
@@ -75,6 +75,7 @@ class SsdpServiceInfo(BaseServiceInfo):
75
75
  def __init__(self, ssdp_usn, ssdp_st, upnp, ssdp_location=..., ssdp_nt=..., ssdp_udn=..., ssdp_ext=..., ssdp_server=..., ssdp_headers=..., ssdp_all_locations=..., x_homeassistant_matching_domains=...) -> None: ...
76
76
 
77
77
  SsdpChange: Incomplete
78
+ type SsdpHassJobCallback = HassJob[[SsdpServiceInfo, SsdpChange], Coroutine[Any, Any, None] | None]
78
79
  SSDP_SOURCE_SSDP_CHANGE_MAPPING: Mapping[SsdpSource, SsdpChange]
79
80
 
80
81
  def _format_err(name: str, *args: Any) -> str: ...
@@ -1,10 +1,12 @@
1
1
  import voluptuous as vol
2
2
  from . import DOMAIN as DOMAIN
3
- from .sensor import CONF_KEEP_LAST_SAMPLE as CONF_KEEP_LAST_SAMPLE, CONF_MAX_AGE as CONF_MAX_AGE, CONF_PERCENTILE as CONF_PERCENTILE, CONF_PRECISION as CONF_PRECISION, CONF_SAMPLES_MAX_BUFFER_SIZE as CONF_SAMPLES_MAX_BUFFER_SIZE, CONF_STATE_CHARACTERISTIC as CONF_STATE_CHARACTERISTIC, DEFAULT_NAME as DEFAULT_NAME, DEFAULT_PRECISION as DEFAULT_PRECISION, STATS_BINARY_SUPPORT as STATS_BINARY_SUPPORT, STATS_NUMERIC_SUPPORT as STATS_NUMERIC_SUPPORT
3
+ from .sensor import CONF_KEEP_LAST_SAMPLE as CONF_KEEP_LAST_SAMPLE, CONF_MAX_AGE as CONF_MAX_AGE, CONF_PERCENTILE as CONF_PERCENTILE, CONF_PRECISION as CONF_PRECISION, CONF_SAMPLES_MAX_BUFFER_SIZE as CONF_SAMPLES_MAX_BUFFER_SIZE, CONF_STATE_CHARACTERISTIC as CONF_STATE_CHARACTERISTIC, DEFAULT_NAME as DEFAULT_NAME, DEFAULT_PRECISION as DEFAULT_PRECISION, STATS_BINARY_SUPPORT as STATS_BINARY_SUPPORT, STATS_NUMERIC_SUPPORT as STATS_NUMERIC_SUPPORT, StatisticsSensor as StatisticsSensor
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Mapping
6
+ from homeassistant.components import websocket_api as websocket_api
6
7
  from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME
7
- from homeassistant.core import split_entity_id as split_entity_id
8
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback, split_entity_id as split_entity_id
9
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
8
10
  from homeassistant.helpers.schema_config_entry_flow import SchemaCommonFlowHandler as SchemaCommonFlowHandler, SchemaConfigFlowHandler as SchemaConfigFlowHandler, SchemaFlowError as SchemaFlowError, SchemaFlowFormStep as SchemaFlowFormStep
9
11
  from homeassistant.helpers.selector import BooleanSelector as BooleanSelector, DurationSelector as DurationSelector, DurationSelectorConfig as DurationSelectorConfig, EntitySelector as EntitySelector, EntitySelectorConfig as EntitySelectorConfig, NumberSelector as NumberSelector, NumberSelectorConfig as NumberSelectorConfig, NumberSelectorMode as NumberSelectorMode, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode, TextSelector as TextSelector
10
12
  from typing import Any
@@ -21,3 +23,7 @@ class StatisticsConfigFlowHandler(SchemaConfigFlowHandler, domain=DOMAIN):
21
23
  config_flow = CONFIG_FLOW
22
24
  options_flow = OPTIONS_FLOW
23
25
  def async_config_entry_title(self, options: Mapping[str, Any]) -> str: ...
26
+ @staticmethod
27
+ async def async_setup_preview(hass: HomeAssistant) -> None: ...
28
+
29
+ async def ws_start_preview(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -1,17 +1,16 @@
1
1
  from . import DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
2
2
  from _typeshed import Incomplete
3
- from collections.abc import Callable as Callable
3
+ from collections.abc import Callable as Callable, Mapping
4
4
  from datetime import datetime, timedelta
5
5
  from homeassistant.components.recorder import get_instance as get_instance, history as history
6
- from homeassistant.components.sensor import DEVICE_CLASS_STATE_CLASSES as DEVICE_CLASS_STATE_CLASSES, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
6
+ from homeassistant.components.sensor import DEVICE_CLASS_STATE_CLASSES as DEVICE_CLASS_STATE_CLASSES, DEVICE_CLASS_UNITS as DEVICE_CLASS_UNITS, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
7
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
8
  from homeassistant.const import ATTR_DEVICE_CLASS as ATTR_DEVICE_CLASS, ATTR_UNIT_OF_MEASUREMENT as ATTR_UNIT_OF_MEASUREMENT, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME, CONF_UNIQUE_ID as CONF_UNIQUE_ID, PERCENTAGE as PERCENTAGE, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN
9
- from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, State as State, callback as callback, split_entity_id as split_entity_id
9
+ from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, EventStateChangedData as EventStateChangedData, EventStateReportedData as EventStateReportedData, HomeAssistant as HomeAssistant, State as State, callback as callback, split_entity_id as split_entity_id
10
10
  from homeassistant.helpers.device import async_device_info_to_link_from_entity as async_device_info_to_link_from_entity
11
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
- from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time, async_track_state_change_event as async_track_state_change_event
12
+ from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time, async_track_state_change_event as async_track_state_change_event, async_track_state_report_event as async_track_state_report_event
13
13
  from homeassistant.helpers.reload import async_setup_reload_service as async_setup_reload_service
14
- from homeassistant.helpers.start import async_at_start as async_at_start
15
14
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, StateType as StateType
16
15
  from homeassistant.util.enum import try_parse_enum as try_parse_enum
17
16
  from typing import Any
@@ -89,30 +88,28 @@ class StatisticsSensor(SensorEntity):
89
88
  samples_keep_last: Incomplete
90
89
  _precision: Incomplete
91
90
  _percentile: Incomplete
92
- _value: Incomplete
93
- _unit_of_measurement: Incomplete
94
- _available: bool
91
+ _attr_available: bool
95
92
  states: Incomplete
96
93
  ages: Incomplete
97
94
  attributes: Incomplete
98
95
  _state_characteristic_fn: Incomplete
99
96
  _update_listener: Incomplete
97
+ _preview_callback: Incomplete
100
98
  def __init__(self, hass: HomeAssistant, source_entity_id: str, name: str, unique_id: str | None, state_characteristic: str, samples_max_buffer_size: int | None, samples_max_age: timedelta | None, samples_keep_last: bool, precision: int, percentile: int) -> None: ...
101
- def _async_stats_sensor_state_listener(self, event: Event[EventStateChangedData]) -> None: ...
102
- def _async_stats_sensor_startup(self, _: HomeAssistant) -> None: ...
99
+ async def async_start_preview(self, preview_callback: Callable[[str, Mapping[str, Any]], None]) -> CALLBACK_TYPE: ...
100
+ def _async_handle_new_state(self, reported_state: State | None) -> None: ...
101
+ def _async_stats_sensor_state_change_listener(self, event: Event[EventStateChangedData]) -> None: ...
102
+ def _async_stats_sensor_state_report_listener(self, event: Event[EventStateReportedData]) -> None: ...
103
+ async def _async_stats_sensor_startup(self) -> None: ...
103
104
  async def async_added_to_hass(self) -> None: ...
104
105
  def _add_state_to_queue(self, new_state: State) -> None: ...
105
- def _derive_unit_of_measurement(self, new_state: State) -> str | None: ...
106
- @property
107
- def device_class(self) -> SensorDeviceClass | None: ...
108
- @property
109
- def state_class(self) -> SensorStateClass | None: ...
110
- @property
111
- def native_value(self) -> StateType | datetime: ...
112
- @property
113
- def native_unit_of_measurement(self) -> str | None: ...
114
- @property
115
- def available(self) -> bool: ...
106
+ _attr_native_unit_of_measurement: Incomplete
107
+ _attr_device_class: Incomplete
108
+ _attr_state_class: Incomplete
109
+ def _calculate_state_attributes(self, new_state: State) -> None: ...
110
+ def _calculate_unit_of_measurement(self, new_state: State) -> str | None: ...
111
+ def _calculate_device_class(self, new_state: State, unit: str | None) -> SensorDeviceClass | None: ...
112
+ def _calculate_state_class(self, new_state: State) -> SensorStateClass | None: ...
116
113
  @property
117
114
  def extra_state_attributes(self) -> dict[str, StateType] | None: ...
118
115
  def _purge_old_states(self, max_age: timedelta) -> None: ...
@@ -124,8 +121,9 @@ class StatisticsSensor(SensorEntity):
124
121
  def _fetch_states_from_database(self) -> list[State]: ...
125
122
  async def _initialize_from_database(self) -> None: ...
126
123
  def _update_attributes(self) -> None: ...
124
+ _attr_native_value: Incomplete
127
125
  def _update_value(self) -> None: ...
128
- def _callable_characteristic_fn(self, characteristic: str) -> Callable[[], StateType | datetime]: ...
126
+ def _callable_characteristic_fn(self, characteristic: str) -> Callable[[], float | int | datetime | None]: ...
129
127
  def _stat_average_linear(self) -> StateType: ...
130
128
  def _stat_average_step(self) -> StateType: ...
131
129
  def _stat_average_timeless(self) -> StateType: ...
@@ -8,18 +8,20 @@ from homeassistant.const import CONF_DEVICE as CONF_DEVICE, CONF_HOST as CONF_HO
8
8
  from homeassistant.core import callback as callback
9
9
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
10
10
  from homeassistant.helpers.typing import DiscoveryInfoType as DiscoveryInfoType
11
- from typing import Any
11
+ from typing import Any, Self
12
12
 
13
13
  _LOGGER: Incomplete
14
14
 
15
15
  class SteamistConfigFlow(ConfigFlow, domain=DOMAIN):
16
16
  VERSION: int
17
+ host: str | None
17
18
  _discovered_devices: Incomplete
18
19
  _discovered_device: Incomplete
19
20
  def __init__(self) -> None: ...
20
21
  async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
21
22
  async def async_step_integration_discovery(self, discovery_info: DiscoveryInfoType) -> ConfigFlowResult: ...
22
23
  async def _async_handle_discovery(self) -> ConfigFlowResult: ...
24
+ def is_matching(self, other_flow: Self) -> bool: ...
23
25
  async def async_step_discovery_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
24
26
  def _async_create_entry_from_device(self, device: Device30303) -> ConfigFlowResult: ...
25
27
  async def async_step_pick_device(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -11,6 +11,7 @@ from homeassistant.helpers.entity import Entity as Entity
11
11
  from homeassistant.helpers.sun import get_astral_location as get_astral_location, get_location_astral_event_next as get_location_astral_event_next
12
12
  from typing import Any
13
13
 
14
+ type SunConfigEntry = ConfigEntry[Sun]
14
15
  _LOGGER: Incomplete
15
16
  ENTITY_ID: str
16
17
  STATE_ATTR_AZIMUTH: str
@@ -1,7 +1,7 @@
1
1
  from .const import DOMAIN as DOMAIN, SURE_API_TIMEOUT as SURE_API_TIMEOUT
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Mapping
4
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
4
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
5
5
  from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_TOKEN as CONF_TOKEN, CONF_USERNAME as CONF_USERNAME
6
6
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
7
7
  from typing import Any
@@ -11,7 +11,6 @@ USER_DATA_SCHEMA: Incomplete
11
11
 
12
12
  class SurePetCareConfigFlow(ConfigFlow, domain=DOMAIN):
13
13
  VERSION: int
14
- reauth_entry: ConfigEntry | None
15
14
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
16
15
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
17
16
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -1,7 +1,6 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from enum import StrEnum
4
- from functools import cached_property as cached_property
5
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
5
  from homeassistant.const import SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
7
6
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -44,7 +43,6 @@ CACHED_PROPERTIES_WITH_ATTR_: Incomplete
44
43
  class SwitchEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_):
45
44
  entity_description: SwitchEntityDescription
46
45
  _attr_device_class: SwitchDeviceClass | None
47
- @cached_property
48
46
  def device_class(self) -> SwitchDeviceClass | None: ...
49
47
 
50
48
  __getattr__: Incomplete
@@ -0,0 +1,3 @@
1
+ from .light import LightSwitch as LightSwitch
2
+
3
+ __all__ = ['LightSwitch']
@@ -0,0 +1,18 @@
1
+ from .const import CONF_INVERT as CONF_INVERT, CONF_TARGET_DOMAIN as CONF_TARGET_DOMAIN, DOMAIN as DOMAIN
2
+ from _typeshed import Incomplete
3
+ from collections.abc import Mapping
4
+ from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, Platform as Platform
5
+ from homeassistant.helpers import selector as selector
6
+ from homeassistant.helpers.schema_config_entry_flow import SchemaConfigFlowHandler as SchemaConfigFlowHandler, SchemaFlowFormStep as SchemaFlowFormStep, wrapped_entity_config_entry_title as wrapped_entity_config_entry_title
7
+ from typing import Any
8
+
9
+ TARGET_DOMAIN_OPTIONS: Incomplete
10
+ CONFIG_FLOW: Incomplete
11
+ OPTIONS_FLOW: Incomplete
12
+
13
+ class SwitchAsXConfigFlowHandler(SchemaConfigFlowHandler, domain=DOMAIN):
14
+ config_flow = CONFIG_FLOW
15
+ options_flow = OPTIONS_FLOW
16
+ VERSION: int
17
+ MINOR_VERSION: int
18
+ def async_config_entry_title(self, options: Mapping[str, Any]) -> str: ...
@@ -0,0 +1,5 @@
1
+ from typing import Final
2
+
3
+ DOMAIN: Final[str]
4
+ CONF_INVERT: Final[str]
5
+ CONF_TARGET_DOMAIN: Final[str]
@@ -0,0 +1,18 @@
1
+ from .const import CONF_INVERT as CONF_INVERT
2
+ from .entity import BaseInvertableEntity as BaseInvertableEntity
3
+ from _typeshed import Incomplete
4
+ from homeassistant.components.cover import CoverEntity as CoverEntity, CoverEntityFeature as CoverEntityFeature
5
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
+ from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, CONF_ENTITY_ID as CONF_ENTITY_ID, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
7
+ from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+ from typing import Any
10
+
11
+ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
12
+
13
+ class CoverSwitch(BaseInvertableEntity, CoverEntity):
14
+ _attr_supported_features: Incomplete
15
+ async def async_open_cover(self, **kwargs: Any) -> None: ...
16
+ async def async_close_cover(self, **kwargs: Any) -> None: ...
17
+ _attr_is_closed: Incomplete
18
+ def async_state_changed_listener(self, event: Event[EventStateChangedData] | None = None) -> None: ...
@@ -0,0 +1,35 @@
1
+ from _typeshed import Incomplete
2
+ from homeassistant.components.homeassistant import exposed_entities as exposed_entities
3
+ from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON, STATE_UNAVAILABLE as STATE_UNAVAILABLE
4
+ from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
5
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
6
+ from homeassistant.helpers.entity import Entity as Entity, ToggleEntity as ToggleEntity
7
+ from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event
8
+ from typing import Any
9
+
10
+ class BaseEntity(Entity):
11
+ _attr_should_poll: bool
12
+ _is_new_entity: bool
13
+ _device_id: Incomplete
14
+ _attr_device_info: Incomplete
15
+ _attr_entity_category: Incomplete
16
+ _attr_has_entity_name: Incomplete
17
+ _attr_name: Incomplete
18
+ _attr_unique_id: Incomplete
19
+ _switch_entity_id: Incomplete
20
+ def __init__(self, hass: HomeAssistant, config_entry_title: str, domain: str, switch_entity_id: str, unique_id: str) -> None: ...
21
+ _attr_available: bool
22
+ def async_state_changed_listener(self, event: Event[EventStateChangedData] | None = None) -> None: ...
23
+ async def async_added_to_hass(self) -> None: ...
24
+ def async_generate_entity_options(self) -> dict[str, Any]: ...
25
+
26
+ class BaseToggleEntity(BaseEntity, ToggleEntity):
27
+ async def async_turn_on(self, **kwargs: Any) -> None: ...
28
+ async def async_turn_off(self, **kwargs: Any) -> None: ...
29
+ _attr_is_on: Incomplete
30
+ def async_state_changed_listener(self, event: Event[EventStateChangedData] | None = None) -> None: ...
31
+
32
+ class BaseInvertableEntity(BaseEntity):
33
+ _invert_state: Incomplete
34
+ def __init__(self, hass: HomeAssistant, config_entry_title: str, domain: str, invert: bool, switch_entity_id: str, unique_id: str) -> None: ...
35
+ def async_generate_entity_options(self) -> dict[str, Any]: ...
@@ -0,0 +1,17 @@
1
+ from .entity import BaseToggleEntity as BaseToggleEntity
2
+ from _typeshed import Incomplete
3
+ from homeassistant.components.fan import FanEntity as FanEntity, FanEntityFeature as FanEntityFeature
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
+ from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID
6
+ from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
+ from typing import Any
9
+
10
+ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
11
+
12
+ class FanSwitch(BaseToggleEntity, FanEntity):
13
+ _attr_supported_features: Incomplete
14
+ _enable_turn_on_off_backwards_compatibility: bool
15
+ @property
16
+ def is_on(self) -> bool | None: ...
17
+ async def async_turn_on(self, percentage: int | None = None, preset_mode: str | None = None, **kwargs: Any) -> None: ...
@@ -0,0 +1,13 @@
1
+ from .entity import BaseToggleEntity as BaseToggleEntity
2
+ from _typeshed import Incomplete
3
+ from homeassistant.components.light import ColorMode as ColorMode, LightEntity as LightEntity
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
+ from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID
6
+ from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
+
9
+ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
10
+
11
+ class LightSwitch(BaseToggleEntity, LightEntity):
12
+ _attr_color_mode: Incomplete
13
+ _attr_supported_color_modes: Incomplete
@@ -0,0 +1,17 @@
1
+ from .const import CONF_INVERT as CONF_INVERT
2
+ from .entity import BaseInvertableEntity as BaseInvertableEntity
3
+ from _typeshed import Incomplete
4
+ from homeassistant.components.lock import LockEntity as LockEntity
5
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
+ from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, CONF_ENTITY_ID as CONF_ENTITY_ID, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
7
+ from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+ from typing import Any
10
+
11
+ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
12
+
13
+ class LockSwitch(BaseInvertableEntity, LockEntity):
14
+ async def async_lock(self, **kwargs: Any) -> None: ...
15
+ async def async_unlock(self, **kwargs: Any) -> None: ...
16
+ _attr_is_locked: Incomplete
17
+ def async_state_changed_listener(self, event: Event[EventStateChangedData] | None = None) -> None: ...
@@ -0,0 +1,12 @@
1
+ from .entity import BaseToggleEntity as BaseToggleEntity
2
+ from _typeshed import Incomplete
3
+ from homeassistant.components.siren import SirenEntity as SirenEntity, SirenEntityFeature as SirenEntityFeature
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
+ from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID
6
+ from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
+
9
+ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
10
+
11
+ class SirenSwitch(BaseToggleEntity, SirenEntity):
12
+ _attr_supported_features: Incomplete
@@ -0,0 +1,19 @@
1
+ from .const import CONF_INVERT as CONF_INVERT
2
+ from .entity import BaseInvertableEntity as BaseInvertableEntity
3
+ from _typeshed import Incomplete
4
+ from homeassistant.components.valve import ValveEntity as ValveEntity, ValveEntityFeature as ValveEntityFeature
5
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
+ from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, CONF_ENTITY_ID as CONF_ENTITY_ID, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
7
+ from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+ from typing import Any
10
+
11
+ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
12
+
13
+ class ValveSwitch(BaseInvertableEntity, ValveEntity):
14
+ _attr_supported_features: Incomplete
15
+ _attr_reports_position: bool
16
+ async def async_open_valve(self, **kwargs: Any) -> None: ...
17
+ async def async_close_valve(self, **kwargs: Any) -> None: ...
18
+ _attr_is_closed: Incomplete
19
+ def async_state_changed_listener(self, event: Event[EventStateChangedData] | None = None) -> None: ...
@@ -7,14 +7,14 @@ from switchbee.device import SwitchBeeBaseDevice as SwitchBeeBaseDevice
7
7
 
8
8
  _LOGGER: Incomplete
9
9
 
10
- class SwitchBeeEntity(CoordinatorEntity[SwitchBeeCoordinator]):
10
+ class SwitchBeeEntity[_DeviceTypeT: SwitchBeeBaseDevice](CoordinatorEntity[SwitchBeeCoordinator]):
11
11
  _attr_has_entity_name: bool
12
12
  _device: Incomplete
13
13
  _attr_name: Incomplete
14
14
  _attr_unique_id: Incomplete
15
15
  def __init__(self, device: _DeviceTypeT, coordinator: SwitchBeeCoordinator) -> None: ...
16
16
 
17
- class SwitchBeeDeviceEntity(SwitchBeeEntity[_DeviceTypeT]):
17
+ class SwitchBeeDeviceEntity[_DeviceTypeT: SwitchBeeBaseDevice](SwitchBeeEntity[_DeviceTypeT]):
18
18
  _is_online: bool
19
19
  _attr_device_info: Incomplete
20
20
  def __init__(self, device: _DeviceTypeT, coordinator: SwitchBeeCoordinator) -> None: ...
@@ -6,11 +6,12 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
7
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
8
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+ from switchbee.device import SwitchBeeGroupSwitch, SwitchBeeSwitch, SwitchBeeTimedSwitch, SwitchBeeTimerSwitch
9
10
  from typing import Any
10
11
 
11
12
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
12
13
 
13
- class SwitchBeeSwitchEntity(SwitchBeeDeviceEntity[_DeviceTypeT], SwitchEntity):
14
+ class SwitchBeeSwitchEntity[_DeviceTypeT: SwitchBeeTimedSwitch | SwitchBeeGroupSwitch | SwitchBeeSwitch | SwitchBeeTimerSwitch](SwitchBeeDeviceEntity[_DeviceTypeT], SwitchEntity):
14
15
  _attr_is_on: bool
15
16
  def __init__(self, device: _DeviceTypeT, coordinator: SwitchBeeCoordinator) -> None: ...
16
17
  def _handle_coordinator_update(self) -> None: ...
@@ -17,7 +17,8 @@ class SwitchbotDevices:
17
17
  switches: list[Device | Remote] = ...
18
18
  sensors: list[Device] = ...
19
19
  vacuums: list[Device] = ...
20
- def __init__(self, climates=..., switches=..., sensors=..., vacuums=...) -> None: ...
20
+ locks: list[Device] = ...
21
+ def __init__(self, climates=..., switches=..., sensors=..., vacuums=..., locks=...) -> None: ...
21
22
 
22
23
  @dataclass
23
24
  class SwitchbotCloudData:
@@ -3,8 +3,10 @@ from _typeshed import Incomplete
3
3
  from homeassistant.core import HomeAssistant as HomeAssistant
4
4
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
5
5
  from switchbot_api import Device as Device, Remote, SwitchBotAPI as SwitchBotAPI
6
+ from typing import Any
6
7
 
7
8
  _LOGGER: Incomplete
9
+ type Status = dict[str, Any] | None
8
10
 
9
11
  class SwitchBotCoordinator(DataUpdateCoordinator[Status]):
10
12
  _api: SwitchBotAPI
@@ -0,0 +1,18 @@
1
+ from . import SwitchbotCloudData as SwitchbotCloudData
2
+ from .const import DOMAIN as DOMAIN
3
+ from .entity import SwitchBotCloudEntity as SwitchBotCloudEntity
4
+ from _typeshed import Incomplete
5
+ from homeassistant.components.lock import LockEntity as LockEntity
6
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+ from typing import Any
10
+
11
+ async def async_setup_entry(hass: HomeAssistant, config: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
12
+
13
+ class SwitchBotCloudLock(SwitchBotCloudEntity, LockEntity):
14
+ _attr_name: Incomplete
15
+ _attr_is_locked: Incomplete
16
+ def _handle_coordinator_update(self) -> None: ...
17
+ async def async_lock(self, **kwargs: Any) -> None: ...
18
+ async def async_unlock(self, **kwargs: Any) -> None: ...
@@ -9,6 +9,7 @@ from homeassistant.helpers import device_registry as dr
9
9
 
10
10
  PLATFORMS: Incomplete
11
11
  _LOGGER: Incomplete
12
+ type SwitcherConfigEntry = ConfigEntry[dict[str, SwitcherDataUpdateCoordinator]]
12
13
 
13
14
  async def async_setup_entry(hass: HomeAssistant, entry: SwitcherConfigEntry) -> bool: ...
14
15
  async def async_unload_entry(hass: HomeAssistant, entry: SwitcherConfigEntry) -> bool: ...
@@ -1,6 +1,7 @@
1
1
  from . import SwitcherConfigEntry as SwitcherConfigEntry
2
2
  from .const import SIGNAL_DEVICE_ADD as SIGNAL_DEVICE_ADD
3
3
  from .coordinator import SwitcherDataUpdateCoordinator as SwitcherDataUpdateCoordinator
4
+ from .entity import SwitcherEntity as SwitcherEntity
4
5
  from .utils import get_breeze_remote_manager as get_breeze_remote_manager
5
6
  from _typeshed import Incomplete
6
7
  from aioswitcher.api import SwitcherApi as SwitcherApi, SwitcherBaseResponse as SwitcherBaseResponse
@@ -11,10 +12,8 @@ from homeassistant.components.button import ButtonEntity as ButtonEntity, Button
11
12
  from homeassistant.const import EntityCategory as EntityCategory
12
13
  from homeassistant.core import HomeAssistant as HomeAssistant
13
14
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
14
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
15
15
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
16
16
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
17
- from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
18
17
  from typing import Any
19
18
 
20
19
  @dataclass(frozen=True, kw_only=True)
@@ -27,11 +26,9 @@ THERMOSTAT_BUTTONS: Incomplete
27
26
 
28
27
  async def async_setup_entry(hass: HomeAssistant, config_entry: SwitcherConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
29
28
 
30
- class SwitcherThermostatButtonEntity(CoordinatorEntity[SwitcherDataUpdateCoordinator], ButtonEntity):
29
+ class SwitcherThermostatButtonEntity(SwitcherEntity, ButtonEntity):
31
30
  entity_description: SwitcherThermostatButtonEntityDescription
32
- _attr_has_entity_name: bool
33
31
  _remote: Incomplete
34
32
  _attr_unique_id: Incomplete
35
- _attr_device_info: Incomplete
36
33
  def __init__(self, coordinator: SwitcherDataUpdateCoordinator, description: SwitcherThermostatButtonEntityDescription, remote: SwitcherBreezeRemote) -> None: ...
37
34
  async def async_press(self) -> None: ...
@@ -1,6 +1,7 @@
1
1
  from . import SwitcherConfigEntry as SwitcherConfigEntry
2
2
  from .const import SIGNAL_DEVICE_ADD as SIGNAL_DEVICE_ADD
3
3
  from .coordinator import SwitcherDataUpdateCoordinator as SwitcherDataUpdateCoordinator
4
+ from .entity import SwitcherEntity as SwitcherEntity
4
5
  from .utils import get_breeze_remote_manager as get_breeze_remote_manager
5
6
  from _typeshed import Incomplete
6
7
  from aioswitcher.api import SwitcherBaseResponse as SwitcherBaseResponse
@@ -9,10 +10,8 @@ from homeassistant.components.climate import ClimateEntity as ClimateEntity, Cli
9
10
  from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, UnitOfTemperature as UnitOfTemperature
10
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
11
12
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
12
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
13
13
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
14
14
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
15
- from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
16
15
  from typing import Any
17
16
 
18
17
  DEVICE_MODE_TO_HA: Incomplete
@@ -22,13 +21,11 @@ HA_TO_DEVICE_FAN: Incomplete
22
21
 
23
22
  async def async_setup_entry(hass: HomeAssistant, config_entry: SwitcherConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
24
23
 
25
- class SwitcherClimateEntity(CoordinatorEntity[SwitcherDataUpdateCoordinator], ClimateEntity):
26
- _attr_has_entity_name: bool
24
+ class SwitcherClimateEntity(SwitcherEntity, ClimateEntity):
27
25
  _attr_name: Incomplete
28
26
  _enable_turn_on_off_backwards_compatibility: bool
29
27
  _remote: Incomplete
30
28
  _attr_unique_id: Incomplete
31
- _attr_device_info: Incomplete
32
29
  _attr_min_temp: Incomplete
33
30
  _attr_max_temp: Incomplete
34
31
  _attr_target_temperature_step: int
@@ -3,7 +3,7 @@ from .utils import async_discover_devices as async_discover_devices
3
3
  from _typeshed import Incomplete
4
4
  from aioswitcher.bridge import SwitcherBase as SwitcherBase
5
5
  from collections.abc import Mapping
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
6
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
7
7
  from homeassistant.const import CONF_TOKEN as CONF_TOKEN, CONF_USERNAME as CONF_USERNAME
8
8
  from typing import Any, Final
9
9
 
@@ -12,7 +12,6 @@ CONFIG_SCHEMA: Final[Incomplete]
12
12
 
13
13
  class SwitcherFlowHandler(ConfigFlow, domain=DOMAIN):
14
14
  VERSION: int
15
- entry: ConfigEntry | None
16
15
  username: str | None
17
16
  token: str | None
18
17
  discovered_devices: dict[str, SwitcherBase]