1 """The powerwall integration models."""
3 from __future__
import annotations
5 from dataclasses
import dataclass
6 from typing
import TypedDict
8 from tesla_powerwall
import (
12 MetersAggregatesResponse,
14 PowerwallStatusResponse,
22 type PowerwallConfigEntry = ConfigEntry[PowerwallRuntimeData]
27 """Base information for the powerwall integration."""
30 site_info: SiteInfoResponse
31 status: PowerwallStatusResponse
32 device_type: DeviceType
33 serial_numbers: list[str]
35 batteries: dict[str, BatteryResponse]
40 """Point in time data for the powerwall integration."""
43 site_master: SiteMasterResponse
44 meters: MetersAggregatesResponse
45 grid_services_active: bool
46 grid_status: GridStatus
47 backup_reserve: float |
None
48 batteries: dict[str, BatteryResponse]
52 """Run time data for the powerwall."""
54 coordinator: DataUpdateCoordinator[PowerwallData] |
None
55 api_instance: Powerwall
56 base_info: PowerwallBaseInfo