hap-nodejs 0.11.0-beta.9 → 0.11.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 (214) hide show
  1. package/README.md +1 -0
  2. package/dist/BridgedCore.js +4 -4
  3. package/dist/BridgedCore.js.map +1 -1
  4. package/dist/Core.js +2 -2
  5. package/dist/Core.js.map +1 -1
  6. package/dist/accessories/AirConditioner_accessory.js +18 -18
  7. package/dist/accessories/AirConditioner_accessory.js.map +1 -1
  8. package/dist/accessories/AppleTVRemote_accessory.js +6 -6
  9. package/dist/accessories/AppleTVRemote_accessory.js.map +1 -1
  10. package/dist/accessories/Camera_accessory.js +96 -87
  11. package/dist/accessories/Camera_accessory.js.map +1 -1
  12. package/dist/accessories/Fan_accessory.js +6 -6
  13. package/dist/accessories/Fan_accessory.js.map +1 -1
  14. package/dist/accessories/GarageDoorOpener_accessory.js +4 -4
  15. package/dist/accessories/GarageDoorOpener_accessory.js.map +1 -1
  16. package/dist/accessories/Light-AdaptiveLighting_accessory.js +2 -2
  17. package/dist/accessories/Light-AdaptiveLighting_accessory.js.map +1 -1
  18. package/dist/accessories/Light_accessory.js +11 -11
  19. package/dist/accessories/Light_accessory.js.map +1 -1
  20. package/dist/accessories/Lock_accessory.js +4 -4
  21. package/dist/accessories/Lock_accessory.js.map +1 -1
  22. package/dist/accessories/MotionSensor_accessory.js +3 -3
  23. package/dist/accessories/MotionSensor_accessory.js.map +1 -1
  24. package/dist/accessories/Outlet_accessory.js +4 -4
  25. package/dist/accessories/Outlet_accessory.js.map +1 -1
  26. package/dist/accessories/SmartSpeaker_accessory.js +5 -5
  27. package/dist/accessories/SmartSpeaker_accessory.js.map +1 -1
  28. package/dist/accessories/Sprinkler_accessory.js +7 -7
  29. package/dist/accessories/Sprinkler_accessory.js.map +1 -1
  30. package/dist/accessories/TV_accessory.js +9 -9
  31. package/dist/accessories/TV_accessory.js.map +1 -1
  32. package/dist/accessories/TemperatureSensor_accessory.js +2 -2
  33. package/dist/accessories/TemperatureSensor_accessory.js.map +1 -1
  34. package/dist/accessories/Wi-FiRouter_accessory.js +2 -2
  35. package/dist/accessories/Wi-FiRouter_accessory.js.map +1 -1
  36. package/dist/accessories/Wi-FiSatellite_accessory.js +2 -2
  37. package/dist/accessories/Wi-FiSatellite_accessory.js.map +1 -1
  38. package/dist/accessories/gstreamer-audioProducer.d.ts +2 -2
  39. package/dist/accessories/gstreamer-audioProducer.d.ts.map +1 -1
  40. package/dist/accessories/gstreamer-audioProducer.js +20 -20
  41. package/dist/accessories/gstreamer-audioProducer.js.map +1 -1
  42. package/dist/index.d.ts +30 -6
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +39 -25
  45. package/dist/index.js.map +1 -1
  46. package/dist/internal-types.d.ts +65 -126
  47. package/dist/internal-types.d.ts.map +1 -1
  48. package/dist/internal-types.js +66 -5
  49. package/dist/internal-types.js.map +1 -1
  50. package/dist/lib/Accessory.d.ts +97 -21
  51. package/dist/lib/Accessory.d.ts.map +1 -1
  52. package/dist/lib/Accessory.js +315 -327
  53. package/dist/lib/Accessory.js.map +1 -1
  54. package/dist/lib/AccessoryLoader.d.ts +12 -0
  55. package/dist/lib/AccessoryLoader.d.ts.map +1 -1
  56. package/dist/lib/AccessoryLoader.js +18 -6
  57. package/dist/lib/AccessoryLoader.js.map +1 -1
  58. package/dist/lib/Advertiser.d.ts +32 -0
  59. package/dist/lib/Advertiser.d.ts.map +1 -1
  60. package/dist/lib/Advertiser.js +136 -58
  61. package/dist/lib/Advertiser.js.map +1 -1
  62. package/dist/lib/Bridge.d.ts +2 -0
  63. package/dist/lib/Bridge.d.ts.map +1 -1
  64. package/dist/lib/Bridge.js +3 -1
  65. package/dist/lib/Bridge.js.map +1 -1
  66. package/dist/lib/Characteristic.d.ts +872 -40
  67. package/dist/lib/Characteristic.d.ts.map +1 -1
  68. package/dist/lib/Characteristic.js +172 -141
  69. package/dist/lib/Characteristic.js.map +1 -1
  70. package/dist/lib/HAPServer.d.ts +113 -20
  71. package/dist/lib/HAPServer.d.ts.map +1 -1
  72. package/dist/lib/HAPServer.js +226 -231
  73. package/dist/lib/HAPServer.js.map +1 -1
  74. package/dist/lib/Service.d.ts +329 -13
  75. package/dist/lib/Service.d.ts.map +1 -1
  76. package/dist/lib/Service.js +45 -40
  77. package/dist/lib/Service.js.map +1 -1
  78. package/dist/lib/camera/Camera.d.ts +13 -4
  79. package/dist/lib/camera/Camera.d.ts.map +1 -1
  80. package/dist/lib/camera/Camera.js +3 -0
  81. package/dist/lib/camera/Camera.js.map +1 -1
  82. package/dist/lib/camera/RTPProxy.d.ts +5 -0
  83. package/dist/lib/camera/RTPProxy.d.ts.map +1 -1
  84. package/dist/lib/camera/RTPProxy.js +2 -1
  85. package/dist/lib/camera/RTPProxy.js.map +1 -1
  86. package/dist/lib/camera/RTPStreamManagement.d.ts +156 -33
  87. package/dist/lib/camera/RTPStreamManagement.d.ts.map +1 -1
  88. package/dist/lib/camera/RTPStreamManagement.js +204 -164
  89. package/dist/lib/camera/RTPStreamManagement.js.map +1 -1
  90. package/dist/lib/camera/RecordingManagement.d.ts +61 -11
  91. package/dist/lib/camera/RecordingManagement.d.ts.map +1 -1
  92. package/dist/lib/camera/RecordingManagement.js +171 -138
  93. package/dist/lib/camera/RecordingManagement.js.map +1 -1
  94. package/dist/lib/camera/index.js +4 -4
  95. package/dist/lib/camera/index.js.map +1 -1
  96. package/dist/lib/controller/AdaptiveLightingController.d.ts +28 -2
  97. package/dist/lib/controller/AdaptiveLightingController.d.ts.map +1 -1
  98. package/dist/lib/controller/AdaptiveLightingController.js +77 -68
  99. package/dist/lib/controller/AdaptiveLightingController.js.map +1 -1
  100. package/dist/lib/controller/CameraController.d.ts +44 -13
  101. package/dist/lib/controller/CameraController.d.ts.map +1 -1
  102. package/dist/lib/controller/CameraController.js +43 -34
  103. package/dist/lib/controller/CameraController.js.map +1 -1
  104. package/dist/lib/controller/Controller.d.ts +28 -7
  105. package/dist/lib/controller/Controller.d.ts.map +1 -1
  106. package/dist/lib/controller/Controller.js +7 -0
  107. package/dist/lib/controller/Controller.js.map +1 -1
  108. package/dist/lib/controller/DoorbellController.d.ts +5 -1
  109. package/dist/lib/controller/DoorbellController.d.ts.map +1 -1
  110. package/dist/lib/controller/DoorbellController.js +5 -3
  111. package/dist/lib/controller/DoorbellController.js.map +1 -1
  112. package/dist/lib/controller/RemoteController.d.ts +108 -39
  113. package/dist/lib/controller/RemoteController.d.ts.map +1 -1
  114. package/dist/lib/controller/RemoteController.js +190 -175
  115. package/dist/lib/controller/RemoteController.js.map +1 -1
  116. package/dist/lib/controller/index.js +5 -5
  117. package/dist/lib/controller/index.js.map +1 -1
  118. package/dist/lib/datastream/DataStreamManagement.d.ts +25 -19
  119. package/dist/lib/datastream/DataStreamManagement.d.ts.map +1 -1
  120. package/dist/lib/datastream/DataStreamManagement.js +36 -30
  121. package/dist/lib/datastream/DataStreamManagement.js.map +1 -1
  122. package/dist/lib/datastream/DataStreamParser.d.ts +39 -0
  123. package/dist/lib/datastream/DataStreamParser.d.ts.map +1 -1
  124. package/dist/lib/datastream/DataStreamParser.js +125 -88
  125. package/dist/lib/datastream/DataStreamParser.js.map +1 -1
  126. package/dist/lib/datastream/DataStreamServer.d.ts +121 -46
  127. package/dist/lib/datastream/DataStreamServer.d.ts.map +1 -1
  128. package/dist/lib/datastream/DataStreamServer.js +134 -100
  129. package/dist/lib/datastream/DataStreamServer.js.map +1 -1
  130. package/dist/lib/datastream/index.js +3 -3
  131. package/dist/lib/datastream/index.js.map +1 -1
  132. package/dist/lib/definitions/CharacteristicDefinitions.js +799 -799
  133. package/dist/lib/definitions/CharacteristicDefinitions.js.map +1 -1
  134. package/dist/lib/definitions/ServiceDefinitions.js +77 -77
  135. package/dist/lib/definitions/ServiceDefinitions.js.map +1 -1
  136. package/dist/lib/definitions/generate-definitions.js +60 -59
  137. package/dist/lib/definitions/generate-definitions.js.map +1 -1
  138. package/dist/lib/definitions/generator-configuration.js +15 -15
  139. package/dist/lib/definitions/generator-configuration.js.map +1 -1
  140. package/dist/lib/definitions/index.js +2 -2
  141. package/dist/lib/definitions/index.js.map +1 -1
  142. package/dist/lib/model/AccessoryInfo.d.ts +10 -4
  143. package/dist/lib/model/AccessoryInfo.d.ts.map +1 -1
  144. package/dist/lib/model/AccessoryInfo.js +21 -17
  145. package/dist/lib/model/AccessoryInfo.js.map +1 -1
  146. package/dist/lib/model/ControllerStorage.d.ts +3 -0
  147. package/dist/lib/model/ControllerStorage.d.ts.map +1 -1
  148. package/dist/lib/model/ControllerStorage.js +8 -5
  149. package/dist/lib/model/ControllerStorage.js.map +1 -1
  150. package/dist/lib/model/HAPStorage.d.ts +3 -0
  151. package/dist/lib/model/HAPStorage.d.ts.map +1 -1
  152. package/dist/lib/model/HAPStorage.js +4 -1
  153. package/dist/lib/model/HAPStorage.js.map +1 -1
  154. package/dist/lib/model/IdentifierCache.d.ts +1 -0
  155. package/dist/lib/model/IdentifierCache.d.ts.map +1 -1
  156. package/dist/lib/model/IdentifierCache.js +3 -2
  157. package/dist/lib/model/IdentifierCache.js.map +1 -1
  158. package/dist/lib/tv/AccessControlManagement.d.ts +11 -0
  159. package/dist/lib/tv/AccessControlManagement.d.ts.map +1 -1
  160. package/dist/lib/tv/AccessControlManagement.js +15 -7
  161. package/dist/lib/tv/AccessControlManagement.js.map +1 -1
  162. package/dist/lib/util/clone.d.ts +2 -1
  163. package/dist/lib/util/clone.d.ts.map +1 -1
  164. package/dist/lib/util/clone.js +5 -4
  165. package/dist/lib/util/clone.js.map +1 -1
  166. package/dist/lib/util/color-utils.d.ts +4 -1
  167. package/dist/lib/util/color-utils.d.ts.map +1 -1
  168. package/dist/lib/util/color-utils.js +5 -2
  169. package/dist/lib/util/color-utils.js.map +1 -1
  170. package/dist/lib/util/eventedhttp.d.ts +52 -9
  171. package/dist/lib/util/eventedhttp.d.ts.map +1 -1
  172. package/dist/lib/util/eventedhttp.js +141 -135
  173. package/dist/lib/util/eventedhttp.js.map +1 -1
  174. package/dist/lib/util/hapCrypto.d.ts +30 -2
  175. package/dist/lib/util/hapCrypto.d.ts.map +1 -1
  176. package/dist/lib/util/hapCrypto.js +28 -4
  177. package/dist/lib/util/hapCrypto.js.map +1 -1
  178. package/dist/lib/util/hapStatusError.d.ts +2 -0
  179. package/dist/lib/util/hapStatusError.d.ts.map +1 -1
  180. package/dist/lib/util/hapStatusError.js +4 -2
  181. package/dist/lib/util/hapStatusError.js.map +1 -1
  182. package/dist/lib/util/net-utils.d.ts +7 -0
  183. package/dist/lib/util/net-utils.d.ts.map +1 -1
  184. package/dist/lib/util/net-utils.js +11 -4
  185. package/dist/lib/util/net-utils.js.map +1 -1
  186. package/dist/lib/util/once.d.ts +5 -0
  187. package/dist/lib/util/once.d.ts.map +1 -1
  188. package/dist/lib/util/once.js +6 -1
  189. package/dist/lib/util/once.js.map +1 -1
  190. package/dist/lib/util/promise-utils.d.ts +13 -0
  191. package/dist/lib/util/promise-utils.d.ts.map +1 -1
  192. package/dist/lib/util/promise-utils.js +27 -1
  193. package/dist/lib/util/promise-utils.js.map +1 -1
  194. package/dist/lib/util/request-util.d.ts +16 -0
  195. package/dist/lib/util/request-util.d.ts.map +1 -1
  196. package/dist/lib/util/request-util.js +42 -27
  197. package/dist/lib/util/request-util.js.map +1 -1
  198. package/dist/lib/util/time.d.ts +6 -0
  199. package/dist/lib/util/time.d.ts.map +1 -1
  200. package/dist/lib/util/time.js +8 -2
  201. package/dist/lib/util/time.js.map +1 -1
  202. package/dist/lib/util/tlv.d.ts +95 -5
  203. package/dist/lib/util/tlv.d.ts.map +1 -1
  204. package/dist/lib/util/tlv.js +90 -21
  205. package/dist/lib/util/tlv.js.map +1 -1
  206. package/dist/lib/util/uuid.d.ts +2 -3
  207. package/dist/lib/util/uuid.d.ts.map +1 -1
  208. package/dist/lib/util/uuid.js +1 -1
  209. package/dist/lib/util/uuid.js.map +1 -1
  210. package/dist/types.d.ts +267 -19
  211. package/dist/types.d.ts.map +1 -1
  212. package/dist/types.js +8 -0
  213. package/dist/types.js.map +1 -1
  214. package/package.json +10 -7
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DataStreamWriter = exports.DataStreamReader = exports.DataStreamParser = exports.DataFormatTags = exports.UUID = exports.SecondsSince2001 = exports.Float64 = exports.Float32 = exports.Int64 = exports.Int32 = exports.Int16 = exports.Int8 = exports.ValueWrapper = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var uuid = (0, tslib_1.__importStar)(require("../util/uuid"));
6
- var hapCrypto = (0, tslib_1.__importStar)(require("../util/hapCrypto"));
7
- var assert_1 = (0, tslib_1.__importDefault)(require("assert"));
8
- var debug_1 = (0, tslib_1.__importDefault)(require("debug"));
5
+ var uuid = tslib_1.__importStar(require("../util/uuid"));
6
+ var hapCrypto = tslib_1.__importStar(require("../util/hapCrypto"));
7
+ var assert_1 = tslib_1.__importDefault(require("assert"));
8
+ var debug_1 = tslib_1.__importDefault(require("debug"));
9
9
  // welcome to hell :)
10
10
  // in this file lies madness and frustration. and It's not only about HDS. Also, JavaScript is hell
11
11
  var debug = (0, debug_1.default)("HAP-NodeJS:DataStream:Parser");
@@ -15,6 +15,9 @@ var Magics = /** @class */ (function () {
15
15
  Magics.TERMINATOR = { type: "terminator" };
16
16
  return Magics;
17
17
  }());
18
+ /**
19
+ * @group HomeKit Data Streams (HDS)
20
+ */
18
21
  var ValueWrapper = /** @class */ (function () {
19
22
  function ValueWrapper(value) {
20
23
  this.value = value;
@@ -25,73 +28,98 @@ var ValueWrapper = /** @class */ (function () {
25
28
  return ValueWrapper;
26
29
  }());
27
30
  exports.ValueWrapper = ValueWrapper;
31
+ /**
32
+ * @group HomeKit Data Streams (HDS)
33
+ */
28
34
  var Int8 = /** @class */ (function (_super) {
29
- (0, tslib_1.__extends)(Int8, _super);
35
+ tslib_1.__extends(Int8, _super);
30
36
  function Int8() {
31
37
  return _super !== null && _super.apply(this, arguments) || this;
32
38
  }
33
39
  return Int8;
34
40
  }(ValueWrapper));
35
41
  exports.Int8 = Int8;
42
+ /**
43
+ * @group HomeKit Data Streams (HDS)
44
+ */
36
45
  var Int16 = /** @class */ (function (_super) {
37
- (0, tslib_1.__extends)(Int16, _super);
46
+ tslib_1.__extends(Int16, _super);
38
47
  function Int16() {
39
48
  return _super !== null && _super.apply(this, arguments) || this;
40
49
  }
41
50
  return Int16;
42
51
  }(ValueWrapper));
43
52
  exports.Int16 = Int16;
53
+ /**
54
+ * @group HomeKit Data Streams (HDS)
55
+ */
44
56
  var Int32 = /** @class */ (function (_super) {
45
- (0, tslib_1.__extends)(Int32, _super);
57
+ tslib_1.__extends(Int32, _super);
46
58
  function Int32() {
47
59
  return _super !== null && _super.apply(this, arguments) || this;
48
60
  }
49
61
  return Int32;
50
62
  }(ValueWrapper));
51
63
  exports.Int32 = Int32;
64
+ /**
65
+ * @group HomeKit Data Streams (HDS)
66
+ */
52
67
  var Int64 = /** @class */ (function (_super) {
53
- (0, tslib_1.__extends)(Int64, _super);
68
+ tslib_1.__extends(Int64, _super);
54
69
  function Int64() {
55
70
  return _super !== null && _super.apply(this, arguments) || this;
56
71
  }
57
72
  return Int64;
58
73
  }(ValueWrapper));
59
74
  exports.Int64 = Int64;
75
+ /**
76
+ * @group HomeKit Data Streams (HDS)
77
+ */
60
78
  var Float32 = /** @class */ (function (_super) {
61
- (0, tslib_1.__extends)(Float32, _super);
79
+ tslib_1.__extends(Float32, _super);
62
80
  function Float32() {
63
81
  return _super !== null && _super.apply(this, arguments) || this;
64
82
  }
65
83
  return Float32;
66
84
  }(ValueWrapper));
67
85
  exports.Float32 = Float32;
86
+ /**
87
+ * @group HomeKit Data Streams (HDS)
88
+ */
68
89
  var Float64 = /** @class */ (function (_super) {
69
- (0, tslib_1.__extends)(Float64, _super);
90
+ tslib_1.__extends(Float64, _super);
70
91
  function Float64() {
71
92
  return _super !== null && _super.apply(this, arguments) || this;
72
93
  }
73
94
  return Float64;
74
95
  }(ValueWrapper));
75
96
  exports.Float64 = Float64;
97
+ /**
98
+ * @group HomeKit Data Streams (HDS)
99
+ */
76
100
  var SecondsSince2001 = /** @class */ (function (_super) {
77
- (0, tslib_1.__extends)(SecondsSince2001, _super);
101
+ tslib_1.__extends(SecondsSince2001, _super);
78
102
  function SecondsSince2001() {
79
103
  return _super !== null && _super.apply(this, arguments) || this;
80
104
  }
81
105
  return SecondsSince2001;
82
106
  }(ValueWrapper));
83
107
  exports.SecondsSince2001 = SecondsSince2001;
108
+ /**
109
+ * @group HomeKit Data Streams (HDS)
110
+ */
84
111
  var UUID = /** @class */ (function (_super) {
85
- (0, tslib_1.__extends)(UUID, _super);
112
+ tslib_1.__extends(UUID, _super);
86
113
  function UUID(value) {
87
- var _this = this;
88
114
  (0, assert_1.default)(uuid.isValid(value), "invalid uuid format");
89
- _this = _super.call(this, value) || this;
90
- return _this;
115
+ return _super.call(this, value) || this;
91
116
  }
92
117
  return UUID;
93
118
  }(ValueWrapper));
94
119
  exports.UUID = UUID;
120
+ /**
121
+ * @group HomeKit Data Streams (HDS)
122
+ */
95
123
  var DataFormatTags;
96
124
  (function (DataFormatTags) {
97
125
  DataFormatTags[DataFormatTags["INVALID"] = 0] = "INVALID";
@@ -133,108 +161,111 @@ var DataFormatTags;
133
161
  DataFormatTags[DataFormatTags["DICTIONARY_LENGTH_STOP"] = 238] = "DICTIONARY_LENGTH_STOP";
134
162
  DataFormatTags[DataFormatTags["DICTIONARY_TERMINATED"] = 239] = "DICTIONARY_TERMINATED";
135
163
  })(DataFormatTags = exports.DataFormatTags || (exports.DataFormatTags = {}));
164
+ /**
165
+ * @group HomeKit Data Streams (HDS)
166
+ */
136
167
  var DataStreamParser = /** @class */ (function () {
137
168
  function DataStreamParser() {
138
169
  }
139
170
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
140
171
  DataStreamParser.decode = function (buffer) {
141
172
  var tag = buffer.readTag();
142
- if (tag === 0 /* INVALID */) {
173
+ if (tag === 0 /* DataFormatTags.INVALID */) {
143
174
  throw new Error("HDSDecoder: zero tag detected on index " + buffer.readerIndex);
144
175
  }
145
- else if (tag === 1 /* TRUE */) {
176
+ else if (tag === 1 /* DataFormatTags.TRUE */) {
146
177
  return buffer.readTrue();
147
178
  }
148
- else if (tag === 2 /* FALSE */) {
179
+ else if (tag === 2 /* DataFormatTags.FALSE */) {
149
180
  return buffer.readFalse();
150
181
  }
151
- else if (tag === 3 /* TERMINATOR */) {
182
+ else if (tag === 3 /* DataFormatTags.TERMINATOR */) {
152
183
  return Magics.TERMINATOR;
153
184
  }
154
- else if (tag === 4 /* NULL */) {
185
+ else if (tag === 4 /* DataFormatTags.NULL */) {
155
186
  return null;
156
187
  }
157
- else if (tag === 5 /* UUID */) {
188
+ else if (tag === 5 /* DataFormatTags.UUID */) {
158
189
  return buffer.readUUID();
159
190
  }
160
- else if (tag === 6 /* DATE */) {
191
+ else if (tag === 6 /* DataFormatTags.DATE */) {
161
192
  return buffer.readSecondsSince2001_01_01();
162
193
  }
163
- else if (tag === 7 /* INTEGER_MINUS_ONE */) {
194
+ else if (tag === 7 /* DataFormatTags.INTEGER_MINUS_ONE */) {
164
195
  return buffer.readNegOne();
165
196
  }
166
- else if (tag >= 8 /* INTEGER_RANGE_START_0 */ && tag <= 46 /* INTEGER_RANGE_STOP_39 */) {
197
+ else if (tag >= 8 /* DataFormatTags.INTEGER_RANGE_START_0 */ && tag <= 46 /* DataFormatTags.INTEGER_RANGE_STOP_39 */) {
167
198
  return buffer.readIntRange(tag); // integer values from 0-39
168
199
  }
169
- else if (tag === 48 /* INT8 */) {
200
+ else if (tag === 48 /* DataFormatTags.INT8 */) {
170
201
  return buffer.readInt8();
171
202
  }
172
- else if (tag === 49 /* INT16LE */) {
203
+ else if (tag === 49 /* DataFormatTags.INT16LE */) {
173
204
  return buffer.readInt16LE();
174
205
  }
175
- else if (tag === 50 /* INT32LE */) {
206
+ else if (tag === 50 /* DataFormatTags.INT32LE */) {
176
207
  return buffer.readInt32LE();
177
208
  }
178
- else if (tag === 51 /* INT64LE */) {
209
+ else if (tag === 51 /* DataFormatTags.INT64LE */) {
179
210
  return buffer.readInt64LE();
180
211
  }
181
- else if (tag === 53 /* FLOAT32LE */) {
212
+ else if (tag === 53 /* DataFormatTags.FLOAT32LE */) {
182
213
  return buffer.readFloat32LE();
183
214
  }
184
- else if (tag === 54 /* FLOAT64LE */) {
215
+ else if (tag === 54 /* DataFormatTags.FLOAT64LE */) {
185
216
  return buffer.readFloat64LE();
186
217
  }
187
- else if (tag >= 64 /* UTF8_LENGTH_START */ && tag <= 96 /* UTF8_LENGTH_STOP */) {
188
- var length = tag - 64 /* UTF8_LENGTH_START */;
218
+ else if (tag >= 64 /* DataFormatTags.UTF8_LENGTH_START */ && tag <= 96 /* DataFormatTags.UTF8_LENGTH_STOP */) {
219
+ var length = tag - 64 /* DataFormatTags.UTF8_LENGTH_START */;
189
220
  return buffer.readUTF8(length);
190
221
  }
191
- else if (tag === 97 /* UTF8_LENGTH8 */) {
222
+ else if (tag === 97 /* DataFormatTags.UTF8_LENGTH8 */) {
192
223
  return buffer.readUTF8_Length8();
193
224
  }
194
- else if (tag === 98 /* UTF8_LENGTH16LE */) {
225
+ else if (tag === 98 /* DataFormatTags.UTF8_LENGTH16LE */) {
195
226
  return buffer.readUTF8_Length16LE();
196
227
  }
197
- else if (tag === 99 /* UTF8_LENGTH32LE */) {
228
+ else if (tag === 99 /* DataFormatTags.UTF8_LENGTH32LE */) {
198
229
  return buffer.readUTF8_Length32LE();
199
230
  }
200
- else if (tag === 100 /* UTF8_LENGTH64LE */) {
231
+ else if (tag === 100 /* DataFormatTags.UTF8_LENGTH64LE */) {
201
232
  return buffer.readUTF8_Length64LE();
202
233
  }
203
- else if (tag === 111 /* UTF8_NULL_TERMINATED */) {
234
+ else if (tag === 111 /* DataFormatTags.UTF8_NULL_TERMINATED */) {
204
235
  return buffer.readUTF8_NULL_terminated();
205
236
  }
206
- else if (tag >= 112 /* DATA_LENGTH_START */ && tag <= 144 /* DATA_LENGTH_STOP */) {
207
- var length = tag - 112 /* DATA_LENGTH_START */;
237
+ else if (tag >= 112 /* DataFormatTags.DATA_LENGTH_START */ && tag <= 144 /* DataFormatTags.DATA_LENGTH_STOP */) {
238
+ var length = tag - 112 /* DataFormatTags.DATA_LENGTH_START */;
208
239
  buffer.readData(length);
209
240
  }
210
- else if (tag === 145 /* DATA_LENGTH8 */) {
241
+ else if (tag === 145 /* DataFormatTags.DATA_LENGTH8 */) {
211
242
  return buffer.readData_Length8();
212
243
  }
213
- else if (tag === 146 /* DATA_LENGTH16LE */) {
244
+ else if (tag === 146 /* DataFormatTags.DATA_LENGTH16LE */) {
214
245
  return buffer.readData_Length16LE();
215
246
  }
216
- else if (tag === 147 /* DATA_LENGTH32LE */) {
247
+ else if (tag === 147 /* DataFormatTags.DATA_LENGTH32LE */) {
217
248
  return buffer.readData_Length32LE();
218
249
  }
219
- else if (tag === 148 /* DATA_LENGTH64LE */) {
250
+ else if (tag === 148 /* DataFormatTags.DATA_LENGTH64LE */) {
220
251
  return buffer.readData_Length64LE();
221
252
  }
222
- else if (tag === 159 /* DATA_TERMINATED */) {
253
+ else if (tag === 159 /* DataFormatTags.DATA_TERMINATED */) {
223
254
  return buffer.readData_terminated();
224
255
  }
225
- else if (tag >= 160 /* COMPRESSION_START */ && tag <= 207 /* COMPRESSION_STOP */) {
226
- var index = tag - 160 /* COMPRESSION_START */;
256
+ else if (tag >= 160 /* DataFormatTags.COMPRESSION_START */ && tag <= 207 /* DataFormatTags.COMPRESSION_STOP */) {
257
+ var index = tag - 160 /* DataFormatTags.COMPRESSION_START */;
227
258
  return buffer.decompressData(index);
228
259
  }
229
- else if (tag >= 208 /* ARRAY_LENGTH_START */ && tag <= 222 /* ARRAY_LENGTH_STOP */) {
230
- var length = tag - 208 /* ARRAY_LENGTH_START */;
260
+ else if (tag >= 208 /* DataFormatTags.ARRAY_LENGTH_START */ && tag <= 222 /* DataFormatTags.ARRAY_LENGTH_STOP */) {
261
+ var length = tag - 208 /* DataFormatTags.ARRAY_LENGTH_START */;
231
262
  var array = [];
232
263
  for (var i = 0; i < length; i++) {
233
264
  array.push(this.decode(buffer));
234
265
  }
235
266
  return array;
236
267
  }
237
- else if (tag === 223 /* ARRAY_TERMINATED */) {
268
+ else if (tag === 223 /* DataFormatTags.ARRAY_TERMINATED */) {
238
269
  var array = [];
239
270
  var element = void 0;
240
271
  while ((element = this.decode(buffer)) !== Magics.TERMINATOR) {
@@ -242,8 +273,8 @@ var DataStreamParser = /** @class */ (function () {
242
273
  }
243
274
  return array;
244
275
  }
245
- else if (tag >= 224 /* DICTIONARY_LENGTH_START */ && tag <= 238 /* DICTIONARY_LENGTH_STOP */) {
246
- var length = tag - 224 /* DICTIONARY_LENGTH_START */;
276
+ else if (tag >= 224 /* DataFormatTags.DICTIONARY_LENGTH_START */ && tag <= 238 /* DataFormatTags.DICTIONARY_LENGTH_STOP */) {
277
+ var length = tag - 224 /* DataFormatTags.DICTIONARY_LENGTH_START */;
247
278
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
248
279
  var dictionary = {};
249
280
  for (var i = 0; i < length; i++) {
@@ -252,7 +283,7 @@ var DataStreamParser = /** @class */ (function () {
252
283
  }
253
284
  return dictionary;
254
285
  }
255
- else if (tag === 239 /* DICTIONARY_TERMINATED */) {
286
+ else if (tag === 239 /* DataFormatTags.DICTIONARY_TERMINATED */) {
256
287
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
257
288
  var dictionary = {};
258
289
  var key = void 0;
@@ -272,7 +303,7 @@ var DataStreamParser = /** @class */ (function () {
272
303
  throw new Error("HDSEncoder: cannot encode undefined");
273
304
  }
274
305
  if (data === null) {
275
- buffer.writeTag(4 /* NULL */);
306
+ buffer.writeTag(4 /* DataFormatTags.NULL */);
276
307
  return;
277
308
  }
278
309
  switch (typeof data) {
@@ -299,16 +330,16 @@ var DataStreamParser = /** @class */ (function () {
299
330
  if (Array.isArray(data)) {
300
331
  var length = data.length;
301
332
  if (length <= 12) {
302
- buffer.writeTag(208 /* ARRAY_LENGTH_START */ + length);
333
+ buffer.writeTag(208 /* DataFormatTags.ARRAY_LENGTH_START */ + length);
303
334
  }
304
335
  else {
305
- buffer.writeTag(223 /* ARRAY_TERMINATED */);
336
+ buffer.writeTag(223 /* DataFormatTags.ARRAY_TERMINATED */);
306
337
  }
307
338
  data.forEach(function (element) {
308
339
  _this.encode(element, buffer);
309
340
  });
310
341
  if (length > 12) {
311
- buffer.writeTag(3 /* TERMINATOR */);
342
+ buffer.writeTag(3 /* DataFormatTags.TERMINATOR */);
312
343
  }
313
344
  }
314
345
  else if (data instanceof ValueWrapper) {
@@ -347,17 +378,17 @@ var DataStreamParser = /** @class */ (function () {
347
378
  var entries = Object.entries(data)
348
379
  .filter(function (entry) { return entry[1] !== undefined; }); // explicitly setting undefined will result in an entry here
349
380
  if (entries.length <= 14) {
350
- buffer.writeTag(224 /* DICTIONARY_LENGTH_START */ + entries.length);
381
+ buffer.writeTag(224 /* DataFormatTags.DICTIONARY_LENGTH_START */ + entries.length);
351
382
  }
352
383
  else {
353
- buffer.writeTag(239 /* DICTIONARY_TERMINATED */);
384
+ buffer.writeTag(239 /* DataFormatTags.DICTIONARY_TERMINATED */);
354
385
  }
355
386
  entries.forEach(function (entry) {
356
387
  _this.encode(entry[0], buffer); // encode key
357
388
  _this.encode(entry[1], buffer); // encode value
358
389
  });
359
390
  if (entries.length > 14) {
360
- buffer.writeTag(3 /* TERMINATOR */);
391
+ buffer.writeTag(3 /* DataFormatTags.TERMINATOR */);
361
392
  }
362
393
  }
363
394
  break;
@@ -368,6 +399,9 @@ var DataStreamParser = /** @class */ (function () {
368
399
  return DataStreamParser;
369
400
  }());
370
401
  exports.DataStreamParser = DataStreamParser;
402
+ /**
403
+ * @group HomeKit Data Streams (HDS)
404
+ */
371
405
  var DataStreamReader = /** @class */ (function () {
372
406
  function DataStreamReader(data) {
373
407
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
@@ -413,7 +447,7 @@ var DataStreamReader = /** @class */ (function () {
413
447
  return this.trackData(-1);
414
448
  };
415
449
  DataStreamReader.prototype.readIntRange = function (tag) {
416
- return this.trackData(tag - 8 /* INTEGER_RANGE_START_0 */); // integer values from 0-39
450
+ return this.trackData(tag - 8 /* DataFormatTags.INTEGER_RANGE_START_0 */); // integer values from 0-39
417
451
  };
418
452
  DataStreamReader.prototype.readInt8 = function () {
419
453
  this.ensureLength(1);
@@ -546,7 +580,7 @@ var DataStreamReader = /** @class */ (function () {
546
580
  if (nextByte === undefined) {
547
581
  throw new Error("HDSDecoder: Reached end of data stream while reading terminated data!");
548
582
  }
549
- else if (nextByte === 3 /* TERMINATOR */) {
583
+ else if (nextByte === 3 /* DataFormatTags.TERMINATOR */) {
550
584
  break;
551
585
  }
552
586
  else {
@@ -594,6 +628,9 @@ var WrittenDataList = /** @class */ (function () {
594
628
  };
595
629
  return WrittenDataList;
596
630
  }());
631
+ /**
632
+ * @group HomeKit Data Streams (HDS)
633
+ */
597
634
  var DataStreamWriter = /** @class */ (function () {
598
635
  function DataStreamWriter() {
599
636
  this.writtenData = new WrittenDataList();
@@ -622,9 +659,9 @@ var DataStreamWriter = /** @class */ (function () {
622
659
  this.writtenData.push(data);
623
660
  return false;
624
661
  }
625
- else if (index <= 207 /* COMPRESSION_STOP */ - 160 /* COMPRESSION_START */) {
662
+ else if (index <= 207 /* DataFormatTags.COMPRESSION_STOP */ - 160 /* DataFormatTags.COMPRESSION_START */) {
626
663
  // data was already written and the index is in the applicable range => shorten the payload
627
- this.writeTag(160 /* COMPRESSION_START */ + index);
664
+ this.writeTag(160 /* DataFormatTags.COMPRESSION_START */ + index);
628
665
  return true;
629
666
  }
630
667
  return false;
@@ -634,17 +671,17 @@ var DataStreamWriter = /** @class */ (function () {
634
671
  this.data.writeUInt8(tag, this.writerIndex++);
635
672
  };
636
673
  DataStreamWriter.prototype.writeTrue = function () {
637
- this.writeTag(1 /* TRUE */);
674
+ this.writeTag(1 /* DataFormatTags.TRUE */);
638
675
  };
639
676
  DataStreamWriter.prototype.writeFalse = function () {
640
- this.writeTag(2 /* FALSE */);
677
+ this.writeTag(2 /* DataFormatTags.FALSE */);
641
678
  };
642
679
  DataStreamWriter.prototype.writeNumber = function (number) {
643
680
  if (number === -1) {
644
- this.writeTag(7 /* INTEGER_MINUS_ONE */);
681
+ this.writeTag(7 /* DataFormatTags.INTEGER_MINUS_ONE */);
645
682
  }
646
683
  else if (number >= 0 && number <= 39) {
647
- this.writeTag(8 /* INTEGER_RANGE_START_0 */ + number);
684
+ this.writeTag(8 /* DataFormatTags.INTEGER_RANGE_START_0 */ + number);
648
685
  }
649
686
  else if (number >= -128 && number <= 127) {
650
687
  this.writeInt8(new Int8(number));
@@ -667,7 +704,7 @@ var DataStreamWriter = /** @class */ (function () {
667
704
  return;
668
705
  }
669
706
  this.ensureLength(2);
670
- this.writeTag(48 /* INT8 */);
707
+ this.writeTag(48 /* DataFormatTags.INT8 */);
671
708
  this.data.writeInt8(int8.value, this.writerIndex++);
672
709
  };
673
710
  DataStreamWriter.prototype.writeInt16LE = function (int16) {
@@ -675,7 +712,7 @@ var DataStreamWriter = /** @class */ (function () {
675
712
  return;
676
713
  }
677
714
  this.ensureLength(3);
678
- this.writeTag(49 /* INT16LE */);
715
+ this.writeTag(49 /* DataFormatTags.INT16LE */);
679
716
  this.data.writeInt16LE(int16.value, this.writerIndex);
680
717
  this.writerIndex += 2;
681
718
  };
@@ -684,7 +721,7 @@ var DataStreamWriter = /** @class */ (function () {
684
721
  return;
685
722
  }
686
723
  this.ensureLength(5);
687
- this.writeTag(50 /* INT32LE */);
724
+ this.writeTag(50 /* DataFormatTags.INT32LE */);
688
725
  this.data.writeInt32LE(int32.value, this.writerIndex);
689
726
  this.writerIndex += 4;
690
727
  };
@@ -693,7 +730,7 @@ var DataStreamWriter = /** @class */ (function () {
693
730
  return;
694
731
  }
695
732
  this.ensureLength(9);
696
- this.writeTag(51 /* INT64LE */);
733
+ this.writeTag(51 /* DataFormatTags.INT64LE */);
697
734
  this.data.writeUInt32LE(int64.value, this.writerIndex); // TODO correctly implement int64; currently it's basically an int32
698
735
  this.data.writeUInt32LE(0, this.writerIndex + 4);
699
736
  this.writerIndex += 8;
@@ -703,7 +740,7 @@ var DataStreamWriter = /** @class */ (function () {
703
740
  return;
704
741
  }
705
742
  this.ensureLength(5);
706
- this.writeTag(53 /* FLOAT32LE */);
743
+ this.writeTag(53 /* DataFormatTags.FLOAT32LE */);
707
744
  this.data.writeFloatLE(float32.value, this.writerIndex);
708
745
  this.writerIndex += 4;
709
746
  };
@@ -712,7 +749,7 @@ var DataStreamWriter = /** @class */ (function () {
712
749
  return;
713
750
  }
714
751
  this.ensureLength(9);
715
- this.writeTag(54 /* FLOAT64LE */);
752
+ this.writeTag(54 /* DataFormatTags.FLOAT64LE */);
716
753
  this.data.writeDoubleLE(float64.value, this.writerIndex);
717
754
  this.writerIndex += 8;
718
755
  };
@@ -742,7 +779,7 @@ var DataStreamWriter = /** @class */ (function () {
742
779
  var length = Buffer.byteLength(utf8);
743
780
  if (length <= 32) {
744
781
  this.ensureLength(1 + length);
745
- this.writeTag(64 /* UTF8_LENGTH_START */ + utf8.length);
782
+ this.writeTag(64 /* DataFormatTags.UTF8_LENGTH_START */ + utf8.length);
746
783
  this._writeUTF8(utf8);
747
784
  }
748
785
  else if (length <= 255) {
@@ -770,34 +807,34 @@ var DataStreamWriter = /** @class */ (function () {
770
807
  DataStreamWriter.prototype.writeUTF8_Length8 = function (utf8) {
771
808
  var length = Buffer.byteLength(utf8);
772
809
  this.ensureLength(2 + length);
773
- this.writeTag(97 /* UTF8_LENGTH8 */);
810
+ this.writeTag(97 /* DataFormatTags.UTF8_LENGTH8 */);
774
811
  this.writeLength8(length);
775
812
  this._writeUTF8(utf8);
776
813
  };
777
814
  DataStreamWriter.prototype.writeUTF8_Length16LE = function (utf8) {
778
815
  var length = Buffer.byteLength(utf8);
779
816
  this.ensureLength(3 + length);
780
- this.writeTag(98 /* UTF8_LENGTH16LE */);
817
+ this.writeTag(98 /* DataFormatTags.UTF8_LENGTH16LE */);
781
818
  this.writeLength16LE(length);
782
819
  this._writeUTF8(utf8);
783
820
  };
784
821
  DataStreamWriter.prototype.writeUTF8_Length32LE = function (utf8) {
785
822
  var length = Buffer.byteLength(utf8);
786
823
  this.ensureLength(5 + length);
787
- this.writeTag(99 /* UTF8_LENGTH32LE */);
824
+ this.writeTag(99 /* DataFormatTags.UTF8_LENGTH32LE */);
788
825
  this.writeLength32LE(length);
789
826
  this._writeUTF8(utf8);
790
827
  };
791
828
  DataStreamWriter.prototype.writeUTF8_Length64LE = function (utf8) {
792
829
  var length = Buffer.byteLength(utf8);
793
830
  this.ensureLength(9 + length);
794
- this.writeTag(100 /* UTF8_LENGTH64LE */);
831
+ this.writeTag(100 /* DataFormatTags.UTF8_LENGTH64LE */);
795
832
  this.writeLength64LE(length);
796
833
  this._writeUTF8(utf8);
797
834
  };
798
835
  DataStreamWriter.prototype.writeUTF8_NULL_terminated = function (utf8) {
799
836
  this.ensureLength(1 + Buffer.byteLength(utf8) + 1);
800
- this.writeTag(111 /* UTF8_NULL_TERMINATED */);
837
+ this.writeTag(111 /* DataFormatTags.UTF8_NULL_TERMINATED */);
801
838
  this._writeUTF8(utf8);
802
839
  this.data.writeUInt8(0, this.writerIndex++);
803
840
  };
@@ -806,7 +843,7 @@ var DataStreamWriter = /** @class */ (function () {
806
843
  return;
807
844
  }
808
845
  if (data.length <= 32) {
809
- this.writeTag(112 /* DATA_LENGTH_START */ + data.length);
846
+ this.writeTag(112 /* DataFormatTags.DATA_LENGTH_START */ + data.length);
810
847
  this._writeData(data);
811
848
  }
812
849
  else if (data.length <= 255) {
@@ -833,40 +870,40 @@ var DataStreamWriter = /** @class */ (function () {
833
870
  };
834
871
  DataStreamWriter.prototype.writeData_Length8 = function (data) {
835
872
  this.ensureLength(2 + data.length);
836
- this.writeTag(145 /* DATA_LENGTH8 */);
873
+ this.writeTag(145 /* DataFormatTags.DATA_LENGTH8 */);
837
874
  this.writeLength8(data.length);
838
875
  this._writeData(data);
839
876
  };
840
877
  DataStreamWriter.prototype.writeData_Length16LE = function (data) {
841
878
  this.ensureLength(3 + data.length);
842
- this.writeTag(146 /* DATA_LENGTH16LE */);
879
+ this.writeTag(146 /* DataFormatTags.DATA_LENGTH16LE */);
843
880
  this.writeLength16LE(data.length);
844
881
  this._writeData(data);
845
882
  };
846
883
  DataStreamWriter.prototype.writeData_Length32LE = function (data) {
847
884
  this.ensureLength(5 + data.length);
848
- this.writeTag(147 /* DATA_LENGTH32LE */);
885
+ this.writeTag(147 /* DataFormatTags.DATA_LENGTH32LE */);
849
886
  this.writeLength32LE(data.length);
850
887
  this._writeData(data);
851
888
  };
852
889
  DataStreamWriter.prototype.writeData_Length64LE = function (data) {
853
890
  this.ensureLength(9 + data.length);
854
- this.writeTag(148 /* DATA_LENGTH64LE */);
891
+ this.writeTag(148 /* DataFormatTags.DATA_LENGTH64LE */);
855
892
  this.writeLength64LE(data.length);
856
893
  this._writeData(data);
857
894
  };
858
895
  DataStreamWriter.prototype.writeData_terminated = function (data) {
859
896
  this.ensureLength(1 + data.length + 1);
860
- this.writeTag(159 /* DATA_TERMINATED */);
897
+ this.writeTag(159 /* DataFormatTags.DATA_TERMINATED */);
861
898
  this._writeData(data);
862
- this.writeTag(3 /* TERMINATOR */);
899
+ this.writeTag(3 /* DataFormatTags.TERMINATOR */);
863
900
  };
864
901
  DataStreamWriter.prototype.writeSecondsSince2001_01_01 = function (seconds) {
865
902
  if (this.compressDataIfPossible(seconds)) {
866
903
  return;
867
904
  }
868
905
  this.ensureLength(9);
869
- this.writeTag(6 /* DATE */);
906
+ this.writeTag(6 /* DataFormatTags.DATE */);
870
907
  this.data.writeDoubleLE(seconds.value, this.writerIndex);
871
908
  this.writerIndex += 8;
872
909
  };
@@ -876,7 +913,7 @@ var DataStreamWriter = /** @class */ (function () {
876
913
  return;
877
914
  }
878
915
  this.ensureLength(17);
879
- this.writeTag(5 /* UUID */);
916
+ this.writeTag(5 /* DataFormatTags.UUID */);
880
917
  uuid.write(uuid_string, this.data, this.writerIndex);
881
918
  this.writerIndex += 16;
882
919
  };