jooby-codec 1.4.0 → 1.5.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 (61) hide show
  1. package/dist/CommandBinaryBuffer.d.ts +40 -23
  2. package/dist/CommandBinaryBuffer.js +93 -58
  3. package/dist/CommandBinaryBuffer.js.map +1 -1
  4. package/dist/commands/downlink/ExAbsArchiveDaysMC.d.ts +2 -2
  5. package/dist/commands/downlink/ExAbsArchiveDaysMC.js +6 -6
  6. package/dist/commands/downlink/ExAbsArchiveDaysMC.js.map +1 -1
  7. package/dist/commands/downlink/ExAbsArchiveHoursMC.d.ts +2 -2
  8. package/dist/commands/downlink/ExAbsArchiveHoursMC.js +6 -6
  9. package/dist/commands/downlink/ExAbsArchiveHoursMC.js.map +1 -1
  10. package/dist/commands/downlink/ExAbsCurrentMC.d.ts +30 -0
  11. package/dist/commands/downlink/ExAbsCurrentMC.js +43 -0
  12. package/dist/commands/downlink/ExAbsCurrentMC.js.map +1 -0
  13. package/dist/commands/downlink/GetArchiveDaysMC.d.ts +2 -2
  14. package/dist/commands/downlink/GetArchiveDaysMC.js +6 -6
  15. package/dist/commands/downlink/GetArchiveDaysMC.js.map +1 -1
  16. package/dist/commands/downlink/GetArchiveHoursMC.d.ts +2 -2
  17. package/dist/commands/downlink/GetArchiveHoursMC.js +6 -6
  18. package/dist/commands/downlink/GetArchiveHoursMC.js.map +1 -1
  19. package/dist/commands/downlink/SetParameter.d.ts +7 -1
  20. package/dist/commands/downlink/SetParameter.js +11 -0
  21. package/dist/commands/downlink/SetParameter.js.map +1 -1
  22. package/dist/commands/downlink/index.d.ts +1 -0
  23. package/dist/commands/downlink/index.js +1 -0
  24. package/dist/commands/downlink/index.js.map +1 -1
  25. package/dist/commands/uplink/DataDayMC.d.ts +2 -2
  26. package/dist/commands/uplink/DataDayMC.js +8 -8
  27. package/dist/commands/uplink/DataDayMC.js.map +1 -1
  28. package/dist/commands/uplink/DataHourMC.d.ts +10 -4
  29. package/dist/commands/uplink/DataHourMC.js +13 -35
  30. package/dist/commands/uplink/DataHourMC.js.map +1 -1
  31. package/dist/commands/uplink/ExAbsArchiveDaysMC.d.ts +9 -38
  32. package/dist/commands/uplink/ExAbsArchiveDaysMC.js +16 -38
  33. package/dist/commands/uplink/ExAbsArchiveDaysMC.js.map +1 -1
  34. package/dist/commands/uplink/ExAbsArchiveHoursMC.d.ts +13 -7
  35. package/dist/commands/uplink/ExAbsArchiveHoursMC.js +24 -60
  36. package/dist/commands/uplink/ExAbsArchiveHoursMC.js.map +1 -1
  37. package/dist/commands/uplink/ExAbsCurrentMC.d.ts +15 -0
  38. package/dist/commands/uplink/ExAbsCurrentMC.js +30 -0
  39. package/dist/commands/uplink/ExAbsCurrentMC.js.map +1 -0
  40. package/dist/commands/uplink/ExAbsDayMC.d.ts +8 -3
  41. package/dist/commands/uplink/ExAbsDayMC.js +10 -36
  42. package/dist/commands/uplink/ExAbsDayMC.js.map +1 -1
  43. package/dist/commands/uplink/ExAbsHourMC.d.ts +58 -6
  44. package/dist/commands/uplink/ExAbsHourMC.js +45 -50
  45. package/dist/commands/uplink/ExAbsHourMC.js.map +1 -1
  46. package/dist/commands/uplink/GetArchiveDaysMC.d.ts +5 -29
  47. package/dist/commands/uplink/GetArchiveDaysMC.js +11 -37
  48. package/dist/commands/uplink/GetArchiveDaysMC.js.map +1 -1
  49. package/dist/commands/uplink/GetArchiveHoursMC.d.ts +47 -7
  50. package/dist/commands/uplink/GetArchiveHoursMC.js +43 -23
  51. package/dist/commands/uplink/GetArchiveHoursMC.js.map +1 -1
  52. package/dist/commands/uplink/GetCurrentMC.d.ts +2 -8
  53. package/dist/commands/uplink/GetCurrentMC.js +3 -3
  54. package/dist/commands/uplink/GetCurrentMC.js.map +1 -1
  55. package/dist/commands/uplink/index.d.ts +1 -0
  56. package/dist/commands/uplink/index.js +1 -0
  57. package/dist/commands/uplink/index.js.map +1 -1
  58. package/dist/constants/deviceParameters.d.ts +5 -1
  59. package/dist/constants/deviceParameters.js +5 -1
  60. package/dist/constants/deviceParameters.js.map +1 -1
  61. package/package.json +1 -1
@@ -13,36 +13,54 @@ export interface IBatteryVoltage {
13
13
  */
14
14
  high: number | undefined;
15
15
  }
16
- /**
17
- * Channel value hour diff
18
- */
19
- export interface IHourDiff {
20
- value: number;
21
- hour: number;
22
- seconds: number;
23
- date: Date;
24
- }
25
16
  export interface IChannel {
26
17
  /**
27
18
  * Channel number.
28
19
  */
29
20
  index: number;
21
+ }
22
+ export interface IChannelValue extends IChannel {
30
23
  /**
31
24
  * Pulse counter or absolute value of device channel.
32
25
  */
33
26
  value: number;
27
+ }
28
+ export interface IChannelHours extends IChannelValue {
34
29
  /**
35
- * Values differences between hours.
30
+ * values differences between hours
36
31
  */
37
- diff: Array<IHourDiff>;
32
+ diff: Array<number>;
33
+ }
34
+ export interface IChannelHourAbsoluteValue extends IChannelHours {
38
35
  /**
39
- * time
36
+ * Channel pulse coefficient - IPK in bytes.
40
37
  */
41
- seconds: number | undefined;
38
+ pulseCoefficient: number;
39
+ }
40
+ export interface IChannelDays extends IChannel {
41
+ dayList: Array<number>;
42
+ }
43
+ export interface IChannelAbsoluteValue extends IChannelValue {
42
44
  /**
43
- * Normal date in UTC.
45
+ * Channel pulse coefficient - IPK in bytes.
44
46
  */
45
- date: Date | undefined;
47
+ pulseCoefficient: number;
48
+ }
49
+ export interface IChannelArchiveDaysAbsolute extends IChannel {
50
+ /**
51
+ * values by days
52
+ */
53
+ dayList: Array<number>;
54
+ /**
55
+ * Channel pulse coefficient - IPK in bytes.
56
+ */
57
+ pulseCoefficient: number;
58
+ }
59
+ export interface IChannelArchiveDays extends IChannel {
60
+ /**
61
+ * values by days
62
+ */
63
+ dayList: Array<number>;
46
64
  }
47
65
  /**
48
66
  * Command specific byte array manipulation.
@@ -52,15 +70,12 @@ declare class CommandBinaryBuffer extends BinaryBuffer {
52
70
  setExtendedValue(value: number): void;
53
71
  /**
54
72
  * Get array of channel indexes.
55
- *
56
- * @param short - get 4 channelList or more
57
73
  */
58
- getChannels(short: boolean): Array<number>;
74
+ getChannels(): Array<number>;
59
75
  /**
60
76
  * Set array of channel indexes.
61
- *
62
77
  */
63
- setChannels(channelList: Array<any>): void;
78
+ setChannels(channelList: Array<IChannel>): void;
64
79
  /**
65
80
  * Retrieve device time from byte array.
66
81
  *
@@ -92,9 +107,11 @@ declare class CommandBinaryBuffer extends BinaryBuffer {
92
107
  setBatterVoltage(batteryVoltage: IBatteryVoltage): void;
93
108
  getChannelsValuesWithHourDiff(): {
94
109
  hours: number;
95
- channelList: Array<IChannel>;
96
- date: Date;
110
+ startTime: number;
111
+ channelList: Array<IChannelHours>;
97
112
  };
98
- setChannelsValuesWithHourDiff(hours: number, date: Date, channelList: Array<IChannel>): void;
113
+ setChannelsValuesWithHourDiff(hours: number, startTime: number, channelList: Array<IChannelHours>): void;
114
+ getChannelsWithAbsoluteValues(): Array<IChannelAbsoluteValue>;
115
+ setChannelsWithAbsoluteValues(channelList: Array<IChannelAbsoluteValue>): void;
99
116
  }
100
117
  export default CommandBinaryBuffer;
@@ -4,21 +4,21 @@ const INITIAL_YEAR = 2000;
4
4
  const MONTH_BIT_SIZE = 4;
5
5
  const DATE_BIT_SIZE = 5;
6
6
  const YEAR_START_INDEX = 1;
7
- const CHANNELS_FULL_MASK = [0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40];
8
- const CHANNELS_SHORT_MASK = [0x01, 0x02, 0x04, 0x08];
9
- const UNKNOWN_BATTER_VOLTAGE = 4095;
7
+ const UNKNOWN_BATTERY_VOLTAGE = 4095;
8
+ const EXTEND_BIT_MASK = 0x80;
9
+ const LAST_BIT_INDEX = 7;
10
10
  /**
11
11
  * Command specific byte array manipulation.
12
12
  */
13
13
  class CommandBinaryBuffer extends BinaryBuffer {
14
14
  getExtendedValue() {
15
15
  let value = 0;
16
- let extended = 1;
16
+ let isByteExtended = true;
17
17
  // byte offset
18
18
  let position = 0;
19
- while (extended && this.offset <= this.data.byteLength) {
19
+ while (isByteExtended && this.offset <= this.data.byteLength) {
20
20
  const byte = this.getUint8();
21
- extended = byte & 0x80;
21
+ isByteExtended = !!(byte & EXTEND_BIT_MASK);
22
22
  value += (byte & 0x7f) << (7 * position);
23
23
  ++position;
24
24
  }
@@ -32,7 +32,7 @@ class CommandBinaryBuffer extends BinaryBuffer {
32
32
  const data = [];
33
33
  let encodedValue = value;
34
34
  while (encodedValue) {
35
- data.push(0x80 | (encodedValue & 0x7f));
35
+ data.push(EXTEND_BIT_MASK | (encodedValue & 0x7f));
36
36
  encodedValue >>= 7;
37
37
  }
38
38
  const lastByte = data.pop();
@@ -44,41 +44,65 @@ class CommandBinaryBuffer extends BinaryBuffer {
44
44
  }
45
45
  /**
46
46
  * Get array of channel indexes.
47
- *
48
- * @param short - get 4 channelList or more
49
47
  */
50
- getChannels(short) {
48
+ getChannels() {
51
49
  const channelList = [];
52
- let extended = 1;
50
+ let extended = true;
53
51
  let channelIndex = 0;
54
- const MASK = short ? CHANNELS_SHORT_MASK : CHANNELS_FULL_MASK;
52
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
55
53
  while (extended) {
56
54
  const byte = this.getUint8();
57
- extended = byte & 0x80;
58
- for (let index = 0; index < MASK.length; index++) {
59
- if (byte & MASK[index]) {
60
- channelList.push((channelIndex * 7) + index);
55
+ // original 0b00000001, reverse it to get first - `1`
56
+ const bits = byte.toString(2).padStart(LAST_BIT_INDEX + 1, '0').split('').reverse();
57
+ // eslint-disable-next-line @typescript-eslint/no-loop-func
58
+ bits.forEach((bit, index) => {
59
+ const value = Number(bit);
60
+ if (index === LAST_BIT_INDEX) {
61
+ // highest bit in byte
62
+ extended = !!value;
61
63
  }
62
- }
63
- ++channelIndex;
64
+ else {
65
+ if (value) {
66
+ channelList.push(channelIndex);
67
+ }
68
+ ++channelIndex;
69
+ }
70
+ });
64
71
  }
65
- return channelList.sort((a, b) => a - b);
72
+ return channelList;
66
73
  }
67
74
  /**
68
75
  * Set array of channel indexes.
69
- *
70
76
  */
71
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
72
77
  setChannels(channelList) {
73
- // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-return
78
+ // sort channels by index
79
+ channelList.sort((a, b) => a.index - b.index);
80
+ // find max channel to detect amount of bytes
74
81
  const maxChannel = Math.max(...channelList.map(({ index }) => index));
75
- const size = (Math.ceil(maxChannel / 7) + (maxChannel % 7)) ? 1 : 0;
76
- const data = Array(size).fill(0x80);
77
- channelList.forEach((_, channelIndex) => {
78
- data[Math.floor(channelIndex / 7)] |= CHANNELS_FULL_MASK[channelIndex % 7];
82
+ const size = (maxChannel - (maxChannel % LAST_BIT_INDEX)) / LAST_BIT_INDEX;
83
+ const data = new Array(size + 1).fill(0);
84
+ let byte = 0;
85
+ data.forEach((_, byteIndex) => {
86
+ // max channel index in one byte - 6
87
+ let channelIndex = byteIndex * LAST_BIT_INDEX;
88
+ const maxChannelIndex = channelIndex + LAST_BIT_INDEX;
89
+ while (channelIndex < maxChannelIndex) {
90
+ // eslint-disable-next-line @typescript-eslint/no-loop-func
91
+ const channel = channelList.find((item => item.index === channelIndex));
92
+ if (channel !== undefined) {
93
+ // set channel bit
94
+ byte |= 1 << (channel.index % LAST_BIT_INDEX);
95
+ }
96
+ ++channelIndex;
97
+ }
98
+ // set extended bit if next byte exist
99
+ if (data[byteIndex + 1] !== undefined) {
100
+ byte |= 1 << LAST_BIT_INDEX;
101
+ }
102
+ data[byteIndex] = byte;
103
+ byte = 0;
79
104
  });
80
- data[data.length - 1] &= 0x7f;
81
- data.forEach((byte) => this.setUint8(byte));
105
+ data.forEach((value) => this.setUint8(value));
82
106
  }
83
107
  /**
84
108
  * Retrieve device time from byte array.
@@ -124,8 +148,10 @@ class CommandBinaryBuffer extends BinaryBuffer {
124
148
  */
125
149
  getHours() {
126
150
  const byte = this.getUint8();
127
- const hours = (byte & 0xe0) >> 5;
151
+ let hours = (byte & 0xe0) >> 5;
128
152
  const hour = byte & 0x1f;
153
+ // TODO: add link to doc
154
+ hours = hours === 0 ? 1 : hours;
129
155
  return { hours, hour };
130
156
  }
131
157
  setHours(hour, hours) {
@@ -151,10 +177,10 @@ class CommandBinaryBuffer extends BinaryBuffer {
151
177
  low = lowVoltageByte << 4;
152
178
  low |= (lowAndHightVoltageByte & 0xf0) >> 4;
153
179
  high = ((lowAndHightVoltageByte & 0x0f) << 8) | highVoltageByte;
154
- if (high === UNKNOWN_BATTER_VOLTAGE) {
180
+ if (high === UNKNOWN_BATTERY_VOLTAGE) {
155
181
  high = undefined;
156
182
  }
157
- if (low === UNKNOWN_BATTER_VOLTAGE) {
183
+ if (low === UNKNOWN_BATTERY_VOLTAGE) {
158
184
  low = undefined;
159
185
  }
160
186
  return { low, high };
@@ -162,10 +188,10 @@ class CommandBinaryBuffer extends BinaryBuffer {
162
188
  setBatterVoltage(batteryVoltage) {
163
189
  let { low, high } = batteryVoltage;
164
190
  if (low === undefined) {
165
- low = UNKNOWN_BATTER_VOLTAGE;
191
+ low = UNKNOWN_BATTERY_VOLTAGE;
166
192
  }
167
193
  if (high === undefined) {
168
- high = UNKNOWN_BATTER_VOLTAGE;
194
+ high = UNKNOWN_BATTERY_VOLTAGE;
169
195
  }
170
196
  const lowVoltageByte = (low >> 4) & 0xff;
171
197
  const lowAndHighVoltageByte = ((low & 0x0f) << 4) | ((high >> 8) & 0x0f);
@@ -174,48 +200,57 @@ class CommandBinaryBuffer extends BinaryBuffer {
174
200
  }
175
201
  getChannelsValuesWithHourDiff() {
176
202
  const date = this.getDate();
177
- const { hour, hours: hourAmount } = this.getHours();
178
- const channelArray = this.getChannels(true);
179
- const maxChannel = Math.max.apply(null, channelArray);
203
+ const { hour, hours } = this.getHours();
204
+ const channels = this.getChannels();
180
205
  const channelList = [];
181
- let hours = hourAmount;
182
- let value;
183
206
  date.setUTCHours(hour);
184
- const counterDate = new Date(date);
185
- // TODO: add link to doc
186
- if (hours === 0) {
187
- hours = 1;
188
- }
189
- for (let channelIndex = 0; channelIndex <= maxChannel; ++channelIndex) {
207
+ channels.forEach(channelIndex => {
190
208
  const diff = [];
191
209
  // decode hour value for channel
192
- value = this.getExtendedValue();
193
- counterDate.setTime(date.getTime());
210
+ const value = this.getExtendedValue();
211
+ for (let diffHour = 0; diffHour < hours; ++diffHour) {
212
+ diff.push(this.getExtendedValue());
213
+ }
194
214
  channelList.push({
195
215
  value,
196
216
  diff,
197
- index: channelIndex,
198
- seconds: getSecondsFromDate(counterDate),
199
- date: new Date(counterDate)
217
+ index: channelIndex
200
218
  });
201
- for (let diffHour = 0; diffHour < hours; ++diffHour) {
202
- value = this.getExtendedValue();
203
- counterDate.setUTCHours(counterDate.getUTCHours() + diffHour);
204
- diff.push({ value, hour: diffHour, date: new Date(counterDate), seconds: getSecondsFromDate(counterDate) });
205
- }
206
- }
207
- return { channelList, date, hours };
219
+ });
220
+ return { channelList, hours, startTime: getSecondsFromDate(date) };
208
221
  }
209
- setChannelsValuesWithHourDiff(hours, date, channelList) {
222
+ setChannelsValuesWithHourDiff(hours, startTime, channelList) {
223
+ const date = getDateFromSeconds(startTime);
210
224
  const hour = date.getUTCHours();
211
225
  this.setDate(date);
212
226
  this.setHours(hour, hours);
213
227
  this.setChannels(channelList);
214
228
  channelList.forEach(({ value, diff }) => {
215
229
  this.setExtendedValue(value);
216
- diff.forEach(({ value: diffValue }) => this.setExtendedValue(diffValue));
230
+ diff.forEach(diffValue => this.setExtendedValue(diffValue));
217
231
  });
218
232
  }
233
+ getChannelsWithAbsoluteValues() {
234
+ const channels = this.getChannels();
235
+ const channelList = [];
236
+ channels.forEach(channelIndex => {
237
+ channelList.push({
238
+ // IPK_${channelIndex}
239
+ pulseCoefficient: this.getUint8(),
240
+ // day value
241
+ value: this.getExtendedValue(),
242
+ index: channelIndex
243
+ });
244
+ });
245
+ return channelList;
246
+ }
247
+ setChannelsWithAbsoluteValues(channelList) {
248
+ this.setChannels(channelList);
249
+ for (const { value, pulseCoefficient } of channelList) {
250
+ this.setUint8(pulseCoefficient);
251
+ this.setExtendedValue(value);
252
+ }
253
+ }
219
254
  }
220
255
  export default CommandBinaryBuffer;
221
256
  //# sourceMappingURL=CommandBinaryBuffer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandBinaryBuffer.js","sourceRoot":"","sources":["../src/CommandBinaryBuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CommandBinaryBuffer.js","sourceRoot":"","sources":["../src/CommandBinaryBuffer.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ interface IDownlinkExAbsArchiveDaysMCParameters {
15
15
  /** amount of days to retrieve */
16
16
  days: number;
17
17
  /** time */
18
- seconds: number;
18
+ startTime: number;
19
19
  /** array of channelList indexes */
20
20
  channelList: Array<number>;
21
21
  }
@@ -40,7 +40,7 @@ declare class ExAbsArchiveDaysMC extends Command {
40
40
  constructor(parameters: IDownlinkExAbsArchiveDaysMCParameters);
41
41
  static readonly id = 3359;
42
42
  static readonly directionType = 1;
43
- static readonly title = "EX_ABS_ARCHIVE_DAYS_MUL";
43
+ static readonly title = "EX_ABS_ARCHIVE_DAYS_MC";
44
44
  static fromBytes(data: Uint8Array): ExAbsArchiveDaysMC;
45
45
  toBytes(): Uint8Array;
46
46
  }
@@ -9,7 +9,7 @@ import { DOWNLINK } from '../../constants/directionTypes.js';
9
9
  import { getSecondsFromDate, getDateFromSeconds } from '../../utils/time.js';
10
10
  // TODO: rework extended headers detection
11
11
  const COMMAND_ID = 0x0d1f;
12
- const COMMAND_TITLE = 'EX_ABS_ARCHIVE_DAYS_MUL';
12
+ const COMMAND_TITLE = 'EX_ABS_ARCHIVE_DAYS_MC';
13
13
  const COMMAND_BODY_SIZE = 4;
14
14
  /**
15
15
  * Downlink command
@@ -40,20 +40,20 @@ class ExAbsArchiveDaysMC extends Command {
40
40
  }
41
41
  const buffer = new CommandBinaryBuffer(data);
42
42
  const date = buffer.getDate();
43
- const channelList = buffer.getChannels(true);
43
+ const channelList = buffer.getChannels();
44
44
  const days = buffer.getUint8();
45
45
  if (!buffer.isEmpty) {
46
46
  throw new Error(`${this.getName()}. BinaryBuffer is not empty.`);
47
47
  }
48
- return new ExAbsArchiveDaysMC({ channelList, days, seconds: getSecondsFromDate(date) });
48
+ return new ExAbsArchiveDaysMC({ channelList, days, startTime: getSecondsFromDate(date) });
49
49
  }
50
50
  // returns full message - header with body
51
51
  toBytes() {
52
- const { channelList, days, seconds } = this.parameters;
52
+ const { channelList, days, startTime } = this.parameters;
53
53
  const buffer = new CommandBinaryBuffer(COMMAND_BODY_SIZE);
54
- const date = getDateFromSeconds(seconds);
54
+ const date = getDateFromSeconds(startTime);
55
55
  buffer.setDate(date);
56
- buffer.setChannels(channelList);
56
+ buffer.setChannels(channelList.map(index => ({ index })));
57
57
  buffer.setUint8(days);
58
58
  return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
59
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ExAbsArchiveDaysMC.js","sourceRoot":"","sources":["../../../src/commands/downlink/ExAbsArchiveDaysMC.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAsB3E,0CAA0C;AAC1C,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,aAAa,GAAG,yBAAyB,CAAC;AAChD,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAG5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,kBAAmB,SAAQ,OAAO;IACpC,YAAqB,UAAiD;QAClE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAuC;QAGlE,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE/B,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,kBAAkB,CAAC,EAAC,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC1F,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,WAAW,EAAE,IAAI,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAEzC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AArCe,qBAAE,GAAG,UAAU,CAAC;AAEhB,gCAAa,GAAG,QAAQ,CAAC;AAEzB,wBAAK,GAAG,aAAa,CAAC;AAqC1C,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"ExAbsArchiveDaysMC.js","sourceRoot":"","sources":["../../../src/commands/downlink/ExAbsArchiveDaysMC.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAA+B,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAsB3E,0CAA0C;AAC1C,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAC/C,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAG5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,kBAAmB,SAAQ,OAAO;IACpC,YAAqB,UAAiD;QAClE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAuC;QAGlE,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAE/B,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,kBAAkB,CAAC,EAAC,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC5F,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,WAAW,EAAE,IAAI,EAAE,SAAS,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACvD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAE3C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAC,KAAK,EAAc,CAAA,CAAC,CAAC,CAAC;QACpE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEtB,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AArCe,qBAAE,GAAG,UAAU,CAAC;AAEhB,gCAAa,GAAG,QAAQ,CAAC;AAEzB,wBAAK,GAAG,aAAa,CAAC;AAqC1C,eAAe,kBAAkB,CAAC"}
@@ -15,7 +15,7 @@ interface IDownlinkExAbsArchiveHoursMCParameters {
15
15
  /** amount of hours to retrieve */
16
16
  hours: number;
17
17
  /** time */
18
- seconds: number;
18
+ startTime: number;
19
19
  /** array of channelList indexes */
20
20
  channelList: Array<number>;
21
21
  }
@@ -40,7 +40,7 @@ declare class ExAbsArchiveHoursMC extends Command {
40
40
  constructor(parameters: IDownlinkExAbsArchiveHoursMCParameters);
41
41
  static readonly id = 3103;
42
42
  static readonly directionType = 1;
43
- static readonly title = "EX_ABS_ARCHIVE_HOUR_MUL";
43
+ static readonly title = "EX_ABS_ARCHIVE_HOUR_MC";
44
44
  static fromBytes(data: Uint8Array): ExAbsArchiveHoursMC;
45
45
  toBytes(): Uint8Array;
46
46
  }
@@ -9,7 +9,7 @@ import { DOWNLINK } from '../../constants/directionTypes.js';
9
9
  import { getSecondsFromDate, getDateFromSeconds } from '../../utils/time.js';
10
10
  // TODO: rework extended headers detection
11
11
  const COMMAND_ID = 0x0c1f;
12
- const COMMAND_TITLE = 'EX_ABS_ARCHIVE_HOUR_MUL';
12
+ const COMMAND_TITLE = 'EX_ABS_ARCHIVE_HOUR_MC';
13
13
  const COMMAND_BODY_SIZE = 4;
14
14
  /**
15
15
  * Downlink command
@@ -41,22 +41,22 @@ class ExAbsArchiveHoursMC extends Command {
41
41
  const buffer = new CommandBinaryBuffer(data);
42
42
  const date = buffer.getDate();
43
43
  const { hour, hours } = buffer.getHours();
44
- const channelList = buffer.getChannels(true);
44
+ const channelList = buffer.getChannels();
45
45
  date.setUTCHours(hour);
46
46
  if (!buffer.isEmpty) {
47
47
  throw new Error(`${this.getName()}. BinaryBuffer is not empty.`);
48
48
  }
49
- return new ExAbsArchiveHoursMC({ channelList, hours, seconds: getSecondsFromDate(date) });
49
+ return new ExAbsArchiveHoursMC({ channelList, hours, startTime: getSecondsFromDate(date) });
50
50
  }
51
51
  // returns full message - header with body
52
52
  toBytes() {
53
- const { channelList, hours, seconds } = this.parameters;
53
+ const { channelList, hours, startTime } = this.parameters;
54
54
  const buffer = new CommandBinaryBuffer(COMMAND_BODY_SIZE);
55
- const date = getDateFromSeconds(seconds);
55
+ const date = getDateFromSeconds(startTime);
56
56
  const hour = date.getUTCHours();
57
57
  buffer.setDate(date);
58
58
  buffer.setHours(hour, hours);
59
- buffer.setChannels(channelList);
59
+ buffer.setChannels(channelList.map(index => ({ index })));
60
60
  return Command.toBytes(COMMAND_ID, buffer.toUint8Array());
61
61
  }
62
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ExAbsArchiveHoursMC.js","sourceRoot":"","sources":["../../../src/commands/downlink/ExAbsArchiveHoursMC.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAAmB,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAsB3E,0CAA0C;AAC1C,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,aAAa,GAAG,yBAAyB,CAAC;AAChD,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAG5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,mBAAoB,SAAQ,OAAO;IACrC,YAAqB,UAAkD;QACnE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAwC;QAGnE,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,mBAAmB,CAAC,EAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC5F,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACtD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEhC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7B,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAEhC,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAxCe,sBAAE,GAAG,UAAU,CAAC;AAEhB,iCAAa,GAAG,QAAQ,CAAC;AAEzB,yBAAK,GAAG,aAAa,CAAC;AAwC1C,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"ExAbsArchiveHoursMC.js","sourceRoot":"","sources":["../../../src/commands/downlink/ExAbsArchiveHoursMC.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,mBAA+B,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAC,kBAAkB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAsB3E,0CAA0C;AAC1C,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAC/C,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAG5B;;;;;;;;;;;;;;;GAeG;AACH,MAAM,mBAAoB,SAAQ,OAAO;IACrC,YAAqB,UAAkD;QACnE,KAAK,EAAE,CAAC;QADS,eAAU,GAAV,UAAU,CAAwC;QAGnE,IAAI,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpF,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS,CAAG,IAAgB;QAC/B,IAAK,IAAI,CAAC,UAAU,KAAK,iBAAiB,EAAG;YACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,wBAAwB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;SAChF;QAED,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE7C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QAC9B,MAAM,EAAC,IAAI,EAAE,KAAK,EAAC,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAEzC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAK,CAAC,MAAM,CAAC,OAAO,EAAG;YACnB,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAC;SACpE;QAED,OAAO,IAAI,mBAAmB,CAAC,EAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,kBAAkB,CAAC,IAAI,CAAC,EAAC,CAAC,CAAC;IAC9F,CAAC;IAED,0CAA0C;IAC1C,OAAO;QACH,MAAM,EAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC;QACxD,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEhC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7B,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAC,KAAK,EAAc,CAAA,CAAC,CAAC,CAAC;QAEpE,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;IAC9D,CAAC;;AAxCe,sBAAE,GAAG,UAAU,CAAC;AAEhB,iCAAa,GAAG,QAAQ,CAAC;AAEzB,yBAAK,GAAG,aAAa,CAAC;AAwC1C,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * [[include:commands/downlink/ExAbsCurrentMC.md]]
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ import Command from '../../Command.js';
7
+ /**
8
+ * Downlink command
9
+ *
10
+ * @example
11
+ * ```js
12
+ * import ExAbsCurrentMC from 'jooby-codec/commands/downlink/ExAbsCurrentMC';
13
+ *
14
+ * const command = new ExAbsCurrentMC();
15
+ *
16
+ * // output command binary in hex representation
17
+ * console.log(command.toHex());
18
+ * // 1f 0f 00
19
+ * ```
20
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/ExAbsCurrentMC.md#request)
21
+ */
22
+ declare class ExAbsCurrentMC extends Command {
23
+ constructor();
24
+ static readonly id = 3871;
25
+ static readonly directionType = 1;
26
+ static readonly title = "EX_ABS_CURRENT_MC";
27
+ static fromBytes(): ExAbsCurrentMC;
28
+ toBytes(): Uint8Array;
29
+ }
30
+ export default ExAbsCurrentMC;
@@ -0,0 +1,43 @@
1
+ /**
2
+ * [[include:commands/downlink/ExAbsCurrentMC.md]]
3
+ *
4
+ * @packageDocumentation
5
+ */
6
+ import Command from '../../Command.js';
7
+ import { DOWNLINK } from '../../constants/directionTypes.js';
8
+ // TODO: rework extended headers detection
9
+ const COMMAND_ID = 0x0f1f;
10
+ const COMMAND_TITLE = 'EX_ABS_CURRENT_MC';
11
+ /**
12
+ * Downlink command
13
+ *
14
+ * @example
15
+ * ```js
16
+ * import ExAbsCurrentMC from 'jooby-codec/commands/downlink/ExAbsCurrentMC';
17
+ *
18
+ * const command = new ExAbsCurrentMC();
19
+ *
20
+ * // output command binary in hex representation
21
+ * console.log(command.toHex());
22
+ * // 1f 0f 00
23
+ * ```
24
+ * [Command format documentation](https://github.com/jooby-dev/jooby-docs/blob/main/docs/commands/ExAbsCurrentMC.md#request)
25
+ */
26
+ class ExAbsCurrentMC extends Command {
27
+ constructor() {
28
+ super();
29
+ }
30
+ // data - only body (without header)
31
+ static fromBytes() {
32
+ return new ExAbsCurrentMC();
33
+ }
34
+ // eslint-disable-next-line class-methods-use-this
35
+ toBytes() {
36
+ return Command.toBytes(COMMAND_ID);
37
+ }
38
+ }
39
+ ExAbsCurrentMC.id = COMMAND_ID;
40
+ ExAbsCurrentMC.directionType = DOWNLINK;
41
+ ExAbsCurrentMC.title = COMMAND_TITLE;
42
+ export default ExAbsCurrentMC;
43
+ //# sourceMappingURL=ExAbsCurrentMC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExAbsCurrentMC.js","sourceRoot":"","sources":["../../../src/commands/downlink/ExAbsCurrentMC.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAC,QAAQ,EAAC,MAAM,mCAAmC,CAAC;AAG3D,0CAA0C;AAC1C,MAAM,UAAU,GAAG,MAAM,CAAC;AAC1B,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAG1C;;;;;;;;;;;;;;GAcG;AACH,MAAM,cAAe,SAAQ,OAAO;IAChC;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;IAQD,oCAAoC;IACpC,MAAM,CAAC,SAAS;QACZ,OAAO,IAAI,cAAc,EAAE,CAAC;IAChC,CAAC;IAED,kDAAkD;IAClD,OAAO;QACH,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC;;AAde,iBAAE,GAAG,UAAU,CAAC;AAEhB,4BAAa,GAAG,QAAQ,CAAC;AAEzB,oBAAK,GAAG,aAAa,CAAC;AAc1C,eAAe,cAAc,CAAC"}
@@ -15,7 +15,7 @@ interface IDownlinkGetArchiveDaysMCParameters {
15
15
  /** amount of days to retrieve */
16
16
  days: number;
17
17
  /** time */
18
- seconds: number;
18
+ startTime: number;
19
19
  /** array of channelList indexes */
20
20
  channelList: Array<number>;
21
21
  }
@@ -40,7 +40,7 @@ declare class GetArchiveDaysMC extends Command {
40
40
  constructor(parameters: IDownlinkGetArchiveDaysMCParameters);
41
41
  static readonly id = 27;
42
42
  static readonly directionType = 1;
43
- static readonly title = "GET_ARCHIVE_DAYS_MUL";
43
+ static readonly title = "GET_ARCHIVE_DAYS_MC";
44
44
  static fromBytes(data: Uint8Array): GetArchiveDaysMC;
45
45
  toBytes(): Uint8Array;
46
46
  }