homeassistant-stubs 2024.2.4__py3-none-any.whl → 2024.3.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 (302) hide show
  1. homeassistant-stubs/bootstrap.pyi +20 -5
  2. homeassistant-stubs/components/aftership/const.pyi +0 -1
  3. homeassistant-stubs/components/aftership/sensor.pyi +2 -2
  4. homeassistant-stubs/components/airthings_ble/config_flow.pyi +1 -0
  5. homeassistant-stubs/components/airzone_cloud/sensor.pyi +1 -1
  6. homeassistant-stubs/components/alexa/config.pyi +2 -0
  7. homeassistant-stubs/components/amberelectric/sensor.pyi +0 -1
  8. homeassistant-stubs/components/androidtv/entity.pyi +30 -0
  9. homeassistant-stubs/components/androidtv/media_player.pyi +5 -23
  10. homeassistant-stubs/components/anthemav/media_player.pyi +0 -1
  11. homeassistant-stubs/components/api/__init__.pyi +0 -1
  12. homeassistant-stubs/components/apple_tv/__init__.pyi +68 -0
  13. homeassistant-stubs/components/apple_tv/browse_media.pyi +5 -0
  14. homeassistant-stubs/components/apple_tv/config_flow.pyi +63 -0
  15. homeassistant-stubs/components/apple_tv/const.pyi +4 -0
  16. homeassistant-stubs/components/apple_tv/media_player.pyi +93 -0
  17. homeassistant-stubs/components/apple_tv/remote.pyi +23 -0
  18. homeassistant-stubs/components/assist_pipeline/__init__.pyi +1 -1
  19. homeassistant-stubs/components/assist_pipeline/const.pyi +1 -1
  20. homeassistant-stubs/components/assist_pipeline/error.pyi +4 -0
  21. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +5 -5
  22. homeassistant-stubs/components/asterisk_mbox/__init__.pyi +1 -0
  23. homeassistant-stubs/components/asuswrt/router.pyi +1 -1
  24. homeassistant-stubs/components/auth/__init__.pyi +2 -2
  25. homeassistant-stubs/components/automation/__init__.pyi +2 -1
  26. homeassistant-stubs/components/axis/binary_sensor.pyi +4 -0
  27. homeassistant-stubs/components/backup/manager.pyi +5 -3
  28. homeassistant-stubs/components/backup/websocket.pyi +4 -2
  29. homeassistant-stubs/components/blue_current/__init__.pyi +4 -3
  30. homeassistant-stubs/components/blue_current/entity.pyi +5 -2
  31. homeassistant-stubs/components/bluetooth/manager.pyi +2 -2
  32. homeassistant-stubs/components/bluetooth/match.pyi +3 -0
  33. homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +1 -0
  34. homeassistant-stubs/components/braviatv/coordinator.pyi +2 -0
  35. homeassistant-stubs/components/braviatv/media_player.pyi +5 -0
  36. homeassistant-stubs/components/brother/sensor.pyi +3 -3
  37. homeassistant-stubs/components/bthome/config_flow.pyi +4 -4
  38. homeassistant-stubs/components/calendar/trigger.pyi +2 -1
  39. homeassistant-stubs/components/camera/media_source.pyi +1 -0
  40. homeassistant-stubs/components/camera/prefs.pyi +2 -0
  41. homeassistant-stubs/components/cert_expiry/sensor.pyi +0 -1
  42. homeassistant-stubs/components/climate/__init__.pyi +3 -1
  43. homeassistant-stubs/components/cloud/const.pyi +2 -0
  44. homeassistant-stubs/components/cloud/google_config.pyi +7 -5
  45. homeassistant-stubs/components/cloud/http_api.pyi +1 -1
  46. homeassistant-stubs/components/cloud/prefs.pyi +6 -2
  47. homeassistant-stubs/components/cloud/tts.pyi +3 -2
  48. homeassistant-stubs/components/config/area_registry.pyi +1 -1
  49. homeassistant-stubs/components/config/auth.pyi +2 -2
  50. homeassistant-stubs/components/config/auth_provider_homeassistant.pyi +2 -2
  51. homeassistant-stubs/components/config/automation.pyi +2 -2
  52. homeassistant-stubs/components/config/config_entries.pyi +5 -4
  53. homeassistant-stubs/components/config/core.pyi +2 -2
  54. homeassistant-stubs/components/config/device_registry.pyi +1 -1
  55. homeassistant-stubs/components/config/entity_registry.pyi +1 -1
  56. homeassistant-stubs/components/config/floor_registry.pyi +12 -0
  57. homeassistant-stubs/components/config/label_registry.pyi +12 -0
  58. homeassistant-stubs/components/config/scene.pyi +2 -2
  59. homeassistant-stubs/components/config/script.pyi +2 -2
  60. homeassistant-stubs/components/cpuspeed/sensor.pyi +0 -1
  61. homeassistant-stubs/components/crownstone/light.pyi +1 -1
  62. homeassistant-stubs/components/deconz/light.pyi +1 -1
  63. homeassistant-stubs/components/demo/fan.pyi +1 -0
  64. homeassistant-stubs/components/dhcp/__init__.pyi +24 -32
  65. homeassistant-stubs/components/dlna_dmr/media_player.pyi +8 -3
  66. homeassistant-stubs/components/dnsip/sensor.pyi +1 -1
  67. homeassistant-stubs/components/dunehd/media_player.pyi +5 -2
  68. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +3 -3
  69. homeassistant-stubs/components/ecovacs/button.pyi +5 -5
  70. homeassistant-stubs/components/ecovacs/controller.pyi +6 -3
  71. homeassistant-stubs/components/ecovacs/entity.pyi +11 -9
  72. homeassistant-stubs/components/ecovacs/image.pyi +2 -2
  73. homeassistant-stubs/components/ecovacs/lawn_mower.pyi +28 -0
  74. homeassistant-stubs/components/ecovacs/number.pyi +3 -3
  75. homeassistant-stubs/components/ecovacs/select.pyi +3 -3
  76. homeassistant-stubs/components/ecovacs/sensor.pyi +6 -6
  77. homeassistant-stubs/components/ecovacs/switch.pyi +4 -4
  78. homeassistant-stubs/components/ecovacs/vacuum.pyi +3 -3
  79. homeassistant-stubs/components/emulated_hue/config.pyi +1 -1
  80. homeassistant-stubs/components/enphase_envoy/sensor.pyi +39 -4
  81. homeassistant-stubs/components/esphome/bluetooth.pyi +1 -1
  82. homeassistant-stubs/components/esphome/camera.pyi +2 -2
  83. homeassistant-stubs/components/esphome/entry_data.pyi +3 -5
  84. homeassistant-stubs/components/esphome/manager.pyi +6 -7
  85. homeassistant-stubs/components/esphome/sensor.pyi +4 -2
  86. homeassistant-stubs/components/esphome/update.pyi +0 -1
  87. homeassistant-stubs/components/esphome/voice_assistant.pyi +1 -1
  88. homeassistant-stubs/components/fastdotcom/sensor.pyi +0 -1
  89. homeassistant-stubs/components/filesize/sensor.pyi +0 -1
  90. homeassistant-stubs/components/flexit_bacnet/climate.pyi +4 -2
  91. homeassistant-stubs/components/flexit_bacnet/number.pyi +31 -0
  92. homeassistant-stubs/components/flux_led/__init__.pyi +2 -2
  93. homeassistant-stubs/components/fritz/common.pyi +2 -1
  94. homeassistant-stubs/components/fully_kiosk/media_player.pyi +2 -1
  95. homeassistant-stubs/components/generic_thermostat/climate.pyi +1 -1
  96. homeassistant-stubs/components/goalzero/__init__.pyi +1 -0
  97. homeassistant-stubs/components/gpsd/sensor.pyi +15 -9
  98. homeassistant-stubs/components/group/__init__.pyi +1 -1
  99. homeassistant-stubs/components/group/light.pyi +3 -3
  100. homeassistant-stubs/components/hardkernel/__init__.pyi +1 -1
  101. homeassistant-stubs/components/hardware/hardware.pyi +2 -2
  102. homeassistant-stubs/components/hardware/websocket_api.pyi +1 -1
  103. homeassistant-stubs/components/homeassistant_green/__init__.pyi +1 -1
  104. homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +2 -1
  105. homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +3 -2
  106. homeassistant-stubs/components/homekit/__init__.pyi +1 -1
  107. homeassistant-stubs/components/homekit/accessories.pyi +1 -1
  108. homeassistant-stubs/components/homekit/config_flow.pyi +13 -4
  109. homeassistant-stubs/components/homekit/type_cameras.pyi +1 -1
  110. homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
  111. homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
  112. homeassistant-stubs/components/homekit/type_triggers.pyi +3 -1
  113. homeassistant-stubs/components/homekit_controller/__init__.pyi +1 -0
  114. homeassistant-stubs/components/homekit_controller/alarm_control_panel.pyi +0 -1
  115. homeassistant-stubs/components/homekit_controller/button.pyi +8 -4
  116. homeassistant-stubs/components/homekit_controller/utils.pyi +4 -0
  117. homeassistant-stubs/components/http/__init__.pyi +3 -3
  118. homeassistant-stubs/components/http/auth.pyi +1 -1
  119. homeassistant-stubs/components/http/ban.pyi +0 -1
  120. homeassistant-stubs/components/http/const.pyi +1 -1
  121. homeassistant-stubs/components/http/request_context.pyi +1 -2
  122. homeassistant-stubs/components/http/view.pyi +1 -29
  123. homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +0 -6
  124. homeassistant-stubs/components/huawei_lte/switch.pyi +0 -4
  125. homeassistant-stubs/components/idasen_desk/sensor.pyi +2 -1
  126. homeassistant-stubs/components/image/__init__.pyi +13 -3
  127. homeassistant-stubs/components/image/media_source.pyi +18 -0
  128. homeassistant-stubs/components/imap/coordinator.pyi +8 -0
  129. homeassistant-stubs/components/imap/diagnostics.pyi +13 -0
  130. homeassistant-stubs/components/intent/__init__.pyi +7 -2
  131. homeassistant-stubs/components/islamic_prayer_times/config_flow.pyi +1 -1
  132. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  133. homeassistant-stubs/components/knx/schema.pyi +3 -18
  134. homeassistant-stubs/components/knx/validation.pyi +19 -0
  135. homeassistant-stubs/components/lamarzocco/calendar.pyi +21 -0
  136. homeassistant-stubs/components/lamarzocco/entity.pyi +7 -4
  137. homeassistant-stubs/components/lamarzocco/number.pyi +26 -1
  138. homeassistant-stubs/components/light/__init__.pyi +3 -0
  139. homeassistant-stubs/components/local_todo/todo.pyi +3 -1
  140. homeassistant-stubs/components/logbook/__init__.pyi +1 -1
  141. homeassistant-stubs/components/logbook/helpers.pyi +2 -2
  142. homeassistant-stubs/components/logbook/models.pyi +2 -2
  143. homeassistant-stubs/components/mailbox/__init__.pyi +1 -0
  144. homeassistant-stubs/components/matter/light.pyi +6 -5
  145. homeassistant-stubs/components/media_player/intent.pyi +11 -0
  146. homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -1
  147. homeassistant-stubs/components/modbus/__init__.pyi +1 -1
  148. homeassistant-stubs/components/modbus/climate.pyi +1 -0
  149. homeassistant-stubs/components/modbus/validators.pyi +4 -4
  150. homeassistant-stubs/components/mqtt/__init__.pyi +3 -3
  151. homeassistant-stubs/components/mqtt/climate.pyi +1 -8
  152. homeassistant-stubs/components/mqtt/const.pyi +2 -0
  153. homeassistant-stubs/components/mqtt/event.pyi +1 -1
  154. homeassistant-stubs/components/mqtt/image.pyi +1 -1
  155. homeassistant-stubs/components/mqtt/mixins.pyi +2 -2
  156. homeassistant-stubs/components/mqtt/models.pyi +10 -0
  157. homeassistant-stubs/components/mqtt/tag.pyi +1 -1
  158. homeassistant-stubs/components/myuplink/__init__.pyi +2 -1
  159. homeassistant-stubs/components/myuplink/binary_sensor.pyi +24 -0
  160. homeassistant-stubs/components/myuplink/config_flow.pyi +7 -0
  161. homeassistant-stubs/components/myuplink/coordinator.pyi +1 -2
  162. homeassistant-stubs/components/myuplink/diagnostics.pyi +11 -0
  163. homeassistant-stubs/components/myuplink/helpers.pyi +6 -0
  164. homeassistant-stubs/components/myuplink/number.pyi +30 -0
  165. homeassistant-stubs/components/myuplink/sensor.pyi +20 -3
  166. homeassistant-stubs/components/myuplink/switch.pyi +29 -0
  167. homeassistant-stubs/components/myuplink/update.pyi +20 -0
  168. homeassistant-stubs/components/notion/__init__.pyi +10 -6
  169. homeassistant-stubs/components/notion/config_flow.pyi +11 -3
  170. homeassistant-stubs/components/notion/const.pyi +2 -0
  171. homeassistant-stubs/components/notion/diagnostics.pyi +2 -2
  172. homeassistant-stubs/components/notion/model.pyi +1 -1
  173. homeassistant-stubs/components/notion/util.pyi +7 -0
  174. homeassistant-stubs/components/overkiz/climate.pyi +1 -1
  175. homeassistant-stubs/components/overkiz/climate_entities/__init__.pyi +8 -0
  176. homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_heating_zone.pyi +1 -1
  177. homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_zone_control.pyi +5 -1
  178. homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_zone_control_zone.pyi +33 -0
  179. homeassistant-stubs/components/overkiz/climate_entities/hitachi_air_to_air_heat_pump_ovp.pyi +61 -0
  180. homeassistant-stubs/components/overkiz/number.pyi +7 -1
  181. homeassistant-stubs/components/proximity/config_flow.pyi +1 -1
  182. homeassistant-stubs/components/rainmachine/util.pyi +1 -1
  183. homeassistant-stubs/components/raspberry_pi/__init__.pyi +1 -1
  184. homeassistant-stubs/components/recorder/__init__.pyi +1 -1
  185. homeassistant-stubs/components/recorder/core.pyi +1 -0
  186. homeassistant-stubs/components/recorder/websocket_api.pyi +1 -5
  187. homeassistant-stubs/components/repairs/issue_handler.pyi +1 -1
  188. homeassistant-stubs/components/rfxtrx/__init__.pyi +3 -1
  189. homeassistant-stubs/components/samsungtv/__init__.pyi +1 -1
  190. homeassistant-stubs/components/samsungtv/config_flow.pyi +1 -0
  191. homeassistant-stubs/components/sensor/recorder.pyi +0 -2
  192. homeassistant-stubs/components/shelly/binary_sensor.pyi +1 -1
  193. homeassistant-stubs/components/shelly/button.pyi +1 -1
  194. homeassistant-stubs/components/shelly/climate.pyi +1 -3
  195. homeassistant-stubs/components/shelly/entity.pyi +1 -2
  196. homeassistant-stubs/components/shelly/number.pyi +1 -1
  197. homeassistant-stubs/components/shelly/sensor.pyi +2 -2
  198. homeassistant-stubs/components/shelly/switch.pyi +4 -5
  199. homeassistant-stubs/components/shelly/utils.pyi +2 -0
  200. homeassistant-stubs/components/shelly/valve.pyi +1 -1
  201. homeassistant-stubs/components/ssdp/__init__.pyi +1 -0
  202. homeassistant-stubs/components/statistics/sensor.pyi +4 -1
  203. homeassistant-stubs/components/steamist/__init__.pyi +1 -1
  204. homeassistant-stubs/components/system_health/__init__.pyi +1 -1
  205. homeassistant-stubs/components/systemmonitor/__init__.pyi +3 -0
  206. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +48 -0
  207. homeassistant-stubs/components/systemmonitor/config_flow.pyi +2 -0
  208. homeassistant-stubs/components/systemmonitor/const.pyi +1 -0
  209. homeassistant-stubs/components/systemmonitor/coordinator.pyi +14 -10
  210. homeassistant-stubs/components/systemmonitor/diagnostics.pyi +7 -0
  211. homeassistant-stubs/components/systemmonitor/repairs.pyi +15 -0
  212. homeassistant-stubs/components/systemmonitor/sensor.pyi +5 -4
  213. homeassistant-stubs/components/systemmonitor/util.pyi +6 -5
  214. homeassistant-stubs/components/technove/helpers.pyi +9 -0
  215. homeassistant-stubs/components/technove/switch.pyi +33 -0
  216. homeassistant-stubs/components/tedee/config_flow.pyi +1 -0
  217. homeassistant-stubs/components/tedee/sensor.pyi +1 -1
  218. homeassistant-stubs/components/tibber/sensor.pyi +7 -4
  219. homeassistant-stubs/components/tplink/__init__.pyi +1 -1
  220. homeassistant-stubs/components/tplink/config_flow.pyi +2 -2
  221. homeassistant-stubs/components/tplink/light.pyi +1 -0
  222. homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +2 -2
  223. homeassistant-stubs/components/tplink_omada/config_flow.pyi +1 -1
  224. homeassistant-stubs/components/tplink_omada/controller.pyi +1 -1
  225. homeassistant-stubs/components/tplink_omada/coordinator.pyi +1 -1
  226. homeassistant-stubs/components/tplink_omada/update.pyi +1 -1
  227. homeassistant-stubs/components/tractive/device_tracker.pyi +0 -1
  228. homeassistant-stubs/components/unifi/__init__.pyi +1 -1
  229. homeassistant-stubs/components/unifi/button.pyi +1 -1
  230. homeassistant-stubs/components/unifi/config_flow.pyi +2 -2
  231. homeassistant-stubs/components/unifi/device_tracker.pyi +6 -6
  232. homeassistant-stubs/components/unifi/diagnostics.pyi +1 -1
  233. homeassistant-stubs/components/unifi/entity.pyi +13 -13
  234. homeassistant-stubs/components/unifi/hub/__init__.pyi +2 -0
  235. homeassistant-stubs/components/unifi/hub/api.pyi +10 -0
  236. homeassistant-stubs/components/unifi/{controller.pyi → hub/hub.pyi} +9 -19
  237. homeassistant-stubs/components/unifi/hub/websocket.pyi +25 -0
  238. homeassistant-stubs/components/unifi/image.pyi +4 -4
  239. homeassistant-stubs/components/unifi/sensor.pyi +14 -14
  240. homeassistant-stubs/components/unifi/switch.pyi +14 -14
  241. homeassistant-stubs/components/unifi/update.pyi +1 -1
  242. homeassistant-stubs/components/unifiprotect/__init__.pyi +4 -2
  243. homeassistant-stubs/components/unifiprotect/const.pyi +1 -0
  244. homeassistant-stubs/components/unifiprotect/data.pyi +3 -2
  245. homeassistant-stubs/components/unifiprotect/media_source.pyi +6 -3
  246. homeassistant-stubs/components/unifiprotect/migrate.pyi +3 -5
  247. homeassistant-stubs/components/unifiprotect/repairs.pyi +8 -2
  248. homeassistant-stubs/components/usb/__init__.pyi +1 -1
  249. homeassistant-stubs/components/vacuum/intent.pyi +8 -0
  250. homeassistant-stubs/components/vallox/__init__.pyi +5 -23
  251. homeassistant-stubs/components/vallox/fan.pyi +1 -1
  252. homeassistant-stubs/components/wake_word/models.pyi +4 -2
  253. homeassistant-stubs/components/water_heater/__init__.pyi +2 -0
  254. homeassistant-stubs/components/websocket_api/connection.pyi +1 -1
  255. homeassistant-stubs/components/websocket_api/http.pyi +1 -0
  256. homeassistant-stubs/components/wiz/light.pyi +3 -2
  257. homeassistant-stubs/components/xiaomi_ble/const.pyi +9 -0
  258. homeassistant-stubs/components/xiaomi_ble/device_trigger.pyi +1 -1
  259. homeassistant-stubs/components/xiaomi_ble/event.pyi +1 -1
  260. homeassistant-stubs/components/yalexs_ble/__init__.pyi +1 -1
  261. homeassistant-stubs/components/yalexs_ble/config_flow.pyi +1 -1
  262. homeassistant-stubs/components/zwave_js/climate.pyi +4 -0
  263. homeassistant-stubs/components/zwave_js/sensor.pyi +0 -1
  264. homeassistant-stubs/config.pyi +4 -2
  265. homeassistant-stubs/config_entries.pyi +40 -26
  266. homeassistant-stubs/const.pyi +1 -0
  267. homeassistant-stubs/core.pyi +11 -7
  268. homeassistant-stubs/data_entry_flow.pyi +1 -0
  269. homeassistant-stubs/helpers/area_registry.pyi +9 -4
  270. homeassistant-stubs/helpers/collection.pyi +19 -0
  271. homeassistant-stubs/helpers/config_validation.pyi +5 -0
  272. homeassistant-stubs/helpers/data_entry_flow.pyi +2 -1
  273. homeassistant-stubs/helpers/debounce.pyi +3 -1
  274. homeassistant-stubs/helpers/device_registry.pyi +13 -6
  275. homeassistant-stubs/helpers/entity.pyi +4 -2
  276. homeassistant-stubs/helpers/entity_component.pyi +1 -1
  277. homeassistant-stubs/helpers/entity_platform.pyi +7 -3
  278. homeassistant-stubs/helpers/entity_registry.pyi +10 -4
  279. homeassistant-stubs/helpers/event.pyi +28 -2
  280. homeassistant-stubs/helpers/floor_registry.pyi +59 -0
  281. homeassistant-stubs/helpers/frame.pyi +3 -1
  282. homeassistant-stubs/helpers/http.pyi +32 -0
  283. homeassistant-stubs/helpers/icon.pyi +1 -1
  284. homeassistant-stubs/helpers/integration_platform.pyi +12 -8
  285. homeassistant-stubs/helpers/intent.pyi +20 -6
  286. homeassistant-stubs/helpers/json.pyi +1 -0
  287. homeassistant-stubs/helpers/label_registry.pyi +59 -0
  288. homeassistant-stubs/helpers/redact.pyi +13 -0
  289. homeassistant-stubs/helpers/service.pyi +1 -0
  290. homeassistant-stubs/helpers/storage.pyi +7 -3
  291. homeassistant-stubs/helpers/template.pyi +7 -0
  292. homeassistant-stubs/helpers/translation.pyi +18 -4
  293. homeassistant-stubs/helpers/update_coordinator.pyi +1 -0
  294. homeassistant-stubs/loader.pyi +35 -13
  295. homeassistant-stubs/setup.pyi +9 -3
  296. homeassistant-stubs/util/async_.pyi +3 -3
  297. homeassistant-stubs/util/file.pyi +2 -2
  298. homeassistant-stubs/util/yaml/loader.pyi +3 -0
  299. {homeassistant_stubs-2024.2.4.dist-info → homeassistant_stubs-2024.3.0.dist-info}/METADATA +2 -2
  300. {homeassistant_stubs-2024.2.4.dist-info → homeassistant_stubs-2024.3.0.dist-info}/RECORD +302 -264
  301. {homeassistant_stubs-2024.2.4.dist-info → homeassistant_stubs-2024.3.0.dist-info}/LICENSE +0 -0
  302. {homeassistant_stubs-2024.2.4.dist-info → homeassistant_stubs-2024.3.0.dist-info}/WHEEL +0 -0
@@ -1,10 +1,10 @@
1
1
  from .const import DOMAIN as DOMAIN, EXCLUDE_FROM_BACKUP as EXCLUDE_FROM_BACKUP, LOGGER as LOGGER
2
2
  from _typeshed import Incomplete
3
3
  from dataclasses import dataclass
4
- from homeassistant.core import HomeAssistant as HomeAssistant
4
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
5
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
6
6
  from homeassistant.helpers import integration_platform as integration_platform
7
- from homeassistant.helpers.json import save_json as save_json
7
+ from homeassistant.helpers.json import json_bytes as json_bytes
8
8
  from homeassistant.util.json import json_loads_object as json_loads_object
9
9
  from pathlib import Path
10
10
  from typing import Any, Protocol
@@ -34,7 +34,9 @@ class BackupManager:
34
34
  loaded_backups: bool
35
35
  loaded_platforms: bool
36
36
  def __init__(self, hass: HomeAssistant) -> None: ...
37
- async def _add_platform(self, hass: HomeAssistant, integration_domain: str, platform: BackupPlatformProtocol) -> None: ...
37
+ def _add_platform(self, hass: HomeAssistant, integration_domain: str, platform: BackupPlatformProtocol) -> None: ...
38
+ async def pre_backup_actions(self) -> None: ...
39
+ async def post_backup_actions(self) -> None: ...
38
40
  async def load_backups(self) -> None: ...
39
41
  async def load_platforms(self) -> None: ...
40
42
  def _read_backups(self) -> dict[str, Backup]: ...
@@ -1,10 +1,12 @@
1
- from .const import DOMAIN as DOMAIN
1
+ from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
2
2
  from .manager import BackupManager as BackupManager
3
3
  from homeassistant.components import websocket_api as websocket_api
4
4
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
5
  from typing import Any
6
6
 
7
- def async_register_websocket_handlers(hass: HomeAssistant) -> None: ...
7
+ def async_register_websocket_handlers(hass: HomeAssistant, with_hassio: bool) -> None: ...
8
8
  async def handle_info(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
9
9
  async def handle_remove(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
10
10
  async def handle_create(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
11
+ async def handle_backup_start(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
12
+ async def handle_backup_end(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -3,8 +3,8 @@ from _typeshed import Incomplete
3
3
  from bluecurrent_api import Client
4
4
  from datetime import datetime
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
- from homeassistant.const import ATTR_NAME as ATTR_NAME, CONF_API_TOKEN as CONF_API_TOKEN, Platform as Platform
7
- from homeassistant.core import HomeAssistant as HomeAssistant
6
+ from homeassistant.const import ATTR_NAME as ATTR_NAME, CONF_API_TOKEN as CONF_API_TOKEN, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
7
+ from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant
8
8
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
9
9
  from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
10
10
  from homeassistant.helpers.event import async_call_later as async_call_later
@@ -31,7 +31,8 @@ class Connector:
31
31
  def __init__(self, hass: HomeAssistant, config: ConfigEntry, client: Client) -> None: ...
32
32
  async def connect(self, token: str) -> None: ...
33
33
  async def on_data(self, message: dict) -> None: ...
34
- async def get_charge_point_data(self, evse_id: str) -> None: ...
34
+ async def handle_charge_point_data(self, charge_points_data: list) -> None: ...
35
+ async def handle_charge_point(self, evse_id: str, model: str, name: str) -> None: ...
35
36
  def add_charge_point(self, evse_id: str, model: str, name: str) -> None: ...
36
37
  def update_charge_point(self, evse_id: str, data: dict) -> None: ...
37
38
  def dispatch_value_update_signal(self, evse_id: str) -> None: ...
@@ -1,13 +1,15 @@
1
+ import abc
1
2
  from . import Connector as Connector
2
3
  from .const import DOMAIN as DOMAIN, MODEL_TYPE as MODEL_TYPE
3
4
  from _typeshed import Incomplete
5
+ from abc import abstractmethod
4
6
  from homeassistant.const import ATTR_NAME as ATTR_NAME
5
7
  from homeassistant.core import callback as callback
6
8
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
7
9
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
8
10
  from homeassistant.helpers.entity import Entity as Entity
9
11
 
10
- class BlueCurrentEntity(Entity):
12
+ class BlueCurrentEntity(Entity, metaclass=abc.ABCMeta):
11
13
  _attr_has_entity_name: bool
12
14
  _attr_should_poll: bool
13
15
  connector: Incomplete
@@ -17,9 +19,10 @@ class BlueCurrentEntity(Entity):
17
19
  async def async_added_to_hass(self) -> None: ...
18
20
  @property
19
21
  def available(self) -> bool: ...
22
+ @abstractmethod
20
23
  def update_from_latest_data(self) -> None: ...
21
24
 
22
- class ChargepointEntity(BlueCurrentEntity):
25
+ class ChargepointEntity(BlueCurrentEntity, metaclass=abc.ABCMeta):
23
26
  evse_id: Incomplete
24
27
  _attr_device_info: Incomplete
25
28
  def __init__(self, connector: Connector, evse_id: str) -> None: ...
@@ -8,7 +8,7 @@ from bluetooth_adapters import BluetoothAdapters as BluetoothAdapters
8
8
  from collections.abc import Callable as Callable
9
9
  from habluetooth import BaseHaScanner as BaseHaScanner, BluetoothManager
10
10
  from homeassistant import config_entries as config_entries
11
- from homeassistant.const import EVENT_LOGGING_CHANGED as EVENT_LOGGING_CHANGED
11
+ from homeassistant.const import EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, EVENT_LOGGING_CHANGED as EVENT_LOGGING_CHANGED
12
12
  from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, HomeAssistant as HomeAssistant
13
13
  from homeassistant.helpers import discovery_flow as discovery_flow
14
14
 
@@ -30,7 +30,7 @@ class HomeAssistantBluetoothManager(BluetoothManager):
30
30
  def _address_disappeared(self, address: str) -> None: ...
31
31
  async def async_setup(self) -> None: ...
32
32
  def async_register_callback(self, callback: BluetoothCallback, matcher: BluetoothCallbackMatcher | None) -> Callable[[], None]: ...
33
- def async_stop(self) -> None: ...
33
+ def async_stop(self, event: Event | None = None) -> None: ...
34
34
  def _async_save_scanner_histories(self) -> None: ...
35
35
  def _async_save_scanner_history(self, scanner: BaseHaScanner) -> None: ...
36
36
  def _async_unregister_scanner(self, scanner: BaseHaScanner, unregister: CALLBACK_TYPE) -> None: ...
@@ -39,6 +39,7 @@ class IntegrationMatchHistory:
39
39
  def seen_all_fields(previous_match: IntegrationMatchHistory, advertisement_data: AdvertisementData) -> bool: ...
40
40
 
41
41
  class IntegrationMatcher:
42
+ __slots__: Incomplete
42
43
  _integration_matchers: Incomplete
43
44
  _matched: Incomplete
44
45
  _matched_connectable: Incomplete
@@ -50,6 +51,7 @@ class IntegrationMatcher:
50
51
  _T = TypeVar('_T', BluetoothMatcher, BluetoothCallbackMatcherWithCallback)
51
52
 
52
53
  class BluetoothMatcherIndexBase(Generic[_T]):
54
+ __slots__: Incomplete
53
55
  local_name: Incomplete
54
56
  service_uuid: Incomplete
55
57
  service_data_uuid: Incomplete
@@ -66,6 +68,7 @@ class BluetoothMatcherIndexBase(Generic[_T]):
66
68
  class BluetoothMatcherIndex(BluetoothMatcherIndexBase[BluetoothMatcher]): ...
67
69
 
68
70
  class BluetoothCallbackMatcherIndex(BluetoothMatcherIndexBase[BluetoothCallbackMatcherWithCallback]):
71
+ __slots__: Incomplete
69
72
  address: Incomplete
70
73
  connectable: Incomplete
71
74
  def __init__(self) -> None: ...
@@ -15,6 +15,7 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, asyn
15
15
 
16
16
  class BMWDeviceTracker(BMWBaseEntity, TrackerEntity):
17
17
  _attr_force_update: bool
18
+ _attr_translation_key: str
18
19
  _attr_icon: str
19
20
  _attr_unique_id: Incomplete
20
21
  _attr_name: Incomplete
@@ -33,6 +33,8 @@ class BraviaTVCoordinator(DataUpdateCoordinator[None]):
33
33
  media_content_type: Incomplete
34
34
  media_uri: Incomplete
35
35
  media_duration: Incomplete
36
+ media_position: Incomplete
37
+ media_position_updated_at: Incomplete
36
38
  volume_level: Incomplete
37
39
  volume_target: Incomplete
38
40
  volume_muted: bool
@@ -1,6 +1,7 @@
1
1
  from .const import DOMAIN as DOMAIN, SourceType as SourceType
2
2
  from .entity import BraviaTVEntity as BraviaTVEntity
3
3
  from _typeshed import Incomplete
4
+ from datetime import datetime
4
5
  from homeassistant.components.media_player import BrowseError as BrowseError, MediaClass as MediaClass, MediaPlayerDeviceClass as MediaPlayerDeviceClass, MediaPlayerEntity as MediaPlayerEntity, MediaPlayerEntityFeature as MediaPlayerEntityFeature, MediaPlayerState as MediaPlayerState, MediaType as MediaType
5
6
  from homeassistant.components.media_player.browse_media import BrowseMedia as BrowseMedia
6
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -35,6 +36,10 @@ class BraviaTVMediaPlayer(BraviaTVEntity, MediaPlayerEntity):
35
36
  def media_content_type(self) -> MediaType | None: ...
36
37
  @property
37
38
  def media_duration(self) -> int | None: ...
39
+ @property
40
+ def media_position(self) -> int | None: ...
41
+ @property
42
+ def media_position_updated_at(self) -> datetime | None: ...
38
43
  async def async_turn_on(self) -> None: ...
39
44
  async def async_turn_off(self) -> None: ...
40
45
  async def async_set_volume_level(self, volume: float) -> None: ...
@@ -7,9 +7,9 @@ from dataclasses import dataclass
7
7
  from datetime import datetime
8
8
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
9
9
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
10
- from homeassistant.const import CONF_HOST as CONF_HOST, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE
10
+ from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE
11
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
12
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
12
+ from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo
13
13
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
14
14
  from homeassistant.helpers.typing import StateType as StateType
15
15
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
@@ -38,5 +38,5 @@ class BrotherPrinterSensor(CoordinatorEntity[BrotherDataUpdateCoordinator], Sens
38
38
  _attr_device_info: Incomplete
39
39
  _attr_native_value: Incomplete
40
40
  _attr_unique_id: Incomplete
41
- def __init__(self, coordinator: BrotherDataUpdateCoordinator, description: BrotherSensorEntityDescription, device_info: DeviceInfo) -> None: ...
41
+ def __init__(self, coordinator: BrotherDataUpdateCoordinator, description: BrotherSensorEntityDescription) -> None: ...
42
42
  def _handle_coordinator_update(self) -> None: ...
@@ -4,7 +4,7 @@ from _typeshed import Incomplete
4
4
  from bthome_ble import BTHomeBluetoothDeviceData as DeviceData
5
5
  from collections.abc import Mapping
6
6
  from homeassistant.components import onboarding as onboarding
7
- from homeassistant.components.bluetooth import BluetoothServiceInfo as BluetoothServiceInfo, async_discovered_service_info as async_discovered_service_info
7
+ from homeassistant.components.bluetooth import BluetoothServiceInfoBleak as BluetoothServiceInfoBleak, async_discovered_service_info as async_discovered_service_info
8
8
  from homeassistant.config_entries import ConfigFlow as ConfigFlow
9
9
  from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
10
10
  from homeassistant.data_entry_flow import FlowResult as FlowResult
@@ -13,11 +13,11 @@ from typing import Any
13
13
  @dataclasses.dataclass
14
14
  class Discovery:
15
15
  title: str
16
- discovery_info: BluetoothServiceInfo
16
+ discovery_info: BluetoothServiceInfoBleak
17
17
  device: DeviceData
18
18
  def __init__(self, title, discovery_info, device) -> None: ...
19
19
 
20
- def _title(discovery_info: BluetoothServiceInfo, device: DeviceData) -> str: ...
20
+ def _title(discovery_info: BluetoothServiceInfoBleak, device: DeviceData) -> str: ...
21
21
 
22
22
  class BTHomeConfigFlow(ConfigFlow, domain=DOMAIN):
23
23
  VERSION: int
@@ -25,7 +25,7 @@ class BTHomeConfigFlow(ConfigFlow, domain=DOMAIN):
25
25
  _discovered_device: Incomplete
26
26
  _discovered_devices: Incomplete
27
27
  def __init__(self) -> None: ...
28
- async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfo) -> FlowResult: ...
28
+ async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> FlowResult: ...
29
29
  async def async_step_get_encryption_key(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
30
30
  async def async_step_bluetooth_confirm(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
31
31
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
@@ -36,7 +36,8 @@ class Timespan:
36
36
  EventFetcher = Callable[[Timespan], Awaitable[list[CalendarEvent]]]
37
37
  QueuedEventFetcher = Callable[[Timespan], Awaitable[list[QueuedCalendarEvent]]]
38
38
 
39
- def event_fetcher(hass: HomeAssistant, entity: CalendarEntity) -> EventFetcher: ...
39
+ def get_entity(hass: HomeAssistant, entity_id: str) -> CalendarEntity: ...
40
+ def event_fetcher(hass: HomeAssistant, entity_id: str) -> EventFetcher: ...
40
41
  def queued_event_fetcher(fetcher: EventFetcher, event_type: str, offset: datetime.timedelta) -> QueuedEventFetcher: ...
41
42
 
42
43
  class CalendarEventListener:
@@ -10,6 +10,7 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
10
10
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
11
11
 
12
12
  async def async_get_media_source(hass: HomeAssistant) -> CameraMediaSource: ...
13
+ def _media_source_for_camera(camera: Camera, content_type: str) -> BrowseMediaSource: ...
13
14
 
14
15
  class CameraMediaSource(MediaSource):
15
16
  name: str
@@ -18,9 +18,11 @@ class DynamicStreamSettings:
18
18
  def __init__(self, preload_stream, orientation) -> None: ...
19
19
 
20
20
  class CameraPreferences:
21
+ _preload_prefs: dict[str, dict[str, bool | Orientation]]
21
22
  _hass: Incomplete
22
23
  _store: Incomplete
23
24
  _dynamic_stream_settings_by_entity_id: Incomplete
24
25
  def __init__(self, hass: HomeAssistant) -> None: ...
26
+ async def async_load(self) -> None: ...
25
27
  async def async_update(self, entity_id: str, *, preload_stream: bool | UndefinedType = ..., orientation: Orientation | UndefinedType = ...) -> dict[str, bool | Orientation]: ...
26
28
  async def get_dynamic_stream_settings(self, entity_id: str) -> DynamicStreamSettings: ...
@@ -19,7 +19,6 @@ async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_ad
19
19
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
20
20
 
21
21
  class CertExpiryEntity(CoordinatorEntity[CertExpiryDataUpdateCoordinator]):
22
- _attr_icon: str
23
22
  _attr_has_entity_name: bool
24
23
  @property
25
24
  def extra_state_attributes(self) -> dict[str, Any]: ...
@@ -3,7 +3,7 @@ from .const import ATTR_AUX_HEAT as ATTR_AUX_HEAT, ATTR_CURRENT_HUMIDITY as ATTR
3
3
  from _typeshed import Incomplete
4
4
  from functools import cached_property as cached_property
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
- from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, PRECISION_TENTHS as PRECISION_TENTHS, PRECISION_WHOLE as PRECISION_WHOLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, UnitOfTemperature as UnitOfTemperature
6
+ from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, PRECISION_TENTHS as PRECISION_TENTHS, PRECISION_WHOLE as PRECISION_WHOLE, SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, UnitOfTemperature as UnitOfTemperature
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
8
8
  from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
9
9
  from homeassistant.helpers.config_validation import PLATFORM_SCHEMA as PLATFORM_SCHEMA, PLATFORM_SCHEMA_BASE as PLATFORM_SCHEMA_BASE, make_entity_service_schema as make_entity_service_schema
@@ -133,6 +133,8 @@ class ClimateEntity(Entity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_):
133
133
  async def async_turn_on(self) -> None: ...
134
134
  def turn_off(self) -> None: ...
135
135
  async def async_turn_off(self) -> None: ...
136
+ def toggle(self) -> None: ...
137
+ async def async_toggle(self) -> None: ...
136
138
  @cached_property
137
139
  def supported_features(self) -> ClimateEntityFeature: ...
138
140
  @cached_property
@@ -26,6 +26,8 @@ PREF_GOOGLE_DEFAULT_EXPOSE: str
26
26
  PREF_ALEXA_SETTINGS_VERSION: str
27
27
  PREF_GOOGLE_SETTINGS_VERSION: str
28
28
  PREF_TTS_DEFAULT_VOICE: str
29
+ PREF_GOOGLE_CONNECTED: str
30
+ PREF_REMOTE_ALLOW_REMOTE_ENABLE: str
29
31
  DEFAULT_TTS_DEFAULT_VOICE: Incomplete
30
32
  DEFAULT_DISABLE_2FA: bool
31
33
  DEFAULT_ALEXA_REPORT_STATE: bool
@@ -8,7 +8,7 @@ from homeassistant.components.google_assistant.helpers import AbstractConfig as
8
8
  from homeassistant.components.homeassistant.exposed_entities import async_expose_entity as async_expose_entity, async_get_assistant_settings as async_get_assistant_settings, async_get_entity_settings as async_get_entity_settings, async_listen_entity_updates as async_listen_entity_updates, async_set_assistant_option as async_set_assistant_option, async_should_expose as async_should_expose
9
9
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass
10
10
  from homeassistant.const import CLOUD_NEVER_EXPOSED_ENTITIES as CLOUD_NEVER_EXPOSED_ENTITIES
11
- from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, CoreState as CoreState, Event as Event, HomeAssistant as HomeAssistant, State as State, callback as callback, split_entity_id as split_entity_id
11
+ from homeassistant.core import CoreState as CoreState, Event as Event, HomeAssistant as HomeAssistant, State as State, callback as callback, split_entity_id as split_entity_id
12
12
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
13
13
  from homeassistant.helpers import start as start
14
14
  from homeassistant.helpers.entity import get_device_class as get_device_class
@@ -31,7 +31,6 @@ class CloudGoogleConfig(AbstractConfig):
31
31
  _prefs: Incomplete
32
32
  _cloud: Incomplete
33
33
  _sync_entities_lock: Incomplete
34
- _on_deinitialize: Incomplete
35
34
  def __init__(self, hass: HomeAssistant, config: dict[str, Any], cloud_user: str, prefs: CloudPreferences, cloud: Cloud[CloudClient]) -> None: ...
36
35
  @property
37
36
  def enabled(self) -> bool: ...
@@ -42,12 +41,11 @@ class CloudGoogleConfig(AbstractConfig):
42
41
  @property
43
42
  def should_report_state(self) -> bool: ...
44
43
  def get_local_webhook_id(self, agent_user_id: Any) -> str: ...
45
- def get_local_agent_user_id(self, webhook_id: Any) -> str: ...
44
+ def get_local_user_id(self, webhook_id: Any) -> str: ...
46
45
  @property
47
46
  def cloud_user(self) -> str: ...
48
47
  def _migrate_google_entity_settings_v1(self) -> None: ...
49
48
  async def async_initialize(self) -> None: ...
50
- def async_deinitialize(self) -> None: ...
51
49
  def should_expose(self, state: State) -> bool: ...
52
50
  def _should_expose_legacy(self, entity_id: str) -> bool: ...
53
51
  def _should_expose_entity_id(self, entity_id: str) -> bool: ...
@@ -55,11 +53,15 @@ class CloudGoogleConfig(AbstractConfig):
55
53
  def agent_user_id(self) -> str: ...
56
54
  @property
57
55
  def has_registered_user_agent(self) -> bool: ...
58
- def get_agent_user_id(self, context: Any) -> str: ...
56
+ def get_agent_user_id_from_context(self, context: Any) -> str: ...
57
+ def get_agent_user_id_from_webhook(self, webhook_id: str) -> str | None: ...
59
58
  def _2fa_disabled_legacy(self, entity_id: str) -> bool | None: ...
60
59
  def should_2fa(self, state: State) -> bool: ...
61
60
  async def async_report_state(self, message: Any, agent_user_id: str, event_id: str | None = None) -> None: ...
62
61
  async def _async_request_sync_devices(self, agent_user_id: str) -> HTTPStatus | int: ...
62
+ async def async_connect_agent_user(self, agent_user_id: str) -> None: ...
63
+ async def async_disconnect_agent_user(self, agent_user_id: str) -> None: ...
64
+ def async_get_agent_users(self) -> tuple: ...
63
65
  async def _async_prefs_updated(self, prefs: CloudPreferences) -> None: ...
64
66
  def _async_exposed_entities_updated(self) -> None: ...
65
67
  def _handle_entity_registry_updated(self, event: Event) -> None: ...
@@ -1,6 +1,6 @@
1
1
  from .assist_pipeline import async_create_cloud_pipeline as async_create_cloud_pipeline
2
2
  from .client import CloudClient as CloudClient
3
- from .const import DOMAIN as DOMAIN, PREF_ALEXA_REPORT_STATE as PREF_ALEXA_REPORT_STATE, PREF_DISABLE_2FA as PREF_DISABLE_2FA, PREF_ENABLE_ALEXA as PREF_ENABLE_ALEXA, PREF_ENABLE_GOOGLE as PREF_ENABLE_GOOGLE, PREF_GOOGLE_REPORT_STATE as PREF_GOOGLE_REPORT_STATE, PREF_GOOGLE_SECURE_DEVICES_PIN as PREF_GOOGLE_SECURE_DEVICES_PIN, PREF_TTS_DEFAULT_VOICE as PREF_TTS_DEFAULT_VOICE, REQUEST_TIMEOUT as REQUEST_TIMEOUT
3
+ from .const import DOMAIN as DOMAIN, PREF_ALEXA_REPORT_STATE as PREF_ALEXA_REPORT_STATE, PREF_DISABLE_2FA as PREF_DISABLE_2FA, PREF_ENABLE_ALEXA as PREF_ENABLE_ALEXA, PREF_ENABLE_GOOGLE as PREF_ENABLE_GOOGLE, PREF_GOOGLE_REPORT_STATE as PREF_GOOGLE_REPORT_STATE, PREF_GOOGLE_SECURE_DEVICES_PIN as PREF_GOOGLE_SECURE_DEVICES_PIN, PREF_REMOTE_ALLOW_REMOTE_ENABLE as PREF_REMOTE_ALLOW_REMOTE_ENABLE, PREF_TTS_DEFAULT_VOICE as PREF_TTS_DEFAULT_VOICE, REQUEST_TIMEOUT as REQUEST_TIMEOUT
4
4
  from .google_config import CLOUD_GOOGLE as CLOUD_GOOGLE
5
5
  from .repairs import async_manage_legacy_subscription_issue as async_manage_legacy_subscription_issue
6
6
  from .subscription import async_subscription_info as async_subscription_info
@@ -1,4 +1,4 @@
1
- from .const import DEFAULT_ALEXA_REPORT_STATE as DEFAULT_ALEXA_REPORT_STATE, DEFAULT_EXPOSED_DOMAINS as DEFAULT_EXPOSED_DOMAINS, DEFAULT_GOOGLE_REPORT_STATE as DEFAULT_GOOGLE_REPORT_STATE, DEFAULT_TTS_DEFAULT_VOICE as DEFAULT_TTS_DEFAULT_VOICE, DOMAIN as DOMAIN, PREF_ALEXA_DEFAULT_EXPOSE as PREF_ALEXA_DEFAULT_EXPOSE, PREF_ALEXA_ENTITY_CONFIGS as PREF_ALEXA_ENTITY_CONFIGS, PREF_ALEXA_REPORT_STATE as PREF_ALEXA_REPORT_STATE, PREF_ALEXA_SETTINGS_VERSION as PREF_ALEXA_SETTINGS_VERSION, PREF_CLOUDHOOKS as PREF_CLOUDHOOKS, PREF_CLOUD_USER as PREF_CLOUD_USER, PREF_ENABLE_ALEXA as PREF_ENABLE_ALEXA, PREF_ENABLE_GOOGLE as PREF_ENABLE_GOOGLE, PREF_ENABLE_REMOTE as PREF_ENABLE_REMOTE, PREF_GOOGLE_DEFAULT_EXPOSE as PREF_GOOGLE_DEFAULT_EXPOSE, PREF_GOOGLE_ENTITY_CONFIGS as PREF_GOOGLE_ENTITY_CONFIGS, PREF_GOOGLE_LOCAL_WEBHOOK_ID as PREF_GOOGLE_LOCAL_WEBHOOK_ID, PREF_GOOGLE_REPORT_STATE as PREF_GOOGLE_REPORT_STATE, PREF_GOOGLE_SECURE_DEVICES_PIN as PREF_GOOGLE_SECURE_DEVICES_PIN, PREF_GOOGLE_SETTINGS_VERSION as PREF_GOOGLE_SETTINGS_VERSION, PREF_INSTANCE_ID as PREF_INSTANCE_ID, PREF_REMOTE_DOMAIN as PREF_REMOTE_DOMAIN, PREF_TTS_DEFAULT_VOICE as PREF_TTS_DEFAULT_VOICE, PREF_USERNAME as PREF_USERNAME
1
+ from .const import DEFAULT_ALEXA_REPORT_STATE as DEFAULT_ALEXA_REPORT_STATE, DEFAULT_EXPOSED_DOMAINS as DEFAULT_EXPOSED_DOMAINS, DEFAULT_GOOGLE_REPORT_STATE as DEFAULT_GOOGLE_REPORT_STATE, DEFAULT_TTS_DEFAULT_VOICE as DEFAULT_TTS_DEFAULT_VOICE, DOMAIN as DOMAIN, PREF_ALEXA_DEFAULT_EXPOSE as PREF_ALEXA_DEFAULT_EXPOSE, PREF_ALEXA_ENTITY_CONFIGS as PREF_ALEXA_ENTITY_CONFIGS, PREF_ALEXA_REPORT_STATE as PREF_ALEXA_REPORT_STATE, PREF_ALEXA_SETTINGS_VERSION as PREF_ALEXA_SETTINGS_VERSION, PREF_CLOUDHOOKS as PREF_CLOUDHOOKS, PREF_CLOUD_USER as PREF_CLOUD_USER, PREF_ENABLE_ALEXA as PREF_ENABLE_ALEXA, PREF_ENABLE_GOOGLE as PREF_ENABLE_GOOGLE, PREF_ENABLE_REMOTE as PREF_ENABLE_REMOTE, PREF_GOOGLE_CONNECTED as PREF_GOOGLE_CONNECTED, PREF_GOOGLE_DEFAULT_EXPOSE as PREF_GOOGLE_DEFAULT_EXPOSE, PREF_GOOGLE_ENTITY_CONFIGS as PREF_GOOGLE_ENTITY_CONFIGS, PREF_GOOGLE_LOCAL_WEBHOOK_ID as PREF_GOOGLE_LOCAL_WEBHOOK_ID, PREF_GOOGLE_REPORT_STATE as PREF_GOOGLE_REPORT_STATE, PREF_GOOGLE_SECURE_DEVICES_PIN as PREF_GOOGLE_SECURE_DEVICES_PIN, PREF_GOOGLE_SETTINGS_VERSION as PREF_GOOGLE_SETTINGS_VERSION, PREF_INSTANCE_ID as PREF_INSTANCE_ID, PREF_REMOTE_ALLOW_REMOTE_ENABLE as PREF_REMOTE_ALLOW_REMOTE_ENABLE, PREF_REMOTE_DOMAIN as PREF_REMOTE_DOMAIN, PREF_TTS_DEFAULT_VOICE as PREF_TTS_DEFAULT_VOICE, PREF_USERNAME as PREF_USERNAME
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Callable as Callable, Coroutine
4
4
  from homeassistant.auth.const import GROUP_ID_ADMIN as GROUP_ID_ADMIN
@@ -28,10 +28,12 @@ class CloudPreferences:
28
28
  def __init__(self, hass: HomeAssistant) -> None: ...
29
29
  async def async_initialize(self) -> None: ...
30
30
  def async_listen_updates(self, listener: Callable[[CloudPreferences], Coroutine[Any, Any, None]]) -> Callable[[], None]: ...
31
- async def async_update(self, *, google_enabled: bool | UndefinedType = ..., alexa_enabled: bool | UndefinedType = ..., remote_enabled: bool | UndefinedType = ..., google_secure_devices_pin: str | None | UndefinedType = ..., cloudhooks: dict[str, dict[str, str | bool]] | UndefinedType = ..., cloud_user: str | UndefinedType = ..., alexa_report_state: bool | UndefinedType = ..., google_report_state: bool | UndefinedType = ..., tts_default_voice: tuple[str, str] | UndefinedType = ..., remote_domain: str | None | UndefinedType = ..., alexa_settings_version: int | UndefinedType = ..., google_settings_version: int | UndefinedType = ...) -> None: ...
31
+ async def async_update(self, *, google_enabled: bool | UndefinedType = ..., alexa_enabled: bool | UndefinedType = ..., remote_enabled: bool | UndefinedType = ..., google_secure_devices_pin: str | None | UndefinedType = ..., cloudhooks: dict[str, dict[str, str | bool]] | UndefinedType = ..., cloud_user: str | UndefinedType = ..., alexa_report_state: bool | UndefinedType = ..., google_report_state: bool | UndefinedType = ..., tts_default_voice: tuple[str, str] | UndefinedType = ..., remote_domain: str | None | UndefinedType = ..., alexa_settings_version: int | UndefinedType = ..., google_settings_version: int | UndefinedType = ..., google_connected: bool | UndefinedType = ..., remote_allow_remote_enable: bool | UndefinedType = ...) -> None: ...
32
32
  async def async_set_username(self, username: str | None) -> bool: ...
33
33
  def as_dict(self) -> dict[str, Any]: ...
34
34
  @property
35
+ def remote_allow_remote_enable(self) -> bool: ...
36
+ @property
35
37
  def remote_enabled(self) -> bool: ...
36
38
  @property
37
39
  def remote_domain(self) -> str | None: ...
@@ -48,6 +50,8 @@ class CloudPreferences:
48
50
  @property
49
51
  def google_enabled(self) -> bool: ...
50
52
  @property
53
+ def google_connected(self) -> bool: ...
54
+ @property
51
55
  def google_report_state(self) -> bool: ...
52
56
  @property
53
57
  def google_secure_devices_pin(self) -> str | None: ...
@@ -6,8 +6,8 @@ from _typeshed import Incomplete
6
6
  from hass_nabucasa import Cloud as Cloud
7
7
  from homeassistant.components.tts import ATTR_AUDIO_OUTPUT as ATTR_AUDIO_OUTPUT, ATTR_VOICE as ATTR_VOICE, CONF_LANG as CONF_LANG, Provider as Provider, TextToSpeechEntity as TextToSpeechEntity, TtsAudioType as TtsAudioType, Voice as Voice
8
8
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
- from homeassistant.const import Platform as Platform
10
- from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
9
+ from homeassistant.const import CONF_PLATFORM as CONF_PLATFORM, Platform as Platform
10
+ from homeassistant.core import HomeAssistant as HomeAssistant, async_get_hass as async_get_hass, callback as callback
11
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
12
  from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
13
13
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
@@ -18,6 +18,7 @@ DEPRECATED_VOICES: Incomplete
18
18
  SUPPORT_LANGUAGES: Incomplete
19
19
  _LOGGER: Incomplete
20
20
 
21
+ def _deprecated_platform(value: str) -> str: ...
21
22
  def validate_lang(value: dict[str, Any]) -> dict[str, Any]: ...
22
23
 
23
24
  PLATFORM_SCHEMA: Incomplete
@@ -3,7 +3,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callb
3
3
  from homeassistant.helpers.area_registry import AreaEntry as AreaEntry, async_get as async_get
4
4
  from typing import Any
5
5
 
6
- async def async_setup(hass: HomeAssistant) -> bool: ...
6
+ def async_setup(hass: HomeAssistant) -> bool: ...
7
7
  def websocket_list_areas(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
8
8
  def websocket_create_area(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
9
9
  def websocket_delete_area(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -1,7 +1,7 @@
1
1
  from _typeshed import Incomplete
2
2
  from homeassistant.auth.models import User as User
3
3
  from homeassistant.components import websocket_api as websocket_api
4
- from homeassistant.core import HomeAssistant as HomeAssistant
4
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
5
  from typing import Any
6
6
 
7
7
  WS_TYPE_LIST: str
@@ -9,7 +9,7 @@ SCHEMA_WS_LIST: Incomplete
9
9
  WS_TYPE_DELETE: str
10
10
  SCHEMA_WS_DELETE: Incomplete
11
11
 
12
- async def async_setup(hass: HomeAssistant) -> bool: ...
12
+ def async_setup(hass: HomeAssistant) -> bool: ...
13
13
  async def websocket_list(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
14
14
  async def websocket_delete(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
15
15
  async def websocket_create(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -1,9 +1,9 @@
1
1
  from homeassistant.components import websocket_api as websocket_api
2
- from homeassistant.core import HomeAssistant as HomeAssistant
2
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
3
3
  from homeassistant.exceptions import Unauthorized as Unauthorized
4
4
  from typing import Any
5
5
 
6
- async def async_setup(hass: HomeAssistant) -> bool: ...
6
+ def async_setup(hass: HomeAssistant) -> bool: ...
7
7
  async def websocket_create(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
8
8
  async def websocket_delete(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
9
9
  async def websocket_change_password(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -2,10 +2,10 @@ from . import ACTION_DELETE as ACTION_DELETE, EditIdBasedConfigView as EditIdBas
2
2
  from homeassistant.components.automation.config import DOMAIN as DOMAIN, PLATFORM_SCHEMA as PLATFORM_SCHEMA, async_validate_config_item as async_validate_config_item
3
3
  from homeassistant.config import AUTOMATION_CONFIG_PATH as AUTOMATION_CONFIG_PATH
4
4
  from homeassistant.const import CONF_ID as CONF_ID, SERVICE_RELOAD as SERVICE_RELOAD
5
- from homeassistant.core import HomeAssistant as HomeAssistant
5
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
6
6
  from typing import Any
7
7
 
8
- async def async_setup(hass: HomeAssistant) -> bool: ...
8
+ def async_setup(hass: HomeAssistant) -> bool: ...
9
9
 
10
10
  class EditAutomationConfigView(EditIdBasedConfigView):
11
11
  def _write_value(self, hass: HomeAssistant, data: list[dict[str, Any]], config_key: str, new_value: dict[str, Any]) -> None: ...
@@ -8,10 +8,11 @@ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callb
8
8
  from homeassistant.exceptions import DependencyError as DependencyError, Unauthorized as Unauthorized
9
9
  from homeassistant.helpers.data_entry_flow import FlowManagerIndexView as FlowManagerIndexView, FlowManagerResourceView as FlowManagerResourceView
10
10
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
11
- from homeassistant.loader import Integration as Integration, IntegrationNotFound as IntegrationNotFound, async_get_config_flows as async_get_config_flows, async_get_integration as async_get_integration, async_get_integrations as async_get_integrations
11
+ from homeassistant.helpers.json import json_fragment as json_fragment
12
+ from homeassistant.loader import Integration as Integration, IntegrationNotFound as IntegrationNotFound, async_get_config_flows as async_get_config_flows, async_get_integrations as async_get_integrations, async_get_loaded_integration as async_get_loaded_integration
12
13
  from typing import Any, NoReturn
13
14
 
14
- async def async_setup(hass: HomeAssistant) -> bool: ...
15
+ def async_setup(hass: HomeAssistant) -> bool: ...
15
16
 
16
17
  class ConfigManagerEntryIndexView(HomeAssistantView):
17
18
  url: str
@@ -35,6 +36,7 @@ class ConfigManagerFlowIndexView(FlowManagerIndexView):
35
36
  name: str
36
37
  async def get(self, request: web.Request) -> NoReturn: ...
37
38
  async def post(self, request: web.Request) -> web.Response: ...
39
+ def get_context(self, data: dict[str, Any]) -> dict[str, Any]: ...
38
40
  def _prepare_result_json(self, result: data_entry_flow.FlowResult) -> data_entry_flow.FlowResult: ...
39
41
 
40
42
  class ConfigManagerFlowResourceView(FlowManagerResourceView):
@@ -69,5 +71,4 @@ async def config_entry_disable(hass: HomeAssistant, connection: websocket_api.Ac
69
71
  async def ignore_config_flow(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
70
72
  async def config_entries_get(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
71
73
  async def config_entries_subscribe(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
72
- async def async_matching_config_entries(hass: HomeAssistant, type_filter: list[str] | None, domain: str | None) -> list[dict[str, Any]]: ...
73
- def entry_json(entry: config_entries.ConfigEntry) -> dict[str, Any]: ...
74
+ async def _async_matching_config_entries_json_fragments(hass: HomeAssistant, type_filter: list[str] | None, domain: str | None) -> list[json_fragment]: ...
@@ -2,13 +2,13 @@ from aiohttp import web as web
2
2
  from homeassistant.components import websocket_api as websocket_api
3
3
  from homeassistant.components.http import HomeAssistantView as HomeAssistantView, require_admin as require_admin
4
4
  from homeassistant.components.sensor import async_update_suggested_units as async_update_suggested_units
5
- from homeassistant.core import HomeAssistant as HomeAssistant
5
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
6
6
  from homeassistant.helpers import check_config as check_config
7
7
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
8
  from homeassistant.util import location as location, unit_system as unit_system
9
9
  from typing import Any
10
10
 
11
- async def async_setup(hass: HomeAssistant) -> bool: ...
11
+ def async_setup(hass: HomeAssistant) -> bool: ...
12
12
 
13
13
  class CheckConfigView(HomeAssistantView):
14
14
  url: str
@@ -6,7 +6,7 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
6
6
  from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry, DeviceEntryDisabler as DeviceEntryDisabler, async_get as async_get
7
7
  from typing import Any
8
8
 
9
- async def async_setup(hass: HomeAssistant) -> bool: ...
9
+ def async_setup(hass: HomeAssistant) -> bool: ...
10
10
  def websocket_list_devices(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
11
11
  def websocket_update_device(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
12
12
  async def websocket_remove_config_entry_from_device(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -7,7 +7,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callb
7
7
  from homeassistant.helpers.json import json_dumps as json_dumps
8
8
  from typing import Any
9
9
 
10
- async def async_setup(hass: HomeAssistant) -> bool: ...
10
+ def async_setup(hass: HomeAssistant) -> bool: ...
11
11
  def websocket_list_entities(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
12
12
 
13
13
  _ENTITY_CATEGORIES_JSON: Incomplete
@@ -0,0 +1,12 @@
1
+ from homeassistant.components import websocket_api as websocket_api
2
+ from homeassistant.components.websocket_api.connection import ActiveConnection as ActiveConnection
3
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
4
+ from homeassistant.helpers.floor_registry import FloorEntry as FloorEntry, async_get as async_get
5
+ from typing import Any
6
+
7
+ def async_setup(hass: HomeAssistant) -> bool: ...
8
+ def websocket_list_floors(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
9
+ def websocket_create_floor(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
10
+ def websocket_delete_floor(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
11
+ def websocket_update_floor(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
12
+ def _entry_dict(entry: FloorEntry) -> dict[str, Any]: ...
@@ -0,0 +1,12 @@
1
+ from homeassistant.components import websocket_api as websocket_api
2
+ from homeassistant.components.websocket_api.connection import ActiveConnection as ActiveConnection
3
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
4
+ from homeassistant.helpers.label_registry import LabelEntry as LabelEntry, async_get as async_get
5
+ from typing import Any
6
+
7
+ def async_setup(hass: HomeAssistant) -> bool: ...
8
+ def websocket_list_labels(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
9
+ def websocket_create_label(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
10
+ def websocket_delete_label(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
11
+ def websocket_update_label(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
12
+ def _entry_dict(entry: LabelEntry) -> dict[str, Any]: ...
@@ -2,10 +2,10 @@ from . import ACTION_DELETE as ACTION_DELETE, EditIdBasedConfigView as EditIdBas
2
2
  from homeassistant.components.scene import DOMAIN as DOMAIN, PLATFORM_SCHEMA as PLATFORM_SCHEMA
3
3
  from homeassistant.config import SCENE_CONFIG_PATH as SCENE_CONFIG_PATH
4
4
  from homeassistant.const import CONF_ID as CONF_ID, SERVICE_RELOAD as SERVICE_RELOAD
5
- from homeassistant.core import HomeAssistant as HomeAssistant
5
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
6
6
  from typing import Any
7
7
 
8
- async def async_setup(hass: HomeAssistant) -> bool: ...
8
+ def async_setup(hass: HomeAssistant) -> bool: ...
9
9
 
10
10
  class EditSceneConfigView(EditIdBasedConfigView):
11
11
  def _write_value(self, hass: HomeAssistant, data: list[dict[str, Any]], config_key: str, new_value: dict[str, Any]) -> None: ...
@@ -3,10 +3,10 @@ from homeassistant.components.script import DOMAIN as DOMAIN
3
3
  from homeassistant.components.script.config import SCRIPT_ENTITY_SCHEMA as SCRIPT_ENTITY_SCHEMA, async_validate_config_item as async_validate_config_item
4
4
  from homeassistant.config import SCRIPT_CONFIG_PATH as SCRIPT_CONFIG_PATH
5
5
  from homeassistant.const import SERVICE_RELOAD as SERVICE_RELOAD
6
- from homeassistant.core import HomeAssistant as HomeAssistant
6
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
7
  from typing import Any
8
8
 
9
- async def async_setup(hass: HomeAssistant) -> bool: ...
9
+ def async_setup(hass: HomeAssistant) -> bool: ...
10
10
 
11
11
  class EditScriptConfigView(EditKeyBasedConfigView):
12
12
  def _write_value(self, hass: HomeAssistant, data: dict[str, dict[str, Any]], config_key: str, new_value: dict[str, Any]) -> None: ...
@@ -17,7 +17,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_e
17
17
 
18
18
  class CPUSpeedSensor(SensorEntity):
19
19
  _attr_device_class: Incomplete
20
- _attr_icon: str
21
20
  _attr_has_entity_name: bool
22
21
  _attr_name: Incomplete
23
22
  _attr_native_unit_of_measurement: Incomplete
@@ -18,8 +18,8 @@ def crownstone_state_to_hass(value: int) -> int: ...
18
18
  def hass_to_crownstone_state(value: int) -> int: ...
19
19
 
20
20
  class CrownstoneEntity(CrownstoneBaseEntity, LightEntity):
21
- _attr_icon: str
22
21
  _attr_name: Incomplete
22
+ _attr_translation_key: str
23
23
  usb: Incomplete
24
24
  _attr_unique_id: Incomplete
25
25
  def __init__(self, crownstone_data: Crownstone, usb: CrownstoneUart | None = None) -> None: ...