import { PlatformAccessory } from 'homebridge';
import { SonnenHomebridgePlatform } from './platform';
import { BatteryStatus, InverterStatus } from './sonnenApi';
export interface UpdatableAccessory {
    updateAccessory(batteryStatus: BatteryStatus, inverterStatus: InverterStatus): void;
}
export declare const AccessoryType: {
    Production: string;
    Consumption: string;
    Grid: string;
};
export declare class SonnenAccessoryFactory {
    private platform;
    private api;
    private log;
    constructor(platform: SonnenHomebridgePlatform);
    makePlugin(displayName: string, uuid: string): UpdatableAccessory | null;
    registerPlugin<P extends PlatformAccessory>(existingAccessory: P): UpdatableAccessory | null;
}
//# sourceMappingURL=sonnenAccessory.d.ts.map