import { PlatformAccessory } from "homebridge";
import { EnergySpecific } from "tesla-fleet-api";
import { LiveStatusResponse } from "tesla-fleet-api/dist/types/live_status";
import { SiteInfoResponse } from "tesla-fleet-api/dist/types/site_info.js";
import { TeslaFleetApiPlatform } from "./platform.js";
import { EventEmitter } from "./utils/event.js";
export type EnergyContext = {
    id: number;
    battery: boolean;
    grid: boolean;
    solar: boolean;
};
export interface EnergyDataEvent {
    live_status(data: LiveStatusResponse): void;
    site_info(data: SiteInfoResponse): void;
}
export declare class EnergyAccessory {
    readonly platform: TeslaFleetApiPlatform;
    readonly accessory: PlatformAccessory<EnergyContext>;
    energy: EnergySpecific;
    emitter: EventEmitter<EnergyDataEvent>;
    constructor(platform: TeslaFleetApiPlatform, accessory: PlatformAccessory<EnergyContext>);
    refresh(): Promise<void>;
}
