homeassistant-stubs 2025.9.0b0__py3-none-any.whl → 2026.1.0b0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1082) hide show
  1. homeassistant-stubs/auth/mfa_modules/totp.pyi +2 -0
  2. homeassistant-stubs/auth/permissions/events.pyi +1 -1
  3. homeassistant-stubs/components/acaia/coordinator.pyi +3 -0
  4. homeassistant-stubs/components/accuweather/__init__.pyi +3 -3
  5. homeassistant-stubs/components/accuweather/config_flow.pyi +5 -0
  6. homeassistant-stubs/components/accuweather/const.pyi +1 -0
  7. homeassistant-stubs/components/accuweather/coordinator.pyi +17 -4
  8. homeassistant-stubs/components/accuweather/weather.pyi +5 -2
  9. homeassistant-stubs/components/adax/config_flow.pyi +1 -0
  10. homeassistant-stubs/components/adax/sensor.pyi +13 -11
  11. homeassistant-stubs/components/adguard/update.pyi +26 -0
  12. homeassistant-stubs/components/airgradient/update.pyi +5 -0
  13. homeassistant-stubs/components/airly/config_flow.pyi +3 -0
  14. homeassistant-stubs/components/airnow/config_flow.pyi +1 -0
  15. homeassistant-stubs/components/airos/__init__.pyi +6 -2
  16. homeassistant-stubs/components/airos/binary_sensor.pyi +2 -2
  17. homeassistant-stubs/components/airos/config_flow.pyi +15 -4
  18. homeassistant-stubs/components/airos/const.pyi +3 -0
  19. homeassistant-stubs/components/airos/coordinator.pyi +5 -5
  20. homeassistant-stubs/components/airos/entity.pyi +2 -2
  21. homeassistant-stubs/components/airos/sensor.pyi +2 -2
  22. homeassistant-stubs/components/airthings/config_flow.pyi +1 -0
  23. homeassistant-stubs/components/airthings_ble/config_flow.pyi +5 -3
  24. homeassistant-stubs/components/airthings_ble/const.pyi +4 -0
  25. homeassistant-stubs/components/airthings_ble/coordinator.pyi +2 -1
  26. homeassistant-stubs/components/airthings_ble/sensor.pyi +2 -1
  27. homeassistant-stubs/components/airzone/select.pyi +1 -0
  28. homeassistant-stubs/components/aladdin_connect/config_flow.pyi +1 -0
  29. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +0 -10
  30. homeassistant-stubs/components/alarm_control_panel/trigger.pyi +17 -0
  31. homeassistant-stubs/components/alexa/handlers.pyi +1 -1
  32. homeassistant-stubs/components/alexa_devices/__init__.pyi +1 -1
  33. homeassistant-stubs/components/alexa_devices/binary_sensor.pyi +7 -1
  34. homeassistant-stubs/components/alexa_devices/const.pyi +4 -1
  35. homeassistant-stubs/components/alexa_devices/coordinator.pyi +4 -1
  36. homeassistant-stubs/components/alexa_devices/diagnostics.pyi +1 -1
  37. homeassistant-stubs/components/alexa_devices/entity.pyi +1 -1
  38. homeassistant-stubs/components/alexa_devices/notify.pyi +2 -1
  39. homeassistant-stubs/components/alexa_devices/sensor.pyi +17 -4
  40. homeassistant-stubs/components/alexa_devices/services.pyi +0 -1
  41. homeassistant-stubs/components/alexa_devices/switch.pyi +5 -3
  42. homeassistant-stubs/components/alexa_devices/utils.pyi +5 -1
  43. homeassistant-stubs/components/amberelectric/__init__.pyi +1 -1
  44. homeassistant-stubs/components/amberelectric/services.pyi +3 -2
  45. homeassistant-stubs/components/analytics/__init__.pyi +4 -21
  46. homeassistant-stubs/components/analytics/analytics.pyi +63 -11
  47. homeassistant-stubs/components/analytics/const.pyi +6 -2
  48. homeassistant-stubs/components/androidtv/__init__.pyi +5 -1
  49. homeassistant-stubs/components/androidtv/config_flow.pyi +1 -1
  50. homeassistant-stubs/components/androidtv/const.pyi +1 -1
  51. homeassistant-stubs/components/androidtv/media_player.pyi +1 -10
  52. homeassistant-stubs/components/androidtv/services.pyi +16 -0
  53. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +2 -0
  54. homeassistant-stubs/components/androidtv_remote/entity.pyi +1 -3
  55. homeassistant-stubs/components/apcupsd/const.pyi +3 -0
  56. homeassistant-stubs/components/apcupsd/sensor.pyi +5 -1
  57. homeassistant-stubs/components/apple_tv/__init__.pyi +3 -3
  58. homeassistant-stubs/components/assist_pipeline/__init__.pyi +4 -4
  59. homeassistant-stubs/components/assist_pipeline/audio_enhancer.pyi +8 -3
  60. homeassistant-stubs/components/assist_pipeline/const.pyi +1 -0
  61. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +9 -6
  62. homeassistant-stubs/components/assist_pipeline/select.pyi +1 -1
  63. homeassistant-stubs/components/assist_satellite/trigger.pyi +8 -0
  64. homeassistant-stubs/components/asuswrt/bridge.pyi +24 -10
  65. homeassistant-stubs/components/asuswrt/config_flow.pyi +1 -1
  66. homeassistant-stubs/components/asuswrt/device_tracker.pyi +0 -3
  67. homeassistant-stubs/components/asuswrt/helpers.pyi +2 -3
  68. homeassistant-stubs/components/asuswrt/router.pyi +1 -1
  69. homeassistant-stubs/components/autarco/sensor.pyi +8 -6
  70. homeassistant-stubs/components/auth/login_flow.pyi +1 -1
  71. homeassistant-stubs/components/automation/__init__.pyi +10 -2
  72. homeassistant-stubs/components/backblaze_b2/__init__.pyi +15 -0
  73. homeassistant-stubs/components/backblaze_b2/b2_client.pyi +15 -0
  74. homeassistant-stubs/components/backblaze_b2/backup.pyi +60 -0
  75. homeassistant-stubs/components/backblaze_b2/config_flow.pyi +21 -0
  76. homeassistant-stubs/components/backblaze_b2/const.pyi +13 -0
  77. homeassistant-stubs/components/backblaze_b2/diagnostics.pyi +11 -0
  78. homeassistant-stubs/components/backblaze_b2/repairs.pyi +15 -0
  79. homeassistant-stubs/components/backup/http.pyi +1 -0
  80. homeassistant-stubs/components/backup/manager.pyi +2 -1
  81. homeassistant-stubs/components/backup/util.pyi +2 -32
  82. homeassistant-stubs/components/bang_olufsen/__init__.pyi +6 -6
  83. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +2 -2
  84. homeassistant-stubs/components/bang_olufsen/const.pyi +46 -13
  85. homeassistant-stubs/components/bang_olufsen/diagnostics.pyi +5 -3
  86. homeassistant-stubs/components/bang_olufsen/entity.pyi +2 -2
  87. homeassistant-stubs/components/bang_olufsen/event.pyi +23 -8
  88. homeassistant-stubs/components/bang_olufsen/media_player.pyi +15 -12
  89. homeassistant-stubs/components/bang_olufsen/util.pyi +6 -1
  90. homeassistant-stubs/components/bang_olufsen/websocket.pyi +7 -6
  91. homeassistant-stubs/components/binary_sensor/trigger.pyi +20 -0
  92. homeassistant-stubs/components/blue_current/__init__.pyi +6 -0
  93. homeassistant-stubs/components/blue_current/const.pyi +6 -0
  94. homeassistant-stubs/components/blue_current/services.pyi +12 -0
  95. homeassistant-stubs/components/bluesound/__init__.pyi +2 -1
  96. homeassistant-stubs/components/bluesound/const.pyi +4 -0
  97. homeassistant-stubs/components/bluesound/media_player.pyi +11 -9
  98. homeassistant-stubs/components/bluesound/utils.pyi +2 -0
  99. homeassistant-stubs/components/bluetooth/__init__.pyi +2 -5
  100. homeassistant-stubs/components/bluetooth/api.pyi +7 -2
  101. homeassistant-stubs/components/bluetooth/manager.pyi +9 -1
  102. homeassistant-stubs/components/bluetooth/match.pyi +2 -1
  103. homeassistant-stubs/components/bluetooth/websocket_api.pyi +6 -1
  104. homeassistant-stubs/components/brother/__init__.pyi +5 -3
  105. homeassistant-stubs/components/brother/config_flow.pyi +6 -2
  106. homeassistant-stubs/components/brother/const.pyi +6 -0
  107. homeassistant-stubs/components/brother/entity.pyi +10 -0
  108. homeassistant-stubs/components/brother/sensor.pyi +6 -9
  109. homeassistant-stubs/components/bryant_evolution/climate.pyi +2 -2
  110. homeassistant-stubs/components/bthome/sensor.pyi +1 -1
  111. homeassistant-stubs/components/button/trigger.pyi +14 -0
  112. homeassistant-stubs/components/calendar/trigger.pyi +23 -10
  113. homeassistant-stubs/components/camera/__init__.pyi +4 -11
  114. homeassistant-stubs/components/camera/prefs.pyi +3 -1
  115. homeassistant-stubs/components/camera/webrtc.pyi +2 -5
  116. homeassistant-stubs/components/cert_expiry/config_flow.pyi +1 -1
  117. homeassistant-stubs/components/cert_expiry/errors.pyi +1 -0
  118. homeassistant-stubs/components/cert_expiry/helper.pyi +1 -1
  119. homeassistant-stubs/components/climate/trigger.pyi +18 -0
  120. homeassistant-stubs/components/cloud/__init__.pyi +8 -2
  121. homeassistant-stubs/components/cloud/ai_task.pyi +26 -0
  122. homeassistant-stubs/components/cloud/client.pyi +4 -1
  123. homeassistant-stubs/components/cloud/const.pyi +4 -1
  124. homeassistant-stubs/components/cloud/conversation.pyi +24 -0
  125. homeassistant-stubs/components/cloud/entity.pyi +40 -0
  126. homeassistant-stubs/components/cloud/http_api.pyi +6 -0
  127. homeassistant-stubs/components/co2signal/config_flow.pyi +1 -0
  128. homeassistant-stubs/components/comelit/__init__.pyi +2 -1
  129. homeassistant-stubs/components/comelit/alarm_control_panel.pyi +4 -4
  130. homeassistant-stubs/components/comelit/binary_sensor.pyi +10 -4
  131. homeassistant-stubs/components/comelit/config_flow.pyi +5 -3
  132. homeassistant-stubs/components/comelit/const.pyi +3 -0
  133. homeassistant-stubs/components/comelit/coordinator.pyi +14 -10
  134. homeassistant-stubs/components/comelit/cover.pyi +4 -3
  135. homeassistant-stubs/components/comelit/light.pyi +2 -1
  136. homeassistant-stubs/components/comelit/sensor.pyi +6 -6
  137. homeassistant-stubs/components/comelit/switch.pyi +2 -1
  138. homeassistant-stubs/components/comelit/utils.pyi +4 -2
  139. homeassistant-stubs/components/compit/__init__.pyi +11 -0
  140. homeassistant-stubs/components/compit/climate.pyi +63 -0
  141. homeassistant-stubs/components/compit/config_flow.pyi +17 -0
  142. homeassistant-stubs/components/compit/const.pyi +2 -0
  143. homeassistant-stubs/components/compit/coordinator.pyi +16 -0
  144. homeassistant-stubs/components/config/area_registry.pyi +3 -0
  145. homeassistant-stubs/components/config/config_entries.pyi +5 -1
  146. homeassistant-stubs/components/config/floor_registry.pyi +3 -0
  147. homeassistant-stubs/components/cookidoo/calendar.pyi +25 -0
  148. homeassistant-stubs/components/cookidoo/coordinator.pyi +2 -0
  149. homeassistant-stubs/components/cover/__init__.pyi +1 -11
  150. homeassistant-stubs/components/deconz/hub/hub.pyi +0 -1
  151. homeassistant-stubs/components/deconz/services.pyi +0 -1
  152. homeassistant-stubs/components/demo/valve.pyi +14 -5
  153. homeassistant-stubs/components/derivative/__init__.pyi +0 -1
  154. homeassistant-stubs/components/derivative/config_flow.pyi +1 -0
  155. homeassistant-stubs/components/derivative/diagnostics.pyi +5 -0
  156. homeassistant-stubs/components/derivative/sensor.pyi +6 -3
  157. homeassistant-stubs/components/device_automation/condition.pyi +8 -9
  158. homeassistant-stubs/components/device_tracker/trigger.pyi +8 -0
  159. homeassistant-stubs/components/devolo_home_control/__init__.pyi +3 -0
  160. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
  161. homeassistant-stubs/components/devolo_home_control/entity.pyi +1 -2
  162. homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
  163. homeassistant-stubs/components/devolo_home_control/subscriber.pyi +0 -1
  164. homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
  165. homeassistant-stubs/components/dnsip/sensor.pyi +6 -2
  166. homeassistant-stubs/components/doorbird/config_flow.pyi +3 -0
  167. homeassistant-stubs/components/doorbird/device.pyi +1 -0
  168. homeassistant-stubs/components/droplet/__init__.pyi +10 -0
  169. homeassistant-stubs/components/droplet/config_flow.pyi +15 -0
  170. homeassistant-stubs/components/droplet/const.pyi +7 -0
  171. homeassistant-stubs/components/droplet/coordinator.pyi +23 -0
  172. homeassistant-stubs/components/droplet/sensor.pyi +37 -0
  173. homeassistant-stubs/components/duckdns/__init__.pyi +7 -21
  174. homeassistant-stubs/components/duckdns/config_flow.pyi +18 -0
  175. homeassistant-stubs/components/duckdns/const.pyi +6 -0
  176. homeassistant-stubs/components/duckdns/coordinator.pyi +20 -0
  177. homeassistant-stubs/components/duckdns/helpers.pyi +6 -0
  178. homeassistant-stubs/components/duckdns/issue.pyi +6 -0
  179. homeassistant-stubs/components/duckdns/services.pyi +16 -0
  180. homeassistant-stubs/components/ecovacs/button.pyi +1 -1
  181. homeassistant-stubs/components/ecovacs/number.pyi +4 -1
  182. homeassistant-stubs/components/ecovacs/select.pyi +16 -2
  183. homeassistant-stubs/components/eheimdigital/sensor.pyi +1 -2
  184. homeassistant-stubs/components/elkm1/__init__.pyi +21 -1
  185. homeassistant-stubs/components/elkm1/config_flow.pyi +3 -1
  186. homeassistant-stubs/components/elkm1/sensor.pyi +8 -1
  187. homeassistant-stubs/components/energy/data.pyi +15 -2
  188. homeassistant-stubs/components/energy/sensor.pyi +1 -1
  189. homeassistant-stubs/components/energy/validate.pyi +13 -1
  190. homeassistant-stubs/components/energyid/__init__.pyi +30 -0
  191. homeassistant-stubs/components/energyid/config_flow.pyi +26 -0
  192. homeassistant-stubs/components/energyid/const.pyi +13 -0
  193. homeassistant-stubs/components/energyid/energyid_sensor_mapping_flow.pyi +19 -0
  194. homeassistant-stubs/components/enphase_envoy/sensor.pyi +6 -28
  195. homeassistant-stubs/components/eq3btsmart/sensor.pyi +1 -2
  196. homeassistant-stubs/components/esphome/__init__.pyi +4 -1
  197. homeassistant-stubs/components/esphome/analytics.pyi +4 -0
  198. homeassistant-stubs/components/esphome/assist_satellite.pyi +17 -3
  199. homeassistant-stubs/components/esphome/climate.pyi +3 -0
  200. homeassistant-stubs/components/esphome/config_flow.pyi +11 -5
  201. homeassistant-stubs/components/esphome/const.pyi +3 -0
  202. homeassistant-stubs/components/esphome/entity.pyi +1 -2
  203. homeassistant-stubs/components/esphome/entry_data.pyi +9 -5
  204. homeassistant-stubs/components/esphome/lock.pyi +1 -1
  205. homeassistant-stubs/components/esphome/manager.pyi +15 -5
  206. homeassistant-stubs/components/esphome/repairs.pyi +1 -3
  207. homeassistant-stubs/components/esphome/select.pyi +5 -4
  208. homeassistant-stubs/components/esphome/websocket_api.pyi +15 -0
  209. homeassistant-stubs/components/evohome/climate.pyi +1 -1
  210. homeassistant-stubs/components/fan/trigger.pyi +8 -0
  211. homeassistant-stubs/components/fastdotcom/coordinator.pyi +2 -2
  212. homeassistant-stubs/components/fastdotcom/sensor.pyi +1 -1
  213. homeassistant-stubs/components/filter/__init__.pyi +0 -1
  214. homeassistant-stubs/components/filter/config_flow.pyi +1 -0
  215. homeassistant-stubs/components/firefly_iii/__init__.pyi +8 -0
  216. homeassistant-stubs/components/firefly_iii/config_flow.pyi +25 -0
  217. homeassistant-stubs/components/firefly_iii/const.pyi +3 -0
  218. homeassistant-stubs/components/firefly_iii/coordinator.pyi +30 -0
  219. homeassistant-stubs/components/firefly_iii/diagnostics.pyi +11 -0
  220. homeassistant-stubs/components/firefly_iii/entity.pyi +30 -0
  221. homeassistant-stubs/components/firefly_iii/sensor.pyi +66 -0
  222. homeassistant-stubs/components/fitbit/api.pyi +8 -3
  223. homeassistant-stubs/components/fitbit/coordinator.pyi +3 -3
  224. homeassistant-stubs/components/fitbit/model.pyi +0 -8
  225. homeassistant-stubs/components/fitbit/sensor.pyi +4 -3
  226. homeassistant-stubs/components/fritz/coordinator.pyi +4 -0
  227. homeassistant-stubs/components/fritz/models.pyi +2 -2
  228. homeassistant-stubs/components/fritz/sensor.pyi +2 -1
  229. homeassistant-stubs/components/fritz/services.pyi +3 -0
  230. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +2 -0
  231. homeassistant-stubs/components/fritzbox/button.pyi +2 -0
  232. homeassistant-stubs/components/fritzbox/climate.pyi +3 -5
  233. homeassistant-stubs/components/fritzbox/coordinator.pyi +4 -1
  234. homeassistant-stubs/components/fritzbox/cover.pyi +2 -0
  235. homeassistant-stubs/components/fritzbox/light.pyi +2 -0
  236. homeassistant-stubs/components/fritzbox/sensor.pyi +2 -0
  237. homeassistant-stubs/components/fritzbox/switch.pyi +15 -1
  238. homeassistant-stubs/components/frontend/__init__.pyi +12 -5
  239. homeassistant-stubs/components/frontend/storage.pyi +28 -1
  240. homeassistant-stubs/components/generic_hygrostat/__init__.pyi +0 -1
  241. homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
  242. homeassistant-stubs/components/generic_thermostat/__init__.pyi +0 -1
  243. homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -0
  244. homeassistant-stubs/components/geocaching/entity.pyi +14 -0
  245. homeassistant-stubs/components/geocaching/sensor.pyi +25 -5
  246. homeassistant-stubs/components/gios/coordinator.pyi +4 -1
  247. homeassistant-stubs/components/gios/sensor.pyi +4 -4
  248. homeassistant-stubs/components/github/__init__.pyi +12 -0
  249. homeassistant-stubs/components/github/config_flow.pyi +28 -0
  250. homeassistant-stubs/components/github/const.pyi +10 -0
  251. homeassistant-stubs/components/github/coordinator.pyi +26 -0
  252. homeassistant-stubs/components/github/diagnostics.pyi +7 -0
  253. homeassistant-stubs/components/github/sensor.pyi +37 -0
  254. homeassistant-stubs/components/go2rtc/__init__.pyi +20 -6
  255. homeassistant-stubs/components/go2rtc/server.pyi +14 -5
  256. homeassistant-stubs/components/go2rtc/util.pyi +5 -0
  257. homeassistant-stubs/components/google/__init__.pyi +0 -1
  258. homeassistant-stubs/components/google/config_flow.pyi +3 -3
  259. homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +2 -1
  260. homeassistant-stubs/components/google_assistant_sdk/helpers.pyi +1 -1
  261. homeassistant-stubs/components/google_cloud/__init__.pyi +0 -1
  262. homeassistant-stubs/components/google_cloud/config_flow.pyi +2 -2
  263. homeassistant-stubs/components/google_drive/__init__.pyi +4 -2
  264. homeassistant-stubs/components/google_drive/api.pyi +11 -0
  265. homeassistant-stubs/components/google_drive/config_flow.pyi +1 -2
  266. homeassistant-stubs/components/google_drive/const.pyi +4 -0
  267. homeassistant-stubs/components/google_drive/coordinator.pyi +24 -0
  268. homeassistant-stubs/components/google_drive/diagnostics.pyi +12 -0
  269. homeassistant-stubs/components/google_drive/entity.pyi +9 -0
  270. homeassistant-stubs/components/google_drive/sensor.pyi +28 -0
  271. homeassistant-stubs/components/google_photos/media_source.pyi +2 -2
  272. homeassistant-stubs/components/google_sheets/services.pyi +10 -2
  273. homeassistant-stubs/components/google_weather/__init__.pyi +11 -0
  274. homeassistant-stubs/components/google_weather/config_flow.pyi +29 -0
  275. homeassistant-stubs/components/google_weather/const.pyi +5 -0
  276. homeassistant-stubs/components/google_weather/coordinator.pyi +42 -0
  277. homeassistant-stubs/components/google_weather/entity.pyi +12 -0
  278. homeassistant-stubs/components/google_weather/sensor.pyi +27 -0
  279. homeassistant-stubs/components/google_weather/weather.pyi +56 -0
  280. homeassistant-stubs/components/group/__init__.pyi +0 -1
  281. homeassistant-stubs/components/group/config_flow.pyi +2 -0
  282. homeassistant-stubs/components/group/entity.pyi +3 -0
  283. homeassistant-stubs/components/group/light.pyi +1 -1
  284. homeassistant-stubs/components/group/notify.pyi +2 -2
  285. homeassistant-stubs/components/group/sensor.pyi +1 -1
  286. homeassistant-stubs/components/group/util.pyi +1 -0
  287. homeassistant-stubs/components/group/valve.pyi +47 -0
  288. homeassistant-stubs/components/habitica/__init__.pyi +1 -0
  289. homeassistant-stubs/components/habitica/binary_sensor.pyi +1 -1
  290. homeassistant-stubs/components/habitica/config_flow.pyi +11 -3
  291. homeassistant-stubs/components/habitica/const.pyi +2 -0
  292. homeassistant-stubs/components/habitica/coordinator.pyi +9 -3
  293. homeassistant-stubs/components/habitica/entity.pyi +15 -2
  294. homeassistant-stubs/components/habitica/image.pyi +6 -2
  295. homeassistant-stubs/components/habitica/notify.pyi +42 -0
  296. homeassistant-stubs/components/habitica/sensor.pyi +12 -5
  297. homeassistant-stubs/components/habitica/services.pyi +2 -1
  298. homeassistant-stubs/components/habitica/util.pyi +1 -0
  299. homeassistant-stubs/components/hardkernel/hardware.pyi +1 -1
  300. homeassistant-stubs/components/hardware/__init__.pyi +2 -10
  301. homeassistant-stubs/components/here_travel_time/__init__.pyi +3 -1
  302. homeassistant-stubs/components/history_stats/__init__.pyi +0 -1
  303. homeassistant-stubs/components/history_stats/config_flow.pyi +8 -2
  304. homeassistant-stubs/components/history_stats/diagnostics.pyi +5 -0
  305. homeassistant-stubs/components/history_stats/sensor.pyi +1 -1
  306. homeassistant-stubs/components/home_connect/__init__.pyi +1 -1
  307. homeassistant-stubs/components/home_connect/const.pyi +4 -0
  308. homeassistant-stubs/components/home_connect/coordinator.pyi +0 -1
  309. homeassistant-stubs/components/home_connect/entity.pyi +0 -1
  310. homeassistant-stubs/components/home_connect/select.pyi +1 -1
  311. homeassistant-stubs/components/home_connect/sensor.pyi +1 -1
  312. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -1
  313. homeassistant-stubs/components/homeassistant_green/config_flow.pyi +4 -2
  314. homeassistant-stubs/components/homeassistant_green/hardware.pyi +1 -1
  315. homeassistant-stubs/components/homeassistant_hardware/const.pyi +2 -0
  316. homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +51 -15
  317. homeassistant-stubs/components/homeassistant_hardware/helpers.pyi +25 -2
  318. homeassistant-stubs/components/homeassistant_hardware/switch.pyi +23 -0
  319. homeassistant-stubs/components/homeassistant_hardware/update.pyi +3 -2
  320. homeassistant-stubs/components/homeassistant_hardware/util.pyi +15 -6
  321. homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +13 -4
  322. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +8 -1
  323. homeassistant-stubs/components/homeassistant_sky_connect/hardware.pyi +1 -1
  324. homeassistant-stubs/components/homeassistant_sky_connect/switch.pyi +17 -0
  325. homeassistant-stubs/components/homeassistant_sky_connect/update.pyi +8 -8
  326. homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +12 -4
  327. homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +6 -2
  328. homeassistant-stubs/components/homeassistant_yellow/hardware.pyi +1 -1
  329. homeassistant-stubs/components/homeassistant_yellow/switch.pyi +17 -0
  330. homeassistant-stubs/components/homeassistant_yellow/update.pyi +8 -8
  331. homeassistant-stubs/components/homee/__init__.pyi +1 -0
  332. homeassistant-stubs/components/homee/alarm_control_panel.pyi +3 -2
  333. homeassistant-stubs/components/homee/binary_sensor.pyi +4 -2
  334. homeassistant-stubs/components/homee/button.pyi +3 -1
  335. homeassistant-stubs/components/homee/climate.pyi +3 -1
  336. homeassistant-stubs/components/homee/cover.pyi +3 -1
  337. homeassistant-stubs/components/homee/event.pyi +3 -1
  338. homeassistant-stubs/components/homee/fan.pyi +3 -1
  339. homeassistant-stubs/components/homee/helpers.pyi +6 -0
  340. homeassistant-stubs/components/homee/light.pyi +2 -0
  341. homeassistant-stubs/components/homee/lock.pyi +4 -2
  342. homeassistant-stubs/components/homee/number.pyi +3 -1
  343. homeassistant-stubs/components/homee/select.pyi +3 -1
  344. homeassistant-stubs/components/homee/sensor.pyi +2 -2
  345. homeassistant-stubs/components/homee/siren.pyi +4 -1
  346. homeassistant-stubs/components/homee/switch.pyi +4 -2
  347. homeassistant-stubs/components/homee/valve.pyi +3 -1
  348. homeassistant-stubs/components/homekit/__init__.pyi +1 -1
  349. homeassistant-stubs/components/homekit/type_switches.pyi +7 -1
  350. homeassistant-stubs/components/homewizard/__init__.pyi +2 -0
  351. homeassistant-stubs/components/homewizard/select.pyi +3 -17
  352. homeassistant-stubs/components/homewizard/sensor.pyi +3 -1
  353. homeassistant-stubs/components/http/__init__.pyi +1 -0
  354. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +1 -1
  355. homeassistant-stubs/components/huawei_lte/select.pyi +0 -2
  356. homeassistant-stubs/components/huawei_lte/sensor.pyi +1 -0
  357. homeassistant-stubs/components/humidifier/trigger.pyi +8 -0
  358. homeassistant-stubs/components/husqvarna_automower/button.pyi +1 -0
  359. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -1
  360. homeassistant-stubs/components/husqvarna_automower/entity.pyi +8 -4
  361. homeassistant-stubs/components/husqvarna_automower/event.pyi +1 -1
  362. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +5 -0
  363. homeassistant-stubs/components/husqvarna_automower/select.pyi +1 -0
  364. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +2 -0
  365. homeassistant-stubs/components/husqvarna_automower/switch.pyi +2 -0
  366. homeassistant-stubs/components/idasen_desk/coordinator.pyi +8 -2
  367. homeassistant-stubs/components/image/__init__.pyi +3 -0
  368. homeassistant-stubs/components/image_upload/__init__.pyi +1 -1
  369. homeassistant-stubs/components/image_upload/const.pyi +1 -0
  370. homeassistant-stubs/components/image_upload/media_source.pyi +5 -1
  371. homeassistant-stubs/components/imap/__init__.pyi +3 -1
  372. homeassistant-stubs/components/imap/coordinator.pyi +4 -1
  373. homeassistant-stubs/components/immich/media_source.pyi +2 -2
  374. homeassistant-stubs/components/inels/__init__.pyi +18 -0
  375. homeassistant-stubs/components/inels/config_flow.pyi +13 -0
  376. homeassistant-stubs/components/inels/const.pyi +7 -0
  377. homeassistant-stubs/components/inels/entity.pyi +20 -0
  378. homeassistant-stubs/components/inels/switch.pyi +34 -0
  379. homeassistant-stubs/components/integration/__init__.pyi +0 -1
  380. homeassistant-stubs/components/integration/config_flow.pyi +1 -0
  381. homeassistant-stubs/components/intent/__init__.pyi +4 -0
  382. homeassistant-stubs/components/jewish_calendar/coordinator.pyi +4 -7
  383. homeassistant-stubs/components/jewish_calendar/entity.pyi +2 -0
  384. homeassistant-stubs/components/knx/climate.pyi +23 -11
  385. homeassistant-stubs/components/knx/const.pyi +21 -0
  386. homeassistant-stubs/components/knx/date.pyi +17 -9
  387. homeassistant-stubs/components/knx/datetime.pyi +17 -9
  388. homeassistant-stubs/components/knx/dpt.pyi +26 -0
  389. homeassistant-stubs/components/knx/fan.pyi +25 -12
  390. homeassistant-stubs/components/knx/knx_module.pyi +4 -0
  391. homeassistant-stubs/components/knx/repairs.pyi +26 -0
  392. homeassistant-stubs/components/knx/scene.pyi +15 -6
  393. homeassistant-stubs/components/knx/schema.pyi +3 -14
  394. homeassistant-stubs/components/knx/sensor.pyi +26 -13
  395. homeassistant-stubs/components/knx/services.pyi +1 -0
  396. homeassistant-stubs/components/knx/storage/config_store.pyi +2 -1
  397. homeassistant-stubs/components/knx/storage/const.pyi +30 -1
  398. homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +27 -3
  399. homeassistant-stubs/components/knx/storage/keyring.pyi +1 -1
  400. homeassistant-stubs/components/knx/storage/knx_selector.pyi +2 -1
  401. homeassistant-stubs/components/knx/storage/migration.pyi +2 -0
  402. homeassistant-stubs/components/knx/telegrams.pyi +3 -0
  403. homeassistant-stubs/components/knx/text.pyi +22 -12
  404. homeassistant-stubs/components/knx/time.pyi +17 -9
  405. homeassistant-stubs/components/knx/websocket.pyi +2 -1
  406. homeassistant-stubs/components/lamarzocco/__init__.pyi +7 -5
  407. homeassistant-stubs/components/lamarzocco/config_flow.pyi +4 -2
  408. homeassistant-stubs/components/lamarzocco/const.pyi +2 -0
  409. homeassistant-stubs/components/lamarzocco/coordinator.pyi +23 -5
  410. homeassistant-stubs/components/lamarzocco/entity.pyi +5 -2
  411. homeassistant-stubs/components/lamarzocco/number.pyi +1 -1
  412. homeassistant-stubs/components/lamarzocco/select.pyi +2 -0
  413. homeassistant-stubs/components/lamarzocco/switch.pyi +5 -0
  414. homeassistant-stubs/components/lametric/config_flow.pyi +2 -0
  415. homeassistant-stubs/components/lawn_mower/intent.pyi +8 -0
  416. homeassistant-stubs/components/lawn_mower/trigger.pyi +7 -0
  417. homeassistant-stubs/components/lcn/__init__.pyi +3 -3
  418. homeassistant-stubs/components/lcn/binary_sensor.pyi +3 -2
  419. homeassistant-stubs/components/lcn/climate.pyi +5 -8
  420. homeassistant-stubs/components/lcn/cover.pyi +6 -5
  421. homeassistant-stubs/components/lcn/entity.pyi +6 -4
  422. homeassistant-stubs/components/lcn/helpers.pyi +5 -5
  423. homeassistant-stubs/components/lcn/light.pyi +5 -4
  424. homeassistant-stubs/components/lcn/sensor.pyi +8 -6
  425. homeassistant-stubs/components/lcn/services.pyi +3 -2
  426. homeassistant-stubs/components/lcn/switch.pyi +9 -8
  427. homeassistant-stubs/components/lcn/websocket.pyi +11 -10
  428. homeassistant-stubs/components/letpot/number.pyi +34 -0
  429. homeassistant-stubs/components/libre_hardware_monitor/__init__.pyi +12 -0
  430. homeassistant-stubs/components/libre_hardware_monitor/config_flow.pyi +12 -0
  431. homeassistant-stubs/components/libre_hardware_monitor/const.pyi +4 -0
  432. homeassistant-stubs/components/libre_hardware_monitor/coordinator.pyi +20 -0
  433. homeassistant-stubs/components/libre_hardware_monitor/sensor.pyi +30 -0
  434. homeassistant-stubs/components/lifx/manager.pyi +4 -4
  435. homeassistant-stubs/components/light/condition.pyi +38 -0
  436. homeassistant-stubs/components/light/trigger.pyi +9 -0
  437. homeassistant-stubs/components/litterrobot/select.pyi +1 -1
  438. homeassistant-stubs/components/litterrobot/switch.pyi +5 -1
  439. homeassistant-stubs/components/litterrobot/update.pyi +2 -0
  440. homeassistant-stubs/components/lock/__init__.pyi +1 -6
  441. homeassistant-stubs/components/lock/trigger.pyi +7 -0
  442. homeassistant-stubs/components/logbook/helpers.pyi +4 -3
  443. homeassistant-stubs/components/logger/helpers.pyi +2 -0
  444. homeassistant-stubs/components/logger/websocket_api.pyi +1 -0
  445. homeassistant-stubs/components/london_underground/__init__.pyi +9 -0
  446. homeassistant-stubs/components/london_underground/config_flow.pyi +22 -0
  447. homeassistant-stubs/components/london_underground/const.pyi +1 -0
  448. homeassistant-stubs/components/london_underground/coordinator.pyi +3 -1
  449. homeassistant-stubs/components/london_underground/sensor.pyi +10 -5
  450. homeassistant-stubs/components/lunatone/__init__.pyi +12 -0
  451. homeassistant-stubs/components/lunatone/config_flow.pyi +16 -0
  452. homeassistant-stubs/components/lunatone/const.pyi +3 -0
  453. homeassistant-stubs/components/lunatone/coordinator.pyi +31 -0
  454. homeassistant-stubs/components/lunatone/light.pyi +59 -0
  455. homeassistant-stubs/components/mastodon/__init__.pyi +1 -1
  456. homeassistant-stubs/components/mastodon/config_flow.pyi +2 -2
  457. homeassistant-stubs/components/mastodon/const.pyi +2 -0
  458. homeassistant-stubs/components/mastodon/diagnostics.pyi +2 -2
  459. homeassistant-stubs/components/mastodon/services.pyi +4 -3
  460. homeassistant-stubs/components/matrix/__init__.pyi +10 -2
  461. homeassistant-stubs/components/matrix/const.pyi +5 -0
  462. homeassistant-stubs/components/matrix/services.pyi +3 -1
  463. homeassistant-stubs/components/matter/__init__.pyi +5 -0
  464. homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
  465. homeassistant-stubs/components/matter/button.pyi +1 -1
  466. homeassistant-stubs/components/matter/climate.pyi +7 -1
  467. homeassistant-stubs/components/matter/cover.pyi +6 -2
  468. homeassistant-stubs/components/matter/entity.pyi +4 -2
  469. homeassistant-stubs/components/matter/event.pyi +5 -1
  470. homeassistant-stubs/components/matter/fan.pyi +5 -1
  471. homeassistant-stubs/components/matter/light.pyi +6 -2
  472. homeassistant-stubs/components/matter/lock.pyi +5 -1
  473. homeassistant-stubs/components/matter/models.pyi +4 -3
  474. homeassistant-stubs/components/matter/number.pyi +1 -1
  475. homeassistant-stubs/components/matter/select.pyi +9 -1
  476. homeassistant-stubs/components/matter/sensor.pyi +9 -1
  477. homeassistant-stubs/components/matter/services.pyi +11 -0
  478. homeassistant-stubs/components/matter/switch.pyi +5 -2
  479. homeassistant-stubs/components/matter/update.pyi +4 -1
  480. homeassistant-stubs/components/matter/vacuum.pyi +6 -2
  481. homeassistant-stubs/components/matter/valve.pyi +6 -2
  482. homeassistant-stubs/components/matter/water_heater.pyi +8 -1
  483. homeassistant-stubs/components/mcp/__init__.pyi +1 -6
  484. homeassistant-stubs/components/mcp/config_flow.pyi +12 -2
  485. homeassistant-stubs/components/mcp/const.pyi +1 -0
  486. homeassistant-stubs/components/mcp/coordinator.pyi +1 -1
  487. homeassistant-stubs/components/mcp_server/__init__.pyi +1 -8
  488. homeassistant-stubs/components/mcp_server/http.pyi +23 -1
  489. homeassistant-stubs/components/mcp_server/session.pyi +2 -2
  490. homeassistant-stubs/components/mealie/config_flow.pyi +9 -1
  491. homeassistant-stubs/components/mealie/coordinator.pyi +2 -0
  492. homeassistant-stubs/components/mealie/services.pyi +2 -0
  493. homeassistant-stubs/components/media_player/__init__.pyi +1 -9
  494. homeassistant-stubs/components/media_player/const.pyi +10 -69
  495. homeassistant-stubs/components/media_player/intent.pyi +7 -9
  496. homeassistant-stubs/components/media_player/trigger.pyi +8 -0
  497. homeassistant-stubs/components/media_source/__init__.pyi +2 -10
  498. homeassistant-stubs/components/media_source/helper.pyi +16 -0
  499. homeassistant-stubs/components/media_source/http.pyi +13 -0
  500. homeassistant-stubs/components/media_source/local_source.pyi +19 -11
  501. homeassistant-stubs/components/media_source/models.pyi +1 -0
  502. homeassistant-stubs/components/metoffice/__init__.pyi +1 -0
  503. homeassistant-stubs/components/metoffice/helpers.pyi +2 -2
  504. homeassistant-stubs/components/metoffice/sensor.pyi +1 -1
  505. homeassistant-stubs/components/metoffice/weather.pyi +11 -11
  506. homeassistant-stubs/components/miele/__init__.pyi +1 -1
  507. homeassistant-stubs/components/miele/climate.pyi +3 -1
  508. homeassistant-stubs/components/miele/const.pyi +934 -49
  509. homeassistant-stubs/components/miele/select.pyi +43 -0
  510. homeassistant-stubs/components/miele/sensor.pyi +27 -11
  511. homeassistant-stubs/components/miele/vacuum.pyi +1 -2
  512. homeassistant-stubs/components/min_max/__init__.pyi +0 -1
  513. homeassistant-stubs/components/min_max/config_flow.pyi +1 -0
  514. homeassistant-stubs/components/min_max/sensor.pyi +1 -1
  515. homeassistant-stubs/components/modbus/__init__.pyi +2 -2
  516. homeassistant-stubs/components/modbus/binary_sensor.pyi +2 -2
  517. homeassistant-stubs/components/modbus/climate.pyi +8 -4
  518. homeassistant-stubs/components/modbus/const.pyi +7 -0
  519. homeassistant-stubs/components/modbus/cover.pyi +2 -2
  520. homeassistant-stubs/components/modbus/entity.pyi +12 -21
  521. homeassistant-stubs/components/modbus/fan.pyi +2 -2
  522. homeassistant-stubs/components/modbus/light.pyi +4 -4
  523. homeassistant-stubs/components/modbus/modbus.pyi +1 -1
  524. homeassistant-stubs/components/modbus/sensor.pyi +8 -4
  525. homeassistant-stubs/components/modbus/switch.pyi +2 -2
  526. homeassistant-stubs/components/modbus/validators.pyi +4 -2
  527. homeassistant-stubs/components/mold_indicator/__init__.pyi +0 -1
  528. homeassistant-stubs/components/mold_indicator/config_flow.pyi +1 -0
  529. homeassistant-stubs/components/motionmount/select.pyi +1 -0
  530. homeassistant-stubs/components/mqtt/__init__.pyi +2 -5
  531. homeassistant-stubs/components/mqtt/client.pyi +7 -3
  532. homeassistant-stubs/components/mqtt/config_flow.pyi +91 -61
  533. homeassistant-stubs/components/mqtt/const.pyi +16 -1
  534. homeassistant-stubs/components/mqtt/device_automation.pyi +1 -1
  535. homeassistant-stubs/components/mqtt/entity.pyi +2 -2
  536. homeassistant-stubs/components/mqtt/image.pyi +1 -5
  537. homeassistant-stubs/components/mqtt/light/schema_json.pyi +0 -1
  538. homeassistant-stubs/components/mqtt/lock.pyi +3 -3
  539. homeassistant-stubs/components/mqtt/number.pyi +1 -5
  540. homeassistant-stubs/components/mqtt/schemas.pyi +1 -1
  541. homeassistant-stubs/components/mqtt/siren.pyi +1 -9
  542. homeassistant-stubs/components/mqtt/tag.pyi +1 -1
  543. homeassistant-stubs/components/mqtt/text.pyi +1 -5
  544. homeassistant-stubs/components/mqtt/valve.pyi +1 -2
  545. homeassistant-stubs/components/music_assistant/__init__.pyi +7 -5
  546. homeassistant-stubs/components/music_assistant/config_flow.pyi +21 -6
  547. homeassistant-stubs/components/music_assistant/const.pyi +8 -0
  548. homeassistant-stubs/components/music_assistant/helpers.pyi +7 -1
  549. homeassistant-stubs/components/music_assistant/media_browser.pyi +1 -1
  550. homeassistant-stubs/components/music_assistant/media_player.pyi +6 -9
  551. homeassistant-stubs/components/music_assistant/schemas.pyi +2 -2
  552. homeassistant-stubs/components/music_assistant/services.pyi +24 -0
  553. homeassistant-stubs/components/myuplink/__init__.pyi +2 -1
  554. homeassistant-stubs/components/nasweb/alarm_control_panel.pyi +40 -0
  555. homeassistant-stubs/components/nasweb/coordinator.pyi +1 -0
  556. homeassistant-stubs/components/nasweb/sensor.pyi +0 -5
  557. homeassistant-stubs/components/nasweb/switch.pyi +1 -0
  558. homeassistant-stubs/components/neato/__init__.pyi +1 -1
  559. homeassistant-stubs/components/nest/__init__.pyi +10 -4
  560. homeassistant-stubs/components/nest/types.pyi +4 -0
  561. homeassistant-stubs/components/netatmo/__init__.pyi +2 -1
  562. homeassistant-stubs/components/netatmo/camera.pyi +1 -1
  563. homeassistant-stubs/components/netatmo/const.pyi +17 -11
  564. homeassistant-stubs/components/netatmo/data_handler.pyi +1 -1
  565. homeassistant-stubs/components/netatmo/light.pyi +1 -1
  566. homeassistant-stubs/components/network/websocket.pyi +0 -1
  567. homeassistant-stubs/components/nextdns/config_flow.pyi +6 -1
  568. homeassistant-stubs/components/nordpool/coordinator.pyi +9 -4
  569. homeassistant-stubs/components/ntfy/config_flow.pyi +4 -2
  570. homeassistant-stubs/components/ntfy/const.pyi +6 -0
  571. homeassistant-stubs/components/ntfy/entity.pyi +18 -0
  572. homeassistant-stubs/components/ntfy/event.pyi +29 -0
  573. homeassistant-stubs/components/ntfy/notify.pyi +19 -13
  574. homeassistant-stubs/components/{home_connect → ntfy}/repairs.pyi +7 -3
  575. homeassistant-stubs/components/number/const.pyi +3 -2
  576. homeassistant-stubs/components/ohme/__init__.pyi +1 -1
  577. homeassistant-stubs/components/ohme/coordinator.pyi +0 -5
  578. homeassistant-stubs/components/ohme/sensor.pyi +1 -2
  579. homeassistant-stubs/components/onboarding/const.pyi +6 -0
  580. homeassistant-stubs/components/onedrive/__init__.pyi +2 -3
  581. homeassistant-stubs/components/onedrive/backup.pyi +2 -1
  582. homeassistant-stubs/components/onewire/binary_sensor.pyi +5 -12
  583. homeassistant-stubs/components/onewire/const.pyi +0 -2
  584. homeassistant-stubs/components/onewire/diagnostics.pyi +2 -0
  585. homeassistant-stubs/components/onewire/entity.pyi +6 -14
  586. homeassistant-stubs/components/onewire/onewirehub.pyi +5 -5
  587. homeassistant-stubs/components/onewire/select.pyi +3 -10
  588. homeassistant-stubs/components/onewire/sensor.pyi +5 -7
  589. homeassistant-stubs/components/onewire/switch.pyi +7 -14
  590. homeassistant-stubs/components/onkyo/media_player.pyi +9 -3
  591. homeassistant-stubs/components/onkyo/receiver.pyi +4 -1
  592. homeassistant-stubs/components/open_router/config_flow.pyi +13 -1
  593. homeassistant-stubs/components/open_router/entity.pyi +4 -1
  594. homeassistant-stubs/components/openai_conversation/ai_task.pyi +5 -1
  595. homeassistant-stubs/components/openai_conversation/config_flow.pyi +2 -1
  596. homeassistant-stubs/components/openai_conversation/const.pyi +7 -0
  597. homeassistant-stubs/components/openai_conversation/entity.pyi +4 -4
  598. homeassistant-stubs/components/openuv/__init__.pyi +1 -1
  599. homeassistant-stubs/components/openuv/binary_sensor.pyi +2 -2
  600. homeassistant-stubs/components/openuv/coordinator.pyi +14 -1
  601. homeassistant-stubs/components/opnsense/__init__.pyi +11 -0
  602. homeassistant-stubs/components/opnsense/const.pyi +5 -0
  603. homeassistant-stubs/components/opnsense/device_tracker.pyi +23 -0
  604. homeassistant-stubs/components/opower/coordinator.pyi +1 -0
  605. homeassistant-stubs/components/overseerr/coordinator.pyi +3 -3
  606. homeassistant-stubs/components/overseerr/models.pyi +7 -0
  607. homeassistant-stubs/components/overseerr/sensor.pyi +2 -2
  608. homeassistant-stubs/components/ping/__init__.pyi +1 -0
  609. homeassistant-stubs/components/ping/config_flow.pyi +1 -0
  610. homeassistant-stubs/components/ping/device_tracker.pyi +3 -2
  611. homeassistant-stubs/components/ping/entity.pyi +1 -0
  612. homeassistant-stubs/components/ping/sensor.pyi +1 -1
  613. homeassistant-stubs/components/plugwise/__init__.pyi +1 -1
  614. homeassistant-stubs/components/plugwise/climate.pyi +19 -4
  615. homeassistant-stubs/components/plugwise/config_flow.pyi +1 -1
  616. homeassistant-stubs/components/plugwise/const.pyi +15 -4
  617. homeassistant-stubs/components/plugwise/coordinator.pyi +6 -3
  618. homeassistant-stubs/components/plugwise/entity.pyi +2 -2
  619. homeassistant-stubs/components/plugwise/select.pyi +1 -1
  620. homeassistant-stubs/components/portainer/__init__.pyi +12 -0
  621. homeassistant-stubs/components/portainer/binary_sensor.pyi +41 -0
  622. homeassistant-stubs/components/portainer/button.pyi +28 -0
  623. homeassistant-stubs/components/portainer/config_flow.pyi +25 -0
  624. homeassistant-stubs/components/portainer/const.pyi +3 -0
  625. homeassistant-stubs/components/portainer/coordinator.pyi +44 -0
  626. homeassistant-stubs/components/portainer/diagnostics.pyi +12 -0
  627. homeassistant-stubs/components/portainer/entity.pyi +25 -0
  628. homeassistant-stubs/components/portainer/sensor.pyi +40 -0
  629. homeassistant-stubs/components/portainer/switch.pyi +34 -0
  630. homeassistant-stubs/components/prometheus/__init__.pyi +35 -14
  631. homeassistant-stubs/components/prusalink/coordinator.pyi +2 -0
  632. homeassistant-stubs/components/pyload/config_flow.pyi +1 -0
  633. homeassistant-stubs/components/qbus/entity.pyi +1 -3
  634. homeassistant-stubs/components/radio_browser/media_source.pyi +3 -0
  635. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -0
  636. homeassistant-stubs/components/raspberry_pi/hardware.pyi +1 -1
  637. homeassistant-stubs/components/recorder/auto_repairs/schema.pyi +1 -1
  638. homeassistant-stubs/components/recorder/const.pyi +1 -1
  639. homeassistant-stubs/components/recorder/core.pyi +3 -3
  640. homeassistant-stubs/components/recorder/db_schema.pyi +3 -10
  641. homeassistant-stubs/components/recorder/entity_registry.pyi +1 -0
  642. homeassistant-stubs/components/recorder/history/__init__.pyi +2 -2
  643. homeassistant-stubs/components/recorder/migration.pyi +12 -1
  644. homeassistant-stubs/components/recorder/models/statistics.pyi +2 -0
  645. homeassistant-stubs/components/recorder/statistics.pyi +17 -12
  646. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +0 -1
  647. homeassistant-stubs/components/recorder/table_managers/statistics_meta.pyi +5 -3
  648. homeassistant-stubs/components/recorder/tasks.pyi +1 -0
  649. homeassistant-stubs/components/recorder/util.pyi +2 -1
  650. homeassistant-stubs/components/recorder/websocket_api.pyi +6 -4
  651. homeassistant-stubs/components/remote_calendar/calendar.pyi +1 -2
  652. homeassistant-stubs/components/renault/renault_hub.pyi +2 -0
  653. homeassistant-stubs/components/renault/sensor.pyi +1 -1
  654. homeassistant-stubs/components/reolink/__init__.pyi +4 -3
  655. homeassistant-stubs/components/reolink/binary_sensor.pyi +15 -0
  656. homeassistant-stubs/components/reolink/const.pyi +1 -0
  657. homeassistant-stubs/components/reolink/entity.pyi +10 -0
  658. homeassistant-stubs/components/reolink/host.pyi +1 -0
  659. homeassistant-stubs/components/reolink/light.pyi +7 -1
  660. homeassistant-stubs/components/reolink/number.pyi +10 -1
  661. homeassistant-stubs/components/reolink/select.pyi +11 -3
  662. homeassistant-stubs/components/reolink/siren.pyi +13 -1
  663. homeassistant-stubs/components/reolink/switch.pyi +36 -8
  664. homeassistant-stubs/components/reolink/update.pyi +1 -1
  665. homeassistant-stubs/components/rest_command/__init__.pyi +1 -0
  666. homeassistant-stubs/components/ridwell/__init__.pyi +1 -0
  667. homeassistant-stubs/components/ridwell/calendar.pyi +2 -2
  668. homeassistant-stubs/components/ridwell/config_flow.pyi +10 -3
  669. homeassistant-stubs/components/ridwell/const.pyi +5 -0
  670. homeassistant-stubs/components/rituals_perfume_genie/__init__.pyi +4 -2
  671. homeassistant-stubs/components/rituals_perfume_genie/config_flow.pyi +4 -2
  672. homeassistant-stubs/components/rituals_perfume_genie/coordinator.pyi +5 -3
  673. homeassistant-stubs/components/roborock/__init__.pyi +9 -11
  674. homeassistant-stubs/components/roborock/binary_sensor.pyi +2 -2
  675. homeassistant-stubs/components/roborock/button.pyi +6 -3
  676. homeassistant-stubs/components/roborock/config_flow.pyi +3 -3
  677. homeassistant-stubs/components/roborock/const.pyi +1 -0
  678. homeassistant-stubs/components/roborock/coordinator.pyi +65 -38
  679. homeassistant-stubs/components/roborock/diagnostics.pyi +1 -1
  680. homeassistant-stubs/components/roborock/entity.pyi +12 -29
  681. homeassistant-stubs/components/roborock/image.pyi +8 -4
  682. homeassistant-stubs/components/roborock/models.pyi +11 -6
  683. homeassistant-stubs/components/roborock/number.pyi +6 -5
  684. homeassistant-stubs/components/roborock/roborock_storage.pyi +17 -12
  685. homeassistant-stubs/components/roborock/select.pyi +14 -7
  686. homeassistant-stubs/components/roborock/sensor.pyi +21 -7
  687. homeassistant-stubs/components/roborock/switch.pyi +6 -7
  688. homeassistant-stubs/components/roborock/time.pyi +5 -6
  689. homeassistant-stubs/components/roborock/vacuum.pyi +3 -1
  690. homeassistant-stubs/components/route_b_smart_meter/__init__.pyi +10 -0
  691. homeassistant-stubs/components/route_b_smart_meter/config_flow.pyi +22 -0
  692. homeassistant-stubs/components/route_b_smart_meter/const.pyi +9 -0
  693. homeassistant-stubs/components/route_b_smart_meter/coordinator.pyi +26 -0
  694. homeassistant-stubs/components/route_b_smart_meter/sensor.pyi +30 -0
  695. homeassistant-stubs/components/scene/trigger.pyi +14 -0
  696. homeassistant-stubs/components/scrape/__init__.pyi +0 -1
  697. homeassistant-stubs/components/scrape/config_flow.pyi +1 -0
  698. homeassistant-stubs/components/scrape/coordinator.pyi +5 -2
  699. homeassistant-stubs/components/script/__init__.pyi +1 -1
  700. homeassistant-stubs/components/sensibo/__init__.pyi +6 -0
  701. homeassistant-stubs/components/sensibo/climate.pyi +3 -26
  702. homeassistant-stubs/components/sensibo/services.pyi +31 -0
  703. homeassistant-stubs/components/sensor/const.pyi +3 -1
  704. homeassistant-stubs/components/sensor/device_condition.pyi +2 -0
  705. homeassistant-stubs/components/sensor/device_trigger.pyi +2 -0
  706. homeassistant-stubs/components/sensor/recorder.pyi +6 -3
  707. homeassistant-stubs/components/senz/__init__.pyi +8 -5
  708. homeassistant-stubs/components/senz/api.pyi +1 -1
  709. homeassistant-stubs/components/senz/climate.pyi +5 -5
  710. homeassistant-stubs/components/senz/config_flow.pyi +9 -0
  711. homeassistant-stubs/components/senz/diagnostics.pyi +9 -0
  712. homeassistant-stubs/components/senz/sensor.pyi +32 -0
  713. homeassistant-stubs/components/sfr_box/__init__.pyi +4 -6
  714. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +7 -14
  715. homeassistant-stubs/components/sfr_box/button.pyi +6 -8
  716. homeassistant-stubs/components/sfr_box/config_flow.pyi +5 -2
  717. homeassistant-stubs/components/sfr_box/coordinator.pyi +16 -4
  718. homeassistant-stubs/components/sfr_box/diagnostics.pyi +2 -4
  719. homeassistant-stubs/components/sfr_box/entity.pyi +18 -0
  720. homeassistant-stubs/components/sfr_box/sensor.pyi +6 -13
  721. homeassistant-stubs/components/sftp_storage/__init__.pyi +21 -0
  722. homeassistant-stubs/components/sftp_storage/backup.pyi +24 -0
  723. homeassistant-stubs/components/sftp_storage/client.pyi +48 -0
  724. homeassistant-stubs/components/sftp_storage/config_flow.pyi +25 -0
  725. homeassistant-stubs/components/sftp_storage/const.pyi +16 -0
  726. homeassistant-stubs/components/shelly/__init__.pyi +3 -2
  727. homeassistant-stubs/components/shelly/binary_sensor.pyi +19 -5
  728. homeassistant-stubs/components/shelly/ble_provisioning.pyi +21 -0
  729. homeassistant-stubs/components/shelly/button.pyi +28 -9
  730. homeassistant-stubs/components/shelly/climate.pyi +63 -7
  731. homeassistant-stubs/components/shelly/config_flow.pyi +72 -5
  732. homeassistant-stubs/components/shelly/const.pyi +25 -3
  733. homeassistant-stubs/components/shelly/coordinator.pyi +1 -1
  734. homeassistant-stubs/components/shelly/cover.pyi +39 -10
  735. homeassistant-stubs/components/shelly/entity.pyi +12 -18
  736. homeassistant-stubs/components/shelly/event.pyi +17 -10
  737. homeassistant-stubs/components/shelly/light.pyi +40 -14
  738. homeassistant-stubs/components/shelly/logbook.pyi +1 -1
  739. homeassistant-stubs/components/shelly/number.pyi +17 -11
  740. homeassistant-stubs/components/shelly/repairs.pyi +14 -2
  741. homeassistant-stubs/components/shelly/select.pyi +15 -7
  742. homeassistant-stubs/components/shelly/sensor.pyi +19 -10
  743. homeassistant-stubs/components/shelly/services.pyi +23 -0
  744. homeassistant-stubs/components/shelly/switch.pyi +12 -7
  745. homeassistant-stubs/components/shelly/text.pyi +8 -3
  746. homeassistant-stubs/components/shelly/update.pyi +4 -0
  747. homeassistant-stubs/components/shelly/utils.pyi +24 -9
  748. homeassistant-stubs/components/shelly/valve.pyi +34 -5
  749. homeassistant-stubs/components/simplisafe/__init__.pyi +3 -1
  750. homeassistant-stubs/components/simplisafe/binary_sensor.pyi +3 -0
  751. homeassistant-stubs/components/simplisafe/config_flow.pyi +2 -0
  752. homeassistant-stubs/components/siren/trigger.pyi +8 -0
  753. homeassistant-stubs/components/sleep_as_android/event.pyi +1 -0
  754. homeassistant-stubs/components/sma/__init__.pyi +15 -0
  755. homeassistant-stubs/components/sma/config_flow.pyi +27 -0
  756. homeassistant-stubs/components/sma/const.pyi +11 -0
  757. homeassistant-stubs/components/sma/coordinator.pyi +28 -0
  758. homeassistant-stubs/components/sma/diagnostics.pyi +10 -0
  759. homeassistant-stubs/components/sma/sensor.pyi +33 -0
  760. homeassistant-stubs/components/smhi/__init__.pyi +1 -1
  761. homeassistant-stubs/components/smhi/coordinator.pyi +15 -2
  762. homeassistant-stubs/components/smhi/entity.pyi +13 -4
  763. homeassistant-stubs/components/smhi/sensor.pyi +27 -11
  764. homeassistant-stubs/components/smhi/weather.pyi +3 -2
  765. homeassistant-stubs/components/smlight/switch.pyi +1 -0
  766. homeassistant-stubs/components/solarlog/coordinator.pyi +1 -1
  767. homeassistant-stubs/components/sql/__init__.pyi +4 -6
  768. homeassistant-stubs/components/sql/config_flow.pyi +9 -4
  769. homeassistant-stubs/components/sql/const.pyi +1 -0
  770. homeassistant-stubs/components/sql/sensor.pyi +10 -18
  771. homeassistant-stubs/components/sql/services.pyi +18 -0
  772. homeassistant-stubs/components/sql/util.pyi +27 -3
  773. homeassistant-stubs/components/squeezebox/__init__.pyi +4 -1
  774. homeassistant-stubs/components/squeezebox/binary_sensor.pyi +16 -5
  775. homeassistant-stubs/components/squeezebox/browse_media.pyi +4 -3
  776. homeassistant-stubs/components/squeezebox/button.pyi +1 -0
  777. homeassistant-stubs/components/squeezebox/const.pyi +4 -1
  778. homeassistant-stubs/components/squeezebox/media_player.pyi +7 -2
  779. homeassistant-stubs/components/squeezebox/sensor.pyi +21 -3
  780. homeassistant-stubs/components/squeezebox/switch.pyi +1 -0
  781. homeassistant-stubs/components/squeezebox/util.pyi +6 -0
  782. homeassistant-stubs/components/ssdp/server.pyi +2 -3
  783. homeassistant-stubs/components/starlink/sensor.pyi +11 -1
  784. homeassistant-stubs/components/statistics/__init__.pyi +0 -1
  785. homeassistant-stubs/components/statistics/config_flow.pyi +1 -0
  786. homeassistant-stubs/components/stookwijzer/__init__.pyi +1 -1
  787. homeassistant-stubs/components/stookwijzer/services.pyi +3 -2
  788. homeassistant-stubs/components/suez_water/coordinator.pyi +2 -1
  789. homeassistant-stubs/components/sun/condition.pyi +12 -7
  790. homeassistant-stubs/components/sun/sensor.pyi +0 -2
  791. homeassistant-stubs/components/switch/trigger.pyi +8 -0
  792. homeassistant-stubs/components/switch_as_x/__init__.pyi +0 -1
  793. homeassistant-stubs/components/switch_as_x/config_flow.pyi +1 -0
  794. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  795. homeassistant-stubs/components/switchbot_cloud/binary_sensor.pyi +9 -2
  796. homeassistant-stubs/components/switchbot_cloud/climate.pyi +37 -6
  797. homeassistant-stubs/components/switchbot_cloud/const.pyi +14 -0
  798. homeassistant-stubs/components/switchbot_cloud/entity.pyi +1 -1
  799. homeassistant-stubs/components/switchbot_cloud/humidifier.pyi +48 -0
  800. homeassistant-stubs/components/switchbot_cloud/light.pyi +10 -1
  801. homeassistant-stubs/components/switchbot_cloud/lock.pyi +7 -2
  802. homeassistant-stubs/components/switchbot_cloud/sensor.pyi +39 -4
  803. homeassistant-stubs/components/switchbot_cloud/switch.pyi +13 -1
  804. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +4 -4
  805. homeassistant-stubs/components/switcher_kis/button.pyi +5 -6
  806. homeassistant-stubs/components/switcher_kis/climate.pyi +3 -3
  807. homeassistant-stubs/components/switcher_kis/config_flow.pyi +1 -1
  808. homeassistant-stubs/components/switcher_kis/const.pyi +2 -0
  809. homeassistant-stubs/components/switcher_kis/cover.pyi +4 -3
  810. homeassistant-stubs/components/switcher_kis/light.pyi +3 -2
  811. homeassistant-stubs/components/switcher_kis/sensor.pyi +4 -2
  812. homeassistant-stubs/components/switcher_kis/switch.pyi +3 -5
  813. homeassistant-stubs/components/synology_dsm/config_flow.pyi +1 -0
  814. homeassistant-stubs/components/synology_dsm/media_source.pyi +2 -2
  815. homeassistant-stubs/components/synology_dsm/sensor.pyi +3 -0
  816. homeassistant-stubs/components/systemmonitor/__init__.pyi +0 -1
  817. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +4 -3
  818. homeassistant-stubs/components/systemmonitor/config_flow.pyi +1 -0
  819. homeassistant-stubs/components/systemmonitor/const.pyi +1 -0
  820. homeassistant-stubs/components/systemmonitor/coordinator.pyi +12 -6
  821. homeassistant-stubs/components/systemmonitor/sensor.pyi +8 -2
  822. homeassistant-stubs/components/systemmonitor/util.pyi +2 -1
  823. homeassistant-stubs/components/telegram_bot/__init__.pyi +9 -5
  824. homeassistant-stubs/components/telegram_bot/bot.pyi +16 -5
  825. homeassistant-stubs/components/telegram_bot/config_flow.pyi +4 -6
  826. homeassistant-stubs/components/telegram_bot/const.pyi +25 -4
  827. homeassistant-stubs/components/telegram_bot/diagnostics.pyi +11 -0
  828. homeassistant-stubs/components/telegram_bot/entity.pyi +16 -0
  829. homeassistant-stubs/components/telegram_bot/event.pyi +19 -0
  830. homeassistant-stubs/components/telegram_bot/helpers.pyi +4 -0
  831. homeassistant-stubs/components/telegram_bot/notify.pyi +6 -10
  832. homeassistant-stubs/components/text/trigger.pyi +13 -0
  833. homeassistant-stubs/components/threshold/__init__.pyi +0 -1
  834. homeassistant-stubs/components/threshold/config_flow.pyi +1 -0
  835. homeassistant-stubs/components/tibber/coordinator.pyi +1 -0
  836. homeassistant-stubs/components/tod/__init__.pyi +0 -1
  837. homeassistant-stubs/components/tod/config_flow.pyi +1 -0
  838. homeassistant-stubs/components/todo/__init__.pyi +1 -0
  839. homeassistant-stubs/components/tolo/__init__.pyi +3 -5
  840. homeassistant-stubs/components/tolo/binary_sensor.pyi +4 -6
  841. homeassistant-stubs/components/tolo/button.pyi +3 -5
  842. homeassistant-stubs/components/tolo/climate.pyi +3 -5
  843. homeassistant-stubs/components/tolo/config_flow.pyi +5 -3
  844. homeassistant-stubs/components/tolo/coordinator.pyi +3 -2
  845. homeassistant-stubs/components/tolo/entity.pyi +2 -3
  846. homeassistant-stubs/components/tolo/fan.pyi +3 -5
  847. homeassistant-stubs/components/tolo/light.pyi +3 -5
  848. homeassistant-stubs/components/tolo/number.pyi +3 -5
  849. homeassistant-stubs/components/tolo/select.pyi +4 -5
  850. homeassistant-stubs/components/tolo/sensor.pyi +3 -5
  851. homeassistant-stubs/components/tolo/switch.pyi +3 -5
  852. homeassistant-stubs/components/tplink/number.pyi +1 -1
  853. homeassistant-stubs/components/tplink_omada/__init__.pyi +6 -1
  854. homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +2 -1
  855. homeassistant-stubs/components/tplink_omada/controller.pyi +4 -2
  856. homeassistant-stubs/components/tplink_omada/coordinator.pyi +17 -2
  857. homeassistant-stubs/components/tplink_omada/services.pyi +22 -0
  858. homeassistant-stubs/components/tplink_omada/switch.pyi +2 -1
  859. homeassistant-stubs/components/tplink_omada/update.pyi +3 -19
  860. homeassistant-stubs/components/tractive/switch.pyi +2 -2
  861. homeassistant-stubs/components/transmission/__init__.pyi +6 -13
  862. homeassistant-stubs/components/transmission/const.pyi +5 -0
  863. homeassistant-stubs/components/transmission/entity.pyi +13 -0
  864. homeassistant-stubs/components/transmission/helpers.pyi +6 -0
  865. homeassistant-stubs/components/transmission/sensor.pyi +5 -12
  866. homeassistant-stubs/components/transmission/services.pyi +37 -0
  867. homeassistant-stubs/components/transmission/switch.pyi +5 -9
  868. homeassistant-stubs/components/trend/__init__.pyi +0 -1
  869. homeassistant-stubs/components/trend/config_flow.pyi +1 -0
  870. homeassistant-stubs/components/tts/__init__.pyi +7 -3
  871. homeassistant-stubs/components/unifi/light.pyi +48 -0
  872. homeassistant-stubs/components/unifi/sensor.pyi +2 -0
  873. homeassistant-stubs/components/unifiprotect/__init__.pyi +4 -3
  874. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +1 -0
  875. homeassistant-stubs/components/unifiprotect/button.pyi +5 -4
  876. homeassistant-stubs/components/unifiprotect/camera.pyi +4 -1
  877. homeassistant-stubs/components/unifiprotect/config_flow.pyi +25 -5
  878. homeassistant-stubs/components/unifiprotect/const.pyi +2 -0
  879. homeassistant-stubs/components/unifiprotect/discovery.pyi +9 -1
  880. homeassistant-stubs/components/unifiprotect/entity.pyi +1 -1
  881. homeassistant-stubs/components/unifiprotect/event.pyi +34 -2
  882. homeassistant-stubs/components/unifiprotect/light.pyi +5 -1
  883. homeassistant-stubs/components/unifiprotect/lock.pyi +4 -0
  884. homeassistant-stubs/components/unifiprotect/media_player.pyi +2 -0
  885. homeassistant-stubs/components/unifiprotect/number.pyi +6 -2
  886. homeassistant-stubs/components/unifiprotect/repairs.pyi +1 -2
  887. homeassistant-stubs/components/unifiprotect/select.pyi +6 -5
  888. homeassistant-stubs/components/unifiprotect/sensor.pyi +1 -12
  889. homeassistant-stubs/components/unifiprotect/services.pyi +3 -2
  890. homeassistant-stubs/components/unifiprotect/switch.pyi +8 -2
  891. homeassistant-stubs/components/unifiprotect/text.pyi +6 -2
  892. homeassistant-stubs/components/unifiprotect/utils.pyi +6 -2
  893. homeassistant-stubs/components/update/trigger.pyi +8 -0
  894. homeassistant-stubs/components/uptime_kuma/config_flow.pyi +1 -0
  895. homeassistant-stubs/components/uptimerobot/binary_sensor.pyi +2 -0
  896. homeassistant-stubs/components/uptimerobot/config_flow.pyi +1 -0
  897. homeassistant-stubs/components/uptimerobot/sensor.pyi +2 -0
  898. homeassistant-stubs/components/uptimerobot/switch.pyi +2 -0
  899. homeassistant-stubs/components/uptimerobot/utils.pyi +5 -0
  900. homeassistant-stubs/components/usb/__init__.pyi +4 -4
  901. homeassistant-stubs/components/usb/utils.pyi +7 -0
  902. homeassistant-stubs/components/vacuum/__init__.pyi +0 -15
  903. homeassistant-stubs/components/vacuum/intent.pyi +1 -1
  904. homeassistant-stubs/components/vacuum/trigger.pyi +7 -0
  905. homeassistant-stubs/components/velbus/__init__.pyi +1 -1
  906. homeassistant-stubs/components/velbus/config_flow.pyi +17 -4
  907. homeassistant-stubs/components/velbus/const.pyi +1 -0
  908. homeassistant-stubs/components/velbus/entity.pyi +1 -1
  909. homeassistant-stubs/components/velbus/sensor.pyi +19 -10
  910. homeassistant-stubs/components/velbus/services.pyi +1 -1
  911. homeassistant-stubs/components/vivotek/__init__.pyi +17 -0
  912. homeassistant-stubs/components/vivotek/camera.pyi +41 -0
  913. homeassistant-stubs/components/vivotek/config_flow.pyi +25 -0
  914. homeassistant-stubs/components/vivotek/const.pyi +6 -0
  915. homeassistant-stubs/components/vodafone_station/__init__.pyi +3 -1
  916. homeassistant-stubs/components/vodafone_station/config_flow.pyi +3 -2
  917. homeassistant-stubs/components/vodafone_station/const.pyi +3 -0
  918. homeassistant-stubs/components/vodafone_station/coordinator.pyi +4 -4
  919. homeassistant-stubs/components/volvo/__init__.pyi +4 -2
  920. homeassistant-stubs/components/volvo/api.pyi +4 -0
  921. homeassistant-stubs/components/volvo/binary_sensor.pyi +1 -3
  922. homeassistant-stubs/components/volvo/button.pyi +27 -0
  923. homeassistant-stubs/components/volvo/coordinator.pyi +20 -9
  924. homeassistant-stubs/components/volvo/device_tracker.pyi +23 -0
  925. homeassistant-stubs/components/volvo/diagnostics.pyi +12 -0
  926. homeassistant-stubs/components/volvo/entity.pyi +9 -5
  927. homeassistant-stubs/components/volvo/lock.pyi +37 -0
  928. homeassistant-stubs/components/volvo/sensor.pyi +9 -8
  929. homeassistant-stubs/components/wake_on_lan/__init__.pyi +0 -1
  930. homeassistant-stubs/components/wake_on_lan/config_flow.pyi +1 -0
  931. homeassistant-stubs/components/wallbox/__init__.pyi +2 -3
  932. homeassistant-stubs/components/wallbox/config_flow.pyi +2 -2
  933. homeassistant-stubs/components/wallbox/const.pyi +5 -0
  934. homeassistant-stubs/components/wallbox/coordinator.pyi +12 -9
  935. homeassistant-stubs/components/waqi/__init__.pyi +8 -0
  936. homeassistant-stubs/components/waqi/config_flow.pyi +14 -9
  937. homeassistant-stubs/components/waqi/const.pyi +1 -1
  938. homeassistant-stubs/components/waqi/coordinator.pyi +5 -4
  939. homeassistant-stubs/components/waqi/diagnostics.pyi +5 -0
  940. homeassistant-stubs/components/watts/__init__.pyi +28 -0
  941. homeassistant-stubs/components/watts/application_credentials.pyi +5 -0
  942. homeassistant-stubs/components/watts/climate.pyi +35 -0
  943. homeassistant-stubs/components/watts/config_flow.pyi +13 -0
  944. homeassistant-stubs/components/watts/const.pyi +12 -0
  945. homeassistant-stubs/components/watts/coordinator.pyi +40 -0
  946. homeassistant-stubs/components/watts/entity.pyi +17 -0
  947. homeassistant-stubs/components/webhook/trigger.pyi +3 -1
  948. homeassistant-stubs/components/webostv/media_player.pyi +3 -0
  949. homeassistant-stubs/components/websocket_api/automation.pyi +47 -0
  950. homeassistant-stubs/components/websocket_api/commands.pyi +11 -0
  951. homeassistant-stubs/components/websocket_api/http.pyi +1 -0
  952. homeassistant-stubs/components/withings/__init__.pyi +2 -1
  953. homeassistant-stubs/components/withings/const.pyi +0 -1
  954. homeassistant-stubs/components/withings/sensor.pyi +2 -2
  955. homeassistant-stubs/components/wled/__init__.pyi +4 -3
  956. homeassistant-stubs/components/wled/analytics.pyi +4 -0
  957. homeassistant-stubs/components/wled/button.pyi +3 -2
  958. homeassistant-stubs/components/wled/config_flow.pyi +8 -2
  959. homeassistant-stubs/components/wled/coordinator.pyi +8 -2
  960. homeassistant-stubs/components/wled/diagnostics.pyi +1 -1
  961. homeassistant-stubs/components/wled/helpers.pyi +1 -0
  962. homeassistant-stubs/components/wled/light.pyi +1 -2
  963. homeassistant-stubs/components/wled/number.pyi +1 -2
  964. homeassistant-stubs/components/wled/select.pyi +7 -5
  965. homeassistant-stubs/components/wled/sensor.pyi +3 -2
  966. homeassistant-stubs/components/wled/switch.pyi +1 -2
  967. homeassistant-stubs/components/wled/update.pyi +4 -2
  968. homeassistant-stubs/components/workday/calendar.pyi +23 -0
  969. homeassistant-stubs/components/worldclock/__init__.pyi +0 -1
  970. homeassistant-stubs/components/worldclock/config_flow.pyi +1 -0
  971. homeassistant-stubs/components/xbox/__init__.pyi +19 -0
  972. homeassistant-stubs/components/xbox/api.pyi +15 -0
  973. homeassistant-stubs/components/xbox/application_credentials.pyi +5 -0
  974. homeassistant-stubs/components/xbox/binary_sensor.pyi +36 -0
  975. homeassistant-stubs/components/xbox/browse_media.pyi +17 -0
  976. homeassistant-stubs/components/xbox/config_flow.pyi +27 -0
  977. homeassistant-stubs/components/xbox/const.pyi +4 -0
  978. homeassistant-stubs/components/xbox/coordinator.pyi +54 -0
  979. homeassistant-stubs/components/xbox/diagnostics.pyi +9 -0
  980. homeassistant-stubs/components/xbox/entity.pyi +54 -0
  981. homeassistant-stubs/components/xbox/image.pyi +34 -0
  982. homeassistant-stubs/components/xbox/media_player.pyi +45 -0
  983. homeassistant-stubs/components/xbox/media_source.pyi +51 -0
  984. homeassistant-stubs/components/xbox/remote.pyi +20 -0
  985. homeassistant-stubs/components/xbox/sensor.pyi +74 -0
  986. homeassistant-stubs/components/yalexs_ble/__init__.pyi +3 -2
  987. homeassistant-stubs/components/yalexs_ble/config_cache.pyi +10 -0
  988. homeassistant-stubs/components/yalexs_ble/config_flow.pyi +6 -2
  989. homeassistant-stubs/components/youtube/__init__.pyi +1 -1
  990. homeassistant-stubs/components/zeroconf/__init__.pyi +3 -1
  991. homeassistant-stubs/components/zeroconf/discovery.pyi +8 -1
  992. homeassistant-stubs/components/zeroconf/repairs.pyi +13 -0
  993. homeassistant-stubs/components/zone/condition.pyi +12 -6
  994. homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
  995. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +1 -0
  996. homeassistant-stubs/components/zwave_js/config_flow.pyi +7 -3
  997. homeassistant-stubs/components/zwave_js/const.pyi +3 -0
  998. homeassistant-stubs/components/zwave_js/device_trigger.pyi +2 -2
  999. homeassistant-stubs/components/zwave_js/entity.pyi +2 -2
  1000. homeassistant-stubs/components/zwave_js/event.pyi +11 -5
  1001. homeassistant-stubs/components/zwave_js/triggers/event.pyi +24 -11
  1002. homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +13 -9
  1003. homeassistant-stubs/config_entries.pyi +15 -4
  1004. homeassistant-stubs/const.pyi +12 -74
  1005. homeassistant-stubs/core.pyi +4 -17
  1006. homeassistant-stubs/core_config.pyi +1 -1
  1007. homeassistant-stubs/data_entry_flow.pyi +20 -3
  1008. homeassistant-stubs/generated/entity_platforms.pyi +46 -0
  1009. homeassistant-stubs/generated/labs.pyi +3 -0
  1010. homeassistant-stubs/helpers/area_registry.pyi +4 -2
  1011. homeassistant-stubs/helpers/automation.pyi +7 -0
  1012. homeassistant-stubs/helpers/condition.pyi +36 -10
  1013. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +3 -0
  1014. homeassistant-stubs/helpers/config_validation.pyi +5 -4
  1015. homeassistant-stubs/helpers/debounce.pyi +6 -1
  1016. homeassistant-stubs/helpers/deprecation.pyi +1 -0
  1017. homeassistant-stubs/helpers/device_registry.pyi +6 -5
  1018. homeassistant-stubs/helpers/entity.pyi +0 -1
  1019. homeassistant-stubs/helpers/entity_component.pyi +3 -5
  1020. homeassistant-stubs/helpers/entity_platform.pyi +2 -2
  1021. homeassistant-stubs/helpers/entity_registry.pyi +4 -4
  1022. homeassistant-stubs/helpers/event.pyi +3 -2
  1023. homeassistant-stubs/helpers/floor_registry.pyi +7 -1
  1024. homeassistant-stubs/helpers/instance_id.pyi +1 -0
  1025. homeassistant-stubs/helpers/intent.pyi +6 -8
  1026. homeassistant-stubs/helpers/json.pyi +1 -0
  1027. homeassistant-stubs/helpers/llm.pyi +6 -1
  1028. homeassistant-stubs/helpers/registry.pyi +0 -1
  1029. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +5 -1
  1030. homeassistant-stubs/helpers/script.pyi +7 -7
  1031. homeassistant-stubs/helpers/selector.pyi +43 -21
  1032. homeassistant-stubs/helpers/service.pyi +17 -19
  1033. homeassistant-stubs/helpers/service_info/esphome.pyi +12 -0
  1034. homeassistant-stubs/helpers/storage.pyi +6 -4
  1035. homeassistant-stubs/helpers/target.pyi +9 -4
  1036. homeassistant-stubs/helpers/{template.pyi → template/__init__.pyi} +12 -141
  1037. homeassistant-stubs/helpers/template/context.pyi +16 -0
  1038. homeassistant-stubs/helpers/template/extensions/__init__.pyi +14 -0
  1039. homeassistant-stubs/helpers/template/extensions/areas.pyi +14 -0
  1040. homeassistant-stubs/helpers/template/extensions/base.pyi +30 -0
  1041. homeassistant-stubs/helpers/template/extensions/base64.pyi +9 -0
  1042. homeassistant-stubs/helpers/template/extensions/collection.pyi +18 -0
  1043. homeassistant-stubs/helpers/template/extensions/crypto.pyi +13 -0
  1044. homeassistant-stubs/helpers/template/extensions/datetime.pyi +28 -0
  1045. homeassistant-stubs/helpers/template/extensions/devices.pyi +13 -0
  1046. homeassistant-stubs/helpers/template/extensions/floors.pyi +14 -0
  1047. homeassistant-stubs/helpers/template/extensions/issues.pyi +8 -0
  1048. homeassistant-stubs/helpers/template/extensions/labels.pyi +15 -0
  1049. homeassistant-stubs/helpers/template/extensions/math.pyi +49 -0
  1050. homeassistant-stubs/helpers/template/extensions/regex.pyi +14 -0
  1051. homeassistant-stubs/helpers/template/extensions/string.pyi +9 -0
  1052. homeassistant-stubs/helpers/template/helpers.pyi +6 -0
  1053. homeassistant-stubs/helpers/template/render_info.pyi +39 -0
  1054. homeassistant-stubs/helpers/trigger.pyi +136 -11
  1055. homeassistant-stubs/helpers/trigger_template_entity.pyi +2 -1
  1056. homeassistant-stubs/helpers/typing.pyi +0 -11
  1057. homeassistant-stubs/helpers/update_coordinator.pyi +6 -3
  1058. homeassistant-stubs/loader.pyi +3 -0
  1059. homeassistant-stubs/requirements.pyi +4 -3
  1060. homeassistant-stubs/runner.pyi +17 -1
  1061. homeassistant-stubs/util/__init__.pyi +1 -0
  1062. homeassistant-stubs/util/async_iterator.pyi +33 -0
  1063. homeassistant-stubs/util/unit_conversion.pyi +18 -0
  1064. {homeassistant_stubs-2025.9.0b0.dist-info → homeassistant_stubs-2026.1.0b0.dist-info}/METADATA +2 -2
  1065. {homeassistant_stubs-2025.9.0b0.dist-info → homeassistant_stubs-2026.1.0b0.dist-info}/RECORD +1067 -859
  1066. {homeassistant_stubs-2025.9.0b0.dist-info → homeassistant_stubs-2026.1.0b0.dist-info}/WHEEL +1 -1
  1067. homeassistant-stubs/components/bluetooth_tracker/__init__.pyi +0 -0
  1068. homeassistant-stubs/components/bluetooth_tracker/const.pyi +0 -7
  1069. homeassistant-stubs/components/bluetooth_tracker/device_tracker.pyi +0 -19
  1070. homeassistant-stubs/components/elevenlabs/__init__.pyi +0 -22
  1071. homeassistant-stubs/components/elevenlabs/config_flow.pyi +0 -33
  1072. homeassistant-stubs/components/elevenlabs/const.pyi +0 -14
  1073. homeassistant-stubs/components/elevenlabs/tts.pyi +0 -36
  1074. homeassistant-stubs/components/home_connect/time.pyi +0 -29
  1075. homeassistant-stubs/components/music_assistant/actions.pyi +0 -22
  1076. homeassistant-stubs/components/pandora/__init__.pyi +0 -1
  1077. homeassistant-stubs/components/pandora/media_player.pyi +0 -52
  1078. homeassistant-stubs/components/recorder/history/legacy.pyi +0 -48
  1079. homeassistant-stubs/components/recorder/history/modern.pyi +0 -39
  1080. homeassistant-stubs/components/recorder/models/legacy.pyi +0 -45
  1081. homeassistant-stubs/components/sfr_box/models.pyi +0 -12
  1082. {homeassistant_stubs-2025.9.0b0.dist-info → homeassistant_stubs-2026.1.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -1,5 +1,6 @@
1
1
  from .data import ProtectData as ProtectData, ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
2
- from .entity import BaseProtectEntity as BaseProtectEntity, PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectIsOnEntity as ProtectIsOnEntity, ProtectNVREntity as ProtectNVREntity, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
2
+ from .entity import BaseProtectEntity as BaseProtectEntity, PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectIsOnEntity as ProtectIsOnEntity, ProtectNVREntity as ProtectNVREntity, ProtectSettableKeysMixin as ProtectSettableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
3
+ from .utils import async_ufp_instance_command as async_ufp_instance_command
3
4
  from _typeshed import Incomplete
4
5
  from collections.abc import Sequence
5
6
  from dataclasses import dataclass
@@ -13,9 +14,10 @@ from uiprotect.data import Camera, ModelType, ProtectAdoptableDeviceModel as Pro
13
14
 
14
15
  ATTR_PREV_MIC: str
15
16
  ATTR_PREV_RECORD: str
17
+ PARALLEL_UPDATES: int
16
18
 
17
19
  @dataclass(frozen=True, kw_only=True)
18
- class ProtectSwitchEntityDescription(ProtectSetableKeysMixin[T], SwitchEntityDescription): ...
20
+ class ProtectSwitchEntityDescription(ProtectSettableKeysMixin[T], SwitchEntityDescription): ...
19
21
 
20
22
  async def _set_highfps(obj: Camera, value: bool) -> None: ...
21
23
 
@@ -31,7 +33,9 @@ _PRIVACY_DESCRIPTIONS: dict[ModelType, Sequence[ProtectEntityDescription]]
31
33
 
32
34
  class ProtectBaseSwitch(ProtectIsOnEntity):
33
35
  entity_description: ProtectSwitchEntityDescription
36
+ @async_ufp_instance_command
34
37
  async def async_turn_on(self, **kwargs: Any) -> None: ...
38
+ @async_ufp_instance_command
35
39
  async def async_turn_off(self, **kwargs: Any) -> None: ...
36
40
 
37
41
  class ProtectSwitch(ProtectDeviceEntity, ProtectBaseSwitch, SwitchEntity):
@@ -51,7 +55,9 @@ class ProtectPrivacyModeSwitch(RestoreEntity, ProtectSwitch):
51
55
  def _update_previous_attr(self) -> None: ...
52
56
  @callback
53
57
  def _async_update_device_from_protect(self, device: ProtectDeviceType) -> None: ...
58
+ @async_ufp_instance_command
54
59
  async def async_turn_on(self, **kwargs: Any) -> None: ...
60
+ @async_ufp_instance_command
55
61
  async def async_turn_off(self, **kwargs: Any) -> None: ...
56
62
  async def async_added_to_hass(self) -> None: ...
57
63
 
@@ -1,5 +1,6 @@
1
1
  from .data import ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
2
- from .entity import PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
2
+ from .entity import PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectSettableKeysMixin as ProtectSettableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
3
+ from .utils import async_ufp_instance_command as async_ufp_instance_command
3
4
  from _typeshed import Incomplete
4
5
  from collections.abc import Sequence
5
6
  from dataclasses import dataclass
@@ -9,8 +10,10 @@ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callb
9
10
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
10
11
  from uiprotect.data import Camera as Camera, ModelType, ProtectAdoptableDeviceModel as ProtectAdoptableDeviceModel
11
12
 
13
+ PARALLEL_UPDATES: int
14
+
12
15
  @dataclass(frozen=True, kw_only=True)
13
- class ProtectTextEntityDescription(ProtectSetableKeysMixin[T], TextEntityDescription): ...
16
+ class ProtectTextEntityDescription(ProtectSettableKeysMixin[T], TextEntityDescription): ...
14
17
 
15
18
  def _get_doorbell_current(obj: Camera) -> str | None: ...
16
19
  async def _set_doorbell_message(obj: Camera, message: str) -> None: ...
@@ -26,4 +29,5 @@ class ProtectDeviceText(ProtectDeviceEntity, TextEntity):
26
29
  _attr_native_value: Incomplete
27
30
  @callback
28
31
  def _async_update_device_from_protect(self, device: ProtectDeviceType) -> None: ...
32
+ @async_ufp_instance_command
29
33
  async def async_set_value(self, value: str) -> None: ...
@@ -1,10 +1,13 @@
1
- from .const import CONF_ALL_UPDATES as CONF_ALL_UPDATES, CONF_OVERRIDE_CHOST as CONF_OVERRIDE_CHOST, DEVICES_FOR_SUBSCRIBE as DEVICES_FOR_SUBSCRIBE, ModelType as ModelType
1
+ from .const import CONF_ALL_UPDATES as CONF_ALL_UPDATES, CONF_OVERRIDE_CHOST as CONF_OVERRIDE_CHOST, DEVICES_FOR_SUBSCRIBE as DEVICES_FOR_SUBSCRIBE, DOMAIN as DOMAIN, ModelType as ModelType
2
2
  from .data import UFPConfigEntry as UFPConfigEntry
3
- from collections.abc import Generator, Iterable
3
+ from .entity import BaseProtectEntity as BaseProtectEntity
4
+ from collections.abc import Callable as Callable, Coroutine, Generator, Iterable
4
5
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME, CONF_VERIFY_SSL as CONF_VERIFY_SSL
5
6
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
6
8
  from homeassistant.helpers.aiohttp_client import async_create_clientsession as async_create_clientsession
7
9
  from homeassistant.helpers.storage import STORAGE_DIR as STORAGE_DIR
10
+ from typing import Any, Concatenate
8
11
  from uiprotect import ProtectApiClient
9
12
  from uiprotect.data import Bootstrap as Bootstrap, CameraChannel as CameraChannel, Light as Light, ProtectAdoptableDeviceModel as ProtectAdoptableDeviceModel
10
13
 
@@ -23,3 +26,4 @@ def async_get_light_motion_current(obj: Light) -> str: ...
23
26
  def async_create_api_client(hass: HomeAssistant, entry: UFPConfigEntry) -> ProtectApiClient: ...
24
27
  @callback
25
28
  def get_camera_base_name(channel: CameraChannel) -> str: ...
29
+ def async_ufp_instance_command[_EntityT: BaseProtectEntity, **_P](func: Callable[Concatenate[_EntityT, _P], Coroutine[Any, Any, Any]]) -> Callable[Concatenate[_EntityT, _P], Coroutine[Any, Any, None]]: ...
@@ -0,0 +1,8 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from homeassistant.const import STATE_ON as STATE_ON
3
+ from homeassistant.core import HomeAssistant as HomeAssistant
4
+ from homeassistant.helpers.trigger import Trigger as Trigger, make_entity_target_state_trigger as make_entity_target_state_trigger
5
+
6
+ TRIGGERS: dict[str, type[Trigger]]
7
+
8
+ async def async_get_triggers(hass: HomeAssistant) -> dict[str, type[Trigger]]: ...
@@ -13,6 +13,7 @@ from yarl import URL
13
13
  _LOGGER: Incomplete
14
14
  STEP_USER_DATA_SCHEMA: Incomplete
15
15
  STEP_REAUTH_DATA_SCHEMA: Incomplete
16
+ PLACEHOLDER: Incomplete
16
17
 
17
18
  async def validate_connection(hass: HomeAssistant, url: URL | str, verify_ssl: bool, api_key: str | None) -> dict[str, str]: ...
18
19
 
@@ -1,8 +1,10 @@
1
1
  from .coordinator import UptimeRobotConfigEntry as UptimeRobotConfigEntry
2
2
  from .entity import UptimeRobotEntity as UptimeRobotEntity
3
+ from .utils import new_device_listener as new_device_listener
3
4
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
4
5
  from homeassistant.core import HomeAssistant as HomeAssistant
5
6
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
7
+ from pyuptimerobot import UptimeRobotMonitor as UptimeRobotMonitor
6
8
 
7
9
  PARALLEL_UPDATES: int
8
10
 
@@ -15,3 +15,4 @@ class UptimeRobotConfigFlow(ConfigFlow, domain=DOMAIN):
15
15
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
16
16
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
17
17
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
18
+ async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -1,10 +1,12 @@
1
1
  from .coordinator import UptimeRobotConfigEntry as UptimeRobotConfigEntry
2
2
  from .entity import UptimeRobotEntity as UptimeRobotEntity
3
+ from .utils import new_device_listener as new_device_listener
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
5
6
  from homeassistant.const import EntityCategory as EntityCategory
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant
7
8
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
9
+ from pyuptimerobot import UptimeRobotMonitor as UptimeRobotMonitor
8
10
 
9
11
  SENSORS_INFO: Incomplete
10
12
  PARALLEL_UPDATES: int
@@ -1,10 +1,12 @@
1
1
  from .const import API_ATTR_OK as API_ATTR_OK, DOMAIN as DOMAIN
2
2
  from .coordinator import UptimeRobotConfigEntry as UptimeRobotConfigEntry
3
3
  from .entity import UptimeRobotEntity as UptimeRobotEntity
4
+ from .utils import new_device_listener as new_device_listener
4
5
  from homeassistant.components.switch import SwitchDeviceClass as SwitchDeviceClass, SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
5
6
  from homeassistant.core import HomeAssistant as HomeAssistant
6
7
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
7
8
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
9
+ from pyuptimerobot import UptimeRobotMonitor as UptimeRobotMonitor
8
10
  from typing import Any
9
11
 
10
12
  PARALLEL_UPDATES: int
@@ -0,0 +1,5 @@
1
+ from .coordinator import UptimeRobotDataUpdateCoordinator as UptimeRobotDataUpdateCoordinator
2
+ from collections.abc import Callable as Callable
3
+ from pyuptimerobot import UptimeRobotMonitor as UptimeRobotMonitor
4
+
5
+ def new_device_listener(coordinator: UptimeRobotDataUpdateCoordinator, new_devices_callback: Callable[[list[UptimeRobotMonitor]], None]) -> Callable[[], None]: ...
@@ -7,7 +7,7 @@ from homeassistant.helpers.debounce import Debouncer
7
7
  from homeassistant.loader import USBMatcher
8
8
  from typing import Any, overload
9
9
 
10
- __all__ = ['USBCallbackMatcher', 'async_is_plugged_in', 'async_register_port_event_callback', 'async_register_scan_request_callback']
10
+ __all__ = ['USBCallbackMatcher', 'async_register_port_event_callback', 'async_register_scan_request_callback']
11
11
 
12
12
  PORT_EVENT_CALLBACK_TYPE = Callable[[set[USBDevice], set[USBDevice]], None]
13
13
 
@@ -17,13 +17,10 @@ class USBCallbackMatcher(USBMatcher): ...
17
17
  def async_register_scan_request_callback(hass: HomeAssistant, callback: CALLBACK_TYPE) -> CALLBACK_TYPE: ...
18
18
  @hass_callback
19
19
  def async_register_port_event_callback(hass: HomeAssistant, callback: PORT_EVENT_CALLBACK_TYPE) -> CALLBACK_TYPE: ...
20
- @hass_callback
21
- def async_is_plugged_in(hass: HomeAssistant, matcher: USBCallbackMatcher) -> bool: ...
22
20
 
23
21
  class USBDiscovery:
24
22
  hass: Incomplete
25
23
  usb: Incomplete
26
- seen: set[tuple[str, ...]]
27
24
  observer_active: bool
28
25
  _request_debouncer: Debouncer[Coroutine[Any, Any, None]] | None
29
26
  _add_remove_debouncer: Debouncer[Coroutine[Any, Any, None]] | None
@@ -47,7 +44,10 @@ class USBDiscovery:
47
44
  def async_register_initial_scan_callback(self, callback: CALLBACK_TYPE) -> CALLBACK_TYPE: ...
48
45
  @hass_callback
49
46
  def async_register_port_event_callback(self, callback: PORT_EVENT_CALLBACK_TYPE) -> CALLBACK_TYPE: ...
47
+ @hass_callback
48
+ def async_get_usb_matchers_for_device(self, device: USBDevice) -> list[USBMatcher]: ...
50
49
  async def _async_process_discovered_usb_device(self, device: USBDevice) -> None: ...
50
+ async def _async_process_removed_usb_device(self, device: USBDevice) -> None: ...
51
51
  async def _async_process_ports(self, usb_devices: Sequence[USBDevice]) -> None: ...
52
52
  @hass_callback
53
53
  def _async_delayed_add_remove_scan(self) -> None: ...
@@ -1,6 +1,13 @@
1
1
  from .models import USBDevice as USBDevice
2
2
  from collections.abc import Sequence
3
+ from homeassistant.helpers.service_info.usb import UsbServiceInfo as UsbServiceInfo
4
+ from homeassistant.loader import USBMatcher as USBMatcher
3
5
  from serial.tools.list_ports_common import ListPortInfo as ListPortInfo
4
6
 
5
7
  def usb_device_from_port(port: ListPortInfo) -> USBDevice: ...
6
8
  def scan_serial_ports() -> Sequence[USBDevice]: ...
9
+ def usb_device_from_path(device_path: str) -> USBDevice | None: ...
10
+ def _fnmatch_lower(name: str | None, pattern: str) -> bool: ...
11
+ def usb_device_matches_matcher(device: USBDevice, matcher: USBMatcher) -> bool: ...
12
+ def usb_unique_id_from_service_info(usb_info: UsbServiceInfo) -> str: ...
13
+ def usb_service_info_from_device(usb_device: USBDevice) -> UsbServiceInfo: ...
@@ -59,21 +59,6 @@ class VacuumEntityFeature(IntFlag):
59
59
  STATE = 4096
60
60
  START = 8192
61
61
 
62
- _DEPRECATED_SUPPORT_TURN_ON: Incomplete
63
- _DEPRECATED_SUPPORT_TURN_OFF: Incomplete
64
- _DEPRECATED_SUPPORT_PAUSE: Incomplete
65
- _DEPRECATED_SUPPORT_STOP: Incomplete
66
- _DEPRECATED_SUPPORT_RETURN_HOME: Incomplete
67
- _DEPRECATED_SUPPORT_FAN_SPEED: Incomplete
68
- _DEPRECATED_SUPPORT_BATTERY: Incomplete
69
- _DEPRECATED_SUPPORT_STATUS: Incomplete
70
- _DEPRECATED_SUPPORT_SEND_COMMAND: Incomplete
71
- _DEPRECATED_SUPPORT_LOCATE: Incomplete
72
- _DEPRECATED_SUPPORT_CLEAN_SPOT: Incomplete
73
- _DEPRECATED_SUPPORT_MAP: Incomplete
74
- _DEPRECATED_SUPPORT_STATE: Incomplete
75
- _DEPRECATED_SUPPORT_START: Incomplete
76
-
77
62
  @bind_hass
78
63
  def is_on(hass: HomeAssistant, entity_id: str) -> bool: ...
79
64
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
@@ -1,4 +1,4 @@
1
- from . import DOMAIN as DOMAIN, SERVICE_RETURN_TO_BASE as SERVICE_RETURN_TO_BASE, SERVICE_START as SERVICE_START
1
+ from . import DOMAIN as DOMAIN, SERVICE_RETURN_TO_BASE as SERVICE_RETURN_TO_BASE, SERVICE_START as SERVICE_START, VacuumEntityFeature as VacuumEntityFeature
2
2
  from homeassistant.core import HomeAssistant as HomeAssistant
3
3
  from homeassistant.helpers import intent as intent
4
4
 
@@ -0,0 +1,7 @@
1
+ from .const import DOMAIN as DOMAIN, VacuumActivity as VacuumActivity
2
+ from homeassistant.core import HomeAssistant as HomeAssistant
3
+ from homeassistant.helpers.trigger import Trigger as Trigger, make_entity_target_state_trigger as make_entity_target_state_trigger
4
+
5
+ TRIGGERS: dict[str, type[Trigger]]
6
+
7
+ async def async_get_triggers(hass: HomeAssistant) -> dict[str, type[Trigger]]: ...
@@ -1,5 +1,5 @@
1
1
  import asyncio
2
- from .const import DOMAIN as DOMAIN
2
+ from .const import CONF_VLP_FILE as CONF_VLP_FILE, DOMAIN as DOMAIN
3
3
  from .services import async_setup_services as async_setup_services
4
4
  from _typeshed import Incomplete
5
5
  from dataclasses import dataclass
@@ -1,14 +1,22 @@
1
- from .const import CONF_TLS as CONF_TLS, DOMAIN as DOMAIN
2
- from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
1
+ from .const import CONF_TLS as CONF_TLS, CONF_VLP_FILE as CONF_VLP_FILE, DOMAIN as DOMAIN
2
+ from homeassistant.components.file_upload import process_uploaded_file as process_uploaded_file
3
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
3
4
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT
5
+ from homeassistant.core import HomeAssistant as HomeAssistant
6
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
7
+ from homeassistant.helpers import selector as selector
4
8
  from homeassistant.helpers.service_info.usb import UsbServiceInfo as UsbServiceInfo
5
- from typing import Any
9
+ from typing import Any, Final
10
+
11
+ STORAGE_PATH: Final[str]
12
+
13
+ class InvalidVlpFile(HomeAssistantError): ...
6
14
 
7
15
  class VelbusConfigFlow(ConfigFlow, domain=DOMAIN):
8
16
  VERSION: int
9
17
  MINOR_VERSION: int
10
- _errors: dict[str, str]
11
18
  _device: str
19
+ _vlp_file: str | None
12
20
  _title: str
13
21
  def __init__(self) -> None: ...
14
22
  def _create_device(self) -> ConfigFlowResult: ...
@@ -18,3 +26,8 @@ class VelbusConfigFlow(ConfigFlow, domain=DOMAIN):
18
26
  async def async_step_usbselect(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
19
27
  async def async_step_usb(self, discovery_info: UsbServiceInfo) -> ConfigFlowResult: ...
20
28
  async def async_step_discovery_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
29
+ async def _validate_vlp_file(self, file_path: str) -> None: ...
30
+ async def async_step_vlp(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
31
+ async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
32
+
33
+ def save_uploaded_vlp_file(hass: HomeAssistant, uploaded_file_id: str) -> str: ...
@@ -6,6 +6,7 @@ DOMAIN: Final[str]
6
6
  CONF_CONFIG_ENTRY: Final[str]
7
7
  CONF_MEMO_TEXT: Final[str]
8
8
  CONF_TLS: Final[str]
9
+ CONF_VLP_FILE: Final[str]
9
10
  SERVICE_SCAN: Final[str]
10
11
  SERVICE_SYNC: Final[str]
11
12
  SERVICE_SET_MEMO_TEXT: Final[str]
@@ -11,7 +11,7 @@ class VelbusEntity(Entity):
11
11
  _attr_has_entity_name: bool
12
12
  _attr_should_poll: bool
13
13
  _channel: Incomplete
14
- _module_adress: Incomplete
14
+ _module_address: Incomplete
15
15
  _attr_name: Incomplete
16
16
  _attr_device_info: Incomplete
17
17
  _attr_unique_id: Incomplete
@@ -1,24 +1,33 @@
1
1
  from . import VelbusConfigEntry as VelbusConfigEntry
2
2
  from .entity import VelbusEntity as VelbusEntity
3
3
  from _typeshed import Incomplete
4
- from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
4
+ from collections.abc import Callable as Callable
5
+ from dataclasses import dataclass
6
+ from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
5
7
  from homeassistant.core import HomeAssistant as HomeAssistant
6
8
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
7
- from velbusaio.channels import ButtonCounter as ButtonCounter, LightSensor as LightSensor, SensorNumber as SensorNumber, Temperature as Temperature
9
+ from velbusaio.channels import ButtonCounter, LightSensor, SensorNumber, Temperature
8
10
 
9
11
  PARALLEL_UPDATES: int
12
+ type VelbusSensorChannel = ButtonCounter | Temperature | LightSensor | SensorNumber
13
+
14
+ @dataclass(frozen=True, kw_only=True)
15
+ class VelbusSensorEntityDescription(SensorEntityDescription):
16
+ value_fn: Callable[[VelbusSensorChannel], float | None] = ...
17
+ unit_fn: Callable[[VelbusSensorChannel], str | None] = ...
18
+ unique_id_suffix: str = ...
19
+
20
+ SENSOR_DESCRIPTIONS: dict[str, VelbusSensorEntityDescription]
10
21
 
11
22
  async def async_setup_entry(hass: HomeAssistant, entry: VelbusConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
12
23
 
13
24
  class VelbusSensor(VelbusEntity, SensorEntity):
14
- _channel: ButtonCounter | Temperature | LightSensor | SensorNumber
15
- _is_counter: bool
16
- _attr_device_class: Incomplete
17
- _attr_icon: str
18
- _attr_name: Incomplete
19
- _attr_state_class: Incomplete
20
- _attr_unique_id: Incomplete
25
+ _channel: VelbusSensorChannel
26
+ entity_description: VelbusSensorEntityDescription
27
+ _is_counter: Incomplete
21
28
  _attr_native_unit_of_measurement: Incomplete
22
- def __init__(self, channel: ButtonCounter | Temperature | LightSensor | SensorNumber, counter: bool = False) -> None: ...
29
+ _attr_unique_id: Incomplete
30
+ _attr_name: Incomplete
31
+ def __init__(self, channel: VelbusSensorChannel, description: VelbusSensorEntityDescription, is_counter: bool = False) -> None: ...
23
32
  @property
24
33
  def native_value(self) -> float | int | None: ...
@@ -3,7 +3,7 @@ from .const import CONF_CONFIG_ENTRY as CONF_CONFIG_ENTRY, CONF_MEMO_TEXT as CON
3
3
  from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
4
4
  from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
6
- from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
6
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
7
7
  from homeassistant.helpers import selector as selector
8
8
  from homeassistant.helpers.storage import STORAGE_DIR as STORAGE_DIR
9
9
 
@@ -0,0 +1,17 @@
1
+ from .const import CONF_SECURITY_LEVEL as CONF_SECURITY_LEVEL
2
+ from _typeshed import Incomplete
3
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
+ from homeassistant.const import CONF_AUTHENTICATION as CONF_AUTHENTICATION, CONF_IP_ADDRESS as CONF_IP_ADDRESS, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME, CONF_VERIFY_SSL as CONF_VERIFY_SSL, HTTP_DIGEST_AUTHENTICATION as HTTP_DIGEST_AUTHENTICATION, Platform as Platform
5
+ from homeassistant.core import HomeAssistant as HomeAssistant
6
+ from homeassistant.exceptions import ConfigEntryError as ConfigEntryError
7
+ from libpyvivotek.vivotek import VivotekCamera
8
+ from typing import Any
9
+
10
+ _LOGGER: Incomplete
11
+ PLATFORMS: Incomplete
12
+ type VivotekConfigEntry = ConfigEntry[VivotekCamera]
13
+
14
+ def build_cam_client(data: dict[str, Any]) -> VivotekCamera: ...
15
+ async def async_build_and_test_cam_client(hass: HomeAssistant, data: dict[str, Any]) -> VivotekCamera: ...
16
+ async def async_setup_entry(hass: HomeAssistant, entry: VivotekConfigEntry) -> bool: ...
17
+ async def async_unload_entry(hass: HomeAssistant, entry: VivotekConfigEntry) -> bool: ...
@@ -0,0 +1,41 @@
1
+ from . import VivotekConfigEntry as VivotekConfigEntry
2
+ from .const import CONF_FRAMERATE as CONF_FRAMERATE, CONF_SECURITY_LEVEL as CONF_SECURITY_LEVEL, CONF_STREAM_PATH as CONF_STREAM_PATH, DOMAIN as DOMAIN, INTEGRATION_TITLE as INTEGRATION_TITLE
3
+ from _typeshed import Incomplete
4
+ from homeassistant.components.camera import Camera as Camera, CameraEntityFeature as CameraEntityFeature
5
+ from homeassistant.config_entries import SOURCE_IMPORT as SOURCE_IMPORT
6
+ from homeassistant.const import CONF_AUTHENTICATION as CONF_AUTHENTICATION, CONF_IP_ADDRESS as CONF_IP_ADDRESS, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_SSL as CONF_SSL, CONF_USERNAME as CONF_USERNAME, CONF_VERIFY_SSL as CONF_VERIFY_SSL, HTTP_BASIC_AUTHENTICATION as HTTP_BASIC_AUTHENTICATION, HTTP_DIGEST_AUTHENTICATION as HTTP_DIGEST_AUTHENTICATION
7
+ from homeassistant.core import HomeAssistant as HomeAssistant
8
+ from homeassistant.data_entry_flow import FlowResultType as FlowResultType
9
+ from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback, AddEntitiesCallback as AddEntitiesCallback
10
+ from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
11
+ from libpyvivotek.vivotek import VivotekCamera as VivotekCamera
12
+
13
+ _LOGGER: Incomplete
14
+ DEFAULT_CAMERA_BRAND: str
15
+ DEFAULT_NAME: str
16
+ DEFAULT_EVENT_0_KEY: str
17
+ DEFAULT_FRAMERATE: int
18
+ DEFAULT_SECURITY_LEVEL: str
19
+ DEFAULT_STREAM_SOURCE: str
20
+ PLATFORM_SCHEMA: Incomplete
21
+
22
+ async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
23
+ async def async_setup_entry(hass: HomeAssistant, entry: VivotekConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
24
+
25
+ class VivotekCam(Camera):
26
+ _attr_brand = DEFAULT_CAMERA_BRAND
27
+ _attr_supported_features: Incomplete
28
+ _cam: Incomplete
29
+ _attr_frame_interval: Incomplete
30
+ _attr_unique_id: Incomplete
31
+ _attr_name: Incomplete
32
+ _stream_source: Incomplete
33
+ def __init__(self, cam_client: VivotekCamera, stream_source: str, unique_id: str, framerate: int, name: str) -> None: ...
34
+ def camera_image(self, width: int | None = None, height: int | None = None) -> bytes | None: ...
35
+ async def stream_source(self) -> str: ...
36
+ _attr_motion_detection_enabled: Incomplete
37
+ def disable_motion_detection(self) -> None: ...
38
+ def enable_motion_detection(self) -> None: ...
39
+ _attr_model: Incomplete
40
+ _attr_available: Incomplete
41
+ def update(self) -> None: ...
@@ -0,0 +1,25 @@
1
+ from . import VivotekConfigEntry as VivotekConfigEntry, build_cam_client as build_cam_client
2
+ from .camera import DEFAULT_FRAMERATE as DEFAULT_FRAMERATE, DEFAULT_NAME as DEFAULT_NAME, DEFAULT_STREAM_SOURCE as DEFAULT_STREAM_SOURCE
3
+ from .const import CONF_FRAMERATE as CONF_FRAMERATE, CONF_SECURITY_LEVEL as CONF_SECURITY_LEVEL, CONF_STREAM_PATH as CONF_STREAM_PATH, DOMAIN as DOMAIN
4
+ from _typeshed import Incomplete
5
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
6
+ from homeassistant.const import CONF_AUTHENTICATION as CONF_AUTHENTICATION, CONF_IP_ADDRESS as CONF_IP_ADDRESS, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_SSL as CONF_SSL, CONF_USERNAME as CONF_USERNAME, CONF_VERIFY_SSL as CONF_VERIFY_SSL, HTTP_BASIC_AUTHENTICATION as HTTP_BASIC_AUTHENTICATION, HTTP_DIGEST_AUTHENTICATION as HTTP_DIGEST_AUTHENTICATION, UnitOfFrequency as UnitOfFrequency
7
+ from homeassistant.core import callback as callback
8
+ from homeassistant.helpers.device_registry import format_mac as format_mac
9
+ from homeassistant.helpers.selector import NumberSelector as NumberSelector, NumberSelectorConfig as NumberSelectorConfig, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode
10
+ from typing import Any
11
+
12
+ _LOGGER: Incomplete
13
+ DESCRIPTION_PLACEHOLDERS: Incomplete
14
+ CONF_SCHEMA: Incomplete
15
+ OPTIONS_SCHEMA: Incomplete
16
+
17
+ class OptionsFlowHandler(OptionsFlow):
18
+ async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
19
+
20
+ class VivotekConfigFlow(ConfigFlow, domain=DOMAIN):
21
+ @staticmethod
22
+ @callback
23
+ def async_get_options_flow(config_entry: VivotekConfigEntry) -> OptionsFlowHandler: ...
24
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
25
+ async def async_step_import(self, import_data: dict[str, Any]) -> ConfigFlowResult: ...
@@ -0,0 +1,6 @@
1
+ CONF_FRAMERATE: str
2
+ CONF_SECURITY_LEVEL: str
3
+ CONF_STREAM_PATH: str
4
+ DOMAIN: str
5
+ MANUFACTURER: str
6
+ INTEGRATION_TITLE: str
@@ -1,10 +1,12 @@
1
+ from .const import CONF_DEVICE_DETAILS as CONF_DEVICE_DETAILS, DEVICE_TYPE as DEVICE_TYPE, DEVICE_URL as DEVICE_URL, _LOGGER as _LOGGER
1
2
  from .coordinator import VodafoneConfigEntry as VodafoneConfigEntry, VodafoneStationRouter as VodafoneStationRouter
2
3
  from .utils import async_client_session as async_client_session
3
4
  from _typeshed import Incomplete
4
- from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, Platform as Platform
5
+ from homeassistant.const import CONF_HOST as CONF_HOST, Platform as Platform
5
6
  from homeassistant.core import HomeAssistant as HomeAssistant
6
7
 
7
8
  PLATFORMS: Incomplete
8
9
 
9
10
  async def async_setup_entry(hass: HomeAssistant, entry: VodafoneConfigEntry) -> bool: ...
11
+ async def async_migrate_entry(hass: HomeAssistant, entry: VodafoneConfigEntry) -> bool: ...
10
12
  async def async_unload_entry(hass: HomeAssistant, entry: VodafoneConfigEntry) -> bool: ...
@@ -1,5 +1,5 @@
1
1
  import voluptuous as vol
2
- from .const import DEFAULT_HOST as DEFAULT_HOST, DEFAULT_USERNAME as DEFAULT_USERNAME, DOMAIN as DOMAIN, _LOGGER as _LOGGER
2
+ from .const import CONF_DEVICE_DETAILS as CONF_DEVICE_DETAILS, DEFAULT_HOST as DEFAULT_HOST, DEFAULT_USERNAME as DEFAULT_USERNAME, DEVICE_TYPE as DEVICE_TYPE, DEVICE_URL as DEVICE_URL, DOMAIN as DOMAIN, _LOGGER as _LOGGER
3
3
  from .coordinator import VodafoneConfigEntry as VodafoneConfigEntry
4
4
  from .utils import async_client_session as async_client_session
5
5
  from _typeshed import Incomplete
@@ -14,10 +14,11 @@ def user_form_schema(user_input: dict[str, Any] | None) -> vol.Schema: ...
14
14
 
15
15
  STEP_REAUTH_DATA_SCHEMA: Incomplete
16
16
 
17
- async def validate_input(hass: HomeAssistant, data: dict[str, Any]) -> dict[str, str]: ...
17
+ async def validate_input(hass: HomeAssistant, data: dict[str, Any]) -> dict[str, Any]: ...
18
18
 
19
19
  class VodafoneStationConfigFlow(ConfigFlow, domain=DOMAIN):
20
20
  VERSION: int
21
+ MINOR_VERSION: int
21
22
  @staticmethod
22
23
  @callback
23
24
  def async_get_options_flow(config_entry: VodafoneConfigEntry) -> VodafoneStationOptionsFlowHandler: ...
@@ -3,6 +3,9 @@ from _typeshed import Incomplete
3
3
  _LOGGER: Incomplete
4
4
  DOMAIN: str
5
5
  SCAN_INTERVAL: int
6
+ CONF_DEVICE_DETAILS: str
7
+ DEVICE_URL: str
8
+ DEVICE_TYPE: str
6
9
  DEFAULT_DEVICE_NAME: str
7
10
  DEFAULT_HOST: str
8
11
  DEFAULT_USERNAME: str
@@ -1,12 +1,13 @@
1
- from .const import DOMAIN as DOMAIN, SCAN_INTERVAL as SCAN_INTERVAL, _LOGGER as _LOGGER
1
+ from .const import CONF_DEVICE_DETAILS as CONF_DEVICE_DETAILS, DEVICE_TYPE as DEVICE_TYPE, DEVICE_URL as DEVICE_URL, DOMAIN as DOMAIN, SCAN_INTERVAL as SCAN_INTERVAL, _LOGGER as _LOGGER
2
2
  from .helpers import cleanup_device_tracker as cleanup_device_tracker
3
3
  from _typeshed import Incomplete
4
4
  from aiohttp import ClientSession as ClientSession
5
- from aiovodafone import VodafoneStationDevice as VodafoneStationDevice
5
+ from aiovodafone.api import VodafoneStationDevice as VodafoneStationDevice
6
6
  from dataclasses import dataclass
7
7
  from datetime import datetime
8
8
  from homeassistant.components.device_tracker import DEFAULT_CONSIDER_HOME as DEFAULT_CONSIDER_HOME
9
9
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
10
+ from homeassistant.const import CONF_HOST as CONF_HOST
10
11
  from homeassistant.core import HomeAssistant as HomeAssistant
11
12
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
12
13
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
@@ -29,11 +30,10 @@ class UpdateCoordinatorDataType:
29
30
 
30
31
  class VodafoneStationRouter(DataUpdateCoordinator[UpdateCoordinatorDataType]):
31
32
  config_entry: VodafoneConfigEntry
32
- _host: Incomplete
33
33
  api: Incomplete
34
34
  _id: Incomplete
35
35
  previous_devices: Incomplete
36
- def __init__(self, hass: HomeAssistant, host: str, username: str, password: str, config_entry: VodafoneConfigEntry, session: ClientSession) -> None: ...
36
+ def __init__(self, hass: HomeAssistant, config_entry: VodafoneConfigEntry, session: ClientSession) -> None: ...
37
37
  def _calculate_update_time_and_consider_home(self, device: VodafoneStationDevice, utc_point_in_time: datetime) -> tuple[datetime | None, bool]: ...
38
38
  async def _async_update_data(self) -> UpdateCoordinatorDataType: ...
39
39
  @property
@@ -1,15 +1,17 @@
1
1
  from .api import VolvoAuth as VolvoAuth
2
2
  from .const import CONF_VIN as CONF_VIN, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
3
- from .coordinator import VolvoConfigEntry as VolvoConfigEntry, VolvoFastIntervalCoordinator as VolvoFastIntervalCoordinator, VolvoMediumIntervalCoordinator as VolvoMediumIntervalCoordinator, VolvoSlowIntervalCoordinator as VolvoSlowIntervalCoordinator, VolvoVerySlowIntervalCoordinator as VolvoVerySlowIntervalCoordinator
3
+ from .coordinator import VolvoConfigEntry as VolvoConfigEntry, VolvoContext as VolvoContext, VolvoFastIntervalCoordinator as VolvoFastIntervalCoordinator, VolvoMediumIntervalCoordinator as VolvoMediumIntervalCoordinator, VolvoRuntimeData as VolvoRuntimeData, VolvoSlowIntervalCoordinator as VolvoSlowIntervalCoordinator, VolvoVerySlowIntervalCoordinator as VolvoVerySlowIntervalCoordinator
4
4
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
6
6
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady
7
7
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
- from homeassistant.helpers.config_entry_oauth2_flow import OAuth2Session as OAuth2Session, async_get_config_entry_implementation as async_get_config_entry_implementation
8
+ from homeassistant.helpers.config_entry_oauth2_flow import ImplementationUnavailableError as ImplementationUnavailableError, OAuth2Session as OAuth2Session, async_get_config_entry_implementation as async_get_config_entry_implementation
9
9
  from volvocarsapi.api import VolvoCarsApi
10
10
  from volvocarsapi.models import VolvoCarsVehicle as VolvoCarsVehicle
11
11
 
12
12
  async def async_setup_entry(hass: HomeAssistant, entry: VolvoConfigEntry) -> bool: ...
13
13
  async def async_unload_entry(hass: HomeAssistant, entry: VolvoConfigEntry) -> bool: ...
14
14
  async def _async_auth_and_create_api(hass: HomeAssistant, entry: VolvoConfigEntry) -> VolvoCarsApi: ...
15
+ async def _async_create_context(api: VolvoCarsApi) -> VolvoContext: ...
15
16
  async def _async_load_vehicle(api: VolvoCarsApi) -> VolvoCarsVehicle: ...
17
+ async def _async_load_supported_commands(api: VolvoCarsApi) -> list[str]: ...
@@ -1,8 +1,12 @@
1
1
  from _typeshed import Incomplete
2
2
  from aiohttp import ClientSession as ClientSession
3
3
  from homeassistant.helpers.config_entry_oauth2_flow import OAuth2Session as OAuth2Session
4
+ from homeassistant.helpers.redact import async_redact_data as async_redact_data
4
5
  from volvocarsapi.auth import AccessTokenManager
5
6
 
7
+ _LOGGER: Incomplete
8
+ _TO_REDACT: Incomplete
9
+
6
10
  class VolvoAuth(AccessTokenManager):
7
11
  _oauth_session: Incomplete
8
12
  def __init__(self, websession: ClientSession, oauth_session: OAuth2Session) -> None: ...
@@ -1,5 +1,5 @@
1
1
  from .const import API_NONE_VALUE as API_NONE_VALUE
2
- from .coordinator import VolvoBaseCoordinator as VolvoBaseCoordinator, VolvoConfigEntry as VolvoConfigEntry
2
+ from .coordinator import VolvoConfigEntry as VolvoConfigEntry
3
3
  from .entity import VolvoEntity as VolvoEntity, VolvoEntityDescription as VolvoEntityDescription
4
4
  from _typeshed import Incomplete
5
5
  from dataclasses import dataclass, field
@@ -36,7 +36,5 @@ async def async_setup_entry(hass: HomeAssistant, entry: VolvoConfigEntry, async_
36
36
 
37
37
  class VolvoBinarySensor(VolvoEntity, BinarySensorEntity):
38
38
  entity_description: VolvoBinarySensorDescription
39
- _attr_extra_state_attributes: Incomplete
40
- def __init__(self, coordinator: VolvoBaseCoordinator, description: VolvoBinarySensorDescription) -> None: ...
41
39
  _attr_is_on: Incomplete
42
40
  def _update_state(self, api_field: VolvoCarsApiBaseModel | None) -> None: ...
@@ -0,0 +1,27 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from .coordinator import VolvoConfigEntry as VolvoConfigEntry
3
+ from .entity import VolvoBaseEntity as VolvoBaseEntity, VolvoEntityDescription as VolvoEntityDescription
4
+ from _typeshed import Incomplete
5
+ from dataclasses import dataclass
6
+ from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
7
+ from homeassistant.core import HomeAssistant as HomeAssistant
8
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
+ from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
10
+
11
+ PARALLEL_UPDATES: int
12
+ _LOGGER: Incomplete
13
+
14
+ @dataclass(frozen=True, kw_only=True)
15
+ class VolvoButtonDescription(VolvoEntityDescription, ButtonEntityDescription):
16
+ api_command: str
17
+ required_command_key: str
18
+ data: dict[str, int] | None = ...
19
+
20
+ _DESCRIPTIONS: tuple[VolvoButtonDescription, ...]
21
+
22
+ async def async_setup_entry(hass: HomeAssistant, entry: VolvoConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
23
+
24
+ class VolvoButton(VolvoBaseEntity, ButtonEntity):
25
+ entity_description: VolvoButtonDescription
26
+ async def async_press(self) -> None: ...
27
+ def _raise(self, command: str, *, status: str = '', message: str = '', exception: Exception | None = None) -> None: ...