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
@@ -1,16 +1,12 @@
1
1
  from .const import DOMAIN as DOMAIN
2
- from .hub import LitterRobotHub as LitterRobotHub
2
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry, LitterRobotDataUpdateCoordinator as LitterRobotDataUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
4
  from homeassistant.const import Platform as Platform
6
5
  from homeassistant.core import HomeAssistant as HomeAssistant
7
6
  from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
8
- from pylitterbot import Robot
9
7
 
10
- type LitterRobotConfigEntry = ConfigEntry[LitterRobotHub]
11
- PLATFORMS_BY_TYPE: Incomplete
8
+ PLATFORMS: Incomplete
12
9
 
13
- def get_platforms_for_robots(robots: list[Robot]) -> set[Platform]: ...
14
10
  async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry) -> bool: ...
15
11
  async def async_unload_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry) -> bool: ...
16
12
  async def async_remove_config_entry_device(hass: HomeAssistant, entry: LitterRobotConfigEntry, device_entry: DeviceEntry) -> bool: ...
@@ -1,4 +1,4 @@
1
- from . import LitterRobotConfigEntry as LitterRobotConfigEntry
1
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry
2
2
  from .entity import LitterRobotEntity as LitterRobotEntity, _RobotT as _RobotT
3
3
  from collections.abc import Callable as Callable
4
4
  from dataclasses import dataclass
@@ -9,18 +9,15 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
9
9
  from pylitterbot import Robot
10
10
  from typing import Generic
11
11
 
12
- @dataclass(frozen=True)
13
- class RequiredKeysMixin(Generic[_RobotT]):
12
+ @dataclass(frozen=True, kw_only=True)
13
+ class RobotBinarySensorEntityDescription(BinarySensorEntityDescription, Generic[_RobotT]):
14
14
  is_on_fn: Callable[[_RobotT], bool]
15
15
 
16
- @dataclass(frozen=True)
17
- class RobotBinarySensorEntityDescription(BinarySensorEntityDescription, RequiredKeysMixin[_RobotT]): ...
16
+ BINARY_SENSOR_MAP: dict[type[Robot], tuple[RobotBinarySensorEntityDescription, ...]]
17
+
18
+ async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
18
19
 
19
20
  class LitterRobotBinarySensorEntity(LitterRobotEntity[_RobotT], BinarySensorEntity):
20
21
  entity_description: RobotBinarySensorEntityDescription[_RobotT]
21
22
  @property
22
23
  def is_on(self) -> bool: ...
23
-
24
- BINARY_SENSOR_MAP: dict[type[Robot], tuple[RobotBinarySensorEntityDescription, ...]]
25
-
26
- async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -1,25 +1,21 @@
1
- from . import LitterRobotConfigEntry as LitterRobotConfigEntry
1
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry
2
2
  from .entity import LitterRobotEntity as LitterRobotEntity, _RobotT as _RobotT
3
- from _typeshed import Incomplete
4
3
  from collections.abc import Callable as Callable, Coroutine
5
4
  from dataclasses import dataclass
6
5
  from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
7
6
  from homeassistant.const import EntityCategory as EntityCategory
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant
9
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+ from pylitterbot import Robot as Robot
10
10
  from typing import Any, Generic
11
11
 
12
- async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
13
-
14
- @dataclass(frozen=True)
15
- class RequiredKeysMixin(Generic[_RobotT]):
12
+ @dataclass(frozen=True, kw_only=True)
13
+ class RobotButtonEntityDescription(ButtonEntityDescription, Generic[_RobotT]):
16
14
  press_fn: Callable[[_RobotT], Coroutine[Any, Any, bool]]
17
15
 
18
- @dataclass(frozen=True)
19
- class RobotButtonEntityDescription(ButtonEntityDescription, RequiredKeysMixin[_RobotT]): ...
16
+ ROBOT_BUTTON_MAP: dict[type[Robot], RobotButtonEntityDescription]
20
17
 
21
- LITTER_ROBOT_BUTTON: Incomplete
22
- FEEDER_ROBOT_BUTTON: Incomplete
18
+ async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
23
19
 
24
20
  class LitterRobotButtonEntity(LitterRobotEntity[_RobotT], ButtonEntity):
25
21
  entity_description: RobotButtonEntityDescription[_RobotT]
@@ -1,22 +1,23 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
- from collections.abc import Generator, Mapping
3
+ from collections.abc import Generator
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
5
  from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
5
6
  from homeassistant.core import HomeAssistant as HomeAssistant
6
- from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
7
+ from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
7
8
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
- from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
9
+ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
9
10
  from pylitterbot import FeederRobot, LitterRobot
10
- from typing import Any
11
11
 
12
12
  _LOGGER: Incomplete
13
- UPDATE_INTERVAL_SECONDS: Incomplete
13
+ UPDATE_INTERVAL: Incomplete
14
+ type LitterRobotConfigEntry = ConfigEntry[LitterRobotDataUpdateCoordinator]
14
15
 
15
- class LitterRobotHub:
16
- _data: Incomplete
16
+ class LitterRobotDataUpdateCoordinator(DataUpdateCoordinator[None]):
17
+ config_entry: LitterRobotConfigEntry
17
18
  account: Incomplete
18
- coordinator: Incomplete
19
- def __init__(self, hass: HomeAssistant, data: Mapping[str, Any]) -> None: ...
20
- async def login(self, load_robots: bool = False, subscribe_for_updates: bool = False) -> None: ...
19
+ def __init__(self, hass: HomeAssistant, config_entry: LitterRobotConfigEntry) -> None: ...
20
+ async def _async_update_data(self) -> None: ...
21
+ async def _async_setup(self) -> None: ...
21
22
  def litter_robots(self) -> Generator[LitterRobot]: ...
22
23
  def feeder_robots(self) -> Generator[FeederRobot]: ...
@@ -1,21 +1,19 @@
1
1
  from .const import DOMAIN as DOMAIN
2
- from .hub import LitterRobotHub as LitterRobotHub
2
+ from .coordinator import LitterRobotDataUpdateCoordinator as LitterRobotDataUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
5
5
  from homeassistant.helpers.entity import EntityDescription as EntityDescription
6
- from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity, DataUpdateCoordinator as DataUpdateCoordinator
6
+ from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
7
7
  from pylitterbot import Robot
8
8
  from typing import Generic, TypeVar
9
9
 
10
10
  _RobotT = TypeVar('_RobotT', bound=Robot)
11
11
 
12
- class LitterRobotEntity(CoordinatorEntity[DataUpdateCoordinator[bool]], Generic[_RobotT]):
12
+ class LitterRobotEntity(CoordinatorEntity[LitterRobotDataUpdateCoordinator], Generic[_RobotT]):
13
13
  _attr_has_entity_name: bool
14
14
  robot: Incomplete
15
- hub: Incomplete
16
15
  entity_description: Incomplete
17
16
  _attr_unique_id: Incomplete
18
- def __init__(self, robot: _RobotT, hub: LitterRobotHub, description: EntityDescription) -> None: ...
19
- @property
20
- def device_info(self) -> DeviceInfo: ...
17
+ _attr_device_info: Incomplete
18
+ def __init__(self, robot: _RobotT, coordinator: LitterRobotDataUpdateCoordinator, description: EntityDescription) -> None: ...
21
19
  async def async_added_to_hass(self) -> None: ...
@@ -1,6 +1,5 @@
1
- from . import LitterRobotConfigEntry as LitterRobotConfigEntry
1
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry, LitterRobotDataUpdateCoordinator as LitterRobotDataUpdateCoordinator
2
2
  from .entity import LitterRobotEntity as LitterRobotEntity, _RobotT as _RobotT
3
- from .hub import LitterRobotHub as LitterRobotHub
4
3
  from _typeshed import Incomplete
5
4
  from collections.abc import Callable as Callable, Coroutine
6
5
  from dataclasses import dataclass
@@ -9,23 +8,17 @@ from homeassistant.const import EntityCategory as EntityCategory, UnitOfTime as
9
8
  from homeassistant.core import HomeAssistant as HomeAssistant
10
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
10
  from pylitterbot import Robot as Robot
12
- from pylitterbot.robot.litterrobot4 import BrightnessLevel
13
11
  from typing import Any, Generic, TypeVar
14
12
 
15
13
  _CastTypeT = TypeVar('_CastTypeT', int, float, str)
16
- BRIGHTNESS_LEVEL_ICON_MAP: dict[BrightnessLevel | None, str]
17
14
 
18
- @dataclass(frozen=True)
19
- class RequiredKeysMixin(Generic[_RobotT, _CastTypeT]):
15
+ @dataclass(frozen=True, kw_only=True)
16
+ class RobotSelectEntityDescription(SelectEntityDescription, Generic[_RobotT, _CastTypeT]):
17
+ entity_category: EntityCategory = ...
20
18
  current_fn: Callable[[_RobotT], _CastTypeT | None]
21
19
  options_fn: Callable[[_RobotT], list[_CastTypeT]]
22
20
  select_fn: Callable[[_RobotT, str], Coroutine[Any, Any, bool]]
23
21
 
24
- @dataclass(frozen=True)
25
- class RobotSelectEntityDescription(SelectEntityDescription, RequiredKeysMixin[_RobotT, _CastTypeT]):
26
- entity_category: EntityCategory = ...
27
- icon_fn: Callable[[_RobotT], str] | None = ...
28
-
29
22
  ROBOT_SELECT_MAP: dict[type[Robot], RobotSelectEntityDescription]
30
23
 
31
24
  async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -33,9 +26,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry,
33
26
  class LitterRobotSelectEntity(LitterRobotEntity[_RobotT], SelectEntity, Generic[_RobotT, _CastTypeT]):
34
27
  entity_description: RobotSelectEntityDescription[_RobotT, _CastTypeT]
35
28
  _attr_options: Incomplete
36
- def __init__(self, robot: _RobotT, hub: LitterRobotHub, description: RobotSelectEntityDescription[_RobotT, _CastTypeT]) -> None: ...
37
- @property
38
- def icon(self) -> str | None: ...
29
+ def __init__(self, robot: _RobotT, coordinator: LitterRobotDataUpdateCoordinator, description: RobotSelectEntityDescription[_RobotT, _CastTypeT]) -> None: ...
39
30
  @property
40
31
  def current_option(self) -> str | None: ...
41
32
  async def async_select_option(self, option: str) -> None: ...
@@ -1,4 +1,4 @@
1
- from . import LitterRobotConfigEntry as LitterRobotConfigEntry
1
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry
2
2
  from .entity import LitterRobotEntity as LitterRobotEntity, _RobotT as _RobotT
3
3
  from collections.abc import Callable as Callable
4
4
  from dataclasses import dataclass
@@ -12,10 +12,14 @@ from typing import Any, Generic
12
12
 
13
13
  def icon_for_gauge_level(gauge_level: int | None = None, offset: int = 0) -> str: ...
14
14
 
15
- @dataclass(frozen=True)
15
+ @dataclass(frozen=True, kw_only=True)
16
16
  class RobotSensorEntityDescription(SensorEntityDescription, Generic[_RobotT]):
17
17
  icon_fn: Callable[[Any], str | None] = ...
18
- should_report: Callable[[_RobotT], bool] = ...
18
+ value_fn: Callable[[_RobotT], float | datetime | str | None]
19
+
20
+ ROBOT_SENSOR_MAP: dict[type[Robot], list[RobotSensorEntityDescription]]
21
+
22
+ async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
19
23
 
20
24
  class LitterRobotSensorEntity(LitterRobotEntity[_RobotT], SensorEntity):
21
25
  entity_description: RobotSensorEntityDescription[_RobotT]
@@ -23,7 +27,3 @@ class LitterRobotSensorEntity(LitterRobotEntity[_RobotT], SensorEntity):
23
27
  def native_value(self) -> float | datetime | str | None: ...
24
28
  @property
25
29
  def icon(self) -> str | None: ...
26
-
27
- ROBOT_SENSOR_MAP: dict[type[Robot], list[RobotSensorEntityDescription]]
28
-
29
- async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -1,4 +1,4 @@
1
- from . import LitterRobotConfigEntry as LitterRobotConfigEntry
1
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry
2
2
  from .entity import LitterRobotEntity as LitterRobotEntity, _RobotT as _RobotT
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable, Coroutine
@@ -9,21 +9,19 @@ from homeassistant.core import HomeAssistant as HomeAssistant
9
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
10
  from typing import Any, Generic
11
11
 
12
- @dataclass(frozen=True)
13
- class RequiredKeysMixin(Generic[_RobotT]):
14
- set_fn: Callable[[_RobotT, bool], Coroutine[Any, Any, bool]]
15
-
16
- @dataclass(frozen=True)
17
- class RobotSwitchEntityDescription(SwitchEntityDescription, RequiredKeysMixin[_RobotT]):
12
+ @dataclass(frozen=True, kw_only=True)
13
+ class RobotSwitchEntityDescription(SwitchEntityDescription, Generic[_RobotT]):
18
14
  entity_category: EntityCategory = ...
15
+ set_fn: Callable[[_RobotT, bool], Coroutine[Any, Any, bool]]
16
+ value_fn: Callable[[_RobotT], bool]
19
17
 
20
18
  ROBOT_SWITCHES: Incomplete
21
19
 
20
+ async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
21
+
22
22
  class RobotSwitchEntity(LitterRobotEntity[_RobotT], SwitchEntity):
23
23
  entity_description: RobotSwitchEntityDescription[_RobotT]
24
24
  @property
25
25
  def is_on(self) -> bool | None: ...
26
26
  async def async_turn_on(self, **kwargs: Any) -> None: ...
27
27
  async def async_turn_off(self, **kwargs: Any) -> None: ...
28
-
29
- async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -1,4 +1,4 @@
1
- from . import LitterRobotConfigEntry as LitterRobotConfigEntry
1
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry
2
2
  from .entity import LitterRobotEntity as LitterRobotEntity, _RobotT as _RobotT
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable, Coroutine
@@ -10,14 +10,11 @@ from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
11
  from typing import Any, Generic
12
12
 
13
- @dataclass(frozen=True)
14
- class RequiredKeysMixin(Generic[_RobotT]):
13
+ @dataclass(frozen=True, kw_only=True)
14
+ class RobotTimeEntityDescription(TimeEntityDescription, Generic[_RobotT]):
15
15
  value_fn: Callable[[_RobotT], time | None]
16
16
  set_fn: Callable[[_RobotT, time], Coroutine[Any, Any, bool]]
17
17
 
18
- @dataclass(frozen=True)
19
- class RobotTimeEntityDescription(TimeEntityDescription, RequiredKeysMixin[_RobotT]): ...
20
-
21
18
  def _as_local_time(start: datetime | None) -> time | None: ...
22
19
 
23
20
  LITTER_ROBOT_3_SLEEP_START: Incomplete
@@ -1,4 +1,4 @@
1
- from . import LitterRobotConfigEntry as LitterRobotConfigEntry
1
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry
2
2
  from .entity import LitterRobotEntity as LitterRobotEntity
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.update import UpdateDeviceClass as UpdateDeviceClass, UpdateEntity as UpdateEntity, UpdateEntityDescription as UpdateEntityDescription, UpdateEntityFeature as UpdateEntityFeature
@@ -1,4 +1,4 @@
1
- from . import LitterRobotConfigEntry as LitterRobotConfigEntry
1
+ from .coordinator import LitterRobotConfigEntry as LitterRobotConfigEntry
2
2
  from .entity import LitterRobotEntity as LitterRobotEntity
3
3
  from _typeshed import Incomplete
4
4
  from datetime import time
@@ -19,12 +19,8 @@ class LitterRobotCleaner(LitterRobotEntity[LitterRobot], StateVacuumEntity):
19
19
  _attr_supported_features: Incomplete
20
20
  @property
21
21
  def activity(self) -> VacuumActivity: ...
22
- @property
23
- def status(self) -> str: ...
24
22
  async def async_start(self) -> None: ...
25
23
  async def async_stop(self, **kwargs: Any) -> None: ...
26
24
  async def async_set_sleep_mode(self, enabled: bool, start_time: str | None = None) -> None: ...
27
25
  @staticmethod
28
26
  def parse_time_at_default_timezone(time_str: str | None) -> time | None: ...
29
- @property
30
- def extra_state_attributes(self) -> dict[str, Any]: ...
@@ -11,7 +11,7 @@ from homeassistant.helpers.entity import Entity as Entity, EntityDescription as
11
11
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
12
12
  from homeassistant.helpers.typing import ConfigType as ConfigType, StateType as StateType
13
13
  from homeassistant.util.hass_dict import HassKey as HassKey
14
- from propcache import cached_property
14
+ from propcache.api import cached_property
15
15
  from typing import Any, final
16
16
 
17
17
  _LOGGER: Incomplete
@@ -8,7 +8,7 @@ from homeassistant.core import Context as Context, Event as Event, State as Stat
8
8
  from homeassistant.util.event_type import EventType as EventType
9
9
  from homeassistant.util.json import json_loads as json_loads
10
10
  from homeassistant.util.ulid import ulid_to_bytes as ulid_to_bytes
11
- from propcache import cached_property
11
+ from propcache.api import cached_property
12
12
  from sqlalchemy.engine.row import Row as Row
13
13
  from typing import Any, Final, NamedTuple
14
14
 
@@ -1,10 +1,10 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from aiolookin import Device as Device
4
- from homeassistant.components import zeroconf as zeroconf
5
4
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
6
5
  from homeassistant.const import CONF_HOST as CONF_HOST
7
6
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
7
+ from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
8
8
  from typing import Any
9
9
 
10
10
  LOGGER: Incomplete
@@ -13,7 +13,7 @@ class LookinFlowHandler(ConfigFlow, domain=DOMAIN):
13
13
  _host: str | None
14
14
  _name: str | None
15
15
  def __init__(self) -> None: ...
16
- async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> ConfigFlowResult: ...
16
+ async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
17
17
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
18
18
  async def _validate_device(self, host: str) -> Device: ...
19
19
  async def async_step_discovery_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -0,0 +1,39 @@
1
+ from . import dashboard as dashboard, resources as resources, websocket as websocket
2
+ from .const import CONF_ALLOW_SINGLE_WORD as CONF_ALLOW_SINGLE_WORD, CONF_ICON as CONF_ICON, CONF_REQUIRE_ADMIN as CONF_REQUIRE_ADMIN, CONF_SHOW_IN_SIDEBAR as CONF_SHOW_IN_SIDEBAR, CONF_TITLE as CONF_TITLE, CONF_URL_PATH as CONF_URL_PATH, DASHBOARD_BASE_CREATE_FIELDS as DASHBOARD_BASE_CREATE_FIELDS, DEFAULT_ICON as DEFAULT_ICON, DOMAIN as DOMAIN, EVENT_LOVELACE_UPDATED as EVENT_LOVELACE_UPDATED, LOVELACE_DATA as LOVELACE_DATA, MODE_STORAGE as MODE_STORAGE, MODE_YAML as MODE_YAML, RESOURCE_CREATE_FIELDS as RESOURCE_CREATE_FIELDS, RESOURCE_RELOAD_SERVICE_SCHEMA as RESOURCE_RELOAD_SERVICE_SCHEMA, RESOURCE_SCHEMA as RESOURCE_SCHEMA, RESOURCE_UPDATE_FIELDS as RESOURCE_UPDATE_FIELDS, SERVICE_RELOAD_RESOURCES as SERVICE_RELOAD_RESOURCES, STORAGE_DASHBOARD_CREATE_FIELDS as STORAGE_DASHBOARD_CREATE_FIELDS, STORAGE_DASHBOARD_UPDATE_FIELDS as STORAGE_DASHBOARD_UPDATE_FIELDS
3
+ from .system_health import system_health_info as system_health_info
4
+ from _typeshed import Incomplete
5
+ from dataclasses import dataclass
6
+ from homeassistant.components import frontend as frontend, websocket_api as websocket_api
7
+ from homeassistant.config import async_hass_config_yaml as async_hass_config_yaml, async_process_component_and_handle_errors as async_process_component_and_handle_errors
8
+ from homeassistant.const import CONF_FILENAME as CONF_FILENAME, CONF_MODE as CONF_MODE, CONF_RESOURCES as CONF_RESOURCES
9
+ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
10
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
11
+ from homeassistant.helpers import collection as collection
12
+ from homeassistant.helpers.frame import report_usage as report_usage
13
+ from homeassistant.helpers.service import async_register_admin_service as async_register_admin_service
14
+ from homeassistant.helpers.typing import ConfigType as ConfigType
15
+ from homeassistant.loader import async_get_integration as async_get_integration
16
+ from homeassistant.util import slugify as slugify
17
+ from typing import Any
18
+
19
+ _LOGGER: Incomplete
20
+
21
+ def _validate_url_slug(value: Any) -> str: ...
22
+
23
+ CONF_DASHBOARDS: str
24
+ YAML_DASHBOARD_SCHEMA: Incomplete
25
+ CONFIG_SCHEMA: Incomplete
26
+
27
+ @dataclass
28
+ class LovelaceData:
29
+ mode: str
30
+ dashboards: dict[str | None, dashboard.LovelaceConfig]
31
+ resources: resources.ResourceYAMLCollection | resources.ResourceStorageCollection
32
+ yaml_dashboards: dict[str | None, ConfigType]
33
+ def __getitem__(self, name: str) -> Any: ...
34
+ def get(self, name: str, default: Any = None) -> Any: ...
35
+
36
+ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
37
+ async def create_yaml_resource_col(hass: HomeAssistant, yaml_resources: list[ConfigType] | None) -> resources.ResourceYAMLCollection: ...
38
+ @callback
39
+ def _register_panel(hass: HomeAssistant, url_path: str | None, mode: str, config: dict, update: bool) -> None: ...
@@ -0,0 +1,18 @@
1
+ from .const import ConfigNotFound as ConfigNotFound, DOMAIN as DOMAIN, LOVELACE_DATA as LOVELACE_DATA
2
+ from homeassistant.components.cast.home_assistant_cast import ATTR_URL_PATH as ATTR_URL_PATH, ATTR_VIEW_PATH as ATTR_VIEW_PATH, NO_URL_AVAILABLE_ERROR as NO_URL_AVAILABLE_ERROR, SERVICE_SHOW_VIEW as SERVICE_SHOW_VIEW
3
+ from homeassistant.components.media_player import BrowseError as BrowseError, BrowseMedia as BrowseMedia, MediaClass as MediaClass, MediaType as MediaType
4
+ from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID
5
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
6
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
7
+ from homeassistant.helpers.network import NoURLAvailableError as NoURLAvailableError, get_url as get_url
8
+ from pychromecast import Chromecast as Chromecast
9
+ from typing import Any
10
+
11
+ DEFAULT_DASHBOARD: str
12
+
13
+ async def async_get_media_browser_root_object(hass: HomeAssistant, cast_type: str) -> list[BrowseMedia]: ...
14
+ async def async_browse_media(hass: HomeAssistant, media_content_type: MediaType | str, media_content_id: str, cast_type: str) -> BrowseMedia | None: ...
15
+ async def async_play_media(hass: HomeAssistant, cast_entity_id: str, chromecast: Chromecast, media_type: MediaType | str, media_id: str) -> bool: ...
16
+ async def _get_dashboard_info(hass: HomeAssistant, url_path: str | None) -> dict[str, Any]: ...
17
+ @callback
18
+ def _item_from_info(info: dict) -> BrowseMedia: ...
@@ -0,0 +1,33 @@
1
+ from . import LovelaceData as LovelaceData
2
+ from _typeshed import Incomplete
3
+ from homeassistant.const import CONF_ICON as CONF_ICON, CONF_MODE as CONF_MODE, CONF_TYPE as CONF_TYPE, CONF_URL as CONF_URL, EVENT_LOVELACE_UPDATED as EVENT_LOVELACE_UPDATED
4
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
5
+ from homeassistant.helpers.typing import VolDictType as VolDictType
6
+ from homeassistant.util.hass_dict import HassKey as HassKey
7
+
8
+ DOMAIN: str
9
+ LOVELACE_DATA: HassKey[LovelaceData]
10
+ DEFAULT_ICON: str
11
+ MODE_YAML: str
12
+ MODE_STORAGE: str
13
+ MODE_AUTO: str
14
+ LOVELACE_CONFIG_FILE: str
15
+ CONF_ALLOW_SINGLE_WORD: str
16
+ CONF_URL_PATH: str
17
+ CONF_RESOURCE_TYPE_WS: str
18
+ RESOURCE_TYPES: Incomplete
19
+ RESOURCE_FIELDS: Incomplete
20
+ RESOURCE_SCHEMA: Incomplete
21
+ RESOURCE_CREATE_FIELDS: VolDictType
22
+ RESOURCE_UPDATE_FIELDS: VolDictType
23
+ SERVICE_RELOAD_RESOURCES: str
24
+ RESOURCE_RELOAD_SERVICE_SCHEMA: Incomplete
25
+ CONF_TITLE: str
26
+ CONF_REQUIRE_ADMIN: str
27
+ CONF_SHOW_IN_SIDEBAR: str
28
+ DASHBOARD_BASE_CREATE_FIELDS: VolDictType
29
+ DASHBOARD_BASE_UPDATE_FIELDS: VolDictType
30
+ STORAGE_DASHBOARD_CREATE_FIELDS: VolDictType
31
+ STORAGE_DASHBOARD_UPDATE_FIELDS = DASHBOARD_BASE_UPDATE_FIELDS
32
+
33
+ class ConfigNotFound(HomeAssistantError): ...
@@ -0,0 +1,83 @@
1
+ import abc
2
+ from .const import CONF_ALLOW_SINGLE_WORD as CONF_ALLOW_SINGLE_WORD, CONF_ICON as CONF_ICON, CONF_URL_PATH as CONF_URL_PATH, ConfigNotFound as ConfigNotFound, DOMAIN as DOMAIN, EVENT_LOVELACE_UPDATED as EVENT_LOVELACE_UPDATED, LOVELACE_CONFIG_FILE as LOVELACE_CONFIG_FILE, LOVELACE_DATA as LOVELACE_DATA, MODE_STORAGE as MODE_STORAGE, MODE_YAML as MODE_YAML, STORAGE_DASHBOARD_CREATE_FIELDS as STORAGE_DASHBOARD_CREATE_FIELDS, STORAGE_DASHBOARD_UPDATE_FIELDS as STORAGE_DASHBOARD_UPDATE_FIELDS
3
+ from _typeshed import Incomplete
4
+ from abc import ABC, abstractmethod
5
+ from homeassistant.components import websocket_api as websocket_api
6
+ from homeassistant.components.frontend import DATA_PANELS as DATA_PANELS
7
+ from homeassistant.const import CONF_FILENAME as CONF_FILENAME
8
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
9
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
10
+ from homeassistant.helpers import collection as collection, storage as storage
11
+ from homeassistant.helpers.json import json_bytes as json_bytes, json_fragment as json_fragment
12
+ from homeassistant.util.yaml import Secrets as Secrets, load_yaml_dict as load_yaml_dict
13
+ from typing import Any
14
+
15
+ CONFIG_STORAGE_KEY_DEFAULT = DOMAIN
16
+ CONFIG_STORAGE_KEY: str
17
+ CONFIG_STORAGE_VERSION: int
18
+ DASHBOARDS_STORAGE_KEY: Incomplete
19
+ DASHBOARDS_STORAGE_VERSION: int
20
+ _LOGGER: Incomplete
21
+
22
+ class LovelaceConfig(ABC, metaclass=abc.ABCMeta):
23
+ hass: Incomplete
24
+ config: dict[str, Any] | None
25
+ def __init__(self, hass: HomeAssistant, url_path: str | None, config: dict[str, Any] | None) -> None: ...
26
+ @property
27
+ def url_path(self) -> str | None: ...
28
+ @property
29
+ @abstractmethod
30
+ def mode(self) -> str: ...
31
+ @abstractmethod
32
+ async def async_get_info(self) -> dict[str, Any]: ...
33
+ @abstractmethod
34
+ async def async_load(self, force: bool) -> dict[str, Any]: ...
35
+ async def async_save(self, config: dict[str, Any]) -> None: ...
36
+ async def async_delete(self) -> None: ...
37
+ @abstractmethod
38
+ async def async_json(self, force: bool) -> json_fragment: ...
39
+ @callback
40
+ def _config_updated(self) -> None: ...
41
+
42
+ class LovelaceStorage(LovelaceConfig):
43
+ _store: Incomplete
44
+ _data: dict[str, Any] | None
45
+ _json_config: json_fragment | None
46
+ def __init__(self, hass: HomeAssistant, config: dict[str, Any] | None) -> None: ...
47
+ @property
48
+ def mode(self) -> str: ...
49
+ async def async_get_info(self) -> dict[str, Any]: ...
50
+ async def async_load(self, force: bool) -> dict[str, Any]: ...
51
+ async def async_json(self, force: bool) -> json_fragment: ...
52
+ async def async_save(self, config: dict[str, Any]) -> None: ...
53
+ async def async_delete(self) -> None: ...
54
+ async def _load(self) -> dict[str, Any]: ...
55
+ @callback
56
+ def _async_build_json(self) -> json_fragment: ...
57
+
58
+ class LovelaceYAML(LovelaceConfig):
59
+ path: Incomplete
60
+ _cache: tuple[dict[str, Any], float, json_fragment] | None
61
+ def __init__(self, hass: HomeAssistant, url_path: str | None, config: dict[str, Any] | None) -> None: ...
62
+ @property
63
+ def mode(self) -> str: ...
64
+ async def async_get_info(self) -> dict[str, Any]: ...
65
+ async def async_load(self, force: bool) -> dict[str, Any]: ...
66
+ async def async_json(self, force: bool) -> json_fragment: ...
67
+ async def _async_load_or_cached(self, force: bool) -> tuple[dict[str, Any], json_fragment]: ...
68
+ def _load_config(self, force: bool) -> tuple[bool, dict[str, Any], json_fragment]: ...
69
+
70
+ def _config_info(mode: str, config: dict[str, Any]) -> dict[str, Any]: ...
71
+
72
+ class DashboardsCollection(collection.DictStorageCollection):
73
+ CREATE_SCHEMA: Incomplete
74
+ UPDATE_SCHEMA: Incomplete
75
+ def __init__(self, hass: HomeAssistant) -> None: ...
76
+ async def _process_create_data(self, data: dict) -> dict: ...
77
+ @callback
78
+ def _get_suggested_id(self, info: dict) -> str: ...
79
+ async def _update_data(self, item: dict, update_data: dict) -> dict: ...
80
+
81
+ class DashboardsCollectionWebSocket(collection.DictStorageCollectionWebsocket):
82
+ @callback
83
+ def ws_list_item(self, hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -0,0 +1,42 @@
1
+ from .const import CONF_RESOURCE_TYPE_WS as CONF_RESOURCE_TYPE_WS, DOMAIN as DOMAIN, RESOURCE_CREATE_FIELDS as RESOURCE_CREATE_FIELDS, RESOURCE_SCHEMA as RESOURCE_SCHEMA, RESOURCE_UPDATE_FIELDS as RESOURCE_UPDATE_FIELDS
2
+ from .dashboard import LovelaceConfig as LovelaceConfig
3
+ from .websocket import websocket_lovelace_resources_impl as websocket_lovelace_resources_impl
4
+ from _typeshed import Incomplete
5
+ from homeassistant.components import websocket_api as websocket_api
6
+ from homeassistant.const import CONF_ID as CONF_ID, CONF_RESOURCES as CONF_RESOURCES, CONF_TYPE as CONF_TYPE
7
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
+ from homeassistant.helpers import collection as collection, storage as storage
10
+ from typing import Any
11
+
12
+ RESOURCE_STORAGE_KEY: Incomplete
13
+ RESOURCES_STORAGE_VERSION: int
14
+ _LOGGER: Incomplete
15
+
16
+ class ResourceYAMLCollection:
17
+ loaded: bool
18
+ data: Incomplete
19
+ def __init__(self, data: list[dict[str, Any]]) -> None: ...
20
+ async def async_get_info(self) -> dict[str, int]: ...
21
+ @callback
22
+ def async_items(self) -> list[dict]: ...
23
+
24
+ class ResourceStorageCollection(collection.DictStorageCollection):
25
+ loaded: bool
26
+ CREATE_SCHEMA: Incomplete
27
+ UPDATE_SCHEMA: Incomplete
28
+ ll_config: Incomplete
29
+ def __init__(self, hass: HomeAssistant, ll_config: LovelaceConfig) -> None: ...
30
+ async def async_get_info(self) -> dict[str, int]: ...
31
+ async def _async_load_data(self) -> collection.SerializedStorageCollection | None: ...
32
+ async def _process_create_data(self, data: dict) -> dict: ...
33
+ @callback
34
+ def _get_suggested_id(self, info: dict) -> str: ...
35
+ async def _update_data(self, item: dict, update_data: dict) -> dict: ...
36
+
37
+ class ResourceStorageCollectionWebsocket(collection.DictStorageCollectionWebsocket):
38
+ @callback
39
+ def async_setup(self, hass: HomeAssistant) -> None: ...
40
+ @staticmethod
41
+ @websocket_api.async_response
42
+ async def ws_list_item(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -0,0 +1,9 @@
1
+ from .const import LOVELACE_DATA as LOVELACE_DATA, MODE_AUTO as MODE_AUTO, MODE_STORAGE as MODE_STORAGE, MODE_YAML as MODE_YAML
2
+ from homeassistant.components import system_health as system_health
3
+ from homeassistant.const import CONF_MODE as CONF_MODE
4
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
+ from typing import Any
6
+
7
+ @callback
8
+ def async_register(hass: HomeAssistant, register: system_health.SystemHealthRegistration) -> None: ...
9
+ async def system_health_info(hass: HomeAssistant) -> dict[str, Any]: ...
@@ -0,0 +1,26 @@
1
+ from .const import CONF_URL_PATH as CONF_URL_PATH, ConfigNotFound as ConfigNotFound, LOVELACE_DATA as LOVELACE_DATA
2
+ from .dashboard import LovelaceConfig as LovelaceConfig
3
+ from .resources import ResourceStorageCollection as ResourceStorageCollection
4
+ from collections.abc import Awaitable, Callable
5
+ from homeassistant.components import websocket_api as websocket_api
6
+ from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
8
+ from homeassistant.helpers.json import json_fragment as json_fragment
9
+ from typing import Any
10
+
11
+ type AsyncLovelaceWebSocketCommandHandler[_R] = Callable[[HomeAssistant, websocket_api.ActiveConnection, dict[str, Any], LovelaceConfig], Awaitable[_R]]
12
+ def _handle_errors[_R](func: AsyncLovelaceWebSocketCommandHandler[_R]) -> websocket_api.AsyncWebSocketCommandHandler: ...
13
+ @websocket_api.async_response
14
+ async def websocket_lovelace_resources(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
15
+ async def websocket_lovelace_resources_impl(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
16
+ @websocket_api.async_response
17
+ @_handle_errors
18
+ async def websocket_lovelace_config(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any], config: LovelaceConfig) -> json_fragment: ...
19
+ @websocket_api.require_admin
20
+ @websocket_api.async_response
21
+ @_handle_errors
22
+ async def websocket_lovelace_save_config(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any], config: LovelaceConfig) -> None: ...
23
+ @websocket_api.require_admin
24
+ @websocket_api.async_response
25
+ @_handle_errors
26
+ async def websocket_lovelace_delete_config(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any], config: LovelaceConfig) -> None: ...
@@ -1,8 +1,8 @@
1
- from .const import CONF_BASE_URL as CONF_BASE_URL, DEFAULT_URL as DEFAULT_URL, DOMAIN as DOMAIN, LOGGER as LOGGER
1
+ from .const import CONF_BASE_URL as CONF_BASE_URL, DOMAIN as DOMAIN, LOGGER as LOGGER
2
2
  from .utils import construct_mastodon_username as construct_mastodon_username, create_mastodon_client as create_mastodon_client
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
5
- from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_CLIENT_SECRET as CONF_CLIENT_SECRET, CONF_NAME as CONF_NAME
5
+ from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_CLIENT_SECRET as CONF_CLIENT_SECRET
6
6
  from homeassistant.helpers.selector import TextSelector as TextSelector, TextSelectorConfig as TextSelectorConfig, TextSelectorType as TextSelectorType
7
7
  from homeassistant.util import slugify as slugify
8
8
  from typing import Any
@@ -17,4 +17,3 @@ class MastodonConfigFlow(ConfigFlow, domain=DOMAIN):
17
17
  def check_connection(self, base_url: str, client_id: str, client_secret: str, access_token: str) -> tuple[dict[str, str] | None, dict[str, str] | None, dict[str, str]]: ...
18
18
  def show_user_form(self, user_input: dict[str, Any] | None = None, errors: dict[str, str] | None = None, description_placeholders: dict[str, str] | None = None, step_id: str = 'user') -> ConfigFlowResult: ...
19
19
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
20
- async def async_step_import(self, import_data: dict[str, Any]) -> ConfigFlowResult: ...
@@ -1,10 +1,8 @@
1
- from .const import CONF_BASE_URL as CONF_BASE_URL, DEFAULT_URL as DEFAULT_URL, DOMAIN as DOMAIN, LOGGER as LOGGER
1
+ from .const import CONF_BASE_URL as CONF_BASE_URL, DEFAULT_URL as DEFAULT_URL, LOGGER as LOGGER
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.components.notify import ATTR_DATA as ATTR_DATA, BaseNotificationService as BaseNotificationService
4
- from homeassistant.config_entries import SOURCE_IMPORT as SOURCE_IMPORT
5
4
  from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_CLIENT_SECRET as CONF_CLIENT_SECRET
6
5
  from homeassistant.core import HomeAssistant as HomeAssistant
7
- from homeassistant.data_entry_flow import FlowResultType as FlowResultType
8
6
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
9
7
  from mastodon import Mastodon as Mastodon
10
8
  from typing import Any