@elshaer/homebridge-lg-thinq
Version:
A Homebridge plugin for controlling/monitoring LG ThinQ device via LG ThinQ platform.
78 lines • 1.96 kB
TypeScript
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