import { PlatformAccessory } from 'homebridge';
import { UniFiSmartPowerHomebridgePlatform } from './platform';
import { UniFiDevice, UniFiRpsPort, UniFiSmartPowerOutlet, UniFiSwitchPort } from './uniFiSmartPower';
export interface UniFiDevicePlatformAccessoryContext {
    device: UniFiDevice;
}
export declare class UniFiSmartPowerOutletPlatformAccessory {
    private readonly platform;
    private readonly accessory;
    private readonly outlet;
    private readonly isEnabled;
    private readonly log;
    private readonly hap;
    private readonly uniFiSmartPower;
    private readonly context;
    private readonly outletIndex;
    private readonly outletName;
    private readonly serialNumber;
    private readonly id;
    private status;
    private inUse;
    constructor(platform: UniFiSmartPowerHomebridgePlatform, accessory: PlatformAccessory, outlet: UniFiSmartPowerOutlet, isEnabled: () => boolean);
    private setOn;
    private getOn;
    private getInUse;
}
export declare class UniFiSwitchPortPlatformAccessory {
    private readonly platform;
    private readonly accessory;
    private readonly port;
    private readonly isEnabled;
    private readonly log;
    private readonly hap;
    private readonly uniFiSmartPower;
    private readonly context;
    private readonly portIndex;
    private readonly portName;
    private readonly portPoeOnAction;
    private readonly serialNumber;
    private readonly id;
    private poeMode;
    private inUse;
    constructor(platform: UniFiSmartPowerHomebridgePlatform, accessory: PlatformAccessory, port: UniFiSwitchPort, isEnabled: () => boolean);
    private setOn;
    private getOn;
    private getInUse;
}
export declare class UniFiRpsPortPlatformAccessory {
    private readonly platform;
    private readonly accessory;
    private readonly rpsPort;
    private readonly isEnabled;
    private readonly log;
    private readonly hap;
    private readonly uniFiSmartPower;
    private readonly context;
    private readonly portIndex;
    private readonly portName;
    private readonly serialNumber;
    private readonly id;
    private portMode;
    private inUse;
    constructor(platform: UniFiSmartPowerHomebridgePlatform, accessory: PlatformAccessory, rpsPort: UniFiRpsPort, isEnabled: () => boolean);
    private setOn;
    private getOn;
    private getInUse;
}
//# sourceMappingURL=platformAccessory.d.ts.map