export declare enum ValueType { Bit = "Bit", Enum = "Enum", Range = "Range", Reference = "Reference", StringComment = "StringComment" } export interface ModelDataValue { type: string; [key: string]: any; } export interface MonitoringValue { dataType: string; valueMapping: { [key: string]: { index: string; label: string; }; }; } export interface ModelData { Info: { productType: string; productCode: string; coutnry: string; modelType: string; model: string; modelName: string; networkType: string; version: string; }; Value: { [key: string]: ModelDataValue; }; MonitoringValue: { [key: string]: MonitoringValue; }; [key: string]: any; } export interface BitValue { type: ValueType.Bit; options: any; } export interface EnumValue { type: ValueType.Enum; options: any; } export interface RangeValue { type: ValueType.Range; min: number; max: number; step: number; } export interface ReferenceValue { type: ValueType.Reference; reference: any; } export interface StringCommentValue { type: ValueType.StringComment; comment: string; } export declare class DeviceModel { data: ModelData; constructor(data: ModelData); get monitoringValue(): { [key: string]: MonitoringValue; }; value(name: string): BitValue | EnumValue | RangeValue | ReferenceValue | StringCommentValue | null; default(name: string): any; enumValue(key: string, name: string): any; enumName(key: string, value: string): any; monitoringValueMapping(key: any): any; lookupMonitorValue(key: string, name: string, default_value?: null | string): any; lookupMonitorName(key: string, label: string): any; decodeMonitor(data: any): any; private decodeMonitorBinary; } //# sourceMappingURL=DeviceModel.d.ts.map