/**
 * VeSync Outlet Implementations
 */
import { VeSyncOutlet } from './vesyncOutlet';
import { VeSync } from './vesync';
/**
 * VeSync 7A Outlet
 */
export declare class VeSyncOutlet7A extends VeSyncOutlet {
    constructor(details: Record<string, any>, manager: VeSync);
    /**
     * Turn outlet on
     */
    turnOn(): Promise<boolean>;
    /**
     * Turn outlet off
     */
    turnOff(): Promise<boolean>;
}
/**
 * VeSync 10A Outlet
 */
export declare class VeSyncOutlet10A extends VeSyncOutlet {
    constructor(details: Record<string, any>, manager: VeSync);
    /**
     * Turn outlet on
     */
    turnOn(): Promise<boolean>;
    /**
     * Turn outlet off
     */
    turnOff(): Promise<boolean>;
}
/**
 * VeSync 15A Outlet
 */
export declare class VeSyncOutlet15A extends VeSyncOutlet {
    constructor(details: Record<string, any>, manager: VeSync);
    /**
     * Turn outlet on
     */
    turnOn(): Promise<boolean>;
    /**
     * Turn outlet off
     */
    turnOff(): Promise<boolean>;
    /**
     * Turn on nightlight
     */
    turnOnNightlight(): Promise<boolean>;
    /**
     * Turn off nightlight
     */
    turnOffNightlight(): Promise<boolean>;
}
/**
 * VeSync Outdoor Plug
 */
export declare class VeSyncOutdoorPlug extends VeSyncOutlet {
    subDeviceNo?: number;
    isSubDevice: boolean;
    constructor(details: Record<string, any>, manager: VeSync);
    /**
     * Turn outlet on
     */
    turnOn(): Promise<boolean>;
    /**
     * Turn outlet off
     */
    turnOff(): Promise<boolean>;
}
export declare const outletModules: Record<string, new (details: Record<string, any>, manager: VeSync) => VeSyncOutlet>;
