homeassistant-stubs 2025.7.4__py3-none-any.whl → 2025.8.0b1__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.
Potentially problematic release.
This version of homeassistant-stubs might be problematic. Click here for more details.
- homeassistant-stubs/bootstrap.pyi +1 -1
- homeassistant-stubs/components/airnow/__init__.pyi +0 -1
- homeassistant-stubs/components/airnow/config_flow.pyi +2 -2
- homeassistant-stubs/components/airos/__init__.pyi +9 -0
- homeassistant-stubs/components/airos/config_flow.pyi +14 -0
- homeassistant-stubs/components/airos/const.pyi +5 -0
- homeassistant-stubs/components/airos/coordinator.pyi +16 -0
- homeassistant-stubs/components/airos/entity.pyi +11 -0
- homeassistant-stubs/components/airos/sensor.pyi +29 -0
- homeassistant-stubs/components/airq/const.pyi +0 -1
- homeassistant-stubs/components/airq/sensor.pyi +2 -2
- homeassistant-stubs/components/airthings/sensor.pyi +1 -1
- homeassistant-stubs/components/alexa_devices/__init__.pyi +6 -0
- homeassistant-stubs/components/alexa_devices/config_flow.pyi +10 -0
- homeassistant-stubs/components/alexa_devices/coordinator.pyi +4 -3
- homeassistant-stubs/components/alexa_devices/services.pyi +24 -0
- homeassistant-stubs/components/amberelectric/__init__.pyi +7 -1
- homeassistant-stubs/components/amberelectric/const.pyi +8 -1
- homeassistant-stubs/components/amberelectric/coordinator.pyi +1 -2
- homeassistant-stubs/components/amberelectric/helpers.pyi +6 -0
- homeassistant-stubs/components/amberelectric/sensor.pyi +2 -2
- homeassistant-stubs/components/amberelectric/services.pyi +15 -0
- homeassistant-stubs/components/analytics/__init__.pyi +1 -0
- homeassistant-stubs/components/analytics/analytics.pyi +3 -0
- homeassistant-stubs/components/analytics/http.pyi +10 -0
- homeassistant-stubs/components/analytics_insights/__init__.pyi +0 -1
- homeassistant-stubs/components/analytics_insights/config_flow.pyi +2 -2
- homeassistant-stubs/components/androidtv_remote/__init__.pyi +2 -6
- homeassistant-stubs/components/androidtv_remote/config_flow.pyi +6 -6
- homeassistant-stubs/components/androidtv_remote/diagnostics.pyi +1 -1
- homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -2
- homeassistant-stubs/components/androidtv_remote/helpers.pyi +3 -1
- homeassistant-stubs/components/androidtv_remote/media_player.pyi +4 -4
- homeassistant-stubs/components/androidtv_remote/remote.pyi +1 -1
- homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
- homeassistant-stubs/components/assist_pipeline/const.pyi +0 -1
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +2 -5
- homeassistant-stubs/components/awair/const.pyi +1 -0
- homeassistant-stubs/components/awair/sensor.pyi +1 -1
- homeassistant-stubs/components/backup/__init__.pyi +6 -2
- homeassistant-stubs/components/backup/coordinator.pyi +0 -1
- homeassistant-stubs/components/backup/manager.pyi +6 -3
- homeassistant-stubs/components/backup/onboarding.pyi +1 -1
- homeassistant-stubs/components/backup/services.pyi +7 -0
- homeassistant-stubs/components/backup/websocket.pyi +4 -1
- homeassistant-stubs/components/blue_current/__init__.pyi +5 -5
- homeassistant-stubs/components/blue_current/const.pyi +11 -0
- homeassistant-stubs/components/blue_current/switch.pyi +40 -0
- homeassistant-stubs/components/bosch_alarm/__init__.pyi +1 -1
- homeassistant-stubs/components/bosch_alarm/services.pyi +3 -2
- homeassistant-stubs/components/bring/__init__.pyi +5 -0
- homeassistant-stubs/components/bring/const.pyi +4 -0
- homeassistant-stubs/components/bring/services.pyi +14 -0
- homeassistant-stubs/components/cloud/backup.pyi +3 -3
- homeassistant-stubs/components/cloud/repairs.pyi +3 -3
- homeassistant-stubs/components/cloud/subscription.pyi +2 -1
- homeassistant-stubs/components/cloud/tts.pyi +2 -1
- homeassistant-stubs/components/command_line/sensor.pyi +0 -2
- homeassistant-stubs/components/demo/vacuum.pyi +0 -3
- homeassistant-stubs/components/derivative/__init__.pyi +5 -1
- homeassistant-stubs/components/derivative/config_flow.pyi +2 -0
- homeassistant-stubs/components/derivative/sensor.pyi +7 -4
- homeassistant-stubs/components/devolo_home_control/config_flow.pyi +3 -7
- homeassistant-stubs/components/devolo_home_control/entity.pyi +0 -1
- homeassistant-stubs/components/devolo_home_network/coordinator.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
- homeassistant-stubs/components/devolo_home_network/sensor.pyi +1 -1
- homeassistant-stubs/components/discovergy/__init__.pyi +1 -0
- homeassistant-stubs/components/discovergy/coordinator.pyi +1 -0
- homeassistant-stubs/components/dnsip/__init__.pyi +0 -1
- homeassistant-stubs/components/dnsip/config_flow.pyi +2 -2
- homeassistant-stubs/components/ecovacs/binary_sensor.pyi +13 -3
- homeassistant-stubs/components/ecovacs/sensor.pyi +13 -0
- homeassistant-stubs/components/ecovacs/vacuum.pyi +1 -7
- homeassistant-stubs/components/eheimdigital/config_flow.pyi +2 -1
- homeassistant-stubs/components/elevenlabs/config_flow.pyi +1 -1
- homeassistant-stubs/components/elevenlabs/const.pyi +0 -2
- homeassistant-stubs/components/elevenlabs/tts.pyi +2 -3
- homeassistant-stubs/components/enphase_envoy/__init__.pyi +0 -2
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +2 -2
- homeassistant-stubs/components/esphome/config_flow.pyi +2 -0
- homeassistant-stubs/components/esphome/encryption_key_storage.pyi +29 -0
- homeassistant-stubs/components/esphome/entity.pyi +3 -1
- homeassistant-stubs/components/esphome/entry_data.pyi +14 -6
- homeassistant-stubs/components/esphome/manager.pyi +3 -1
- homeassistant-stubs/components/feedreader/__init__.pyi +0 -1
- homeassistant-stubs/components/feedreader/config_flow.pyi +3 -3
- homeassistant-stubs/components/forecast_solar/__init__.pyi +0 -1
- homeassistant-stubs/components/forecast_solar/config_flow.pyi +2 -2
- homeassistant-stubs/components/fritz/__init__.pyi +0 -1
- homeassistant-stubs/components/fritz/config_flow.pyi +2 -2
- homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +0 -1
- homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +2 -2
- homeassistant-stubs/components/frontend/__init__.pyi +1 -0
- homeassistant-stubs/components/generic_hygrostat/__init__.pyi +3 -1
- homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
- homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +3 -3
- homeassistant-stubs/components/generic_thermostat/__init__.pyi +5 -1
- homeassistant-stubs/components/generic_thermostat/climate.pyi +3 -3
- homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -0
- homeassistant-stubs/components/geo_location/trigger.pyi +0 -1
- homeassistant-stubs/components/gios/const.pyi +2 -0
- homeassistant-stubs/components/gios/sensor.pyi +1 -1
- homeassistant-stubs/components/google_assistant_sdk/application_credentials.pyi +1 -0
- homeassistant-stubs/components/google_cloud/const.pyi +1 -0
- homeassistant-stubs/components/google_cloud/stt.pyi +3 -2
- homeassistant-stubs/components/guardian/__init__.pyi +1 -1
- homeassistant-stubs/components/guardian/services.pyi +2 -1
- homeassistant-stubs/components/habitica/button.pyi +3 -4
- homeassistant-stubs/components/habitica/coordinator.pyi +2 -3
- homeassistant-stubs/components/habitica/entity.pyi +1 -1
- homeassistant-stubs/components/habitica/sensor.pyi +3 -18
- homeassistant-stubs/components/habitica/switch.pyi +4 -3
- homeassistant-stubs/components/habitica/util.pyi +2 -1
- homeassistant-stubs/components/heos/__init__.pyi +1 -1
- homeassistant-stubs/components/heos/config_flow.pyi +3 -0
- homeassistant-stubs/components/heos/services.pyi +3 -2
- homeassistant-stubs/components/here_travel_time/__init__.pyi +3 -1
- homeassistant-stubs/components/here_travel_time/config_flow.pyi +3 -2
- homeassistant-stubs/components/here_travel_time/const.pyi +1 -0
- homeassistant-stubs/components/here_travel_time/coordinator.pyi +1 -1
- homeassistant-stubs/components/here_travel_time/model.pyi +2 -1
- homeassistant-stubs/components/history_stats/__init__.pyi +5 -1
- homeassistant-stubs/components/history_stats/config_flow.pyi +14 -0
- homeassistant-stubs/components/history_stats/coordinator.pyi +3 -1
- homeassistant-stubs/components/history_stats/data.pyi +2 -1
- homeassistant-stubs/components/history_stats/helpers.pyi +1 -1
- homeassistant-stubs/components/history_stats/sensor.pyi +7 -4
- homeassistant-stubs/components/holiday/__init__.pyi +0 -1
- homeassistant-stubs/components/holiday/config_flow.pyi +2 -2
- homeassistant-stubs/components/home_connect/__init__.pyi +1 -1
- homeassistant-stubs/components/home_connect/services.pyi +3 -2
- homeassistant-stubs/components/homeassistant/__init__.pyi +2 -1
- homeassistant-stubs/components/homeassistant/triggers/time.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/coordinator.pyi +2 -1
- homeassistant-stubs/components/homee/__init__.pyi +1 -1
- homeassistant-stubs/components/homee/config_flow.pyi +5 -0
- homeassistant-stubs/components/homekit/__init__.pyi +2 -1
- homeassistant-stubs/components/http/__init__.pyi +1 -2
- homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -2
- homeassistant-stubs/components/huawei_lte/config_flow.pyi +5 -4
- homeassistant-stubs/components/huawei_lte/const.pyi +1 -1
- homeassistant-stubs/components/huawei_lte/diagnostics.pyi +18 -0
- homeassistant-stubs/components/husqvarna_automower/button.pyi +2 -2
- homeassistant-stubs/components/husqvarna_automower/calendar.pyi +3 -0
- homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +15 -13
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +2 -6
- homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +2 -2
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +5 -0
- homeassistant-stubs/components/hydrawise/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/hydrawise/const.pyi +1 -0
- homeassistant-stubs/components/hydrawise/coordinator.pyi +9 -2
- homeassistant-stubs/components/hydrawise/entity.pyi +1 -1
- homeassistant-stubs/components/hydrawise/sensor.pyi +1 -1
- homeassistant-stubs/components/hydrawise/switch.pyi +1 -1
- homeassistant-stubs/components/hydrawise/valve.pyi +1 -1
- homeassistant-stubs/components/hyperion/__init__.pyi +0 -1
- homeassistant-stubs/components/hyperion/config_flow.pyi +2 -2
- homeassistant-stubs/components/imgw_pib/sensor.pyi +7 -1
- homeassistant-stubs/components/immich/__init__.pyi +6 -0
- homeassistant-stubs/components/immich/media_source.pyi +1 -0
- homeassistant-stubs/components/immich/services.pyi +18 -0
- homeassistant-stubs/components/input_text/__init__.pyi +1 -1
- homeassistant-stubs/components/integration/__init__.pyi +5 -1
- homeassistant-stubs/components/integration/config_flow.pyi +1 -0
- homeassistant-stubs/components/integration/sensor.pyi +5 -6
- homeassistant-stubs/components/iron_os/__init__.pyi +0 -3
- homeassistant-stubs/components/iron_os/const.pyi +4 -0
- homeassistant-stubs/components/iron_os/coordinator.pyi +1 -1
- homeassistant-stubs/components/iron_os/number.pyi +20 -4
- homeassistant-stubs/components/iron_os/switch.pyi +2 -0
- homeassistant-stubs/components/isy994/__init__.pyi +0 -1
- homeassistant-stubs/components/isy994/config_flow.pyi +3 -3
- homeassistant-stubs/components/jellyfin/browse_media.pyi +2 -1
- homeassistant-stubs/components/jellyfin/media_player.pyi +5 -2
- homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +5 -15
- homeassistant-stubs/components/jewish_calendar/config_flow.pyi +2 -2
- homeassistant-stubs/components/jewish_calendar/entity.pyi +19 -5
- homeassistant-stubs/components/jewish_calendar/sensor.pyi +11 -7
- homeassistant-stubs/components/knx/__init__.pyi +6 -40
- homeassistant-stubs/components/knx/binary_sensor.pyi +3 -2
- homeassistant-stubs/components/knx/button.pyi +1 -1
- homeassistant-stubs/components/knx/climate.pyi +1 -1
- homeassistant-stubs/components/knx/config_flow.pyi +14 -21
- homeassistant-stubs/components/knx/const.pyi +1 -1
- homeassistant-stubs/components/knx/cover.pyi +3 -2
- homeassistant-stubs/components/knx/date.pyi +1 -1
- homeassistant-stubs/components/knx/datetime.pyi +1 -1
- homeassistant-stubs/components/knx/entity.pyi +1 -1
- homeassistant-stubs/components/knx/fan.pyi +1 -1
- homeassistant-stubs/components/knx/knx_module.pyi +43 -0
- homeassistant-stubs/components/knx/light.pyi +3 -2
- homeassistant-stubs/components/knx/notify.pyi +1 -1
- homeassistant-stubs/components/knx/number.pyi +1 -1
- homeassistant-stubs/components/knx/scene.pyi +1 -1
- homeassistant-stubs/components/knx/select.pyi +1 -1
- homeassistant-stubs/components/knx/sensor.pyi +1 -1
- homeassistant-stubs/components/knx/services.pyi +2 -2
- homeassistant-stubs/components/knx/storage/config_store.pyi +4 -0
- homeassistant-stubs/components/knx/storage/const.pyi +8 -7
- homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +3 -10
- homeassistant-stubs/components/knx/storage/knx_selector.pyi +4 -0
- homeassistant-stubs/components/knx/storage/migration.pyi +5 -0
- homeassistant-stubs/components/knx/storage/util.pyi +16 -0
- homeassistant-stubs/components/knx/switch.pyi +3 -2
- homeassistant-stubs/components/knx/text.pyi +1 -1
- homeassistant-stubs/components/knx/time.pyi +1 -1
- homeassistant-stubs/components/knx/weather.pyi +1 -1
- homeassistant-stubs/components/knx/websocket.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -2
- homeassistant-stubs/components/lcn/binary_sensor.pyi +1 -20
- homeassistant-stubs/components/lcn/helpers.pyi +1 -0
- homeassistant-stubs/components/lcn/light.pyi +2 -1
- homeassistant-stubs/components/letpot/coordinator.pyi +3 -4
- homeassistant-stubs/components/letpot/switch.pyi +1 -1
- homeassistant-stubs/components/letpot/time.pyi +1 -1
- homeassistant-stubs/components/lifx/const.pyi +1 -0
- homeassistant-stubs/components/lifx/coordinator.pyi +5 -1
- homeassistant-stubs/components/lifx/manager.pyi +1 -1
- homeassistant-stubs/components/linkplay/select.pyi +35 -0
- homeassistant-stubs/components/litterrobot/sensor.pyi +3 -0
- homeassistant-stubs/components/matrix/__init__.pyi +1 -1
- homeassistant-stubs/components/matrix/services.pyi +3 -2
- homeassistant-stubs/components/matter/entity.pyi +2 -2
- homeassistant-stubs/components/matter/number.pyi +29 -1
- homeassistant-stubs/components/matter/select.pyi +2 -2
- homeassistant-stubs/components/matter/vacuum.pyi +2 -0
- homeassistant-stubs/components/mcp_server/server.pyi +1 -1
- homeassistant-stubs/components/mealie/const.pyi +2 -0
- homeassistant-stubs/components/mealie/services.pyi +4 -1
- homeassistant-stubs/components/media_player/const.pyi +2 -2
- homeassistant-stubs/components/media_source/const.pyi +3 -0
- homeassistant-stubs/components/media_source/local_source.pyi +1 -1
- homeassistant-stubs/components/media_source/models.pyi +6 -2
- homeassistant-stubs/components/met_eireann/__init__.pyi +2 -17
- homeassistant-stubs/components/met_eireann/coordinator.pyi +28 -0
- homeassistant-stubs/components/met_eireann/weather.pyi +1 -3
- homeassistant-stubs/components/miele/__init__.pyi +5 -0
- homeassistant-stubs/components/miele/coordinator.pyi +1 -1
- homeassistant-stubs/components/miele/entity.pyi +2 -0
- homeassistant-stubs/components/miele/sensor.pyi +7 -6
- homeassistant-stubs/components/miele/services.pyi +24 -0
- homeassistant-stubs/components/miele/vacuum.pyi +0 -2
- homeassistant-stubs/components/modem_callerid/sensor.pyi +2 -2
- homeassistant-stubs/components/mold_indicator/__init__.pyi +8 -1
- homeassistant-stubs/components/mold_indicator/config_flow.pyi +2 -0
- homeassistant-stubs/components/mold_indicator/sensor.pyi +2 -2
- homeassistant-stubs/components/mqtt/climate.pyi +1 -37
- homeassistant-stubs/components/mqtt/config_flow.pyi +38 -6
- homeassistant-stubs/components/mqtt/const.pyi +33 -2
- homeassistant-stubs/components/mqtt/repairs.pyi +15 -0
- homeassistant-stubs/components/nasweb/const.pyi +1 -0
- homeassistant-stubs/components/nasweb/coordinator.pyi +3 -1
- homeassistant-stubs/components/nasweb/sensor.pyi +54 -0
- homeassistant-stubs/components/netatmo/climate.pyi +1 -1
- homeassistant-stubs/components/netatmo/const.pyi +1 -0
- homeassistant-stubs/components/nextdns/__init__.pyi +2 -3
- homeassistant-stubs/components/nextdns/coordinator.pyi +10 -2
- homeassistant-stubs/components/nordpool/const.pyi +1 -0
- homeassistant-stubs/components/nordpool/services.pyi +5 -1
- homeassistant-stubs/components/number/const.pyi +2 -1
- homeassistant-stubs/components/nut/__init__.pyi +0 -1
- homeassistant-stubs/components/onewire/__init__.pyi +0 -1
- homeassistant-stubs/components/onewire/config_flow.pyi +2 -2
- homeassistant-stubs/components/onkyo/__init__.pyi +2 -3
- homeassistant-stubs/components/onkyo/config_flow.pyi +9 -6
- homeassistant-stubs/components/onkyo/const.pyi +7 -65
- homeassistant-stubs/components/onkyo/media_player.pyi +16 -44
- homeassistant-stubs/components/onkyo/receiver.pyi +24 -25
- homeassistant-stubs/components/onkyo/services.pyi +3 -3
- homeassistant-stubs/components/onkyo/util.pyi +3 -0
- homeassistant-stubs/components/open_router/__init__.pyi +15 -0
- homeassistant-stubs/components/open_router/ai_task.pyi +17 -0
- homeassistant-stubs/components/open_router/config_flow.pyi +30 -0
- homeassistant-stubs/components/open_router/const.pyi +8 -0
- homeassistant-stubs/components/open_router/conversation.pyi +20 -0
- homeassistant-stubs/components/open_router/entity.pyi +33 -0
- homeassistant-stubs/components/openai_conversation/__init__.pyi +3 -2
- homeassistant-stubs/components/openai_conversation/ai_task.pyi +16 -0
- homeassistant-stubs/components/openai_conversation/config_flow.pyi +2 -3
- homeassistant-stubs/components/openai_conversation/const.pyi +9 -1
- homeassistant-stubs/components/openai_conversation/conversation.pyi +6 -22
- homeassistant-stubs/components/openai_conversation/entity.pyi +36 -0
- homeassistant-stubs/components/opower/__init__.pyi +8 -0
- homeassistant-stubs/components/opower/config_flow.pyi +25 -0
- homeassistant-stubs/components/opower/const.pyi +3 -0
- homeassistant-stubs/components/opower/coordinator.pyi +24 -0
- homeassistant-stubs/components/opower/sensor.pyi +35 -0
- homeassistant-stubs/components/pegel_online/__init__.pyi +1 -1
- homeassistant-stubs/components/pegel_online/sensor.pyi +2 -0
- homeassistant-stubs/components/pi_hole/__init__.pyi +6 -2
- homeassistant-stubs/components/pi_hole/config_flow.pyi +1 -2
- homeassistant-stubs/components/pi_hole/const.pyi +1 -0
- homeassistant-stubs/components/pi_hole/sensor.pyi +5 -0
- homeassistant-stubs/components/pi_hole/update.pyi +3 -3
- homeassistant-stubs/components/ping/__init__.pyi +0 -1
- homeassistant-stubs/components/ping/config_flow.pyi +3 -3
- homeassistant-stubs/components/plugwise/select.pyi +1 -1
- homeassistant-stubs/components/proximity/__init__.pyi +0 -1
- homeassistant-stubs/components/proximity/config_flow.pyi +3 -3
- homeassistant-stubs/components/purpleair/__init__.pyi +0 -1
- homeassistant-stubs/components/purpleair/config_flow.pyi +2 -2
- homeassistant-stubs/components/pyload/config_flow.pyi +4 -0
- homeassistant-stubs/components/recorder/pool.pyi +2 -1
- homeassistant-stubs/components/renault/__init__.pyi +1 -1
- homeassistant-stubs/components/renault/services.pyi +3 -2
- homeassistant-stubs/components/reolink/__init__.pyi +0 -1
- homeassistant-stubs/components/reolink/config_flow.pyi +2 -2
- homeassistant-stubs/components/reolink/number.pyi +1 -1
- homeassistant-stubs/components/reolink/sensor.pyi +1 -1
- homeassistant-stubs/components/rest/sensor.pyi +1 -3
- homeassistant-stubs/components/roborock/__init__.pyi +0 -1
- homeassistant-stubs/components/roborock/config_flow.pyi +2 -2
- homeassistant-stubs/components/roku/__init__.pyi +0 -1
- homeassistant-stubs/components/roku/config_flow.pyi +2 -2
- homeassistant-stubs/components/russound_rio/const.pyi +2 -0
- homeassistant-stubs/components/russound_rio/media_player.pyi +6 -0
- homeassistant-stubs/components/scrape/sensor.pyi +1 -2
- homeassistant-stubs/components/sensor/const.pyi +2 -1
- homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
- homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
- homeassistant-stubs/components/shelly/button.pyi +2 -2
- homeassistant-stubs/components/shelly/climate.pyi +2 -2
- homeassistant-stubs/components/shelly/coordinator.pyi +5 -1
- homeassistant-stubs/components/shelly/entity.pyi +3 -0
- homeassistant-stubs/components/shelly/event.pyi +2 -2
- homeassistant-stubs/components/shelly/sensor.pyi +2 -2
- homeassistant-stubs/components/shelly/utils.pyi +2 -2
- homeassistant-stubs/components/sleepiq/const.pyi +2 -0
- homeassistant-stubs/components/sleepiq/number.pyi +7 -3
- homeassistant-stubs/components/sleepiq/select.pyi +15 -2
- homeassistant-stubs/components/smhi/coordinator.pyi +3 -0
- homeassistant-stubs/components/smhi/entity.pyi +3 -1
- homeassistant-stubs/components/smhi/sensor.pyi +30 -0
- homeassistant-stubs/components/smhi/weather.pyi +4 -2
- homeassistant-stubs/components/sonarr/__init__.pyi +0 -1
- homeassistant-stubs/components/sonarr/config_flow.pyi +2 -2
- homeassistant-stubs/components/speedtestdotnet/__init__.pyi +0 -1
- homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +2 -2
- homeassistant-stubs/components/sql/__init__.pyi +0 -1
- homeassistant-stubs/components/sql/config_flow.pyi +2 -2
- homeassistant-stubs/components/squeezebox/__init__.pyi +3 -2
- homeassistant-stubs/components/squeezebox/const.pyi +2 -3
- homeassistant-stubs/components/squeezebox/coordinator.pyi +2 -2
- homeassistant-stubs/components/squeezebox/media_player.pyi +2 -2
- homeassistant-stubs/components/statistics/__init__.pyi +3 -1
- homeassistant-stubs/components/statistics/config_flow.pyi +1 -0
- homeassistant-stubs/components/statistics/sensor.pyi +5 -5
- homeassistant-stubs/components/stookwijzer/__init__.pyi +4 -0
- homeassistant-stubs/components/stookwijzer/const.pyi +2 -0
- homeassistant-stubs/components/stookwijzer/services.pyi +17 -0
- homeassistant-stubs/components/switch_as_x/__init__.pyi +2 -2
- homeassistant-stubs/components/switch_as_x/entity.pyi +1 -3
- homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -0
- homeassistant-stubs/components/switchbot_cloud/const.pyi +1 -0
- homeassistant-stubs/components/switchbot_cloud/fan.pyi +26 -0
- homeassistant-stubs/components/switchbot_cloud/light.pyi +40 -0
- homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +17 -1
- homeassistant-stubs/components/synology_dsm/__init__.pyi +0 -1
- homeassistant-stubs/components/synology_dsm/config_flow.pyi +2 -2
- homeassistant-stubs/components/tankerkoenig/__init__.pyi +10 -0
- homeassistant-stubs/components/tankerkoenig/binary_sensor.pyi +23 -0
- homeassistant-stubs/components/tankerkoenig/config_flow.pyi +33 -0
- homeassistant-stubs/components/tankerkoenig/const.pyi +13 -0
- homeassistant-stubs/components/tankerkoenig/coordinator.pyi +22 -0
- homeassistant-stubs/components/tankerkoenig/diagnostics.pyi +10 -0
- homeassistant-stubs/components/tankerkoenig/entity.pyi +11 -0
- homeassistant-stubs/components/tankerkoenig/sensor.pyi +28 -0
- homeassistant-stubs/components/threshold/__init__.pyi +5 -1
- homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/threshold/config_flow.pyi +1 -0
- homeassistant-stubs/components/time_date/config_flow.pyi +1 -2
- homeassistant-stubs/components/trafikverket_train/__init__.pyi +0 -1
- homeassistant-stubs/components/trafikverket_train/config_flow.pyi +2 -2
- homeassistant-stubs/components/trend/__init__.pyi +3 -1
- homeassistant-stubs/components/trend/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/trend/config_flow.pyi +1 -0
- homeassistant-stubs/components/tts/entity.pyi +0 -2
- homeassistant-stubs/components/unifiprotect/__init__.pyi +5 -5
- homeassistant-stubs/components/unifiprotect/config_flow.pyi +5 -5
- homeassistant-stubs/components/unifiprotect/repairs.pyi +0 -6
- homeassistant-stubs/components/unifiprotect/services.pyi +1 -1
- homeassistant-stubs/components/uptime_kuma/__init__.pyi +14 -0
- homeassistant-stubs/components/uptime_kuma/config_flow.pyi +26 -0
- homeassistant-stubs/components/uptime_kuma/const.pyi +7 -0
- homeassistant-stubs/components/uptime_kuma/coordinator.pyi +30 -0
- homeassistant-stubs/components/uptime_kuma/diagnostics.pyi +9 -0
- homeassistant-stubs/components/uptime_kuma/sensor.pyi +46 -0
- homeassistant-stubs/components/uptime_kuma/update.pyi +39 -0
- homeassistant-stubs/components/vacuum/__init__.pyi +7 -0
- homeassistant-stubs/components/velbus/__init__.pyi +1 -1
- homeassistant-stubs/components/velbus/const.pyi +0 -1
- homeassistant-stubs/components/velbus/services.pyi +4 -4
- homeassistant-stubs/components/vodafone_station/__init__.pyi +0 -1
- homeassistant-stubs/components/vodafone_station/config_flow.pyi +2 -2
- homeassistant-stubs/components/volvo/__init__.pyi +15 -0
- homeassistant-stubs/components/volvo/api.pyi +14 -0
- homeassistant-stubs/components/volvo/application_credentials.pyi +9 -0
- homeassistant-stubs/components/volvo/config_flow.pyi +34 -0
- homeassistant-stubs/components/volvo/const.pyi +8 -0
- homeassistant-stubs/components/volvo/coordinator.pyi +46 -0
- homeassistant-stubs/components/volvo/entity.pyi +33 -0
- homeassistant-stubs/components/volvo/sensor.pyi +35 -0
- homeassistant-stubs/components/wallbox/__init__.pyi +4 -5
- homeassistant-stubs/components/wallbox/coordinator.pyi +8 -2
- homeassistant-stubs/components/wallbox/lock.pyi +5 -4
- homeassistant-stubs/components/wallbox/number.pyi +6 -5
- homeassistant-stubs/components/wallbox/select.pyi +4 -3
- homeassistant-stubs/components/wallbox/sensor.pyi +5 -4
- homeassistant-stubs/components/wallbox/switch.pyi +5 -4
- homeassistant-stubs/components/waqi/__init__.pyi +3 -5
- homeassistant-stubs/components/waqi/coordinator.pyi +3 -2
- homeassistant-stubs/components/waqi/sensor.pyi +2 -13
- homeassistant-stubs/components/webostv/__init__.pyi +0 -1
- homeassistant-stubs/components/webostv/config_flow.pyi +3 -3
- homeassistant-stubs/components/websocket_api/commands.pyi +4 -0
- homeassistant-stubs/components/wiz/fan.pyi +34 -0
- homeassistant-stubs/components/wled/__init__.pyi +0 -1
- homeassistant-stubs/components/wled/config_flow.pyi +2 -2
- homeassistant-stubs/components/workday/__init__.pyi +0 -1
- homeassistant-stubs/components/workday/config_flow.pyi +2 -2
- homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +0 -1
- homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +2 -2
- homeassistant-stubs/components/yalexs_ble/lock.pyi +14 -2
- homeassistant-stubs/components/zone/condition.pyi +22 -0
- homeassistant-stubs/components/zone/trigger.pyi +2 -1
- homeassistant-stubs/components/zwave_js/__init__.pyi +10 -9
- homeassistant-stubs/components/zwave_js/api.pyi +35 -34
- homeassistant-stubs/components/zwave_js/binary_sensor.pyi +7 -7
- homeassistant-stubs/components/zwave_js/button.pyi +5 -5
- homeassistant-stubs/components/zwave_js/climate.pyi +5 -5
- homeassistant-stubs/components/zwave_js/config_flow.pyi +4 -3
- homeassistant-stubs/components/zwave_js/const.pyi +0 -2
- homeassistant-stubs/components/zwave_js/cover.pyi +7 -7
- homeassistant-stubs/components/zwave_js/device_automation_helpers.pyi +1 -1
- homeassistant-stubs/components/zwave_js/diagnostics.pyi +5 -5
- homeassistant-stubs/components/zwave_js/event.pyi +4 -4
- homeassistant-stubs/components/zwave_js/fan.pyi +6 -6
- homeassistant-stubs/components/zwave_js/helpers.pyi +6 -5
- homeassistant-stubs/components/zwave_js/humidifier.pyi +4 -4
- homeassistant-stubs/components/zwave_js/light.pyi +15 -5
- homeassistant-stubs/components/zwave_js/lock.pyi +3 -3
- homeassistant-stubs/components/zwave_js/models.pyi +12 -0
- homeassistant-stubs/components/zwave_js/number.pyi +6 -6
- homeassistant-stubs/components/zwave_js/select.pyi +8 -8
- homeassistant-stubs/components/zwave_js/sensor.pyi +10 -10
- homeassistant-stubs/components/zwave_js/siren.pyi +4 -4
- homeassistant-stubs/components/zwave_js/switch.pyi +7 -7
- homeassistant-stubs/components/zwave_js/triggers/event.pyi +1 -2
- homeassistant-stubs/components/zwave_js/triggers/trigger_helpers.pyi +1 -1
- homeassistant-stubs/components/zwave_js/update.pyi +28 -18
- homeassistant-stubs/config.pyi +0 -2
- homeassistant-stubs/config_entries.pyi +3 -0
- homeassistant-stubs/const.pyi +2 -0
- homeassistant-stubs/core.pyi +12 -8
- homeassistant-stubs/helpers/condition.pyi +25 -6
- homeassistant-stubs/helpers/config_validation.pyi +0 -2
- homeassistant-stubs/helpers/device.pyi +2 -0
- homeassistant-stubs/helpers/device_registry.pyi +11 -6
- homeassistant-stubs/helpers/entity.pyi +3 -1
- homeassistant-stubs/helpers/entity_platform.pyi +30 -9
- homeassistant-stubs/helpers/frame.pyi +1 -1
- homeassistant-stubs/helpers/helper_integration.pyi +2 -1
- homeassistant-stubs/helpers/llm.pyi +5 -1
- homeassistant-stubs/helpers/schema_config_entry_flow.pyi +1 -0
- homeassistant-stubs/helpers/selector.pyi +42 -37
- homeassistant-stubs/helpers/service.pyi +9 -26
- homeassistant-stubs/helpers/target.pyi +59 -0
- homeassistant-stubs/helpers/trigger.pyi +3 -1
- homeassistant-stubs/helpers/trigger_template_entity.pyi +5 -1
- homeassistant-stubs/loader.pyi +2 -9
- homeassistant-stubs/runner.pyi +1 -0
- homeassistant-stubs/util/resource.pyi +7 -0
- homeassistant-stubs/util/unit_conversion.pyi +1 -1
- {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0b1.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0b1.dist-info}/RECORD +479 -411
- homeassistant-stubs/components/backup/basic_websocket.pyi +0 -12
- homeassistant-stubs/helpers/backup.pyi +0 -24
- {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0b1.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0b1.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
|
2
|
+
from .coordinator import UptimeKumaConfigEntry as UptimeKumaConfigEntry, UptimeKumaDataUpdateCoordinator as UptimeKumaDataUpdateCoordinator, UptimeKumaSoftwareUpdateCoordinator as UptimeKumaSoftwareUpdateCoordinator
|
|
3
|
+
from homeassistant.const import Platform as Platform
|
|
4
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
5
|
+
from homeassistant.helpers import device_registry as dr
|
|
6
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
7
|
+
from homeassistant.util.hass_dict import HassKey as HassKey
|
|
8
|
+
|
|
9
|
+
_PLATFORMS: list[Platform]
|
|
10
|
+
UPTIME_KUMA_KEY: HassKey[UptimeKumaSoftwareUpdateCoordinator]
|
|
11
|
+
|
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, entry: UptimeKumaConfigEntry) -> bool: ...
|
|
13
|
+
async def async_remove_config_entry_device(hass: HomeAssistant, config_entry: UptimeKumaConfigEntry, device_entry: dr.DeviceEntry) -> bool: ...
|
|
14
|
+
async def async_unload_entry(hass: HomeAssistant, entry: UptimeKumaConfigEntry) -> bool: ...
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
|
2
|
+
from _typeshed import Incomplete
|
|
3
|
+
from collections.abc import Mapping
|
|
4
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
|
5
|
+
from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_URL as CONF_URL, CONF_VERIFY_SSL as CONF_VERIFY_SSL
|
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
7
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
8
|
+
from homeassistant.helpers.selector import TextSelector as TextSelector, TextSelectorConfig as TextSelectorConfig, TextSelectorType as TextSelectorType
|
|
9
|
+
from homeassistant.helpers.service_info.hassio import HassioServiceInfo as HassioServiceInfo
|
|
10
|
+
from typing import Any
|
|
11
|
+
from yarl import URL
|
|
12
|
+
|
|
13
|
+
_LOGGER: Incomplete
|
|
14
|
+
STEP_USER_DATA_SCHEMA: Incomplete
|
|
15
|
+
STEP_REAUTH_DATA_SCHEMA: Incomplete
|
|
16
|
+
|
|
17
|
+
async def validate_connection(hass: HomeAssistant, url: URL | str, verify_ssl: bool, api_key: str | None) -> dict[str, str]: ...
|
|
18
|
+
|
|
19
|
+
class UptimeKumaConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
20
|
+
_hassio_discovery: HassioServiceInfo | None
|
|
21
|
+
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
22
|
+
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
|
23
|
+
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
24
|
+
async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
25
|
+
async def async_step_hassio(self, discovery_info: HassioServiceInfo) -> ConfigFlowResult: ...
|
|
26
|
+
async def async_step_hassio_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
|
2
|
+
from _typeshed import Incomplete
|
|
3
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
4
|
+
from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_URL as CONF_URL, CONF_VERIFY_SSL as CONF_VERIFY_SSL
|
|
5
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
6
|
+
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
|
|
7
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
8
|
+
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
|
9
|
+
from pythonkuma import UptimeKumaMonitor, UptimeKumaVersion as UptimeKumaVersion
|
|
10
|
+
from pythonkuma.update import LatestRelease, UpdateChecker as UpdateChecker
|
|
11
|
+
|
|
12
|
+
_LOGGER: Incomplete
|
|
13
|
+
SCAN_INTERVAL: Incomplete
|
|
14
|
+
SCAN_INTERVAL_UPDATES: Incomplete
|
|
15
|
+
type UptimeKumaConfigEntry = ConfigEntry[UptimeKumaDataUpdateCoordinator]
|
|
16
|
+
|
|
17
|
+
class UptimeKumaDataUpdateCoordinator(DataUpdateCoordinator[dict[str | int, UptimeKumaMonitor]]):
|
|
18
|
+
config_entry: UptimeKumaConfigEntry
|
|
19
|
+
api: Incomplete
|
|
20
|
+
version: UptimeKumaVersion | None
|
|
21
|
+
def __init__(self, hass: HomeAssistant, config_entry: UptimeKumaConfigEntry) -> None: ...
|
|
22
|
+
async def _async_update_data(self) -> dict[str | int, UptimeKumaMonitor]: ...
|
|
23
|
+
|
|
24
|
+
@callback
|
|
25
|
+
def async_migrate_entities_unique_ids(hass: HomeAssistant, coordinator: UptimeKumaDataUpdateCoordinator, metrics: dict[str | int, UptimeKumaMonitor]) -> None: ...
|
|
26
|
+
|
|
27
|
+
class UptimeKumaSoftwareUpdateCoordinator(DataUpdateCoordinator[LatestRelease]):
|
|
28
|
+
update_checker: Incomplete
|
|
29
|
+
def __init__(self, hass: HomeAssistant, update_checker: UpdateChecker) -> None: ...
|
|
30
|
+
async def _async_update_data(self) -> LatestRelease: ...
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
from .coordinator import UptimeKumaConfigEntry as UptimeKumaConfigEntry
|
|
2
|
+
from _typeshed import Incomplete
|
|
3
|
+
from homeassistant.components.diagnostics import async_redact_data as async_redact_data
|
|
4
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
5
|
+
from typing import Any
|
|
6
|
+
|
|
7
|
+
TO_REDACT: Incomplete
|
|
8
|
+
|
|
9
|
+
async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: UptimeKumaConfigEntry) -> dict[str, Any]: ...
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
from .const import DOMAIN as DOMAIN, HAS_CERT as HAS_CERT, HAS_HOST as HAS_HOST, HAS_PORT as HAS_PORT, HAS_URL as HAS_URL
|
|
2
|
+
from .coordinator import UptimeKumaConfigEntry as UptimeKumaConfigEntry, UptimeKumaDataUpdateCoordinator as UptimeKumaDataUpdateCoordinator
|
|
3
|
+
from _typeshed import Incomplete
|
|
4
|
+
from collections.abc import Callable as Callable
|
|
5
|
+
from dataclasses import dataclass
|
|
6
|
+
from enum import StrEnum
|
|
7
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
|
|
8
|
+
from homeassistant.const import CONF_URL as CONF_URL, EntityCategory as EntityCategory, UnitOfTime as UnitOfTime
|
|
9
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
10
|
+
from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
|
|
11
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
12
|
+
from homeassistant.helpers.typing import StateType as StateType
|
|
13
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
|
14
|
+
from pythonkuma import MonitorType, UptimeKumaMonitor as UptimeKumaMonitor
|
|
15
|
+
|
|
16
|
+
PARALLEL_UPDATES: int
|
|
17
|
+
|
|
18
|
+
class UptimeKumaSensor(StrEnum):
|
|
19
|
+
CERT_DAYS_REMAINING = 'cert_days_remaining'
|
|
20
|
+
RESPONSE_TIME = 'response_time'
|
|
21
|
+
STATUS = 'status'
|
|
22
|
+
TYPE = 'type'
|
|
23
|
+
URL = 'url'
|
|
24
|
+
HOSTNAME = 'hostname'
|
|
25
|
+
PORT = 'port'
|
|
26
|
+
|
|
27
|
+
@dataclass(kw_only=True, frozen=True)
|
|
28
|
+
class UptimeKumaSensorEntityDescription(SensorEntityDescription):
|
|
29
|
+
value_fn: Callable[[UptimeKumaMonitor], StateType]
|
|
30
|
+
create_entity: Callable[[MonitorType], bool]
|
|
31
|
+
|
|
32
|
+
SENSOR_DESCRIPTIONS: tuple[UptimeKumaSensorEntityDescription, ...]
|
|
33
|
+
|
|
34
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: UptimeKumaConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
35
|
+
|
|
36
|
+
class UptimeKumaSensorEntity(CoordinatorEntity[UptimeKumaDataUpdateCoordinator], SensorEntity):
|
|
37
|
+
entity_description: UptimeKumaSensorEntityDescription
|
|
38
|
+
_attr_has_entity_name: bool
|
|
39
|
+
monitor: Incomplete
|
|
40
|
+
_attr_unique_id: Incomplete
|
|
41
|
+
_attr_device_info: Incomplete
|
|
42
|
+
def __init__(self, coordinator: UptimeKumaDataUpdateCoordinator, monitor: str | int, entity_description: UptimeKumaSensorEntityDescription) -> None: ...
|
|
43
|
+
@property
|
|
44
|
+
def native_value(self) -> StateType: ...
|
|
45
|
+
@property
|
|
46
|
+
def available(self) -> bool: ...
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
from . import UPTIME_KUMA_KEY as UPTIME_KUMA_KEY
|
|
2
|
+
from .const import DOMAIN as DOMAIN
|
|
3
|
+
from .coordinator import UptimeKumaConfigEntry as UptimeKumaConfigEntry, UptimeKumaDataUpdateCoordinator as UptimeKumaDataUpdateCoordinator, UptimeKumaSoftwareUpdateCoordinator as UptimeKumaSoftwareUpdateCoordinator
|
|
4
|
+
from _typeshed import Incomplete
|
|
5
|
+
from enum import StrEnum
|
|
6
|
+
from homeassistant.components.update import UpdateEntity as UpdateEntity, UpdateEntityDescription as UpdateEntityDescription, UpdateEntityFeature as UpdateEntityFeature
|
|
7
|
+
from homeassistant.const import CONF_URL as CONF_URL
|
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
9
|
+
from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
|
|
10
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
11
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
|
12
|
+
|
|
13
|
+
PARALLEL_UPDATES: int
|
|
14
|
+
|
|
15
|
+
class UptimeKumaUpdate(StrEnum):
|
|
16
|
+
UPDATE = 'update'
|
|
17
|
+
|
|
18
|
+
async def async_setup_entry(hass: HomeAssistant, entry: UptimeKumaConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
19
|
+
|
|
20
|
+
class UptimeKumaUpdateEntity(CoordinatorEntity[UptimeKumaDataUpdateCoordinator], UpdateEntity):
|
|
21
|
+
entity_description: Incomplete
|
|
22
|
+
_attr_supported_features: Incomplete
|
|
23
|
+
_attr_has_entity_name: bool
|
|
24
|
+
update_checker: Incomplete
|
|
25
|
+
_attr_device_info: Incomplete
|
|
26
|
+
_attr_unique_id: Incomplete
|
|
27
|
+
def __init__(self, coordinator: UptimeKumaDataUpdateCoordinator, update_coordinator: UptimeKumaSoftwareUpdateCoordinator) -> None: ...
|
|
28
|
+
@property
|
|
29
|
+
def installed_version(self) -> str | None: ...
|
|
30
|
+
@property
|
|
31
|
+
def title(self) -> str | None: ...
|
|
32
|
+
@property
|
|
33
|
+
def release_url(self) -> str | None: ...
|
|
34
|
+
@property
|
|
35
|
+
def latest_version(self) -> str | None: ...
|
|
36
|
+
async def async_release_notes(self) -> str | None: ...
|
|
37
|
+
async def async_added_to_hass(self) -> None: ...
|
|
38
|
+
@property
|
|
39
|
+
def available(self) -> bool: ...
|
|
@@ -93,12 +93,19 @@ class StateVacuumEntity(Entity, cached_properties=STATE_VACUUM_CACHED_PROPERTIES
|
|
|
93
93
|
_attr_activity: VacuumActivity | None
|
|
94
94
|
_attr_supported_features: VacuumEntityFeature
|
|
95
95
|
__vacuum_legacy_state: bool
|
|
96
|
+
__vacuum_legacy_battery_level: bool
|
|
97
|
+
__vacuum_legacy_battery_icon: bool
|
|
98
|
+
__vacuum_legacy_battery_feature: bool
|
|
96
99
|
def __init_subclass__(cls, **kwargs: Any) -> None: ...
|
|
97
100
|
def __setattr__(self, name: str, value: Any) -> None: ...
|
|
98
101
|
@callback
|
|
99
102
|
def add_to_platform_start(self, hass: HomeAssistant, platform: EntityPlatform, parallel_updates: asyncio.Semaphore | None) -> None: ...
|
|
100
103
|
@callback
|
|
101
104
|
def _report_deprecated_activity_handling(self) -> None: ...
|
|
105
|
+
@callback
|
|
106
|
+
def _report_deprecated_battery_properties(self, property: str) -> None: ...
|
|
107
|
+
@callback
|
|
108
|
+
def _report_deprecated_battery_feature(self) -> None: ...
|
|
102
109
|
@cached_property
|
|
103
110
|
def battery_level(self) -> int | None: ...
|
|
104
111
|
@property
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import asyncio
|
|
2
2
|
from .const import DOMAIN as DOMAIN
|
|
3
|
-
from .services import
|
|
3
|
+
from .services import async_setup_services as async_setup_services
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from dataclasses import dataclass
|
|
6
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
from . import VelbusConfigEntry as VelbusConfigEntry
|
|
2
|
-
from .const import CONF_CONFIG_ENTRY as CONF_CONFIG_ENTRY,
|
|
2
|
+
from .const import CONF_CONFIG_ENTRY as CONF_CONFIG_ENTRY, CONF_MEMO_TEXT as CONF_MEMO_TEXT, DOMAIN as DOMAIN, SERVICE_CLEAR_CACHE as SERVICE_CLEAR_CACHE, SERVICE_SCAN as SERVICE_SCAN, SERVICE_SET_MEMO_TEXT as SERVICE_SET_MEMO_TEXT, SERVICE_SYNC as SERVICE_SYNC
|
|
3
3
|
from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
|
|
4
4
|
from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
|
|
5
|
-
from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
|
|
5
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
|
|
6
6
|
from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
|
|
7
7
|
from homeassistant.helpers import selector as selector
|
|
8
|
-
from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
|
|
9
8
|
from homeassistant.helpers.storage import STORAGE_DIR as STORAGE_DIR
|
|
10
9
|
|
|
11
|
-
|
|
10
|
+
@callback
|
|
11
|
+
def async_setup_services(hass: HomeAssistant) -> None: ...
|
|
@@ -8,4 +8,3 @@ PLATFORMS: Incomplete
|
|
|
8
8
|
|
|
9
9
|
async def async_setup_entry(hass: HomeAssistant, entry: VodafoneConfigEntry) -> bool: ...
|
|
10
10
|
async def async_unload_entry(hass: HomeAssistant, entry: VodafoneConfigEntry) -> bool: ...
|
|
11
|
-
async def update_listener(hass: HomeAssistant, entry: VodafoneConfigEntry) -> None: ...
|
|
@@ -5,7 +5,7 @@ from .utils import async_client_session as async_client_session
|
|
|
5
5
|
from _typeshed import Incomplete
|
|
6
6
|
from collections.abc import Mapping
|
|
7
7
|
from homeassistant.components.device_tracker import CONF_CONSIDER_HOME as CONF_CONSIDER_HOME, DEFAULT_CONSIDER_HOME as DEFAULT_CONSIDER_HOME
|
|
8
|
-
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
|
8
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithReload as OptionsFlowWithReload
|
|
9
9
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
|
10
10
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
11
11
|
from typing import Any
|
|
@@ -26,5 +26,5 @@ class VodafoneStationConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
26
26
|
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
27
27
|
async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
28
28
|
|
|
29
|
-
class VodafoneStationOptionsFlowHandler(
|
|
29
|
+
class VodafoneStationOptionsFlowHandler(OptionsFlowWithReload):
|
|
30
30
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from .api import VolvoAuth as VolvoAuth
|
|
2
|
+
from .const import CONF_VIN as CONF_VIN, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
|
|
3
|
+
from .coordinator import VolvoConfigEntry as VolvoConfigEntry, VolvoMediumIntervalCoordinator as VolvoMediumIntervalCoordinator, VolvoSlowIntervalCoordinator as VolvoSlowIntervalCoordinator, VolvoVerySlowIntervalCoordinator as VolvoVerySlowIntervalCoordinator
|
|
4
|
+
from homeassistant.const import CONF_API_KEY as CONF_API_KEY
|
|
5
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
6
|
+
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady
|
|
7
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
8
|
+
from homeassistant.helpers.config_entry_oauth2_flow import OAuth2Session as OAuth2Session, async_get_config_entry_implementation as async_get_config_entry_implementation
|
|
9
|
+
from volvocarsapi.api import VolvoCarsApi
|
|
10
|
+
from volvocarsapi.models import VolvoCarsVehicle as VolvoCarsVehicle
|
|
11
|
+
|
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, entry: VolvoConfigEntry) -> bool: ...
|
|
13
|
+
async def async_unload_entry(hass: HomeAssistant, entry: VolvoConfigEntry) -> bool: ...
|
|
14
|
+
async def _async_auth_and_create_api(hass: HomeAssistant, entry: VolvoConfigEntry) -> VolvoCarsApi: ...
|
|
15
|
+
async def _async_load_vehicle(api: VolvoCarsApi) -> VolvoCarsVehicle: ...
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
from _typeshed import Incomplete
|
|
2
|
+
from aiohttp import ClientSession as ClientSession
|
|
3
|
+
from homeassistant.helpers.config_entry_oauth2_flow import OAuth2Session as OAuth2Session
|
|
4
|
+
from volvocarsapi.auth import AccessTokenManager
|
|
5
|
+
|
|
6
|
+
class VolvoAuth(AccessTokenManager):
|
|
7
|
+
_oauth_session: Incomplete
|
|
8
|
+
def __init__(self, websession: ClientSession, oauth_session: OAuth2Session) -> None: ...
|
|
9
|
+
async def async_get_access_token(self) -> str: ...
|
|
10
|
+
|
|
11
|
+
class ConfigFlowVolvoAuth(AccessTokenManager):
|
|
12
|
+
_token: Incomplete
|
|
13
|
+
def __init__(self, websession: ClientSession, token: str) -> None: ...
|
|
14
|
+
async def async_get_access_token(self) -> str: ...
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
from homeassistant.components.application_credentials import ClientCredential as ClientCredential
|
|
2
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
3
|
+
from homeassistant.helpers.config_entry_oauth2_flow import LocalOAuth2ImplementationWithPkce as LocalOAuth2ImplementationWithPkce
|
|
4
|
+
|
|
5
|
+
async def async_get_auth_implementation(hass: HomeAssistant, auth_domain: str, credential: ClientCredential) -> VolvoOAuth2Implementation: ...
|
|
6
|
+
|
|
7
|
+
class VolvoOAuth2Implementation(LocalOAuth2ImplementationWithPkce):
|
|
8
|
+
@property
|
|
9
|
+
def extra_authorize_data(self) -> dict: ...
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import logging
|
|
2
|
+
from .api import ConfigFlowVolvoAuth as ConfigFlowVolvoAuth
|
|
3
|
+
from .const import CONF_VIN as CONF_VIN, DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER
|
|
4
|
+
from _typeshed import Incomplete
|
|
5
|
+
from collections.abc import Mapping
|
|
6
|
+
from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
|
|
7
|
+
from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_API_KEY as CONF_API_KEY, CONF_NAME as CONF_NAME, CONF_TOKEN as CONF_TOKEN
|
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
9
|
+
from homeassistant.helpers import aiohttp_client as aiohttp_client
|
|
10
|
+
from homeassistant.helpers.config_entry_oauth2_flow import AbstractOAuth2FlowHandler as AbstractOAuth2FlowHandler
|
|
11
|
+
from homeassistant.helpers.selector import SelectOptionDict as SelectOptionDict, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, TextSelector as TextSelector, TextSelectorConfig as TextSelectorConfig, TextSelectorType as TextSelectorType
|
|
12
|
+
from typing import Any
|
|
13
|
+
from volvocarsapi.api import VolvoCarsApi
|
|
14
|
+
from volvocarsapi.models import VolvoCarsVehicle as VolvoCarsVehicle
|
|
15
|
+
|
|
16
|
+
_LOGGER: Incomplete
|
|
17
|
+
|
|
18
|
+
def _create_volvo_cars_api(hass: HomeAssistant, access_token: str, api_key: str) -> VolvoCarsApi: ...
|
|
19
|
+
|
|
20
|
+
class VolvoOAuth2FlowHandler(AbstractOAuth2FlowHandler, domain=DOMAIN):
|
|
21
|
+
DOMAIN = DOMAIN
|
|
22
|
+
_vehicles: list[VolvoCarsVehicle]
|
|
23
|
+
_config_data: dict
|
|
24
|
+
def __init__(self) -> None: ...
|
|
25
|
+
@property
|
|
26
|
+
def logger(self) -> logging.Logger: ...
|
|
27
|
+
async def async_oauth_create_entry(self, data: dict) -> ConfigFlowResult: ...
|
|
28
|
+
async def async_step_reauth(self, _: Mapping[str, Any]) -> ConfigFlowResult: ...
|
|
29
|
+
async def async_step_reconfigure(self, _: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
30
|
+
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
31
|
+
async def async_step_api_key(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
32
|
+
async def async_step_vin(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
33
|
+
async def _async_create_or_update(self) -> ConfigFlowResult: ...
|
|
34
|
+
async def _async_load_vehicles(self, api: VolvoCarsApi) -> None: ...
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import abc
|
|
2
|
+
from .const import DATA_BATTERY_CAPACITY as DATA_BATTERY_CAPACITY, DOMAIN as DOMAIN
|
|
3
|
+
from _typeshed import Incomplete
|
|
4
|
+
from abc import abstractmethod
|
|
5
|
+
from collections.abc import Callable as Callable, Coroutine
|
|
6
|
+
from datetime import timedelta
|
|
7
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
9
|
+
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
|
|
10
|
+
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
|
11
|
+
from typing import Any
|
|
12
|
+
from volvocarsapi.api import VolvoCarsApi as VolvoCarsApi
|
|
13
|
+
from volvocarsapi.models import VolvoCarsApiBaseModel, VolvoCarsVehicle as VolvoCarsVehicle
|
|
14
|
+
|
|
15
|
+
VERY_SLOW_INTERVAL: int
|
|
16
|
+
SLOW_INTERVAL: int
|
|
17
|
+
MEDIUM_INTERVAL: int
|
|
18
|
+
_LOGGER: Incomplete
|
|
19
|
+
type VolvoConfigEntry = ConfigEntry[tuple[VolvoBaseCoordinator, ...]]
|
|
20
|
+
type CoordinatorData = dict[str, VolvoCarsApiBaseModel | None]
|
|
21
|
+
|
|
22
|
+
class VolvoBaseCoordinator(DataUpdateCoordinator[CoordinatorData], metaclass=abc.ABCMeta):
|
|
23
|
+
config_entry: VolvoConfigEntry
|
|
24
|
+
api: Incomplete
|
|
25
|
+
vehicle: Incomplete
|
|
26
|
+
_api_calls: list[Callable[[], Coroutine[Any, Any, Any]]]
|
|
27
|
+
def __init__(self, hass: HomeAssistant, entry: VolvoConfigEntry, api: VolvoCarsApi, vehicle: VolvoCarsVehicle, update_interval: timedelta, name: str) -> None: ...
|
|
28
|
+
update_interval: Incomplete
|
|
29
|
+
async def _async_setup(self) -> None: ...
|
|
30
|
+
async def _async_update_data(self) -> CoordinatorData: ...
|
|
31
|
+
def get_api_field(self, api_field: str | None) -> VolvoCarsApiBaseModel | None: ...
|
|
32
|
+
@abstractmethod
|
|
33
|
+
async def _async_determine_api_calls(self) -> list[Callable[[], Coroutine[Any, Any, Any]]]: ...
|
|
34
|
+
|
|
35
|
+
class VolvoVerySlowIntervalCoordinator(VolvoBaseCoordinator):
|
|
36
|
+
def __init__(self, hass: HomeAssistant, entry: VolvoConfigEntry, api: VolvoCarsApi, vehicle: VolvoCarsVehicle) -> None: ...
|
|
37
|
+
async def _async_determine_api_calls(self) -> list[Callable[[], Coroutine[Any, Any, Any]]]: ...
|
|
38
|
+
async def _async_update_data(self) -> CoordinatorData: ...
|
|
39
|
+
|
|
40
|
+
class VolvoSlowIntervalCoordinator(VolvoBaseCoordinator):
|
|
41
|
+
def __init__(self, hass: HomeAssistant, entry: VolvoConfigEntry, api: VolvoCarsApi, vehicle: VolvoCarsVehicle) -> None: ...
|
|
42
|
+
async def _async_determine_api_calls(self) -> list[Callable[[], Coroutine[Any, Any, Any]]]: ...
|
|
43
|
+
|
|
44
|
+
class VolvoMediumIntervalCoordinator(VolvoBaseCoordinator):
|
|
45
|
+
def __init__(self, hass: HomeAssistant, entry: VolvoConfigEntry, api: VolvoCarsApi, vehicle: VolvoCarsVehicle) -> None: ...
|
|
46
|
+
async def _async_determine_api_calls(self) -> list[Callable[[], Coroutine[Any, Any, Any]]]: ...
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import abc
|
|
2
|
+
from .const import CONF_VIN as CONF_VIN, DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER
|
|
3
|
+
from .coordinator import VolvoBaseCoordinator as VolvoBaseCoordinator
|
|
4
|
+
from _typeshed import Incomplete
|
|
5
|
+
from abc import abstractmethod
|
|
6
|
+
from dataclasses import dataclass
|
|
7
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass
|
|
8
|
+
from homeassistant.core import callback as callback
|
|
9
|
+
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
|
10
|
+
from homeassistant.helpers.entity import EntityDescription as EntityDescription
|
|
11
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
|
12
|
+
from volvocarsapi.models import VolvoCarsApiBaseModel as VolvoCarsApiBaseModel
|
|
13
|
+
|
|
14
|
+
def get_unique_id(vin: str, key: str) -> str: ...
|
|
15
|
+
def value_to_translation_key(value: str) -> str: ...
|
|
16
|
+
|
|
17
|
+
@dataclass(frozen=True, kw_only=True)
|
|
18
|
+
class VolvoEntityDescription(EntityDescription):
|
|
19
|
+
api_field: str
|
|
20
|
+
|
|
21
|
+
class VolvoEntity(CoordinatorEntity[VolvoBaseCoordinator], metaclass=abc.ABCMeta):
|
|
22
|
+
_attr_has_entity_name: bool
|
|
23
|
+
entity_description: VolvoEntityDescription
|
|
24
|
+
_attr_translation_key: Incomplete
|
|
25
|
+
_attr_unique_id: Incomplete
|
|
26
|
+
_attr_device_info: Incomplete
|
|
27
|
+
def __init__(self, coordinator: VolvoBaseCoordinator, description: VolvoEntityDescription) -> None: ...
|
|
28
|
+
@callback
|
|
29
|
+
def _handle_coordinator_update(self) -> None: ...
|
|
30
|
+
@property
|
|
31
|
+
def available(self) -> bool: ...
|
|
32
|
+
@abstractmethod
|
|
33
|
+
def _update_state(self, api_field: VolvoCarsApiBaseModel | None) -> None: ...
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
from .const import DATA_BATTERY_CAPACITY as DATA_BATTERY_CAPACITY
|
|
2
|
+
from .coordinator import VolvoBaseCoordinator as VolvoBaseCoordinator, VolvoConfigEntry as VolvoConfigEntry
|
|
3
|
+
from .entity import VolvoEntity as VolvoEntity, VolvoEntityDescription as VolvoEntityDescription, value_to_translation_key as value_to_translation_key
|
|
4
|
+
from _typeshed import Incomplete
|
|
5
|
+
from collections.abc import Callable as Callable
|
|
6
|
+
from dataclasses import dataclass
|
|
7
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
|
8
|
+
from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfEnergy as UnitOfEnergy, UnitOfEnergyDistance as UnitOfEnergyDistance, UnitOfLength as UnitOfLength, UnitOfPower as UnitOfPower, UnitOfSpeed as UnitOfSpeed, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume
|
|
9
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
10
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
11
|
+
from typing import Any
|
|
12
|
+
from volvocarsapi.models import VolvoCarsApiBaseModel as VolvoCarsApiBaseModel, VolvoCarsValue
|
|
13
|
+
|
|
14
|
+
PARALLEL_UPDATES: int
|
|
15
|
+
_LOGGER: Incomplete
|
|
16
|
+
|
|
17
|
+
@dataclass(frozen=True, kw_only=True)
|
|
18
|
+
class VolvoSensorDescription(VolvoEntityDescription, SensorEntityDescription):
|
|
19
|
+
source_fields: list[str] | None = ...
|
|
20
|
+
value_fn: Callable[[VolvoCarsValue], Any] | None = ...
|
|
21
|
+
|
|
22
|
+
def _availability_status(field: VolvoCarsValue) -> str: ...
|
|
23
|
+
def _calculate_time_to_service(field: VolvoCarsValue) -> int: ...
|
|
24
|
+
def _charging_power_value(field: VolvoCarsValue) -> int: ...
|
|
25
|
+
def _charging_power_status_value(field: VolvoCarsValue) -> str | None: ...
|
|
26
|
+
|
|
27
|
+
_CHARGING_POWER_STATUS_OPTIONS: Incomplete
|
|
28
|
+
_DESCRIPTIONS: tuple[VolvoSensorDescription, ...]
|
|
29
|
+
|
|
30
|
+
async def async_setup_entry(hass: HomeAssistant, entry: VolvoConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
31
|
+
|
|
32
|
+
class VolvoSensor(VolvoEntity, SensorEntity):
|
|
33
|
+
entity_description: VolvoSensorDescription
|
|
34
|
+
_attr_native_value: Incomplete
|
|
35
|
+
def _update_state(self, api_field: VolvoCarsApiBaseModel | None) -> None: ...
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
from .const import
|
|
2
|
-
from .coordinator import InvalidAuth as InvalidAuth, WallboxCoordinator as WallboxCoordinator, async_validate_input as async_validate_input
|
|
1
|
+
from .const import UPDATE_INTERVAL as UPDATE_INTERVAL
|
|
2
|
+
from .coordinator import InvalidAuth as InvalidAuth, WallboxConfigEntry as WallboxConfigEntry, WallboxCoordinator as WallboxCoordinator, async_validate_input as async_validate_input
|
|
3
3
|
from _typeshed import Incomplete
|
|
4
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
5
4
|
from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, Platform as Platform
|
|
6
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
7
6
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
|
|
8
7
|
|
|
9
8
|
PLATFORMS: Incomplete
|
|
10
9
|
|
|
11
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
|
12
|
-
async def async_unload_entry(hass: HomeAssistant, entry:
|
|
10
|
+
async def async_setup_entry(hass: HomeAssistant, entry: WallboxConfigEntry) -> bool: ...
|
|
11
|
+
async def async_unload_entry(hass: HomeAssistant, entry: WallboxConfigEntry) -> bool: ...
|
|
@@ -10,16 +10,17 @@ from wallbox import Wallbox as Wallbox
|
|
|
10
10
|
|
|
11
11
|
_LOGGER: Incomplete
|
|
12
12
|
CHARGER_STATUS: dict[int, ChargerStatus]
|
|
13
|
+
type WallboxConfigEntry = ConfigEntry[WallboxCoordinator]
|
|
13
14
|
|
|
14
15
|
def _require_authentication[_WallboxCoordinatorT: WallboxCoordinator, **_P](func: Callable[Concatenate[_WallboxCoordinatorT, _P], Any]) -> Callable[Concatenate[_WallboxCoordinatorT, _P], Any]: ...
|
|
15
16
|
def _validate(wallbox: Wallbox) -> None: ...
|
|
16
17
|
async def async_validate_input(hass: HomeAssistant, wallbox: Wallbox) -> None: ...
|
|
17
18
|
|
|
18
19
|
class WallboxCoordinator(DataUpdateCoordinator[dict[str, Any]]):
|
|
19
|
-
config_entry:
|
|
20
|
+
config_entry: WallboxConfigEntry
|
|
20
21
|
_station: Incomplete
|
|
21
22
|
_wallbox: Incomplete
|
|
22
|
-
def __init__(self, hass: HomeAssistant, config_entry:
|
|
23
|
+
def __init__(self, hass: HomeAssistant, config_entry: WallboxConfigEntry, wallbox: Wallbox) -> None: ...
|
|
23
24
|
def authenticate(self) -> None: ...
|
|
24
25
|
@_require_authentication
|
|
25
26
|
def _get_data(self) -> dict[str, Any]: ...
|
|
@@ -44,3 +45,8 @@ class WallboxCoordinator(DataUpdateCoordinator[dict[str, Any]]):
|
|
|
44
45
|
async def async_set_eco_smart(self, option: str) -> None: ...
|
|
45
46
|
|
|
46
47
|
class InvalidAuth(HomeAssistantError): ...
|
|
48
|
+
|
|
49
|
+
class InsufficientRights(HomeAssistantError):
|
|
50
|
+
hass: Incomplete
|
|
51
|
+
def __init__(self, *args: object, translation_domain: str | None = None, translation_key: str | None = None, translation_placeholders: dict[str, str] | None = None, hass: HomeAssistant) -> None: ...
|
|
52
|
+
def _create_insufficient_rights_issue(self) -> None: ...
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
from .const import CHARGER_DATA_KEY as CHARGER_DATA_KEY, CHARGER_LOCKED_UNLOCKED_KEY as CHARGER_LOCKED_UNLOCKED_KEY, CHARGER_SERIAL_NUMBER_KEY as CHARGER_SERIAL_NUMBER_KEY
|
|
2
|
-
from .coordinator import WallboxCoordinator as WallboxCoordinator
|
|
1
|
+
from .const import CHARGER_DATA_KEY as CHARGER_DATA_KEY, CHARGER_LOCKED_UNLOCKED_KEY as CHARGER_LOCKED_UNLOCKED_KEY, CHARGER_SERIAL_NUMBER_KEY as CHARGER_SERIAL_NUMBER_KEY
|
|
2
|
+
from .coordinator import WallboxConfigEntry as WallboxConfigEntry, WallboxCoordinator as WallboxCoordinator
|
|
3
3
|
from .entity import WallboxEntity as WallboxEntity
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from homeassistant.components.lock import LockEntity as LockEntity, LockEntityDescription as LockEntityDescription
|
|
6
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
7
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
8
7
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
9
8
|
from typing import Any
|
|
10
9
|
|
|
11
10
|
LOCK_TYPES: dict[str, LockEntityDescription]
|
|
12
11
|
|
|
13
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, entry: WallboxConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
13
|
+
|
|
14
|
+
PARALLEL_UPDATES: int
|
|
14
15
|
|
|
15
16
|
class WallboxLock(WallboxEntity, LockEntity):
|
|
16
17
|
entity_description: Incomplete
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
from .const import BIDIRECTIONAL_MODEL_PREFIXES as BIDIRECTIONAL_MODEL_PREFIXES, CHARGER_DATA_KEY as CHARGER_DATA_KEY, CHARGER_ENERGY_PRICE_KEY as CHARGER_ENERGY_PRICE_KEY, CHARGER_MAX_AVAILABLE_POWER_KEY as CHARGER_MAX_AVAILABLE_POWER_KEY, CHARGER_MAX_CHARGING_CURRENT_KEY as CHARGER_MAX_CHARGING_CURRENT_KEY, CHARGER_MAX_ICP_CURRENT_KEY as CHARGER_MAX_ICP_CURRENT_KEY, CHARGER_PART_NUMBER_KEY as CHARGER_PART_NUMBER_KEY, CHARGER_SERIAL_NUMBER_KEY as CHARGER_SERIAL_NUMBER_KEY
|
|
2
|
-
from .coordinator import WallboxCoordinator as WallboxCoordinator
|
|
1
|
+
from .const import BIDIRECTIONAL_MODEL_PREFIXES as BIDIRECTIONAL_MODEL_PREFIXES, CHARGER_DATA_KEY as CHARGER_DATA_KEY, CHARGER_ENERGY_PRICE_KEY as CHARGER_ENERGY_PRICE_KEY, CHARGER_MAX_AVAILABLE_POWER_KEY as CHARGER_MAX_AVAILABLE_POWER_KEY, CHARGER_MAX_CHARGING_CURRENT_KEY as CHARGER_MAX_CHARGING_CURRENT_KEY, CHARGER_MAX_ICP_CURRENT_KEY as CHARGER_MAX_ICP_CURRENT_KEY, CHARGER_PART_NUMBER_KEY as CHARGER_PART_NUMBER_KEY, CHARGER_SERIAL_NUMBER_KEY as CHARGER_SERIAL_NUMBER_KEY
|
|
2
|
+
from .coordinator import WallboxConfigEntry as WallboxConfigEntry, WallboxCoordinator as WallboxCoordinator
|
|
3
3
|
from .entity import WallboxEntity as WallboxEntity
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from collections.abc import Awaitable, Callable as Callable
|
|
6
6
|
from dataclasses import dataclass
|
|
7
7
|
from homeassistant.components.number import NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
|
|
8
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
9
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
10
9
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
11
10
|
|
|
@@ -19,13 +18,15 @@ class WallboxNumberEntityDescription(NumberEntityDescription):
|
|
|
19
18
|
|
|
20
19
|
NUMBER_TYPES: dict[str, WallboxNumberEntityDescription]
|
|
21
20
|
|
|
22
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
|
21
|
+
async def async_setup_entry(hass: HomeAssistant, entry: WallboxConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
22
|
+
|
|
23
|
+
PARALLEL_UPDATES: int
|
|
23
24
|
|
|
24
25
|
class WallboxNumber(WallboxEntity, NumberEntity):
|
|
25
26
|
entity_description: WallboxNumberEntityDescription
|
|
26
27
|
_coordinator: Incomplete
|
|
27
28
|
_attr_unique_id: Incomplete
|
|
28
|
-
def __init__(self, coordinator: WallboxCoordinator, entry:
|
|
29
|
+
def __init__(self, coordinator: WallboxCoordinator, entry: WallboxConfigEntry, description: WallboxNumberEntityDescription) -> None: ...
|
|
29
30
|
@property
|
|
30
31
|
def native_max_value(self) -> float: ...
|
|
31
32
|
@property
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
from .const import CHARGER_DATA_KEY as CHARGER_DATA_KEY, CHARGER_ECO_SMART_KEY as CHARGER_ECO_SMART_KEY, CHARGER_FEATURES_KEY as CHARGER_FEATURES_KEY, CHARGER_PLAN_KEY as CHARGER_PLAN_KEY, CHARGER_POWER_BOOST_KEY as CHARGER_POWER_BOOST_KEY, CHARGER_SERIAL_NUMBER_KEY as CHARGER_SERIAL_NUMBER_KEY, DOMAIN as DOMAIN, EcoSmartMode as EcoSmartMode
|
|
2
|
-
from .coordinator import WallboxCoordinator as WallboxCoordinator
|
|
2
|
+
from .coordinator import WallboxConfigEntry as WallboxConfigEntry, WallboxCoordinator as WallboxCoordinator
|
|
3
3
|
from .entity import WallboxEntity as WallboxEntity
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from collections.abc import Awaitable, Callable as Callable
|
|
6
6
|
from dataclasses import dataclass
|
|
7
7
|
from homeassistant.components.select import SelectEntity as SelectEntity, SelectEntityDescription as SelectEntityDescription
|
|
8
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
9
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
10
9
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
11
10
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
@@ -18,7 +17,9 @@ class WallboxSelectEntityDescription(SelectEntityDescription):
|
|
|
18
17
|
|
|
19
18
|
SELECT_TYPES: dict[str, WallboxSelectEntityDescription]
|
|
20
19
|
|
|
21
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
|
20
|
+
async def async_setup_entry(hass: HomeAssistant, entry: WallboxConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
21
|
+
|
|
22
|
+
PARALLEL_UPDATES: int
|
|
22
23
|
|
|
23
24
|
class WallboxSelect(WallboxEntity, SelectEntity):
|
|
24
25
|
entity_description: WallboxSelectEntityDescription
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
from .const import CHARGER_ADDED_DISCHARGED_ENERGY_KEY as CHARGER_ADDED_DISCHARGED_ENERGY_KEY, CHARGER_ADDED_ENERGY_KEY as CHARGER_ADDED_ENERGY_KEY, CHARGER_ADDED_GREEN_ENERGY_KEY as CHARGER_ADDED_GREEN_ENERGY_KEY, CHARGER_ADDED_GRID_ENERGY_KEY as CHARGER_ADDED_GRID_ENERGY_KEY, CHARGER_ADDED_RANGE_KEY as CHARGER_ADDED_RANGE_KEY, CHARGER_CHARGING_POWER_KEY as CHARGER_CHARGING_POWER_KEY, CHARGER_CHARGING_SPEED_KEY as CHARGER_CHARGING_SPEED_KEY, CHARGER_COST_KEY as CHARGER_COST_KEY, CHARGER_CURRENCY_KEY as CHARGER_CURRENCY_KEY, CHARGER_CURRENT_MODE_KEY as CHARGER_CURRENT_MODE_KEY, CHARGER_DATA_KEY as CHARGER_DATA_KEY, CHARGER_DEPOT_PRICE_KEY as CHARGER_DEPOT_PRICE_KEY, CHARGER_ENERGY_PRICE_KEY as CHARGER_ENERGY_PRICE_KEY, CHARGER_MAX_AVAILABLE_POWER_KEY as CHARGER_MAX_AVAILABLE_POWER_KEY, CHARGER_MAX_CHARGING_CURRENT_KEY as CHARGER_MAX_CHARGING_CURRENT_KEY, CHARGER_MAX_ICP_CURRENT_KEY as CHARGER_MAX_ICP_CURRENT_KEY, CHARGER_SERIAL_NUMBER_KEY as CHARGER_SERIAL_NUMBER_KEY, CHARGER_STATE_OF_CHARGE_KEY as CHARGER_STATE_OF_CHARGE_KEY, CHARGER_STATUS_DESCRIPTION_KEY as CHARGER_STATUS_DESCRIPTION_KEY
|
|
2
|
-
from .coordinator import WallboxCoordinator as WallboxCoordinator
|
|
1
|
+
from .const import CHARGER_ADDED_DISCHARGED_ENERGY_KEY as CHARGER_ADDED_DISCHARGED_ENERGY_KEY, CHARGER_ADDED_ENERGY_KEY as CHARGER_ADDED_ENERGY_KEY, CHARGER_ADDED_GREEN_ENERGY_KEY as CHARGER_ADDED_GREEN_ENERGY_KEY, CHARGER_ADDED_GRID_ENERGY_KEY as CHARGER_ADDED_GRID_ENERGY_KEY, CHARGER_ADDED_RANGE_KEY as CHARGER_ADDED_RANGE_KEY, CHARGER_CHARGING_POWER_KEY as CHARGER_CHARGING_POWER_KEY, CHARGER_CHARGING_SPEED_KEY as CHARGER_CHARGING_SPEED_KEY, CHARGER_COST_KEY as CHARGER_COST_KEY, CHARGER_CURRENCY_KEY as CHARGER_CURRENCY_KEY, CHARGER_CURRENT_MODE_KEY as CHARGER_CURRENT_MODE_KEY, CHARGER_DATA_KEY as CHARGER_DATA_KEY, CHARGER_DEPOT_PRICE_KEY as CHARGER_DEPOT_PRICE_KEY, CHARGER_ENERGY_PRICE_KEY as CHARGER_ENERGY_PRICE_KEY, CHARGER_MAX_AVAILABLE_POWER_KEY as CHARGER_MAX_AVAILABLE_POWER_KEY, CHARGER_MAX_CHARGING_CURRENT_KEY as CHARGER_MAX_CHARGING_CURRENT_KEY, CHARGER_MAX_ICP_CURRENT_KEY as CHARGER_MAX_ICP_CURRENT_KEY, CHARGER_SERIAL_NUMBER_KEY as CHARGER_SERIAL_NUMBER_KEY, CHARGER_STATE_OF_CHARGE_KEY as CHARGER_STATE_OF_CHARGE_KEY, CHARGER_STATUS_DESCRIPTION_KEY as CHARGER_STATUS_DESCRIPTION_KEY
|
|
2
|
+
from .coordinator import WallboxConfigEntry as WallboxConfigEntry, WallboxCoordinator as WallboxCoordinator
|
|
3
3
|
from .entity import WallboxEntity as WallboxEntity
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from dataclasses import dataclass
|
|
6
6
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
8
7
|
from homeassistant.const import PERCENTAGE as PERCENTAGE, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfEnergy as UnitOfEnergy, UnitOfLength as UnitOfLength, UnitOfPower as UnitOfPower
|
|
9
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
10
9
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
@@ -16,7 +15,9 @@ class WallboxSensorEntityDescription(SensorEntityDescription):
|
|
|
16
15
|
|
|
17
16
|
SENSOR_TYPES: dict[str, WallboxSensorEntityDescription]
|
|
18
17
|
|
|
19
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
|
18
|
+
async def async_setup_entry(hass: HomeAssistant, entry: WallboxConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
19
|
+
|
|
20
|
+
PARALLEL_UPDATES: int
|
|
20
21
|
|
|
21
22
|
class WallboxSensor(WallboxEntity, SensorEntity):
|
|
22
23
|
entity_description: WallboxSensorEntityDescription
|