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
@@ -0,0 +1,33 @@
|
|
1
|
+
from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from homeassistant.components import media_source as media_source
|
4
|
+
from homeassistant.components.media_player import BrowseError as BrowseError, BrowseMedia as BrowseMedia, MediaClass as MediaClass, MediaType as MediaType
|
5
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
|
+
from music_assistant_client import MusicAssistantClient as MusicAssistantClient
|
7
|
+
from music_assistant_models.media_items import MediaItemType as MediaItemType
|
8
|
+
from typing import Any
|
9
|
+
|
10
|
+
MEDIA_TYPE_RADIO: str
|
11
|
+
PLAYABLE_MEDIA_TYPES: Incomplete
|
12
|
+
LIBRARY_ARTISTS: str
|
13
|
+
LIBRARY_ALBUMS: str
|
14
|
+
LIBRARY_TRACKS: str
|
15
|
+
LIBRARY_PLAYLISTS: str
|
16
|
+
LIBRARY_RADIO: str
|
17
|
+
LIBRARY_TITLE_MAP: Incomplete
|
18
|
+
LIBRARY_MEDIA_CLASS_MAP: Incomplete
|
19
|
+
MEDIA_CONTENT_TYPE_FLAC: str
|
20
|
+
THUMB_SIZE: int
|
21
|
+
|
22
|
+
def media_source_filter(item: BrowseMedia) -> bool: ...
|
23
|
+
async def async_browse_media(hass: HomeAssistant, mass: MusicAssistantClient, media_content_id: str | None, media_content_type: str | None) -> BrowseMedia: ...
|
24
|
+
async def build_main_listing(hass: HomeAssistant) -> BrowseMedia: ...
|
25
|
+
async def build_playlists_listing(mass: MusicAssistantClient) -> BrowseMedia: ...
|
26
|
+
async def build_playlist_items_listing(mass: MusicAssistantClient, identifier: str) -> BrowseMedia: ...
|
27
|
+
async def build_artists_listing(mass: MusicAssistantClient) -> BrowseMedia: ...
|
28
|
+
async def build_artist_items_listing(mass: MusicAssistantClient, identifier: str) -> BrowseMedia: ...
|
29
|
+
async def build_albums_listing(mass: MusicAssistantClient) -> BrowseMedia: ...
|
30
|
+
async def build_album_items_listing(mass: MusicAssistantClient, identifier: str) -> BrowseMedia: ...
|
31
|
+
async def build_tracks_listing(mass: MusicAssistantClient) -> BrowseMedia: ...
|
32
|
+
async def build_radio_listing(mass: MusicAssistantClient) -> BrowseMedia: ...
|
33
|
+
def build_item(mass: MusicAssistantClient, item: MediaItemType, can_expand: bool = True, media_class: Any = None) -> BrowseMedia: ...
|
@@ -0,0 +1,96 @@
|
|
1
|
+
from . import MusicAssistantConfigEntry as MusicAssistantConfigEntry
|
2
|
+
from .const import ATTR_ACTIVE_QUEUE as ATTR_ACTIVE_QUEUE, ATTR_MASS_PLAYER_TYPE as ATTR_MASS_PLAYER_TYPE, DOMAIN as DOMAIN
|
3
|
+
from .entity import MusicAssistantEntity as MusicAssistantEntity
|
4
|
+
from .media_browser import async_browse_media as async_browse_media
|
5
|
+
from _typeshed import Incomplete
|
6
|
+
from collections.abc import Awaitable, Callable as Callable, Coroutine, Mapping
|
7
|
+
from homeassistant.components import media_source as media_source
|
8
|
+
from homeassistant.components.media_player import ATTR_MEDIA_ENQUEUE as ATTR_MEDIA_ENQUEUE, ATTR_MEDIA_EXTRA as ATTR_MEDIA_EXTRA, BrowseMedia as BrowseMedia, MediaPlayerDeviceClass as MediaPlayerDeviceClass, MediaPlayerEnqueue as MediaPlayerEnqueue, MediaPlayerEntity as MediaPlayerEntity, MediaPlayerEntityFeature as MediaPlayerEntityFeature, MediaPlayerState as MediaPlayerState, RepeatMode as RepeatMode, async_process_play_media_url as async_process_play_media_url
|
9
|
+
from homeassistant.const import STATE_OFF as STATE_OFF
|
10
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
11
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
12
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback, async_get_current_platform as async_get_current_platform
|
13
|
+
from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp
|
14
|
+
from music_assistant_client import MusicAssistantClient as MusicAssistantClient
|
15
|
+
from music_assistant_models.enums import MediaType, QueueOption
|
16
|
+
from music_assistant_models.event import MassEvent as MassEvent
|
17
|
+
from music_assistant_models.player import Player as Player
|
18
|
+
from music_assistant_models.player_queue import PlayerQueue as PlayerQueue
|
19
|
+
from typing import Any
|
20
|
+
|
21
|
+
SUPPORTED_FEATURES: Incomplete
|
22
|
+
QUEUE_OPTION_MAP: Incomplete
|
23
|
+
SERVICE_PLAY_MEDIA_ADVANCED: str
|
24
|
+
SERVICE_PLAY_ANNOUNCEMENT: str
|
25
|
+
SERVICE_TRANSFER_QUEUE: str
|
26
|
+
ATTR_RADIO_MODE: str
|
27
|
+
ATTR_MEDIA_ID: str
|
28
|
+
ATTR_MEDIA_TYPE: str
|
29
|
+
ATTR_ARTIST: str
|
30
|
+
ATTR_ALBUM: str
|
31
|
+
ATTR_URL: str
|
32
|
+
ATTR_USE_PRE_ANNOUNCE: str
|
33
|
+
ATTR_ANNOUNCE_VOLUME: str
|
34
|
+
ATTR_SOURCE_PLAYER: str
|
35
|
+
ATTR_AUTO_PLAY: str
|
36
|
+
|
37
|
+
def catch_musicassistant_error[_R, **P](func: Callable[..., Awaitable[_R]]) -> Callable[..., Coroutine[Any, Any, _R | None]]: ...
|
38
|
+
async def async_setup_entry(hass: HomeAssistant, entry: MusicAssistantConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
39
|
+
|
40
|
+
class MusicAssistantPlayer(MusicAssistantEntity, MediaPlayerEntity):
|
41
|
+
_attr_name: Incomplete
|
42
|
+
_attr_media_image_remotely_accessible: bool
|
43
|
+
_attr_media_content_type: Incomplete
|
44
|
+
_attr_icon: Incomplete
|
45
|
+
_attr_supported_features: Incomplete
|
46
|
+
_attr_device_class: Incomplete
|
47
|
+
_prev_time: int
|
48
|
+
def __init__(self, mass: MusicAssistantClient, player_id: str) -> None: ...
|
49
|
+
async def async_added_to_hass(self) -> None: ...
|
50
|
+
@property
|
51
|
+
def active_queue(self) -> PlayerQueue | None: ...
|
52
|
+
@property
|
53
|
+
def extra_state_attributes(self) -> Mapping[str, Any]: ...
|
54
|
+
_attr_state: Incomplete
|
55
|
+
_attr_group_members: Incomplete
|
56
|
+
_attr_volume_level: Incomplete
|
57
|
+
_attr_is_volume_muted: Incomplete
|
58
|
+
async def async_on_update(self) -> None: ...
|
59
|
+
async def async_media_play(self) -> None: ...
|
60
|
+
async def async_media_pause(self) -> None: ...
|
61
|
+
async def async_media_stop(self) -> None: ...
|
62
|
+
async def async_media_next_track(self) -> None: ...
|
63
|
+
async def async_media_previous_track(self) -> None: ...
|
64
|
+
async def async_media_seek(self, position: float) -> None: ...
|
65
|
+
async def async_mute_volume(self, mute: bool) -> None: ...
|
66
|
+
async def async_set_volume_level(self, volume: float) -> None: ...
|
67
|
+
async def async_volume_up(self) -> None: ...
|
68
|
+
async def async_volume_down(self) -> None: ...
|
69
|
+
async def async_turn_on(self) -> None: ...
|
70
|
+
async def async_turn_off(self) -> None: ...
|
71
|
+
async def async_set_shuffle(self, shuffle: bool) -> None: ...
|
72
|
+
async def async_set_repeat(self, repeat: RepeatMode) -> None: ...
|
73
|
+
async def async_clear_playlist(self) -> None: ...
|
74
|
+
async def async_play_media(self, media_type: MediaType | str, media_id: str, enqueue: MediaPlayerEnqueue | None = None, announce: bool | None = None, **kwargs: Any) -> None: ...
|
75
|
+
async def async_join_players(self, group_members: list[str]) -> None: ...
|
76
|
+
async def async_unjoin_player(self) -> None: ...
|
77
|
+
async def _async_handle_play_media(self, media_id: list[str], artist: str | None = None, album: str | None = None, enqueue: MediaPlayerEnqueue | QueueOption | None = None, radio_mode: bool | None = None, media_type: str | None = None) -> None: ...
|
78
|
+
async def _async_handle_play_announcement(self, url: str, use_pre_announce: bool | None = None, announce_volume: int | None = None) -> None: ...
|
79
|
+
async def _async_handle_transfer_queue(self, source_player: str | None = None, auto_play: bool | None = None) -> None: ...
|
80
|
+
async def async_browse_media(self, media_content_type: MediaType | str | None = None, media_content_id: str | None = None) -> BrowseMedia: ...
|
81
|
+
_attr_media_image_url: Incomplete
|
82
|
+
def _update_media_image_url(self, player: Player, queue: PlayerQueue | None) -> None: ...
|
83
|
+
_attr_media_artist: Incomplete
|
84
|
+
_attr_media_album_artist: Incomplete
|
85
|
+
_attr_media_album_name: Incomplete
|
86
|
+
_attr_media_title: Incomplete
|
87
|
+
_attr_media_content_id: Incomplete
|
88
|
+
_attr_media_duration: Incomplete
|
89
|
+
_attr_media_position: Incomplete
|
90
|
+
_attr_media_position_updated_at: Incomplete
|
91
|
+
_attr_app_id: Incomplete
|
92
|
+
_attr_shuffle: Incomplete
|
93
|
+
_attr_repeat: Incomplete
|
94
|
+
_attr_source: Incomplete
|
95
|
+
def _update_media_attributes(self, player: Player, queue: PlayerQueue | None) -> None: ...
|
96
|
+
def _convert_queueoption_to_media_player_enqueue(self, queue_option: MediaPlayerEnqueue | QueueOption | None) -> QueueOption | None: ...
|
@@ -0,0 +1,19 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER, SUPPORT_EMAIL as SUPPORT_EMAIL
|
2
|
+
from .coordinator import NASwebCoordinator as NASwebCoordinator
|
3
|
+
from .nasweb_data import NASwebData as NASwebData
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
|
+
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, Platform as Platform
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
|
+
from homeassistant.exceptions import ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady
|
9
|
+
from homeassistant.helpers.network import NoURLAvailableError as NoURLAvailableError
|
10
|
+
from homeassistant.util.hass_dict import HassKey as HassKey
|
11
|
+
|
12
|
+
PLATFORMS: list[Platform]
|
13
|
+
NASWEB_CONFIG_URL: str
|
14
|
+
_LOGGER: Incomplete
|
15
|
+
type NASwebConfigEntry = ConfigEntry[NASwebCoordinator]
|
16
|
+
DATA_NASWEB: HassKey[NASwebData]
|
17
|
+
|
18
|
+
async def async_setup_entry(hass: HomeAssistant, entry: NASwebConfigEntry) -> bool: ...
|
19
|
+
async def async_unload_entry(hass: HomeAssistant, entry: NASwebConfigEntry) -> bool: ...
|
@@ -0,0 +1,27 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import NASwebCoordinator as NASwebCoordinator
|
3
|
+
from .nasweb_data import NASwebData as NASwebData
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from homeassistant import config_entries as config_entries
|
6
|
+
from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult
|
7
|
+
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_USERNAME as CONF_USERNAME
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
|
+
from homeassistant.data_entry_flow import AbortFlow as AbortFlow
|
10
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
11
|
+
from homeassistant.helpers.network import NoURLAvailableError as NoURLAvailableError
|
12
|
+
from typing import Any
|
13
|
+
|
14
|
+
NASWEB_SCHEMA_IMG_URL: str
|
15
|
+
_LOGGER: Incomplete
|
16
|
+
STEP_USER_DATA_SCHEMA: Incomplete
|
17
|
+
|
18
|
+
async def validate_input(hass: HomeAssistant, data: dict[str, Any]) -> dict[str, Any]: ...
|
19
|
+
|
20
|
+
class NASwebConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
|
21
|
+
VERSION: int
|
22
|
+
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
23
|
+
|
24
|
+
class CannotConnect(HomeAssistantError): ...
|
25
|
+
class InvalidAuth(HomeAssistantError): ...
|
26
|
+
class MissingNASwebData(HomeAssistantError): ...
|
27
|
+
class MissingNASwebStatus(HomeAssistantError): ...
|
@@ -0,0 +1,42 @@
|
|
1
|
+
from .const import STATUS_UPDATE_MAX_TIME_INTERVAL as STATUS_UPDATE_MAX_TIME_INTERVAL
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from aiohttp.web import Request as Request, Response
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from datetime import datetime
|
6
|
+
from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HassJob as HassJob, HomeAssistant as HomeAssistant, callback as callback
|
7
|
+
from homeassistant.helpers import event as event
|
8
|
+
from homeassistant.helpers.update_coordinator import BaseDataUpdateCoordinatorProtocol as BaseDataUpdateCoordinatorProtocol
|
9
|
+
from typing import Any
|
10
|
+
from webio_api import WebioAPI as WebioAPI
|
11
|
+
|
12
|
+
_LOGGER: Incomplete
|
13
|
+
|
14
|
+
class NotificationCoordinator:
|
15
|
+
_coordinators: Incomplete
|
16
|
+
def __init__(self) -> None: ...
|
17
|
+
def add_coordinator(self, serial: str, coordinator: NASwebCoordinator) -> None: ...
|
18
|
+
def remove_coordinator(self, serial: str) -> None: ...
|
19
|
+
def has_coordinators(self) -> bool: ...
|
20
|
+
async def check_connection(self, serial: str) -> bool: ...
|
21
|
+
async def handle_webhook_request(self, hass: HomeAssistant, webhook_id: str, request: Request) -> Response | None: ...
|
22
|
+
|
23
|
+
class NASwebCoordinator(BaseDataUpdateCoordinatorProtocol):
|
24
|
+
_hass: Incomplete
|
25
|
+
name: Incomplete
|
26
|
+
webio_api: Incomplete
|
27
|
+
_last_update: Incomplete
|
28
|
+
_job: Incomplete
|
29
|
+
_unsub_last_update_check: Incomplete
|
30
|
+
_listeners: Incomplete
|
31
|
+
def __init__(self, hass: HomeAssistant, webio_api: WebioAPI, name: str = 'NASweb[default]') -> None: ...
|
32
|
+
def is_connection_confirmed(self) -> bool: ...
|
33
|
+
def async_add_listener(self, update_callback: CALLBACK_TYPE, context: Any = None) -> Callable[[], None]: ...
|
34
|
+
data: Incomplete
|
35
|
+
last_update: Incomplete
|
36
|
+
def async_set_updated_data(self, data: dict[str, Any]) -> None: ...
|
37
|
+
def async_update_listeners(self) -> None: ...
|
38
|
+
async def _handle_max_update_interval(self, now: datetime) -> None: ...
|
39
|
+
def _schedule_last_update_check(self) -> None: ...
|
40
|
+
def _async_unsub_last_update_check(self) -> None: ...
|
41
|
+
async def handle_push_notification(self, notification: dict) -> None: ...
|
42
|
+
async def process_status_update(self, new_status: dict) -> None: ...
|
@@ -0,0 +1,20 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN, WEBHOOK_URL as WEBHOOK_URL
|
2
|
+
from .coordinator import NotificationCoordinator as NotificationCoordinator
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from dataclasses import dataclass
|
5
|
+
from homeassistant.components.webhook import async_generate_id as async_generate_id
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
+
from homeassistant.helpers.network import get_url as get_url
|
8
|
+
|
9
|
+
_LOGGER: Incomplete
|
10
|
+
|
11
|
+
@dataclass
|
12
|
+
class NASwebData:
|
13
|
+
notify_coordinator: NotificationCoordinator = ...
|
14
|
+
webhook_id = ...
|
15
|
+
def is_initialized(self) -> bool: ...
|
16
|
+
def can_be_deinitialized(self) -> bool: ...
|
17
|
+
def initialize(self, hass: HomeAssistant) -> None: ...
|
18
|
+
def deinitialize(self, hass: HomeAssistant) -> None: ...
|
19
|
+
def get_webhook_url(self, hass: HomeAssistant) -> str: ...
|
20
|
+
def __init__(self, notify_coordinator=...) -> None: ...
|
@@ -0,0 +1,35 @@
|
|
1
|
+
from . import NASwebConfigEntry as NASwebConfigEntry
|
2
|
+
from .const import DOMAIN as DOMAIN, STATUS_UPDATE_MAX_TIME_INTERVAL as STATUS_UPDATE_MAX_TIME_INTERVAL
|
3
|
+
from .coordinator import NASwebCoordinator as NASwebCoordinator
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from homeassistant.components.switch import SwitchEntity as SwitchEntity
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
|
+
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
8
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
+
from homeassistant.helpers.typing import DiscoveryInfoType as DiscoveryInfoType
|
10
|
+
from homeassistant.helpers.update_coordinator import BaseCoordinatorEntity as BaseCoordinatorEntity, BaseDataUpdateCoordinatorProtocol as BaseDataUpdateCoordinatorProtocol
|
11
|
+
from typing import Any
|
12
|
+
from webio_api import Output as NASwebOutput
|
13
|
+
|
14
|
+
OUTPUT_TRANSLATION_KEY: str
|
15
|
+
_LOGGER: Incomplete
|
16
|
+
|
17
|
+
def _get_output(coordinator: NASwebCoordinator, index: int) -> NASwebOutput | None: ...
|
18
|
+
async def async_setup_entry(hass: HomeAssistant, config: NASwebConfigEntry, async_add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
|
19
|
+
|
20
|
+
class RelaySwitch(SwitchEntity, BaseCoordinatorEntity):
|
21
|
+
_output: Incomplete
|
22
|
+
_attr_icon: str
|
23
|
+
_attr_has_entity_name: bool
|
24
|
+
_attr_translation_key: Incomplete
|
25
|
+
_attr_translation_placeholders: Incomplete
|
26
|
+
_attr_unique_id: Incomplete
|
27
|
+
_attr_device_info: Incomplete
|
28
|
+
def __init__(self, coordinator: BaseDataUpdateCoordinatorProtocol, nasweb_output: NASwebOutput) -> None: ...
|
29
|
+
async def async_added_to_hass(self) -> None: ...
|
30
|
+
_attr_is_on: Incomplete
|
31
|
+
_attr_available: bool
|
32
|
+
def _handle_coordinator_update(self) -> None: ...
|
33
|
+
async def async_update(self) -> None: ...
|
34
|
+
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
35
|
+
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
@@ -7,7 +7,7 @@ from collections.abc import Awaitable, Callable as Callable
|
|
7
7
|
from google_nest_sdm.camera_traits import CameraLiveStreamTrait, RtspStream as RtspStream, WebRtcStream as WebRtcStream
|
8
8
|
from google_nest_sdm.device import Device as Device
|
9
9
|
from google_nest_sdm.device_manager import DeviceManager as DeviceManager
|
10
|
-
from homeassistant.components.camera import Camera as Camera, CameraEntityFeature as CameraEntityFeature,
|
10
|
+
from homeassistant.components.camera import Camera as Camera, CameraEntityFeature as CameraEntityFeature, WebRTCAnswer as WebRTCAnswer, WebRTCClientConfiguration as WebRTCClientConfiguration, WebRTCSendMessage as WebRTCSendMessage
|
11
11
|
from homeassistant.components.stream import CONF_EXTRA_PART_WAIT_TIME as CONF_EXTRA_PART_WAIT_TIME
|
12
12
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
13
13
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
@@ -15,7 +15,7 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
15
15
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
16
16
|
from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time
|
17
17
|
from homeassistant.util.dt import utcnow as utcnow
|
18
|
-
from webrtc_models import
|
18
|
+
from webrtc_models import RTCIceCandidateInit as RTCIceCandidateInit
|
19
19
|
|
20
20
|
_LOGGER: Incomplete
|
21
21
|
PLACEHOLDER: Incomplete
|
@@ -68,14 +68,12 @@ class NestWebRTCEntity(NestCameraBaseEntity):
|
|
68
68
|
_webrtc_sessions: Incomplete
|
69
69
|
_refresh_unsub: Incomplete
|
70
70
|
def __init__(self, device: Device) -> None: ...
|
71
|
-
@property
|
72
|
-
def frontend_stream_type(self) -> StreamType | None: ...
|
73
71
|
async def _async_refresh_stream(self, session_id: str) -> datetime.datetime | None: ...
|
74
72
|
async def async_camera_image(self, width: int | None = None, height: int | None = None) -> bytes | None: ...
|
75
73
|
@classmethod
|
76
74
|
def placeholder_image(cls) -> bytes: ...
|
77
75
|
async def async_handle_async_webrtc_offer(self, offer_sdp: str, session_id: str, send_message: WebRTCSendMessage) -> None: ...
|
78
|
-
async def async_on_webrtc_candidate(self, session_id: str, candidate:
|
76
|
+
async def async_on_webrtc_candidate(self, session_id: str, candidate: RTCIceCandidateInit) -> None: ...
|
79
77
|
def close_webrtc_session(self, session_id: str) -> None: ...
|
80
78
|
def _async_get_webrtc_client_configuration(self) -> WebRTCClientConfiguration: ...
|
81
79
|
async def async_will_remove_from_hass(self) -> None: ...
|
@@ -25,7 +25,6 @@ class NetatmoFlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, dom
|
|
25
25
|
async def async_oauth_create_entry(self, data: dict) -> ConfigFlowResult: ...
|
26
26
|
|
27
27
|
class NetatmoOptionsFlowHandler(OptionsFlow):
|
28
|
-
config_entry: Incomplete
|
29
28
|
options: Incomplete
|
30
29
|
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
31
30
|
async def async_step_init(self, user_input: dict | None = None) -> ConfigFlowResult: ...
|
@@ -1,8 +1,8 @@
|
|
1
1
|
from .const import ATTR_DELTA as ATTR_DELTA, ATTR_DEVICE as ATTR_DEVICE, ATTR_DIRECTION as ATTR_DIRECTION, DOMAIN as DOMAIN
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from homeassistant.components.sensor import SensorEntity as SensorEntity
|
3
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity
|
4
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
|
-
from homeassistant.const import ATTR_DATE as ATTR_DATE
|
5
|
+
from homeassistant.const import ATTR_DATE as ATTR_DATE, UnitOfBloodGlucoseConcentration as UnitOfBloodGlucoseConcentration
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
7
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
8
8
|
from py_nightscout import Api as NightscoutAPI
|
@@ -14,7 +14,8 @@ DEFAULT_NAME: str
|
|
14
14
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
15
15
|
|
16
16
|
class NightscoutSensor(SensorEntity):
|
17
|
-
|
17
|
+
_attr_device_class: Incomplete
|
18
|
+
_attr_native_unit_of_measurement: Incomplete
|
18
19
|
_attr_icon: str
|
19
20
|
api: Incomplete
|
20
21
|
_attr_unique_id: Incomplete
|
@@ -0,0 +1,9 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
|
2
|
+
from .coordinator import NordPoolDataUpdateCoordinator as NordPoolDataUpdateCoordinator
|
3
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
4
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
5
|
+
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
6
|
+
|
7
|
+
type NordPoolConfigEntry = ConfigEntry[NordPoolDataUpdateCoordinator]
|
8
|
+
async def async_setup_entry(hass: HomeAssistant, entry: NordPoolConfigEntry) -> bool: ...
|
9
|
+
async def async_unload_entry(hass: HomeAssistant, entry: NordPoolConfigEntry) -> bool: ...
|
@@ -0,0 +1,19 @@
|
|
1
|
+
from .const import CONF_AREAS as CONF_AREAS, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
4
|
+
from homeassistant.const import CONF_CURRENCY as CONF_CURRENCY
|
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.selector import SelectOptionDict as SelectOptionDict, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode
|
8
|
+
from typing import Any
|
9
|
+
|
10
|
+
SELECT_AREAS: Incomplete
|
11
|
+
SELECT_CURRENCY: Incomplete
|
12
|
+
DATA_SCHEMA: Incomplete
|
13
|
+
|
14
|
+
async def test_api(hass: HomeAssistant, user_input: dict[str, Any]) -> dict[str, str]: ...
|
15
|
+
|
16
|
+
class NordpoolConfigFlow(ConfigFlow, domain=DOMAIN):
|
17
|
+
VERSION: int
|
18
|
+
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
19
|
+
async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -0,0 +1,20 @@
|
|
1
|
+
from . import NordPoolConfigEntry as NordPoolConfigEntry
|
2
|
+
from .const import CONF_AREAS as CONF_AREAS, DOMAIN as DOMAIN, LOGGER as LOGGER
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from datetime import datetime
|
6
|
+
from homeassistant.const import CONF_CURRENCY as CONF_CURRENCY
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
9
|
+
from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time
|
10
|
+
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
|
11
|
+
from pynordpool import DeliveryPeriodData
|
12
|
+
|
13
|
+
class NordPoolDataUpdateCoordinator(DataUpdateCoordinator[DeliveryPeriodData]):
|
14
|
+
config_entry: NordPoolConfigEntry
|
15
|
+
client: Incomplete
|
16
|
+
unsub: Incomplete
|
17
|
+
def __init__(self, hass: HomeAssistant, config_entry: NordPoolConfigEntry) -> None: ...
|
18
|
+
def get_next_interval(self, now: datetime) -> datetime: ...
|
19
|
+
async def async_shutdown(self) -> None: ...
|
20
|
+
async def fetch_data(self, now: datetime) -> None: ...
|
@@ -0,0 +1,14 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import NordPoolDataUpdateCoordinator as NordPoolDataUpdateCoordinator
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
5
|
+
from homeassistant.helpers.entity import EntityDescription as EntityDescription
|
6
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
7
|
+
|
8
|
+
class NordpoolBaseEntity(CoordinatorEntity[NordPoolDataUpdateCoordinator]):
|
9
|
+
_attr_has_entity_name: bool
|
10
|
+
entity_description: Incomplete
|
11
|
+
_attr_unique_id: Incomplete
|
12
|
+
area: Incomplete
|
13
|
+
_attr_device_info: Incomplete
|
14
|
+
def __init__(self, coordinator: NordPoolDataUpdateCoordinator, entity_description: EntityDescription, area: str) -> None: ...
|
@@ -0,0 +1,69 @@
|
|
1
|
+
from . import NordPoolConfigEntry as NordPoolConfigEntry
|
2
|
+
from .const import LOGGER as LOGGER
|
3
|
+
from .coordinator import NordPoolDataUpdateCoordinator as NordPoolDataUpdateCoordinator
|
4
|
+
from .entity import NordpoolBaseEntity as NordpoolBaseEntity
|
5
|
+
from _typeshed import Incomplete
|
6
|
+
from collections.abc import Callable as Callable
|
7
|
+
from dataclasses import dataclass
|
8
|
+
from datetime import datetime
|
9
|
+
from homeassistant.components.sensor import EntityCategory as EntityCategory, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
10
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
11
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
12
|
+
from homeassistant.util import slugify as slugify
|
13
|
+
from pynordpool import DeliveryPeriodData as DeliveryPeriodData
|
14
|
+
|
15
|
+
PARALLEL_UPDATES: int
|
16
|
+
|
17
|
+
def get_prices(data: DeliveryPeriodData) -> dict[str, tuple[float, float, float]]: ...
|
18
|
+
def get_blockprices(data: DeliveryPeriodData) -> dict[str, dict[str, tuple[datetime, datetime, float, float, float]]]: ...
|
19
|
+
|
20
|
+
@dataclass(frozen=True, kw_only=True)
|
21
|
+
class NordpoolDefaultSensorEntityDescription(SensorEntityDescription):
|
22
|
+
value_fn: Callable[[DeliveryPeriodData], str | float | datetime | None]
|
23
|
+
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: ...
|
24
|
+
|
25
|
+
@dataclass(frozen=True, kw_only=True)
|
26
|
+
class NordpoolPricesSensorEntityDescription(SensorEntityDescription):
|
27
|
+
value_fn: Callable[[tuple[float, float, float]], float | None]
|
28
|
+
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: ...
|
29
|
+
|
30
|
+
@dataclass(frozen=True, kw_only=True)
|
31
|
+
class NordpoolBlockPricesSensorEntityDescription(SensorEntityDescription):
|
32
|
+
value_fn: Callable[[tuple[datetime, datetime, float, float, float]], float | datetime | None]
|
33
|
+
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: ...
|
34
|
+
|
35
|
+
DEFAULT_SENSOR_TYPES: tuple[NordpoolDefaultSensorEntityDescription, ...]
|
36
|
+
PRICES_SENSOR_TYPES: tuple[NordpoolPricesSensorEntityDescription, ...]
|
37
|
+
BLOCK_PRICES_SENSOR_TYPES: tuple[NordpoolBlockPricesSensorEntityDescription, ...]
|
38
|
+
DAILY_AVERAGE_PRICES_SENSOR_TYPES: tuple[SensorEntityDescription, ...]
|
39
|
+
|
40
|
+
async def async_setup_entry(hass: HomeAssistant, entry: NordPoolConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
41
|
+
|
42
|
+
class NordpoolSensor(NordpoolBaseEntity, SensorEntity):
|
43
|
+
entity_description: NordpoolDefaultSensorEntityDescription
|
44
|
+
@property
|
45
|
+
def native_value(self) -> str | float | datetime | None: ...
|
46
|
+
|
47
|
+
class NordpoolPriceSensor(NordpoolBaseEntity, SensorEntity):
|
48
|
+
entity_description: NordpoolPricesSensorEntityDescription
|
49
|
+
_attr_native_unit_of_measurement: Incomplete
|
50
|
+
def __init__(self, coordinator: NordPoolDataUpdateCoordinator, entity_description: NordpoolPricesSensorEntityDescription, area: str, currency: str) -> None: ...
|
51
|
+
@property
|
52
|
+
def native_value(self) -> float | None: ...
|
53
|
+
|
54
|
+
class NordpoolBlockPriceSensor(NordpoolBaseEntity, SensorEntity):
|
55
|
+
entity_description: NordpoolBlockPricesSensorEntityDescription
|
56
|
+
_attr_native_unit_of_measurement: Incomplete
|
57
|
+
_attr_unique_id: Incomplete
|
58
|
+
block_name: Incomplete
|
59
|
+
_attr_translation_placeholders: Incomplete
|
60
|
+
def __init__(self, coordinator: NordPoolDataUpdateCoordinator, entity_description: NordpoolBlockPricesSensorEntityDescription, area: str, currency: str, block_name: str) -> None: ...
|
61
|
+
@property
|
62
|
+
def native_value(self) -> float | datetime | None: ...
|
63
|
+
|
64
|
+
class NordpoolDailyAveragePriceSensor(NordpoolBaseEntity, SensorEntity):
|
65
|
+
entity_description: SensorEntityDescription
|
66
|
+
_attr_native_unit_of_measurement: Incomplete
|
67
|
+
def __init__(self, coordinator: NordPoolDataUpdateCoordinator, entity_description: SensorEntityDescription, area: str, currency: str) -> None: ...
|
68
|
+
@property
|
69
|
+
def native_value(self) -> float | None: ...
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
2
|
from enum import StrEnum
|
3
|
-
from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_BILLION as CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS as SIGNAL_STRENGTH_DECIBELS, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfApparentPower as UnitOfApparentPower, UnitOfConductivity as UnitOfConductivity, UnitOfDataRate as UnitOfDataRate, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfFrequency as UnitOfFrequency, UnitOfInformation as UnitOfInformation, UnitOfIrradiance as UnitOfIrradiance, UnitOfLength as UnitOfLength, UnitOfMass as UnitOfMass, UnitOfPower as UnitOfPower, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfReactivePower as UnitOfReactivePower, UnitOfSoundPressure as UnitOfSoundPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate, UnitOfVolumetricFlux as UnitOfVolumetricFlux
|
3
|
+
from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_BILLION as CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS as SIGNAL_STRENGTH_DECIBELS, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfApparentPower as UnitOfApparentPower, UnitOfArea as UnitOfArea, UnitOfBloodGlucoseConcentration as UnitOfBloodGlucoseConcentration, UnitOfConductivity as UnitOfConductivity, UnitOfDataRate as UnitOfDataRate, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfFrequency as UnitOfFrequency, UnitOfInformation as UnitOfInformation, UnitOfIrradiance as UnitOfIrradiance, UnitOfLength as UnitOfLength, UnitOfMass as UnitOfMass, UnitOfPower as UnitOfPower, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfReactivePower as UnitOfReactivePower, UnitOfSoundPressure as UnitOfSoundPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate, UnitOfVolumetricFlux as UnitOfVolumetricFlux
|
4
4
|
from homeassistant.helpers.deprecation import DeprecatedConstantEnum as DeprecatedConstantEnum, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
|
5
5
|
from homeassistant.util.unit_conversion import BaseUnitConverter as BaseUnitConverter, TemperatureConverter as TemperatureConverter, VolumeFlowRateConverter as VolumeFlowRateConverter
|
6
6
|
from typing import Final
|
@@ -28,8 +28,10 @@ _DEPRECATED_MODE_SLIDER: Final[Incomplete]
|
|
28
28
|
class NumberDeviceClass(StrEnum):
|
29
29
|
APPARENT_POWER = 'apparent_power'
|
30
30
|
AQI = 'aqi'
|
31
|
+
AREA = 'area'
|
31
32
|
ATMOSPHERIC_PRESSURE = 'atmospheric_pressure'
|
32
33
|
BATTERY = 'battery'
|
34
|
+
BLOOD_GLUCOSE_CONCENTRATION = 'blood_glucose_concentration'
|
33
35
|
CO = 'carbon_monoxide'
|
34
36
|
CO2 = 'carbon_dioxide'
|
35
37
|
CONDUCTIVITY = 'conductivity'
|
@@ -32,8 +32,11 @@ def _unique_id_from_status(status: dict[str, str]) -> str | None: ...
|
|
32
32
|
class NUTDeviceInfo:
|
33
33
|
manufacturer: str | None = ...
|
34
34
|
model: str | None = ...
|
35
|
+
model_id: str | None = ...
|
35
36
|
firmware: str | None = ...
|
36
|
-
|
37
|
+
serial: str | None = ...
|
38
|
+
device_location: str | None = ...
|
39
|
+
def __init__(self, manufacturer=..., model=..., model_id=..., firmware=..., serial=..., device_location=...) -> None: ...
|
37
40
|
|
38
41
|
class PyNUTData:
|
39
42
|
_host: Incomplete
|
@@ -36,6 +36,4 @@ class NutConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
36
36
|
def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: ...
|
37
37
|
|
38
38
|
class OptionsFlowHandler(OptionsFlow):
|
39
|
-
config_entry: Incomplete
|
40
|
-
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
41
39
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -2,7 +2,7 @@ from . import NutConfigEntry as NutConfigEntry, PyNUTData as PyNUTData
|
|
2
2
|
from .const import DOMAIN as DOMAIN, KEY_STATUS as KEY_STATUS, KEY_STATUS_DISPLAY as KEY_STATUS_DISPLAY, STATE_TYPES as STATE_TYPES
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
5
|
-
from homeassistant.const import ATTR_MANUFACTURER as ATTR_MANUFACTURER, ATTR_MODEL as ATTR_MODEL, ATTR_SW_VERSION as ATTR_SW_VERSION, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, STATE_UNKNOWN as STATE_UNKNOWN, UnitOfApparentPower as UnitOfApparentPower, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfFrequency as UnitOfFrequency, UnitOfPower as UnitOfPower, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime
|
5
|
+
from homeassistant.const import ATTR_MANUFACTURER as ATTR_MANUFACTURER, ATTR_MODEL as ATTR_MODEL, ATTR_SERIAL_NUMBER as ATTR_SERIAL_NUMBER, ATTR_SW_VERSION as ATTR_SW_VERSION, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, STATE_UNKNOWN as STATE_UNKNOWN, UnitOfApparentPower as UnitOfApparentPower, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfFrequency as UnitOfFrequency, UnitOfPower as UnitOfPower, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
7
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
8
8
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from .const import DEFAULT_HOST as DEFAULT_HOST, DEFAULT_PORT as DEFAULT_PORT, DEVICE_SUPPORT_OPTIONS as DEVICE_SUPPORT_OPTIONS, DOMAIN as DOMAIN, INPUT_ENTRY_CLEAR_OPTIONS as INPUT_ENTRY_CLEAR_OPTIONS, INPUT_ENTRY_DEVICE_SELECTION as INPUT_ENTRY_DEVICE_SELECTION, OPTION_ENTRY_DEVICE_OPTIONS as OPTION_ENTRY_DEVICE_OPTIONS, OPTION_ENTRY_SENSOR_PRECISION as OPTION_ENTRY_SENSOR_PRECISION, PRECISION_MAPPING_FAMILY_28 as PRECISION_MAPPING_FAMILY_28
|
2
2
|
from .onewirehub import CannotConnect as CannotConnect, OneWireHub as OneWireHub
|
3
3
|
from _typeshed import Incomplete
|
4
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
|
5
5
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PORT as CONF_PORT
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
7
|
from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
|
@@ -19,10 +19,12 @@ class OneWireFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
19
19
|
@staticmethod
|
20
20
|
def async_get_options_flow(config_entry: ConfigEntry) -> OnewireOptionsFlowHandler: ...
|
21
21
|
|
22
|
-
class OnewireOptionsFlowHandler(
|
22
|
+
class OnewireOptionsFlowHandler(OptionsFlow):
|
23
23
|
configurable_devices: dict[str, str]
|
24
24
|
devices_to_configure: dict[str, str]
|
25
25
|
current_device: str
|
26
|
+
options: Incomplete
|
27
|
+
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
26
28
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
27
29
|
async def async_step_device_selection(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
28
30
|
async def async_step_configure_device(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from .const import CONF_RECEIVER_MAX_VOLUME as CONF_RECEIVER_MAX_VOLUME, CONF_SOURCES as CONF_SOURCES, DOMAIN as DOMAIN, InputSource as InputSource, OPTION_INPUT_SOURCES as OPTION_INPUT_SOURCES, OPTION_MAX_VOLUME as OPTION_MAX_VOLUME, OPTION_MAX_VOLUME_DEFAULT as OPTION_MAX_VOLUME_DEFAULT, OPTION_VOLUME_RESOLUTION as OPTION_VOLUME_RESOLUTION, OPTION_VOLUME_RESOLUTION_DEFAULT as OPTION_VOLUME_RESOLUTION_DEFAULT, VOLUME_RESOLUTION_ALLOWED as VOLUME_RESOLUTION_ALLOWED
|
2
2
|
from .receiver import ReceiverInfo as ReceiverInfo, async_discover as async_discover, async_interview as async_interview
|
3
3
|
from _typeshed import Incomplete
|
4
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow,
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
|
5
5
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME
|
6
6
|
from homeassistant.core import callback as callback
|
7
7
|
from homeassistant.helpers.selector import NumberSelector as NumberSelector, NumberSelectorConfig as NumberSelectorConfig, NumberSelectorMode as NumberSelectorMode, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode, Selector as Selector, TextSelector as TextSelector
|
@@ -25,6 +25,7 @@ class OnkyoConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
25
25
|
@staticmethod
|
26
26
|
def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: ...
|
27
27
|
|
28
|
-
class OnkyoOptionsFlowHandler(
|
28
|
+
class OnkyoOptionsFlowHandler(OptionsFlow):
|
29
|
+
_input_sources: Incomplete
|
29
30
|
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
30
31
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -22,7 +22,6 @@ class OpenAIConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
22
22
|
def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: ...
|
23
23
|
|
24
24
|
class OpenAIOptionsFlow(OptionsFlow):
|
25
|
-
config_entry: Incomplete
|
26
25
|
last_rendered_recommended: Incomplete
|
27
26
|
def __init__(self, config_entry: ConfigEntry) -> None: ...
|
28
27
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|