homeassistant-stubs 2025.1.4__py3-none-any.whl → 2025.2.0b0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- homeassistant-stubs/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/entity.pyi +2 -0
- 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 +6 -2
- homeassistant-stubs/components/backup/agent.pyi +6 -4
- homeassistant-stubs/components/backup/backup.pyi +1 -0
- homeassistant-stubs/components/backup/config.pyi +44 -1
- homeassistant-stubs/components/backup/http.pyi +7 -0
- homeassistant-stubs/components/backup/manager.pyi +42 -20
- homeassistant-stubs/components/backup/models.pyi +10 -3
- homeassistant-stubs/components/backup/store.pyi +7 -2
- homeassistant-stubs/components/backup/util.pyi +83 -0
- homeassistant-stubs/components/backup/websocket.pyi +5 -2
- 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 +4 -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/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 +38 -0
- homeassistant-stubs/components/eheimdigital/config_flow.pyi +1 -1
- homeassistant-stubs/components/eheimdigital/const.pyi +4 -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 +1 -0
- 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 +5 -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_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 +2 -0
- homeassistant-stubs/components/mcp_server/http.pyi +31 -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/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 +25 -0
- homeassistant-stubs/components/onedrive/api.pyi +20 -0
- homeassistant-stubs/components/onedrive/application_credentials.pyi +5 -0
- homeassistant-stubs/components/onedrive/backup.pyi +40 -0
- homeassistant-stubs/components/onedrive/config_flow.pyi +19 -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 +1 -0
- homeassistant-stubs/components/reolink/config_flow.pyi +6 -2
- homeassistant-stubs/components/reolink/entity.pyi +1 -1
- homeassistant-stubs/components/reolink/host.pyi +3 -0
- homeassistant-stubs/components/reolink/switch.pyi +5 -1
- homeassistant-stubs/components/reolink/util.pyi +2 -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 +2 -0
- homeassistant-stubs/components/roborock/const.pyi +4 -0
- homeassistant-stubs/components/roborock/coordinator.pyi +8 -4
- homeassistant-stubs/components/roborock/image.pyi +10 -11
- homeassistant-stubs/components/roborock/roborock_storage.pyi +21 -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/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 +2 -2
- 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 +34 -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/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/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 +17 -7
- 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 +3 -5
- 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.4.dist-info → homeassistant_stubs-2025.2.0b0.dist-info}/METADATA +4 -4
- {homeassistant_stubs-2025.1.4.dist-info → homeassistant_stubs-2025.2.0b0.dist-info}/RECORD +719 -584
- 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.4.dist-info → homeassistant_stubs-2025.2.0b0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.1.4.dist-info → homeassistant_stubs-2025.2.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -1,12 +1,10 @@
|
|
1
1
|
from .const import CONF_AES_KEYS as CONF_AES_KEYS, CONF_CAMERA_CREDENTIALS as CONF_CAMERA_CREDENTIALS, CONF_CONFIG_ENTRY_MINOR_VERSION as CONF_CONFIG_ENTRY_MINOR_VERSION, CONF_CONNECTION_PARAMETERS as CONF_CONNECTION_PARAMETERS, CONF_CREDENTIALS_HASH as CONF_CREDENTIALS_HASH, CONF_DEVICE_CONFIG as CONF_DEVICE_CONFIG, CONF_LIVE_VIEW as CONF_LIVE_VIEW, CONF_USES_HTTP as CONF_USES_HTTP, CONNECT_TIMEOUT as CONNECT_TIMEOUT, DISCOVERY_TIMEOUT as DISCOVERY_TIMEOUT, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
|
2
|
-
from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
3
|
-
from .models import TPLinkData as TPLinkData
|
2
|
+
from .coordinator import TPLinkConfigEntry as TPLinkConfigEntry, TPLinkData as TPLinkData, TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
4
3
|
from _typeshed import Incomplete
|
5
4
|
from aiohttp import ClientSession as ClientSession
|
6
5
|
from collections.abc import Iterable
|
7
6
|
from homeassistant import config_entries as config_entries
|
8
7
|
from homeassistant.components import network as network
|
9
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
10
8
|
from homeassistant.const import CONF_ALIAS as CONF_ALIAS, CONF_AUTHENTICATION as CONF_AUTHENTICATION, CONF_DEVICE as CONF_DEVICE, CONF_HOST as CONF_HOST, CONF_MAC as CONF_MAC, CONF_MODEL as CONF_MODEL, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME
|
11
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
12
10
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
@@ -16,7 +14,6 @@ from homeassistant.helpers.event import async_track_time_interval as async_track
|
|
16
14
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
17
15
|
from kasa import Credentials, Device
|
18
16
|
|
19
|
-
type TPLinkConfigEntry = ConfigEntry[TPLinkData]
|
20
17
|
DISCOVERY_INTERVAL: Incomplete
|
21
18
|
CONFIG_SCHEMA: Incomplete
|
22
19
|
_LOGGER: Incomplete
|
@@ -29,10 +26,10 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
|
29
26
|
async def async_setup_entry(hass: HomeAssistant, entry: TPLinkConfigEntry) -> bool: ...
|
30
27
|
async def async_unload_entry(hass: HomeAssistant, entry: TPLinkConfigEntry) -> bool: ...
|
31
28
|
def legacy_device_id(device: Device) -> str: ...
|
32
|
-
def get_device_name(device: Device, parent: Device | None = None) -> str: ...
|
29
|
+
def get_device_name(device: Device, parent: Device | None = None) -> str | None: ...
|
33
30
|
async def get_credentials(hass: HomeAssistant) -> Credentials | None: ...
|
34
31
|
async def set_credentials(hass: HomeAssistant, username: str, password: str) -> None: ...
|
35
32
|
def mac_alias(mac: str) -> str: ...
|
36
33
|
def _mac_connection_or_none(device: dr.DeviceEntry) -> str | None: ...
|
37
34
|
def _device_id_is_mac_or_none(mac: str, device_ids: Iterable[str]) -> str | None: ...
|
38
|
-
async def async_migrate_entry(hass: HomeAssistant, config_entry:
|
35
|
+
async def async_migrate_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry) -> bool: ...
|
@@ -10,6 +10,7 @@ from typing import Final
|
|
10
10
|
@dataclass(frozen=True, kw_only=True)
|
11
11
|
class TPLinkBinarySensorEntityDescription(BinarySensorEntityDescription, TPLinkFeatureEntityDescription): ...
|
12
12
|
|
13
|
+
PARALLEL_UPDATES: int
|
13
14
|
BINARY_SENSOR_DESCRIPTIONS: Final[Incomplete]
|
14
15
|
BINARYSENSOR_DESCRIPTIONS_MAP: Incomplete
|
15
16
|
|
@@ -1,5 +1,5 @@
|
|
1
1
|
from . import TPLinkConfigEntry as TPLinkConfigEntry
|
2
|
-
from .deprecate import DeprecatedInfo as DeprecatedInfo
|
2
|
+
from .deprecate import DeprecatedInfo as DeprecatedInfo
|
3
3
|
from .entity import CoordinatedTPLinkFeatureEntity as CoordinatedTPLinkFeatureEntity, TPLinkFeatureEntityDescription as TPLinkFeatureEntityDescription
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from dataclasses import dataclass
|
@@ -11,6 +11,7 @@ from typing import Final
|
|
11
11
|
@dataclass(frozen=True, kw_only=True)
|
12
12
|
class TPLinkButtonEntityDescription(ButtonEntityDescription, TPLinkFeatureEntityDescription): ...
|
13
13
|
|
14
|
+
PARALLEL_UPDATES: int
|
14
15
|
BUTTON_DESCRIPTIONS: Final[Incomplete]
|
15
16
|
BUTTON_DESCRIPTIONS_MAP: Incomplete
|
16
17
|
|
@@ -1,7 +1,7 @@
|
|
1
|
-
from . import TPLinkConfigEntry as TPLinkConfigEntry
|
1
|
+
from . import TPLinkConfigEntry as TPLinkConfigEntry
|
2
2
|
from .const import CONF_CAMERA_CREDENTIALS as CONF_CAMERA_CREDENTIALS
|
3
3
|
from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
4
|
-
from .entity import
|
4
|
+
from .entity import CoordinatedTPLinkModuleEntity as CoordinatedTPLinkModuleEntity, TPLinkModuleEntityDescription as TPLinkModuleEntityDescription
|
5
5
|
from _typeshed import Incomplete
|
6
6
|
from aiohttp import web as web
|
7
7
|
from dataclasses import dataclass
|
@@ -11,10 +11,10 @@ from homeassistant.config_entries import ConfigFlowContext as ConfigFlowContext
|
|
11
11
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
12
12
|
from homeassistant.helpers.aiohttp_client import async_aiohttp_proxy_stream as async_aiohttp_proxy_stream
|
13
13
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
14
|
-
from kasa import
|
15
|
-
from kasa.smartcam.modules import Camera as CameraModule
|
14
|
+
from kasa import Device as Device
|
16
15
|
|
17
16
|
_LOGGER: Incomplete
|
17
|
+
PARALLEL_UPDATES: int
|
18
18
|
|
19
19
|
@dataclass(frozen=True, kw_only=True)
|
20
20
|
class TPLinkCameraEntityDescription(CameraEntityDescription, TPLinkModuleEntityDescription): ...
|
@@ -23,21 +23,21 @@ CAMERA_DESCRIPTIONS: tuple[TPLinkCameraEntityDescription, ...]
|
|
23
23
|
|
24
24
|
async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
25
25
|
|
26
|
-
class TPLinkCameraEntity(
|
26
|
+
class TPLinkCameraEntity(CoordinatedTPLinkModuleEntity, Camera):
|
27
27
|
IMAGE_INTERVAL: Incomplete
|
28
28
|
_attr_supported_features: Incomplete
|
29
29
|
entity_description: TPLinkCameraEntityDescription
|
30
|
+
_ffmpeg_manager: ffmpeg.FFmpegManager
|
30
31
|
_camera_module: Incomplete
|
32
|
+
_camera_credentials: Incomplete
|
31
33
|
_video_url: Incomplete
|
32
34
|
_image: bytes | None
|
33
|
-
_ffmpeg_manager: Incomplete
|
34
35
|
_image_lock: Incomplete
|
35
36
|
_last_update: float
|
36
|
-
_camera_credentials: Incomplete
|
37
37
|
_can_stream: bool
|
38
38
|
_http_mpeg_stream_running: bool
|
39
|
-
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkCameraEntityDescription, *,
|
40
|
-
def
|
39
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkCameraEntityDescription, *, parent: Device | None = None) -> None: ...
|
40
|
+
async def async_added_to_hass(self) -> None: ...
|
41
41
|
_attr_is_on: Incomplete
|
42
42
|
@callback
|
43
43
|
def _async_update_attrs(self) -> bool: ...
|
@@ -1,34 +1,41 @@
|
|
1
|
-
from . import TPLinkConfigEntry as TPLinkConfigEntry
|
2
|
-
from .const import UNIT_MAPPING as UNIT_MAPPING
|
1
|
+
from . import TPLinkConfigEntry as TPLinkConfigEntry, legacy_device_id as legacy_device_id
|
2
|
+
from .const import DOMAIN as DOMAIN, UNIT_MAPPING as UNIT_MAPPING
|
3
3
|
from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
4
|
-
from .entity import
|
4
|
+
from .entity import CoordinatedTPLinkModuleEntity as CoordinatedTPLinkModuleEntity, TPLinkModuleEntityDescription as TPLinkModuleEntityDescription, async_refresh_after as async_refresh_after
|
5
5
|
from _typeshed import Incomplete
|
6
|
-
from
|
7
|
-
from
|
6
|
+
from collections.abc import Callable as Callable
|
7
|
+
from dataclasses import dataclass
|
8
|
+
from homeassistant.components.climate import ATTR_TEMPERATURE as ATTR_TEMPERATURE, ClimateEntity as ClimateEntity, ClimateEntityDescription as ClimateEntityDescription, ClimateEntityFeature as ClimateEntityFeature, HVACAction as HVACAction, HVACMode as HVACMode
|
9
|
+
from homeassistant.const import PRECISION_TENTHS as PRECISION_TENTHS, UnitOfTemperature as UnitOfTemperature
|
8
10
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
11
|
from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
|
10
12
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
13
|
from kasa import Device as Device
|
12
14
|
from typing import Any
|
13
15
|
|
16
|
+
PARALLEL_UPDATES: int
|
14
17
|
STATE_TO_ACTION: Incomplete
|
15
18
|
_LOGGER: Incomplete
|
16
19
|
|
20
|
+
@dataclass(frozen=True, kw_only=True)
|
21
|
+
class TPLinkClimateEntityDescription(ClimateEntityDescription, TPLinkModuleEntityDescription):
|
22
|
+
unique_id_fn: Callable[[Device, TPLinkModuleEntityDescription], str] = ...
|
23
|
+
|
24
|
+
CLIMATE_DESCRIPTIONS: tuple[TPLinkClimateEntityDescription, ...]
|
25
|
+
|
17
26
|
async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
18
27
|
|
19
|
-
class TPLinkClimateEntity(
|
28
|
+
class TPLinkClimateEntity(CoordinatedTPLinkModuleEntity, ClimateEntity):
|
20
29
|
_attr_name: Incomplete
|
21
30
|
_attr_supported_features: Incomplete
|
22
31
|
_attr_hvac_modes: Incomplete
|
23
32
|
_attr_precision = PRECISION_TENTHS
|
24
|
-
|
25
|
-
|
26
|
-
_temp_feature: Incomplete
|
27
|
-
_target_feature: Incomplete
|
33
|
+
entity_description: TPLinkClimateEntityDescription
|
34
|
+
_thermostat_module: Incomplete
|
28
35
|
_attr_min_temp: Incomplete
|
29
36
|
_attr_max_temp: Incomplete
|
30
37
|
_attr_temperature_unit: Incomplete
|
31
|
-
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, parent: Device) -> None: ...
|
38
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkClimateEntityDescription, *, parent: Device) -> None: ...
|
32
39
|
@async_refresh_after
|
33
40
|
async def async_set_temperature(self, **kwargs: Any) -> None: ...
|
34
41
|
@async_refresh_after
|
@@ -43,4 +50,3 @@ class TPLinkClimateEntity(CoordinatedTPLinkEntity, ClimateEntity):
|
|
43
50
|
_attr_hvac_action: Incomplete
|
44
51
|
@callback
|
45
52
|
def _async_update_attrs(self) -> bool: ...
|
46
|
-
def _get_unique_id(self) -> str: ...
|
@@ -2,10 +2,11 @@ from . import async_discover_devices as async_discover_devices, create_async_tpl
|
|
2
2
|
from .const import CONF_AES_KEYS as CONF_AES_KEYS, CONF_CAMERA_CREDENTIALS as CONF_CAMERA_CREDENTIALS, CONF_CONFIG_ENTRY_MINOR_VERSION as CONF_CONFIG_ENTRY_MINOR_VERSION, CONF_CONNECTION_PARAMETERS as CONF_CONNECTION_PARAMETERS, CONF_CREDENTIALS_HASH as CONF_CREDENTIALS_HASH, CONF_LIVE_VIEW as CONF_LIVE_VIEW, CONF_USES_HTTP as CONF_USES_HTTP, CONNECT_TIMEOUT as CONNECT_TIMEOUT, DOMAIN as DOMAIN
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from collections.abc import Mapping
|
5
|
-
from homeassistant.components import
|
5
|
+
from homeassistant.components import ffmpeg as ffmpeg, stream as stream
|
6
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigEntryState as ConfigEntryState, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
|
7
7
|
from homeassistant.const import CONF_ALIAS as CONF_ALIAS, CONF_DEVICE as CONF_DEVICE, CONF_HOST as CONF_HOST, CONF_MAC as CONF_MAC, CONF_MODEL as CONF_MODEL, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME
|
8
8
|
from homeassistant.core import callback as callback
|
9
|
+
from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
|
9
10
|
from homeassistant.helpers.typing import DiscoveryInfoType as DiscoveryInfoType
|
10
11
|
from kasa import Credentials, Device
|
11
12
|
from typing import Any, Self
|
@@ -23,7 +24,7 @@ class TPLinkConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
23
24
|
_discovered_devices: dict[str, Device]
|
24
25
|
_discovered_device: Device | None
|
25
26
|
def __init__(self) -> None: ...
|
26
|
-
async def async_step_dhcp(self, discovery_info:
|
27
|
+
async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
|
27
28
|
async def async_step_integration_discovery(self, discovery_info: DiscoveryInfoType) -> ConfigFlowResult: ...
|
28
29
|
@callback
|
29
30
|
def _get_config_updates(self, entry: ConfigEntry, host: str, device: Device | None) -> dict | None: ...
|
@@ -1,5 +1,5 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
-
from homeassistant.const import Platform as Platform, UnitOfTemperature as UnitOfTemperature
|
2
|
+
from homeassistant.const import Platform as Platform, UnitOfArea as UnitOfArea, UnitOfTemperature as UnitOfTemperature
|
3
3
|
from typing import Final
|
4
4
|
|
5
5
|
DOMAIN: str
|
@@ -1,17 +1,33 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
1
2
|
from _typeshed import Incomplete
|
3
|
+
from dataclasses import dataclass
|
2
4
|
from datetime import timedelta
|
3
|
-
from homeassistant import
|
5
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
4
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
5
7
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
|
6
8
|
from homeassistant.helpers.debounce import Debouncer as Debouncer
|
7
9
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
8
|
-
from kasa import Device as Device
|
10
|
+
from kasa import Credentials as Credentials, Device as Device
|
9
11
|
|
10
12
|
_LOGGER: Incomplete
|
13
|
+
|
14
|
+
@dataclass(slots=True)
|
15
|
+
class TPLinkData:
|
16
|
+
parent_coordinator: TPLinkDataUpdateCoordinator
|
17
|
+
camera_credentials: Credentials | None
|
18
|
+
live_view: bool | None
|
19
|
+
type TPLinkConfigEntry = ConfigEntry[TPLinkData]
|
20
|
+
|
11
21
|
REQUEST_REFRESH_DELAY: float
|
12
22
|
|
13
23
|
class TPLinkDataUpdateCoordinator(DataUpdateCoordinator[None]):
|
14
|
-
config_entry:
|
24
|
+
config_entry: TPLinkConfigEntry
|
15
25
|
device: Incomplete
|
16
|
-
|
26
|
+
_update_children: Incomplete
|
27
|
+
_previous_child_device_ids: Incomplete
|
28
|
+
removed_child_device_ids: set[str]
|
29
|
+
_child_coordinators: dict[str, TPLinkDataUpdateCoordinator]
|
30
|
+
def __init__(self, hass: HomeAssistant, device: Device, update_interval: timedelta, config_entry: TPLinkConfigEntry) -> None: ...
|
17
31
|
async def _async_update_data(self) -> None: ...
|
32
|
+
async def _process_child_devices(self) -> None: ...
|
33
|
+
def get_child_coordinator(self, child: Device) -> TPLinkDataUpdateCoordinator: ...
|
@@ -1,11 +1,13 @@
|
|
1
|
+
from . import legacy_device_id as legacy_device_id
|
1
2
|
from .const import DOMAIN as DOMAIN
|
2
|
-
from .entity import
|
3
|
+
from .entity import CoordinatedTPLinkEntity as CoordinatedTPLinkEntity, TPLinkEntityDescription as TPLinkEntityDescription
|
3
4
|
from collections.abc import Sequence
|
4
5
|
from dataclasses import dataclass
|
5
6
|
from homeassistant.components.automation import automations_with_entity as automations_with_entity
|
6
7
|
from homeassistant.components.script import scripts_with_entity as scripts_with_entity
|
7
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
9
|
from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
|
10
|
+
from kasa import Device as Device
|
9
11
|
|
10
12
|
@dataclass(slots=True)
|
11
13
|
class DeprecatedInfo:
|
@@ -13,5 +15,5 @@ class DeprecatedInfo:
|
|
13
15
|
new_platform: str
|
14
16
|
breaks_in_ha_version: str
|
15
17
|
|
16
|
-
def async_check_create_deprecated(hass: HomeAssistant, unique_id: str, entity_description:
|
17
|
-
def
|
18
|
+
def async_check_create_deprecated(hass: HomeAssistant, unique_id: str, entity_description: TPLinkEntityDescription) -> bool: ...
|
19
|
+
def async_process_deprecated(hass: HomeAssistant, platform_domain: str, entry_id: str, entities: Sequence[CoordinatedTPLinkEntity], device: Device) -> None: ...
|
@@ -1,11 +1,11 @@
|
|
1
1
|
import abc
|
2
2
|
from . import get_device_name as get_device_name, legacy_device_id as legacy_device_id
|
3
3
|
from .const import ATTR_CURRENT_A as ATTR_CURRENT_A, ATTR_CURRENT_POWER_W as ATTR_CURRENT_POWER_W, ATTR_TODAY_ENERGY_KWH as ATTR_TODAY_ENERGY_KWH, ATTR_TOTAL_ENERGY_KWH as ATTR_TOTAL_ENERGY_KWH, DOMAIN as DOMAIN, PRIMARY_STATE_ID as PRIMARY_STATE_ID
|
4
|
-
from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
5
|
-
from .deprecate import DeprecatedInfo as DeprecatedInfo, async_check_create_deprecated as async_check_create_deprecated
|
4
|
+
from .coordinator import TPLinkConfigEntry as TPLinkConfigEntry, TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
5
|
+
from .deprecate import DeprecatedInfo as DeprecatedInfo, async_check_create_deprecated as async_check_create_deprecated, async_process_deprecated as async_process_deprecated
|
6
6
|
from _typeshed import Incomplete
|
7
7
|
from abc import ABC, abstractmethod
|
8
|
-
from collections.abc import Awaitable, Callable as Callable, Coroutine, Mapping
|
8
|
+
from collections.abc import Awaitable, Callable as Callable, Coroutine, Iterable, Mapping
|
9
9
|
from dataclasses import dataclass
|
10
10
|
from homeassistant.const import EntityCategory as EntityCategory
|
11
11
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
@@ -25,25 +25,32 @@ EXCLUDED_FEATURES: Incomplete
|
|
25
25
|
LEGACY_KEY_MAPPING: Incomplete
|
26
26
|
|
27
27
|
@dataclass(frozen=True, kw_only=True)
|
28
|
-
class
|
28
|
+
class TPLinkEntityDescription(EntityDescription):
|
29
29
|
deprecated_info: DeprecatedInfo | None = ...
|
30
30
|
available_fn: Callable[[Device], bool] = ...
|
31
31
|
|
32
32
|
@dataclass(frozen=True, kw_only=True)
|
33
|
-
class
|
34
|
-
|
35
|
-
|
33
|
+
class TPLinkFeatureEntityDescription(TPLinkEntityDescription): ...
|
34
|
+
|
35
|
+
@dataclass(frozen=True, kw_only=True)
|
36
|
+
class TPLinkModuleEntityDescription(TPLinkEntityDescription):
|
37
|
+
exists_fn: Callable[[Device, TPLinkConfigEntry], bool]
|
38
|
+
unique_id_fn: Callable[[Device, TPLinkModuleEntityDescription], str] = ...
|
39
|
+
entity_name_fn: Callable[[Device, TPLinkModuleEntityDescription], str | None] | None = ...
|
36
40
|
|
37
41
|
def async_refresh_after[_T: CoordinatedTPLinkEntity, **_P](func: Callable[Concatenate[_T, _P], Awaitable[None]]) -> Callable[Concatenate[_T, _P], Coroutine[Any, Any, None]]: ...
|
38
42
|
|
39
43
|
class CoordinatedTPLinkEntity(CoordinatorEntity[TPLinkDataUpdateCoordinator], ABC, metaclass=abc.ABCMeta):
|
40
44
|
_attr_has_entity_name: bool
|
41
45
|
_device: Device
|
46
|
+
entity_description: TPLinkEntityDescription
|
47
|
+
_parent: Incomplete
|
42
48
|
_feature: Incomplete
|
43
49
|
_attr_device_info: Incomplete
|
44
50
|
_attr_unique_id: Incomplete
|
45
|
-
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, feature: Feature | None = None, parent: Device | None = None) -> None: ...
|
51
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkEntityDescription, *, feature: Feature | None = None, parent: Device | None = None) -> None: ...
|
46
52
|
def _get_unique_id(self) -> str: ...
|
53
|
+
async def async_added_to_hass(self) -> None: ...
|
47
54
|
@abstractmethod
|
48
55
|
@callback
|
49
56
|
def _async_update_attrs(self) -> bool: ...
|
@@ -58,7 +65,7 @@ class CoordinatedTPLinkEntity(CoordinatorEntity[TPLinkDataUpdateCoordinator], AB
|
|
58
65
|
class CoordinatedTPLinkFeatureEntity(CoordinatedTPLinkEntity, ABC, metaclass=abc.ABCMeta):
|
59
66
|
entity_description: TPLinkFeatureEntityDescription
|
60
67
|
_feature: Feature
|
61
|
-
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, feature: Feature,
|
68
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkFeatureEntityDescription, *, feature: Feature, parent: Device | None = None) -> None: ...
|
62
69
|
def _get_unique_id(self) -> str: ...
|
63
70
|
@staticmethod
|
64
71
|
def _get_feature_unique_id(device: Device, entity_description: TPLinkFeatureEntityDescription) -> str: ...
|
@@ -67,6 +74,18 @@ class CoordinatedTPLinkFeatureEntity(CoordinatedTPLinkEntity, ABC, metaclass=abc
|
|
67
74
|
@classmethod
|
68
75
|
def _description_for_feature[_D: EntityDescription](cls, feature: Feature, descriptions: Mapping[str, _D], *, device: Device, parent: Device | None = None) -> _D | None: ...
|
69
76
|
@classmethod
|
70
|
-
def _entities_for_device[_E: CoordinatedTPLinkFeatureEntity, _D: TPLinkFeatureEntityDescription](cls, hass: HomeAssistant, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, feature_type: Feature.Type, entity_class: type[_E], descriptions: Mapping[str, _D], parent: Device | None = None) -> list[_E]: ...
|
77
|
+
def _entities_for_device[_E: CoordinatedTPLinkFeatureEntity, _D: TPLinkFeatureEntityDescription](cls, hass: HomeAssistant, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, feature_type: Feature.Type, entity_class: type[_E], descriptions: Mapping[str, _D], platform_domain: str, parent: Device | None = None) -> list[_E]: ...
|
71
78
|
@classmethod
|
72
|
-
def entities_for_device_and_its_children[_E: CoordinatedTPLinkFeatureEntity, _D: TPLinkFeatureEntityDescription](cls, hass: HomeAssistant, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, feature_type: Feature.Type, entity_class: type[_E], descriptions: Mapping[str, _D],
|
79
|
+
def entities_for_device_and_its_children[_E: CoordinatedTPLinkFeatureEntity, _D: TPLinkFeatureEntityDescription](cls, hass: HomeAssistant, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, feature_type: Feature.Type, entity_class: type[_E], descriptions: Mapping[str, _D], platform_domain: str, known_child_device_ids: set[str], first_check: bool) -> list[_E]: ...
|
80
|
+
|
81
|
+
class CoordinatedTPLinkModuleEntity(CoordinatedTPLinkEntity, ABC, metaclass=abc.ABCMeta):
|
82
|
+
entity_description: TPLinkModuleEntityDescription
|
83
|
+
_attr_name: Incomplete
|
84
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkModuleEntityDescription, *, parent: Device | None = None) -> None: ...
|
85
|
+
def _get_unique_id(self) -> str: ...
|
86
|
+
@classmethod
|
87
|
+
def _entities_for_device[_E: CoordinatedTPLinkModuleEntity, _D: TPLinkModuleEntityDescription](cls, hass: HomeAssistant, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, entity_class: type[_E], descriptions: Iterable[_D], platform_domain: str, parent: Device | None = None) -> list[_E]: ...
|
88
|
+
@classmethod
|
89
|
+
def entities_for_device_and_its_children[_E: CoordinatedTPLinkModuleEntity, _D: TPLinkModuleEntityDescription](cls, hass: HomeAssistant, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, entity_class: type[_E], descriptions: Iterable[_D], platform_domain: str, known_child_device_ids: set[str], first_check: bool) -> list[_E]: ...
|
90
|
+
|
91
|
+
def _get_new_children(device: Device, coordinator: TPLinkDataUpdateCoordinator, known_child_device_ids: set[str], entity_class_name: str) -> list[Device]: ...
|
@@ -1,28 +1,36 @@
|
|
1
|
-
from . import TPLinkConfigEntry as TPLinkConfigEntry
|
1
|
+
from . import TPLinkConfigEntry as TPLinkConfigEntry, legacy_device_id as legacy_device_id
|
2
2
|
from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
3
|
-
from .entity import
|
3
|
+
from .entity import CoordinatedTPLinkModuleEntity as CoordinatedTPLinkModuleEntity, TPLinkModuleEntityDescription as TPLinkModuleEntityDescription, async_refresh_after as async_refresh_after
|
4
4
|
from _typeshed import Incomplete
|
5
|
-
from
|
5
|
+
from collections.abc import Callable as Callable
|
6
|
+
from dataclasses import dataclass
|
7
|
+
from homeassistant.components.fan import FanEntity as FanEntity, FanEntityDescription as FanEntityDescription, FanEntityFeature as FanEntityFeature
|
6
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
8
10
|
from homeassistant.util.percentage import percentage_to_ranged_value as percentage_to_ranged_value, ranged_value_to_percentage as ranged_value_to_percentage
|
9
11
|
from homeassistant.util.scaling import int_states_in_range as int_states_in_range
|
10
12
|
from kasa import Device as Device
|
11
|
-
from kasa.interfaces import Fan as FanInterface
|
12
13
|
from typing import Any
|
13
14
|
|
15
|
+
PARALLEL_UPDATES: int
|
14
16
|
_LOGGER: Incomplete
|
15
17
|
|
18
|
+
@dataclass(frozen=True, kw_only=True)
|
19
|
+
class TPLinkFanEntityDescription(FanEntityDescription, TPLinkModuleEntityDescription):
|
20
|
+
unique_id_fn: Callable[[Device, TPLinkModuleEntityDescription], str] = ...
|
21
|
+
|
22
|
+
FAN_DESCRIPTIONS: tuple[TPLinkFanEntityDescription, ...]
|
23
|
+
|
16
24
|
async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
17
25
|
|
18
26
|
SPEED_RANGE: Incomplete
|
19
27
|
|
20
|
-
class TPLinkFanEntity(
|
28
|
+
class TPLinkFanEntity(CoordinatedTPLinkModuleEntity, FanEntity):
|
21
29
|
_attr_speed_count: Incomplete
|
22
30
|
_attr_supported_features: Incomplete
|
31
|
+
entity_description: TPLinkFanEntityDescription
|
23
32
|
fan_module: Incomplete
|
24
|
-
|
25
|
-
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, fan_module: FanInterface, parent: Device | None = None) -> None: ...
|
33
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkFanEntityDescription, *, parent: Device | None = None) -> None: ...
|
26
34
|
@async_refresh_after
|
27
35
|
async def async_turn_on(self, percentage: int | None = None, preset_mode: str | None = None, **kwargs: Any) -> None: ...
|
28
36
|
@async_refresh_after
|
@@ -1,17 +1,19 @@
|
|
1
1
|
from . import TPLinkConfigEntry as TPLinkConfigEntry, legacy_device_id as legacy_device_id
|
2
|
+
from .const import DOMAIN as DOMAIN
|
2
3
|
from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
3
|
-
from .entity import
|
4
|
+
from .entity import CoordinatedTPLinkModuleEntity as CoordinatedTPLinkModuleEntity, TPLinkModuleEntityDescription as TPLinkModuleEntityDescription, async_refresh_after as async_refresh_after
|
4
5
|
from _typeshed import Incomplete
|
5
6
|
from collections.abc import Sequence
|
6
|
-
from
|
7
|
+
from dataclasses import dataclass
|
8
|
+
from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT as ATTR_EFFECT, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_TRANSITION as ATTR_TRANSITION, ColorMode as ColorMode, EFFECT_OFF as EFFECT_OFF, LightEntity as LightEntity, LightEntityDescription as LightEntityDescription, LightEntityFeature as LightEntityFeature, filter_supported_color_modes as filter_supported_color_modes
|
7
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
8
|
-
from homeassistant.
|
10
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
9
11
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
10
12
|
from homeassistant.helpers.typing import VolDictType as VolDictType
|
11
13
|
from kasa import Device as Device
|
12
|
-
from kasa.interfaces import Light as Light, LightEffect
|
13
14
|
from typing import Any
|
14
15
|
|
16
|
+
PARALLEL_UPDATES: int
|
15
17
|
_LOGGER: Incomplete
|
16
18
|
SERVICE_RANDOM_EFFECT: str
|
17
19
|
SERVICE_SEQUENCE_EFFECT: str
|
@@ -26,19 +28,26 @@ RANDOM_EFFECT_DICT: VolDictType
|
|
26
28
|
|
27
29
|
@callback
|
28
30
|
def _async_build_base_effect(brightness: int, duration: int, transition: int, segments: list[int]) -> dict[str, Any]: ...
|
31
|
+
def _get_backwards_compatible_light_unique_id(device: Device, entity_description: TPLinkModuleEntityDescription) -> str: ...
|
32
|
+
|
33
|
+
@dataclass(frozen=True, kw_only=True)
|
34
|
+
class TPLinkLightEntityDescription(LightEntityDescription, TPLinkModuleEntityDescription):
|
35
|
+
unique_id_fn = _get_backwards_compatible_light_unique_id
|
36
|
+
|
37
|
+
LIGHT_DESCRIPTIONS: tuple[TPLinkLightEntityDescription, ...]
|
38
|
+
LIGHT_EFFECT_DESCRIPTIONS: tuple[TPLinkLightEntityDescription, ...]
|
39
|
+
|
29
40
|
async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
30
41
|
|
31
|
-
class TPLinkLightEntity(
|
42
|
+
class TPLinkLightEntity(CoordinatedTPLinkModuleEntity, LightEntity):
|
32
43
|
_attr_supported_features: Incomplete
|
33
44
|
_fixed_color_mode: ColorMode | None
|
34
|
-
|
45
|
+
entity_description: TPLinkLightEntityDescription
|
35
46
|
_light_module: Incomplete
|
36
|
-
_attr_name: Incomplete
|
37
47
|
_attr_min_color_temp_kelvin: Incomplete
|
38
48
|
_attr_max_color_temp_kelvin: Incomplete
|
39
49
|
_attr_supported_color_modes: Incomplete
|
40
|
-
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator,
|
41
|
-
def _get_unique_id(self) -> str: ...
|
50
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkLightEntityDescription, *, parent: Device | None = None) -> None: ...
|
42
51
|
@callback
|
43
52
|
def _async_extract_brightness_transition(self, **kwargs: Any) -> tuple[int | None, int | None]: ...
|
44
53
|
async def _async_set_hsv(self, hs_color: tuple[int, int], brightness: int | None, transition: int | None) -> None: ...
|
@@ -58,9 +67,11 @@ class TPLinkLightEntity(CoordinatedTPLinkEntity, LightEntity):
|
|
58
67
|
def _async_update_attrs(self) -> bool: ...
|
59
68
|
|
60
69
|
class TPLinkLightEffectEntity(TPLinkLightEntity):
|
61
|
-
_effect_module: Incomplete
|
62
|
-
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, light_module: Light, effect_module: LightEffect) -> None: ...
|
63
70
|
_attr_supported_features: Incomplete
|
71
|
+
_effect_module: Incomplete
|
72
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkLightEntityDescription, *, parent: Device | None = None) -> None: ...
|
73
|
+
async def async_added_to_hass(self) -> None: ...
|
74
|
+
def _register_effects_services(self) -> None: ...
|
64
75
|
_attr_effect: Incomplete
|
65
76
|
_attr_color_mode: Incomplete
|
66
77
|
_attr_effect_list: Incomplete
|
@@ -13,6 +13,7 @@ _LOGGER: Incomplete
|
|
13
13
|
@dataclass(frozen=True, kw_only=True)
|
14
14
|
class TPLinkNumberEntityDescription(NumberEntityDescription, TPLinkFeatureEntityDescription): ...
|
15
15
|
|
16
|
+
PARALLEL_UPDATES: int
|
16
17
|
NUMBER_DESCRIPTIONS: Final[Incomplete]
|
17
18
|
NUMBER_DESCRIPTIONS_MAP: Incomplete
|
18
19
|
|
@@ -11,6 +11,7 @@ from typing import Final
|
|
11
11
|
@dataclass(frozen=True, kw_only=True)
|
12
12
|
class TPLinkSelectEntityDescription(SelectEntityDescription, TPLinkFeatureEntityDescription): ...
|
13
13
|
|
14
|
+
PARALLEL_UPDATES: int
|
14
15
|
SELECT_DESCRIPTIONS: Final[Incomplete]
|
15
16
|
SELECT_DESCRIPTIONS_MAP: Incomplete
|
16
17
|
|
@@ -1,16 +1,21 @@
|
|
1
1
|
from . import TPLinkConfigEntry as TPLinkConfigEntry
|
2
2
|
from .const import UNIT_MAPPING as UNIT_MAPPING
|
3
|
-
from .deprecate import async_cleanup_deprecated as async_cleanup_deprecated
|
4
3
|
from .entity import CoordinatedTPLinkFeatureEntity as CoordinatedTPLinkFeatureEntity, TPLinkFeatureEntityDescription as TPLinkFeatureEntityDescription
|
5
4
|
from _typeshed import Incomplete
|
5
|
+
from collections.abc import Callable as Callable
|
6
6
|
from dataclasses import dataclass
|
7
7
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
8
|
+
from homeassistant.const import UnitOfTime as UnitOfTime
|
8
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
10
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
|
+
from typing import Any
|
10
12
|
|
11
13
|
@dataclass(frozen=True, kw_only=True)
|
12
|
-
class TPLinkSensorEntityDescription(SensorEntityDescription, TPLinkFeatureEntityDescription):
|
14
|
+
class TPLinkSensorEntityDescription(SensorEntityDescription, TPLinkFeatureEntityDescription):
|
15
|
+
convert_fn: Callable[[Any], Any] | None = ...
|
13
16
|
|
17
|
+
PARALLEL_UPDATES: int
|
18
|
+
_TOTAL_SECONDS_METHOD_CALLER: Incomplete
|
14
19
|
SENSOR_DESCRIPTIONS: tuple[TPLinkSensorEntityDescription, ...]
|
15
20
|
SENSOR_DESCRIPTIONS_MAP: Incomplete
|
16
21
|
|
@@ -1,25 +1,40 @@
|
|
1
|
-
from . import TPLinkConfigEntry as TPLinkConfigEntry
|
1
|
+
from . import TPLinkConfigEntry as TPLinkConfigEntry, legacy_device_id as legacy_device_id
|
2
|
+
from .const import DOMAIN as DOMAIN
|
2
3
|
from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
3
|
-
from .entity import
|
4
|
+
from .entity import CoordinatedTPLinkModuleEntity as CoordinatedTPLinkModuleEntity, TPLinkModuleEntityDescription as TPLinkModuleEntityDescription, async_refresh_after as async_refresh_after
|
4
5
|
from _typeshed import Incomplete
|
5
|
-
from
|
6
|
+
from collections.abc import Callable as Callable
|
7
|
+
from dataclasses import dataclass
|
8
|
+
from homeassistant.components.siren import ATTR_DURATION as ATTR_DURATION, ATTR_TONE as ATTR_TONE, ATTR_VOLUME_LEVEL as ATTR_VOLUME_LEVEL, SirenEntity as SirenEntity, SirenEntityDescription as SirenEntityDescription, SirenEntityFeature as SirenEntityFeature, SirenTurnOnServiceParameters as SirenTurnOnServiceParameters
|
6
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
10
|
+
from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
|
7
11
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
8
12
|
from kasa import Device as Device
|
9
|
-
from kasa.smart.modules.alarm import Alarm as Alarm
|
10
13
|
from typing import Any
|
11
14
|
|
15
|
+
PARALLEL_UPDATES: int
|
16
|
+
|
17
|
+
@dataclass(frozen=True, kw_only=True)
|
18
|
+
class TPLinkSirenEntityDescription(SirenEntityDescription, TPLinkModuleEntityDescription):
|
19
|
+
unique_id_fn: Callable[[Device, TPLinkModuleEntityDescription], str] = ...
|
20
|
+
|
21
|
+
SIREN_DESCRIPTIONS: tuple[TPLinkSirenEntityDescription, ...]
|
22
|
+
|
12
23
|
async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
13
24
|
|
14
|
-
class TPLinkSirenEntity(
|
25
|
+
class TPLinkSirenEntity(CoordinatedTPLinkModuleEntity, SirenEntity):
|
15
26
|
_attr_name: Incomplete
|
16
27
|
_attr_supported_features: Incomplete
|
17
|
-
|
18
|
-
|
28
|
+
entity_description: TPLinkSirenEntityDescription
|
29
|
+
_alarm_module: Incomplete
|
30
|
+
_alarm_volume_max: Incomplete
|
31
|
+
_alarm_duration_max: Incomplete
|
32
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkSirenEntityDescription, *, parent: Device | None = None) -> None: ...
|
19
33
|
@async_refresh_after
|
20
34
|
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
21
35
|
@async_refresh_after
|
22
36
|
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
23
37
|
_attr_is_on: Incomplete
|
38
|
+
_attr_available_tones: Incomplete
|
24
39
|
@callback
|
25
40
|
def _async_update_attrs(self) -> bool: ...
|
@@ -12,6 +12,7 @@ _LOGGER: Incomplete
|
|
12
12
|
@dataclass(frozen=True, kw_only=True)
|
13
13
|
class TPLinkSwitchEntityDescription(SwitchEntityDescription, TPLinkFeatureEntityDescription): ...
|
14
14
|
|
15
|
+
PARALLEL_UPDATES: int
|
15
16
|
SWITCH_DESCRIPTIONS: tuple[TPLinkSwitchEntityDescription, ...]
|
16
17
|
SWITCH_DESCRIPTIONS_MAP: Incomplete
|
17
18
|
|
@@ -0,0 +1,43 @@
|
|
1
|
+
from . import TPLinkConfigEntry as TPLinkConfigEntry
|
2
|
+
from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
|
3
|
+
from .entity import CoordinatedTPLinkModuleEntity as CoordinatedTPLinkModuleEntity, TPLinkModuleEntityDescription as TPLinkModuleEntityDescription, async_refresh_after as async_refresh_after
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from homeassistant.components.vacuum import StateVacuumEntity as StateVacuumEntity, StateVacuumEntityDescription as StateVacuumEntityDescription, VacuumActivity as VacuumActivity, VacuumEntityFeature as VacuumEntityFeature
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
+
from kasa import Device as Device
|
10
|
+
from kasa.smart.modules.clean import Clean as Clean
|
11
|
+
from typing import Any
|
12
|
+
|
13
|
+
PARALLEL_UPDATES: int
|
14
|
+
STATUS_TO_ACTIVITY: Incomplete
|
15
|
+
|
16
|
+
@dataclass(frozen=True, kw_only=True)
|
17
|
+
class TPLinkVacuumEntityDescription(StateVacuumEntityDescription, TPLinkModuleEntityDescription): ...
|
18
|
+
|
19
|
+
VACUUM_DESCRIPTIONS: tuple[TPLinkVacuumEntityDescription, ...]
|
20
|
+
|
21
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
22
|
+
|
23
|
+
class TPLinkVacuumEntity(CoordinatedTPLinkModuleEntity, StateVacuumEntity):
|
24
|
+
_attr_supported_features: Incomplete
|
25
|
+
entity_description: TPLinkVacuumEntityDescription
|
26
|
+
_vacuum_module: Clean
|
27
|
+
_speaker_module: Incomplete
|
28
|
+
_attr_fan_speed_list: Incomplete
|
29
|
+
def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, description: TPLinkVacuumEntityDescription, *, parent: Device) -> None: ...
|
30
|
+
@async_refresh_after
|
31
|
+
async def async_start(self) -> None: ...
|
32
|
+
@async_refresh_after
|
33
|
+
async def async_pause(self) -> None: ...
|
34
|
+
@async_refresh_after
|
35
|
+
async def async_return_to_base(self, **kwargs: Any) -> None: ...
|
36
|
+
@async_refresh_after
|
37
|
+
async def async_set_fan_speed(self, fan_speed: str, **kwargs: Any) -> None: ...
|
38
|
+
async def async_locate(self, **kwargs: Any) -> None: ...
|
39
|
+
@property
|
40
|
+
def battery_level(self) -> int | None: ...
|
41
|
+
_attr_activity: Incomplete
|
42
|
+
_attr_fan_speed: Incomplete
|
43
|
+
def _async_update_attrs(self) -> bool: ...
|
@@ -1,9 +1,9 @@
|
|
1
1
|
from .const import CONF_GATEWAY_ID as CONF_GATEWAY_ID, CONF_IDENTITY as CONF_IDENTITY, CONF_KEY as CONF_KEY, DOMAIN as DOMAIN
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from homeassistant.components import zeroconf as zeroconf
|
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
|
6
|
+
from homeassistant.helpers.service_info.zeroconf import ATTR_PROPERTIES_ID as ATTR_PROPERTIES_ID, ZeroconfServiceInfo as ZeroconfServiceInfo
|
7
7
|
from typing import Any
|
8
8
|
|
9
9
|
KEY_SECURITY_CODE: str
|
@@ -18,7 +18,7 @@ class FlowHandler(ConfigFlow, domain=DOMAIN):
|
|
18
18
|
def __init__(self) -> None: ...
|
19
19
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
20
20
|
async def async_step_auth(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
21
|
-
async def async_step_homekit(self, discovery_info:
|
21
|
+
async def async_step_homekit(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
|
22
22
|
async def _entry_from_data(self, data: dict[str, Any]) -> ConfigFlowResult: ...
|
23
23
|
|
24
24
|
async def authenticate(hass: HomeAssistant, host: str, security_code: str) -> dict[str, str | bool]: ...
|