homeassistant-stubs 2025.3.3__py3-none-any.whl → 2025.4.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/bootstrap.pyi +3 -2
- homeassistant-stubs/components/accuweather/const.pyi +3 -1
- homeassistant-stubs/components/accuweather/sensor.pyi +1 -1
- homeassistant-stubs/components/anova/config_flow.pyi +4 -1
- homeassistant-stubs/components/anthemav/media_player.pyi +2 -0
- homeassistant-stubs/components/arwn/sensor.pyi +3 -2
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +14 -5
- homeassistant-stubs/components/assist_satellite/const.pyi +3 -0
- homeassistant-stubs/components/assist_satellite/entity.pyi +6 -4
- homeassistant-stubs/components/azure_storage/__init__.pyi +1 -1
- homeassistant-stubs/components/azure_storage/backup.pyi +1 -1
- homeassistant-stubs/components/azure_storage/config_flow.pyi +7 -0
- homeassistant-stubs/components/backup/__init__.pyi +2 -2
- homeassistant-stubs/components/backup/agent.pyi +1 -1
- homeassistant-stubs/components/backup/backup.pyi +1 -1
- homeassistant-stubs/components/backup/config_flow.pyi +7 -0
- homeassistant-stubs/components/backup/coordinator.pyi +28 -0
- homeassistant-stubs/components/backup/diagnostics.pyi +7 -0
- homeassistant-stubs/components/backup/entity.pyi +13 -0
- homeassistant-stubs/components/backup/http.pyi +1 -0
- homeassistant-stubs/components/backup/manager.pyi +8 -3
- homeassistant-stubs/components/backup/sensor.pyi +23 -0
- homeassistant-stubs/components/bosch_alarm/__init__.pyi +12 -0
- homeassistant-stubs/components/bosch_alarm/alarm_control_panel.pyi +31 -0
- homeassistant-stubs/components/bosch_alarm/config_flow.pyi +20 -0
- homeassistant-stubs/components/bosch_alarm/const.pyi +4 -0
- homeassistant-stubs/components/bring/diagnostics.pyi +5 -0
- homeassistant-stubs/components/brother/__init__.pyi +1 -0
- homeassistant-stubs/components/brother/coordinator.pyi +1 -0
- homeassistant-stubs/components/cloud/backup.pyi +3 -3
- homeassistant-stubs/components/cloud/http_api.pyi +6 -3
- homeassistant-stubs/components/cloud/tts.pyi +2 -2
- homeassistant-stubs/components/comelit/__init__.pyi +11 -0
- homeassistant-stubs/components/comelit/alarm_control_panel.pyi +44 -0
- homeassistant-stubs/components/comelit/binary_sensor.pyi +22 -0
- homeassistant-stubs/components/comelit/climate.pyi +60 -0
- homeassistant-stubs/components/comelit/config_flow.pyi +28 -0
- homeassistant-stubs/components/comelit/const.pyi +7 -0
- homeassistant-stubs/components/comelit/coordinator.pyi +38 -0
- homeassistant-stubs/components/comelit/cover.pyi +39 -0
- homeassistant-stubs/components/comelit/diagnostics.pyi +10 -0
- homeassistant-stubs/components/comelit/humidifier.pyi +61 -0
- homeassistant-stubs/components/comelit/light.pyi +28 -0
- homeassistant-stubs/components/comelit/sensor.pyi +45 -0
- homeassistant-stubs/components/comelit/switch.pyi +27 -0
- homeassistant-stubs/components/cover/reproduce_state.pyi +17 -6
- homeassistant-stubs/components/demo/valve.pyi +30 -0
- homeassistant-stubs/components/discovergy/__init__.pyi +1 -1
- homeassistant-stubs/components/energy/data.pyi +1 -0
- homeassistant-stubs/components/enigma2/config_flow.pyi +1 -0
- homeassistant-stubs/components/esphome/__init__.pyi +1 -1
- homeassistant-stubs/components/esphome/assist_satellite.pyi +2 -0
- homeassistant-stubs/components/esphome/config_flow.pyi +1 -0
- homeassistant-stubs/components/esphome/const.pyi +1 -0
- homeassistant-stubs/components/esphome/diagnostics.pyi +0 -1
- homeassistant-stubs/components/esphome/event.pyi +2 -0
- homeassistant-stubs/components/esphome/manager.pyi +1 -1
- homeassistant-stubs/components/fritzbox/climate.pyi +1 -1
- homeassistant-stubs/components/frontend/__init__.pyi +9 -10
- homeassistant-stubs/components/frontend/storage.pyi +2 -1
- homeassistant-stubs/components/gios/__init__.pyi +1 -0
- homeassistant-stubs/components/gios/config_flow.pyi +1 -0
- homeassistant-stubs/components/gios/coordinator.pyi +2 -2
- homeassistant-stubs/components/google/calendar.pyi +3 -2
- homeassistant-stubs/components/google_drive/backup.pyi +2 -2
- homeassistant-stubs/components/habitica/const.pyi +25 -0
- homeassistant-stubs/components/habitica/services.pyi +6 -2
- homeassistant-stubs/components/heos/const.pyi +1 -0
- homeassistant-stubs/components/heos/coordinator.pyi +5 -5
- homeassistant-stubs/components/heos/media_player.pyi +18 -8
- homeassistant-stubs/components/home_connect/__init__.pyi +6 -17
- homeassistant-stubs/components/home_connect/button.pyi +0 -2
- homeassistant-stubs/components/home_connect/const.pyi +1 -6
- homeassistant-stubs/components/home_connect/coordinator.pyi +4 -2
- homeassistant-stubs/components/home_connect/entity.pyi +7 -2
- homeassistant-stubs/components/home_connect/light.pyi +1 -1
- homeassistant-stubs/components/home_connect/number.pyi +4 -3
- homeassistant-stubs/components/home_connect/select.pyi +7 -3
- homeassistant-stubs/components/home_connect/sensor.pyi +3 -1
- homeassistant-stubs/components/home_connect/services.pyi +35 -0
- homeassistant-stubs/components/home_connect/switch.pyi +2 -1
- homeassistant-stubs/components/home_connect/time.pyi +6 -1
- homeassistant-stubs/components/homeassistant_hardware/coordinator.pyi +15 -0
- homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/update.pyi +68 -0
- homeassistant-stubs/components/homeassistant_hardware/util.pyi +6 -1
- homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +7 -1
- homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +1 -1
- homeassistant-stubs/components/homeassistant_sky_connect/const.pyi +10 -0
- homeassistant-stubs/components/homeassistant_sky_connect/update.pyi +29 -0
- homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +1 -1
- homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +1 -1
- homeassistant-stubs/components/homeassistant_yellow/const.pyi +4 -0
- homeassistant-stubs/components/homeassistant_yellow/update.pyi +29 -0
- homeassistant-stubs/components/homee/binary_sensor.pyi +21 -0
- homeassistant-stubs/components/homee/button.pyi +1 -0
- homeassistant-stubs/components/homee/cover.pyi +1 -0
- homeassistant-stubs/components/homee/light.pyi +1 -0
- homeassistant-stubs/components/homee/lock.pyi +25 -0
- homeassistant-stubs/components/homee/number.pyi +1 -0
- homeassistant-stubs/components/homee/select.pyi +23 -0
- homeassistant-stubs/components/homee/sensor.pyi +2 -0
- homeassistant-stubs/components/homee/switch.pyi +2 -0
- homeassistant-stubs/components/homee/valve.pyi +1 -0
- homeassistant-stubs/components/homekit/__init__.pyi +3 -1
- homeassistant-stubs/components/homekit/accessories.pyi +1 -0
- homeassistant-stubs/components/homekit/type_switches.pyi +6 -0
- homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -1
- homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +7 -7
- homeassistant-stubs/components/incomfort/config_flow.pyi +1 -0
- homeassistant-stubs/components/iron_os/coordinator.pyi +2 -0
- homeassistant-stubs/components/iron_os/number.pyi +2 -0
- homeassistant-stubs/components/iron_os/select.pyi +3 -0
- homeassistant-stubs/components/jewish_calendar/__init__.pyi +9 -2
- homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +4 -4
- homeassistant-stubs/components/jewish_calendar/const.pyi +3 -0
- homeassistant-stubs/components/jewish_calendar/entity.pyi +2 -2
- homeassistant-stubs/components/jewish_calendar/sensor.pyi +5 -6
- homeassistant-stubs/components/jewish_calendar/service.pyi +10 -0
- homeassistant-stubs/components/lawn_mower/__init__.pyi +1 -0
- homeassistant-stubs/components/linkplay/entity.pyi +0 -1
- homeassistant-stubs/components/linkplay/media_player.pyi +3 -2
- homeassistant-stubs/components/linkplay/utils.pyi +0 -32
- homeassistant-stubs/components/lovelace/__init__.pyi +3 -1
- homeassistant-stubs/components/mastodon/__init__.pyi +2 -2
- homeassistant-stubs/components/mastodon/config_flow.pyi +2 -1
- homeassistant-stubs/components/mastodon/const.pyi +0 -7
- homeassistant-stubs/components/mastodon/coordinator.pyi +5 -5
- homeassistant-stubs/components/mastodon/diagnostics.pyi +2 -1
- homeassistant-stubs/components/mastodon/entity.pyi +1 -1
- homeassistant-stubs/components/mastodon/notify.pyi +3 -2
- homeassistant-stubs/components/mastodon/sensor.pyi +2 -3
- homeassistant-stubs/components/mastodon/services.pyi +1 -0
- homeassistant-stubs/components/mastodon/utils.pyi +3 -2
- homeassistant-stubs/components/mcp/coordinator.pyi +2 -9
- homeassistant-stubs/components/mcp_server/config_flow.pyi +1 -1
- homeassistant-stubs/components/mcp_server/const.pyi +1 -2
- homeassistant-stubs/components/mcp_server/server.pyi +1 -0
- homeassistant-stubs/components/modbus/__init__.pyi +1 -1
- homeassistant-stubs/components/modbus/climate.pyi +6 -2
- homeassistant-stubs/components/modbus/const.pyi +10 -0
- homeassistant-stubs/components/mqtt/config_flow.pyi +95 -7
- homeassistant-stubs/components/mqtt/const.pyi +65 -0
- homeassistant-stubs/components/mqtt/cover.pyi +2 -0
- homeassistant-stubs/components/mqtt/entity.pyi +4 -4
- homeassistant-stubs/components/mqtt/lawn_mower.pyi +1 -2
- homeassistant-stubs/components/mqtt/light/schema_basic.pyi +2 -48
- homeassistant-stubs/components/mqtt/light/schema_json.pyi +1 -14
- homeassistant-stubs/components/mqtt/light/schema_template.pyi +3 -14
- homeassistant-stubs/components/mqtt/models.pyi +25 -1
- homeassistant-stubs/components/mqtt/sensor.pyi +6 -5
- homeassistant-stubs/components/mqtt/update.pyi +1 -1
- homeassistant-stubs/components/mqtt/util.pyi +2 -0
- homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
- homeassistant-stubs/components/mysensors/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/mysensors/climate.pyi +0 -1
- homeassistant-stubs/components/mysensors/const.pyi +0 -1
- homeassistant-stubs/components/mysensors/cover.pyi +1 -2
- homeassistant-stubs/components/mysensors/device_tracker.pyi +0 -1
- homeassistant-stubs/components/mysensors/gateway.pyi +1 -1
- homeassistant-stubs/components/mysensors/helpers.pyi +1 -3
- homeassistant-stubs/components/mysensors/light.pyi +4 -5
- homeassistant-stubs/components/mysensors/remote.pyi +0 -1
- homeassistant-stubs/components/mysensors/sensor.pyi +0 -1
- homeassistant-stubs/components/mysensors/switch.pyi +1 -2
- homeassistant-stubs/components/mysensors/text.pyi +0 -1
- homeassistant-stubs/components/nam/button.pyi +2 -0
- homeassistant-stubs/components/nam/const.pyi +1 -0
- homeassistant-stubs/components/nam/sensor.pyi +2 -2
- homeassistant-stubs/components/nest/media_source.pyi +5 -0
- homeassistant-stubs/components/nextdns/__init__.pyi +1 -1
- homeassistant-stubs/components/nextdns/button.pyi +2 -0
- homeassistant-stubs/components/nextdns/config_flow.pyi +1 -0
- homeassistant-stubs/components/nextdns/switch.pyi +1 -0
- homeassistant-stubs/components/nut/__init__.pyi +1 -0
- homeassistant-stubs/components/nut/button.pyi +14 -0
- homeassistant-stubs/components/nut/entity.pyi +19 -0
- homeassistant-stubs/components/nut/sensor.pyi +8 -13
- homeassistant-stubs/components/nut/switch.pyi +18 -0
- homeassistant-stubs/components/onboarding/views.pyi +2 -1
- homeassistant-stubs/components/onedrive/__init__.pyi +4 -0
- homeassistant-stubs/components/onedrive/backup.pyi +1 -1
- homeassistant-stubs/components/onedrive/services.pyi +15 -0
- homeassistant-stubs/components/openai_conversation/__init__.pyi +5 -1
- homeassistant-stubs/components/openai_conversation/config_flow.pyi +5 -2
- homeassistant-stubs/components/openai_conversation/const.pyi +22 -11
- homeassistant-stubs/components/openai_conversation/conversation.pyi +6 -7
- homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +1 -0
- homeassistant-stubs/components/overkiz/water_heater/atlantic_domestic_hot_water_production_v2_io_component.pyi +41 -0
- homeassistant-stubs/components/purpleair/__init__.pyi +5 -10
- homeassistant-stubs/components/purpleair/const.pyi +6 -4
- homeassistant-stubs/components/purpleair/coordinator.pyi +3 -2
- homeassistant-stubs/components/purpleair/diagnostics.pyi +2 -4
- homeassistant-stubs/components/purpleair/entity.pyi +2 -3
- homeassistant-stubs/components/purpleair/sensor.pyi +4 -5
- homeassistant-stubs/components/pyload/__init__.pyi +12 -0
- homeassistant-stubs/components/pyload/button.pyi +32 -0
- homeassistant-stubs/components/pyload/config_flow.pyi +23 -0
- homeassistant-stubs/components/pyload/const.pyi +6 -0
- homeassistant-stubs/components/pyload/coordinator.pyi +34 -0
- homeassistant-stubs/components/pyload/diagnostics.pyi +10 -0
- homeassistant-stubs/components/pyload/entity.pyi +13 -0
- homeassistant-stubs/components/pyload/sensor.pyi +33 -0
- homeassistant-stubs/components/pyload/switch.pyi +37 -0
- homeassistant-stubs/components/qbus/climate.pyi +41 -0
- homeassistant-stubs/components/qbus/light.pyi +3 -3
- homeassistant-stubs/components/recorder/const.pyi +1 -0
- homeassistant-stubs/components/recorder/core.pyi +1 -2
- homeassistant-stubs/components/recorder/db_schema.pyi +3 -1
- homeassistant-stubs/components/recorder/migration.pyi +16 -2
- homeassistant-stubs/components/recorder/models/__init__.pyi +2 -2
- homeassistant-stubs/components/recorder/models/statistics.pyi +10 -2
- homeassistant-stubs/components/recorder/statistics.pyi +27 -9
- homeassistant-stubs/components/recorder/table_managers/statistics_meta.pyi +5 -3
- homeassistant-stubs/components/recorder/websocket_api.pyi +1 -1
- homeassistant-stubs/components/remote_calendar/__init__.pyi +11 -0
- homeassistant-stubs/components/remote_calendar/calendar.pyi +26 -0
- homeassistant-stubs/components/remote_calendar/config_flow.pyi +13 -0
- homeassistant-stubs/components/remote_calendar/const.pyi +2 -0
- homeassistant-stubs/components/remote_calendar/coordinator.pyi +20 -0
- homeassistant-stubs/components/remote_calendar/diagnostics.pyi +5 -0
- homeassistant-stubs/components/renault/config_flow.pyi +1 -0
- homeassistant-stubs/components/reolink/__init__.pyi +1 -1
- homeassistant-stubs/components/reolink/binary_sensor.pyi +17 -1
- homeassistant-stubs/components/reolink/config_flow.pyi +1 -1
- homeassistant-stubs/components/reolink/const.pyi +1 -0
- homeassistant-stubs/components/reolink/host.pyi +4 -4
- homeassistant-stubs/components/reolink/number.pyi +21 -1
- homeassistant-stubs/components/reolink/select.pyi +17 -1
- homeassistant-stubs/components/reolink/update.pyi +2 -1
- homeassistant-stubs/components/reolink/util.pyi +7 -0
- homeassistant-stubs/components/roborock/__init__.pyi +5 -3
- homeassistant-stubs/components/roborock/binary_sensor.pyi +4 -1
- homeassistant-stubs/components/roborock/button.pyi +11 -1
- homeassistant-stubs/components/roborock/config_flow.pyi +7 -3
- homeassistant-stubs/components/roborock/const.pyi +7 -1
- homeassistant-stubs/components/roborock/coordinator.pyi +18 -3
- homeassistant-stubs/components/roborock/entity.pyi +3 -1
- homeassistant-stubs/components/roborock/image.pyi +2 -7
- homeassistant-stubs/components/roborock/models.pyi +7 -0
- homeassistant-stubs/components/roborock/number.pyi +1 -0
- homeassistant-stubs/components/roborock/select.pyi +7 -5
- homeassistant-stubs/components/roborock/sensor.pyi +14 -1
- homeassistant-stubs/components/roborock/switch.pyi +2 -0
- homeassistant-stubs/components/roborock/time.pyi +1 -0
- homeassistant-stubs/components/roborock/vacuum.pyi +1 -1
- homeassistant-stubs/components/sensor/const.pyi +2 -0
- homeassistant-stubs/components/sensor/recorder.pyi +15 -3
- homeassistant-stubs/components/shelly/__init__.pyi +2 -2
- homeassistant-stubs/components/shelly/bluetooth/__init__.pyi +4 -2
- homeassistant-stubs/components/shelly/button.pyi +22 -7
- homeassistant-stubs/components/shelly/climate.pyi +1 -1
- homeassistant-stubs/components/shelly/config_flow.pyi +5 -5
- homeassistant-stubs/components/shelly/const.pyi +0 -1
- homeassistant-stubs/components/shelly/coordinator.pyi +5 -1
- homeassistant-stubs/components/shelly/diagnostics.pyi +1 -2
- homeassistant-stubs/components/shelly/entity.pyi +1 -3
- homeassistant-stubs/components/shelly/event.pyi +1 -1
- homeassistant-stubs/components/shelly/number.pyi +1 -1
- homeassistant-stubs/components/shelly/sensor.pyi +2 -2
- homeassistant-stubs/components/shelly/switch.pyi +14 -14
- homeassistant-stubs/components/shelly/update.pyi +1 -1
- homeassistant-stubs/components/shelly/utils.pyi +6 -2
- homeassistant-stubs/components/skybell/config_flow.pyi +3 -0
- homeassistant-stubs/components/smlight/__init__.pyi +0 -2
- homeassistant-stubs/components/smlight/sensor.pyi +5 -2
- homeassistant-stubs/components/smlight/update.pyi +0 -1
- homeassistant-stubs/components/squeezebox/browse_media.pyi +6 -11
- homeassistant-stubs/components/squeezebox/button.pyi +31 -0
- homeassistant-stubs/components/squeezebox/entity.pyi +8 -2
- homeassistant-stubs/components/squeezebox/media_player.pyi +3 -5
- homeassistant-stubs/components/synology_dsm/__init__.pyi +5 -7
- homeassistant-stubs/components/synology_dsm/backup.pyi +3 -4
- homeassistant-stubs/components/synology_dsm/binary_sensor.pyi +2 -5
- homeassistant-stubs/components/synology_dsm/button.pyi +2 -3
- homeassistant-stubs/components/synology_dsm/camera.pyi +2 -4
- homeassistant-stubs/components/synology_dsm/config_flow.pyi +3 -2
- homeassistant-stubs/components/synology_dsm/coordinator.pyi +15 -5
- homeassistant-stubs/components/synology_dsm/diagnostics.pyi +3 -4
- homeassistant-stubs/components/synology_dsm/media_source.pyi +3 -1
- homeassistant-stubs/components/synology_dsm/repairs.pyi +2 -3
- homeassistant-stubs/components/synology_dsm/sensor.pyi +3 -5
- homeassistant-stubs/components/synology_dsm/service.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/switch.pyi +2 -4
- homeassistant-stubs/components/synology_dsm/update.pyi +2 -5
- homeassistant-stubs/components/tibber/coordinator.pyi +1 -1
- homeassistant-stubs/components/todo/intent.pyi +8 -0
- homeassistant-stubs/components/trafikverket_ferry/config_flow.pyi +1 -0
- homeassistant-stubs/components/trafikverket_weatherstation/config_flow.pyi +3 -0
- homeassistant-stubs/components/tts/__init__.pyi +66 -51
- homeassistant-stubs/components/tts/entity.pyi +54 -0
- homeassistant-stubs/components/tts/media_source.pyi +1 -1
- homeassistant-stubs/components/update/__init__.pyi +2 -2
- homeassistant-stubs/components/usb/__init__.pyi +1 -5
- homeassistant-stubs/components/usb/utils.pyi +2 -0
- homeassistant-stubs/components/vodafone_station/__init__.pyi +11 -0
- homeassistant-stubs/components/vodafone_station/button.pyi +31 -0
- homeassistant-stubs/components/vodafone_station/config_flow.pyi +29 -0
- homeassistant-stubs/components/vodafone_station/const.pyi +9 -0
- homeassistant-stubs/components/vodafone_station/coordinator.pyi +43 -0
- homeassistant-stubs/components/vodafone_station/device_tracker.pyi +30 -0
- homeassistant-stubs/components/vodafone_station/diagnostics.pyi +10 -0
- homeassistant-stubs/components/vodafone_station/helpers.pyi +8 -0
- homeassistant-stubs/components/vodafone_station/sensor.pyi +38 -0
- homeassistant-stubs/components/zwave_js/__init__.pyi +5 -9
- homeassistant-stubs/components/zwave_js/api.pyi +15 -0
- homeassistant-stubs/components/zwave_js/config_flow.pyi +0 -1
- homeassistant-stubs/config_entries.pyi +2 -5
- homeassistant-stubs/helpers/backup.pyi +4 -1
- homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +14 -0
- homeassistant-stubs/helpers/config_validation.pyi +5 -2
- homeassistant-stubs/helpers/frame.pyi +14 -5
- homeassistant-stubs/helpers/intent.pyi +13 -4
- homeassistant-stubs/helpers/llm.pyi +7 -1
- homeassistant-stubs/helpers/script.pyi +1 -1
- homeassistant-stubs/helpers/selector.pyi +1 -0
- homeassistant-stubs/helpers/template.pyi +14 -1
- homeassistant-stubs/loader.pyi +18 -8
- homeassistant-stubs/scripts/check_config.pyi +0 -1
- homeassistant-stubs/util/logging.pyi +18 -1
- homeassistant-stubs/util/unit_conversion.pyi +3 -0
- homeassistant-stubs/util/unit_system.pyi +12 -10
- homeassistant-stubs/util/yaml/__init__.pyi +3 -4
- homeassistant-stubs/util/yaml/dumper.pyi +2 -8
- homeassistant-stubs/util/yaml/input.pyi +2 -9
- homeassistant-stubs/util/yaml/loader.pyi +4 -72
- homeassistant-stubs/util/yaml/objects.pyi +2 -26
- {homeassistant_stubs-2025.3.3.dist-info → homeassistant_stubs-2025.4.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2025.3.3.dist-info → homeassistant_stubs-2025.4.0.dist-info}/RECORD +331 -270
- homeassistant-stubs/components/mcp_server/llm_api.pyi +0 -15
- homeassistant-stubs/components/synology_dsm/models.pyi +0 -10
- homeassistant-stubs/util/yaml/const.pyi +0 -1
- {homeassistant_stubs-2025.3.3.dist-info → homeassistant_stubs-2025.4.0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.3.3.dist-info → homeassistant_stubs-2025.4.0.dist-info}/licenses/LICENSE +0 -0
homeassistant-stubs/loader.pyi
CHANGED
@@ -15,7 +15,8 @@ from .generated.usb import USB as USB
|
|
15
15
|
from .generated.zeroconf import HOMEKIT as HOMEKIT, ZEROCONF as ZEROCONF
|
16
16
|
from .helpers import device_registry as dr
|
17
17
|
from .helpers.json import json_bytes as json_bytes, json_fragment as json_fragment
|
18
|
-
from .helpers.typing import ConfigType as ConfigType
|
18
|
+
from .helpers.typing import ConfigType as ConfigType, UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
|
19
|
+
from .util.async_ import create_eager_task as create_eager_task
|
19
20
|
from .util.hass_dict import HassKey as HassKey
|
20
21
|
from .util.json import JSON_DECODE_EXCEPTIONS as JSON_DECODE_EXCEPTIONS, json_loads as json_loads
|
21
22
|
from _typeshed import Incomplete
|
@@ -158,8 +159,7 @@ class Integration:
|
|
158
159
|
pkg_path: Incomplete
|
159
160
|
file_path: Incomplete
|
160
161
|
manifest: Incomplete
|
161
|
-
|
162
|
-
_all_dependencies: set[str] | None
|
162
|
+
_all_dependencies: set[str] | Exception | None
|
163
163
|
_platforms_to_preload: Incomplete
|
164
164
|
_component_future: asyncio.Future[ComponentProtocol] | None
|
165
165
|
_import_futures: dict[str, asyncio.Future[ModuleType]]
|
@@ -227,7 +227,7 @@ class Integration:
|
|
227
227
|
def all_dependencies(self) -> set[str]: ...
|
228
228
|
@property
|
229
229
|
def all_dependencies_resolved(self) -> bool: ...
|
230
|
-
async def resolve_dependencies(self) ->
|
230
|
+
async def resolve_dependencies(self) -> set[str] | None: ...
|
231
231
|
async def async_get_component(self) -> ComponentProtocol: ...
|
232
232
|
def get_component(self) -> ComponentProtocol: ...
|
233
233
|
def _get_component(self, preload_platforms: bool = False) -> ComponentProtocol: ...
|
@@ -250,6 +250,18 @@ def async_get_loaded_integration(hass: HomeAssistant, domain: str) -> Integratio
|
|
250
250
|
async def async_get_integration(hass: HomeAssistant, domain: str) -> Integration: ...
|
251
251
|
async def async_get_integrations(hass: HomeAssistant, domains: Iterable[str]) -> dict[str, Integration | Exception]: ...
|
252
252
|
|
253
|
+
class _ResolveDependenciesCacheProtocol(Protocol):
|
254
|
+
def get(self, itg: Integration) -> set[str] | Exception | None: ...
|
255
|
+
def __setitem__(self, itg: Integration, all_dependencies: set[str] | Exception) -> None: ...
|
256
|
+
|
257
|
+
class _ResolveDependenciesCache(_ResolveDependenciesCacheProtocol):
|
258
|
+
def get(self, itg: Integration) -> set[str] | Exception | None: ...
|
259
|
+
def __setitem__(self, itg: Integration, all_dependencies: set[str] | Exception) -> None: ...
|
260
|
+
|
261
|
+
async def resolve_integrations_dependencies(hass: HomeAssistant, integrations: Iterable[Integration]) -> dict[str, set[str]]: ...
|
262
|
+
async def resolve_integrations_after_dependencies(hass: HomeAssistant, integrations: Iterable[Integration], possible_after_dependencies: set[str] | None = None, *, ignore_exceptions: bool = False) -> dict[str, set[str]]: ...
|
263
|
+
async def _do_resolve_dependencies(itg: Integration, *, cache: _ResolveDependenciesCacheProtocol, possible_after_dependencies: set[str] | None | UndefinedType = ..., ignore_exceptions: bool = False) -> set[str]: ...
|
264
|
+
|
253
265
|
class LoaderError(Exception): ...
|
254
266
|
|
255
267
|
class IntegrationNotFound(LoaderError):
|
@@ -261,9 +273,8 @@ class IntegrationNotLoaded(LoaderError):
|
|
261
273
|
def __init__(self, domain: str) -> None: ...
|
262
274
|
|
263
275
|
class CircularDependency(LoaderError):
|
264
|
-
|
265
|
-
|
266
|
-
def __init__(self, from_domain: str | set[str], to_domain: str) -> None: ...
|
276
|
+
def __init__(self, domain_cycle: list[str]) -> None: ...
|
277
|
+
def extend_cycle(self, domain: str) -> None: ...
|
267
278
|
|
268
279
|
def _load_file(hass: HomeAssistant, comp_or_platform: str, base_paths: list[str]) -> ComponentProtocol | None: ...
|
269
280
|
|
@@ -284,7 +295,6 @@ class Helpers:
|
|
284
295
|
def __getattr__(self, helper_name: str) -> ModuleWrapper: ...
|
285
296
|
|
286
297
|
def bind_hass[_CallableT: Callable[..., Any]](func: _CallableT) -> _CallableT: ...
|
287
|
-
async def _async_component_dependencies(hass: HomeAssistant, integration: Integration) -> set[str]: ...
|
288
298
|
def _async_mount_config_dir(hass: HomeAssistant) -> None: ...
|
289
299
|
def _lookup_path(hass: HomeAssistant) -> list[str]: ...
|
290
300
|
def is_component_module_loaded(hass: HomeAssistant, module: str) -> bool: ...
|
@@ -5,7 +5,6 @@ from homeassistant.config import get_default_config_dir as get_default_config_di
|
|
5
5
|
from homeassistant.config_entries import ConfigEntries as ConfigEntries
|
6
6
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
7
7
|
from homeassistant.helpers.check_config import async_check_ha_config_file as async_check_ha_config_file
|
8
|
-
from homeassistant.util.yaml import Secrets as Secrets
|
9
8
|
from typing import Any
|
10
9
|
|
11
10
|
REQUIREMENTS: Incomplete
|
@@ -1,8 +1,25 @@
|
|
1
1
|
import logging
|
2
2
|
import logging.handlers
|
3
|
+
from _typeshed import Incomplete
|
3
4
|
from collections.abc import Callable, Coroutine
|
4
5
|
from homeassistant.core import HassJobType as HassJobType, HomeAssistant as HomeAssistant, callback as callback, get_hassjob_callable_job_type as get_hassjob_callable_job_type
|
5
|
-
from
|
6
|
+
from queue import SimpleQueue
|
7
|
+
from typing import Any, overload, override
|
8
|
+
|
9
|
+
_LOGGER: Incomplete
|
10
|
+
|
11
|
+
class HomeAssistantQueueListener(logging.handlers.QueueListener):
|
12
|
+
LOG_COUNTS_RESET_INTERVAL: int
|
13
|
+
MAX_LOGS_COUNT: int
|
14
|
+
EXCLUDED_LOG_COUNT_MODULES: Incomplete
|
15
|
+
_last_reset: float
|
16
|
+
_log_counts: dict[str, int]
|
17
|
+
_module_log_count_skip_flags: dict[str, bool]
|
18
|
+
def __init__(self, queue: SimpleQueue[logging.Handler], *handlers: logging.Handler) -> None: ...
|
19
|
+
@override
|
20
|
+
def handle(self, record: logging.LogRecord) -> None: ...
|
21
|
+
def _reset_counters(self, time_sec: float) -> None: ...
|
22
|
+
def _update_skip_flags(self, module_name: str) -> bool: ...
|
6
23
|
|
7
24
|
class HomeAssistantQueueHandler(logging.handlers.QueueHandler):
|
8
25
|
listener: logging.handlers.QueueListener | None
|
@@ -58,6 +58,9 @@ class BaseUnitConverter:
|
|
58
58
|
def get_unit_ratio(cls, from_unit: str | None, to_unit: str | None) -> float: ...
|
59
59
|
@classmethod
|
60
60
|
@lru_cache
|
61
|
+
def get_unit_floored_log_ratio(cls, from_unit: str | None, to_unit: str | None) -> float: ...
|
62
|
+
@classmethod
|
63
|
+
@lru_cache
|
61
64
|
def _are_unit_inverses(cls, from_unit: str | None, to_unit: str | None) -> bool: ...
|
62
65
|
|
63
66
|
class DataRateConverter(BaseUnitConverter):
|
@@ -1,5 +1,6 @@
|
|
1
1
|
from .unit_conversion import AreaConverter as AreaConverter, DistanceConverter as DistanceConverter, PressureConverter as PressureConverter, SpeedConverter as SpeedConverter, TemperatureConverter as TemperatureConverter, VolumeConverter as VolumeConverter
|
2
2
|
from _typeshed import Incomplete
|
3
|
+
from dataclasses import dataclass
|
3
4
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass
|
4
5
|
from homeassistant.const import ACCUMULATED_PRECIPITATION as ACCUMULATED_PRECIPITATION, AREA as AREA, LENGTH as LENGTH, MASS as MASS, PRESSURE as PRESSURE, TEMPERATURE as TEMPERATURE, UNIT_NOT_RECOGNIZED_TEMPLATE as UNIT_NOT_RECOGNIZED_TEMPLATE, UnitOfArea as UnitOfArea, UnitOfLength as UnitOfLength, UnitOfMass as UnitOfMass, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfVolume as UnitOfVolume, UnitOfVolumetricFlux as UnitOfVolumetricFlux, VOLUME as VOLUME, WIND_SPEED as WIND_SPEED
|
5
6
|
from typing import Final
|
@@ -18,17 +19,18 @@ _VALID_BY_TYPE: dict[str, set[str] | set[str | None]]
|
|
18
19
|
|
19
20
|
def _is_valid_unit(unit: str, unit_type: str) -> bool: ...
|
20
21
|
|
22
|
+
@dataclass(frozen=True, kw_only=True)
|
21
23
|
class UnitSystem:
|
22
|
-
_name:
|
23
|
-
accumulated_precipitation_unit:
|
24
|
-
area_unit:
|
25
|
-
length_unit:
|
26
|
-
mass_unit:
|
27
|
-
pressure_unit:
|
28
|
-
temperature_unit:
|
29
|
-
volume_unit:
|
30
|
-
wind_speed_unit:
|
31
|
-
_conversions:
|
24
|
+
_name: str
|
25
|
+
accumulated_precipitation_unit: UnitOfPrecipitationDepth
|
26
|
+
area_unit: UnitOfArea
|
27
|
+
length_unit: UnitOfLength
|
28
|
+
mass_unit: UnitOfMass
|
29
|
+
pressure_unit: UnitOfPressure
|
30
|
+
temperature_unit: UnitOfTemperature
|
31
|
+
volume_unit: UnitOfVolume
|
32
|
+
wind_speed_unit: UnitOfSpeed
|
33
|
+
_conversions: dict[tuple[SensorDeviceClass | str | None, str | None], str]
|
32
34
|
def __init__(self, name: str, *, accumulated_precipitation: UnitOfPrecipitationDepth, area: UnitOfArea, conversions: dict[tuple[SensorDeviceClass | str | None, str | None], str], length: UnitOfLength, mass: UnitOfMass, pressure: UnitOfPressure, temperature: UnitOfTemperature, volume: UnitOfVolume, wind_speed: UnitOfSpeed) -> None: ...
|
33
35
|
def temperature(self, temperature: float, from_unit: str) -> float: ...
|
34
36
|
def length(self, length: float | None, from_unit: str) -> float: ...
|
@@ -1,7 +1,6 @@
|
|
1
|
-
from .const import SECRET_YAML as SECRET_YAML
|
2
1
|
from .dumper import dump as dump, save_yaml as save_yaml
|
3
|
-
from .
|
4
|
-
from
|
5
|
-
from .
|
2
|
+
from .loader import Secrets as Secrets, load_yaml as load_yaml, load_yaml_dict as load_yaml_dict, parse_yaml as parse_yaml, secret_yaml as secret_yaml
|
3
|
+
from annotatedyaml import Input as Input, SECRET_YAML as SECRET_YAML, YamlTypeError as YamlTypeError
|
4
|
+
from annotatedyaml.input import UndefinedSubstitution as UndefinedSubstitution, extract_inputs as extract_inputs, substitute as substitute
|
6
5
|
|
7
6
|
__all__ = ['SECRET_YAML', 'Input', 'Secrets', 'UndefinedSubstitution', 'YamlTypeError', 'dump', 'extract_inputs', 'load_yaml', 'load_yaml_dict', 'parse_yaml', 'save_yaml', 'secret_yaml', 'substitute']
|
@@ -1,9 +1,3 @@
|
|
1
|
-
import
|
2
|
-
from .objects import Input as Input, NodeDictClass as NodeDictClass, NodeListClass as NodeListClass, NodeStrClass as NodeStrClass
|
3
|
-
from _typeshed import Incomplete
|
4
|
-
from typing import Any
|
1
|
+
from annotatedyaml.dumper import add_representer as add_representer, dump as dump, represent_odict as represent_odict, save_yaml as save_yaml
|
5
2
|
|
6
|
-
|
7
|
-
def save_yaml(path: str, data: dict) -> None: ...
|
8
|
-
def represent_odict(dumper, tag, mapping, flow_style: Incomplete | None = None) -> yaml.MappingNode: ...
|
9
|
-
def add_representer(klass: Any, representer: Any) -> None: ...
|
3
|
+
__all__ = ['add_representer', 'dump', 'represent_odict', 'save_yaml']
|
@@ -1,11 +1,4 @@
|
|
1
1
|
from .objects import Input as Input
|
2
|
-
from
|
3
|
-
from typing import Any
|
2
|
+
from annotatedyaml.input import UndefinedSubstitution as UndefinedSubstitution, extract_inputs as extract_inputs, substitute as substitute
|
4
3
|
|
5
|
-
|
6
|
-
input: Incomplete
|
7
|
-
def __init__(self, input_name: str) -> None: ...
|
8
|
-
|
9
|
-
def extract_inputs(obj: Any) -> set[str]: ...
|
10
|
-
def _extract_inputs(obj: Any, found: set[str]) -> None: ...
|
11
|
-
def substitute(obj: Any, substitutions: dict[str, Any]) -> Any: ...
|
4
|
+
__all__ = ['Input', 'UndefinedSubstitution', 'extract_inputs', 'substitute']
|
@@ -1,81 +1,13 @@
|
|
1
1
|
import os
|
2
2
|
import yaml
|
3
|
-
from
|
4
|
-
from .
|
5
|
-
from _typeshed import Incomplete
|
6
|
-
from collections.abc import Callable as Callable, Iterator
|
7
|
-
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
3
|
+
from annotatedyaml import YamlTypeError as YamlTypeError
|
4
|
+
from annotatedyaml.loader import HAS_C_LOADER as HAS_C_LOADER, JSON_TYPE as JSON_TYPE, LoaderType, Secrets as Secrets, add_constructor as add_constructor
|
8
5
|
from io import StringIO
|
9
|
-
from
|
10
|
-
from propcache.api import cached_property
|
11
|
-
from typing import Any, TextIO, overload
|
12
|
-
from yaml import SafeLoader as FastestAvailableSafeLoader
|
6
|
+
from typing import TextIO
|
13
7
|
|
14
|
-
HAS_C_LOADER
|
15
|
-
JSON_TYPE = list | dict | str
|
16
|
-
_LOGGER: Incomplete
|
17
|
-
|
18
|
-
class YamlTypeError(HomeAssistantError): ...
|
19
|
-
|
20
|
-
class Secrets:
|
21
|
-
config_dir: Incomplete
|
22
|
-
_cache: dict[Path, dict[str, str]]
|
23
|
-
def __init__(self, config_dir: Path) -> None: ...
|
24
|
-
def get(self, requester_path: str, secret: str) -> str: ...
|
25
|
-
def _load_secret_yaml(self, secret_dir: Path) -> dict[str, str]: ...
|
26
|
-
|
27
|
-
class _LoaderMixin:
|
28
|
-
name: str
|
29
|
-
stream: Any
|
30
|
-
@cached_property
|
31
|
-
def get_name(self) -> str: ...
|
32
|
-
@cached_property
|
33
|
-
def get_stream_name(self) -> str: ...
|
34
|
-
|
35
|
-
class FastSafeLoader(FastestAvailableSafeLoader, _LoaderMixin):
|
36
|
-
stream: Incomplete
|
37
|
-
name: str
|
38
|
-
secrets: Incomplete
|
39
|
-
def __init__(self, stream: Any, secrets: Secrets | None = None) -> None: ...
|
40
|
-
|
41
|
-
class PythonSafeLoader(yaml.SafeLoader, _LoaderMixin):
|
42
|
-
secrets: Incomplete
|
43
|
-
def __init__(self, stream: Any, secrets: Secrets | None = None) -> None: ...
|
44
|
-
type LoaderType = FastSafeLoader | PythonSafeLoader
|
8
|
+
__all__ = ['HAS_C_LOADER', 'JSON_TYPE', 'Secrets', 'YamlTypeError', 'add_constructor', 'load_yaml', 'load_yaml_dict', 'parse_yaml', 'secret_yaml']
|
45
9
|
|
46
10
|
def load_yaml(fname: str | os.PathLike[str], secrets: Secrets | None = None) -> JSON_TYPE | None: ...
|
47
11
|
def load_yaml_dict(fname: str | os.PathLike[str], secrets: Secrets | None = None) -> dict: ...
|
48
12
|
def parse_yaml(content: str | TextIO | StringIO, secrets: Secrets | None = None) -> JSON_TYPE: ...
|
49
|
-
def _parse_yaml_python(content: str | TextIO | StringIO, secrets: Secrets | None = None) -> JSON_TYPE: ...
|
50
|
-
def _parse_yaml(loader: type[FastSafeLoader | PythonSafeLoader], content: str | TextIO, secrets: Secrets | None = None) -> JSON_TYPE: ...
|
51
|
-
@overload
|
52
|
-
def _add_reference(obj: list | NodeListClass, loader: LoaderType, node: yaml.nodes.Node) -> NodeListClass: ...
|
53
|
-
@overload
|
54
|
-
def _add_reference(obj: str | NodeStrClass, loader: LoaderType, node: yaml.nodes.Node) -> NodeStrClass: ...
|
55
|
-
@overload
|
56
|
-
def _add_reference(obj: dict | NodeDictClass, loader: LoaderType, node: yaml.nodes.Node) -> NodeDictClass: ...
|
57
|
-
@overload
|
58
|
-
def _add_reference_to_node_class(obj: NodeListClass, loader: LoaderType, node: yaml.nodes.Node) -> NodeListClass: ...
|
59
|
-
@overload
|
60
|
-
def _add_reference_to_node_class(obj: NodeStrClass, loader: LoaderType, node: yaml.nodes.Node) -> NodeStrClass: ...
|
61
|
-
@overload
|
62
|
-
def _add_reference_to_node_class(obj: NodeDictClass, loader: LoaderType, node: yaml.nodes.Node) -> NodeDictClass: ...
|
63
|
-
def _raise_if_no_value[NodeT: yaml.nodes.Node, _R](func: Callable[[LoaderType, NodeT], _R]) -> Callable[[LoaderType, NodeT], _R]: ...
|
64
|
-
@_raise_if_no_value
|
65
|
-
def _include_yaml(loader: LoaderType, node: yaml.nodes.Node) -> JSON_TYPE: ...
|
66
|
-
def _is_file_valid(name: str) -> bool: ...
|
67
|
-
def _find_files(directory: str, pattern: str) -> Iterator[str]: ...
|
68
|
-
@_raise_if_no_value
|
69
|
-
def _include_dir_named_yaml(loader: LoaderType, node: yaml.nodes.Node) -> NodeDictClass: ...
|
70
|
-
@_raise_if_no_value
|
71
|
-
def _include_dir_merge_named_yaml(loader: LoaderType, node: yaml.nodes.Node) -> NodeDictClass: ...
|
72
|
-
@_raise_if_no_value
|
73
|
-
def _include_dir_list_yaml(loader: LoaderType, node: yaml.nodes.Node) -> list[JSON_TYPE]: ...
|
74
|
-
@_raise_if_no_value
|
75
|
-
def _include_dir_merge_list_yaml(loader: LoaderType, node: yaml.nodes.Node) -> JSON_TYPE: ...
|
76
|
-
def _handle_mapping_tag(loader: LoaderType, node: yaml.nodes.MappingNode) -> NodeDictClass: ...
|
77
|
-
def _construct_seq(loader: LoaderType, node: yaml.nodes.Node) -> JSON_TYPE: ...
|
78
|
-
def _handle_scalar_tag(loader: LoaderType, node: yaml.nodes.ScalarNode) -> str | int | float | None: ...
|
79
|
-
def _env_var_yaml(loader: LoaderType, node: yaml.nodes.Node) -> str: ...
|
80
13
|
def secret_yaml(loader: LoaderType, node: yaml.nodes.Node) -> JSON_TYPE: ...
|
81
|
-
def add_constructor(tag: Any, constructor: Any) -> None: ...
|
@@ -1,27 +1,3 @@
|
|
1
|
-
import
|
2
|
-
import yaml
|
3
|
-
from _typeshed import Incomplete
|
4
|
-
from dataclasses import dataclass
|
5
|
-
from typing import Any
|
1
|
+
from annotatedyaml import Input as Input, NodeDictClass as NodeDictClass, NodeListClass as NodeListClass, NodeStrClass as NodeStrClass
|
6
2
|
|
7
|
-
|
8
|
-
__slots__: Incomplete
|
9
|
-
__config_file__: str
|
10
|
-
__line__: int | str
|
11
|
-
|
12
|
-
class NodeStrClass(str):
|
13
|
-
__slots__: Incomplete
|
14
|
-
__config_file__: str
|
15
|
-
__line__: int | str
|
16
|
-
def __voluptuous_compile__(self, schema: vol.Schema) -> Any: ...
|
17
|
-
|
18
|
-
class NodeDictClass(dict):
|
19
|
-
__slots__: Incomplete
|
20
|
-
__config_file__: str
|
21
|
-
__line__: int | str
|
22
|
-
|
23
|
-
@dataclass(slots=True, frozen=True)
|
24
|
-
class Input:
|
25
|
-
name: str
|
26
|
-
@classmethod
|
27
|
-
def from_node(cls, loader: yaml.Loader, node: yaml.nodes.Node) -> Input: ...
|
3
|
+
__all__ = ['Input', 'NodeDictClass', 'NodeListClass', 'NodeStrClass']
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: homeassistant-stubs
|
3
|
-
Version: 2025.
|
3
|
+
Version: 2025.4.0
|
4
4
|
Summary: PEP 484 typing stubs for Home Assistant Core
|
5
5
|
Project-URL: Homepage, https://github.com/KapJI/homeassistant-stubs
|
6
6
|
Project-URL: Bug Tracker, https://github.com/KapJI/homeassistant-stubs/issues
|
@@ -18,7 +18,7 @@ Classifier: Topic :: Home Automation
|
|
18
18
|
Classifier: Topic :: Software Development
|
19
19
|
Classifier: Typing :: Typed
|
20
20
|
Requires-Python: <3.14,>=3.13
|
21
|
-
Requires-Dist: homeassistant==2025.
|
21
|
+
Requires-Dist: homeassistant==2025.4.0
|
22
22
|
Description-Content-Type: text/markdown
|
23
23
|
|
24
24
|
[](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml)
|