homeassistant-stubs 2025.1.3__py3-none-any.whl → 2025.2.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/mfa_modules/__init__.pyi +2 -4
- homeassistant-stubs/auth/models.pyi +1 -1
- homeassistant-stubs/auth/permissions/__init__.pyi +1 -1
- homeassistant-stubs/auth/providers/__init__.pyi +2 -4
- homeassistant-stubs/backup_restore.pyi +2 -0
- homeassistant-stubs/components/airgradient/button.pyi +4 -1
- homeassistant-stubs/components/airgradient/config_flow.pyi +5 -3
- homeassistant-stubs/components/airgradient/entity.pyi +5 -0
- homeassistant-stubs/components/airgradient/number.pyi +4 -1
- homeassistant-stubs/components/airgradient/select.pyi +4 -1
- homeassistant-stubs/components/airgradient/sensor.pyi +2 -0
- homeassistant-stubs/components/airgradient/switch.pyi +5 -1
- homeassistant-stubs/components/airgradient/update.pyi +2 -1
- homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
- homeassistant-stubs/components/airzone/__init__.pyi +2 -0
- homeassistant-stubs/components/airzone/config_flow.pyi +3 -2
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +1 -1
- homeassistant-stubs/components/androidtv_remote/config_flow.pyi +2 -2
- homeassistant-stubs/components/api/__init__.pyi +1 -1
- homeassistant-stubs/components/apple_tv/config_flow.pyi +2 -1
- homeassistant-stubs/components/apsystems/coordinator.pyi +1 -0
- homeassistant-stubs/components/aranet/sensor.pyi +1 -1
- homeassistant-stubs/components/arcam_fmj/config_flow.pyi +2 -2
- homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +4 -1
- homeassistant-stubs/components/assist_pipeline/select.pyi +2 -2
- homeassistant-stubs/components/assist_pipeline/websocket_api.pyi +2 -2
- homeassistant-stubs/components/assist_satellite/__init__.pyi +1 -1
- homeassistant-stubs/components/assist_satellite/const.pyi +1 -0
- homeassistant-stubs/components/assist_satellite/entity.pyi +7 -1
- homeassistant-stubs/components/assist_satellite/intent.pyi +13 -0
- homeassistant-stubs/components/assist_satellite/websocket_api.pyi +0 -2
- homeassistant-stubs/components/automation/__init__.pyi +1 -1
- homeassistant-stubs/components/awair/config_flow.pyi +3 -2
- homeassistant-stubs/components/axis/config_flow.pyi +6 -4
- homeassistant-stubs/components/backup/__init__.pyi +8 -3
- homeassistant-stubs/components/backup/agent.pyi +6 -5
- homeassistant-stubs/components/backup/backup.pyi +6 -4
- homeassistant-stubs/components/backup/config.pyi +45 -3
- homeassistant-stubs/components/backup/http.pyi +8 -0
- homeassistant-stubs/components/backup/manager.pyi +42 -22
- homeassistant-stubs/components/backup/models.pyi +18 -3
- homeassistant-stubs/components/backup/store.pyi +7 -2
- homeassistant-stubs/components/backup/util.pyi +94 -0
- homeassistant-stubs/components/backup/websocket.pyi +6 -3
- homeassistant-stubs/components/baf/config_flow.pyi +2 -2
- homeassistant-stubs/components/bang_olufsen/config_flow.pyi +1 -1
- homeassistant-stubs/components/bang_olufsen/const.pyi +6 -0
- homeassistant-stubs/components/bang_olufsen/event.pyi +23 -0
- homeassistant-stubs/components/bang_olufsen/websocket.pyi +3 -2
- homeassistant-stubs/components/binary_sensor/__init__.pyi +1 -1
- homeassistant-stubs/components/blueprint/importer.pyi +0 -1
- homeassistant-stubs/components/blueprint/models.pyi +0 -1
- homeassistant-stubs/components/blueprint/websocket_api.pyi +0 -1
- homeassistant-stubs/components/bluesound/__init__.pyi +2 -0
- homeassistant-stubs/components/bluesound/config_flow.pyi +2 -3
- homeassistant-stubs/components/bluesound/coordinator.pyi +30 -0
- homeassistant-stubs/components/bluesound/media_player.pyi +10 -25
- homeassistant-stubs/components/bluetooth/__init__.pyi +2 -2
- homeassistant-stubs/components/bluetooth/api.pyi +3 -1
- homeassistant-stubs/components/bluetooth/config_flow.pyi +10 -3
- homeassistant-stubs/components/bluetooth/const.pyi +5 -0
- homeassistant-stubs/components/bluetooth/manager.pyi +5 -1
- homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +1 -4
- homeassistant-stubs/components/bluetooth/storage.pyi +2 -0
- homeassistant-stubs/components/bluetooth/util.pyi +6 -1
- homeassistant-stubs/components/bluetooth/websocket_api.pyi +46 -0
- homeassistant-stubs/components/bond/config_flow.pyi +2 -2
- homeassistant-stubs/components/braviatv/config_flow.pyi +2 -2
- homeassistant-stubs/components/brother/config_flow.pyi +2 -2
- homeassistant-stubs/components/button/__init__.pyi +1 -1
- homeassistant-stubs/components/cambridge_audio/config_flow.pyi +2 -2
- homeassistant-stubs/components/camera/__init__.pyi +1 -1
- homeassistant-stubs/components/canary/__init__.pyi +7 -7
- homeassistant-stubs/components/canary/alarm_control_panel.pyi +2 -4
- homeassistant-stubs/components/canary/camera.pyi +3 -4
- homeassistant-stubs/components/canary/const.pyi +0 -2
- homeassistant-stubs/components/canary/coordinator.pyi +3 -1
- homeassistant-stubs/components/canary/sensor.pyi +3 -4
- homeassistant-stubs/components/climate/__init__.pyi +2 -2
- homeassistant-stubs/components/climate/const.pyi +1 -0
- homeassistant-stubs/components/climate/intent.pyi +9 -1
- homeassistant-stubs/components/cloud/__init__.pyi +1 -1
- homeassistant-stubs/components/cloud/backup.pyi +3 -9
- homeassistant-stubs/components/cloud/const.pyi +0 -1
- homeassistant-stubs/components/cloud/http_api.pyi +7 -1
- homeassistant-stubs/components/config/core.pyi +1 -1
- homeassistant-stubs/components/cookidoo/__init__.pyi +6 -2
- homeassistant-stubs/components/cookidoo/button.pyi +27 -0
- homeassistant-stubs/components/cookidoo/config_flow.pyi +4 -1
- homeassistant-stubs/components/cookidoo/const.pyi +3 -0
- homeassistant-stubs/components/cookidoo/coordinator.pyi +3 -1
- homeassistant-stubs/components/cookidoo/diagnostics.pyi +10 -0
- homeassistant-stubs/components/cookidoo/helpers.pyi +9 -0
- homeassistant-stubs/components/cookidoo/sensor.pyi +34 -0
- homeassistant-stubs/components/cover/__init__.pyi +1 -1
- homeassistant-stubs/components/crownstone/__init__.pyi +6 -5
- homeassistant-stubs/components/crownstone/config_flow.pyi +6 -4
- homeassistant-stubs/components/crownstone/entry_manager.pyi +6 -6
- homeassistant-stubs/components/crownstone/helpers.pyi +2 -1
- homeassistant-stubs/components/crownstone/light.pyi +3 -4
- homeassistant-stubs/components/date/__init__.pyi +1 -1
- homeassistant-stubs/components/datetime/__init__.pyi +1 -1
- homeassistant-stubs/components/deconz/__init__.pyi +5 -4
- homeassistant-stubs/components/deconz/alarm_control_panel.pyi +2 -2
- homeassistant-stubs/components/deconz/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/deconz/button.pyi +2 -2
- homeassistant-stubs/components/deconz/climate.pyi +2 -2
- homeassistant-stubs/components/deconz/config_flow.pyi +3 -6
- homeassistant-stubs/components/deconz/cover.pyi +2 -2
- homeassistant-stubs/components/deconz/device_trigger.pyi +1 -2
- homeassistant-stubs/components/deconz/diagnostics.pyi +2 -3
- homeassistant-stubs/components/deconz/fan.pyi +2 -2
- homeassistant-stubs/components/deconz/hub/api.pyi +2 -2
- homeassistant-stubs/components/deconz/hub/config.pyi +3 -3
- homeassistant-stubs/components/deconz/hub/hub.pyi +4 -6
- homeassistant-stubs/components/deconz/light.pyi +2 -2
- homeassistant-stubs/components/deconz/lock.pyi +2 -3
- homeassistant-stubs/components/deconz/number.pyi +2 -2
- homeassistant-stubs/components/deconz/scene.pyi +2 -3
- homeassistant-stubs/components/deconz/select.pyi +2 -3
- homeassistant-stubs/components/deconz/sensor.pyi +2 -2
- homeassistant-stubs/components/deconz/services.pyi +2 -1
- homeassistant-stubs/components/deconz/siren.pyi +2 -3
- homeassistant-stubs/components/deconz/switch.pyi +2 -3
- homeassistant-stubs/components/deconz/util.pyi +7 -0
- homeassistant-stubs/components/device_tracker/config_entry.pyi +1 -1
- homeassistant-stubs/components/device_tracker/legacy.pyi +1 -1
- homeassistant-stubs/components/devolo_home_control/config_flow.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/config_flow.pyi +2 -1
- homeassistant-stubs/components/dhcp/__init__.pyi +6 -7
- homeassistant-stubs/components/discovergy/sensor.pyi +2 -0
- homeassistant-stubs/components/dlna_dmr/config_flow.pyi +7 -6
- homeassistant-stubs/components/dlna_dmr/media_player.pyi +2 -1
- homeassistant-stubs/components/dlna_dms/config_flow.pyi +5 -4
- homeassistant-stubs/components/dlna_dms/dms.pyi +3 -2
- homeassistant-stubs/components/doorbird/config_flow.pyi +2 -2
- homeassistant-stubs/components/doorbird/device.pyi +1 -1
- homeassistant-stubs/components/dormakaba_dkey/__init__.pyi +5 -9
- homeassistant-stubs/components/dormakaba_dkey/binary_sensor.pyi +3 -7
- homeassistant-stubs/components/dormakaba_dkey/coordinator.pyi +15 -0
- homeassistant-stubs/components/dormakaba_dkey/entity.pyi +4 -5
- homeassistant-stubs/components/dormakaba_dkey/lock.pyi +3 -7
- homeassistant-stubs/components/dormakaba_dkey/sensor.pyi +3 -7
- homeassistant-stubs/components/dunehd/__init__.pyi +4 -3
- homeassistant-stubs/components/dunehd/media_player.pyi +2 -2
- homeassistant-stubs/components/duotecno/__init__.pyi +4 -3
- homeassistant-stubs/components/duotecno/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/duotecno/climate.pyi +2 -4
- homeassistant-stubs/components/duotecno/cover.pyi +2 -4
- homeassistant-stubs/components/duotecno/light.pyi +2 -4
- homeassistant-stubs/components/duotecno/switch.pyi +2 -4
- homeassistant-stubs/components/eheimdigital/climate.pyi +40 -0
- homeassistant-stubs/components/eheimdigital/config_flow.pyi +1 -1
- homeassistant-stubs/components/eheimdigital/const.pyi +4 -0
- homeassistant-stubs/components/eheimdigital/coordinator.pyi +2 -3
- homeassistant-stubs/components/eheimdigital/light.pyi +1 -0
- homeassistant-stubs/components/electrasmart/__init__.pyi +6 -4
- homeassistant-stubs/components/electrasmart/climate.pyi +2 -2
- homeassistant-stubs/components/electric_kiwi/__init__.pyi +3 -5
- homeassistant-stubs/components/electric_kiwi/const.pyi +0 -2
- homeassistant-stubs/components/electric_kiwi/coordinator.pyi +10 -2
- homeassistant-stubs/components/electric_kiwi/select.pyi +3 -4
- homeassistant-stubs/components/electric_kiwi/sensor.pyi +3 -4
- homeassistant-stubs/components/elevenlabs/const.pyi +1 -0
- homeassistant-stubs/components/elevenlabs/tts.pyi +1 -1
- homeassistant-stubs/components/elgato/config_flow.pyi +3 -2
- homeassistant-stubs/components/elkm1/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/elkm1/config_flow.pyi +2 -2
- homeassistant-stubs/components/elkm1/sensor.pyi +5 -5
- homeassistant-stubs/components/energenie_power_sockets/__init__.pyi +5 -4
- homeassistant-stubs/components/energenie_power_sockets/switch.pyi +2 -2
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +5 -5
- homeassistant-stubs/components/enphase_envoy/coordinator.pyi +7 -0
- homeassistant-stubs/components/enphase_envoy/select.pyi +2 -2
- homeassistant-stubs/components/enphase_envoy/sensor.pyi +1 -4
- homeassistant-stubs/components/esphome/__init__.pyi +1 -0
- homeassistant-stubs/components/esphome/bluetooth.pyi +2 -1
- homeassistant-stubs/components/esphome/config_flow.pyi +5 -3
- homeassistant-stubs/components/esphome/dashboard.pyi +2 -1
- homeassistant-stubs/components/esphome/manager.pyi +1 -1
- homeassistant-stubs/components/event/__init__.pyi +2 -2
- homeassistant-stubs/components/evil_genius_labs/__init__.pyi +3 -5
- homeassistant-stubs/components/evil_genius_labs/coordinator.pyi +4 -1
- homeassistant-stubs/components/evil_genius_labs/diagnostics.pyi +2 -4
- homeassistant-stubs/components/evil_genius_labs/light.pyi +2 -4
- homeassistant-stubs/components/fan/__init__.pyi +1 -1
- homeassistant-stubs/components/feedreader/__init__.pyi +3 -5
- homeassistant-stubs/components/feedreader/coordinator.pyi +5 -3
- homeassistant-stubs/components/filter/__init__.pyi +6 -4
- homeassistant-stubs/components/filter/config_flow.pyi +28 -0
- homeassistant-stubs/components/filter/const.pyi +29 -0
- homeassistant-stubs/components/filter/sensor.pyi +3 -24
- homeassistant-stubs/components/flux_led/config_flow.pyi +2 -2
- homeassistant-stubs/components/fritz/__init__.pyi +9 -7
- homeassistant-stubs/components/fritz/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/fritz/button.pyi +3 -4
- homeassistant-stubs/components/fritz/config_flow.pyi +6 -5
- homeassistant-stubs/components/fritz/const.pyi +0 -3
- homeassistant-stubs/components/fritz/coordinator.pyi +12 -10
- homeassistant-stubs/components/fritz/device_tracker.pyi +2 -4
- homeassistant-stubs/components/fritz/diagnostics.pyi +2 -4
- homeassistant-stubs/components/fritz/image.pyi +2 -4
- homeassistant-stubs/components/fritz/sensor.pyi +3 -4
- homeassistant-stubs/components/fritz/services.pyi +5 -8
- homeassistant-stubs/components/fritz/switch.pyi +3 -4
- homeassistant-stubs/components/fritz/update.pyi +2 -4
- homeassistant-stubs/components/fritzbox/config_flow.pyi +2 -2
- homeassistant-stubs/components/fritzbox/coordinator.pyi +1 -1
- homeassistant-stubs/components/fronius/config_flow.pyi +1 -1
- homeassistant-stubs/components/frontend/__init__.pyi +1 -1
- homeassistant-stubs/components/fujitsu_fglair/climate.pyi +2 -8
- homeassistant-stubs/components/fujitsu_fglair/entity.pyi +15 -0
- homeassistant-stubs/components/fujitsu_fglair/sensor.pyi +21 -0
- homeassistant-stubs/components/fully_kiosk/config_flow.pyi +1 -1
- homeassistant-stubs/components/fyta/binary_sensor.pyi +23 -0
- homeassistant-stubs/components/fyta/entity.pyi +2 -2
- homeassistant-stubs/components/fyta/image.pyi +18 -0
- homeassistant-stubs/components/generic_thermostat/climate.pyi +1 -0
- homeassistant-stubs/components/geo_location/__init__.pyi +1 -1
- homeassistant-stubs/components/goalzero/config_flow.pyi +2 -2
- homeassistant-stubs/components/google_drive/__init__.pyi +17 -0
- homeassistant-stubs/components/google_drive/api.pyi +35 -0
- homeassistant-stubs/components/google_drive/application_credentials.pyi +6 -0
- homeassistant-stubs/components/google_drive/backup.pyi +28 -0
- homeassistant-stubs/components/google_drive/config_flow.pyi +24 -0
- homeassistant-stubs/components/google_drive/const.pyi +1 -0
- homeassistant-stubs/components/guardian/config_flow.pyi +4 -3
- homeassistant-stubs/components/habitica/__init__.pyi +16 -0
- homeassistant-stubs/components/habitica/binary_sensor.pyi +33 -0
- homeassistant-stubs/components/habitica/button.pyi +53 -0
- homeassistant-stubs/components/habitica/calendar.pyi +56 -0
- homeassistant-stubs/components/habitica/config_flow.pyi +27 -0
- homeassistant-stubs/components/habitica/const.pyi +44 -0
- homeassistant-stubs/components/habitica/coordinator.pyi +29 -0
- homeassistant-stubs/components/habitica/diagnostics.pyi +7 -0
- homeassistant-stubs/components/habitica/entity.pyi +14 -0
- homeassistant-stubs/components/habitica/image.pyi +26 -0
- homeassistant-stubs/components/habitica/sensor.pyi +81 -0
- homeassistant-stubs/components/habitica/services.pyi +24 -0
- homeassistant-stubs/components/habitica/switch.pyi +32 -0
- homeassistant-stubs/components/habitica/todo.pyi +43 -0
- homeassistant-stubs/components/habitica/types.pyi +10 -0
- homeassistant-stubs/components/habitica/util.pyi +15 -0
- homeassistant-stubs/components/heos/__init__.pyi +15 -0
- homeassistant-stubs/components/heos/config_flow.pyi +32 -0
- homeassistant-stubs/components/heos/const.pyi +5 -0
- homeassistant-stubs/components/heos/coordinator.pyi +44 -0
- homeassistant-stubs/components/heos/diagnostics.pyi +14 -0
- homeassistant-stubs/components/heos/media_player.pyi +95 -0
- homeassistant-stubs/components/heos/services.pyi +16 -0
- homeassistant-stubs/components/holiday/config_flow.pyi +3 -1
- homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +1 -3
- homeassistant-stubs/components/homeassistant_hardware/util.pyi +13 -1
- homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +4 -2
- homeassistant-stubs/components/homeassistant_sky_connect/util.pyi +2 -2
- homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +1 -0
- homeassistant-stubs/components/homee/__init__.pyi +14 -0
- homeassistant-stubs/components/homee/config_flow.pyi +14 -0
- homeassistant-stubs/components/homee/const.pyi +9 -0
- homeassistant-stubs/components/homee/cover.pyi +43 -0
- homeassistant-stubs/components/homee/entity.pyi +43 -0
- homeassistant-stubs/components/homee/helpers.pyi +6 -0
- homeassistant-stubs/components/homee/sensor.pyi +49 -0
- homeassistant-stubs/components/homekit/util.pyi +1 -1
- homeassistant-stubs/components/homekit_controller/config_flow.pyi +3 -2
- homeassistant-stubs/components/homewizard/__init__.pyi +5 -0
- homeassistant-stubs/components/homewizard/config_flow.pyi +19 -19
- homeassistant-stubs/components/homewizard/const.pyi +0 -11
- homeassistant-stubs/components/homewizard/coordinator.pyi +6 -12
- homeassistant-stubs/components/homewizard/number.pyi +0 -1
- homeassistant-stubs/components/homewizard/repairs.pyi +17 -0
- homeassistant-stubs/components/homewizard/sensor.pyi +8 -5
- homeassistant-stubs/components/homewizard/switch.pyi +4 -4
- homeassistant-stubs/components/http/ban.pyi +0 -1
- homeassistant-stubs/components/huawei_lte/config_flow.pyi +2 -2
- homeassistant-stubs/components/humidifier/__init__.pyi +1 -1
- homeassistant-stubs/components/husqvarna_automower/__init__.pyi +0 -3
- homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +14 -0
- homeassistant-stubs/components/husqvarna_automower/number.pyi +1 -1
- homeassistant-stubs/components/hydrawise/__init__.pyi +3 -1
- homeassistant-stubs/components/hydrawise/config_flow.pyi +13 -5
- homeassistant-stubs/components/hydrawise/coordinator.pyi +4 -4
- homeassistant-stubs/components/hydrawise/switch.pyi +3 -3
- homeassistant-stubs/components/hyperion/config_flow.pyi +2 -2
- homeassistant-stubs/components/image/__init__.pyi +1 -1
- homeassistant-stubs/components/imgw_pib/__init__.pyi +1 -1
- homeassistant-stubs/components/imgw_pib/sensor.pyi +2 -1
- homeassistant-stubs/components/incomfort/__init__.pyi +18 -0
- homeassistant-stubs/components/incomfort/binary_sensor.pyi +33 -0
- homeassistant-stubs/components/incomfort/climate.pyi +42 -0
- homeassistant-stubs/components/incomfort/config_flow.pyi +37 -0
- homeassistant-stubs/components/incomfort/const.pyi +2 -0
- homeassistant-stubs/components/incomfort/coordinator.pyi +25 -0
- homeassistant-stubs/components/incomfort/diagnostics.pyi +12 -0
- homeassistant-stubs/components/incomfort/entity.pyi +14 -0
- homeassistant-stubs/components/incomfort/errors.pyi +18 -0
- homeassistant-stubs/components/incomfort/sensor.pyi +33 -0
- homeassistant-stubs/components/incomfort/water_heater.pyi +32 -0
- homeassistant-stubs/components/intent/__init__.pyi +1 -1
- homeassistant-stubs/components/intent/timers.pyi +1 -2
- homeassistant-stubs/components/ipp/config_flow.pyi +2 -2
- homeassistant-stubs/components/iron_os/button.pyi +31 -0
- homeassistant-stubs/components/iron_os/coordinator.pyi +4 -1
- homeassistant-stubs/components/iron_os/diagnostics.pyi +6 -0
- homeassistant-stubs/components/iron_os/number.pyi +1 -2
- homeassistant-stubs/components/iron_os/select.pyi +2 -4
- homeassistant-stubs/components/iron_os/switch.pyi +43 -0
- homeassistant-stubs/components/isy994/__init__.pyi +1 -2
- homeassistant-stubs/components/isy994/config_flow.pyi +4 -3
- homeassistant-stubs/components/kaleidescape/config_flow.pyi +2 -2
- homeassistant-stubs/components/knx/binary_sensor.pyi +18 -10
- homeassistant-stubs/components/knx/climate.pyi +10 -2
- homeassistant-stubs/components/knx/const.pyi +2 -0
- homeassistant-stubs/components/knx/entity.pyi +1 -1
- homeassistant-stubs/components/knx/light.pyi +1 -1
- homeassistant-stubs/components/knx/schema.pyi +5 -7
- homeassistant-stubs/components/knx/sensor.pyi +1 -1
- homeassistant-stubs/components/knx/storage/const.pyi +1 -0
- homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +4 -2
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -2
- homeassistant-stubs/components/lametric/config_flow.pyi +2 -2
- homeassistant-stubs/components/lawn_mower/__init__.pyi +1 -1
- homeassistant-stubs/components/lcn/__init__.pyi +2 -2
- homeassistant-stubs/components/lcn/climate.pyi +2 -1
- homeassistant-stubs/components/lcn/const.pyi +1 -0
- homeassistant-stubs/components/lcn/schemas.pyi +1 -1
- homeassistant-stubs/components/lektrico/config_flow.pyi +1 -1
- homeassistant-stubs/components/letpot/__init__.pyi +13 -0
- homeassistant-stubs/components/letpot/config_flow.pyi +19 -0
- homeassistant-stubs/components/letpot/const.pyi +6 -0
- homeassistant-stubs/components/letpot/coordinator.pyi +20 -0
- homeassistant-stubs/components/letpot/entity.pyi +10 -0
- homeassistant-stubs/components/letpot/time.pyi +33 -0
- homeassistant-stubs/components/lifx/config_flow.pyi +3 -3
- homeassistant-stubs/components/lifx/coordinator.pyi +1 -1
- homeassistant-stubs/components/lifx/manager.pyi +16 -1
- homeassistant-stubs/components/light/__init__.pyi +1 -1
- homeassistant-stubs/components/linkplay/config_flow.pyi +2 -2
- homeassistant-stubs/components/litterrobot/__init__.pyi +2 -6
- homeassistant-stubs/components/litterrobot/binary_sensor.pyi +6 -9
- homeassistant-stubs/components/litterrobot/button.pyi +6 -10
- homeassistant-stubs/components/litterrobot/{hub.pyi → coordinator.pyi} +11 -10
- homeassistant-stubs/components/litterrobot/entity.pyi +5 -7
- homeassistant-stubs/components/litterrobot/select.pyi +5 -14
- homeassistant-stubs/components/litterrobot/sensor.pyi +7 -7
- homeassistant-stubs/components/litterrobot/switch.pyi +7 -9
- homeassistant-stubs/components/litterrobot/time.pyi +3 -6
- homeassistant-stubs/components/litterrobot/update.pyi +1 -1
- homeassistant-stubs/components/litterrobot/vacuum.pyi +1 -5
- homeassistant-stubs/components/lock/__init__.pyi +1 -1
- homeassistant-stubs/components/logbook/models.pyi +1 -1
- homeassistant-stubs/components/lookin/config_flow.pyi +2 -2
- homeassistant-stubs/components/lovelace/__init__.pyi +39 -0
- homeassistant-stubs/components/lovelace/cast.pyi +18 -0
- homeassistant-stubs/components/lovelace/const.pyi +33 -0
- homeassistant-stubs/components/lovelace/dashboard.pyi +83 -0
- homeassistant-stubs/components/lovelace/resources.pyi +42 -0
- homeassistant-stubs/components/lovelace/system_health.pyi +9 -0
- homeassistant-stubs/components/lovelace/websocket.pyi +26 -0
- homeassistant-stubs/components/mastodon/config_flow.pyi +2 -3
- homeassistant-stubs/components/mastodon/notify.pyi +1 -3
- homeassistant-stubs/components/matter/config_flow.pyi +1 -1
- homeassistant-stubs/components/matter/cover.pyi +0 -1
- homeassistant-stubs/components/matter/discovery.pyi +2 -2
- homeassistant-stubs/components/matter/entity.pyi +11 -4
- homeassistant-stubs/components/matter/light.pyi +0 -1
- homeassistant-stubs/components/matter/lock.pyi +0 -2
- homeassistant-stubs/components/matter/models.pyi +10 -1
- homeassistant-stubs/components/matter/number.pyi +1 -1
- homeassistant-stubs/components/matter/select.pyi +32 -2
- homeassistant-stubs/components/matter/sensor.pyi +24 -0
- homeassistant-stubs/components/matter/switch.pyi +15 -2
- homeassistant-stubs/components/matter/vacuum.pyi +0 -1
- homeassistant-stubs/components/matter/valve.pyi +0 -2
- homeassistant-stubs/components/mcp/__init__.pyi +16 -0
- homeassistant-stubs/components/mcp/config_flow.pyi +23 -0
- homeassistant-stubs/components/mcp/const.pyi +1 -0
- homeassistant-stubs/components/mcp/coordinator.pyi +40 -0
- homeassistant-stubs/components/mcp/types.pyi +4 -0
- homeassistant-stubs/components/mcp_server/__init__.pyi +13 -0
- homeassistant-stubs/components/mcp_server/config_flow.pyi +14 -0
- homeassistant-stubs/components/mcp_server/const.pyi +4 -0
- homeassistant-stubs/components/mcp_server/http.pyi +31 -0
- homeassistant-stubs/components/mcp_server/llm_api.pyi +15 -0
- homeassistant-stubs/components/mcp_server/server.pyi +13 -0
- homeassistant-stubs/components/mcp_server/session.pyi +20 -0
- homeassistant-stubs/components/mcp_server/types.pyi +4 -0
- homeassistant-stubs/components/media_player/__init__.pyi +1 -1
- homeassistant-stubs/components/media_source/__init__.pyi +1 -1
- homeassistant-stubs/components/media_source/models.pyi +1 -2
- homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -1
- homeassistant-stubs/components/modbus/__init__.pyi +2 -2
- homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -3
- homeassistant-stubs/components/modbus/climate.pyi +4 -3
- homeassistant-stubs/components/modbus/const.pyi +4 -0
- homeassistant-stubs/components/modbus/cover.pyi +1 -2
- homeassistant-stubs/components/modbus/entity.pyi +15 -8
- homeassistant-stubs/components/modbus/light.pyi +0 -1
- homeassistant-stubs/components/modbus/modbus.pyi +4 -0
- homeassistant-stubs/components/modbus/sensor.pyi +1 -2
- homeassistant-stubs/components/modbus/switch.pyi +0 -1
- homeassistant-stubs/components/modem_callerid/config_flow.pyi +2 -1
- homeassistant-stubs/components/motionmount/__init__.pyi +2 -2
- homeassistant-stubs/components/motionmount/config_flow.pyi +16 -6
- homeassistant-stubs/components/motionmount/entity.pyi +3 -2
- homeassistant-stubs/components/motionmount/select.pyi +2 -0
- homeassistant-stubs/components/mqtt/__init__.pyi +11 -34
- homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -1
- homeassistant-stubs/components/mqtt/config_flow.pyi +3 -5
- homeassistant-stubs/components/mqtt/const.pyi +7 -1
- homeassistant-stubs/components/mqtt/diagnostics.pyi +0 -1
- homeassistant-stubs/components/mqtt/light/schema_basic.pyi +2 -1
- homeassistant-stubs/components/mqtt/light/schema_json.pyi +2 -1
- homeassistant-stubs/components/mqtt/light/schema_template.pyi +2 -1
- homeassistant-stubs/components/music_assistant/config_flow.pyi +2 -2
- homeassistant-stubs/components/myuplink/sensor.pyi +1 -1
- homeassistant-stubs/components/nam/config_flow.pyi +2 -2
- homeassistant-stubs/components/nanoleaf/config_flow.pyi +6 -5
- homeassistant-stubs/components/nest/__init__.pyi +3 -4
- homeassistant-stubs/components/nest/api.pyi +2 -2
- homeassistant-stubs/components/nest/climate.pyi +2 -0
- homeassistant-stubs/components/nest/config_flow.pyi +6 -2
- homeassistant-stubs/components/netatmo/button.pyi +25 -0
- homeassistant-stubs/components/netatmo/const.pyi +1 -0
- homeassistant-stubs/components/netatmo/data_handler.pyi +1 -1
- homeassistant-stubs/components/network/system_health.pyi +11 -0
- homeassistant-stubs/components/notify/__init__.pyi +1 -1
- homeassistant-stubs/components/number/__init__.pyi +2 -2
- homeassistant-stubs/components/nut/config_flow.pyi +2 -2
- homeassistant-stubs/components/onboarding/views.pyi +30 -2
- homeassistant-stubs/components/onedrive/__init__.pyi +26 -0
- homeassistant-stubs/components/onedrive/application_credentials.pyi +5 -0
- homeassistant-stubs/components/onedrive/backup.pyi +41 -0
- homeassistant-stubs/components/onedrive/config_flow.pyi +18 -0
- homeassistant-stubs/components/onedrive/const.pyi +10 -0
- homeassistant-stubs/components/onewire/__init__.pyi +4 -4
- homeassistant-stubs/components/onewire/binary_sensor.pyi +8 -4
- homeassistant-stubs/components/onewire/config_flow.pyi +12 -7
- homeassistant-stubs/components/onewire/const.pyi +0 -2
- homeassistant-stubs/components/onewire/diagnostics.pyi +1 -1
- homeassistant-stubs/components/onewire/onewirehub.pyi +22 -14
- homeassistant-stubs/components/onewire/select.pyi +27 -0
- homeassistant-stubs/components/onewire/sensor.pyi +7 -4
- homeassistant-stubs/components/onewire/switch.pyi +8 -4
- homeassistant-stubs/components/onkyo/config_flow.pyi +9 -4
- homeassistant-stubs/components/open_meteo/__init__.pyi +4 -8
- homeassistant-stubs/components/open_meteo/coordinator.pyi +15 -0
- homeassistant-stubs/components/open_meteo/diagnostics.pyi +2 -5
- homeassistant-stubs/components/open_meteo/weather.pyi +3 -3
- homeassistant-stubs/components/openai_conversation/conversation.pyi +6 -6
- homeassistant-stubs/components/overkiz/__init__.pyi +1 -1
- homeassistant-stubs/components/overkiz/climate/__init__.pyi +1 -0
- homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control_zone.pyi +1 -1
- homeassistant-stubs/components/overkiz/climate/evo_home_controller.pyi +24 -0
- homeassistant-stubs/components/overkiz/config_flow.pyi +4 -3
- homeassistant-stubs/components/overkiz/const.pyi +1 -0
- homeassistant-stubs/components/overkiz/coordinator.pyi +5 -3
- homeassistant-stubs/components/overseerr/__init__.pyi +37 -0
- homeassistant-stubs/components/overseerr/config_flow.pyi +14 -0
- homeassistant-stubs/components/overseerr/const.pyi +12 -0
- homeassistant-stubs/components/overseerr/coordinator.pyi +18 -0
- homeassistant-stubs/components/overseerr/diagnostics.pyi +6 -0
- homeassistant-stubs/components/overseerr/entity.pyi +11 -0
- homeassistant-stubs/components/overseerr/event.pyi +35 -0
- homeassistant-stubs/components/overseerr/sensor.pyi +27 -0
- homeassistant-stubs/components/overseerr/services.pyi +16 -0
- homeassistant-stubs/components/pandora/__init__.pyi +0 -0
- homeassistant-stubs/components/pandora/media_player.pyi +51 -0
- homeassistant-stubs/components/peblar/config_flow.pyi +3 -3
- homeassistant-stubs/components/person/__init__.pyi +103 -0
- homeassistant-stubs/components/person/const.pyi +1 -0
- homeassistant-stubs/components/person/significant_change.pyi +5 -0
- homeassistant-stubs/components/plugwise/config_flow.pyi +1 -1
- homeassistant-stubs/components/powerfox/sensor.pyi +3 -2
- homeassistant-stubs/components/powerwall/__init__.pyi +8 -3
- homeassistant-stubs/components/powerwall/config_flow.pyi +3 -3
- homeassistant-stubs/components/powerwall/const.pyi +2 -0
- homeassistant-stubs/components/proximity/__init__.pyi +2 -3
- homeassistant-stubs/components/proximity/coordinator.pyi +1 -2
- homeassistant-stubs/components/pure_energie/config_flow.pyi +2 -2
- homeassistant-stubs/components/python_script/__init__.pyi +48 -0
- homeassistant-stubs/components/qbus/__init__.pyi +15 -0
- homeassistant-stubs/components/qbus/config_flow.pyi +26 -0
- homeassistant-stubs/components/qbus/const.pyi +7 -0
- homeassistant-stubs/components/qbus/coordinator.pyi +48 -0
- homeassistant-stubs/components/qbus/entity.pyi +29 -0
- homeassistant-stubs/components/qbus/switch.pyi +21 -0
- homeassistant-stubs/components/qnap_qsw/config_flow.pyi +2 -2
- homeassistant-stubs/components/qnap_qsw/sensor.pyi +1 -4
- homeassistant-stubs/components/rabbitair/config_flow.pyi +2 -1
- homeassistant-stubs/components/rainforest_raven/config_flow.pyi +3 -2
- homeassistant-stubs/components/rainmachine/config_flow.pyi +4 -4
- homeassistant-stubs/components/recorder/auto_repairs/statistics/duplicates.pyi +1 -1
- homeassistant-stubs/components/recorder/const.pyi +0 -2
- homeassistant-stubs/components/recorder/core.pyi +2 -2
- homeassistant-stubs/components/recorder/db_schema.pyi +5 -2
- homeassistant-stubs/components/recorder/migration.pyi +1 -1
- homeassistant-stubs/components/recorder/models/state.pyi +1 -1
- homeassistant-stubs/components/recorder/util.pyi +1 -7
- homeassistant-stubs/components/remote/__init__.pyi +1 -1
- homeassistant-stubs/components/reolink/__init__.pyi +4 -2
- homeassistant-stubs/components/reolink/config_flow.pyi +7 -3
- homeassistant-stubs/components/reolink/const.pyi +1 -0
- homeassistant-stubs/components/reolink/entity.pyi +1 -1
- homeassistant-stubs/components/reolink/host.pyi +9 -2
- homeassistant-stubs/components/reolink/switch.pyi +5 -1
- homeassistant-stubs/components/reolink/util.pyi +6 -5
- homeassistant-stubs/components/repairs/__init__.pyi +1 -1
- homeassistant-stubs/components/ring/__init__.pyi +4 -15
- homeassistant-stubs/components/ring/binary_sensor.pyi +2 -0
- homeassistant-stubs/components/ring/button.pyi +1 -0
- homeassistant-stubs/components/ring/camera.pyi +1 -0
- homeassistant-stubs/components/ring/config_flow.pyi +2 -2
- homeassistant-stubs/components/ring/coordinator.pyi +14 -4
- homeassistant-stubs/components/ring/entity.pyi +1 -2
- homeassistant-stubs/components/ring/event.pyi +2 -0
- homeassistant-stubs/components/ring/light.pyi +1 -0
- homeassistant-stubs/components/ring/number.pyi +2 -0
- homeassistant-stubs/components/ring/sensor.pyi +2 -0
- homeassistant-stubs/components/ring/siren.pyi +1 -0
- homeassistant-stubs/components/ring/switch.pyi +1 -0
- homeassistant-stubs/components/roborock/__init__.pyi +3 -1
- homeassistant-stubs/components/roborock/const.pyi +4 -0
- homeassistant-stubs/components/roborock/coordinator.pyi +10 -6
- homeassistant-stubs/components/roborock/image.pyi +10 -11
- homeassistant-stubs/components/roborock/roborock_storage.pyi +23 -0
- homeassistant-stubs/components/roborock/sensor.pyi +1 -1
- homeassistant-stubs/components/roborock/vacuum.pyi +5 -1
- homeassistant-stubs/components/roku/config_flow.pyi +4 -3
- homeassistant-stubs/components/romy/config_flow.pyi +2 -2
- homeassistant-stubs/components/russound_rio/config_flow.pyi +6 -2
- homeassistant-stubs/components/russound_rio/const.pyi +0 -2
- homeassistant-stubs/components/russound_rio/media_player.pyi +13 -6
- homeassistant-stubs/components/ruuvi_gateway/config_flow.pyi +2 -2
- homeassistant-stubs/components/samsungtv/config_flow.pyi +6 -4
- homeassistant-stubs/components/scrape/sensor.pyi +2 -0
- homeassistant-stubs/components/script/__init__.pyi +1 -1
- homeassistant-stubs/components/select/__init__.pyi +2 -2
- homeassistant-stubs/components/sensibo/__init__.pyi +3 -3
- homeassistant-stubs/components/sensibo/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/sensibo/climate.pyi +13 -7
- homeassistant-stubs/components/sensibo/config_flow.pyi +1 -1
- homeassistant-stubs/components/sensibo/coordinator.pyi +2 -0
- homeassistant-stubs/components/sensibo/entity.pyi +5 -1
- homeassistant-stubs/components/sensibo/select.pyi +6 -1
- homeassistant-stubs/components/sensibo/sensor.pyi +2 -0
- homeassistant-stubs/components/sensor/__init__.pyi +2 -2
- homeassistant-stubs/components/shelly/__init__.pyi +2 -0
- homeassistant-stubs/components/shelly/binary_sensor.pyi +11 -6
- homeassistant-stubs/components/shelly/bluetooth/__init__.pyi +1 -1
- homeassistant-stubs/components/shelly/climate.pyi +25 -2
- homeassistant-stubs/components/shelly/config_flow.pyi +1 -1
- homeassistant-stubs/components/shelly/const.pyi +3 -0
- homeassistant-stubs/components/shelly/coordinator.pyi +3 -2
- homeassistant-stubs/components/shelly/entity.pyi +4 -1
- homeassistant-stubs/components/shelly/number.pyi +21 -13
- homeassistant-stubs/components/shelly/sensor.pyi +12 -7
- homeassistant-stubs/components/shelly/utils.pyi +1 -1
- homeassistant-stubs/components/siren/__init__.pyi +1 -1
- homeassistant-stubs/components/slack/config_flow.pyi +2 -1
- homeassistant-stubs/components/slack/entity.pyi +3 -5
- homeassistant-stubs/components/slack/notify.pyi +4 -2
- homeassistant-stubs/components/slack/sensor.pyi +2 -2
- homeassistant-stubs/components/slack/utils.pyi +6 -0
- homeassistant-stubs/components/smhi/config_flow.pyi +1 -1
- homeassistant-stubs/components/smhi/weather.pyi +3 -3
- homeassistant-stubs/components/smlight/config_flow.pyi +7 -5
- homeassistant-stubs/components/spotify/__init__.pyi +1 -1
- homeassistant-stubs/components/spotify/browse_media.pyi +1 -1
- homeassistant-stubs/components/spotify/coordinator.pyi +2 -0
- homeassistant-stubs/components/squeezebox/config_flow.pyi +2 -2
- homeassistant-stubs/components/ssdp/__init__.pyi +34 -44
- homeassistant-stubs/components/starlink/coordinator.pyi +1 -0
- homeassistant-stubs/components/steamist/config_flow.pyi +2 -2
- homeassistant-stubs/components/stream/__init__.pyi +3 -15
- homeassistant-stubs/components/stream/const.pyi +9 -1
- homeassistant-stubs/components/stream/exceptions.pyi +13 -0
- homeassistant-stubs/components/stream/worker.pyi +4 -5
- homeassistant-stubs/components/stt/__init__.pyi +1 -1
- homeassistant-stubs/components/suez_water/__init__.pyi +4 -0
- homeassistant-stubs/components/switch/__init__.pyi +1 -1
- homeassistant-stubs/components/switchbot_cloud/__init__.pyi +5 -5
- homeassistant-stubs/components/switchbot_cloud/button.pyi +17 -0
- homeassistant-stubs/components/switchbot_cloud/entity.pyi +5 -0
- homeassistant-stubs/components/switchbot_cloud/lock.pyi +2 -3
- homeassistant-stubs/components/switchbot_cloud/sensor.pyi +5 -5
- homeassistant-stubs/components/switchbot_cloud/switch.pyi +3 -6
- homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +1 -2
- homeassistant-stubs/components/switcher_kis/switch.pyi +29 -0
- homeassistant-stubs/components/synology_dsm/__init__.pyi +5 -2
- homeassistant-stubs/components/synology_dsm/backup.pyi +36 -0
- homeassistant-stubs/components/synology_dsm/common.pyi +5 -2
- homeassistant-stubs/components/synology_dsm/config_flow.pyi +11 -4
- homeassistant-stubs/components/synology_dsm/const.pyi +6 -0
- homeassistant-stubs/components/synology_dsm/coordinator.pyi +1 -1
- homeassistant-stubs/components/system_health/__init__.pyi +3 -1
- homeassistant-stubs/components/systemmonitor/__init__.pyi +3 -3
- homeassistant-stubs/components/systemmonitor/config_flow.pyi +0 -4
- homeassistant-stubs/components/systemmonitor/coordinator.pyi +2 -1
- homeassistant-stubs/components/tailwind/config_flow.pyi +3 -3
- homeassistant-stubs/components/technove/binary_sensor.pyi +0 -4
- homeassistant-stubs/components/technove/config_flow.pyi +3 -2
- homeassistant-stubs/components/tedee/coordinator.pyi +1 -1
- homeassistant-stubs/components/text/__init__.pyi +1 -1
- homeassistant-stubs/components/tile/__init__.pyi +4 -15
- homeassistant-stubs/components/tile/binary_sensor.pyi +24 -0
- homeassistant-stubs/components/tile/config_flow.pyi +0 -1
- homeassistant-stubs/components/tile/coordinator.pyi +18 -0
- homeassistant-stubs/components/tile/device_tracker.pyi +6 -20
- homeassistant-stubs/components/tile/diagnostics.pyi +2 -4
- homeassistant-stubs/components/tile/entity.pyi +13 -0
- homeassistant-stubs/components/time/__init__.pyi +1 -1
- homeassistant-stubs/components/todo/__init__.pyi +1 -1
- homeassistant-stubs/components/tolo/config_flow.pyi +2 -2
- homeassistant-stubs/components/tplink/__init__.pyi +3 -6
- homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/tplink/button.pyi +2 -1
- homeassistant-stubs/components/tplink/camera.pyi +9 -9
- homeassistant-stubs/components/tplink/climate.pyi +18 -12
- homeassistant-stubs/components/tplink/config_flow.pyi +3 -2
- homeassistant-stubs/components/tplink/const.pyi +1 -1
- homeassistant-stubs/components/tplink/coordinator.pyi +20 -4
- homeassistant-stubs/components/tplink/deprecate.pyi +5 -3
- homeassistant-stubs/components/tplink/entity.pyi +30 -11
- homeassistant-stubs/components/tplink/fan.pyi +15 -7
- homeassistant-stubs/components/tplink/light.pyi +22 -11
- homeassistant-stubs/components/tplink/number.pyi +1 -0
- homeassistant-stubs/components/tplink/select.pyi +1 -0
- homeassistant-stubs/components/tplink/sensor.pyi +7 -2
- homeassistant-stubs/components/tplink/siren.pyi +22 -7
- homeassistant-stubs/components/tplink/switch.pyi +1 -0
- homeassistant-stubs/components/tplink/vacuum.pyi +43 -0
- homeassistant-stubs/components/tradfri/config_flow.pyi +2 -2
- homeassistant-stubs/components/trafikverket_camera/__init__.pyi +2 -2
- homeassistant-stubs/components/trafikverket_camera/camera.pyi +2 -0
- homeassistant-stubs/components/trafikverket_ferry/__init__.pyi +1 -1
- homeassistant-stubs/components/trafikverket_ferry/coordinator.pyi +1 -1
- homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +1 -0
- homeassistant-stubs/components/trafikverket_train/__init__.pyi +6 -3
- homeassistant-stubs/components/trafikverket_train/config_flow.pyi +10 -4
- homeassistant-stubs/components/trafikverket_train/coordinator.pyi +2 -2
- homeassistant-stubs/components/trafikverket_train/sensor.pyi +1 -0
- homeassistant-stubs/components/trafikverket_weatherstation/__init__.pyi +1 -1
- homeassistant-stubs/components/trafikverket_weatherstation/coordinator.pyi +1 -1
- homeassistant-stubs/components/trafikverket_weatherstation/diagnostics.pyi +5 -0
- homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +1 -0
- homeassistant-stubs/components/tts/__init__.pyi +2 -2
- homeassistant-stubs/components/unifi/config_flow.pyi +2 -2
- homeassistant-stubs/components/unifi/device_tracker.pyi +1 -1
- homeassistant-stubs/components/unifi/switch.pyi +1 -0
- homeassistant-stubs/components/unifiprotect/__init__.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/config_flow.pyi +4 -3
- homeassistant-stubs/components/unifiprotect/light.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/views.pyi +8 -0
- homeassistant-stubs/components/upcloud/__init__.pyi +6 -12
- homeassistant-stubs/components/upcloud/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/upcloud/config_flow.pyi +3 -2
- homeassistant-stubs/components/upcloud/const.pyi +0 -1
- homeassistant-stubs/components/upcloud/coordinator.pyi +3 -2
- homeassistant-stubs/components/upcloud/entity.pyi +3 -3
- homeassistant-stubs/components/upcloud/switch.pyi +3 -4
- homeassistant-stubs/components/update/__init__.pyi +2 -2
- homeassistant-stubs/components/usb/__init__.pyi +21 -18
- homeassistant-stubs/components/usb/models.pyi +1 -1
- homeassistant-stubs/components/vacuum/__init__.pyi +1 -1
- homeassistant-stubs/components/velbus/config_flow.pyi +2 -2
- homeassistant-stubs/components/velbus/const.pyi +1 -0
- homeassistant-stubs/components/velbus/diagnostics.pyi +1 -3
- homeassistant-stubs/components/velbus/entity.pyi +4 -0
- homeassistant-stubs/components/velbus/services.pyi +5 -1
- homeassistant-stubs/components/wake_word/__init__.pyi +1 -1
- homeassistant-stubs/components/water_heater/__init__.pyi +7 -3
- homeassistant-stubs/components/weather/__init__.pyi +2 -3
- homeassistant-stubs/components/webhook/__init__.pyi +0 -1
- homeassistant-stubs/components/webostv/__init__.pyi +8 -24
- homeassistant-stubs/components/webostv/config_flow.pyi +14 -13
- homeassistant-stubs/components/webostv/const.pyi +0 -1
- homeassistant-stubs/components/webostv/device_trigger.pyi +1 -2
- homeassistant-stubs/components/webostv/diagnostics.pyi +2 -3
- homeassistant-stubs/components/webostv/helpers.pyi +11 -4
- homeassistant-stubs/components/webostv/media_player.pyi +17 -13
- homeassistant-stubs/components/webostv/notify.pyi +6 -4
- homeassistant-stubs/components/webostv/trigger.pyi +2 -0
- homeassistant-stubs/components/wiz/config_flow.pyi +3 -2
- homeassistant-stubs/components/wled/config_flow.pyi +3 -2
- homeassistant-stubs/components/worldclock/sensor.pyi +2 -7
- homeassistant-stubs/components/zeroconf/__init__.pyi +12 -20
- homeassistant-stubs/components/zwave_js/api.pyi +1 -1
- homeassistant-stubs/components/zwave_js/config_flow.pyi +3 -2
- homeassistant-stubs/config_entries.pyi +7 -9
- homeassistant-stubs/const.pyi +2 -0
- homeassistant-stubs/core.pyi +2 -3
- homeassistant-stubs/core_config.pyi +3 -3
- homeassistant-stubs/data_entry_flow.pyi +1 -2
- homeassistant-stubs/helpers/aiohttp_client.pyi +12 -1
- homeassistant-stubs/helpers/area_registry.pyi +11 -4
- homeassistant-stubs/helpers/collection.pyi +5 -7
- homeassistant-stubs/helpers/config_entry_flow.pyi +3 -3
- homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +3 -0
- homeassistant-stubs/helpers/data_entry_flow.pyi +1 -2
- homeassistant-stubs/helpers/deprecation.pyi +2 -2
- homeassistant-stubs/helpers/device_registry.pyi +1 -1
- homeassistant-stubs/helpers/entity.pyi +1 -1
- homeassistant-stubs/helpers/entity_component.pyi +2 -4
- homeassistant-stubs/helpers/entity_registry.pyi +2 -2
- homeassistant-stubs/helpers/frame.pyi +1 -1
- homeassistant-stubs/helpers/httpx_client.pyi +2 -1
- homeassistant-stubs/helpers/intent.pyi +4 -2
- homeassistant-stubs/helpers/llm.pyi +23 -8
- homeassistant-stubs/helpers/script.pyi +1 -1
- homeassistant-stubs/helpers/service_info/dhcp.pyi +8 -0
- homeassistant-stubs/helpers/service_info/ssdp.pyi +34 -0
- homeassistant-stubs/helpers/service_info/usb.pyi +11 -0
- homeassistant-stubs/helpers/service_info/zeroconf.pyi +20 -0
- homeassistant-stubs/helpers/singleton.pyi +6 -2
- homeassistant-stubs/helpers/storage.pyi +1 -1
- homeassistant-stubs/helpers/template.pyi +4 -4
- homeassistant-stubs/helpers/update_coordinator.pyi +7 -6
- homeassistant-stubs/loader.pyi +1 -1
- homeassistant-stubs/scripts/benchmark/__init__.pyi +8 -8
- homeassistant-stubs/util/event_type.pyi +1 -2
- homeassistant-stubs/util/ulid.pyi +1 -1
- homeassistant-stubs/util/yaml/__init__.pyi +1 -1
- homeassistant-stubs/util/yaml/loader.pyi +1 -1
- {homeassistant_stubs-2025.1.3.dist-info → homeassistant_stubs-2025.2.0.dist-info}/METADATA +4 -4
- {homeassistant_stubs-2025.1.3.dist-info → homeassistant_stubs-2025.2.0.dist-info}/RECORD +729 -594
- homeassistant-stubs/components/dormakaba_dkey/models.pyi +0 -8
- homeassistant-stubs/components/imgw_pib/binary_sensor.pyi +0 -27
- homeassistant-stubs/components/tplink/models.pyi +0 -10
- {homeassistant_stubs-2025.1.3.dist-info → homeassistant_stubs-2025.2.0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.1.3.dist-info → homeassistant_stubs-2025.2.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,11 +1,12 @@
|
|
1
1
|
from .const import CONF_OLD_DISCOVERY as CONF_OLD_DISCOVERY, DEFAULT_CONF_OLD_DISCOVERY as DEFAULT_CONF_OLD_DISCOVERY, DEFAULT_HOST as DEFAULT_HOST, DEFAULT_HTTPS_PORT as DEFAULT_HTTPS_PORT, DEFAULT_HTTP_PORT as DEFAULT_HTTP_PORT, DEFAULT_SSL as DEFAULT_SSL, DOMAIN as DOMAIN, ERROR_AUTH_INVALID as ERROR_AUTH_INVALID, ERROR_CANNOT_CONNECT as ERROR_CANNOT_CONNECT, ERROR_UNKNOWN as ERROR_UNKNOWN, ERROR_UPNP_NOT_CONFIGURED as ERROR_UPNP_NOT_CONFIGURED, FRITZ_AUTH_EXCEPTIONS as FRITZ_AUTH_EXCEPTIONS
|
2
|
+
from .coordinator import FritzConfigEntry as FritzConfigEntry
|
2
3
|
from _typeshed import Incomplete
|
3
4
|
from collections.abc import Mapping
|
4
|
-
from homeassistant.components import ssdp as ssdp
|
5
5
|
from homeassistant.components.device_tracker import CONF_CONSIDER_HOME as CONF_CONSIDER_HOME, DEFAULT_CONSIDER_HOME as DEFAULT_CONSIDER_HOME
|
6
|
-
from homeassistant.config_entries import
|
6
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
|
7
7
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_SSL as CONF_SSL, CONF_USERNAME as CONF_USERNAME
|
8
8
|
from homeassistant.core import callback as callback
|
9
|
+
from homeassistant.helpers.service_info.ssdp import ATTR_UPNP_FRIENDLY_NAME as ATTR_UPNP_FRIENDLY_NAME, ATTR_UPNP_MODEL_NAME as ATTR_UPNP_MODEL_NAME, ATTR_UPNP_UDN as ATTR_UPNP_UDN, SsdpServiceInfo as SsdpServiceInfo
|
9
10
|
from homeassistant.helpers.typing import VolDictType as VolDictType
|
10
11
|
from typing import Any, Self
|
11
12
|
from urllib.parse import ParseResult as ParseResult
|
@@ -17,7 +18,7 @@ class FritzBoxToolsFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
17
18
|
_host: str
|
18
19
|
@staticmethod
|
19
20
|
@callback
|
20
|
-
def async_get_options_flow(config_entry:
|
21
|
+
def async_get_options_flow(config_entry: FritzConfigEntry) -> FritzBoxToolsOptionsFlowHandler: ...
|
21
22
|
_name: str
|
22
23
|
_password: str
|
23
24
|
_use_tls: bool
|
@@ -27,11 +28,11 @@ class FritzBoxToolsFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
27
28
|
def __init__(self) -> None: ...
|
28
29
|
async def async_fritz_tools_init(self) -> str | None: ...
|
29
30
|
def fritz_tools_init(self) -> str | None: ...
|
30
|
-
async def async_check_configured_entry(self) ->
|
31
|
+
async def async_check_configured_entry(self) -> FritzConfigEntry | None: ...
|
31
32
|
@callback
|
32
33
|
def _async_create_entry(self) -> ConfigFlowResult: ...
|
33
34
|
def _determine_port(self, user_input: dict[str, Any]) -> int: ...
|
34
|
-
async def async_step_ssdp(self, discovery_info:
|
35
|
+
async def async_step_ssdp(self, discovery_info: SsdpServiceInfo) -> ConfigFlowResult: ...
|
35
36
|
def is_matching(self, other_flow: Self) -> bool: ...
|
36
37
|
async def async_step_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
37
38
|
def _show_setup_form_init(self, errors: dict[str, str] | None = None) -> ConfigFlowResult: ...
|
@@ -12,7 +12,6 @@ DOMAIN: str
|
|
12
12
|
PLATFORMS: Incomplete
|
13
13
|
CONF_OLD_DISCOVERY: str
|
14
14
|
DEFAULT_CONF_OLD_DISCOVERY: bool
|
15
|
-
DATA_FRITZ: str
|
16
15
|
DSL_CONNECTION: Literal['dsl']
|
17
16
|
DEFAULT_DEVICE_NAME: str
|
18
17
|
DEFAULT_HOST: str
|
@@ -24,8 +23,6 @@ ERROR_AUTH_INVALID: str
|
|
24
23
|
ERROR_CANNOT_CONNECT: str
|
25
24
|
ERROR_UPNP_NOT_CONFIGURED: str
|
26
25
|
ERROR_UNKNOWN: str
|
27
|
-
FRITZ_SERVICES: str
|
28
|
-
SERVICE_SET_GUEST_WIFI_PW: str
|
29
26
|
SWITCH_TYPE_DEFLECTION: str
|
30
27
|
SWITCH_TYPE_PORTFORWARD: str
|
31
28
|
SWITCH_TYPE_PROFILE: str
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from .const import CONF_OLD_DISCOVERY as CONF_OLD_DISCOVERY, DEFAULT_CONF_OLD_DISCOVERY as DEFAULT_CONF_OLD_DISCOVERY, DEFAULT_HOST as DEFAULT_HOST, DEFAULT_SSL as DEFAULT_SSL, DEFAULT_USERNAME as DEFAULT_USERNAME, DOMAIN as DOMAIN, FRITZ_EXCEPTIONS as FRITZ_EXCEPTIONS, MeshRoles as MeshRoles
|
1
|
+
from .const import CONF_OLD_DISCOVERY as CONF_OLD_DISCOVERY, DEFAULT_CONF_OLD_DISCOVERY as DEFAULT_CONF_OLD_DISCOVERY, DEFAULT_HOST as DEFAULT_HOST, DEFAULT_SSL as DEFAULT_SSL, DEFAULT_USERNAME as DEFAULT_USERNAME, DOMAIN as DOMAIN, FRITZ_EXCEPTIONS as FRITZ_EXCEPTIONS, MeshRoles as MeshRoles
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from collections.abc import Callable as Callable, ValuesView
|
4
4
|
from dataclasses import dataclass, field
|
@@ -9,19 +9,22 @@ from fritzconnection.lib.fritzstatus import FritzStatus
|
|
9
9
|
from fritzconnection.lib.fritzwlan import FritzGuestWLAN
|
10
10
|
from homeassistant.components.device_tracker import CONF_CONSIDER_HOME as CONF_CONSIDER_HOME, DEFAULT_CONSIDER_HOME as DEFAULT_CONSIDER_HOME
|
11
11
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
12
|
-
from homeassistant.core import HomeAssistant as HomeAssistant
|
12
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
13
13
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
14
14
|
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC
|
15
15
|
from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
|
16
16
|
from homeassistant.helpers.typing import StateType as StateType
|
17
17
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
18
|
+
from homeassistant.util.hass_dict import HassKey as HassKey
|
18
19
|
from types import MappingProxyType
|
19
20
|
from typing import Any, TypedDict
|
20
21
|
|
21
22
|
_LOGGER: Incomplete
|
23
|
+
FRITZ_DATA_KEY: HassKey[FritzData]
|
24
|
+
type FritzConfigEntry = ConfigEntry[AvmWrapper]
|
22
25
|
|
23
|
-
def _is_tracked(mac: str, current_devices: ValuesView) -> bool: ...
|
24
|
-
def device_filter_out_from_trackers(mac: str, device: FritzDevice, current_devices: ValuesView) -> bool: ...
|
26
|
+
def _is_tracked(mac: str, current_devices: ValuesView[set[str]]) -> bool: ...
|
27
|
+
def device_filter_out_from_trackers(mac: str, device: FritzDevice, current_devices: ValuesView[set[str]]) -> bool: ...
|
25
28
|
def _ha_is_stopping(activity: str) -> None: ...
|
26
29
|
|
27
30
|
class ClassSetupMissing(Exception):
|
@@ -57,7 +60,7 @@ class UpdateCoordinatorDataType(TypedDict):
|
|
57
60
|
entity_states: dict[str, StateType | bool]
|
58
61
|
|
59
62
|
class FritzBoxTools(DataUpdateCoordinator[UpdateCoordinatorDataType]):
|
60
|
-
config_entry:
|
63
|
+
config_entry: FritzConfigEntry
|
61
64
|
_devices: dict[str, FritzDevice]
|
62
65
|
_options: MappingProxyType[str, Any] | None
|
63
66
|
_unique_id: str | None
|
@@ -81,7 +84,7 @@ class FritzBoxTools(DataUpdateCoordinator[UpdateCoordinatorDataType]):
|
|
81
84
|
_update_available: bool
|
82
85
|
_release_url: str | None
|
83
86
|
_entity_update_functions: dict[str, Callable[[FritzStatus, StateType], Any]]
|
84
|
-
def __init__(self, hass: HomeAssistant, password: str, port: int, username: str = ..., host: str = ..., use_tls: bool = ...) -> None: ...
|
87
|
+
def __init__(self, hass: HomeAssistant, config_entry: FritzConfigEntry, password: str, port: int, username: str = ..., host: str = ..., use_tls: bool = ...) -> None: ...
|
85
88
|
async def async_setup(self, options: MappingProxyType[str, Any] | None = None) -> None: ...
|
86
89
|
def setup(self) -> None: ...
|
87
90
|
async def async_register_entity_updates(self, key: str, update_fn: Callable[[FritzStatus, StateType], Any]) -> Callable[[], None]: ...
|
@@ -120,7 +123,6 @@ class FritzBoxTools(DataUpdateCoordinator[UpdateCoordinatorDataType]):
|
|
120
123
|
async def async_trigger_reconnect(self) -> None: ...
|
121
124
|
async def async_trigger_set_guest_password(self, password: str | None, length: int) -> None: ...
|
122
125
|
async def async_trigger_cleanup(self) -> None: ...
|
123
|
-
async def service_fritzbox(self, service_call: ServiceCall, config_entry: ConfigEntry) -> None: ...
|
124
126
|
|
125
127
|
class AvmWrapper(FritzBoxTools):
|
126
128
|
async def _async_service_call(self, service_name: str, service_suffix: str, action_name: str, **kwargs: Any) -> dict: ...
|
@@ -139,9 +141,9 @@ class AvmWrapper(FritzBoxTools):
|
|
139
141
|
|
140
142
|
@dataclass
|
141
143
|
class FritzData:
|
142
|
-
tracked: dict = field(default_factory=dict)
|
143
|
-
profile_switches: dict = field(default_factory=dict)
|
144
|
-
wol_buttons: dict = field(default_factory=dict)
|
144
|
+
tracked: dict[str, set[str]] = field(default_factory=dict)
|
145
|
+
profile_switches: dict[str, set[str]] = field(default_factory=dict)
|
146
|
+
wol_buttons: dict[str, set[str]] = field(default_factory=dict)
|
145
147
|
|
146
148
|
class FritzDevice:
|
147
149
|
_connected: bool
|
@@ -1,17 +1,15 @@
|
|
1
1
|
import datetime
|
2
|
-
from .
|
3
|
-
from .coordinator import AvmWrapper as AvmWrapper, FritzData as FritzData, FritzDevice as FritzDevice, device_filter_out_from_trackers as device_filter_out_from_trackers
|
2
|
+
from .coordinator import AvmWrapper as AvmWrapper, FRITZ_DATA_KEY as FRITZ_DATA_KEY, FritzConfigEntry as FritzConfigEntry, FritzData as FritzData, FritzDevice as FritzDevice, device_filter_out_from_trackers as device_filter_out_from_trackers
|
4
3
|
from .entity import FritzDeviceBase as FritzDeviceBase
|
5
4
|
from _typeshed import Incomplete
|
6
5
|
from homeassistant.components.device_tracker import ScannerEntity as ScannerEntity
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
7
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
|
10
8
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
9
|
|
12
10
|
_LOGGER: Incomplete
|
13
11
|
|
14
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, entry: FritzConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
15
13
|
@callback
|
16
14
|
def _async_add_entities(avm_wrapper: AvmWrapper, async_add_entities: AddEntitiesCallback, data_fritz: FritzData) -> None: ...
|
17
15
|
|
@@ -1,12 +1,10 @@
|
|
1
|
-
from .
|
2
|
-
from .coordinator import AvmWrapper as AvmWrapper
|
1
|
+
from .coordinator import FritzConfigEntry as FritzConfigEntry
|
3
2
|
from _typeshed import Incomplete
|
4
3
|
from homeassistant.components.diagnostics import async_redact_data as async_redact_data
|
5
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
4
|
from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
7
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
6
|
from typing import Any
|
9
7
|
|
10
8
|
TO_REDACT: Incomplete
|
11
9
|
|
12
|
-
async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry:
|
10
|
+
async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: FritzConfigEntry) -> dict[str, Any]: ...
|
@@ -1,9 +1,7 @@
|
|
1
|
-
from .
|
2
|
-
from .coordinator import AvmWrapper as AvmWrapper
|
1
|
+
from .coordinator import AvmWrapper as AvmWrapper, FritzConfigEntry as FritzConfigEntry
|
3
2
|
from .entity import FritzBoxBaseEntity as FritzBoxBaseEntity
|
4
3
|
from _typeshed import Incomplete
|
5
4
|
from homeassistant.components.image import ImageEntity as ImageEntity
|
6
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
5
|
from homeassistant.const import EntityCategory as EntityCategory
|
8
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
7
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -11,7 +9,7 @@ from homeassistant.util import slugify as slugify
|
|
11
9
|
|
12
10
|
_LOGGER: Incomplete
|
13
11
|
|
14
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, entry: FritzConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
15
13
|
|
16
14
|
class FritzGuestWifiQRImage(FritzBoxBaseEntity, ImageEntity):
|
17
15
|
_attr_content_type: str
|
@@ -1,5 +1,5 @@
|
|
1
|
-
from .const import
|
2
|
-
from .coordinator import
|
1
|
+
from .const import DSL_CONNECTION as DSL_CONNECTION, UPTIME_DEVIATION as UPTIME_DEVIATION
|
2
|
+
from .coordinator import ConnectionInfo as ConnectionInfo, FritzConfigEntry as FritzConfigEntry
|
3
3
|
from .entity import FritzBoxBaseCoordinatorEntity as FritzBoxBaseCoordinatorEntity, FritzEntityDescription as FritzEntityDescription
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from collections.abc import Callable as Callable
|
@@ -7,7 +7,6 @@ from dataclasses import dataclass
|
|
7
7
|
from datetime import datetime
|
8
8
|
from fritzconnection.lib.fritzstatus import FritzStatus as FritzStatus
|
9
9
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
10
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
11
10
|
from homeassistant.const import EntityCategory as EntityCategory, SIGNAL_STRENGTH_DECIBELS as SIGNAL_STRENGTH_DECIBELS, UnitOfDataRate as UnitOfDataRate, UnitOfInformation as UnitOfInformation
|
12
11
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
13
12
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -40,7 +39,7 @@ class FritzSensorEntityDescription(SensorEntityDescription, FritzEntityDescripti
|
|
40
39
|
|
41
40
|
SENSOR_TYPES: tuple[FritzSensorEntityDescription, ...]
|
42
41
|
|
43
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
42
|
+
async def async_setup_entry(hass: HomeAssistant, entry: FritzConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
44
43
|
|
45
44
|
class FritzBoxSensor(FritzBoxBaseCoordinatorEntity, SensorEntity):
|
46
45
|
entity_description: FritzSensorEntityDescription
|
@@ -1,16 +1,13 @@
|
|
1
|
-
import
|
2
|
-
from .
|
3
|
-
from .coordinator import AvmWrapper as AvmWrapper
|
1
|
+
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import FritzConfigEntry as FritzConfigEntry
|
4
3
|
from _typeshed import Incomplete
|
5
|
-
from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
|
6
4
|
from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
|
7
|
-
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
5
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
|
8
6
|
from homeassistant.helpers.service import async_extract_config_entry_ids as async_extract_config_entry_ids
|
9
7
|
|
10
8
|
_LOGGER: Incomplete
|
9
|
+
SERVICE_SET_GUEST_WIFI_PW: str
|
11
10
|
SERVICE_SCHEMA_SET_GUEST_WIFI_PW: Incomplete
|
12
|
-
SERVICE_LIST: list[tuple[str, vol.Schema | None]]
|
13
11
|
|
12
|
+
async def _async_set_guest_wifi_password(service_call: ServiceCall) -> None: ...
|
14
13
|
async def async_setup_services(hass: HomeAssistant) -> None: ...
|
15
|
-
async def _async_get_configured_avm_device(hass: HomeAssistant, service_call: ServiceCall) -> list: ...
|
16
|
-
async def async_unload_services(hass: HomeAssistant) -> None: ...
|
@@ -1,10 +1,9 @@
|
|
1
|
-
from .const import
|
2
|
-
from .coordinator import AvmWrapper as AvmWrapper, FritzData as FritzData, FritzDevice as FritzDevice, SwitchInfo as SwitchInfo, device_filter_out_from_trackers as device_filter_out_from_trackers
|
1
|
+
from .const import DOMAIN as DOMAIN, MeshRoles as MeshRoles, SWITCH_TYPE_DEFLECTION as SWITCH_TYPE_DEFLECTION, SWITCH_TYPE_PORTFORWARD as SWITCH_TYPE_PORTFORWARD, SWITCH_TYPE_PROFILE as SWITCH_TYPE_PROFILE, SWITCH_TYPE_WIFINETWORK as SWITCH_TYPE_WIFINETWORK, WIFI_STANDARD as WIFI_STANDARD
|
2
|
+
from .coordinator import AvmWrapper as AvmWrapper, FRITZ_DATA_KEY as FRITZ_DATA_KEY, FritzConfigEntry as FritzConfigEntry, FritzData as FritzData, FritzDevice as FritzDevice, SwitchInfo as SwitchInfo, device_filter_out_from_trackers as device_filter_out_from_trackers
|
3
3
|
from .entity import FritzBoxBaseEntity as FritzBoxBaseEntity, FritzDeviceBase as FritzDeviceBase
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from homeassistant.components.network import async_get_source_ip as async_get_source_ip
|
6
6
|
from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
7
|
from homeassistant.const import EntityCategory as EntityCategory
|
9
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
10
9
|
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo
|
@@ -22,7 +21,7 @@ async def _async_port_entities_list(avm_wrapper: AvmWrapper, device_friendly_nam
|
|
22
21
|
async def _async_wifi_entities_list(avm_wrapper: AvmWrapper, device_friendly_name: str) -> list[FritzBoxWifiSwitch]: ...
|
23
22
|
async def _async_profile_entities_list(avm_wrapper: AvmWrapper, data_fritz: FritzData) -> list[FritzBoxProfileSwitch]: ...
|
24
23
|
async def async_all_entities_list(avm_wrapper: AvmWrapper, device_friendly_name: str, data_fritz: FritzData, local_ip: str) -> list[Entity]: ...
|
25
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
24
|
+
async def async_setup_entry(hass: HomeAssistant, entry: FritzConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
26
25
|
|
27
26
|
class FritzBoxBaseCoordinatorSwitch(CoordinatorEntity[AvmWrapper], SwitchEntity):
|
28
27
|
entity_description: SwitchEntityDescription
|
@@ -1,10 +1,8 @@
|
|
1
|
-
from .
|
2
|
-
from .coordinator import AvmWrapper as AvmWrapper
|
1
|
+
from .coordinator import AvmWrapper as AvmWrapper, FritzConfigEntry as FritzConfigEntry
|
3
2
|
from .entity import FritzBoxBaseCoordinatorEntity as FritzBoxBaseCoordinatorEntity, FritzEntityDescription as FritzEntityDescription
|
4
3
|
from _typeshed import Incomplete
|
5
4
|
from dataclasses import dataclass
|
6
5
|
from homeassistant.components.update import UpdateEntity as UpdateEntity, UpdateEntityDescription as UpdateEntityDescription, UpdateEntityFeature as UpdateEntityFeature
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
6
|
from homeassistant.const import EntityCategory as EntityCategory
|
9
7
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
10
8
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -15,7 +13,7 @@ _LOGGER: Incomplete
|
|
15
13
|
@dataclass(frozen=True, kw_only=True)
|
16
14
|
class FritzUpdateEntityDescription(UpdateEntityDescription, FritzEntityDescription): ...
|
17
15
|
|
18
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
16
|
+
async def async_setup_entry(hass: HomeAssistant, entry: FritzConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
19
17
|
|
20
18
|
class FritzBoxUpdateEntity(FritzBoxBaseCoordinatorEntity, UpdateEntity):
|
21
19
|
_attr_entity_category: Incomplete
|
@@ -1,9 +1,9 @@
|
|
1
1
|
from .const import DEFAULT_HOST as DEFAULT_HOST, DEFAULT_USERNAME as DEFAULT_USERNAME, DOMAIN as DOMAIN
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from collections.abc import Mapping
|
4
|
-
from homeassistant.components import ssdp as ssdp
|
5
4
|
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
6
5
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
6
|
+
from homeassistant.helpers.service_info.ssdp import ATTR_UPNP_FRIENDLY_NAME as ATTR_UPNP_FRIENDLY_NAME, ATTR_UPNP_UDN as ATTR_UPNP_UDN, SsdpServiceInfo as SsdpServiceInfo
|
7
7
|
from typing import Any, Self
|
8
8
|
|
9
9
|
DATA_SCHEMA_USER: Incomplete
|
@@ -24,7 +24,7 @@ class FritzboxConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
24
24
|
async def async_try_connect(self) -> str: ...
|
25
25
|
def _try_connect(self) -> str: ...
|
26
26
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
27
|
-
async def async_step_ssdp(self, discovery_info:
|
27
|
+
async def async_step_ssdp(self, discovery_info: SsdpServiceInfo) -> ConfigFlowResult: ...
|
28
28
|
def is_matching(self, other_flow: Self) -> bool: ...
|
29
29
|
async def async_step_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
30
30
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
@@ -24,7 +24,7 @@ class FritzboxDataUpdateCoordinator(DataUpdateCoordinator[FritzboxCoordinatorDat
|
|
24
24
|
new_devices: set[str]
|
25
25
|
new_templates: set[str]
|
26
26
|
data: Incomplete
|
27
|
-
def __init__(self, hass: HomeAssistant,
|
27
|
+
def __init__(self, hass: HomeAssistant, config_entry: FritzboxConfigEntry) -> None: ...
|
28
28
|
async def async_setup(self) -> None: ...
|
29
29
|
def cleanup_removed_devices(self, available_ains: list[str]) -> None: ...
|
30
30
|
def _update_fritz_devices(self) -> FritzboxCoordinatorData: ...
|
@@ -1,11 +1,11 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN, FroniusConfigEntryData as FroniusConfigEntryData
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from homeassistant.components.dhcp import DhcpServiceInfo as DhcpServiceInfo
|
4
3
|
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
5
4
|
from homeassistant.const import CONF_HOST as CONF_HOST
|
6
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
6
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
8
7
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
8
|
+
from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
|
9
9
|
from typing import Any, Final
|
10
10
|
|
11
11
|
_LOGGER: Final[Incomplete]
|
@@ -18,7 +18,7 @@ from homeassistant.helpers.translation import async_get_translations as async_ge
|
|
18
18
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
19
19
|
from homeassistant.loader import async_get_integration as async_get_integration, bind_hass as bind_hass
|
20
20
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
21
|
-
from propcache import cached_property
|
21
|
+
from propcache.api import cached_property
|
22
22
|
from typing import Any, TypedDict
|
23
23
|
from yarl import URL
|
24
24
|
|
@@ -1,14 +1,12 @@
|
|
1
1
|
from . import FGLairConfigEntry as FGLairConfigEntry
|
2
|
-
from .const import DOMAIN as DOMAIN
|
3
2
|
from .coordinator import FGLairCoordinator as FGLairCoordinator
|
3
|
+
from .entity import FGLairEntity as FGLairEntity
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from ayla_iot_unofficial.fujitsu_hvac import FujitsuHVAC as FujitsuHVAC
|
6
6
|
from homeassistant.components.climate import ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, FAN_AUTO as FAN_AUTO, FAN_HIGH as FAN_HIGH, FAN_LOW as FAN_LOW, FAN_MEDIUM as FAN_MEDIUM, HVACMode as HVACMode, SWING_BOTH as SWING_BOTH, SWING_HORIZONTAL as SWING_HORIZONTAL, SWING_OFF as SWING_OFF, SWING_VERTICAL as SWING_VERTICAL
|
7
7
|
from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, PRECISION_HALVES as PRECISION_HALVES, UnitOfTemperature as UnitOfTemperature
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
|
-
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
10
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
|
-
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
12
10
|
from typing import Any
|
13
11
|
|
14
12
|
HA_TO_FUJI_FAN: Incomplete
|
@@ -20,19 +18,15 @@ FUJI_TO_HA_SWING: Incomplete
|
|
20
18
|
|
21
19
|
async def async_setup_entry(hass: HomeAssistant, entry: FGLairConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
22
20
|
|
23
|
-
class FGLairDevice(
|
21
|
+
class FGLairDevice(FGLairEntity, ClimateEntity):
|
24
22
|
_attr_temperature_unit: Incomplete
|
25
23
|
_attr_precision = PRECISION_HALVES
|
26
24
|
_attr_target_temperature_step: float
|
27
|
-
_attr_has_entity_name: bool
|
28
25
|
_attr_name: Incomplete
|
29
26
|
_attr_unique_id: Incomplete
|
30
|
-
_attr_device_info: Incomplete
|
31
27
|
_attr_supported_features: Incomplete
|
32
28
|
def __init__(self, coordinator: FGLairCoordinator, device: FujitsuHVAC) -> None: ...
|
33
29
|
@property
|
34
|
-
def device(self) -> FujitsuHVAC: ...
|
35
|
-
@property
|
36
30
|
def available(self) -> bool: ...
|
37
31
|
async def async_set_fan_mode(self, fan_mode: str) -> None: ...
|
38
32
|
async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: ...
|
@@ -0,0 +1,15 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import FGLairCoordinator as FGLairCoordinator
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from ayla_iot_unofficial.fujitsu_hvac import FujitsuHVAC as FujitsuHVAC
|
5
|
+
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
6
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
7
|
+
|
8
|
+
class FGLairEntity(CoordinatorEntity[FGLairCoordinator]):
|
9
|
+
_attr_has_entity_name: bool
|
10
|
+
_attr_device_info: Incomplete
|
11
|
+
def __init__(self, coordinator: FGLairCoordinator, device: FujitsuHVAC) -> None: ...
|
12
|
+
@property
|
13
|
+
def available(self) -> bool: ...
|
14
|
+
@property
|
15
|
+
def device(self) -> FujitsuHVAC: ...
|
@@ -0,0 +1,21 @@
|
|
1
|
+
from .climate import FGLairConfigEntry as FGLairConfigEntry
|
2
|
+
from .coordinator import FGLairCoordinator as FGLairCoordinator
|
3
|
+
from .entity import FGLairEntity as FGLairEntity
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from ayla_iot_unofficial.fujitsu_hvac import FujitsuHVAC as FujitsuHVAC
|
6
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
|
7
|
+
from homeassistant.const import UnitOfTemperature as UnitOfTemperature
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
10
|
+
|
11
|
+
async def async_setup_entry(hass: HomeAssistant, entry: FGLairConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
12
|
+
|
13
|
+
class FGLairOutsideTemperature(FGLairEntity, SensorEntity):
|
14
|
+
_attr_device_class: Incomplete
|
15
|
+
_attr_native_unit_of_measurement: Incomplete
|
16
|
+
_attr_state_class: Incomplete
|
17
|
+
_attr_translation_key: str
|
18
|
+
_attr_unique_id: Incomplete
|
19
|
+
def __init__(self, coordinator: FGLairCoordinator, device: FujitsuHVAC) -> None: ...
|
20
|
+
@property
|
21
|
+
def native_value(self) -> float | None: ...
|
@@ -1,9 +1,9 @@
|
|
1
1
|
from .const import DEFAULT_PORT as DEFAULT_PORT, DOMAIN as DOMAIN, LOGGER as LOGGER
|
2
|
-
from homeassistant.components.dhcp import DhcpServiceInfo as DhcpServiceInfo
|
3
2
|
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
4
3
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_MAC as CONF_MAC, CONF_PASSWORD as CONF_PASSWORD, CONF_SSL as CONF_SSL, CONF_VERIFY_SSL as CONF_VERIFY_SSL
|
5
4
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
6
5
|
from homeassistant.helpers.device_registry import format_mac as format_mac
|
6
|
+
from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
|
7
7
|
from homeassistant.helpers.service_info.mqtt import MqttServiceInfo as MqttServiceInfo
|
8
8
|
from typing import Any
|
9
9
|
|
@@ -0,0 +1,23 @@
|
|
1
|
+
from . import FytaConfigEntry as FytaConfigEntry
|
2
|
+
from .entity import FytaPlantEntity as FytaPlantEntity
|
3
|
+
from collections.abc import Callable as Callable
|
4
|
+
from dataclasses import dataclass
|
5
|
+
from fyta_cli.fyta_models import Plant as Plant
|
6
|
+
from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
|
7
|
+
from homeassistant.const import EntityCategory as EntityCategory
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
10
|
+
from typing import Final
|
11
|
+
|
12
|
+
@dataclass(frozen=True, kw_only=True)
|
13
|
+
class FytaBinarySensorEntityDescription(BinarySensorEntityDescription):
|
14
|
+
value_fn: Callable[[Plant], bool]
|
15
|
+
|
16
|
+
BINARY_SENSORS: Final[list[FytaBinarySensorEntityDescription]]
|
17
|
+
|
18
|
+
async def async_setup_entry(hass: HomeAssistant, entry: FytaConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
19
|
+
|
20
|
+
class FytaPlantBinarySensor(FytaPlantEntity, BinarySensorEntity):
|
21
|
+
entity_description: FytaBinarySensorEntityDescription
|
22
|
+
@property
|
23
|
+
def is_on(self) -> bool: ...
|
@@ -3,8 +3,8 @@ from .const import DOMAIN as DOMAIN
|
|
3
3
|
from .coordinator import FytaCoordinator as FytaCoordinator
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from fyta_cli.fyta_models import Plant as Plant
|
6
|
-
from homeassistant.components.sensor import SensorEntityDescription as SensorEntityDescription
|
7
6
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
7
|
+
from homeassistant.helpers.entity import EntityDescription as EntityDescription
|
8
8
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
9
9
|
|
10
10
|
class FytaPlantEntity(CoordinatorEntity[FytaCoordinator]):
|
@@ -13,7 +13,7 @@ class FytaPlantEntity(CoordinatorEntity[FytaCoordinator]):
|
|
13
13
|
_attr_unique_id: Incomplete
|
14
14
|
_attr_device_info: Incomplete
|
15
15
|
entity_description: Incomplete
|
16
|
-
def __init__(self, coordinator: FytaCoordinator, entry: FytaConfigEntry, description:
|
16
|
+
def __init__(self, coordinator: FytaCoordinator, entry: FytaConfigEntry, description: EntityDescription, plant_id: int) -> None: ...
|
17
17
|
@property
|
18
18
|
def plant(self) -> Plant: ...
|
19
19
|
@property
|
@@ -0,0 +1,18 @@
|
|
1
|
+
from . import FytaConfigEntry as FytaConfigEntry
|
2
|
+
from .coordinator import FytaCoordinator as FytaCoordinator
|
3
|
+
from .entity import FytaPlantEntity as FytaPlantEntity
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from homeassistant.components.image import ImageEntity as ImageEntity, ImageEntityDescription as ImageEntityDescription
|
6
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
+
|
10
|
+
async def async_setup_entry(hass: HomeAssistant, entry: FytaConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
11
|
+
|
12
|
+
class FytaPlantImageEntity(FytaPlantEntity, ImageEntity):
|
13
|
+
entity_description: ImageEntityDescription
|
14
|
+
_attr_name: Incomplete
|
15
|
+
def __init__(self, coordinator: FytaCoordinator, entry: ConfigEntry, description: ImageEntityDescription, plant_id: int) -> None: ...
|
16
|
+
_attr_image_last_updated: Incomplete
|
17
|
+
@property
|
18
|
+
def image_url(self) -> str: ...
|
@@ -59,6 +59,7 @@ class GenericThermostat(ClimateEntity, RestoreEntity):
|
|
59
59
|
_attr_supported_features: Incomplete
|
60
60
|
_attr_preset_modes: Incomplete
|
61
61
|
_presets: Incomplete
|
62
|
+
_presets_inv: Incomplete
|
62
63
|
def __init__(self, hass: HomeAssistant, name: str, heater_entity_id: str, sensor_entity_id: str, min_temp: float | None, max_temp: float | None, target_temp: float | None, ac_mode: bool | None, min_cycle_duration: timedelta | None, cold_tolerance: float, hot_tolerance: float, keep_alive: timedelta | None, initial_hvac_mode: HVACMode | None, presets: dict[str, float], precision: float | None, target_temperature_step: float | None, unit: UnitOfTemperature, unique_id: str | None) -> None: ...
|
63
64
|
async def async_added_to_hass(self) -> None: ...
|
64
65
|
@property
|
@@ -6,7 +6,7 @@ from homeassistant.helpers.entity import Entity as Entity
|
|
6
6
|
from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
|
7
7
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
8
8
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
9
|
-
from propcache import cached_property
|
9
|
+
from propcache.api import cached_property
|
10
10
|
from typing import Any, final
|
11
11
|
|
12
12
|
_LOGGER: Incomplete
|
@@ -1,10 +1,10 @@
|
|
1
1
|
from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from homeassistant.components import dhcp as dhcp
|
4
3
|
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
5
4
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME
|
6
5
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
7
6
|
from homeassistant.helpers.device_registry import format_mac as format_mac
|
7
|
+
from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
|
8
8
|
from typing import Any
|
9
9
|
|
10
10
|
_LOGGER: Incomplete
|
@@ -12,7 +12,7 @@ _LOGGER: Incomplete
|
|
12
12
|
class GoalZeroFlowHandler(ConfigFlow, domain=DOMAIN):
|
13
13
|
VERSION: int
|
14
14
|
_discovered_ip: str
|
15
|
-
async def async_step_dhcp(self, discovery_info:
|
15
|
+
async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
|
16
16
|
async def async_step_confirm_discovery(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
17
17
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
18
18
|
async def _async_try_connect(self, host: str) -> tuple[str | None, str | None]: ...
|
@@ -0,0 +1,17 @@
|
|
1
|
+
from .api import AsyncConfigEntryAuth as AsyncConfigEntryAuth, DriveClient as DriveClient
|
2
|
+
from .const import DOMAIN as DOMAIN
|
3
|
+
from collections.abc import Callable as Callable
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
|
+
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
7
|
+
from homeassistant.helpers import instance_id as instance_id
|
8
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
9
|
+
from homeassistant.helpers.config_entry_oauth2_flow import OAuth2Session as OAuth2Session, async_get_config_entry_implementation as async_get_config_entry_implementation
|
10
|
+
from homeassistant.util.hass_dict import HassKey as HassKey
|
11
|
+
|
12
|
+
DATA_BACKUP_AGENT_LISTENERS: HassKey[list[Callable[[], None]]]
|
13
|
+
type GoogleDriveConfigEntry = ConfigEntry[DriveClient]
|
14
|
+
|
15
|
+
async def async_setup_entry(hass: HomeAssistant, entry: GoogleDriveConfigEntry) -> bool: ...
|
16
|
+
async def async_unload_entry(hass: HomeAssistant, entry: GoogleDriveConfigEntry) -> bool: ...
|
17
|
+
def _notify_backup_listeners(hass: HomeAssistant) -> None: ...
|
@@ -0,0 +1,35 @@
|
|
1
|
+
from _typeshed import Incomplete
|
2
|
+
from aiohttp import ClientSession as ClientSession, StreamReader as StreamReader
|
3
|
+
from collections.abc import AsyncIterator, Callable as Callable, Coroutine
|
4
|
+
from google_drive_api.api import AbstractAuth
|
5
|
+
from homeassistant.components.backup import AgentBackup as AgentBackup, suggested_filename as suggested_filename
|
6
|
+
from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
|
7
|
+
from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN
|
8
|
+
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
|
9
|
+
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
10
|
+
from typing import Any
|
11
|
+
|
12
|
+
_UPLOAD_AND_DOWNLOAD_TIMEOUT: Incomplete
|
13
|
+
_LOGGER: Incomplete
|
14
|
+
|
15
|
+
class AsyncConfigEntryAuth(AbstractAuth):
|
16
|
+
_oauth_session: Incomplete
|
17
|
+
def __init__(self, websession: ClientSession, oauth_session: config_entry_oauth2_flow.OAuth2Session) -> None: ...
|
18
|
+
async def async_get_access_token(self) -> str: ...
|
19
|
+
|
20
|
+
class AsyncConfigFlowAuth(AbstractAuth):
|
21
|
+
_token: Incomplete
|
22
|
+
def __init__(self, websession: ClientSession, token: str) -> None: ...
|
23
|
+
async def async_get_access_token(self) -> str: ...
|
24
|
+
|
25
|
+
class DriveClient:
|
26
|
+
_ha_instance_id: Incomplete
|
27
|
+
_api: Incomplete
|
28
|
+
def __init__(self, ha_instance_id: str, auth: AbstractAuth) -> None: ...
|
29
|
+
async def async_get_email_address(self) -> str: ...
|
30
|
+
async def async_create_ha_root_folder_if_not_exists(self) -> tuple[str, str]: ...
|
31
|
+
async def async_upload_backup(self, open_stream: Callable[[], Coroutine[Any, Any, AsyncIterator[bytes]]], backup: AgentBackup) -> None: ...
|
32
|
+
async def async_list_backups(self) -> list[AgentBackup]: ...
|
33
|
+
async def async_get_backup_file_id(self, backup_id: str) -> str | None: ...
|
34
|
+
async def async_delete(self, file_id: str) -> None: ...
|
35
|
+
async def async_download(self, file_id: str) -> StreamReader: ...
|
@@ -0,0 +1,6 @@
|
|
1
|
+
from homeassistant.components.application_credentials import AuthorizationServer as AuthorizationServer
|
2
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
3
|
+
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
4
|
+
|
5
|
+
async def async_get_authorization_server(hass: HomeAssistant) -> AuthorizationServer: ...
|
6
|
+
async def async_get_description_placeholders(hass: HomeAssistant) -> dict[str, str]: ...
|
@@ -0,0 +1,28 @@
|
|
1
|
+
from . import DATA_BACKUP_AGENT_LISTENERS as DATA_BACKUP_AGENT_LISTENERS, GoogleDriveConfigEntry as GoogleDriveConfigEntry
|
2
|
+
from .const import DOMAIN as DOMAIN
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import AsyncIterator, Callable as Callable, Coroutine
|
5
|
+
from homeassistant.components.backup import AgentBackup as AgentBackup, BackupAgent as BackupAgent, BackupAgentError as BackupAgentError
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
8
|
+
from homeassistant.helpers.aiohttp_client import ChunkAsyncStreamIterator as ChunkAsyncStreamIterator
|
9
|
+
from homeassistant.util import slugify as slugify
|
10
|
+
from typing import Any
|
11
|
+
|
12
|
+
_LOGGER: Incomplete
|
13
|
+
|
14
|
+
async def async_get_backup_agents(hass: HomeAssistant, **kwargs: Any) -> list[BackupAgent]: ...
|
15
|
+
@callback
|
16
|
+
def async_register_backup_agents_listener(hass: HomeAssistant, *, listener: Callable[[], None], **kwargs: Any) -> Callable[[], None]: ...
|
17
|
+
|
18
|
+
class GoogleDriveBackupAgent(BackupAgent):
|
19
|
+
domain = DOMAIN
|
20
|
+
name: Incomplete
|
21
|
+
unique_id: Incomplete
|
22
|
+
_client: Incomplete
|
23
|
+
def __init__(self, config_entry: GoogleDriveConfigEntry) -> None: ...
|
24
|
+
async def async_upload_backup(self, *, open_stream: Callable[[], Coroutine[Any, Any, AsyncIterator[bytes]]], backup: AgentBackup, **kwargs: Any) -> None: ...
|
25
|
+
async def async_list_backups(self, **kwargs: Any) -> list[AgentBackup]: ...
|
26
|
+
async def async_get_backup(self, backup_id: str, **kwargs: Any) -> AgentBackup | None: ...
|
27
|
+
async def async_download_backup(self, backup_id: str, **kwargs: Any) -> AsyncIterator[bytes]: ...
|
28
|
+
async def async_delete_backup(self, backup_id: str, **kwargs: Any) -> None: ...
|