homeassistant-stubs 2025.5.3__py3-none-any.whl → 2025.6.0__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 (419) hide show
  1. homeassistant-stubs/components/airthings/sensor.pyi +1 -1
  2. homeassistant-stubs/components/alexa_devices/__init__.pyi +9 -0
  3. homeassistant-stubs/components/alexa_devices/binary_sensor.pyi +26 -0
  4. homeassistant-stubs/components/alexa_devices/config_flow.pyi +8 -0
  5. homeassistant-stubs/components/alexa_devices/const.pyi +5 -0
  6. homeassistant-stubs/components/alexa_devices/coordinator.pyi +17 -0
  7. homeassistant-stubs/components/alexa_devices/diagnostics.pyi +14 -0
  8. homeassistant-stubs/components/alexa_devices/entity.pyi +19 -0
  9. homeassistant-stubs/components/alexa_devices/notify.pyi +25 -0
  10. homeassistant-stubs/components/alexa_devices/switch.pyi +30 -0
  11. homeassistant-stubs/components/apcupsd/config_flow.pyi +1 -0
  12. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +3 -1
  13. homeassistant-stubs/components/axis/config_flow.pyi +2 -2
  14. homeassistant-stubs/components/axis/entity.pyi +1 -0
  15. homeassistant-stubs/components/backup/__init__.pyi +2 -2
  16. homeassistant-stubs/components/backup/coordinator.pyi +3 -0
  17. homeassistant-stubs/components/backup/entity.pyi +5 -2
  18. homeassistant-stubs/components/backup/event.pyi +23 -0
  19. homeassistant-stubs/components/backup/manager.pyi +22 -3
  20. homeassistant-stubs/components/backup/models.pyi +2 -2
  21. homeassistant-stubs/components/blue_current/button.pyi +25 -0
  22. homeassistant-stubs/components/blue_current/entity.pyi +3 -6
  23. homeassistant-stubs/components/bluesound/button.pyi +35 -0
  24. homeassistant-stubs/components/bluesound/media_player.pyi +1 -0
  25. homeassistant-stubs/components/bmw_connected_drive/button.pyi +1 -1
  26. homeassistant-stubs/components/bmw_connected_drive/coordinator.pyi +1 -1
  27. homeassistant-stubs/components/bmw_connected_drive/lock.pyi +1 -1
  28. homeassistant-stubs/components/bmw_connected_drive/notify.pyi +1 -1
  29. homeassistant-stubs/components/bmw_connected_drive/number.pyi +1 -1
  30. homeassistant-stubs/components/bmw_connected_drive/select.pyi +1 -1
  31. homeassistant-stubs/components/bmw_connected_drive/switch.pyi +1 -1
  32. homeassistant-stubs/components/bosch_alarm/__init__.pyi +8 -4
  33. homeassistant-stubs/components/bosch_alarm/alarm_control_panel.pyi +3 -1
  34. homeassistant-stubs/components/bosch_alarm/binary_sensor.pyi +45 -0
  35. homeassistant-stubs/components/bosch_alarm/config_flow.pyi +9 -3
  36. homeassistant-stubs/components/bosch_alarm/const.pyi +4 -1
  37. homeassistant-stubs/components/bosch_alarm/diagnostics.pyi +1 -1
  38. homeassistant-stubs/components/bosch_alarm/entity.pyi +30 -1
  39. homeassistant-stubs/components/bosch_alarm/sensor.pyi +6 -2
  40. homeassistant-stubs/components/bosch_alarm/services.pyi +15 -0
  41. homeassistant-stubs/components/bosch_alarm/switch.pyi +43 -0
  42. homeassistant-stubs/components/bosch_alarm/types.pyi +4 -0
  43. homeassistant-stubs/components/bring/__init__.pyi +1 -1
  44. homeassistant-stubs/components/bring/coordinator.pyi +21 -3
  45. homeassistant-stubs/components/bring/entity.pyi +3 -3
  46. homeassistant-stubs/components/bring/event.pyi +3 -2
  47. homeassistant-stubs/components/bring/sensor.pyi +1 -0
  48. homeassistant-stubs/components/bring/todo.pyi +1 -0
  49. homeassistant-stubs/components/camera/__init__.pyi +2 -10
  50. homeassistant-stubs/components/camera/webrtc.pyi +1 -22
  51. homeassistant-stubs/components/climate/__init__.pyi +3 -13
  52. homeassistant-stubs/components/climate/const.pyi +0 -3
  53. homeassistant-stubs/components/climate/significant_change.pyi +1 -1
  54. homeassistant-stubs/components/cloud/__init__.pyi +1 -1
  55. homeassistant-stubs/components/cloud/alexa_config.pyi +1 -1
  56. homeassistant-stubs/components/cloud/client.pyi +2 -1
  57. homeassistant-stubs/components/cloud/const.pyi +0 -1
  58. homeassistant-stubs/components/cloud/google_config.pyi +1 -1
  59. homeassistant-stubs/components/cloud/http_api.pyi +0 -2
  60. homeassistant-stubs/components/comelit/climate.pyi +14 -5
  61. homeassistant-stubs/components/comelit/config_flow.pyi +3 -4
  62. homeassistant-stubs/components/comelit/const.pyi +3 -0
  63. homeassistant-stubs/components/comelit/cover.pyi +3 -1
  64. homeassistant-stubs/components/comelit/humidifier.pyi +6 -1
  65. homeassistant-stubs/components/comelit/light.pyi +2 -0
  66. homeassistant-stubs/components/comelit/switch.pyi +2 -0
  67. homeassistant-stubs/components/comelit/utils.pyi +11 -0
  68. homeassistant-stubs/components/command_line/notify.pyi +3 -1
  69. homeassistant-stubs/components/config/entity_registry.pyi +6 -0
  70. homeassistant-stubs/components/deconz/entity.pyi +1 -0
  71. homeassistant-stubs/components/deconz/hub/hub.pyi +1 -1
  72. homeassistant-stubs/components/deconz/light.pyi +1 -1
  73. homeassistant-stubs/components/demo/media_player.pyi +2 -1
  74. homeassistant-stubs/components/derivative/__init__.pyi +2 -1
  75. homeassistant-stubs/components/device_automation/trigger.pyi +5 -2
  76. homeassistant-stubs/components/devolo_home_network/__init__.pyi +3 -18
  77. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +1 -2
  78. homeassistant-stubs/components/devolo_home_network/button.pyi +1 -1
  79. homeassistant-stubs/components/devolo_home_network/config_flow.pyi +1 -1
  80. homeassistant-stubs/components/devolo_home_network/coordinator.pyi +56 -6
  81. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +1 -2
  82. homeassistant-stubs/components/devolo_home_network/diagnostics.pyi +1 -1
  83. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -2
  84. homeassistant-stubs/components/devolo_home_network/image.pyi +1 -2
  85. homeassistant-stubs/components/devolo_home_network/sensor.pyi +1 -2
  86. homeassistant-stubs/components/devolo_home_network/switch.pyi +1 -2
  87. homeassistant-stubs/components/devolo_home_network/update.pyi +1 -2
  88. homeassistant-stubs/components/dhcp/__init__.pyi +2 -0
  89. homeassistant-stubs/components/downloader/__init__.pyi +3 -4
  90. homeassistant-stubs/components/downloader/services.pyi +7 -0
  91. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +1 -1
  92. homeassistant-stubs/components/ecovacs/button.pyi +2 -2
  93. homeassistant-stubs/components/ecovacs/number.pyi +1 -1
  94. homeassistant-stubs/components/ecovacs/select.pyi +1 -1
  95. homeassistant-stubs/components/ecovacs/sensor.pyi +1 -1
  96. homeassistant-stubs/components/ecovacs/switch.pyi +1 -1
  97. homeassistant-stubs/components/ecovacs/util.pyi +1 -1
  98. homeassistant-stubs/components/eheimdigital/climate.pyi +4 -2
  99. homeassistant-stubs/components/eheimdigital/diagnostics.pyi +9 -0
  100. homeassistant-stubs/components/eheimdigital/entity.pyi +5 -0
  101. homeassistant-stubs/components/eheimdigital/light.pyi +3 -2
  102. homeassistant-stubs/components/eheimdigital/number.pyi +3 -1
  103. homeassistant-stubs/components/eheimdigital/select.pyi +34 -0
  104. homeassistant-stubs/components/eheimdigital/switch.pyi +3 -1
  105. homeassistant-stubs/components/eheimdigital/time.pyi +2 -1
  106. homeassistant-stubs/components/elkm1/climate.pyi +0 -6
  107. homeassistant-stubs/components/esphome/entity.pyi +2 -0
  108. homeassistant-stubs/components/esphome/entry_data.pyi +0 -12
  109. homeassistant-stubs/components/esphome/light.pyi +4 -4
  110. homeassistant-stubs/components/esphome/manager.pyi +0 -1
  111. homeassistant-stubs/components/esphome/update.pyi +8 -4
  112. homeassistant-stubs/components/feedreader/event.pyi +1 -2
  113. homeassistant-stubs/components/fritz/__init__.pyi +1 -1
  114. homeassistant-stubs/components/fritz/config_flow.pyi +2 -1
  115. homeassistant-stubs/components/fritz/const.pyi +2 -0
  116. homeassistant-stubs/components/fritz/coordinator.pyi +5 -3
  117. homeassistant-stubs/components/frontend/storage.pyi +25 -9
  118. homeassistant-stubs/components/fyta/image.pyi +18 -4
  119. homeassistant-stubs/components/generic_hygrostat/__init__.pyi +4 -2
  120. homeassistant-stubs/components/generic_thermostat/__init__.pyi +5 -3
  121. homeassistant-stubs/components/geocaching/__init__.pyi +3 -5
  122. homeassistant-stubs/components/geocaching/coordinator.pyi +3 -2
  123. homeassistant-stubs/components/geocaching/sensor.pyi +2 -3
  124. homeassistant-stubs/components/google/__init__.pyi +7 -8
  125. homeassistant-stubs/components/google/api.pyi +2 -2
  126. homeassistant-stubs/components/google/calendar.pyi +5 -5
  127. homeassistant-stubs/components/google/config_flow.pyi +3 -2
  128. homeassistant-stubs/components/google/const.pyi +0 -2
  129. homeassistant-stubs/components/google/coordinator.pyi +5 -5
  130. homeassistant-stubs/components/google/diagnostics.pyi +2 -3
  131. homeassistant-stubs/components/google/store.pyi +9 -0
  132. homeassistant-stubs/components/google_assistant_sdk/__init__.pyi +5 -6
  133. homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +3 -3
  134. homeassistant-stubs/components/google_assistant_sdk/const.pyi +0 -2
  135. homeassistant-stubs/components/google_assistant_sdk/diagnostics.pyi +2 -2
  136. homeassistant-stubs/components/google_assistant_sdk/helpers.pyi +8 -1
  137. homeassistant-stubs/components/google_assistant_sdk/notify.pyi +1 -2
  138. homeassistant-stubs/components/greeneye_monitor/const.pyi +4 -1
  139. homeassistant-stubs/components/guardian/__init__.pyi +11 -18
  140. homeassistant-stubs/components/guardian/binary_sensor.pyi +5 -6
  141. homeassistant-stubs/components/guardian/button.pyi +4 -5
  142. homeassistant-stubs/components/guardian/coordinator.pyi +3 -3
  143. homeassistant-stubs/components/guardian/diagnostics.pyi +3 -4
  144. homeassistant-stubs/components/guardian/entity.pyi +3 -3
  145. homeassistant-stubs/components/guardian/sensor.pyi +3 -4
  146. homeassistant-stubs/components/guardian/services.pyi +28 -0
  147. homeassistant-stubs/components/guardian/switch.pyi +4 -5
  148. homeassistant-stubs/components/guardian/util.pyi +2 -2
  149. homeassistant-stubs/components/guardian/valve.pyi +4 -5
  150. homeassistant-stubs/components/habitica/const.pyi +1 -6
  151. homeassistant-stubs/components/habitica/coordinator.pyi +2 -2
  152. homeassistant-stubs/components/habitica/sensor.pyi +3 -1
  153. homeassistant-stubs/components/habitica/services.pyi +2 -4
  154. homeassistant-stubs/components/habitica/util.pyi +2 -0
  155. homeassistant-stubs/components/hardware/__init__.pyi +3 -1
  156. homeassistant-stubs/components/hardware/const.pyi +4 -0
  157. homeassistant-stubs/components/hardware/hardware.pyi +1 -1
  158. homeassistant-stubs/components/hardware/models.pyi +14 -1
  159. homeassistant-stubs/components/hardware/websocket_api.pyi +2 -12
  160. homeassistant-stubs/components/heos/media_player.pyi +1 -0
  161. homeassistant-stubs/components/here_travel_time/__init__.pyi +4 -6
  162. homeassistant-stubs/components/here_travel_time/coordinator.pyi +9 -10
  163. homeassistant-stubs/components/here_travel_time/model.pyi +6 -10
  164. homeassistant-stubs/components/here_travel_time/sensor.pyi +4 -5
  165. homeassistant-stubs/components/history_stats/__init__.pyi +2 -1
  166. homeassistant-stubs/components/history_stats/config_flow.pyi +2 -2
  167. homeassistant-stubs/components/home_connect/application_credentials.pyi +1 -0
  168. homeassistant-stubs/components/home_connect/config_flow.pyi +2 -0
  169. homeassistant-stubs/components/home_connect/diagnostics.pyi +1 -2
  170. homeassistant-stubs/components/home_connect/entity.pyi +0 -1
  171. homeassistant-stubs/components/home_connect/light.pyi +2 -2
  172. homeassistant-stubs/components/home_connect/number.pyi +1 -0
  173. homeassistant-stubs/components/home_connect/sensor.pyi +4 -5
  174. homeassistant-stubs/components/home_connect/switch.pyi +1 -19
  175. homeassistant-stubs/components/homeassistant/__init__.pyi +5 -0
  176. homeassistant-stubs/components/homee/alarm_control_panel.pyi +39 -0
  177. homeassistant-stubs/components/homee/const.pyi +2 -0
  178. homeassistant-stubs/components/homee/event.pyi +19 -0
  179. homeassistant-stubs/components/homee/fan.pyi +38 -0
  180. homeassistant-stubs/components/homee/sensor.pyi +5 -1
  181. homeassistant-stubs/components/homekit/const.pyi +1 -0
  182. homeassistant-stubs/components/homekit/util.pyi +1 -1
  183. homeassistant-stubs/components/homeworks/__init__.pyi +5 -5
  184. homeassistant-stubs/components/homeworks/binary_sensor.pyi +2 -3
  185. homeassistant-stubs/components/homeworks/button.pyi +2 -3
  186. homeassistant-stubs/components/homeworks/light.pyi +2 -3
  187. homeassistant-stubs/components/http/decorators.pyi +1 -1
  188. homeassistant-stubs/components/huawei_lte/__init__.pyi +0 -1
  189. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +0 -7
  190. homeassistant-stubs/components/hydrawise/__init__.pyi +4 -5
  191. homeassistant-stubs/components/hydrawise/binary_sensor.pyi +3 -4
  192. homeassistant-stubs/components/hydrawise/coordinator.pyi +4 -3
  193. homeassistant-stubs/components/hydrawise/sensor.pyi +2 -4
  194. homeassistant-stubs/components/hydrawise/switch.pyi +3 -4
  195. homeassistant-stubs/components/hydrawise/valve.pyi +2 -4
  196. homeassistant-stubs/components/immich/__init__.pyi +10 -0
  197. homeassistant-stubs/components/immich/config_flow.pyi +27 -0
  198. homeassistant-stubs/components/immich/const.pyi +4 -0
  199. homeassistant-stubs/components/immich/coordinator.pyi +27 -0
  200. homeassistant-stubs/components/immich/diagnostics.pyi +10 -0
  201. homeassistant-stubs/components/immich/entity.pyi +10 -0
  202. homeassistant-stubs/components/immich/media_source.pyi +38 -0
  203. homeassistant-stubs/components/immich/sensor.pyi +28 -0
  204. homeassistant-stubs/components/integration/__init__.pyi +2 -1
  205. homeassistant-stubs/components/iqvia/__init__.pyi +4 -7
  206. homeassistant-stubs/components/iqvia/coordinator.pyi +16 -0
  207. homeassistant-stubs/components/iqvia/diagnostics.pyi +3 -4
  208. homeassistant-stubs/components/iqvia/entity.pyi +5 -6
  209. homeassistant-stubs/components/iqvia/sensor.pyi +3 -3
  210. homeassistant-stubs/components/isy994/__init__.pyi +6 -7
  211. homeassistant-stubs/components/isy994/binary_sensor.pyi +3 -4
  212. homeassistant-stubs/components/isy994/button.pyi +2 -3
  213. homeassistant-stubs/components/isy994/climate.pyi +3 -4
  214. homeassistant-stubs/components/isy994/config_flow.pyi +4 -3
  215. homeassistant-stubs/components/isy994/cover.pyi +3 -5
  216. homeassistant-stubs/components/isy994/fan.pyi +3 -5
  217. homeassistant-stubs/components/isy994/light.pyi +3 -4
  218. homeassistant-stubs/components/isy994/lock.pyi +2 -5
  219. homeassistant-stubs/components/isy994/models.pyi +2 -0
  220. homeassistant-stubs/components/isy994/number.pyi +3 -4
  221. homeassistant-stubs/components/isy994/select.pyi +3 -4
  222. homeassistant-stubs/components/isy994/sensor.pyi +3 -4
  223. homeassistant-stubs/components/isy994/services.pyi +1 -1
  224. homeassistant-stubs/components/isy994/switch.pyi +2 -4
  225. homeassistant-stubs/components/isy994/system_health.pyi +1 -3
  226. homeassistant-stubs/components/isy994/util.pyi +3 -2
  227. homeassistant-stubs/components/jellyfin/__init__.pyi +1 -1
  228. homeassistant-stubs/components/jellyfin/entity.pyi +2 -2
  229. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +3 -2
  230. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +3 -2
  231. homeassistant-stubs/components/jewish_calendar/const.pyi +1 -0
  232. homeassistant-stubs/components/jewish_calendar/diagnostics.pyi +11 -0
  233. homeassistant-stubs/components/jewish_calendar/entity.pyi +12 -5
  234. homeassistant-stubs/components/jewish_calendar/sensor.pyi +34 -15
  235. homeassistant-stubs/components/jewish_calendar/service.pyi +1 -0
  236. homeassistant-stubs/components/kaleidescape/entity.pyi +1 -0
  237. homeassistant-stubs/components/kaleidescape/media_player.pyi +1 -0
  238. homeassistant-stubs/components/kaleidescape/remote.pyi +1 -0
  239. homeassistant-stubs/components/kaleidescape/sensor.pyi +1 -0
  240. homeassistant-stubs/components/knocki/config_flow.pyi +2 -0
  241. homeassistant-stubs/components/knx/const.pyi +7 -0
  242. homeassistant-stubs/components/knx/cover.pyi +20 -9
  243. homeassistant-stubs/components/knx/schema.pyi +1 -6
  244. homeassistant-stubs/components/knx/storage/const.pyi +6 -0
  245. homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +4 -3
  246. homeassistant-stubs/components/lcn/config_flow.pyi +0 -2
  247. homeassistant-stubs/components/lcn/const.pyi +3 -1
  248. homeassistant-stubs/components/lcn/cover.pyi +7 -2
  249. homeassistant-stubs/components/lcn/entity.pyi +1 -0
  250. homeassistant-stubs/components/lcn/helpers.pyi +0 -1
  251. homeassistant-stubs/components/lcn/schemas.pyi +1 -1
  252. homeassistant-stubs/components/lcn/services.pyi +2 -3
  253. homeassistant-stubs/components/litterrobot/entity.pyi +1 -1
  254. homeassistant-stubs/components/matter/select.pyi +2 -0
  255. homeassistant-stubs/components/matter/sensor.pyi +3 -1
  256. homeassistant-stubs/components/media_player/intent.pyi +11 -1
  257. homeassistant-stubs/components/metoffice/__init__.pyi +3 -5
  258. homeassistant-stubs/components/metoffice/config_flow.pyi +4 -2
  259. homeassistant-stubs/components/metoffice/const.pyi +7 -6
  260. homeassistant-stubs/components/metoffice/helpers.pyi +5 -6
  261. homeassistant-stubs/components/metoffice/sensor.pyi +15 -13
  262. homeassistant-stubs/components/metoffice/weather.pyi +23 -11
  263. homeassistant-stubs/components/miele/__init__.pyi +15 -0
  264. homeassistant-stubs/components/miele/api.pyi +9 -0
  265. homeassistant-stubs/components/miele/application_credentials.pyi +5 -0
  266. homeassistant-stubs/components/miele/binary_sensor.pyi +34 -0
  267. homeassistant-stubs/components/miele/button.pyi +32 -0
  268. homeassistant-stubs/components/miele/climate.pyi +55 -0
  269. homeassistant-stubs/components/miele/config_flow.pyi +17 -0
  270. homeassistant-stubs/components/miele/const.pyi +127 -0
  271. homeassistant-stubs/components/miele/coordinator.pyi +29 -0
  272. homeassistant-stubs/components/miele/diagnostics.pyi +13 -0
  273. homeassistant-stubs/components/miele/entity.pyi +24 -0
  274. homeassistant-stubs/components/miele/fan.pyi +39 -0
  275. homeassistant-stubs/components/miele/light.pyi +39 -0
  276. homeassistant-stubs/components/miele/sensor.pyi +72 -0
  277. homeassistant-stubs/components/miele/switch.pyi +52 -0
  278. homeassistant-stubs/components/miele/vacuum.pyi +84 -0
  279. homeassistant-stubs/components/minecraft_server/api.pyi +1 -1
  280. homeassistant-stubs/components/modbus/__init__.pyi +1 -1
  281. homeassistant-stubs/components/modbus/const.pyi +9 -0
  282. homeassistant-stubs/components/modbus/light.pyi +24 -1
  283. homeassistant-stubs/components/modbus/sensor.pyi +5 -3
  284. homeassistant-stubs/components/mqtt/binary_sensor.pyi +1 -2
  285. homeassistant-stubs/components/mqtt/button.pyi +1 -3
  286. homeassistant-stubs/components/mqtt/config_flow.pyi +26 -9
  287. homeassistant-stubs/components/mqtt/const.pyi +57 -0
  288. homeassistant-stubs/components/mqtt/cover.pyi +1 -25
  289. homeassistant-stubs/components/mqtt/fan.pyi +1 -31
  290. homeassistant-stubs/components/mqtt/sensor.pyi +1 -1
  291. homeassistant-stubs/components/mqtt/switch.pyi +1 -5
  292. homeassistant-stubs/components/music_assistant/media_player.pyi +6 -2
  293. homeassistant-stubs/components/number/const.pyi +3 -2
  294. homeassistant-stubs/components/nut/__init__.pyi +1 -1
  295. homeassistant-stubs/components/openai_conversation/conversation.pyi +2 -0
  296. homeassistant-stubs/components/openuv/binary_sensor.pyi +2 -1
  297. homeassistant-stubs/components/openuv/entity.pyi +1 -0
  298. homeassistant-stubs/components/pandora/__init__.pyi +1 -0
  299. homeassistant-stubs/components/pandora/media_player.pyi +14 -13
  300. homeassistant-stubs/components/paperless_ngx/__init__.pyi +13 -0
  301. homeassistant-stubs/components/paperless_ngx/config_flow.pyi +16 -0
  302. homeassistant-stubs/components/paperless_ngx/const.pyi +4 -0
  303. homeassistant-stubs/components/paperless_ngx/coordinator.pyi +39 -0
  304. homeassistant-stubs/components/{rtsp_to_webrtc → paperless_ngx}/diagnostics.pyi +2 -2
  305. homeassistant-stubs/components/paperless_ngx/entity.pyi +16 -0
  306. homeassistant-stubs/components/paperless_ngx/sensor.pyi +27 -0
  307. homeassistant-stubs/components/plugwise/coordinator.pyi +2 -2
  308. homeassistant-stubs/components/qbus/climate.pyi +1 -0
  309. homeassistant-stubs/components/qbus/entity.pyi +3 -3
  310. homeassistant-stubs/components/qbus/light.pyi +1 -0
  311. homeassistant-stubs/components/qbus/scene.pyi +21 -0
  312. homeassistant-stubs/components/qbus/switch.pyi +1 -0
  313. homeassistant-stubs/components/recorder/services.pyi +7 -1
  314. homeassistant-stubs/components/recorder/statistics.pyi +1 -1
  315. homeassistant-stubs/components/recorder/websocket_api.pyi +1 -1
  316. homeassistant-stubs/components/reolink/__init__.pyi +3 -1
  317. homeassistant-stubs/components/reolink/const.pyi +5 -0
  318. homeassistant-stubs/components/reolink/host.pyi +3 -3
  319. homeassistant-stubs/components/reolink/media_source.pyi +2 -1
  320. homeassistant-stubs/components/reolink/views.pyi +1 -0
  321. homeassistant-stubs/components/repairs/websocket_api.pyi +0 -1
  322. homeassistant-stubs/components/samsungtv/__init__.pyi +5 -5
  323. homeassistant-stubs/components/samsungtv/bridge.pyi +2 -1
  324. homeassistant-stubs/components/samsungtv/config_flow.pyi +4 -4
  325. homeassistant-stubs/components/samsungtv/entity.pyi +1 -1
  326. homeassistant-stubs/components/samsungtv/media_player.pyi +2 -1
  327. homeassistant-stubs/components/sensor/__init__.pyi +1 -0
  328. homeassistant-stubs/components/sensor/const.pyi +5 -2
  329. homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
  330. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
  331. homeassistant-stubs/components/shelly/__init__.pyi +1 -1
  332. homeassistant-stubs/components/shelly/binary_sensor.pyi +3 -2
  333. homeassistant-stubs/components/shelly/button.pyi +5 -4
  334. homeassistant-stubs/components/shelly/climate.pyi +5 -5
  335. homeassistant-stubs/components/shelly/const.pyi +2 -0
  336. homeassistant-stubs/components/shelly/cover.pyi +2 -0
  337. homeassistant-stubs/components/shelly/entity.pyi +4 -2
  338. homeassistant-stubs/components/shelly/event.pyi +4 -2
  339. homeassistant-stubs/components/shelly/light.pyi +2 -0
  340. homeassistant-stubs/components/shelly/number.pyi +3 -2
  341. homeassistant-stubs/components/shelly/select.pyi +2 -0
  342. homeassistant-stubs/components/shelly/sensor.pyi +9 -2
  343. homeassistant-stubs/components/shelly/switch.pyi +2 -2
  344. homeassistant-stubs/components/shelly/text.pyi +2 -0
  345. homeassistant-stubs/components/shelly/update.pyi +1 -0
  346. homeassistant-stubs/components/shelly/utils.pyi +14 -7
  347. homeassistant-stubs/components/shelly/valve.pyi +2 -0
  348. homeassistant-stubs/components/smlight/button.pyi +3 -2
  349. homeassistant-stubs/components/squeezebox/__init__.pyi +1 -1
  350. homeassistant-stubs/components/squeezebox/binary_sensor.pyi +1 -0
  351. homeassistant-stubs/components/squeezebox/browse_media.pyi +1 -1
  352. homeassistant-stubs/components/squeezebox/button.pyi +3 -0
  353. homeassistant-stubs/components/squeezebox/const.pyi +12 -2
  354. homeassistant-stubs/components/squeezebox/coordinator.pyi +7 -3
  355. homeassistant-stubs/components/squeezebox/media_player.pyi +3 -1
  356. homeassistant-stubs/components/squeezebox/sensor.pyi +1 -0
  357. homeassistant-stubs/components/squeezebox/switch.pyi +47 -0
  358. homeassistant-stubs/components/squeezebox/update.pyi +50 -0
  359. homeassistant-stubs/components/statistics/__init__.pyi +2 -1
  360. homeassistant-stubs/components/suez_water/coordinator.pyi +19 -4
  361. homeassistant-stubs/components/suez_water/sensor.pyi +2 -0
  362. homeassistant-stubs/components/sun/condition.pyi +13 -0
  363. homeassistant-stubs/components/switch_as_x/__init__.pyi +16 -3
  364. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +15 -9
  365. homeassistant-stubs/components/switchbot_cloud/binary_sensor.pyi +29 -0
  366. homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +6 -1
  367. homeassistant-stubs/components/threshold/__init__.pyi +2 -1
  368. homeassistant-stubs/components/tibber/coordinator.pyi +1 -0
  369. homeassistant-stubs/components/tibber/notify.pyi +2 -2
  370. homeassistant-stubs/components/tibber/sensor.pyi +1 -1
  371. homeassistant-stubs/components/trend/__init__.pyi +2 -1
  372. homeassistant-stubs/components/tts/__init__.pyi +4 -1
  373. homeassistant-stubs/components/tts/const.pyi +1 -0
  374. homeassistant-stubs/components/tts/entity.pyi +4 -0
  375. homeassistant-stubs/components/tts/legacy.pyi +3 -1
  376. homeassistant-stubs/components/tts/media_source.pyi +5 -2
  377. homeassistant-stubs/components/unifi/__init__.pyi +1 -1
  378. homeassistant-stubs/components/unifi/config_flow.pyi +2 -2
  379. homeassistant-stubs/components/unifi/device_tracker.pyi +1 -0
  380. homeassistant-stubs/components/unifi/services.pyi +1 -0
  381. homeassistant-stubs/components/uptimerobot/coordinator.pyi +0 -1
  382. homeassistant-stubs/components/uptimerobot/switch.pyi +2 -1
  383. homeassistant-stubs/components/wallbox/const.pyi +10 -0
  384. homeassistant-stubs/components/wallbox/coordinator.pyi +4 -1
  385. homeassistant-stubs/components/wallbox/select.pyi +29 -0
  386. homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
  387. homeassistant-stubs/components/wemo/device_trigger.pyi +1 -1
  388. homeassistant-stubs/components/wemo/light.pyi +1 -0
  389. homeassistant-stubs/components/whois/const.pyi +1 -0
  390. homeassistant-stubs/components/whois/sensor.pyi +2 -1
  391. homeassistant-stubs/components/withings/application_credentials.pyi +2 -0
  392. homeassistant-stubs/components/youtube/sensor.pyi +1 -1
  393. homeassistant-stubs/components/zwave_js/__init__.pyi +1 -2
  394. homeassistant-stubs/components/zwave_js/config_flow.pyi +7 -7
  395. homeassistant-stubs/components/zwave_js/const.pyi +1 -2
  396. homeassistant-stubs/config_entries.pyi +0 -1
  397. homeassistant-stubs/const.pyi +5 -0
  398. homeassistant-stubs/core_config.pyi +0 -2
  399. homeassistant-stubs/helpers/condition.pyi +1 -6
  400. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +10 -0
  401. homeassistant-stubs/helpers/config_validation.pyi +7 -2
  402. homeassistant-stubs/helpers/device.pyi +1 -1
  403. homeassistant-stubs/helpers/device_registry.pyi +4 -4
  404. homeassistant-stubs/helpers/entity_component.pyi +5 -2
  405. homeassistant-stubs/helpers/entity_platform.pyi +4 -1
  406. homeassistant-stubs/helpers/entity_registry.pyi +7 -6
  407. homeassistant-stubs/helpers/helper_integration.pyi +6 -0
  408. homeassistant-stubs/helpers/selector.pyi +55 -50
  409. homeassistant-stubs/helpers/service.pyi +3 -3
  410. homeassistant-stubs/helpers/template.pyi +4 -1
  411. homeassistant-stubs/util/aiohttp.pyi +5 -0
  412. homeassistant-stubs/util/unit_conversion.pyi +11 -1
  413. {homeassistant_stubs-2025.5.3.dist-info → homeassistant_stubs-2025.6.0.dist-info}/METADATA +2 -2
  414. {homeassistant_stubs-2025.5.3.dist-info → homeassistant_stubs-2025.6.0.dist-info}/RECORD +416 -357
  415. homeassistant-stubs/components/metoffice/data.pyi +0 -10
  416. homeassistant-stubs/components/rtsp_to_webrtc/__init__.pyi +0 -19
  417. homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +0 -24
  418. {homeassistant_stubs-2025.5.3.dist-info → homeassistant_stubs-2025.6.0.dist-info}/WHEEL +0 -0
  419. {homeassistant_stubs-2025.5.3.dist-info → homeassistant_stubs-2025.6.0.dist-info}/licenses/LICENSE +0 -0
@@ -2,9 +2,10 @@ import asyncio
2
2
  import logging
3
3
  from .api import AccessTokenAuthImpl as AccessTokenAuthImpl, DEVICE_AUTH_CREDS as DEVICE_AUTH_CREDS, DeviceFlow as DeviceFlow, GoogleHybridAuth as GoogleHybridAuth, InvalidCredential as InvalidCredential, OAuthError as OAuthError, async_create_device_flow as async_create_device_flow
4
4
  from .const import CONF_CALENDAR_ACCESS as CONF_CALENDAR_ACCESS, CONF_CREDENTIAL_TYPE as CONF_CREDENTIAL_TYPE, CredentialType as CredentialType, DEFAULT_FEATURE_ACCESS as DEFAULT_FEATURE_ACCESS, DOMAIN as DOMAIN, FeatureAccess as FeatureAccess
5
+ from .store import GoogleConfigEntry as GoogleConfigEntry
5
6
  from _typeshed import Incomplete
6
7
  from collections.abc import Mapping
7
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_REAUTH as SOURCE_REAUTH
8
+ from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_REAUTH as SOURCE_REAUTH
8
9
  from homeassistant.core import callback as callback
9
10
  from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
10
11
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
@@ -30,7 +31,7 @@ class OAuth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, doma
30
31
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
31
32
  @staticmethod
32
33
  @callback
33
- def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: ...
34
+ def async_get_options_flow(config_entry: GoogleConfigEntry) -> OptionsFlow: ...
34
35
 
35
36
  class OptionsFlowHandler(OptionsFlow):
36
37
  async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -5,9 +5,7 @@ DOMAIN: str
5
5
  CONF_CALENDAR_ACCESS: str
6
6
  CONF_CREDENTIAL_TYPE: str
7
7
  DATA_CALENDARS: str
8
- DATA_SERVICE: str
9
8
  DATA_CONFIG: str
10
- DATA_STORE: str
11
9
 
12
10
  class FeatureAccess(Enum):
13
11
  read_only = 'https://www.googleapis.com/auth/calendar.readonly'
@@ -1,3 +1,4 @@
1
+ from .store import GoogleConfigEntry as GoogleConfigEntry
1
2
  from _typeshed import Incomplete
2
3
  from collections.abc import Iterable
3
4
  from datetime import datetime
@@ -5,7 +6,6 @@ from gcal_sync.api import GoogleCalendarService as GoogleCalendarService
5
6
  from gcal_sync.model import Event
6
7
  from gcal_sync.sync import CalendarEventSyncManager as CalendarEventSyncManager
7
8
  from gcal_sync.timeline import Timeline
8
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
11
11
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
@@ -17,21 +17,21 @@ MAX_UPCOMING_EVENTS: int
17
17
  def _truncate_timeline(timeline: Timeline, max_events: int) -> Timeline: ...
18
18
 
19
19
  class CalendarSyncUpdateCoordinator(DataUpdateCoordinator[Timeline]):
20
- config_entry: ConfigEntry
20
+ config_entry: GoogleConfigEntry
21
21
  sync: Incomplete
22
22
  _upcoming_timeline: Timeline | None
23
- def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry, sync: CalendarEventSyncManager, name: str) -> None: ...
23
+ def __init__(self, hass: HomeAssistant, config_entry: GoogleConfigEntry, sync: CalendarEventSyncManager, name: str) -> None: ...
24
24
  async def _async_update_data(self) -> Timeline: ...
25
25
  async def async_get_events(self, start_date: datetime, end_date: datetime) -> Iterable[Event]: ...
26
26
  @property
27
27
  def upcoming(self) -> Iterable[Event] | None: ...
28
28
 
29
29
  class CalendarQueryUpdateCoordinator(DataUpdateCoordinator[list[Event]]):
30
- config_entry: ConfigEntry
30
+ config_entry: GoogleConfigEntry
31
31
  calendar_service: Incomplete
32
32
  calendar_id: Incomplete
33
33
  _search: Incomplete
34
- def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry, calendar_service: GoogleCalendarService, name: str, calendar_id: str, search: str | None) -> None: ...
34
+ def __init__(self, hass: HomeAssistant, config_entry: GoogleConfigEntry, calendar_service: GoogleCalendarService, name: str, calendar_id: str, search: str | None) -> None: ...
35
35
  async def async_get_events(self, start_date: datetime, end_date: datetime) -> Iterable[Event]: ...
36
36
  async def _async_update_data(self) -> list[Event]: ...
37
37
  @property
@@ -1,11 +1,10 @@
1
- from .const import DATA_STORE as DATA_STORE, DOMAIN as DOMAIN
1
+ from .store import GoogleConfigEntry as GoogleConfigEntry
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
4
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
4
  from homeassistant.core import HomeAssistant as HomeAssistant
6
5
  from typing import Any
7
6
 
8
7
  TO_REDACT: Incomplete
9
8
 
10
9
  def redact_store(data: dict[str, Any]) -> dict[str, Any]: ...
11
- async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: ConfigEntry) -> dict[str, Any]: ...
10
+ async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: GoogleConfigEntry) -> dict[str, Any]: ...
@@ -1,6 +1,9 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
+ from dataclasses import dataclass
4
+ from gcal_sync.api import GoogleCalendarService as GoogleCalendarService
3
5
  from gcal_sync.store import CalendarStore
6
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
7
  from homeassistant.core import HomeAssistant as HomeAssistant
5
8
  from homeassistant.helpers.storage import Store as Store
6
9
  from typing import Any
@@ -9,6 +12,12 @@ _LOGGER: Incomplete
9
12
  STORAGE_KEY_FORMAT: str
10
13
  STORAGE_VERSION: int
11
14
  STORAGE_SAVE_DELAY_SECONDS: int
15
+ type GoogleConfigEntry = ConfigEntry[GoogleRuntimeData]
16
+
17
+ @dataclass
18
+ class GoogleRuntimeData:
19
+ service: GoogleCalendarService
20
+ store: LocalCalendarStore
12
21
 
13
22
  class LocalCalendarStore(CalendarStore):
14
23
  _store: Incomplete
@@ -1,9 +1,8 @@
1
- from .const import CONF_LANGUAGE_CODE as CONF_LANGUAGE_CODE, DATA_MEM_STORAGE as DATA_MEM_STORAGE, DATA_SESSION as DATA_SESSION, DOMAIN as DOMAIN, SUPPORTED_LANGUAGE_CODES as SUPPORTED_LANGUAGE_CODES
2
- from .helpers import GoogleAssistantSDKAudioView as GoogleAssistantSDKAudioView, InMemoryStorage as InMemoryStorage, async_send_text_commands as async_send_text_commands, best_matching_language_code as best_matching_language_code
1
+ from .const import CONF_LANGUAGE_CODE as CONF_LANGUAGE_CODE, DOMAIN as DOMAIN, SUPPORTED_LANGUAGE_CODES as SUPPORTED_LANGUAGE_CODES
2
+ from .helpers import GoogleAssistantSDKAudioView as GoogleAssistantSDKAudioView, GoogleAssistantSDKConfigEntry as GoogleAssistantSDKConfigEntry, GoogleAssistantSDKRuntimeData as GoogleAssistantSDKRuntimeData, InMemoryStorage as InMemoryStorage, async_send_text_commands as async_send_text_commands, best_matching_language_code as best_matching_language_code
3
3
  from _typeshed import Incomplete
4
4
  from gassist_text import TextAssistant
5
5
  from homeassistant.components import conversation as conversation
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
6
  from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_NAME as CONF_NAME, Platform as Platform
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, ServiceResponse as ServiceResponse, SupportsResponse as SupportsResponse
9
8
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
@@ -18,8 +17,8 @@ SERVICE_SEND_TEXT_COMMAND_SCHEMA: Incomplete
18
17
  CONFIG_SCHEMA: Incomplete
19
18
 
20
19
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
21
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
22
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
20
+ async def async_setup_entry(hass: HomeAssistant, entry: GoogleAssistantSDKConfigEntry) -> bool: ...
21
+ async def async_unload_entry(hass: HomeAssistant, entry: GoogleAssistantSDKConfigEntry) -> bool: ...
23
22
  async def async_setup_service(hass: HomeAssistant) -> None: ...
24
23
 
25
24
  class GoogleAssistantConversationAgent(conversation.AbstractConversationAgent):
@@ -28,7 +27,7 @@ class GoogleAssistantConversationAgent(conversation.AbstractConversationAgent):
28
27
  assistant: TextAssistant | None
29
28
  session: OAuth2Session | None
30
29
  language: str | None
31
- def __init__(self, hass: HomeAssistant, entry: ConfigEntry) -> None: ...
30
+ def __init__(self, hass: HomeAssistant, entry: GoogleAssistantSDKConfigEntry) -> None: ...
32
31
  @property
33
32
  def supported_languages(self) -> list[str]: ...
34
33
  async def async_process(self, user_input: conversation.ConversationInput) -> conversation.ConversationResult: ...
@@ -1,9 +1,9 @@
1
1
  import logging
2
2
  from .const import CONF_LANGUAGE_CODE as CONF_LANGUAGE_CODE, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN, SUPPORTED_LANGUAGE_CODES as SUPPORTED_LANGUAGE_CODES
3
- from .helpers import default_language_code as default_language_code
3
+ from .helpers import GoogleAssistantSDKConfigEntry as GoogleAssistantSDKConfigEntry, default_language_code as default_language_code
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Mapping
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_REAUTH as SOURCE_REAUTH
6
+ from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_REAUTH as SOURCE_REAUTH
7
7
  from homeassistant.core import callback as callback
8
8
  from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
9
9
  from typing import Any
@@ -21,7 +21,7 @@ class OAuth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, doma
21
21
  async def async_oauth_create_entry(self, data: dict[str, Any]) -> ConfigFlowResult: ...
22
22
  @staticmethod
23
23
  @callback
24
- def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: ...
24
+ def async_get_options_flow(config_entry: GoogleAssistantSDKConfigEntry) -> OptionsFlow: ...
25
25
 
26
26
  class OptionsFlowHandler(OptionsFlow):
27
27
  async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -4,6 +4,4 @@ from typing import Final
4
4
  DOMAIN: Final[str]
5
5
  DEFAULT_NAME: Final[str]
6
6
  CONF_LANGUAGE_CODE: Final[str]
7
- DATA_MEM_STORAGE: Final[str]
8
- DATA_SESSION: Final[str]
9
7
  SUPPORTED_LANGUAGE_CODES: Final[Incomplete]
@@ -1,9 +1,9 @@
1
+ from .helpers import GoogleAssistantSDKConfigEntry as GoogleAssistantSDKConfigEntry
1
2
  from _typeshed import Incomplete
2
3
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
3
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
4
  from homeassistant.core import HomeAssistant as HomeAssistant
5
5
  from typing import Any
6
6
 
7
7
  TO_REDACT: Incomplete
8
8
 
9
- async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: ConfigEntry) -> dict[str, Any]: ...
9
+ async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: GoogleAssistantSDKConfigEntry) -> dict[str, Any]: ...
@@ -1,4 +1,4 @@
1
- from .const import CONF_LANGUAGE_CODE as CONF_LANGUAGE_CODE, DATA_MEM_STORAGE as DATA_MEM_STORAGE, DATA_SESSION as DATA_SESSION, DOMAIN as DOMAIN, SUPPORTED_LANGUAGE_CODES as SUPPORTED_LANGUAGE_CODES
1
+ from .const import CONF_LANGUAGE_CODE as CONF_LANGUAGE_CODE, DOMAIN as DOMAIN, SUPPORTED_LANGUAGE_CODES as SUPPORTED_LANGUAGE_CODES
2
2
  from _typeshed import Incomplete
3
3
  from aiohttp import web
4
4
  from dataclasses import dataclass
@@ -7,11 +7,18 @@ from homeassistant.components.media_player import ATTR_MEDIA_ANNOUNCE as ATTR_ME
7
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
8
  from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
10
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
10
11
  from homeassistant.helpers.config_entry_oauth2_flow import OAuth2Session as OAuth2Session
11
12
  from homeassistant.helpers.event import async_call_later as async_call_later
12
13
 
13
14
  _LOGGER: Incomplete
14
15
  DEFAULT_LANGUAGE_CODES: Incomplete
16
+ type GoogleAssistantSDKConfigEntry = ConfigEntry[GoogleAssistantSDKRuntimeData]
17
+
18
+ @dataclass
19
+ class GoogleAssistantSDKRuntimeData:
20
+ session: OAuth2Session
21
+ mem_storage: InMemoryStorage
15
22
 
16
23
  @dataclass
17
24
  class CommandResponse:
@@ -1,8 +1,7 @@
1
1
  from .const import CONF_LANGUAGE_CODE as CONF_LANGUAGE_CODE, DOMAIN as DOMAIN
2
- from .helpers import async_send_text_commands as async_send_text_commands, default_language_code as default_language_code
2
+ from .helpers import GoogleAssistantSDKConfigEntry as GoogleAssistantSDKConfigEntry, async_send_text_commands as async_send_text_commands, default_language_code as default_language_code
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.notify import ATTR_TARGET as ATTR_TARGET, BaseNotificationService as BaseNotificationService
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
5
  from homeassistant.core import HomeAssistant as HomeAssistant
7
6
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
8
7
  from typing import Any
@@ -1,3 +1,6 @@
1
+ from greeneye import Monitors as Monitors
2
+ from homeassistant.util.hass_dict import HassKey as HassKey
3
+
1
4
  CONF_CHANNELS: str
2
5
  CONF_COUNTED_QUANTITY: str
3
6
  CONF_COUNTED_QUANTITY_PER_PULSE: str
@@ -10,8 +13,8 @@ CONF_SERIAL_NUMBER: str
10
13
  CONF_TEMPERATURE_SENSORS: str
11
14
  CONF_TIME_UNIT: str
12
15
  CONF_VOLTAGE_SENSORS: str
13
- DATA_GREENEYE_MONITOR: str
14
16
  DOMAIN: str
17
+ DATA_GREENEYE_MONITOR: HassKey[Monitors]
15
18
  SENSOR_TYPE_CURRENT: str
16
19
  SENSOR_TYPE_PULSE_COUNTER: str
17
20
  SENSOR_TYPE_TEMPERATURE: str
@@ -1,37 +1,30 @@
1
1
  import asyncio
2
2
  from .const import API_SENSOR_PAIRED_SENSOR_STATUS as API_SENSOR_PAIRED_SENSOR_STATUS, API_SENSOR_PAIR_DUMP as API_SENSOR_PAIR_DUMP, API_SYSTEM_DIAGNOSTICS as API_SYSTEM_DIAGNOSTICS, API_SYSTEM_ONBOARD_SENSOR_STATUS as API_SYSTEM_ONBOARD_SENSOR_STATUS, API_VALVE_STATUS as API_VALVE_STATUS, API_WIFI_STATUS as API_WIFI_STATUS, CONF_UID as CONF_UID, DOMAIN as DOMAIN, LOGGER as LOGGER, SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED as SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED
3
3
  from .coordinator import GuardianDataUpdateCoordinator as GuardianDataUpdateCoordinator
4
+ from .services import setup_services as setup_services
4
5
  from _typeshed import Incomplete
5
6
  from aioguardian import Client
6
- from collections.abc import Callable as Callable
7
7
  from dataclasses import dataclass
8
8
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
- from homeassistant.const import ATTR_DEVICE_ID as ATTR_DEVICE_ID, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_FILENAME as CONF_FILENAME, CONF_IP_ADDRESS as CONF_IP_ADDRESS, CONF_PORT as CONF_PORT, CONF_URL as CONF_URL, Platform as Platform
10
- from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
11
- from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
+ from homeassistant.const import CONF_IP_ADDRESS as CONF_IP_ADDRESS, CONF_PORT as CONF_PORT, Platform as Platform
10
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
12
11
  from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
12
+ from homeassistant.helpers.typing import ConfigType as ConfigType
13
13
 
14
- DATA_PAIRED_SENSOR_MANAGER: str
15
- SERVICE_NAME_PAIR_SENSOR: str
16
- SERVICE_NAME_UNPAIR_SENSOR: str
17
- SERVICE_NAME_UPGRADE_FIRMWARE: str
18
- SERVICES: Incomplete
19
- SERVICE_BASE_SCHEMA: Incomplete
20
- SERVICE_PAIR_UNPAIR_SENSOR_SCHEMA: Incomplete
21
- SERVICE_UPGRADE_FIRMWARE_SCHEMA: Incomplete
14
+ CONFIG_SCHEMA: Incomplete
22
15
  PLATFORMS: Incomplete
16
+ type GuardianConfigEntry = ConfigEntry[GuardianData]
23
17
 
24
18
  @dataclass
25
19
  class GuardianData:
26
- entry: ConfigEntry
20
+ entry: GuardianConfigEntry
27
21
  client: Client
28
22
  valve_controller_coordinators: dict[str, GuardianDataUpdateCoordinator]
29
23
  paired_sensor_manager: PairedSensorManager
30
24
 
31
- @callback
32
- def async_get_entry_id_for_service_call(hass: HomeAssistant, call: ServiceCall) -> str: ...
33
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
34
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
25
+ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
26
+ async def async_setup_entry(hass: HomeAssistant, entry: GuardianConfigEntry) -> bool: ...
27
+ async def async_unload_entry(hass: HomeAssistant, entry: GuardianConfigEntry) -> bool: ...
35
28
 
36
29
  class PairedSensorManager:
37
30
  _api_lock: Incomplete
@@ -41,7 +34,7 @@ class PairedSensorManager:
41
34
  _paired_uids: set[str]
42
35
  _sensor_pair_dump_coordinator: Incomplete
43
36
  coordinators: dict[str, GuardianDataUpdateCoordinator]
44
- def __init__(self, hass: HomeAssistant, entry: ConfigEntry, client: Client, api_lock: asyncio.Lock, sensor_pair_dump_coordinator: GuardianDataUpdateCoordinator) -> None: ...
37
+ def __init__(self, hass: HomeAssistant, entry: GuardianConfigEntry, client: Client, api_lock: asyncio.Lock, sensor_pair_dump_coordinator: GuardianDataUpdateCoordinator) -> None: ...
45
38
  async def async_initialize(self) -> None: ...
46
39
  async def async_pair_sensor(self, uid: str) -> None: ...
47
40
  async def async_process_latest_paired_sensor_uids(self) -> None: ...
@@ -1,5 +1,5 @@
1
- from . import GuardianData as GuardianData
2
- from .const import API_SYSTEM_ONBOARD_SENSOR_STATUS as API_SYSTEM_ONBOARD_SENSOR_STATUS, CONF_UID as CONF_UID, DOMAIN as DOMAIN, SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED as SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED
1
+ from . import GuardianConfigEntry as GuardianConfigEntry
2
+ from .const import API_SYSTEM_ONBOARD_SENSOR_STATUS as API_SYSTEM_ONBOARD_SENSOR_STATUS, CONF_UID as CONF_UID, SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED as SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED
3
3
  from .coordinator import GuardianDataUpdateCoordinator as GuardianDataUpdateCoordinator
4
4
  from .entity import PairedSensorEntity as PairedSensorEntity, ValveControllerEntity as ValveControllerEntity, ValveControllerEntityDescription as ValveControllerEntityDescription
5
5
  from .util import EntityDomainReplacementStrategy as EntityDomainReplacementStrategy, async_finish_entity_domain_replacements as async_finish_entity_domain_replacements
@@ -7,7 +7,6 @@ from _typeshed import Incomplete
7
7
  from collections.abc import Callable as Callable
8
8
  from dataclasses import dataclass
9
9
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
10
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
11
10
  from homeassistant.const import EntityCategory as EntityCategory
12
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
13
12
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
@@ -29,18 +28,18 @@ class ValveControllerBinarySensorDescription(BinarySensorEntityDescription, Valv
29
28
  PAIRED_SENSOR_DESCRIPTIONS: Incomplete
30
29
  VALVE_CONTROLLER_DESCRIPTIONS: Incomplete
31
30
 
32
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
31
+ async def async_setup_entry(hass: HomeAssistant, entry: GuardianConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
33
32
 
34
33
  class PairedSensorBinarySensor(PairedSensorEntity, BinarySensorEntity):
35
34
  entity_description: PairedSensorBinarySensorDescription
36
35
  _attr_is_on: bool
37
- def __init__(self, entry: ConfigEntry, coordinator: GuardianDataUpdateCoordinator, description: BinarySensorEntityDescription) -> None: ...
36
+ def __init__(self, entry: GuardianConfigEntry, coordinator: GuardianDataUpdateCoordinator, description: BinarySensorEntityDescription) -> None: ...
38
37
  @property
39
38
  def is_on(self) -> bool: ...
40
39
 
41
40
  class ValveControllerBinarySensor(ValveControllerEntity, BinarySensorEntity):
42
41
  entity_description: ValveControllerBinarySensorDescription
43
42
  _attr_is_on: bool
44
- def __init__(self, entry: ConfigEntry, coordinators: dict[str, GuardianDataUpdateCoordinator], description: ValveControllerBinarySensorDescription) -> None: ...
43
+ def __init__(self, entry: GuardianConfigEntry, coordinators: dict[str, GuardianDataUpdateCoordinator], description: ValveControllerBinarySensorDescription) -> None: ...
45
44
  @property
46
45
  def is_on(self) -> bool: ...
@@ -1,5 +1,5 @@
1
- from . import GuardianData as GuardianData
2
- from .const import API_SYSTEM_DIAGNOSTICS as API_SYSTEM_DIAGNOSTICS, DOMAIN as DOMAIN
1
+ from . import GuardianConfigEntry as GuardianConfigEntry, GuardianData as GuardianData
2
+ from .const import API_SYSTEM_DIAGNOSTICS as API_SYSTEM_DIAGNOSTICS
3
3
  from .entity import ValveControllerEntity as ValveControllerEntity, ValveControllerEntityDescription as ValveControllerEntityDescription
4
4
  from .util import convert_exceptions_to_homeassistant_error as convert_exceptions_to_homeassistant_error
5
5
  from _typeshed import Incomplete
@@ -7,7 +7,6 @@ from aioguardian import Client as Client
7
7
  from collections.abc import Awaitable, Callable as Callable
8
8
  from dataclasses import dataclass
9
9
  from homeassistant.components.button import ButtonDeviceClass as ButtonDeviceClass, ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
10
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
11
10
  from homeassistant.const import EntityCategory as EntityCategory
12
11
  from homeassistant.core import HomeAssistant as HomeAssistant
13
12
  from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
@@ -25,13 +24,13 @@ async def _async_valve_reset(client: Client) -> None: ...
25
24
 
26
25
  BUTTON_DESCRIPTIONS: Incomplete
27
26
 
28
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
27
+ async def async_setup_entry(hass: HomeAssistant, entry: GuardianConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
29
28
 
30
29
  class GuardianButton(ValveControllerEntity, ButtonEntity):
31
30
  _attr_device_class: Incomplete
32
31
  _attr_entity_category: Incomplete
33
32
  entity_description: ValveControllerButtonDescription
34
33
  _client: Incomplete
35
- def __init__(self, entry: ConfigEntry, data: GuardianData, description: ValveControllerButtonDescription) -> None: ...
34
+ def __init__(self, entry: GuardianConfigEntry, data: GuardianData, description: ValveControllerButtonDescription) -> None: ...
36
35
  @convert_exceptions_to_homeassistant_error
37
36
  async def async_press(self) -> None: ...
@@ -1,9 +1,9 @@
1
1
  import asyncio
2
+ from . import GuardianConfigEntry as GuardianConfigEntry
2
3
  from .const import LOGGER as LOGGER
3
4
  from _typeshed import Incomplete
4
5
  from aioguardian import Client as Client
5
6
  from collections.abc import Callable as Callable, Coroutine
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
8
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
9
9
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
@@ -13,12 +13,12 @@ DEFAULT_UPDATE_INTERVAL: Incomplete
13
13
  SIGNAL_REBOOT_REQUESTED: str
14
14
 
15
15
  class GuardianDataUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
16
- config_entry: ConfigEntry
16
+ config_entry: GuardianConfigEntry
17
17
  _api_coro: Incomplete
18
18
  _api_lock: Incomplete
19
19
  _client: Incomplete
20
20
  signal_reboot_requested: Incomplete
21
- def __init__(self, hass: HomeAssistant, *, entry: ConfigEntry, client: Client, api_name: str, api_coro: Callable[[], Coroutine[Any, Any, dict[str, Any]]], api_lock: asyncio.Lock, valve_controller_uid: str) -> None: ...
21
+ def __init__(self, hass: HomeAssistant, *, entry: GuardianConfigEntry, client: Client, api_name: str, api_coro: Callable[[], Coroutine[Any, Any, dict[str, Any]]], api_lock: asyncio.Lock, valve_controller_uid: str) -> None: ...
22
22
  async def _async_update_data(self) -> dict[str, Any]: ...
23
23
  last_update_success: bool
24
24
  async def async_initialize(self) -> None: ...
@@ -1,8 +1,7 @@
1
- from . import GuardianData as GuardianData
2
- from .const import CONF_UID as CONF_UID, DOMAIN as DOMAIN
1
+ from . import GuardianConfigEntry as GuardianConfigEntry
2
+ from .const import CONF_UID as CONF_UID
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_UNIQUE_ID as CONF_UNIQUE_ID
7
6
  from homeassistant.core import HomeAssistant as HomeAssistant
8
7
  from typing import Any
@@ -13,4 +12,4 @@ CONF_SSID: str
13
12
  CONF_TITLE: str
14
13
  TO_REDACT: 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: GuardianConfigEntry) -> dict[str, Any]: ...
@@ -1,8 +1,8 @@
1
+ from . import GuardianConfigEntry as GuardianConfigEntry
1
2
  from .const import API_SYSTEM_DIAGNOSTICS as API_SYSTEM_DIAGNOSTICS, CONF_UID as CONF_UID, DOMAIN as DOMAIN
2
3
  from .coordinator import GuardianDataUpdateCoordinator as GuardianDataUpdateCoordinator
3
4
  from _typeshed import Incomplete
4
5
  from dataclasses import dataclass
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
7
7
  from homeassistant.helpers.entity import EntityDescription as EntityDescription
8
8
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
@@ -15,7 +15,7 @@ class GuardianEntity(CoordinatorEntity[GuardianDataUpdateCoordinator]):
15
15
  class PairedSensorEntity(GuardianEntity):
16
16
  _attr_device_info: Incomplete
17
17
  _attr_unique_id: Incomplete
18
- def __init__(self, entry: ConfigEntry, coordinator: GuardianDataUpdateCoordinator, description: EntityDescription) -> None: ...
18
+ def __init__(self, entry: GuardianConfigEntry, coordinator: GuardianDataUpdateCoordinator, description: EntityDescription) -> None: ...
19
19
 
20
20
  @dataclass(frozen=True, kw_only=True)
21
21
  class ValveControllerEntityDescription(EntityDescription):
@@ -25,4 +25,4 @@ class ValveControllerEntity(GuardianEntity):
25
25
  _diagnostics_coordinator: Incomplete
26
26
  _attr_device_info: Incomplete
27
27
  _attr_unique_id: Incomplete
28
- def __init__(self, entry: ConfigEntry, coordinators: dict[str, GuardianDataUpdateCoordinator], description: ValveControllerEntityDescription) -> None: ...
28
+ def __init__(self, entry: GuardianConfigEntry, coordinators: dict[str, GuardianDataUpdateCoordinator], description: ValveControllerEntityDescription) -> None: ...
@@ -1,11 +1,10 @@
1
- from . import GuardianData as GuardianData
2
- from .const import API_SYSTEM_DIAGNOSTICS as API_SYSTEM_DIAGNOSTICS, API_SYSTEM_ONBOARD_SENSOR_STATUS as API_SYSTEM_ONBOARD_SENSOR_STATUS, API_VALVE_STATUS as API_VALVE_STATUS, CONF_UID as CONF_UID, DOMAIN as DOMAIN, SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED as SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED
1
+ from . import GuardianConfigEntry as GuardianConfigEntry
2
+ from .const import API_SYSTEM_DIAGNOSTICS as API_SYSTEM_DIAGNOSTICS, API_SYSTEM_ONBOARD_SENSOR_STATUS as API_SYSTEM_ONBOARD_SENSOR_STATUS, API_VALVE_STATUS as API_VALVE_STATUS, CONF_UID as CONF_UID, SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED as SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED
3
3
  from .entity import PairedSensorEntity as PairedSensorEntity, ValveControllerEntity as ValveControllerEntity, ValveControllerEntityDescription as ValveControllerEntityDescription
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Callable as Callable
6
6
  from dataclasses import dataclass
7
7
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
8
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
8
  from homeassistant.const import EntityCategory as EntityCategory, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime
10
9
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
11
10
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
@@ -32,7 +31,7 @@ class ValveControllerSensorDescription(SensorEntityDescription, ValveControllerE
32
31
  PAIRED_SENSOR_DESCRIPTIONS: Incomplete
33
32
  VALVE_CONTROLLER_DESCRIPTIONS: Incomplete
34
33
 
35
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
34
+ async def async_setup_entry(hass: HomeAssistant, entry: GuardianConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
36
35
 
37
36
  class PairedSensorSensor(PairedSensorEntity, SensorEntity):
38
37
  entity_description: PairedSensorDescription
@@ -0,0 +1,28 @@
1
+ from . import GuardianConfigEntry as GuardianConfigEntry, GuardianData as GuardianData
2
+ from .const import CONF_UID as CONF_UID, DOMAIN as DOMAIN
3
+ from _typeshed import Incomplete
4
+ from collections.abc import Callable as Callable, Coroutine
5
+ from homeassistant.const import ATTR_DEVICE_ID as ATTR_DEVICE_ID, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_FILENAME as CONF_FILENAME, CONF_PORT as CONF_PORT, CONF_URL as CONF_URL
6
+ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
7
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
8
+ from typing import Any
9
+
10
+ SERVICE_NAME_PAIR_SENSOR: str
11
+ SERVICE_NAME_UNPAIR_SENSOR: str
12
+ SERVICE_NAME_UPGRADE_FIRMWARE: str
13
+ SERVICES: Incomplete
14
+ SERVICE_BASE_SCHEMA: Incomplete
15
+ SERVICE_PAIR_UNPAIR_SENSOR_SCHEMA: Incomplete
16
+ SERVICE_UPGRADE_FIRMWARE_SCHEMA: Incomplete
17
+
18
+ @callback
19
+ def async_get_entry_id_for_service_call(call: ServiceCall) -> GuardianConfigEntry: ...
20
+ @callback
21
+ def call_with_data(func: Callable[[ServiceCall, GuardianData], Coroutine[Any, Any, None]]) -> Callable[[ServiceCall], Coroutine[Any, Any, None]]: ...
22
+ @call_with_data
23
+ async def async_pair_sensor(call: ServiceCall, data: GuardianData) -> None: ...
24
+ @call_with_data
25
+ async def async_unpair_sensor(call: ServiceCall, data: GuardianData) -> None: ...
26
+ @call_with_data
27
+ async def async_upgrade_firmware(call: ServiceCall, data: GuardianData) -> None: ...
28
+ def setup_services(hass: HomeAssistant) -> None: ...
@@ -1,5 +1,5 @@
1
- from . import GuardianData as GuardianData
2
- from .const import API_VALVE_STATUS as API_VALVE_STATUS, API_WIFI_STATUS as API_WIFI_STATUS, DOMAIN as DOMAIN
1
+ from . import GuardianConfigEntry as GuardianConfigEntry, GuardianData as GuardianData
2
+ from .const import API_VALVE_STATUS as API_VALVE_STATUS, API_WIFI_STATUS as API_WIFI_STATUS
3
3
  from .entity import ValveControllerEntity as ValveControllerEntity, ValveControllerEntityDescription as ValveControllerEntityDescription
4
4
  from .util import convert_exceptions_to_homeassistant_error as convert_exceptions_to_homeassistant_error
5
5
  from .valve import GuardianValveState as GuardianValveState
@@ -8,7 +8,6 @@ from aioguardian import Client as Client
8
8
  from collections.abc import Awaitable, Callable as Callable, Mapping
9
9
  from dataclasses import dataclass
10
10
  from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
11
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
12
11
  from homeassistant.const import EntityCategory as EntityCategory
13
12
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
14
13
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
@@ -39,12 +38,12 @@ def is_open(data: dict[str, Any]) -> bool: ...
39
38
 
40
39
  VALVE_CONTROLLER_DESCRIPTIONS: Incomplete
41
40
 
42
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
41
+ async def async_setup_entry(hass: HomeAssistant, entry: GuardianConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
43
42
 
44
43
  class ValveControllerSwitch(ValveControllerEntity, SwitchEntity):
45
44
  entity_description: ValveControllerSwitchDescription
46
45
  _client: Incomplete
47
- def __init__(self, entry: ConfigEntry, data: GuardianData, description: ValveControllerSwitchDescription) -> None: ...
46
+ def __init__(self, entry: GuardianConfigEntry, data: GuardianData, description: ValveControllerSwitchDescription) -> None: ...
48
47
  @property
49
48
  def extra_state_attributes(self) -> Mapping[str, Any]: ...
50
49
  @property
@@ -1,9 +1,9 @@
1
+ from . import GuardianConfigEntry as GuardianConfigEntry
1
2
  from .const import LOGGER as LOGGER
2
3
  from .entity import GuardianEntity as GuardianEntity
3
4
  from _typeshed import Incomplete
4
5
  from collections.abc import Callable as Callable, Coroutine, Iterable
5
6
  from dataclasses import dataclass
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
9
  from typing import Any, Concatenate
@@ -17,6 +17,6 @@ class EntityDomainReplacementStrategy:
17
17
  old_unique_id: str
18
18
 
19
19
  @callback
20
- def async_finish_entity_domain_replacements(hass: HomeAssistant, entry: ConfigEntry, entity_replacement_strategies: Iterable[EntityDomainReplacementStrategy]) -> None: ...
20
+ def async_finish_entity_domain_replacements(hass: HomeAssistant, entry: GuardianConfigEntry, entity_replacement_strategies: Iterable[EntityDomainReplacementStrategy]) -> None: ...
21
21
  @callback
22
22
  def convert_exceptions_to_homeassistant_error[_GuardianEntityT: GuardianEntity, **_P](func: Callable[Concatenate[_GuardianEntityT, _P], Coroutine[Any, Any, Any]]) -> Callable[Concatenate[_GuardianEntityT, _P], Coroutine[Any, Any, None]]: ...
@@ -1,5 +1,5 @@
1
- from . import GuardianData as GuardianData
2
- from .const import API_VALVE_STATUS as API_VALVE_STATUS, DOMAIN as DOMAIN
1
+ from . import GuardianConfigEntry as GuardianConfigEntry, GuardianData as GuardianData
2
+ from .const import API_VALVE_STATUS as API_VALVE_STATUS
3
3
  from .entity import ValveControllerEntity as ValveControllerEntity, ValveControllerEntityDescription as ValveControllerEntityDescription
4
4
  from .util import convert_exceptions_to_homeassistant_error as convert_exceptions_to_homeassistant_error
5
5
  from _typeshed import Incomplete
@@ -8,7 +8,6 @@ from collections.abc import Callable as Callable, Coroutine
8
8
  from dataclasses import dataclass
9
9
  from enum import StrEnum
10
10
  from homeassistant.components.valve import ValveDeviceClass as ValveDeviceClass, ValveEntity as ValveEntity, ValveEntityDescription as ValveEntityDescription, ValveEntityFeature as ValveEntityFeature
11
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
12
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
13
12
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
14
13
  from typing import Any
@@ -44,13 +43,13 @@ def is_opening(data: dict[str, Any]) -> bool: ...
44
43
 
45
44
  VALVE_CONTROLLER_DESCRIPTIONS: Incomplete
46
45
 
47
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
46
+ async def async_setup_entry(hass: HomeAssistant, entry: GuardianConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
48
47
 
49
48
  class ValveControllerValve(ValveControllerEntity, ValveEntity):
50
49
  _attr_supported_features: Incomplete
51
50
  entity_description: ValveControllerValveDescription
52
51
  _client: Incomplete
53
- def __init__(self, entry: ConfigEntry, data: GuardianData, description: ValveControllerValveDescription) -> None: ...
52
+ def __init__(self, entry: GuardianConfigEntry, data: GuardianData, description: ValveControllerValveDescription) -> None: ...
54
53
  @property
55
54
  def is_closing(self) -> bool: ...
56
55
  @property
@@ -1,5 +1,5 @@
1
1
  from _typeshed import Incomplete
2
- from homeassistant.const import APPLICATION_NAME as APPLICATION_NAME, CONF_PATH as CONF_PATH, __version__ as __version__
2
+ from homeassistant.const import APPLICATION_NAME as APPLICATION_NAME, __version__ as __version__
3
3
 
4
4
  CONF_API_USER: str
5
5
  DEFAULT_URL: str
@@ -9,11 +9,6 @@ FORGOT_PASSWORD_URL: str
9
9
  SIGN_UP_URL: str
10
10
  HABITICANS_URL: str
11
11
  DOMAIN: str
12
- SERVICE_API_CALL: str
13
- ATTR_PATH = CONF_PATH
14
- ATTR_ARGS: str
15
- EVENT_API_CALL_SUCCESS: Incomplete
16
- ATTR_DATA: str
17
12
  MANUFACTURER: str
18
13
  NAME: str
19
14
  ATTR_CONFIG_ENTRY: str
@@ -20,10 +20,10 @@ class HabiticaData:
20
20
  type HabiticaConfigEntry = ConfigEntry[HabiticaDataUpdateCoordinator]
21
21
 
22
22
  class HabiticaDataUpdateCoordinator(DataUpdateCoordinator[HabiticaData]):
23
- config_entry: ConfigEntry
23
+ config_entry: HabiticaConfigEntry
24
24
  habitica: Incomplete
25
25
  content: ContentData
26
- def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry, habitica: Habitica) -> None: ...
26
+ def __init__(self, hass: HomeAssistant, config_entry: HabiticaConfigEntry, habitica: Habitica) -> None: ...
27
27
  async def _async_setup(self) -> None: ...
28
28
  async def _async_update_data(self) -> HabiticaData: ...
29
29
  async def execute(self, func: Callable[[HabiticaDataUpdateCoordinator], Any]) -> None: ...
@@ -1,7 +1,7 @@
1
1
  from .const import ASSETS_URL as ASSETS_URL, DOMAIN as DOMAIN
2
2
  from .coordinator import HabiticaConfigEntry as HabiticaConfigEntry, HabiticaDataUpdateCoordinator as HabiticaDataUpdateCoordinator
3
3
  from .entity import HabiticaBase as HabiticaBase
4
- from .util import get_attribute_points as get_attribute_points, get_attributes_total as get_attributes_total, inventory_list as inventory_list
4
+ from .util import get_attribute_points as get_attribute_points, get_attributes_total as get_attributes_total, inventory_list as inventory_list, pending_damage as pending_damage, pending_quest_items as pending_quest_items
5
5
  from _typeshed import Incomplete
6
6
  from collections.abc import Callable as Callable, Mapping
7
7
  from dataclasses import dataclass
@@ -54,6 +54,8 @@ class HabiticaSensorEntity(StrEnum):
54
54
  FOOD_TOTAL = 'food_total'
55
55
  SADDLE = 'saddle'
56
56
  QUEST_SCROLLS = 'quest_scrolls'
57
+ PENDING_DAMAGE = 'pending_damage'
58
+ PENDING_QUEST_ITEMS = 'pending_quest_items'
57
59
 
58
60
  SENSOR_DESCRIPTIONS: tuple[HabiticaSensorEntityDescription, ...]
59
61
  TASKS_MAP_ID: str