import { Logging } from 'homebridge';
import OrbitPlatform from './orbitplatform.js';
export default class OrbitAPI {
    private readonly platform;
    private readonly log;
    private wsp;
    constructor(platform: OrbitPlatform, log?: Logging, wsp?: WebSocketProxy);
    getToken(email: any, password: any): Promise<any>;
    getDevices(token: any, userId: string): Promise<any>;
    getDevice(token: any, device: string): Promise<any>;
    getMeshes(token: any, meshId: string): Promise<any>;
    getNetworkTopologies(token: any, networkTopologyId: string): Promise<any>;
    getDeviceGraph(token: any, userId: any): Promise<any>;
    getTimerPrograms(token: any, device: {
        id: any;
    }): Promise<any>;
    startZone(token: any, device: {
        id: any;
    }, station: any, runTime: number): void;
    startSchedule(token: any, device: {
        id: any;
    }, program: string): void;
    stopZone(token: any, device: {
        id: any;
    }): void;
    startMultipleZone(token: any, device: {
        zones: any[];
        id: any;
    }, runTime: number): void;
    stopDevice(token: any, device: {
        id: any;
    }): void;
    deviceStandby(token: any, device: {
        id: any;
    }, mode: string): void;
    openConnection(token: any, device: any): void;
    onMessage(token: any, device: any, listener: (arg0: any, arg1: any) => void): void;
    sync(token: any, device: any): void;
    identify(token: any, device: any): void;
}
export declare class WebSocketProxy {
    private readonly platform;
    private readonly log;
    private rws;
    private ping;
    constructor(platform: OrbitPlatform, log: Logging, rws?: any, ping?: any);
    connect(token: any, device: any): Promise<any>;
}
