homeassistant-stubs 2024.11.2__py3-none-any.whl → 2024.12.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- homeassistant-stubs/__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/apsystems/coordinator.pyi +1 -1
- 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 +7 -3
- homeassistant-stubs/components/bmw_connected_drive/const.pyi +3 -0
- 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 +18 -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/history/__init__.pyi +1 -1
- homeassistant-stubs/components/history/helpers.pyi +1 -2
- homeassistant-stubs/components/history/websocket_api.pyi +1 -1
- homeassistant-stubs/components/history_stats/data.pyi +1 -0
- 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/__init__.pyi +1 -1
- 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/__init__.pyi +1 -1
- 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 +10 -6
- 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/matter/adapter.pyi +1 -0
- homeassistant-stubs/components/matter/const.pyi +1 -0
- homeassistant-stubs/components/matter/discovery.pyi +1 -0
- homeassistant-stubs/components/matter/entity.pyi +2 -1
- homeassistant-stubs/components/matter/models.pyi +4 -2
- 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 +3 -4
- 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 +2 -2
- homeassistant-stubs/components/plugwise/climate.pyi +4 -2
- 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/core.pyi +1 -0
- homeassistant-stubs/components/recorder/history/legacy.pyi +4 -4
- homeassistant-stubs/components/recorder/history/modern.pyi +2 -2
- homeassistant-stubs/components/recorder/pool.pyi +1 -1
- homeassistant-stubs/components/recorder/queries.pyi +1 -0
- homeassistant-stubs/components/recorder/statistics.pyi +1 -1
- homeassistant-stubs/components/recorder/table_managers/states.pyi +7 -0
- 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/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/spotify/browse_media.pyi +2 -2
- homeassistant-stubs/components/spotify/coordinator.pyi +2 -4
- 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/trend/binary_sensor.pyi +1 -0
- 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.pyi +1 -0
- 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.2.dist-info → homeassistant_stubs-2024.12.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.11.2.dist-info → homeassistant_stubs-2024.12.0.dist-info}/RECORD +392 -337
- homeassistant-stubs/components/spotify/sensor.pyi +0 -31
- {homeassistant_stubs-2024.11.2.dist-info → homeassistant_stubs-2024.12.0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2024.11.2.dist-info → homeassistant_stubs-2024.12.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
from .const import CONF_ALTITUDE as CONF_ALTITUDE, CONF_CONTRIBUTING_USER as CONF_CONTRIBUTING_USER, DEFAULT_ALTITUDE as DEFAULT_ALTITUDE, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
|
2
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
3
|
-
from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LONGITUDE as CONF_LONGITUDE,
|
2
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
|
3
|
+
from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LONGITUDE as CONF_LONGITUDE, CONF_PASSWORD as CONF_PASSWORD, CONF_RADIUS as CONF_RADIUS, CONF_USERNAME as CONF_USERNAME
|
4
4
|
from homeassistant.core import callback as callback
|
5
5
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
6
6
|
from typing import Any
|
@@ -10,5 +10,5 @@ class OpenSkyConfigFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
10
10
|
def async_get_options_flow(config_entry: ConfigEntry) -> OpenSkyOptionsFlowHandler: ...
|
11
11
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
12
12
|
|
13
|
-
class OpenSkyOptionsFlowHandler(
|
13
|
+
class OpenSkyOptionsFlowHandler(OptionsFlow):
|
14
14
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -1,12 +1,12 @@
|
|
1
|
-
from .const import
|
1
|
+
from .const import LOGGER as LOGGER
|
2
2
|
from .coordinator import P1MonitorDataUpdateCoordinator as P1MonitorDataUpdateCoordinator
|
3
|
-
from _typeshed import Incomplete
|
4
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
4
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PORT as CONF_PORT, Platform as Platform
|
6
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
6
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
8
7
|
|
9
|
-
PLATFORMS:
|
8
|
+
PLATFORMS: list[Platform]
|
9
|
+
type P1MonitorConfigEntry = ConfigEntry[P1MonitorDataUpdateCoordinator]
|
10
10
|
|
11
11
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
12
12
|
async def async_migrate_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool: ...
|
@@ -1,5 +1,4 @@
|
|
1
|
-
from .const import
|
2
|
-
from .coordinator import P1MonitorDataUpdateCoordinator as P1MonitorDataUpdateCoordinator
|
1
|
+
from .const import SERVICE_PHASES as SERVICE_PHASES, SERVICE_SETTINGS as SERVICE_SETTINGS, SERVICE_SMARTMETER as SERVICE_SMARTMETER, SERVICE_WATERMETER as SERVICE_WATERMETER
|
3
2
|
from _typeshed import Incomplete
|
4
3
|
from homeassistant.components.diagnostics import async_redact_data as async_redact_data
|
5
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
@@ -24,6 +24,6 @@ class P1MonitorSensorEntity(CoordinatorEntity[P1MonitorDataUpdateCoordinator], S
|
|
24
24
|
entity_description: Incomplete
|
25
25
|
_attr_unique_id: Incomplete
|
26
26
|
_attr_device_info: Incomplete
|
27
|
-
def __init__(self, *,
|
27
|
+
def __init__(self, *, entry: ConfigEntry, description: SensorEntityDescription, name: str, service: Literal['smartmeter', 'watermeter', 'phases', 'settings']) -> None: ...
|
28
28
|
@property
|
29
29
|
def native_value(self) -> StateType: ...
|
@@ -2,20 +2,16 @@ from .const import CONF_PING_COUNT as CONF_PING_COUNT, DOMAIN as DOMAIN
|
|
2
2
|
from .coordinator import PingUpdateCoordinator as PingUpdateCoordinator
|
3
3
|
from .helpers import PingDataICMPLib as PingDataICMPLib, PingDataSubProcess as PingDataSubProcess
|
4
4
|
from _typeshed import Incomplete
|
5
|
-
from dataclasses import dataclass
|
6
5
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
6
|
from homeassistant.const import CONF_HOST as CONF_HOST, Platform as Platform
|
8
7
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
8
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
9
|
+
from homeassistant.util.hass_dict import HassKey as HassKey
|
10
10
|
|
11
11
|
_LOGGER: Incomplete
|
12
12
|
CONFIG_SCHEMA: Incomplete
|
13
13
|
PLATFORMS: Incomplete
|
14
|
-
|
15
|
-
@dataclass(slots=True)
|
16
|
-
class PingDomainData:
|
17
|
-
privileged: bool | None
|
18
|
-
def __init__(self, privileged) -> None: ...
|
14
|
+
DATA_PRIVILEGED_KEY: HassKey[bool | None]
|
19
15
|
type PingConfigEntry = ConfigEntry[PingUpdateCoordinator]
|
20
16
|
|
21
17
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
@@ -10,6 +10,8 @@ from typing import Any
|
|
10
10
|
|
11
11
|
_LOGGER: Incomplete
|
12
12
|
|
13
|
+
def _clean_user_input(user_input: dict[str, Any]) -> dict[str, Any]: ...
|
14
|
+
|
13
15
|
class PingConfigFlow(ConfigFlow, domain=DOMAIN):
|
14
16
|
VERSION: int
|
15
17
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -17,6 +19,4 @@ class PingConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
17
19
|
def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: ...
|
18
20
|
|
19
21
|
class OptionsFlowHandler(OptionsFlow):
|
20
|
-
config_entry: Incomplete
|
21
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
22
22
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -22,8 +22,10 @@ class PlugwiseClimateEntity(PlugwiseEntity, ClimateEntity):
|
|
22
22
|
_previous_mode: str
|
23
23
|
_attr_extra_state_attributes: Incomplete
|
24
24
|
_attr_unique_id: Incomplete
|
25
|
-
|
26
|
-
|
25
|
+
_devices: Incomplete
|
26
|
+
_gateway: Incomplete
|
27
|
+
_gateway_data: Incomplete
|
28
|
+
_location: Incomplete
|
27
29
|
_attr_supported_features: Incomplete
|
28
30
|
_attr_preset_modes: Incomplete
|
29
31
|
_attr_min_temp: Incomplete
|
@@ -4,7 +4,7 @@ from _typeshed import Incomplete
|
|
4
4
|
from homeassistant.const import ATTR_NAME as ATTR_NAME, ATTR_VIA_DEVICE as ATTR_VIA_DEVICE, CONF_HOST as CONF_HOST
|
5
5
|
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, CONNECTION_ZIGBEE as CONNECTION_ZIGBEE, DeviceInfo as DeviceInfo
|
6
6
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
7
|
-
from plugwise.constants import
|
7
|
+
from plugwise.constants import GwEntityData as GwEntityData
|
8
8
|
|
9
9
|
class PlugwiseEntity(CoordinatorEntity[PlugwiseDataUpdateCoordinator]):
|
10
10
|
_attr_has_entity_name: bool
|
@@ -14,5 +14,5 @@ class PlugwiseEntity(CoordinatorEntity[PlugwiseDataUpdateCoordinator]):
|
|
14
14
|
@property
|
15
15
|
def available(self) -> bool: ...
|
16
16
|
@property
|
17
|
-
def device(self) ->
|
17
|
+
def device(self) -> GwEntityData: ...
|
18
18
|
async def async_added_to_hass(self) -> None: ...
|
@@ -21,11 +21,11 @@ async def async_setup_entry(hass: HomeAssistant, entry: PlugwiseConfigEntry, asy
|
|
21
21
|
|
22
22
|
class PlugwiseNumberEntity(PlugwiseEntity, NumberEntity):
|
23
23
|
entity_description: PlugwiseNumberEntityDescription
|
24
|
-
device_id: Incomplete
|
25
|
-
_attr_unique_id: Incomplete
|
26
24
|
_attr_mode: Incomplete
|
27
25
|
_attr_native_max_value: Incomplete
|
28
26
|
_attr_native_min_value: Incomplete
|
27
|
+
_attr_unique_id: Incomplete
|
28
|
+
device_id: Incomplete
|
29
29
|
_attr_native_step: Incomplete
|
30
30
|
def __init__(self, coordinator: PlugwiseDataUpdateCoordinator, device_id: str, description: PlugwiseNumberEntityDescription) -> None: ...
|
31
31
|
@property
|
@@ -1,5 +1,5 @@
|
|
1
1
|
from . import PlugwiseConfigEntry as PlugwiseConfigEntry
|
2
|
-
from .const import
|
2
|
+
from .const import SelectOptionsType as SelectOptionsType, SelectType as SelectType
|
3
3
|
from .coordinator import PlugwiseDataUpdateCoordinator as PlugwiseDataUpdateCoordinator
|
4
4
|
from .entity import PlugwiseEntity as PlugwiseEntity
|
5
5
|
from .util import plugwise_command as plugwise_command
|
@@ -23,6 +23,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: PlugwiseConfigEntry, asy
|
|
23
23
|
class PlugwiseSelectEntity(PlugwiseEntity, SelectEntity):
|
24
24
|
entity_description: PlugwiseSelectEntityDescription
|
25
25
|
_attr_unique_id: Incomplete
|
26
|
+
_location: Incomplete
|
26
27
|
def __init__(self, coordinator: PlugwiseDataUpdateCoordinator, device_id: str, entity_description: PlugwiseSelectEntityDescription) -> None: ...
|
27
28
|
@property
|
28
29
|
def current_option(self) -> str: ...
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import voluptuous as vol
|
2
2
|
from .const import CONF_IGNORED_ZONES as CONF_IGNORED_ZONES, CONF_TOLERANCE as CONF_TOLERANCE, CONF_TRACKED_ENTITIES as CONF_TRACKED_ENTITIES, DEFAULT_PROXIMITY_ZONE as DEFAULT_PROXIMITY_ZONE, DEFAULT_TOLERANCE as DEFAULT_TOLERANCE, DOMAIN as DOMAIN
|
3
|
-
from _typeshed import Incomplete
|
4
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
|
5
4
|
from homeassistant.const import CONF_ZONE as CONF_ZONE, UnitOfLength as UnitOfLength
|
6
5
|
from homeassistant.core import State as State, callback as callback
|
@@ -21,7 +20,5 @@ class ProximityConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
21
20
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
22
21
|
|
23
22
|
class ProximityOptionsFlow(OptionsFlow):
|
24
|
-
config_entry: Incomplete
|
25
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
26
23
|
def _user_form_schema(self, user_input: dict[str, Any]) -> vol.Schema: ...
|
27
24
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -1,12 +1,11 @@
|
|
1
|
-
from .const import DOMAIN as DOMAIN
|
2
1
|
from .coordinator import PureEnergieDataUpdateCoordinator as PureEnergieDataUpdateCoordinator
|
3
|
-
from _typeshed import Incomplete
|
4
2
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
3
|
from homeassistant.const import Platform as Platform
|
6
4
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
5
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
8
6
|
|
9
|
-
PLATFORMS:
|
7
|
+
PLATFORMS: list[Platform]
|
8
|
+
type PureEnergieConfigEntry = ConfigEntry[PureEnergieDataUpdateCoordinator]
|
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: PureEnergieConfigEntry) -> bool: ...
|
11
|
+
async def async_unload_entry(hass: HomeAssistant, entry: PureEnergieConfigEntry) -> bool: ...
|
@@ -1,12 +1,10 @@
|
|
1
|
-
from .
|
2
|
-
from .coordinator import PureEnergieDataUpdateCoordinator as PureEnergieDataUpdateCoordinator
|
1
|
+
from . import PureEnergieConfigEntry as PureEnergieConfigEntry
|
3
2
|
from _typeshed import Incomplete
|
4
3
|
from homeassistant.components.diagnostics import async_redact_data as async_redact_data
|
5
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
4
|
from homeassistant.const import CONF_HOST as CONF_HOST
|
7
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
6
|
from typing import Any
|
9
7
|
|
10
8
|
TO_REDACT: Incomplete
|
11
9
|
|
12
|
-
async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry:
|
10
|
+
async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: PureEnergieConfigEntry) -> dict[str, Any]: ...
|
@@ -1,10 +1,10 @@
|
|
1
|
+
from . import PureEnergieConfigEntry as PureEnergieConfigEntry
|
1
2
|
from .const import DOMAIN as DOMAIN
|
2
3
|
from .coordinator import PureEnergieData as PureEnergieData, PureEnergieDataUpdateCoordinator as PureEnergieDataUpdateCoordinator
|
3
4
|
from _typeshed import Incomplete
|
4
5
|
from collections.abc import Callable as Callable
|
5
6
|
from dataclasses import dataclass
|
6
7
|
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
8
|
from homeassistant.const import CONF_HOST as CONF_HOST, UnitOfEnergy as UnitOfEnergy, UnitOfPower as UnitOfPower
|
9
9
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
10
10
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
@@ -18,7 +18,7 @@ class PureEnergieSensorEntityDescription(SensorEntityDescription):
|
|
18
18
|
|
19
19
|
SENSORS: tuple[PureEnergieSensorEntityDescription, ...]
|
20
20
|
|
21
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
21
|
+
async def async_setup_entry(hass: HomeAssistant, entry: PureEnergieConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
22
22
|
|
23
23
|
class PureEnergieSensorEntity(CoordinatorEntity[PureEnergieDataUpdateCoordinator], SensorEntity):
|
24
24
|
_attr_has_entity_name: bool
|
@@ -26,6 +26,6 @@ class PureEnergieSensorEntity(CoordinatorEntity[PureEnergieDataUpdateCoordinator
|
|
26
26
|
entity_id: Incomplete
|
27
27
|
_attr_unique_id: Incomplete
|
28
28
|
_attr_device_info: Incomplete
|
29
|
-
def __init__(self, *,
|
29
|
+
def __init__(self, *, description: PureEnergieSensorEntityDescription, entry: PureEnergieConfigEntry) -> None: ...
|
30
30
|
@property
|
31
31
|
def native_value(self) -> int | float: ...
|
@@ -50,8 +50,7 @@ class PurpleAirConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
50
50
|
|
51
51
|
class PurpleAirOptionsFlowHandler(OptionsFlow):
|
52
52
|
_flow_data: Incomplete
|
53
|
-
|
54
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
53
|
+
def __init__(self) -> None: ...
|
55
54
|
@property
|
56
55
|
def settings_schema(self) -> vol.Schema: ...
|
57
56
|
async def async_step_add_sensor(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -1,6 +1,5 @@
|
|
1
1
|
import voluptuous as vol
|
2
2
|
from .const import CONF_ALLOW_INACTIVE_ZONES_TO_RUN as CONF_ALLOW_INACTIVE_ZONES_TO_RUN, CONF_DEFAULT_ZONE_RUN_TIME as CONF_DEFAULT_ZONE_RUN_TIME, CONF_USE_APP_RUN_TIMES as CONF_USE_APP_RUN_TIMES, DEFAULT_PORT as DEFAULT_PORT, DEFAULT_ZONE_RUN as DEFAULT_ZONE_RUN, DOMAIN as DOMAIN
|
3
|
-
from _typeshed import Incomplete
|
4
3
|
from homeassistant.components import zeroconf as zeroconf
|
5
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
|
6
5
|
from homeassistant.const import CONF_IP_ADDRESS as CONF_IP_ADDRESS, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_SSL as CONF_SSL
|
@@ -25,6 +24,4 @@ class RainMachineFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
25
24
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
26
25
|
|
27
26
|
class RainMachineOptionsFlowHandler(OptionsFlow):
|
28
|
-
config_entry: Incomplete
|
29
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
30
27
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -11,10 +11,8 @@ DATA_SCHEMA: Incomplete
|
|
11
11
|
class RecollectWasteConfigFlow(ConfigFlow, domain=DOMAIN):
|
12
12
|
VERSION: int
|
13
13
|
@staticmethod
|
14
|
-
def async_get_options_flow(config_entry: ConfigEntry) ->
|
14
|
+
def async_get_options_flow(config_entry: ConfigEntry) -> RecollectWasteOptionsFlowHandler: ...
|
15
15
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
16
16
|
|
17
17
|
class RecollectWasteOptionsFlowHandler(OptionsFlow):
|
18
|
-
_entry: Incomplete
|
19
|
-
def __init__(self, entry: ConfigEntry) -> None: ...
|
20
18
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -152,6 +152,7 @@ class Recorder(threading.Thread):
|
|
152
152
|
def _guarded_process_one_task_or_event_or_recover(self, task: RecorderTask | Event) -> None: ...
|
153
153
|
def _process_one_task_or_event_or_recover(self, task: RecorderTask | Event) -> None: ...
|
154
154
|
def _setup_recorder(self) -> bool: ...
|
155
|
+
def _migrate_data_offline(self, schema_status: migration.SchemaValidationStatus) -> None: ...
|
155
156
|
def _migrate_schema_offline(self, schema_status: migration.SchemaValidationStatus) -> tuple[bool, migration.SchemaValidationStatus]: ...
|
156
157
|
def _migrate_schema_live(self, schema_status: migration.SchemaValidationStatus) -> tuple[bool, migration.SchemaValidationStatus]: ...
|
157
158
|
def _migrate_schema(self, schema_status: migration.SchemaValidationStatus, live: bool) -> tuple[bool, migration.SchemaValidationStatus]: ...
|
@@ -1,6 +1,6 @@
|
|
1
|
-
from ..db_schema import
|
1
|
+
from ..db_schema import StateAttributes as StateAttributes, States as States
|
2
2
|
from ..filters import Filters as Filters
|
3
|
-
from ..models import
|
3
|
+
from ..models import process_timestamp_to_utc_isoformat as process_timestamp_to_utc_isoformat
|
4
4
|
from ..models.legacy import LegacyLazyState as LegacyLazyState, legacy_row_to_compressed_state as legacy_row_to_compressed_state
|
5
5
|
from ..util import execute_stmt_lambda_element as execute_stmt_lambda_element, session_scope as session_scope
|
6
6
|
from .const import LAST_CHANGED_KEY as LAST_CHANGED_KEY, NEED_ATTRIBUTE_DOMAINS as NEED_ATTRIBUTE_DOMAINS, SIGNIFICANT_DOMAINS as SIGNIFICANT_DOMAINS, SIGNIFICANT_DOMAINS_ENTITY_ID_LIKE as SIGNIFICANT_DOMAINS_ENTITY_ID_LIKE, STATE_KEY as STATE_KEY
|
@@ -42,7 +42,7 @@ def _state_changed_during_period_stmt(start_time: datetime, end_time: datetime |
|
|
42
42
|
def state_changes_during_period(hass: HomeAssistant, start_time: datetime, end_time: datetime | None = None, entity_id: str | None = None, no_attributes: bool = False, descending: bool = False, limit: int | None = None, include_start_time_state: bool = True) -> dict[str, list[State]]: ...
|
43
43
|
def _get_last_state_changes_stmt(number_of_states: int, entity_id: str) -> StatementLambdaElement: ...
|
44
44
|
def get_last_state_changes(hass: HomeAssistant, number_of_states: int, entity_id: str) -> dict[str, list[State]]: ...
|
45
|
-
def _get_states_for_entities_stmt(
|
46
|
-
def _get_rows_with_session(hass: HomeAssistant, session: Session, utc_point_in_time: datetime, entity_ids: list[str],
|
45
|
+
def _get_states_for_entities_stmt(run_start_ts: float, utc_point_in_time: datetime, entity_ids: list[str], no_attributes: bool) -> StatementLambdaElement: ...
|
46
|
+
def _get_rows_with_session(hass: HomeAssistant, session: Session, utc_point_in_time: datetime, entity_ids: list[str], *, no_attributes: bool = False) -> Iterable[Row]: ...
|
47
47
|
def _get_single_entity_states_stmt(utc_point_in_time: datetime, entity_id: str, no_attributes: bool = False) -> StatementLambdaElement: ...
|
48
48
|
def _sorted_states_to_dict(hass: HomeAssistant, session: Session, states: Iterable[Row], start_time: datetime, entity_ids: list[str], include_start_time_state: bool = True, minimal_response: bool = False, no_attributes: bool = False, compressed_state_format: bool = False) -> dict[str, list[State | dict[str, Any]]]: ...
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from ..const import LAST_REPORTED_SCHEMA_VERSION as LAST_REPORTED_SCHEMA_VERSION
|
2
2
|
from ..db_schema import SHARED_ATTR_OR_LEGACY_ATTRIBUTES as SHARED_ATTR_OR_LEGACY_ATTRIBUTES, StateAttributes as StateAttributes, States as States
|
3
3
|
from ..filters import Filters as Filters
|
4
|
-
from ..models import LazyState as LazyState, datetime_to_timestamp_or_none as datetime_to_timestamp_or_none, extract_metadata_ids as extract_metadata_ids,
|
4
|
+
from ..models import LazyState as LazyState, datetime_to_timestamp_or_none as datetime_to_timestamp_or_none, extract_metadata_ids as extract_metadata_ids, row_to_compressed_state as row_to_compressed_state
|
5
5
|
from ..util import execute_stmt_lambda_element as execute_stmt_lambda_element, session_scope as session_scope
|
6
6
|
from .const import LAST_CHANGED_KEY as LAST_CHANGED_KEY, NEED_ATTRIBUTE_DOMAINS as NEED_ATTRIBUTE_DOMAINS, SIGNIFICANT_DOMAINS as SIGNIFICANT_DOMAINS, STATE_KEY as STATE_KEY
|
7
7
|
from _typeshed import Incomplete
|
@@ -30,7 +30,7 @@ def _get_last_state_changes_single_stmt(metadata_id: int) -> Select: ...
|
|
30
30
|
def _get_last_state_changes_multiple_stmt(number_of_states: int, metadata_id: int, include_last_reported: bool) -> Select: ...
|
31
31
|
def get_last_state_changes(hass: HomeAssistant, number_of_states: int, entity_id: str) -> dict[str, list[State]]: ...
|
32
32
|
def _get_start_time_state_for_entities_stmt(run_start_ts: float, epoch_time: float, metadata_ids: list[int], no_attributes: bool, include_last_changed: bool) -> Select: ...
|
33
|
-
def
|
33
|
+
def _get_oldest_possible_ts(hass: HomeAssistant, utc_point_in_time: datetime) -> float | None: ...
|
34
34
|
def _get_start_time_state_stmt(run_start_ts: float, epoch_time: float, single_metadata_id: int | None, metadata_ids: list[int], no_attributes: bool, include_last_changed: bool) -> Select: ...
|
35
35
|
def _get_single_entity_start_time_stmt(epoch_time: float, metadata_id: int, no_attributes: bool, include_last_changed: bool, include_last_reported: bool) -> Select: ...
|
36
36
|
def _sorted_states_to_dict(states: Iterable[Row], start_time_ts: float | None, entity_ids: list[str], entity_id_to_metadata_id: dict[str, int | None], minimal_response: bool = False, compressed_state_format: bool = False, descending: bool = False, no_attributes: bool = False) -> dict[str, list[State | dict[str, Any]]]: ...
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import threading
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from homeassistant.helpers.frame import
|
3
|
+
from homeassistant.helpers.frame import ReportBehavior as ReportBehavior, report_usage as report_usage
|
4
4
|
from homeassistant.util.loop import raise_for_blocking_call as raise_for_blocking_call
|
5
5
|
from sqlalchemy.pool import ConnectionPoolEntry as ConnectionPoolEntry, NullPool, SingletonThreadPool, StaticPool
|
6
6
|
from typing import Any
|
@@ -26,6 +26,7 @@ def delete_event_rows(event_ids: Iterable[int]) -> StatementLambdaElement: ...
|
|
26
26
|
def delete_recorder_runs_rows(purge_before: datetime, current_run_id: int) -> StatementLambdaElement: ...
|
27
27
|
def find_events_to_purge(purge_before: float, max_bind_vars: int) -> StatementLambdaElement: ...
|
28
28
|
def find_states_to_purge(purge_before: float, max_bind_vars: int) -> StatementLambdaElement: ...
|
29
|
+
def find_oldest_state() -> StatementLambdaElement: ...
|
29
30
|
def find_short_term_statistics_to_purge(purge_before: datetime, max_bind_vars: int) -> StatementLambdaElement: ...
|
30
31
|
def find_statistics_runs_to_purge(purge_before: datetime, max_bind_vars: int) -> StatementLambdaElement: ...
|
31
32
|
def find_latest_statistics_runs_run_id() -> StatementLambdaElement: ...
|
@@ -12,7 +12,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callb
|
|
12
12
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
13
13
|
from homeassistant.helpers.singleton import singleton as singleton
|
14
14
|
from homeassistant.helpers.typing import UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
|
15
|
-
from homeassistant.util.unit_conversion import BaseUnitConverter as BaseUnitConverter, ConductivityConverter as ConductivityConverter, DataRateConverter as DataRateConverter, DistanceConverter as DistanceConverter, DurationConverter as DurationConverter, ElectricCurrentConverter as ElectricCurrentConverter, ElectricPotentialConverter as ElectricPotentialConverter, EnergyConverter as EnergyConverter, InformationConverter as InformationConverter, MassConverter as MassConverter, PowerConverter as PowerConverter, PressureConverter as PressureConverter, SpeedConverter as SpeedConverter, TemperatureConverter as TemperatureConverter, UnitlessRatioConverter as UnitlessRatioConverter, VolumeConverter as VolumeConverter, VolumeFlowRateConverter as VolumeFlowRateConverter
|
15
|
+
from homeassistant.util.unit_conversion import AreaConverter as AreaConverter, BaseUnitConverter as BaseUnitConverter, BloodGlucoseConcentrationConverter as BloodGlucoseConcentrationConverter, ConductivityConverter as ConductivityConverter, DataRateConverter as DataRateConverter, DistanceConverter as DistanceConverter, DurationConverter as DurationConverter, ElectricCurrentConverter as ElectricCurrentConverter, ElectricPotentialConverter as ElectricPotentialConverter, EnergyConverter as EnergyConverter, InformationConverter as InformationConverter, MassConverter as MassConverter, PowerConverter as PowerConverter, PressureConverter as PressureConverter, SpeedConverter as SpeedConverter, TemperatureConverter as TemperatureConverter, UnitlessRatioConverter as UnitlessRatioConverter, VolumeConverter as VolumeConverter, VolumeFlowRateConverter as VolumeFlowRateConverter
|
16
16
|
from sqlalchemy import Select as Select
|
17
17
|
from sqlalchemy.engine.row import Row
|
18
18
|
from sqlalchemy.orm.session import Session as Session
|
@@ -1,11 +1,17 @@
|
|
1
1
|
from ..db_schema import States as States
|
2
|
+
from ..queries import find_oldest_state as find_oldest_state
|
3
|
+
from ..util import execute_stmt_lambda_element as execute_stmt_lambda_element
|
2
4
|
from _typeshed import Incomplete
|
5
|
+
from sqlalchemy.orm.session import Session as Session
|
3
6
|
|
4
7
|
class StatesManager:
|
5
8
|
_pending: Incomplete
|
6
9
|
_last_committed_id: Incomplete
|
7
10
|
_last_reported: Incomplete
|
11
|
+
_oldest_ts: Incomplete
|
8
12
|
def __init__(self) -> None: ...
|
13
|
+
@property
|
14
|
+
def oldest_ts(self) -> float | None: ...
|
9
15
|
def pop_pending(self, entity_id: str) -> States | None: ...
|
10
16
|
def pop_committed(self, entity_id: str) -> int | None: ...
|
11
17
|
def add_pending(self, entity_id: str, state: States) -> None: ...
|
@@ -13,5 +19,6 @@ class StatesManager:
|
|
13
19
|
def get_pending_last_reported_timestamp(self) -> dict[int, float]: ...
|
14
20
|
def post_commit_pending(self) -> None: ...
|
15
21
|
def reset(self) -> None: ...
|
22
|
+
def load_from_db(self, session: Session) -> None: ...
|
16
23
|
def evict_purged_state_ids(self, purged_state_ids: set[int]) -> None: ...
|
17
24
|
def evict_purged_entity_ids(self, purged_entity_ids: set[str]) -> None: ...
|
@@ -8,7 +8,7 @@ from homeassistant.components.websocket_api import messages as messages
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback, valid_entity_id as valid_entity_id
|
9
9
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
10
10
|
from homeassistant.helpers.json import json_bytes as json_bytes
|
11
|
-
from homeassistant.util.unit_conversion import ConductivityConverter as ConductivityConverter, DataRateConverter as DataRateConverter, DistanceConverter as DistanceConverter, DurationConverter as DurationConverter, ElectricCurrentConverter as ElectricCurrentConverter, ElectricPotentialConverter as ElectricPotentialConverter, EnergyConverter as EnergyConverter, InformationConverter as InformationConverter, MassConverter as MassConverter, PowerConverter as PowerConverter, PressureConverter as PressureConverter, SpeedConverter as SpeedConverter, TemperatureConverter as TemperatureConverter, UnitlessRatioConverter as UnitlessRatioConverter, VolumeConverter as VolumeConverter, VolumeFlowRateConverter as VolumeFlowRateConverter
|
11
|
+
from homeassistant.util.unit_conversion import AreaConverter as AreaConverter, BloodGlucoseConcentrationConverter as BloodGlucoseConcentrationConverter, ConductivityConverter as ConductivityConverter, DataRateConverter as DataRateConverter, DistanceConverter as DistanceConverter, DurationConverter as DurationConverter, ElectricCurrentConverter as ElectricCurrentConverter, ElectricPotentialConverter as ElectricPotentialConverter, EnergyConverter as EnergyConverter, InformationConverter as InformationConverter, MassConverter as MassConverter, PowerConverter as PowerConverter, PressureConverter as PressureConverter, SpeedConverter as SpeedConverter, TemperatureConverter as TemperatureConverter, UnitlessRatioConverter as UnitlessRatioConverter, VolumeConverter as VolumeConverter, VolumeFlowRateConverter as VolumeFlowRateConverter
|
12
12
|
from typing import Any, Literal
|
13
13
|
|
14
14
|
CLEAR_STATISTICS_TIME_OUT: int
|
@@ -6,15 +6,14 @@ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowRes
|
|
6
6
|
from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
7
7
|
from typing import Any
|
8
8
|
|
9
|
+
USER_SCHEMA: Incomplete
|
10
|
+
REAUTH_SCHEMA: Incomplete
|
11
|
+
|
9
12
|
class RenaultFlowHandler(ConfigFlow, domain=DOMAIN):
|
10
|
-
|
11
|
-
_original_data: Incomplete
|
13
|
+
renault_hub: RenaultHub
|
12
14
|
renault_config: Incomplete
|
13
|
-
renault_hub: Incomplete
|
14
15
|
def __init__(self) -> None: ...
|
15
16
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
16
|
-
def _show_user_form(self, errors: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
17
17
|
async def async_step_kamereon(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
18
18
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
19
19
|
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
20
|
-
def _show_reauth_confirm_form(self, errors: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -4,6 +4,7 @@ from .renault_vehicle import RenaultVehicleProxy as RenaultVehicleProxy
|
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
|
7
|
+
from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
|
7
8
|
|
8
9
|
LOGGER: Incomplete
|
9
10
|
ATTR_SCHEDULES: str
|
@@ -0,0 +1,28 @@
|
|
1
|
+
from .const import CONF_USE_HTTPS as CONF_USE_HTTPS, DOMAIN as DOMAIN
|
2
|
+
from .exceptions import PasswordIncompatible as PasswordIncompatible, ReolinkException as ReolinkException, UserNotAdmin as UserNotAdmin
|
3
|
+
from .host import ReolinkHost as ReolinkHost
|
4
|
+
from .services import async_setup_services as async_setup_services
|
5
|
+
from .util import ReolinkConfigEntry as ReolinkConfigEntry, ReolinkData as ReolinkData, get_device_uid_and_ch as get_device_uid_and_ch
|
6
|
+
from _typeshed import Incomplete
|
7
|
+
from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
|
8
|
+
from homeassistant.const import CONF_PORT as CONF_PORT, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
|
9
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
10
|
+
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
11
|
+
from homeassistant.helpers import device_registry as dr
|
12
|
+
from homeassistant.helpers.device_registry import format_mac as format_mac
|
13
|
+
from homeassistant.helpers.typing import ConfigType as ConfigType
|
14
|
+
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
15
|
+
|
16
|
+
_LOGGER: Incomplete
|
17
|
+
PLATFORMS: Incomplete
|
18
|
+
DEVICE_UPDATE_INTERVAL: Incomplete
|
19
|
+
FIRMWARE_UPDATE_INTERVAL: Incomplete
|
20
|
+
NUM_CRED_ERRORS: int
|
21
|
+
CONFIG_SCHEMA: Incomplete
|
22
|
+
|
23
|
+
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
24
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry) -> bool: ...
|
25
|
+
async def entry_update_listener(hass: HomeAssistant, config_entry: ReolinkConfigEntry) -> None: ...
|
26
|
+
async def async_unload_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry) -> bool: ...
|
27
|
+
async def async_remove_config_entry_device(hass: HomeAssistant, config_entry: ReolinkConfigEntry, device: dr.DeviceEntry) -> bool: ...
|
28
|
+
def migrate_entity_ids(hass: HomeAssistant, config_entry_id: str, host: ReolinkHost) -> None: ...
|
@@ -0,0 +1,34 @@
|
|
1
|
+
from .entity import ReolinkChannelCoordinatorEntity as ReolinkChannelCoordinatorEntity, ReolinkChannelEntityDescription as ReolinkChannelEntityDescription
|
2
|
+
from .util import ReolinkConfigEntry as ReolinkConfigEntry, ReolinkData as ReolinkData
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
|
7
|
+
from homeassistant.const import EntityCategory as EntityCategory
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
|
+
from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
|
10
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
|
+
from reolink_aio.api import Host as Host
|
12
|
+
|
13
|
+
PARALLEL_UPDATES: int
|
14
|
+
|
15
|
+
@dataclass(frozen=True, kw_only=True)
|
16
|
+
class ReolinkBinarySensorEntityDescription(BinarySensorEntityDescription, ReolinkChannelEntityDescription):
|
17
|
+
value: Callable[[Host, int], bool]
|
18
|
+
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=..., cmd_key=..., cmd_id=..., supported=..., value) -> None: ...
|
19
|
+
|
20
|
+
BINARY_PUSH_SENSORS: Incomplete
|
21
|
+
BINARY_SENSORS: Incomplete
|
22
|
+
|
23
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
24
|
+
|
25
|
+
class ReolinkBinarySensorEntity(ReolinkChannelCoordinatorEntity, BinarySensorEntity):
|
26
|
+
entity_description: ReolinkBinarySensorEntityDescription
|
27
|
+
_attr_translation_key: Incomplete
|
28
|
+
def __init__(self, reolink_data: ReolinkData, channel: int, entity_description: ReolinkBinarySensorEntityDescription) -> None: ...
|
29
|
+
@property
|
30
|
+
def is_on(self) -> bool: ...
|
31
|
+
|
32
|
+
class ReolinkPushBinarySensorEntity(ReolinkBinarySensorEntity):
|
33
|
+
async def async_added_to_hass(self) -> None: ...
|
34
|
+
async def _async_handle_event(self, event: str) -> None: ...
|
@@ -0,0 +1,48 @@
|
|
1
|
+
from .entity import ReolinkChannelCoordinatorEntity as ReolinkChannelCoordinatorEntity, ReolinkChannelEntityDescription as ReolinkChannelEntityDescription, ReolinkHostCoordinatorEntity as ReolinkHostCoordinatorEntity, ReolinkHostEntityDescription as ReolinkHostEntityDescription
|
2
|
+
from .util import ReolinkConfigEntry as ReolinkConfigEntry, ReolinkData as ReolinkData
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from homeassistant.components.button import ButtonDeviceClass as ButtonDeviceClass, ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
|
7
|
+
from homeassistant.components.camera import CameraEntityFeature as CameraEntityFeature
|
8
|
+
from homeassistant.const import EntityCategory as EntityCategory
|
9
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
10
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
11
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback, async_get_current_platform as async_get_current_platform
|
12
|
+
from reolink_aio.api import Host as Host
|
13
|
+
from typing import Any
|
14
|
+
|
15
|
+
PARALLEL_UPDATES: int
|
16
|
+
ATTR_SPEED: str
|
17
|
+
SUPPORT_PTZ_SPEED: Incomplete
|
18
|
+
SERVICE_PTZ_MOVE: str
|
19
|
+
|
20
|
+
@dataclass(frozen=True, kw_only=True)
|
21
|
+
class ReolinkButtonEntityDescription(ButtonEntityDescription, ReolinkChannelEntityDescription):
|
22
|
+
enabled_default: Callable[[Host, int], bool] | None = ...
|
23
|
+
method: Callable[[Host, int], Any]
|
24
|
+
ptz_cmd: str | None = ...
|
25
|
+
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=..., cmd_key=..., cmd_id=..., supported=..., enabled_default=..., method, ptz_cmd=...) -> None: ...
|
26
|
+
|
27
|
+
@dataclass(frozen=True, kw_only=True)
|
28
|
+
class ReolinkHostButtonEntityDescription(ButtonEntityDescription, ReolinkHostEntityDescription):
|
29
|
+
method: Callable[[Host], Any]
|
30
|
+
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=..., cmd_key=..., cmd_id=..., supported=..., method) -> None: ...
|
31
|
+
|
32
|
+
BUTTON_ENTITIES: Incomplete
|
33
|
+
HOST_BUTTON_ENTITIES: Incomplete
|
34
|
+
|
35
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
36
|
+
|
37
|
+
class ReolinkButtonEntity(ReolinkChannelCoordinatorEntity, ButtonEntity):
|
38
|
+
entity_description: ReolinkButtonEntityDescription
|
39
|
+
_attr_entity_registry_enabled_default: Incomplete
|
40
|
+
_attr_supported_features: Incomplete
|
41
|
+
def __init__(self, reolink_data: ReolinkData, channel: int, entity_description: ReolinkButtonEntityDescription) -> None: ...
|
42
|
+
async def async_press(self) -> None: ...
|
43
|
+
async def async_ptz_move(self, **kwargs: Any) -> None: ...
|
44
|
+
|
45
|
+
class ReolinkHostButtonEntity(ReolinkHostCoordinatorEntity, ButtonEntity):
|
46
|
+
entity_description: ReolinkHostButtonEntityDescription
|
47
|
+
def __init__(self, reolink_data: ReolinkData, entity_description: ReolinkHostButtonEntityDescription) -> None: ...
|
48
|
+
async def async_press(self) -> None: ...
|
@@ -0,0 +1,28 @@
|
|
1
|
+
from .entity import ReolinkChannelCoordinatorEntity as ReolinkChannelCoordinatorEntity, ReolinkChannelEntityDescription as ReolinkChannelEntityDescription
|
2
|
+
from .util import ReolinkConfigEntry as ReolinkConfigEntry, ReolinkData as ReolinkData
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from dataclasses import dataclass
|
5
|
+
from homeassistant.components.camera import Camera as Camera, CameraEntityDescription as CameraEntityDescription, CameraEntityFeature as CameraEntityFeature
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
8
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
+
|
10
|
+
_LOGGER: Incomplete
|
11
|
+
PARALLEL_UPDATES: int
|
12
|
+
|
13
|
+
@dataclass(frozen=True, kw_only=True)
|
14
|
+
class ReolinkCameraEntityDescription(CameraEntityDescription, ReolinkChannelEntityDescription):
|
15
|
+
stream: str
|
16
|
+
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=..., cmd_key=..., cmd_id=..., supported=..., stream) -> None: ...
|
17
|
+
|
18
|
+
CAMERA_ENTITIES: Incomplete
|
19
|
+
|
20
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
21
|
+
|
22
|
+
class ReolinkCamera(ReolinkChannelCoordinatorEntity, Camera):
|
23
|
+
entity_description: ReolinkCameraEntityDescription
|
24
|
+
_attr_supported_features: Incomplete
|
25
|
+
_attr_translation_key: Incomplete
|
26
|
+
def __init__(self, reolink_data: ReolinkData, channel: int, entity_description: ReolinkCameraEntityDescription) -> None: ...
|
27
|
+
async def stream_source(self) -> str | None: ...
|
28
|
+
async def async_camera_image(self, width: int | None = None, height: int | None = None) -> bytes | None: ...
|
@@ -0,0 +1,35 @@
|
|
1
|
+
from .const import CONF_USE_HTTPS as CONF_USE_HTTPS, DOMAIN as DOMAIN
|
2
|
+
from .exceptions import PasswordIncompatible as PasswordIncompatible, ReolinkException as ReolinkException, ReolinkWebhookException as ReolinkWebhookException, UserNotAdmin as UserNotAdmin
|
3
|
+
from .host import ReolinkHost as ReolinkHost
|
4
|
+
from .util import ReolinkConfigEntry as ReolinkConfigEntry, is_connected as is_connected
|
5
|
+
from _typeshed import Incomplete
|
6
|
+
from collections.abc import Mapping
|
7
|
+
from homeassistant.components import dhcp as dhcp
|
8
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
|
9
|
+
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_PROTOCOL as CONF_PROTOCOL, CONF_USERNAME as CONF_USERNAME
|
10
|
+
from homeassistant.core import callback as callback
|
11
|
+
from homeassistant.data_entry_flow import AbortFlow as AbortFlow
|
12
|
+
from homeassistant.helpers import selector as selector
|
13
|
+
from homeassistant.helpers.device_registry import format_mac as format_mac
|
14
|
+
from typing import Any
|
15
|
+
|
16
|
+
_LOGGER: Incomplete
|
17
|
+
DEFAULT_PROTOCOL: str
|
18
|
+
DEFAULT_OPTIONS: Incomplete
|
19
|
+
|
20
|
+
class ReolinkOptionsFlowHandler(OptionsFlow):
|
21
|
+
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
22
|
+
|
23
|
+
class ReolinkFlowHandler(ConfigFlow, domain=DOMAIN):
|
24
|
+
VERSION: int
|
25
|
+
_host: Incomplete
|
26
|
+
_username: str
|
27
|
+
_password: Incomplete
|
28
|
+
def __init__(self) -> None: ...
|
29
|
+
@staticmethod
|
30
|
+
def async_get_options_flow(config_entry: ReolinkConfigEntry) -> ReolinkOptionsFlowHandler: ...
|
31
|
+
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
32
|
+
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
33
|
+
async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
34
|
+
async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
|
35
|
+
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -0,0 +1,5 @@
|
|
1
|
+
from .util import ReolinkConfigEntry as ReolinkConfigEntry, ReolinkData as ReolinkData
|
2
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
3
|
+
from typing import Any
|
4
|
+
|
5
|
+
async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: ReolinkConfigEntry) -> dict[str, Any]: ...
|