homeassistant-stubs 2024.11.3__py3-none-any.whl → 2024.12.0b0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- homeassistant-stubs/__main__.pyi +1 -0
- homeassistant-stubs/auth/mfa_modules/totp.pyi +4 -4
- homeassistant-stubs/backup_restore.pyi +17 -0
- homeassistant-stubs/components/airnow/config_flow.pyi +3 -3
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +2 -2
- homeassistant-stubs/components/amberelectric/config_flow.pyi +1 -1
- homeassistant-stubs/components/amberelectric/coordinator.pyi +7 -7
- homeassistant-stubs/components/amberelectric/sensor.pyi +3 -4
- homeassistant-stubs/components/analytics_insights/config_flow.pyi +3 -3
- homeassistant-stubs/components/androidtv/config_flow.pyi +2 -2
- homeassistant-stubs/components/androidtv_remote/config_flow.pyi +2 -2
- homeassistant-stubs/components/assist_pipeline/audio_enhancer.pyi +2 -3
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +4 -2
- homeassistant-stubs/components/assist_pipeline/vad.pyi +7 -4
- homeassistant-stubs/components/axis/config_flow.pyi +2 -2
- homeassistant-stubs/components/backup/http.pyi +7 -3
- homeassistant-stubs/components/backup/manager.pyi +8 -0
- homeassistant-stubs/components/backup/websocket.pyi +1 -0
- homeassistant-stubs/components/bang_olufsen/const.pyi +1 -6
- homeassistant-stubs/components/bang_olufsen/diagnostics.pyi +6 -0
- homeassistant-stubs/components/bang_olufsen/media_player.pyi +11 -5
- homeassistant-stubs/components/bang_olufsen/websocket.pyi +2 -2
- homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +2 -2
- homeassistant-stubs/components/brother/sensor.pyi +0 -1
- homeassistant-stubs/components/cambridge_audio/__init__.pyi +1 -0
- homeassistant-stubs/components/cambridge_audio/config_flow.pyi +1 -0
- homeassistant-stubs/components/cambridge_audio/media_player.pyi +1 -0
- homeassistant-stubs/components/cambridge_audio/select.pyi +3 -1
- homeassistant-stubs/components/cambridge_audio/switch.pyi +3 -1
- homeassistant-stubs/components/camera/__init__.pyi +5 -3
- homeassistant-stubs/components/camera/webrtc.pyi +10 -6
- homeassistant-stubs/components/canary/config_flow.pyi +0 -2
- homeassistant-stubs/components/climate/__init__.pyi +10 -3
- homeassistant-stubs/components/climate/const.pyi +6 -0
- homeassistant-stubs/components/climate/reproduce_state.pyi +1 -1
- homeassistant-stubs/components/climate/significant_change.pyi +1 -1
- homeassistant-stubs/components/cloud/prefs.pyi +1 -1
- homeassistant-stubs/components/crownstone/config_flow.pyi +1 -2
- homeassistant-stubs/components/deconz/config_flow.pyi +1 -5
- homeassistant-stubs/components/demo/climate.pyi +8 -1
- homeassistant-stubs/components/demo/config_flow.pyi +0 -1
- homeassistant-stubs/components/discovergy/config_flow.pyi +2 -5
- homeassistant-stubs/components/dlna_dmr/config_flow.pyi +0 -2
- homeassistant-stubs/components/dnsip/config_flow.pyi +2 -2
- homeassistant-stubs/components/doorbird/config_flow.pyi +0 -2
- homeassistant-stubs/components/dsmr/config_flow.pyi +0 -2
- homeassistant-stubs/components/ecovacs/sensor.pyi +1 -1
- homeassistant-stubs/components/elevenlabs/config_flow.pyi +2 -2
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +2 -2
- homeassistant-stubs/components/eq3btsmart/__init__.pyi +7 -6
- homeassistant-stubs/components/eq3btsmart/binary_sensor.pyi +26 -0
- homeassistant-stubs/components/eq3btsmart/climate.pyi +4 -15
- homeassistant-stubs/components/eq3btsmart/const.pyi +14 -0
- homeassistant-stubs/components/eq3btsmart/entity.pyi +17 -3
- homeassistant-stubs/components/eq3btsmart/models.pyi +1 -3
- homeassistant-stubs/components/eq3btsmart/number.pyi +33 -0
- homeassistant-stubs/components/eq3btsmart/sensor.pyi +28 -0
- homeassistant-stubs/components/eq3btsmart/switch.pyi +30 -0
- homeassistant-stubs/components/esphome/assist_satellite.pyi +1 -0
- homeassistant-stubs/components/esphome/config_flow.pyi +0 -2
- homeassistant-stubs/components/esphome/entry_data.pyi +8 -1
- homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +1 -0
- homeassistant-stubs/components/esphome/media_player.pyi +2 -1
- homeassistant-stubs/components/esphome/select.pyi +17 -1
- homeassistant-stubs/components/fan/__init__.pyi +1 -1
- homeassistant-stubs/components/feedreader/config_flow.pyi +2 -2
- homeassistant-stubs/components/filesize/config_flow.pyi +2 -5
- homeassistant-stubs/components/fitbit/config_flow.pyi +0 -1
- homeassistant-stubs/components/fitbit/sensor.pyi +12 -15
- homeassistant-stubs/components/flux_led/config_flow.pyi +1 -3
- homeassistant-stubs/components/forecast_solar/config_flow.pyi +0 -2
- homeassistant-stubs/components/fritz/config_flow.pyi +4 -4
- homeassistant-stubs/components/fritzbox/config_flow.pyi +1 -1
- homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +0 -2
- homeassistant-stubs/components/fully_kiosk/__init__.pyi +3 -2
- homeassistant-stubs/components/fully_kiosk/binary_sensor.pyi +2 -3
- homeassistant-stubs/components/fully_kiosk/button.pyi +2 -3
- homeassistant-stubs/components/fully_kiosk/camera.pyi +2 -3
- homeassistant-stubs/components/fully_kiosk/diagnostics.pyi +2 -3
- homeassistant-stubs/components/fully_kiosk/image.pyi +2 -3
- homeassistant-stubs/components/fully_kiosk/media_player.pyi +3 -3
- homeassistant-stubs/components/fully_kiosk/notify.pyi +2 -3
- homeassistant-stubs/components/fully_kiosk/number.pyi +2 -3
- homeassistant-stubs/components/fully_kiosk/sensor.pyi +2 -3
- homeassistant-stubs/components/fully_kiosk/switch.pyi +2 -3
- homeassistant-stubs/components/fyta/__init__.pyi +1 -0
- homeassistant-stubs/components/glances/__init__.pyi +0 -2
- homeassistant-stubs/components/go2rtc/__init__.pyi +2 -2
- homeassistant-stubs/components/google/config_flow.pyi +0 -2
- homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +0 -2
- homeassistant-stubs/components/google_cloud/config_flow.pyi +2 -2
- homeassistant-stubs/components/google_cloud/helpers.pyi +1 -1
- homeassistant-stubs/components/here_travel_time/config_flow.pyi +1 -2
- homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +4 -3
- homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +0 -1
- homeassistant-stubs/components/homekit/config_flow.pyi +1 -2
- homeassistant-stubs/components/homewizard/button.pyi +2 -0
- homeassistant-stubs/components/homewizard/config_flow.pyi +5 -1
- homeassistant-stubs/components/homewizard/const.pyi +1 -1
- homeassistant-stubs/components/homewizard/coordinator.pyi +3 -3
- homeassistant-stubs/components/homewizard/number.pyi +2 -0
- homeassistant-stubs/components/homewizard/sensor.pyi +1 -1
- homeassistant-stubs/components/homewizard/switch.pyi +4 -2
- homeassistant-stubs/components/huawei_lte/config_flow.pyi +0 -2
- homeassistant-stubs/components/husqvarna_automower/api.pyi +6 -0
- homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +7 -0
- homeassistant-stubs/components/husqvarna_automower/button.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/config_flow.pyi +2 -1
- homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +2 -1
- homeassistant-stubs/components/husqvarna_automower/number.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/select.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/switch.pyi +1 -0
- homeassistant-stubs/components/hydrawise/sensor.pyi +2 -9
- homeassistant-stubs/components/hyperion/config_flow.pyi +0 -2
- homeassistant-stubs/components/ibeacon/config_flow.pyi +0 -3
- homeassistant-stubs/components/imap/config_flow.pyi +3 -3
- homeassistant-stubs/components/imap/sensor.pyi +1 -1
- homeassistant-stubs/components/intent/timers.pyi +6 -0
- homeassistant-stubs/components/islamic_prayer_times/config_flow.pyi +0 -3
- homeassistant-stubs/components/isy994/config_flow.pyi +0 -2
- homeassistant-stubs/components/jellyfin/config_flow.pyi +3 -3
- homeassistant-stubs/components/jewish_calendar/__init__.pyi +6 -17
- homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/jewish_calendar/config_flow.pyi +3 -4
- homeassistant-stubs/components/jewish_calendar/entity.pyi +15 -4
- homeassistant-stubs/components/jewish_calendar/sensor.pyi +3 -5
- homeassistant-stubs/components/knx/config_flow.pyi +0 -1
- homeassistant-stubs/components/knx/light.pyi +3 -3
- homeassistant-stubs/components/knx/telegrams.pyi +1 -0
- homeassistant-stubs/components/knx/websocket.pyi +1 -0
- homeassistant-stubs/components/kraken/config_flow.pyi +0 -3
- homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/button.pyi +7 -3
- homeassistant-stubs/components/lamarzocco/calendar.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +7 -5
- homeassistant-stubs/components/lamarzocco/coordinator.pyi +3 -3
- homeassistant-stubs/components/lamarzocco/diagnostics.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/entity.pyi +3 -2
- homeassistant-stubs/components/lamarzocco/number.pyi +5 -3
- homeassistant-stubs/components/lamarzocco/select.pyi +3 -2
- homeassistant-stubs/components/lamarzocco/sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/switch.pyi +4 -2
- homeassistant-stubs/components/lamarzocco/update.pyi +3 -1
- homeassistant-stubs/components/lcn/__init__.pyi +4 -4
- homeassistant-stubs/components/lcn/config_flow.pyi +0 -4
- homeassistant-stubs/components/lcn/helpers.pyi +2 -4
- homeassistant-stubs/components/lcn/schemas.pyi +2 -13
- homeassistant-stubs/components/lcn/services.pyi +2 -0
- homeassistant-stubs/components/lektrico/binary_sensor.pyi +27 -0
- homeassistant-stubs/components/linkplay/button.pyi +28 -0
- homeassistant-stubs/components/linkplay/diagnostics.pyi +5 -0
- homeassistant-stubs/components/linkplay/entity.pyi +16 -0
- homeassistant-stubs/components/linkplay/media_player.pyi +3 -8
- homeassistant-stubs/components/linkplay/utils.pyi +12 -0
- homeassistant-stubs/components/litejet/config_flow.pyi +0 -3
- homeassistant-stubs/components/media_extractor/__init__.pyi +1 -2
- homeassistant-stubs/components/media_extractor/config_flow.pyi +0 -1
- homeassistant-stubs/components/mikrotik/config_flow.pyi +0 -3
- homeassistant-stubs/components/mjpeg/config_flow.pyi +0 -3
- homeassistant-stubs/components/mold_indicator/sensor.pyi +3 -5
- homeassistant-stubs/components/monzo/coordinator.pyi +1 -1
- homeassistant-stubs/components/mopeka/config_flow.pyi +0 -2
- homeassistant-stubs/components/mqtt/__init__.pyi +1 -0
- 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/climate.pyi +1 -0
- homeassistant-stubs/components/mqtt/config_flow.pyi +1 -3
- homeassistant-stubs/components/mqtt/cover.pyi +1 -0
- homeassistant-stubs/components/mqtt/device_tracker.pyi +1 -0
- homeassistant-stubs/components/mqtt/entity.pyi +1 -0
- homeassistant-stubs/components/mqtt/event.pyi +1 -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/lawn_mower.pyi +1 -0
- homeassistant-stubs/components/mqtt/light/__init__.pyi +2 -0
- homeassistant-stubs/components/mqtt/lock.pyi +1 -0
- homeassistant-stubs/components/mqtt/notify.pyi +1 -0
- homeassistant-stubs/components/mqtt/number.pyi +1 -0
- homeassistant-stubs/components/mqtt/scene.pyi +1 -0
- homeassistant-stubs/components/mqtt/select.pyi +1 -0
- homeassistant-stubs/components/mqtt/sensor.pyi +1 -0
- homeassistant-stubs/components/mqtt/siren.pyi +1 -0
- homeassistant-stubs/components/mqtt/subscription.pyi +1 -1
- homeassistant-stubs/components/mqtt/switch.pyi +1 -0
- homeassistant-stubs/components/mqtt/text.pyi +1 -0
- homeassistant-stubs/components/mqtt/update.pyi +1 -0
- homeassistant-stubs/components/mqtt/vacuum.pyi +1 -0
- homeassistant-stubs/components/mqtt/valve.pyi +1 -0
- homeassistant-stubs/components/mqtt/water_heater.pyi +1 -0
- homeassistant-stubs/components/music_assistant/__init__.pyi +27 -0
- homeassistant-stubs/components/music_assistant/config_flow.pyi +24 -0
- homeassistant-stubs/components/music_assistant/const.pyi +12 -0
- homeassistant-stubs/components/music_assistant/entity.pyi +24 -0
- homeassistant-stubs/components/music_assistant/media_browser.pyi +33 -0
- homeassistant-stubs/components/music_assistant/media_player.pyi +96 -0
- homeassistant-stubs/components/nasweb/__init__.pyi +19 -0
- homeassistant-stubs/components/nasweb/config_flow.pyi +27 -0
- homeassistant-stubs/components/nasweb/const.pyi +5 -0
- homeassistant-stubs/components/nasweb/coordinator.pyi +42 -0
- homeassistant-stubs/components/nasweb/nasweb_data.pyi +20 -0
- homeassistant-stubs/components/nasweb/switch.pyi +35 -0
- homeassistant-stubs/components/nest/camera.pyi +3 -5
- homeassistant-stubs/components/netatmo/config_flow.pyi +0 -1
- homeassistant-stubs/components/nightscout/sensor.pyi +4 -3
- homeassistant-stubs/components/nordpool/__init__.pyi +9 -0
- homeassistant-stubs/components/nordpool/config_flow.pyi +19 -0
- homeassistant-stubs/components/nordpool/const.pyi +9 -0
- homeassistant-stubs/components/nordpool/coordinator.pyi +20 -0
- homeassistant-stubs/components/nordpool/diagnostics.pyi +5 -0
- homeassistant-stubs/components/nordpool/entity.pyi +14 -0
- homeassistant-stubs/components/nordpool/sensor.pyi +69 -0
- homeassistant-stubs/components/number/const.pyi +3 -1
- homeassistant-stubs/components/nut/__init__.pyi +4 -1
- homeassistant-stubs/components/nut/config_flow.pyi +0 -2
- homeassistant-stubs/components/nut/sensor.pyi +1 -1
- homeassistant-stubs/components/onewire/config_flow.pyi +4 -2
- homeassistant-stubs/components/onkyo/config_flow.pyi +3 -2
- homeassistant-stubs/components/openai_conversation/config_flow.pyi +0 -1
- homeassistant-stubs/components/opensky/config_flow.pyi +3 -3
- homeassistant-stubs/components/p1_monitor/__init__.pyi +3 -3
- homeassistant-stubs/components/p1_monitor/diagnostics.pyi +1 -2
- homeassistant-stubs/components/p1_monitor/sensor.pyi +1 -1
- homeassistant-stubs/components/ping/__init__.pyi +2 -6
- homeassistant-stubs/components/ping/config_flow.pyi +0 -2
- homeassistant-stubs/components/plugwise/climate.pyi +1 -0
- homeassistant-stubs/components/plugwise/entity.pyi +2 -2
- homeassistant-stubs/components/plugwise/number.pyi +2 -2
- homeassistant-stubs/components/plugwise/select.pyi +2 -1
- homeassistant-stubs/components/proximity/config_flow.pyi +0 -3
- homeassistant-stubs/components/pure_energie/__init__.pyi +4 -5
- homeassistant-stubs/components/pure_energie/diagnostics.pyi +2 -4
- homeassistant-stubs/components/pure_energie/sensor.pyi +3 -3
- homeassistant-stubs/components/purpleair/config_flow.pyi +1 -2
- homeassistant-stubs/components/rainmachine/config_flow.pyi +0 -3
- homeassistant-stubs/components/recollect_waste/config_flow.pyi +1 -3
- homeassistant-stubs/components/recorder/pool.pyi +1 -1
- homeassistant-stubs/components/recorder/statistics.pyi +1 -1
- homeassistant-stubs/components/recorder/websocket_api.pyi +1 -1
- homeassistant-stubs/components/renault/config_flow.pyi +4 -5
- homeassistant-stubs/components/renault/services.pyi +1 -0
- homeassistant-stubs/components/reolink/__init__.pyi +28 -0
- homeassistant-stubs/components/reolink/binary_sensor.pyi +34 -0
- homeassistant-stubs/components/reolink/button.pyi +48 -0
- homeassistant-stubs/components/reolink/camera.pyi +28 -0
- homeassistant-stubs/components/reolink/config_flow.pyi +35 -0
- homeassistant-stubs/components/reolink/const.pyi +2 -0
- homeassistant-stubs/components/reolink/diagnostics.pyi +5 -0
- homeassistant-stubs/components/reolink/entity.pyi +69 -0
- homeassistant-stubs/components/reolink/exceptions.pyi +7 -0
- homeassistant-stubs/components/reolink/host.pyi +82 -0
- homeassistant-stubs/components/reolink/light.pyi +55 -0
- homeassistant-stubs/components/reolink/media_source.pyi +27 -0
- homeassistant-stubs/components/reolink/number.pyi +69 -0
- homeassistant-stubs/components/reolink/select.pyi +54 -0
- homeassistant-stubs/components/reolink/sensor.pyi +55 -0
- homeassistant-stubs/components/reolink/services.pyi +12 -0
- homeassistant-stubs/components/reolink/siren.pyi +26 -0
- homeassistant-stubs/components/reolink/switch.pyi +65 -0
- homeassistant-stubs/components/reolink/update.pyi +71 -0
- homeassistant-stubs/components/reolink/util.pyi +18 -0
- homeassistant-stubs/components/rfxtrx/config_flow.pyi +2 -3
- homeassistant-stubs/components/ring/__init__.pyi +0 -1
- homeassistant-stubs/components/ring/camera.pyi +22 -6
- homeassistant-stubs/components/rituals_perfume_genie/select.pyi +1 -1
- homeassistant-stubs/components/roborock/config_flow.pyi +5 -3
- homeassistant-stubs/components/roborock/sensor.pyi +1 -1
- homeassistant-stubs/components/roku/config_flow.pyi +3 -3
- homeassistant-stubs/components/romy/sensor.pyi +1 -1
- homeassistant-stubs/components/rtsp_to_webrtc/__init__.pyi +1 -0
- homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +0 -2
- homeassistant-stubs/components/sensor/__init__.pyi +1 -0
- homeassistant-stubs/components/sensor/const.pyi +4 -2
- homeassistant-stubs/components/sensor/device_condition.pyi +2 -0
- homeassistant-stubs/components/sensor/device_trigger.pyi +2 -0
- homeassistant-stubs/components/shelly/config_flow.pyi +0 -2
- homeassistant-stubs/components/shelly/update.pyi +4 -1
- homeassistant-stubs/components/simplisafe/config_flow.pyi +0 -2
- homeassistant-stubs/components/smlight/config_flow.pyi +1 -1
- homeassistant-stubs/components/solarlog/coordinator.pyi +1 -0
- homeassistant-stubs/components/sonarr/config_flow.pyi +0 -2
- homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +1 -2
- homeassistant-stubs/components/sql/config_flow.pyi +2 -2
- homeassistant-stubs/components/statistics/sensor.pyi +2 -4
- homeassistant-stubs/components/stookwijzer/__init__.pyi +15 -0
- homeassistant-stubs/components/stookwijzer/config_flow.pyi +10 -0
- homeassistant-stubs/components/stookwijzer/const.pyi +5 -0
- homeassistant-stubs/components/stookwijzer/coordinator.pyi +15 -0
- homeassistant-stubs/components/stookwijzer/diagnostics.pyi +5 -0
- homeassistant-stubs/components/stookwijzer/sensor.pyi +31 -0
- homeassistant-stubs/components/stream/const.pyi +3 -2
- homeassistant-stubs/components/stream/core.pyi +2 -2
- homeassistant-stubs/components/stream/worker.pyi +15 -13
- homeassistant-stubs/components/suez_water/__init__.pyi +3 -3
- homeassistant-stubs/components/suez_water/config_flow.pyi +2 -1
- homeassistant-stubs/components/suez_water/const.pyi +3 -0
- homeassistant-stubs/components/suez_water/coordinator.pyi +35 -0
- homeassistant-stubs/components/suez_water/sensor.pyi +23 -17
- homeassistant-stubs/components/switchbot_cloud/sensor.pyi +3 -1
- homeassistant-stubs/components/switcher_kis/button.pyi +1 -1
- homeassistant-stubs/components/switcher_kis/cover.pyi +1 -1
- homeassistant-stubs/components/switcher_kis/light.pyi +1 -1
- homeassistant-stubs/components/switcher_kis/sensor.pyi +2 -0
- homeassistant-stubs/components/synology_dsm/config_flow.pyi +0 -2
- homeassistant-stubs/components/tedee/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tedee/coordinator.pyi +2 -2
- homeassistant-stubs/components/tedee/entity.pyi +1 -1
- homeassistant-stubs/components/tedee/lock.pyi +3 -1
- homeassistant-stubs/components/tedee/sensor.pyi +1 -1
- homeassistant-stubs/components/thethingsnetwork/__init__.pyi +1 -4
- homeassistant-stubs/components/threshold/binary_sensor.pyi +4 -0
- homeassistant-stubs/components/tibber/__init__.pyi +1 -2
- homeassistant-stubs/components/tibber/notify.pyi +1 -10
- homeassistant-stubs/components/tod/binary_sensor.pyi +3 -3
- homeassistant-stubs/components/tolo/config_flow.pyi +1 -1
- homeassistant-stubs/components/tplink/__init__.pyi +1 -1
- homeassistant-stubs/components/tplink/config_flow.pyi +6 -3
- homeassistant-stubs/components/tplink_omada/__init__.pyi +2 -2
- homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +1 -1
- homeassistant-stubs/components/trafikverket_camera/coordinator.pyi +2 -3
- homeassistant-stubs/components/trafikverket_train/__init__.pyi +3 -0
- homeassistant-stubs/components/trafikverket_train/config_flow.pyi +4 -3
- homeassistant-stubs/components/trafikverket_train/util.pyi +1 -2
- homeassistant-stubs/components/transmission/config_flow.pyi +0 -2
- homeassistant-stubs/components/tts/__init__.pyi +3 -1
- homeassistant-stubs/components/unifi/config_flow.pyi +2 -3
- homeassistant-stubs/components/unifiprotect/__init__.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/config_flow.pyi +0 -2
- homeassistant-stubs/components/unifiprotect/const.pyi +5 -0
- homeassistant-stubs/components/unifiprotect/event.pyi +17 -4
- homeassistant-stubs/components/unifiprotect/views.pyi +7 -1
- homeassistant-stubs/components/upcloud/config_flow.pyi +0 -2
- homeassistant-stubs/components/watttime/config_flow.pyi +1 -3
- homeassistant-stubs/components/webostv/config_flow.pyi +0 -2
- homeassistant-stubs/components/websocket_api/http.pyi +2 -1
- homeassistant-stubs/components/wemo/config_flow.pyi +0 -3
- homeassistant-stubs/components/wled/config_flow.pyi +2 -2
- homeassistant-stubs/components/workday/config_flow.pyi +2 -2
- homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +5 -3
- homeassistant-stubs/components/yalexs_ble/config_flow.pyi +0 -2
- homeassistant-stubs/components/youtube/config_flow.pyi +2 -2
- homeassistant-stubs/components/zeroconf/usage.pyi +1 -1
- homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
- homeassistant-stubs/components/zwave_js/api.pyi +9 -1
- homeassistant-stubs/components/zwave_js/config_flow.pyi +1 -2
- homeassistant-stubs/components/zwave_js/const.pyi +1 -0
- homeassistant-stubs/config_entries.pyi +15 -7
- homeassistant-stubs/const.pyi +26 -1
- homeassistant-stubs/core_config.pyi +1 -1
- homeassistant-stubs/data_entry_flow.pyi +3 -3
- homeassistant-stubs/helpers/device_registry.pyi +0 -1
- homeassistant-stubs/helpers/entity_platform.pyi +1 -0
- homeassistant-stubs/helpers/frame.pyi +12 -3
- homeassistant-stubs/helpers/intent.pyi +1 -0
- homeassistant-stubs/helpers/llm.pyi +2 -3
- homeassistant-stubs/helpers/restore_state.pyi +0 -3
- homeassistant-stubs/helpers/schema_config_entry_flow.pyi +5 -2
- homeassistant-stubs/helpers/trigger_template_entity.pyi +1 -1
- homeassistant-stubs/helpers/update_coordinator.pyi +3 -3
- homeassistant-stubs/loader.pyi +1 -0
- homeassistant-stubs/runner.pyi +0 -4
- homeassistant-stubs/util/json.pyi +3 -3
- homeassistant-stubs/util/unit_conversion.pyi +20 -1
- homeassistant-stubs/util/unit_system.pyi +7 -4
- homeassistant-stubs/util/yaml/loader.pyi +0 -19
- {homeassistant_stubs-2024.11.3.dist-info → homeassistant_stubs-2024.12.0b0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.11.3.dist-info → homeassistant_stubs-2024.12.0b0.dist-info}/RECORD +371 -315
- {homeassistant_stubs-2024.11.3.dist-info → homeassistant_stubs-2024.12.0b0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2024.11.3.dist-info → homeassistant_stubs-2024.12.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -39,6 +39,4 @@ class ShellyConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
39
39
|
def async_supports_options_flow(cls, config_entry: ConfigEntry) -> bool: ...
|
40
40
|
|
41
41
|
class OptionsFlowHandler(OptionsFlow):
|
42
|
-
config_entry: Incomplete
|
43
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
44
42
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -51,6 +51,7 @@ class RpcUpdateEntity(ShellyRpcAttributeEntity, UpdateEntity):
|
|
51
51
|
_attr_supported_features: Incomplete
|
52
52
|
entity_description: RpcUpdateDescription
|
53
53
|
_ota_in_progress: bool
|
54
|
+
_ota_progress_percentage: Incomplete
|
54
55
|
_attr_release_url: Incomplete
|
55
56
|
def __init__(self, coordinator: ShellyRpcCoordinator, key: str, attribute: str, description: RpcUpdateDescription) -> None: ...
|
56
57
|
async def async_added_to_hass(self) -> None: ...
|
@@ -60,7 +61,9 @@ class RpcUpdateEntity(ShellyRpcAttributeEntity, UpdateEntity):
|
|
60
61
|
@property
|
61
62
|
def latest_version(self) -> str | None: ...
|
62
63
|
@property
|
63
|
-
def in_progress(self) -> bool
|
64
|
+
def in_progress(self) -> bool: ...
|
65
|
+
@property
|
66
|
+
def update_percentage(self) -> int | None: ...
|
64
67
|
async def async_install(self, version: str | None, backup: bool, **kwargs: Any) -> None: ...
|
65
68
|
|
66
69
|
class RpcSleepingUpdateEntity(ShellySleepingRpcAttributeEntity, UpdateEntity, RestoreEntity):
|
@@ -27,6 +27,4 @@ class SimpliSafeFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
27
27
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
28
28
|
|
29
29
|
class SimpliSafeOptionsFlowHandler(OptionsFlow):
|
30
|
-
config_entry: Incomplete
|
31
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
32
30
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -12,8 +12,8 @@ STEP_USER_DATA_SCHEMA: Incomplete
|
|
12
12
|
STEP_AUTH_DATA_SCHEMA: Incomplete
|
13
13
|
|
14
14
|
class SmlightConfigFlow(ConfigFlow, domain=DOMAIN):
|
15
|
+
host: str
|
15
16
|
client: Incomplete
|
16
|
-
host: Incomplete
|
17
17
|
def __init__(self) -> None: ...
|
18
18
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
19
19
|
async def async_step_auth(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -5,6 +5,7 @@ from collections.abc import Callable as Callable
|
|
5
5
|
from homeassistant.const import CONF_HOST as CONF_HOST
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
7
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
8
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
8
9
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
9
10
|
from homeassistant.util import slugify as slugify
|
10
11
|
from solarlog_cli.solarlog_models import SolarlogData
|
@@ -22,6 +22,4 @@ class SonarrConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
22
22
|
def _get_user_data_schema(self) -> dict[vol.Marker, type]: ...
|
23
23
|
|
24
24
|
class SonarrOptionsFlowHandler(OptionsFlow):
|
25
|
-
config_entry: Incomplete
|
26
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
27
25
|
async def async_step_init(self, user_input: dict[str, int] | None = None) -> ConfigFlowResult: ...
|
@@ -12,7 +12,6 @@ class SpeedTestFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
12
12
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
13
13
|
|
14
14
|
class SpeedTestOptionsFlowHandler(OptionsFlow):
|
15
|
-
config_entry: Incomplete
|
16
15
|
_servers: Incomplete
|
17
|
-
def __init__(self
|
16
|
+
def __init__(self) -> None: ...
|
18
17
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -4,7 +4,7 @@ from .util import resolve_db_url as resolve_db_url
|
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from homeassistant.components.recorder import CONF_DB_URL as CONF_DB_URL, get_instance as get_instance
|
6
6
|
from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS, SensorDeviceClass as SensorDeviceClass, SensorStateClass as SensorStateClass
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
7
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
|
8
8
|
from homeassistant.const import CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_NAME as CONF_NAME, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE
|
9
9
|
from homeassistant.core import callback as callback
|
10
10
|
from homeassistant.helpers import selector as selector
|
@@ -25,5 +25,5 @@ class SQLConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
25
25
|
def async_get_options_flow(config_entry: ConfigEntry) -> SQLOptionsFlowHandler: ...
|
26
26
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
27
27
|
|
28
|
-
class SQLOptionsFlowHandler(
|
28
|
+
class SQLOptionsFlowHandler(OptionsFlow):
|
29
29
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -91,7 +91,7 @@ class StatisticsSensor(SensorEntity):
|
|
91
91
|
_attr_available: bool
|
92
92
|
states: Incomplete
|
93
93
|
ages: Incomplete
|
94
|
-
|
94
|
+
_attr_extra_state_attributes: Incomplete
|
95
95
|
_state_characteristic_fn: Incomplete
|
96
96
|
_update_listener: Incomplete
|
97
97
|
_preview_callback: Incomplete
|
@@ -110,8 +110,6 @@ class StatisticsSensor(SensorEntity):
|
|
110
110
|
def _calculate_unit_of_measurement(self, new_state: State) -> str | None: ...
|
111
111
|
def _calculate_device_class(self, new_state: State, unit: str | None) -> SensorDeviceClass | None: ...
|
112
112
|
def _calculate_state_class(self, new_state: State) -> SensorStateClass | None: ...
|
113
|
-
@property
|
114
|
-
def extra_state_attributes(self) -> dict[str, StateType] | None: ...
|
115
113
|
def _purge_old_states(self, max_age: timedelta) -> None: ...
|
116
114
|
def _async_next_to_purge_timestamp(self) -> datetime | None: ...
|
117
115
|
async def async_update(self) -> None: ...
|
@@ -120,7 +118,7 @@ class StatisticsSensor(SensorEntity):
|
|
120
118
|
def _async_scheduled_update(self, now: datetime) -> None: ...
|
121
119
|
def _fetch_states_from_database(self) -> list[State]: ...
|
122
120
|
async def _initialize_from_database(self) -> None: ...
|
123
|
-
def
|
121
|
+
def _update_extra_state_attributes(self) -> None: ...
|
124
122
|
_attr_native_value: Incomplete
|
125
123
|
def _update_value(self) -> None: ...
|
126
124
|
def _callable_characteristic_fn(self, characteristic: str) -> Callable[[], float | int | datetime | None]: ...
|
@@ -0,0 +1,15 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
|
2
|
+
from .coordinator import StookwijzerConfigEntry as StookwijzerConfigEntry, StookwijzerCoordinator as StookwijzerCoordinator
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LOCATION as CONF_LOCATION, CONF_LONGITUDE as CONF_LONGITUDE, Platform as Platform
|
5
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
6
|
+
from homeassistant.helpers import entity_registry as er
|
7
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
8
|
+
from typing import Any
|
9
|
+
|
10
|
+
PLATFORMS: Incomplete
|
11
|
+
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, entry: StookwijzerConfigEntry) -> bool: ...
|
13
|
+
async def async_unload_entry(hass: HomeAssistant, entry: StookwijzerConfigEntry) -> bool: ...
|
14
|
+
async def async_migrate_entry(hass: HomeAssistant, entry: StookwijzerConfigEntry) -> bool: ...
|
15
|
+
def async_migrate_entity_entry(entity_entry: er.RegistryEntry) -> dict[str, Any] | None: ...
|
@@ -0,0 +1,10 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
2
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
3
|
+
from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LOCATION as CONF_LOCATION, CONF_LONGITUDE as CONF_LONGITUDE
|
4
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
5
|
+
from homeassistant.helpers.selector import LocationSelector as LocationSelector
|
6
|
+
from typing import Any
|
7
|
+
|
8
|
+
class StookwijzerFlowHandler(ConfigFlow, domain=DOMAIN):
|
9
|
+
VERSION: int
|
10
|
+
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -0,0 +1,15 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
4
|
+
from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LONGITUDE as CONF_LONGITUDE
|
5
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
7
|
+
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
8
|
+
|
9
|
+
SCAN_INTERVAL: Incomplete
|
10
|
+
type StookwijzerConfigEntry = ConfigEntry[StookwijzerCoordinator]
|
11
|
+
|
12
|
+
class StookwijzerCoordinator(DataUpdateCoordinator[None]):
|
13
|
+
client: Incomplete
|
14
|
+
def __init__(self, hass: HomeAssistant, entry: StookwijzerConfigEntry) -> None: ...
|
15
|
+
async def _async_update_data(self) -> None: ...
|
@@ -0,0 +1,5 @@
|
|
1
|
+
from .coordinator import StookwijzerConfigEntry as StookwijzerConfigEntry
|
2
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
3
|
+
from typing import Any
|
4
|
+
|
5
|
+
async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: StookwijzerConfigEntry) -> dict[str, Any]: ...
|
@@ -0,0 +1,31 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import StookwijzerConfigEntry as StookwijzerConfigEntry, StookwijzerCoordinator as StookwijzerCoordinator
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
7
|
+
from homeassistant.const import UnitOfSpeed as UnitOfSpeed
|
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 AddEntitiesCallback as AddEntitiesCallback
|
11
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
12
|
+
from stookwijzer import Stookwijzer as Stookwijzer
|
13
|
+
|
14
|
+
@dataclass(kw_only=True, frozen=True)
|
15
|
+
class StookwijzerSensorDescription(SensorEntityDescription):
|
16
|
+
value_fn: Callable[[Stookwijzer], int | float | str | None]
|
17
|
+
def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., value_fn) -> None: ...
|
18
|
+
|
19
|
+
STOOKWIJZER_SENSORS: Incomplete
|
20
|
+
|
21
|
+
async def async_setup_entry(hass: HomeAssistant, entry: StookwijzerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
22
|
+
|
23
|
+
class StookwijzerSensor(CoordinatorEntity[StookwijzerCoordinator], SensorEntity):
|
24
|
+
entity_description: StookwijzerSensorDescription
|
25
|
+
_attr_attribution: str
|
26
|
+
_attr_has_entity_name: bool
|
27
|
+
_attr_unique_id: Incomplete
|
28
|
+
_attr_device_info: Incomplete
|
29
|
+
def __init__(self, description: StookwijzerSensorDescription, entry: StookwijzerConfigEntry) -> None: ...
|
30
|
+
@property
|
31
|
+
def native_value(self) -> int | float | str | None: ...
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
+
from typing import Final
|
2
3
|
|
3
4
|
DOMAIN: str
|
4
5
|
ATTR_ENDPOINTS: str
|
@@ -7,8 +8,8 @@ ATTR_STREAMS: str
|
|
7
8
|
HLS_PROVIDER: str
|
8
9
|
RECORDER_PROVIDER: str
|
9
10
|
OUTPUT_FORMATS: Incomplete
|
10
|
-
SEGMENT_CONTAINER_FORMAT: str
|
11
|
-
RECORDER_CONTAINER_FORMAT: str
|
11
|
+
SEGMENT_CONTAINER_FORMAT: Final[str]
|
12
|
+
RECORDER_CONTAINER_FORMAT: Final[str]
|
12
13
|
AUDIO_CODECS: Incomplete
|
13
14
|
FORMAT_CONTENT_TYPE: Incomplete
|
14
15
|
OUTPUT_IDLE_TIMEOUT: int
|
@@ -4,7 +4,7 @@ from . import Stream as Stream
|
|
4
4
|
from .const import ATTR_STREAMS as ATTR_STREAMS, DOMAIN as DOMAIN, SEGMENT_DURATION_ADJUSTER as SEGMENT_DURATION_ADJUSTER, TARGET_SEGMENT_DURATION_NON_LL_HLS as TARGET_SEGMENT_DURATION_NON_LL_HLS
|
5
5
|
from _typeshed import Incomplete
|
6
6
|
from aiohttp import web
|
7
|
-
from av import
|
7
|
+
from av import Packet as Packet, VideoCodecContext as VideoCodecContext
|
8
8
|
from collections import deque
|
9
9
|
from collections.abc import Callable as Callable, Coroutine, Iterable
|
10
10
|
from dataclasses import dataclass
|
@@ -132,7 +132,7 @@ class KeyFrameConverter:
|
|
132
132
|
_dynamic_stream_settings: Incomplete
|
133
133
|
def __init__(self, hass: HomeAssistant, stream_settings: StreamSettings, dynamic_stream_settings: DynamicStreamSettings) -> None: ...
|
134
134
|
def stash_keyframe_packet(self, packet: Packet) -> None: ...
|
135
|
-
def create_codec_context(self, codec_context:
|
135
|
+
def create_codec_context(self, codec_context: VideoCodecContext) -> None: ...
|
136
136
|
@staticmethod
|
137
137
|
def transform_image(image: np.ndarray, orientation: int) -> np.ndarray: ...
|
138
138
|
def _generate_image(self, width: int | None, height: int | None) -> None: ...
|
@@ -1,4 +1,6 @@
|
|
1
1
|
import av
|
2
|
+
import av.audio
|
3
|
+
import av.container
|
2
4
|
from . import redact_credentials as redact_credentials
|
3
5
|
from .const import AUDIO_CODECS as AUDIO_CODECS, HLS_PROVIDER as HLS_PROVIDER, MAX_MISSING_DTS as MAX_MISSING_DTS, MAX_TIMESTAMP_GAP as MAX_TIMESTAMP_GAP, PACKETS_TO_WAIT_FOR_AUDIO as PACKETS_TO_WAIT_FOR_AUDIO, SEGMENT_CONTAINER_FORMAT as SEGMENT_CONTAINER_FORMAT, SOURCE_TIMEOUT as SOURCE_TIMEOUT
|
4
6
|
from .core import KeyFrameConverter as KeyFrameConverter, Part as Part, STREAM_SETTINGS_NON_LL_HLS as STREAM_SETTINGS_NON_LL_HLS, Segment as Segment, StreamOutput as StreamOutput, StreamSettings as StreamSettings
|
@@ -17,7 +19,7 @@ NEGATIVE_INF: Incomplete
|
|
17
19
|
|
18
20
|
class StreamWorkerError(Exception): ...
|
19
21
|
|
20
|
-
def redact_av_error_string(err: av.
|
22
|
+
def redact_av_error_string(err: av.FFmpegError) -> str: ...
|
21
23
|
|
22
24
|
class StreamEndedError(StreamWorkerError): ...
|
23
25
|
|
@@ -40,25 +42,25 @@ class StreamState:
|
|
40
42
|
def diagnostics(self) -> Diagnostics: ...
|
41
43
|
|
42
44
|
class StreamMuxer:
|
45
|
+
_segment_start_dts: int
|
46
|
+
_memory_file: BytesIO
|
47
|
+
_av_output: av.container.OutputContainer
|
48
|
+
_output_video_stream: av.VideoStream
|
49
|
+
_output_audio_stream: av.audio.AudioStream | None
|
50
|
+
_segment: Segment | None
|
51
|
+
_memory_file_pos: int
|
52
|
+
_part_start_dts: float
|
43
53
|
_hass: Incomplete
|
44
|
-
_segment_start_dts: Incomplete
|
45
|
-
_memory_file: Incomplete
|
46
|
-
_av_output: Incomplete
|
47
54
|
_input_video_stream: Incomplete
|
48
55
|
_input_audio_stream: Incomplete
|
49
56
|
_audio_bsf: Incomplete
|
50
57
|
_audio_bsf_context: Incomplete
|
51
|
-
_output_video_stream: Incomplete
|
52
|
-
_output_audio_stream: Incomplete
|
53
|
-
_segment: Incomplete
|
54
|
-
_memory_file_pos: Incomplete
|
55
|
-
_part_start_dts: Incomplete
|
56
58
|
_part_has_keyframe: bool
|
57
59
|
_stream_settings: Incomplete
|
58
60
|
_stream_state: Incomplete
|
59
61
|
_start_time: Incomplete
|
60
|
-
def __init__(self, hass: HomeAssistant, video_stream: av.
|
61
|
-
def make_new_av(self, memory_file: BytesIO, sequence: int, input_vstream: av.
|
62
|
+
def __init__(self, hass: HomeAssistant, video_stream: av.VideoStream, audio_stream: av.audio.AudioStream | None, audio_bsf: str | None, stream_state: StreamState, stream_settings: StreamSettings) -> None: ...
|
63
|
+
def make_new_av(self, memory_file: BytesIO, sequence: int, input_vstream: av.VideoStream, input_astream: av.audio.AudioStream | None) -> tuple[av.container.OutputContainer, av.VideoStream, av.audio.AudioStream | None]: ...
|
62
64
|
def reset(self, video_dts: int) -> None: ...
|
63
65
|
def mux_packet(self, packet: av.Packet) -> None: ...
|
64
66
|
def create_segment(self) -> None: ...
|
@@ -66,7 +68,7 @@ class StreamMuxer:
|
|
66
68
|
def flush(self, packet: av.Packet, last_part: bool) -> None: ...
|
67
69
|
def close(self) -> None: ...
|
68
70
|
|
69
|
-
class PeekIterator(Iterator):
|
71
|
+
class PeekIterator(Iterator[av.Packet]):
|
70
72
|
_iterator: Incomplete
|
71
73
|
_buffer: Incomplete
|
72
74
|
_next: Incomplete
|
@@ -84,5 +86,5 @@ class TimestampValidator:
|
|
84
86
|
def is_valid(self, packet: av.Packet) -> bool: ...
|
85
87
|
|
86
88
|
def is_keyframe(packet: av.Packet) -> Any: ...
|
87
|
-
def get_audio_bitstream_filter(packets: Iterator[av.Packet], audio_stream: Any) ->
|
89
|
+
def get_audio_bitstream_filter(packets: Iterator[av.Packet], audio_stream: Any) -> str | None: ...
|
88
90
|
def stream_worker(source: str, pyav_options: dict[str, str], stream_settings: StreamSettings, stream_state: StreamState, keyframe_converter: KeyFrameConverter, quit_event: Event) -> None: ...
|
@@ -1,8 +1,8 @@
|
|
1
|
-
from .const import
|
1
|
+
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import SuezWaterCoordinator as SuezWaterCoordinator
|
2
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
3
|
-
from homeassistant.const import
|
4
|
+
from homeassistant.const import Platform as Platform
|
4
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
5
|
-
from homeassistant.exceptions import ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady
|
6
6
|
|
7
7
|
PLATFORMS: list[Platform]
|
8
8
|
|
@@ -8,7 +8,7 @@ from typing import Any
|
|
8
8
|
_LOGGER: Incomplete
|
9
9
|
STEP_USER_DATA_SCHEMA: Incomplete
|
10
10
|
|
11
|
-
def validate_input(data: dict[str, Any]) -> None: ...
|
11
|
+
async def validate_input(data: dict[str, Any]) -> None: ...
|
12
12
|
|
13
13
|
class SuezWaterConfigFlow(ConfigFlow, domain=DOMAIN):
|
14
14
|
VERSION: int
|
@@ -16,3 +16,4 @@ class SuezWaterConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
16
16
|
|
17
17
|
class CannotConnect(HomeAssistantError): ...
|
18
18
|
class InvalidAuth(HomeAssistantError): ...
|
19
|
+
class CounterNotFound(HomeAssistantError): ...
|
@@ -0,0 +1,35 @@
|
|
1
|
+
from .const import CONF_COUNTER_ID as CONF_COUNTER_ID, DATA_REFRESH_INTERVAL as DATA_REFRESH_INTERVAL, DOMAIN as DOMAIN
|
2
|
+
from collections.abc import Mapping
|
3
|
+
from dataclasses import dataclass
|
4
|
+
from datetime import date
|
5
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
|
+
from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, _LOGGER as _LOGGER
|
8
|
+
from homeassistant.exceptions import ConfigEntryError as ConfigEntryError
|
9
|
+
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
10
|
+
from pysuez import SuezClient
|
11
|
+
from typing import Any
|
12
|
+
|
13
|
+
@dataclass
|
14
|
+
class SuezWaterAggregatedAttributes:
|
15
|
+
this_month_consumption: dict[date, float]
|
16
|
+
previous_month_consumption: dict[date, float]
|
17
|
+
last_year_overall: dict[str, float]
|
18
|
+
this_year_overall: dict[str, float]
|
19
|
+
history: dict[date, float]
|
20
|
+
highest_monthly_consumption: float
|
21
|
+
def __init__(self, this_month_consumption, previous_month_consumption, last_year_overall, this_year_overall, history, highest_monthly_consumption) -> None: ...
|
22
|
+
|
23
|
+
@dataclass
|
24
|
+
class SuezWaterData:
|
25
|
+
aggregated_value: float
|
26
|
+
aggregated_attr: Mapping[str, Any]
|
27
|
+
price: float
|
28
|
+
def __init__(self, aggregated_value, aggregated_attr, price) -> None: ...
|
29
|
+
|
30
|
+
class SuezWaterCoordinator(DataUpdateCoordinator[SuezWaterData]):
|
31
|
+
_suez_client: SuezClient
|
32
|
+
config_entry: ConfigEntry
|
33
|
+
def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry) -> None: ...
|
34
|
+
async def _async_setup(self) -> None: ...
|
35
|
+
async def _async_update_data(self) -> SuezWaterData: ...
|
@@ -1,30 +1,36 @@
|
|
1
1
|
from .const import CONF_COUNTER_ID as CONF_COUNTER_ID, DOMAIN as DOMAIN
|
2
|
+
from .coordinator import SuezWaterCoordinator as SuezWaterCoordinator, SuezWaterData as SuezWaterData
|
2
3
|
from _typeshed import Incomplete
|
3
|
-
from
|
4
|
+
from collections.abc import Callable as Callable, Mapping
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
|
4
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
|
-
from homeassistant.const import UnitOfVolume as UnitOfVolume
|
8
|
+
from homeassistant.const import CURRENCY_EURO as CURRENCY_EURO, UnitOfVolume as UnitOfVolume
|
6
9
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
10
|
from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
|
8
11
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
-
from
|
12
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
13
|
+
from pysuez.const import ATTRIBUTION
|
14
|
+
from typing import Any
|
10
15
|
|
11
|
-
|
12
|
-
|
16
|
+
@dataclass(frozen=True, kw_only=True)
|
17
|
+
class SuezWaterSensorEntityDescription(SensorEntityDescription):
|
18
|
+
value_fn: Callable[[SuezWaterData], float | str | None]
|
19
|
+
attr_fn: Callable[[SuezWaterData], Mapping[str, Any] | None] = ...
|
20
|
+
def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., value_fn, attr_fn=...) -> None: ...
|
21
|
+
|
22
|
+
SENSORS: tuple[SuezWaterSensorEntityDescription, ...]
|
13
23
|
|
14
24
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
15
25
|
|
16
|
-
class
|
26
|
+
class SuezWaterSensor(CoordinatorEntity[SuezWaterCoordinator], SensorEntity):
|
17
27
|
_attr_has_entity_name: bool
|
18
|
-
|
19
|
-
|
20
|
-
_attr_device_class: Incomplete
|
21
|
-
client: Incomplete
|
22
|
-
_attr_extra_state_attributes: Incomplete
|
28
|
+
_attr_attribution = ATTRIBUTION
|
29
|
+
entity_description: SuezWaterSensorEntityDescription
|
23
30
|
_attr_unique_id: Incomplete
|
24
31
|
_attr_device_info: Incomplete
|
25
|
-
def __init__(self,
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
def
|
30
|
-
def update(self) -> None: ...
|
32
|
+
def __init__(self, coordinator: SuezWaterCoordinator, counter_id: int, entity_description: SuezWaterSensorEntityDescription) -> None: ...
|
33
|
+
@property
|
34
|
+
def native_value(self) -> float | str | None: ...
|
35
|
+
@property
|
36
|
+
def extra_state_attributes(self) -> Mapping[str, Any] | None: ...
|
@@ -5,7 +5,7 @@ from .entity import SwitchBotCloudEntity as SwitchBotCloudEntity
|
|
5
5
|
from _typeshed import Incomplete
|
6
6
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
7
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
|
-
from homeassistant.const import PERCENTAGE as PERCENTAGE, UnitOfTemperature as UnitOfTemperature
|
8
|
+
from homeassistant.const import CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, PERCENTAGE as PERCENTAGE, UnitOfTemperature as UnitOfTemperature
|
9
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
10
10
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
11
|
from switchbot_api import Device as Device, SwitchBotAPI as SwitchBotAPI
|
@@ -13,7 +13,9 @@ from switchbot_api import Device as Device, SwitchBotAPI as SwitchBotAPI
|
|
13
13
|
SENSOR_TYPE_TEMPERATURE: str
|
14
14
|
SENSOR_TYPE_HUMIDITY: str
|
15
15
|
SENSOR_TYPE_BATTERY: str
|
16
|
+
SENSOR_TYPE_CO2: str
|
16
17
|
METER_PLUS_SENSOR_DESCRIPTIONS: Incomplete
|
18
|
+
METER_PRO_CO2_SENSOR_DESCRIPTIONS: Incomplete
|
17
19
|
|
18
20
|
async def async_setup_entry(hass: HomeAssistant, config: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
19
21
|
|
@@ -4,7 +4,7 @@ from .coordinator import SwitcherDataUpdateCoordinator as SwitcherDataUpdateCoor
|
|
4
4
|
from .entity import SwitcherEntity as SwitcherEntity
|
5
5
|
from .utils import get_breeze_remote_manager as get_breeze_remote_manager
|
6
6
|
from _typeshed import Incomplete
|
7
|
-
from aioswitcher.api import SwitcherApi
|
7
|
+
from aioswitcher.api import SwitcherApi, SwitcherBaseResponse as SwitcherBaseResponse
|
8
8
|
from aioswitcher.api.remotes import SwitcherBreezeRemote
|
9
9
|
from collections.abc import Callable as Callable, Coroutine
|
10
10
|
from dataclasses import dataclass
|
@@ -39,7 +39,7 @@ class SwitcherSingleCoverEntity(SwitcherBaseCoverEntity):
|
|
39
39
|
_attr_unique_id: Incomplete
|
40
40
|
def __init__(self, coordinator: SwitcherDataUpdateCoordinator, cover_id: int) -> None: ...
|
41
41
|
|
42
|
-
class
|
42
|
+
class SwitcherMultiCoverEntity(SwitcherBaseCoverEntity):
|
43
43
|
_attr_translation_key: str
|
44
44
|
_cover_id: Incomplete
|
45
45
|
_attr_translation_placeholders: Incomplete
|
@@ -35,7 +35,7 @@ class SwitcherSingleLightEntity(SwitcherBaseLightEntity):
|
|
35
35
|
_attr_unique_id: Incomplete
|
36
36
|
def __init__(self, coordinator: SwitcherDataUpdateCoordinator, light_id: int) -> None: ...
|
37
37
|
|
38
|
-
class
|
38
|
+
class SwitcherMultiLightEntity(SwitcherBaseLightEntity):
|
39
39
|
_attr_translation_key: str
|
40
40
|
_light_id: Incomplete
|
41
41
|
control_result: Incomplete
|
@@ -12,8 +12,10 @@ from homeassistant.helpers.typing import StateType as StateType
|
|
12
12
|
|
13
13
|
POWER_SENSORS: list[SensorEntityDescription]
|
14
14
|
TIME_SENSORS: list[SensorEntityDescription]
|
15
|
+
TEMPERATURE_SENSORS: list[SensorEntityDescription]
|
15
16
|
POWER_PLUG_SENSORS = POWER_SENSORS
|
16
17
|
WATER_HEATER_SENSORS: Incomplete
|
18
|
+
THERMOSTAT_SENSORS = TEMPERATURE_SENSORS
|
17
19
|
|
18
20
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
19
21
|
|
@@ -44,8 +44,6 @@ class SynologyDSMFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
44
44
|
def _async_get_existing_entry(self, discovered_mac: str) -> ConfigEntry | None: ...
|
45
45
|
|
46
46
|
class SynologyDSMOptionsFlowHandler(OptionsFlow):
|
47
|
-
config_entry: Incomplete
|
48
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
49
47
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
50
48
|
|
51
49
|
async def _login_and_fetch_syno_info(api: SynologyDSM, otp_code: str | None) -> str: ...
|
@@ -1,12 +1,12 @@
|
|
1
1
|
from .coordinator import TedeeConfigEntry as TedeeConfigEntry
|
2
2
|
from .entity import TedeeDescriptionEntity as TedeeDescriptionEntity
|
3
|
+
from aiotedee import TedeeLock as TedeeLock
|
3
4
|
from collections.abc import Callable as Callable
|
4
5
|
from dataclasses import dataclass
|
5
6
|
from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
|
6
7
|
from homeassistant.const import EntityCategory as EntityCategory
|
7
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
-
from pytedee_async import TedeeLock as TedeeLock
|
10
10
|
|
11
11
|
@dataclass(frozen=True, kw_only=True)
|
12
12
|
class TedeeBinarySensorEntityDescription(BinarySensorEntityDescription):
|
@@ -1,5 +1,7 @@
|
|
1
1
|
from .const import CONF_LOCAL_ACCESS_TOKEN as CONF_LOCAL_ACCESS_TOKEN, DOMAIN as DOMAIN
|
2
2
|
from _typeshed import Incomplete
|
3
|
+
from aiotedee import TedeeLock
|
4
|
+
from aiotedee.bridge import TedeeBridge as TedeeBridge
|
3
5
|
from collections.abc import Awaitable, Callable as Callable
|
4
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
7
|
from homeassistant.const import CONF_HOST as CONF_HOST
|
@@ -7,8 +9,6 @@ from homeassistant.core import HomeAssistant as HomeAssistant
|
|
7
9
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
|
8
10
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
9
11
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
10
|
-
from pytedee_async import TedeeLock
|
11
|
-
from pytedee_async.bridge import TedeeBridge as TedeeBridge
|
12
12
|
from typing import Any
|
13
13
|
|
14
14
|
SCAN_INTERVAL: Incomplete
|
@@ -1,11 +1,11 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
2
|
from .coordinator import TedeeApiCoordinator as TedeeApiCoordinator
|
3
3
|
from _typeshed import Incomplete
|
4
|
+
from aiotedee.lock import TedeeLock as TedeeLock
|
4
5
|
from homeassistant.core import callback as callback
|
5
6
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
6
7
|
from homeassistant.helpers.entity import EntityDescription as EntityDescription
|
7
8
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
8
|
-
from pytedee_async.lock import TedeeLock as TedeeLock
|
9
9
|
|
10
10
|
class TedeeEntity(CoordinatorEntity[TedeeApiCoordinator]):
|
11
11
|
_attr_has_entity_name: bool
|
@@ -2,13 +2,15 @@ from .const import DOMAIN as DOMAIN
|
|
2
2
|
from .coordinator import TedeeApiCoordinator as TedeeApiCoordinator, TedeeConfigEntry as TedeeConfigEntry
|
3
3
|
from .entity import TedeeEntity as TedeeEntity
|
4
4
|
from _typeshed import Incomplete
|
5
|
+
from aiotedee import TedeeLock as TedeeLock
|
5
6
|
from homeassistant.components.lock import LockEntity as LockEntity, LockEntityFeature as LockEntityFeature
|
6
7
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
8
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
8
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
-
from pytedee_async import TedeeLock as TedeeLock
|
10
10
|
from typing import Any
|
11
11
|
|
12
|
+
PARALLEL_UPDATES: int
|
13
|
+
|
12
14
|
async def async_setup_entry(hass: HomeAssistant, entry: TedeeConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
13
15
|
|
14
16
|
class TedeeLockEntity(TedeeEntity, LockEntity):
|
@@ -1,12 +1,12 @@
|
|
1
1
|
from .coordinator import TedeeConfigEntry as TedeeConfigEntry
|
2
2
|
from .entity import TedeeDescriptionEntity as TedeeDescriptionEntity
|
3
|
+
from aiotedee import TedeeLock as TedeeLock
|
3
4
|
from collections.abc import Callable as Callable
|
4
5
|
from dataclasses import dataclass
|
5
6
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
6
7
|
from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfTime as UnitOfTime
|
7
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
-
from pytedee_async import TedeeLock as TedeeLock
|
10
10
|
|
11
11
|
@dataclass(frozen=True, kw_only=True)
|
12
12
|
class TedeeSensorEntityDescription(SensorEntityDescription):
|
@@ -1,14 +1,11 @@
|
|
1
|
-
from .const import
|
1
|
+
from .const import DOMAIN as DOMAIN, PLATFORMS as PLATFORMS, TTN_API_HOST as TTN_API_HOST
|
2
2
|
from .coordinator import TTNCoordinator as TTNCoordinator
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
5
|
from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_HOST as CONF_HOST
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
-
from homeassistant.helpers.typing import ConfigType as ConfigType
|
8
7
|
|
9
8
|
_LOGGER: Incomplete
|
10
|
-
CONFIG_SCHEMA: Incomplete
|
11
9
|
|
12
|
-
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
13
10
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
14
11
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
@@ -14,6 +14,9 @@ from typing import Any, Final
|
|
14
14
|
|
15
15
|
_LOGGER: Incomplete
|
16
16
|
DEFAULT_NAME: Final[str]
|
17
|
+
|
18
|
+
def no_missing_threshold(value: dict) -> dict: ...
|
19
|
+
|
17
20
|
PLATFORM_SCHEMA: Incomplete
|
18
21
|
|
19
22
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
@@ -22,6 +25,7 @@ def _threshold_type(lower: float | None, upper: float | None) -> str: ...
|
|
22
25
|
|
23
26
|
class ThresholdSensor(BinarySensorEntity):
|
24
27
|
_attr_should_poll: bool
|
28
|
+
_unrecorded_attributes: Incomplete
|
25
29
|
_preview_callback: Incomplete
|
26
30
|
_attr_unique_id: Incomplete
|
27
31
|
_attr_device_info: Incomplete
|