import { DataTypeType, PermissionType, PropertyCategory } from '../../../modules/devices/devices.constants'; import { HomeAssistantDomain } from '../devices-home-assistant.constants'; import { VirtualPropertyType } from '../mappings'; import { HomeAssistantStateModel } from '../models/home-assistant.model'; export interface VirtualPropertyContext { entityId: string; domain: HomeAssistantDomain; deviceClass?: string | null; state?: HomeAssistantStateModel; allStates?: HomeAssistantStateModel[]; } export interface ResolvedVirtualPropertyValue { category: PropertyCategory; value: string | number | boolean | null; isVirtual: true; virtualType: VirtualPropertyType; dataType: DataTypeType; permissions: PermissionType[]; format?: (string | number)[]; unit?: string; }