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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (852) 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 -2
  113. homeassistant-stubs/components/bang_olufsen/media_player.pyi +14 -6
  114. homeassistant-stubs/components/bang_olufsen/websocket.pyi +1 -0
  115. homeassistant-stubs/components/binary_sensor/__init__.pyi +0 -3
  116. homeassistant-stubs/components/blue_current/__init__.pyi +4 -3
  117. homeassistant-stubs/components/blue_current/config_flow.pyi +1 -2
  118. homeassistant-stubs/components/blue_current/sensor.pyi +2 -3
  119. homeassistant-stubs/components/blueprint/__init__.pyi +2 -2
  120. homeassistant-stubs/components/bluesound/__init__.pyi +2 -1
  121. homeassistant-stubs/components/bluesound/const.pyi +0 -4
  122. homeassistant-stubs/components/bluesound/media_player.pyi +6 -14
  123. homeassistant-stubs/components/bluesound/services.pyi +21 -0
  124. homeassistant-stubs/components/bluetooth/active_update_coordinator.pyi +1 -1
  125. homeassistant-stubs/components/bluetooth/active_update_processor.pyi +1 -1
  126. homeassistant-stubs/components/bluetooth/match.pyi +1 -1
  127. homeassistant-stubs/components/bluetooth/models.pyi +4 -0
  128. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +4 -4
  129. homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +1 -0
  130. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +4 -2
  131. homeassistant-stubs/components/bond/__init__.pyi +1 -0
  132. homeassistant-stubs/components/braviatv/config_flow.pyi +1 -2
  133. homeassistant-stubs/components/braviatv/coordinator.pyi +1 -1
  134. homeassistant-stubs/components/brother/__init__.pyi +1 -0
  135. homeassistant-stubs/components/brother/config_flow.pyi +2 -4
  136. homeassistant-stubs/components/bryant_evolution/__init__.pyi +2 -0
  137. homeassistant-stubs/components/bryant_evolution/config_flow.pyi +1 -4
  138. homeassistant-stubs/components/bthome/config_flow.pyi +1 -1
  139. homeassistant-stubs/components/bthome/coordinator.pyi +1 -1
  140. homeassistant-stubs/components/bthome/types.pyi +2 -0
  141. homeassistant-stubs/components/button/__init__.pyi +0 -3
  142. homeassistant-stubs/components/calendar/trigger.pyi +3 -1
  143. homeassistant-stubs/components/cambridge_audio/__init__.pyi +14 -0
  144. homeassistant-stubs/components/cambridge_audio/config_flow.pyi +14 -0
  145. homeassistant-stubs/components/cambridge_audio/const.pyi +9 -0
  146. homeassistant-stubs/components/cambridge_audio/diagnostics.pyi +5 -0
  147. homeassistant-stubs/components/cambridge_audio/entity.pyi +21 -0
  148. homeassistant-stubs/components/cambridge_audio/media_player.pyi +71 -0
  149. homeassistant-stubs/components/cambridge_audio/select.pyi +34 -0
  150. homeassistant-stubs/components/cambridge_audio/switch.pyi +30 -0
  151. homeassistant-stubs/components/camera/__init__.pyi +39 -22
  152. homeassistant-stubs/components/camera/const.pyi +1 -2
  153. homeassistant-stubs/components/camera/diagnostics.pyi +1 -1
  154. homeassistant-stubs/components/camera/helper.pyi +6 -0
  155. homeassistant-stubs/components/camera/webrtc.pyi +96 -0
  156. homeassistant-stubs/components/canary/alarm_control_panel.pyi +2 -3
  157. homeassistant-stubs/components/canary/sensor.pyi +1 -0
  158. homeassistant-stubs/components/cert_expiry/__init__.pyi +1 -0
  159. homeassistant-stubs/components/climate/__init__.pyi +0 -24
  160. homeassistant-stubs/components/cloud/client.pyi +5 -1
  161. homeassistant-stubs/components/cloud/const.pyi +1 -0
  162. homeassistant-stubs/components/cloud/http_api.pyi +2 -2
  163. homeassistant-stubs/components/cloud/prefs.pyi +4 -2
  164. homeassistant-stubs/components/co2signal/__init__.pyi +1 -0
  165. homeassistant-stubs/components/co2signal/config_flow.pyi +1 -2
  166. homeassistant-stubs/components/config/automation.pyi +1 -1
  167. homeassistant-stubs/components/config/script.pyi +1 -1
  168. homeassistant-stubs/components/config/view.pyi +2 -2
  169. homeassistant-stubs/components/configurator/__init__.pyi +2 -0
  170. homeassistant-stubs/components/counter/__init__.pyi +1 -1
  171. homeassistant-stubs/components/cover/__init__.pyi +12 -8
  172. homeassistant-stubs/components/cover/device_condition.pyi +2 -2
  173. homeassistant-stubs/components/cover/device_trigger.pyi +2 -2
  174. homeassistant-stubs/components/cover/reproduce_state.pyi +2 -2
  175. homeassistant-stubs/components/date/__init__.pyi +0 -4
  176. homeassistant-stubs/components/datetime/__init__.pyi +0 -4
  177. homeassistant-stubs/components/deako/__init__.pyi +2 -0
  178. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +2 -3
  179. homeassistant-stubs/components/deconz/binary_sensor.pyi +10 -1
  180. homeassistant-stubs/components/deconz/config_flow.pyi +1 -1
  181. homeassistant-stubs/components/deconz/device_trigger.pyi +4 -0
  182. homeassistant-stubs/components/deconz/entity.pyi +6 -2
  183. homeassistant-stubs/components/deconz/light.pyi +1 -1
  184. homeassistant-stubs/components/deconz/number.pyi +3 -1
  185. homeassistant-stubs/components/demo/alarm_control_panel.pyi +2 -1
  186. homeassistant-stubs/components/demo/update.pyi +5 -2
  187. homeassistant-stubs/components/derivative/sensor.pyi +1 -4
  188. homeassistant-stubs/components/device_automation/__init__.pyi +2 -0
  189. homeassistant-stubs/components/device_tracker/config_entry.pyi +0 -10
  190. homeassistant-stubs/components/device_tracker/legacy.pyi +0 -2
  191. homeassistant-stubs/components/devolo_home_control/__init__.pyi +2 -0
  192. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +2 -2
  193. homeassistant-stubs/components/devolo_home_network/__init__.pyi +4 -2
  194. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +2 -2
  195. homeassistant-stubs/components/devolo_home_network/config_flow.pyi +4 -1
  196. homeassistant-stubs/components/devolo_home_network/coordinator.pyi +13 -0
  197. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +4 -3
  198. homeassistant-stubs/components/devolo_home_network/entity.pyi +7 -3
  199. homeassistant-stubs/components/devolo_home_network/image.pyi +2 -2
  200. homeassistant-stubs/components/devolo_home_network/sensor.pyi +9 -10
  201. homeassistant-stubs/components/devolo_home_network/switch.pyi +6 -6
  202. homeassistant-stubs/components/devolo_home_network/update.pyi +3 -3
  203. homeassistant-stubs/components/diagnostics/util.pyi +1 -1
  204. homeassistant-stubs/components/discovergy/__init__.pyi +1 -0
  205. homeassistant-stubs/components/discovergy/config_flow.pyi +2 -2
  206. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -0
  207. homeassistant-stubs/components/dlna_dmr/media_player.pyi +1 -1
  208. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -3
  209. homeassistant-stubs/components/doorbird/config_flow.pyi +1 -1
  210. homeassistant-stubs/components/doorbird/device.pyi +0 -6
  211. homeassistant-stubs/components/doorbird/models.pyi +1 -0
  212. homeassistant-stubs/components/dormakaba_dkey/config_flow.pyi +1 -2
  213. homeassistant-stubs/components/dsmr/__init__.pyi +1 -0
  214. homeassistant-stubs/components/duotecno/entity.pyi +1 -1
  215. homeassistant-stubs/components/ecovacs/__init__.pyi +1 -0
  216. homeassistant-stubs/components/ecowitt/__init__.pyi +2 -0
  217. homeassistant-stubs/components/efergy/__init__.pyi +2 -0
  218. homeassistant-stubs/components/electric_kiwi/config_flow.pyi +1 -4
  219. homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
  220. homeassistant-stubs/components/elgato/__init__.pyi +1 -0
  221. homeassistant-stubs/components/elkm1/__init__.pyi +1 -0
  222. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -3
  223. homeassistant-stubs/components/elkm1/config_flow.pyi +3 -1
  224. homeassistant-stubs/components/energy/data.pyi +1 -0
  225. homeassistant-stubs/components/energy/types.pyi +2 -0
  226. homeassistant-stubs/components/energy/websocket_api.pyi +3 -0
  227. homeassistant-stubs/components/enigma2/__init__.pyi +1 -0
  228. homeassistant-stubs/components/enigma2/config_flow.pyi +0 -2
  229. homeassistant-stubs/components/enigma2/media_player.pyi +1 -6
  230. homeassistant-stubs/components/enphase_envoy/__init__.pyi +3 -1
  231. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +4 -6
  232. homeassistant-stubs/components/enphase_envoy/const.pyi +2 -0
  233. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +1 -0
  234. homeassistant-stubs/components/esphome/alarm_control_panel.pyi +5 -6
  235. homeassistant-stubs/components/esphome/assist_satellite.pyi +1 -1
  236. homeassistant-stubs/components/esphome/config_flow.pyi +6 -5
  237. homeassistant-stubs/components/esphome/entity.pyi +3 -3
  238. homeassistant-stubs/components/esphome/entry_data.pyi +1 -0
  239. homeassistant-stubs/components/esphome/enum_mapper.pyi +1 -1
  240. homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +7 -3
  241. homeassistant-stubs/components/esphome/update.pyi +3 -1
  242. homeassistant-stubs/components/event/__init__.pyi +0 -3
  243. homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
  244. homeassistant-stubs/components/evohome/climate.pyi +2 -3
  245. homeassistant-stubs/components/evohome/entity.pyi +1 -1
  246. homeassistant-stubs/components/fan/__init__.pyi +0 -8
  247. homeassistant-stubs/components/fastdotcom/__init__.pyi +1 -1
  248. homeassistant-stubs/components/feedreader/__init__.pyi +1 -0
  249. homeassistant-stubs/components/feedreader/config_flow.pyi +1 -3
  250. homeassistant-stubs/components/feedreader/event.pyi +1 -0
  251. homeassistant-stubs/components/filesize/__init__.pyi +1 -0
  252. homeassistant-stubs/components/fitbit/api.pyi +1 -1
  253. homeassistant-stubs/components/fitbit/config_flow.pyi +1 -2
  254. homeassistant-stubs/components/flexit_bacnet/sensor.pyi +2 -1
  255. homeassistant-stubs/components/flux_led/config_flow.pyi +3 -1
  256. homeassistant-stubs/components/forecast_solar/__init__.pyi +1 -0
  257. homeassistant-stubs/components/fritz/config_flow.pyi +5 -5
  258. homeassistant-stubs/components/fritz/update.pyi +1 -1
  259. homeassistant-stubs/components/fritzbox/climate.pyi +1 -0
  260. homeassistant-stubs/components/fritzbox/config_flow.pyi +5 -6
  261. homeassistant-stubs/components/fritzbox/coordinator.pyi +1 -0
  262. homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +2 -1
  263. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +5 -0
  264. homeassistant-stubs/components/fronius/__init__.pyi +2 -1
  265. homeassistant-stubs/components/fronius/config_flow.pyi +1 -2
  266. homeassistant-stubs/components/fronius/const.pyi +1 -0
  267. homeassistant-stubs/components/fronius/coordinator.pyi +1 -1
  268. homeassistant-stubs/components/frontend/__init__.pyi +0 -3
  269. homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +1 -0
  270. homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +1 -2
  271. homeassistant-stubs/components/fully_kiosk/config_flow.pyi +1 -0
  272. homeassistant-stubs/components/fyta/__init__.pyi +1 -0
  273. homeassistant-stubs/components/fyta/config_flow.pyi +0 -2
  274. homeassistant-stubs/components/fyta/coordinator.pyi +6 -1
  275. homeassistant-stubs/components/geo_location/__init__.pyi +0 -5
  276. homeassistant-stubs/components/gios/__init__.pyi +1 -0
  277. homeassistant-stubs/components/glances/__init__.pyi +1 -0
  278. homeassistant-stubs/components/glances/config_flow.pyi +1 -2
  279. homeassistant-stubs/components/go2rtc/__init__.pyi +41 -0
  280. homeassistant-stubs/components/go2rtc/config_flow.pyi +7 -0
  281. homeassistant-stubs/components/go2rtc/const.pyi +7 -0
  282. homeassistant-stubs/components/go2rtc/server.pyi +44 -0
  283. homeassistant-stubs/components/goalzero/config_flow.pyi +1 -2
  284. homeassistant-stubs/components/goalzero/coordinator.pyi +1 -0
  285. homeassistant-stubs/components/google/__init__.pyi +1 -1
  286. homeassistant-stubs/components/google/api.pyi +2 -2
  287. homeassistant-stubs/components/google/calendar.pyi +6 -5
  288. homeassistant-stubs/components/google/config_flow.pyi +2 -3
  289. homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +1 -2
  290. homeassistant-stubs/components/google_photos/config_flow.pyi +2 -3
  291. homeassistant-stubs/components/google_photos/types.pyi +2 -0
  292. homeassistant-stubs/components/google_sheets/__init__.pyi +1 -0
  293. homeassistant-stubs/components/google_sheets/config_flow.pyi +1 -3
  294. homeassistant-stubs/components/govee_ble/__init__.pyi +11 -0
  295. homeassistant-stubs/components/govee_ble/binary_sensor.pyi +22 -0
  296. homeassistant-stubs/components/govee_ble/config_flow.pyi +16 -0
  297. homeassistant-stubs/components/govee_ble/const.pyi +2 -0
  298. homeassistant-stubs/components/govee_ble/coordinator.pyi +24 -0
  299. homeassistant-stubs/components/govee_ble/device.pyi +4 -0
  300. homeassistant-stubs/components/govee_ble/event.pyi +27 -0
  301. homeassistant-stubs/components/govee_ble/sensor.pyi +25 -0
  302. homeassistant-stubs/components/gpsd/__init__.pyi +2 -0
  303. homeassistant-stubs/components/greeneye_monitor/sensor.pyi +1 -0
  304. homeassistant-stubs/components/group/cover.pyi +2 -2
  305. homeassistant-stubs/components/group/registry.pyi +2 -1
  306. homeassistant-stubs/components/group/sensor.pyi +10 -11
  307. homeassistant-stubs/components/guardian/config_flow.pyi +0 -1
  308. homeassistant-stubs/components/guardian/util.pyi +1 -1
  309. homeassistant-stubs/components/hardkernel/__init__.pyi +2 -1
  310. homeassistant-stubs/components/here_travel_time/config_flow.pyi +4 -5
  311. homeassistant-stubs/components/history_stats/__init__.pyi +1 -0
  312. homeassistant-stubs/components/history_stats/coordinator.pyi +2 -1
  313. homeassistant-stubs/components/history_stats/sensor.pyi +2 -1
  314. homeassistant-stubs/components/holiday/config_flow.pyi +1 -3
  315. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -0
  316. homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +2 -1
  317. homeassistant-stubs/components/homeassistant/triggers/time.pyi +7 -1
  318. homeassistant-stubs/components/homeassistant_alerts/coordinator.pyi +2 -1
  319. homeassistant-stubs/components/homeassistant_green/__init__.pyi +2 -1
  320. homeassistant-stubs/components/homeassistant_green/config_flow.pyi +2 -1
  321. homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +2 -1
  322. homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +2 -1
  323. homeassistant-stubs/components/homeassistant_hardware/util.pyi +2 -1
  324. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +3 -3
  325. homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +2 -1
  326. homeassistant-stubs/components/homekit/__init__.pyi +0 -1
  327. homeassistant-stubs/components/homekit/models.pyi +1 -0
  328. homeassistant-stubs/components/homekit/type_covers.pyi +2 -2
  329. homeassistant-stubs/components/homekit/type_security_systems.pyi +2 -2
  330. homeassistant-stubs/components/homekit_controller/alarm_control_panel.pyi +4 -4
  331. homeassistant-stubs/components/homekit_controller/config_flow.pyi +4 -1
  332. homeassistant-stubs/components/homekit_controller/utils.pyi +1 -0
  333. homeassistant-stubs/components/homewizard/__init__.pyi +1 -0
  334. homeassistant-stubs/components/homewizard/config_flow.pyi +1 -2
  335. homeassistant-stubs/components/homewizard/helpers.pyi +1 -1
  336. homeassistant-stubs/components/homewizard/sensor.pyi +1 -1
  337. homeassistant-stubs/components/homeworks/config_flow.pyi +2 -5
  338. homeassistant-stubs/components/http/ban.pyi +2 -1
  339. homeassistant-stubs/components/http/data_validator.pyi +1 -1
  340. homeassistant-stubs/components/http/decorators.pyi +7 -4
  341. homeassistant-stubs/components/huawei_lte/config_flow.pyi +2 -0
  342. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +1 -0
  343. homeassistant-stubs/components/humidifier/__init__.pyi +0 -10
  344. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
  345. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +1 -1
  346. homeassistant-stubs/components/husqvarna_automower/button.pyi +1 -3
  347. homeassistant-stubs/components/husqvarna_automower/config_flow.pyi +2 -3
  348. homeassistant-stubs/components/husqvarna_automower/entity.pyi +5 -4
  349. homeassistant-stubs/components/husqvarna_automower/number.pyi +8 -8
  350. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +24 -3
  351. homeassistant-stubs/components/husqvarna_automower/switch.pyi +2 -5
  352. homeassistant-stubs/components/hydrawise/config_flow.pyi +1 -4
  353. homeassistant-stubs/components/hyperion/config_flow.pyi +1 -0
  354. homeassistant-stubs/components/ibeacon/__init__.pyi +1 -0
  355. homeassistant-stubs/components/image/__init__.pyi +7 -6
  356. homeassistant-stubs/components/imap/__init__.pyi +1 -0
  357. homeassistant-stubs/components/imap/config_flow.pyi +1 -2
  358. homeassistant-stubs/components/imgw_pib/__init__.pyi +1 -0
  359. homeassistant-stubs/components/intent/__init__.pyi +5 -0
  360. homeassistant-stubs/components/intent/timers.pyi +1 -2
  361. homeassistant-stubs/components/iotty/__init__.pyi +1 -0
  362. homeassistant-stubs/components/iotty/coordinator.pyi +1 -1
  363. homeassistant-stubs/components/ipp/__init__.pyi +1 -0
  364. homeassistant-stubs/components/islamic_prayer_times/__init__.pyi +1 -0
  365. homeassistant-stubs/components/jellyfin/__init__.pyi +2 -2
  366. homeassistant-stubs/components/jellyfin/config_flow.pyi +0 -1
  367. homeassistant-stubs/components/jellyfin/coordinator.pyi +8 -15
  368. homeassistant-stubs/components/jellyfin/entity.pyi +22 -7
  369. homeassistant-stubs/components/jellyfin/media_player.pyi +6 -18
  370. homeassistant-stubs/components/jellyfin/remote.pyi +19 -0
  371. homeassistant-stubs/components/jellyfin/sensor.pyi +10 -8
  372. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +1 -0
  373. homeassistant-stubs/components/jvc_projector/__init__.pyi +1 -0
  374. homeassistant-stubs/components/jvc_projector/config_flow.pyi +1 -2
  375. homeassistant-stubs/components/knocki/__init__.pyi +1 -0
  376. homeassistant-stubs/components/knx/__init__.pyi +0 -1
  377. homeassistant-stubs/components/knx/climate.pyi +2 -0
  378. homeassistant-stubs/components/knx/const.pyi +4 -0
  379. homeassistant-stubs/components/knx/notify.pyi +3 -15
  380. homeassistant-stubs/components/knx/schema.pyi +1 -0
  381. homeassistant-stubs/components/knx/storage/config_store.pyi +2 -2
  382. homeassistant-stubs/components/knx/websocket.pyi +4 -1
  383. homeassistant-stubs/components/kraken/const.pyi +1 -0
  384. homeassistant-stubs/components/lacrosse_view/config_flow.pyi +1 -2
  385. homeassistant-stubs/components/lamarzocco/__init__.pyi +1 -1
  386. homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +1 -1
  387. homeassistant-stubs/components/lamarzocco/button.pyi +3 -1
  388. homeassistant-stubs/components/lamarzocco/calendar.pyi +1 -2
  389. homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -5
  390. homeassistant-stubs/components/lamarzocco/coordinator.pyi +5 -4
  391. homeassistant-stubs/components/lamarzocco/diagnostics.pyi +1 -1
  392. homeassistant-stubs/components/lamarzocco/number.pyi +3 -2
  393. homeassistant-stubs/components/lamarzocco/select.pyi +5 -1
  394. homeassistant-stubs/components/lamarzocco/sensor.pyi +1 -1
  395. homeassistant-stubs/components/lamarzocco/switch.pyi +3 -2
  396. homeassistant-stubs/components/lamarzocco/update.pyi +3 -2
  397. homeassistant-stubs/components/lametric/config_flow.pyi +1 -2
  398. homeassistant-stubs/components/lametric/helpers.pyi +1 -1
  399. homeassistant-stubs/components/lawn_mower/__init__.pyi +0 -3
  400. homeassistant-stubs/components/lcn/__init__.pyi +2 -2
  401. homeassistant-stubs/components/lcn/binary_sensor.pyi +3 -0
  402. homeassistant-stubs/components/lcn/config_flow.pyi +2 -5
  403. homeassistant-stubs/components/lcn/const.pyi +1 -0
  404. homeassistant-stubs/components/lcn/helpers.pyi +4 -0
  405. homeassistant-stubs/components/lcn/sensor.pyi +4 -1
  406. homeassistant-stubs/components/lcn/switch.pyi +24 -1
  407. homeassistant-stubs/components/lcn/websocket.pyi +3 -1
  408. homeassistant-stubs/components/lektrico/__init__.pyi +1 -0
  409. homeassistant-stubs/components/lektrico/switch.pyi +31 -0
  410. homeassistant-stubs/components/lidarr/__init__.pyi +4 -2
  411. homeassistant-stubs/components/lidarr/config_flow.pyi +1 -5
  412. homeassistant-stubs/components/lidarr/coordinator.pyi +4 -1
  413. homeassistant-stubs/components/lifx/config_flow.pyi +3 -1
  414. homeassistant-stubs/components/lifx/coordinator.pyi +0 -6
  415. homeassistant-stubs/components/light/__init__.pyi +0 -15
  416. homeassistant-stubs/components/linear_garage_door/config_flow.pyi +1 -2
  417. homeassistant-stubs/components/linear_garage_door/coordinator.pyi +1 -1
  418. homeassistant-stubs/components/linkplay/__init__.pyi +2 -1
  419. homeassistant-stubs/components/linkplay/const.pyi +4 -0
  420. homeassistant-stubs/components/linkplay/media_player.pyi +12 -4
  421. homeassistant-stubs/components/litterrobot/__init__.pyi +1 -0
  422. homeassistant-stubs/components/litterrobot/vacuum.pyi +0 -1
  423. homeassistant-stubs/components/local_todo/__init__.pyi +1 -0
  424. homeassistant-stubs/components/lock/__init__.pyi +0 -10
  425. homeassistant-stubs/components/logbook/models.pyi +0 -7
  426. homeassistant-stubs/components/lookin/coordinator.pyi +1 -1
  427. homeassistant-stubs/components/madvr/__init__.pyi +1 -0
  428. homeassistant-stubs/components/madvr/config_flow.pyi +2 -5
  429. homeassistant-stubs/components/manual/alarm_control_panel.pyi +19 -10
  430. homeassistant-stubs/components/mastodon/__init__.pyi +1 -0
  431. homeassistant-stubs/components/mastodon/config_flow.pyi +2 -0
  432. homeassistant-stubs/components/matter/api.pyi +1 -1
  433. homeassistant-stubs/components/matter/climate.pyi +1 -0
  434. homeassistant-stubs/components/matter/config_flow.pyi +3 -1
  435. homeassistant-stubs/components/matter/entity.pyi +2 -2
  436. homeassistant-stubs/components/matter/fan.pyi +1 -0
  437. homeassistant-stubs/components/matter/light.pyi +1 -0
  438. homeassistant-stubs/components/matter/lock.pyi +1 -0
  439. homeassistant-stubs/components/matter/models.pyi +2 -0
  440. homeassistant-stubs/components/matter/select.pyi +2 -0
  441. homeassistant-stubs/components/matter/switch.pyi +1 -0
  442. homeassistant-stubs/components/matter/update.pyi +1 -0
  443. homeassistant-stubs/components/matter/vacuum.pyi +47 -0
  444. homeassistant-stubs/components/matter/valve.pyi +1 -0
  445. homeassistant-stubs/components/media_player/__init__.pyi +0 -33
  446. homeassistant-stubs/components/mikrotik/__init__.pyi +1 -0
  447. homeassistant-stubs/components/mikrotik/config_flow.pyi +0 -1
  448. homeassistant-stubs/components/modbus/__init__.pyi +1 -1
  449. homeassistant-stubs/components/modbus/const.pyi +0 -2
  450. homeassistant-stubs/components/modbus/cover.pyi +2 -2
  451. homeassistant-stubs/components/modbus/modbus.pyi +1 -2
  452. homeassistant-stubs/components/modbus/validators.pyi +1 -1
  453. homeassistant-stubs/components/mold_indicator/config_flow.pyi +9 -0
  454. homeassistant-stubs/components/mold_indicator/sensor.pyi +6 -2
  455. homeassistant-stubs/components/monzo/config_flow.pyi +1 -2
  456. homeassistant-stubs/components/mopeka/__init__.pyi +1 -0
  457. homeassistant-stubs/components/mqtt/__init__.pyi +2 -1
  458. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +3 -3
  459. homeassistant-stubs/components/mqtt/client.pyi +4 -0
  460. homeassistant-stubs/components/mqtt/config_flow.pyi +3 -2
  461. homeassistant-stubs/components/mqtt/const.pyi +3 -1
  462. homeassistant-stubs/components/mqtt/cover.pyi +1 -1
  463. homeassistant-stubs/components/mqtt/discovery.pyi +26 -9
  464. homeassistant-stubs/components/mqtt/entity.pyi +5 -2
  465. homeassistant-stubs/components/mqtt/models.pyi +11 -0
  466. homeassistant-stubs/components/mqtt/schemas.pyi +15 -7
  467. homeassistant-stubs/components/mqtt/update.pyi +7 -11
  468. homeassistant-stubs/components/mysensors/const.pyi +6 -1
  469. homeassistant-stubs/components/myuplink/__init__.pyi +1 -0
  470. homeassistant-stubs/components/myuplink/config_flow.pyi +1 -2
  471. homeassistant-stubs/components/myuplink/helpers.pyi +6 -0
  472. homeassistant-stubs/components/nam/__init__.pyi +1 -0
  473. homeassistant-stubs/components/nam/config_flow.pyi +4 -7
  474. homeassistant-stubs/components/nanoleaf/__init__.pyi +1 -0
  475. homeassistant-stubs/components/nanoleaf/config_flow.pyi +1 -2
  476. homeassistant-stubs/components/nest/__init__.pyi +1 -1
  477. homeassistant-stubs/components/nest/api.pyi +5 -3
  478. homeassistant-stubs/components/nest/camera.pyi +37 -16
  479. homeassistant-stubs/components/nest/config_flow.pyi +10 -4
  480. homeassistant-stubs/components/nest/const.pyi +2 -1
  481. homeassistant-stubs/components/netatmo/climate.pyi +1 -0
  482. homeassistant-stubs/components/network/websocket.pyi +2 -0
  483. homeassistant-stubs/components/nextdns/__init__.pyi +1 -0
  484. homeassistant-stubs/components/nextdns/config_flow.pyi +1 -2
  485. homeassistant-stubs/components/notify/__init__.pyi +0 -2
  486. homeassistant-stubs/components/notion/config_flow.pyi +1 -3
  487. homeassistant-stubs/components/number/__init__.pyi +0 -8
  488. homeassistant-stubs/components/nut/__init__.pyi +1 -0
  489. homeassistant-stubs/components/onboarding/views.pyi +1 -0
  490. homeassistant-stubs/components/oncue/config_flow.pyi +1 -3
  491. homeassistant-stubs/components/oncue/types.pyi +3 -0
  492. homeassistant-stubs/components/onewire/__init__.pyi +1 -0
  493. homeassistant-stubs/components/onkyo/__init__.pyi +25 -0
  494. homeassistant-stubs/components/onkyo/config_flow.pyi +30 -0
  495. homeassistant-stubs/components/onkyo/const.pyi +68 -0
  496. homeassistant-stubs/components/onkyo/media_player.pyi +24 -26
  497. homeassistant-stubs/components/onkyo/receiver.pyi +23 -3
  498. homeassistant-stubs/components/onkyo/services.pyi +14 -0
  499. homeassistant-stubs/components/openai_conversation/__init__.pyi +19 -0
  500. homeassistant-stubs/components/openai_conversation/config_flow.pyi +30 -0
  501. homeassistant-stubs/components/openai_conversation/const.pyi +14 -0
  502. homeassistant-stubs/components/openai_conversation/conversation.pyi +36 -0
  503. homeassistant-stubs/components/openexchangerates/config_flow.pyi +1 -2
  504. homeassistant-stubs/components/oralb/__init__.pyi +1 -0
  505. homeassistant-stubs/components/otbr/__init__.pyi +1 -0
  506. homeassistant-stubs/components/otbr/config_flow.pyi +2 -1
  507. homeassistant-stubs/components/otbr/silabs_multiprotocol.pyi +1 -1
  508. homeassistant-stubs/components/otbr/util.pyi +1 -1
  509. homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +12 -12
  510. homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control_zone.pyi +0 -3
  511. homeassistant-stubs/components/overkiz/config_flow.pyi +1 -2
  512. homeassistant-stubs/components/p1_monitor/__init__.pyi +3 -2
  513. homeassistant-stubs/components/p1_monitor/config_flow.pyi +2 -2
  514. homeassistant-stubs/components/p1_monitor/coordinator.pyi +1 -1
  515. homeassistant-stubs/components/p1_monitor/diagnostics.pyi +1 -1
  516. homeassistant-stubs/components/panel_custom/__init__.pyi +28 -0
  517. homeassistant-stubs/components/pi_hole/__init__.pyi +1 -0
  518. homeassistant-stubs/components/pi_hole/update.pyi +1 -1
  519. homeassistant-stubs/components/ping/__init__.pyi +1 -0
  520. homeassistant-stubs/components/plugwise/__init__.pyi +1 -0
  521. homeassistant-stubs/components/plugwise/config_flow.pyi +8 -6
  522. homeassistant-stubs/components/plugwise/const.pyi +4 -1
  523. homeassistant-stubs/components/plugwise/util.pyi +1 -1
  524. homeassistant-stubs/components/powerwall/config_flow.pyi +0 -1
  525. homeassistant-stubs/components/powerwall/models.pyi +1 -0
  526. homeassistant-stubs/components/private_ble_device/coordinator.pyi +3 -0
  527. homeassistant-stubs/components/prometheus/__init__.pyi +7 -4
  528. homeassistant-stubs/components/proximity/coordinator.pyi +1 -0
  529. homeassistant-stubs/components/purpleair/config_flow.pyi +0 -1
  530. homeassistant-stubs/components/pvoutput/config_flow.pyi +1 -2
  531. homeassistant-stubs/components/qnap_qsw/sensor.pyi +8 -2
  532. homeassistant-stubs/components/radarr/__init__.pyi +1 -0
  533. homeassistant-stubs/components/radarr/config_flow.pyi +1 -3
  534. homeassistant-stubs/components/radio_browser/__init__.pyi +10 -0
  535. homeassistant-stubs/components/radio_browser/config_flow.pyi +8 -0
  536. homeassistant-stubs/components/radio_browser/const.pyi +5 -0
  537. homeassistant-stubs/components/radio_browser/media_source.pyi +28 -0
  538. homeassistant-stubs/components/rainforest_raven/__init__.pyi +3 -5
  539. homeassistant-stubs/components/rainforest_raven/coordinator.pyi +3 -12
  540. homeassistant-stubs/components/rainforest_raven/diagnostics.pyi +2 -4
  541. homeassistant-stubs/components/rainforest_raven/sensor.pyi +4 -5
  542. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -0
  543. homeassistant-stubs/components/rainmachine/switch.pyi +1 -1
  544. homeassistant-stubs/components/rainmachine/update.pyi +7 -1
  545. homeassistant-stubs/components/raspberry_pi/__init__.pyi +2 -1
  546. homeassistant-stubs/components/recorder/core.pyi +2 -6
  547. homeassistant-stubs/components/recorder/migration.pyi +36 -16
  548. homeassistant-stubs/components/recorder/models/state.pyi +0 -7
  549. homeassistant-stubs/components/recorder/queries.pyi +1 -0
  550. homeassistant-stubs/components/recorder/table_managers/__init__.pyi +2 -2
  551. homeassistant-stubs/components/recorder/util.pyi +10 -5
  552. homeassistant-stubs/components/remote/__init__.pyi +0 -4
  553. homeassistant-stubs/components/renault/__init__.pyi +1 -0
  554. homeassistant-stubs/components/renault/renault_vehicle.pyi +1 -1
  555. homeassistant-stubs/components/repairs/issue_handler.pyi +1 -1
  556. homeassistant-stubs/components/rfxtrx/cover.pyi +1 -2
  557. homeassistant-stubs/components/rfxtrx/entity.pyi +1 -1
  558. homeassistant-stubs/components/ring/__init__.pyi +1 -0
  559. homeassistant-stubs/components/ring/config_flow.pyi +5 -2
  560. homeassistant-stubs/components/ring/coordinator.pyi +1 -1
  561. homeassistant-stubs/components/ring/entity.pyi +2 -2
  562. homeassistant-stubs/components/roborock/__init__.pyi +1 -0
  563. homeassistant-stubs/components/roborock/config_flow.pyi +1 -2
  564. homeassistant-stubs/components/roborock/coordinator.pyi +0 -5
  565. homeassistant-stubs/components/roku/browse_media.pyi +2 -0
  566. homeassistant-stubs/components/roku/helpers.pyi +5 -2
  567. homeassistant-stubs/components/rtsp_to_webrtc/__init__.pyi +1 -3
  568. homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +1 -1
  569. homeassistant-stubs/components/samsungtv/__init__.pyi +2 -2
  570. homeassistant-stubs/components/samsungtv/bridge.pyi +1 -1
  571. homeassistant-stubs/components/samsungtv/config_flow.pyi +2 -2
  572. homeassistant-stubs/components/scrape/__init__.pyi +1 -0
  573. homeassistant-stubs/components/scrape/coordinator.pyi +2 -1
  574. homeassistant-stubs/components/script/__init__.pyi +0 -16
  575. homeassistant-stubs/components/select/__init__.pyi +0 -3
  576. homeassistant-stubs/components/sensibo/__init__.pyi +1 -0
  577. homeassistant-stubs/components/sensibo/config_flow.pyi +5 -2
  578. homeassistant-stubs/components/sensibo/entity.pyi +1 -1
  579. homeassistant-stubs/components/sensibo/update.pyi +1 -1
  580. homeassistant-stubs/components/sensor/__init__.pyi +0 -9
  581. homeassistant-stubs/components/sensor/websocket_api.pyi +3 -0
  582. homeassistant-stubs/components/sensoterra/__init__.pyi +1 -0
  583. homeassistant-stubs/components/senz/__init__.pyi +2 -0
  584. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +2 -2
  585. homeassistant-stubs/components/sfr_box/button.pyi +1 -1
  586. homeassistant-stubs/components/sfr_box/config_flow.pyi +1 -2
  587. homeassistant-stubs/components/sfr_box/coordinator.pyi +1 -1
  588. homeassistant-stubs/components/sfr_box/sensor.pyi +2 -2
  589. homeassistant-stubs/components/shell_command/__init__.pyi +13 -0
  590. homeassistant-stubs/components/shelly/binary_sensor.pyi +1 -1
  591. homeassistant-stubs/components/shelly/button.pyi +1 -1
  592. homeassistant-stubs/components/shelly/config_flow.pyi +1 -3
  593. homeassistant-stubs/components/shelly/const.pyi +1 -1
  594. homeassistant-stubs/components/shelly/coordinator.pyi +2 -4
  595. homeassistant-stubs/components/shelly/light.pyi +13 -2
  596. homeassistant-stubs/components/shelly/number.pyi +1 -1
  597. homeassistant-stubs/components/shelly/select.pyi +1 -1
  598. homeassistant-stubs/components/shelly/sensor.pyi +1 -1
  599. homeassistant-stubs/components/shelly/switch.pyi +10 -1
  600. homeassistant-stubs/components/shelly/text.pyi +1 -1
  601. homeassistant-stubs/components/shelly/update.pyi +2 -2
  602. homeassistant-stubs/components/shelly/utils.pyi +3 -2
  603. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -3
  604. homeassistant-stubs/components/simplisafe/typing.pyi +4 -0
  605. homeassistant-stubs/components/siren/__init__.pyi +0 -3
  606. homeassistant-stubs/components/sleepiq/config_flow.pyi +1 -3
  607. homeassistant-stubs/components/sleepiq/entity.pyi +3 -2
  608. homeassistant-stubs/components/smhi/config_flow.pyi +1 -3
  609. homeassistant-stubs/components/smlight/__init__.pyi +1 -0
  610. homeassistant-stubs/components/smlight/config_flow.pyi +0 -2
  611. homeassistant-stubs/components/smlight/coordinator.pyi +1 -1
  612. homeassistant-stubs/components/smlight/update.pyi +4 -2
  613. homeassistant-stubs/components/solarlog/__init__.pyi +1 -0
  614. homeassistant-stubs/components/solarlog/config_flow.pyi +1 -4
  615. homeassistant-stubs/components/solarlog/coordinator.pyi +6 -0
  616. homeassistant-stubs/components/sonarr/config_flow.pyi +1 -4
  617. homeassistant-stubs/components/speedtestdotnet/__init__.pyi +2 -1
  618. homeassistant-stubs/components/spotify/__init__.pyi +5 -0
  619. homeassistant-stubs/components/spotify/application_credentials.pyi +4 -0
  620. homeassistant-stubs/components/spotify/browse_media.pyi +49 -0
  621. homeassistant-stubs/components/spotify/config_flow.pyi +19 -0
  622. homeassistant-stubs/components/spotify/const.pyi +9 -0
  623. homeassistant-stubs/components/spotify/coordinator.pyi +34 -0
  624. homeassistant-stubs/components/spotify/diagnostics.pyi +5 -0
  625. homeassistant-stubs/components/spotify/entity.pyi +10 -0
  626. homeassistant-stubs/components/spotify/media_player.pyi +82 -0
  627. homeassistant-stubs/components/spotify/models.pyi +12 -0
  628. homeassistant-stubs/components/spotify/sensor.pyi +31 -0
  629. homeassistant-stubs/components/spotify/system_health.pyi +6 -0
  630. homeassistant-stubs/components/spotify/util.pyi +7 -0
  631. homeassistant-stubs/components/squeezebox/__init__.pyi +6 -3
  632. homeassistant-stubs/components/squeezebox/const.pyi +5 -0
  633. homeassistant-stubs/components/squeezebox/coordinator.pyi +15 -3
  634. homeassistant-stubs/components/squeezebox/media_player.pyi +12 -13
  635. homeassistant-stubs/components/ssdp/__init__.pyi +1 -0
  636. homeassistant-stubs/components/statistics/config_flow.pyi +8 -2
  637. homeassistant-stubs/components/statistics/sensor.pyi +20 -22
  638. homeassistant-stubs/components/steamist/config_flow.pyi +3 -1
  639. homeassistant-stubs/components/sun/entity.pyi +1 -0
  640. homeassistant-stubs/components/surepetcare/config_flow.pyi +1 -2
  641. homeassistant-stubs/components/switch/__init__.pyi +0 -2
  642. homeassistant-stubs/components/switch_as_x/__init__.pyi +3 -0
  643. homeassistant-stubs/components/switch_as_x/config_flow.pyi +18 -0
  644. homeassistant-stubs/components/switch_as_x/const.pyi +5 -0
  645. homeassistant-stubs/components/switch_as_x/cover.pyi +18 -0
  646. homeassistant-stubs/components/switch_as_x/entity.pyi +35 -0
  647. homeassistant-stubs/components/switch_as_x/fan.pyi +17 -0
  648. homeassistant-stubs/components/switch_as_x/light.pyi +13 -0
  649. homeassistant-stubs/components/switch_as_x/lock.pyi +17 -0
  650. homeassistant-stubs/components/switch_as_x/siren.pyi +12 -0
  651. homeassistant-stubs/components/switch_as_x/valve.pyi +19 -0
  652. homeassistant-stubs/components/switchbee/entity.pyi +2 -2
  653. homeassistant-stubs/components/switchbee/switch.pyi +2 -1
  654. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  655. homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +2 -0
  656. homeassistant-stubs/components/switchbot_cloud/lock.pyi +18 -0
  657. homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -0
  658. homeassistant-stubs/components/switcher_kis/button.pyi +2 -5
  659. homeassistant-stubs/components/switcher_kis/climate.pyi +2 -5
  660. homeassistant-stubs/components/switcher_kis/config_flow.pyi +1 -2
  661. homeassistant-stubs/components/switcher_kis/coordinator.pyi +1 -1
  662. homeassistant-stubs/components/switcher_kis/cover.pyi +16 -9
  663. homeassistant-stubs/components/switcher_kis/entity.pyi +9 -0
  664. homeassistant-stubs/components/switcher_kis/light.pyi +44 -0
  665. homeassistant-stubs/components/switcher_kis/sensor.pyi +2 -5
  666. homeassistant-stubs/components/switcher_kis/switch.pyi +2 -5
  667. homeassistant-stubs/components/synology_dsm/coordinator.pyi +2 -2
  668. homeassistant-stubs/components/synology_dsm/entity.pyi +2 -1
  669. homeassistant-stubs/components/synology_dsm/update.pyi +1 -1
  670. homeassistant-stubs/components/system_log/__init__.pyi +1 -0
  671. homeassistant-stubs/components/systemmonitor/__init__.pyi +1 -0
  672. homeassistant-stubs/components/tailscale/config_flow.pyi +1 -2
  673. homeassistant-stubs/components/tailwind/config_flow.pyi +1 -2
  674. homeassistant-stubs/components/tailwind/typing.pyi +2 -0
  675. homeassistant-stubs/components/tautulli/__init__.pyi +1 -0
  676. homeassistant-stubs/components/technove/helpers.pyi +1 -1
  677. homeassistant-stubs/components/tedee/__init__.pyi +1 -1
  678. homeassistant-stubs/components/tedee/binary_sensor.pyi +1 -1
  679. homeassistant-stubs/components/tedee/config_flow.pyi +2 -5
  680. homeassistant-stubs/components/tedee/coordinator.pyi +5 -5
  681. homeassistant-stubs/components/tedee/lock.pyi +2 -2
  682. homeassistant-stubs/components/tedee/sensor.pyi +1 -1
  683. homeassistant-stubs/components/text/__init__.pyi +0 -6
  684. homeassistant-stubs/components/thethingsnetwork/config_flow.pyi +1 -2
  685. homeassistant-stubs/components/thethingsnetwork/sensor.pyi +2 -1
  686. homeassistant-stubs/components/threshold/binary_sensor.pyi +1 -3
  687. homeassistant-stubs/components/tibber/sensor.pyi +1 -0
  688. homeassistant-stubs/components/tile/device_tracker.pyi +3 -6
  689. homeassistant-stubs/components/time/__init__.pyi +0 -4
  690. homeassistant-stubs/components/timer/__init__.pyi +1 -1
  691. homeassistant-stubs/components/tod/binary_sensor.pyi +2 -1
  692. homeassistant-stubs/components/todo/__init__.pyi +0 -2
  693. homeassistant-stubs/components/tplink/__init__.pyi +1 -0
  694. homeassistant-stubs/components/tplink/button.pyi +1 -1
  695. homeassistant-stubs/components/tplink/config_flow.pyi +5 -3
  696. homeassistant-stubs/components/tplink/entity.pyi +4 -4
  697. homeassistant-stubs/components/tplink_omada/__init__.pyi +4 -3
  698. homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +3 -5
  699. homeassistant-stubs/components/tplink_omada/const.pyi +11 -0
  700. homeassistant-stubs/components/tplink_omada/coordinator.pyi +1 -1
  701. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +3 -4
  702. homeassistant-stubs/components/tplink_omada/entity.pyi +3 -1
  703. homeassistant-stubs/components/tplink_omada/sensor.pyi +34 -0
  704. homeassistant-stubs/components/tplink_omada/switch.pyi +3 -5
  705. homeassistant-stubs/components/tplink_omada/update.pyi +3 -6
  706. homeassistant-stubs/components/trace/__init__.pyi +5 -25
  707. homeassistant-stubs/components/trace/const.pyi +1 -1
  708. homeassistant-stubs/components/trace/models.pyi +2 -0
  709. homeassistant-stubs/components/trace/util.pyi +17 -0
  710. homeassistant-stubs/components/trace/websocket_api.pyi +1 -1
  711. homeassistant-stubs/components/tractive/__init__.pyi +1 -0
  712. homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +2 -2
  713. homeassistant-stubs/components/trafikverket_ferry/config_flow.pyi +1 -2
  714. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +0 -1
  715. homeassistant-stubs/components/trafikverket_weatherstation/config_flow.pyi +3 -2
  716. homeassistant-stubs/components/transmission/__init__.pyi +1 -0
  717. homeassistant-stubs/components/transmission/config_flow.pyi +1 -2
  718. homeassistant-stubs/components/trend/binary_sensor.pyi +1 -2
  719. homeassistant-stubs/components/tts/__init__.pyi +0 -5
  720. homeassistant-stubs/components/tts/const.pyi +1 -0
  721. homeassistant-stubs/components/twentemilieu/__init__.pyi +4 -0
  722. homeassistant-stubs/components/unifi/__init__.pyi +1 -0
  723. homeassistant-stubs/components/unifi/config_flow.pyi +1 -2
  724. homeassistant-stubs/components/unifi/device_tracker.pyi +0 -3
  725. homeassistant-stubs/components/unifi/update.pyi +1 -1
  726. homeassistant-stubs/components/unifiprotect/camera.pyi +3 -2
  727. homeassistant-stubs/components/unifiprotect/config_flow.pyi +0 -1
  728. homeassistant-stubs/components/unifiprotect/data.pyi +2 -0
  729. homeassistant-stubs/components/update/__init__.pyi +7 -12
  730. homeassistant-stubs/components/update/const.pyi +2 -0
  731. homeassistant-stubs/components/vacuum/__init__.pyi +0 -6
  732. homeassistant-stubs/components/vallox/config_flow.pyi +2 -5
  733. homeassistant-stubs/components/velbus/entity.pyi +1 -1
  734. homeassistant-stubs/components/vlc_telnet/__init__.pyi +1 -0
  735. homeassistant-stubs/components/vlc_telnet/config_flow.pyi +2 -3
  736. homeassistant-stubs/components/vlc_telnet/media_player.pyi +1 -1
  737. homeassistant-stubs/components/wallbox/__init__.pyi +1 -1
  738. homeassistant-stubs/components/wallbox/config_flow.pyi +2 -4
  739. homeassistant-stubs/components/wallbox/coordinator.pyi +3 -3
  740. homeassistant-stubs/components/water_heater/__init__.pyi +0 -9
  741. homeassistant-stubs/components/weather/__init__.pyi +0 -19
  742. homeassistant-stubs/components/webostv/config_flow.pyi +2 -2
  743. homeassistant-stubs/components/webostv/media_player.pyi +1 -1
  744. homeassistant-stubs/components/websocket_api/connection.pyi +3 -0
  745. homeassistant-stubs/components/websocket_api/const.pyi +4 -1
  746. homeassistant-stubs/components/wemo/__init__.pyi +4 -1
  747. homeassistant-stubs/components/wemo/coordinator.pyi +3 -0
  748. homeassistant-stubs/components/withings/__init__.pyi +4 -2
  749. homeassistant-stubs/components/withings/config_flow.pyi +1 -2
  750. homeassistant-stubs/components/withings/coordinator.pyi +7 -2
  751. homeassistant-stubs/components/withings/entity.pyi +14 -2
  752. homeassistant-stubs/components/withings/sensor.pyi +19 -4
  753. homeassistant-stubs/components/wiz/__init__.pyi +1 -0
  754. homeassistant-stubs/components/wled/__init__.pyi +1 -0
  755. homeassistant-stubs/components/wled/helpers.pyi +1 -1
  756. homeassistant-stubs/components/workday/__init__.pyi +13 -0
  757. homeassistant-stubs/components/workday/binary_sensor.pyi +46 -0
  758. homeassistant-stubs/components/workday/config_flow.pyi +33 -0
  759. homeassistant-stubs/components/workday/const.pyi +18 -0
  760. homeassistant-stubs/components/workday/diagnostics.pyi +5 -0
  761. homeassistant-stubs/components/workday/repairs.pyi +28 -0
  762. homeassistant-stubs/components/xiaomi_ble/config_flow.pyi +7 -2
  763. homeassistant-stubs/components/xiaomi_ble/coordinator.pyi +1 -1
  764. homeassistant-stubs/components/xiaomi_ble/types.pyi +2 -0
  765. homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +1 -0
  766. homeassistant-stubs/components/yale_smart_alarm/alarm_control_panel.pyi +2 -3
  767. homeassistant-stubs/components/yale_smart_alarm/binary_sensor.pyi +7 -0
  768. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +0 -1
  769. homeassistant-stubs/components/yale_smart_alarm/const.pyi +2 -1
  770. homeassistant-stubs/components/yale_smart_alarm/select.pyi +21 -0
  771. homeassistant-stubs/components/yalexs_ble/__init__.pyi +1 -0
  772. homeassistant-stubs/components/yalexs_ble/config_flow.pyi +6 -2
  773. homeassistant-stubs/components/youtube/config_flow.pyi +1 -2
  774. homeassistant-stubs/components/zwave_js/api.pyi +1 -1
  775. homeassistant-stubs/components/zwave_js/config_flow.pyi +6 -4
  776. homeassistant-stubs/components/zwave_js/discovery.pyi +2 -1
  777. homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +1 -1
  778. homeassistant-stubs/components/zwave_js/light.pyi +8 -6
  779. homeassistant-stubs/components/zwave_js/services.pyi +4 -1
  780. homeassistant-stubs/components/zwave_js/update.pyi +2 -1
  781. homeassistant-stubs/config.pyi +3 -24
  782. homeassistant-stubs/config_entries.pyi +52 -27
  783. homeassistant-stubs/const.pyi +16 -12
  784. homeassistant-stubs/core.pyi +40 -109
  785. homeassistant-stubs/core_config.pyi +108 -0
  786. homeassistant-stubs/data_entry_flow.pyi +22 -18
  787. homeassistant-stubs/helpers/area_registry.pyi +6 -8
  788. homeassistant-stubs/helpers/category_registry.pyi +1 -0
  789. homeassistant-stubs/helpers/check_config.pyi +2 -1
  790. homeassistant-stubs/helpers/collection.pyi +6 -4
  791. homeassistant-stubs/helpers/condition.pyi +1 -0
  792. homeassistant-stubs/helpers/config_entry_flow.pyi +3 -2
  793. homeassistant-stubs/helpers/config_validation.pyi +6 -6
  794. homeassistant-stubs/helpers/data_entry_flow.pyi +1 -1
  795. homeassistant-stubs/helpers/debounce.pyi +1 -1
  796. homeassistant-stubs/helpers/deprecation.pyi +9 -4
  797. homeassistant-stubs/helpers/device_registry.pyi +7 -8
  798. homeassistant-stubs/helpers/discovery_flow.pyi +5 -5
  799. homeassistant-stubs/helpers/dispatcher.pyi +9 -8
  800. homeassistant-stubs/helpers/entity.pyi +2 -31
  801. homeassistant-stubs/helpers/entity_registry.pyi +7 -9
  802. homeassistant-stubs/helpers/event.pyi +2 -1
  803. homeassistant-stubs/helpers/floor_registry.pyi +3 -3
  804. homeassistant-stubs/helpers/frame.pyi +1 -5
  805. homeassistant-stubs/helpers/hassio.pyi +4 -0
  806. homeassistant-stubs/helpers/http.pyi +2 -0
  807. homeassistant-stubs/helpers/intent.pyi +6 -5
  808. homeassistant-stubs/helpers/json.pyi +3 -0
  809. homeassistant-stubs/helpers/label_registry.pyi +3 -3
  810. homeassistant-stubs/helpers/llm.pyi +1 -2
  811. homeassistant-stubs/helpers/network.pyi +1 -0
  812. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +6 -3
  813. homeassistant-stubs/helpers/ratelimit.pyi +1 -1
  814. homeassistant-stubs/helpers/redact.pyi +2 -2
  815. homeassistant-stubs/helpers/registry.pyi +5 -3
  816. homeassistant-stubs/helpers/script.pyi +3 -7
  817. homeassistant-stubs/helpers/selector.pyi +1 -1
  818. homeassistant-stubs/helpers/service.pyi +2 -2
  819. homeassistant-stubs/helpers/service_info/hassio.pyi +11 -0
  820. homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -0
  821. homeassistant-stubs/helpers/significant_change.pyi +3 -0
  822. homeassistant-stubs/helpers/singleton.pyi +3 -2
  823. homeassistant-stubs/helpers/storage.pyi +4 -5
  824. homeassistant-stubs/helpers/sun.pyi +2 -0
  825. homeassistant-stubs/helpers/system_info.pyi +1 -0
  826. homeassistant-stubs/helpers/template.pyi +4 -3
  827. homeassistant-stubs/helpers/trace.pyi +3 -3
  828. homeassistant-stubs/helpers/typing.pyi +13 -0
  829. homeassistant-stubs/helpers/update_coordinator.pyi +4 -4
  830. homeassistant-stubs/loader.pyi +5 -21
  831. homeassistant-stubs/scripts/benchmark/__init__.pyi +1 -1
  832. homeassistant-stubs/util/__init__.pyi +1 -1
  833. homeassistant-stubs/util/async_.pyi +2 -2
  834. homeassistant-stubs/util/decorator.pyi +2 -1
  835. homeassistant-stubs/util/dt.pyi +3 -2
  836. homeassistant-stubs/util/enum.pyi +2 -2
  837. homeassistant-stubs/util/hass_dict.pyi +17 -17
  838. homeassistant-stubs/util/json.pyi +3 -0
  839. homeassistant-stubs/util/limited_size_dict.pyi +1 -1
  840. homeassistant-stubs/util/logging.pyi +8 -8
  841. homeassistant-stubs/util/loop.pyi +1 -1
  842. homeassistant-stubs/util/percentage.pyi +2 -2
  843. homeassistant-stubs/util/read_only_dict.pyi +1 -1
  844. homeassistant-stubs/util/signal_type.pyi +3 -3
  845. homeassistant-stubs/util/variance.pyi +3 -3
  846. homeassistant-stubs/util/yaml/loader.pyi +2 -4
  847. {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0.dist-info}/METADATA +2 -2
  848. {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0.dist-info}/RECORD +850 -771
  849. homeassistant-stubs/components/jellyfin/models.pyi +0 -10
  850. homeassistant-stubs/components/map/__init__.pyi +0 -14
  851. {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0.dist-info}/WHEEL +0 -0
  852. {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0.dist-info}/licenses/LICENSE +0 -0
@@ -4,12 +4,15 @@ from _typeshed import Incomplete
4
4
  from collections.abc import Mapping
5
5
  from homeassistant.components import onboarding as onboarding
6
6
  from homeassistant.components.bluetooth import BluetoothScanningMode as BluetoothScanningMode, BluetoothServiceInfo as BluetoothServiceInfo, async_discovered_service_info as async_discovered_service_info, async_process_advertisements as async_process_advertisements
7
- from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
8
- from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
7
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH
8
+ from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
9
+ from homeassistant.data_entry_flow import AbortFlow as AbortFlow
10
+ from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
9
11
  from typing import Any
10
12
  from xiaomi_ble import XiaomiBluetoothDeviceData as DeviceData
11
13
 
12
14
  ADDITIONAL_DISCOVERY_TIMEOUT: int
15
+ _LOGGER: Incomplete
13
16
 
14
17
  @dataclasses.dataclass
15
18
  class Discovery:
@@ -30,6 +33,8 @@ class XiaomiConfigFlow(ConfigFlow, domain=DOMAIN):
30
33
  async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfo) -> ConfigFlowResult: ...
31
34
  async def async_step_get_encryption_key_legacy(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
32
35
  async def async_step_get_encryption_key_4_5(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
36
+ async def async_step_cloud_auth(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
37
+ async def async_step_get_encryption_key_4_5_choose_method(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
33
38
  async def async_step_bluetooth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
34
39
  async def async_step_confirm_slow(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
35
40
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -19,5 +19,5 @@ class XiaomiActiveBluetoothProcessorCoordinator(ActiveBluetoothProcessorCoordina
19
19
  @property
20
20
  def sleepy_device(self) -> bool: ...
21
21
 
22
- class XiaomiPassiveBluetoothDataProcessor(PassiveBluetoothDataProcessor[_T, SensorUpdate]):
22
+ class XiaomiPassiveBluetoothDataProcessor[_T](PassiveBluetoothDataProcessor[_T, SensorUpdate]):
23
23
  coordinator: XiaomiActiveBluetoothProcessorCoordinator
@@ -1,2 +1,4 @@
1
1
  from .coordinator import XiaomiActiveBluetoothProcessorCoordinator as XiaomiActiveBluetoothProcessorCoordinator
2
2
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
3
+
4
+ type XiaomiBLEConfigEntry = ConfigEntry[XiaomiActiveBluetoothProcessorCoordinator]
@@ -5,6 +5,7 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
5
  from homeassistant.const import CONF_CODE as CONF_CODE
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
 
8
+ type YaleConfigEntry = ConfigEntry[YaleDataUpdateCoordinator]
8
9
  async def async_setup_entry(hass: HomeAssistant, entry: YaleConfigEntry) -> bool: ...
9
10
  async def update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
10
11
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -3,12 +3,11 @@ from .const import DOMAIN as DOMAIN, STATE_MAP as STATE_MAP, YALE_ALL_ERRORS as
3
3
  from .coordinator import YaleDataUpdateCoordinator as YaleDataUpdateCoordinator
4
4
  from .entity import YaleAlarmEntity as YaleAlarmEntity
5
5
  from _typeshed import Incomplete
6
- from homeassistant.components.alarm_control_panel import AlarmControlPanelEntity as AlarmControlPanelEntity, AlarmControlPanelEntityFeature as AlarmControlPanelEntityFeature
6
+ from homeassistant.components.alarm_control_panel import AlarmControlPanelEntity as AlarmControlPanelEntity, AlarmControlPanelEntityFeature as AlarmControlPanelEntityFeature, AlarmControlPanelState as AlarmControlPanelState
7
7
  from homeassistant.const import CONF_NAME as CONF_NAME
8
8
  from homeassistant.core import HomeAssistant as HomeAssistant
9
9
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
- from homeassistant.helpers.typing import StateType as StateType
12
11
 
13
12
  async def async_setup_entry(hass: HomeAssistant, entry: YaleConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
14
13
 
@@ -25,4 +24,4 @@ class YaleAlarmDevice(YaleAlarmEntity, AlarmControlPanelEntity):
25
24
  @property
26
25
  def available(self) -> bool: ...
27
26
  @property
28
- def state(self) -> StateType: ...
27
+ def alarm_state(self) -> AlarmControlPanelState | None: ...
@@ -16,6 +16,13 @@ class YaleDoorSensor(YaleEntity, BinarySensorEntity):
16
16
  @property
17
17
  def is_on(self) -> bool: ...
18
18
 
19
+ class YaleDoorBatterySensor(YaleEntity, BinarySensorEntity):
20
+ _attr_device_class: Incomplete
21
+ _attr_unique_id: Incomplete
22
+ def __init__(self, coordinator: YaleDataUpdateCoordinator, data: dict) -> None: ...
23
+ @property
24
+ def is_on(self) -> bool: ...
25
+
19
26
  class YaleProblemSensor(YaleAlarmEntity, BinarySensorEntity):
20
27
  entity_description: BinarySensorEntityDescription
21
28
  _attr_unique_id: Incomplete
@@ -11,7 +11,6 @@ DATA_SCHEMA_AUTH: Incomplete
11
11
 
12
12
  class YaleConfigFlow(ConfigFlow, domain=DOMAIN):
13
13
  VERSION: int
14
- entry: ConfigEntry | None
15
14
  @staticmethod
16
15
  def async_get_options_flow(config_entry: ConfigEntry) -> YaleOptionsFlowHandler: ...
17
16
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
@@ -1,5 +1,6 @@
1
1
  from _typeshed import Incomplete
2
- from homeassistant.const import Platform as Platform, STATE_ALARM_ARMED_AWAY as STATE_ALARM_ARMED_AWAY, STATE_ALARM_ARMED_HOME as STATE_ALARM_ARMED_HOME, STATE_ALARM_DISARMED as STATE_ALARM_DISARMED
2
+ from homeassistant.components.alarm_control_panel import AlarmControlPanelState as AlarmControlPanelState
3
+ from homeassistant.const import Platform as Platform
3
4
 
4
5
  CONF_AREA_ID: str
5
6
  CONF_LOCK_CODE_DIGITS: str
@@ -0,0 +1,21 @@
1
+ from . import YaleConfigEntry as YaleConfigEntry
2
+ from .coordinator import YaleDataUpdateCoordinator as YaleDataUpdateCoordinator
3
+ from .entity import YaleLockEntity as YaleLockEntity
4
+ from _typeshed import Incomplete
5
+ from homeassistant.components.select import SelectEntity as SelectEntity
6
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
+ from yalesmartalarmclient import YaleLock as YaleLock
9
+
10
+ VOLUME_OPTIONS: Incomplete
11
+
12
+ async def async_setup_entry(hass: HomeAssistant, entry: YaleConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
13
+
14
+ class YaleLockVolumeSelect(YaleLockEntity, SelectEntity):
15
+ _attr_translation_key: str
16
+ _attr_unique_id: Incomplete
17
+ _attr_current_option: Incomplete
18
+ _attr_options: Incomplete
19
+ def __init__(self, coordinator: YaleDataUpdateCoordinator, lock: YaleLock) -> None: ...
20
+ async def async_select_option(self, option: str) -> None: ...
21
+ def _handle_coordinator_update(self) -> None: ...
@@ -8,6 +8,7 @@ from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, CoreState as Core
8
8
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
9
9
  from yalexs_ble import ConnectionInfo as ConnectionInfo, LockInfo as LockInfo, LockState as LockState
10
10
 
11
+ type YALEXSBLEConfigEntry = ConfigEntry[YaleXSBLEData]
11
12
  PLATFORMS: list[Platform]
12
13
 
13
14
  async def async_setup_entry(hass: HomeAssistant, entry: YALEXSBLEConfigEntry) -> bool: ...
@@ -9,7 +9,7 @@ from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
9
9
  from homeassistant.core import callback as callback
10
10
  from homeassistant.data_entry_flow import AbortFlow as AbortFlow
11
11
  from homeassistant.helpers.typing import DiscoveryInfoType as DiscoveryInfoType
12
- from typing import Any
12
+ from typing import Any, Self
13
13
 
14
14
  _LOGGER: Incomplete
15
15
 
@@ -17,13 +17,17 @@ async def async_validate_lock_or_error(local_name: str, device: BLEDevice, key:
17
17
 
18
18
  class YalexsConfigFlow(ConfigFlow, domain=DOMAIN):
19
19
  VERSION: int
20
+ _address: str | None
21
+ _local_name_is_unique: bool
22
+ active: bool
23
+ local_name: str | None
20
24
  _discovery_info: Incomplete
21
25
  _discovered_devices: Incomplete
22
26
  _lock_cfg: Incomplete
23
- _reauth_entry: Incomplete
24
27
  def __init__(self) -> None: ...
25
28
  async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> ConfigFlowResult: ...
26
29
  async def async_step_integration_discovery(self, discovery_info: DiscoveryInfoType) -> ConfigFlowResult: ...
30
+ def is_matching(self, other_flow: Self) -> bool: ...
27
31
  async def async_step_integration_discovery_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
28
32
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
29
33
  async def async_step_reauth_validate(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -1,7 +1,7 @@
1
1
  import logging
2
2
  from .const import CHANNEL_CREATION_HELP_URL as CHANNEL_CREATION_HELP_URL, CONF_CHANNELS as CONF_CHANNELS, DEFAULT_ACCESS as DEFAULT_ACCESS, DOMAIN as DOMAIN, LOGGER as LOGGER
3
3
  from collections.abc import Mapping
4
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithConfigEntry as OptionsFlowWithConfigEntry
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithConfigEntry as OptionsFlowWithConfigEntry, SOURCE_REAUTH as SOURCE_REAUTH
5
5
  from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_TOKEN as CONF_TOKEN
6
6
  from homeassistant.core import callback as callback
7
7
  from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
@@ -14,7 +14,6 @@ class OAuth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, doma
14
14
  _data: dict[str, Any]
15
15
  _title: str
16
16
  DOMAIN = DOMAIN
17
- reauth_entry: ConfigEntry | None
18
17
  _youtube: YouTube | None
19
18
  @staticmethod
20
19
  def async_get_options_flow(config_entry: ConfigEntry) -> YouTubeOptionsFlowHandler: ...
@@ -77,7 +77,7 @@ async def _async_get_entry(hass: HomeAssistant, connection: ActiveConnection, ms
77
77
  def async_get_entry(orig_func: Callable[[HomeAssistant, ActiveConnection, dict[str, Any], ConfigEntry, Client, Driver], Coroutine[Any, Any, None]]) -> Callable[[HomeAssistant, ActiveConnection, dict[str, Any]], Coroutine[Any, Any, None]]: ...
78
78
  async def _async_get_node(hass: HomeAssistant, connection: ActiveConnection, msg: dict, device_id: str) -> Node | None: ...
79
79
  def async_get_node(orig_func: Callable[[HomeAssistant, ActiveConnection, dict[str, Any], Node], Coroutine[Any, Any, None]]) -> Callable[[HomeAssistant, ActiveConnection, dict[str, Any]], Coroutine[Any, Any, None]]: ...
80
- def async_handle_failed_command(orig_func: Callable[Concatenate[HomeAssistant, ActiveConnection, dict[str, Any], _P], Coroutine[Any, Any, None]]) -> Callable[Concatenate[HomeAssistant, ActiveConnection, dict[str, Any], _P], Coroutine[Any, Any, None]]: ...
80
+ def async_handle_failed_command[**_P](orig_func: Callable[Concatenate[HomeAssistant, ActiveConnection, dict[str, Any], _P], Coroutine[Any, Any, None]]) -> Callable[Concatenate[HomeAssistant, ActiveConnection, dict[str, Any], _P], Coroutine[Any, Any, None]]: ...
81
81
  def node_status(node: Node) -> dict[str, Any]: ...
82
82
  def async_register_api(hass: HomeAssistant) -> None: ...
83
83
  async def websocket_network_status(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -6,14 +6,16 @@ from .const import ADDON_SLUG as ADDON_SLUG, CONF_ADDON_DEVICE as CONF_ADDON_DEV
6
6
  from _typeshed import Incomplete
7
7
  from abc import ABC, abstractmethod
8
8
  from homeassistant.components import usb as usb
9
- from homeassistant.components.hassio import AddonError as AddonError, AddonInfo as AddonInfo, AddonManager as AddonManager, AddonState as AddonState, HassioServiceInfo as HassioServiceInfo, is_hassio as is_hassio
9
+ from homeassistant.components.hassio import AddonError as AddonError, AddonInfo as AddonInfo, AddonManager as AddonManager, AddonState as AddonState
10
10
  from homeassistant.components.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
11
- from homeassistant.config_entries import ConfigEntriesFlowManager as ConfigEntriesFlowManager, ConfigEntry as ConfigEntry, ConfigEntryBaseFlow as ConfigEntryBaseFlow, ConfigEntryState as ConfigEntryState, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, OptionsFlowManager as OptionsFlowManager, SOURCE_USB as SOURCE_USB
11
+ from homeassistant.config_entries import ConfigEntriesFlowManager as ConfigEntriesFlowManager, ConfigEntry as ConfigEntry, ConfigEntryBaseFlow as ConfigEntryBaseFlow, ConfigEntryState as ConfigEntryState, ConfigFlow as ConfigFlow, ConfigFlowContext as ConfigFlowContext, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, OptionsFlowManager as OptionsFlowManager, SOURCE_USB as SOURCE_USB
12
12
  from homeassistant.const import CONF_NAME as CONF_NAME, CONF_URL as CONF_URL
13
13
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
14
14
  from homeassistant.data_entry_flow import AbortFlow as AbortFlow, FlowManager as FlowManager
15
15
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
16
16
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
17
+ from homeassistant.helpers.hassio import is_hassio as is_hassio
18
+ from homeassistant.helpers.service_info.hassio import HassioServiceInfo as HassioServiceInfo
17
19
  from homeassistant.helpers.typing import VolDictType as VolDictType
18
20
  from typing import Any
19
21
  from zwave_js_server.version import VersionInfo as VersionInfo
@@ -54,7 +56,7 @@ class BaseZwaveJSFlow(ConfigEntryBaseFlow, ABC, metaclass=abc.ABCMeta):
54
56
  def __init__(self) -> None: ...
55
57
  @property
56
58
  @abstractmethod
57
- def flow_manager(self) -> FlowManager[ConfigFlowResult]: ...
59
+ def flow_manager(self) -> FlowManager[ConfigFlowContext, ConfigFlowResult]: ...
58
60
  async def async_step_install_addon(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
59
61
  async def async_step_install_failed(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
60
62
  async def async_step_start_addon(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -71,8 +73,8 @@ class BaseZwaveJSFlow(ConfigEntryBaseFlow, ABC, metaclass=abc.ABCMeta):
71
73
 
72
74
  class ZWaveJSConfigFlow(BaseZwaveJSFlow, ConfigFlow, domain=DOMAIN):
73
75
  VERSION: int
76
+ _title: str
74
77
  use_addon: bool
75
- _title: Incomplete
76
78
  _usb_discovery: bool
77
79
  def __init__(self) -> None: ...
78
80
  @property
@@ -85,6 +85,7 @@ DOOR_LOCK_CURRENT_MODE_SCHEMA: Incomplete
85
85
  SWITCH_MULTILEVEL_CURRENT_VALUE_SCHEMA: Incomplete
86
86
  SWITCH_MULTILEVEL_TARGET_VALUE_SCHEMA: Incomplete
87
87
  SWITCH_BINARY_CURRENT_VALUE_SCHEMA: Incomplete
88
+ COLOR_SWITCH_CURRENT_VALUE_SCHEMA: Incomplete
88
89
  SIREN_TONE_SCHEMA: Incomplete
89
90
  WINDOW_COVERING_COVER_CURRENT_VALUE_SCHEMA: Incomplete
90
91
  WINDOW_COVERING_SLAT_CURRENT_VALUE_SCHEMA: Incomplete
@@ -93,4 +94,4 @@ DISCOVERY_SCHEMAS: Incomplete
93
94
  def async_discover_node_values(node: ZwaveNode, device: DeviceEntry, discovered_value_ids: dict[str, set[str]]) -> Generator[ZwaveDiscoveryInfo]: ...
94
95
  def async_discover_single_value(value: ZwaveValue, device: DeviceEntry, discovered_value_ids: dict[str, set[str]]) -> Generator[ZwaveDiscoveryInfo]: ...
95
96
  def async_discover_single_configuration_value(value: ConfigurationValue) -> Generator[ZwaveDiscoveryInfo]: ...
96
- def check_value(value: ZwaveValue, schema: ZWaveValueDiscoverySchema) -> bool: ...
97
+ def check_value(value: ZwaveValue, schema: ZWaveValueDiscoverySchema, primary_value: ZwaveValue | None = None) -> bool: ...
@@ -48,7 +48,7 @@ class NumericSensorDataTemplateData:
48
48
 
49
49
  class NumericSensorDataTemplate(BaseDiscoverySchemaDataTemplate):
50
50
  @staticmethod
51
- def find_key_from_matching_set(enum_value: _T, set_map: Mapping[str, list[_T]]) -> str | None: ...
51
+ def find_key_from_matching_set[_T: Enum](enum_value: _T, set_map: Mapping[str, list[_T]]) -> str | None: ...
52
52
  def resolve_data(self, value: ZwaveValue) -> NumericSensorDataTemplateData: ...
53
53
 
54
54
  @dataclass
@@ -22,9 +22,10 @@ class ZwaveLight(ZWaveBaseEntity, LightEntity):
22
22
  _supports_color: bool
23
23
  _supports_rgbw: bool
24
24
  _supports_color_temp: bool
25
+ _supports_dimming: bool
26
+ _color_mode: Incomplete
25
27
  _hs_color: Incomplete
26
28
  _rgbw_color: Incomplete
27
- _color_mode: Incomplete
28
29
  _color_temp: Incomplete
29
30
  _min_mireds: int
30
31
  _max_mireds: int
@@ -33,6 +34,7 @@ class ZwaveLight(ZWaveBaseEntity, LightEntity):
33
34
  _supported_color_modes: Incomplete
34
35
  _target_brightness: Incomplete
35
36
  _attr_name: Incomplete
37
+ _current_color: Incomplete
36
38
  _target_color: Incomplete
37
39
  supports_brightness_transition: Incomplete
38
40
  supports_color_transition: Incomplete
@@ -59,18 +61,18 @@ class ZwaveLight(ZWaveBaseEntity, LightEntity):
59
61
  def supported_color_modes(self) -> set[ColorMode] | None: ...
60
62
  async def async_turn_on(self, **kwargs: Any) -> None: ...
61
63
  async def async_turn_off(self, **kwargs: Any) -> None: ...
64
+ def _get_new_colors(self, hs_color: tuple[float, float] | None, color_temp: int | None, rgbw: tuple[int, int, int, int] | None, brightness_scale: float | None = None) -> dict[ColorComponent, int] | None: ...
62
65
  async def _async_set_colors(self, colors: dict[ColorComponent, int], transition: float | None = None) -> None: ...
63
66
  async def _async_set_brightness(self, brightness: int | None, transition: float | None = None) -> None: ...
64
67
  def _get_color_values(self) -> tuple[Value | None, ...]: ...
65
68
  def _calculate_color_support(self) -> None: ...
66
69
  def _calculate_color_values(self) -> None: ...
67
70
 
68
- class ZwaveBlackIsOffLight(ZwaveLight):
69
- _last_color: Incomplete
71
+ class ZwaveColorOnOffLight(ZwaveLight):
72
+ _last_on_color: Incomplete
73
+ _last_brightness: Incomplete
70
74
  def __init__(self, config_entry: ConfigEntry, driver: Driver, info: ZwaveDiscoveryInfo) -> None: ...
71
75
  @property
72
- def brightness(self) -> int: ...
73
- @property
74
- def is_on(self) -> bool | None: ...
76
+ def brightness(self) -> int | None: ...
75
77
  async def async_turn_on(self, **kwargs: Any) -> None: ...
76
78
  async def async_turn_off(self, **kwargs: Any) -> None: ...
@@ -11,14 +11,17 @@ from homeassistant.helpers.dispatcher import async_dispatcher_send as async_disp
11
11
  from homeassistant.helpers.group import expand_entity_ids as expand_entity_ids
12
12
  from typing import Any
13
13
  from zwave_js_server.const import CommandClass
14
+ from zwave_js_server.model.endpoint import Endpoint
15
+ from zwave_js_server.model.node import Node as ZwaveNode
14
16
 
15
17
  _LOGGER: Incomplete
18
+ type _NodeOrEndpointType = ZwaveNode | Endpoint
16
19
  TARGET_VALIDATORS: Incomplete
17
20
 
18
21
  def parameter_name_does_not_need_bitmask(val: dict[str, int | str | list[str]]) -> dict[str, int | str | list[str]]: ...
19
22
  def check_base_2(val: int) -> int: ...
20
23
  def broadcast_command(val: dict[str, Any]) -> dict[str, Any]: ...
21
- def get_valid_responses_from_results(zwave_objects: Sequence[_T], results: Sequence[Any]) -> Generator[tuple[_T, Any]]: ...
24
+ def get_valid_responses_from_results[_T: ZwaveNode | Endpoint](zwave_objects: Sequence[_T], results: Sequence[Any]) -> Generator[tuple[_T, Any]]: ...
22
25
  def raise_exceptions_from_results(zwave_objects: Sequence[_NodeOrEndpointType], results: Sequence[Any]) -> None: ...
23
26
  async def _async_invoke_cc_api(nodes_or_endpoints: Collection[_NodeOrEndpointType], command_class: CommandClass, method_name: str, *args: Any) -> None: ...
24
27
 
@@ -58,7 +58,8 @@ class ZWaveNodeFirmwareUpdate(UpdateEntity):
58
58
  @property
59
59
  def extra_restore_state_data(self) -> ZWaveNodeFirmwareUpdateExtraStoredData: ...
60
60
  def _update_on_status_change(self, _: dict[str, Any]) -> None: ...
61
- _attr_in_progress: Incomplete
61
+ _attr_in_progress: bool
62
+ _attr_update_percentage: Incomplete
62
63
  def _update_progress(self, event: dict[str, Any]) -> None: ...
63
64
  def _update_finished(self, event: dict[str, Any]) -> None: ...
64
65
  def _unsub_firmware_events_and_reset_progress(self, write_state: bool = True) -> None: ...
@@ -1,18 +1,14 @@
1
1
  import voluptuous as vol
2
- from . import auth as auth
3
- from .const import ATTR_ASSUMED_STATE as ATTR_ASSUMED_STATE, ATTR_FRIENDLY_NAME as ATTR_FRIENDLY_NAME, ATTR_HIDDEN as ATTR_HIDDEN, CONF_ALLOWLIST_EXTERNAL_DIRS as CONF_ALLOWLIST_EXTERNAL_DIRS, CONF_ALLOWLIST_EXTERNAL_URLS as CONF_ALLOWLIST_EXTERNAL_URLS, CONF_AUTH_MFA_MODULES as CONF_AUTH_MFA_MODULES, CONF_AUTH_PROVIDERS as CONF_AUTH_PROVIDERS, CONF_COUNTRY as CONF_COUNTRY, CONF_CURRENCY as CONF_CURRENCY, CONF_CUSTOMIZE as CONF_CUSTOMIZE, CONF_CUSTOMIZE_DOMAIN as CONF_CUSTOMIZE_DOMAIN, CONF_CUSTOMIZE_GLOB as CONF_CUSTOMIZE_GLOB, CONF_DEBUG as CONF_DEBUG, CONF_ELEVATION as CONF_ELEVATION, CONF_EXTERNAL_URL as CONF_EXTERNAL_URL, CONF_ID as CONF_ID, CONF_INTERNAL_URL as CONF_INTERNAL_URL, CONF_LANGUAGE as CONF_LANGUAGE, CONF_LATITUDE as CONF_LATITUDE, CONF_LEGACY_TEMPLATES as CONF_LEGACY_TEMPLATES, CONF_LONGITUDE as CONF_LONGITUDE, CONF_MEDIA_DIRS as CONF_MEDIA_DIRS, CONF_NAME as CONF_NAME, CONF_PACKAGES as CONF_PACKAGES, CONF_PLATFORM as CONF_PLATFORM, CONF_RADIUS as CONF_RADIUS, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_TIME_ZONE as CONF_TIME_ZONE, CONF_TYPE as CONF_TYPE, CONF_UNIT_SYSTEM as CONF_UNIT_SYSTEM, LEGACY_CONF_WHITELIST_EXTERNAL_DIRS as LEGACY_CONF_WHITELIST_EXTERNAL_DIRS, __version__ as __version__
4
- from .core import ConfigSource as ConfigSource, HomeAssistant as HomeAssistant, callback as callback
2
+ from .const import CONF_PACKAGES as CONF_PACKAGES, CONF_PLATFORM as CONF_PLATFORM, __version__ as __version__
3
+ from .core import HomeAssistant as HomeAssistant, callback as callback
4
+ from .core_config import _PACKAGES_CONFIG_SCHEMA as _PACKAGES_CONFIG_SCHEMA, _PACKAGE_DEFINITION_SCHEMA as _PACKAGE_DEFINITION_SCHEMA
5
5
  from .exceptions import ConfigValidationError as ConfigValidationError, HomeAssistantError as HomeAssistantError
6
- from .generated.currencies import HISTORIC_CURRENCIES as HISTORIC_CURRENCIES
7
- from .helpers.entity_values import EntityValues as EntityValues
8
6
  from .helpers.translation import async_get_exception_message as async_get_exception_message
9
7
  from .helpers.typing import ConfigType as ConfigType
10
8
  from .loader import ComponentProtocol as ComponentProtocol, Integration as Integration, IntegrationNotFound as IntegrationNotFound
11
9
  from .requirements import RequirementsNotFound as RequirementsNotFound, async_get_integration_with_requirements as async_get_integration_with_requirements
12
10
  from .util.async_ import create_eager_task as create_eager_task
13
- from .util.hass_dict import HassKey as HassKey
14
11
  from .util.package import is_docker_env as is_docker_env
15
- from .util.unit_system import get_unit_system as get_unit_system, validate_unit_system as validate_unit_system
16
12
  from .util.yaml import SECRET_YAML as SECRET_YAML, Secrets as Secrets, YamlTypeError as YamlTypeError, load_yaml_dict as load_yaml_dict
17
13
  from .util.yaml.objects import NodeStrClass as NodeStrClass
18
14
  from _typeshed import Incomplete
@@ -27,7 +23,6 @@ RE_ASCII: Incomplete
27
23
  YAML_CONFIG_FILE: str
28
24
  VERSION_FILE: str
29
25
  CONFIG_DIR_NAME: str
30
- DATA_CUSTOMIZE: HassKey[EntityValues]
31
26
  AUTOMATION_CONFIG_PATH: str
32
27
  SCRIPT_CONFIG_PATH: str
33
28
  SCENE_CONFIG_PATH: str
@@ -68,21 +63,6 @@ class IntegrationConfigInfo:
68
63
  exception_info_list: list[ConfigExceptionInfo]
69
64
  def __init__(self, config, exception_info_list) -> None: ...
70
65
 
71
- def _no_duplicate_auth_provider(configs: Sequence[dict[str, Any]]) -> Sequence[dict[str, Any]]: ...
72
- def _no_duplicate_auth_mfa_module(configs: Sequence[dict[str, Any]]) -> Sequence[dict[str, Any]]: ...
73
- def _filter_bad_internal_external_urls(conf: dict) -> dict: ...
74
-
75
- PACKAGES_CONFIG_SCHEMA: Incomplete
76
- PACKAGE_DEFINITION_SCHEMA: Incomplete
77
- CUSTOMIZE_DICT_SCHEMA: Incomplete
78
- CUSTOMIZE_CONFIG_SCHEMA: Incomplete
79
-
80
- def _raise_issue_if_historic_currency(hass: HomeAssistant, currency: str) -> None: ...
81
- def _raise_issue_if_no_country(hass: HomeAssistant, country: str | None) -> None: ...
82
- def _validate_currency(data: Any) -> Any: ...
83
-
84
- CORE_CONFIG_SCHEMA: Incomplete
85
-
86
66
  def get_default_config_dir() -> str: ...
87
67
  async def async_ensure_config_exists(hass: HomeAssistant) -> bool: ...
88
68
  async def async_create_default_config(hass: HomeAssistant) -> bool: ...
@@ -100,7 +80,6 @@ def stringify_invalid(hass: HomeAssistant, exc: vol.Invalid, domain: str, config
100
80
  def humanize_error(hass: HomeAssistant, validation_error: vol.Invalid, domain: str, config: dict, link: str | None, max_sub_error_length: int = ...) -> str: ...
101
81
  def format_homeassistant_error(hass: HomeAssistant, exc: HomeAssistantError, domain: str, config: dict, link: str | None = None) -> str: ...
102
82
  def format_schema_error(hass: HomeAssistant, exc: vol.Invalid, domain: str, config: dict, link: str | None = None) -> str: ...
103
- async def async_process_ha_core_config(hass: HomeAssistant, config: dict) -> None: ...
104
83
  def _log_pkg_error(hass: HomeAssistant, package: str, component: str | None, config: dict, message: str) -> None: ...
105
84
  def _identify_config_schema(module: ComponentProtocol) -> str | None: ...
106
85
  def _validate_package_definition(name: str, conf: Any) -> None: ...
@@ -1,15 +1,15 @@
1
1
  import asyncio
2
+ import voluptuous as vol
2
3
  from . import data_entry_flow as data_entry_flow, loader as loader
3
4
  from .components import persistent_notification as persistent_notification
4
5
  from .components.bluetooth import BluetoothServiceInfoBleak as BluetoothServiceInfoBleak
5
6
  from .components.dhcp import DhcpServiceInfo as DhcpServiceInfo
6
- from .components.hassio import HassioServiceInfo as HassioServiceInfo
7
7
  from .components.ssdp import SsdpServiceInfo as SsdpServiceInfo
8
8
  from .components.usb import UsbServiceInfo as UsbServiceInfo
9
9
  from .components.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
10
- from .const import EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
10
+ from .const import CONF_NAME as CONF_NAME, EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
11
11
  from .core import CALLBACK_TYPE as CALLBACK_TYPE, CoreState as CoreState, Event as Event, HassJob as HassJob, HassJobType as HassJobType, HomeAssistant as HomeAssistant, callback as callback
12
- from .data_entry_flow import FLOW_NOT_COMPLETE_STEPS as FLOW_NOT_COMPLETE_STEPS, FlowResult as FlowResult
12
+ from .data_entry_flow import FLOW_NOT_COMPLETE_STEPS as FLOW_NOT_COMPLETE_STEPS, FlowContext as FlowContext, FlowResult as FlowResult
13
13
  from .exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
14
14
  from .helpers import device_registry as device_registry, entity_registry as entity_registry, storage as storage
15
15
  from .helpers.debounce import Debouncer as Debouncer
@@ -17,7 +17,8 @@ from .helpers.discovery_flow import DiscoveryKey as DiscoveryKey
17
17
  from .helpers.dispatcher import SignalType as SignalType, async_dispatcher_send_internal as async_dispatcher_send_internal
18
18
  from .helpers.event import RANDOM_MICROSECOND_MAX as RANDOM_MICROSECOND_MAX, RANDOM_MICROSECOND_MIN as RANDOM_MICROSECOND_MIN, async_call_later as async_call_later
19
19
  from .helpers.frame import report as report
20
- from .helpers.json import json_bytes as json_bytes, json_fragment as json_fragment
20
+ from .helpers.json import json_bytes as json_bytes, json_bytes_sorted as json_bytes_sorted, json_fragment as json_fragment
21
+ from .helpers.service_info.hassio import HassioServiceInfo as HassioServiceInfo
21
22
  from .helpers.service_info.mqtt import MqttServiceInfo as MqttServiceInfo
22
23
  from .helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
23
24
  from .loader import async_suggest_report_issue as async_suggest_report_issue
@@ -32,7 +33,6 @@ from collections.abc import Callable, Coroutine, Generator, Iterable, Mapping, V
32
33
  from contextvars import ContextVar
33
34
  from datetime import datetime
34
35
  from enum import Enum, StrEnum
35
- from functools import cached_property as cached_property
36
36
  from types import MappingProxyType
37
37
  from typing import Any, Generic, Self
38
38
  from typing_extensions import TypeVar
@@ -61,6 +61,8 @@ STORAGE_VERSION: int
61
61
  STORAGE_VERSION_MINOR: int
62
62
  SAVE_DELAY: int
63
63
  DISCOVERY_COOLDOWN: int
64
+ ISSUE_UNIQUE_ID_COLLISION: str
65
+ UNIQUE_ID_COLLISION_TITLE_LIMIT: int
64
66
  _DataT = TypeVar('_DataT', default=Any)
65
67
 
66
68
  class ConfigEntryState(Enum):
@@ -107,11 +109,22 @@ CONN_CLASS_UNKNOWN: str
107
109
  class ConfigError(HomeAssistantError): ...
108
110
  class UnknownEntry(ConfigError): ...
109
111
  class OperationNotAllowed(ConfigError): ...
112
+ type UpdateListenerType = Callable[[HomeAssistant, ConfigEntry], Coroutine[Any, Any, None]]
110
113
 
114
+ STATE_KEYS: Incomplete
111
115
  FROZEN_CONFIG_ENTRY_ATTRS: Incomplete
112
116
  UPDATE_ENTRY_CONFIG_ENTRY_ATTRS: Incomplete
113
117
 
114
- class ConfigFlowResult(FlowResult, total=False):
118
+ class ConfigFlowContext(FlowContext, total=False):
119
+ alternative_domain: str
120
+ configuration_url: str
121
+ confirm_only: bool
122
+ discovery_key: DiscoveryKey
123
+ entry_id: str
124
+ title_placeholders: Mapping[str, str]
125
+ unique_id: str | None
126
+
127
+ class ConfigFlowResult(FlowResult[ConfigFlowContext, str], total=False):
115
128
  minor_version: int
116
129
  options: Mapping[str, Any]
117
130
  version: int
@@ -145,7 +158,6 @@ class ConfigEntry(Generic[_DataT]):
145
158
  _on_unload: list[Callable[[], Coroutine[Any, Any, None] | None]] | None
146
159
  setup_lock: asyncio.Lock
147
160
  _reauth_lock: asyncio.Lock
148
- _reconfigure_lock: asyncio.Lock
149
161
  _tasks: set[asyncio.Future[Any]]
150
162
  _background_tasks: set[asyncio.Future[Any]]
151
163
  _integration_for_domain: loader.Integration | None
@@ -160,10 +172,12 @@ class ConfigEntry(Generic[_DataT]):
160
172
  def supports_options(self) -> bool: ...
161
173
  @property
162
174
  def supports_reconfigure(self) -> bool: ...
163
- def clear_cache(self) -> None: ...
164
- @cached_property
175
+ def clear_state_cache(self) -> None: ...
165
176
  def as_json_fragment(self) -> json_fragment: ...
177
+ def clear_storage_cache(self) -> None: ...
178
+ def as_storage_fragment(self) -> json_fragment: ...
166
179
  async def async_setup(self, hass: HomeAssistant, *, integration: loader.Integration | None = None) -> None: ...
180
+ async def __async_setup_with_context(self, hass: HomeAssistant, integration: loader.Integration | None) -> None: ...
167
181
  def _async_setup_again(self, hass: HomeAssistant, *_: Any) -> None: ...
168
182
  async def async_setup_locked(self, hass: HomeAssistant, integration: loader.Integration | None = None) -> None: ...
169
183
  def async_shutdown(self) -> None: ...
@@ -176,13 +190,11 @@ class ConfigEntry(Generic[_DataT]):
176
190
  def as_dict(self) -> dict[str, Any]: ...
177
191
  def async_on_unload(self, func: Callable[[], Coroutine[Any, Any, None] | None]) -> None: ...
178
192
  async def _async_process_on_unload(self, hass: HomeAssistant) -> None: ...
179
- def async_start_reauth(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
180
- async def _async_init_reauth(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
181
- def async_start_reconfigure(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
182
- async def _async_init_reconfigure(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
193
+ def async_start_reauth(self, hass: HomeAssistant, context: ConfigFlowContext | None = None, data: dict[str, Any] | None = None) -> None: ...
194
+ async def _async_init_reauth(self, hass: HomeAssistant, context: ConfigFlowContext | None = None, data: dict[str, Any] | None = None) -> None: ...
183
195
  def async_get_active_flows(self, hass: HomeAssistant, sources: set[str]) -> Generator[ConfigFlowResult]: ...
184
- def async_create_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = True) -> asyncio.Task[_R]: ...
185
- def async_create_background_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = True) -> asyncio.Task[_R]: ...
196
+ def async_create_task[_R](self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = True) -> asyncio.Task[_R]: ...
197
+ def async_create_background_task[_R](self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = True) -> asyncio.Task[_R]: ...
186
198
 
187
199
  current_entry: ContextVar[ConfigEntry | None]
188
200
 
@@ -190,7 +202,7 @@ class FlowCancelledError(Exception): ...
190
202
 
191
203
  def _report_non_awaited_platform_forwards(entry: ConfigEntry, what: str) -> None: ...
192
204
 
193
- class ConfigEntriesFlowManager(data_entry_flow.FlowManager[ConfigFlowResult]):
205
+ class ConfigEntriesFlowManager(data_entry_flow.FlowManager[ConfigFlowContext, ConfigFlowResult]):
194
206
  _flow_result = ConfigFlowResult
195
207
  config_entries: Incomplete
196
208
  _hass_config: Incomplete
@@ -200,14 +212,16 @@ class ConfigEntriesFlowManager(data_entry_flow.FlowManager[ConfigFlowResult]):
200
212
  def __init__(self, hass: HomeAssistant, config_entries: ConfigEntries, hass_config: ConfigType) -> None: ...
201
213
  async def async_wait_import_flow_initialized(self, handler: str) -> None: ...
202
214
  def _async_has_other_discovery_flows(self, flow_id: str) -> bool: ...
203
- async def async_init(self, handler: str, *, context: dict[str, Any] | None = None, data: Any = None) -> ConfigFlowResult: ...
204
- async def _async_init(self, flow_id: str, handler: str, context: dict, data: Any) -> tuple[ConfigFlow, ConfigFlowResult]: ...
215
+ async def async_init(self, handler: str, *, context: ConfigFlowContext | None = None, data: Any = None) -> ConfigFlowResult: ...
216
+ async def _async_init(self, flow_id: str, handler: str, context: ConfigFlowContext, data: Any) -> tuple[ConfigFlow, ConfigFlowResult]: ...
205
217
  def _set_pending_import_done(self, flow: ConfigFlow) -> None: ...
206
218
  def async_shutdown(self) -> None: ...
207
- async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
208
- async def async_create_flow(self, handler_key: str, *, context: dict | None = None, data: Any = None) -> ConfigFlow: ...
209
- async def async_post_init(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult], result: ConfigFlowResult) -> None: ...
219
+ async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
220
+ async def async_create_flow(self, handler_key: str, *, context: ConfigFlowContext | None = None, data: Any = None) -> ConfigFlow: ...
221
+ async def async_post_init(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult], result: ConfigFlowResult) -> None: ...
210
222
  def _async_discovery(self) -> None: ...
223
+ def async_has_matching_discovery_flow(self, handler: str, match_context: ConfigFlowContext, data: Any) -> bool: ...
224
+ def async_has_matching_flow(self, flow: ConfigFlow) -> bool: ...
211
225
 
212
226
  class ConfigEntryItems(UserDict[str, ConfigEntry]):
213
227
  _hass: Incomplete
@@ -216,6 +230,7 @@ class ConfigEntryItems(UserDict[str, ConfigEntry]):
216
230
  def __init__(self, hass: HomeAssistant) -> None: ...
217
231
  def values(self) -> ValuesView[ConfigEntry]: ...
218
232
  def __setitem__(self, entry_id: str, entry: ConfigEntry) -> None: ...
233
+ def check_unique_id(self, entry: ConfigEntry) -> None: ...
219
234
  def _index_entry(self, entry: ConfigEntry) -> None: ...
220
235
  def _unindex_entry(self, entry_id: str) -> None: ...
221
236
  def __delitem__(self, entry_id: str) -> None: ...
@@ -262,10 +277,11 @@ class ConfigEntries:
262
277
  def _async_schedule_save(self) -> None: ...
263
278
  def _data_to_save(self) -> dict[str, list[dict[str, Any]]]: ...
264
279
  async def async_wait_component(self, entry: ConfigEntry) -> bool: ...
280
+ def async_update_issues(self) -> None: ...
265
281
 
266
282
  def _async_abort_entries_match(other_entries: list[ConfigEntry], match_dict: dict[str, Any] | None = None) -> None: ...
267
283
 
268
- class ConfigEntryBaseFlow(data_entry_flow.FlowHandler[ConfigFlowResult]):
284
+ class ConfigEntryBaseFlow(data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult]):
269
285
  _flow_result = ConfigFlowResult
270
286
 
271
287
  class ConfigFlow(ConfigEntryBaseFlow):
@@ -277,6 +293,7 @@ class ConfigFlow(ConfigEntryBaseFlow):
277
293
  @classmethod
278
294
  def async_supports_options_flow(cls, config_entry: ConfigEntry) -> bool: ...
279
295
  def _async_abort_entries_match(self, match_dict: dict[str, Any] | None = None) -> None: ...
296
+ def _abort_if_unique_id_mismatch(self, *, reason: str = 'unique_id_mismatch', description_placeholders: Mapping[str, str] | None = None) -> None: ...
280
297
  def _abort_if_unique_id_configured(self, updates: dict[str, Any] | None = None, reload_on_update: bool = True, *, error: str = 'already_configured') -> None: ...
281
298
  async def async_set_unique_id(self, unique_id: str | None = None, *, raise_on_progress: bool = True) -> ConfigEntry | None: ...
282
299
  def _set_confirm_only(self) -> None: ...
@@ -299,14 +316,22 @@ class ConfigFlow(ConfigEntryBaseFlow):
299
316
  async def async_step_usb(self, discovery_info: UsbServiceInfo) -> ConfigFlowResult: ...
300
317
  async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
301
318
  def async_create_entry(self, *, title: str, data: Mapping[str, Any], description: str | None = None, description_placeholders: Mapping[str, str] | None = None, options: Mapping[str, Any] | None = None) -> ConfigFlowResult: ...
302
- def async_update_reload_and_abort(self, entry: ConfigEntry, *, unique_id: str | None | UndefinedType = ..., title: str | UndefinedType = ..., data: Mapping[str, Any] | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., reason: str = 'reauth_successful', reload_even_if_entry_is_unchanged: bool = True) -> ConfigFlowResult: ...
319
+ def async_update_reload_and_abort(self, entry: ConfigEntry, *, unique_id: str | None | UndefinedType = ..., title: str | UndefinedType = ..., data: Mapping[str, Any] | UndefinedType = ..., data_updates: Mapping[str, Any] | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., reason: str | UndefinedType = ..., reload_even_if_entry_is_unchanged: bool = True) -> ConfigFlowResult: ...
320
+ def async_show_form(self, *, step_id: str | None = None, data_schema: vol.Schema | None = None, errors: dict[str, str] | None = None, description_placeholders: Mapping[str, str | None] | None = None, last_step: bool | None = None, preview: str | None = None) -> ConfigFlowResult: ...
321
+ def is_matching(self, other_flow: Self) -> bool: ...
322
+ @property
323
+ def _reauth_entry_id(self) -> str: ...
324
+ def _get_reauth_entry(self) -> ConfigEntry: ...
325
+ @property
326
+ def _reconfigure_entry_id(self) -> str: ...
327
+ def _get_reconfigure_entry(self) -> ConfigEntry: ...
303
328
 
304
- class OptionsFlowManager(data_entry_flow.FlowManager[ConfigFlowResult]):
329
+ class OptionsFlowManager(data_entry_flow.FlowManager[ConfigFlowContext, ConfigFlowResult]):
305
330
  _flow_result = ConfigFlowResult
306
331
  def _async_get_config_entry(self, config_entry_id: str) -> ConfigEntry: ...
307
- async def async_create_flow(self, handler_key: str, *, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> OptionsFlow: ...
308
- async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
309
- async def _async_setup_preview(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult]) -> None: ...
332
+ async def async_create_flow(self, handler_key: str, *, context: ConfigFlowContext | None = None, data: dict[str, Any] | None = None) -> OptionsFlow: ...
333
+ async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
334
+ async def _async_setup_preview(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult]) -> None: ...
310
335
 
311
336
  class OptionsFlow(ConfigEntryBaseFlow):
312
337
  handler: str