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
@@ -1,4 +1,4 @@
1
- from .const import CONF_AC_MODE as CONF_AC_MODE, CONF_COLD_TOLERANCE as CONF_COLD_TOLERANCE, CONF_HEATER as CONF_HEATER, CONF_HOT_TOLERANCE as CONF_HOT_TOLERANCE, CONF_MIN_DUR as CONF_MIN_DUR, CONF_PRESETS as CONF_PRESETS, CONF_SENSOR as CONF_SENSOR, DEFAULT_TOLERANCE as DEFAULT_TOLERANCE, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
1
+ from .const import CONF_AC_MODE as CONF_AC_MODE, CONF_COLD_TOLERANCE as CONF_COLD_TOLERANCE, CONF_HEATER as CONF_HEATER, CONF_HOT_TOLERANCE as CONF_HOT_TOLERANCE, CONF_MAX_TEMP as CONF_MAX_TEMP, CONF_MIN_DUR as CONF_MIN_DUR, CONF_MIN_TEMP as CONF_MIN_TEMP, CONF_PRESETS as CONF_PRESETS, CONF_SENSOR as CONF_SENSOR, DEFAULT_TOLERANCE as DEFAULT_TOLERANCE, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Mapping
4
4
  from datetime import datetime, timedelta
@@ -20,8 +20,6 @@ _LOGGER: Incomplete
20
20
  DEFAULT_NAME: str
21
21
  CONF_INITIAL_HVAC_MODE: str
22
22
  CONF_KEEP_ALIVE: str
23
- CONF_MIN_TEMP: str
24
- CONF_MAX_TEMP: str
25
23
  CONF_PRECISION: str
26
24
  CONF_TARGET_TEMP: str
27
25
  CONF_TEMP_STEP: str
@@ -35,7 +33,6 @@ async def _async_setup_config(hass: HomeAssistant, config: Mapping[str, Any], un
35
33
 
36
34
  class GenericThermostat(ClimateEntity, RestoreEntity):
37
35
  _attr_should_poll: bool
38
- _enable_turn_on_off_backwards_compatibility: bool
39
36
  _attr_name: Incomplete
40
37
  heater_entity_id: Incomplete
41
38
  sensor_entity_id: Incomplete
@@ -1,4 +1,4 @@
1
- from .const import CONF_AC_MODE as CONF_AC_MODE, CONF_COLD_TOLERANCE as CONF_COLD_TOLERANCE, CONF_HEATER as CONF_HEATER, CONF_HOT_TOLERANCE as CONF_HOT_TOLERANCE, CONF_MIN_DUR as CONF_MIN_DUR, CONF_PRESETS as CONF_PRESETS, CONF_SENSOR as CONF_SENSOR, DEFAULT_TOLERANCE as DEFAULT_TOLERANCE, DOMAIN as DOMAIN
1
+ from .const import CONF_AC_MODE as CONF_AC_MODE, CONF_COLD_TOLERANCE as CONF_COLD_TOLERANCE, CONF_HEATER as CONF_HEATER, CONF_HOT_TOLERANCE as CONF_HOT_TOLERANCE, CONF_MAX_TEMP as CONF_MAX_TEMP, CONF_MIN_DUR as CONF_MIN_DUR, CONF_MIN_TEMP as CONF_MIN_TEMP, CONF_PRESETS as CONF_PRESETS, CONF_SENSOR as CONF_SENSOR, DEFAULT_TOLERANCE as DEFAULT_TOLERANCE, DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Mapping
4
4
  from homeassistant.components import fan as fan, switch as switch
@@ -8,7 +8,9 @@ CONF_AC_MODE: str
8
8
  CONF_COLD_TOLERANCE: str
9
9
  CONF_HEATER: str
10
10
  CONF_HOT_TOLERANCE: str
11
+ CONF_MAX_TEMP: str
11
12
  CONF_MIN_DUR: str
13
+ CONF_MIN_TEMP: str
12
14
  CONF_PRESETS: Incomplete
13
15
  CONF_SENSOR: str
14
16
  DEFAULT_TOLERANCE: float
@@ -21,7 +21,6 @@ def async_create_preview_fan(hass: HomeAssistant, name: str, validated_config: d
21
21
 
22
22
  class FanGroup(GroupEntity, FanEntity):
23
23
  _attr_available: bool
24
- _enable_turn_on_off_backwards_compatibility: bool
25
24
  _entity_ids: Incomplete
26
25
  _fans: Incomplete
27
26
  _percentage: Incomplete
@@ -4,7 +4,7 @@ from dataclasses import dataclass
4
4
  from homeassistant.components.alarm_control_panel import AlarmControlPanelState as AlarmControlPanelState
5
5
  from homeassistant.components.climate import HVACMode as HVACMode
6
6
  from homeassistant.components.lock import LockState as LockState
7
- from homeassistant.components.vacuum import STATE_CLEANING as STATE_CLEANING, STATE_ERROR as STATE_ERROR, STATE_RETURNING as STATE_RETURNING
7
+ from homeassistant.components.vacuum import VacuumActivity as VacuumActivity
8
8
  from homeassistant.components.water_heater import STATE_ECO as STATE_ECO, STATE_ELECTRIC as STATE_ELECTRIC, STATE_GAS as STATE_GAS, STATE_HEAT_PUMP as STATE_HEAT_PUMP, STATE_HIGH_DEMAND as STATE_HIGH_DEMAND, STATE_PERFORMANCE as STATE_PERFORMANCE
9
9
  from homeassistant.const import Platform as Platform, STATE_CLOSED as STATE_CLOSED, STATE_HOME as STATE_HOME, STATE_IDLE as STATE_IDLE, STATE_NOT_HOME as STATE_NOT_HOME, STATE_OFF as STATE_OFF, STATE_OK as STATE_OK, STATE_ON as STATE_ON, STATE_OPEN as STATE_OPEN, STATE_PAUSED as STATE_PAUSED, STATE_PLAYING as STATE_PLAYING, STATE_PROBLEM as STATE_PROBLEM
10
10
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
@@ -1,6 +1,6 @@
1
1
  from . import websocket_api as websocket_api
2
2
  from .const import DOMAIN as DOMAIN
3
- from .helpers import entities_may_have_state_changes_after as entities_may_have_state_changes_after, has_recorder_run_after as has_recorder_run_after
3
+ from .helpers import entities_may_have_state_changes_after as entities_may_have_state_changes_after, has_states_before as has_states_before
4
4
  from _typeshed import Incomplete
5
5
  from aiohttp import web
6
6
  from datetime import datetime as dt
@@ -1,8 +1,7 @@
1
1
  from collections.abc import Iterable
2
2
  from datetime import datetime as dt
3
3
  from homeassistant.components.recorder import get_instance as get_instance
4
- from homeassistant.components.recorder.models import process_timestamp as process_timestamp
5
4
  from homeassistant.core import HomeAssistant as HomeAssistant
6
5
 
7
6
  def entities_may_have_state_changes_after(hass: HomeAssistant, entity_ids: Iterable, start_time: dt, no_attributes: bool) -> bool: ...
8
- def has_recorder_run_after(hass: HomeAssistant, run_time: dt) -> bool: ...
7
+ def has_states_before(hass: HomeAssistant, run_time: dt) -> bool: ...
@@ -1,6 +1,6 @@
1
1
  import asyncio
2
2
  from .const import EVENT_COALESCE_TIME as EVENT_COALESCE_TIME, MAX_PENDING_HISTORY_STATES as MAX_PENDING_HISTORY_STATES
3
- from .helpers import entities_may_have_state_changes_after as entities_may_have_state_changes_after, has_recorder_run_after as has_recorder_run_after
3
+ from .helpers import entities_may_have_state_changes_after as entities_may_have_state_changes_after, has_states_before as has_states_before
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Callable as Callable, Iterable
6
6
  from dataclasses import dataclass
@@ -1,4 +1,4 @@
1
- from .const import CONF_PROVINCE as CONF_PROVINCE
1
+ from .const import CONF_CATEGORIES as CONF_CATEGORIES, CONF_PROVINCE as CONF_PROVINCE
2
2
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
3
3
  from homeassistant.const import CONF_COUNTRY as CONF_COUNTRY, Platform as Platform
4
4
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -7,4 +7,5 @@ from homeassistant.setup import SetupPhases as SetupPhases, async_pause_setup as
7
7
  PLATFORMS: list[Platform]
8
8
 
9
9
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
10
+ async def update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
10
11
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -1,4 +1,4 @@
1
- from .const import CONF_PROVINCE as CONF_PROVINCE, DOMAIN as DOMAIN
1
+ from .const import CONF_CATEGORIES as CONF_CATEGORIES, CONF_PROVINCE as CONF_PROVINCE, DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from datetime import datetime
4
4
  from holidays import HolidayBase as HolidayBase
@@ -10,7 +10,7 @@ from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntry
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
11
  from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time
12
12
 
13
- def _get_obj_holidays_and_language(country: str, province: str | None, language: str) -> tuple[HolidayBase, str]: ...
13
+ def _get_obj_holidays_and_language(country: str, province: str | None, language: str, selected_categories: list[str] | None) -> tuple[HolidayBase, str]: ...
14
14
  async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
15
15
 
16
16
  class HolidayCalendarEntity(CalendarEntity):
@@ -23,10 +23,11 @@ class HolidayCalendarEntity(CalendarEntity):
23
23
  _province: Incomplete
24
24
  _location: Incomplete
25
25
  _language: Incomplete
26
+ _categories: Incomplete
26
27
  _attr_unique_id: Incomplete
27
28
  _attr_device_info: Incomplete
28
29
  _obj_holidays: Incomplete
29
- def __init__(self, name: str, country: str, province: str | None, language: str, obj_holidays: HolidayBase, unique_id: str) -> None: ...
30
+ def __init__(self, name: str, country: str, province: str | None, language: str, categories: list[str] | None, obj_holidays: HolidayBase, unique_id: str) -> None: ...
30
31
  def get_next_interval(self, now: datetime) -> datetime: ...
31
32
  def _update_state_and_setup_listener(self) -> None: ...
32
33
  def point_in_time_listener(self, time_date: datetime) -> None: ...
@@ -1,16 +1,26 @@
1
- from .const import CONF_PROVINCE as CONF_PROVINCE, DOMAIN as DOMAIN
1
+ import voluptuous as vol
2
+ from .const import CONF_CATEGORIES as CONF_CATEGORIES, CONF_PROVINCE as CONF_PROVINCE, DOMAIN as DOMAIN
2
3
  from _typeshed import Incomplete
3
- from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
4
5
  from homeassistant.const import CONF_COUNTRY as CONF_COUNTRY
6
+ from homeassistant.core import callback as callback
5
7
  from homeassistant.helpers.selector import CountrySelector as CountrySelector, CountrySelectorConfig as CountrySelectorConfig, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode
6
8
  from typing import Any
7
9
 
8
10
  SUPPORTED_COUNTRIES: Incomplete
9
11
 
12
+ def get_optional_categories(country: str) -> list[str]: ...
13
+ def get_options_schema(country: str) -> vol.Schema: ...
14
+
10
15
  class HolidayConfigFlow(ConfigFlow, domain=DOMAIN):
11
16
  VERSION: int
12
17
  data: Incomplete
13
18
  def __init__(self) -> None: ...
19
+ @staticmethod
20
+ def async_get_options_flow(config_entry: ConfigEntry) -> HolidayOptionsFlowHandler: ...
14
21
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
15
- async def async_step_province(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
22
+ async def async_step_options(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
16
23
  async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
24
+
25
+ class HolidayOptionsFlowHandler(OptionsFlow):
26
+ async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -2,3 +2,4 @@ from typing import Final
2
2
 
3
3
  DOMAIN: Final[str]
4
4
  CONF_PROVINCE: Final[str]
5
+ CONF_CATEGORIES: Final[str]
@@ -3,11 +3,11 @@ from .const import DOMAIN as DOMAIN, FIRMWARE as FIRMWARE, RADIO_DEVICE as RADIO
3
3
  from .hardware import BOARD_NAME as BOARD_NAME
4
4
  from _typeshed import Incomplete
5
5
  from abc import ABC, abstractmethod
6
- from homeassistant.components.hassio import HassioAPIError as HassioAPIError, async_get_yellow_settings as async_get_yellow_settings, async_reboot_host as async_reboot_host, async_set_yellow_settings as async_set_yellow_settings
6
+ from homeassistant.components.hassio import HassioAPIError as HassioAPIError, async_get_yellow_settings as async_get_yellow_settings, async_set_yellow_settings as async_set_yellow_settings, get_supervisor_client as get_supervisor_client
7
7
  from homeassistant.components.homeassistant_hardware.firmware_config_flow import BaseFirmwareConfigFlow as BaseFirmwareConfigFlow, BaseFirmwareOptionsFlow as BaseFirmwareOptionsFlow
8
8
  from homeassistant.components.homeassistant_hardware.silabs_multiprotocol_addon import OptionsFlowHandler as MultiprotocolOptionsFlowHandler, SerialPortSettings as MultiprotocolSerialPortSettings
9
9
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_HARDWARE as SOURCE_HARDWARE
10
- from homeassistant.core import callback as callback
10
+ from homeassistant.core import HomeAssistant as HomeAssistant, async_get_hass as async_get_hass, callback as callback
11
11
  from homeassistant.helpers import discovery_flow as discovery_flow, selector as selector
12
12
  from typing import Any
13
13
 
@@ -26,6 +26,8 @@ class HomeAssistantYellowConfigFlow(BaseFirmwareConfigFlow, domain=DOMAIN):
26
26
 
27
27
  class BaseHomeAssistantYellowOptionsFlow(OptionsFlow, ABC, metaclass=abc.ABCMeta):
28
28
  _hw_settings: dict[str, bool] | None
29
+ _supervisor_client: Incomplete
30
+ def __init__(self, hass: HomeAssistant, *args: Any, **kwargs: Any) -> None: ...
29
31
  @abstractmethod
30
32
  async def async_step_main_menu(self, _: None = None) -> ConfigFlowResult: ...
31
33
  async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -47,7 +49,7 @@ class HomeAssistantYellowMultiPanOptionsFlowHandler(BaseHomeAssistantYellowOptio
47
49
  class HomeAssistantYellowOptionsFlowHandler(BaseHomeAssistantYellowOptionsFlow, BaseFirmwareOptionsFlow):
48
50
  _hardware_name: Incomplete
49
51
  _device: Incomplete
50
- def __init__(self, *args: Any, **kwargs: Any) -> None: ...
52
+ def __init__(self, hass: HomeAssistant, *args: Any, **kwargs: Any) -> None: ...
51
53
  async def async_step_main_menu(self, _: None = None) -> ConfigFlowResult: ...
52
54
  async def async_step_firmware_settings(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
53
55
  def _async_flow_finished(self) -> ConfigFlowResult: ...
@@ -0,0 +1,23 @@
1
+ from .accessories import HomeAccessory as HomeAccessory
2
+ from .const import CHAR_MUTE as CHAR_MUTE, CHAR_PROGRAMMABLE_SWITCH_EVENT as CHAR_PROGRAMMABLE_SWITCH_EVENT, CONF_LINKED_DOORBELL_SENSOR as CONF_LINKED_DOORBELL_SENSOR, SERV_DOORBELL as SERV_DOORBELL, SERV_SPEAKER as SERV_SPEAKER, SERV_STATELESS_PROGRAMMABLE_SWITCH as SERV_STATELESS_PROGRAMMABLE_SWITCH
3
+ from .util import state_changed_event_is_same_state as state_changed_event_is_same_state
4
+ from _typeshed import Incomplete
5
+ from homeassistant.const import STATE_ON as STATE_ON, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN
6
+ from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HassJobType as HassJobType, State as State
7
+ from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event
8
+ from typing import Any
9
+
10
+ _LOGGER: Incomplete
11
+ DOORBELL_SINGLE_PRESS: int
12
+ DOORBELL_DOUBLE_PRESS: int
13
+ DOORBELL_LONG_PRESS: int
14
+
15
+ class HomeDoorbellAccessory(HomeAccessory):
16
+ _char_doorbell_detected: Incomplete
17
+ _char_doorbell_detected_switch: Incomplete
18
+ linked_doorbell_sensor: Incomplete
19
+ doorbell_is_event: bool
20
+ def __init__(self, *args: Any, **kwargs: Any) -> None: ...
21
+ def run(self) -> None: ...
22
+ def async_update_doorbell_state_event(self, event: Event[EventStateChangedData]) -> None: ...
23
+ def async_update_doorbell_state(self, old_state: State | None, new_state: State) -> None: ...
@@ -1,6 +1,7 @@
1
1
  import asyncio
2
- from .accessories import HomeAccessory as HomeAccessory, HomeDriver as HomeDriver, TYPES as TYPES
3
- from .const import CHAR_MOTION_DETECTED as CHAR_MOTION_DETECTED, CHAR_MUTE as CHAR_MUTE, CHAR_PROGRAMMABLE_SWITCH_EVENT as CHAR_PROGRAMMABLE_SWITCH_EVENT, CONF_AUDIO_CODEC as CONF_AUDIO_CODEC, CONF_AUDIO_MAP as CONF_AUDIO_MAP, CONF_AUDIO_PACKET_SIZE as CONF_AUDIO_PACKET_SIZE, CONF_LINKED_DOORBELL_SENSOR as CONF_LINKED_DOORBELL_SENSOR, CONF_LINKED_MOTION_SENSOR as CONF_LINKED_MOTION_SENSOR, CONF_MAX_FPS as CONF_MAX_FPS, CONF_MAX_HEIGHT as CONF_MAX_HEIGHT, CONF_MAX_WIDTH as CONF_MAX_WIDTH, CONF_STREAM_ADDRESS as CONF_STREAM_ADDRESS, CONF_STREAM_COUNT as CONF_STREAM_COUNT, CONF_STREAM_SOURCE as CONF_STREAM_SOURCE, CONF_SUPPORT_AUDIO as CONF_SUPPORT_AUDIO, CONF_VIDEO_CODEC as CONF_VIDEO_CODEC, CONF_VIDEO_MAP as CONF_VIDEO_MAP, CONF_VIDEO_PACKET_SIZE as CONF_VIDEO_PACKET_SIZE, CONF_VIDEO_PROFILE_NAMES as CONF_VIDEO_PROFILE_NAMES, DEFAULT_AUDIO_CODEC as DEFAULT_AUDIO_CODEC, DEFAULT_AUDIO_MAP as DEFAULT_AUDIO_MAP, DEFAULT_AUDIO_PACKET_SIZE as DEFAULT_AUDIO_PACKET_SIZE, DEFAULT_MAX_FPS as DEFAULT_MAX_FPS, DEFAULT_MAX_HEIGHT as DEFAULT_MAX_HEIGHT, DEFAULT_MAX_WIDTH as DEFAULT_MAX_WIDTH, DEFAULT_STREAM_COUNT as DEFAULT_STREAM_COUNT, DEFAULT_SUPPORT_AUDIO as DEFAULT_SUPPORT_AUDIO, DEFAULT_VIDEO_CODEC as DEFAULT_VIDEO_CODEC, DEFAULT_VIDEO_MAP as DEFAULT_VIDEO_MAP, DEFAULT_VIDEO_PACKET_SIZE as DEFAULT_VIDEO_PACKET_SIZE, DEFAULT_VIDEO_PROFILE_NAMES as DEFAULT_VIDEO_PROFILE_NAMES, SERV_DOORBELL as SERV_DOORBELL, SERV_MOTION_SENSOR as SERV_MOTION_SENSOR, SERV_SPEAKER as SERV_SPEAKER, SERV_STATELESS_PROGRAMMABLE_SWITCH as SERV_STATELESS_PROGRAMMABLE_SWITCH
2
+ from .accessories import HomeDriver as HomeDriver, TYPES as TYPES
3
+ from .const import CHAR_MOTION_DETECTED as CHAR_MOTION_DETECTED, CONF_AUDIO_CODEC as CONF_AUDIO_CODEC, CONF_AUDIO_MAP as CONF_AUDIO_MAP, CONF_AUDIO_PACKET_SIZE as CONF_AUDIO_PACKET_SIZE, CONF_LINKED_MOTION_SENSOR as CONF_LINKED_MOTION_SENSOR, CONF_MAX_FPS as CONF_MAX_FPS, CONF_MAX_HEIGHT as CONF_MAX_HEIGHT, CONF_MAX_WIDTH as CONF_MAX_WIDTH, CONF_STREAM_ADDRESS as CONF_STREAM_ADDRESS, CONF_STREAM_COUNT as CONF_STREAM_COUNT, CONF_STREAM_SOURCE as CONF_STREAM_SOURCE, CONF_SUPPORT_AUDIO as CONF_SUPPORT_AUDIO, CONF_VIDEO_CODEC as CONF_VIDEO_CODEC, CONF_VIDEO_MAP as CONF_VIDEO_MAP, CONF_VIDEO_PACKET_SIZE as CONF_VIDEO_PACKET_SIZE, CONF_VIDEO_PROFILE_NAMES as CONF_VIDEO_PROFILE_NAMES, DEFAULT_AUDIO_CODEC as DEFAULT_AUDIO_CODEC, DEFAULT_AUDIO_MAP as DEFAULT_AUDIO_MAP, DEFAULT_AUDIO_PACKET_SIZE as DEFAULT_AUDIO_PACKET_SIZE, DEFAULT_MAX_FPS as DEFAULT_MAX_FPS, DEFAULT_MAX_HEIGHT as DEFAULT_MAX_HEIGHT, DEFAULT_MAX_WIDTH as DEFAULT_MAX_WIDTH, DEFAULT_STREAM_COUNT as DEFAULT_STREAM_COUNT, DEFAULT_SUPPORT_AUDIO as DEFAULT_SUPPORT_AUDIO, DEFAULT_VIDEO_CODEC as DEFAULT_VIDEO_CODEC, DEFAULT_VIDEO_MAP as DEFAULT_VIDEO_MAP, DEFAULT_VIDEO_PACKET_SIZE as DEFAULT_VIDEO_PACKET_SIZE, DEFAULT_VIDEO_PROFILE_NAMES as DEFAULT_VIDEO_PROFILE_NAMES, SERV_MOTION_SENSOR as SERV_MOTION_SENSOR
4
+ from .doorbell import HomeDoorbellAccessory as HomeDoorbellAccessory
4
5
  from .util import pid_is_alive as pid_is_alive, state_changed_event_is_same_state as state_changed_event_is_same_state
5
6
  from _typeshed import Incomplete
6
7
  from homeassistant.components import camera as camera
@@ -13,9 +14,6 @@ from pyhap.camera import Camera as PyhapCamera
13
14
  from typing import Any
14
15
 
15
16
  _LOGGER: Incomplete
16
- DOORBELL_SINGLE_PRESS: int
17
- DOORBELL_DOUBLE_PRESS: int
18
- DOORBELL_LONG_PRESS: int
19
17
  VIDEO_OUTPUT: str
20
18
  AUDIO_OUTPUT: str
21
19
  SLOW_RESOLUTIONS: Incomplete
@@ -27,21 +25,15 @@ FFMPEG_PID: str
27
25
  SESSION_ID: str
28
26
  CONFIG_DEFAULTS: Incomplete
29
27
 
30
- class Camera(HomeAccessory, PyhapCamera):
28
+ class Camera(HomeDoorbellAccessory, PyhapCamera):
31
29
  _ffmpeg: Incomplete
32
30
  _char_motion_detected: Incomplete
33
31
  linked_motion_sensor: Incomplete
34
32
  motion_is_event: bool
35
- _char_doorbell_detected: Incomplete
36
- _char_doorbell_detected_switch: Incomplete
37
- linked_doorbell_sensor: Incomplete
38
- doorbell_is_event: bool
39
33
  def __init__(self, hass: HomeAssistant, driver: HomeDriver, name: str, entity_id: str, aid: int, config: dict[str, Any]) -> None: ...
40
34
  def run(self) -> None: ...
41
35
  def _async_update_motion_state_event(self, event: Event[EventStateChangedData]) -> None: ...
42
36
  def _async_update_motion_state(self, old_state: State | None, new_state: State) -> None: ...
43
- def _async_update_doorbell_state_event(self, event: Event[EventStateChangedData]) -> None: ...
44
- def _async_update_doorbell_state(self, old_state: State | None, new_state: State) -> None: ...
45
37
  def async_update_state(self, new_state: State | None) -> None: ...
46
38
  async def _async_get_stream_source(self) -> str | None: ...
47
39
  async def start_stream(self, session_info: dict[str, Any], stream_config: dict[str, Any]) -> bool: ...
@@ -1,5 +1,6 @@
1
- from .accessories import HomeAccessory as HomeAccessory, TYPES as TYPES
1
+ from .accessories import TYPES as TYPES
2
2
  from .const import CHAR_LOCK_CURRENT_STATE as CHAR_LOCK_CURRENT_STATE, CHAR_LOCK_TARGET_STATE as CHAR_LOCK_TARGET_STATE, SERV_LOCK as SERV_LOCK
3
+ from .doorbell import HomeDoorbellAccessory as HomeDoorbellAccessory
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.components.lock import LockState as LockState
5
6
  from homeassistant.const import ATTR_CODE as ATTR_CODE, ATTR_ENTITY_ID as ATTR_ENTITY_ID, STATE_UNKNOWN as STATE_UNKNOWN
@@ -13,7 +14,7 @@ VALID_TARGET_STATES: Incomplete
13
14
  HOMEKIT_TO_HASS: Incomplete
14
15
  STATE_TO_SERVICE: Incomplete
15
16
 
16
- class Lock(HomeAccessory):
17
+ class Lock(HomeDoorbellAccessory):
17
18
  _code: Incomplete
18
19
  char_current_state: Incomplete
19
20
  char_target_state: Incomplete
@@ -4,7 +4,7 @@ from .util import cleanup_name_for_homekit as cleanup_name_for_homekit
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.components import button as button, input_button as input_button
6
6
  from homeassistant.components.input_select import ATTR_OPTIONS as ATTR_OPTIONS, SERVICE_SELECT_OPTION as SERVICE_SELECT_OPTION
7
- from homeassistant.components.vacuum import SERVICE_RETURN_TO_BASE as SERVICE_RETURN_TO_BASE, SERVICE_START as SERVICE_START, STATE_CLEANING as STATE_CLEANING, VacuumEntityFeature as VacuumEntityFeature
7
+ from homeassistant.components.vacuum import SERVICE_RETURN_TO_BASE as SERVICE_RETURN_TO_BASE, SERVICE_START as SERVICE_START, VacuumActivity as VacuumActivity, VacuumEntityFeature as VacuumEntityFeature
8
8
  from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_SUPPORTED_FEATURES as ATTR_SUPPORTED_FEATURES, CONF_TYPE as CONF_TYPE, SERVICE_CLOSE_VALVE as SERVICE_CLOSE_VALVE, SERVICE_OPEN_VALVE as SERVICE_OPEN_VALVE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_CLOSING as STATE_CLOSING, STATE_ON as STATE_ON, STATE_OPEN as STATE_OPEN, STATE_OPENING as STATE_OPENING
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant, State as State, callback as callback, split_entity_id as split_entity_id
10
10
  from homeassistant.helpers.event import async_call_later as async_call_later
@@ -26,6 +26,7 @@ CAMERA_SCHEMA: Incomplete
26
26
  HUMIDIFIER_SCHEMA: Incomplete
27
27
  COVER_SCHEMA: Incomplete
28
28
  CODE_SCHEMA: Incomplete
29
+ LOCK_SCHEMA: Incomplete
29
30
  MEDIA_PLAYER_SCHEMA: Incomplete
30
31
  SWITCH_TYPE_SCHEMA: Incomplete
31
32
  SENSOR_SCHEMA: Incomplete
@@ -6,7 +6,7 @@ from _typeshed import Incomplete
6
6
  from collections.abc import Callable as Callable
7
7
  from dataclasses import dataclass
8
8
  from homeassistant.components.sensor import DEVICE_CLASS_UNITS as DEVICE_CLASS_UNITS, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
9
- from homeassistant.const import ATTR_VIA_DEVICE as ATTR_VIA_DEVICE, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfApparentPower as UnitOfApparentPower, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfFrequency as UnitOfFrequency, UnitOfPower as UnitOfPower, UnitOfReactivePower as UnitOfReactivePower, UnitOfVolume as UnitOfVolume
9
+ from homeassistant.const import ATTR_VIA_DEVICE as ATTR_VIA_DEVICE, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfApparentPower as UnitOfApparentPower, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfFrequency as UnitOfFrequency, UnitOfPower as UnitOfPower, UnitOfReactivePower as UnitOfReactivePower, UnitOfVolume as UnitOfVolume, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate
10
10
  from homeassistant.core import HomeAssistant as HomeAssistant
11
11
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
12
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -1,11 +1,10 @@
1
- from .const import ATTR_ACTION as ATTR_ACTION, ATTR_AVAILABLE_MODES as ATTR_AVAILABLE_MODES, ATTR_CURRENT_HUMIDITY as ATTR_CURRENT_HUMIDITY, ATTR_HUMIDITY as ATTR_HUMIDITY, ATTR_MAX_HUMIDITY as ATTR_MAX_HUMIDITY, ATTR_MIN_HUMIDITY as ATTR_MIN_HUMIDITY, DEFAULT_MAX_HUMIDITY as DEFAULT_MAX_HUMIDITY, DEFAULT_MIN_HUMIDITY as DEFAULT_MIN_HUMIDITY, DOMAIN as DOMAIN, HumidifierAction as HumidifierAction, HumidifierEntityFeature as HumidifierEntityFeature, MODE_AUTO as MODE_AUTO, MODE_AWAY as MODE_AWAY, MODE_BABY as MODE_BABY, MODE_BOOST as MODE_BOOST, MODE_COMFORT as MODE_COMFORT, MODE_ECO as MODE_ECO, MODE_HOME as MODE_HOME, MODE_NORMAL as MODE_NORMAL, MODE_SLEEP as MODE_SLEEP, SERVICE_SET_HUMIDITY as SERVICE_SET_HUMIDITY, SERVICE_SET_MODE as SERVICE_SET_MODE, _DEPRECATED_DEVICE_CLASS_DEHUMIDIFIER as _DEPRECATED_DEVICE_CLASS_DEHUMIDIFIER, _DEPRECATED_DEVICE_CLASS_HUMIDIFIER as _DEPRECATED_DEVICE_CLASS_HUMIDIFIER, _DEPRECATED_SUPPORT_MODES as _DEPRECATED_SUPPORT_MODES
1
+ from .const import ATTR_ACTION as ATTR_ACTION, ATTR_AVAILABLE_MODES as ATTR_AVAILABLE_MODES, ATTR_CURRENT_HUMIDITY as ATTR_CURRENT_HUMIDITY, ATTR_HUMIDITY as ATTR_HUMIDITY, ATTR_MAX_HUMIDITY as ATTR_MAX_HUMIDITY, ATTR_MIN_HUMIDITY as ATTR_MIN_HUMIDITY, DEFAULT_MAX_HUMIDITY as DEFAULT_MAX_HUMIDITY, DEFAULT_MIN_HUMIDITY as DEFAULT_MIN_HUMIDITY, DOMAIN as DOMAIN, HumidifierAction as HumidifierAction, HumidifierEntityFeature as HumidifierEntityFeature, MODE_AUTO as MODE_AUTO, MODE_AWAY as MODE_AWAY, MODE_BABY as MODE_BABY, MODE_BOOST as MODE_BOOST, MODE_COMFORT as MODE_COMFORT, MODE_ECO as MODE_ECO, MODE_HOME as MODE_HOME, MODE_NORMAL as MODE_NORMAL, MODE_SLEEP as MODE_SLEEP, SERVICE_SET_HUMIDITY as SERVICE_SET_HUMIDITY, SERVICE_SET_MODE as SERVICE_SET_MODE
2
2
  from _typeshed import Incomplete
3
3
  from enum import StrEnum
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
5
  from homeassistant.const import ATTR_MODE as ATTR_MODE, SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
7
7
  from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
8
- from homeassistant.helpers.deprecation import 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
9
8
  from homeassistant.helpers.entity import ToggleEntity as ToggleEntity, ToggleEntityDescription as ToggleEntityDescription
10
9
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
11
10
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -68,11 +67,5 @@ class HumidifierEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_AT
68
67
  def min_humidity(self) -> float: ...
69
68
  def max_humidity(self) -> float: ...
70
69
  def supported_features(self) -> HumidifierEntityFeature: ...
71
- @property
72
- def supported_features_compat(self) -> HumidifierEntityFeature: ...
73
70
 
74
71
  async def async_service_humidity_set(entity: HumidifierEntity, service_call: ServiceCall) -> None: ...
75
-
76
- __getattr__: Incomplete
77
- __dir__: Incomplete
78
- __all__: Incomplete
@@ -1,6 +1,4 @@
1
- from _typeshed import Incomplete
2
1
  from enum import IntFlag, StrEnum
3
- from homeassistant.helpers.deprecation import DeprecatedConstant as DeprecatedConstant, DeprecatedConstantEnum as DeprecatedConstantEnum, 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
4
2
 
5
3
  MODE_NORMAL: str
6
4
  MODE_ECO: str
@@ -27,15 +25,8 @@ ATTR_MIN_HUMIDITY: str
27
25
  DEFAULT_MIN_HUMIDITY: int
28
26
  DEFAULT_MAX_HUMIDITY: int
29
27
  DOMAIN: str
30
- _DEPRECATED_DEVICE_CLASS_HUMIDIFIER: Incomplete
31
- _DEPRECATED_DEVICE_CLASS_DEHUMIDIFIER: Incomplete
32
28
  SERVICE_SET_MODE: str
33
29
  SERVICE_SET_HUMIDITY: str
34
30
 
35
31
  class HumidifierEntityFeature(IntFlag):
36
32
  MODES = 1
37
-
38
- _DEPRECATED_SUPPORT_MODES: Incomplete
39
- __getattr__: Incomplete
40
- __dir__: Incomplete
41
- __all__: Incomplete
@@ -14,5 +14,5 @@ type AutomowerConfigEntry = ConfigEntry[AutomowerDataUpdateCoordinator]
14
14
 
15
15
  async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry) -> bool: ...
16
16
  async def async_unload_entry(hass: HomeAssistant, entry: AutomowerConfigEntry) -> bool: ...
17
- def cleanup_removed_devices(hass: HomeAssistant, config_entry: ConfigEntry, available_devices: list[str]) -> None: ...
18
- def remove_work_area_entities(hass: HomeAssistant, config_entry: ConfigEntry, removed_work_areas: set[int], mower_id: str) -> None: ...
17
+ def cleanup_removed_devices(hass: HomeAssistant, config_entry: AutomowerConfigEntry, available_devices: list[str]) -> None: ...
18
+ def remove_work_area_entities(hass: HomeAssistant, config_entry: AutomowerConfigEntry, removed_work_areas: set[int], mower_id: str) -> None: ...
@@ -14,6 +14,7 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
14
14
  from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue, async_delete_issue as async_delete_issue
15
15
 
16
16
  _LOGGER: Incomplete
17
+ PARALLEL_UPDATES: int
17
18
 
18
19
  def entity_used_in(hass: HomeAssistant, entity_id: str) -> list[str]: ...
19
20
 
@@ -8,6 +8,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
9
 
10
10
  _LOGGER: Incomplete
11
+ PARALLEL_UPDATES: int
11
12
 
12
13
  async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
13
14
 
@@ -1,8 +1,8 @@
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry
1
2
  from .const import DOMAIN as DOMAIN
2
3
  from _typeshed import Incomplete
3
4
  from aioautomower.model import MowerAttributes
4
5
  from aioautomower.session import AutomowerSession as AutomowerSession
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
7
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
8
8
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
@@ -13,11 +13,11 @@ SCAN_INTERVAL: Incomplete
13
13
  DEFAULT_RECONNECT_TIME: int
14
14
 
15
15
  class AutomowerDataUpdateCoordinator(DataUpdateCoordinator[dict[str, MowerAttributes]]):
16
- config_entry: ConfigEntry
16
+ config_entry: AutomowerConfigEntry
17
17
  api: Incomplete
18
18
  ws_connected: bool
19
19
  reconnect_time: Incomplete
20
- def __init__(self, hass: HomeAssistant, api: AutomowerSession, entry: ConfigEntry) -> None: ...
20
+ def __init__(self, hass: HomeAssistant, api: AutomowerSession) -> None: ...
21
21
  async def _async_update_data(self) -> dict[str, MowerAttributes]: ...
22
22
  def callback(self, ws_data: dict[str, MowerAttributes]) -> None: ...
23
- async def client_listen(self, hass: HomeAssistant, entry: ConfigEntry, automower_client: AutomowerSession) -> None: ...
23
+ async def client_listen(self, hass: HomeAssistant, entry: AutomowerConfigEntry, automower_client: AutomowerSession) -> None: ...
@@ -6,6 +6,8 @@ from homeassistant.components.device_tracker import TrackerEntity as TrackerEnti
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
8
 
9
+ PARALLEL_UPDATES: int
10
+
9
11
  async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
10
12
 
11
13
  class AutomowerDeviceTrackerEntity(AutomowerBaseEntity, TrackerEntity):
@@ -2,7 +2,6 @@ from . import AutomowerConfigEntry as AutomowerConfigEntry
2
2
  from .const import DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
5
  from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN
7
6
  from homeassistant.core import HomeAssistant as HomeAssistant
8
7
  from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
@@ -13,5 +12,5 @@ POSITIONS: str
13
12
  TO_REDACT: Incomplete
14
13
  _LOGGER: Incomplete
15
14
 
16
- async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: ConfigEntry) -> dict[str, Any]: ...
15
+ async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: AutomowerConfigEntry) -> dict[str, Any]: ...
17
16
  async def async_get_device_diagnostics(hass: HomeAssistant, entry: AutomowerConfigEntry, device: DeviceEntry) -> dict[str, Any]: ...
@@ -2,12 +2,12 @@ from . import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
2
2
  from .const import DOMAIN as DOMAIN, EXECUTION_TIME_DELAY as EXECUTION_TIME_DELAY
3
3
  from _typeshed import Incomplete
4
4
  from aioautomower.model import MowerAttributes as MowerAttributes, WorkArea as WorkArea
5
- from collections.abc import Awaitable, Callable as Callable, Coroutine
5
+ from collections.abc import Callable, Coroutine
6
6
  from homeassistant.core import callback as callback
7
7
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
8
8
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
9
9
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
10
- from typing import Any
10
+ from typing import Any, Concatenate
11
11
 
12
12
  _LOGGER: Incomplete
13
13
  ERROR_ACTIVITIES: Incomplete
@@ -15,7 +15,8 @@ ERROR_STATES: Incomplete
15
15
 
16
16
  def _check_error_free(mower_attributes: MowerAttributes) -> bool: ...
17
17
  def _work_area_translation_key(work_area_id: int, key: str) -> str: ...
18
- def handle_sending_exception(poll_after_sending: bool = False) -> Callable[[Callable[..., Awaitable[Any]]], Callable[..., Coroutine[Any, Any, None]]]: ...
18
+ type _FuncType[_T, **_P, _R] = Callable[Concatenate[_T, _P], Coroutine[Any, Any, _R]]
19
+ def handle_sending_exception[_Entity: AutomowerBaseEntity, **_P](poll_after_sending: bool = False) -> Callable[[_FuncType[_Entity, _P, Any]], _FuncType[_Entity, _P, None]]: ...
19
20
 
20
21
  class AutomowerBaseEntity(CoordinatorEntity[AutomowerDataUpdateCoordinator]):
21
22
  _attr_has_entity_name: bool
@@ -14,6 +14,7 @@ from homeassistant.helpers.typing import StateType as StateType
14
14
  from typing import Any
15
15
 
16
16
  _LOGGER: Incomplete
17
+ PARALLEL_UPDATES: int
17
18
  ATTR_WORK_AREA_ID_ASSIGNMENT: str
18
19
  ERROR_KEY_LIST: Incomplete
19
20
  ERROR_STATES: Incomplete
@@ -1,27 +1,16 @@
1
- from .const import DOMAIN as DOMAIN
2
1
  from .coordinator import IdasenDeskCoordinator as IdasenDeskCoordinator
3
2
  from _typeshed import Incomplete
4
3
  from homeassistant.components import bluetooth as bluetooth
5
4
  from homeassistant.components.bluetooth.match import ADDRESS as ADDRESS, BluetoothCallbackMatcher as BluetoothCallbackMatcher
6
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
- from homeassistant.const import ATTR_NAME as ATTR_NAME, CONF_ADDRESS as CONF_ADDRESS, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
6
+ from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
8
7
  from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
9
8
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
10
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
11
9
 
12
10
  PLATFORMS: list[Platform]
13
11
  _LOGGER: Incomplete
12
+ type IdasenDeskConfigEntry = ConfigEntry[IdasenDeskCoordinator]
14
13
 
15
- class DeskData:
16
- address: str
17
- device_info: DeviceInfo
18
- coordinator: IdasenDeskCoordinator
19
- def __init__(self, address, device_info, coordinator) -> None: ...
20
- def __lt__(self, other): ...
21
- def __le__(self, other): ...
22
- def __gt__(self, other): ...
23
- def __ge__(self, other): ...
24
-
25
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
26
- async def _async_update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
27
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
14
+ async def async_setup_entry(hass: HomeAssistant, entry: IdasenDeskConfigEntry) -> bool: ...
15
+ async def _async_update_listener(hass: HomeAssistant, entry: IdasenDeskConfigEntry) -> None: ...
16
+ async def async_unload_entry(hass: HomeAssistant, entry: IdasenDeskConfigEntry) -> bool: ...
@@ -1,13 +1,11 @@
1
- from . import DeskData as DeskData, IdasenDeskCoordinator as IdasenDeskCoordinator
2
- from .const import DOMAIN as DOMAIN
1
+ from . import IdasenDeskConfigEntry as IdasenDeskConfigEntry, IdasenDeskCoordinator as IdasenDeskCoordinator
2
+ from .entity import IdasenDeskEntity as IdasenDeskEntity
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable, Coroutine
5
5
  from dataclasses import dataclass
6
6
  from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
7
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
7
  from homeassistant.const import EntityCategory as EntityCategory
9
8
  from homeassistant.core import HomeAssistant as HomeAssistant
10
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
11
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
10
  from typing import Any, Final
13
11
 
@@ -20,14 +18,11 @@ class IdasenDeskButtonDescription(ButtonEntityDescription):
20
18
 
21
19
  BUTTONS: Final[Incomplete]
22
20
 
23
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
21
+ async def async_setup_entry(hass: HomeAssistant, entry: IdasenDeskConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
24
22
 
25
- class IdasenDeskButton(ButtonEntity):
23
+ class IdasenDeskButton(IdasenDeskEntity, ButtonEntity):
26
24
  entity_description: IdasenDeskButtonDescription
27
- _attr_has_entity_name: bool
28
- _attr_unique_id: Incomplete
29
- _attr_device_info: Incomplete
30
- _address: Incomplete
31
- _coordinator: Incomplete
32
- def __init__(self, address: str, device_info: DeviceInfo, coordinator: IdasenDeskCoordinator, description: IdasenDeskButtonDescription) -> None: ...
25
+ def __init__(self, coordinator: IdasenDeskCoordinator, description: IdasenDeskButtonDescription) -> None: ...
33
26
  async def async_press(self) -> None: ...
27
+ @property
28
+ def available(self) -> bool: ...
@@ -1,4 +1,3 @@
1
- import logging
2
1
  from _typeshed import Incomplete
3
2
  from homeassistant.components import bluetooth as bluetooth
4
3
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -7,10 +6,10 @@ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as Da
7
6
  _LOGGER: Incomplete
8
7
 
9
8
  class IdasenDeskCoordinator(DataUpdateCoordinator[int | None]):
10
- _address: Incomplete
9
+ address: Incomplete
11
10
  _expected_connected: bool
12
11
  desk: Incomplete
13
- def __init__(self, hass: HomeAssistant, logger: logging.Logger, name: str, address: str) -> None: ...
12
+ def __init__(self, hass: HomeAssistant, name: str, address: str) -> None: ...
14
13
  async def async_connect(self) -> bool: ...
15
14
  async def async_disconnect(self) -> None: ...
16
15
  async def async_connect_if_expected(self) -> None: ...
@@ -1,34 +1,25 @@
1
- from . import DeskData as DeskData, IdasenDeskCoordinator as IdasenDeskCoordinator
2
- from .const import DOMAIN as DOMAIN
1
+ from . import IdasenDeskConfigEntry as IdasenDeskConfigEntry, IdasenDeskCoordinator as IdasenDeskCoordinator
2
+ from .entity import IdasenDeskEntity as IdasenDeskEntity
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.cover import ATTR_POSITION as ATTR_POSITION, CoverDeviceClass as CoverDeviceClass, CoverEntity as CoverEntity, CoverEntityFeature as CoverEntityFeature
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
- from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
+ from homeassistant.core import HomeAssistant as HomeAssistant
7
6
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
8
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
9
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
- from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
11
8
  from typing import Any
12
9
 
13
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
10
+ async def async_setup_entry(hass: HomeAssistant, entry: IdasenDeskConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
14
11
 
15
- class IdasenDeskCover(CoordinatorEntity[IdasenDeskCoordinator], CoverEntity):
12
+ class IdasenDeskCover(IdasenDeskEntity, CoverEntity):
16
13
  _attr_device_class: Incomplete
17
14
  _attr_supported_features: Incomplete
18
- _attr_has_entity_name: bool
19
15
  _attr_name: Incomplete
20
16
  _attr_translation_key: str
21
- _desk: Incomplete
22
- _attr_unique_id: Incomplete
23
- _attr_device_info: Incomplete
24
- _attr_current_cover_position: Incomplete
25
- def __init__(self, address: str, device_info: DeviceInfo, coordinator: IdasenDeskCoordinator) -> None: ...
26
- @property
27
- def available(self) -> bool: ...
17
+ def __init__(self, coordinator: IdasenDeskCoordinator) -> None: ...
28
18
  @property
29
19
  def is_closed(self) -> bool: ...
30
20
  async def async_close_cover(self, **kwargs: Any) -> None: ...
31
21
  async def async_open_cover(self, **kwargs: Any) -> None: ...
32
22
  async def async_stop_cover(self, **kwargs: Any) -> None: ...
33
23
  async def async_set_cover_position(self, **kwargs: Any) -> None: ...
34
- def _handle_coordinator_update(self, *args: Any) -> None: ...
24
+ @property
25
+ def current_cover_position(self) -> int | None: ...