modelOfMatterModel.ts
1.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
import { DataTypeEnum } from '/@/enums/objectModelEnum';
import { FunctionType } from '/@/views/device/profiles/step/cpns/physical/cpns/config';
export interface Specs {
min: string;
max: string;
unit: string;
unitName: string;
step: string;
length: string;
boolOpen: string;
boolClose: string;
valueRange?: {
min: string;
max: string;
};
}
export interface DataType {
type: DataTypeEnum;
specs?: Partial<Specs> | StructJSON[];
}
export interface StructJSON {
functionName?: string;
identifier: string;
remark?: string;
dataType?: DataType;
serviceCommand?: string;
accessMode?: string;
}
export interface FunctionJson {
dataType?: DataType | DataType[];
inputData?: StructJSON[];
outputData?: StructJSON[];
serviceCommand?: string;
}
export interface ModelOfMatterParams {
deviceProfileId?: string;
functionJson: FunctionJson;
functionName: string;
functionType: FunctionType;
identifier: string;
remark: string;
id?: string;
categoryId?: string;
callType?: string;
eventType?: string;
accessMode?: string;
extensionDesc?: Recordable;
}
export interface GetModelTslParams {
functionType: FunctionType;
deviceProfileId: string;
ifShowClass?: string | Boolean;
}
export interface ImportModelOfMatterType {
data: Recordable;
functionType: string;
tkDeviceProfileId?: string;
categoryId?: string;
}
export interface ModelOfMatterItemRecordType {
id: string;
creator: string;
createTime: string;
enabled: boolean;
tenantId: string;
functionType: string;
functionName: string;
identifier: string;
extensionDesc: any;
accessMode: string;
functionJson: FunctionJson;
status: number;
deviceProfileId: string;
}