import { API, Logging, PlatformAccessory, Service } from "homebridge";
import { DeviceAccessory } from "./types";
import { Device } from "../graphql/graphql";
export declare abstract class HiloDevice<T extends Device> {
    protected readonly accessory: PlatformAccessory<DeviceAccessory<T>>;
    protected readonly api: API;
    protected readonly logger: Logging;
    protected service: Service | null;
    constructor(accessory: PlatformAccessory<DeviceAccessory<T>>, api: API, logger?: Logging);
    get device(): T;
    updateDevice(device: T): void;
}
//# sourceMappingURL=HiloDevice.d.ts.map