homeassistant-stubs 2025.1.4__py3-none-any.whl → 2025.2.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 (722) hide show
  1. homeassistant-stubs/auth/mfa_modules/__init__.pyi +2 -4
  2. homeassistant-stubs/auth/models.pyi +1 -1
  3. homeassistant-stubs/auth/permissions/__init__.pyi +1 -1
  4. homeassistant-stubs/auth/providers/__init__.pyi +2 -4
  5. homeassistant-stubs/backup_restore.pyi +2 -0
  6. homeassistant-stubs/components/airgradient/button.pyi +4 -1
  7. homeassistant-stubs/components/airgradient/config_flow.pyi +5 -3
  8. homeassistant-stubs/components/airgradient/entity.pyi +5 -0
  9. homeassistant-stubs/components/airgradient/number.pyi +4 -1
  10. homeassistant-stubs/components/airgradient/select.pyi +4 -1
  11. homeassistant-stubs/components/airgradient/sensor.pyi +2 -0
  12. homeassistant-stubs/components/airgradient/switch.pyi +5 -1
  13. homeassistant-stubs/components/airgradient/update.pyi +2 -1
  14. homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
  15. homeassistant-stubs/components/airzone/__init__.pyi +2 -0
  16. homeassistant-stubs/components/airzone/config_flow.pyi +3 -2
  17. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +1 -1
  18. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +2 -2
  19. homeassistant-stubs/components/api/__init__.pyi +1 -1
  20. homeassistant-stubs/components/apple_tv/config_flow.pyi +2 -1
  21. homeassistant-stubs/components/apsystems/coordinator.pyi +1 -0
  22. homeassistant-stubs/components/aranet/sensor.pyi +1 -1
  23. homeassistant-stubs/components/arcam_fmj/config_flow.pyi +2 -2
  24. homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
  25. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +4 -1
  26. homeassistant-stubs/components/assist_pipeline/select.pyi +2 -2
  27. homeassistant-stubs/components/assist_pipeline/websocket_api.pyi +2 -2
  28. homeassistant-stubs/components/assist_satellite/__init__.pyi +1 -1
  29. homeassistant-stubs/components/assist_satellite/entity.pyi +2 -0
  30. homeassistant-stubs/components/assist_satellite/intent.pyi +13 -0
  31. homeassistant-stubs/components/assist_satellite/websocket_api.pyi +0 -2
  32. homeassistant-stubs/components/automation/__init__.pyi +1 -1
  33. homeassistant-stubs/components/awair/config_flow.pyi +3 -2
  34. homeassistant-stubs/components/axis/config_flow.pyi +6 -4
  35. homeassistant-stubs/components/backup/__init__.pyi +6 -2
  36. homeassistant-stubs/components/backup/agent.pyi +6 -4
  37. homeassistant-stubs/components/backup/backup.pyi +1 -0
  38. homeassistant-stubs/components/backup/config.pyi +44 -1
  39. homeassistant-stubs/components/backup/http.pyi +7 -0
  40. homeassistant-stubs/components/backup/manager.pyi +42 -20
  41. homeassistant-stubs/components/backup/models.pyi +10 -3
  42. homeassistant-stubs/components/backup/store.pyi +7 -2
  43. homeassistant-stubs/components/backup/util.pyi +83 -0
  44. homeassistant-stubs/components/backup/websocket.pyi +5 -2
  45. homeassistant-stubs/components/baf/config_flow.pyi +2 -2
  46. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +1 -1
  47. homeassistant-stubs/components/bang_olufsen/const.pyi +6 -0
  48. homeassistant-stubs/components/bang_olufsen/event.pyi +23 -0
  49. homeassistant-stubs/components/bang_olufsen/websocket.pyi +3 -2
  50. homeassistant-stubs/components/binary_sensor/__init__.pyi +1 -1
  51. homeassistant-stubs/components/blueprint/importer.pyi +0 -1
  52. homeassistant-stubs/components/blueprint/models.pyi +0 -1
  53. homeassistant-stubs/components/blueprint/websocket_api.pyi +0 -1
  54. homeassistant-stubs/components/bluesound/__init__.pyi +2 -0
  55. homeassistant-stubs/components/bluesound/config_flow.pyi +2 -3
  56. homeassistant-stubs/components/bluesound/coordinator.pyi +30 -0
  57. homeassistant-stubs/components/bluesound/media_player.pyi +10 -25
  58. homeassistant-stubs/components/bluetooth/__init__.pyi +2 -2
  59. homeassistant-stubs/components/bluetooth/api.pyi +3 -1
  60. homeassistant-stubs/components/bluetooth/config_flow.pyi +10 -3
  61. homeassistant-stubs/components/bluetooth/const.pyi +4 -0
  62. homeassistant-stubs/components/bluetooth/manager.pyi +5 -1
  63. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +1 -4
  64. homeassistant-stubs/components/bluetooth/storage.pyi +2 -0
  65. homeassistant-stubs/components/bluetooth/util.pyi +6 -1
  66. homeassistant-stubs/components/bluetooth/websocket_api.pyi +46 -0
  67. homeassistant-stubs/components/bond/config_flow.pyi +2 -2
  68. homeassistant-stubs/components/braviatv/config_flow.pyi +2 -2
  69. homeassistant-stubs/components/brother/config_flow.pyi +2 -2
  70. homeassistant-stubs/components/button/__init__.pyi +1 -1
  71. homeassistant-stubs/components/cambridge_audio/config_flow.pyi +2 -2
  72. homeassistant-stubs/components/camera/__init__.pyi +1 -1
  73. homeassistant-stubs/components/canary/__init__.pyi +7 -7
  74. homeassistant-stubs/components/canary/alarm_control_panel.pyi +2 -4
  75. homeassistant-stubs/components/canary/camera.pyi +3 -4
  76. homeassistant-stubs/components/canary/const.pyi +0 -2
  77. homeassistant-stubs/components/canary/coordinator.pyi +3 -1
  78. homeassistant-stubs/components/canary/sensor.pyi +3 -4
  79. homeassistant-stubs/components/climate/__init__.pyi +2 -2
  80. homeassistant-stubs/components/climate/const.pyi +1 -0
  81. homeassistant-stubs/components/climate/intent.pyi +9 -1
  82. homeassistant-stubs/components/cloud/__init__.pyi +1 -1
  83. homeassistant-stubs/components/cloud/backup.pyi +3 -9
  84. homeassistant-stubs/components/cloud/const.pyi +0 -1
  85. homeassistant-stubs/components/config/core.pyi +1 -1
  86. homeassistant-stubs/components/cookidoo/__init__.pyi +6 -2
  87. homeassistant-stubs/components/cookidoo/button.pyi +27 -0
  88. homeassistant-stubs/components/cookidoo/config_flow.pyi +4 -1
  89. homeassistant-stubs/components/cookidoo/const.pyi +3 -0
  90. homeassistant-stubs/components/cookidoo/coordinator.pyi +3 -1
  91. homeassistant-stubs/components/cookidoo/diagnostics.pyi +10 -0
  92. homeassistant-stubs/components/cookidoo/helpers.pyi +9 -0
  93. homeassistant-stubs/components/cookidoo/sensor.pyi +34 -0
  94. homeassistant-stubs/components/cover/__init__.pyi +1 -1
  95. homeassistant-stubs/components/crownstone/__init__.pyi +6 -5
  96. homeassistant-stubs/components/crownstone/config_flow.pyi +6 -4
  97. homeassistant-stubs/components/crownstone/entry_manager.pyi +6 -6
  98. homeassistant-stubs/components/crownstone/helpers.pyi +2 -1
  99. homeassistant-stubs/components/crownstone/light.pyi +3 -4
  100. homeassistant-stubs/components/date/__init__.pyi +1 -1
  101. homeassistant-stubs/components/datetime/__init__.pyi +1 -1
  102. homeassistant-stubs/components/deconz/__init__.pyi +5 -4
  103. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +2 -2
  104. homeassistant-stubs/components/deconz/binary_sensor.pyi +2 -2
  105. homeassistant-stubs/components/deconz/button.pyi +2 -2
  106. homeassistant-stubs/components/deconz/climate.pyi +2 -2
  107. homeassistant-stubs/components/deconz/config_flow.pyi +3 -6
  108. homeassistant-stubs/components/deconz/cover.pyi +2 -2
  109. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -2
  110. homeassistant-stubs/components/deconz/diagnostics.pyi +2 -3
  111. homeassistant-stubs/components/deconz/fan.pyi +2 -2
  112. homeassistant-stubs/components/deconz/hub/api.pyi +2 -2
  113. homeassistant-stubs/components/deconz/hub/config.pyi +3 -3
  114. homeassistant-stubs/components/deconz/hub/hub.pyi +4 -6
  115. homeassistant-stubs/components/deconz/light.pyi +2 -2
  116. homeassistant-stubs/components/deconz/lock.pyi +2 -3
  117. homeassistant-stubs/components/deconz/number.pyi +2 -2
  118. homeassistant-stubs/components/deconz/scene.pyi +2 -3
  119. homeassistant-stubs/components/deconz/select.pyi +2 -3
  120. homeassistant-stubs/components/deconz/sensor.pyi +2 -2
  121. homeassistant-stubs/components/deconz/services.pyi +2 -1
  122. homeassistant-stubs/components/deconz/siren.pyi +2 -3
  123. homeassistant-stubs/components/deconz/switch.pyi +2 -3
  124. homeassistant-stubs/components/deconz/util.pyi +7 -0
  125. homeassistant-stubs/components/device_tracker/config_entry.pyi +1 -1
  126. homeassistant-stubs/components/device_tracker/legacy.pyi +1 -1
  127. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +2 -2
  128. homeassistant-stubs/components/devolo_home_network/config_flow.pyi +2 -1
  129. homeassistant-stubs/components/dhcp/__init__.pyi +6 -7
  130. homeassistant-stubs/components/discovergy/sensor.pyi +2 -0
  131. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +7 -6
  132. homeassistant-stubs/components/dlna_dmr/media_player.pyi +2 -1
  133. homeassistant-stubs/components/dlna_dms/config_flow.pyi +5 -4
  134. homeassistant-stubs/components/dlna_dms/dms.pyi +3 -2
  135. homeassistant-stubs/components/doorbird/config_flow.pyi +2 -2
  136. homeassistant-stubs/components/doorbird/device.pyi +1 -1
  137. homeassistant-stubs/components/dormakaba_dkey/__init__.pyi +5 -9
  138. homeassistant-stubs/components/dormakaba_dkey/binary_sensor.pyi +3 -7
  139. homeassistant-stubs/components/dormakaba_dkey/coordinator.pyi +15 -0
  140. homeassistant-stubs/components/dormakaba_dkey/entity.pyi +4 -5
  141. homeassistant-stubs/components/dormakaba_dkey/lock.pyi +3 -7
  142. homeassistant-stubs/components/dormakaba_dkey/sensor.pyi +3 -7
  143. homeassistant-stubs/components/dunehd/__init__.pyi +4 -3
  144. homeassistant-stubs/components/dunehd/media_player.pyi +2 -2
  145. homeassistant-stubs/components/duotecno/__init__.pyi +4 -3
  146. homeassistant-stubs/components/duotecno/binary_sensor.pyi +2 -4
  147. homeassistant-stubs/components/duotecno/climate.pyi +2 -4
  148. homeassistant-stubs/components/duotecno/cover.pyi +2 -4
  149. homeassistant-stubs/components/duotecno/light.pyi +2 -4
  150. homeassistant-stubs/components/duotecno/switch.pyi +2 -4
  151. homeassistant-stubs/components/eheimdigital/climate.pyi +38 -0
  152. homeassistant-stubs/components/eheimdigital/config_flow.pyi +1 -1
  153. homeassistant-stubs/components/eheimdigital/const.pyi +4 -0
  154. homeassistant-stubs/components/electrasmart/__init__.pyi +6 -4
  155. homeassistant-stubs/components/electrasmart/climate.pyi +2 -2
  156. homeassistant-stubs/components/electric_kiwi/__init__.pyi +3 -5
  157. homeassistant-stubs/components/electric_kiwi/const.pyi +0 -2
  158. homeassistant-stubs/components/electric_kiwi/coordinator.pyi +10 -2
  159. homeassistant-stubs/components/electric_kiwi/select.pyi +3 -4
  160. homeassistant-stubs/components/electric_kiwi/sensor.pyi +3 -4
  161. homeassistant-stubs/components/elevenlabs/const.pyi +1 -0
  162. homeassistant-stubs/components/elevenlabs/tts.pyi +1 -1
  163. homeassistant-stubs/components/elgato/config_flow.pyi +3 -2
  164. homeassistant-stubs/components/elkm1/binary_sensor.pyi +1 -1
  165. homeassistant-stubs/components/elkm1/config_flow.pyi +2 -2
  166. homeassistant-stubs/components/elkm1/sensor.pyi +5 -5
  167. homeassistant-stubs/components/energenie_power_sockets/__init__.pyi +5 -4
  168. homeassistant-stubs/components/energenie_power_sockets/switch.pyi +2 -2
  169. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +5 -5
  170. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +7 -0
  171. homeassistant-stubs/components/enphase_envoy/select.pyi +2 -2
  172. homeassistant-stubs/components/enphase_envoy/sensor.pyi +1 -4
  173. homeassistant-stubs/components/esphome/__init__.pyi +1 -0
  174. homeassistant-stubs/components/esphome/bluetooth.pyi +1 -0
  175. homeassistant-stubs/components/esphome/config_flow.pyi +5 -3
  176. homeassistant-stubs/components/esphome/dashboard.pyi +2 -1
  177. homeassistant-stubs/components/esphome/manager.pyi +1 -1
  178. homeassistant-stubs/components/event/__init__.pyi +2 -2
  179. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +3 -5
  180. homeassistant-stubs/components/evil_genius_labs/coordinator.pyi +4 -1
  181. homeassistant-stubs/components/evil_genius_labs/diagnostics.pyi +2 -4
  182. homeassistant-stubs/components/evil_genius_labs/light.pyi +2 -4
  183. homeassistant-stubs/components/fan/__init__.pyi +1 -1
  184. homeassistant-stubs/components/feedreader/__init__.pyi +3 -5
  185. homeassistant-stubs/components/feedreader/coordinator.pyi +5 -3
  186. homeassistant-stubs/components/filter/__init__.pyi +6 -4
  187. homeassistant-stubs/components/filter/config_flow.pyi +28 -0
  188. homeassistant-stubs/components/filter/const.pyi +29 -0
  189. homeassistant-stubs/components/filter/sensor.pyi +3 -24
  190. homeassistant-stubs/components/flux_led/config_flow.pyi +2 -2
  191. homeassistant-stubs/components/fritz/__init__.pyi +9 -7
  192. homeassistant-stubs/components/fritz/binary_sensor.pyi +2 -4
  193. homeassistant-stubs/components/fritz/button.pyi +3 -4
  194. homeassistant-stubs/components/fritz/config_flow.pyi +6 -5
  195. homeassistant-stubs/components/fritz/const.pyi +0 -3
  196. homeassistant-stubs/components/fritz/coordinator.pyi +12 -10
  197. homeassistant-stubs/components/fritz/device_tracker.pyi +2 -4
  198. homeassistant-stubs/components/fritz/diagnostics.pyi +2 -4
  199. homeassistant-stubs/components/fritz/image.pyi +2 -4
  200. homeassistant-stubs/components/fritz/sensor.pyi +3 -4
  201. homeassistant-stubs/components/fritz/services.pyi +5 -8
  202. homeassistant-stubs/components/fritz/switch.pyi +3 -4
  203. homeassistant-stubs/components/fritz/update.pyi +2 -4
  204. homeassistant-stubs/components/fritzbox/config_flow.pyi +2 -2
  205. homeassistant-stubs/components/fritzbox/coordinator.pyi +1 -1
  206. homeassistant-stubs/components/fronius/config_flow.pyi +1 -1
  207. homeassistant-stubs/components/frontend/__init__.pyi +1 -1
  208. homeassistant-stubs/components/fujitsu_fglair/climate.pyi +2 -8
  209. homeassistant-stubs/components/fujitsu_fglair/entity.pyi +15 -0
  210. homeassistant-stubs/components/fujitsu_fglair/sensor.pyi +21 -0
  211. homeassistant-stubs/components/fully_kiosk/config_flow.pyi +1 -1
  212. homeassistant-stubs/components/fyta/binary_sensor.pyi +23 -0
  213. homeassistant-stubs/components/fyta/entity.pyi +2 -2
  214. homeassistant-stubs/components/fyta/image.pyi +18 -0
  215. homeassistant-stubs/components/generic_thermostat/climate.pyi +1 -0
  216. homeassistant-stubs/components/geo_location/__init__.pyi +1 -1
  217. homeassistant-stubs/components/goalzero/config_flow.pyi +2 -2
  218. homeassistant-stubs/components/google_drive/__init__.pyi +17 -0
  219. homeassistant-stubs/components/google_drive/api.pyi +35 -0
  220. homeassistant-stubs/components/google_drive/application_credentials.pyi +5 -0
  221. homeassistant-stubs/components/google_drive/backup.pyi +28 -0
  222. homeassistant-stubs/components/google_drive/config_flow.pyi +24 -0
  223. homeassistant-stubs/components/google_drive/const.pyi +1 -0
  224. homeassistant-stubs/components/guardian/config_flow.pyi +4 -3
  225. homeassistant-stubs/components/habitica/__init__.pyi +16 -0
  226. homeassistant-stubs/components/habitica/binary_sensor.pyi +33 -0
  227. homeassistant-stubs/components/habitica/button.pyi +53 -0
  228. homeassistant-stubs/components/habitica/calendar.pyi +56 -0
  229. homeassistant-stubs/components/habitica/config_flow.pyi +27 -0
  230. homeassistant-stubs/components/habitica/const.pyi +44 -0
  231. homeassistant-stubs/components/habitica/coordinator.pyi +29 -0
  232. homeassistant-stubs/components/habitica/diagnostics.pyi +7 -0
  233. homeassistant-stubs/components/habitica/entity.pyi +14 -0
  234. homeassistant-stubs/components/habitica/image.pyi +26 -0
  235. homeassistant-stubs/components/habitica/sensor.pyi +81 -0
  236. homeassistant-stubs/components/habitica/services.pyi +24 -0
  237. homeassistant-stubs/components/habitica/switch.pyi +32 -0
  238. homeassistant-stubs/components/habitica/todo.pyi +43 -0
  239. homeassistant-stubs/components/habitica/types.pyi +10 -0
  240. homeassistant-stubs/components/habitica/util.pyi +15 -0
  241. homeassistant-stubs/components/heos/__init__.pyi +15 -0
  242. homeassistant-stubs/components/heos/config_flow.pyi +32 -0
  243. homeassistant-stubs/components/heos/const.pyi +5 -0
  244. homeassistant-stubs/components/heos/coordinator.pyi +44 -0
  245. homeassistant-stubs/components/heos/diagnostics.pyi +14 -0
  246. homeassistant-stubs/components/heos/media_player.pyi +95 -0
  247. homeassistant-stubs/components/heos/services.pyi +16 -0
  248. homeassistant-stubs/components/holiday/config_flow.pyi +3 -1
  249. homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +1 -3
  250. homeassistant-stubs/components/homeassistant_hardware/util.pyi +13 -1
  251. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +4 -2
  252. homeassistant-stubs/components/homeassistant_sky_connect/util.pyi +2 -2
  253. homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +1 -0
  254. homeassistant-stubs/components/homee/__init__.pyi +14 -0
  255. homeassistant-stubs/components/homee/config_flow.pyi +14 -0
  256. homeassistant-stubs/components/homee/const.pyi +9 -0
  257. homeassistant-stubs/components/homee/cover.pyi +43 -0
  258. homeassistant-stubs/components/homee/entity.pyi +43 -0
  259. homeassistant-stubs/components/homee/helpers.pyi +6 -0
  260. homeassistant-stubs/components/homee/sensor.pyi +49 -0
  261. homeassistant-stubs/components/homekit_controller/config_flow.pyi +3 -2
  262. homeassistant-stubs/components/homewizard/__init__.pyi +5 -0
  263. homeassistant-stubs/components/homewizard/config_flow.pyi +19 -19
  264. homeassistant-stubs/components/homewizard/const.pyi +0 -11
  265. homeassistant-stubs/components/homewizard/coordinator.pyi +6 -12
  266. homeassistant-stubs/components/homewizard/number.pyi +0 -1
  267. homeassistant-stubs/components/homewizard/repairs.pyi +17 -0
  268. homeassistant-stubs/components/homewizard/sensor.pyi +8 -5
  269. homeassistant-stubs/components/homewizard/switch.pyi +4 -4
  270. homeassistant-stubs/components/http/ban.pyi +0 -1
  271. homeassistant-stubs/components/huawei_lte/config_flow.pyi +2 -2
  272. homeassistant-stubs/components/humidifier/__init__.pyi +1 -1
  273. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +0 -3
  274. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +14 -0
  275. homeassistant-stubs/components/husqvarna_automower/number.pyi +1 -1
  276. homeassistant-stubs/components/hydrawise/__init__.pyi +3 -1
  277. homeassistant-stubs/components/hydrawise/config_flow.pyi +13 -5
  278. homeassistant-stubs/components/hydrawise/coordinator.pyi +4 -4
  279. homeassistant-stubs/components/hydrawise/switch.pyi +3 -3
  280. homeassistant-stubs/components/hyperion/config_flow.pyi +2 -2
  281. homeassistant-stubs/components/image/__init__.pyi +1 -1
  282. homeassistant-stubs/components/imgw_pib/__init__.pyi +1 -1
  283. homeassistant-stubs/components/imgw_pib/sensor.pyi +2 -1
  284. homeassistant-stubs/components/incomfort/__init__.pyi +18 -0
  285. homeassistant-stubs/components/incomfort/binary_sensor.pyi +33 -0
  286. homeassistant-stubs/components/incomfort/climate.pyi +42 -0
  287. homeassistant-stubs/components/incomfort/config_flow.pyi +37 -0
  288. homeassistant-stubs/components/incomfort/const.pyi +2 -0
  289. homeassistant-stubs/components/incomfort/coordinator.pyi +25 -0
  290. homeassistant-stubs/components/incomfort/diagnostics.pyi +12 -0
  291. homeassistant-stubs/components/incomfort/entity.pyi +14 -0
  292. homeassistant-stubs/components/incomfort/errors.pyi +18 -0
  293. homeassistant-stubs/components/incomfort/sensor.pyi +33 -0
  294. homeassistant-stubs/components/incomfort/water_heater.pyi +32 -0
  295. homeassistant-stubs/components/intent/__init__.pyi +1 -1
  296. homeassistant-stubs/components/intent/timers.pyi +1 -2
  297. homeassistant-stubs/components/ipp/config_flow.pyi +2 -2
  298. homeassistant-stubs/components/iron_os/button.pyi +31 -0
  299. homeassistant-stubs/components/iron_os/coordinator.pyi +4 -1
  300. homeassistant-stubs/components/iron_os/diagnostics.pyi +6 -0
  301. homeassistant-stubs/components/iron_os/number.pyi +1 -2
  302. homeassistant-stubs/components/iron_os/select.pyi +2 -4
  303. homeassistant-stubs/components/iron_os/switch.pyi +43 -0
  304. homeassistant-stubs/components/isy994/__init__.pyi +1 -2
  305. homeassistant-stubs/components/isy994/config_flow.pyi +4 -3
  306. homeassistant-stubs/components/kaleidescape/config_flow.pyi +2 -2
  307. homeassistant-stubs/components/knx/binary_sensor.pyi +18 -10
  308. homeassistant-stubs/components/knx/climate.pyi +10 -2
  309. homeassistant-stubs/components/knx/const.pyi +2 -0
  310. homeassistant-stubs/components/knx/entity.pyi +1 -1
  311. homeassistant-stubs/components/knx/light.pyi +1 -1
  312. homeassistant-stubs/components/knx/schema.pyi +5 -7
  313. homeassistant-stubs/components/knx/sensor.pyi +1 -1
  314. homeassistant-stubs/components/knx/storage/const.pyi +1 -0
  315. homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +4 -2
  316. homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -2
  317. homeassistant-stubs/components/lametric/config_flow.pyi +2 -2
  318. homeassistant-stubs/components/lawn_mower/__init__.pyi +1 -1
  319. homeassistant-stubs/components/lcn/__init__.pyi +2 -2
  320. homeassistant-stubs/components/lcn/climate.pyi +2 -1
  321. homeassistant-stubs/components/lcn/const.pyi +1 -0
  322. homeassistant-stubs/components/lcn/schemas.pyi +1 -1
  323. homeassistant-stubs/components/lektrico/config_flow.pyi +1 -1
  324. homeassistant-stubs/components/letpot/__init__.pyi +13 -0
  325. homeassistant-stubs/components/letpot/config_flow.pyi +19 -0
  326. homeassistant-stubs/components/letpot/const.pyi +6 -0
  327. homeassistant-stubs/components/letpot/coordinator.pyi +20 -0
  328. homeassistant-stubs/components/letpot/entity.pyi +10 -0
  329. homeassistant-stubs/components/letpot/time.pyi +33 -0
  330. homeassistant-stubs/components/lifx/config_flow.pyi +3 -3
  331. homeassistant-stubs/components/lifx/coordinator.pyi +1 -1
  332. homeassistant-stubs/components/lifx/manager.pyi +16 -1
  333. homeassistant-stubs/components/light/__init__.pyi +1 -1
  334. homeassistant-stubs/components/linkplay/config_flow.pyi +2 -2
  335. homeassistant-stubs/components/litterrobot/__init__.pyi +2 -6
  336. homeassistant-stubs/components/litterrobot/binary_sensor.pyi +6 -9
  337. homeassistant-stubs/components/litterrobot/button.pyi +6 -10
  338. homeassistant-stubs/components/litterrobot/{hub.pyi → coordinator.pyi} +11 -10
  339. homeassistant-stubs/components/litterrobot/entity.pyi +5 -7
  340. homeassistant-stubs/components/litterrobot/select.pyi +5 -14
  341. homeassistant-stubs/components/litterrobot/sensor.pyi +7 -7
  342. homeassistant-stubs/components/litterrobot/switch.pyi +7 -9
  343. homeassistant-stubs/components/litterrobot/time.pyi +3 -6
  344. homeassistant-stubs/components/litterrobot/update.pyi +1 -1
  345. homeassistant-stubs/components/litterrobot/vacuum.pyi +1 -5
  346. homeassistant-stubs/components/lock/__init__.pyi +1 -1
  347. homeassistant-stubs/components/logbook/models.pyi +1 -1
  348. homeassistant-stubs/components/lookin/config_flow.pyi +2 -2
  349. homeassistant-stubs/components/lovelace/__init__.pyi +39 -0
  350. homeassistant-stubs/components/lovelace/cast.pyi +18 -0
  351. homeassistant-stubs/components/lovelace/const.pyi +33 -0
  352. homeassistant-stubs/components/lovelace/dashboard.pyi +83 -0
  353. homeassistant-stubs/components/lovelace/resources.pyi +42 -0
  354. homeassistant-stubs/components/lovelace/system_health.pyi +9 -0
  355. homeassistant-stubs/components/lovelace/websocket.pyi +26 -0
  356. homeassistant-stubs/components/mastodon/config_flow.pyi +2 -3
  357. homeassistant-stubs/components/mastodon/notify.pyi +1 -3
  358. homeassistant-stubs/components/matter/config_flow.pyi +1 -1
  359. homeassistant-stubs/components/matter/cover.pyi +0 -1
  360. homeassistant-stubs/components/matter/discovery.pyi +2 -2
  361. homeassistant-stubs/components/matter/entity.pyi +11 -4
  362. homeassistant-stubs/components/matter/light.pyi +0 -1
  363. homeassistant-stubs/components/matter/lock.pyi +0 -2
  364. homeassistant-stubs/components/matter/models.pyi +10 -1
  365. homeassistant-stubs/components/matter/number.pyi +1 -1
  366. homeassistant-stubs/components/matter/select.pyi +32 -2
  367. homeassistant-stubs/components/matter/sensor.pyi +24 -0
  368. homeassistant-stubs/components/matter/switch.pyi +15 -2
  369. homeassistant-stubs/components/matter/vacuum.pyi +0 -1
  370. homeassistant-stubs/components/matter/valve.pyi +0 -2
  371. homeassistant-stubs/components/mcp/__init__.pyi +16 -0
  372. homeassistant-stubs/components/mcp/config_flow.pyi +23 -0
  373. homeassistant-stubs/components/mcp/const.pyi +1 -0
  374. homeassistant-stubs/components/mcp/coordinator.pyi +40 -0
  375. homeassistant-stubs/components/mcp/types.pyi +4 -0
  376. homeassistant-stubs/components/mcp_server/__init__.pyi +13 -0
  377. homeassistant-stubs/components/mcp_server/config_flow.pyi +14 -0
  378. homeassistant-stubs/components/mcp_server/const.pyi +2 -0
  379. homeassistant-stubs/components/mcp_server/http.pyi +31 -0
  380. homeassistant-stubs/components/mcp_server/server.pyi +13 -0
  381. homeassistant-stubs/components/mcp_server/session.pyi +20 -0
  382. homeassistant-stubs/components/mcp_server/types.pyi +4 -0
  383. homeassistant-stubs/components/media_player/__init__.pyi +1 -1
  384. homeassistant-stubs/components/media_source/__init__.pyi +1 -1
  385. homeassistant-stubs/components/media_source/models.pyi +1 -2
  386. homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -1
  387. homeassistant-stubs/components/modbus/__init__.pyi +2 -2
  388. homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -3
  389. homeassistant-stubs/components/modbus/climate.pyi +4 -3
  390. homeassistant-stubs/components/modbus/const.pyi +4 -0
  391. homeassistant-stubs/components/modbus/cover.pyi +1 -2
  392. homeassistant-stubs/components/modbus/entity.pyi +15 -8
  393. homeassistant-stubs/components/modbus/light.pyi +0 -1
  394. homeassistant-stubs/components/modbus/modbus.pyi +4 -0
  395. homeassistant-stubs/components/modbus/sensor.pyi +1 -2
  396. homeassistant-stubs/components/modbus/switch.pyi +0 -1
  397. homeassistant-stubs/components/modem_callerid/config_flow.pyi +2 -1
  398. homeassistant-stubs/components/motionmount/__init__.pyi +2 -2
  399. homeassistant-stubs/components/motionmount/config_flow.pyi +16 -6
  400. homeassistant-stubs/components/motionmount/entity.pyi +3 -2
  401. homeassistant-stubs/components/motionmount/select.pyi +2 -0
  402. homeassistant-stubs/components/mqtt/__init__.pyi +11 -34
  403. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -1
  404. homeassistant-stubs/components/mqtt/config_flow.pyi +3 -5
  405. homeassistant-stubs/components/mqtt/const.pyi +7 -1
  406. homeassistant-stubs/components/mqtt/diagnostics.pyi +0 -1
  407. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +2 -1
  408. homeassistant-stubs/components/mqtt/light/schema_json.pyi +2 -1
  409. homeassistant-stubs/components/mqtt/light/schema_template.pyi +2 -1
  410. homeassistant-stubs/components/music_assistant/config_flow.pyi +2 -2
  411. homeassistant-stubs/components/nam/config_flow.pyi +2 -2
  412. homeassistant-stubs/components/nanoleaf/config_flow.pyi +6 -5
  413. homeassistant-stubs/components/nest/__init__.pyi +3 -4
  414. homeassistant-stubs/components/nest/api.pyi +2 -2
  415. homeassistant-stubs/components/nest/climate.pyi +2 -0
  416. homeassistant-stubs/components/nest/config_flow.pyi +6 -2
  417. homeassistant-stubs/components/netatmo/button.pyi +25 -0
  418. homeassistant-stubs/components/netatmo/const.pyi +1 -0
  419. homeassistant-stubs/components/netatmo/data_handler.pyi +1 -1
  420. homeassistant-stubs/components/network/system_health.pyi +11 -0
  421. homeassistant-stubs/components/notify/__init__.pyi +1 -1
  422. homeassistant-stubs/components/number/__init__.pyi +2 -2
  423. homeassistant-stubs/components/nut/config_flow.pyi +2 -2
  424. homeassistant-stubs/components/onboarding/views.pyi +30 -2
  425. homeassistant-stubs/components/onedrive/__init__.pyi +25 -0
  426. homeassistant-stubs/components/onedrive/api.pyi +20 -0
  427. homeassistant-stubs/components/onedrive/application_credentials.pyi +5 -0
  428. homeassistant-stubs/components/onedrive/backup.pyi +40 -0
  429. homeassistant-stubs/components/onedrive/config_flow.pyi +19 -0
  430. homeassistant-stubs/components/onedrive/const.pyi +10 -0
  431. homeassistant-stubs/components/onewire/__init__.pyi +4 -4
  432. homeassistant-stubs/components/onewire/binary_sensor.pyi +8 -4
  433. homeassistant-stubs/components/onewire/config_flow.pyi +12 -7
  434. homeassistant-stubs/components/onewire/const.pyi +0 -2
  435. homeassistant-stubs/components/onewire/diagnostics.pyi +1 -1
  436. homeassistant-stubs/components/onewire/onewirehub.pyi +22 -14
  437. homeassistant-stubs/components/onewire/select.pyi +27 -0
  438. homeassistant-stubs/components/onewire/sensor.pyi +7 -4
  439. homeassistant-stubs/components/onewire/switch.pyi +8 -4
  440. homeassistant-stubs/components/onkyo/config_flow.pyi +9 -4
  441. homeassistant-stubs/components/open_meteo/__init__.pyi +4 -8
  442. homeassistant-stubs/components/open_meteo/coordinator.pyi +15 -0
  443. homeassistant-stubs/components/open_meteo/diagnostics.pyi +2 -5
  444. homeassistant-stubs/components/open_meteo/weather.pyi +3 -3
  445. homeassistant-stubs/components/openai_conversation/conversation.pyi +6 -6
  446. homeassistant-stubs/components/overkiz/__init__.pyi +1 -1
  447. homeassistant-stubs/components/overkiz/climate/__init__.pyi +1 -0
  448. homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control_zone.pyi +1 -1
  449. homeassistant-stubs/components/overkiz/climate/evo_home_controller.pyi +24 -0
  450. homeassistant-stubs/components/overkiz/config_flow.pyi +4 -3
  451. homeassistant-stubs/components/overkiz/const.pyi +1 -0
  452. homeassistant-stubs/components/overkiz/coordinator.pyi +5 -3
  453. homeassistant-stubs/components/overseerr/__init__.pyi +37 -0
  454. homeassistant-stubs/components/overseerr/config_flow.pyi +14 -0
  455. homeassistant-stubs/components/overseerr/const.pyi +12 -0
  456. homeassistant-stubs/components/overseerr/coordinator.pyi +18 -0
  457. homeassistant-stubs/components/overseerr/diagnostics.pyi +6 -0
  458. homeassistant-stubs/components/overseerr/entity.pyi +11 -0
  459. homeassistant-stubs/components/overseerr/event.pyi +35 -0
  460. homeassistant-stubs/components/overseerr/sensor.pyi +27 -0
  461. homeassistant-stubs/components/overseerr/services.pyi +16 -0
  462. homeassistant-stubs/components/pandora/__init__.pyi +0 -0
  463. homeassistant-stubs/components/pandora/media_player.pyi +51 -0
  464. homeassistant-stubs/components/peblar/config_flow.pyi +3 -3
  465. homeassistant-stubs/components/person/__init__.pyi +103 -0
  466. homeassistant-stubs/components/person/const.pyi +1 -0
  467. homeassistant-stubs/components/person/significant_change.pyi +5 -0
  468. homeassistant-stubs/components/plugwise/config_flow.pyi +1 -1
  469. homeassistant-stubs/components/powerfox/sensor.pyi +3 -2
  470. homeassistant-stubs/components/powerwall/__init__.pyi +8 -3
  471. homeassistant-stubs/components/powerwall/config_flow.pyi +3 -3
  472. homeassistant-stubs/components/powerwall/const.pyi +2 -0
  473. homeassistant-stubs/components/proximity/__init__.pyi +2 -3
  474. homeassistant-stubs/components/proximity/coordinator.pyi +1 -2
  475. homeassistant-stubs/components/pure_energie/config_flow.pyi +2 -2
  476. homeassistant-stubs/components/python_script/__init__.pyi +48 -0
  477. homeassistant-stubs/components/qbus/__init__.pyi +15 -0
  478. homeassistant-stubs/components/qbus/config_flow.pyi +26 -0
  479. homeassistant-stubs/components/qbus/const.pyi +7 -0
  480. homeassistant-stubs/components/qbus/coordinator.pyi +48 -0
  481. homeassistant-stubs/components/qbus/entity.pyi +29 -0
  482. homeassistant-stubs/components/qbus/switch.pyi +21 -0
  483. homeassistant-stubs/components/qnap_qsw/config_flow.pyi +2 -2
  484. homeassistant-stubs/components/qnap_qsw/sensor.pyi +1 -4
  485. homeassistant-stubs/components/rabbitair/config_flow.pyi +2 -1
  486. homeassistant-stubs/components/rainforest_raven/config_flow.pyi +3 -2
  487. homeassistant-stubs/components/rainmachine/config_flow.pyi +4 -4
  488. homeassistant-stubs/components/recorder/auto_repairs/statistics/duplicates.pyi +1 -1
  489. homeassistant-stubs/components/recorder/const.pyi +0 -2
  490. homeassistant-stubs/components/recorder/core.pyi +2 -2
  491. homeassistant-stubs/components/recorder/db_schema.pyi +5 -2
  492. homeassistant-stubs/components/recorder/migration.pyi +1 -1
  493. homeassistant-stubs/components/recorder/models/state.pyi +1 -1
  494. homeassistant-stubs/components/recorder/util.pyi +1 -7
  495. homeassistant-stubs/components/remote/__init__.pyi +1 -1
  496. homeassistant-stubs/components/reolink/__init__.pyi +1 -0
  497. homeassistant-stubs/components/reolink/config_flow.pyi +6 -2
  498. homeassistant-stubs/components/reolink/entity.pyi +1 -1
  499. homeassistant-stubs/components/reolink/host.pyi +3 -0
  500. homeassistant-stubs/components/reolink/switch.pyi +5 -1
  501. homeassistant-stubs/components/reolink/util.pyi +2 -5
  502. homeassistant-stubs/components/repairs/__init__.pyi +1 -1
  503. homeassistant-stubs/components/ring/__init__.pyi +4 -15
  504. homeassistant-stubs/components/ring/binary_sensor.pyi +2 -0
  505. homeassistant-stubs/components/ring/button.pyi +1 -0
  506. homeassistant-stubs/components/ring/camera.pyi +1 -0
  507. homeassistant-stubs/components/ring/config_flow.pyi +2 -2
  508. homeassistant-stubs/components/ring/coordinator.pyi +14 -4
  509. homeassistant-stubs/components/ring/entity.pyi +1 -2
  510. homeassistant-stubs/components/ring/event.pyi +2 -0
  511. homeassistant-stubs/components/ring/light.pyi +1 -0
  512. homeassistant-stubs/components/ring/number.pyi +2 -0
  513. homeassistant-stubs/components/ring/sensor.pyi +2 -0
  514. homeassistant-stubs/components/ring/siren.pyi +1 -0
  515. homeassistant-stubs/components/ring/switch.pyi +1 -0
  516. homeassistant-stubs/components/roborock/__init__.pyi +2 -0
  517. homeassistant-stubs/components/roborock/const.pyi +4 -0
  518. homeassistant-stubs/components/roborock/coordinator.pyi +8 -4
  519. homeassistant-stubs/components/roborock/image.pyi +10 -11
  520. homeassistant-stubs/components/roborock/roborock_storage.pyi +21 -0
  521. homeassistant-stubs/components/roborock/sensor.pyi +1 -1
  522. homeassistant-stubs/components/roborock/vacuum.pyi +5 -1
  523. homeassistant-stubs/components/roku/config_flow.pyi +4 -3
  524. homeassistant-stubs/components/romy/config_flow.pyi +2 -2
  525. homeassistant-stubs/components/russound_rio/config_flow.pyi +6 -2
  526. homeassistant-stubs/components/russound_rio/const.pyi +0 -2
  527. homeassistant-stubs/components/russound_rio/media_player.pyi +13 -6
  528. homeassistant-stubs/components/ruuvi_gateway/config_flow.pyi +2 -2
  529. homeassistant-stubs/components/samsungtv/config_flow.pyi +6 -4
  530. homeassistant-stubs/components/scrape/sensor.pyi +2 -0
  531. homeassistant-stubs/components/script/__init__.pyi +1 -1
  532. homeassistant-stubs/components/select/__init__.pyi +2 -2
  533. homeassistant-stubs/components/sensibo/__init__.pyi +3 -3
  534. homeassistant-stubs/components/sensibo/binary_sensor.pyi +1 -0
  535. homeassistant-stubs/components/sensibo/climate.pyi +13 -7
  536. homeassistant-stubs/components/sensibo/config_flow.pyi +1 -1
  537. homeassistant-stubs/components/sensibo/coordinator.pyi +2 -0
  538. homeassistant-stubs/components/sensibo/entity.pyi +5 -1
  539. homeassistant-stubs/components/sensibo/select.pyi +6 -1
  540. homeassistant-stubs/components/sensibo/sensor.pyi +2 -0
  541. homeassistant-stubs/components/sensor/__init__.pyi +2 -2
  542. homeassistant-stubs/components/shelly/__init__.pyi +2 -0
  543. homeassistant-stubs/components/shelly/binary_sensor.pyi +11 -6
  544. homeassistant-stubs/components/shelly/climate.pyi +25 -2
  545. homeassistant-stubs/components/shelly/config_flow.pyi +1 -1
  546. homeassistant-stubs/components/shelly/const.pyi +3 -0
  547. homeassistant-stubs/components/shelly/coordinator.pyi +3 -2
  548. homeassistant-stubs/components/shelly/entity.pyi +4 -1
  549. homeassistant-stubs/components/shelly/number.pyi +21 -13
  550. homeassistant-stubs/components/shelly/sensor.pyi +12 -7
  551. homeassistant-stubs/components/shelly/utils.pyi +1 -1
  552. homeassistant-stubs/components/siren/__init__.pyi +1 -1
  553. homeassistant-stubs/components/slack/config_flow.pyi +2 -1
  554. homeassistant-stubs/components/slack/entity.pyi +3 -5
  555. homeassistant-stubs/components/slack/notify.pyi +4 -2
  556. homeassistant-stubs/components/slack/sensor.pyi +2 -2
  557. homeassistant-stubs/components/slack/utils.pyi +6 -0
  558. homeassistant-stubs/components/smhi/config_flow.pyi +1 -1
  559. homeassistant-stubs/components/smhi/weather.pyi +3 -3
  560. homeassistant-stubs/components/smlight/config_flow.pyi +2 -2
  561. homeassistant-stubs/components/spotify/__init__.pyi +1 -1
  562. homeassistant-stubs/components/spotify/browse_media.pyi +1 -1
  563. homeassistant-stubs/components/spotify/coordinator.pyi +2 -0
  564. homeassistant-stubs/components/squeezebox/config_flow.pyi +2 -2
  565. homeassistant-stubs/components/ssdp/__init__.pyi +34 -44
  566. homeassistant-stubs/components/starlink/coordinator.pyi +1 -0
  567. homeassistant-stubs/components/steamist/config_flow.pyi +2 -2
  568. homeassistant-stubs/components/stream/__init__.pyi +3 -15
  569. homeassistant-stubs/components/stream/const.pyi +9 -1
  570. homeassistant-stubs/components/stream/exceptions.pyi +13 -0
  571. homeassistant-stubs/components/stream/worker.pyi +4 -5
  572. homeassistant-stubs/components/stt/__init__.pyi +1 -1
  573. homeassistant-stubs/components/suez_water/__init__.pyi +4 -0
  574. homeassistant-stubs/components/switch/__init__.pyi +1 -1
  575. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +5 -5
  576. homeassistant-stubs/components/switchbot_cloud/button.pyi +17 -0
  577. homeassistant-stubs/components/switchbot_cloud/entity.pyi +5 -0
  578. homeassistant-stubs/components/switchbot_cloud/lock.pyi +2 -3
  579. homeassistant-stubs/components/switchbot_cloud/sensor.pyi +5 -5
  580. homeassistant-stubs/components/switchbot_cloud/switch.pyi +3 -6
  581. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +1 -2
  582. homeassistant-stubs/components/switcher_kis/switch.pyi +29 -0
  583. homeassistant-stubs/components/synology_dsm/__init__.pyi +5 -2
  584. homeassistant-stubs/components/synology_dsm/backup.pyi +34 -0
  585. homeassistant-stubs/components/synology_dsm/common.pyi +5 -2
  586. homeassistant-stubs/components/synology_dsm/config_flow.pyi +11 -4
  587. homeassistant-stubs/components/synology_dsm/const.pyi +6 -0
  588. homeassistant-stubs/components/synology_dsm/coordinator.pyi +1 -1
  589. homeassistant-stubs/components/systemmonitor/__init__.pyi +3 -3
  590. homeassistant-stubs/components/systemmonitor/config_flow.pyi +0 -4
  591. homeassistant-stubs/components/systemmonitor/coordinator.pyi +2 -1
  592. homeassistant-stubs/components/tailwind/config_flow.pyi +3 -3
  593. homeassistant-stubs/components/technove/binary_sensor.pyi +0 -4
  594. homeassistant-stubs/components/technove/config_flow.pyi +3 -2
  595. homeassistant-stubs/components/tedee/coordinator.pyi +1 -1
  596. homeassistant-stubs/components/text/__init__.pyi +1 -1
  597. homeassistant-stubs/components/tile/__init__.pyi +4 -15
  598. homeassistant-stubs/components/tile/binary_sensor.pyi +24 -0
  599. homeassistant-stubs/components/tile/config_flow.pyi +0 -1
  600. homeassistant-stubs/components/tile/coordinator.pyi +18 -0
  601. homeassistant-stubs/components/tile/device_tracker.pyi +6 -20
  602. homeassistant-stubs/components/tile/diagnostics.pyi +2 -4
  603. homeassistant-stubs/components/tile/entity.pyi +13 -0
  604. homeassistant-stubs/components/time/__init__.pyi +1 -1
  605. homeassistant-stubs/components/todo/__init__.pyi +1 -1
  606. homeassistant-stubs/components/tolo/config_flow.pyi +2 -2
  607. homeassistant-stubs/components/tplink/__init__.pyi +3 -6
  608. homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -0
  609. homeassistant-stubs/components/tplink/button.pyi +2 -1
  610. homeassistant-stubs/components/tplink/camera.pyi +9 -9
  611. homeassistant-stubs/components/tplink/climate.pyi +18 -12
  612. homeassistant-stubs/components/tplink/config_flow.pyi +3 -2
  613. homeassistant-stubs/components/tplink/const.pyi +1 -1
  614. homeassistant-stubs/components/tplink/coordinator.pyi +20 -4
  615. homeassistant-stubs/components/tplink/deprecate.pyi +5 -3
  616. homeassistant-stubs/components/tplink/entity.pyi +30 -11
  617. homeassistant-stubs/components/tplink/fan.pyi +15 -7
  618. homeassistant-stubs/components/tplink/light.pyi +22 -11
  619. homeassistant-stubs/components/tplink/number.pyi +1 -0
  620. homeassistant-stubs/components/tplink/select.pyi +1 -0
  621. homeassistant-stubs/components/tplink/sensor.pyi +7 -2
  622. homeassistant-stubs/components/tplink/siren.pyi +22 -7
  623. homeassistant-stubs/components/tplink/switch.pyi +1 -0
  624. homeassistant-stubs/components/tplink/vacuum.pyi +43 -0
  625. homeassistant-stubs/components/tradfri/config_flow.pyi +2 -2
  626. homeassistant-stubs/components/trafikverket_camera/__init__.pyi +2 -2
  627. homeassistant-stubs/components/trafikverket_camera/camera.pyi +2 -0
  628. homeassistant-stubs/components/trafikverket_ferry/__init__.pyi +1 -1
  629. homeassistant-stubs/components/trafikverket_ferry/coordinator.pyi +1 -1
  630. homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +1 -0
  631. homeassistant-stubs/components/trafikverket_train/__init__.pyi +6 -3
  632. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +10 -4
  633. homeassistant-stubs/components/trafikverket_train/coordinator.pyi +2 -2
  634. homeassistant-stubs/components/trafikverket_train/sensor.pyi +1 -0
  635. homeassistant-stubs/components/trafikverket_weatherstation/__init__.pyi +1 -1
  636. homeassistant-stubs/components/trafikverket_weatherstation/coordinator.pyi +1 -1
  637. homeassistant-stubs/components/trafikverket_weatherstation/diagnostics.pyi +5 -0
  638. homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +1 -0
  639. homeassistant-stubs/components/tts/__init__.pyi +2 -2
  640. homeassistant-stubs/components/unifi/config_flow.pyi +2 -2
  641. homeassistant-stubs/components/unifi/device_tracker.pyi +1 -1
  642. homeassistant-stubs/components/unifi/switch.pyi +1 -0
  643. homeassistant-stubs/components/unifiprotect/__init__.pyi +1 -1
  644. homeassistant-stubs/components/unifiprotect/config_flow.pyi +4 -3
  645. homeassistant-stubs/components/unifiprotect/light.pyi +1 -1
  646. homeassistant-stubs/components/unifiprotect/views.pyi +8 -0
  647. homeassistant-stubs/components/upcloud/__init__.pyi +6 -12
  648. homeassistant-stubs/components/upcloud/binary_sensor.pyi +2 -4
  649. homeassistant-stubs/components/upcloud/config_flow.pyi +3 -2
  650. homeassistant-stubs/components/upcloud/const.pyi +0 -1
  651. homeassistant-stubs/components/upcloud/coordinator.pyi +3 -2
  652. homeassistant-stubs/components/upcloud/entity.pyi +3 -3
  653. homeassistant-stubs/components/upcloud/switch.pyi +3 -4
  654. homeassistant-stubs/components/update/__init__.pyi +2 -2
  655. homeassistant-stubs/components/usb/__init__.pyi +21 -18
  656. homeassistant-stubs/components/usb/models.pyi +1 -1
  657. homeassistant-stubs/components/vacuum/__init__.pyi +1 -1
  658. homeassistant-stubs/components/velbus/config_flow.pyi +2 -2
  659. homeassistant-stubs/components/velbus/const.pyi +1 -0
  660. homeassistant-stubs/components/velbus/diagnostics.pyi +1 -3
  661. homeassistant-stubs/components/velbus/entity.pyi +4 -0
  662. homeassistant-stubs/components/velbus/services.pyi +5 -1
  663. homeassistant-stubs/components/wake_word/__init__.pyi +1 -1
  664. homeassistant-stubs/components/water_heater/__init__.pyi +7 -3
  665. homeassistant-stubs/components/weather/__init__.pyi +2 -3
  666. homeassistant-stubs/components/webhook/__init__.pyi +0 -1
  667. homeassistant-stubs/components/webostv/__init__.pyi +8 -24
  668. homeassistant-stubs/components/webostv/config_flow.pyi +14 -13
  669. homeassistant-stubs/components/webostv/const.pyi +0 -1
  670. homeassistant-stubs/components/webostv/device_trigger.pyi +1 -2
  671. homeassistant-stubs/components/webostv/diagnostics.pyi +2 -3
  672. homeassistant-stubs/components/webostv/helpers.pyi +11 -4
  673. homeassistant-stubs/components/webostv/media_player.pyi +17 -13
  674. homeassistant-stubs/components/webostv/notify.pyi +6 -4
  675. homeassistant-stubs/components/webostv/trigger.pyi +2 -0
  676. homeassistant-stubs/components/wiz/config_flow.pyi +3 -2
  677. homeassistant-stubs/components/wled/config_flow.pyi +3 -2
  678. homeassistant-stubs/components/worldclock/sensor.pyi +2 -7
  679. homeassistant-stubs/components/zeroconf/__init__.pyi +12 -20
  680. homeassistant-stubs/components/zwave_js/api.pyi +1 -1
  681. homeassistant-stubs/components/zwave_js/config_flow.pyi +3 -2
  682. homeassistant-stubs/config_entries.pyi +7 -9
  683. homeassistant-stubs/const.pyi +2 -0
  684. homeassistant-stubs/core.pyi +2 -3
  685. homeassistant-stubs/core_config.pyi +3 -3
  686. homeassistant-stubs/data_entry_flow.pyi +1 -2
  687. homeassistant-stubs/helpers/aiohttp_client.pyi +12 -1
  688. homeassistant-stubs/helpers/area_registry.pyi +11 -4
  689. homeassistant-stubs/helpers/collection.pyi +5 -7
  690. homeassistant-stubs/helpers/config_entry_flow.pyi +3 -3
  691. homeassistant-stubs/helpers/data_entry_flow.pyi +1 -2
  692. homeassistant-stubs/helpers/deprecation.pyi +2 -2
  693. homeassistant-stubs/helpers/device_registry.pyi +1 -1
  694. homeassistant-stubs/helpers/entity.pyi +1 -1
  695. homeassistant-stubs/helpers/entity_component.pyi +2 -4
  696. homeassistant-stubs/helpers/entity_registry.pyi +2 -2
  697. homeassistant-stubs/helpers/frame.pyi +1 -1
  698. homeassistant-stubs/helpers/httpx_client.pyi +2 -1
  699. homeassistant-stubs/helpers/intent.pyi +4 -2
  700. homeassistant-stubs/helpers/llm.pyi +17 -7
  701. homeassistant-stubs/helpers/script.pyi +1 -1
  702. homeassistant-stubs/helpers/service_info/dhcp.pyi +8 -0
  703. homeassistant-stubs/helpers/service_info/ssdp.pyi +34 -0
  704. homeassistant-stubs/helpers/service_info/usb.pyi +11 -0
  705. homeassistant-stubs/helpers/service_info/zeroconf.pyi +20 -0
  706. homeassistant-stubs/helpers/singleton.pyi +6 -2
  707. homeassistant-stubs/helpers/storage.pyi +1 -1
  708. homeassistant-stubs/helpers/template.pyi +4 -4
  709. homeassistant-stubs/helpers/update_coordinator.pyi +3 -5
  710. homeassistant-stubs/loader.pyi +1 -1
  711. homeassistant-stubs/scripts/benchmark/__init__.pyi +8 -8
  712. homeassistant-stubs/util/event_type.pyi +1 -2
  713. homeassistant-stubs/util/ulid.pyi +1 -1
  714. homeassistant-stubs/util/yaml/__init__.pyi +1 -1
  715. homeassistant-stubs/util/yaml/loader.pyi +1 -1
  716. {homeassistant_stubs-2025.1.4.dist-info → homeassistant_stubs-2025.2.0b0.dist-info}/METADATA +4 -4
  717. {homeassistant_stubs-2025.1.4.dist-info → homeassistant_stubs-2025.2.0b0.dist-info}/RECORD +719 -584
  718. homeassistant-stubs/components/dormakaba_dkey/models.pyi +0 -8
  719. homeassistant-stubs/components/imgw_pib/binary_sensor.pyi +0 -27
  720. homeassistant-stubs/components/tplink/models.pyi +0 -10
  721. {homeassistant_stubs-2025.1.4.dist-info → homeassistant_stubs-2025.2.0b0.dist-info}/WHEEL +0 -0
  722. {homeassistant_stubs-2025.1.4.dist-info → homeassistant_stubs-2025.2.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -13,7 +13,7 @@ from sqlalchemy.dialects import sqlite
13
13
  from sqlalchemy.engine.interfaces import Dialect as Dialect
14
14
  from sqlalchemy.orm import DeclarativeBase, Mapped as Mapped
15
15
  from sqlalchemy.types import TypeDecorator as TypeDecorator
16
- from typing import Any, Final, Self
16
+ from typing import Any, Final, Protocol, Self
17
17
 
18
18
  class Base(DeclarativeBase): ...
19
19
  class LegacyBase(DeclarativeBase): ...
@@ -79,8 +79,11 @@ BIG_INTEGER_SQL: str
79
79
  CONTEXT_BINARY_TYPE: Incomplete
80
80
  TIMESTAMP_TYPE = DOUBLE_TYPE
81
81
 
82
+ class _LiteralProcessorType(Protocol):
83
+ def __call__(self, value: Any) -> str: ...
84
+
82
85
  class JSONLiteral(JSON):
83
- def literal_processor(self, dialect: Dialect) -> Callable[[Any], str]: ...
86
+ def literal_processor(self, dialect: Dialect) -> _LiteralProcessorType: ...
84
87
 
85
88
  EVENT_ORIGIN_ORDER: Incomplete
86
89
 
@@ -283,7 +283,7 @@ class BaseMigration(ABC, metaclass=abc.ABCMeta):
283
283
  migration_changes: Incomplete
284
284
  def __init__(self, *, initial_schema_version: int, start_schema_version: int, migration_changes: dict[str, int]) -> None: ...
285
285
  @abstractmethod
286
- def migrate_data(self, instance: Recorder) -> bool: ...
286
+ def migrate_data(self, instance: Recorder, /) -> bool: ...
287
287
  def _migrate_data(self, instance: Recorder) -> bool: ...
288
288
  @abstractmethod
289
289
  def migrate_data_impl(self, instance: Recorder) -> DataMigrationStatus: ...
@@ -3,7 +3,7 @@ from _typeshed import Incomplete
3
3
  from datetime import datetime
4
4
  from homeassistant.const import COMPRESSED_STATE_ATTRIBUTES as COMPRESSED_STATE_ATTRIBUTES, COMPRESSED_STATE_LAST_CHANGED as COMPRESSED_STATE_LAST_CHANGED, COMPRESSED_STATE_LAST_UPDATED as COMPRESSED_STATE_LAST_UPDATED, COMPRESSED_STATE_STATE as COMPRESSED_STATE_STATE
5
5
  from homeassistant.core import Context as Context, State as State
6
- from propcache import cached_property
6
+ from propcache.api import cached_property
7
7
  from sqlalchemy.engine.row import Row as Row
8
8
  from typing import Any
9
9
 
@@ -1,5 +1,5 @@
1
1
  from . import Recorder as Recorder
2
- from .const import DEFAULT_MAX_BIND_VARS as DEFAULT_MAX_BIND_VARS, DOMAIN as DOMAIN, SQLITE_MAX_BIND_VARS as SQLITE_MAX_BIND_VARS, SQLITE_MODERN_MAX_BIND_VARS as SQLITE_MODERN_MAX_BIND_VARS, SQLITE_URL_PREFIX as SQLITE_URL_PREFIX, SupportedDialect as SupportedDialect
2
+ from .const import DEFAULT_MAX_BIND_VARS as DEFAULT_MAX_BIND_VARS, DOMAIN as DOMAIN, SQLITE_URL_PREFIX as SQLITE_URL_PREFIX, SupportedDialect as SupportedDialect
3
3
  from .db_schema import RecorderRuns as RecorderRuns, TABLES_TO_CHECK as TABLES_TO_CHECK, TABLE_RECORDER_RUNS as TABLE_RECORDER_RUNS, TABLE_SCHEMA_CHANGES as TABLE_SCHEMA_CHANGES
4
4
  from .models import DatabaseEngine as DatabaseEngine, DatabaseOptimizer as DatabaseOptimizer, StatisticPeriod as StatisticPeriod, UnsupportedDialect as UnsupportedDialect, process_timestamp as process_timestamp
5
5
  from _typeshed import Incomplete
@@ -41,8 +41,6 @@ MARIADB_WITH_FIXED_IN_QUERIES_108: Incomplete
41
41
  MIN_VERSION_MYSQL: Incomplete
42
42
  MIN_VERSION_PGSQL: Incomplete
43
43
  MIN_VERSION_SQLITE: Incomplete
44
- UPCOMING_MIN_VERSION_SQLITE: Incomplete
45
- MIN_VERSION_SQLITE_MODERN_BIND_VARS: Incomplete
46
44
  MAX_RESTART_TIME: Incomplete
47
45
  RETRYABLE_MYSQL_ERRORS: Incomplete
48
46
  FIRST_POSSIBLE_SUNDAY: int
@@ -62,10 +60,6 @@ def execute_on_connection(dbapi_connection: DBAPIConnection, statement: str) ->
62
60
  def query_on_connection(dbapi_connection: DBAPIConnection, statement: str) -> Any: ...
63
61
  def _fail_unsupported_dialect(dialect_name: str) -> NoReturn: ...
64
62
  def _raise_if_version_unsupported(server_version: str, dialect_name: str, minimum_version: str) -> NoReturn: ...
65
- @callback
66
- def _async_delete_issue_deprecated_version(hass: HomeAssistant, dialect_name: str) -> None: ...
67
- @callback
68
- def _async_create_issue_deprecated_version(hass: HomeAssistant, server_version: AwesomeVersion, dialect_name: str, min_version: AwesomeVersion) -> None: ...
69
63
  def _extract_version_from_server_response_or_raise(server_response: str) -> AwesomeVersion: ...
70
64
  def _extract_version_from_server_response(server_response: str) -> AwesomeVersion | None: ...
71
65
  def _datetime_or_none(value: str) -> datetime | None: ...
@@ -9,7 +9,7 @@ from homeassistant.helpers.entity_component import EntityComponent as EntityComp
9
9
  from homeassistant.helpers.typing import ConfigType as ConfigType
10
10
  from homeassistant.loader import bind_hass as bind_hass
11
11
  from homeassistant.util.hass_dict import HassKey as HassKey
12
- from propcache import cached_property
12
+ from propcache.api import cached_property
13
13
  from typing import Any, final
14
14
 
15
15
  _LOGGER: Incomplete
@@ -11,6 +11,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant
11
11
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
12
12
  from homeassistant.helpers import device_registry as dr
13
13
  from homeassistant.helpers.device_registry import format_mac as format_mac
14
+ from homeassistant.helpers.event import async_call_later as async_call_later
14
15
  from homeassistant.helpers.typing import ConfigType as ConfigType
15
16
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
16
17
 
@@ -4,18 +4,19 @@ from .host import ReolinkHost as ReolinkHost
4
4
  from .util import ReolinkConfigEntry as ReolinkConfigEntry, is_connected as is_connected
5
5
  from _typeshed import Incomplete
6
6
  from collections.abc import Mapping
7
- from homeassistant.components import dhcp as dhcp
8
7
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
9
8
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_PROTOCOL as CONF_PROTOCOL, CONF_USERNAME as CONF_USERNAME
10
9
  from homeassistant.core import callback as callback
11
10
  from homeassistant.data_entry_flow import AbortFlow as AbortFlow
12
11
  from homeassistant.helpers import selector as selector
13
12
  from homeassistant.helpers.device_registry import format_mac as format_mac
13
+ from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
14
14
  from typing import Any
15
15
 
16
16
  _LOGGER: Incomplete
17
17
  DEFAULT_PROTOCOL: str
18
18
  DEFAULT_OPTIONS: Incomplete
19
+ API_STARTUP_TIME: int
19
20
 
20
21
  class ReolinkOptionsFlowHandler(OptionsFlow):
21
22
  async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -25,6 +26,8 @@ class ReolinkFlowHandler(ConfigFlow, domain=DOMAIN):
25
26
  _host: str | None
26
27
  _username: str
27
28
  _password: str | None
29
+ _user_input: dict[str, Any] | None
30
+ _disable_privacy: bool
28
31
  def __init__(self) -> None: ...
29
32
  @staticmethod
30
33
  @callback
@@ -32,5 +35,6 @@ class ReolinkFlowHandler(ConfigFlow, domain=DOMAIN):
32
35
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
33
36
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
34
37
  async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
35
- async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
38
+ async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
39
+ async def async_step_privacy(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
36
40
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -30,7 +30,7 @@ class ReolinkHostCoordinatorEntity(CoordinatorEntity[DataUpdateCoordinator[None]
30
30
  _attr_has_entity_name: bool
31
31
  entity_description: ReolinkEntityDescription
32
32
  _host: Incomplete
33
- _attr_unique_id: Incomplete
33
+ _attr_unique_id: str
34
34
  _conf_url: Incomplete
35
35
  _dev_id: Incomplete
36
36
  _attr_device_info: Incomplete
@@ -37,6 +37,7 @@ class ReolinkHost:
37
37
  update_cmd: defaultdict[str, defaultdict[int | None, int]]
38
38
  firmware_ch_list: list[int | None]
39
39
  starting: bool
40
+ privacy_mode: bool | None
40
41
  credential_errors: int
41
42
  webhook_id: str | None
42
43
  _onvif_push_supported: bool
@@ -53,7 +54,9 @@ class ReolinkHost:
53
54
  _poll_job: Incomplete
54
55
  _fast_poll_error: bool
55
56
  _long_poll_task: asyncio.Task | None
57
+ _lost_subscription_start: bool
56
58
  _lost_subscription: bool
59
+ cancel_refresh_privacy_mode: CALLBACK_TYPE | None
57
60
  def __init__(self, hass: HomeAssistant, config: Mapping[str, Any], options: Mapping[str, Any]) -> None: ...
58
61
  @callback
59
62
  def async_register_update_cmd(self, cmd: str, channel: int | None = None) -> None: ...
@@ -29,9 +29,9 @@ class ReolinkChimeSwitchEntityDescription(SwitchEntityDescription, ReolinkChimeE
29
29
  value: Callable[[Chime], bool | None]
30
30
 
31
31
  SWITCH_ENTITIES: Incomplete
32
+ AVAILABILITY_SWITCH_ENTITIES: Incomplete
32
33
  NVR_SWITCH_ENTITIES: Incomplete
33
34
  CHIME_SWITCH_ENTITIES: Incomplete
34
- DEPRECATED_HDR: Incomplete
35
35
  DEPRECATED_NVR_SWITCHES: Incomplete
36
36
 
37
37
  async def async_setup_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -46,6 +46,10 @@ class ReolinkSwitchEntity(ReolinkChannelCoordinatorEntity, SwitchEntity):
46
46
  @raise_translated_error
47
47
  async def async_turn_off(self, **kwargs: Any) -> None: ...
48
48
 
49
+ class ReolinkAvailabilitySwitchEntity(ReolinkSwitchEntity):
50
+ @property
51
+ def available(self) -> bool: ...
52
+
49
53
  class ReolinkNVRSwitchEntity(ReolinkHostCoordinatorEntity, SwitchEntity):
50
54
  entity_description: ReolinkNVRSwitchEntityDescription
51
55
  def __init__(self, reolink_data: ReolinkData, entity_description: ReolinkNVRSwitchEntityDescription) -> None: ...
@@ -8,7 +8,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
9
9
  from homeassistant.helpers import device_registry as dr
10
10
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
11
- from typing import Any, ParamSpec, TypeVar
11
+ from typing import Any
12
12
 
13
13
  type ReolinkConfigEntry = config_entries.ConfigEntry[ReolinkData]
14
14
  @dataclass
@@ -20,7 +20,4 @@ class ReolinkData:
20
20
  def is_connected(hass: HomeAssistant, config_entry: config_entries.ConfigEntry) -> bool: ...
21
21
  def get_host(hass: HomeAssistant, config_entry_id: str) -> ReolinkHost: ...
22
22
  def get_device_uid_and_ch(device: dr.DeviceEntry, host: ReolinkHost) -> tuple[list[str], int | None, bool]: ...
23
- T = TypeVar('T')
24
- P = ParamSpec('P')
25
-
26
- def raise_translated_error(func: Callable[P, Awaitable[T]]) -> Callable[P, Coroutine[Any, Any, T]]: ...
23
+ def raise_translated_error[**P, R](func: Callable[P, Awaitable[R]]) -> Callable[P, Coroutine[Any, Any, R]]: ...
@@ -3,6 +3,6 @@ from .issue_handler import ConfirmRepairFlow as ConfirmRepairFlow, RepairsFlowMa
3
3
  from .models import RepairsFlow as RepairsFlow
4
4
  from homeassistant.core import HomeAssistant
5
5
 
6
- __all__ = ['ConfirmRepairFlow', 'DOMAIN', 'repairs_flow_manager', 'RepairsFlow', 'RepairsFlowManager']
6
+ __all__ = ['DOMAIN', 'ConfirmRepairFlow', 'RepairsFlow', 'RepairsFlowManager', 'repairs_flow_manager']
7
7
 
8
8
  def repairs_flow_manager(hass: HomeAssistant) -> RepairsFlowManager | None: ...
@@ -1,26 +1,15 @@
1
1
  from .const import CONF_LISTEN_CREDENTIALS as CONF_LISTEN_CREDENTIALS, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
2
- from .coordinator import RingDataCoordinator as RingDataCoordinator, RingListenCoordinator as RingListenCoordinator
2
+ from .coordinator import RingConfigEntry as RingConfigEntry, RingData as RingData, RingDataCoordinator as RingDataCoordinator, RingListenCoordinator as RingListenCoordinator
3
3
  from _typeshed import Incomplete
4
- from dataclasses import dataclass
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
4
  from homeassistant.const import APPLICATION_NAME as APPLICATION_NAME, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_TOKEN as CONF_TOKEN
7
5
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
6
  from homeassistant.helpers import device_registry as dr
9
7
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
10
- from ring_doorbell import Ring, RingDevices as RingDevices
11
8
 
12
9
  _LOGGER: Incomplete
13
10
 
14
- @dataclass
15
- class RingData:
16
- api: Ring
17
- devices: RingDevices
18
- devices_coordinator: RingDataCoordinator
19
- listen_coordinator: RingListenCoordinator
20
- type RingConfigEntry = ConfigEntry[RingData]
21
-
22
11
  def get_auth_user_agent() -> str: ...
23
12
  async def async_setup_entry(hass: HomeAssistant, entry: RingConfigEntry) -> bool: ...
24
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
25
- async def async_remove_config_entry_device(hass: HomeAssistant, config_entry: ConfigEntry, device_entry: dr.DeviceEntry) -> bool: ...
26
- async def async_migrate_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
13
+ async def async_unload_entry(hass: HomeAssistant, entry: RingConfigEntry) -> bool: ...
14
+ async def async_remove_config_entry_device(hass: HomeAssistant, entry: RingConfigEntry, device_entry: dr.DeviceEntry) -> bool: ...
15
+ async def async_migrate_entry(hass: HomeAssistant, entry: RingConfigEntry) -> bool: ...
@@ -12,6 +12,8 @@ from homeassistant.helpers.event import async_call_at as async_call_at
12
12
  from ring_doorbell import RingCapability, RingEvent as RingEvent
13
13
  from typing import Any, Generic
14
14
 
15
+ PARALLEL_UPDATES: int
16
+
15
17
  @dataclass(frozen=True, kw_only=True)
16
18
  class RingBinarySensorEntityDescription(BinarySensorEntityDescription, RingEntityDescription, Generic[RingDeviceT]):
17
19
  capability: RingCapability
@@ -7,6 +7,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
8
  from ring_doorbell import RingOther
9
9
 
10
+ PARALLEL_UPDATES: int
10
11
  BUTTON_DESCRIPTION: Incomplete
11
12
 
12
13
  async def async_setup_entry(hass: HomeAssistant, entry: RingConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -15,6 +15,7 @@ from ring_doorbell import RingDoorBell
15
15
  from ring_doorbell.webrtcstream import RingWebRtcMessage as RingWebRtcMessage
16
16
  from typing import Any, Generic
17
17
 
18
+ PARALLEL_UPDATES: int
18
19
  FORCE_REFRESH_INTERVAL: Incomplete
19
20
  MOTION_DETECTION_CAPABILITY: str
20
21
  _LOGGER: Incomplete
@@ -2,12 +2,12 @@ from . import get_auth_user_agent as get_auth_user_agent
2
2
  from .const import CONF_2FA as CONF_2FA, CONF_CONFIG_ENTRY_MINOR_VERSION as CONF_CONFIG_ENTRY_MINOR_VERSION, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Mapping
5
- from homeassistant.components import dhcp as dhcp
6
5
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
7
6
  from homeassistant.const import CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_TOKEN as CONF_TOKEN, CONF_USERNAME as CONF_USERNAME
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant
9
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
10
9
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
10
+ from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
11
11
  from typing import Any
12
12
 
13
13
  _LOGGER: Incomplete
@@ -23,7 +23,7 @@ class RingConfigFlow(ConfigFlow, domain=DOMAIN):
23
23
  MINOR_VERSION = CONF_CONFIG_ENTRY_MINOR_VERSION
24
24
  user_pass: dict[str, Any]
25
25
  hardware_id: str | None
26
- async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
26
+ async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
27
27
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
28
28
  async def async_step_2fa(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
29
29
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
@@ -1,7 +1,8 @@
1
1
  from .const import SCAN_INTERVAL as SCAN_INTERVAL
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Callable as Callable, Coroutine
4
- from homeassistant import config_entries as config_entries
4
+ from dataclasses import dataclass
5
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
6
  from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant, callback as callback
6
7
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
7
8
  from homeassistant.helpers.update_coordinator import BaseDataUpdateCoordinatorProtocol as BaseDataUpdateCoordinatorProtocol, DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
@@ -10,16 +11,25 @@ from typing import Any
10
11
 
11
12
  _LOGGER: Incomplete
12
13
 
14
+ @dataclass
15
+ class RingData:
16
+ api: Ring
17
+ devices: RingDevices
18
+ devices_coordinator: RingDataCoordinator
19
+ listen_coordinator: RingListenCoordinator
20
+ type RingConfigEntry = ConfigEntry[RingData]
21
+
13
22
  async def _call_api[*_Ts, _R](hass: HomeAssistant, target: Callable[[*_Ts], Coroutine[Any, Any, _R]], *args: *_Ts, msg_suffix: str = '') -> _R: ...
14
23
 
15
24
  class RingDataCoordinator(DataUpdateCoordinator[RingDevices]):
25
+ config_entry: RingConfigEntry
16
26
  ring_api: Ring
17
27
  first_call: bool
18
- def __init__(self, hass: HomeAssistant, ring_api: Ring) -> None: ...
28
+ def __init__(self, hass: HomeAssistant, config_entry: RingConfigEntry, ring_api: Ring) -> None: ...
19
29
  async def _async_update_data(self) -> RingDevices: ...
20
30
 
21
31
  class RingListenCoordinator(BaseDataUpdateCoordinatorProtocol):
22
- config_entry: config_entries.ConfigEntry
32
+ config_entry: RingConfigEntry
23
33
  hass: Incomplete
24
34
  logger: Incomplete
25
35
  ring_api: Ring
@@ -27,7 +37,7 @@ class RingListenCoordinator(BaseDataUpdateCoordinatorProtocol):
27
37
  _listeners: dict[CALLBACK_TYPE, tuple[CALLBACK_TYPE, object | None]]
28
38
  _listen_callback_id: int | None
29
39
  start_timeout: int
30
- def __init__(self, hass: HomeAssistant, ring_api: Ring, listen_credentials: dict[str, Any] | None, listen_credentials_updater: Callable[[dict[str, Any]], None]) -> None: ...
40
+ def __init__(self, hass: HomeAssistant, config_entry: RingConfigEntry, ring_api: Ring, listen_credentials: dict[str, Any] | None, listen_credentials_updater: Callable[[dict[str, Any]], None]) -> None: ...
31
41
  alerts: Incomplete
32
42
  def index_alerts(self) -> None: ...
33
43
  async def async_shutdown(self) -> None: ...
@@ -14,8 +14,7 @@ from homeassistant.helpers.entity import EntityDescription as EntityDescription
14
14
  from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
15
15
  from homeassistant.helpers.update_coordinator import BaseCoordinatorEntity as BaseCoordinatorEntity, CoordinatorEntity as CoordinatorEntity
16
16
  from ring_doorbell import RingDevices as RingDevices, RingGeneric
17
- from typing import Any, Concatenate, Generic
18
- from typing_extensions import TypeVar
17
+ from typing import Any, Concatenate, Generic, TypeVar
19
18
 
20
19
  RingDeviceT = TypeVar('RingDeviceT', bound=RingGeneric, default=RingGeneric)
21
20
  _RingCoordinatorT = TypeVar('_RingCoordinatorT', bound=RingDataCoordinator | RingListenCoordinator)
@@ -9,6 +9,8 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
9
9
  from ring_doorbell import RingCapability, RingEvent as RingAlert
10
10
  from typing import Generic
11
11
 
12
+ PARALLEL_UPDATES: int
13
+
12
14
  @dataclass(frozen=True, kw_only=True)
13
15
  class RingEventEntityDescription(EventEntityDescription, Generic[RingDeviceT]):
14
16
  capability: RingCapability
@@ -10,6 +10,7 @@ from ring_doorbell import RingStickUpCam
10
10
  from typing import Any
11
11
 
12
12
  _LOGGER: Incomplete
13
+ PARALLEL_UPDATES: int
13
14
  SKIP_UPDATES_DELAY: Incomplete
14
15
 
15
16
  class OnOffState(StrEnum):
@@ -11,6 +11,8 @@ from homeassistant.helpers.typing import StateType as StateType
11
11
  from ring_doorbell import RingGeneric as RingGeneric
12
12
  from typing import Any, Generic
13
13
 
14
+ PARALLEL_UPDATES: int
15
+
14
16
  async def async_setup_entry(hass: HomeAssistant, entry: RingConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
15
17
 
16
18
  @dataclass(frozen=True, kw_only=True)
@@ -12,6 +12,8 @@ from homeassistant.helpers.typing import StateType as StateType
12
12
  from ring_doorbell import RingEventKind, RingGeneric
13
13
  from typing import Any, Generic
14
14
 
15
+ PARALLEL_UPDATES: int
16
+
15
17
  async def async_setup_entry(hass: HomeAssistant, entry: RingConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
18
 
17
19
  class RingSensor(RingEntity[RingDeviceT], SensorEntity):
@@ -12,6 +12,7 @@ from ring_doorbell import RingGeneric as RingGeneric
12
12
  from typing import Any, Generic
13
13
 
14
14
  _LOGGER: Incomplete
15
+ PARALLEL_UPDATES: int
15
16
 
16
17
  @dataclass(frozen=True, kw_only=True)
17
18
  class RingSirenEntityDescription(SirenEntityDescription, RingEntityDescription, Generic[RingDeviceT]):
@@ -11,6 +11,7 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
11
11
  from typing import Any, Generic, Self
12
12
 
13
13
  _LOGGER: Incomplete
14
+ PARALLEL_UPDATES: int
14
15
  IN_HOME_CHIME_IS_PRESENT: Incomplete
15
16
 
16
17
  @dataclass(frozen=True, kw_only=True)
@@ -1,5 +1,6 @@
1
1
  from .const import CONF_BASE_URL as CONF_BASE_URL, CONF_USER_DATA as CONF_USER_DATA, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
2
2
  from .coordinator import RoborockDataUpdateCoordinator as RoborockDataUpdateCoordinator, RoborockDataUpdateCoordinatorA01 as RoborockDataUpdateCoordinatorA01
3
+ from .roborock_storage import async_remove_map_storage as async_remove_map_storage
3
4
  from _typeshed import Incomplete
4
5
  from collections.abc import Coroutine
5
6
  from dataclasses import dataclass
@@ -28,3 +29,4 @@ async def setup_device_v1(hass: HomeAssistant, user_data: UserData, device: Home
28
29
  async def setup_device_a01(hass: HomeAssistant, user_data: UserData, device: HomeDataDevice, product_info: HomeDataProduct) -> RoborockDataUpdateCoordinatorA01 | None: ...
29
30
  async def async_unload_entry(hass: HomeAssistant, entry: RoborockConfigEntry) -> bool: ...
30
31
  async def update_listener(hass: HomeAssistant, entry: RoborockConfigEntry) -> None: ...
32
+ async def async_remove_entry(hass: HomeAssistant, entry: RoborockConfigEntry) -> None: ...
@@ -11,3 +11,7 @@ PLATFORMS: Incomplete
11
11
  IMAGE_CACHE_INTERVAL: int
12
12
  MAP_SLEEP: int
13
13
  GET_MAPS_SERVICE_NAME: str
14
+ MAP_FILE_FORMAT: str
15
+ MAP_FILENAME_SUFFIX: str
16
+ SET_VACUUM_GOTO_POSITION_SERVICE_NAME: str
17
+ GET_VACUUM_CURRENT_POSITION_SERVICE_NAME: str
@@ -1,13 +1,15 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from .models import RoborockA01HassDeviceInfo as RoborockA01HassDeviceInfo, RoborockHassDeviceInfo as RoborockHassDeviceInfo, RoborockMapInfo as RoborockMapInfo
3
+ from .roborock_storage import RoborockMapStorage as RoborockMapStorage
3
4
  from _typeshed import Incomplete
5
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
6
  from homeassistant.const import ATTR_CONNECTIONS as ATTR_CONNECTIONS
5
7
  from homeassistant.core import HomeAssistant as HomeAssistant
6
8
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
7
9
  from homeassistant.helpers.typing import StateType as StateType
8
10
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
9
11
  from homeassistant.util import slugify as slugify
10
- from propcache import cached_property
12
+ from propcache.api import cached_property
11
13
  from roborock import HomeDataRoom as HomeDataRoom
12
14
  from roborock.containers import HomeDataDevice as HomeDataDevice, HomeDataProduct as HomeDataProduct, NetworkInfo as NetworkInfo
13
15
  from roborock.roborock_message import RoborockDyadDataProtocol, RoborockZeoProtocol
@@ -20,6 +22,7 @@ SCAN_INTERVAL: Incomplete
20
22
  _LOGGER: Incomplete
21
23
 
22
24
  class RoborockDataUpdateCoordinator(DataUpdateCoordinator[DeviceProp]):
25
+ config_entry: ConfigEntry
23
26
  roborock_device_info: Incomplete
24
27
  api: RoborockLocalClientV1 | RoborockMqttClientV1
25
28
  cloud_api: Incomplete
@@ -27,14 +30,15 @@ class RoborockDataUpdateCoordinator(DataUpdateCoordinator[DeviceProp]):
27
30
  current_map: int | None
28
31
  maps: dict[int, RoborockMapInfo]
29
32
  _home_data_rooms: Incomplete
33
+ map_storage: Incomplete
30
34
  def __init__(self, hass: HomeAssistant, device: HomeDataDevice, device_networking: NetworkInfo, product_info: HomeDataProduct, cloud_api: RoborockMqttClientV1, home_data_rooms: list[HomeDataRoom]) -> None: ...
31
- async def verify_api(self) -> None: ...
35
+ async def _async_setup(self) -> None: ...
36
+ async def _verify_api(self) -> None: ...
32
37
  async def release(self) -> None: ...
33
38
  async def _update_device_prop(self) -> None: ...
34
39
  async def _async_update_data(self) -> DeviceProp: ...
35
40
  def _set_current_map(self) -> None: ...
36
- async def get_maps(self) -> None: ...
37
- async def get_rooms(self) -> None: ...
41
+ async def set_current_map_rooms(self) -> None: ...
38
42
  @cached_property
39
43
  def duid(self) -> str: ...
40
44
  @cached_property
@@ -1,36 +1,35 @@
1
1
  from . import RoborockConfigEntry as RoborockConfigEntry
2
- from .const import DEFAULT_DRAWABLES as DEFAULT_DRAWABLES, DOMAIN as DOMAIN, DRAWABLES as DRAWABLES, IMAGE_CACHE_INTERVAL as IMAGE_CACHE_INTERVAL, MAP_SLEEP as MAP_SLEEP
2
+ from .const import DEFAULT_DRAWABLES as DEFAULT_DRAWABLES, DOMAIN as DOMAIN, DRAWABLES as DRAWABLES, IMAGE_CACHE_INTERVAL as IMAGE_CACHE_INTERVAL, MAP_FILE_FORMAT as MAP_FILE_FORMAT, MAP_SLEEP as MAP_SLEEP
3
3
  from .coordinator import RoborockDataUpdateCoordinator as RoborockDataUpdateCoordinator
4
4
  from .entity import RoborockCoordinatedEntityV1 as RoborockCoordinatedEntityV1
5
5
  from _typeshed import Incomplete
6
+ from collections.abc import Callable as Callable
6
7
  from datetime import datetime
7
8
  from homeassistant.components.image import ImageEntity as ImageEntity
9
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
10
  from homeassistant.const import EntityCategory as EntityCategory
9
11
  from homeassistant.core import HomeAssistant as HomeAssistant
10
12
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
11
13
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
- from homeassistant.util import slugify as slugify
13
- from vacuum_map_parser_base.config.drawable import Drawable as Drawable
14
14
 
15
15
  async def async_setup_entry(hass: HomeAssistant, config_entry: RoborockConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
16
 
17
17
  class RoborockMap(RoborockCoordinatedEntityV1, ImageEntity):
18
18
  _attr_has_entity_name: bool
19
19
  image_last_updated: datetime
20
- _attr_name: Incomplete
20
+ _attr_name: str
21
+ config_entry: Incomplete
21
22
  parser: Incomplete
22
- _attr_image_last_updated: Incomplete
23
23
  map_flag: Incomplete
24
- cached_map: Incomplete
24
+ cached_map: bytes
25
25
  _attr_entity_category: Incomplete
26
- def __init__(self, unique_id: str, coordinator: RoborockDataUpdateCoordinator, map_flag: int, starting_map: bytes, map_name: str, drawables: list[Drawable]) -> None: ...
27
- @property
28
- def available(self) -> bool: ...
26
+ def __init__(self, config_entry: ConfigEntry, unique_id: str, coordinator: RoborockDataUpdateCoordinator, map_flag: int, map_name: str, parser: Callable[[bytes], bytes | None]) -> None: ...
29
27
  @property
30
28
  def is_selected(self) -> bool: ...
31
29
  def is_map_valid(self) -> bool: ...
30
+ _attr_image_last_updated: Incomplete
31
+ async def async_added_to_hass(self) -> None: ...
32
32
  def _handle_coordinator_update(self) -> None: ...
33
33
  async def async_image(self) -> bytes | None: ...
34
- def _create_image(self, map_bytes: bytes) -> bytes: ...
35
34
 
36
- async def create_coordinator_maps(coord: RoborockDataUpdateCoordinator, drawables: list[Drawable]) -> list[RoborockMap]: ...
35
+ async def refresh_coordinators(hass: HomeAssistant, coord: RoborockDataUpdateCoordinator) -> None: ...
@@ -0,0 +1,21 @@
1
+ from .const import DOMAIN as DOMAIN, MAP_FILENAME_SUFFIX as MAP_FILENAME_SUFFIX
2
+ from _typeshed import Incomplete
3
+ from homeassistant.core import HomeAssistant as HomeAssistant
4
+ from pathlib import Path
5
+
6
+ _LOGGER: Incomplete
7
+ STORAGE_PATH: Incomplete
8
+ MAPS_PATH: str
9
+
10
+ def _storage_path_prefix(hass: HomeAssistant, entry_id: str) -> Path: ...
11
+
12
+ class RoborockMapStorage:
13
+ _hass: Incomplete
14
+ _path_prefix: Incomplete
15
+ def __init__(self, hass: HomeAssistant, entry_id: str, device_id_slug: str) -> None: ...
16
+ async def async_load_map(self, map_flag: int) -> bytes | None: ...
17
+ def _load_map(self, filename: Path) -> bytes | None: ...
18
+ async def async_save_map(self, map_flag: int, content: bytes) -> None: ...
19
+ def _save_map(self, filename: Path, content: bytes) -> None: ...
20
+
21
+ async def async_remove_map_storage(hass: HomeAssistant, entry_id: str) -> None: ...
@@ -5,7 +5,7 @@ from .entity import RoborockCoordinatedEntityA01 as RoborockCoordinatedEntityA01
5
5
  from _typeshed import Incomplete
6
6
  from collections.abc import Callable as Callable
7
7
  from dataclasses import dataclass
8
- from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
8
+ from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
9
9
  from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfArea as UnitOfArea, UnitOfTime as UnitOfTime
10
10
  from homeassistant.core import HomeAssistant as HomeAssistant
11
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -1,10 +1,12 @@
1
1
  from . import RoborockConfigEntry as RoborockConfigEntry
2
- from .const import DOMAIN as DOMAIN, GET_MAPS_SERVICE_NAME as GET_MAPS_SERVICE_NAME
2
+ from .const import DOMAIN as DOMAIN, GET_MAPS_SERVICE_NAME as GET_MAPS_SERVICE_NAME, GET_VACUUM_CURRENT_POSITION_SERVICE_NAME as GET_VACUUM_CURRENT_POSITION_SERVICE_NAME, SET_VACUUM_GOTO_POSITION_SERVICE_NAME as SET_VACUUM_GOTO_POSITION_SERVICE_NAME
3
3
  from .coordinator import RoborockDataUpdateCoordinator as RoborockDataUpdateCoordinator
4
4
  from .entity import RoborockCoordinatedEntityV1 as RoborockCoordinatedEntityV1
5
+ from .image import ColorsPalette as ColorsPalette, ImageConfig as ImageConfig, RoborockMapDataParser as RoborockMapDataParser, Sizes as Sizes
5
6
  from _typeshed import Incomplete
6
7
  from homeassistant.components.vacuum import StateVacuumEntity as StateVacuumEntity, VacuumActivity as VacuumActivity, VacuumEntityFeature as VacuumEntityFeature
7
8
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceResponse as ServiceResponse, SupportsResponse as SupportsResponse
9
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
8
10
  from homeassistant.helpers import entity_platform as entity_platform
9
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
12
  from typing import Any
@@ -33,5 +35,7 @@ class RoborockVacuum(RoborockCoordinatedEntityV1, StateVacuumEntity):
33
35
  async def async_clean_spot(self, **kwargs: Any) -> None: ...
34
36
  async def async_locate(self, **kwargs: Any) -> None: ...
35
37
  async def async_set_fan_speed(self, fan_speed: str, **kwargs: Any) -> None: ...
38
+ async def async_set_vacuum_goto_position(self, x: int, y: int) -> None: ...
36
39
  async def async_send_command(self, command: str, params: dict[str, Any] | list[Any] | None = None, **kwargs: Any) -> None: ...
37
40
  async def get_maps(self) -> ServiceResponse: ...
41
+ async def get_vacuum_current_position(self) -> ServiceResponse: ...
@@ -1,11 +1,12 @@
1
1
  from . import RokuConfigEntry as RokuConfigEntry
2
2
  from .const import CONF_PLAY_MEDIA_APP_ID as CONF_PLAY_MEDIA_APP_ID, DEFAULT_PLAY_MEDIA_APP_ID as DEFAULT_PLAY_MEDIA_APP_ID, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
- from homeassistant.components import ssdp as ssdp, zeroconf as zeroconf
5
4
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
6
5
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME
7
6
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
7
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
+ from homeassistant.helpers.service_info.ssdp import ATTR_UPNP_FRIENDLY_NAME as ATTR_UPNP_FRIENDLY_NAME, ATTR_UPNP_SERIAL as ATTR_UPNP_SERIAL, SsdpServiceInfo as SsdpServiceInfo
9
+ from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
9
10
  from typing import Any
10
11
 
11
12
  DATA_SCHEMA: Incomplete
@@ -23,8 +24,8 @@ class RokuConfigFlow(ConfigFlow, domain=DOMAIN):
23
24
  def _show_form(self, user_input: dict[str, Any] | None, errors: dict[str, Any] | None = None) -> ConfigFlowResult: ...
24
25
  async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
25
26
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
26
- async def async_step_homekit(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> ConfigFlowResult: ...
27
- async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> ConfigFlowResult: ...
27
+ async def async_step_homekit(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
28
+ async def async_step_ssdp(self, discovery_info: SsdpServiceInfo) -> ConfigFlowResult: ...
28
29
  async def async_step_discovery_confirm(self, user_input: dict | None = None) -> ConfigFlowResult: ...
29
30
  @staticmethod
30
31
  @callback
@@ -1,7 +1,7 @@
1
1
  from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
2
- from homeassistant.components import zeroconf as zeroconf
3
2
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
4
3
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD
4
+ from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
5
5
 
6
6
  class RomyConfigFlow(ConfigFlow, domain=DOMAIN):
7
7
  VERSION: int
@@ -11,6 +11,6 @@ class RomyConfigFlow(ConfigFlow, domain=DOMAIN):
11
11
  def __init__(self) -> None: ...
12
12
  async def async_step_user(self, user_input: dict[str, str] | None = None) -> ConfigFlowResult: ...
13
13
  async def async_step_password(self, user_input: dict[str, str] | None = None) -> ConfigFlowResult: ...
14
- async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> ConfigFlowResult: ...
14
+ async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
15
15
  async def async_step_zeroconf_confirm(self, user_input: dict[str, str] | None = None) -> ConfigFlowResult: ...
16
16
  async def _async_step_finish_config(self) -> ConfigFlowResult: ...