zigbee-herdsman 0.28.0 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/.babelrc.js +0 -4
  2. package/.release-please-manifest.json +1 -1
  3. package/CHANGELOG.md +16 -0
  4. package/dist/adapter/adapter.js +21 -45
  5. package/dist/adapter/adapter.js.map +1 -1
  6. package/dist/adapter/deconz/adapter/deconzAdapter.js +76 -98
  7. package/dist/adapter/deconz/adapter/deconzAdapter.js.map +1 -1
  8. package/dist/adapter/deconz/adapter/index.js +2 -8
  9. package/dist/adapter/deconz/adapter/index.js.map +1 -1
  10. package/dist/adapter/deconz/driver/constants.js +1 -3
  11. package/dist/adapter/deconz/driver/constants.js.map +1 -1
  12. package/dist/adapter/deconz/driver/driver.js +77 -72
  13. package/dist/adapter/deconz/driver/driver.js.map +1 -1
  14. package/dist/adapter/deconz/driver/frame.js +1 -3
  15. package/dist/adapter/deconz/driver/frame.js.map +1 -1
  16. package/dist/adapter/deconz/driver/frameParser.js +36 -41
  17. package/dist/adapter/deconz/driver/frameParser.js.map +1 -1
  18. package/dist/adapter/deconz/driver/parser.js +8 -34
  19. package/dist/adapter/deconz/driver/parser.js.map +1 -1
  20. package/dist/adapter/deconz/driver/writer.js +6 -34
  21. package/dist/adapter/deconz/driver/writer.js.map +1 -1
  22. package/dist/adapter/events.js +2 -4
  23. package/dist/adapter/events.js.map +1 -1
  24. package/dist/adapter/ezsp/adapter/backup.js +10 -15
  25. package/dist/adapter/ezsp/adapter/backup.js.map +1 -1
  26. package/dist/adapter/ezsp/adapter/ezspAdapter.js +59 -81
  27. package/dist/adapter/ezsp/adapter/ezspAdapter.js.map +1 -1
  28. package/dist/adapter/ezsp/adapter/index.js +2 -8
  29. package/dist/adapter/ezsp/adapter/index.js.map +1 -1
  30. package/dist/adapter/ezsp/driver/commands.js +629 -628
  31. package/dist/adapter/ezsp/driver/commands.js.map +1 -1
  32. package/dist/adapter/ezsp/driver/consts.js +10 -13
  33. package/dist/adapter/ezsp/driver/consts.js.map +1 -1
  34. package/dist/adapter/ezsp/driver/driver.js +100 -96
  35. package/dist/adapter/ezsp/driver/driver.js.map +1 -1
  36. package/dist/adapter/ezsp/driver/ezsp.js +85 -104
  37. package/dist/adapter/ezsp/driver/ezsp.js.map +1 -1
  38. package/dist/adapter/ezsp/driver/index.js +3 -7
  39. package/dist/adapter/ezsp/driver/index.js.map +1 -1
  40. package/dist/adapter/ezsp/driver/multicast.js +17 -19
  41. package/dist/adapter/ezsp/driver/multicast.js.map +1 -1
  42. package/dist/adapter/ezsp/driver/parser.js +6 -35
  43. package/dist/adapter/ezsp/driver/parser.js.map +1 -1
  44. package/dist/adapter/ezsp/driver/types/basic.js +35 -57
  45. package/dist/adapter/ezsp/driver/types/basic.js.map +1 -1
  46. package/dist/adapter/ezsp/driver/types/index.js +12 -119
  47. package/dist/adapter/ezsp/driver/types/index.js.map +1 -1
  48. package/dist/adapter/ezsp/driver/types/named.js +1548 -1627
  49. package/dist/adapter/ezsp/driver/types/named.js.map +1 -1
  50. package/dist/adapter/ezsp/driver/types/struct.js +649 -668
  51. package/dist/adapter/ezsp/driver/types/struct.js.map +1 -1
  52. package/dist/adapter/ezsp/driver/uart.js +35 -57
  53. package/dist/adapter/ezsp/driver/uart.js.map +1 -1
  54. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js +1 -3
  55. package/dist/adapter/ezsp/driver/utils/crc16ccitt.js.map +1 -1
  56. package/dist/adapter/ezsp/driver/utils/index.js +23 -27
  57. package/dist/adapter/ezsp/driver/utils/index.js.map +1 -1
  58. package/dist/adapter/ezsp/driver/writer.js +7 -37
  59. package/dist/adapter/ezsp/driver/writer.js.map +1 -1
  60. package/dist/adapter/index.js +4 -35
  61. package/dist/adapter/index.js.map +1 -1
  62. package/dist/adapter/serialPort.js +6 -10
  63. package/dist/adapter/serialPort.js.map +1 -1
  64. package/dist/adapter/serialPortUtils.js +7 -9
  65. package/dist/adapter/serialPortUtils.js.map +1 -1
  66. package/dist/adapter/socketPortUtils.js +1 -3
  67. package/dist/adapter/socketPortUtils.js.map +1 -1
  68. package/dist/adapter/tstype.js +1 -2
  69. package/dist/adapter/z-stack/adapter/adapter-backup.js +79 -108
  70. package/dist/adapter/z-stack/adapter/adapter-backup.js.map +1 -1
  71. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js +23 -27
  72. package/dist/adapter/z-stack/adapter/adapter-nv-memory.js.map +1 -1
  73. package/dist/adapter/z-stack/adapter/endpoints.js +3 -29
  74. package/dist/adapter/z-stack/adapter/endpoints.js.map +1 -1
  75. package/dist/adapter/z-stack/adapter/index.js +2 -8
  76. package/dist/adapter/z-stack/adapter/index.js.map +1 -1
  77. package/dist/adapter/z-stack/adapter/manager.js +77 -102
  78. package/dist/adapter/z-stack/adapter/manager.js.map +1 -1
  79. package/dist/adapter/z-stack/adapter/tstype.js +2 -4
  80. package/dist/adapter/z-stack/adapter/tstype.js.map +1 -1
  81. package/dist/adapter/z-stack/adapter/zStackAdapter.js +62 -79
  82. package/dist/adapter/z-stack/adapter/zStackAdapter.js.map +1 -1
  83. package/dist/adapter/z-stack/constants/af.js +1 -3
  84. package/dist/adapter/z-stack/constants/af.js.map +1 -1
  85. package/dist/adapter/z-stack/constants/common.js +16 -19
  86. package/dist/adapter/z-stack/constants/common.js.map +1 -1
  87. package/dist/adapter/z-stack/constants/dbg.js +1 -3
  88. package/dist/adapter/z-stack/constants/dbg.js.map +1 -1
  89. package/dist/adapter/z-stack/constants/index.js +10 -47
  90. package/dist/adapter/z-stack/constants/index.js.map +1 -1
  91. package/dist/adapter/z-stack/constants/mac.js +1 -3
  92. package/dist/adapter/z-stack/constants/mac.js.map +1 -1
  93. package/dist/adapter/z-stack/constants/sapi.js +1 -3
  94. package/dist/adapter/z-stack/constants/sapi.js.map +1 -1
  95. package/dist/adapter/z-stack/constants/sys.js +1 -3
  96. package/dist/adapter/z-stack/constants/sys.js.map +1 -1
  97. package/dist/adapter/z-stack/constants/util.js +1 -3
  98. package/dist/adapter/z-stack/constants/util.js.map +1 -1
  99. package/dist/adapter/z-stack/constants/utils.js +3 -7
  100. package/dist/adapter/z-stack/constants/utils.js.map +1 -1
  101. package/dist/adapter/z-stack/constants/zdo.js +1 -3
  102. package/dist/adapter/z-stack/constants/zdo.js.map +1 -1
  103. package/dist/adapter/z-stack/models/index.js +1 -17
  104. package/dist/adapter/z-stack/models/index.js.map +1 -1
  105. package/dist/adapter/z-stack/models/startup-options.js +1 -2
  106. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js +5 -9
  107. package/dist/adapter/z-stack/structs/entries/address-manager-entry.js.map +1 -1
  108. package/dist/adapter/z-stack/structs/entries/address-manager-table.js +5 -9
  109. package/dist/adapter/z-stack/structs/entries/address-manager-table.js.map +1 -1
  110. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js +3 -7
  111. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-entry.js.map +1 -1
  112. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js +5 -9
  113. package/dist/adapter/z-stack/structs/entries/aps-link-key-data-table.js.map +1 -1
  114. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js +3 -7
  115. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-entry.js.map +1 -1
  116. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js +5 -9
  117. package/dist/adapter/z-stack/structs/entries/aps-tc-link-key-table.js.map +1 -1
  118. package/dist/adapter/z-stack/structs/entries/channel-list.js +2 -6
  119. package/dist/adapter/z-stack/structs/entries/channel-list.js.map +1 -1
  120. package/dist/adapter/z-stack/structs/entries/has-configured.js +2 -6
  121. package/dist/adapter/z-stack/structs/entries/has-configured.js.map +1 -1
  122. package/dist/adapter/z-stack/structs/entries/index.js +16 -32
  123. package/dist/adapter/z-stack/structs/entries/index.js.map +1 -1
  124. package/dist/adapter/z-stack/structs/entries/nib.js +6 -10
  125. package/dist/adapter/z-stack/structs/entries/nib.js.map +1 -1
  126. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js +2 -6
  127. package/dist/adapter/z-stack/structs/entries/nwk-key-descriptor.js.map +1 -1
  128. package/dist/adapter/z-stack/structs/entries/nwk-key.js +2 -6
  129. package/dist/adapter/z-stack/structs/entries/nwk-key.js.map +1 -1
  130. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js +2 -6
  131. package/dist/adapter/z-stack/structs/entries/nwk-pan-id.js.map +1 -1
  132. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js +2 -6
  133. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-entry.js.map +1 -1
  134. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js +5 -9
  135. package/dist/adapter/z-stack/structs/entries/nwk-sec-material-descriptor-table.js.map +1 -1
  136. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js +5 -9
  137. package/dist/adapter/z-stack/structs/entries/security-manager-entry.js.map +1 -1
  138. package/dist/adapter/z-stack/structs/entries/security-manager-table.js +6 -10
  139. package/dist/adapter/z-stack/structs/entries/security-manager-table.js.map +1 -1
  140. package/dist/adapter/z-stack/structs/index.js +4 -20
  141. package/dist/adapter/z-stack/structs/index.js.map +1 -1
  142. package/dist/adapter/z-stack/structs/serializable-memory-object.js +1 -2
  143. package/dist/adapter/z-stack/structs/struct.js +8 -11
  144. package/dist/adapter/z-stack/structs/struct.js.map +1 -1
  145. package/dist/adapter/z-stack/structs/table.js +7 -9
  146. package/dist/adapter/z-stack/structs/table.js.map +1 -1
  147. package/dist/adapter/z-stack/unpi/constants.js +3 -12
  148. package/dist/adapter/z-stack/unpi/constants.js.map +1 -1
  149. package/dist/adapter/z-stack/unpi/frame.js +13 -9
  150. package/dist/adapter/z-stack/unpi/frame.js.map +1 -1
  151. package/dist/adapter/z-stack/unpi/index.js +5 -37
  152. package/dist/adapter/z-stack/unpi/index.js.map +1 -1
  153. package/dist/adapter/z-stack/unpi/parser.js +13 -40
  154. package/dist/adapter/z-stack/unpi/parser.js.map +1 -1
  155. package/dist/adapter/z-stack/unpi/writer.js +4 -32
  156. package/dist/adapter/z-stack/unpi/writer.js.map +1 -1
  157. package/dist/adapter/z-stack/utils/channel-list.js +5 -11
  158. package/dist/adapter/z-stack/utils/channel-list.js.map +1 -1
  159. package/dist/adapter/z-stack/utils/index.js +2 -18
  160. package/dist/adapter/z-stack/utils/index.js.map +1 -1
  161. package/dist/adapter/z-stack/utils/network-options.js +3 -7
  162. package/dist/adapter/z-stack/utils/network-options.js.map +1 -1
  163. package/dist/adapter/z-stack/znp/buffaloZnp.js +3 -5
  164. package/dist/adapter/z-stack/znp/buffaloZnp.js.map +1 -1
  165. package/dist/adapter/z-stack/znp/definition.js +1280 -1285
  166. package/dist/adapter/z-stack/znp/definition.js.map +1 -1
  167. package/dist/adapter/z-stack/znp/index.js +3 -10
  168. package/dist/adapter/z-stack/znp/index.js.map +1 -1
  169. package/dist/adapter/z-stack/znp/parameterType.js +1 -3
  170. package/dist/adapter/z-stack/znp/parameterType.js.map +1 -1
  171. package/dist/adapter/z-stack/znp/tstype.js +1 -2
  172. package/dist/adapter/z-stack/znp/znp.js +64 -81
  173. package/dist/adapter/z-stack/znp/znp.js.map +1 -1
  174. package/dist/adapter/z-stack/znp/zpiObject.js +30 -29
  175. package/dist/adapter/z-stack/znp/zpiObject.js.map +1 -1
  176. package/dist/adapter/zigate/adapter/index.js +2 -8
  177. package/dist/adapter/zigate/adapter/index.js.map +1 -1
  178. package/dist/adapter/zigate/adapter/zigateAdapter.js +64 -87
  179. package/dist/adapter/zigate/adapter/zigateAdapter.js.map +1 -1
  180. package/dist/adapter/zigate/debug.js +3 -9
  181. package/dist/adapter/zigate/debug.js.map +1 -1
  182. package/dist/adapter/zigate/driver/buffaloZiGate.js +7 -9
  183. package/dist/adapter/zigate/driver/buffaloZiGate.js.map +1 -1
  184. package/dist/adapter/zigate/driver/commandType.js +45 -50
  185. package/dist/adapter/zigate/driver/commandType.js.map +1 -1
  186. package/dist/adapter/zigate/driver/constants.js +31 -34
  187. package/dist/adapter/zigate/driver/constants.js.map +1 -1
  188. package/dist/adapter/zigate/driver/frame.js +11 -14
  189. package/dist/adapter/zigate/driver/frame.js.map +1 -1
  190. package/dist/adapter/zigate/driver/messageType.js +27 -30
  191. package/dist/adapter/zigate/driver/messageType.js.map +1 -1
  192. package/dist/adapter/zigate/driver/parameterType.js +1 -3
  193. package/dist/adapter/zigate/driver/parameterType.js.map +1 -1
  194. package/dist/adapter/zigate/driver/ziGateObject.js +17 -18
  195. package/dist/adapter/zigate/driver/ziGateObject.js.map +1 -1
  196. package/dist/adapter/zigate/driver/zigate.js +55 -47
  197. package/dist/adapter/zigate/driver/zigate.js.map +1 -1
  198. package/dist/buffalo/buffalo.js +5 -5
  199. package/dist/buffalo/buffalo.js.map +1 -1
  200. package/dist/buffalo/index.js +3 -33
  201. package/dist/buffalo/index.js.map +1 -1
  202. package/dist/buffalo/tstype.js +1 -2
  203. package/dist/controller/controller.js +99 -110
  204. package/dist/controller/controller.js.map +1 -1
  205. package/dist/controller/database.js +13 -16
  206. package/dist/controller/database.js.map +1 -1
  207. package/dist/controller/events.js +2 -5
  208. package/dist/controller/events.js.map +1 -1
  209. package/dist/controller/greenPower.js +17 -44
  210. package/dist/controller/greenPower.js.map +1 -1
  211. package/dist/controller/helpers/index.js +2 -28
  212. package/dist/controller/helpers/index.js.map +1 -1
  213. package/dist/controller/helpers/request.js +38 -32
  214. package/dist/controller/helpers/request.js.map +1 -1
  215. package/dist/controller/helpers/requestQueue.js +8 -11
  216. package/dist/controller/helpers/requestQueue.js.map +1 -1
  217. package/dist/controller/helpers/zclFrameConverter.js +5 -13
  218. package/dist/controller/helpers/zclFrameConverter.js.map +1 -1
  219. package/dist/controller/helpers/zclTransactionSequenceNumber.js +2 -4
  220. package/dist/controller/helpers/zclTransactionSequenceNumber.js.map +1 -1
  221. package/dist/controller/index.js +5 -8
  222. package/dist/controller/index.js.map +1 -1
  223. package/dist/controller/logger-stub.js +1 -2
  224. package/dist/controller/model/device.js +86 -90
  225. package/dist/controller/model/device.js.map +1 -1
  226. package/dist/controller/model/endpoint.d.ts.map +1 -1
  227. package/dist/controller/model/endpoint.js +60 -79
  228. package/dist/controller/model/endpoint.js.map +1 -1
  229. package/dist/controller/model/entity.js +5 -10
  230. package/dist/controller/model/entity.js.map +1 -1
  231. package/dist/controller/model/group.js +32 -57
  232. package/dist/controller/model/group.js.map +1 -1
  233. package/dist/controller/model/index.js +5 -14
  234. package/dist/controller/model/index.js.map +1 -1
  235. package/dist/controller/touchlink.js +11 -37
  236. package/dist/controller/touchlink.js.map +1 -1
  237. package/dist/controller/tstype.js +2 -4
  238. package/dist/controller/tstype.js.map +1 -1
  239. package/dist/index.js +3 -33
  240. package/dist/index.js.map +1 -1
  241. package/dist/models/backup-storage-legacy.js +1 -2
  242. package/dist/models/backup-storage-unified.js +1 -2
  243. package/dist/models/backup.js +1 -2
  244. package/dist/models/index.js +4 -20
  245. package/dist/models/index.js.map +1 -1
  246. package/dist/models/network-options.js +1 -2
  247. package/dist/utils/assertString.js +1 -3
  248. package/dist/utils/assertString.js.map +1 -1
  249. package/dist/utils/backup.js +15 -46
  250. package/dist/utils/backup.js.map +1 -1
  251. package/dist/utils/equalsPartial.js +3 -8
  252. package/dist/utils/equalsPartial.js.map +1 -1
  253. package/dist/utils/index.js +9 -45
  254. package/dist/utils/index.js.map +1 -1
  255. package/dist/utils/isNumberArray.js +1 -3
  256. package/dist/utils/isNumberArray.js.map +1 -1
  257. package/dist/utils/queue.js +3 -3
  258. package/dist/utils/queue.js.map +1 -1
  259. package/dist/utils/realpathSync.js +3 -8
  260. package/dist/utils/realpathSync.js.map +1 -1
  261. package/dist/utils/wait.js +1 -3
  262. package/dist/utils/wait.js.map +1 -1
  263. package/dist/utils/waitress.js +5 -3
  264. package/dist/utils/waitress.js.map +1 -1
  265. package/dist/zcl/buffaloZcl.js +17 -45
  266. package/dist/zcl/buffaloZcl.js.map +1 -1
  267. package/dist/zcl/definition/buffaloZclDataType.js +1 -3
  268. package/dist/zcl/definition/buffaloZclDataType.js.map +1 -1
  269. package/dist/zcl/definition/cluster.d.ts.map +1 -1
  270. package/dist/zcl/definition/cluster.js +2364 -2336
  271. package/dist/zcl/definition/cluster.js.map +1 -1
  272. package/dist/zcl/definition/dataType.js +1 -3
  273. package/dist/zcl/definition/dataType.js.map +1 -1
  274. package/dist/zcl/definition/direction.js +1 -3
  275. package/dist/zcl/definition/direction.js.map +1 -1
  276. package/dist/zcl/definition/endpointDeviceType.js +1 -3
  277. package/dist/zcl/definition/endpointDeviceType.js.map +1 -1
  278. package/dist/zcl/definition/foundation.js +53 -58
  279. package/dist/zcl/definition/foundation.js.map +1 -1
  280. package/dist/zcl/definition/frameControl.js +1 -2
  281. package/dist/zcl/definition/frameType.js +1 -3
  282. package/dist/zcl/definition/frameType.js.map +1 -1
  283. package/dist/zcl/definition/index.js +12 -51
  284. package/dist/zcl/definition/index.js.map +1 -1
  285. package/dist/zcl/definition/manufacturerCode.js +1 -3
  286. package/dist/zcl/definition/manufacturerCode.js.map +1 -1
  287. package/dist/zcl/definition/powerSource.js +1 -3
  288. package/dist/zcl/definition/powerSource.js.map +1 -1
  289. package/dist/zcl/definition/status.js +1 -3
  290. package/dist/zcl/definition/status.js.map +1 -1
  291. package/dist/zcl/definition/tstype.js +1 -2
  292. package/dist/zcl/index.js +14 -55
  293. package/dist/zcl/index.js.map +1 -1
  294. package/dist/zcl/tstype.js +2 -4
  295. package/dist/zcl/tstype.js.map +1 -1
  296. package/dist/zcl/utils.js +23 -29
  297. package/dist/zcl/utils.js.map +1 -1
  298. package/dist/zcl/zclFrame.js +46 -70
  299. package/dist/zcl/zclFrame.js.map +1 -1
  300. package/dist/zcl/zclHeader.js +1 -2
  301. package/dist/zcl/zclStatusError.js +4 -8
  302. package/dist/zcl/zclStatusError.js.map +1 -1
  303. package/package.json +1 -4
  304. package/tsconfig.json +4 -3
@@ -1,34 +1,8 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.EmberIeeeRawFrame = exports.EmberRawFrame = exports.EmberRoutingTable = exports.EmberRoutingTableEntry = exports.EmberNeighbors = exports.EmberNeighbor = exports.EmberMultiAddress = exports.EmberSimpleDescriptor = exports.EmberNodeDescriptor = exports.EmberGpSinkListEntry = exports.EmberGpAddress = exports.EmberRf4cePairingTableEntry = exports.EmberRf4ceApplicationInfo = exports.EmberRf4ceVendorInfo = exports.EmberTokTypeStackZllSecurity = exports.EmberTokTypeStackZllData = exports.EmberZllAddressAssignment = exports.EmberZllDeviceInfoRecord = exports.EmberZllInitialSecurityState = exports.EmberZllNetwork = exports.EmberZllSecurityAlgorithmData = exports.EmberNetworkInitStruct = exports.EmberKeyStruct = exports.EmberCurrentSecurityState = exports.EmberInitialSecurityState = exports.EmberRouteTableEntry = exports.EmberNeighborTableEntry = exports.EmberAesMmoHashContext = exports.EmberMessageDigest = exports.EmberSignature283k1Data = exports.EmberPrivateKey283k1Data = exports.EmberPublicKey283k1Data = exports.EmberCertificate283k1Data = exports.EmberSignatureData = exports.EmberSmacData = exports.EmberPrivateKeyData = exports.EmberPublicKeyData = exports.EmberCertificateData = exports.EmberKeyData = exports.EmberMulticastTableEntry = exports.EmberBindingTableEntry = exports.EmberApsFrame = exports.EmberZigbeeNetwork = exports.EmberNetworkParameters = exports.EzspStruct = void 0;
27
1
  /* istanbul ignore file */
28
2
  /* eslint-disable @typescript-eslint/explicit-module-boundary-types */
29
- const basic = __importStar(require("./basic"));
30
- const named = __importStar(require("./named"));
31
- class EzspStruct {
3
+ import * as basic from './basic';
4
+ import * as named from './named';
5
+ export class EzspStruct {
32
6
  /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
33
7
  static serialize(cls, obj) {
34
8
  /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
@@ -52,571 +26,574 @@ class EzspStruct {
52
26
  return `${this.constructor.name}: ${JSON.stringify(this)}`;
53
27
  }
54
28
  }
55
- exports.EzspStruct = EzspStruct;
56
- class EmberNetworkParameters extends EzspStruct {
57
- }
58
- exports.EmberNetworkParameters = EmberNetworkParameters;
59
- EmberNetworkParameters._fields = [
60
- // The network's extended PAN identifier.
61
- ['extendedPanId', basic.fixed_list(8, basic.uint8_t)],
62
- // The network's PAN identifier.
63
- ['panId', basic.uint16_t],
64
- // A power setting, in dBm.
65
- ['radioTxPower', basic.uint8_t],
66
- // A radio channel.
67
- ['radioChannel', basic.uint8_t],
68
- // The method used to initially join the network.
69
- ['joinMethod', named.EmberJoinMethod],
70
- // NWK Manager ID. The ID of the network manager in the current network.
71
- // This may only be set at joining when using USE_NWK_COMMISSIONING as
72
- // the join method.
73
- ['nwkManagerId', named.EmberNodeId],
74
- // NWK Update ID. The value of the ZigBee nwkUpdateId known by the
75
- // stack. This is used to determine the newest instance of the network
76
- // after a PAN ID or channel change. This may only be set at joining
77
- // when using USE_NWK_COMMISSIONING as the join method.
78
- ['nwkUpdateId', basic.uint8_t],
79
- // NWK channel mask. The list of preferred channels that the NWK manager
80
- // has told this device to use when searching for the network. This may
81
- // only be set at joining when using USE_NWK_COMMISSIONING as the join
82
- // method.
83
- ['channels', basic.uint32_t],
84
- ];
85
- class EmberZigbeeNetwork extends EzspStruct {
86
- }
87
- exports.EmberZigbeeNetwork = EmberZigbeeNetwork;
88
- // The parameters of a ZigBee network.
89
- EmberZigbeeNetwork._fields = [
90
- // The 802.15.4 channel associated with the network.
91
- ['channel', basic.uint8_t],
92
- // The network's PAN identifier.
93
- ['panId', basic.uint16_t],
94
- // The network's extended PAN identifier.
95
- ['extendedPanId', basic.fixed_list(8, basic.uint8_t)],
96
- // Whether the network is allowing MAC associations.
97
- ['allowingJoin', named.Bool],
98
- // The Stack Profile associated with the network.
99
- ['stackProfile', basic.uint8_t],
100
- // The instance of the Network.
101
- ['nwkUpdateId', basic.uint8_t],
102
- ];
103
- class EmberApsFrame extends EzspStruct {
104
- }
105
- exports.EmberApsFrame = EmberApsFrame;
106
- // ZigBee APS frame parameters.
107
- EmberApsFrame._fields = [
108
- // The application profile ID that describes the format of the message.
109
- ['profileId', basic.uint16_t],
110
- // The cluster ID for this message.
111
- ['clusterId', basic.uint16_t],
112
- // The source endpoint.
113
- ['sourceEndpoint', basic.uint8_t],
114
- // The destination endpoint.
115
- ['destinationEndpoint', basic.uint8_t],
116
- // A bitmask of options.
117
- ['options', named.EmberApsOption],
118
- // The group ID for this message, if it is multicast mode.
119
- ['groupId', basic.uint16_t],
120
- // The sequence number.
121
- ['sequence', basic.uint8_t],
122
- ];
123
- class EmberBindingTableEntry extends EzspStruct {
124
- }
125
- exports.EmberBindingTableEntry = EmberBindingTableEntry;
126
- // An entry in the binding table.
127
- EmberBindingTableEntry._fields = [
128
- // The type of binding.
129
- ['type', named.EmberBindingType],
130
- // The endpoint on the local node.
131
- ['local', basic.uint8_t],
132
- // A cluster ID that matches one from the local endpoint's simple
133
- // descriptor.This cluster ID is set by the provisioning application to
134
- // indicate which part an endpoint's functionality is bound to this
135
- // particular remote node and is used to distinguish between unicast and
136
- // multicast bindings.Note that a binding can be used to send messages
137
- // with any cluster ID, not just that listed in the binding.
138
- ['clusterId', basic.uint16_t],
139
- // The endpoint on the remote node [specified by identifier].
140
- ['remote', basic.uint8_t],
141
- // A 64- bit identifier.This is either the destination EUI64 [for
142
- // unicasts] or the 64- bit group address [for multicasts].
143
- ['identifier', named.EmberEUI64],
144
- // The index of the network the binding belongs to.
145
- ['networkIndex', basic.uint8_t],
146
- ];
147
- class EmberMulticastTableEntry extends EzspStruct {
148
- }
149
- exports.EmberMulticastTableEntry = EmberMulticastTableEntry;
150
- // A multicast table entry indicates that a particular endpoint is a member
151
- // of a particular multicast group.Only devices with an endpoint in a
152
- // multicast group will receive messages sent to that multicast group.
153
- EmberMulticastTableEntry._fields = [
154
- // The multicast group ID.
155
- ['multicastId', named.EmberMulticastId],
156
- // The endpoint that is a member, or 0 if this entry is not in use[the
157
- // ZDO is not a member of any multicast groups.]
158
- ['endpoint', basic.uint8_t],
159
- // The network index of the network the entry is related to.
160
- ['networkIndex', basic.uint8_t],
161
- ];
162
- class EmberKeyData extends EzspStruct {
163
- }
164
- exports.EmberKeyData = EmberKeyData;
165
- // A 128- bit key.
166
- EmberKeyData._fields = [
167
- // The key data.
168
- ['contents', basic.fixed_list(16, basic.uint8_t)],
169
- ];
170
- class EmberCertificateData extends EzspStruct {
171
- }
172
- exports.EmberCertificateData = EmberCertificateData;
173
- // The implicit certificate used in CBKE.
174
- EmberCertificateData._fields = [
175
- // The certificate data.
176
- ['contents', basic.fixed_list(48, basic.uint8_t)],
177
- ];
178
- class EmberPublicKeyData extends EzspStruct {
179
- }
180
- exports.EmberPublicKeyData = EmberPublicKeyData;
181
- // The public key data used in CBKE.
182
- EmberPublicKeyData._fields = [
183
- // The public key data.
184
- ['contents', basic.fixed_list(22, basic.uint8_t)],
185
- ];
186
- class EmberPrivateKeyData extends EzspStruct {
187
- }
188
- exports.EmberPrivateKeyData = EmberPrivateKeyData;
189
- // The private key data used in CBKE.
190
- EmberPrivateKeyData._fields = [
191
- // The private key data.
192
- ['contents', basic.fixed_list(21, basic.uint8_t)],
193
- ];
194
- class EmberSmacData extends EzspStruct {
195
- }
196
- exports.EmberSmacData = EmberSmacData;
197
- // The Shared Message Authentication Code data used in CBKE.
198
- EmberSmacData._fields = [
199
- // The Shared Message Authentication Code data.
200
- ['contents', basic.fixed_list(16, basic.uint8_t)],
201
- ];
202
- class EmberSignatureData extends EzspStruct {
203
- }
204
- exports.EmberSignatureData = EmberSignatureData;
205
- // An ECDSA signature
206
- EmberSignatureData._fields = [
207
- // The signature data.
208
- ['contents', basic.fixed_list(42, basic.uint8_t)],
209
- ];
210
- class EmberCertificate283k1Data extends EzspStruct {
211
- }
212
- exports.EmberCertificate283k1Data = EmberCertificate283k1Data;
213
- // The implicit certificate used in CBKE.
214
- EmberCertificate283k1Data._fields = [
215
- // The 283k1 certificate data.
216
- ['contents', basic.fixed_list(74, basic.uint8_t)],
217
- ];
218
- class EmberPublicKey283k1Data extends EzspStruct {
219
- }
220
- exports.EmberPublicKey283k1Data = EmberPublicKey283k1Data;
221
- // The public key data used in CBKE.
222
- EmberPublicKey283k1Data._fields = [
223
- // The 283k1 public key data.
224
- ['contents', basic.fixed_list(37, basic.uint8_t)],
225
- ];
226
- class EmberPrivateKey283k1Data extends EzspStruct {
227
- }
228
- exports.EmberPrivateKey283k1Data = EmberPrivateKey283k1Data;
229
- // The private key data used in CBKE.
230
- EmberPrivateKey283k1Data._fields = [
231
- // The 283k1 private key data.
232
- ['contents', basic.fixed_list(36, basic.uint8_t)],
233
- ];
234
- class EmberSignature283k1Data extends EzspStruct {
235
- }
236
- exports.EmberSignature283k1Data = EmberSignature283k1Data;
237
- // An ECDSA signature
238
- EmberSignature283k1Data._fields = [
239
- // The 283k1 signature data.
240
- ['contents', basic.fixed_list(72, basic.uint8_t)],
241
- ];
242
- class EmberMessageDigest extends EzspStruct {
243
- }
244
- exports.EmberMessageDigest = EmberMessageDigest;
245
- // The calculated digest of a message
246
- EmberMessageDigest._fields = [
247
- // The calculated digest of a message.
248
- ['contents', basic.fixed_list(16, basic.uint8_t)],
249
- ];
250
- class EmberAesMmoHashContext extends EzspStruct {
251
- }
252
- exports.EmberAesMmoHashContext = EmberAesMmoHashContext;
253
- // The hash context for an ongoing hash operation.
254
- EmberAesMmoHashContext._fields = [
255
- // The result of ongoing the hash operation.
256
- ['result', basic.fixed_list(16, basic.uint8_t)],
257
- // The total length of the data that has been hashed so far.
258
- ['length', basic.uint32_t],
259
- ];
260
- class EmberNeighborTableEntry extends EzspStruct {
261
- }
262
- exports.EmberNeighborTableEntry = EmberNeighborTableEntry;
263
- // A neighbor table entry stores information about the reliability of RF
264
- // links to and from neighboring nodes.
265
- EmberNeighborTableEntry._fields = [
266
- // The neighbor's two byte network id
267
- ['shortId', basic.uint16_t],
268
- // An exponentially weighted moving average of the link quality values
269
- // of incoming packets from this neighbor as reported by the PHY.
270
- ['averageLqi', basic.uint8_t],
271
- // The incoming cost for this neighbor, computed from the average LQI.
272
- // Values range from 1 for a good link to 7 for a bad link.
273
- ['inCost', basic.uint8_t],
274
- // The outgoing cost for this neighbor, obtained from the most recently
275
- // received neighbor exchange message from the neighbor. A value of zero
276
- // means that a neighbor exchange message from the neighbor has not been
277
- // received recently enough, or that our id was not present in the most
278
- // recently received one.
279
- ['outCost', basic.uint8_t],
280
- // The number of aging periods elapsed since a link status message was
281
- // last received from this neighbor. The aging period is 16 seconds.
282
- ['age', basic.uint8_t],
283
- // The 8 byte EUI64 of the neighbor.
284
- ['longId', named.EmberEUI64],
285
- ];
286
- class EmberRouteTableEntry extends EzspStruct {
287
- }
288
- exports.EmberRouteTableEntry = EmberRouteTableEntry;
289
- // A route table entry stores information about the next hop along the route
290
- // to the destination.
291
- EmberRouteTableEntry._fields = [
292
- // The short id of the destination. A value of 0xFFFF indicates the
293
- // entry is unused.
294
- ['destination', basic.uint16_t],
295
- // The short id of the next hop to this destination.
296
- ['nextHop', basic.uint16_t],
297
- // Indicates whether this entry is active [0], being discovered [1]],
298
- // unused [3], or validating [4].
299
- ['status', basic.uint8_t],
300
- // The number of seconds since this route entry was last used to send a
301
- // packet.
302
- ['age', basic.uint8_t],
303
- // Indicates whether this destination is a High RAM Concentrator [2], a
304
- // Low RAM Concentrator [1], or not a concentrator [0].
305
- ['concentratorType', basic.uint8_t],
306
- // For a High RAM Concentrator, indicates whether a route record is
307
- // needed [2], has been sent [1], or is no long needed [0] because a
308
- // source routed message from the concentrator has been received.
309
- ['routeRecordState', basic.uint8_t],
310
- ];
311
- class EmberInitialSecurityState extends EzspStruct {
312
- }
313
- exports.EmberInitialSecurityState = EmberInitialSecurityState;
314
- // The security data used to set the configuration for the stack, or the
315
- // retrieved configuration currently in use.
316
- EmberInitialSecurityState._fields = [
317
- // A bitmask indicating the security state used to indicate what the
318
- // security configuration will be when the device forms or joins the
319
- // network.
320
- ['bitmask', named.EmberInitialSecurityBitmask],
321
- // The pre-configured Key data that should be used when forming or
322
- // joining the network. The security bitmask must be set with the
323
- // HAVE_PRECONFIGURED_KEY bit to indicate that the key contains valid
324
- // data.
325
- ['preconfiguredKey', EmberKeyData],
326
- // The Network Key that should be used by the Trust Center when it forms
327
- // the network, or the Network Key currently in use by a joined device.
328
- // The security bitmask must be set with HAVE_NETWORK_KEY to indicate
329
- // that the key contains valid data.
330
- ['networkKey', EmberKeyData],
331
- // The sequence number associated with the network key. This is only
332
- // valid if the HAVE_NETWORK_KEY has been set in the security bitmask.
333
- ['networkKeySequenceNumber', basic.uint8_t],
334
- // This is the long address of the trust center on the network that will
335
- // be joined. It is usually NOT set prior to joining the network and
336
- // instead it is learned during the joining message exchange. This field
337
- // is only examined if HAVE_TRUST_CENTER_EUI64 is set in the
338
- // EmberInitialSecurityState::bitmask. Most devices should clear that
339
- // bit and leave this field alone. This field must be set when using
340
- // commissioning mode.
341
- ['preconfiguredTrustCenterEui64', named.EmberEUI64],
342
- ];
343
- class EmberCurrentSecurityState extends EzspStruct {
344
- }
345
- exports.EmberCurrentSecurityState = EmberCurrentSecurityState;
346
- // The security options and information currently used by the stack.
347
- EmberCurrentSecurityState._fields = [
348
- // A bitmask indicating the security options currently in use by a
349
- // device joined in the network.
350
- ['bitmask', named.EmberCurrentSecurityBitmask],
351
- // The IEEE Address of the Trust Center device.
352
- ['trustCenterLongAddress', named.EmberEUI64],
353
- ];
354
- class EmberKeyStruct extends EzspStruct {
355
- }
356
- exports.EmberKeyStruct = EmberKeyStruct;
357
- // A structure containing a key and its associated data.
358
- EmberKeyStruct._fields = [
359
- // A bitmask indicating the presence of data within the various fields
360
- // in the structure.
361
- ['bitmask', named.EmberKeyStructBitmask],
362
- // The type of the key.
363
- ['type', named.EmberKeyType],
364
- // The actual key data.
365
- ['key', EmberKeyData],
366
- // The outgoing frame counter associated with the key.
367
- ['outgoingFrameCounter', basic.uint32_t],
368
- // The frame counter of the partner device associated with the key.
369
- ['incomingFrameCounter', basic.uint32_t],
370
- // The sequence number associated with the key.
371
- ['sequenceNumber', basic.uint8_t],
372
- // The IEEE address of the partner device also in possession of the key.
373
- ['partnerEUI64', named.EmberEUI64],
374
- ];
375
- class EmberNetworkInitStruct extends EzspStruct {
376
- }
377
- exports.EmberNetworkInitStruct = EmberNetworkInitStruct;
378
- // Network Initialization parameters.
379
- EmberNetworkInitStruct._fields = [
380
- // Configuration options for network init.
381
- ['bitmask', named.EmberNetworkInitBitmask],
382
- ];
383
- class EmberZllSecurityAlgorithmData extends EzspStruct {
384
- }
385
- exports.EmberZllSecurityAlgorithmData = EmberZllSecurityAlgorithmData;
386
- // Data associated with the ZLL security algorithm.
387
- EmberZllSecurityAlgorithmData._fields = [
388
- // Transaction identifier.
389
- ['transactionId', basic.uint32_t],
390
- // Response identifier.
391
- ['responseId', basic.uint32_t],
392
- // Bitmask.
393
- ['bitmask', basic.uint16_t],
394
- ];
395
- class EmberZllNetwork extends EzspStruct {
396
- }
397
- exports.EmberZllNetwork = EmberZllNetwork;
398
- // The parameters of a ZLL network.
399
- EmberZllNetwork._fields = [
29
+ export class EmberNetworkParameters extends EzspStruct {
30
+ extendedPanId;
31
+ panId;
32
+ radioTxPower;
33
+ radioChannel;
34
+ joinMethod;
35
+ nwkManagerId;
36
+ nwkUpdateId;
37
+ channels;
38
+ static _fields = [
39
+ // The network's extended PAN identifier.
40
+ ['extendedPanId', basic.fixed_list(8, basic.uint8_t)],
41
+ // The network's PAN identifier.
42
+ ['panId', basic.uint16_t],
43
+ // A power setting, in dBm.
44
+ ['radioTxPower', basic.uint8_t],
45
+ // A radio channel.
46
+ ['radioChannel', basic.uint8_t],
47
+ // The method used to initially join the network.
48
+ ['joinMethod', named.EmberJoinMethod],
49
+ // NWK Manager ID. The ID of the network manager in the current network.
50
+ // This may only be set at joining when using USE_NWK_COMMISSIONING as
51
+ // the join method.
52
+ ['nwkManagerId', named.EmberNodeId],
53
+ // NWK Update ID. The value of the ZigBee nwkUpdateId known by the
54
+ // stack. This is used to determine the newest instance of the network
55
+ // after a PAN ID or channel change. This may only be set at joining
56
+ // when using USE_NWK_COMMISSIONING as the join method.
57
+ ['nwkUpdateId', basic.uint8_t],
58
+ // NWK channel mask. The list of preferred channels that the NWK manager
59
+ // has told this device to use when searching for the network. This may
60
+ // only be set at joining when using USE_NWK_COMMISSIONING as the join
61
+ // method.
62
+ ['channels', basic.uint32_t],
63
+ ];
64
+ }
65
+ export class EmberZigbeeNetwork extends EzspStruct {
400
66
  // The parameters of a ZigBee network.
401
- ['zigbeeNetwork', EmberZigbeeNetwork],
67
+ static _fields = [
68
+ // The 802.15.4 channel associated with the network.
69
+ ['channel', basic.uint8_t],
70
+ // The network's PAN identifier.
71
+ ['panId', basic.uint16_t],
72
+ // The network's extended PAN identifier.
73
+ ['extendedPanId', basic.fixed_list(8, basic.uint8_t)],
74
+ // Whether the network is allowing MAC associations.
75
+ ['allowingJoin', named.Bool],
76
+ // The Stack Profile associated with the network.
77
+ ['stackProfile', basic.uint8_t],
78
+ // The instance of the Network.
79
+ ['nwkUpdateId', basic.uint8_t],
80
+ ];
81
+ }
82
+ export class EmberApsFrame extends EzspStruct {
83
+ profileId;
84
+ sequence;
85
+ clusterId;
86
+ sourceEndpoint;
87
+ destinationEndpoint;
88
+ groupId;
89
+ options;
90
+ // ZigBee APS frame parameters.
91
+ static _fields = [
92
+ // The application profile ID that describes the format of the message.
93
+ ['profileId', basic.uint16_t],
94
+ // The cluster ID for this message.
95
+ ['clusterId', basic.uint16_t],
96
+ // The source endpoint.
97
+ ['sourceEndpoint', basic.uint8_t],
98
+ // The destination endpoint.
99
+ ['destinationEndpoint', basic.uint8_t],
100
+ // A bitmask of options.
101
+ ['options', named.EmberApsOption],
102
+ // The group ID for this message, if it is multicast mode.
103
+ ['groupId', basic.uint16_t],
104
+ // The sequence number.
105
+ ['sequence', basic.uint8_t],
106
+ ];
107
+ }
108
+ export class EmberBindingTableEntry extends EzspStruct {
109
+ // An entry in the binding table.
110
+ static _fields = [
111
+ // The type of binding.
112
+ ['type', named.EmberBindingType],
113
+ // The endpoint on the local node.
114
+ ['local', basic.uint8_t],
115
+ // A cluster ID that matches one from the local endpoint's simple
116
+ // descriptor.This cluster ID is set by the provisioning application to
117
+ // indicate which part an endpoint's functionality is bound to this
118
+ // particular remote node and is used to distinguish between unicast and
119
+ // multicast bindings.Note that a binding can be used to send messages
120
+ // with any cluster ID, not just that listed in the binding.
121
+ ['clusterId', basic.uint16_t],
122
+ // The endpoint on the remote node [specified by identifier].
123
+ ['remote', basic.uint8_t],
124
+ // A 64- bit identifier.This is either the destination EUI64 [for
125
+ // unicasts] or the 64- bit group address [for multicasts].
126
+ ['identifier', named.EmberEUI64],
127
+ // The index of the network the binding belongs to.
128
+ ['networkIndex', basic.uint8_t],
129
+ ];
130
+ }
131
+ export class EmberMulticastTableEntry extends EzspStruct {
132
+ multicastId;
133
+ endpoint;
134
+ networkIndex;
135
+ // A multicast table entry indicates that a particular endpoint is a member
136
+ // of a particular multicast group.Only devices with an endpoint in a
137
+ // multicast group will receive messages sent to that multicast group.
138
+ static _fields = [
139
+ // The multicast group ID.
140
+ ['multicastId', named.EmberMulticastId],
141
+ // The endpoint that is a member, or 0 if this entry is not in use[the
142
+ // ZDO is not a member of any multicast groups.]
143
+ ['endpoint', basic.uint8_t],
144
+ // The network index of the network the entry is related to.
145
+ ['networkIndex', basic.uint8_t],
146
+ ];
147
+ }
148
+ export class EmberKeyData extends EzspStruct {
149
+ contents;
150
+ // A 128- bit key.
151
+ static _fields = [
152
+ // The key data.
153
+ ['contents', basic.fixed_list(16, basic.uint8_t)],
154
+ ];
155
+ }
156
+ export class EmberCertificateData extends EzspStruct {
157
+ contents;
158
+ // The implicit certificate used in CBKE.
159
+ static _fields = [
160
+ // The certificate data.
161
+ ['contents', basic.fixed_list(48, basic.uint8_t)],
162
+ ];
163
+ }
164
+ export class EmberPublicKeyData extends EzspStruct {
165
+ contents;
166
+ // The public key data used in CBKE.
167
+ static _fields = [
168
+ // The public key data.
169
+ ['contents', basic.fixed_list(22, basic.uint8_t)],
170
+ ];
171
+ }
172
+ export class EmberPrivateKeyData extends EzspStruct {
173
+ contents;
174
+ // The private key data used in CBKE.
175
+ static _fields = [
176
+ // The private key data.
177
+ ['contents', basic.fixed_list(21, basic.uint8_t)],
178
+ ];
179
+ }
180
+ export class EmberSmacData extends EzspStruct {
181
+ // The Shared Message Authentication Code data used in CBKE.
182
+ static _fields = [
183
+ // The Shared Message Authentication Code data.
184
+ ['contents', basic.fixed_list(16, basic.uint8_t)],
185
+ ];
186
+ }
187
+ export class EmberSignatureData extends EzspStruct {
188
+ // An ECDSA signature
189
+ static _fields = [
190
+ // The signature data.
191
+ ['contents', basic.fixed_list(42, basic.uint8_t)],
192
+ ];
193
+ }
194
+ export class EmberCertificate283k1Data extends EzspStruct {
195
+ // The implicit certificate used in CBKE.
196
+ static _fields = [
197
+ // The 283k1 certificate data.
198
+ ['contents', basic.fixed_list(74, basic.uint8_t)],
199
+ ];
200
+ }
201
+ export class EmberPublicKey283k1Data extends EzspStruct {
202
+ // The public key data used in CBKE.
203
+ static _fields = [
204
+ // The 283k1 public key data.
205
+ ['contents', basic.fixed_list(37, basic.uint8_t)],
206
+ ];
207
+ }
208
+ export class EmberPrivateKey283k1Data extends EzspStruct {
209
+ // The private key data used in CBKE.
210
+ static _fields = [
211
+ // The 283k1 private key data.
212
+ ['contents', basic.fixed_list(36, basic.uint8_t)],
213
+ ];
214
+ }
215
+ export class EmberSignature283k1Data extends EzspStruct {
216
+ // An ECDSA signature
217
+ static _fields = [
218
+ // The 283k1 signature data.
219
+ ['contents', basic.fixed_list(72, basic.uint8_t)],
220
+ ];
221
+ }
222
+ export class EmberMessageDigest extends EzspStruct {
223
+ // The calculated digest of a message
224
+ static _fields = [
225
+ // The calculated digest of a message.
226
+ ['contents', basic.fixed_list(16, basic.uint8_t)],
227
+ ];
228
+ }
229
+ export class EmberAesMmoHashContext extends EzspStruct {
230
+ result;
231
+ length;
232
+ // The hash context for an ongoing hash operation.
233
+ static _fields = [
234
+ // The result of ongoing the hash operation.
235
+ ['result', basic.fixed_list(16, basic.uint8_t)],
236
+ // The total length of the data that has been hashed so far.
237
+ ['length', basic.uint32_t],
238
+ ];
239
+ }
240
+ export class EmberNeighborTableEntry extends EzspStruct {
241
+ // A neighbor table entry stores information about the reliability of RF
242
+ // links to and from neighboring nodes.
243
+ static _fields = [
244
+ // The neighbor's two byte network id
245
+ ['shortId', basic.uint16_t],
246
+ // An exponentially weighted moving average of the link quality values
247
+ // of incoming packets from this neighbor as reported by the PHY.
248
+ ['averageLqi', basic.uint8_t],
249
+ // The incoming cost for this neighbor, computed from the average LQI.
250
+ // Values range from 1 for a good link to 7 for a bad link.
251
+ ['inCost', basic.uint8_t],
252
+ // The outgoing cost for this neighbor, obtained from the most recently
253
+ // received neighbor exchange message from the neighbor. A value of zero
254
+ // means that a neighbor exchange message from the neighbor has not been
255
+ // received recently enough, or that our id was not present in the most
256
+ // recently received one.
257
+ ['outCost', basic.uint8_t],
258
+ // The number of aging periods elapsed since a link status message was
259
+ // last received from this neighbor. The aging period is 16 seconds.
260
+ ['age', basic.uint8_t],
261
+ // The 8 byte EUI64 of the neighbor.
262
+ ['longId', named.EmberEUI64],
263
+ ];
264
+ }
265
+ export class EmberRouteTableEntry extends EzspStruct {
266
+ // A route table entry stores information about the next hop along the route
267
+ // to the destination.
268
+ static _fields = [
269
+ // The short id of the destination. A value of 0xFFFF indicates the
270
+ // entry is unused.
271
+ ['destination', basic.uint16_t],
272
+ // The short id of the next hop to this destination.
273
+ ['nextHop', basic.uint16_t],
274
+ // Indicates whether this entry is active [0], being discovered [1]],
275
+ // unused [3], or validating [4].
276
+ ['status', basic.uint8_t],
277
+ // The number of seconds since this route entry was last used to send a
278
+ // packet.
279
+ ['age', basic.uint8_t],
280
+ // Indicates whether this destination is a High RAM Concentrator [2], a
281
+ // Low RAM Concentrator [1], or not a concentrator [0].
282
+ ['concentratorType', basic.uint8_t],
283
+ // For a High RAM Concentrator, indicates whether a route record is
284
+ // needed [2], has been sent [1], or is no long needed [0] because a
285
+ // source routed message from the concentrator has been received.
286
+ ['routeRecordState', basic.uint8_t],
287
+ ];
288
+ }
289
+ export class EmberInitialSecurityState extends EzspStruct {
290
+ bitmask;
291
+ preconfiguredKey;
292
+ networkKey;
293
+ networkKeySequenceNumber;
294
+ preconfiguredTrustCenterEui64;
295
+ // The security data used to set the configuration for the stack, or the
296
+ // retrieved configuration currently in use.
297
+ static _fields = [
298
+ // A bitmask indicating the security state used to indicate what the
299
+ // security configuration will be when the device forms or joins the
300
+ // network.
301
+ ['bitmask', named.EmberInitialSecurityBitmask],
302
+ // The pre-configured Key data that should be used when forming or
303
+ // joining the network. The security bitmask must be set with the
304
+ // HAVE_PRECONFIGURED_KEY bit to indicate that the key contains valid
305
+ // data.
306
+ ['preconfiguredKey', EmberKeyData],
307
+ // The Network Key that should be used by the Trust Center when it forms
308
+ // the network, or the Network Key currently in use by a joined device.
309
+ // The security bitmask must be set with HAVE_NETWORK_KEY to indicate
310
+ // that the key contains valid data.
311
+ ['networkKey', EmberKeyData],
312
+ // The sequence number associated with the network key. This is only
313
+ // valid if the HAVE_NETWORK_KEY has been set in the security bitmask.
314
+ ['networkKeySequenceNumber', basic.uint8_t],
315
+ // This is the long address of the trust center on the network that will
316
+ // be joined. It is usually NOT set prior to joining the network and
317
+ // instead it is learned during the joining message exchange. This field
318
+ // is only examined if HAVE_TRUST_CENTER_EUI64 is set in the
319
+ // EmberInitialSecurityState::bitmask. Most devices should clear that
320
+ // bit and leave this field alone. This field must be set when using
321
+ // commissioning mode.
322
+ ['preconfiguredTrustCenterEui64', named.EmberEUI64],
323
+ ];
324
+ }
325
+ export class EmberCurrentSecurityState extends EzspStruct {
326
+ // The security options and information currently used by the stack.
327
+ static _fields = [
328
+ // A bitmask indicating the security options currently in use by a
329
+ // device joined in the network.
330
+ ['bitmask', named.EmberCurrentSecurityBitmask],
331
+ // The IEEE Address of the Trust Center device.
332
+ ['trustCenterLongAddress', named.EmberEUI64],
333
+ ];
334
+ }
335
+ export class EmberKeyStruct extends EzspStruct {
336
+ key;
337
+ outgoingFrameCounter;
338
+ sequenceNumber;
339
+ // A structure containing a key and its associated data.
340
+ static _fields = [
341
+ // A bitmask indicating the presence of data within the various fields
342
+ // in the structure.
343
+ ['bitmask', named.EmberKeyStructBitmask],
344
+ // The type of the key.
345
+ ['type', named.EmberKeyType],
346
+ // The actual key data.
347
+ ['key', EmberKeyData],
348
+ // The outgoing frame counter associated with the key.
349
+ ['outgoingFrameCounter', basic.uint32_t],
350
+ // The frame counter of the partner device associated with the key.
351
+ ['incomingFrameCounter', basic.uint32_t],
352
+ // The sequence number associated with the key.
353
+ ['sequenceNumber', basic.uint8_t],
354
+ // The IEEE address of the partner device also in possession of the key.
355
+ ['partnerEUI64', named.EmberEUI64],
356
+ ];
357
+ }
358
+ export class EmberNetworkInitStruct extends EzspStruct {
359
+ // Network Initialization parameters.
360
+ static _fields = [
361
+ // Configuration options for network init.
362
+ ['bitmask', named.EmberNetworkInitBitmask],
363
+ ];
364
+ }
365
+ export class EmberZllSecurityAlgorithmData extends EzspStruct {
402
366
  // Data associated with the ZLL security algorithm.
403
- ['securityAlgorithm', EmberZllSecurityAlgorithmData],
404
- // Associated EUI64.
405
- ['eui64', named.EmberEUI64],
406
- // The node id.
407
- ['nodeId', named.EmberNodeId],
408
- // The ZLL state.
409
- ['state', named.EmberZllState],
410
- // The node type.
411
- ['nodeType', named.EmberNodeType],
412
- // The number of sub devices.
413
- ['numberSubDevices', basic.uint8_t],
414
- // The total number of group identifiers.
415
- ['totalGroupIdentifiers', basic.uint8_t],
416
- // RSSI correction value.
417
- ['rssiCorrection', basic.uint8_t],
418
- ];
419
- class EmberZllInitialSecurityState extends EzspStruct {
420
- }
421
- exports.EmberZllInitialSecurityState = EmberZllInitialSecurityState;
422
- // Describes the initial security features and requirements that will be
423
- // used when forming or joining ZLL networks.
424
- EmberZllInitialSecurityState._fields = [
425
- // Unused bitmask; reserved for future use.
426
- ['bitmask', basic.uint32_t],
427
- // The key encryption algorithm advertised by the application.
428
- ['keyIndex', named.EmberZllKeyIndex],
429
- // The encryption key for use by algorithms that require it.
430
- ['encryptionKey', EmberKeyData],
431
- // The pre-configured link key used during classical ZigBee
432
- // commissioning.
433
- ['preconfiguredKey', EmberKeyData],
434
- ];
435
- class EmberZllDeviceInfoRecord extends EzspStruct {
436
- }
437
- exports.EmberZllDeviceInfoRecord = EmberZllDeviceInfoRecord;
438
- // Information about a specific ZLL Device.
439
- EmberZllDeviceInfoRecord._fields = [
440
- // EUI64 associated with the device.
441
- ['ieeeAddress', named.EmberEUI64],
442
- // Endpoint id.
443
- ['endpointId', basic.uint8_t],
444
- // Profile id.
445
- ['profileId', basic.uint16_t],
446
- // Device id.
447
- ['deviceId', basic.uint16_t],
448
- // Associated version.
449
- ['version', basic.uint8_t],
450
- // Number of relevant group ids.
451
- ['groupIdCount', basic.uint8_t],
452
- ];
453
- class EmberZllAddressAssignment extends EzspStruct {
454
- }
455
- exports.EmberZllAddressAssignment = EmberZllAddressAssignment;
456
- // ZLL address assignment data.
457
- EmberZllAddressAssignment._fields = [
458
- // Relevant node id.
459
- ['nodeId', named.EmberNodeId],
460
- // Minimum free node id.
461
- ['freeNodeIdMin', named.EmberNodeId],
462
- // Maximum free node id.
463
- ['freeNodeIdMax', named.EmberNodeId],
464
- // Minimum group id.
465
- ['groupIdMin', named.EmberMulticastId],
466
- // Maximum group id.
467
- ['groupIdMax', named.EmberMulticastId],
468
- // Minimum free group id.
469
- ['freeGroupIdMin', named.EmberMulticastId],
470
- // Maximum free group id.
471
- ['freeGroupIdMax', named.EmberMulticastId],
472
- ];
473
- class EmberTokTypeStackZllData extends EzspStruct {
474
- }
475
- exports.EmberTokTypeStackZllData = EmberTokTypeStackZllData;
476
- // Public API for ZLL stack data token.
477
- EmberTokTypeStackZllData._fields = [
478
- // Token bitmask.
479
- ['bitmask', basic.uint32_t],
480
- // Minimum free node id.
481
- ['freeNodeIdMin', basic.uint16_t],
482
- // Maximum free node id.
483
- ['freeNodeIdMax', basic.uint16_t],
484
- // Local minimum group id.
485
- ['myGroupIdMin', basic.uint16_t],
486
- // Minimum free group id.
487
- ['freeGroupIdMin', basic.uint16_t],
488
- // Maximum free group id.
489
- ['freeGroupIdMax', basic.uint16_t],
490
- // RSSI correction value.
491
- ['rssiCorrection', basic.uint8_t],
492
- ];
493
- class EmberTokTypeStackZllSecurity extends EzspStruct {
494
- }
495
- exports.EmberTokTypeStackZllSecurity = EmberTokTypeStackZllSecurity;
496
- // Public API for ZLL stack security token.
497
- EmberTokTypeStackZllSecurity._fields = [
498
- // Token bitmask.
499
- ['bitmask', basic.uint32_t],
500
- // Key index.
501
- ['keyIndex', basic.uint8_t],
502
- // Encryption key.
503
- ['encryptionKey', basic.fixed_list(16, basic.uint8_t)],
504
- // Preconfigured key.
505
- ['preconfiguredKey', basic.fixed_list(16, basic.uint8_t)],
506
- ];
507
- class EmberRf4ceVendorInfo extends EzspStruct {
508
- }
509
- exports.EmberRf4ceVendorInfo = EmberRf4ceVendorInfo;
510
- // The RF4CE vendor information block.
511
- EmberRf4ceVendorInfo._fields = [
512
- // The vendor identifier field shall contain the vendor identifier of
513
- // the node.
514
- ['vendorId', basic.uint16_t],
515
- // The vendor string field shall contain the vendor string of the node.
516
- ['vendorString', basic.fixed_list(7, basic.uint8_t)],
517
- ];
518
- class EmberRf4ceApplicationInfo extends EzspStruct {
519
- }
520
- exports.EmberRf4ceApplicationInfo = EmberRf4ceApplicationInfo;
521
- // The RF4CE application information block.
522
- EmberRf4ceApplicationInfo._fields = [
523
- // The application capabilities field shall contain information relating
524
- // to the capabilities of the application of the node.
525
- ['capabilities', named.EmberRf4ceApplicationCapabilities],
526
- // The user string field shall contain the user specified identification
527
- // string.
528
- ['userString', basic.fixed_list(15, basic.uint8_t)],
529
- // The device type list field shall contain the list of device types
530
- // supported by the node.
531
- ['deviceTypeList', basic.fixed_list(3, basic.uint8_t)],
532
- // The profile ID list field shall contain the list of profile
533
- // identifiers disclosed as supported by the node.
534
- ['profileIdList', basic.fixed_list(7, basic.uint8_t)],
535
- ];
536
- class EmberRf4cePairingTableEntry extends EzspStruct {
537
- }
538
- exports.EmberRf4cePairingTableEntry = EmberRf4cePairingTableEntry;
539
- // The internal representation of an RF4CE pairing table entry.
540
- EmberRf4cePairingTableEntry._fields = [
541
- // The link key to be used to secure this pairing link.
542
- ['securityLinkKey', EmberKeyData],
543
- // The IEEE address of the destination device.
544
- ['destLongId', named.EmberEUI64],
545
- // The frame counter last received from the recipient node.
546
- ['frameCounter', basic.uint32_t],
547
- // The network address to be assumed by the source device.
548
- ['sourceNodeId', named.EmberNodeId],
549
- // The PAN identifier of the destination device.
550
- ['destPanId', named.EmberPanId],
551
- // The network address of the destination device.
552
- ['destNodeId', named.EmberNodeId],
553
- // The vendor ID of the destination device.
554
- ['destVendorId', basic.uint16_t],
555
- // The list of profiles supported by the destination device.
556
- ['destProfileIdList', basic.fixed_list(7, basic.uint8_t)],
557
- // The length of the list of supported profiles.
558
- ['destProfileIdListLength', basic.uint8_t],
559
- // Info byte.
560
- ['info', basic.uint8_t],
561
- // The expected channel of the destination device.
562
- ['channel', basic.uint8_t],
563
- // The node capabilities of the recipient node.
564
- ['capabilities', basic.uint8_t],
565
- // Last MAC sequence number seen on this pairing link.
566
- ['lastSeqn', basic.uint8_t],
567
- ];
568
- class EmberGpAddress extends EzspStruct {
569
- }
570
- exports.EmberGpAddress = EmberGpAddress;
571
- // A GP address structure.
572
- EmberGpAddress._fields = [
573
- // The GPD's EUI64.
574
- ['gpdIeeeAddress', named.EmberEUI64],
575
- // The GPD's source ID.
576
- ['sourceId', basic.uint32_t],
577
- // The GPD Application ID.
578
- ['applicationId', basic.uint8_t],
579
- // The GPD endpoint.
580
- ['endpoint', basic.uint8_t],
581
- ];
582
- class EmberGpSinkListEntry extends EzspStruct {
583
- }
584
- exports.EmberGpSinkListEntry = EmberGpSinkListEntry;
585
- // A sink list entry
586
- EmberGpSinkListEntry._fields = [
587
- // The sink list type.
588
- ['type', basic.uint8_t],
589
- // The EUI64 of the target sink.
590
- ['sinkEUI', named.EmberEUI64],
591
- // The short address of the target sink.
592
- ['sinkNodeId', named.EmberNodeId],
593
- ];
594
- class EmberNodeDescriptor extends EzspStruct {
595
- }
596
- exports.EmberNodeDescriptor = EmberNodeDescriptor;
597
- EmberNodeDescriptor._fields = [
598
- ['byte1', basic.uint8_t],
599
- ['byte2', basic.uint8_t],
600
- ['mac_capability_flags', basic.uint8_t],
601
- ['manufacturer_code', basic.uint16_t],
602
- ['maximum_buffer_size', basic.uint8_t],
603
- ['maximum_incoming_transfer_size', basic.uint16_t],
604
- ['server_mask', basic.uint16_t],
605
- ['maximum_outgoing_transfer_size', basic.uint16_t],
606
- ['descriptor_capability_field', basic.uint8_t],
607
- ];
608
- class EmberSimpleDescriptor extends EzspStruct {
609
- }
610
- exports.EmberSimpleDescriptor = EmberSimpleDescriptor;
611
- EmberSimpleDescriptor._fields = [
612
- ['endpoint', basic.uint8_t],
613
- ['profileid', basic.uint16_t],
614
- ['deviceid', basic.uint16_t],
615
- ['deviceversion', basic.uint8_t],
616
- ['inclusterlist', basic.LVList(basic.uint16_t)],
617
- ['outclusterlist', basic.LVList(basic.uint16_t)],
618
- ];
619
- class EmberMultiAddress extends EzspStruct {
367
+ static _fields = [
368
+ // Transaction identifier.
369
+ ['transactionId', basic.uint32_t],
370
+ // Response identifier.
371
+ ['responseId', basic.uint32_t],
372
+ // Bitmask.
373
+ ['bitmask', basic.uint16_t],
374
+ ];
375
+ }
376
+ export class EmberZllNetwork extends EzspStruct {
377
+ // The parameters of a ZLL network.
378
+ static _fields = [
379
+ // The parameters of a ZigBee network.
380
+ ['zigbeeNetwork', EmberZigbeeNetwork],
381
+ // Data associated with the ZLL security algorithm.
382
+ ['securityAlgorithm', EmberZllSecurityAlgorithmData],
383
+ // Associated EUI64.
384
+ ['eui64', named.EmberEUI64],
385
+ // The node id.
386
+ ['nodeId', named.EmberNodeId],
387
+ // The ZLL state.
388
+ ['state', named.EmberZllState],
389
+ // The node type.
390
+ ['nodeType', named.EmberNodeType],
391
+ // The number of sub devices.
392
+ ['numberSubDevices', basic.uint8_t],
393
+ // The total number of group identifiers.
394
+ ['totalGroupIdentifiers', basic.uint8_t],
395
+ // RSSI correction value.
396
+ ['rssiCorrection', basic.uint8_t],
397
+ ];
398
+ }
399
+ export class EmberZllInitialSecurityState extends EzspStruct {
400
+ // Describes the initial security features and requirements that will be
401
+ // used when forming or joining ZLL networks.
402
+ static _fields = [
403
+ // Unused bitmask; reserved for future use.
404
+ ['bitmask', basic.uint32_t],
405
+ // The key encryption algorithm advertised by the application.
406
+ ['keyIndex', named.EmberZllKeyIndex],
407
+ // The encryption key for use by algorithms that require it.
408
+ ['encryptionKey', EmberKeyData],
409
+ // The pre-configured link key used during classical ZigBee
410
+ // commissioning.
411
+ ['preconfiguredKey', EmberKeyData],
412
+ ];
413
+ }
414
+ export class EmberZllDeviceInfoRecord extends EzspStruct {
415
+ // Information about a specific ZLL Device.
416
+ static _fields = [
417
+ // EUI64 associated with the device.
418
+ ['ieeeAddress', named.EmberEUI64],
419
+ // Endpoint id.
420
+ ['endpointId', basic.uint8_t],
421
+ // Profile id.
422
+ ['profileId', basic.uint16_t],
423
+ // Device id.
424
+ ['deviceId', basic.uint16_t],
425
+ // Associated version.
426
+ ['version', basic.uint8_t],
427
+ // Number of relevant group ids.
428
+ ['groupIdCount', basic.uint8_t],
429
+ ];
430
+ }
431
+ export class EmberZllAddressAssignment extends EzspStruct {
432
+ // ZLL address assignment data.
433
+ static _fields = [
434
+ // Relevant node id.
435
+ ['nodeId', named.EmberNodeId],
436
+ // Minimum free node id.
437
+ ['freeNodeIdMin', named.EmberNodeId],
438
+ // Maximum free node id.
439
+ ['freeNodeIdMax', named.EmberNodeId],
440
+ // Minimum group id.
441
+ ['groupIdMin', named.EmberMulticastId],
442
+ // Maximum group id.
443
+ ['groupIdMax', named.EmberMulticastId],
444
+ // Minimum free group id.
445
+ ['freeGroupIdMin', named.EmberMulticastId],
446
+ // Maximum free group id.
447
+ ['freeGroupIdMax', named.EmberMulticastId],
448
+ ];
449
+ }
450
+ export class EmberTokTypeStackZllData extends EzspStruct {
451
+ // Public API for ZLL stack data token.
452
+ static _fields = [
453
+ // Token bitmask.
454
+ ['bitmask', basic.uint32_t],
455
+ // Minimum free node id.
456
+ ['freeNodeIdMin', basic.uint16_t],
457
+ // Maximum free node id.
458
+ ['freeNodeIdMax', basic.uint16_t],
459
+ // Local minimum group id.
460
+ ['myGroupIdMin', basic.uint16_t],
461
+ // Minimum free group id.
462
+ ['freeGroupIdMin', basic.uint16_t],
463
+ // Maximum free group id.
464
+ ['freeGroupIdMax', basic.uint16_t],
465
+ // RSSI correction value.
466
+ ['rssiCorrection', basic.uint8_t],
467
+ ];
468
+ }
469
+ export class EmberTokTypeStackZllSecurity extends EzspStruct {
470
+ // Public API for ZLL stack security token.
471
+ static _fields = [
472
+ // Token bitmask.
473
+ ['bitmask', basic.uint32_t],
474
+ // Key index.
475
+ ['keyIndex', basic.uint8_t],
476
+ // Encryption key.
477
+ ['encryptionKey', basic.fixed_list(16, basic.uint8_t)],
478
+ // Preconfigured key.
479
+ ['preconfiguredKey', basic.fixed_list(16, basic.uint8_t)],
480
+ ];
481
+ }
482
+ export class EmberRf4ceVendorInfo extends EzspStruct {
483
+ // The RF4CE vendor information block.
484
+ static _fields = [
485
+ // The vendor identifier field shall contain the vendor identifier of
486
+ // the node.
487
+ ['vendorId', basic.uint16_t],
488
+ // The vendor string field shall contain the vendor string of the node.
489
+ ['vendorString', basic.fixed_list(7, basic.uint8_t)],
490
+ ];
491
+ }
492
+ export class EmberRf4ceApplicationInfo extends EzspStruct {
493
+ // The RF4CE application information block.
494
+ static _fields = [
495
+ // The application capabilities field shall contain information relating
496
+ // to the capabilities of the application of the node.
497
+ ['capabilities', named.EmberRf4ceApplicationCapabilities],
498
+ // The user string field shall contain the user specified identification
499
+ // string.
500
+ ['userString', basic.fixed_list(15, basic.uint8_t)],
501
+ // The device type list field shall contain the list of device types
502
+ // supported by the node.
503
+ ['deviceTypeList', basic.fixed_list(3, basic.uint8_t)],
504
+ // The profile ID list field shall contain the list of profile
505
+ // identifiers disclosed as supported by the node.
506
+ ['profileIdList', basic.fixed_list(7, basic.uint8_t)],
507
+ ];
508
+ }
509
+ export class EmberRf4cePairingTableEntry extends EzspStruct {
510
+ // The internal representation of an RF4CE pairing table entry.
511
+ static _fields = [
512
+ // The link key to be used to secure this pairing link.
513
+ ['securityLinkKey', EmberKeyData],
514
+ // The IEEE address of the destination device.
515
+ ['destLongId', named.EmberEUI64],
516
+ // The frame counter last received from the recipient node.
517
+ ['frameCounter', basic.uint32_t],
518
+ // The network address to be assumed by the source device.
519
+ ['sourceNodeId', named.EmberNodeId],
520
+ // The PAN identifier of the destination device.
521
+ ['destPanId', named.EmberPanId],
522
+ // The network address of the destination device.
523
+ ['destNodeId', named.EmberNodeId],
524
+ // The vendor ID of the destination device.
525
+ ['destVendorId', basic.uint16_t],
526
+ // The list of profiles supported by the destination device.
527
+ ['destProfileIdList', basic.fixed_list(7, basic.uint8_t)],
528
+ // The length of the list of supported profiles.
529
+ ['destProfileIdListLength', basic.uint8_t],
530
+ // Info byte.
531
+ ['info', basic.uint8_t],
532
+ // The expected channel of the destination device.
533
+ ['channel', basic.uint8_t],
534
+ // The node capabilities of the recipient node.
535
+ ['capabilities', basic.uint8_t],
536
+ // Last MAC sequence number seen on this pairing link.
537
+ ['lastSeqn', basic.uint8_t],
538
+ ];
539
+ }
540
+ export class EmberGpAddress extends EzspStruct {
541
+ // A GP address structure.
542
+ static _fields = [
543
+ // The GPD's EUI64.
544
+ ['gpdIeeeAddress', named.EmberEUI64],
545
+ // The GPD's source ID.
546
+ ['sourceId', basic.uint32_t],
547
+ // The GPD Application ID.
548
+ ['applicationId', basic.uint8_t],
549
+ // The GPD endpoint.
550
+ ['endpoint', basic.uint8_t],
551
+ ];
552
+ }
553
+ export class EmberGpSinkListEntry extends EzspStruct {
554
+ // A sink list entry
555
+ static _fields = [
556
+ // The sink list type.
557
+ ['type', basic.uint8_t],
558
+ // The EUI64 of the target sink.
559
+ ['sinkEUI', named.EmberEUI64],
560
+ // The short address of the target sink.
561
+ ['sinkNodeId', named.EmberNodeId],
562
+ ];
563
+ }
564
+ export class EmberNodeDescriptor extends EzspStruct {
565
+ static _fields = [
566
+ ['byte1', basic.uint8_t],
567
+ ['byte2', basic.uint8_t],
568
+ ['mac_capability_flags', basic.uint8_t],
569
+ ['manufacturer_code', basic.uint16_t],
570
+ ['maximum_buffer_size', basic.uint8_t],
571
+ ['maximum_incoming_transfer_size', basic.uint16_t],
572
+ ['server_mask', basic.uint16_t],
573
+ ['maximum_outgoing_transfer_size', basic.uint16_t],
574
+ ['descriptor_capability_field', basic.uint8_t],
575
+ ];
576
+ }
577
+ export class EmberSimpleDescriptor extends EzspStruct {
578
+ static _fields = [
579
+ ['endpoint', basic.uint8_t],
580
+ ['profileid', basic.uint16_t],
581
+ ['deviceid', basic.uint16_t],
582
+ ['deviceversion', basic.uint8_t],
583
+ ['inclusterlist', basic.LVList(basic.uint16_t)],
584
+ ['outclusterlist', basic.LVList(basic.uint16_t)],
585
+ ];
586
+ }
587
+ export class EmberMultiAddress extends EzspStruct {
588
+ static fields3 = [
589
+ ['addrmode', basic.uint8_t],
590
+ ['ieee', named.EmberEUI64],
591
+ ['endpoint', basic.uint8_t],
592
+ ];
593
+ static fields1 = [
594
+ ['addrmode', basic.uint8_t],
595
+ ['nwk', named.EmberNodeId],
596
+ ];
620
597
  /* eslint-disable-next-line @typescript-eslint/no-explicit-any*/
621
598
  static serialize(cls, obj) {
622
599
  const addrmode = obj['addrmode'];
@@ -630,80 +607,84 @@ class EmberMultiAddress extends EzspStruct {
630
607
  }));
631
608
  }
632
609
  }
633
- exports.EmberMultiAddress = EmberMultiAddress;
634
- EmberMultiAddress.fields3 = [
635
- ['addrmode', basic.uint8_t],
636
- ['ieee', named.EmberEUI64],
637
- ['endpoint', basic.uint8_t],
638
- ];
639
- EmberMultiAddress.fields1 = [
640
- ['addrmode', basic.uint8_t],
641
- ['nwk', named.EmberNodeId],
642
- ];
643
- class EmberNeighbor extends EzspStruct {
644
- }
645
- exports.EmberNeighbor = EmberNeighbor;
646
- EmberNeighbor._fields = [
647
- ['extendedpanid', basic.fixed_list(8, basic.uint8_t)],
648
- ['ieee', named.EmberEUI64],
649
- ['nodeid', named.EmberNodeId],
650
- ['packed', basic.uint8_t],
651
- ['permitjoining', basic.uint8_t],
652
- ['depth', basic.uint8_t],
653
- ['lqi', basic.uint8_t],
654
- ];
655
- class EmberNeighbors extends EzspStruct {
656
- }
657
- exports.EmberNeighbors = EmberNeighbors;
658
- EmberNeighbors._fields = [
659
- ['entries', basic.uint8_t],
660
- ['startindex', basic.uint8_t],
661
- ['neighbors', basic.LVList(EmberNeighbor)],
662
- ];
663
- class EmberRoutingTableEntry extends EzspStruct {
664
- }
665
- exports.EmberRoutingTableEntry = EmberRoutingTableEntry;
666
- EmberRoutingTableEntry._fields = [
667
- ['destination', basic.uint16_t],
668
- ['status', basic.uint8_t],
669
- ['nexthop', basic.uint16_t],
670
- ];
671
- class EmberRoutingTable extends EzspStruct {
672
- }
673
- exports.EmberRoutingTable = EmberRoutingTable;
674
- EmberRoutingTable._fields = [
675
- ['entries', basic.uint8_t],
676
- ['startindex', basic.uint8_t],
677
- ['table', basic.LVList(EmberRoutingTableEntry)],
678
- ];
679
- class EmberRawFrame extends EzspStruct {
680
- }
681
- exports.EmberRawFrame = EmberRawFrame;
682
- EmberRawFrame._fields = [
683
- ['ieeeFrameControl', basic.uint16_t],
684
- ['sequence', basic.uint8_t],
685
- ['destPanId', named.EmberPanId],
686
- ['destNodeId', named.EmberNodeId],
687
- ['sourcePanId', named.EmberPanId],
688
- ['ieeeAddress', named.EmberEUI64],
689
- ['nwkFrameControl', basic.uint16_t],
690
- ['appFrameControl', basic.uint8_t],
691
- ['clusterId', basic.uint16_t],
692
- ['profileId', basic.uint16_t],
693
- ];
694
- class EmberIeeeRawFrame extends EzspStruct {
695
- }
696
- exports.EmberIeeeRawFrame = EmberIeeeRawFrame;
697
- EmberIeeeRawFrame._fields = [
698
- ['ieeeFrameControl', basic.uint16_t],
699
- ['sequence', basic.uint8_t],
700
- ['destPanId', named.EmberPanId],
701
- ['destAddress', named.EmberEUI64],
702
- ['sourcePanId', named.EmberPanId],
703
- ['sourceAddress', named.EmberEUI64],
704
- ['nwkFrameControl', basic.uint16_t],
705
- ['appFrameControl', basic.uint8_t],
706
- ['clusterId', basic.uint16_t],
707
- ['profileId', basic.uint16_t],
708
- ];
610
+ export class EmberNeighbor extends EzspStruct {
611
+ static _fields = [
612
+ ['extendedpanid', basic.fixed_list(8, basic.uint8_t)],
613
+ ['ieee', named.EmberEUI64],
614
+ ['nodeid', named.EmberNodeId],
615
+ ['packed', basic.uint8_t],
616
+ ['permitjoining', basic.uint8_t],
617
+ ['depth', basic.uint8_t],
618
+ ['lqi', basic.uint8_t],
619
+ ];
620
+ }
621
+ export class EmberNeighbors extends EzspStruct {
622
+ static _fields = [
623
+ ['entries', basic.uint8_t],
624
+ ['startindex', basic.uint8_t],
625
+ ['neighbors', basic.LVList(EmberNeighbor)],
626
+ ];
627
+ }
628
+ export class EmberRoutingTableEntry extends EzspStruct {
629
+ static _fields = [
630
+ ['destination', basic.uint16_t],
631
+ ['status', basic.uint8_t],
632
+ ['nexthop', basic.uint16_t],
633
+ ];
634
+ }
635
+ export class EmberRoutingTable extends EzspStruct {
636
+ static _fields = [
637
+ ['entries', basic.uint8_t],
638
+ ['startindex', basic.uint8_t],
639
+ ['table', basic.LVList(EmberRoutingTableEntry)],
640
+ ];
641
+ }
642
+ export class EmberRawFrame extends EzspStruct {
643
+ ieeeFrameControl;
644
+ sequence;
645
+ destPanId;
646
+ destNodeId;
647
+ sourcePanId;
648
+ ieeeAddress;
649
+ nwkFrameControl;
650
+ appFrameControl;
651
+ clusterId;
652
+ profileId;
653
+ static _fields = [
654
+ ['ieeeFrameControl', basic.uint16_t],
655
+ ['sequence', basic.uint8_t],
656
+ ['destPanId', named.EmberPanId],
657
+ ['destNodeId', named.EmberNodeId],
658
+ ['sourcePanId', named.EmberPanId],
659
+ ['ieeeAddress', named.EmberEUI64],
660
+ ['nwkFrameControl', basic.uint16_t],
661
+ ['appFrameControl', basic.uint8_t],
662
+ ['clusterId', basic.uint16_t],
663
+ ['profileId', basic.uint16_t],
664
+ ];
665
+ }
666
+ export class EmberIeeeRawFrame extends EzspStruct {
667
+ ieeeFrameControl;
668
+ sequence;
669
+ destPanId;
670
+ destAddress;
671
+ sourcePanId;
672
+ sourceAddress;
673
+ nwkFrameControl;
674
+ appFrameControl;
675
+ clusterId;
676
+ profileId;
677
+ static _fields = [
678
+ ['ieeeFrameControl', basic.uint16_t],
679
+ ['sequence', basic.uint8_t],
680
+ ['destPanId', named.EmberPanId],
681
+ ['destAddress', named.EmberEUI64],
682
+ ['sourcePanId', named.EmberPanId],
683
+ ['sourceAddress', named.EmberEUI64],
684
+ ['nwkFrameControl', basic.uint16_t],
685
+ ['appFrameControl', basic.uint8_t],
686
+ ['clusterId', basic.uint16_t],
687
+ ['profileId', basic.uint16_t],
688
+ ];
689
+ }
709
690
  //# sourceMappingURL=struct.js.map