import { ChannelCategory, PropertyCategory } from '../../../modules/devices/devices.constants'; import { CHANNEL_VIRTUAL_PROPERTIES, ResolvedVirtualProperty, VirtualPropertyContext, VirtualPropertyDefinition } from './virtual-property.types'; export declare class Z2mVirtualPropertyService { private readonly logger; getMissingVirtualProperties(channelCategory: ChannelCategory, existingProperties: PropertyCategory[], requiredProperties: PropertyCategory[], context: VirtualPropertyContext): ResolvedVirtualProperty[]; private canProvideVirtualProperty; resolveVirtualPropertyValue(def: VirtualPropertyDefinition, context: VirtualPropertyContext): string | number | boolean | null; getCommandTranslation(channelCategory: ChannelCategory, propertyCategory: PropertyCategory, commandValue: string | number | boolean): { targetProperty: string; translatedValue: string | number | boolean; } | null; private resolveDerivedValue; private deriveBatteryStatus; private deriveBatteryStatusWithCharging; private deriveIlluminanceLevel; private deriveCoverStatus; getAllVirtualPropertyDefinitions(): typeof CHANNEL_VIRTUAL_PROPERTIES; }