homeassistant-stubs 2024.10.3__py3-none-any.whl → 2024.11.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/auth/__init__.pyi +8 -5
- homeassistant-stubs/auth/mfa_modules/notify.pyi +1 -0
- homeassistant-stubs/auth/models.pyi +8 -5
- homeassistant-stubs/auth/permissions/types.pyi +7 -0
- homeassistant-stubs/auth/permissions/util.pyi +2 -0
- homeassistant-stubs/auth/providers/__init__.pyi +5 -4
- homeassistant-stubs/auth/providers/command_line.pyi +2 -2
- homeassistant-stubs/auth/providers/homeassistant.pyi +2 -2
- homeassistant-stubs/auth/providers/insecure_example.pyi +2 -3
- homeassistant-stubs/auth/providers/trusted_networks.pyi +5 -2
- homeassistant-stubs/bootstrap.pyi +1 -0
- homeassistant-stubs/components/abode/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/accuweather/__init__.pyi +1 -9
- homeassistant-stubs/components/accuweather/coordinator.pyi +11 -2
- homeassistant-stubs/components/accuweather/diagnostics.pyi +1 -1
- homeassistant-stubs/components/accuweather/sensor.pyi +1 -2
- homeassistant-stubs/components/accuweather/system_health.pyi +1 -1
- homeassistant-stubs/components/accuweather/weather.pyi +1 -2
- homeassistant-stubs/components/acmeda/__init__.pyi +1 -0
- homeassistant-stubs/components/adguard/__init__.pyi +1 -0
- homeassistant-stubs/components/adguard/config_flow.pyi +1 -1
- homeassistant-stubs/components/aftership/__init__.pyi +2 -0
- homeassistant-stubs/components/airgradient/__init__.pyi +1 -0
- homeassistant-stubs/components/airgradient/update.pyi +0 -2
- homeassistant-stubs/components/airly/__init__.pyi +1 -0
- homeassistant-stubs/components/airnow/__init__.pyi +1 -0
- homeassistant-stubs/components/airthings/__init__.pyi +3 -0
- homeassistant-stubs/components/airthings_ble/__init__.pyi +2 -11
- homeassistant-stubs/components/airthings_ble/coordinator.pyi +21 -0
- homeassistant-stubs/components/airthings_ble/sensor.pyi +1 -1
- homeassistant-stubs/components/airtouch5/__init__.pyi +2 -1
- homeassistant-stubs/components/airvisual/__init__.pyi +1 -0
- homeassistant-stubs/components/airvisual/config_flow.pyi +1 -1
- homeassistant-stubs/components/airvisual_pro/__init__.pyi +1 -0
- homeassistant-stubs/components/airvisual_pro/config_flow.pyi +2 -3
- homeassistant-stubs/components/airzone/__init__.pyi +1 -0
- homeassistant-stubs/components/airzone/switch.pyi +33 -0
- homeassistant-stubs/components/airzone_cloud/__init__.pyi +1 -0
- homeassistant-stubs/components/airzone_cloud/select.pyi +10 -2
- homeassistant-stubs/components/airzone_cloud/switch.pyi +33 -0
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +13 -6
- homeassistant-stubs/components/alarm_control_panel/const.pyi +12 -0
- homeassistant-stubs/components/alarm_control_panel/device_condition.pyi +2 -2
- homeassistant-stubs/components/alarm_control_panel/device_trigger.pyi +2 -2
- homeassistant-stubs/components/alarm_control_panel/reproduce_state.pyi +2 -2
- homeassistant-stubs/components/alexa/capabilities.pyi +2 -2
- homeassistant-stubs/components/alexa/handlers.pyi +2 -2
- homeassistant-stubs/components/amberelectric/__init__.pyi +1 -0
- homeassistant-stubs/components/ambient_network/__init__.pyi +1 -0
- homeassistant-stubs/components/ambient_station/__init__.pyi +1 -0
- homeassistant-stubs/components/analytics/__init__.pyi +2 -0
- homeassistant-stubs/components/analytics/analytics.pyi +1 -0
- homeassistant-stubs/components/analytics_insights/__init__.pyi +1 -0
- homeassistant-stubs/components/analytics_insights/config_flow.pyi +1 -1
- homeassistant-stubs/components/analytics_insights/const.pyi +1 -0
- homeassistant-stubs/components/analytics_insights/coordinator.pyi +8 -2
- homeassistant-stubs/components/analytics_insights/sensor.pyi +4 -0
- homeassistant-stubs/components/android_ip_webcam/__init__.pyi +3 -5
- homeassistant-stubs/components/android_ip_webcam/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/android_ip_webcam/camera.pyi +2 -3
- homeassistant-stubs/components/android_ip_webcam/coordinator.pyi +3 -2
- homeassistant-stubs/components/android_ip_webcam/sensor.pyi +2 -4
- homeassistant-stubs/components/android_ip_webcam/switch.pyi +2 -4
- homeassistant-stubs/components/androidtv/__init__.pyi +3 -1
- homeassistant-stubs/components/androidtv/config_flow.pyi +2 -1
- homeassistant-stubs/components/androidtv/const.pyi +2 -1
- homeassistant-stubs/components/androidtv/entity.pyi +5 -2
- homeassistant-stubs/components/androidtv/media_player.pyi +5 -6
- homeassistant-stubs/components/androidtv_remote/config_flow.pyi +5 -7
- homeassistant-stubs/components/anova/__init__.pyi +2 -1
- homeassistant-stubs/components/anova/config_flow.pyi +2 -1
- homeassistant-stubs/components/anova/models.pyi +1 -0
- homeassistant-stubs/components/anthemav/__init__.pyi +2 -0
- homeassistant-stubs/components/apache_kafka/__init__.pyi +1 -1
- homeassistant-stubs/components/apcupsd/__init__.pyi +1 -0
- homeassistant-stubs/components/apple_tv/__init__.pyi +1 -0
- homeassistant-stubs/components/apple_tv/config_flow.pyi +5 -1
- homeassistant-stubs/components/apsystems/__init__.pyi +1 -0
- homeassistant-stubs/components/apsystems/sensor.pyi +2 -2
- homeassistant-stubs/components/aquostv/media_player.pyi +1 -1
- homeassistant-stubs/components/aranet/__init__.pyi +3 -3
- homeassistant-stubs/components/aranet/sensor.pyi +4 -4
- homeassistant-stubs/components/arcam_fmj/__init__.pyi +1 -0
- homeassistant-stubs/components/arcam_fmj/config_flow.pyi +2 -0
- homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -1
- homeassistant-stubs/components/aseko_pool_live/__init__.pyi +4 -6
- homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/aseko_pool_live/config_flow.pyi +2 -3
- homeassistant-stubs/components/aseko_pool_live/coordinator.pyi +2 -0
- homeassistant-stubs/components/aseko_pool_live/sensor.pyi +2 -4
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +2 -1
- homeassistant-stubs/components/asuswrt/__init__.pyi +1 -0
- homeassistant-stubs/components/asuswrt/bridge.pyi +4 -2
- homeassistant-stubs/components/autarco/__init__.pyi +1 -0
- homeassistant-stubs/components/auth/__init__.pyi +5 -0
- homeassistant-stubs/components/auth/login_flow.pyi +1 -1
- homeassistant-stubs/components/auth/mfa_setup_flow.pyi +4 -2
- homeassistant-stubs/components/automation/__init__.pyi +0 -14
- homeassistant-stubs/components/awair/__init__.pyi +4 -6
- homeassistant-stubs/components/awair/config_flow.pyi +1 -0
- homeassistant-stubs/components/awair/coordinator.pyi +1 -0
- homeassistant-stubs/components/awair/sensor.pyi +2 -2
- homeassistant-stubs/components/axis/__init__.pyi +1 -0
- homeassistant-stubs/components/axis/config_flow.pyi +2 -2
- homeassistant-stubs/components/backup/__init__.pyi +2 -2
- homeassistant-stubs/components/backup/const.pyi +3 -0
- homeassistant-stubs/components/backup/http.pyi +1 -1
- homeassistant-stubs/components/backup/manager.pyi +25 -11
- homeassistant-stubs/components/backup/websocket.pyi +2 -2
- homeassistant-stubs/components/baf/__init__.pyi +2 -0
- homeassistant-stubs/components/bang_olufsen/__init__.pyi +3 -2
- homeassistant-stubs/components/bang_olufsen/const.pyi +3 -2
- homeassistant-stubs/components/bang_olufsen/media_player.pyi +14 -6
- homeassistant-stubs/components/bang_olufsen/websocket.pyi +1 -0
- homeassistant-stubs/components/binary_sensor/__init__.pyi +0 -3
- homeassistant-stubs/components/blue_current/__init__.pyi +4 -3
- homeassistant-stubs/components/blue_current/config_flow.pyi +1 -2
- homeassistant-stubs/components/blue_current/sensor.pyi +2 -3
- homeassistant-stubs/components/blueprint/__init__.pyi +2 -2
- homeassistant-stubs/components/bluesound/__init__.pyi +2 -1
- homeassistant-stubs/components/bluesound/const.pyi +0 -4
- homeassistant-stubs/components/bluesound/media_player.pyi +6 -14
- homeassistant-stubs/components/bluesound/services.pyi +21 -0
- homeassistant-stubs/components/bluetooth/active_update_coordinator.pyi +1 -1
- homeassistant-stubs/components/bluetooth/active_update_processor.pyi +1 -1
- homeassistant-stubs/components/bluetooth/match.pyi +1 -1
- homeassistant-stubs/components/bluetooth/models.pyi +4 -0
- homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +4 -4
- homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +4 -2
- homeassistant-stubs/components/bond/__init__.pyi +1 -0
- homeassistant-stubs/components/braviatv/config_flow.pyi +1 -2
- homeassistant-stubs/components/braviatv/coordinator.pyi +1 -1
- homeassistant-stubs/components/brother/__init__.pyi +1 -0
- homeassistant-stubs/components/brother/config_flow.pyi +2 -4
- homeassistant-stubs/components/bryant_evolution/__init__.pyi +2 -0
- homeassistant-stubs/components/bryant_evolution/config_flow.pyi +1 -4
- homeassistant-stubs/components/bthome/config_flow.pyi +1 -1
- homeassistant-stubs/components/bthome/coordinator.pyi +1 -1
- homeassistant-stubs/components/bthome/types.pyi +2 -0
- homeassistant-stubs/components/button/__init__.pyi +0 -3
- homeassistant-stubs/components/calendar/trigger.pyi +3 -1
- homeassistant-stubs/components/cambridge_audio/__init__.pyi +14 -0
- homeassistant-stubs/components/cambridge_audio/config_flow.pyi +14 -0
- homeassistant-stubs/components/cambridge_audio/const.pyi +9 -0
- homeassistant-stubs/components/cambridge_audio/diagnostics.pyi +5 -0
- homeassistant-stubs/components/cambridge_audio/entity.pyi +21 -0
- homeassistant-stubs/components/cambridge_audio/media_player.pyi +71 -0
- homeassistant-stubs/components/cambridge_audio/select.pyi +34 -0
- homeassistant-stubs/components/cambridge_audio/switch.pyi +30 -0
- homeassistant-stubs/components/camera/__init__.pyi +39 -22
- homeassistant-stubs/components/camera/const.pyi +1 -2
- homeassistant-stubs/components/camera/diagnostics.pyi +1 -1
- homeassistant-stubs/components/camera/helper.pyi +6 -0
- homeassistant-stubs/components/camera/webrtc.pyi +96 -0
- homeassistant-stubs/components/canary/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/canary/sensor.pyi +1 -0
- homeassistant-stubs/components/cert_expiry/__init__.pyi +1 -0
- homeassistant-stubs/components/climate/__init__.pyi +0 -24
- homeassistant-stubs/components/cloud/client.pyi +5 -1
- homeassistant-stubs/components/cloud/const.pyi +1 -0
- homeassistant-stubs/components/cloud/http_api.pyi +2 -2
- homeassistant-stubs/components/cloud/prefs.pyi +4 -2
- homeassistant-stubs/components/co2signal/__init__.pyi +1 -0
- homeassistant-stubs/components/co2signal/config_flow.pyi +1 -2
- homeassistant-stubs/components/config/automation.pyi +1 -1
- homeassistant-stubs/components/config/script.pyi +1 -1
- homeassistant-stubs/components/config/view.pyi +2 -2
- homeassistant-stubs/components/configurator/__init__.pyi +2 -0
- homeassistant-stubs/components/counter/__init__.pyi +1 -1
- homeassistant-stubs/components/cover/__init__.pyi +12 -8
- homeassistant-stubs/components/cover/device_condition.pyi +2 -2
- homeassistant-stubs/components/cover/device_trigger.pyi +2 -2
- homeassistant-stubs/components/cover/reproduce_state.pyi +2 -2
- homeassistant-stubs/components/date/__init__.pyi +0 -4
- homeassistant-stubs/components/datetime/__init__.pyi +0 -4
- homeassistant-stubs/components/deako/__init__.pyi +2 -0
- homeassistant-stubs/components/deconz/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/deconz/binary_sensor.pyi +10 -1
- homeassistant-stubs/components/deconz/config_flow.pyi +1 -1
- homeassistant-stubs/components/deconz/device_trigger.pyi +4 -0
- homeassistant-stubs/components/deconz/entity.pyi +6 -2
- homeassistant-stubs/components/deconz/light.pyi +1 -1
- homeassistant-stubs/components/deconz/number.pyi +3 -1
- homeassistant-stubs/components/demo/alarm_control_panel.pyi +2 -1
- homeassistant-stubs/components/demo/update.pyi +5 -2
- homeassistant-stubs/components/derivative/sensor.pyi +1 -4
- homeassistant-stubs/components/device_automation/__init__.pyi +2 -0
- homeassistant-stubs/components/device_tracker/config_entry.pyi +0 -10
- homeassistant-stubs/components/device_tracker/legacy.pyi +0 -2
- homeassistant-stubs/components/devolo_home_control/__init__.pyi +2 -0
- homeassistant-stubs/components/devolo_home_control/config_flow.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/__init__.pyi +4 -2
- homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/config_flow.pyi +4 -1
- homeassistant-stubs/components/devolo_home_network/coordinator.pyi +13 -0
- homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +4 -3
- homeassistant-stubs/components/devolo_home_network/entity.pyi +8 -3
- homeassistant-stubs/components/devolo_home_network/image.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/sensor.pyi +9 -10
- homeassistant-stubs/components/devolo_home_network/switch.pyi +6 -6
- homeassistant-stubs/components/devolo_home_network/update.pyi +3 -3
- homeassistant-stubs/components/diagnostics/util.pyi +1 -1
- homeassistant-stubs/components/discovergy/__init__.pyi +1 -0
- homeassistant-stubs/components/discovergy/config_flow.pyi +2 -2
- homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -0
- homeassistant-stubs/components/dlna_dmr/media_player.pyi +1 -1
- homeassistant-stubs/components/dlna_dms/dms.pyi +1 -3
- homeassistant-stubs/components/doorbird/config_flow.pyi +1 -1
- homeassistant-stubs/components/doorbird/device.pyi +0 -6
- homeassistant-stubs/components/doorbird/models.pyi +1 -0
- homeassistant-stubs/components/dormakaba_dkey/config_flow.pyi +1 -2
- homeassistant-stubs/components/dsmr/__init__.pyi +1 -0
- homeassistant-stubs/components/duotecno/entity.pyi +1 -1
- homeassistant-stubs/components/ecovacs/__init__.pyi +1 -0
- homeassistant-stubs/components/ecowitt/__init__.pyi +2 -0
- homeassistant-stubs/components/efergy/__init__.pyi +2 -0
- homeassistant-stubs/components/electric_kiwi/config_flow.pyi +1 -4
- homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
- homeassistant-stubs/components/elgato/__init__.pyi +1 -0
- homeassistant-stubs/components/elkm1/__init__.pyi +1 -0
- homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/elkm1/config_flow.pyi +3 -1
- homeassistant-stubs/components/energy/data.pyi +1 -0
- homeassistant-stubs/components/energy/types.pyi +2 -0
- homeassistant-stubs/components/energy/websocket_api.pyi +3 -0
- homeassistant-stubs/components/enigma2/__init__.pyi +1 -0
- homeassistant-stubs/components/enigma2/config_flow.pyi +0 -2
- homeassistant-stubs/components/enigma2/media_player.pyi +1 -6
- homeassistant-stubs/components/enphase_envoy/__init__.pyi +3 -1
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +4 -6
- homeassistant-stubs/components/enphase_envoy/const.pyi +2 -0
- homeassistant-stubs/components/enphase_envoy/coordinator.pyi +1 -0
- homeassistant-stubs/components/esphome/alarm_control_panel.pyi +5 -6
- homeassistant-stubs/components/esphome/assist_satellite.pyi +1 -1
- homeassistant-stubs/components/esphome/config_flow.pyi +6 -5
- homeassistant-stubs/components/esphome/entity.pyi +3 -3
- homeassistant-stubs/components/esphome/entry_data.pyi +1 -0
- homeassistant-stubs/components/esphome/enum_mapper.pyi +1 -1
- homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +7 -3
- homeassistant-stubs/components/esphome/update.pyi +3 -1
- homeassistant-stubs/components/event/__init__.pyi +0 -3
- homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
- homeassistant-stubs/components/evohome/climate.pyi +2 -3
- homeassistant-stubs/components/evohome/entity.pyi +1 -1
- homeassistant-stubs/components/fan/__init__.pyi +0 -8
- homeassistant-stubs/components/fastdotcom/__init__.pyi +1 -1
- homeassistant-stubs/components/feedreader/__init__.pyi +1 -0
- homeassistant-stubs/components/feedreader/config_flow.pyi +1 -3
- homeassistant-stubs/components/feedreader/event.pyi +1 -0
- homeassistant-stubs/components/filesize/__init__.pyi +1 -0
- homeassistant-stubs/components/fitbit/api.pyi +1 -1
- homeassistant-stubs/components/fitbit/config_flow.pyi +1 -2
- homeassistant-stubs/components/flexit_bacnet/sensor.pyi +2 -1
- homeassistant-stubs/components/flux_led/config_flow.pyi +3 -1
- homeassistant-stubs/components/forecast_solar/__init__.pyi +1 -0
- homeassistant-stubs/components/fritz/config_flow.pyi +5 -5
- homeassistant-stubs/components/fritz/update.pyi +1 -1
- homeassistant-stubs/components/fritzbox/climate.pyi +1 -0
- homeassistant-stubs/components/fritzbox/config_flow.pyi +5 -6
- homeassistant-stubs/components/fritzbox/coordinator.pyi +1 -0
- homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +2 -1
- homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +5 -0
- homeassistant-stubs/components/fronius/__init__.pyi +2 -1
- homeassistant-stubs/components/fronius/config_flow.pyi +1 -2
- homeassistant-stubs/components/fronius/const.pyi +1 -0
- homeassistant-stubs/components/fronius/coordinator.pyi +1 -1
- homeassistant-stubs/components/frontend/__init__.pyi +0 -3
- homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +1 -0
- homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +1 -2
- homeassistant-stubs/components/fully_kiosk/config_flow.pyi +1 -0
- homeassistant-stubs/components/fyta/__init__.pyi +1 -0
- homeassistant-stubs/components/fyta/config_flow.pyi +0 -2
- homeassistant-stubs/components/fyta/coordinator.pyi +6 -1
- homeassistant-stubs/components/geo_location/__init__.pyi +0 -5
- homeassistant-stubs/components/gios/__init__.pyi +1 -0
- homeassistant-stubs/components/glances/__init__.pyi +1 -0
- homeassistant-stubs/components/glances/config_flow.pyi +1 -2
- homeassistant-stubs/components/go2rtc/__init__.pyi +41 -0
- homeassistant-stubs/components/go2rtc/config_flow.pyi +7 -0
- homeassistant-stubs/components/go2rtc/const.pyi +7 -0
- homeassistant-stubs/components/go2rtc/server.pyi +44 -0
- homeassistant-stubs/components/goalzero/config_flow.pyi +1 -2
- homeassistant-stubs/components/goalzero/coordinator.pyi +1 -0
- homeassistant-stubs/components/google/__init__.pyi +1 -1
- homeassistant-stubs/components/google/api.pyi +2 -2
- homeassistant-stubs/components/google/calendar.pyi +6 -5
- homeassistant-stubs/components/google/config_flow.pyi +2 -3
- homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +1 -2
- homeassistant-stubs/components/google_photos/config_flow.pyi +2 -3
- homeassistant-stubs/components/google_photos/types.pyi +2 -0
- homeassistant-stubs/components/google_sheets/__init__.pyi +1 -0
- homeassistant-stubs/components/google_sheets/config_flow.pyi +1 -3
- homeassistant-stubs/components/govee_ble/__init__.pyi +11 -0
- homeassistant-stubs/components/govee_ble/binary_sensor.pyi +22 -0
- homeassistant-stubs/components/govee_ble/config_flow.pyi +16 -0
- homeassistant-stubs/components/govee_ble/const.pyi +2 -0
- homeassistant-stubs/components/govee_ble/coordinator.pyi +24 -0
- homeassistant-stubs/components/govee_ble/device.pyi +4 -0
- homeassistant-stubs/components/govee_ble/event.pyi +27 -0
- homeassistant-stubs/components/govee_ble/sensor.pyi +25 -0
- homeassistant-stubs/components/gpsd/__init__.pyi +2 -0
- homeassistant-stubs/components/greeneye_monitor/sensor.pyi +1 -0
- homeassistant-stubs/components/group/cover.pyi +2 -2
- homeassistant-stubs/components/group/registry.pyi +2 -1
- homeassistant-stubs/components/group/sensor.pyi +10 -11
- homeassistant-stubs/components/guardian/config_flow.pyi +0 -1
- homeassistant-stubs/components/guardian/util.pyi +1 -1
- homeassistant-stubs/components/hardkernel/__init__.pyi +2 -1
- homeassistant-stubs/components/here_travel_time/config_flow.pyi +4 -5
- homeassistant-stubs/components/history_stats/__init__.pyi +1 -0
- homeassistant-stubs/components/history_stats/coordinator.pyi +2 -1
- homeassistant-stubs/components/history_stats/sensor.pyi +2 -1
- homeassistant-stubs/components/holiday/config_flow.pyi +1 -3
- homeassistant-stubs/components/homeassistant/__init__.pyi +1 -0
- homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +2 -1
- homeassistant-stubs/components/homeassistant/triggers/time.pyi +7 -1
- homeassistant-stubs/components/homeassistant_alerts/coordinator.pyi +2 -1
- homeassistant-stubs/components/homeassistant_green/__init__.pyi +2 -1
- homeassistant-stubs/components/homeassistant_green/config_flow.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/util.pyi +2 -1
- homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +3 -3
- homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +2 -1
- homeassistant-stubs/components/homekit/__init__.pyi +0 -1
- homeassistant-stubs/components/homekit/models.pyi +1 -0
- homeassistant-stubs/components/homekit/type_covers.pyi +2 -2
- homeassistant-stubs/components/homekit/type_security_systems.pyi +2 -2
- homeassistant-stubs/components/homekit_controller/alarm_control_panel.pyi +4 -4
- homeassistant-stubs/components/homekit_controller/config_flow.pyi +4 -1
- homeassistant-stubs/components/homekit_controller/utils.pyi +1 -0
- homeassistant-stubs/components/homewizard/__init__.pyi +1 -0
- homeassistant-stubs/components/homewizard/config_flow.pyi +1 -2
- homeassistant-stubs/components/homewizard/helpers.pyi +1 -1
- homeassistant-stubs/components/homewizard/sensor.pyi +1 -1
- homeassistant-stubs/components/homeworks/config_flow.pyi +2 -5
- homeassistant-stubs/components/http/ban.pyi +2 -1
- homeassistant-stubs/components/http/data_validator.pyi +1 -1
- homeassistant-stubs/components/http/decorators.pyi +7 -4
- homeassistant-stubs/components/huawei_lte/config_flow.pyi +2 -0
- homeassistant-stubs/components/huawei_lte/device_tracker.pyi +1 -0
- homeassistant-stubs/components/humidifier/__init__.pyi +0 -10
- homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
- homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/husqvarna_automower/button.pyi +1 -3
- homeassistant-stubs/components/husqvarna_automower/config_flow.pyi +2 -3
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +5 -4
- homeassistant-stubs/components/husqvarna_automower/number.pyi +8 -8
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +24 -3
- homeassistant-stubs/components/husqvarna_automower/switch.pyi +2 -5
- homeassistant-stubs/components/hydrawise/config_flow.pyi +1 -4
- homeassistant-stubs/components/hyperion/config_flow.pyi +1 -0
- homeassistant-stubs/components/ibeacon/__init__.pyi +1 -0
- homeassistant-stubs/components/image/__init__.pyi +7 -6
- homeassistant-stubs/components/imap/__init__.pyi +1 -0
- homeassistant-stubs/components/imap/config_flow.pyi +1 -2
- homeassistant-stubs/components/imgw_pib/__init__.pyi +1 -0
- homeassistant-stubs/components/intent/__init__.pyi +5 -0
- homeassistant-stubs/components/intent/timers.pyi +1 -2
- homeassistant-stubs/components/iotty/__init__.pyi +1 -0
- homeassistant-stubs/components/iotty/coordinator.pyi +1 -1
- homeassistant-stubs/components/ipp/__init__.pyi +1 -0
- homeassistant-stubs/components/islamic_prayer_times/__init__.pyi +1 -0
- homeassistant-stubs/components/jellyfin/__init__.pyi +2 -2
- homeassistant-stubs/components/jellyfin/config_flow.pyi +0 -1
- homeassistant-stubs/components/jellyfin/coordinator.pyi +8 -15
- homeassistant-stubs/components/jellyfin/entity.pyi +22 -7
- homeassistant-stubs/components/jellyfin/media_player.pyi +6 -18
- homeassistant-stubs/components/jellyfin/remote.pyi +19 -0
- homeassistant-stubs/components/jellyfin/sensor.pyi +10 -8
- homeassistant-stubs/components/jewish_calendar/config_flow.pyi +1 -0
- homeassistant-stubs/components/jvc_projector/__init__.pyi +1 -0
- homeassistant-stubs/components/jvc_projector/config_flow.pyi +1 -2
- homeassistant-stubs/components/knocki/__init__.pyi +1 -0
- homeassistant-stubs/components/knx/__init__.pyi +0 -1
- homeassistant-stubs/components/knx/climate.pyi +2 -0
- homeassistant-stubs/components/knx/const.pyi +4 -0
- homeassistant-stubs/components/knx/notify.pyi +3 -15
- homeassistant-stubs/components/knx/schema.pyi +1 -0
- homeassistant-stubs/components/knx/storage/config_store.pyi +2 -2
- homeassistant-stubs/components/knx/websocket.pyi +4 -1
- homeassistant-stubs/components/kraken/const.pyi +1 -0
- homeassistant-stubs/components/lacrosse_view/config_flow.pyi +1 -2
- homeassistant-stubs/components/lamarzocco/__init__.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/button.pyi +3 -1
- homeassistant-stubs/components/lamarzocco/calendar.pyi +1 -2
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -5
- homeassistant-stubs/components/lamarzocco/coordinator.pyi +5 -4
- homeassistant-stubs/components/lamarzocco/diagnostics.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/number.pyi +3 -2
- homeassistant-stubs/components/lamarzocco/select.pyi +5 -1
- homeassistant-stubs/components/lamarzocco/sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/switch.pyi +3 -2
- homeassistant-stubs/components/lamarzocco/update.pyi +3 -2
- homeassistant-stubs/components/lametric/config_flow.pyi +1 -2
- homeassistant-stubs/components/lametric/helpers.pyi +1 -1
- homeassistant-stubs/components/lawn_mower/__init__.pyi +0 -3
- homeassistant-stubs/components/lcn/__init__.pyi +2 -2
- homeassistant-stubs/components/lcn/binary_sensor.pyi +3 -0
- homeassistant-stubs/components/lcn/config_flow.pyi +2 -5
- homeassistant-stubs/components/lcn/const.pyi +1 -0
- homeassistant-stubs/components/lcn/helpers.pyi +4 -0
- homeassistant-stubs/components/lcn/sensor.pyi +4 -1
- homeassistant-stubs/components/lcn/switch.pyi +24 -1
- homeassistant-stubs/components/lcn/websocket.pyi +3 -1
- homeassistant-stubs/components/lektrico/__init__.pyi +1 -0
- homeassistant-stubs/components/lektrico/switch.pyi +31 -0
- homeassistant-stubs/components/lidarr/__init__.pyi +4 -2
- homeassistant-stubs/components/lidarr/config_flow.pyi +1 -5
- homeassistant-stubs/components/lidarr/coordinator.pyi +4 -1
- homeassistant-stubs/components/lifx/config_flow.pyi +3 -1
- homeassistant-stubs/components/lifx/coordinator.pyi +0 -6
- homeassistant-stubs/components/light/__init__.pyi +0 -15
- homeassistant-stubs/components/linear_garage_door/config_flow.pyi +1 -2
- homeassistant-stubs/components/linear_garage_door/coordinator.pyi +1 -1
- homeassistant-stubs/components/linkplay/__init__.pyi +2 -1
- homeassistant-stubs/components/linkplay/const.pyi +4 -0
- homeassistant-stubs/components/linkplay/media_player.pyi +12 -4
- homeassistant-stubs/components/litterrobot/__init__.pyi +1 -0
- homeassistant-stubs/components/litterrobot/vacuum.pyi +0 -1
- homeassistant-stubs/components/local_todo/__init__.pyi +1 -0
- homeassistant-stubs/components/lock/__init__.pyi +0 -10
- homeassistant-stubs/components/logbook/models.pyi +0 -7
- homeassistant-stubs/components/lookin/coordinator.pyi +1 -1
- homeassistant-stubs/components/madvr/__init__.pyi +1 -0
- homeassistant-stubs/components/madvr/config_flow.pyi +2 -5
- homeassistant-stubs/components/manual/alarm_control_panel.pyi +19 -10
- homeassistant-stubs/components/mastodon/__init__.pyi +1 -0
- homeassistant-stubs/components/mastodon/config_flow.pyi +2 -0
- homeassistant-stubs/components/matter/api.pyi +1 -1
- homeassistant-stubs/components/matter/climate.pyi +1 -0
- homeassistant-stubs/components/matter/config_flow.pyi +3 -1
- homeassistant-stubs/components/matter/entity.pyi +2 -2
- homeassistant-stubs/components/matter/fan.pyi +1 -0
- homeassistant-stubs/components/matter/light.pyi +1 -0
- homeassistant-stubs/components/matter/lock.pyi +1 -0
- homeassistant-stubs/components/matter/models.pyi +2 -0
- homeassistant-stubs/components/matter/select.pyi +2 -0
- homeassistant-stubs/components/matter/switch.pyi +1 -0
- homeassistant-stubs/components/matter/update.pyi +1 -0
- homeassistant-stubs/components/matter/vacuum.pyi +47 -0
- homeassistant-stubs/components/matter/valve.pyi +1 -0
- homeassistant-stubs/components/media_player/__init__.pyi +0 -33
- homeassistant-stubs/components/mikrotik/__init__.pyi +1 -0
- homeassistant-stubs/components/mikrotik/config_flow.pyi +0 -1
- homeassistant-stubs/components/modbus/__init__.pyi +1 -1
- homeassistant-stubs/components/modbus/const.pyi +0 -2
- homeassistant-stubs/components/modbus/cover.pyi +2 -2
- homeassistant-stubs/components/modbus/modbus.pyi +1 -2
- homeassistant-stubs/components/modbus/validators.pyi +1 -1
- homeassistant-stubs/components/mold_indicator/config_flow.pyi +9 -0
- homeassistant-stubs/components/mold_indicator/sensor.pyi +6 -2
- homeassistant-stubs/components/monzo/config_flow.pyi +1 -2
- homeassistant-stubs/components/mopeka/__init__.pyi +1 -0
- homeassistant-stubs/components/mqtt/__init__.pyi +2 -1
- homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +3 -3
- homeassistant-stubs/components/mqtt/client.pyi +4 -0
- homeassistant-stubs/components/mqtt/config_flow.pyi +3 -2
- homeassistant-stubs/components/mqtt/const.pyi +3 -1
- homeassistant-stubs/components/mqtt/cover.pyi +1 -1
- homeassistant-stubs/components/mqtt/discovery.pyi +26 -9
- homeassistant-stubs/components/mqtt/entity.pyi +5 -2
- homeassistant-stubs/components/mqtt/models.pyi +11 -0
- homeassistant-stubs/components/mqtt/schemas.pyi +15 -7
- homeassistant-stubs/components/mqtt/update.pyi +7 -11
- homeassistant-stubs/components/mysensors/const.pyi +6 -1
- homeassistant-stubs/components/myuplink/__init__.pyi +1 -0
- homeassistant-stubs/components/myuplink/config_flow.pyi +1 -2
- homeassistant-stubs/components/myuplink/helpers.pyi +6 -0
- homeassistant-stubs/components/nam/__init__.pyi +1 -0
- homeassistant-stubs/components/nam/config_flow.pyi +4 -7
- homeassistant-stubs/components/nanoleaf/__init__.pyi +1 -0
- homeassistant-stubs/components/nanoleaf/config_flow.pyi +1 -2
- homeassistant-stubs/components/nest/__init__.pyi +1 -1
- homeassistant-stubs/components/nest/api.pyi +5 -3
- homeassistant-stubs/components/nest/camera.pyi +37 -16
- homeassistant-stubs/components/nest/config_flow.pyi +10 -4
- homeassistant-stubs/components/nest/const.pyi +2 -1
- homeassistant-stubs/components/netatmo/climate.pyi +1 -0
- homeassistant-stubs/components/network/websocket.pyi +2 -0
- homeassistant-stubs/components/nextdns/__init__.pyi +1 -0
- homeassistant-stubs/components/nextdns/config_flow.pyi +1 -2
- homeassistant-stubs/components/notify/__init__.pyi +0 -2
- homeassistant-stubs/components/notion/config_flow.pyi +1 -3
- homeassistant-stubs/components/number/__init__.pyi +0 -8
- homeassistant-stubs/components/nut/__init__.pyi +1 -0
- homeassistant-stubs/components/onboarding/views.pyi +1 -0
- homeassistant-stubs/components/oncue/config_flow.pyi +1 -3
- homeassistant-stubs/components/oncue/types.pyi +3 -0
- homeassistant-stubs/components/onewire/__init__.pyi +1 -0
- homeassistant-stubs/components/onkyo/__init__.pyi +25 -0
- homeassistant-stubs/components/onkyo/config_flow.pyi +30 -0
- homeassistant-stubs/components/onkyo/const.pyi +68 -0
- homeassistant-stubs/components/onkyo/media_player.pyi +24 -26
- homeassistant-stubs/components/onkyo/receiver.pyi +23 -3
- homeassistant-stubs/components/onkyo/services.pyi +14 -0
- homeassistant-stubs/components/openai_conversation/__init__.pyi +19 -0
- homeassistant-stubs/components/openai_conversation/config_flow.pyi +30 -0
- homeassistant-stubs/components/openai_conversation/const.pyi +14 -0
- homeassistant-stubs/components/openai_conversation/conversation.pyi +36 -0
- homeassistant-stubs/components/openexchangerates/config_flow.pyi +1 -2
- homeassistant-stubs/components/oralb/__init__.pyi +1 -0
- homeassistant-stubs/components/otbr/__init__.pyi +1 -0
- homeassistant-stubs/components/otbr/config_flow.pyi +2 -1
- homeassistant-stubs/components/otbr/silabs_multiprotocol.pyi +1 -1
- homeassistant-stubs/components/otbr/util.pyi +1 -1
- homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +12 -12
- homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control_zone.pyi +0 -3
- homeassistant-stubs/components/overkiz/config_flow.pyi +1 -2
- homeassistant-stubs/components/p1_monitor/__init__.pyi +3 -2
- homeassistant-stubs/components/p1_monitor/config_flow.pyi +2 -2
- homeassistant-stubs/components/p1_monitor/coordinator.pyi +1 -1
- homeassistant-stubs/components/p1_monitor/diagnostics.pyi +1 -1
- homeassistant-stubs/components/panel_custom/__init__.pyi +28 -0
- homeassistant-stubs/components/pi_hole/__init__.pyi +1 -0
- homeassistant-stubs/components/pi_hole/update.pyi +1 -1
- homeassistant-stubs/components/ping/__init__.pyi +1 -0
- homeassistant-stubs/components/plugwise/__init__.pyi +1 -0
- homeassistant-stubs/components/plugwise/config_flow.pyi +8 -6
- homeassistant-stubs/components/plugwise/const.pyi +4 -1
- homeassistant-stubs/components/plugwise/util.pyi +1 -1
- homeassistant-stubs/components/powerwall/config_flow.pyi +0 -1
- homeassistant-stubs/components/powerwall/models.pyi +1 -0
- homeassistant-stubs/components/private_ble_device/coordinator.pyi +3 -0
- homeassistant-stubs/components/prometheus/__init__.pyi +7 -4
- homeassistant-stubs/components/proximity/coordinator.pyi +1 -0
- homeassistant-stubs/components/purpleair/config_flow.pyi +0 -1
- homeassistant-stubs/components/pvoutput/config_flow.pyi +1 -2
- homeassistant-stubs/components/qnap_qsw/sensor.pyi +8 -2
- homeassistant-stubs/components/radarr/__init__.pyi +1 -0
- homeassistant-stubs/components/radarr/config_flow.pyi +1 -3
- homeassistant-stubs/components/radio_browser/__init__.pyi +10 -0
- homeassistant-stubs/components/radio_browser/config_flow.pyi +8 -0
- homeassistant-stubs/components/radio_browser/const.pyi +5 -0
- homeassistant-stubs/components/radio_browser/media_source.pyi +28 -0
- homeassistant-stubs/components/rainforest_raven/__init__.pyi +3 -5
- homeassistant-stubs/components/rainforest_raven/coordinator.pyi +3 -12
- homeassistant-stubs/components/rainforest_raven/diagnostics.pyi +2 -4
- homeassistant-stubs/components/rainforest_raven/sensor.pyi +4 -5
- homeassistant-stubs/components/rainmachine/__init__.pyi +1 -0
- homeassistant-stubs/components/rainmachine/switch.pyi +1 -1
- homeassistant-stubs/components/rainmachine/update.pyi +7 -1
- homeassistant-stubs/components/raspberry_pi/__init__.pyi +2 -1
- homeassistant-stubs/components/recorder/core.pyi +2 -6
- homeassistant-stubs/components/recorder/migration.pyi +36 -16
- homeassistant-stubs/components/recorder/models/state.pyi +0 -7
- homeassistant-stubs/components/recorder/queries.pyi +1 -0
- homeassistant-stubs/components/recorder/table_managers/__init__.pyi +2 -2
- homeassistant-stubs/components/recorder/util.pyi +10 -5
- homeassistant-stubs/components/remote/__init__.pyi +0 -4
- homeassistant-stubs/components/renault/__init__.pyi +1 -0
- homeassistant-stubs/components/renault/renault_vehicle.pyi +1 -1
- homeassistant-stubs/components/repairs/issue_handler.pyi +1 -1
- homeassistant-stubs/components/rfxtrx/cover.pyi +1 -2
- homeassistant-stubs/components/rfxtrx/entity.pyi +1 -1
- homeassistant-stubs/components/ring/__init__.pyi +1 -0
- homeassistant-stubs/components/ring/config_flow.pyi +5 -2
- homeassistant-stubs/components/ring/coordinator.pyi +1 -1
- homeassistant-stubs/components/ring/entity.pyi +2 -2
- homeassistant-stubs/components/roborock/__init__.pyi +1 -0
- homeassistant-stubs/components/roborock/config_flow.pyi +1 -2
- homeassistant-stubs/components/roborock/coordinator.pyi +0 -5
- homeassistant-stubs/components/roku/browse_media.pyi +2 -0
- homeassistant-stubs/components/roku/helpers.pyi +5 -2
- homeassistant-stubs/components/rtsp_to_webrtc/__init__.pyi +1 -3
- homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +1 -1
- homeassistant-stubs/components/samsungtv/__init__.pyi +2 -2
- homeassistant-stubs/components/samsungtv/bridge.pyi +1 -1
- homeassistant-stubs/components/samsungtv/config_flow.pyi +2 -2
- homeassistant-stubs/components/scrape/__init__.pyi +1 -0
- homeassistant-stubs/components/scrape/coordinator.pyi +2 -1
- homeassistant-stubs/components/script/__init__.pyi +0 -16
- homeassistant-stubs/components/select/__init__.pyi +0 -3
- homeassistant-stubs/components/sensibo/__init__.pyi +1 -0
- homeassistant-stubs/components/sensibo/config_flow.pyi +5 -2
- homeassistant-stubs/components/sensibo/entity.pyi +1 -1
- homeassistant-stubs/components/sensibo/update.pyi +1 -1
- homeassistant-stubs/components/sensor/__init__.pyi +0 -9
- homeassistant-stubs/components/sensor/websocket_api.pyi +3 -0
- homeassistant-stubs/components/sensoterra/__init__.pyi +1 -0
- homeassistant-stubs/components/senz/__init__.pyi +2 -0
- homeassistant-stubs/components/sfr_box/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/sfr_box/button.pyi +1 -1
- homeassistant-stubs/components/sfr_box/config_flow.pyi +1 -2
- homeassistant-stubs/components/sfr_box/coordinator.pyi +1 -1
- homeassistant-stubs/components/sfr_box/sensor.pyi +2 -2
- homeassistant-stubs/components/shell_command/__init__.pyi +13 -0
- homeassistant-stubs/components/shelly/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/shelly/button.pyi +1 -1
- homeassistant-stubs/components/shelly/config_flow.pyi +1 -3
- homeassistant-stubs/components/shelly/const.pyi +1 -1
- homeassistant-stubs/components/shelly/coordinator.pyi +2 -4
- homeassistant-stubs/components/shelly/light.pyi +13 -2
- homeassistant-stubs/components/shelly/number.pyi +1 -1
- homeassistant-stubs/components/shelly/select.pyi +1 -1
- homeassistant-stubs/components/shelly/sensor.pyi +1 -1
- homeassistant-stubs/components/shelly/switch.pyi +10 -1
- homeassistant-stubs/components/shelly/text.pyi +1 -1
- homeassistant-stubs/components/shelly/update.pyi +2 -2
- homeassistant-stubs/components/shelly/utils.pyi +3 -2
- homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/simplisafe/typing.pyi +4 -0
- homeassistant-stubs/components/siren/__init__.pyi +0 -3
- homeassistant-stubs/components/sleepiq/config_flow.pyi +1 -3
- homeassistant-stubs/components/sleepiq/entity.pyi +3 -2
- homeassistant-stubs/components/smhi/config_flow.pyi +1 -3
- homeassistant-stubs/components/smlight/__init__.pyi +1 -0
- homeassistant-stubs/components/smlight/config_flow.pyi +0 -2
- homeassistant-stubs/components/smlight/coordinator.pyi +1 -1
- homeassistant-stubs/components/smlight/update.pyi +4 -2
- homeassistant-stubs/components/solarlog/__init__.pyi +1 -0
- homeassistant-stubs/components/solarlog/config_flow.pyi +1 -4
- homeassistant-stubs/components/solarlog/coordinator.pyi +6 -0
- homeassistant-stubs/components/sonarr/config_flow.pyi +1 -4
- homeassistant-stubs/components/speedtestdotnet/__init__.pyi +2 -1
- homeassistant-stubs/components/spotify/__init__.pyi +5 -0
- homeassistant-stubs/components/spotify/application_credentials.pyi +4 -0
- homeassistant-stubs/components/spotify/browse_media.pyi +49 -0
- homeassistant-stubs/components/spotify/config_flow.pyi +19 -0
- homeassistant-stubs/components/spotify/const.pyi +9 -0
- homeassistant-stubs/components/spotify/coordinator.pyi +34 -0
- homeassistant-stubs/components/spotify/diagnostics.pyi +5 -0
- homeassistant-stubs/components/spotify/entity.pyi +10 -0
- homeassistant-stubs/components/spotify/media_player.pyi +82 -0
- homeassistant-stubs/components/spotify/models.pyi +12 -0
- homeassistant-stubs/components/spotify/sensor.pyi +31 -0
- homeassistant-stubs/components/spotify/system_health.pyi +6 -0
- homeassistant-stubs/components/spotify/util.pyi +7 -0
- homeassistant-stubs/components/squeezebox/__init__.pyi +6 -3
- homeassistant-stubs/components/squeezebox/const.pyi +5 -0
- homeassistant-stubs/components/squeezebox/coordinator.pyi +15 -3
- homeassistant-stubs/components/squeezebox/media_player.pyi +12 -13
- homeassistant-stubs/components/ssdp/__init__.pyi +1 -0
- homeassistant-stubs/components/statistics/config_flow.pyi +8 -2
- homeassistant-stubs/components/statistics/sensor.pyi +20 -22
- homeassistant-stubs/components/steamist/config_flow.pyi +3 -1
- homeassistant-stubs/components/sun/entity.pyi +1 -0
- homeassistant-stubs/components/surepetcare/config_flow.pyi +1 -2
- homeassistant-stubs/components/switch/__init__.pyi +0 -2
- homeassistant-stubs/components/switch_as_x/__init__.pyi +3 -0
- homeassistant-stubs/components/switch_as_x/config_flow.pyi +18 -0
- homeassistant-stubs/components/switch_as_x/const.pyi +5 -0
- homeassistant-stubs/components/switch_as_x/cover.pyi +18 -0
- homeassistant-stubs/components/switch_as_x/entity.pyi +35 -0
- homeassistant-stubs/components/switch_as_x/fan.pyi +17 -0
- homeassistant-stubs/components/switch_as_x/light.pyi +13 -0
- homeassistant-stubs/components/switch_as_x/lock.pyi +17 -0
- homeassistant-stubs/components/switch_as_x/siren.pyi +12 -0
- homeassistant-stubs/components/switch_as_x/valve.pyi +19 -0
- homeassistant-stubs/components/switchbee/entity.pyi +2 -2
- homeassistant-stubs/components/switchbee/switch.pyi +2 -1
- homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
- homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +2 -0
- homeassistant-stubs/components/switchbot_cloud/lock.pyi +18 -0
- homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -0
- homeassistant-stubs/components/switcher_kis/button.pyi +2 -5
- homeassistant-stubs/components/switcher_kis/climate.pyi +2 -5
- homeassistant-stubs/components/switcher_kis/config_flow.pyi +1 -2
- homeassistant-stubs/components/switcher_kis/coordinator.pyi +1 -1
- homeassistant-stubs/components/switcher_kis/cover.pyi +16 -9
- homeassistant-stubs/components/switcher_kis/entity.pyi +9 -0
- homeassistant-stubs/components/switcher_kis/light.pyi +44 -0
- homeassistant-stubs/components/switcher_kis/sensor.pyi +2 -5
- homeassistant-stubs/components/switcher_kis/switch.pyi +2 -5
- homeassistant-stubs/components/synology_dsm/coordinator.pyi +2 -2
- homeassistant-stubs/components/synology_dsm/entity.pyi +2 -1
- homeassistant-stubs/components/synology_dsm/update.pyi +1 -1
- homeassistant-stubs/components/system_log/__init__.pyi +1 -0
- homeassistant-stubs/components/systemmonitor/__init__.pyi +1 -0
- homeassistant-stubs/components/tailscale/config_flow.pyi +1 -2
- homeassistant-stubs/components/tailwind/config_flow.pyi +1 -2
- homeassistant-stubs/components/tailwind/typing.pyi +2 -0
- homeassistant-stubs/components/tautulli/__init__.pyi +1 -0
- homeassistant-stubs/components/technove/helpers.pyi +1 -1
- homeassistant-stubs/components/tedee/__init__.pyi +1 -1
- homeassistant-stubs/components/tedee/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tedee/config_flow.pyi +2 -5
- homeassistant-stubs/components/tedee/coordinator.pyi +5 -5
- homeassistant-stubs/components/tedee/lock.pyi +2 -2
- homeassistant-stubs/components/tedee/sensor.pyi +1 -1
- homeassistant-stubs/components/text/__init__.pyi +0 -6
- homeassistant-stubs/components/thethingsnetwork/config_flow.pyi +1 -2
- homeassistant-stubs/components/thethingsnetwork/sensor.pyi +2 -1
- homeassistant-stubs/components/threshold/binary_sensor.pyi +1 -3
- homeassistant-stubs/components/tibber/sensor.pyi +1 -0
- homeassistant-stubs/components/tile/device_tracker.pyi +3 -6
- homeassistant-stubs/components/time/__init__.pyi +0 -4
- homeassistant-stubs/components/timer/__init__.pyi +1 -1
- homeassistant-stubs/components/tod/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/todo/__init__.pyi +0 -2
- homeassistant-stubs/components/tplink/__init__.pyi +1 -0
- homeassistant-stubs/components/tplink/button.pyi +1 -1
- homeassistant-stubs/components/tplink/config_flow.pyi +5 -3
- homeassistant-stubs/components/tplink/entity.pyi +4 -4
- homeassistant-stubs/components/tplink_omada/__init__.pyi +4 -3
- homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +3 -5
- homeassistant-stubs/components/tplink_omada/const.pyi +11 -0
- homeassistant-stubs/components/tplink_omada/coordinator.pyi +1 -1
- homeassistant-stubs/components/tplink_omada/device_tracker.pyi +3 -4
- homeassistant-stubs/components/tplink_omada/entity.pyi +3 -1
- homeassistant-stubs/components/tplink_omada/sensor.pyi +34 -0
- homeassistant-stubs/components/tplink_omada/switch.pyi +3 -5
- homeassistant-stubs/components/tplink_omada/update.pyi +3 -6
- homeassistant-stubs/components/trace/__init__.pyi +5 -25
- homeassistant-stubs/components/trace/const.pyi +1 -1
- homeassistant-stubs/components/trace/models.pyi +2 -0
- homeassistant-stubs/components/trace/util.pyi +17 -0
- homeassistant-stubs/components/trace/websocket_api.pyi +1 -1
- homeassistant-stubs/components/tractive/__init__.pyi +1 -0
- homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +2 -2
- homeassistant-stubs/components/trafikverket_ferry/config_flow.pyi +1 -2
- homeassistant-stubs/components/trafikverket_train/config_flow.pyi +0 -1
- homeassistant-stubs/components/trafikverket_weatherstation/config_flow.pyi +3 -2
- homeassistant-stubs/components/transmission/__init__.pyi +1 -0
- homeassistant-stubs/components/transmission/config_flow.pyi +1 -2
- homeassistant-stubs/components/trend/binary_sensor.pyi +1 -2
- homeassistant-stubs/components/tts/__init__.pyi +0 -5
- homeassistant-stubs/components/tts/const.pyi +1 -0
- homeassistant-stubs/components/twentemilieu/__init__.pyi +4 -0
- homeassistant-stubs/components/unifi/__init__.pyi +1 -0
- homeassistant-stubs/components/unifi/config_flow.pyi +1 -2
- homeassistant-stubs/components/unifi/device_tracker.pyi +0 -3
- homeassistant-stubs/components/unifi/update.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/camera.pyi +3 -2
- homeassistant-stubs/components/unifiprotect/config_flow.pyi +0 -1
- homeassistant-stubs/components/unifiprotect/data.pyi +2 -0
- homeassistant-stubs/components/update/__init__.pyi +7 -12
- homeassistant-stubs/components/update/const.pyi +2 -0
- homeassistant-stubs/components/vacuum/__init__.pyi +0 -6
- homeassistant-stubs/components/vallox/config_flow.pyi +2 -5
- homeassistant-stubs/components/velbus/entity.pyi +1 -1
- homeassistant-stubs/components/vlc_telnet/__init__.pyi +1 -0
- homeassistant-stubs/components/vlc_telnet/config_flow.pyi +2 -3
- homeassistant-stubs/components/vlc_telnet/media_player.pyi +1 -1
- homeassistant-stubs/components/wallbox/__init__.pyi +1 -1
- homeassistant-stubs/components/wallbox/config_flow.pyi +2 -4
- homeassistant-stubs/components/wallbox/coordinator.pyi +3 -3
- homeassistant-stubs/components/water_heater/__init__.pyi +0 -9
- homeassistant-stubs/components/weather/__init__.pyi +0 -19
- homeassistant-stubs/components/webostv/config_flow.pyi +2 -2
- homeassistant-stubs/components/webostv/media_player.pyi +1 -1
- homeassistant-stubs/components/websocket_api/connection.pyi +3 -0
- homeassistant-stubs/components/websocket_api/const.pyi +4 -1
- homeassistant-stubs/components/wemo/__init__.pyi +4 -1
- homeassistant-stubs/components/wemo/coordinator.pyi +3 -0
- homeassistant-stubs/components/withings/__init__.pyi +4 -2
- homeassistant-stubs/components/withings/config_flow.pyi +1 -2
- homeassistant-stubs/components/withings/coordinator.pyi +7 -2
- homeassistant-stubs/components/withings/entity.pyi +14 -2
- homeassistant-stubs/components/withings/sensor.pyi +19 -4
- homeassistant-stubs/components/wiz/__init__.pyi +1 -0
- homeassistant-stubs/components/wled/__init__.pyi +1 -0
- homeassistant-stubs/components/wled/helpers.pyi +1 -1
- homeassistant-stubs/components/workday/__init__.pyi +13 -0
- homeassistant-stubs/components/workday/binary_sensor.pyi +46 -0
- homeassistant-stubs/components/workday/config_flow.pyi +33 -0
- homeassistant-stubs/components/workday/const.pyi +18 -0
- homeassistant-stubs/components/workday/diagnostics.pyi +5 -0
- homeassistant-stubs/components/workday/repairs.pyi +28 -0
- homeassistant-stubs/components/xiaomi_ble/config_flow.pyi +7 -2
- homeassistant-stubs/components/xiaomi_ble/coordinator.pyi +1 -1
- homeassistant-stubs/components/xiaomi_ble/types.pyi +2 -0
- homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +1 -0
- homeassistant-stubs/components/yale_smart_alarm/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/yale_smart_alarm/binary_sensor.pyi +7 -0
- homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +0 -1
- homeassistant-stubs/components/yale_smart_alarm/const.pyi +2 -1
- homeassistant-stubs/components/yale_smart_alarm/select.pyi +21 -0
- homeassistant-stubs/components/yalexs_ble/__init__.pyi +1 -0
- homeassistant-stubs/components/yalexs_ble/config_flow.pyi +6 -2
- homeassistant-stubs/components/youtube/config_flow.pyi +1 -2
- homeassistant-stubs/components/zwave_js/api.pyi +1 -1
- homeassistant-stubs/components/zwave_js/config_flow.pyi +6 -4
- homeassistant-stubs/components/zwave_js/discovery.pyi +2 -1
- homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +1 -1
- homeassistant-stubs/components/zwave_js/light.pyi +8 -6
- homeassistant-stubs/components/zwave_js/services.pyi +4 -1
- homeassistant-stubs/components/zwave_js/update.pyi +2 -1
- homeassistant-stubs/config.pyi +3 -24
- homeassistant-stubs/config_entries.pyi +52 -27
- homeassistant-stubs/const.pyi +16 -12
- homeassistant-stubs/core.pyi +40 -109
- homeassistant-stubs/core_config.pyi +108 -0
- homeassistant-stubs/data_entry_flow.pyi +22 -18
- homeassistant-stubs/helpers/area_registry.pyi +6 -8
- homeassistant-stubs/helpers/category_registry.pyi +1 -0
- homeassistant-stubs/helpers/check_config.pyi +2 -1
- homeassistant-stubs/helpers/collection.pyi +6 -4
- homeassistant-stubs/helpers/condition.pyi +1 -0
- homeassistant-stubs/helpers/config_entry_flow.pyi +3 -2
- homeassistant-stubs/helpers/config_validation.pyi +6 -6
- homeassistant-stubs/helpers/data_entry_flow.pyi +1 -1
- homeassistant-stubs/helpers/debounce.pyi +1 -1
- homeassistant-stubs/helpers/deprecation.pyi +9 -4
- homeassistant-stubs/helpers/device_registry.pyi +7 -8
- homeassistant-stubs/helpers/discovery_flow.pyi +5 -5
- homeassistant-stubs/helpers/dispatcher.pyi +9 -8
- homeassistant-stubs/helpers/entity.pyi +2 -31
- homeassistant-stubs/helpers/entity_registry.pyi +7 -9
- homeassistant-stubs/helpers/event.pyi +2 -1
- homeassistant-stubs/helpers/floor_registry.pyi +3 -3
- homeassistant-stubs/helpers/frame.pyi +1 -5
- homeassistant-stubs/helpers/hassio.pyi +4 -0
- homeassistant-stubs/helpers/http.pyi +2 -0
- homeassistant-stubs/helpers/intent.pyi +6 -5
- homeassistant-stubs/helpers/json.pyi +3 -0
- homeassistant-stubs/helpers/label_registry.pyi +3 -3
- homeassistant-stubs/helpers/llm.pyi +1 -2
- homeassistant-stubs/helpers/network.pyi +1 -0
- homeassistant-stubs/helpers/normalized_name_base_registry.pyi +6 -3
- homeassistant-stubs/helpers/ratelimit.pyi +1 -1
- homeassistant-stubs/helpers/redact.pyi +2 -2
- homeassistant-stubs/helpers/registry.pyi +5 -3
- homeassistant-stubs/helpers/script.pyi +3 -7
- homeassistant-stubs/helpers/selector.pyi +1 -1
- homeassistant-stubs/helpers/service.pyi +2 -2
- homeassistant-stubs/helpers/service_info/hassio.pyi +11 -0
- homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -0
- homeassistant-stubs/helpers/significant_change.pyi +3 -0
- homeassistant-stubs/helpers/singleton.pyi +3 -2
- homeassistant-stubs/helpers/storage.pyi +4 -5
- homeassistant-stubs/helpers/sun.pyi +2 -0
- homeassistant-stubs/helpers/system_info.pyi +1 -0
- homeassistant-stubs/helpers/template.pyi +4 -3
- homeassistant-stubs/helpers/trace.pyi +3 -3
- homeassistant-stubs/helpers/typing.pyi +13 -0
- homeassistant-stubs/helpers/update_coordinator.pyi +4 -4
- homeassistant-stubs/loader.pyi +5 -21
- homeassistant-stubs/scripts/benchmark/__init__.pyi +1 -1
- homeassistant-stubs/util/__init__.pyi +1 -1
- homeassistant-stubs/util/async_.pyi +2 -2
- homeassistant-stubs/util/decorator.pyi +2 -1
- homeassistant-stubs/util/dt.pyi +3 -2
- homeassistant-stubs/util/enum.pyi +2 -2
- homeassistant-stubs/util/hass_dict.pyi +17 -17
- homeassistant-stubs/util/json.pyi +3 -0
- homeassistant-stubs/util/limited_size_dict.pyi +1 -1
- homeassistant-stubs/util/logging.pyi +8 -8
- homeassistant-stubs/util/loop.pyi +1 -1
- homeassistant-stubs/util/percentage.pyi +2 -2
- homeassistant-stubs/util/read_only_dict.pyi +1 -1
- homeassistant-stubs/util/signal_type.pyi +3 -3
- homeassistant-stubs/util/timeout.pyi +3 -1
- homeassistant-stubs/util/variance.pyi +3 -3
- homeassistant-stubs/util/yaml/loader.pyi +2 -4
- {homeassistant_stubs-2024.10.3.dist-info → homeassistant_stubs-2024.11.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.10.3.dist-info → homeassistant_stubs-2024.11.0.dist-info}/RECORD +851 -772
- homeassistant-stubs/components/jellyfin/models.pyi +0 -10
- homeassistant-stubs/components/map/__init__.pyi +0 -14
- {homeassistant_stubs-2024.10.3.dist-info → homeassistant_stubs-2024.11.0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2024.10.3.dist-info → homeassistant_stubs-2024.11.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,16 +1,17 @@
|
|
1
1
|
from .abbreviations import ABBREVIATIONS as ABBREVIATIONS, DEVICE_ABBREVIATIONS as DEVICE_ABBREVIATIONS, ORIGIN_ABBREVIATIONS as ORIGIN_ABBREVIATIONS
|
2
2
|
from .client import async_subscribe_internal as async_subscribe_internal
|
3
|
-
from .const import ATTR_DISCOVERY_HASH as ATTR_DISCOVERY_HASH, ATTR_DISCOVERY_PAYLOAD as ATTR_DISCOVERY_PAYLOAD, ATTR_DISCOVERY_TOPIC as ATTR_DISCOVERY_TOPIC, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_ORIGIN as CONF_ORIGIN, CONF_TOPIC as CONF_TOPIC, DOMAIN as DOMAIN, SUPPORTED_COMPONENTS as SUPPORTED_COMPONENTS
|
4
|
-
from .models import DATA_MQTT as DATA_MQTT, MqttOriginInfo as MqttOriginInfo, ReceiveMessage as ReceiveMessage
|
5
|
-
from .schemas import MQTT_ORIGIN_INFO_SCHEMA as MQTT_ORIGIN_INFO_SCHEMA
|
3
|
+
from .const import ATTR_DISCOVERY_HASH as ATTR_DISCOVERY_HASH, ATTR_DISCOVERY_PAYLOAD as ATTR_DISCOVERY_PAYLOAD, ATTR_DISCOVERY_TOPIC as ATTR_DISCOVERY_TOPIC, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_COMPONENTS as CONF_COMPONENTS, CONF_ORIGIN as CONF_ORIGIN, CONF_TOPIC as CONF_TOPIC, DOMAIN as DOMAIN, SUPPORTED_COMPONENTS as SUPPORTED_COMPONENTS
|
4
|
+
from .models import DATA_MQTT as DATA_MQTT, MqttComponentConfig as MqttComponentConfig, MqttOriginInfo as MqttOriginInfo, ReceiveMessage as ReceiveMessage
|
5
|
+
from .schemas import DEVICE_DISCOVERY_SCHEMA as DEVICE_DISCOVERY_SCHEMA, MQTT_ORIGIN_INFO_SCHEMA as MQTT_ORIGIN_INFO_SCHEMA, SHARED_OPTIONS as SHARED_OPTIONS
|
6
6
|
from .util import async_forward_entry_setup_and_setup_discovery as async_forward_entry_setup_and_setup_discovery
|
7
7
|
from _typeshed import Incomplete
|
8
|
-
from
|
8
|
+
from dataclasses import dataclass
|
9
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_MQTT as SOURCE_MQTT, signal_discovered_config_entry_removed as signal_discovered_config_entry_removed
|
9
10
|
from homeassistant.const import CONF_DEVICE as CONF_DEVICE, CONF_PLATFORM as CONF_PLATFORM
|
10
11
|
from homeassistant.core import HassJobType as HassJobType, HomeAssistant as HomeAssistant, callback as callback
|
11
|
-
from homeassistant.
|
12
|
+
from homeassistant.helpers import discovery_flow as discovery_flow
|
12
13
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send as async_dispatcher_send
|
13
|
-
from homeassistant.helpers.service_info.mqtt import MqttServiceInfo as MqttServiceInfo
|
14
|
+
from homeassistant.helpers.service_info.mqtt import MqttServiceInfo as MqttServiceInfo, ReceivePayloadType as ReceivePayloadType
|
14
15
|
from homeassistant.helpers.typing import DiscoveryInfoType as DiscoveryInfoType
|
15
16
|
from homeassistant.loader import async_get_mqtt as async_get_mqtt
|
16
17
|
from homeassistant.util.json import json_loads_object as json_loads_object
|
@@ -26,16 +27,32 @@ MQTT_DISCOVERY_UPDATED: SignalTypeFormat[MQTTDiscoveryPayload]
|
|
26
27
|
MQTT_DISCOVERY_NEW: SignalTypeFormat[MQTTDiscoveryPayload]
|
27
28
|
MQTT_DISCOVERY_DONE: SignalTypeFormat[Any]
|
28
29
|
TOPIC_BASE: str
|
30
|
+
CONF_MIGRATE_DISCOVERY: str
|
31
|
+
MIGRATE_DISCOVERY_SCHEMA: Incomplete
|
29
32
|
|
30
33
|
class MQTTDiscoveryPayload(dict[str, Any]):
|
34
|
+
device_discovery: bool
|
35
|
+
migrate_discovery: bool
|
31
36
|
discovery_data: DiscoveryInfoType
|
32
37
|
|
38
|
+
@dataclass(frozen=True)
|
39
|
+
class MQTTIntegrationDiscoveryConfig:
|
40
|
+
integration: str
|
41
|
+
msg: ReceiveMessage
|
42
|
+
def __init__(self, integration, msg) -> None: ...
|
43
|
+
|
44
|
+
def _async_process_discovery_migration(payload: MQTTDiscoveryPayload) -> bool: ...
|
33
45
|
def clear_discovery_hash(hass: HomeAssistant, discovery_hash: tuple[str, str]) -> None: ...
|
34
46
|
def set_discovery_hash(hass: HomeAssistant, discovery_hash: tuple[str, str]) -> None: ...
|
47
|
+
def get_origin_log_string(discovery_payload: MQTTDiscoveryPayload, *, include_url: bool) -> str: ...
|
48
|
+
def get_origin_support_url(discovery_payload: MQTTDiscoveryPayload) -> str | None: ...
|
35
49
|
def async_log_discovery_origin_info(message: str, discovery_payload: MQTTDiscoveryPayload, level: int = ...) -> None: ...
|
36
|
-
def _replace_abbreviations(payload:
|
37
|
-
def _replace_all_abbreviations(discovery_payload:
|
38
|
-
def _replace_topic_base(discovery_payload:
|
50
|
+
def _replace_abbreviations(payload: dict[str, Any] | str, abbreviations: dict[str, str], abbreviations_set: set[str]) -> None: ...
|
51
|
+
def _replace_all_abbreviations(discovery_payload: dict[str, Any], component_only: bool = False) -> None: ...
|
52
|
+
def _replace_topic_base(discovery_payload: MQTTDiscoveryPayload) -> None: ...
|
53
|
+
def _generate_device_config(hass: HomeAssistant, object_id: str, node_id: str | None, migrate_discovery: bool = False) -> MQTTDiscoveryPayload: ...
|
54
|
+
def _parse_device_payload(hass: HomeAssistant, payload: ReceivePayloadType, object_id: str, node_id: str | None) -> MQTTDiscoveryPayload: ...
|
39
55
|
def _valid_origin_info(discovery_payload: MQTTDiscoveryPayload) -> bool: ...
|
56
|
+
def _merge_common_device_options(component_config: MQTTDiscoveryPayload, device_config: dict[str, Any]) -> None: ...
|
40
57
|
async def async_start(hass: HomeAssistant, discovery_topic: str, config_entry: ConfigEntry) -> None: ...
|
41
58
|
async def async_stop(hass: HomeAssistant) -> None: ...
|
@@ -2,9 +2,9 @@ import abc
|
|
2
2
|
import voluptuous as vol
|
3
3
|
from . import debug_info as debug_info, subscription as subscription
|
4
4
|
from .client import async_publish as async_publish
|
5
|
-
from .const import ATTR_DISCOVERY_HASH as ATTR_DISCOVERY_HASH, ATTR_DISCOVERY_PAYLOAD as ATTR_DISCOVERY_PAYLOAD, ATTR_DISCOVERY_TOPIC as ATTR_DISCOVERY_TOPIC, AVAILABILITY_ALL as AVAILABILITY_ALL, AVAILABILITY_ANY as AVAILABILITY_ANY, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_AVAILABILITY_MODE as CONF_AVAILABILITY_MODE, CONF_AVAILABILITY_TEMPLATE as CONF_AVAILABILITY_TEMPLATE, CONF_AVAILABILITY_TOPIC as CONF_AVAILABILITY_TOPIC, CONF_CONFIGURATION_URL as CONF_CONFIGURATION_URL, CONF_CONNECTIONS as CONF_CONNECTIONS, CONF_ENABLED_BY_DEFAULT as CONF_ENABLED_BY_DEFAULT, CONF_ENCODING as CONF_ENCODING, CONF_HW_VERSION as CONF_HW_VERSION, CONF_IDENTIFIERS as CONF_IDENTIFIERS, CONF_JSON_ATTRS_TEMPLATE as CONF_JSON_ATTRS_TEMPLATE, CONF_JSON_ATTRS_TOPIC as CONF_JSON_ATTRS_TOPIC, CONF_MANUFACTURER as CONF_MANUFACTURER, CONF_OBJECT_ID as CONF_OBJECT_ID, CONF_PAYLOAD_AVAILABLE as CONF_PAYLOAD_AVAILABLE, CONF_PAYLOAD_NOT_AVAILABLE as CONF_PAYLOAD_NOT_AVAILABLE, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, CONF_SCHEMA as CONF_SCHEMA, CONF_SERIAL_NUMBER as CONF_SERIAL_NUMBER, CONF_SUGGESTED_AREA as CONF_SUGGESTED_AREA, CONF_SW_VERSION as CONF_SW_VERSION, CONF_TOPIC as CONF_TOPIC, CONF_VIA_DEVICE as CONF_VIA_DEVICE, DEFAULT_ENCODING as DEFAULT_ENCODING, DOMAIN as DOMAIN, MQTT_CONNECTION_STATE as MQTT_CONNECTION_STATE
|
5
|
+
from .const import ATTR_DISCOVERY_HASH as ATTR_DISCOVERY_HASH, ATTR_DISCOVERY_PAYLOAD as ATTR_DISCOVERY_PAYLOAD, ATTR_DISCOVERY_TOPIC as ATTR_DISCOVERY_TOPIC, AVAILABILITY_ALL as AVAILABILITY_ALL, AVAILABILITY_ANY as AVAILABILITY_ANY, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_AVAILABILITY_MODE as CONF_AVAILABILITY_MODE, CONF_AVAILABILITY_TEMPLATE as CONF_AVAILABILITY_TEMPLATE, CONF_AVAILABILITY_TOPIC as CONF_AVAILABILITY_TOPIC, CONF_CONFIGURATION_URL as CONF_CONFIGURATION_URL, CONF_CONNECTIONS as CONF_CONNECTIONS, CONF_ENABLED_BY_DEFAULT as CONF_ENABLED_BY_DEFAULT, CONF_ENCODING as CONF_ENCODING, CONF_ENTITY_PICTURE as CONF_ENTITY_PICTURE, CONF_HW_VERSION as CONF_HW_VERSION, CONF_IDENTIFIERS as CONF_IDENTIFIERS, CONF_JSON_ATTRS_TEMPLATE as CONF_JSON_ATTRS_TEMPLATE, CONF_JSON_ATTRS_TOPIC as CONF_JSON_ATTRS_TOPIC, CONF_MANUFACTURER as CONF_MANUFACTURER, CONF_OBJECT_ID as CONF_OBJECT_ID, CONF_PAYLOAD_AVAILABLE as CONF_PAYLOAD_AVAILABLE, CONF_PAYLOAD_NOT_AVAILABLE as CONF_PAYLOAD_NOT_AVAILABLE, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, CONF_SCHEMA as CONF_SCHEMA, CONF_SERIAL_NUMBER as CONF_SERIAL_NUMBER, CONF_SUGGESTED_AREA as CONF_SUGGESTED_AREA, CONF_SW_VERSION as CONF_SW_VERSION, CONF_TOPIC as CONF_TOPIC, CONF_VIA_DEVICE as CONF_VIA_DEVICE, DEFAULT_ENCODING as DEFAULT_ENCODING, DOMAIN as DOMAIN, MQTT_CONNECTION_STATE as MQTT_CONNECTION_STATE
|
6
6
|
from .debug_info import log_message as log_message
|
7
|
-
from .discovery import MQTTDiscoveryPayload as MQTTDiscoveryPayload, MQTT_DISCOVERY_DONE as MQTT_DISCOVERY_DONE, MQTT_DISCOVERY_NEW as MQTT_DISCOVERY_NEW, MQTT_DISCOVERY_UPDATED as MQTT_DISCOVERY_UPDATED, clear_discovery_hash as clear_discovery_hash, set_discovery_hash as set_discovery_hash
|
7
|
+
from .discovery import MQTTDiscoveryPayload as MQTTDiscoveryPayload, MQTT_DISCOVERY_DONE as MQTT_DISCOVERY_DONE, MQTT_DISCOVERY_NEW as MQTT_DISCOVERY_NEW, MQTT_DISCOVERY_UPDATED as MQTT_DISCOVERY_UPDATED, clear_discovery_hash as clear_discovery_hash, get_origin_log_string as get_origin_log_string, get_origin_support_url as get_origin_support_url, set_discovery_hash as set_discovery_hash
|
8
8
|
from .models import DATA_MQTT as DATA_MQTT, MessageCallbackType as MessageCallbackType, MqttValueTemplate as MqttValueTemplate, MqttValueTemplateException as MqttValueTemplateException, PublishPayloadType as PublishPayloadType, ReceiveMessage as ReceiveMessage
|
9
9
|
from .subscription import EntitySubscription as EntitySubscription, async_prepare_subscribe_topics as async_prepare_subscribe_topics, async_subscribe_topics_internal as async_subscribe_topics_internal, async_unsubscribe_topics as async_unsubscribe_topics
|
10
10
|
from .util import mqtt_config_entry_enabled as mqtt_config_entry_enabled
|
@@ -89,6 +89,7 @@ class MqttDiscoveryDeviceUpdateMixin(ABC, metaclass=abc.ABCMeta):
|
|
89
89
|
_config_entry: Incomplete
|
90
90
|
_config_entry_id: Incomplete
|
91
91
|
_skip_device_removal: bool
|
92
|
+
_migrate_discovery: Incomplete
|
92
93
|
_remove_discovery_updated: Incomplete
|
93
94
|
_remove_device_updated: Incomplete
|
94
95
|
def __init__(self, hass: HomeAssistant, discovery_data: DiscoveryInfoType, device_id: str | None, config_entry: ConfigEntry, log_name: str) -> None: ...
|
@@ -107,6 +108,7 @@ class MqttDiscoveryUpdateMixin(Entity):
|
|
107
108
|
_remove_discovery_updated: Incomplete
|
108
109
|
_removed_from_hass: bool
|
109
110
|
_registry_hooks: Incomplete
|
111
|
+
_migrate_discovery: Incomplete
|
110
112
|
def __init__(self, hass: HomeAssistant, discovery_data: DiscoveryInfoType | None, discovery_update: Callable[[MQTTDiscoveryPayload], Coroutine[Any, Any, None]] | None = None) -> None: ...
|
111
113
|
async def async_added_to_hass(self) -> None: ...
|
112
114
|
async def _async_remove_state_and_registry_entry(self) -> None: ...
|
@@ -157,6 +159,7 @@ class MqttEntity(MqttAttributesMixin, MqttAvailabilityMixin, MqttDiscoveryUpdate
|
|
157
159
|
_attr_entity_category: Incomplete
|
158
160
|
_attr_entity_registry_enabled_default: Incomplete
|
159
161
|
_attr_icon: Incomplete
|
162
|
+
_attr_entity_picture: Incomplete
|
160
163
|
def _setup_common_attributes_from_config(self, config: ConfigType) -> None: ...
|
161
164
|
def _setup_from_config(self, config: ConfigType) -> None: ...
|
162
165
|
@abstractmethod
|
@@ -7,6 +7,7 @@ from .discovery import MQTTDiscoveryPayload as MQTTDiscoveryPayload
|
|
7
7
|
from .tag import MQTTTagScanner as MQTTTagScanner
|
8
8
|
from _typeshed import Incomplete
|
9
9
|
from collections import deque
|
10
|
+
from collections.abc import Callable
|
10
11
|
from dataclasses import dataclass
|
11
12
|
from enum import StrEnum
|
12
13
|
from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_NAME as ATTR_NAME, Platform as Platform
|
@@ -26,6 +27,7 @@ class PayloadSentinel(StrEnum):
|
|
26
27
|
|
27
28
|
_LOGGER: Incomplete
|
28
29
|
ATTR_THIS: str
|
30
|
+
type PublishPayloadType = str | bytes | int | float | None
|
29
31
|
|
30
32
|
def convert_outgoing_mqtt_payload(payload: PublishPayloadType) -> PublishPayloadType: ...
|
31
33
|
|
@@ -46,6 +48,7 @@ class ReceiveMessage:
|
|
46
48
|
subscribed_topic: str
|
47
49
|
timestamp: float
|
48
50
|
def __init__(self, topic, payload, qos, retain, subscribed_topic, timestamp) -> None: ...
|
51
|
+
type MessageCallbackType = Callable[[ReceiveMessage], None]
|
49
52
|
|
50
53
|
class SubscriptionDebugInfo(TypedDict):
|
51
54
|
messages: deque[ReceiveMessage]
|
@@ -128,5 +131,13 @@ class MqttData:
|
|
128
131
|
tags: dict[str, dict[str, MQTTTagScanner]] = ...
|
129
132
|
def __init__(self, client, config, debug_info_entities=..., debug_info_triggers=..., device_triggers=..., data_config_flow_lock=..., discovery_already_discovered=..., discovery_pending_discovered=..., discovery_registry_hooks=..., discovery_unsubscribe=..., integration_unsubscribe=..., last_discovery=..., platforms_loaded=..., reload_dispatchers=..., reload_handlers=..., reload_schema=..., state_write_requests=..., subscriptions_to_restore=..., tags=...) -> None: ...
|
130
133
|
|
134
|
+
@dataclass(slots=True)
|
135
|
+
class MqttComponentConfig:
|
136
|
+
component: str
|
137
|
+
object_id: str
|
138
|
+
node_id: str | None
|
139
|
+
discovery_payload: MQTTDiscoveryPayload
|
140
|
+
def __init__(self, component, object_id, node_id, discovery_payload) -> None: ...
|
141
|
+
|
131
142
|
DATA_MQTT: HassKey[MqttData]
|
132
143
|
DATA_MQTT_AVAILABLE: HassKey[asyncio.Future[bool]]
|
@@ -1,16 +1,24 @@
|
|
1
|
-
from .const import AVAILABILITY_LATEST as AVAILABILITY_LATEST, AVAILABILITY_MODES as AVAILABILITY_MODES, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_AVAILABILITY_MODE as CONF_AVAILABILITY_MODE, CONF_AVAILABILITY_TEMPLATE as CONF_AVAILABILITY_TEMPLATE, CONF_AVAILABILITY_TOPIC as CONF_AVAILABILITY_TOPIC, CONF_CONFIGURATION_URL as CONF_CONFIGURATION_URL, CONF_CONNECTIONS as CONF_CONNECTIONS, CONF_DEPRECATED_VIA_HUB as CONF_DEPRECATED_VIA_HUB, CONF_ENABLED_BY_DEFAULT as CONF_ENABLED_BY_DEFAULT, CONF_HW_VERSION as CONF_HW_VERSION, CONF_IDENTIFIERS as CONF_IDENTIFIERS, CONF_JSON_ATTRS_TEMPLATE as CONF_JSON_ATTRS_TEMPLATE, CONF_JSON_ATTRS_TOPIC as CONF_JSON_ATTRS_TOPIC, CONF_MANUFACTURER as CONF_MANUFACTURER, CONF_OBJECT_ID as CONF_OBJECT_ID, CONF_ORIGIN as CONF_ORIGIN, CONF_PAYLOAD_AVAILABLE as CONF_PAYLOAD_AVAILABLE, CONF_PAYLOAD_NOT_AVAILABLE as CONF_PAYLOAD_NOT_AVAILABLE, CONF_SERIAL_NUMBER as CONF_SERIAL_NUMBER, CONF_SUGGESTED_AREA as CONF_SUGGESTED_AREA, CONF_SUPPORT_URL as CONF_SUPPORT_URL, CONF_SW_VERSION as CONF_SW_VERSION, CONF_TOPIC as CONF_TOPIC, CONF_VIA_DEVICE as CONF_VIA_DEVICE, DEFAULT_PAYLOAD_AVAILABLE as DEFAULT_PAYLOAD_AVAILABLE, DEFAULT_PAYLOAD_NOT_AVAILABLE as DEFAULT_PAYLOAD_NOT_AVAILABLE
|
2
|
-
from .util import valid_subscribe_topic as valid_subscribe_topic
|
1
|
+
from .const import AVAILABILITY_LATEST as AVAILABILITY_LATEST, AVAILABILITY_MODES as AVAILABILITY_MODES, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_AVAILABILITY_MODE as CONF_AVAILABILITY_MODE, CONF_AVAILABILITY_TEMPLATE as CONF_AVAILABILITY_TEMPLATE, CONF_AVAILABILITY_TOPIC as CONF_AVAILABILITY_TOPIC, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_COMPONENTS as CONF_COMPONENTS, CONF_CONFIGURATION_URL as CONF_CONFIGURATION_URL, CONF_CONNECTIONS as CONF_CONNECTIONS, CONF_DEPRECATED_VIA_HUB as CONF_DEPRECATED_VIA_HUB, CONF_ENABLED_BY_DEFAULT as CONF_ENABLED_BY_DEFAULT, CONF_ENCODING as CONF_ENCODING, CONF_ENTITY_PICTURE as CONF_ENTITY_PICTURE, CONF_HW_VERSION as CONF_HW_VERSION, CONF_IDENTIFIERS as CONF_IDENTIFIERS, CONF_JSON_ATTRS_TEMPLATE as CONF_JSON_ATTRS_TEMPLATE, CONF_JSON_ATTRS_TOPIC as CONF_JSON_ATTRS_TOPIC, CONF_MANUFACTURER as CONF_MANUFACTURER, CONF_OBJECT_ID as CONF_OBJECT_ID, CONF_ORIGIN as CONF_ORIGIN, CONF_PAYLOAD_AVAILABLE as CONF_PAYLOAD_AVAILABLE, CONF_PAYLOAD_NOT_AVAILABLE as CONF_PAYLOAD_NOT_AVAILABLE, CONF_QOS as CONF_QOS, CONF_SERIAL_NUMBER as CONF_SERIAL_NUMBER, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_SUGGESTED_AREA as CONF_SUGGESTED_AREA, CONF_SUPPORT_URL as CONF_SUPPORT_URL, CONF_SW_VERSION as CONF_SW_VERSION, CONF_TOPIC as CONF_TOPIC, CONF_VIA_DEVICE as CONF_VIA_DEVICE, DEFAULT_PAYLOAD_AVAILABLE as DEFAULT_PAYLOAD_AVAILABLE, DEFAULT_PAYLOAD_NOT_AVAILABLE as DEFAULT_PAYLOAD_NOT_AVAILABLE, ENTITY_PLATFORMS as ENTITY_PLATFORMS, SUPPORTED_COMPONENTS as SUPPORTED_COMPONENTS
|
2
|
+
from .util import valid_publish_topic as valid_publish_topic, valid_qos_schema as valid_qos_schema, valid_subscribe_topic as valid_subscribe_topic
|
3
3
|
from _typeshed import Incomplete
|
4
|
-
from homeassistant.const import CONF_DEVICE as CONF_DEVICE, CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_ICON as CONF_ICON, CONF_MODEL as CONF_MODEL, CONF_MODEL_ID as CONF_MODEL_ID, CONF_NAME as CONF_NAME, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE
|
4
|
+
from homeassistant.const import CONF_DEVICE as CONF_DEVICE, CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_ICON as CONF_ICON, CONF_MODEL as CONF_MODEL, CONF_MODEL_ID as CONF_MODEL_ID, CONF_NAME as CONF_NAME, CONF_PLATFORM as CONF_PLATFORM, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE
|
5
5
|
from homeassistant.helpers.entity import ENTITY_CATEGORIES_SCHEMA as ENTITY_CATEGORIES_SCHEMA
|
6
6
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
7
|
+
from typing import Any
|
7
8
|
|
8
|
-
|
9
|
-
|
10
|
-
|
9
|
+
SHARED_OPTIONS: Incomplete
|
10
|
+
MQTT_ORIGIN_INFO_SCHEMA: Incomplete
|
11
|
+
_MQTT_AVAILABILITY_SINGLE_SCHEMA: Incomplete
|
12
|
+
_MQTT_AVAILABILITY_LIST_SCHEMA: Incomplete
|
13
|
+
_MQTT_AVAILABILITY_SCHEMA: Incomplete
|
11
14
|
|
12
15
|
def validate_device_has_at_least_one_identifier(value: ConfigType) -> ConfigType: ...
|
13
16
|
|
14
17
|
MQTT_ENTITY_DEVICE_INFO_SCHEMA: Incomplete
|
15
|
-
MQTT_ORIGIN_INFO_SCHEMA: Incomplete
|
16
18
|
MQTT_ENTITY_COMMON_SCHEMA: Incomplete
|
19
|
+
_UNIQUE_ID_SCHEMA: Incomplete
|
20
|
+
|
21
|
+
def check_unique_id(config: dict[str, Any]) -> dict[str, Any]: ...
|
22
|
+
|
23
|
+
_COMPONENT_CONFIG_SCHEMA: Incomplete
|
24
|
+
DEVICE_DISCOVERY_SCHEMA: Incomplete
|
@@ -15,11 +15,11 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
|
|
15
15
|
from homeassistant.helpers.restore_state import RestoreEntity as RestoreEntity
|
16
16
|
from homeassistant.helpers.typing import ConfigType as ConfigType, VolSchemaType as VolSchemaType
|
17
17
|
from homeassistant.util.json import JSON_DECODE_EXCEPTIONS as JSON_DECODE_EXCEPTIONS, json_loads as json_loads
|
18
|
-
from typing import Any
|
18
|
+
from typing import Any
|
19
19
|
|
20
20
|
_LOGGER: Incomplete
|
21
21
|
DEFAULT_NAME: str
|
22
|
-
|
22
|
+
CONF_DISPLAY_PRECISION: str
|
23
23
|
CONF_LATEST_VERSION_TEMPLATE: str
|
24
24
|
CONF_LATEST_VERSION_TOPIC: str
|
25
25
|
CONF_PAYLOAD_INSTALL: str
|
@@ -28,26 +28,19 @@ CONF_RELEASE_URL: str
|
|
28
28
|
CONF_TITLE: str
|
29
29
|
PLATFORM_SCHEMA_MODERN: Incomplete
|
30
30
|
DISCOVERY_SCHEMA: Incomplete
|
31
|
-
|
32
|
-
class _MqttUpdatePayloadType(TypedDict, total=False):
|
33
|
-
installed_version: str
|
34
|
-
latest_version: str
|
35
|
-
title: str
|
36
|
-
release_summary: str
|
37
|
-
release_url: str
|
38
|
-
entity_picture: str
|
31
|
+
MQTT_JSON_UPDATE_SCHEMA: Incomplete
|
39
32
|
|
40
33
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
41
34
|
|
42
35
|
class MqttUpdate(MqttEntity, UpdateEntity, RestoreEntity):
|
43
36
|
_default_name = DEFAULT_NAME
|
44
37
|
_entity_id_format: Incomplete
|
45
|
-
_entity_picture: str | None
|
46
38
|
@property
|
47
39
|
def entity_picture(self) -> str | None: ...
|
48
40
|
@staticmethod
|
49
41
|
def config_schema() -> VolSchemaType: ...
|
50
42
|
_attr_device_class: Incomplete
|
43
|
+
_attr_display_precision: Incomplete
|
51
44
|
_attr_release_summary: Incomplete
|
52
45
|
_attr_release_url: Incomplete
|
53
46
|
_attr_title: Incomplete
|
@@ -55,6 +48,9 @@ class MqttUpdate(MqttEntity, UpdateEntity, RestoreEntity):
|
|
55
48
|
def _setup_from_config(self, config: ConfigType) -> None: ...
|
56
49
|
_attr_installed_version: Incomplete
|
57
50
|
_attr_latest_version: Incomplete
|
51
|
+
_attr_entity_picture: Incomplete
|
52
|
+
_attr_update_percentage: Incomplete
|
53
|
+
_attr_in_progress: Incomplete
|
58
54
|
def _handle_state_message_received(self, msg: ReceiveMessage) -> None: ...
|
59
55
|
def _handle_latest_version_received(self, msg: ReceiveMessage) -> None: ...
|
60
56
|
def _prepare_subscribe_topics(self) -> None: ...
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
2
|
from homeassistant.const import Platform as Platform
|
3
|
-
from typing import Final, TypedDict
|
3
|
+
from typing import Final, Literal, TypedDict
|
4
4
|
|
5
5
|
ATTR_DEVICES: Final[str]
|
6
6
|
ATTR_GATEWAY_ID: Final[str]
|
@@ -13,6 +13,7 @@ CONF_TOPIC_IN_PREFIX: Final[str]
|
|
13
13
|
CONF_TOPIC_OUT_PREFIX: Final[str]
|
14
14
|
CONF_VERSION: Final[str]
|
15
15
|
CONF_GATEWAY_TYPE: Final[str]
|
16
|
+
type ConfGatewayType = Literal['Serial', 'TCP', 'MQTT']
|
16
17
|
CONF_GATEWAY_TYPE_SERIAL: ConfGatewayType
|
17
18
|
CONF_GATEWAY_TYPE_TCP: ConfGatewayType
|
18
19
|
CONF_GATEWAY_TYPE_MQTT: ConfGatewayType
|
@@ -39,6 +40,10 @@ class NodeDiscoveryInfo(TypedDict):
|
|
39
40
|
node_id: int
|
40
41
|
|
41
42
|
SERVICE_SEND_IR_CODE: Final[str]
|
43
|
+
type SensorType = str
|
44
|
+
type ValueType = str
|
45
|
+
type GatewayId = str
|
46
|
+
type DevId = tuple[GatewayId, int, int, int]
|
42
47
|
BINARY_SENSOR_TYPES: dict[SensorType, set[ValueType]]
|
43
48
|
CLIMATE_TYPES: dict[SensorType, set[ValueType]]
|
44
49
|
COVER_TYPES: dict[SensorType, set[ValueType]]
|
@@ -9,6 +9,7 @@ from homeassistant.helpers import aiohttp_client as aiohttp_client, config_entry
|
|
9
9
|
from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
|
10
10
|
|
11
11
|
PLATFORMS: list[Platform]
|
12
|
+
type MyUplinkConfigEntry = ConfigEntry[MyUplinkDataCoordinator]
|
12
13
|
|
13
14
|
async def async_setup_entry(hass: HomeAssistant, config_entry: MyUplinkConfigEntry) -> bool: ...
|
14
15
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
@@ -1,13 +1,12 @@
|
|
1
1
|
import logging
|
2
2
|
from .const import DOMAIN as DOMAIN, OAUTH2_SCOPES as OAUTH2_SCOPES
|
3
3
|
from collections.abc import Mapping
|
4
|
-
from homeassistant.config_entries import
|
4
|
+
from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH
|
5
5
|
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
6
6
|
from typing import Any
|
7
7
|
|
8
8
|
class OAuth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, domain=DOMAIN):
|
9
9
|
DOMAIN = DOMAIN
|
10
|
-
config_entry_reauth: ConfigEntry | None
|
11
10
|
@property
|
12
11
|
def logger(self) -> logging.Logger: ...
|
13
12
|
@property
|
@@ -1,7 +1,13 @@
|
|
1
|
+
from _typeshed import Incomplete
|
1
2
|
from homeassistant.components.number import NumberEntityDescription as NumberEntityDescription
|
2
3
|
from homeassistant.components.sensor import SensorEntityDescription as SensorEntityDescription
|
3
4
|
from homeassistant.const import Platform as Platform
|
4
5
|
from myuplink import DevicePoint as DevicePoint
|
5
6
|
|
6
7
|
def find_matching_platform(device_point: DevicePoint, description: SensorEntityDescription | NumberEntityDescription | None = None) -> Platform: ...
|
8
|
+
|
9
|
+
WEEKDAYS: Incomplete
|
10
|
+
PARAMETER_ID_TO_EXCLUDE_F730: Incomplete
|
11
|
+
PARAMETER_ID_TO_INCLUDE_SMO20: Incomplete
|
12
|
+
|
7
13
|
def skip_entity(model: str, device_point: DevicePoint) -> bool: ...
|
@@ -9,6 +9,7 @@ from homeassistant.helpers.aiohttp_client import async_get_clientsession as asyn
|
|
9
9
|
|
10
10
|
_LOGGER: Incomplete
|
11
11
|
PLATFORMS: Incomplete
|
12
|
+
type NAMConfigEntry = ConfigEntry[NAMDataUpdateCoordinator]
|
12
13
|
|
13
14
|
async def async_setup_entry(hass: HomeAssistant, entry: NAMConfigEntry) -> bool: ...
|
14
15
|
async def async_unload_entry(hass: HomeAssistant, entry: NAMConfigEntry) -> bool: ...
|
@@ -3,7 +3,7 @@ from _typeshed import Incomplete
|
|
3
3
|
from collections.abc import Mapping
|
4
4
|
from dataclasses import dataclass
|
5
5
|
from homeassistant.components import zeroconf as zeroconf
|
6
|
-
from homeassistant.config_entries import
|
6
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
7
7
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
9
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
@@ -24,15 +24,12 @@ async def async_check_credentials(hass: HomeAssistant, host: str, data: dict[str
|
|
24
24
|
|
25
25
|
class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
|
26
26
|
VERSION: int
|
27
|
-
|
28
|
-
|
29
|
-
_config: Incomplete
|
30
|
-
def __init__(self) -> None: ...
|
27
|
+
_config: NamConfig
|
28
|
+
host: str
|
31
29
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
32
30
|
async def async_step_credentials(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
33
31
|
async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> ConfigFlowResult: ...
|
34
32
|
async def async_step_confirm_discovery(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
35
33
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
36
34
|
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
37
|
-
async def async_step_reconfigure(self,
|
38
|
-
async def async_step_reconfigure_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
35
|
+
async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -10,6 +10,7 @@ from homeassistant.helpers.dispatcher import async_dispatcher_send as async_disp
|
|
10
10
|
|
11
11
|
_LOGGER: Incomplete
|
12
12
|
PLATFORMS: Incomplete
|
13
|
+
type NanoleafConfigEntry = ConfigEntry[NanoleafCoordinator]
|
13
14
|
|
14
15
|
async def async_setup_entry(hass: HomeAssistant, entry: NanoleafConfigEntry) -> bool: ...
|
15
16
|
async def async_unload_entry(hass: HomeAssistant, entry: NanoleafConfigEntry) -> bool: ...
|
@@ -3,7 +3,7 @@ from _typeshed import Incomplete
|
|
3
3
|
from aionanoleaf import Nanoleaf
|
4
4
|
from collections.abc import Mapping
|
5
5
|
from homeassistant.components import ssdp as ssdp, zeroconf as zeroconf
|
6
|
-
from homeassistant.config_entries import
|
6
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH
|
7
7
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_TOKEN as CONF_TOKEN
|
8
8
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
9
9
|
from homeassistant.helpers.json import save_json as save_json
|
@@ -15,7 +15,6 @@ CONFIG_FILE: Final[str]
|
|
15
15
|
USER_SCHEMA: Final[Incomplete]
|
16
16
|
|
17
17
|
class NanoleafConfigFlow(ConfigFlow, domain=DOMAIN):
|
18
|
-
reauth_entry: ConfigEntry | None
|
19
18
|
nanoleaf: Nanoleaf
|
20
19
|
discovery_conf: JsonObjectType
|
21
20
|
device_id: str
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import abc
|
2
2
|
from . import api as api
|
3
|
-
from .const import CONF_PROJECT_ID as CONF_PROJECT_ID, CONF_SUBSCRIBER_ID as CONF_SUBSCRIBER_ID, CONF_SUBSCRIBER_ID_IMPORTED as CONF_SUBSCRIBER_ID_IMPORTED, DATA_DEVICE_MANAGER as DATA_DEVICE_MANAGER, DATA_SDM as DATA_SDM, DATA_SUBSCRIBER as DATA_SUBSCRIBER, DOMAIN as DOMAIN
|
3
|
+
from .const import CONF_PROJECT_ID as CONF_PROJECT_ID, CONF_SUBSCRIBER_ID as CONF_SUBSCRIBER_ID, CONF_SUBSCRIBER_ID_IMPORTED as CONF_SUBSCRIBER_ID_IMPORTED, CONF_SUBSCRIPTION_NAME as CONF_SUBSCRIPTION_NAME, DATA_DEVICE_MANAGER as DATA_DEVICE_MANAGER, DATA_SDM as DATA_SDM, DATA_SUBSCRIBER as DATA_SUBSCRIBER, DOMAIN as DOMAIN
|
4
4
|
from .events import EVENT_NAME_MAP as EVENT_NAME_MAP, NEST_EVENT as NEST_EVENT
|
5
5
|
from .media_source import EVENT_MEDIA_API_URL_FORMAT as EVENT_MEDIA_API_URL_FORMAT, EVENT_THUMBNAIL_URL_FORMAT as EVENT_THUMBNAIL_URL_FORMAT, async_get_media_event_store as async_get_media_event_store, async_get_media_source_devices as async_get_media_source_devices, async_get_transcoder as async_get_transcoder
|
6
6
|
from _typeshed import Incomplete
|
@@ -1,7 +1,8 @@
|
|
1
|
-
from .const import API_URL as API_URL, CONF_PROJECT_ID as CONF_PROJECT_ID, CONF_SUBSCRIBER_ID as CONF_SUBSCRIBER_ID, OAUTH2_TOKEN as OAUTH2_TOKEN, SDM_SCOPES as SDM_SCOPES
|
1
|
+
from .const import API_URL as API_URL, CONF_PROJECT_ID as CONF_PROJECT_ID, CONF_SUBSCRIBER_ID as CONF_SUBSCRIBER_ID, CONF_SUBSCRIPTION_NAME as CONF_SUBSCRIPTION_NAME, OAUTH2_TOKEN as OAUTH2_TOKEN, SDM_SCOPES as SDM_SCOPES
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from aiohttp import ClientSession as ClientSession
|
4
4
|
from google.oauth2.credentials import Credentials
|
5
|
+
from google_nest_sdm.admin_client import AdminClient
|
5
6
|
from google_nest_sdm.auth import AbstractAuth
|
6
7
|
from google_nest_sdm.google_nest_subscriber import GoogleNestSubscriber
|
7
8
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
@@ -20,9 +21,10 @@ class AsyncConfigEntryAuth(AbstractAuth):
|
|
20
21
|
|
21
22
|
class AccessTokenAuthImpl(AbstractAuth):
|
22
23
|
_access_token: Incomplete
|
23
|
-
def __init__(self, websession: ClientSession, access_token: str) -> None: ...
|
24
|
+
def __init__(self, websession: ClientSession, access_token: str, host: str) -> None: ...
|
24
25
|
async def async_get_access_token(self) -> str: ...
|
25
26
|
async def async_get_creds(self) -> Credentials: ...
|
26
27
|
|
27
28
|
async def new_subscriber(hass: HomeAssistant, entry: ConfigEntry) -> GoogleNestSubscriber | None: ...
|
28
|
-
def new_subscriber_with_token(hass: HomeAssistant, access_token: str, project_id: str,
|
29
|
+
def new_subscriber_with_token(hass: HomeAssistant, access_token: str, project_id: str, subscription_name: str) -> GoogleNestSubscriber: ...
|
30
|
+
def new_pubsub_admin_client(hass: HomeAssistant, access_token: str, cloud_project_id: str) -> AdminClient: ...
|
@@ -1,15 +1,17 @@
|
|
1
|
+
import abc
|
1
2
|
import datetime
|
2
3
|
from .const import DATA_DEVICE_MANAGER as DATA_DEVICE_MANAGER, DOMAIN as DOMAIN
|
3
4
|
from .device_info import NestDeviceInfo as NestDeviceInfo
|
4
5
|
from _typeshed import Incomplete
|
6
|
+
from abc import ABC, abstractmethod
|
5
7
|
from collections.abc import Callable as Callable
|
6
|
-
from google_nest_sdm.camera_traits import RtspStream as RtspStream
|
8
|
+
from google_nest_sdm.camera_traits import CameraLiveStreamTrait, RtspStream as RtspStream, WebRtcStream as WebRtcStream
|
7
9
|
from google_nest_sdm.device import Device as Device
|
8
10
|
from google_nest_sdm.device_manager import DeviceManager as DeviceManager
|
9
|
-
from homeassistant.components.camera import Camera as Camera, CameraEntityFeature as CameraEntityFeature, StreamType as StreamType
|
11
|
+
from homeassistant.components.camera import Camera as Camera, CameraEntityFeature as CameraEntityFeature, StreamType as StreamType, WebRTCAnswer as WebRTCAnswer, WebRTCClientConfiguration as WebRTCClientConfiguration, WebRTCSendMessage as WebRTCSendMessage
|
10
12
|
from homeassistant.components.stream import CONF_EXTRA_PART_WAIT_TIME as CONF_EXTRA_PART_WAIT_TIME
|
11
13
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
12
|
-
from homeassistant.core import HomeAssistant as HomeAssistant
|
14
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
13
15
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
14
16
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
15
17
|
from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time
|
@@ -21,34 +23,53 @@ STREAM_EXPIRATION_BUFFER: Incomplete
|
|
21
23
|
|
22
24
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
23
25
|
|
24
|
-
class
|
26
|
+
class NestCameraBaseEntity(Camera, ABC, metaclass=abc.ABCMeta):
|
25
27
|
_attr_has_entity_name: bool
|
26
28
|
_attr_name: Incomplete
|
29
|
+
_attr_is_streaming: bool
|
30
|
+
_attr_supported_features: Incomplete
|
27
31
|
_device: Incomplete
|
28
32
|
_attr_device_info: Incomplete
|
29
33
|
_attr_brand: Incomplete
|
30
34
|
_attr_model: Incomplete
|
31
|
-
_stream: Incomplete
|
32
|
-
_create_stream_url_lock: Incomplete
|
33
|
-
_stream_refresh_unsub: Incomplete
|
34
|
-
_attr_is_streaming: bool
|
35
|
-
_attr_supported_features: Incomplete
|
36
|
-
_rtsp_live_stream_trait: Incomplete
|
37
35
|
_attr_unique_id: Incomplete
|
36
|
+
_stream_refresh_unsub: Incomplete
|
37
|
+
def __init__(self, device: Device) -> None: ...
|
38
|
+
@abstractmethod
|
39
|
+
def _stream_expires_at(self) -> datetime.datetime | None: ...
|
40
|
+
@abstractmethod
|
41
|
+
async def _async_refresh_stream(self) -> None: ...
|
42
|
+
def _schedule_stream_refresh(self) -> None: ...
|
43
|
+
async def _handle_stream_refresh(self, _: datetime.datetime) -> None: ...
|
44
|
+
async def async_added_to_hass(self) -> None: ...
|
45
|
+
async def async_will_remove_from_hass(self) -> None: ...
|
46
|
+
|
47
|
+
class NestRTSPEntity(NestCameraBaseEntity):
|
48
|
+
_rtsp_stream: RtspStream | None
|
49
|
+
_rtsp_live_stream_trait: CameraLiveStreamTrait
|
50
|
+
_create_stream_url_lock: Incomplete
|
38
51
|
def __init__(self, device: Device) -> None: ...
|
39
52
|
@property
|
40
53
|
def use_stream_for_stills(self) -> bool: ...
|
41
54
|
@property
|
42
|
-
def frontend_stream_type(self) -> StreamType | None: ...
|
43
|
-
@property
|
44
55
|
def available(self) -> bool: ...
|
45
56
|
async def stream_source(self) -> str | None: ...
|
46
|
-
def
|
57
|
+
def _stream_expires_at(self) -> datetime.datetime | None: ...
|
47
58
|
stream: Incomplete
|
48
|
-
async def
|
59
|
+
async def _async_refresh_stream(self) -> None: ...
|
49
60
|
async def async_will_remove_from_hass(self) -> None: ...
|
50
|
-
|
61
|
+
|
62
|
+
class NestWebRTCEntity(NestCameraBaseEntity):
|
63
|
+
_webrtc_sessions: Incomplete
|
64
|
+
def __init__(self, device: Device) -> None: ...
|
65
|
+
@property
|
66
|
+
def frontend_stream_type(self) -> StreamType | None: ...
|
67
|
+
def _stream_expires_at(self) -> datetime.datetime | None: ...
|
68
|
+
async def _async_refresh_stream(self) -> None: ...
|
51
69
|
async def async_camera_image(self, width: int | None = None, height: int | None = None) -> bytes | None: ...
|
52
70
|
@classmethod
|
53
71
|
def placeholder_image(cls) -> bytes: ...
|
54
|
-
async def
|
72
|
+
async def async_handle_async_webrtc_offer(self, offer_sdp: str, session_id: str, send_message: WebRTCSendMessage) -> None: ...
|
73
|
+
def close_webrtc_session(self, session_id: str) -> None: ...
|
74
|
+
def _async_get_webrtc_client_configuration(self) -> WebRTCClientConfiguration: ...
|
75
|
+
async def async_will_remove_from_hass(self) -> None: ...
|
@@ -1,10 +1,11 @@
|
|
1
1
|
import logging
|
2
2
|
from . import api as api
|
3
|
-
from .const import CONF_CLOUD_PROJECT_ID as CONF_CLOUD_PROJECT_ID, CONF_PROJECT_ID as CONF_PROJECT_ID,
|
3
|
+
from .const import CONF_CLOUD_PROJECT_ID as CONF_CLOUD_PROJECT_ID, CONF_PROJECT_ID as CONF_PROJECT_ID, CONF_SUBSCRIBER_ID_IMPORTED as CONF_SUBSCRIBER_ID_IMPORTED, CONF_SUBSCRIPTION_NAME as CONF_SUBSCRIPTION_NAME, CONF_TOPIC_NAME as CONF_TOPIC_NAME, DATA_SDM as DATA_SDM, DOMAIN as DOMAIN, OAUTH2_AUTHORIZE as OAUTH2_AUTHORIZE, SDM_SCOPES as SDM_SCOPES
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from collections.abc import Iterable, Mapping
|
6
|
+
from google_nest_sdm.admin_client import AdminClient as AdminClient, EligibleSubscriptions as EligibleSubscriptions, EligibleTopics as EligibleTopics
|
6
7
|
from google_nest_sdm.structure import Structure as Structure
|
7
|
-
from homeassistant.config_entries import
|
8
|
+
from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH
|
8
9
|
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
9
10
|
from homeassistant.util import get_random_string as get_random_string
|
10
11
|
from typing import Any
|
@@ -18,6 +19,7 @@ SDM_API_URL: str
|
|
18
19
|
PUBSUB_API_URL: str
|
19
20
|
DEVICE_ACCESS_CONSOLE_URL: str
|
20
21
|
DEVICE_ACCESS_CONSOLE_EDIT_URL: str
|
22
|
+
CREATE_NEW_SUBSCRIPTION_KEY: str
|
21
23
|
_LOGGER: Incomplete
|
22
24
|
|
23
25
|
def _generate_subscription_id(cloud_project_id: str) -> str: ...
|
@@ -28,8 +30,10 @@ class NestFlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, domain
|
|
28
30
|
VERSION: int
|
29
31
|
_data: Incomplete
|
30
32
|
_structure_config_title: Incomplete
|
33
|
+
_admin_client: Incomplete
|
34
|
+
_eligible_topics: Incomplete
|
35
|
+
_eligible_subscriptions: Incomplete
|
31
36
|
def __init__(self) -> None: ...
|
32
|
-
def _async_reauth_entry(self) -> ConfigEntry | None: ...
|
33
37
|
@property
|
34
38
|
def logger(self) -> logging.Logger: ...
|
35
39
|
@property
|
@@ -43,4 +47,6 @@ class NestFlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, domain
|
|
43
47
|
async def async_step_cloud_project(self, user_input: dict | None = None) -> ConfigFlowResult: ...
|
44
48
|
async def async_step_device_project(self, user_input: dict | None = None) -> ConfigFlowResult: ...
|
45
49
|
async def async_step_pubsub(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
46
|
-
async def
|
50
|
+
async def async_step_pubsub_topic(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
51
|
+
async def async_step_pubsub_subscription(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
52
|
+
async def _async_finish(self) -> ConfigFlowResult: ...
|
@@ -4,10 +4,11 @@ DOMAIN: str
|
|
4
4
|
DATA_SDM: str
|
5
5
|
DATA_SUBSCRIBER: str
|
6
6
|
DATA_DEVICE_MANAGER: str
|
7
|
-
DATA_NEST_CONFIG: str
|
8
7
|
WEB_AUTH_DOMAIN = DOMAIN
|
9
8
|
INSTALLED_AUTH_DOMAIN: Incomplete
|
10
9
|
CONF_PROJECT_ID: str
|
10
|
+
CONF_TOPIC_NAME: str
|
11
|
+
CONF_SUBSCRIPTION_NAME: str
|
11
12
|
CONF_SUBSCRIBER_ID: str
|
12
13
|
CONF_SUBSCRIBER_ID_IMPORTED: str
|
13
14
|
CONF_CLOUD_PROJECT_ID: str
|
@@ -42,6 +42,7 @@ class NetatmoThermostat(NetatmoRoomEntity, ClimateEntity):
|
|
42
42
|
_attr_supported_features = SUPPORT_FLAGS
|
43
43
|
_attr_target_temperature_step = PRECISION_HALVES
|
44
44
|
_attr_temperature_unit: Incomplete
|
45
|
+
_attr_translation_key: str
|
45
46
|
_attr_name: Incomplete
|
46
47
|
_away: bool | None
|
47
48
|
_connected: bool | None
|
@@ -3,8 +3,10 @@ from .network import async_get_network as async_get_network
|
|
3
3
|
from homeassistant.components import websocket_api as websocket_api
|
4
4
|
from homeassistant.components.websocket_api import ActiveConnection as ActiveConnection
|
5
5
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
6
|
+
from homeassistant.helpers.network import NoURLAvailableError as NoURLAvailableError, get_url as get_url
|
6
7
|
from typing import Any
|
7
8
|
|
8
9
|
def async_register_websocket_commands(hass: HomeAssistant) -> None: ...
|
9
10
|
async def websocket_network_adapters(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
|
10
11
|
async def websocket_network_adapters_configure(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
|
12
|
+
def websocket_network_url(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
|
@@ -10,6 +10,7 @@ from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFai
|
|
10
10
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
11
11
|
from nextdns import AnalyticsDnssec as AnalyticsDnssec, AnalyticsEncryption as AnalyticsEncryption, AnalyticsIpVersions as AnalyticsIpVersions, AnalyticsProtocols as AnalyticsProtocols, AnalyticsStatus as AnalyticsStatus, ConnectionStatus as ConnectionStatus, Settings as Settings
|
12
12
|
|
13
|
+
type NextDnsConfigEntry = ConfigEntry[NextDnsData]
|
13
14
|
@dataclass
|
14
15
|
class NextDnsData:
|
15
16
|
connection: NextDnsUpdateCoordinator[ConnectionStatus]
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from .const import CONF_PROFILE_ID as CONF_PROFILE_ID, DOMAIN as DOMAIN
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from collections.abc import Mapping
|
4
|
-
from homeassistant.config_entries import
|
4
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
5
5
|
from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_PROFILE_NAME as CONF_PROFILE_NAME
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
7
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
@@ -16,7 +16,6 @@ class NextDnsFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
16
16
|
VERSION: int
|
17
17
|
nextdns: Incomplete
|
18
18
|
api_key: Incomplete
|
19
|
-
entry: Incomplete
|
20
19
|
def __init__(self) -> None: ...
|
21
20
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
22
21
|
async def async_step_profiles(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -3,7 +3,6 @@ from .legacy import BaseNotificationService as BaseNotificationService, async_re
|
|
3
3
|
from .repairs import migrate_notify_issue as migrate_notify_issue
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from enum import IntFlag
|
6
|
-
from functools import cached_property as cached_property
|
7
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
7
|
from homeassistant.const import CONF_NAME as CONF_NAME, CONF_PLATFORM as CONF_PLATFORM, STATE_UNAVAILABLE as STATE_UNAVAILABLE
|
9
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
|
@@ -40,7 +39,6 @@ class NotifyEntity(RestoreEntity):
|
|
40
39
|
_attr_device_class: None
|
41
40
|
_attr_state: None
|
42
41
|
__last_notified_isoformat: str | None
|
43
|
-
@cached_property
|
44
42
|
def state(self) -> str | None: ...
|
45
43
|
def __set_state(self, state: str | None) -> None: ...
|
46
44
|
async def async_internal_added_to_hass(self) -> None: ...
|
@@ -3,7 +3,7 @@ from .util import async_get_client_with_credentials as async_get_client_with_cre
|
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from collections.abc import Mapping
|
5
5
|
from dataclasses import dataclass
|
6
|
-
from homeassistant.config_entries import
|
6
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
7
7
|
from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
9
|
from typing import Any
|
@@ -22,8 +22,6 @@ async def async_validate_credentials(hass: HomeAssistant, username: str, passwor
|
|
22
22
|
|
23
23
|
class NotionFlowHandler(ConfigFlow, domain=DOMAIN):
|
24
24
|
VERSION: int
|
25
|
-
_reauth_entry: Incomplete
|
26
|
-
def __init__(self) -> None: ...
|
27
25
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
28
26
|
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
29
27
|
async def async_step_user(self, user_input: dict[str, str] | None = None) -> ConfigFlowResult: ...
|