import { IDevice } from "../../local/interfaces";
import { ICloudDevice } from "../interfaces/ICloudDevice";
import { ICloudDeviceService } from "../interfaces/ICloudDeviceService";
import { IConnection } from "../../../connection";
export declare abstract class CloudDevice implements ICloudDevice {
    deviceId: string;
    localDevice?: IDevice;
    connection?: IConnection;
    cloudDeviceService: ICloudDeviceService;
    constructor(device: IDevice, cloudDeviceService: ICloudDeviceService);
    getDevice(connectionId: string, deviceId: string): Promise<Record<string, any>>;
    getBattery(deviceId: string): Promise<number | string>;
    getState(deviceId: string): Promise<string>;
    getStatus(connectionId: string, deviceId: string): Promise<string>;
    toLocalDevice(): Promise<IDevice>;
}
