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
@@ -7,7 +7,7 @@ from homeassistant.helpers.entity import ToggleEntity as ToggleEntity, ToggleEnt
7
7
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
8
8
  from homeassistant.helpers.typing import ConfigType as ConfigType, VolDictType as VolDictType
9
9
  from homeassistant.util.hass_dict import HassKey as HassKey
10
- from propcache import cached_property
10
+ from propcache.api import cached_property
11
11
  from typing import Any, TypedDict, final
12
12
 
13
13
  _LOGGER: Incomplete
@@ -3,10 +3,11 @@ from _typeshed import Incomplete
3
3
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
4
4
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_ICON as CONF_ICON, CONF_NAME as CONF_NAME, CONF_USERNAME as CONF_USERNAME
5
5
  from homeassistant.helpers import aiohttp_client as aiohttp_client
6
+ from slack_sdk.web.async_client import AsyncSlackResponse as AsyncSlackResponse
6
7
 
7
8
  _LOGGER: Incomplete
8
9
  CONFIG_SCHEMA: Incomplete
9
10
 
10
11
  class SlackFlowHandler(ConfigFlow, domain=DOMAIN):
11
12
  async def async_step_user(self, user_input: dict[str, str] | None = None) -> ConfigFlowResult: ...
12
- async def _async_try_connect(self, token: str) -> tuple[str, None] | tuple[None, dict[str, str]]: ...
13
+ async def _async_try_connect(self, token: str) -> tuple[str, None] | tuple[None, AsyncSlackResponse]: ...
@@ -3,13 +3,11 @@ from _typeshed import Incomplete
3
3
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
4
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
5
5
  from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
6
- from slack import WebClient as WebClient
6
+ from slack_sdk.web.async_client import AsyncWebClient as AsyncWebClient
7
7
 
8
8
  class SlackEntity(Entity):
9
- _attr_attribution: str
10
- _attr_has_entity_name: bool
11
- _client: Incomplete
9
+ _client: AsyncWebClient
12
10
  entity_description: Incomplete
13
11
  _attr_unique_id: Incomplete
14
12
  _attr_device_info: Incomplete
15
- def __init__(self, data: dict[str, str | WebClient], description: EntityDescription, entry: ConfigEntry) -> None: ...
13
+ def __init__(self, data: dict[str, AsyncWebClient], description: EntityDescription, entry: ConfigEntry) -> None: ...
@@ -1,4 +1,5 @@
1
1
  from .const import ATTR_BLOCKS as ATTR_BLOCKS, ATTR_BLOCKS_TEMPLATE as ATTR_BLOCKS_TEMPLATE, ATTR_FILE as ATTR_FILE, ATTR_PASSWORD as ATTR_PASSWORD, ATTR_PATH as ATTR_PATH, ATTR_THREAD_TS as ATTR_THREAD_TS, ATTR_URL as ATTR_URL, ATTR_USERNAME as ATTR_USERNAME, CONF_DEFAULT_CHANNEL as CONF_DEFAULT_CHANNEL, DATA_CLIENT as DATA_CLIENT, SLACK_DATA as SLACK_DATA
2
+ from .utils import upload_file_to_slack as upload_file_to_slack
2
3
  from _typeshed import Incomplete
3
4
  from aiohttp import BasicAuth
4
5
  from homeassistant.components.notify import ATTR_DATA as ATTR_DATA, ATTR_TARGET as ATTR_TARGET, ATTR_TITLE as ATTR_TITLE, BaseNotificationService as BaseNotificationService
@@ -6,7 +7,7 @@ from homeassistant.const import ATTR_ICON as ATTR_ICON, CONF_PATH as CONF_PATH
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
8
  from homeassistant.helpers import aiohttp_client as aiohttp_client, template as template
8
9
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
9
- from slack import WebClient as WebClient
10
+ from slack_sdk.web.async_client import AsyncWebClient as AsyncWebClient
10
11
  from typing import Any, TypedDict
11
12
 
12
13
  _LOGGER: Incomplete
@@ -46,8 +47,9 @@ class SlackNotificationService(BaseNotificationService):
46
47
  _hass: Incomplete
47
48
  _client: Incomplete
48
49
  _config: Incomplete
49
- def __init__(self, hass: HomeAssistant, client: WebClient, config: dict[str, str]) -> None: ...
50
+ def __init__(self, hass: HomeAssistant, client: AsyncWebClient, config: dict[str, str]) -> None: ...
50
51
  async def _async_send_local_file_message(self, path: str, targets: list[str], message: str, title: str | None, thread_ts: str | None) -> None: ...
51
52
  async def _async_send_remote_file_message(self, url: str, targets: list[str], message: str, title: str | None, thread_ts: str | None, *, username: str | None = None, password: str | None = None) -> None: ...
52
53
  async def _async_send_text_only_message(self, targets: list[str], message: str, title: str | None, thread_ts: str | None, *, username: str | None = None, icon: str | None = None, blocks: Any | None = None) -> None: ...
53
54
  async def async_send_message(self, message: str, **kwargs: Any) -> None: ...
55
+ async def _async_get_channel_id(self, channel_name: str) -> str | None: ...
@@ -5,11 +5,11 @@ from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceCla
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
- from slack import WebClient as WebClient
8
+ from slack_sdk.web.async_client import AsyncWebClient as AsyncWebClient
9
9
 
10
10
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
11
11
 
12
12
  class SlackSensorEntity(SlackEntity, SensorEntity):
13
- _client: WebClient
13
+ _client: AsyncWebClient
14
14
  _attr_native_value: Incomplete
15
15
  async def async_update(self) -> None: ...
@@ -0,0 +1,6 @@
1
+ from _typeshed import Incomplete
2
+ from slack_sdk.web.async_client import AsyncWebClient as AsyncWebClient
3
+
4
+ _LOGGER: Incomplete
5
+
6
+ async def upload_file_to_slack(client: AsyncWebClient, channel_ids: list[str | None], file_content: bytes | str | None, filename: str, title: str | None, message: str, thread_ts: str | None, file_path: str | None = None) -> None: ...
@@ -1,6 +1,6 @@
1
1
  from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN, HOME_LOCATION_NAME as HOME_LOCATION_NAME
2
2
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
3
- from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LOCATION as CONF_LOCATION, CONF_LONGITUDE as CONF_LONGITUDE, CONF_NAME as CONF_NAME
3
+ from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LOCATION as CONF_LOCATION, CONF_LONGITUDE as CONF_LONGITUDE
4
4
  from homeassistant.core import HomeAssistant as HomeAssistant
5
5
  from homeassistant.helpers import aiohttp_client as aiohttp_client
6
6
  from homeassistant.helpers.selector import LocationSelector as LocationSelector
@@ -5,13 +5,13 @@ from collections.abc import Mapping
5
5
  from datetime import datetime
6
6
  from homeassistant.components.weather import ATTR_CONDITION_CLEAR_NIGHT as ATTR_CONDITION_CLEAR_NIGHT, ATTR_CONDITION_CLOUDY as ATTR_CONDITION_CLOUDY, ATTR_CONDITION_EXCEPTIONAL as ATTR_CONDITION_EXCEPTIONAL, ATTR_CONDITION_FOG as ATTR_CONDITION_FOG, ATTR_CONDITION_HAIL as ATTR_CONDITION_HAIL, ATTR_CONDITION_LIGHTNING as ATTR_CONDITION_LIGHTNING, ATTR_CONDITION_LIGHTNING_RAINY as ATTR_CONDITION_LIGHTNING_RAINY, ATTR_CONDITION_PARTLYCLOUDY as ATTR_CONDITION_PARTLYCLOUDY, ATTR_CONDITION_POURING as ATTR_CONDITION_POURING, ATTR_CONDITION_RAINY as ATTR_CONDITION_RAINY, ATTR_CONDITION_SNOWY as ATTR_CONDITION_SNOWY, ATTR_CONDITION_SNOWY_RAINY as ATTR_CONDITION_SNOWY_RAINY, ATTR_CONDITION_SUNNY as ATTR_CONDITION_SUNNY, ATTR_CONDITION_WINDY as ATTR_CONDITION_WINDY, ATTR_CONDITION_WINDY_VARIANT as ATTR_CONDITION_WINDY_VARIANT, ATTR_FORECAST_CLOUD_COVERAGE as ATTR_FORECAST_CLOUD_COVERAGE, ATTR_FORECAST_CONDITION as ATTR_FORECAST_CONDITION, ATTR_FORECAST_HUMIDITY as ATTR_FORECAST_HUMIDITY, ATTR_FORECAST_NATIVE_PRECIPITATION as ATTR_FORECAST_NATIVE_PRECIPITATION, ATTR_FORECAST_NATIVE_PRESSURE as ATTR_FORECAST_NATIVE_PRESSURE, ATTR_FORECAST_NATIVE_TEMP as ATTR_FORECAST_NATIVE_TEMP, ATTR_FORECAST_NATIVE_TEMP_LOW as ATTR_FORECAST_NATIVE_TEMP_LOW, ATTR_FORECAST_NATIVE_WIND_GUST_SPEED as ATTR_FORECAST_NATIVE_WIND_GUST_SPEED, ATTR_FORECAST_NATIVE_WIND_SPEED as ATTR_FORECAST_NATIVE_WIND_SPEED, ATTR_FORECAST_TIME as ATTR_FORECAST_TIME, ATTR_FORECAST_WIND_BEARING as ATTR_FORECAST_WIND_BEARING, Forecast as Forecast, WeatherEntity as WeatherEntity, WeatherEntityFeature as WeatherEntityFeature
7
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
- from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LOCATION as CONF_LOCATION, CONF_LONGITUDE as CONF_LONGITUDE, CONF_NAME as CONF_NAME, UnitOfLength as UnitOfLength, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
8
+ from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LOCATION as CONF_LOCATION, CONF_LONGITUDE as CONF_LONGITUDE, UnitOfLength as UnitOfLength, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.helpers import aiohttp_client as aiohttp_client, sun as sun
11
11
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
12
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
13
13
  from homeassistant.helpers.event import async_call_later as async_call_later
14
- from homeassistant.util import Throttle as Throttle, slugify as slugify
14
+ from homeassistant.util import Throttle as Throttle
15
15
  from smhi.smhi_lib import SmhiForecast as SmhiForecast
16
16
  from typing import Any, Final
17
17
 
@@ -40,7 +40,7 @@ class SmhiWeather(WeatherEntity):
40
40
  _fail_count: int
41
41
  _smhi_api: Incomplete
42
42
  _attr_device_info: Incomplete
43
- def __init__(self, name: str, latitude: str, longitude: str, session: aiohttp.ClientSession) -> None: ...
43
+ def __init__(self, latitude: str, longitude: str, session: aiohttp.ClientSession) -> None: ...
44
44
  @property
45
45
  def extra_state_attributes(self) -> Mapping[str, Any] | None: ...
46
46
  _attr_native_temperature: Incomplete
@@ -1,11 +1,11 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Mapping
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, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
7
6
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
7
  from homeassistant.helpers.device_registry import format_mac as format_mac
8
+ from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
9
9
  from pysmlight import Api2
10
10
  from typing import Any
11
11
 
@@ -18,7 +18,7 @@ class SmlightConfigFlow(ConfigFlow, domain=DOMAIN):
18
18
  def __init__(self) -> None: ...
19
19
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
20
20
  async def async_step_auth(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
21
- async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> ConfigFlowResult: ...
21
+ async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
22
22
  async def async_step_confirm_discovery(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
23
23
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
24
24
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -2,4 +2,4 @@ from .browse_media import async_browse_media as async_browse_media
2
2
  from .const import DOMAIN as DOMAIN
3
3
  from .util import is_spotify_media_type as is_spotify_media_type, resolve_spotify_media_type as resolve_spotify_media_type, spotify_uri_from_media_browser_url as spotify_uri_from_media_browser_url
4
4
 
5
- __all__ = ['async_browse_media', 'DOMAIN', 'spotify_uri_from_media_browser_url', 'is_spotify_media_type', 'resolve_spotify_media_type']
5
+ __all__ = ['DOMAIN', 'async_browse_media', 'is_spotify_media_type', 'resolve_spotify_media_type', 'spotify_uri_from_media_browser_url']
@@ -6,7 +6,7 @@ from homeassistant.components.media_player import BrowseError as BrowseError, Br
6
6
  from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from spotifyaio import Artist as Artist, BasePlaylist as BasePlaylist, SimplifiedAlbum as SimplifiedAlbum, SimplifiedTrack as SimplifiedTrack, SpotifyClient as SpotifyClient
9
- from spotifyaio.models import SimplifiedEpisode
9
+ from spotifyaio.models import SimplifiedEpisode as SimplifiedEpisode
10
10
  from typing import Any, TypedDict
11
11
 
12
12
  BROWSE_LIMIT: int
@@ -10,6 +10,7 @@ from spotifyaio import PlaybackState as PlaybackState, Playlist as Playlist, Spo
10
10
 
11
11
  _LOGGER: Incomplete
12
12
  type SpotifyConfigEntry = ConfigEntry[SpotifyData]
13
+ UPDATE_INTERVAL: Incomplete
13
14
 
14
15
  @dataclass
15
16
  class SpotifyCoordinatorData:
@@ -28,4 +29,5 @@ class SpotifyCoordinator(DataUpdateCoordinator[SpotifyCoordinatorData]):
28
29
  _checked_playlist_id: str | None
29
30
  def __init__(self, hass: HomeAssistant, client: SpotifyClient) -> None: ...
30
31
  async def _async_setup(self) -> None: ...
32
+ update_interval: Incomplete
31
33
  async def _async_update_data(self) -> SpotifyCoordinatorData: ...
@@ -1,12 +1,12 @@
1
1
  import voluptuous as vol
2
2
  from .const import CONF_HTTPS as CONF_HTTPS, DEFAULT_PORT as DEFAULT_PORT, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
- from homeassistant.components import dhcp as dhcp
5
4
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
6
5
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME
7
6
  from homeassistant.data_entry_flow import AbortFlow as AbortFlow
8
7
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
9
8
  from homeassistant.helpers.device_registry import format_mac as format_mac
9
+ from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
10
10
  from typing import Any
11
11
 
12
12
  _LOGGER: Incomplete
@@ -24,4 +24,4 @@ class SqueezeboxConfigFlow(ConfigFlow, domain=DOMAIN):
24
24
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
25
25
  async def async_step_edit(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
26
26
  async def async_step_integration_discovery(self, discovery_info: dict[str, Any]) -> ConfigFlowResult: ...
27
- async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
27
+ async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
@@ -5,17 +5,17 @@ from async_upnp_client.server import UpnpServer, UpnpServerDevice, UpnpServerSer
5
5
  from async_upnp_client.ssdp_listener import SsdpDevice as SsdpDevice, SsdpListener
6
6
  from async_upnp_client.utils import CaseInsensitiveDict
7
7
  from collections.abc import Callable as Callable, Coroutine, Mapping
8
- from dataclasses import dataclass, field
9
8
  from homeassistant import config_entries as config_entries
10
9
  from homeassistant.components import network as network
11
10
  from homeassistant.const import EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, MATCH_ALL as MATCH_ALL
12
11
  from homeassistant.core import Event as Event, HassJob as HassJob, HomeAssistant as HomeAssistant, callback as core_callback
13
- from homeassistant.data_entry_flow import BaseServiceInfo as BaseServiceInfo
14
12
  from homeassistant.helpers import discovery_flow as discovery_flow
15
13
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
14
+ from homeassistant.helpers.deprecation import DeprecatedConstant as DeprecatedConstant, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
16
15
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
17
16
  from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
18
17
  from homeassistant.helpers.network import NoURLAvailableError as NoURLAvailableError, get_url as get_url
18
+ from homeassistant.helpers.service_info.ssdp import SsdpServiceInfo as _SsdpServiceInfo
19
19
  from homeassistant.helpers.system_info import async_get_system_info as async_get_system_info
20
20
  from homeassistant.helpers.typing import ConfigType as ConfigType
21
21
  from homeassistant.loader import async_get_ssdp as async_get_ssdp, bind_hass as bind_hass
@@ -40,57 +40,43 @@ ATTR_SSDP_EXT: str
40
40
  ATTR_SSDP_SERVER: str
41
41
  ATTR_SSDP_BOOTID: str
42
42
  ATTR_SSDP_NEXTBOOTID: str
43
- ATTR_ST: str
44
- ATTR_NT: str
45
- ATTR_UPNP_DEVICE_TYPE: str
46
- ATTR_UPNP_FRIENDLY_NAME: str
47
- ATTR_UPNP_MANUFACTURER: str
48
- ATTR_UPNP_MANUFACTURER_URL: str
49
- ATTR_UPNP_MODEL_DESCRIPTION: str
50
- ATTR_UPNP_MODEL_NAME: str
51
- ATTR_UPNP_MODEL_NUMBER: str
52
- ATTR_UPNP_MODEL_URL: str
53
- ATTR_UPNP_SERIAL: str
54
- ATTR_UPNP_SERVICE_LIST: str
55
- ATTR_UPNP_UDN: str
56
- ATTR_UPNP_UPC: str
57
- ATTR_UPNP_PRESENTATION_URL: str
43
+ _DEPRECATED_ATTR_ST: Incomplete
44
+ _DEPRECATED_ATTR_NT: Incomplete
45
+ _DEPRECATED_ATTR_UPNP_DEVICE_TYPE: Incomplete
46
+ _DEPRECATED_ATTR_UPNP_FRIENDLY_NAME: Incomplete
47
+ _DEPRECATED_ATTR_UPNP_MANUFACTURER: Incomplete
48
+ _DEPRECATED_ATTR_UPNP_MANUFACTURER_URL: Incomplete
49
+ _DEPRECATED_ATTR_UPNP_MODEL_DESCRIPTION: Incomplete
50
+ _DEPRECATED_ATTR_UPNP_MODEL_NAME: Incomplete
51
+ _DEPRECATED_ATTR_UPNP_MODEL_NUMBER: Incomplete
52
+ _DEPRECATED_ATTR_UPNP_MODEL_URL: Incomplete
53
+ _DEPRECATED_ATTR_UPNP_SERIAL: Incomplete
54
+ _DEPRECATED_ATTR_UPNP_SERVICE_LIST: Incomplete
55
+ _DEPRECATED_ATTR_UPNP_UDN: Incomplete
56
+ _DEPRECATED_ATTR_UPNP_UPC: Incomplete
57
+ _DEPRECATED_ATTR_UPNP_PRESENTATION_URL: Incomplete
58
58
  ATTR_HA_MATCHING_DOMAINS: str
59
59
  PRIMARY_MATCH_KEYS: Incomplete
60
60
  _LOGGER: Incomplete
61
61
  CONFIG_SCHEMA: Incomplete
62
-
63
- @dataclass(slots=True)
64
- class SsdpServiceInfo(BaseServiceInfo):
65
- ssdp_usn: str
66
- ssdp_st: str
67
- upnp: Mapping[str, Any]
68
- ssdp_location: str | None = ...
69
- ssdp_nt: str | None = ...
70
- ssdp_udn: str | None = ...
71
- ssdp_ext: str | None = ...
72
- ssdp_server: str | None = ...
73
- ssdp_headers: Mapping[str, Any] = field(default_factory=dict)
74
- ssdp_all_locations: set[str] = field(default_factory=set)
75
- x_homeassistant_matching_domains: set[str] = field(default_factory=set)
76
-
62
+ _DEPRECATED_SsdpServiceInfo: Incomplete
77
63
  SsdpChange: Incomplete
78
- type SsdpHassJobCallback = HassJob[[SsdpServiceInfo, SsdpChange], Coroutine[Any, Any, None] | None]
64
+ type SsdpHassJobCallback = HassJob[[_SsdpServiceInfo, SsdpChange], Coroutine[Any, Any, None] | None]
79
65
  SSDP_SOURCE_SSDP_CHANGE_MAPPING: Mapping[SsdpSource, SsdpChange]
80
66
 
81
67
  def _format_err(name: str, *args: Any) -> str: ...
82
68
  @bind_hass
83
- async def async_register_callback(hass: HomeAssistant, callback: Callable[[SsdpServiceInfo, SsdpChange], Coroutine[Any, Any, None] | None], match_dict: dict[str, str] | None = None) -> Callable[[], None]: ...
69
+ async def async_register_callback(hass: HomeAssistant, callback: Callable[[_SsdpServiceInfo, SsdpChange], Coroutine[Any, Any, None] | None], match_dict: dict[str, str] | None = None) -> Callable[[], None]: ...
84
70
  @bind_hass
85
- async def async_get_discovery_info_by_udn_st(hass: HomeAssistant, udn: str, st: str) -> SsdpServiceInfo | None: ...
71
+ async def async_get_discovery_info_by_udn_st(hass: HomeAssistant, udn: str, st: str) -> _SsdpServiceInfo | None: ...
86
72
  @bind_hass
87
- async def async_get_discovery_info_by_st(hass: HomeAssistant, st: str) -> list[SsdpServiceInfo]: ...
73
+ async def async_get_discovery_info_by_st(hass: HomeAssistant, st: str) -> list[_SsdpServiceInfo]: ...
88
74
  @bind_hass
89
- async def async_get_discovery_info_by_udn(hass: HomeAssistant, udn: str) -> list[SsdpServiceInfo]: ...
75
+ async def async_get_discovery_info_by_udn(hass: HomeAssistant, udn: str) -> list[_SsdpServiceInfo]: ...
90
76
  async def async_build_source_set(hass: HomeAssistant) -> set[IPv4Address | IPv6Address]: ...
91
77
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
92
78
  @core_callback
93
- def _async_process_callbacks(hass: HomeAssistant, callbacks: list[SsdpHassJobCallback], discovery_info: SsdpServiceInfo, ssdp_change: SsdpChange) -> None: ...
79
+ def _async_process_callbacks(hass: HomeAssistant, callbacks: list[SsdpHassJobCallback], discovery_info: _SsdpServiceInfo, ssdp_change: SsdpChange) -> None: ...
94
80
  @core_callback
95
81
  def _async_headers_match(headers: CaseInsensitiveDict, lower_match_dict: dict[str, str]) -> bool: ...
96
82
 
@@ -126,16 +112,16 @@ class Scanner:
126
112
  def _ssdp_listener_callback(self, ssdp_device: SsdpDevice, dst: DeviceOrServiceType, source: SsdpSource) -> None: ...
127
113
  async def _ssdp_listener_process_callback_with_lookup(self, ssdp_device: SsdpDevice, dst: DeviceOrServiceType, source: SsdpSource) -> None: ...
128
114
  def _ssdp_listener_process_callback(self, ssdp_device: SsdpDevice, dst: DeviceOrServiceType, source: SsdpSource, info_desc: Mapping[str, Any], skip_callbacks: bool = False) -> None: ...
129
- def _async_dismiss_discoveries(self, byebye_discovery_info: SsdpServiceInfo) -> None: ...
115
+ def _async_dismiss_discoveries(self, byebye_discovery_info: _SsdpServiceInfo) -> None: ...
130
116
  async def _async_get_description_dict(self, location: str | None) -> Mapping[str, str]: ...
131
- async def _async_headers_to_discovery_info(self, ssdp_device: SsdpDevice, headers: CaseInsensitiveDict) -> SsdpServiceInfo: ...
132
- async def async_get_discovery_info_by_udn_st(self, udn: str, st: str) -> SsdpServiceInfo | None: ...
133
- async def async_get_discovery_info_by_st(self, st: str) -> list[SsdpServiceInfo]: ...
134
- async def async_get_discovery_info_by_udn(self, udn: str) -> list[SsdpServiceInfo]: ...
117
+ async def _async_headers_to_discovery_info(self, ssdp_device: SsdpDevice, headers: CaseInsensitiveDict) -> _SsdpServiceInfo: ...
118
+ async def async_get_discovery_info_by_udn_st(self, udn: str, st: str) -> _SsdpServiceInfo | None: ...
119
+ async def async_get_discovery_info_by_st(self, st: str) -> list[_SsdpServiceInfo]: ...
120
+ async def async_get_discovery_info_by_udn(self, udn: str) -> list[_SsdpServiceInfo]: ...
135
121
  @core_callback
136
122
  def _handle_config_entry_removed(self, entry: config_entries.ConfigEntry) -> None: ...
137
123
 
138
- def discovery_info_from_headers_and_description(ssdp_device: SsdpDevice, combined_headers: CaseInsensitiveDict, info_desc: Mapping[str, Any]) -> SsdpServiceInfo: ...
124
+ def discovery_info_from_headers_and_description(ssdp_device: SsdpDevice, combined_headers: CaseInsensitiveDict, info_desc: Mapping[str, Any]) -> _SsdpServiceInfo: ...
139
125
  def _udn_from_usn(usn: str | None) -> str | None: ...
140
126
 
141
127
  class HassUpnpServiceDevice(UpnpServerDevice):
@@ -154,3 +140,7 @@ class Server:
154
140
  async def _async_start_upnp_servers(self, event: Event) -> None: ...
155
141
  async def async_stop(self, *_: Any) -> None: ...
156
142
  async def _async_stop_upnp_servers(self) -> None: ...
143
+
144
+ __getattr__: Incomplete
145
+ __dir__: Incomplete
146
+ __all__: Incomplete
@@ -19,6 +19,7 @@ class StarlinkData:
19
19
 
20
20
  class StarlinkUpdateCoordinator(DataUpdateCoordinator[StarlinkData]):
21
21
  channel_context: Incomplete
22
+ history_stats_start: Incomplete
22
23
  timezone: Incomplete
23
24
  def __init__(self, hass: HomeAssistant, name: str, url: str) -> None: ...
24
25
  def _get_starlink_data(self) -> StarlinkData: ...
@@ -2,11 +2,11 @@ from .const import CONNECTION_EXCEPTIONS as CONNECTION_EXCEPTIONS, DISCOVER_SCAN
2
2
  from .discovery import async_discover_device as async_discover_device, async_discover_devices as async_discover_devices, async_is_steamist_device as async_is_steamist_device, async_update_entry_from_discovery as async_update_entry_from_discovery
3
3
  from _typeshed import Incomplete
4
4
  from discovery30303 import Device30303
5
- from homeassistant.components import dhcp as dhcp
6
5
  from homeassistant.config_entries import ConfigEntryState as ConfigEntryState, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
7
6
  from homeassistant.const import CONF_DEVICE as CONF_DEVICE, CONF_HOST as CONF_HOST, CONF_MODEL as CONF_MODEL, CONF_NAME as CONF_NAME
8
7
  from homeassistant.core import callback as callback
9
8
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
9
+ from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
10
10
  from homeassistant.helpers.typing import DiscoveryInfoType as DiscoveryInfoType
11
11
  from typing import Any, Self
12
12
 
@@ -18,7 +18,7 @@ class SteamistConfigFlow(ConfigFlow, domain=DOMAIN):
18
18
  _discovered_devices: dict[str, Device30303]
19
19
  _discovered_device: Device30303 | None
20
20
  def __init__(self) -> None: ...
21
- async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
21
+ async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
22
22
  async def async_step_integration_discovery(self, discovery_info: DiscoveryInfoType) -> ConfigFlowResult: ...
23
23
  async def _async_handle_discovery(self) -> ConfigFlowResult: ...
24
24
  def is_matching(self, other_flow: Self) -> bool: ...
@@ -1,26 +1,14 @@
1
1
  import threading
2
- from .const import ATTR_SETTINGS as ATTR_SETTINGS, CONF_EXTRA_PART_WAIT_TIME as CONF_EXTRA_PART_WAIT_TIME, CONF_RTSP_TRANSPORT as CONF_RTSP_TRANSPORT, CONF_USE_WALLCLOCK_AS_TIMESTAMPS as CONF_USE_WALLCLOCK_AS_TIMESTAMPS, DOMAIN as DOMAIN, FORMAT_CONTENT_TYPE as FORMAT_CONTENT_TYPE, HLS_PROVIDER as HLS_PROVIDER, OUTPUT_FORMATS as OUTPUT_FORMATS, RTSP_TRANSPORTS as RTSP_TRANSPORTS, SOURCE_TIMEOUT as SOURCE_TIMEOUT
2
+ from .const import ATTR_SETTINGS as ATTR_SETTINGS, CONF_EXTRA_PART_WAIT_TIME as CONF_EXTRA_PART_WAIT_TIME, CONF_RTSP_TRANSPORT as CONF_RTSP_TRANSPORT, CONF_USE_WALLCLOCK_AS_TIMESTAMPS as CONF_USE_WALLCLOCK_AS_TIMESTAMPS, DOMAIN as DOMAIN, FORMAT_CONTENT_TYPE as FORMAT_CONTENT_TYPE, HLS_PROVIDER as HLS_PROVIDER, OUTPUT_FORMATS as OUTPUT_FORMATS, RTSP_TRANSPORTS as RTSP_TRANSPORTS, SOURCE_TIMEOUT as SOURCE_TIMEOUT, StreamClientError as StreamClientError
3
3
  from .core import Orientation as Orientation, StreamOutput, StreamSettings
4
+ from .exceptions import StreamOpenClientError as StreamOpenClientError
4
5
  from _typeshed import Incomplete
5
6
  from collections.abc import Callable, Mapping
6
- from enum import IntEnum
7
7
  from homeassistant.components.camera import DynamicStreamSettings
8
8
  from homeassistant.core import HomeAssistant, callback
9
- from homeassistant.exceptions import HomeAssistantError
10
9
  from typing import Any
11
10
 
12
- __all__ = ['ATTR_SETTINGS', 'CONF_EXTRA_PART_WAIT_TIME', 'CONF_RTSP_TRANSPORT', 'CONF_USE_WALLCLOCK_AS_TIMESTAMPS', 'DOMAIN', 'FORMAT_CONTENT_TYPE', 'HLS_PROVIDER', 'OUTPUT_FORMATS', 'RTSP_TRANSPORTS', 'SOURCE_TIMEOUT', 'Stream', 'create_stream', 'Orientation']
13
-
14
- class StreamClientError(IntEnum):
15
- BadRequest = 400
16
- Unauthorized = 401
17
- Forbidden = 403
18
- NotFound = 404
19
- Other = 4
20
-
21
- class StreamOpenClientError(HomeAssistantError):
22
- stream_client_error: Incomplete
23
- def __init__(self, *args: Any, stream_client_error: StreamClientError, **kwargs: Any) -> None: ...
11
+ __all__ = ['ATTR_SETTINGS', 'CONF_EXTRA_PART_WAIT_TIME', 'CONF_RTSP_TRANSPORT', 'CONF_USE_WALLCLOCK_AS_TIMESTAMPS', 'DOMAIN', 'FORMAT_CONTENT_TYPE', 'HLS_PROVIDER', 'OUTPUT_FORMATS', 'RTSP_TRANSPORTS', 'SOURCE_TIMEOUT', 'Orientation', 'Stream', 'StreamClientError', 'StreamOpenClientError', 'create_stream']
24
12
 
25
13
  def create_stream(hass: HomeAssistant, stream_source: str, options: Mapping[str, str | bool | float], dynamic_stream_settings: DynamicStreamSettings, stream_label: str | None = None) -> Stream: ...
26
14
 
@@ -1,4 +1,5 @@
1
1
  from _typeshed import Incomplete
2
+ from enum import IntEnum
2
3
  from typing import Final
3
4
 
4
5
  DOMAIN: str
@@ -28,8 +29,15 @@ STREAM_RESTART_RESET_TIME: int
28
29
  CONF_LL_HLS: str
29
30
  CONF_PART_DURATION: str
30
31
  CONF_SEGMENT_DURATION: str
31
- CONF_PREFER_TCP: str
32
+ ATTR_PREFER_TCP: str
32
33
  CONF_RTSP_TRANSPORT: str
33
34
  RTSP_TRANSPORTS: Incomplete
34
35
  CONF_USE_WALLCLOCK_AS_TIMESTAMPS: str
35
36
  CONF_EXTRA_PART_WAIT_TIME: str
37
+
38
+ class StreamClientError(IntEnum):
39
+ BadRequest = 400
40
+ Unauthorized = 401
41
+ Forbidden = 403
42
+ NotFound = 404
43
+ Other = 4
@@ -0,0 +1,13 @@
1
+ from .const import StreamClientError as StreamClientError
2
+ from _typeshed import Incomplete
3
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
4
+
5
+ class StreamOpenClientError(HomeAssistantError):
6
+ error_code: Incomplete
7
+ def __init__(self, message: str, error_code: StreamClientError) -> None: ...
8
+
9
+ class StreamWorkerError(Exception):
10
+ error_code: Incomplete
11
+ def __init__(self, message: str, error_code: StreamClientError = ...) -> None: ...
12
+
13
+ class StreamEndedError(StreamWorkerError): ...
@@ -3,12 +3,14 @@ import av.audio
3
3
  import av.container
4
4
  import av.stream
5
5
  from . import redact_credentials as redact_credentials
6
- from .const import AUDIO_CODECS as AUDIO_CODECS, HLS_PROVIDER as HLS_PROVIDER, MAX_MISSING_DTS as MAX_MISSING_DTS, MAX_TIMESTAMP_GAP as MAX_TIMESTAMP_GAP, PACKETS_TO_WAIT_FOR_AUDIO as PACKETS_TO_WAIT_FOR_AUDIO, SEGMENT_CONTAINER_FORMAT as SEGMENT_CONTAINER_FORMAT, SOURCE_TIMEOUT as SOURCE_TIMEOUT
6
+ from .const import AUDIO_CODECS as AUDIO_CODECS, HLS_PROVIDER as HLS_PROVIDER, MAX_MISSING_DTS as MAX_MISSING_DTS, MAX_TIMESTAMP_GAP as MAX_TIMESTAMP_GAP, PACKETS_TO_WAIT_FOR_AUDIO as PACKETS_TO_WAIT_FOR_AUDIO, SEGMENT_CONTAINER_FORMAT as SEGMENT_CONTAINER_FORMAT, SOURCE_TIMEOUT as SOURCE_TIMEOUT, StreamClientError as StreamClientError
7
7
  from .core import KeyFrameConverter as KeyFrameConverter, Part as Part, STREAM_SETTINGS_NON_LL_HLS as STREAM_SETTINGS_NON_LL_HLS, Segment as Segment, StreamOutput as StreamOutput, StreamSettings as StreamSettings
8
8
  from .diagnostics import Diagnostics as Diagnostics
9
+ from .exceptions import StreamEndedError as StreamEndedError, StreamWorkerError as StreamWorkerError
9
10
  from .fmp4utils import read_init as read_init
10
11
  from .hls import HlsStreamOutput as HlsStreamOutput
11
12
  from _typeshed import Incomplete
13
+ from av.container import InputContainer as InputContainer
12
14
  from collections import deque
13
15
  from collections.abc import Callable as Callable, Generator, Iterator, Mapping
14
16
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -19,12 +21,8 @@ from typing import Any, Self
19
21
  _LOGGER: Incomplete
20
22
  NEGATIVE_INF: Incomplete
21
23
 
22
- class StreamWorkerError(Exception): ...
23
-
24
24
  def redact_av_error_string(err: av.FFmpegError) -> str: ...
25
25
 
26
- class StreamEndedError(StreamWorkerError): ...
27
-
28
26
  class StreamState:
29
27
  _stream_id: int
30
28
  hass: Incomplete
@@ -89,4 +87,5 @@ class TimestampValidator:
89
87
 
90
88
  def is_keyframe(packet: av.Packet) -> Any: ...
91
89
  def get_audio_bitstream_filter(packets: Iterator[av.Packet], audio_stream: Any) -> str | None: ...
90
+ def try_open_stream(source: str, pyav_options: dict[str, str]) -> InputContainer: ...
92
91
  def stream_worker(source: str, pyav_options: dict[str, str], stream_settings: StreamSettings, stream_state: StreamState, keyframe_converter: KeyFrameConverter, quit_event: Event) -> None: ...
@@ -11,7 +11,7 @@ from homeassistant.core import HomeAssistant, callback
11
11
  from homeassistant.helpers.restore_state import RestoreEntity
12
12
  from typing import final
13
13
 
14
- __all__ = ['async_get_provider', 'async_get_speech_to_text_engine', 'async_get_speech_to_text_entity', 'AudioBitRates', 'AudioChannels', 'AudioCodecs', 'AudioFormats', 'AudioSampleRates', 'DOMAIN', 'Provider', 'SpeechToTextEntity', 'SpeechMetadata', 'SpeechResult', 'SpeechResultState']
14
+ __all__ = ['DOMAIN', 'AudioBitRates', 'AudioChannels', 'AudioCodecs', 'AudioFormats', 'AudioSampleRates', 'Provider', 'SpeechMetadata', 'SpeechResult', 'SpeechResultState', 'SpeechToTextEntity', 'async_get_provider', 'async_get_speech_to_text_engine', 'async_get_speech_to_text_entity']
15
15
 
16
16
  @callback
17
17
  def async_get_speech_to_text_entity(hass: HomeAssistant, entity_id: str) -> SpeechToTextEntity | None: ...
@@ -1,8 +1,12 @@
1
+ from .const import CONF_COUNTER_ID as CONF_COUNTER_ID
1
2
  from .coordinator import SuezWaterConfigEntry as SuezWaterConfigEntry, SuezWaterCoordinator as SuezWaterCoordinator
3
+ from _typeshed import Incomplete
2
4
  from homeassistant.const import Platform as Platform
3
5
  from homeassistant.core import HomeAssistant as HomeAssistant
4
6
 
5
7
  PLATFORMS: list[Platform]
8
+ _LOGGER: Incomplete
6
9
 
7
10
  async def async_setup_entry(hass: HomeAssistant, entry: SuezWaterConfigEntry) -> bool: ...
8
11
  async def async_unload_entry(hass: HomeAssistant, entry: SuezWaterConfigEntry) -> bool: ...
12
+ async def async_migrate_entry(hass: HomeAssistant, config_entry: SuezWaterConfigEntry) -> bool: ...
@@ -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
 
14
14
  _LOGGER: Incomplete
15
15
  DATA_COMPONENT: HassKey[EntityComponent[SwitchEntity]]
@@ -4,7 +4,7 @@ from _typeshed import Incomplete
4
4
  from dataclasses import dataclass, field
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_API_TOKEN as CONF_API_TOKEN, Platform as Platform
7
- from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
9
9
  from switchbot_api import Device, Remote, SwitchBotAPI
10
10
 
@@ -13,6 +13,7 @@ PLATFORMS: list[Platform]
13
13
 
14
14
  @dataclass
15
15
  class SwitchbotDevices:
16
+ buttons: list[Device] = field(default_factory=list)
16
17
  climates: list[Remote] = field(default_factory=list)
17
18
  switches: list[Device | Remote] = field(default_factory=list)
18
19
  sensors: list[Device] = field(default_factory=list)
@@ -24,9 +25,8 @@ class SwitchbotCloudData:
24
25
  api: SwitchBotAPI
25
26
  devices: SwitchbotDevices
26
27
 
27
- @callback
28
- def prepare_device(hass: HomeAssistant, api: SwitchBotAPI, device: Device | Remote, coordinators_by_id: dict[str, SwitchBotCoordinator]) -> tuple[Device | Remote, SwitchBotCoordinator]: ...
29
- @callback
30
- def make_device_data(hass: HomeAssistant, api: SwitchBotAPI, devices: list[Device | Remote], coordinators_by_id: dict[str, SwitchBotCoordinator]) -> SwitchbotDevices: ...
28
+ async def coordinator_for_device(hass: HomeAssistant, api: SwitchBotAPI, device: Device | Remote, coordinators_by_id: dict[str, SwitchBotCoordinator]) -> SwitchBotCoordinator: ...
29
+ async def make_switchbot_devices(hass: HomeAssistant, api: SwitchBotAPI, devices: list[Device | Remote], coordinators_by_id: dict[str, SwitchBotCoordinator]) -> SwitchbotDevices: ...
30
+ async def make_device_data(hass: HomeAssistant, api: SwitchBotAPI, device: Device | Remote, devices_data: SwitchbotDevices, coordinators_by_id: dict[str, SwitchBotCoordinator]) -> None: ...
31
31
  async def async_setup_entry(hass: HomeAssistant, config: ConfigEntry) -> bool: ...
32
32
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -0,0 +1,17 @@
1
+ from . import SwitchbotCloudData as SwitchbotCloudData
2
+ from .const import DOMAIN as DOMAIN
3
+ from .entity import SwitchBotCloudEntity as SwitchBotCloudEntity
4
+ from _typeshed import Incomplete
5
+ from homeassistant.components.button import ButtonEntity as ButtonEntity
6
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+ from typing import Any
10
+
11
+ async def async_setup_entry(hass: HomeAssistant, config: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
12
+
13
+ class SwitchBotCloudBot(SwitchBotCloudEntity, ButtonEntity):
14
+ _attr_name: Incomplete
15
+ @callback
16
+ def _handle_coordinator_update(self) -> None: ...
17
+ async def async_press(self, **kwargs: Any) -> None: ...
@@ -1,6 +1,7 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from .coordinator import SwitchBotCoordinator as SwitchBotCoordinator
3
3
  from _typeshed import Incomplete
4
+ from homeassistant.core import callback as callback
4
5
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
5
6
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
6
7
  from switchbot_api import Commands as Commands, Device as Device, Remote as Remote, SwitchBotAPI as SwitchBotAPI
@@ -14,3 +15,7 @@ class SwitchBotCloudEntity(CoordinatorEntity[SwitchBotCoordinator]):
14
15
  _attr_device_info: Incomplete
15
16
  def __init__(self, api: SwitchBotAPI, device: Device | Remote, coordinator: SwitchBotCoordinator) -> None: ...
16
17
  async def send_api_command(self, command: Commands, command_type: str = 'command', parameters: dict | str = 'default') -> None: ...
18
+ @callback
19
+ def _handle_coordinator_update(self) -> None: ...
20
+ def _set_attributes(self) -> None: ...
21
+ async def async_added_to_hass(self) -> None: ...
@@ -4,7 +4,7 @@ from .entity import SwitchBotCloudEntity as SwitchBotCloudEntity
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.components.lock import LockEntity as LockEntity
6
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
- from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
9
  from typing import Any
10
10
 
@@ -13,7 +13,6 @@ async def async_setup_entry(hass: HomeAssistant, config: ConfigEntry, async_add_
13
13
  class SwitchBotCloudLock(SwitchBotCloudEntity, LockEntity):
14
14
  _attr_name: Incomplete
15
15
  _attr_is_locked: Incomplete
16
- @callback
17
- def _handle_coordinator_update(self) -> None: ...
16
+ def _set_attributes(self) -> None: ...
18
17
  async def async_lock(self, **kwargs: Any) -> None: ...
19
18
  async def async_unlock(self, **kwargs: Any) -> None: ...
@@ -6,7 +6,7 @@ from _typeshed import Incomplete
6
6
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
7
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
8
  from homeassistant.const import CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, PERCENTAGE as PERCENTAGE, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfPower as UnitOfPower, UnitOfTemperature as UnitOfTemperature
9
- from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
9
+ from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
11
  from switchbot_api import Device as Device, SwitchBotAPI as SwitchBotAPI
12
12
 
@@ -21,8 +21,9 @@ TEMPERATURE_DESCRIPTION: Incomplete
21
21
  HUMIDITY_DESCRIPTION: Incomplete
22
22
  BATTERY_DESCRIPTION: Incomplete
23
23
  POWER_DESCRIPTION: Incomplete
24
- VOLATGE_DESCRIPTION: Incomplete
25
- CURRENT_DESCRIPTION: Incomplete
24
+ VOLTAGE_DESCRIPTION: Incomplete
25
+ CURRENT_DESCRIPTION_IN_MA: Incomplete
26
+ CURRENT_DESCRIPTION_IN_A: Incomplete
26
27
  CO2_DESCRIPTION: Incomplete
27
28
  SENSOR_DESCRIPTIONS_BY_DEVICE_TYPES: Incomplete
28
29
 
@@ -33,5 +34,4 @@ class SwitchBotCloudSensor(SwitchBotCloudEntity, SensorEntity):
33
34
  _attr_unique_id: Incomplete
34
35
  def __init__(self, api: SwitchBotAPI, device: Device, coordinator: SwitchBotCoordinator, description: SensorEntityDescription) -> None: ...
35
36
  _attr_native_value: Incomplete
36
- @callback
37
- def _handle_coordinator_update(self) -> None: ...
37
+ def _set_attributes(self) -> None: ...