diff --git a/homeassistant/components/teslemetry/__init__.py b/homeassistant/components/teslemetry/__init__.py index e96cba54bf0..16d32736165 100644 --- a/homeassistant/components/teslemetry/__init__.py +++ b/homeassistant/components/teslemetry/__init__.py @@ -41,8 +41,10 @@ PLATFORMS: Final = [ Platform.UPDATE, ] +type TeslemetryConfigEntry = ConfigEntry[TeslemetryData] -async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: + +async def async_setup_entry(hass: HomeAssistant, entry: TeslemetryConfigEntry) -> bool: """Set up Teslemetry config.""" access_token = entry.data[CONF_ACCESS_TOKEN] @@ -147,6 +149,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: return True -async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: +async def async_unload_entry(hass: HomeAssistant, entry: TeslemetryConfigEntry) -> bool: """Unload Teslemetry Config.""" return await hass.config_entries.async_unload_platforms(entry, PLATFORMS) diff --git a/homeassistant/components/teslemetry/binary_sensor.py b/homeassistant/components/teslemetry/binary_sensor.py index 89ece839d18..5613f622aeb 100644 --- a/homeassistant/components/teslemetry/binary_sensor.py +++ b/homeassistant/components/teslemetry/binary_sensor.py @@ -12,12 +12,12 @@ from homeassistant.components.binary_sensor import ( BinarySensorEntity, BinarySensorEntityDescription, ) -from homeassistant.config_entries import ConfigEntry from homeassistant.const import EntityCategory from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.typing import StateType +from . import TeslemetryConfigEntry from .const import TeslemetryState from .entity import ( TeslemetryEnergyInfoEntity, @@ -174,7 +174,9 @@ ENERGY_INFO_DESCRIPTIONS: tuple[BinarySensorEntityDescription, ...] = ( async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry binary sensor platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/button.py b/homeassistant/components/teslemetry/button.py index 188613d92f7..433279f21da 100644 --- a/homeassistant/components/teslemetry/button.py +++ b/homeassistant/components/teslemetry/button.py @@ -9,10 +9,10 @@ from typing import Any from tesla_fleet_api.const import Scope from homeassistant.components.button import ButtonEntity, ButtonEntityDescription -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .entity import TeslemetryVehicleEntity from .models import TeslemetryVehicleData @@ -49,7 +49,9 @@ DESCRIPTIONS: tuple[TeslemetryButtonEntityDescription, ...] = ( async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry Button platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/climate.py b/homeassistant/components/teslemetry/climate.py index f7abf66672c..f32aca26636 100644 --- a/homeassistant/components/teslemetry/climate.py +++ b/homeassistant/components/teslemetry/climate.py @@ -12,11 +12,11 @@ from homeassistant.components.climate import ( ClimateEntityFeature, HVACMode, ) -from homeassistant.config_entries import ConfigEntry from homeassistant.const import ATTR_TEMPERATURE, PRECISION_HALVES, UnitOfTemperature from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .const import TeslemetryClimateSide from .entity import TeslemetryVehicleEntity from .models import TeslemetryVehicleData @@ -26,7 +26,9 @@ DEFAULT_MAX_TEMP = 28 async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry Climate platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/cover.py b/homeassistant/components/teslemetry/cover.py index c8aef1a8ef6..6c08dff6c96 100644 --- a/homeassistant/components/teslemetry/cover.py +++ b/homeassistant/components/teslemetry/cover.py @@ -12,10 +12,10 @@ from homeassistant.components.cover import ( CoverEntity, CoverEntityFeature, ) -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .entity import TeslemetryVehicleEntity from .models import TeslemetryVehicleData @@ -24,7 +24,9 @@ CLOSED = 0 async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry cover platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/device_tracker.py b/homeassistant/components/teslemetry/device_tracker.py index afd947ab3b3..8e270f9cf29 100644 --- a/homeassistant/components/teslemetry/device_tracker.py +++ b/homeassistant/components/teslemetry/device_tracker.py @@ -4,16 +4,18 @@ from __future__ import annotations from homeassistant.components.device_tracker import SourceType from homeassistant.components.device_tracker.config_entry import TrackerEntity -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .entity import TeslemetryVehicleEntity from .models import TeslemetryVehicleData async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry device tracker platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/diagnostics.py b/homeassistant/components/teslemetry/diagnostics.py index ee6fae322c8..7e9c8a9a5b0 100644 --- a/homeassistant/components/teslemetry/diagnostics.py +++ b/homeassistant/components/teslemetry/diagnostics.py @@ -5,9 +5,10 @@ from __future__ import annotations from typing import Any from homeassistant.components.diagnostics import async_redact_data -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant +from . import TeslemetryConfigEntry + VEHICLE_REDACT = [ "id", "user_id", @@ -28,7 +29,7 @@ ENERGY_INFO_REDACT = ["installation_date"] async def async_get_config_entry_diagnostics( - hass: HomeAssistant, entry: ConfigEntry + hass: HomeAssistant, entry: TeslemetryConfigEntry ) -> dict[str, Any]: """Return diagnostics for a config entry.""" vehicles = [ diff --git a/homeassistant/components/teslemetry/lock.py b/homeassistant/components/teslemetry/lock.py index 9790a12f666..d40d389bfb9 100644 --- a/homeassistant/components/teslemetry/lock.py +++ b/homeassistant/components/teslemetry/lock.py @@ -7,11 +7,11 @@ from typing import Any from tesla_fleet_api.const import Scope from homeassistant.components.lock import LockEntity -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.exceptions import ServiceValidationError from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .const import DOMAIN from .entity import TeslemetryVehicleEntity from .models import TeslemetryVehicleData @@ -20,7 +20,9 @@ ENGAGED = "Engaged" async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry lock platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/media_player.py b/homeassistant/components/teslemetry/media_player.py index c7fc1c87438..0f8533109ae 100644 --- a/homeassistant/components/teslemetry/media_player.py +++ b/homeassistant/components/teslemetry/media_player.py @@ -10,10 +10,10 @@ from homeassistant.components.media_player import ( MediaPlayerEntityFeature, MediaPlayerState, ) -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .entity import TeslemetryVehicleEntity from .models import TeslemetryVehicleData @@ -28,7 +28,9 @@ VOLUME_STEP = 1.0 / 3 async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry Media platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/number.py b/homeassistant/components/teslemetry/number.py index baf46487046..7551529006b 100644 --- a/homeassistant/components/teslemetry/number.py +++ b/homeassistant/components/teslemetry/number.py @@ -16,12 +16,12 @@ from homeassistant.components.number import ( NumberEntityDescription, NumberMode, ) -from homeassistant.config_entries import ConfigEntry from homeassistant.const import PERCENTAGE, PRECISION_WHOLE, UnitOfElectricCurrent from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.icon import icon_for_battery_level +from . import TeslemetryConfigEntry from .entity import TeslemetryEnergyInfoEntity, TeslemetryVehicleEntity from .models import TeslemetryEnergyData, TeslemetryVehicleData @@ -90,7 +90,9 @@ ENERGY_INFO_DESCRIPTIONS: tuple[TeslemetryNumberBatteryEntityDescription, ...] = async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry number platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/select.py b/homeassistant/components/teslemetry/select.py index 2782cb2b922..c9c8cb1ec20 100644 --- a/homeassistant/components/teslemetry/select.py +++ b/homeassistant/components/teslemetry/select.py @@ -9,10 +9,10 @@ from itertools import chain from tesla_fleet_api.const import EnergyExportMode, EnergyOperationMode, Scope, Seat from homeassistant.components.select import SelectEntity, SelectEntityDescription -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .entity import TeslemetryEnergyInfoEntity, TeslemetryVehicleEntity from .models import TeslemetryEnergyData, TeslemetryVehicleData @@ -73,7 +73,9 @@ SEAT_HEATER_DESCRIPTIONS: tuple[SeatHeaterDescription, ...] = ( async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry select platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/sensor.py b/homeassistant/components/teslemetry/sensor.py index 9e2d79fc6f4..c179d0edf5d 100644 --- a/homeassistant/components/teslemetry/sensor.py +++ b/homeassistant/components/teslemetry/sensor.py @@ -14,7 +14,6 @@ from homeassistant.components.sensor import ( SensorEntityDescription, SensorStateClass, ) -from homeassistant.config_entries import ConfigEntry from homeassistant.const import ( PERCENTAGE, EntityCategory, @@ -34,6 +33,7 @@ from homeassistant.helpers.typing import StateType from homeassistant.util import dt as dt_util from homeassistant.util.variance import ignore_variance +from . import TeslemetryConfigEntry from .entity import ( TeslemetryEnergyInfoEntity, TeslemetryEnergyLiveEntity, @@ -413,7 +413,9 @@ ENERGY_INFO_DESCRIPTIONS: tuple[SensorEntityDescription, ...] = ( async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry sensor platform from a config entry.""" async_add_entities( diff --git a/homeassistant/components/teslemetry/switch.py b/homeassistant/components/teslemetry/switch.py index 7f7871694a9..d7d5095db90 100644 --- a/homeassistant/components/teslemetry/switch.py +++ b/homeassistant/components/teslemetry/switch.py @@ -14,10 +14,10 @@ from homeassistant.components.switch import ( SwitchEntity, SwitchEntityDescription, ) -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .entity import TeslemetryEnergyInfoEntity, TeslemetryVehicleEntity from .models import TeslemetryEnergyData, TeslemetryVehicleData @@ -85,7 +85,9 @@ VEHICLE_CHARGE_DESCRIPTION = TeslemetrySwitchEntityDescription( async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry Switch platform from a config entry.""" diff --git a/homeassistant/components/teslemetry/update.py b/homeassistant/components/teslemetry/update.py index 9d5d4aa7453..89393700c1f 100644 --- a/homeassistant/components/teslemetry/update.py +++ b/homeassistant/components/teslemetry/update.py @@ -7,10 +7,10 @@ from typing import Any, cast from tesla_fleet_api.const import Scope from homeassistant.components.update import UpdateEntity, UpdateEntityFeature -from homeassistant.config_entries import ConfigEntry from homeassistant.core import HomeAssistant from homeassistant.helpers.entity_platform import AddEntitiesCallback +from . import TeslemetryConfigEntry from .entity import TeslemetryVehicleEntity from .models import TeslemetryVehicleData @@ -22,7 +22,9 @@ SCHEDULED = "scheduled" async def async_setup_entry( - hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback + hass: HomeAssistant, + entry: TeslemetryConfigEntry, + async_add_entities: AddEntitiesCallback, ) -> None: """Set up the Teslemetry update platform from a config entry."""