import { OnModuleInit } from '@nestjs/common'; import { ChannelCategory, DataTypeType, PermissionType, PropertyCategory } from '../../../modules/devices/devices.constants'; import { Z2mExpose } from '../interfaces/zigbee2mqtt.interface'; import { ConfigDrivenConverter } from '../mappings/config-driven.converter'; export interface MappedChannel { identifier: string; name: string; category: ChannelCategory; endpoint?: string; properties: MappedProperty[]; parentIdentifier?: string; } export interface MappedProperty { identifier: string; name: string; category: PropertyCategory; channelCategory: ChannelCategory; dataType: DataTypeType; permissions: PermissionType[]; z2mProperty: string; unit?: string; format?: string[] | number[]; min?: number; max?: number; step?: number; staticValue?: string | number | boolean; transformerName?: string; invalid?: string | number | boolean; } export declare class Z2mExposesMapperService implements OnModuleInit { private readonly configDrivenConverter; private readonly logger; private readonly converterRegistry; constructor(configDrivenConverter: ConfigDrivenConverter); onModuleInit(): void; private registerConverters; mapExposes(exposes: Z2mExpose[], deviceInfo?: { ieeeAddress?: string; friendlyName?: string; model?: string; manufacturer?: string; }): MappedChannel[]; getConfigDrivenConverter(): ConfigDrivenConverter; }