homeassistant-stubs 2024.12.5__py3-none-any.whl → 2025.1.0b0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (572) hide show
  1. homeassistant-stubs/auth/__init__.pyi +1 -1
  2. homeassistant-stubs/auth/mfa_modules/__init__.pyi +6 -4
  3. homeassistant-stubs/auth/mfa_modules/notify.pyi +2 -3
  4. homeassistant-stubs/auth/mfa_modules/totp.pyi +2 -3
  5. homeassistant-stubs/auth/providers/__init__.pyi +6 -4
  6. homeassistant-stubs/auth/providers/command_line.pyi +2 -2
  7. homeassistant-stubs/auth/providers/homeassistant.pyi +2 -2
  8. homeassistant-stubs/auth/providers/insecure_example.pyi +2 -2
  9. homeassistant-stubs/auth/providers/trusted_networks.pyi +2 -2
  10. homeassistant-stubs/backup_restore.pyi +11 -4
  11. homeassistant-stubs/components/abode/light.pyi +4 -3
  12. homeassistant-stubs/components/acaia/__init__.pyi +9 -0
  13. homeassistant-stubs/components/acaia/binary_sensor.pyi +24 -0
  14. homeassistant-stubs/components/acaia/button.pyi +24 -0
  15. homeassistant-stubs/components/acaia/config_flow.pyi +18 -0
  16. homeassistant-stubs/components/acaia/const.pyi +2 -0
  17. homeassistant-stubs/components/acaia/coordinator.pyi +19 -0
  18. homeassistant-stubs/components/{stookalert → acaia}/diagnostics.pyi +2 -3
  19. homeassistant-stubs/components/acaia/entity.pyi +17 -0
  20. homeassistant-stubs/components/acaia/sensor.pyi +44 -0
  21. homeassistant-stubs/components/adax/climate.pyi +0 -1
  22. homeassistant-stubs/components/airtouch5/climate.pyi +0 -1
  23. homeassistant-stubs/components/airzone/climate.pyi +0 -1
  24. homeassistant-stubs/components/airzone_cloud/climate.pyi +3 -2
  25. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +1 -6
  26. homeassistant-stubs/components/alarm_control_panel/const.pyi +0 -14
  27. homeassistant-stubs/components/analytics_insights/config_flow.pyi +3 -2
  28. homeassistant-stubs/components/autarco/__init__.pyi +1 -0
  29. homeassistant-stubs/components/autarco/config_flow.pyi +4 -0
  30. homeassistant-stubs/components/autarco/coordinator.pyi +1 -0
  31. homeassistant-stubs/components/automation/__init__.pyi +1 -10
  32. homeassistant-stubs/components/backup/__init__.pyi +4 -11
  33. homeassistant-stubs/components/backup/agent.pyi +35 -0
  34. homeassistant-stubs/components/backup/backup.pyi +29 -0
  35. homeassistant-stubs/components/backup/config.pyi +117 -0
  36. homeassistant-stubs/components/backup/const.pyi +2 -0
  37. homeassistant-stubs/components/backup/http.pyi +3 -2
  38. homeassistant-stubs/components/backup/manager.pyi +191 -51
  39. homeassistant-stubs/components/backup/models.pyi +35 -0
  40. homeassistant-stubs/components/backup/store.pyi +24 -0
  41. homeassistant-stubs/components/backup/util.pyi +12 -0
  42. homeassistant-stubs/components/backup/websocket.pyi +9 -1
  43. homeassistant-stubs/components/baf/climate.pyi +0 -1
  44. homeassistant-stubs/components/baf/fan.pyi +0 -1
  45. homeassistant-stubs/components/baf/light.pyi +4 -5
  46. homeassistant-stubs/components/bang_olufsen/const.pyi +3 -0
  47. homeassistant-stubs/components/bang_olufsen/media_player.pyi +2 -2
  48. homeassistant-stubs/components/binary_sensor/__init__.pyi +0 -33
  49. homeassistant-stubs/components/bluesound/__init__.pyi +0 -1
  50. homeassistant-stubs/components/bluesound/media_player.pyi +13 -8
  51. homeassistant-stubs/components/bluesound/utils.pyi +2 -0
  52. homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +4 -12
  53. homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +1 -0
  54. homeassistant-stubs/components/bmw_connected_drive/button.pyi +1 -0
  55. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +8 -4
  56. homeassistant-stubs/components/bmw_connected_drive/coordinator.pyi +4 -3
  57. homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +2 -2
  58. homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +1 -0
  59. homeassistant-stubs/components/bmw_connected_drive/lock.pyi +1 -0
  60. homeassistant-stubs/components/bmw_connected_drive/notify.pyi +2 -1
  61. homeassistant-stubs/components/bmw_connected_drive/number.pyi +1 -0
  62. homeassistant-stubs/components/bmw_connected_drive/select.pyi +1 -0
  63. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +1 -0
  64. homeassistant-stubs/components/bmw_connected_drive/switch.pyi +1 -0
  65. homeassistant-stubs/components/bryant_evolution/climate.pyi +0 -1
  66. homeassistant-stubs/components/cambridge_audio/config_flow.pyi +4 -1
  67. homeassistant-stubs/components/cambridge_audio/media_browser.pyi +8 -0
  68. homeassistant-stubs/components/cambridge_audio/media_player.pyi +4 -3
  69. homeassistant-stubs/components/cambridge_audio/select.pyi +2 -2
  70. homeassistant-stubs/components/cambridge_audio/switch.pyi +2 -2
  71. homeassistant-stubs/components/camera/__init__.pyi +1 -5
  72. homeassistant-stubs/components/camera/const.pyi +0 -8
  73. homeassistant-stubs/components/cert_expiry/config_flow.pyi +0 -1
  74. homeassistant-stubs/components/cert_expiry/sensor.pyi +2 -10
  75. homeassistant-stubs/components/climate/__init__.pyi +1 -12
  76. homeassistant-stubs/components/climate/const.pyi +0 -25
  77. homeassistant-stubs/components/cloud/backup.pyi +36 -0
  78. homeassistant-stubs/components/cloud/const.pyi +2 -0
  79. homeassistant-stubs/components/cloud/http_api.pyi +7 -2
  80. homeassistant-stubs/components/cookidoo/__init__.pyi +9 -0
  81. homeassistant-stubs/components/cookidoo/config_flow.pyi +24 -0
  82. homeassistant-stubs/components/cookidoo/const.pyi +1 -0
  83. homeassistant-stubs/components/cookidoo/coordinator.pyi +25 -0
  84. homeassistant-stubs/components/cookidoo/entity.pyi +10 -0
  85. homeassistant-stubs/components/cookidoo/todo.pyi +32 -0
  86. homeassistant-stubs/components/cover/__init__.pyi +0 -18
  87. homeassistant-stubs/components/crownstone/config_flow.pyi +1 -1
  88. homeassistant-stubs/components/deconz/climate.pyi +0 -1
  89. homeassistant-stubs/components/deconz/fan.pyi +0 -1
  90. homeassistant-stubs/components/deconz/light.pyi +7 -5
  91. homeassistant-stubs/components/demo/climate.pyi +0 -1
  92. homeassistant-stubs/components/demo/fan.pyi +0 -1
  93. homeassistant-stubs/components/demo/light.pyi +4 -2
  94. homeassistant-stubs/components/demo/vacuum.pyi +2 -4
  95. homeassistant-stubs/components/device_tracker/__init__.pyi +1 -7
  96. homeassistant-stubs/components/device_tracker/const.pyi +0 -8
  97. homeassistant-stubs/components/devolo_home_control/__init__.pyi +1 -1
  98. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +3 -2
  99. homeassistant-stubs/components/devolo_home_control/climate.pyi +0 -1
  100. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +1 -2
  101. homeassistant-stubs/components/devolo_home_control/const.pyi +0 -2
  102. homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -3
  103. homeassistant-stubs/components/discovergy/__init__.pyi +2 -2
  104. homeassistant-stubs/components/duotecno/climate.pyi +0 -1
  105. homeassistant-stubs/components/easyenergy/__init__.pyi +4 -5
  106. homeassistant-stubs/components/easyenergy/coordinator.pyi +3 -2
  107. homeassistant-stubs/components/easyenergy/diagnostics.pyi +2 -5
  108. homeassistant-stubs/components/easyenergy/sensor.pyi +2 -3
  109. homeassistant-stubs/components/easyenergy/services.pyi +4 -4
  110. homeassistant-stubs/components/ecovacs/button.pyi +13 -2
  111. homeassistant-stubs/components/ecovacs/const.pyi +1 -0
  112. homeassistant-stubs/components/ecovacs/number.pyi +1 -1
  113. homeassistant-stubs/components/ecovacs/select.pyi +2 -2
  114. homeassistant-stubs/components/ecovacs/sensor.pyi +1 -1
  115. homeassistant-stubs/components/ecovacs/util.pyi +1 -0
  116. homeassistant-stubs/components/ecovacs/vacuum.pyi +3 -3
  117. homeassistant-stubs/components/eheimdigital/__init__.pyi +14 -0
  118. homeassistant-stubs/components/eheimdigital/config_flow.pyi +18 -0
  119. homeassistant-stubs/components/eheimdigital/const.pyi +8 -0
  120. homeassistant-stubs/components/eheimdigital/coordinator.pyi +25 -0
  121. homeassistant-stubs/components/eheimdigital/entity.pyi +20 -0
  122. homeassistant-stubs/components/eheimdigital/light.pyi +36 -0
  123. homeassistant-stubs/components/electrasmart/climate.pyi +0 -1
  124. homeassistant-stubs/components/elevenlabs/__init__.pyi +6 -7
  125. homeassistant-stubs/components/elevenlabs/config_flow.pyi +4 -3
  126. homeassistant-stubs/components/elevenlabs/tts.pyi +6 -3
  127. homeassistant-stubs/components/elgato/__init__.pyi +3 -5
  128. homeassistant-stubs/components/elgato/button.pyi +4 -3
  129. homeassistant-stubs/components/elgato/config_flow.pyi +1 -1
  130. homeassistant-stubs/components/elgato/coordinator.pyi +4 -3
  131. homeassistant-stubs/components/elgato/diagnostics.pyi +2 -2
  132. homeassistant-stubs/components/elgato/light.pyi +6 -7
  133. homeassistant-stubs/components/elgato/sensor.pyi +4 -3
  134. homeassistant-stubs/components/elgato/switch.pyi +4 -3
  135. homeassistant-stubs/components/elkm1/climate.pyi +0 -1
  136. homeassistant-stubs/components/emulated_hue/hue_api.pyi +1 -1
  137. homeassistant-stubs/components/energyzero/__init__.pyi +4 -5
  138. homeassistant-stubs/components/energyzero/coordinator.pyi +2 -1
  139. homeassistant-stubs/components/energyzero/diagnostics.pyi +2 -5
  140. homeassistant-stubs/components/energyzero/sensor.pyi +2 -3
  141. homeassistant-stubs/components/energyzero/services.pyi +4 -4
  142. homeassistant-stubs/components/enigma2/coordinator.pyi +1 -0
  143. homeassistant-stubs/components/enigma2/media_player.pyi +0 -1
  144. homeassistant-stubs/components/enphase_envoy/binary_sensor.pyi +2 -0
  145. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +2 -1
  146. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -2
  147. homeassistant-stubs/components/enphase_envoy/number.pyi +2 -0
  148. homeassistant-stubs/components/enphase_envoy/select.pyi +2 -0
  149. homeassistant-stubs/components/enphase_envoy/sensor.pyi +35 -1
  150. homeassistant-stubs/components/enphase_envoy/switch.pyi +2 -0
  151. homeassistant-stubs/components/esphome/climate.pyi +0 -1
  152. homeassistant-stubs/components/esphome/fan.pyi +0 -1
  153. homeassistant-stubs/components/esphome/light.pyi +0 -2
  154. homeassistant-stubs/components/evohome/climate.pyi +0 -1
  155. homeassistant-stubs/components/fan/__init__.pyi +0 -15
  156. homeassistant-stubs/components/feedreader/__init__.pyi +3 -8
  157. homeassistant-stubs/components/feedreader/config_flow.pyi +1 -6
  158. homeassistant-stubs/components/flexit_bacnet/climate.pyi +0 -1
  159. homeassistant-stubs/components/flexit_bacnet/number.pyi +3 -0
  160. homeassistant-stubs/components/flux_led/light.pyi +4 -5
  161. homeassistant-stubs/components/fritzbox/climate.pyi +0 -1
  162. homeassistant-stubs/components/fritzbox/coordinator.pyi +2 -1
  163. homeassistant-stubs/components/fritzbox/light.pyi +3 -4
  164. homeassistant-stubs/components/fritzbox_callmonitor/base.pyi +13 -2
  165. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +2 -2
  166. homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +4 -4
  167. homeassistant-stubs/components/fronius/__init__.pyi +1 -1
  168. homeassistant-stubs/components/fronius/const.pyi +3 -3
  169. homeassistant-stubs/components/fronius/coordinator.pyi +1 -1
  170. homeassistant-stubs/components/fronius/sensor.pyi +2 -1
  171. homeassistant-stubs/components/fujitsu_fglair/climate.pyi +0 -1
  172. homeassistant-stubs/components/fyta/__init__.pyi +2 -2
  173. homeassistant-stubs/components/fyta/entity.pyi +2 -2
  174. homeassistant-stubs/components/generic_thermostat/climate.pyi +1 -4
  175. homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -1
  176. homeassistant-stubs/components/generic_thermostat/const.pyi +2 -0
  177. homeassistant-stubs/components/group/fan.pyi +0 -1
  178. homeassistant-stubs/components/group/registry.pyi +1 -1
  179. homeassistant-stubs/components/history/__init__.pyi +1 -1
  180. homeassistant-stubs/components/history/helpers.pyi +1 -2
  181. homeassistant-stubs/components/history/websocket_api.pyi +1 -1
  182. homeassistant-stubs/components/holiday/__init__.pyi +2 -1
  183. homeassistant-stubs/components/holiday/calendar.pyi +4 -3
  184. homeassistant-stubs/components/holiday/config_flow.pyi +13 -3
  185. homeassistant-stubs/components/holiday/const.pyi +1 -0
  186. homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +5 -3
  187. homeassistant-stubs/components/homekit/doorbell.pyi +23 -0
  188. homeassistant-stubs/components/homekit/type_cameras.pyi +4 -12
  189. homeassistant-stubs/components/homekit/type_locks.pyi +3 -2
  190. homeassistant-stubs/components/homekit/type_switches.pyi +1 -1
  191. homeassistant-stubs/components/homekit/util.pyi +1 -0
  192. homeassistant-stubs/components/homewizard/sensor.pyi +1 -1
  193. homeassistant-stubs/components/humidifier/__init__.pyi +1 -8
  194. homeassistant-stubs/components/humidifier/const.pyi +0 -9
  195. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -2
  196. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +1 -0
  197. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +1 -0
  198. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +4 -4
  199. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +2 -0
  200. homeassistant-stubs/components/husqvarna_automower/diagnostics.pyi +1 -2
  201. homeassistant-stubs/components/husqvarna_automower/entity.pyi +4 -3
  202. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +1 -0
  203. homeassistant-stubs/components/idasen_desk/__init__.pyi +5 -16
  204. homeassistant-stubs/components/idasen_desk/button.pyi +7 -12
  205. homeassistant-stubs/components/idasen_desk/coordinator.pyi +2 -3
  206. homeassistant-stubs/components/idasen_desk/cover.pyi +8 -17
  207. homeassistant-stubs/components/idasen_desk/entity.pyi +12 -0
  208. homeassistant-stubs/components/idasen_desk/sensor.pyi +7 -20
  209. homeassistant-stubs/components/image_upload/media_source.pyi +14 -0
  210. homeassistant-stubs/components/imap/config_flow.pyi +3 -2
  211. homeassistant-stubs/components/imap/coordinator.pyi +5 -5
  212. homeassistant-stubs/components/imap/sensor.pyi +1 -0
  213. homeassistant-stubs/components/intent/__init__.pyi +2 -1
  214. homeassistant-stubs/components/iotty/switch.pyi +8 -6
  215. homeassistant-stubs/components/iron_os/__init__.pyi +21 -0
  216. homeassistant-stubs/components/iron_os/binary_sensor.pyi +19 -0
  217. homeassistant-stubs/components/iron_os/config_flow.pyi +15 -0
  218. homeassistant-stubs/components/iron_os/const.pyi +7 -0
  219. homeassistant-stubs/components/iron_os/coordinator.pyi +43 -0
  220. homeassistant-stubs/components/iron_os/entity.pyi +13 -0
  221. homeassistant-stubs/components/iron_os/number.pyi +62 -0
  222. homeassistant-stubs/components/iron_os/select.pyi +49 -0
  223. homeassistant-stubs/components/iron_os/sensor.pyi +46 -0
  224. homeassistant-stubs/components/iron_os/update.pyi +29 -0
  225. homeassistant-stubs/components/isy994/climate.pyi +0 -1
  226. homeassistant-stubs/components/isy994/fan.pyi +0 -1
  227. homeassistant-stubs/components/knx/climate.pyi +0 -1
  228. homeassistant-stubs/components/knx/config_flow.pyi +4 -0
  229. homeassistant-stubs/components/knx/fan.pyi +0 -1
  230. homeassistant-stubs/components/knx/services.pyi +5 -5
  231. homeassistant-stubs/components/lamarzocco/__init__.pyi +4 -5
  232. homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +9 -3
  233. homeassistant-stubs/components/lamarzocco/calendar.pyi +1 -0
  234. homeassistant-stubs/components/lamarzocco/config_flow.pyi +6 -5
  235. homeassistant-stubs/components/lamarzocco/coordinator.pyi +39 -16
  236. homeassistant-stubs/components/lamarzocco/entity.pyi +7 -3
  237. homeassistant-stubs/components/lamarzocco/number.pyi +8 -4
  238. homeassistant-stubs/components/lamarzocco/select.pyi +8 -4
  239. homeassistant-stubs/components/lamarzocco/sensor.pyi +10 -3
  240. homeassistant-stubs/components/lamarzocco/switch.pyi +1 -1
  241. homeassistant-stubs/components/lametric/notify.pyi +2 -1
  242. homeassistant-stubs/components/lametric/number.pyi +2 -1
  243. homeassistant-stubs/components/lametric/services.pyi +2 -1
  244. homeassistant-stubs/components/lametric/switch.pyi +2 -1
  245. homeassistant-stubs/components/lcn/__init__.pyi +3 -1
  246. homeassistant-stubs/components/lcn/climate.pyi +0 -1
  247. homeassistant-stubs/components/lcn/const.pyi +1 -0
  248. homeassistant-stubs/components/lcn/helpers.pyi +1 -1
  249. homeassistant-stubs/components/lcn/services.pyi +7 -4
  250. homeassistant-stubs/components/lifx/const.pyi +1 -0
  251. homeassistant-stubs/components/lifx/manager.pyi +2 -2
  252. homeassistant-stubs/components/lifx/util.pyi +2 -2
  253. homeassistant-stubs/components/light/__init__.pyi +31 -55
  254. homeassistant-stubs/components/light/const.pyi +33 -0
  255. homeassistant-stubs/components/light/device_action.pyi +2 -1
  256. homeassistant-stubs/components/light/device_condition.pyi +1 -1
  257. homeassistant-stubs/components/light/device_trigger.pyi +1 -1
  258. homeassistant-stubs/components/light/intent.pyi +2 -1
  259. homeassistant-stubs/components/light/reproduce_state.pyi +2 -1
  260. homeassistant-stubs/components/light/significant_change.pyi +1 -1
  261. homeassistant-stubs/components/litterrobot/vacuum.pyi +2 -2
  262. homeassistant-stubs/components/lock/__init__.pyi +1 -2
  263. homeassistant-stubs/components/lookin/climate.pyi +0 -1
  264. homeassistant-stubs/components/mastodon/__init__.pyi +2 -2
  265. homeassistant-stubs/components/mastodon/config_flow.pyi +1 -2
  266. homeassistant-stubs/components/mastodon/sensor.pyi +2 -0
  267. homeassistant-stubs/components/matter/climate.pyi +0 -1
  268. homeassistant-stubs/components/matter/fan.pyi +0 -1
  269. homeassistant-stubs/components/matter/light.pyi +5 -5
  270. homeassistant-stubs/components/matter/vacuum.pyi +3 -3
  271. homeassistant-stubs/components/mealie/__init__.pyi +18 -0
  272. homeassistant-stubs/components/mealie/calendar.pyi +21 -0
  273. homeassistant-stubs/components/mealie/config_flow.pyi +20 -0
  274. homeassistant-stubs/components/mealie/const.pyi +14 -0
  275. homeassistant-stubs/components/mealie/coordinator.pyi +53 -0
  276. homeassistant-stubs/components/mealie/diagnostics.pyi +5 -0
  277. homeassistant-stubs/components/mealie/entity.pyi +11 -0
  278. homeassistant-stubs/components/mealie/sensor.pyi +29 -0
  279. homeassistant-stubs/components/mealie/services.pyi +21 -0
  280. homeassistant-stubs/components/mealie/todo.pyi +36 -0
  281. homeassistant-stubs/components/mealie/utils.pyi +3 -0
  282. homeassistant-stubs/components/media_player/__init__.pyi +0 -2
  283. homeassistant-stubs/components/modbus/climate.pyi +0 -1
  284. homeassistant-stubs/components/modbus/fan.pyi +0 -1
  285. homeassistant-stubs/components/modbus/modbus.pyi +3 -3
  286. homeassistant-stubs/components/mqtt/client.pyi +1 -1
  287. homeassistant-stubs/components/mqtt/climate.pyi +0 -1
  288. homeassistant-stubs/components/mqtt/config_flow.pyi +2 -1
  289. homeassistant-stubs/components/mqtt/fan.pyi +0 -1
  290. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +5 -5
  291. homeassistant-stubs/components/mqtt/light/schema_json.pyi +4 -4
  292. homeassistant-stubs/components/mqtt/light/schema_template.pyi +4 -4
  293. homeassistant-stubs/components/mqtt/switch.pyi +1 -1
  294. homeassistant-stubs/components/mqtt/vacuum.pyi +10 -4
  295. homeassistant-stubs/components/music_assistant/__init__.pyi +4 -0
  296. homeassistant-stubs/components/music_assistant/actions.pyi +18 -0
  297. homeassistant-stubs/components/music_assistant/const.pyi +48 -0
  298. homeassistant-stubs/components/music_assistant/media_player.pyi +9 -16
  299. homeassistant-stubs/components/music_assistant/schemas.pyi +20 -0
  300. homeassistant-stubs/components/mysensors/climate.pyi +0 -1
  301. homeassistant-stubs/components/myuplink/__init__.pyi +5 -2
  302. homeassistant-stubs/components/myuplink/binary_sensor.pyi +2 -2
  303. homeassistant-stubs/components/myuplink/config_flow.pyi +4 -1
  304. homeassistant-stubs/components/myuplink/number.pyi +2 -2
  305. homeassistant-stubs/components/myuplink/select.pyi +3 -2
  306. homeassistant-stubs/components/myuplink/switch.pyi +1 -1
  307. homeassistant-stubs/components/nanoleaf/light.pyi +4 -4
  308. homeassistant-stubs/components/neato/vacuum.pyi +3 -3
  309. homeassistant-stubs/components/nest/__init__.pyi +6 -6
  310. homeassistant-stubs/components/nest/camera.pyi +2 -4
  311. homeassistant-stubs/components/nest/climate.pyi +2 -5
  312. homeassistant-stubs/components/nest/const.pyi +0 -2
  313. homeassistant-stubs/components/nest/device_info.pyi +2 -1
  314. homeassistant-stubs/components/nest/diagnostics.pyi +4 -8
  315. homeassistant-stubs/components/nest/event.pyi +2 -4
  316. homeassistant-stubs/components/nest/sensor.pyi +2 -4
  317. homeassistant-stubs/components/nest/types.pyi +11 -0
  318. homeassistant-stubs/components/netatmo/climate.pyi +0 -1
  319. homeassistant-stubs/components/netatmo/fan.pyi +0 -1
  320. homeassistant-stubs/components/nordpool/__init__.pyi +6 -0
  321. homeassistant-stubs/components/nordpool/coordinator.pyi +5 -2
  322. homeassistant-stubs/components/nordpool/entity.pyi +1 -1
  323. homeassistant-stubs/components/nordpool/sensor.pyi +10 -6
  324. homeassistant-stubs/components/nordpool/services.pyi +19 -0
  325. homeassistant-stubs/components/number/const.pyi +0 -8
  326. homeassistant-stubs/components/onkyo/config_flow.pyi +2 -0
  327. homeassistant-stubs/components/onkyo/media_player.pyi +10 -7
  328. homeassistant-stubs/components/overkiz/__init__.pyi +4 -3
  329. homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +2 -4
  330. homeassistant-stubs/components/overkiz/binary_sensor.pyi +3 -4
  331. homeassistant-stubs/components/overkiz/button.pyi +4 -5
  332. homeassistant-stubs/components/overkiz/climate/__init__.pyi +3 -4
  333. homeassistant-stubs/components/overkiz/climate/atlantic_electrical_heater.pyi +0 -1
  334. homeassistant-stubs/components/overkiz/climate/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +0 -1
  335. homeassistant-stubs/components/overkiz/climate/atlantic_electrical_towel_dryer.pyi +1 -2
  336. homeassistant-stubs/components/overkiz/climate/atlantic_heat_recovery_ventilation.pyi +0 -1
  337. homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_heat_pump_main_component.pyi +0 -1
  338. homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_heating_zone.pyi +0 -1
  339. homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control.pyi +0 -1
  340. homeassistant-stubs/components/overkiz/climate/hitachi_air_to_air_heat_pump_hlrrwifi.pyi +0 -1
  341. homeassistant-stubs/components/overkiz/climate/hitachi_air_to_air_heat_pump_ovp.pyi +0 -1
  342. homeassistant-stubs/components/overkiz/climate/hitachi_air_to_water_heating_zone.pyi +34 -0
  343. homeassistant-stubs/components/overkiz/climate/somfy_heating_temperature_interface.pyi +0 -1
  344. homeassistant-stubs/components/overkiz/climate/somfy_thermostat.pyi +0 -1
  345. homeassistant-stubs/components/overkiz/climate/valve_heating_temperature_interface.pyi +0 -1
  346. homeassistant-stubs/components/overkiz/cover/__init__.pyi +2 -4
  347. homeassistant-stubs/components/overkiz/diagnostics.pyi +4 -5
  348. homeassistant-stubs/components/overkiz/light.pyi +2 -4
  349. homeassistant-stubs/components/overkiz/lock.pyi +2 -4
  350. homeassistant-stubs/components/overkiz/number.pyi +3 -4
  351. homeassistant-stubs/components/overkiz/scene.pyi +2 -4
  352. homeassistant-stubs/components/overkiz/select.pyi +3 -4
  353. homeassistant-stubs/components/overkiz/sensor.pyi +2 -3
  354. homeassistant-stubs/components/overkiz/siren.pyi +2 -4
  355. homeassistant-stubs/components/overkiz/switch.pyi +2 -4
  356. homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +2 -4
  357. homeassistant-stubs/components/peblar/__init__.pyi +11 -0
  358. homeassistant-stubs/components/peblar/binary_sensor.pyi +25 -0
  359. homeassistant-stubs/components/peblar/button.pyi +27 -0
  360. homeassistant-stubs/components/peblar/config_flow.pyi +18 -0
  361. homeassistant-stubs/components/peblar/const.pyi +7 -0
  362. homeassistant-stubs/components/peblar/coordinator.pyi +50 -0
  363. homeassistant-stubs/components/peblar/diagnostics.pyi +5 -0
  364. homeassistant-stubs/components/peblar/entity.pyi +15 -0
  365. homeassistant-stubs/components/peblar/helpers.pyi +7 -0
  366. homeassistant-stubs/components/peblar/number.pyi +33 -0
  367. homeassistant-stubs/components/peblar/select.pyi +30 -0
  368. homeassistant-stubs/components/peblar/sensor.pyi +29 -0
  369. homeassistant-stubs/components/peblar/switch.pyi +32 -0
  370. homeassistant-stubs/components/peblar/update.pyi +26 -0
  371. homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -0
  372. homeassistant-stubs/components/plugwise/button.pyi +2 -0
  373. homeassistant-stubs/components/plugwise/climate.pyi +3 -4
  374. homeassistant-stubs/components/plugwise/config_flow.pyi +7 -1
  375. homeassistant-stubs/components/plugwise/entity.pyi +0 -1
  376. homeassistant-stubs/components/plugwise/number.pyi +2 -0
  377. homeassistant-stubs/components/plugwise/select.pyi +2 -0
  378. homeassistant-stubs/components/plugwise/sensor.pyi +2 -0
  379. homeassistant-stubs/components/plugwise/switch.pyi +2 -0
  380. homeassistant-stubs/components/plugwise/util.pyi +1 -0
  381. homeassistant-stubs/components/powerfox/__init__.pyi +12 -0
  382. homeassistant-stubs/components/powerfox/config_flow.pyi +16 -0
  383. homeassistant-stubs/components/{stookalert → powerfox}/const.pyi +1 -2
  384. homeassistant-stubs/components/powerfox/coordinator.pyi +14 -0
  385. homeassistant-stubs/components/powerfox/diagnostics.pyi +5 -0
  386. homeassistant-stubs/components/powerfox/entity.pyi +11 -0
  387. homeassistant-stubs/components/powerfox/sensor.pyi +28 -0
  388. homeassistant-stubs/components/powerwall/sensor.pyi +3 -5
  389. homeassistant-stubs/components/rabbitair/fan.pyi +0 -1
  390. homeassistant-stubs/components/recorder/db_schema.pyi +19 -4
  391. homeassistant-stubs/components/recorder/history/legacy.pyi +4 -4
  392. homeassistant-stubs/components/recorder/history/modern.pyi +5 -5
  393. homeassistant-stubs/components/recorder/migration.pyi +29 -19
  394. homeassistant-stubs/components/recorder/models/state.pyi +3 -0
  395. homeassistant-stubs/components/recorder/queries.pyi +3 -4
  396. homeassistant-stubs/components/recorder/statistics.pyi +2 -2
  397. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +0 -1
  398. homeassistant-stubs/components/recorder/table_managers/recorder_runs.pyi +1 -12
  399. homeassistant-stubs/components/recorder/table_managers/states.pyi +7 -0
  400. homeassistant-stubs/components/remote/__init__.pyi +0 -10
  401. homeassistant-stubs/components/renault/binary_sensor.pyi +2 -0
  402. homeassistant-stubs/components/renault/button.pyi +2 -0
  403. homeassistant-stubs/components/renault/coordinator.pyi +2 -1
  404. homeassistant-stubs/components/renault/device_tracker.pyi +2 -0
  405. homeassistant-stubs/components/renault/select.pyi +2 -0
  406. homeassistant-stubs/components/renault/sensor.pyi +2 -0
  407. homeassistant-stubs/components/reolink/button.pyi +1 -2
  408. homeassistant-stubs/components/reolink/camera.pyi +1 -2
  409. homeassistant-stubs/components/reolink/light.pyi +1 -2
  410. homeassistant-stubs/components/reolink/number.pyi +1 -2
  411. homeassistant-stubs/components/reolink/select.pyi +1 -2
  412. homeassistant-stubs/components/reolink/services.pyi +2 -2
  413. homeassistant-stubs/components/reolink/siren.pyi +1 -2
  414. homeassistant-stubs/components/reolink/switch.pyi +1 -2
  415. homeassistant-stubs/components/reolink/update.pyi +1 -0
  416. homeassistant-stubs/components/reolink/util.pyi +7 -0
  417. homeassistant-stubs/components/roborock/vacuum.pyi +2 -2
  418. homeassistant-stubs/components/roku/__init__.pyi +5 -4
  419. homeassistant-stubs/components/roku/binary_sensor.pyi +4 -3
  420. homeassistant-stubs/components/roku/config_flow.pyi +5 -3
  421. homeassistant-stubs/components/roku/diagnostics.pyi +2 -4
  422. homeassistant-stubs/components/roku/media_player.pyi +4 -3
  423. homeassistant-stubs/components/roku/remote.pyi +4 -4
  424. homeassistant-stubs/components/roku/select.pyi +4 -4
  425. homeassistant-stubs/components/roku/sensor.pyi +4 -4
  426. homeassistant-stubs/components/romy/vacuum.pyi +2 -2
  427. homeassistant-stubs/components/russound_rio/__init__.pyi +14 -0
  428. homeassistant-stubs/components/russound_rio/config_flow.pyi +14 -0
  429. homeassistant-stubs/components/russound_rio/const.pyi +7 -0
  430. homeassistant-stubs/components/russound_rio/diagnostics.pyi +5 -0
  431. homeassistant-stubs/components/russound_rio/entity.pyi +25 -0
  432. homeassistant-stubs/components/russound_rio/media_player.pyi +56 -0
  433. homeassistant-stubs/components/schlage/__init__.pyi +11 -0
  434. homeassistant-stubs/components/schlage/binary_sensor.pyi +26 -0
  435. homeassistant-stubs/components/schlage/config_flow.pyi +19 -0
  436. homeassistant-stubs/components/schlage/const.pyi +6 -0
  437. homeassistant-stubs/components/schlage/coordinator.pyi +31 -0
  438. homeassistant-stubs/components/schlage/diagnostics.pyi +5 -0
  439. homeassistant-stubs/components/schlage/entity.pyi +19 -0
  440. homeassistant-stubs/components/schlage/lock.pyi +21 -0
  441. homeassistant-stubs/components/schlage/select.pyi +20 -0
  442. homeassistant-stubs/components/schlage/sensor.pyi +19 -0
  443. homeassistant-stubs/components/schlage/switch.pyi +32 -0
  444. homeassistant-stubs/components/sensibo/climate.pyi +2 -3
  445. homeassistant-stubs/components/sensibo/coordinator.pyi +1 -1
  446. homeassistant-stubs/components/sensor/const.pyi +0 -7
  447. homeassistant-stubs/components/senz/climate.pyi +0 -1
  448. homeassistant-stubs/components/shelly/climate.pyi +0 -2
  449. homeassistant-stubs/components/siren/__init__.pyi +1 -6
  450. homeassistant-stubs/components/siren/const.pyi +0 -11
  451. homeassistant-stubs/components/snooz/fan.pyi +0 -1
  452. homeassistant-stubs/components/solarlog/config_flow.pyi +2 -5
  453. homeassistant-stubs/components/solarlog/const.pyi +0 -1
  454. homeassistant-stubs/components/solarlog/coordinator.pyi +0 -1
  455. homeassistant-stubs/components/starlink/coordinator.pyi +4 -2
  456. homeassistant-stubs/components/starlink/sensor.pyi +1 -1
  457. homeassistant-stubs/components/statistics/sensor.pyi +43 -40
  458. homeassistant-stubs/components/stream/__init__.pyi +13 -0
  459. homeassistant-stubs/components/suez_water/__init__.pyi +3 -5
  460. homeassistant-stubs/components/suez_water/coordinator.pyi +7 -9
  461. homeassistant-stubs/components/suez_water/sensor.pyi +5 -6
  462. homeassistant-stubs/components/sun/__init__.pyi +2 -0
  463. homeassistant-stubs/components/sun/entity.pyi +1 -2
  464. homeassistant-stubs/components/switch/__init__.pyi +0 -7
  465. homeassistant-stubs/components/switch_as_x/fan.pyi +0 -1
  466. homeassistant-stubs/components/switchbee/climate.pyi +0 -1
  467. homeassistant-stubs/components/switchbot_cloud/climate.pyi +0 -1
  468. homeassistant-stubs/components/switchbot_cloud/sensor.pyi +12 -3
  469. homeassistant-stubs/components/switchbot_cloud/switch.pyi +4 -0
  470. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +3 -3
  471. homeassistant-stubs/components/switcher_kis/climate.pyi +1 -2
  472. homeassistant-stubs/components/switcher_kis/cover.pyi +0 -4
  473. homeassistant-stubs/components/switcher_kis/entity.pyi +6 -0
  474. homeassistant-stubs/components/switcher_kis/light.pyi +0 -4
  475. homeassistant-stubs/components/switcher_kis/switch.pyi +0 -2
  476. homeassistant-stubs/components/tailwind/__init__.pyi +2 -4
  477. homeassistant-stubs/components/tailwind/binary_sensor.pyi +1 -1
  478. homeassistant-stubs/components/tailwind/button.pyi +1 -1
  479. homeassistant-stubs/components/tailwind/coordinator.pyi +2 -1
  480. homeassistant-stubs/components/tailwind/cover.pyi +1 -1
  481. homeassistant-stubs/components/tailwind/diagnostics.pyi +1 -1
  482. homeassistant-stubs/components/tailwind/number.pyi +1 -1
  483. homeassistant-stubs/components/tedee/__init__.pyi +2 -3
  484. homeassistant-stubs/components/tedee/binary_sensor.pyi +2 -0
  485. homeassistant-stubs/components/tedee/sensor.pyi +2 -0
  486. homeassistant-stubs/components/tibber/services.pyi +1 -1
  487. homeassistant-stubs/components/tolo/climate.pyi +0 -1
  488. homeassistant-stubs/components/tolo/fan.pyi +0 -1
  489. homeassistant-stubs/components/tplink/__init__.pyi +1 -1
  490. homeassistant-stubs/components/tplink/binary_sensor.pyi +2 -2
  491. homeassistant-stubs/components/tplink/button.pyi +2 -2
  492. homeassistant-stubs/components/tplink/camera.pyi +49 -0
  493. homeassistant-stubs/components/tplink/climate.pyi +1 -2
  494. homeassistant-stubs/components/tplink/config_flow.pyi +11 -5
  495. homeassistant-stubs/components/tplink/const.pyi +2 -0
  496. homeassistant-stubs/components/tplink/entity.pyi +9 -2
  497. homeassistant-stubs/components/tplink/fan.pyi +1 -2
  498. homeassistant-stubs/components/tplink/light.pyi +2 -2
  499. homeassistant-stubs/components/tplink/models.pyi +4 -1
  500. homeassistant-stubs/components/tplink/number.pyi +2 -2
  501. homeassistant-stubs/components/tplink/select.pyi +2 -2
  502. homeassistant-stubs/components/tplink/sensor.pyi +2 -2
  503. homeassistant-stubs/components/tplink/siren.pyi +1 -1
  504. homeassistant-stubs/components/tplink/switch.pyi +2 -2
  505. homeassistant-stubs/components/tractive/sensor.pyi +1 -1
  506. homeassistant-stubs/components/tradfri/fan.pyi +0 -1
  507. homeassistant-stubs/components/tradfri/light.pyi +4 -4
  508. homeassistant-stubs/components/transmission/__init__.pyi +1 -1
  509. homeassistant-stubs/components/transmission/const.pyi +1 -0
  510. homeassistant-stubs/components/twentemilieu/__init__.pyi +3 -11
  511. homeassistant-stubs/components/twentemilieu/calendar.pyi +1 -1
  512. homeassistant-stubs/components/twentemilieu/coordinator.pyi +14 -0
  513. homeassistant-stubs/components/twentemilieu/diagnostics.pyi +2 -2
  514. homeassistant-stubs/components/twentemilieu/entity.pyi +2 -3
  515. homeassistant-stubs/components/twentemilieu/sensor.pyi +3 -3
  516. homeassistant-stubs/components/unifi/sensor.pyi +1 -1
  517. homeassistant-stubs/components/unifiprotect/const.pyi +6 -0
  518. homeassistant-stubs/components/unifiprotect/event.pyi +5 -3
  519. homeassistant-stubs/components/unifiprotect/services.pyi +16 -9
  520. homeassistant-stubs/components/update/__init__.pyi +0 -2
  521. homeassistant-stubs/components/vacuum/__init__.pyi +16 -7
  522. homeassistant-stubs/components/vacuum/const.pyi +18 -5
  523. homeassistant-stubs/components/vacuum/device_condition.pyi +1 -1
  524. homeassistant-stubs/components/vacuum/device_trigger.pyi +1 -1
  525. homeassistant-stubs/components/vacuum/reproduce_state.pyi +2 -2
  526. homeassistant-stubs/components/vallox/fan.pyi +0 -1
  527. homeassistant-stubs/components/velbus/__init__.pyi +22 -9
  528. homeassistant-stubs/components/velbus/binary_sensor.pyi +4 -3
  529. homeassistant-stubs/components/velbus/button.pyi +4 -3
  530. homeassistant-stubs/components/velbus/climate.pyi +4 -3
  531. homeassistant-stubs/components/velbus/cover.pyi +4 -3
  532. homeassistant-stubs/components/velbus/diagnostics.pyi +3 -4
  533. homeassistant-stubs/components/velbus/light.pyi +4 -3
  534. homeassistant-stubs/components/velbus/select.pyi +4 -3
  535. homeassistant-stubs/components/velbus/sensor.pyi +4 -3
  536. homeassistant-stubs/components/velbus/services.pyi +7 -0
  537. homeassistant-stubs/components/velbus/switch.pyi +4 -3
  538. homeassistant-stubs/components/water_heater/__init__.pyi +7 -12
  539. homeassistant-stubs/components/wemo/fan.pyi +0 -1
  540. homeassistant-stubs/components/wemo/light.pyi +4 -2
  541. homeassistant-stubs/components/wiz/light.pyi +4 -5
  542. homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +4 -4
  543. homeassistant-stubs/components/yale_smart_alarm/alarm_control_panel.pyi +0 -1
  544. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +3 -2
  545. homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +3 -3
  546. homeassistant-stubs/components/yale_smart_alarm/entity.pyi +1 -1
  547. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +1 -1
  548. homeassistant-stubs/components/zwave_js/api.pyi +2 -0
  549. homeassistant-stubs/components/zwave_js/climate.pyi +0 -1
  550. homeassistant-stubs/components/zwave_js/fan.pyi +0 -1
  551. homeassistant-stubs/components/zwave_js/light.pyi +7 -9
  552. homeassistant-stubs/const.pyi +2 -151
  553. homeassistant-stubs/core.pyi +3 -6
  554. homeassistant-stubs/core_config.pyi +2 -1
  555. homeassistant-stubs/data_entry_flow.pyi +0 -13
  556. homeassistant-stubs/exceptions.pyi +6 -0
  557. homeassistant-stubs/helpers/device_registry.pyi +1 -9
  558. homeassistant-stubs/helpers/entity.pyi +1 -2
  559. homeassistant-stubs/helpers/event.pyi +3 -4
  560. homeassistant-stubs/helpers/service.pyi +1 -1
  561. homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -1
  562. homeassistant-stubs/helpers/template.pyi +1 -1
  563. homeassistant-stubs/util/dt.pyi +1 -0
  564. {homeassistant_stubs-2024.12.5.dist-info → homeassistant_stubs-2025.1.0b0.dist-info}/METADATA +2 -2
  565. {homeassistant_stubs-2024.12.5.dist-info → homeassistant_stubs-2025.1.0b0.dist-info}/RECORD +567 -474
  566. homeassistant-stubs/components/bluesound/services.pyi +0 -21
  567. homeassistant-stubs/components/stookalert/__init__.pyi +0 -10
  568. homeassistant-stubs/components/stookalert/binary_sensor.pyi +0 -24
  569. homeassistant-stubs/components/stookalert/config_flow.pyi +0 -7
  570. homeassistant-stubs/components/tailwind/typing.pyi +0 -4
  571. {homeassistant_stubs-2024.12.5.dist-info → homeassistant_stubs-2025.1.0b0.dist-info}/WHEEL +0 -0
  572. {homeassistant_stubs-2024.12.5.dist-info → homeassistant_stubs-2025.1.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -8,7 +8,7 @@ from ..util import valid_publish_topic as valid_publish_topic, valid_subscribe_t
8
8
  from .schema import MQTT_LIGHT_SCHEMA_SCHEMA as MQTT_LIGHT_SCHEMA_SCHEMA
9
9
  from _typeshed import Incomplete
10
10
  from collections.abc import Callable as Callable
11
- from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_MODE as ATTR_COLOR_MODE, ATTR_COLOR_TEMP as ATTR_COLOR_TEMP, ATTR_EFFECT as ATTR_EFFECT, ATTR_EFFECT_LIST as ATTR_EFFECT_LIST, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_MAX_MIREDS as ATTR_MAX_MIREDS, ATTR_MIN_MIREDS as ATTR_MIN_MIREDS, ATTR_RGBWW_COLOR as ATTR_RGBWW_COLOR, ATTR_RGBW_COLOR as ATTR_RGBW_COLOR, ATTR_RGB_COLOR as ATTR_RGB_COLOR, ATTR_SUPPORTED_COLOR_MODES as ATTR_SUPPORTED_COLOR_MODES, ATTR_WHITE as ATTR_WHITE, ATTR_XY_COLOR as ATTR_XY_COLOR, ColorMode as ColorMode, ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature, valid_supported_color_modes as valid_supported_color_modes
11
+ from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_MODE as ATTR_COLOR_MODE, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT as ATTR_EFFECT, ATTR_EFFECT_LIST as ATTR_EFFECT_LIST, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_MAX_COLOR_TEMP_KELVIN as ATTR_MAX_COLOR_TEMP_KELVIN, ATTR_MIN_COLOR_TEMP_KELVIN as ATTR_MIN_COLOR_TEMP_KELVIN, ATTR_RGBWW_COLOR as ATTR_RGBWW_COLOR, ATTR_RGBW_COLOR as ATTR_RGBW_COLOR, ATTR_RGB_COLOR as ATTR_RGB_COLOR, ATTR_SUPPORTED_COLOR_MODES as ATTR_SUPPORTED_COLOR_MODES, ATTR_WHITE as ATTR_WHITE, ATTR_XY_COLOR as ATTR_XY_COLOR, ColorMode as ColorMode, DEFAULT_MAX_KELVIN as DEFAULT_MAX_KELVIN, DEFAULT_MIN_KELVIN as DEFAULT_MIN_KELVIN, ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature, _DEPRECATED_ATTR_COLOR_TEMP as _DEPRECATED_ATTR_COLOR_TEMP, _DEPRECATED_ATTR_MAX_MIREDS as _DEPRECATED_ATTR_MAX_MIREDS, _DEPRECATED_ATTR_MIN_MIREDS as _DEPRECATED_ATTR_MIN_MIREDS, valid_supported_color_modes as valid_supported_color_modes
12
12
  from homeassistant.const import CONF_NAME as CONF_NAME, CONF_OPTIMISTIC as CONF_OPTIMISTIC, CONF_PAYLOAD_OFF as CONF_PAYLOAD_OFF, CONF_PAYLOAD_ON as CONF_PAYLOAD_ON, STATE_ON as STATE_ON
13
13
  from homeassistant.core import callback as callback
14
14
  from homeassistant.helpers.restore_state import RestoreEntity as RestoreEntity
@@ -82,7 +82,7 @@ class MqttLight(MqttEntity, LightEntity, RestoreEntity):
82
82
  _optimistic: bool
83
83
  _optimistic_brightness: bool
84
84
  _optimistic_color_mode: bool
85
- _optimistic_color_temp: bool
85
+ _optimistic_color_temp_kelvin: bool
86
86
  _optimistic_effect: bool
87
87
  _optimistic_hs_color: bool
88
88
  _optimistic_rgb_color: bool
@@ -91,8 +91,8 @@ class MqttLight(MqttEntity, LightEntity, RestoreEntity):
91
91
  _optimistic_xy_color: bool
92
92
  @staticmethod
93
93
  def config_schema() -> VolSchemaType: ...
94
- _attr_min_mireds: Incomplete
95
- _attr_max_mireds: Incomplete
94
+ _attr_min_color_temp_kelvin: Incomplete
95
+ _attr_max_color_temp_kelvin: Incomplete
96
96
  _attr_effect_list: Incomplete
97
97
  _attr_assumed_state: Incomplete
98
98
  _attr_color_mode: Incomplete
@@ -112,7 +112,7 @@ class MqttLight(MqttEntity, LightEntity, RestoreEntity):
112
112
  _attr_rgbww_color: Incomplete
113
113
  def _rgbww_received(self, msg: ReceiveMessage) -> None: ...
114
114
  def _color_mode_received(self, msg: ReceiveMessage) -> None: ...
115
- _attr_color_temp: Incomplete
115
+ _attr_color_temp_kelvin: Incomplete
116
116
  def _color_temp_received(self, msg: ReceiveMessage) -> None: ...
117
117
  _attr_effect: Incomplete
118
118
  def _effect_received(self, msg: ReceiveMessage) -> None: ...
@@ -9,7 +9,7 @@ from .schema import MQTT_LIGHT_SCHEMA_SCHEMA as MQTT_LIGHT_SCHEMA_SCHEMA
9
9
  from .schema_basic import CONF_BRIGHTNESS_SCALE as CONF_BRIGHTNESS_SCALE, CONF_WHITE_SCALE as CONF_WHITE_SCALE, MQTT_LIGHT_ATTRIBUTES_BLOCKED as MQTT_LIGHT_ATTRIBUTES_BLOCKED
10
10
  from _typeshed import Incomplete
11
11
  from collections.abc import Callable as Callable
12
- from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_MODE as ATTR_COLOR_MODE, ATTR_COLOR_TEMP as ATTR_COLOR_TEMP, ATTR_EFFECT as ATTR_EFFECT, ATTR_FLASH as ATTR_FLASH, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_RGBWW_COLOR as ATTR_RGBWW_COLOR, ATTR_RGBW_COLOR as ATTR_RGBW_COLOR, ATTR_RGB_COLOR as ATTR_RGB_COLOR, ATTR_TRANSITION as ATTR_TRANSITION, ATTR_WHITE as ATTR_WHITE, ATTR_XY_COLOR as ATTR_XY_COLOR, ColorMode as ColorMode, ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, FLASH_LONG as FLASH_LONG, FLASH_SHORT as FLASH_SHORT, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature, VALID_COLOR_MODES as VALID_COLOR_MODES, brightness_supported as brightness_supported, color_supported as color_supported, filter_supported_color_modes as filter_supported_color_modes, valid_supported_color_modes as valid_supported_color_modes
12
+ from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_MODE as ATTR_COLOR_MODE, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT as ATTR_EFFECT, ATTR_FLASH as ATTR_FLASH, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_RGBWW_COLOR as ATTR_RGBWW_COLOR, ATTR_RGBW_COLOR as ATTR_RGBW_COLOR, ATTR_RGB_COLOR as ATTR_RGB_COLOR, ATTR_TRANSITION as ATTR_TRANSITION, ATTR_WHITE as ATTR_WHITE, ATTR_XY_COLOR as ATTR_XY_COLOR, ColorMode as ColorMode, DEFAULT_MAX_KELVIN as DEFAULT_MAX_KELVIN, DEFAULT_MIN_KELVIN as DEFAULT_MIN_KELVIN, ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, FLASH_LONG as FLASH_LONG, FLASH_SHORT as FLASH_SHORT, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature, VALID_COLOR_MODES as VALID_COLOR_MODES, brightness_supported as brightness_supported, color_supported as color_supported, filter_supported_color_modes as filter_supported_color_modes, valid_supported_color_modes as valid_supported_color_modes
13
13
  from homeassistant.const import CONF_BRIGHTNESS as CONF_BRIGHTNESS, CONF_COLOR_TEMP as CONF_COLOR_TEMP, CONF_EFFECT as CONF_EFFECT, CONF_HS as CONF_HS, CONF_NAME as CONF_NAME, CONF_OPTIMISTIC as CONF_OPTIMISTIC, CONF_RGB as CONF_RGB, CONF_XY as CONF_XY, STATE_ON as STATE_ON
14
14
  from homeassistant.core import async_get_hass as async_get_hass, callback as callback
15
15
  from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
@@ -58,8 +58,8 @@ class MqttLightJson(MqttEntity, LightEntity, RestoreEntity):
58
58
  _deprecated_color_handling: bool
59
59
  @staticmethod
60
60
  def config_schema() -> VolSchemaType: ...
61
- _attr_max_mireds: Incomplete
62
- _attr_min_mireds: Incomplete
61
+ _attr_min_color_temp_kelvin: Incomplete
62
+ _attr_max_color_temp_kelvin: Incomplete
63
63
  _attr_effect_list: Incomplete
64
64
  _attr_assumed_state: Incomplete
65
65
  _attr_supported_features: Incomplete
@@ -67,7 +67,7 @@ class MqttLightJson(MqttEntity, LightEntity, RestoreEntity):
67
67
  _attr_color_mode: Incomplete
68
68
  def _setup_from_config(self, config: ConfigType) -> None: ...
69
69
  _attr_hs_color: Incomplete
70
- _attr_color_temp: Incomplete
70
+ _attr_color_temp_kelvin: Incomplete
71
71
  _attr_rgb_color: Incomplete
72
72
  _attr_rgbw_color: Incomplete
73
73
  _attr_rgbww_color: Incomplete
@@ -8,7 +8,7 @@ from .schema import MQTT_LIGHT_SCHEMA_SCHEMA as MQTT_LIGHT_SCHEMA_SCHEMA
8
8
  from .schema_basic import MQTT_LIGHT_ATTRIBUTES_BLOCKED as MQTT_LIGHT_ATTRIBUTES_BLOCKED
9
9
  from _typeshed import Incomplete
10
10
  from collections.abc import Callable as Callable
11
- from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_TEMP as ATTR_COLOR_TEMP, ATTR_EFFECT as ATTR_EFFECT, ATTR_FLASH as ATTR_FLASH, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_TRANSITION as ATTR_TRANSITION, ColorMode as ColorMode, ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature, filter_supported_color_modes as filter_supported_color_modes
11
+ from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT as ATTR_EFFECT, ATTR_FLASH as ATTR_FLASH, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_TRANSITION as ATTR_TRANSITION, ColorMode as ColorMode, DEFAULT_MAX_KELVIN as DEFAULT_MAX_KELVIN, DEFAULT_MIN_KELVIN as DEFAULT_MIN_KELVIN, ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature, filter_supported_color_modes as filter_supported_color_modes
12
12
  from homeassistant.const import CONF_NAME as CONF_NAME, CONF_OPTIMISTIC as CONF_OPTIMISTIC, CONF_STATE_TEMPLATE as CONF_STATE_TEMPLATE, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON
13
13
  from homeassistant.core import callback as callback
14
14
  from homeassistant.helpers.restore_state import RestoreEntity as RestoreEntity
@@ -46,8 +46,8 @@ class MqttLightTemplate(MqttEntity, LightEntity, RestoreEntity):
46
46
  _topics: dict[str, str | None]
47
47
  @staticmethod
48
48
  def config_schema() -> VolSchemaType: ...
49
- _attr_max_mireds: Incomplete
50
- _attr_min_mireds: Incomplete
49
+ _attr_min_color_temp_kelvin: Incomplete
50
+ _attr_max_color_temp_kelvin: Incomplete
51
51
  _attr_effect_list: Incomplete
52
52
  _attr_assumed_state: Incomplete
53
53
  _attr_supported_color_modes: Incomplete
@@ -57,7 +57,7 @@ class MqttLightTemplate(MqttEntity, LightEntity, RestoreEntity):
57
57
  def _update_color_mode(self) -> None: ...
58
58
  _attr_is_on: bool
59
59
  _attr_brightness: Incomplete
60
- _attr_color_temp: Incomplete
60
+ _attr_color_temp_kelvin: Incomplete
61
61
  _attr_hs_color: Incomplete
62
62
  _attr_effect: Incomplete
63
63
  def _state_received(self, msg: ReceiveMessage) -> None: ...
@@ -33,7 +33,7 @@ class MqttSwitch(MqttEntity, SwitchEntity, RestoreEntity):
33
33
  _default_name = DEFAULT_NAME
34
34
  _entity_id_format: Incomplete
35
35
  _optimistic: bool
36
- _is_on_map: dict[str | bytes, bool | None]
36
+ _is_on_map: dict[str | bytes | bytearray, bool | None]
37
37
  _command_template: Callable[[PublishPayloadType], PublishPayloadType]
38
38
  _value_template: Callable[[ReceivePayloadType], ReceivePayloadType]
39
39
  @staticmethod
@@ -7,9 +7,9 @@ from .schemas import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA
7
7
  from .util import valid_publish_topic as valid_publish_topic
8
8
  from _typeshed import Incomplete
9
9
  from homeassistant.components import vacuum as vacuum
10
- from homeassistant.components.vacuum import ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, STATE_CLEANING as STATE_CLEANING, STATE_DOCKED as STATE_DOCKED, STATE_ERROR as STATE_ERROR, STATE_RETURNING as STATE_RETURNING, StateVacuumEntity as StateVacuumEntity, VacuumEntityFeature as VacuumEntityFeature
10
+ from homeassistant.components.vacuum import ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, StateVacuumEntity as StateVacuumEntity, VacuumActivity as VacuumActivity, VacuumEntityFeature as VacuumEntityFeature
11
11
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
12
- from homeassistant.const import ATTR_SUPPORTED_FEATURES as ATTR_SUPPORTED_FEATURES, CONF_NAME as CONF_NAME, STATE_IDLE as STATE_IDLE, STATE_PAUSED as STATE_PAUSED
12
+ from homeassistant.const import ATTR_SUPPORTED_FEATURES as ATTR_SUPPORTED_FEATURES, CONF_NAME as CONF_NAME
13
13
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
14
14
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
15
15
  from homeassistant.helpers.json import json_dumps as json_dumps
@@ -21,7 +21,13 @@ PARALLEL_UPDATES: int
21
21
  BATTERY: str
22
22
  FAN_SPEED: str
23
23
  STATE: str
24
- POSSIBLE_STATES: dict[str, str]
24
+ STATE_IDLE: str
25
+ STATE_DOCKED: str
26
+ STATE_ERROR: str
27
+ STATE_PAUSED: str
28
+ STATE_RETURNING: str
29
+ STATE_CLEANING: str
30
+ POSSIBLE_STATES: dict[str, VacuumActivity]
25
31
  CONF_SUPPORTED_FEATURES = ATTR_SUPPORTED_FEATURES
26
32
  CONF_PAYLOAD_TURN_ON: str
27
33
  CONF_PAYLOAD_TURN_OFF: str
@@ -77,7 +83,7 @@ class MqttStateVacuum(MqttEntity, StateVacuumEntity):
77
83
  _attr_fan_speed: Incomplete
78
84
  _attr_battery_level: Incomplete
79
85
  def _update_state_attributes(self, payload: dict[str, Any]) -> None: ...
80
- _attr_state: Incomplete
86
+ _attr_activity: Incomplete
81
87
  def _state_message_received(self, msg: ReceiveMessage) -> None: ...
82
88
  def _prepare_subscribe_topics(self) -> None: ...
83
89
  async def _subscribe_topics(self) -> None: ...
@@ -1,4 +1,5 @@
1
1
  import asyncio
2
+ from .actions import register_actions as register_actions
2
3
  from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
3
4
  from _typeshed import Incomplete
4
5
  from dataclasses import dataclass
@@ -8,12 +9,14 @@ from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant
8
9
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
9
10
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
10
11
  from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue, async_delete_issue as async_delete_issue
12
+ from homeassistant.helpers.typing import ConfigType as ConfigType
11
13
  from music_assistant_client import MusicAssistantClient
12
14
  from music_assistant_models.event import MassEvent as MassEvent
13
15
 
14
16
  PLATFORMS: Incomplete
15
17
  CONNECT_TIMEOUT: int
16
18
  LISTEN_READY_TIMEOUT: int
19
+ CONFIG_SCHEMA: Incomplete
17
20
  type MusicAssistantConfigEntry = ConfigEntry[MusicAssistantEntryData]
18
21
 
19
22
  @dataclass
@@ -22,6 +25,7 @@ class MusicAssistantEntryData:
22
25
  listen_task: asyncio.Task
23
26
  def __init__(self, mass, listen_task) -> None: ...
24
27
 
28
+ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
25
29
  async def async_setup_entry(hass: HomeAssistant, entry: MusicAssistantConfigEntry) -> bool: ...
26
30
  async def _client_listen(hass: HomeAssistant, entry: ConfigEntry, mass: MusicAssistantClient, init_ready: asyncio.Event) -> None: ...
27
31
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -0,0 +1,18 @@
1
+ from . import MusicAssistantConfigEntry as MusicAssistantConfigEntry
2
+ from .const import ATTR_ALBUMS as ATTR_ALBUMS, ATTR_ALBUM_ARTISTS_ONLY as ATTR_ALBUM_ARTISTS_ONLY, ATTR_ALBUM_TYPE as ATTR_ALBUM_TYPE, ATTR_ARTISTS as ATTR_ARTISTS, ATTR_CONFIG_ENTRY_ID as ATTR_CONFIG_ENTRY_ID, ATTR_FAVORITE as ATTR_FAVORITE, ATTR_ITEMS as ATTR_ITEMS, ATTR_LIBRARY_ONLY as ATTR_LIBRARY_ONLY, ATTR_LIMIT as ATTR_LIMIT, ATTR_MEDIA_TYPE as ATTR_MEDIA_TYPE, ATTR_OFFSET as ATTR_OFFSET, ATTR_ORDER_BY as ATTR_ORDER_BY, ATTR_PLAYLISTS as ATTR_PLAYLISTS, ATTR_RADIO as ATTR_RADIO, ATTR_SEARCH as ATTR_SEARCH, ATTR_SEARCH_ALBUM as ATTR_SEARCH_ALBUM, ATTR_SEARCH_ARTIST as ATTR_SEARCH_ARTIST, ATTR_SEARCH_NAME as ATTR_SEARCH_NAME, ATTR_TRACKS as ATTR_TRACKS, DOMAIN as DOMAIN
3
+ from .schemas import LIBRARY_RESULTS_SCHEMA as LIBRARY_RESULTS_SCHEMA, SEARCH_RESULT_SCHEMA as SEARCH_RESULT_SCHEMA, media_item_dict_from_mass_item as media_item_dict_from_mass_item
4
+ from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
5
+ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, ServiceResponse as ServiceResponse, SupportsResponse as SupportsResponse, callback as callback
6
+ from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
7
+ from music_assistant_client import MusicAssistantClient as MusicAssistantClient
8
+
9
+ SERVICE_SEARCH: str
10
+ SERVICE_GET_LIBRARY: str
11
+ DEFAULT_OFFSET: int
12
+ DEFAULT_LIMIT: int
13
+ DEFAULT_SORT_ORDER: str
14
+
15
+ def get_music_assistant_client(hass: HomeAssistant, config_entry_id: str) -> MusicAssistantClient: ...
16
+ def register_actions(hass: HomeAssistant) -> None: ...
17
+ async def handle_search(call: ServiceCall) -> ServiceResponse: ...
18
+ async def handle_get_library(call: ServiceCall) -> ServiceResponse: ...
@@ -9,4 +9,52 @@ ATTR_GROUP_PARENTS: str
9
9
  ATTR_MASS_PLAYER_TYPE: str
10
10
  ATTR_ACTIVE_QUEUE: str
11
11
  ATTR_STREAM_TITLE: str
12
+ ATTR_MEDIA_TYPE: str
13
+ ATTR_SEARCH_NAME: str
14
+ ATTR_SEARCH_ARTIST: str
15
+ ATTR_SEARCH_ALBUM: str
16
+ ATTR_LIMIT: str
17
+ ATTR_LIBRARY_ONLY: str
18
+ ATTR_FAVORITE: str
19
+ ATTR_SEARCH: str
20
+ ATTR_OFFSET: str
21
+ ATTR_ORDER_BY: str
22
+ ATTR_ALBUM_TYPE: str
23
+ ATTR_ALBUM_ARTISTS_ONLY: str
24
+ ATTR_CONFIG_ENTRY_ID: str
25
+ ATTR_URI: str
26
+ ATTR_IMAGE: str
27
+ ATTR_VERSION: str
28
+ ATTR_ARTISTS: str
29
+ ATTR_ALBUMS: str
30
+ ATTR_TRACKS: str
31
+ ATTR_PLAYLISTS: str
32
+ ATTR_RADIO: str
33
+ ATTR_ITEMS: str
34
+ ATTR_RADIO_MODE: str
35
+ ATTR_MEDIA_ID: str
36
+ ATTR_ARTIST: str
37
+ ATTR_ALBUM: str
38
+ ATTR_URL: str
39
+ ATTR_USE_PRE_ANNOUNCE: str
40
+ ATTR_ANNOUNCE_VOLUME: str
41
+ ATTR_SOURCE_PLAYER: str
42
+ ATTR_AUTO_PLAY: str
43
+ ATTR_QUEUE_ID: str
44
+ ATTR_ACTIVE: str
45
+ ATTR_SHUFFLE_ENABLED: str
46
+ ATTR_REPEAT_MODE: str
47
+ ATTR_CURRENT_INDEX: str
48
+ ATTR_ELAPSED_TIME: str
49
+ ATTR_CURRENT_ITEM: str
50
+ ATTR_NEXT_ITEM: str
51
+ ATTR_QUEUE_ITEM_ID: str
52
+ ATTR_DURATION: str
53
+ ATTR_MEDIA_ITEM: str
54
+ ATTR_STREAM_DETAILS: str
55
+ ATTR_CONTENT_TYPE: str
56
+ ATTR_SAMPLE_RATE: str
57
+ ATTR_BIT_DEPTH: str
58
+ ATTR_PROVIDER: str
59
+ ATTR_ITEM_ID: str
12
60
  LOGGER: Incomplete
@@ -1,13 +1,14 @@
1
1
  from . import MusicAssistantConfigEntry as MusicAssistantConfigEntry
2
- from .const import ATTR_ACTIVE_QUEUE as ATTR_ACTIVE_QUEUE, ATTR_MASS_PLAYER_TYPE as ATTR_MASS_PLAYER_TYPE, DOMAIN as DOMAIN
2
+ from .const import ATTR_ACTIVE as ATTR_ACTIVE, ATTR_ACTIVE_QUEUE as ATTR_ACTIVE_QUEUE, ATTR_ALBUM as ATTR_ALBUM, ATTR_ANNOUNCE_VOLUME as ATTR_ANNOUNCE_VOLUME, ATTR_ARTIST as ATTR_ARTIST, ATTR_AUTO_PLAY as ATTR_AUTO_PLAY, ATTR_CURRENT_INDEX as ATTR_CURRENT_INDEX, ATTR_CURRENT_ITEM as ATTR_CURRENT_ITEM, ATTR_ELAPSED_TIME as ATTR_ELAPSED_TIME, ATTR_ITEMS as ATTR_ITEMS, ATTR_MASS_PLAYER_TYPE as ATTR_MASS_PLAYER_TYPE, ATTR_MEDIA_ID as ATTR_MEDIA_ID, ATTR_MEDIA_TYPE as ATTR_MEDIA_TYPE, ATTR_NEXT_ITEM as ATTR_NEXT_ITEM, ATTR_QUEUE_ID as ATTR_QUEUE_ID, ATTR_RADIO_MODE as ATTR_RADIO_MODE, ATTR_REPEAT_MODE as ATTR_REPEAT_MODE, ATTR_SHUFFLE_ENABLED as ATTR_SHUFFLE_ENABLED, ATTR_SOURCE_PLAYER as ATTR_SOURCE_PLAYER, ATTR_URL as ATTR_URL, ATTR_USE_PRE_ANNOUNCE as ATTR_USE_PRE_ANNOUNCE, DOMAIN as DOMAIN
3
3
  from .entity import MusicAssistantEntity as MusicAssistantEntity
4
4
  from .media_browser import async_browse_media as async_browse_media
5
+ from .schemas import QUEUE_DETAILS_SCHEMA as QUEUE_DETAILS_SCHEMA, queue_item_dict_from_mass_item as queue_item_dict_from_mass_item
5
6
  from _typeshed import Incomplete
6
- from collections.abc import Awaitable, Callable as Callable, Coroutine, Mapping
7
+ from collections.abc import Callable as Callable, Coroutine, Mapping
7
8
  from homeassistant.components import media_source as media_source
8
9
  from homeassistant.components.media_player import ATTR_MEDIA_ENQUEUE as ATTR_MEDIA_ENQUEUE, ATTR_MEDIA_EXTRA as ATTR_MEDIA_EXTRA, BrowseMedia as BrowseMedia, MediaPlayerDeviceClass as MediaPlayerDeviceClass, MediaPlayerEnqueue as MediaPlayerEnqueue, MediaPlayerEntity as MediaPlayerEntity, MediaPlayerEntityFeature as MediaPlayerEntityFeature, MediaPlayerState as MediaPlayerState, RepeatMode as RepeatMode, async_process_play_media_url as async_process_play_media_url
9
- from homeassistant.const import STATE_OFF as STATE_OFF
10
- from homeassistant.core import HomeAssistant as HomeAssistant
10
+ from homeassistant.const import ATTR_NAME as ATTR_NAME, STATE_OFF as STATE_OFF
11
+ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceResponse as ServiceResponse, SupportsResponse as SupportsResponse
11
12
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
12
13
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback, async_get_current_platform as async_get_current_platform
13
14
  from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp
@@ -16,25 +17,16 @@ from music_assistant_models.enums import MediaType, QueueOption
16
17
  from music_assistant_models.event import MassEvent as MassEvent
17
18
  from music_assistant_models.player import Player as Player
18
19
  from music_assistant_models.player_queue import PlayerQueue as PlayerQueue
19
- from typing import Any
20
+ from typing import Any, Concatenate
20
21
 
21
22
  SUPPORTED_FEATURES: Incomplete
22
23
  QUEUE_OPTION_MAP: Incomplete
23
24
  SERVICE_PLAY_MEDIA_ADVANCED: str
24
25
  SERVICE_PLAY_ANNOUNCEMENT: str
25
26
  SERVICE_TRANSFER_QUEUE: str
26
- ATTR_RADIO_MODE: str
27
- ATTR_MEDIA_ID: str
28
- ATTR_MEDIA_TYPE: str
29
- ATTR_ARTIST: str
30
- ATTR_ALBUM: str
31
- ATTR_URL: str
32
- ATTR_USE_PRE_ANNOUNCE: str
33
- ATTR_ANNOUNCE_VOLUME: str
34
- ATTR_SOURCE_PLAYER: str
35
- ATTR_AUTO_PLAY: str
27
+ SERVICE_GET_QUEUE: str
36
28
 
37
- def catch_musicassistant_error[_R, **P](func: Callable[..., Awaitable[_R]]) -> Callable[..., Coroutine[Any, Any, _R | None]]: ...
29
+ def catch_musicassistant_error[_R, **P](func: Callable[Concatenate[MusicAssistantPlayer, P], Coroutine[Any, Any, _R]]) -> Callable[Concatenate[MusicAssistantPlayer, P], Coroutine[Any, Any, _R]]: ...
38
30
  async def async_setup_entry(hass: HomeAssistant, entry: MusicAssistantConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
39
31
 
40
32
  class MusicAssistantPlayer(MusicAssistantEntity, MediaPlayerEntity):
@@ -77,6 +69,7 @@ class MusicAssistantPlayer(MusicAssistantEntity, MediaPlayerEntity):
77
69
  async def _async_handle_play_media(self, media_id: list[str], artist: str | None = None, album: str | None = None, enqueue: MediaPlayerEnqueue | QueueOption | None = None, radio_mode: bool | None = None, media_type: str | None = None) -> None: ...
78
70
  async def _async_handle_play_announcement(self, url: str, use_pre_announce: bool | None = None, announce_volume: int | None = None) -> None: ...
79
71
  async def _async_handle_transfer_queue(self, source_player: str | None = None, auto_play: bool | None = None) -> None: ...
72
+ async def _async_handle_get_queue(self) -> ServiceResponse: ...
80
73
  async def async_browse_media(self, media_content_type: MediaType | str | None = None, media_content_id: str | None = None) -> BrowseMedia: ...
81
74
  _attr_media_image_url: Incomplete
82
75
  def _update_media_image_url(self, player: Player, queue: PlayerQueue | None) -> None: ...
@@ -0,0 +1,20 @@
1
+ from .const import ATTR_ACTIVE as ATTR_ACTIVE, ATTR_ALBUM as ATTR_ALBUM, ATTR_ALBUMS as ATTR_ALBUMS, ATTR_ARTISTS as ATTR_ARTISTS, ATTR_BIT_DEPTH as ATTR_BIT_DEPTH, ATTR_CONTENT_TYPE as ATTR_CONTENT_TYPE, ATTR_CURRENT_INDEX as ATTR_CURRENT_INDEX, ATTR_CURRENT_ITEM as ATTR_CURRENT_ITEM, ATTR_DURATION as ATTR_DURATION, ATTR_ELAPSED_TIME as ATTR_ELAPSED_TIME, ATTR_IMAGE as ATTR_IMAGE, ATTR_ITEMS as ATTR_ITEMS, ATTR_ITEM_ID as ATTR_ITEM_ID, ATTR_LIMIT as ATTR_LIMIT, ATTR_MEDIA_ITEM as ATTR_MEDIA_ITEM, ATTR_MEDIA_TYPE as ATTR_MEDIA_TYPE, ATTR_NEXT_ITEM as ATTR_NEXT_ITEM, ATTR_OFFSET as ATTR_OFFSET, ATTR_ORDER_BY as ATTR_ORDER_BY, ATTR_PLAYLISTS as ATTR_PLAYLISTS, ATTR_PROVIDER as ATTR_PROVIDER, ATTR_QUEUE_ID as ATTR_QUEUE_ID, ATTR_QUEUE_ITEM_ID as ATTR_QUEUE_ITEM_ID, ATTR_RADIO as ATTR_RADIO, ATTR_REPEAT_MODE as ATTR_REPEAT_MODE, ATTR_SAMPLE_RATE as ATTR_SAMPLE_RATE, ATTR_SHUFFLE_ENABLED as ATTR_SHUFFLE_ENABLED, ATTR_STREAM_DETAILS as ATTR_STREAM_DETAILS, ATTR_STREAM_TITLE as ATTR_STREAM_TITLE, ATTR_TRACKS as ATTR_TRACKS, ATTR_URI as ATTR_URI, ATTR_VERSION as ATTR_VERSION
2
+ from _typeshed import Incomplete
3
+ from homeassistant.const import ATTR_NAME as ATTR_NAME
4
+ from music_assistant_client import MusicAssistantClient as MusicAssistantClient
5
+ from music_assistant_models.media_items import ItemMapping as ItemMapping, MediaItemType as MediaItemType
6
+ from music_assistant_models.queue_item import QueueItem as QueueItem
7
+ from typing import Any
8
+
9
+ MEDIA_ITEM_SCHEMA: Incomplete
10
+
11
+ def media_item_dict_from_mass_item(mass: MusicAssistantClient, item: MediaItemType | ItemMapping | None) -> dict[str, Any] | None: ...
12
+
13
+ SEARCH_RESULT_SCHEMA: Incomplete
14
+ LIBRARY_RESULTS_SCHEMA: Incomplete
15
+ AUDIO_FORMAT_SCHEMA: Incomplete
16
+ QUEUE_ITEM_SCHEMA: Incomplete
17
+
18
+ def queue_item_dict_from_mass_item(mass: MusicAssistantClient, item: QueueItem | None) -> dict[str, Any] | None: ...
19
+
20
+ QUEUE_DETAILS_SCHEMA: Incomplete
@@ -21,7 +21,6 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, asyn
21
21
 
22
22
  class MySensorsHVAC(MySensorsChildEntity, ClimateEntity):
23
23
  _attr_hvac_modes = OPERATION_LIST
24
- _enable_turn_on_off_backwards_compatibility: bool
25
24
  @property
26
25
  def supported_features(self) -> ClimateEntityFeature: ...
27
26
  @property
@@ -1,6 +1,7 @@
1
1
  from .api import AsyncConfigEntryAuth as AsyncConfigEntryAuth
2
2
  from .const import DOMAIN as DOMAIN, OAUTH2_SCOPES as OAUTH2_SCOPES
3
3
  from .coordinator import MyUplinkDataCoordinator as MyUplinkDataCoordinator
4
+ from _typeshed import Incomplete
4
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
6
  from homeassistant.const import Platform as Platform
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
@@ -8,10 +9,12 @@ from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFai
8
9
  from homeassistant.helpers import aiohttp_client as aiohttp_client, config_entry_oauth2_flow as config_entry_oauth2_flow
9
10
  from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
10
11
 
12
+ _LOGGER: Incomplete
11
13
  PLATFORMS: list[Platform]
12
14
  type MyUplinkConfigEntry = ConfigEntry[MyUplinkDataCoordinator]
13
15
 
14
16
  async def async_setup_entry(hass: HomeAssistant, config_entry: MyUplinkConfigEntry) -> bool: ...
15
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
16
- def create_devices(hass: HomeAssistant, config_entry: ConfigEntry, coordinator: MyUplinkDataCoordinator) -> None: ...
17
+ async def async_unload_entry(hass: HomeAssistant, entry: MyUplinkConfigEntry) -> bool: ...
18
+ def create_devices(hass: HomeAssistant, config_entry: MyUplinkConfigEntry, coordinator: MyUplinkDataCoordinator) -> None: ...
17
19
  async def async_remove_config_entry_device(hass: HomeAssistant, config_entry: MyUplinkConfigEntry, device_entry: DeviceEntry) -> bool: ...
20
+ async def async_migrate_entry(hass: HomeAssistant, config_entry: MyUplinkConfigEntry) -> bool: ...
@@ -28,12 +28,12 @@ class MyUplinkDevicePointBinarySensor(MyUplinkEntity, BinarySensorEntity):
28
28
 
29
29
  class MyUplinkDeviceBinarySensor(MyUplinkEntity, BinarySensorEntity):
30
30
  entity_description: Incomplete
31
- def __init__(self, coordinator: MyUplinkDataCoordinator, device_id: str, entity_description: BinarySensorEntityDescription | None, unique_id_suffix: str) -> None: ...
31
+ def __init__(self, coordinator: MyUplinkDataCoordinator, device_id: str, entity_description: BinarySensorEntityDescription, unique_id_suffix: str) -> None: ...
32
32
  @property
33
33
  def is_on(self) -> bool: ...
34
34
 
35
35
  class MyUplinkSystemBinarySensor(MyUplinkSystemEntity, BinarySensorEntity):
36
36
  entity_description: Incomplete
37
- def __init__(self, coordinator: MyUplinkDataCoordinator, system_id: str, device_id: str, entity_description: BinarySensorEntityDescription | None, unique_id_suffix: str) -> None: ...
37
+ def __init__(self, coordinator: MyUplinkDataCoordinator, system_id: str, device_id: str, entity_description: BinarySensorEntityDescription, unique_id_suffix: str) -> None: ...
38
38
  @property
39
39
  def is_on(self) -> bool | None: ...
@@ -1,11 +1,13 @@
1
1
  import logging
2
2
  from .const import DOMAIN as DOMAIN, OAUTH2_SCOPES as OAUTH2_SCOPES
3
3
  from collections.abc import Mapping
4
- from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH
4
+ from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
5
5
  from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
6
6
  from typing import Any
7
7
 
8
8
  class OAuth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, domain=DOMAIN):
9
+ VERSION: int
10
+ MINOR_VERSION: int
9
11
  DOMAIN = DOMAIN
10
12
  @property
11
13
  def logger(self) -> logging.Logger: ...
@@ -13,4 +15,5 @@ class OAuth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, doma
13
15
  def extra_authorize_data(self) -> dict[str, Any]: ...
14
16
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
15
17
  async def async_step_reauth_confirm(self, user_input: Mapping[str, Any] | None = None) -> ConfigFlowResult: ...
18
+ async def async_step_reconfigure(self, user_input: Mapping[str, Any] | None = None) -> ConfigFlowResult: ...
16
19
  async def async_oauth_create_entry(self, data: dict) -> ConfigFlowResult: ...
@@ -1,5 +1,5 @@
1
1
  from . import MyUplinkConfigEntry as MyUplinkConfigEntry, MyUplinkDataCoordinator as MyUplinkDataCoordinator
2
- from .const import F_SERIES as F_SERIES
2
+ from .const import DOMAIN as DOMAIN, F_SERIES as F_SERIES
3
3
  from .entity import MyUplinkEntity as MyUplinkEntity
4
4
  from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity, transform_model_series as transform_model_series
5
5
  from _typeshed import Incomplete
@@ -21,7 +21,7 @@ class MyUplinkNumber(MyUplinkEntity, NumberEntity):
21
21
  _attr_name: Incomplete
22
22
  _attr_native_min_value: Incomplete
23
23
  _attr_native_max_value: Incomplete
24
- _attr_step_value: Incomplete
24
+ _attr_native_step: Incomplete
25
25
  entity_description: Incomplete
26
26
  def __init__(self, coordinator: MyUplinkDataCoordinator, device_id: str, device_point: DevicePoint, entity_description: NumberEntityDescription | None, unique_id_suffix: str) -> None: ...
27
27
  @property
@@ -1,8 +1,9 @@
1
1
  from . import MyUplinkConfigEntry as MyUplinkConfigEntry, MyUplinkDataCoordinator as MyUplinkDataCoordinator
2
+ from .const import DOMAIN as DOMAIN
2
3
  from .entity import MyUplinkEntity as MyUplinkEntity
3
4
  from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity
4
5
  from _typeshed import Incomplete
5
- from homeassistant.components.select import SelectEntity as SelectEntity, SelectEntityDescription as SelectEntityDescription
6
+ from homeassistant.components.select import SelectEntity as SelectEntity
6
7
  from homeassistant.const import Platform as Platform
7
8
  from homeassistant.core import HomeAssistant as HomeAssistant
8
9
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
@@ -17,7 +18,7 @@ class MyUplinkSelect(MyUplinkEntity, SelectEntity):
17
18
  _attr_options: Incomplete
18
19
  options_map: Incomplete
19
20
  options_rev: Incomplete
20
- def __init__(self, coordinator: MyUplinkDataCoordinator, device_id: str, device_point: DevicePoint, entity_description: SelectEntityDescription | None, unique_id_suffix: str) -> None: ...
21
+ def __init__(self, coordinator: MyUplinkDataCoordinator, device_id: str, device_point: DevicePoint, unique_id_suffix: str) -> None: ...
21
22
  @property
22
23
  def current_option(self) -> str | None: ...
23
24
  async def async_select_option(self, option: str) -> None: ...
@@ -1,5 +1,5 @@
1
1
  from . import MyUplinkConfigEntry as MyUplinkConfigEntry, MyUplinkDataCoordinator as MyUplinkDataCoordinator
2
- from .const import F_SERIES as F_SERIES
2
+ from .const import DOMAIN as DOMAIN, F_SERIES as F_SERIES
3
3
  from .entity import MyUplinkEntity as MyUplinkEntity
4
4
  from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity, transform_model_series as transform_model_series
5
5
  from _typeshed import Incomplete
@@ -2,7 +2,7 @@ from . import NanoleafConfigEntry as NanoleafConfigEntry
2
2
  from .coordinator import NanoleafCoordinator as NanoleafCoordinator
3
3
  from .entity import NanoleafEntity as NanoleafEntity
4
4
  from _typeshed import Incomplete
5
- from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_TEMP as ATTR_COLOR_TEMP, ATTR_EFFECT as ATTR_EFFECT, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_TRANSITION as ATTR_TRANSITION, ColorMode as ColorMode, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature
5
+ from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT as ATTR_EFFECT, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_TRANSITION as ATTR_TRANSITION, ColorMode as ColorMode, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
8
  from typing import Any
@@ -18,13 +18,13 @@ class NanoleafLight(NanoleafEntity, LightEntity):
18
18
  _attr_name: Incomplete
19
19
  _attr_translation_key: str
20
20
  _attr_unique_id: Incomplete
21
- _attr_min_mireds: Incomplete
22
- _attr_max_mireds: Incomplete
21
+ _attr_max_color_temp_kelvin: Incomplete
22
+ _attr_min_color_temp_kelvin: Incomplete
23
23
  def __init__(self, coordinator: NanoleafCoordinator) -> None: ...
24
24
  @property
25
25
  def brightness(self) -> int: ...
26
26
  @property
27
- def color_temp(self) -> int: ...
27
+ def color_temp_kelvin(self) -> int | None: ...
28
28
  @property
29
29
  def effect(self) -> str | None: ...
30
30
  @property
@@ -2,9 +2,9 @@ from .const import ACTION as ACTION, ALERTS as ALERTS, ERRORS as ERRORS, MODE as
2
2
  from .entity import NeatoEntity as NeatoEntity
3
3
  from .hub import NeatoHub as NeatoHub
4
4
  from _typeshed import Incomplete
5
- from homeassistant.components.vacuum import ATTR_STATUS as ATTR_STATUS, STATE_CLEANING as STATE_CLEANING, STATE_DOCKED as STATE_DOCKED, STATE_ERROR as STATE_ERROR, STATE_RETURNING as STATE_RETURNING, StateVacuumEntity as StateVacuumEntity, VacuumEntityFeature as VacuumEntityFeature
5
+ from homeassistant.components.vacuum import ATTR_STATUS as ATTR_STATUS, StateVacuumEntity as StateVacuumEntity, VacuumActivity as VacuumActivity, VacuumEntityFeature as VacuumEntityFeature
6
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
- from homeassistant.const import ATTR_MODE as ATTR_MODE, STATE_IDLE as STATE_IDLE, STATE_PAUSED as STATE_PAUSED
7
+ from homeassistant.const import ATTR_MODE as ATTR_MODE
8
8
  from homeassistant.core import HomeAssistant as HomeAssistant
9
9
  from homeassistant.helpers import entity_platform as entity_platform
10
10
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
@@ -54,7 +54,7 @@ class NeatoConnectedVacuum(NeatoEntity, StateVacuumEntity):
54
54
  _robot_boundaries: Incomplete
55
55
  _robot_stats: Incomplete
56
56
  def __init__(self, neato: NeatoHub, robot: Robot, mapdata: dict[str, Any] | None, persistent_maps: dict[str, Any] | None) -> None: ...
57
- _attr_state: Incomplete
57
+ _attr_activity: Incomplete
58
58
  _attr_battery_level: Incomplete
59
59
  def update(self) -> None: ...
60
60
  @property
@@ -1,8 +1,9 @@
1
1
  import abc
2
2
  from . import api as api
3
- from .const import CONF_PROJECT_ID as CONF_PROJECT_ID, CONF_SUBSCRIBER_ID as CONF_SUBSCRIBER_ID, CONF_SUBSCRIBER_ID_IMPORTED as CONF_SUBSCRIBER_ID_IMPORTED, CONF_SUBSCRIPTION_NAME as CONF_SUBSCRIPTION_NAME, DATA_DEVICE_MANAGER as DATA_DEVICE_MANAGER, DATA_SDM as DATA_SDM, DATA_SUBSCRIBER as DATA_SUBSCRIBER, DOMAIN as DOMAIN
3
+ from .const import CONF_PROJECT_ID as CONF_PROJECT_ID, CONF_SUBSCRIBER_ID as CONF_SUBSCRIBER_ID, CONF_SUBSCRIBER_ID_IMPORTED as CONF_SUBSCRIBER_ID_IMPORTED, CONF_SUBSCRIPTION_NAME as CONF_SUBSCRIPTION_NAME, DATA_SDM as DATA_SDM, DOMAIN as DOMAIN
4
4
  from .events import EVENT_NAME_MAP as EVENT_NAME_MAP, NEST_EVENT as NEST_EVENT
5
5
  from .media_source import EVENT_MEDIA_API_URL_FORMAT as EVENT_MEDIA_API_URL_FORMAT, EVENT_THUMBNAIL_URL_FORMAT as EVENT_THUMBNAIL_URL_FORMAT, async_get_media_event_store as async_get_media_event_store, async_get_media_source_devices as async_get_media_source_devices, async_get_transcoder as async_get_transcoder
6
+ from .types import NestConfigEntry as NestConfigEntry, NestData as NestData
6
7
  from _typeshed import Incomplete
7
8
  from abc import ABC, abstractmethod
8
9
  from aiohttp import web
@@ -10,7 +11,6 @@ from collections.abc import Awaitable, Callable as Callable
10
11
  from google_nest_sdm.device import Device as Device
11
12
  from google_nest_sdm.event import EventMessage as EventMessage
12
13
  from google_nest_sdm.event_media import Media as Media
13
- from google_nest_sdm.traits import TraitType
14
14
  from homeassistant.auth.permissions.const import POLICY_READ as POLICY_READ
15
15
  from homeassistant.components.camera import Image as Image, img_util as img_util
16
16
  from homeassistant.components.http import KEY_HASS_USER as KEY_HASS_USER
@@ -35,12 +35,12 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
35
35
  class SignalUpdateCallback:
36
36
  _hass: Incomplete
37
37
  _config_reload_cb: Incomplete
38
- _config_entry_id: Incomplete
39
- def __init__(self, hass: HomeAssistant, config_reload_cb: Callable[[], Awaitable[None]], config_entry_id: str) -> None: ...
38
+ _config_entry: Incomplete
39
+ def __init__(self, hass: HomeAssistant, config_reload_cb: Callable[[], Awaitable[None]], config_entry: NestConfigEntry) -> None: ...
40
40
  async def async_handle_event(self, event_message: EventMessage) -> None: ...
41
- def _supported_traits(self, device_id: str) -> list[TraitType]: ...
41
+ def _supported_traits(self, device_id: str) -> list[str]: ...
42
42
 
43
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
43
+ async def async_setup_entry(hass: HomeAssistant, entry: NestConfigEntry) -> bool: ...
44
44
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
45
45
  async def async_remove_entry(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
46
46
 
@@ -1,15 +1,13 @@
1
1
  import datetime
2
- from .const import DATA_DEVICE_MANAGER as DATA_DEVICE_MANAGER, DOMAIN as DOMAIN
3
2
  from .device_info import NestDeviceInfo as NestDeviceInfo
3
+ from .types import NestConfigEntry as NestConfigEntry
4
4
  from _typeshed import Incomplete
5
5
  from abc import ABC
6
6
  from collections.abc import Awaitable, Callable as Callable
7
7
  from google_nest_sdm.camera_traits import CameraLiveStreamTrait, RtspStream as RtspStream, WebRtcStream as WebRtcStream
8
8
  from google_nest_sdm.device import Device as Device
9
- from google_nest_sdm.device_manager import DeviceManager as DeviceManager
10
9
  from homeassistant.components.camera import Camera as Camera, CameraEntityFeature as CameraEntityFeature, WebRTCAnswer as WebRTCAnswer, WebRTCClientConfiguration as WebRTCClientConfiguration, WebRTCSendMessage as WebRTCSendMessage
11
10
  from homeassistant.components.stream import CONF_EXTRA_PART_WAIT_TIME as CONF_EXTRA_PART_WAIT_TIME
12
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
13
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
14
12
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
15
13
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -24,7 +22,7 @@ MIN_REFRESH_BACKOFF_INTERVAL: Incomplete
24
22
  MAX_REFRESH_BACKOFF_INTERVAL: Incomplete
25
23
  BACKOFF_MULTIPLIER: float
26
24
 
27
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
25
+ async def async_setup_entry(hass: HomeAssistant, entry: NestConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
28
26
 
29
27
  class StreamRefresh:
30
28
  _hass: Incomplete
@@ -1,11 +1,9 @@
1
- from .const import DATA_DEVICE_MANAGER as DATA_DEVICE_MANAGER, DOMAIN as DOMAIN
2
1
  from .device_info import NestDeviceInfo as NestDeviceInfo
2
+ from .types import NestConfigEntry as NestConfigEntry
3
3
  from _typeshed import Incomplete
4
4
  from google_nest_sdm.device import Device as Device
5
- from google_nest_sdm.device_manager import DeviceManager as DeviceManager
6
5
  from google_nest_sdm.thermostat_traits import ThermostatEcoTrait, ThermostatTemperatureSetpointTrait
7
6
  from homeassistant.components.climate import ATTR_HVAC_MODE as ATTR_HVAC_MODE, ATTR_TARGET_TEMP_HIGH as ATTR_TARGET_TEMP_HIGH, ATTR_TARGET_TEMP_LOW as ATTR_TARGET_TEMP_LOW, ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, FAN_OFF as FAN_OFF, FAN_ON as FAN_ON, HVACAction as HVACAction, HVACMode as HVACMode, PRESET_ECO as PRESET_ECO, PRESET_NONE as PRESET_NONE
8
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
7
  from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, UnitOfTemperature as UnitOfTemperature
10
8
  from homeassistant.core import HomeAssistant as HomeAssistant
11
9
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
@@ -27,7 +25,7 @@ MIN_TEMP: int
27
25
  MAX_TEMP: int
28
26
  MIN_TEMP_RANGE: float
29
27
 
30
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
28
+ async def async_setup_entry(hass: HomeAssistant, entry: NestConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
31
29
 
32
30
  class ThermostatEntity(ClimateEntity):
33
31
  _attr_min_temp = MIN_TEMP
@@ -35,7 +33,6 @@ class ThermostatEntity(ClimateEntity):
35
33
  _attr_has_entity_name: bool
36
34
  _attr_should_poll: bool
37
35
  _attr_name: Incomplete
38
- _enable_turn_on_off_backwards_compatibility: bool
39
36
  _device: Incomplete
40
37
  _device_info: Incomplete
41
38
  _attr_unique_id: Incomplete
@@ -2,8 +2,6 @@ from _typeshed import Incomplete
2
2
 
3
3
  DOMAIN: str
4
4
  DATA_SDM: str
5
- DATA_SUBSCRIBER: str
6
- DATA_DEVICE_MANAGER: str
7
5
  WEB_AUTH_DOMAIN = DOMAIN
8
6
  INSTALLED_AUTH_DOMAIN: Incomplete
9
7
  CONF_PROJECT_ID: str
@@ -1,7 +1,8 @@
1
- from .const import CONNECTIVITY_TRAIT_OFFLINE as CONNECTIVITY_TRAIT_OFFLINE, DATA_DEVICE_MANAGER as DATA_DEVICE_MANAGER, DOMAIN as DOMAIN
1
+ from .const import CONNECTIVITY_TRAIT_OFFLINE as CONNECTIVITY_TRAIT_OFFLINE, DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Mapping
4
4
  from google_nest_sdm.device import Device as Device
5
+ from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
5
6
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
6
7
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
7
8