homeassistant-stubs 2023.7.2__py3-none-any.whl → 2023.8.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.
- homeassistant-stubs/backports/enum.pyi +1 -9
- homeassistant-stubs/backports/functools.pyi +6 -8
- homeassistant-stubs/components/accuweather/sensor.pyi +3 -4
- homeassistant-stubs/components/accuweather/weather.pyi +3 -1
- homeassistant-stubs/components/airzone_cloud/binary_sensor.pyi +8 -1
- homeassistant-stubs/components/alarm_control_panel/const.pyi +1 -2
- homeassistant-stubs/components/alert/__init__.pyi +4 -4
- homeassistant-stubs/components/apcupsd/__init__.pyi +3 -4
- homeassistant-stubs/components/apcupsd/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/apcupsd/sensor.pyi +0 -1
- homeassistant-stubs/components/aseko_pool_live/__init__.pyi +1 -7
- homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/aseko_pool_live/coordinator.pyi +11 -0
- homeassistant-stubs/components/aseko_pool_live/entity.pyi +1 -1
- homeassistant-stubs/components/aseko_pool_live/sensor.pyi +2 -2
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
- homeassistant-stubs/components/assist_pipeline/vad.pyi +1 -1
- homeassistant-stubs/components/asuswrt/bridge.pyi +78 -0
- homeassistant-stubs/components/asuswrt/config_flow.pyi +2 -4
- homeassistant-stubs/components/asuswrt/const.pyi +3 -0
- homeassistant-stubs/components/asuswrt/router.pyi +8 -30
- homeassistant-stubs/components/asuswrt/sensor.pyi +5 -4
- homeassistant-stubs/components/bayesian/binary_sensor.pyi +3 -3
- homeassistant-stubs/components/binary_sensor/__init__.pyi +1 -1
- homeassistant-stubs/components/bluetooth/advertisement_tracker.pyi +1 -0
- homeassistant-stubs/components/bluetooth/manager.pyi +1 -0
- homeassistant-stubs/components/bluetooth/wrappers.pyi +2 -1
- homeassistant-stubs/components/braviatv/const.pyi +1 -1
- homeassistant-stubs/components/button/__init__.pyi +1 -1
- homeassistant-stubs/components/camera/const.pyi +1 -1
- homeassistant-stubs/components/cover/__init__.pyi +1 -2
- homeassistant-stubs/components/crownstone/devices.pyi +1 -0
- homeassistant-stubs/components/crownstone/light.pyi +1 -1
- homeassistant-stubs/components/demo/button.pyi +2 -2
- homeassistant-stubs/components/demo/climate.pyi +1 -0
- homeassistant-stubs/components/demo/event.pyi +22 -0
- homeassistant-stubs/components/demo/sensor.pyi +2 -3
- homeassistant-stubs/components/demo/water_heater.pyi +2 -0
- homeassistant-stubs/components/demo/weather.pyi +13 -5
- homeassistant-stubs/components/derivative/sensor.pyi +3 -3
- homeassistant-stubs/components/device_tracker/const.pyi +1 -1
- homeassistant-stubs/components/dhcp/__init__.pyi +4 -4
- homeassistant-stubs/components/diagnostics/const.pyi +1 -1
- homeassistant-stubs/components/dlna_dmr/media_player.pyi +1 -1
- homeassistant-stubs/components/dsmr/sensor.pyi +1 -1
- homeassistant-stubs/components/dunehd/media_player.pyi +2 -2
- homeassistant-stubs/components/electric_kiwi/__init__.pyi +13 -0
- homeassistant-stubs/components/electric_kiwi/api.pyi +10 -0
- homeassistant-stubs/components/electric_kiwi/application_credentials.pyi +9 -0
- homeassistant-stubs/components/electric_kiwi/config_flow.pyi +20 -0
- homeassistant-stubs/components/electric_kiwi/const.pyi +7 -0
- homeassistant-stubs/components/electric_kiwi/coordinator.pyi +17 -0
- homeassistant-stubs/components/electric_kiwi/oauth2.pyi +15 -0
- homeassistant-stubs/components/electric_kiwi/sensor.pyi +37 -0
- homeassistant-stubs/components/emulated_hue/config.pyi +4 -4
- homeassistant-stubs/components/emulated_hue/hue_api.pyi +3 -1
- homeassistant-stubs/components/esphome/__init__.pyi +5 -39
- homeassistant-stubs/components/esphome/bluetooth/__init__.pyi +5 -4
- homeassistant-stubs/components/esphome/bluetooth/cache.pyi +15 -0
- homeassistant-stubs/components/esphome/bluetooth/client.pyi +27 -9
- homeassistant-stubs/components/esphome/bluetooth/device.pyi +15 -0
- homeassistant-stubs/components/esphome/camera.pyi +6 -3
- homeassistant-stubs/components/esphome/climate.pyi +1 -0
- homeassistant-stubs/components/esphome/config_flow.pyi +2 -2
- homeassistant-stubs/components/esphome/const.pyi +8 -0
- homeassistant-stubs/components/esphome/domain_data.pyi +4 -14
- homeassistant-stubs/components/esphome/entity.pyi +4 -2
- homeassistant-stubs/components/esphome/entry_data.pyi +4 -6
- homeassistant-stubs/components/esphome/manager.pyi +69 -0
- homeassistant-stubs/components/esphome/update.pyi +3 -0
- homeassistant-stubs/components/event/__init__.pyi +50 -0
- homeassistant-stubs/components/event/const.pyi +3 -0
- homeassistant-stubs/components/event/recorder.pyi +4 -0
- homeassistant-stubs/components/evil_genius_labs/__init__.pyi +1 -0
- homeassistant-stubs/components/evil_genius_labs/light.pyi +1 -2
- homeassistant-stubs/components/fastdotcom/sensor.pyi +2 -1
- homeassistant-stubs/components/filter/sensor.pyi +4 -4
- homeassistant-stubs/components/fitbit/const.pyi +1 -11
- homeassistant-stubs/components/fitbit/sensor.pyi +11 -3
- homeassistant-stubs/components/fritz/common.pyi +2 -7
- homeassistant-stubs/components/fritz/const.pyi +1 -1
- homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +1 -1
- homeassistant-stubs/components/fritzbox_callmonitor/const.pyi +1 -1
- homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +1 -1
- homeassistant-stubs/components/fronius/__init__.pyi +6 -2
- homeassistant-stubs/components/fronius/const.pyi +2 -0
- homeassistant-stubs/components/fronius/sensor.pyi +2 -1
- homeassistant-stubs/components/frontend/__init__.pyi +4 -2
- homeassistant-stubs/components/geo_location/trigger.pyi +3 -3
- homeassistant-stubs/components/group/__init__.pyi +5 -4
- homeassistant-stubs/components/group/binary_sensor.pyi +3 -3
- homeassistant-stubs/components/group/cover.pyi +4 -4
- homeassistant-stubs/components/group/fan.pyi +4 -4
- homeassistant-stubs/components/group/light.pyi +3 -3
- homeassistant-stubs/components/group/lock.pyi +3 -3
- homeassistant-stubs/components/group/media_player.pyi +4 -2
- homeassistant-stubs/components/group/sensor.pyi +3 -3
- homeassistant-stubs/components/group/switch.pyi +3 -3
- homeassistant-stubs/components/guardian/__init__.pyi +0 -2
- homeassistant-stubs/components/history/websocket_api.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +3 -0
- homeassistant-stubs/components/homekit/accessories.pyi +6 -5
- homeassistant-stubs/components/homekit/util.pyi +4 -2
- homeassistant-stubs/components/http/__init__.pyi +7 -0
- homeassistant-stubs/components/hydrawise/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/hydrawise/coordinator.pyi +2 -2
- homeassistant-stubs/components/hydrawise/sensor.pyi +1 -1
- homeassistant-stubs/components/hydrawise/switch.pyi +1 -1
- homeassistant-stubs/components/image/__init__.pyi +2 -0
- homeassistant-stubs/components/image_processing/__init__.pyi +1 -1
- homeassistant-stubs/components/imap/__init__.pyi +1 -1
- homeassistant-stubs/components/imap/config_flow.pyi +1 -1
- homeassistant-stubs/components/imap/const.pyi +1 -0
- homeassistant-stubs/components/imap/coordinator.pyi +5 -1
- homeassistant-stubs/components/input_button/__init__.pyi +1 -1
- homeassistant-stubs/components/input_select/__init__.pyi +1 -2
- homeassistant-stubs/components/integration/sensor.pyi +4 -5
- homeassistant-stubs/components/isy994/climate.pyi +1 -0
- homeassistant-stubs/components/jellyfin/__init__.pyi +2 -0
- homeassistant-stubs/components/jellyfin/coordinator.pyi +2 -0
- homeassistant-stubs/components/jellyfin/media_source.pyi +1 -1
- homeassistant-stubs/components/kaleidescape/entity.pyi +2 -2
- homeassistant-stubs/components/kaleidescape/media_player.pyi +1 -0
- homeassistant-stubs/components/kaleidescape/remote.pyi +1 -0
- homeassistant-stubs/components/kaleidescape/sensor.pyi +0 -1
- homeassistant-stubs/components/knx/__init__.pyi +1 -1
- homeassistant-stubs/components/knx/date.pyi +29 -0
- homeassistant-stubs/components/knx/datetime.pyi +26 -0
- homeassistant-stubs/components/knx/expose.pyi +4 -4
- homeassistant-stubs/components/knx/knx_entity.pyi +0 -1
- homeassistant-stubs/components/knx/schema.pyi +10 -0
- homeassistant-stubs/components/knx/sensor.pyi +0 -1
- homeassistant-stubs/components/knx/telegrams.pyi +10 -3
- homeassistant-stubs/components/kraken/const.pyi +0 -12
- homeassistant-stubs/components/kraken/sensor.pyi +12 -2
- homeassistant-stubs/components/lacrosse_view/sensor.pyi +1 -0
- homeassistant-stubs/components/laundrify/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/ld2410_ble/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/ld2410_ble/sensor.pyi +1 -0
- homeassistant-stubs/components/lifx/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/lifx/button.pyi +0 -1
- homeassistant-stubs/components/lifx/entity.pyi +1 -0
- homeassistant-stubs/components/lifx/light.pyi +1 -1
- homeassistant-stubs/components/lifx/select.pyi +0 -2
- homeassistant-stubs/components/lifx/sensor.pyi +0 -1
- homeassistant-stubs/components/light/__init__.pyi +2 -4
- homeassistant-stubs/components/logbook/helpers.pyi +2 -1
- homeassistant-stubs/components/logger/helpers.pyi +1 -1
- homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/matter/entity.pyi +1 -1
- homeassistant-stubs/components/matter/event.pyi +27 -0
- homeassistant-stubs/components/matter/sensor.pyi +1 -1
- homeassistant-stubs/components/media_player/__init__.pyi +2 -3
- homeassistant-stubs/components/media_player/const.pyi +3 -2
- homeassistant-stubs/components/min_max/sensor.pyi +3 -3
- homeassistant-stubs/components/mqtt/__init__.pyi +5 -3
- homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -0
- homeassistant-stubs/components/mqtt/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/mqtt/button.pyi +1 -0
- homeassistant-stubs/components/mqtt/camera.pyi +1 -0
- homeassistant-stubs/components/mqtt/client.pyi +4 -1
- homeassistant-stubs/components/mqtt/climate.pyi +2 -3
- homeassistant-stubs/components/mqtt/config_integration.pyi +1 -1
- homeassistant-stubs/components/mqtt/const.pyi +2 -0
- homeassistant-stubs/components/mqtt/cover.pyi +1 -0
- homeassistant-stubs/components/mqtt/device_tracker.pyi +1 -0
- homeassistant-stubs/components/mqtt/event.pyi +46 -0
- homeassistant-stubs/components/mqtt/fan.pyi +1 -0
- homeassistant-stubs/components/mqtt/humidifier.pyi +1 -0
- homeassistant-stubs/components/mqtt/image.pyi +1 -0
- homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -0
- homeassistant-stubs/components/mqtt/light/schema_json.pyi +1 -0
- homeassistant-stubs/components/mqtt/light/schema_template.pyi +1 -0
- homeassistant-stubs/components/mqtt/lock.pyi +1 -0
- homeassistant-stubs/components/mqtt/mixins.pyi +15 -10
- homeassistant-stubs/components/mqtt/models.pyi +4 -4
- homeassistant-stubs/components/mqtt/number.pyi +1 -0
- homeassistant-stubs/components/mqtt/scene.pyi +4 -4
- homeassistant-stubs/components/mqtt/select.pyi +1 -0
- homeassistant-stubs/components/mqtt/sensor.pyi +1 -0
- homeassistant-stubs/components/mqtt/siren.pyi +3 -2
- homeassistant-stubs/components/mqtt/switch.pyi +1 -0
- homeassistant-stubs/components/mqtt/tag.pyi +1 -1
- homeassistant-stubs/components/mqtt/text.pyi +1 -0
- homeassistant-stubs/components/mqtt/update.pyi +1 -0
- homeassistant-stubs/components/mqtt/vacuum/__init__.pyi +6 -0
- homeassistant-stubs/components/mqtt/vacuum/schema_legacy.pyi +1 -0
- homeassistant-stubs/components/mqtt/vacuum/schema_state.pyi +1 -0
- homeassistant-stubs/components/mqtt/water_heater.pyi +4 -1
- homeassistant-stubs/components/nanoleaf/button.pyi +3 -4
- homeassistant-stubs/components/nanoleaf/entity.pyi +1 -0
- homeassistant-stubs/components/nanoleaf/light.pyi +1 -1
- homeassistant-stubs/components/nest/__init__.pyi +2 -3
- homeassistant-stubs/components/nest/camera.pyi +53 -3
- homeassistant-stubs/components/nest/climate.pyi +76 -3
- homeassistant-stubs/components/nest/config_flow.pyi +0 -23
- homeassistant-stubs/components/nest/sensor.pyi +35 -3
- homeassistant-stubs/components/notion/const.pyi +1 -0
- homeassistant-stubs/components/notion/sensor.pyi +1 -1
- homeassistant-stubs/components/number/__init__.pyi +1 -2
- homeassistant-stubs/components/number/const.pyi +4 -2
- homeassistant-stubs/components/nut/diagnostics.pyi +1 -1
- homeassistant-stubs/components/opensky/__init__.pyi +7 -0
- homeassistant-stubs/components/opensky/config_flow.pyi +11 -0
- homeassistant-stubs/components/opensky/const.pyi +17 -0
- homeassistant-stubs/components/opensky/sensor.pyi +7 -17
- homeassistant-stubs/components/otbr/websocket_api.pyi +2 -0
- homeassistant-stubs/components/persistent_notification/__init__.pyi +1 -1
- homeassistant-stubs/components/pi_hole/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/pure_energie/sensor.pyi +1 -0
- homeassistant-stubs/components/purpleair/__init__.pyi +6 -2
- homeassistant-stubs/components/purpleair/config_flow.pyi +7 -3
- homeassistant-stubs/components/purpleair/const.pyi +1 -0
- homeassistant-stubs/components/qnap_qsw/entity.pyi +1 -1
- homeassistant-stubs/components/rainmachine/util.pyi +1 -1
- homeassistant-stubs/components/recorder/const.pyi +1 -1
- homeassistant-stubs/components/recorder/db_schema.pyi +1 -2
- homeassistant-stubs/components/scrape/__init__.pyi +1 -1
- homeassistant-stubs/components/scrape/sensor.pyi +10 -6
- homeassistant-stubs/components/sensibo/entity.pyi +1 -2
- homeassistant-stubs/components/sensor/__init__.pyi +1 -2
- homeassistant-stubs/components/sensor/const.pyi +3 -2
- homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
- homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
- homeassistant-stubs/components/sensor/recorder.pyi +1 -1
- homeassistant-stubs/components/senz/climate.pyi +2 -1
- homeassistant-stubs/components/sfr_box/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/sfr_box/button.pyi +1 -0
- homeassistant-stubs/components/sfr_box/sensor.pyi +1 -0
- homeassistant-stubs/components/shelly/__init__.pyi +1 -1
- homeassistant-stubs/components/shelly/climate.pyi +1 -1
- homeassistant-stubs/components/shelly/const.pyi +5 -1
- homeassistant-stubs/components/shelly/coordinator.pyi +2 -1
- homeassistant-stubs/components/shelly/entity.pyi +0 -4
- homeassistant-stubs/components/shelly/logbook.pyi +2 -3
- homeassistant-stubs/components/shelly/sensor.pyi +1 -1
- homeassistant-stubs/components/shelly/utils.pyi +1 -2
- homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +1 -0
- homeassistant-stubs/components/simplisafe/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/skybell/light.pyi +1 -0
- homeassistant-stubs/components/sql/__init__.pyi +2 -1
- homeassistant-stubs/components/sql/config_flow.pyi +3 -1
- homeassistant-stubs/components/sql/sensor.pyi +12 -10
- homeassistant-stubs/components/ssdp/__init__.pyi +3 -3
- homeassistant-stubs/components/statistics/sensor.pyi +3 -3
- homeassistant-stubs/components/stookalert/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/stream/worker.pyi +1 -2
- homeassistant-stubs/components/switch/__init__.pyi +1 -1
- homeassistant-stubs/components/switch/light.pyi +3 -3
- homeassistant-stubs/components/text/__init__.pyi +1 -1
- homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -3
- homeassistant-stubs/components/tolo/__init__.pyi +1 -0
- homeassistant-stubs/components/tolo/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/tolo/button.pyi +1 -1
- homeassistant-stubs/components/tolo/climate.pyi +1 -1
- homeassistant-stubs/components/tolo/fan.pyi +1 -1
- homeassistant-stubs/components/tolo/light.pyi +1 -1
- homeassistant-stubs/components/tolo/select.pyi +0 -1
- homeassistant-stubs/components/tplink/entity.pyi +1 -1
- homeassistant-stubs/components/tplink/light.pyi +1 -0
- homeassistant-stubs/components/tplink/sensor.pyi +0 -2
- homeassistant-stubs/components/tplink/switch.pyi +10 -1
- homeassistant-stubs/components/tractive/__init__.pyi +2 -1
- homeassistant-stubs/components/tractive/binary_sensor.pyi +0 -3
- homeassistant-stubs/components/tractive/const.pyi +6 -1
- homeassistant-stubs/components/tractive/device_tracker.pyi +0 -1
- homeassistant-stubs/components/tractive/entity.pyi +1 -0
- homeassistant-stubs/components/tractive/sensor.pyi +6 -4
- homeassistant-stubs/components/tractive/switch.pyi +0 -1
- homeassistant-stubs/components/tradfri/base_class.pyi +1 -1
- homeassistant-stubs/components/tradfri/cover.pyi +1 -0
- homeassistant-stubs/components/tradfri/fan.pyi +1 -0
- homeassistant-stubs/components/tradfri/light.pyi +1 -0
- homeassistant-stubs/components/tradfri/sensor.pyi +0 -2
- homeassistant-stubs/components/tradfri/switch.pyi +1 -0
- homeassistant-stubs/components/trafikverket_train/__init__.pyi +1 -0
- homeassistant-stubs/components/trafikverket_train/coordinator.pyi +39 -0
- homeassistant-stubs/components/trafikverket_train/sensor.pyi +12 -20
- homeassistant-stubs/components/twentemilieu/sensor.pyi +1 -1
- homeassistant-stubs/components/unifi/device_tracker.pyi +1 -1
- homeassistant-stubs/components/unifi/entity.pyi +8 -5
- homeassistant-stubs/components/unifi/image.pyi +37 -0
- homeassistant-stubs/components/unifi/sensor.pyi +4 -2
- homeassistant-stubs/components/unifi/switch.pyi +3 -2
- homeassistant-stubs/components/unifi/update.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/entity.pyi +0 -1
- homeassistant-stubs/components/unifiprotect/models.pyi +7 -4
- homeassistant-stubs/components/unifiprotect/sensor.pyi +0 -3
- homeassistant-stubs/components/unifiprotect/utils.pyi +1 -1
- homeassistant-stubs/components/update/__init__.pyi +1 -1
- homeassistant-stubs/components/uptimerobot/entity.pyi +2 -0
- homeassistant-stubs/components/vacuum/__init__.pyi +4 -6
- homeassistant-stubs/components/vallox/__init__.pyi +1 -0
- homeassistant-stubs/components/vallox/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/vallox/fan.pyi +1 -1
- homeassistant-stubs/components/vallox/number.pyi +0 -1
- homeassistant-stubs/components/vallox/sensor.pyi +0 -1
- homeassistant-stubs/components/vallox/switch.pyi +0 -1
- homeassistant-stubs/components/vlc_telnet/media_player.pyi +2 -3
- homeassistant-stubs/components/wallbox/const.pyi +1 -1
- homeassistant-stubs/components/water_heater/__init__.pyi +5 -0
- homeassistant-stubs/components/weather/__init__.pyi +18 -4
- homeassistant-stubs/components/weather/const.pyi +7 -0
- homeassistant-stubs/components/weather/websocket_api.pyi +6 -1
- homeassistant-stubs/components/websocket_api/auth.pyi +1 -1
- homeassistant-stubs/components/websocket_api/commands.pyi +6 -1
- homeassistant-stubs/components/websocket_api/connection.pyi +2 -1
- homeassistant-stubs/components/websocket_api/http.pyi +2 -1
- homeassistant-stubs/components/wemo/__init__.pyi +10 -4
- homeassistant-stubs/components/wemo/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/wemo/fan.pyi +2 -2
- homeassistant-stubs/components/wemo/light.pyi +1 -1
- homeassistant-stubs/components/wemo/models.pyi +21 -0
- homeassistant-stubs/components/wemo/sensor.pyi +2 -2
- homeassistant-stubs/components/wemo/switch.pyi +2 -2
- homeassistant-stubs/components/wemo/wemo_device.pyi +5 -0
- homeassistant-stubs/components/wiz/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/yalexs_ble/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/yalexs_ble/entity.pyi +1 -0
- homeassistant-stubs/components/yalexs_ble/lock.pyi +0 -1
- homeassistant-stubs/components/zodiac/__init__.pyi +4 -1
- homeassistant-stubs/components/zodiac/config_flow.pyi +9 -0
- homeassistant-stubs/components/zodiac/const.pyi +1 -0
- homeassistant-stubs/components/zodiac/sensor.pyi +9 -4
- homeassistant-stubs/components/zone/__init__.pyi +4 -5
- homeassistant-stubs/components/zone/trigger.pyi +3 -3
- homeassistant-stubs/components/zwave_js/climate.pyi +3 -1
- homeassistant-stubs/components/zwave_js/device_action.pyi +3 -1
- homeassistant-stubs/components/zwave_js/discovery.pyi +1 -1
- homeassistant-stubs/config_entries.pyi +3 -5
- homeassistant-stubs/const.pyi +3 -1
- homeassistant-stubs/core.pyi +10 -12
- homeassistant-stubs/data_entry_flow.pyi +2 -3
- homeassistant-stubs/exceptions.pyi +0 -4
- homeassistant-stubs/helpers/check_config.pyi +1 -2
- homeassistant-stubs/helpers/config_validation.pyi +11 -2
- homeassistant-stubs/helpers/device_registry.pyi +32 -8
- homeassistant-stubs/helpers/entity.pyi +9 -7
- homeassistant-stubs/helpers/entity_platform.pyi +2 -3
- homeassistant-stubs/helpers/entity_registry.pyi +15 -2
- homeassistant-stubs/helpers/event.pyi +39 -33
- homeassistant-stubs/helpers/httpx_client.pyi +4 -2
- homeassistant-stubs/helpers/issue_registry.pyi +1 -1
- homeassistant-stubs/helpers/restore_state.pyi +1 -2
- homeassistant-stubs/helpers/selector.pyi +14 -6
- homeassistant-stubs/helpers/service.pyi +1 -1
- homeassistant-stubs/helpers/state.pyi +0 -12
- homeassistant-stubs/helpers/storage.pyi +1 -0
- homeassistant-stubs/helpers/system_info.pyi +8 -1
- homeassistant-stubs/helpers/template_entity.pyi +7 -7
- homeassistant-stubs/helpers/trace.pyi +1 -0
- homeassistant-stubs/helpers/typing.pyi +5 -2
- homeassistant-stubs/util/ssl.pyi +1 -1
- homeassistant-stubs/util/timeout.pyi +1 -2
- {homeassistant_stubs-2023.7.2.dist-info → homeassistant_stubs-2023.8.0.dist-info}/METADATA +3 -4
- {homeassistant_stubs-2023.7.2.dist-info → homeassistant_stubs-2023.8.0.dist-info}/RECORD +358 -341
- homeassistant-stubs/components/nest/camera_sdm.pyi +0 -58
- homeassistant-stubs/components/nest/climate_sdm.pyi +0 -81
- homeassistant-stubs/components/nest/legacy/__init__.pyi +0 -62
- homeassistant-stubs/components/nest/legacy/binary_sensor.pyi +0 -38
- homeassistant-stubs/components/nest/legacy/camera.pyi +0 -45
- homeassistant-stubs/components/nest/legacy/climate.pyi +0 -89
- homeassistant-stubs/components/nest/legacy/const.pyi +0 -4
- homeassistant-stubs/components/nest/legacy/local_auth.pyi +0 -7
- homeassistant-stubs/components/nest/legacy/sensor.pyi +0 -54
- homeassistant-stubs/components/nest/sensor_sdm.pyi +0 -42
- {homeassistant_stubs-2023.7.2.dist-info → homeassistant_stubs-2023.8.0.dist-info}/LICENSE +0 -0
- {homeassistant_stubs-2023.7.2.dist-info → homeassistant_stubs-2023.8.0.dist-info}/WHEEL +0 -0
@@ -19,8 +19,8 @@ def hass_to_crownstone_state(value: int) -> int: ...
|
|
19
19
|
|
20
20
|
class CrownstoneEntity(CrownstoneBaseEntity, LightEntity):
|
21
21
|
_attr_icon: str
|
22
|
-
usb: Incomplete
|
23
22
|
_attr_name: Incomplete
|
23
|
+
usb: Incomplete
|
24
24
|
_attr_unique_id: Incomplete
|
25
25
|
def __init__(self, crownstone_data: Crownstone, usb: CrownstoneUart | None = ...) -> None: ...
|
26
26
|
@property
|
@@ -4,6 +4,7 @@ from homeassistant.components import persistent_notification as persistent_notif
|
|
4
4
|
from homeassistant.components.button import ButtonEntity as ButtonEntity
|
5
5
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
+
from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
|
7
8
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
8
9
|
|
9
10
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
@@ -13,7 +14,6 @@ class DemoButton(ButtonEntity):
|
|
13
14
|
_attr_name: Incomplete
|
14
15
|
_attr_should_poll: bool
|
15
16
|
_attr_unique_id: Incomplete
|
16
|
-
_attr_icon: Incomplete
|
17
17
|
_attr_device_info: Incomplete
|
18
|
-
def __init__(self, unique_id: str, device_name: str
|
18
|
+
def __init__(self, unique_id: str, device_name: str) -> None: ...
|
19
19
|
async def async_press(self) -> None: ...
|
@@ -4,6 +4,7 @@ from homeassistant.components.climate import ATTR_TARGET_TEMP_HIGH as ATTR_TARGE
|
|
4
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
5
|
from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, UnitOfTemperature as UnitOfTemperature
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
+
from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
|
7
8
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
8
9
|
from typing import Any
|
9
10
|
|
@@ -0,0 +1,22 @@
|
|
1
|
+
from . import DOMAIN as DOMAIN
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from homeassistant.components.event import EventDeviceClass as EventDeviceClass, EventEntity as EventEntity
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
|
+
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
|
6
|
+
from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
|
7
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
8
|
+
|
9
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
10
|
+
|
11
|
+
class DemoEvent(EventEntity):
|
12
|
+
_attr_device_class: Incomplete
|
13
|
+
_attr_event_types: Incomplete
|
14
|
+
_attr_has_entity_name: bool
|
15
|
+
_attr_name: str
|
16
|
+
_attr_should_poll: bool
|
17
|
+
_attr_translation_key: str
|
18
|
+
_attr_unique_id: str
|
19
|
+
_attr_device_info: Incomplete
|
20
|
+
def __init__(self) -> None: ...
|
21
|
+
async def async_added_to_hass(self) -> None: ...
|
22
|
+
def _async_handle_event(self, _: Event) -> None: ...
|
@@ -8,7 +8,6 @@ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callb
|
|
8
8
|
from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
|
9
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
10
10
|
from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
|
11
|
-
from homeassistant.helpers.typing import StateType as StateType
|
12
11
|
|
13
12
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
14
13
|
|
@@ -25,7 +24,7 @@ class DemoSensor(SensorEntity):
|
|
25
24
|
_attr_translation_key: Incomplete
|
26
25
|
_attr_device_info: Incomplete
|
27
26
|
_attr_extra_state_attributes: Incomplete
|
28
|
-
def __init__(self, unique_id: str, device_name: str | None, state:
|
27
|
+
def __init__(self, unique_id: str, device_name: str | None, state: float | int | str | None, device_class: SensorDeviceClass, state_class: SensorStateClass | None, unit_of_measurement: str | None, battery: int | None, options: list[str] | None = ..., translation_key: str | None = ...) -> None: ...
|
29
28
|
|
30
29
|
class DemoSumSensor(RestoreSensor):
|
31
30
|
_attr_should_poll: bool
|
@@ -38,6 +37,6 @@ class DemoSumSensor(RestoreSensor):
|
|
38
37
|
_five_minute_increase: Incomplete
|
39
38
|
_attr_device_info: Incomplete
|
40
39
|
_attr_extra_state_attributes: Incomplete
|
41
|
-
def __init__(self, unique_id: str, device_name: str, five_minute_increase: float, device_class: SensorDeviceClass, state_class: SensorStateClass | None, unit_of_measurement: str | None, battery:
|
40
|
+
def __init__(self, unique_id: str, device_name: str, five_minute_increase: float, device_class: SensorDeviceClass, state_class: SensorStateClass | None, unit_of_measurement: str | None, battery: int | None, suggested_entity_id: str) -> None: ...
|
42
41
|
def _async_bump_sum(self, now: datetime) -> None: ...
|
43
42
|
async def async_added_to_hass(self) -> None: ...
|
@@ -26,3 +26,5 @@ class DemoWaterHeater(WaterHeaterEntity):
|
|
26
26
|
def set_operation_mode(self, operation_mode: str) -> None: ...
|
27
27
|
def turn_away_mode_on(self) -> None: ...
|
28
28
|
def turn_away_mode_off(self) -> None: ...
|
29
|
+
def turn_on(self, **kwargs: Any) -> None: ...
|
30
|
+
def turn_off(self, **kwargs: Any) -> None: ...
|
@@ -1,12 +1,14 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
-
from homeassistant.components.weather import ATTR_CONDITION_CLOUDY as ATTR_CONDITION_CLOUDY, ATTR_CONDITION_EXCEPTIONAL as ATTR_CONDITION_EXCEPTIONAL, ATTR_CONDITION_FOG as ATTR_CONDITION_FOG, ATTR_CONDITION_HAIL as ATTR_CONDITION_HAIL, ATTR_CONDITION_LIGHTNING as ATTR_CONDITION_LIGHTNING, ATTR_CONDITION_LIGHTNING_RAINY as ATTR_CONDITION_LIGHTNING_RAINY, ATTR_CONDITION_PARTLYCLOUDY as ATTR_CONDITION_PARTLYCLOUDY, ATTR_CONDITION_POURING as ATTR_CONDITION_POURING, ATTR_CONDITION_RAINY as ATTR_CONDITION_RAINY, ATTR_CONDITION_SNOWY as ATTR_CONDITION_SNOWY, ATTR_CONDITION_SNOWY_RAINY as ATTR_CONDITION_SNOWY_RAINY, ATTR_CONDITION_SUNNY as ATTR_CONDITION_SUNNY, ATTR_CONDITION_WINDY as ATTR_CONDITION_WINDY, ATTR_CONDITION_WINDY_VARIANT as ATTR_CONDITION_WINDY_VARIANT, Forecast as Forecast, WeatherEntity as WeatherEntity
|
2
|
+
from homeassistant.components.weather import ATTR_CONDITION_CLOUDY as ATTR_CONDITION_CLOUDY, ATTR_CONDITION_EXCEPTIONAL as ATTR_CONDITION_EXCEPTIONAL, ATTR_CONDITION_FOG as ATTR_CONDITION_FOG, ATTR_CONDITION_HAIL as ATTR_CONDITION_HAIL, ATTR_CONDITION_LIGHTNING as ATTR_CONDITION_LIGHTNING, ATTR_CONDITION_LIGHTNING_RAINY as ATTR_CONDITION_LIGHTNING_RAINY, ATTR_CONDITION_PARTLYCLOUDY as ATTR_CONDITION_PARTLYCLOUDY, ATTR_CONDITION_POURING as ATTR_CONDITION_POURING, ATTR_CONDITION_RAINY as ATTR_CONDITION_RAINY, ATTR_CONDITION_SNOWY as ATTR_CONDITION_SNOWY, ATTR_CONDITION_SNOWY_RAINY as ATTR_CONDITION_SNOWY_RAINY, ATTR_CONDITION_SUNNY as ATTR_CONDITION_SUNNY, ATTR_CONDITION_WINDY as ATTR_CONDITION_WINDY, ATTR_CONDITION_WINDY_VARIANT as ATTR_CONDITION_WINDY_VARIANT, Forecast as Forecast, WeatherEntity as WeatherEntity, WeatherEntityFeature as WeatherEntityFeature
|
3
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
4
4
|
from homeassistant.const import UnitOfPressure as UnitOfPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
|
5
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
6
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
7
|
+
from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
|
7
8
|
from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
|
8
9
|
|
9
10
|
CONDITION_CLASSES: dict[str, list[str]]
|
11
|
+
WEATHER_UPDATE_INTERVAL: Incomplete
|
10
12
|
|
11
13
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
12
14
|
def setup_platform(hass: HomeAssistant, config: ConfigType, add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = ...) -> None: ...
|
@@ -15,6 +17,7 @@ class DemoWeather(WeatherEntity):
|
|
15
17
|
_attr_attribution: str
|
16
18
|
_attr_should_poll: bool
|
17
19
|
_attr_name: Incomplete
|
20
|
+
_attr_unique_id: Incomplete
|
18
21
|
_condition: Incomplete
|
19
22
|
_native_temperature: Incomplete
|
20
23
|
_native_temperature_unit: Incomplete
|
@@ -23,8 +26,12 @@ class DemoWeather(WeatherEntity):
|
|
23
26
|
_native_pressure_unit: Incomplete
|
24
27
|
_native_wind_speed: Incomplete
|
25
28
|
_native_wind_speed_unit: Incomplete
|
26
|
-
|
27
|
-
|
29
|
+
_forecast_daily: Incomplete
|
30
|
+
_forecast_hourly: Incomplete
|
31
|
+
_forecast_twice_daily: Incomplete
|
32
|
+
_attr_supported_features: int
|
33
|
+
def __init__(self, name: str, condition: str, temperature: float, humidity: float, pressure: float, wind_speed: float, temperature_unit: str, pressure_unit: str, wind_speed_unit: str, forecast_daily: list[list] | None, forecast_hourly: list[list] | None, forecast_twice_daily: list[list] | None) -> None: ...
|
34
|
+
async def async_added_to_hass(self) -> None: ...
|
28
35
|
@property
|
29
36
|
def native_temperature(self) -> float: ...
|
30
37
|
@property
|
@@ -41,5 +48,6 @@ class DemoWeather(WeatherEntity):
|
|
41
48
|
def native_pressure_unit(self) -> str: ...
|
42
49
|
@property
|
43
50
|
def condition(self) -> str: ...
|
44
|
-
|
45
|
-
def
|
51
|
+
async def async_forecast_daily(self) -> list[Forecast]: ...
|
52
|
+
async def async_forecast_hourly(self) -> list[Forecast]: ...
|
53
|
+
async def async_forecast_twice_daily(self) -> list[Forecast]: ...
|
@@ -5,11 +5,11 @@ from decimal import Decimal
|
|
5
5
|
from homeassistant.components.sensor import PLATFORM_SCHEMA as PLATFORM_SCHEMA, RestoreSensor as RestoreSensor, SensorEntity as SensorEntity
|
6
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
7
|
from homeassistant.const import ATTR_UNIT_OF_MEASUREMENT as ATTR_UNIT_OF_MEASUREMENT, CONF_NAME as CONF_NAME, CONF_SOURCE as CONF_SOURCE, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN, UnitOfTime as UnitOfTime
|
8
|
-
from homeassistant.core import
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
9
|
from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
|
10
10
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
|
-
from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event
|
12
|
-
from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
|
11
|
+
from homeassistant.helpers.event import EventStateChangedData as EventStateChangedData, async_track_state_change_event as async_track_state_change_event
|
12
|
+
from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, EventType as EventType
|
13
13
|
|
14
14
|
_LOGGER: Incomplete
|
15
15
|
ATTR_SOURCE_ID: str
|
@@ -12,8 +12,8 @@ from homeassistant.data_entry_flow import BaseServiceInfo as BaseServiceInfo
|
|
12
12
|
from homeassistant.helpers import discovery_flow as discovery_flow
|
13
13
|
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceRegistry as DeviceRegistry, async_get as async_get, format_mac as format_mac
|
14
14
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
|
15
|
-
from homeassistant.helpers.event import async_track_state_added_domain as async_track_state_added_domain, async_track_time_interval as async_track_time_interval
|
16
|
-
from homeassistant.helpers.typing import ConfigType as ConfigType
|
15
|
+
from homeassistant.helpers.event import EventStateChangedData as EventStateChangedData, async_track_state_added_domain as async_track_state_added_domain, async_track_time_interval as async_track_time_interval
|
16
|
+
from homeassistant.helpers.typing import ConfigType as ConfigType, EventType as EventType
|
17
17
|
from homeassistant.loader import DHCPMatcher as DHCPMatcher, async_get_dhcp as async_get_dhcp
|
18
18
|
from homeassistant.util.async_ import run_callback_threadsafe as run_callback_threadsafe
|
19
19
|
from homeassistant.util.network import is_invalid as is_invalid, is_link_local as is_link_local, is_loopback as is_loopback
|
@@ -67,8 +67,8 @@ class DeviceTrackerWatcher(WatcherBase):
|
|
67
67
|
def __init__(self, hass: HomeAssistant, address_data: dict[str, dict[str, str]], integration_matchers: list[DHCPMatcher]) -> None: ...
|
68
68
|
async def async_stop(self) -> None: ...
|
69
69
|
async def async_start(self) -> None: ...
|
70
|
-
def _async_process_device_event(self, event:
|
71
|
-
def _async_process_device_state(self, state: State) -> None: ...
|
70
|
+
def _async_process_device_event(self, event: EventType[EventStateChangedData]) -> None: ...
|
71
|
+
def _async_process_device_state(self, state: State | None) -> None: ...
|
72
72
|
|
73
73
|
class DeviceTrackerRegisteredWatcher(WatcherBase):
|
74
74
|
_unsub: Incomplete
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import asyncio
|
2
|
-
from .const import CONF_BROWSE_UNFILTERED as CONF_BROWSE_UNFILTERED, CONF_CALLBACK_URL_OVERRIDE as CONF_CALLBACK_URL_OVERRIDE, CONF_LISTEN_PORT as CONF_LISTEN_PORT, CONF_POLL_AVAILABILITY as CONF_POLL_AVAILABILITY,
|
2
|
+
from .const import CONF_BROWSE_UNFILTERED as CONF_BROWSE_UNFILTERED, CONF_CALLBACK_URL_OVERRIDE as CONF_CALLBACK_URL_OVERRIDE, CONF_LISTEN_PORT as CONF_LISTEN_PORT, CONF_POLL_AVAILABILITY as CONF_POLL_AVAILABILITY, MEDIA_METADATA_DIDL as MEDIA_METADATA_DIDL, MEDIA_TYPE_MAP as MEDIA_TYPE_MAP, MEDIA_UPNP_CLASS_MAP as MEDIA_UPNP_CLASS_MAP, REPEAT_PLAY_MODES as REPEAT_PLAY_MODES, SHUFFLE_PLAY_MODES as SHUFFLE_PLAY_MODES, STREAMABLE_PROTOCOLS as STREAMABLE_PROTOCOLS
|
3
3
|
from .data import EventListenAddr as EventListenAddr, get_domain_data as get_domain_data
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from async_upnp_client.client import UpnpService as UpnpService, UpnpStateVariable as UpnpStateVariable
|
@@ -7,7 +7,7 @@ from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PORT as CONF_PORT,
|
|
7
7
|
from homeassistant.core import CoreState as CoreState, Event as Event, HomeAssistant as HomeAssistant, callback as callback
|
8
8
|
from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
|
9
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
10
|
-
from homeassistant.helpers.typing import
|
10
|
+
from homeassistant.helpers.typing import StateType as StateType
|
11
11
|
from homeassistant.util import Throttle as Throttle
|
12
12
|
|
13
13
|
UNIT_CONVERSION: Incomplete
|
@@ -14,6 +14,8 @@ DUNEHD_PLAYER_SUPPORT: Final[MediaPlayerEntityFeature]
|
|
14
14
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
15
15
|
|
16
16
|
class DuneHDPlayerEntity(MediaPlayerEntity):
|
17
|
+
_attr_has_entity_name: bool
|
18
|
+
_attr_name: Incomplete
|
17
19
|
_player: Incomplete
|
18
20
|
_name: Incomplete
|
19
21
|
_media_title: Incomplete
|
@@ -24,8 +26,6 @@ class DuneHDPlayerEntity(MediaPlayerEntity):
|
|
24
26
|
@property
|
25
27
|
def state(self) -> MediaPlayerState: ...
|
26
28
|
@property
|
27
|
-
def name(self) -> str: ...
|
28
|
-
@property
|
29
29
|
def available(self) -> bool: ...
|
30
30
|
@property
|
31
31
|
def unique_id(self) -> str: ...
|
@@ -0,0 +1,13 @@
|
|
1
|
+
from . import api as api
|
2
|
+
from .const import DOMAIN as DOMAIN
|
3
|
+
from .coordinator import ElectricKiwiHOPDataCoordinator as ElectricKiwiHOPDataCoordinator
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
|
+
from homeassistant.const import Platform as Platform
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
+
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
8
|
+
from homeassistant.helpers import aiohttp_client as aiohttp_client, config_entry_oauth2_flow as config_entry_oauth2_flow
|
9
|
+
|
10
|
+
PLATFORMS: list[Platform]
|
11
|
+
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
13
|
+
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
@@ -0,0 +1,10 @@
|
|
1
|
+
from .const import API_BASE_URL as API_BASE_URL
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from aiohttp import ClientSession as ClientSession
|
4
|
+
from electrickiwi_api import AbstractAuth
|
5
|
+
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
6
|
+
|
7
|
+
class AsyncConfigEntryAuth(AbstractAuth):
|
8
|
+
_oauth_session: Incomplete
|
9
|
+
def __init__(self, websession: ClientSession, oauth_session: config_entry_oauth2_flow.OAuth2Session) -> None: ...
|
10
|
+
async def async_get_access_token(self) -> str: ...
|
@@ -0,0 +1,9 @@
|
|
1
|
+
from .const import OAUTH2_AUTHORIZE as OAUTH2_AUTHORIZE, OAUTH2_TOKEN as OAUTH2_TOKEN
|
2
|
+
from .oauth2 import ElectricKiwiLocalOAuth2Implementation as ElectricKiwiLocalOAuth2Implementation
|
3
|
+
from homeassistant.components.application_credentials import AuthorizationServer as AuthorizationServer, ClientCredential as ClientCredential
|
4
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
5
|
+
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
6
|
+
|
7
|
+
async def async_get_auth_implementation(hass: HomeAssistant, auth_domain: str, credential: ClientCredential) -> config_entry_oauth2_flow.AbstractOAuth2Implementation: ...
|
8
|
+
async def async_get_authorization_server(hass: HomeAssistant) -> AuthorizationServer: ...
|
9
|
+
async def async_get_description_placeholders(hass: HomeAssistant) -> dict[str, str]: ...
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import logging
|
2
|
+
from .const import DOMAIN as DOMAIN, SCOPE_VALUES as SCOPE_VALUES
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Mapping
|
5
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
|
+
from homeassistant.data_entry_flow import FlowResult as FlowResult
|
7
|
+
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
8
|
+
from typing import Any
|
9
|
+
|
10
|
+
class ElectricKiwiOauth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, domain=DOMAIN):
|
11
|
+
DOMAIN = DOMAIN
|
12
|
+
_reauth_entry: Incomplete
|
13
|
+
def __init__(self) -> None: ...
|
14
|
+
@property
|
15
|
+
def logger(self) -> logging.Logger: ...
|
16
|
+
@property
|
17
|
+
def extra_authorize_data(self) -> dict[str, Any]: ...
|
18
|
+
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> FlowResult: ...
|
19
|
+
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = ...) -> FlowResult: ...
|
20
|
+
async def async_oauth_create_entry(self, data: dict) -> FlowResult: ...
|
@@ -0,0 +1,17 @@
|
|
1
|
+
from _typeshed import Incomplete
|
2
|
+
from electrickiwi_api import ElectricKiwiApi as ElectricKiwiApi
|
3
|
+
from electrickiwi_api.model import Hop, HopIntervals as HopIntervals
|
4
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
5
|
+
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
|
6
|
+
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
7
|
+
|
8
|
+
_LOGGER: Incomplete
|
9
|
+
HOP_SCAN_INTERVAL: Incomplete
|
10
|
+
|
11
|
+
class ElectricKiwiHOPDataCoordinator(DataUpdateCoordinator[Hop]):
|
12
|
+
_ek_api: Incomplete
|
13
|
+
hop_intervals: Incomplete
|
14
|
+
def __init__(self, hass: HomeAssistant, ek_api: ElectricKiwiApi) -> None: ...
|
15
|
+
def get_hop_options(self) -> dict[str, int]: ...
|
16
|
+
async def async_update_hop(self, hop_interval: int) -> Hop: ...
|
17
|
+
async def _async_update_data(self) -> Hop: ...
|
@@ -0,0 +1,15 @@
|
|
1
|
+
from .const import SCOPE_VALUES as SCOPE_VALUES
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from homeassistant.components.application_credentials import AuthImplementation as AuthImplementation, AuthorizationServer as AuthorizationServer, ClientCredential as ClientCredential
|
4
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
5
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
6
|
+
from typing import Any
|
7
|
+
|
8
|
+
class ElectricKiwiLocalOAuth2Implementation(AuthImplementation):
|
9
|
+
_name: Incomplete
|
10
|
+
def __init__(self, hass: HomeAssistant, domain: str, client_credential: ClientCredential, authorization_server: AuthorizationServer) -> None: ...
|
11
|
+
@property
|
12
|
+
def extra_authorize_data(self) -> dict[str, Any]: ...
|
13
|
+
async def async_resolve_external_data(self, external_data: Any) -> dict: ...
|
14
|
+
async def _async_refresh_token(self, token: dict) -> dict: ...
|
15
|
+
async def _token_request(self, data: dict) -> dict: ...
|
@@ -0,0 +1,37 @@
|
|
1
|
+
from .const import ATTRIBUTION as ATTRIBUTION, DOMAIN as DOMAIN
|
2
|
+
from .coordinator import ElectricKiwiHOPDataCoordinator as ElectricKiwiHOPDataCoordinator
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from datetime import datetime
|
6
|
+
from electrickiwi_api.model import Hop as Hop
|
7
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
|
8
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
9
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
10
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
12
|
+
|
13
|
+
_LOGGER: Incomplete
|
14
|
+
ATTR_EK_HOP_START: str
|
15
|
+
ATTR_EK_HOP_END: str
|
16
|
+
|
17
|
+
class ElectricKiwiHOPRequiredKeysMixin:
|
18
|
+
value_func: Callable[[Hop], datetime]
|
19
|
+
def __init__(self, value_func) -> None: ...
|
20
|
+
|
21
|
+
class ElectricKiwiHOPSensorEntityDescription(SensorEntityDescription, ElectricKiwiHOPRequiredKeysMixin):
|
22
|
+
def __init__(self, value_func, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement) -> None: ...
|
23
|
+
|
24
|
+
def _check_and_move_time(hop: Hop, time: str) -> datetime: ...
|
25
|
+
|
26
|
+
HOP_SENSOR_TYPE: tuple[ElectricKiwiHOPSensorEntityDescription, ...]
|
27
|
+
|
28
|
+
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
29
|
+
|
30
|
+
class ElectricKiwiHOPEntity(CoordinatorEntity[ElectricKiwiHOPDataCoordinator], SensorEntity):
|
31
|
+
entity_description: ElectricKiwiHOPSensorEntityDescription
|
32
|
+
_attr_has_entity_name: bool
|
33
|
+
_attr_attribution = ATTRIBUTION
|
34
|
+
_attr_unique_id: Incomplete
|
35
|
+
def __init__(self, hop_coordinator: ElectricKiwiHOPDataCoordinator, description: ElectricKiwiHOPSensorEntityDescription) -> None: ...
|
36
|
+
@property
|
37
|
+
def native_value(self) -> datetime: ...
|
@@ -1,10 +1,10 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
2
|
from homeassistant.components import climate as climate, cover as cover, fan as fan, humidifier as humidifier, light as light, media_player as media_player, scene as scene, script as script
|
3
3
|
from homeassistant.const import CONF_ENTITIES as CONF_ENTITIES, CONF_TYPE as CONF_TYPE
|
4
|
-
from homeassistant.core import
|
4
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, State as State, callback as callback, split_entity_id as split_entity_id
|
5
5
|
from homeassistant.helpers import storage as storage
|
6
|
-
from homeassistant.helpers.event import async_track_state_added_domain as async_track_state_added_domain, async_track_state_removed_domain as async_track_state_removed_domain
|
7
|
-
from homeassistant.helpers.typing import ConfigType as ConfigType
|
6
|
+
from homeassistant.helpers.event import EventStateChangedData as EventStateChangedData, async_track_state_added_domain as async_track_state_added_domain, async_track_state_removed_domain as async_track_state_removed_domain
|
7
|
+
from homeassistant.helpers.typing import ConfigType as ConfigType, EventType as EventType
|
8
8
|
|
9
9
|
SUPPORTED_DOMAINS: Incomplete
|
10
10
|
TYPE_ALEXA: str
|
@@ -59,6 +59,6 @@ class Config:
|
|
59
59
|
def number_to_entity_id(self, number: str) -> str | None: ...
|
60
60
|
def get_entity_name(self, state: State) -> str: ...
|
61
61
|
def get_exposed_states(self) -> list[State]: ...
|
62
|
-
def _clear_exposed_cache(self, event:
|
62
|
+
def _clear_exposed_cache(self, event: EventType[EventStateChangedData]) -> None: ...
|
63
63
|
def is_state_exposed(self, state: State) -> bool: ...
|
64
64
|
def _is_state_exposed(self, state: State) -> bool: ...
|
@@ -12,7 +12,8 @@ from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, A
|
|
12
12
|
from homeassistant.components.media_player import ATTR_MEDIA_VOLUME_LEVEL as ATTR_MEDIA_VOLUME_LEVEL, MediaPlayerEntityFeature as MediaPlayerEntityFeature
|
13
13
|
from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_SUPPORTED_FEATURES as ATTR_SUPPORTED_FEATURES, ATTR_TEMPERATURE as ATTR_TEMPERATURE, SERVICE_CLOSE_COVER as SERVICE_CLOSE_COVER, SERVICE_OPEN_COVER as SERVICE_OPEN_COVER, SERVICE_SET_COVER_POSITION as SERVICE_SET_COVER_POSITION, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, SERVICE_VOLUME_SET as SERVICE_VOLUME_SET, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, STATE_UNAVAILABLE as STATE_UNAVAILABLE
|
14
14
|
from homeassistant.core import State as State
|
15
|
-
from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event
|
15
|
+
from homeassistant.helpers.event import EventStateChangedData as EventStateChangedData, async_track_state_change_event as async_track_state_change_event
|
16
|
+
from homeassistant.helpers.typing import EventType as EventType
|
16
17
|
from homeassistant.util.json import json_loads as json_loads
|
17
18
|
from homeassistant.util.network import is_local as is_local
|
18
19
|
from typing import Any
|
@@ -46,6 +47,7 @@ HUE_API_STATE_CT_MIN: int
|
|
46
47
|
HUE_API_STATE_CT_MAX: int
|
47
48
|
HUE_API_USERNAME: str
|
48
49
|
UNAUTHORIZED_USER: Incomplete
|
50
|
+
DIMMABLE_SUPPORT_FEATURES: Incomplete
|
49
51
|
|
50
52
|
class HueUnauthorizedUser(HomeAssistantView):
|
51
53
|
url: str
|
@@ -1,51 +1,17 @@
|
|
1
|
-
from .
|
2
|
-
from .const import CONF_ALLOW_SERVICE_CALLS as CONF_ALLOW_SERVICE_CALLS, DEFAULT_ALLOW_SERVICE_CALLS as DEFAULT_ALLOW_SERVICE_CALLS, DOMAIN as DOMAIN
|
3
|
-
from .dashboard import async_get_dashboard as async_get_dashboard
|
1
|
+
from .const import CONF_NOISE_PSK as CONF_NOISE_PSK, DOMAIN as DOMAIN
|
4
2
|
from .domain_data import DomainData as DomainData
|
5
3
|
from .entry_data import RuntimeEntryData as RuntimeEntryData
|
6
|
-
from .
|
4
|
+
from .manager import ESPHomeManager as ESPHomeManager, cleanup_instance as cleanup_instance
|
7
5
|
from _typeshed import Incomplete
|
8
|
-
from
|
9
|
-
from homeassistant.components import tag as tag, zeroconf as zeroconf
|
6
|
+
from homeassistant.components import zeroconf as zeroconf
|
10
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
11
|
-
from homeassistant.const import
|
12
|
-
from homeassistant.core import
|
13
|
-
from homeassistant.exceptions import TemplateError as TemplateError
|
14
|
-
from homeassistant.helpers import template as template
|
15
|
-
from homeassistant.helpers.device_registry import format_mac as format_mac
|
16
|
-
from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event
|
17
|
-
from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue, async_delete_issue as async_delete_issue
|
18
|
-
from homeassistant.helpers.service import async_set_service_schema as async_set_service_schema
|
19
|
-
from homeassistant.helpers.template import Template as Template
|
8
|
+
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT
|
9
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
20
10
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
21
|
-
from typing import Any, NamedTuple, TypeVar
|
22
11
|
|
23
|
-
CONF_DEVICE_NAME: str
|
24
|
-
CONF_NOISE_PSK: str
|
25
|
-
_LOGGER: Incomplete
|
26
|
-
_R = TypeVar('_R')
|
27
|
-
STABLE_BLE_VERSION_STR: str
|
28
|
-
STABLE_BLE_VERSION: Incomplete
|
29
|
-
PROJECT_URLS: Incomplete
|
30
|
-
DEFAULT_URL: Incomplete
|
31
12
|
CONFIG_SCHEMA: Incomplete
|
32
13
|
|
33
|
-
def _async_check_firmware_version(hass: HomeAssistant, device_info: EsphomeDeviceInfo, api_version: APIVersion) -> None: ...
|
34
|
-
def _async_check_using_api_password(hass: HomeAssistant, device_info: EsphomeDeviceInfo, has_password: bool) -> None: ...
|
35
14
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
36
15
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
37
|
-
def _async_setup_device_registry(hass: HomeAssistant, entry: ConfigEntry, device_info: EsphomeDeviceInfo) -> str: ...
|
38
|
-
|
39
|
-
class ServiceMetadata(NamedTuple):
|
40
|
-
validator: Any
|
41
|
-
example: str
|
42
|
-
selector: dict[str, Any]
|
43
|
-
description: str | None
|
44
|
-
|
45
|
-
ARG_TYPE_METADATA: Incomplete
|
46
|
-
|
47
|
-
async def _register_service(hass: HomeAssistant, entry_data: RuntimeEntryData, service: UserService) -> None: ...
|
48
|
-
async def _setup_services(hass: HomeAssistant, entry_data: RuntimeEntryData, services: list[UserService]) -> None: ...
|
49
|
-
async def _cleanup_instance(hass: HomeAssistant, entry: ConfigEntry) -> RuntimeEntryData: ...
|
50
16
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
51
17
|
async def async_remove_entry(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
@@ -1,14 +1,15 @@
|
|
1
1
|
from ..entry_data import RuntimeEntryData as RuntimeEntryData
|
2
|
-
from .
|
2
|
+
from .cache import ESPHomeBluetoothCache as ESPHomeBluetoothCache
|
3
|
+
from .client import ESPHomeClient as ESPHomeClient, ESPHomeClientData as ESPHomeClientData
|
4
|
+
from .device import ESPHomeBluetoothDevice as ESPHomeBluetoothDevice
|
3
5
|
from .scanner import ESPHomeScanner as ESPHomeScanner
|
4
6
|
from _typeshed import Incomplete
|
5
7
|
from aioesphomeapi import APIClient as APIClient
|
6
|
-
from collections.abc import Callable as Callable
|
7
8
|
from homeassistant.components.bluetooth import HaBluetoothConnector as HaBluetoothConnector, async_get_advertisement_callback as async_get_advertisement_callback, async_register_scanner as async_register_scanner
|
8
9
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
9
10
|
from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant
|
10
11
|
|
11
12
|
_LOGGER: Incomplete
|
12
13
|
|
13
|
-
def
|
14
|
-
async def async_connect_scanner(hass: HomeAssistant, entry: ConfigEntry, cli: APIClient, entry_data: RuntimeEntryData) -> CALLBACK_TYPE: ...
|
14
|
+
def _async_can_connect(entry_data: RuntimeEntryData, bluetooth_device: ESPHomeBluetoothDevice, source: str) -> bool: ...
|
15
|
+
async def async_connect_scanner(hass: HomeAssistant, entry: ConfigEntry, cli: APIClient, entry_data: RuntimeEntryData, cache: ESPHomeBluetoothCache) -> CALLBACK_TYPE: ...
|
@@ -0,0 +1,15 @@
|
|
1
|
+
from bleak.backends.service import BleakGATTServiceCollection as BleakGATTServiceCollection
|
2
|
+
from collections.abc import MutableMapping
|
3
|
+
|
4
|
+
MAX_CACHED_SERVICES: int
|
5
|
+
|
6
|
+
class ESPHomeBluetoothCache:
|
7
|
+
_gatt_services_cache: MutableMapping[int, BleakGATTServiceCollection]
|
8
|
+
_gatt_mtu_cache: MutableMapping[int, int]
|
9
|
+
def get_gatt_services_cache(self, address: int) -> BleakGATTServiceCollection | None: ...
|
10
|
+
def set_gatt_services_cache(self, address: int, services: BleakGATTServiceCollection) -> None: ...
|
11
|
+
def clear_gatt_services_cache(self, address: int) -> None: ...
|
12
|
+
def get_gatt_mtu_cache(self, address: int) -> int | None: ...
|
13
|
+
def set_gatt_mtu_cache(self, address: int, mtu: int) -> None: ...
|
14
|
+
def clear_gatt_mtu_cache(self, address: int) -> None: ...
|
15
|
+
def __init__(self, _gatt_services_cache, _gatt_mtu_cache) -> None: ...
|
@@ -1,17 +1,19 @@
|
|
1
|
+
import asyncio
|
1
2
|
import uuid
|
2
|
-
from
|
3
|
+
from .cache import ESPHomeBluetoothCache as ESPHomeBluetoothCache
|
3
4
|
from .characteristic import BleakGATTCharacteristicESPHome as BleakGATTCharacteristicESPHome
|
4
5
|
from .descriptor import BleakGATTDescriptorESPHome as BleakGATTDescriptorESPHome
|
6
|
+
from .device import ESPHomeBluetoothDevice as ESPHomeBluetoothDevice
|
7
|
+
from .scanner import ESPHomeScanner as ESPHomeScanner
|
5
8
|
from .service import BleakGATTServiceESPHome as BleakGATTServiceESPHome
|
6
9
|
from _typeshed import Incomplete
|
10
|
+
from aioesphomeapi import APIClient as APIClient, APIVersion as APIVersion, DeviceInfo as DeviceInfo
|
7
11
|
from bleak.backends.characteristic import BleakGATTCharacteristic
|
8
12
|
from bleak.backends.client import BaseBleakClient, NotifyCallback as NotifyCallback
|
9
13
|
from bleak.backends.device import BLEDevice
|
10
14
|
from bleak.backends.service import BleakGATTServiceCollection
|
11
15
|
from collections.abc import Callable
|
12
|
-
from homeassistant.
|
13
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
14
|
-
from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant
|
16
|
+
from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE
|
15
17
|
from typing import Any, TypeVar
|
16
18
|
|
17
19
|
DEFAULT_MTU: int
|
@@ -30,24 +32,37 @@ def mac_to_int(address: str) -> int: ...
|
|
30
32
|
def verify_connected(func: _WrapFuncType) -> _WrapFuncType: ...
|
31
33
|
def api_error_as_bleak_error(func: _WrapFuncType) -> _WrapFuncType: ...
|
32
34
|
|
35
|
+
class ESPHomeClientData:
|
36
|
+
bluetooth_device: ESPHomeBluetoothDevice
|
37
|
+
cache: ESPHomeBluetoothCache
|
38
|
+
client: APIClient
|
39
|
+
device_info: DeviceInfo
|
40
|
+
api_version: APIVersion
|
41
|
+
title: str
|
42
|
+
scanner: ESPHomeScanner | None
|
43
|
+
disconnect_callbacks: list[Callable[[], None]]
|
44
|
+
def __init__(self, bluetooth_device, cache, client, device_info, api_version, title, scanner, disconnect_callbacks) -> None: ...
|
45
|
+
|
33
46
|
class ESPHomeClient(BaseBleakClient):
|
34
|
-
|
47
|
+
_disconnect_callbacks: Incomplete
|
48
|
+
_loop: Incomplete
|
35
49
|
_ble_device: Incomplete
|
36
50
|
_address_as_int: Incomplete
|
37
51
|
_source: Incomplete
|
38
|
-
|
39
|
-
|
52
|
+
_cache: Incomplete
|
53
|
+
_bluetooth_device: Incomplete
|
40
54
|
_client: Incomplete
|
41
55
|
_is_connected: bool
|
42
56
|
_mtu: Incomplete
|
43
57
|
_cancel_connection_state: Incomplete
|
44
58
|
_notify_cancels: Incomplete
|
45
|
-
|
59
|
+
_disconnected_futures: Incomplete
|
46
60
|
_device_info: Incomplete
|
47
61
|
_feature_flags: Incomplete
|
48
62
|
_address_type: Incomplete
|
49
63
|
_source_name: Incomplete
|
50
|
-
|
64
|
+
_scanner: Incomplete
|
65
|
+
def __init__(self, address_or_ble_device: BLEDevice | str, *args: Any, client_data: ESPHomeClientData, **kwargs: Any) -> None: ...
|
51
66
|
def __str__(self) -> str: ...
|
52
67
|
def _unsubscribe_connection_state(self) -> None: ...
|
53
68
|
services: Incomplete
|
@@ -56,8 +71,10 @@ class ESPHomeClient(BaseBleakClient):
|
|
56
71
|
def _async_esp_disconnected(self) -> None: ...
|
57
72
|
_disconnected_callback: Incomplete
|
58
73
|
def _async_call_bleak_disconnected_callback(self) -> None: ...
|
74
|
+
def _on_bluetooth_connection_state(self, connected_future: asyncio.Future[bool], connected: bool, mtu: int, error: int) -> None: ...
|
59
75
|
async def connect(self, dangerous_use_bleak_cache: bool = ..., **kwargs: Any) -> bool: ...
|
60
76
|
async def disconnect(self) -> bool: ...
|
77
|
+
async def _disconnect(self) -> bool: ...
|
61
78
|
async def _wait_for_free_connection_slot(self, timeout: float) -> None: ...
|
62
79
|
@property
|
63
80
|
def is_connected(self) -> bool: ...
|
@@ -66,6 +83,7 @@ class ESPHomeClient(BaseBleakClient):
|
|
66
83
|
async def pair(self, *args: Any, **kwargs: Any) -> bool: ...
|
67
84
|
async def unpair(self) -> bool: ...
|
68
85
|
async def get_services(self, dangerous_use_bleak_cache: bool = ..., **kwargs: Any) -> BleakGATTServiceCollection: ...
|
86
|
+
async def _get_services(self, dangerous_use_bleak_cache: bool = ..., **kwargs: Any) -> BleakGATTServiceCollection: ...
|
69
87
|
def _resolve_characteristic(self, char_specifier: BleakGATTCharacteristic | int | str | uuid.UUID) -> BleakGATTCharacteristic: ...
|
70
88
|
async def clear_cache(self) -> bool: ...
|
71
89
|
async def read_gatt_char(self, char_specifier: BleakGATTCharacteristic | int | str | uuid.UUID, **kwargs: Any) -> bytearray: ...
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import asyncio
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from homeassistant.core import callback as callback
|
4
|
+
|
5
|
+
_LOGGER: Incomplete
|
6
|
+
|
7
|
+
class ESPHomeBluetoothDevice:
|
8
|
+
name: str
|
9
|
+
mac_address: str
|
10
|
+
ble_connections_free: int
|
11
|
+
ble_connections_limit: int
|
12
|
+
_ble_connection_free_futures: list[asyncio.Future[int]]
|
13
|
+
def async_update_ble_connection_limits(self, free: int, limit: int) -> None: ...
|
14
|
+
async def wait_for_ble_connections_free(self) -> int: ...
|
15
|
+
def __init__(self, name, mac_address, ble_connections_free, ble_connections_limit, _ble_connection_free_futures) -> None: ...
|