import type { PlatformAccessory } from 'homebridge';
import { VirtualAccessoriesPlatform } from './platform.js';
import { Accessory } from './accessories/accessory.js';
import { BinarySensor } from './sensors/binarySensor.js';
import { MeasurementSensor } from './sensors/measurementSensor.js';
import { Trigger } from './sensors/triggers/trigger.js';
import { AccessoryConfiguration } from './configuration/configurationAccessory.js';
/**
 * Virtual Accessory Factory
 * Factory class to create virtual accessories
 */
export declare abstract class AccessoryFactory {
    constructor();
    static createVirtualAccessory(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration): Accessory | undefined;
    static createVirtualBinarySensor(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration): BinarySensor | undefined;
    static createVirtualMeasurementSensor(platform: VirtualAccessoriesPlatform, accessory: PlatformAccessory, accessoryConfiguration: AccessoryConfiguration): MeasurementSensor | undefined;
    static createTrigger(sensor: BinarySensor, triggerType: string, name: string): Trigger | undefined;
}
