import { IdzResult, IdzScenesResult, IdzEventsOptions, IdzDevicesResult, IdzDevicesOptions, IdzCamera, IdzCommandOptions } from '../types';
interface DomoticzApiOptions {
    DomoticzApi?: typeof DomoticzApiConnector;
    hostname: string;
    port?: number;
    username?: string;
    password?: string;
    useSSL?: boolean;
}
declare class DomoticzApiConnector {
    hostname: string;
    username: string;
    password: string;
    useSSL: Boolean;
    port: Number;
    endpoint: String;
    constructor(options: DomoticzApiOptions);
    url(uri: string): string;
    cameras(): Promise<IdzResult<IdzCamera>>;
    command(data: IdzCommandOptions, postData?: {}): Promise<any>;
    hardware(): Promise<any>;
    devices(data: IdzDevicesOptions): Promise<IdzDevicesResult>;
    events(data: IdzEventsOptions): Promise<Object>;
    notifications(data: Object): Promise<Object>;
    scenes(): Promise<IdzScenesResult>;
    setUsed(data: Object): Promise<IdzResult<null>>;
    checkCredentials(): Promise<IdzResult<null>>;
    get(uri: string): Promise<any>;
    domoticz(data: Object, postData?: any): Promise<any>;
    login(username: any, password: any, rememberMe: any): Promise<any>;
    __generic(method: string, endpoint: string, data?: Object, content?: {}): Promise<any>;
    __login(username: string, password: string, rememberMe: boolean): Promise<any>;
}
export { DomoticzApiOptions, DomoticzApiConnector };
