homebridge-midea-platform 1.2.0-beta.7 → 1.2.1

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 (168) hide show
  1. package/CHANGELOG.md +7 -2
  2. package/README.md +2 -2
  3. package/config.schema.json +1 -1
  4. package/dist/accessory/AccessoryFactory.d.ts +14 -15
  5. package/dist/accessory/AccessoryFactory.js +34 -40
  6. package/dist/accessory/AccessoryFactory.js.map +1 -1
  7. package/dist/accessory/AirConditionerAccessory.d.ts +98 -99
  8. package/dist/accessory/AirConditionerAccessory.js +666 -662
  9. package/dist/accessory/AirConditionerAccessory.js.map +1 -1
  10. package/dist/accessory/BaseAccessory.d.ts +11 -12
  11. package/dist/accessory/BaseAccessory.js +21 -21
  12. package/dist/accessory/BaseAccessory.js.map +1 -1
  13. package/dist/accessory/DehumidifierAccessory.d.ts +45 -46
  14. package/dist/accessory/DehumidifierAccessory.js +343 -344
  15. package/dist/accessory/DehumidifierAccessory.js.map +1 -1
  16. package/dist/accessory/DishwasherAccessory.d.ts +30 -31
  17. package/dist/accessory/DishwasherAccessory.js +59 -63
  18. package/dist/accessory/DishwasherAccessory.js.map +1 -1
  19. package/dist/accessory/ElectricWaterHeaterAccessory.d.ts +44 -45
  20. package/dist/accessory/ElectricWaterHeaterAccessory.js +172 -176
  21. package/dist/accessory/ElectricWaterHeaterAccessory.js.map +1 -1
  22. package/dist/accessory/FanAccessory.d.ts +39 -40
  23. package/dist/accessory/FanAccessory.js +120 -123
  24. package/dist/accessory/FanAccessory.js.map +1 -1
  25. package/dist/accessory/FrontLoadWasherAccessory.d.ts +30 -31
  26. package/dist/accessory/FrontLoadWasherAccessory.js +63 -66
  27. package/dist/accessory/FrontLoadWasherAccessory.js.map +1 -1
  28. package/dist/accessory/GasWaterHeaterAccessory.d.ts +51 -52
  29. package/dist/accessory/GasWaterHeaterAccessory.js +217 -216
  30. package/dist/accessory/GasWaterHeaterAccessory.js.map +1 -1
  31. package/dist/accessory/{HeatPumpWifiControllerAccessory.d.ts → HeatPumpWiFiControllerAccessory.d.ts} +34 -35
  32. package/dist/accessory/{HeatPumpWifiControllerAccessory.js → HeatPumpWiFiControllerAccessory.js} +55 -36
  33. package/dist/accessory/HeatPumpWiFiControllerAccessory.js.map +1 -0
  34. package/dist/core/MideaCloud.d.ts +34 -36
  35. package/dist/core/MideaCloud.js +349 -350
  36. package/dist/core/MideaCloud.js.map +1 -1
  37. package/dist/core/MideaConstants.d.ts +51 -52
  38. package/dist/core/MideaConstants.js +56 -59
  39. package/dist/core/MideaConstants.js.map +1 -1
  40. package/dist/core/MideaDevice.d.ts +75 -78
  41. package/dist/core/MideaDevice.js +430 -420
  42. package/dist/core/MideaDevice.js.map +1 -1
  43. package/dist/core/MideaDiscover.d.ts +34 -36
  44. package/dist/core/MideaDiscover.js +208 -212
  45. package/dist/core/MideaDiscover.js.map +1 -1
  46. package/dist/core/MideaMessage.d.ts +75 -76
  47. package/dist/core/MideaMessage.js +185 -184
  48. package/dist/core/MideaMessage.js.map +1 -1
  49. package/dist/core/MideaPacketBuilder.d.ts +9 -11
  50. package/dist/core/MideaPacketBuilder.js +60 -60
  51. package/dist/core/MideaPacketBuilder.js.map +1 -1
  52. package/dist/core/MideaSecurity.d.ts +62 -64
  53. package/dist/core/MideaSecurity.js +241 -251
  54. package/dist/core/MideaSecurity.js.map +1 -1
  55. package/dist/core/MideaUtils.d.ts +31 -33
  56. package/dist/core/MideaUtils.js +178 -181
  57. package/dist/core/MideaUtils.js.map +1 -1
  58. package/dist/devices/DeviceFactory.d.ts +14 -15
  59. package/dist/devices/DeviceFactory.js +34 -40
  60. package/dist/devices/DeviceFactory.js.map +1 -1
  61. package/dist/devices/a1/MideaA1Device.d.ts +75 -77
  62. package/dist/devices/a1/MideaA1Device.js +142 -145
  63. package/dist/devices/a1/MideaA1Device.js.map +1 -1
  64. package/dist/devices/a1/MideaA1Message.d.ts +39 -41
  65. package/dist/devices/a1/MideaA1Message.js +219 -198
  66. package/dist/devices/a1/MideaA1Message.js.map +1 -1
  67. package/dist/devices/ac/MideaACDevice.d.ts +105 -107
  68. package/dist/devices/ac/MideaACDevice.js +417 -400
  69. package/dist/devices/ac/MideaACDevice.js.map +1 -1
  70. package/dist/devices/ac/MideaACMessage.d.ts +97 -96
  71. package/dist/devices/ac/MideaACMessage.js +724 -621
  72. package/dist/devices/ac/MideaACMessage.js.map +1 -1
  73. package/dist/devices/c3/MideaC3Device.d.ts +73 -75
  74. package/dist/devices/c3/MideaC3Device.js +249 -255
  75. package/dist/devices/c3/MideaC3Device.js.map +1 -1
  76. package/dist/devices/c3/MideaC3Message.d.ts +81 -80
  77. package/dist/devices/c3/MideaC3Message.js +190 -152
  78. package/dist/devices/c3/MideaC3Message.js.map +1 -1
  79. package/dist/devices/db/MideaDBDevice.d.ts +28 -30
  80. package/dist/devices/db/MideaDBDevice.js +94 -100
  81. package/dist/devices/db/MideaDBDevice.js.map +1 -1
  82. package/dist/devices/db/MideaDBMessage.d.ts +31 -33
  83. package/dist/devices/db/MideaDBMessage.js +101 -101
  84. package/dist/devices/db/MideaDBMessage.js.map +1 -1
  85. package/dist/devices/e1/MideaE1Device.d.ts +55 -57
  86. package/dist/devices/e1/MideaE1Device.js +122 -128
  87. package/dist/devices/e1/MideaE1Device.js.map +1 -1
  88. package/dist/devices/e1/MideaE1Message.d.ts +27 -29
  89. package/dist/devices/e1/MideaE1Message.js +128 -107
  90. package/dist/devices/e1/MideaE1Message.js.map +1 -1
  91. package/dist/devices/e2/MideaE2Device.d.ts +43 -45
  92. package/dist/devices/e2/MideaE2Device.js +124 -129
  93. package/dist/devices/e2/MideaE2Device.js.map +1 -1
  94. package/dist/devices/e2/MideaE2Message.d.ts +34 -34
  95. package/dist/devices/e2/MideaE2Message.js +143 -132
  96. package/dist/devices/e2/MideaE2Message.js.map +1 -1
  97. package/dist/devices/e3/MideaE3Device.d.ts +42 -44
  98. package/dist/devices/e3/MideaE3Device.js +132 -137
  99. package/dist/devices/e3/MideaE3Device.js.map +1 -1
  100. package/dist/devices/e3/MideaE3Message.d.ts +51 -52
  101. package/dist/devices/e3/MideaE3Message.js +144 -136
  102. package/dist/devices/e3/MideaE3Message.js.map +1 -1
  103. package/dist/devices/fa/MideaFADevice.d.ts +35 -37
  104. package/dist/devices/fa/MideaFADevice.js +102 -106
  105. package/dist/devices/fa/MideaFADevice.js.map +1 -1
  106. package/dist/devices/fa/MideaFAMessage.d.ts +38 -39
  107. package/dist/devices/fa/MideaFAMessage.js +108 -98
  108. package/dist/devices/fa/MideaFAMessage.js.map +1 -1
  109. package/dist/index.d.ts +6 -7
  110. package/dist/index.js +8 -6
  111. package/dist/index.js.map +1 -1
  112. package/dist/platform.d.ts +61 -61
  113. package/dist/platform.js +232 -212
  114. package/dist/platform.js.map +1 -1
  115. package/dist/platformUtils.d.ts +116 -117
  116. package/dist/platformUtils.js +107 -110
  117. package/dist/platformUtils.js.map +1 -1
  118. package/dist/settings.d.ts +8 -9
  119. package/dist/settings.js +8 -11
  120. package/dist/settings.js.map +1 -1
  121. package/docs/download_lua.md +9 -0
  122. package/eslint.config.js +43 -0
  123. package/homebridge-ui/public/js/bootstrap.min.js +1179 -1
  124. package/homebridge-ui/{server.js → server.cjs} +30 -30
  125. package/package.json +21 -31
  126. package/.eslintignore +0 -3
  127. package/.husky/pre-commit +0 -5
  128. package/.prettierrc +0 -19
  129. package/dist/accessory/AccessoryFactory.d.ts.map +0 -1
  130. package/dist/accessory/AirConditionerAccessory.d.ts.map +0 -1
  131. package/dist/accessory/BaseAccessory.d.ts.map +0 -1
  132. package/dist/accessory/DehumidifierAccessory.d.ts.map +0 -1
  133. package/dist/accessory/DishwasherAccessory.d.ts.map +0 -1
  134. package/dist/accessory/ElectricWaterHeaterAccessory.d.ts.map +0 -1
  135. package/dist/accessory/FanAccessory.d.ts.map +0 -1
  136. package/dist/accessory/FrontLoadWasherAccessory.d.ts.map +0 -1
  137. package/dist/accessory/GasWaterHeaterAccessory.d.ts.map +0 -1
  138. package/dist/accessory/HeatPumpWifiControllerAccessory.d.ts.map +0 -1
  139. package/dist/accessory/HeatPumpWifiControllerAccessory.js.map +0 -1
  140. package/dist/core/MideaCloud.d.ts.map +0 -1
  141. package/dist/core/MideaConstants.d.ts.map +0 -1
  142. package/dist/core/MideaDevice.d.ts.map +0 -1
  143. package/dist/core/MideaDiscover.d.ts.map +0 -1
  144. package/dist/core/MideaMessage.d.ts.map +0 -1
  145. package/dist/core/MideaPacketBuilder.d.ts.map +0 -1
  146. package/dist/core/MideaSecurity.d.ts.map +0 -1
  147. package/dist/core/MideaUtils.d.ts.map +0 -1
  148. package/dist/devices/DeviceFactory.d.ts.map +0 -1
  149. package/dist/devices/a1/MideaA1Device.d.ts.map +0 -1
  150. package/dist/devices/a1/MideaA1Message.d.ts.map +0 -1
  151. package/dist/devices/ac/MideaACDevice.d.ts.map +0 -1
  152. package/dist/devices/ac/MideaACMessage.d.ts.map +0 -1
  153. package/dist/devices/c3/MideaC3Device.d.ts.map +0 -1
  154. package/dist/devices/c3/MideaC3Message.d.ts.map +0 -1
  155. package/dist/devices/db/MideaDBDevice.d.ts.map +0 -1
  156. package/dist/devices/db/MideaDBMessage.d.ts.map +0 -1
  157. package/dist/devices/e1/MideaE1Device.d.ts.map +0 -1
  158. package/dist/devices/e1/MideaE1Message.d.ts.map +0 -1
  159. package/dist/devices/e2/MideaE2Device.d.ts.map +0 -1
  160. package/dist/devices/e2/MideaE2Message.d.ts.map +0 -1
  161. package/dist/devices/e3/MideaE3Device.d.ts.map +0 -1
  162. package/dist/devices/e3/MideaE3Message.d.ts.map +0 -1
  163. package/dist/devices/fa/MideaFADevice.d.ts.map +0 -1
  164. package/dist/devices/fa/MideaFAMessage.d.ts.map +0 -1
  165. package/dist/index.d.ts.map +0 -1
  166. package/dist/platform.d.ts.map +0 -1
  167. package/dist/platformUtils.d.ts.map +0 -1
  168. package/dist/settings.d.ts.map +0 -1
@@ -1,61 +1,61 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const MideaSecurity_1 = require("./MideaSecurity");
4
- const luxon_1 = require("luxon");
5
- const MideaUtils_1 = require("./MideaUtils");
6
- const MideaConstants_1 = require("./MideaConstants");
7
- class PacketBuilder {
8
- constructor(device_id, command) {
9
- this.command = command;
10
- this.security = new MideaSecurity_1.LocalSecurity();
11
- this.packet = Buffer.from([
12
- // 2 bytes - StaicHeader
13
- 0x5a, 0x5a,
14
- // 2 bytes - mMessageType
15
- 0x01, 0x11,
16
- // 2 bytes - PacketLenght
17
- 0x00, 0x00,
18
- // 2 bytes
19
- 0x20, 0x00,
20
- // 4 bytes - MessageId
21
- 0x00, 0x00, 0x00, 0x00,
22
- // 8 bytes - Date&Time
23
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
24
- // 6 bytes - mDeviceID
25
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
26
- // 12 bytes
27
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
28
- ]);
29
- this.packet.subarray(12, 20).set(PacketBuilder.packet_time());
30
- this.packet.subarray(20, 28).set((0, MideaUtils_1.numberToUint8Array)(device_id, 8, MideaConstants_1.Endianness.Little));
31
- }
32
- finalize(message_type = 1) {
33
- if (message_type !== 1) {
34
- this.packet[3] = 0x10;
35
- this.packet[6] = 0x7b;
36
- }
37
- else {
38
- this.packet = Buffer.concat([this.packet, this.security.aes_encrypt(this.command)]);
39
- }
40
- this.packet.subarray(4, 6).set((0, MideaUtils_1.numberToUint8Array)(this.packet.length + 16, 2, MideaConstants_1.Endianness.Little));
41
- this.packet = Buffer.concat([this.packet, this.security.encode32_data(this.packet)]);
42
- return this.packet;
43
- }
44
- static packet_time() {
45
- const t = luxon_1.DateTime.utc().toFormat('yyyyMMddHHmmssuu');
46
- const b = Buffer.alloc(8);
47
- for (let i = 0; i < t.length; i += 2) {
48
- b[8 - i - 1] = parseInt(t.substring(i, i + 2));
49
- }
50
- return b;
51
- }
52
- static checksum(data) {
53
- let sum = 0;
54
- for (let i = 0; i < data.length; i++) {
55
- sum += data[i];
56
- }
57
- return (~sum + 1) & 0xff;
58
- }
59
- }
60
- exports.default = PacketBuilder;
1
+ import { LocalSecurity } from './MideaSecurity.js';
2
+ import { DateTime } from 'luxon';
3
+ import { numberToUint8Array } from './MideaUtils.js';
4
+ import { Endianness } from './MideaConstants.js';
5
+ export default class PacketBuilder {
6
+ command;
7
+ security;
8
+ packet;
9
+ constructor(device_id, command) {
10
+ this.command = command;
11
+ this.security = new LocalSecurity();
12
+ this.packet = Buffer.from([
13
+ // 2 bytes - StaicHeader
14
+ 0x5a, 0x5a,
15
+ // 2 bytes - mMessageType
16
+ 0x01, 0x11,
17
+ // 2 bytes - PacketLenght
18
+ 0x00, 0x00,
19
+ // 2 bytes
20
+ 0x20, 0x00,
21
+ // 4 bytes - MessageId
22
+ 0x00, 0x00, 0x00, 0x00,
23
+ // 8 bytes - Date&Time
24
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
25
+ // 6 bytes - mDeviceID
26
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
27
+ // 12 bytes
28
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
29
+ ]);
30
+ this.packet.subarray(12, 20).set(PacketBuilder.packet_time());
31
+ this.packet.subarray(20, 28).set(numberToUint8Array(device_id, 8, Endianness.Little));
32
+ }
33
+ finalize(message_type = 1) {
34
+ if (message_type !== 1) {
35
+ this.packet[3] = 0x10;
36
+ this.packet[6] = 0x7b;
37
+ }
38
+ else {
39
+ this.packet = Buffer.concat([this.packet, this.security.aes_encrypt(this.command)]);
40
+ }
41
+ this.packet.subarray(4, 6).set(numberToUint8Array(this.packet.length + 16, 2, Endianness.Little));
42
+ this.packet = Buffer.concat([this.packet, this.security.encode32_data(this.packet)]);
43
+ return this.packet;
44
+ }
45
+ static packet_time() {
46
+ const t = DateTime.utc().toFormat('yyyyMMddHHmmssuu');
47
+ const b = Buffer.alloc(8);
48
+ for (let i = 0; i < t.length; i += 2) {
49
+ b[8 - i - 1] = parseInt(t.substring(i, i + 2));
50
+ }
51
+ return b;
52
+ }
53
+ static checksum(data) {
54
+ let sum = 0;
55
+ for (let i = 0; i < data.length; i++) {
56
+ sum += data[i];
57
+ }
58
+ return (~sum + 1) & 0xff;
59
+ }
60
+ }
61
61
  //# sourceMappingURL=MideaPacketBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MideaPacketBuilder.js","sourceRoot":"","sources":["../../src/core/MideaPacketBuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MideaPacketBuilder.js","sourceRoot":"","sources":["../../src/core/MideaPacketBuilder.ts"],"names":[],"mappings":"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"}
@@ -1,64 +1,62 @@
1
- /// <reference types="node" />
2
- import { TCPMessageType } from './MideaConstants';
3
- export type KeyToken = Buffer | undefined;
4
- export declare abstract class CloudSecurity {
5
- protected readonly LOGIN_KEY: string;
6
- readonly IOT_KEY?: string;
7
- readonly HMAC_KEY?: string;
8
- constructor(login_key: string, iot_key?: bigint, hmac_key?: bigint);
9
- sign(data: string, random: string): string;
10
- encrpytPassword(loginId: string, password: string): string;
11
- static getUDPID(device_id_buf: Uint8Array): string;
12
- }
13
- export declare abstract class ProxiedSecurity extends CloudSecurity {
14
- abstract readonly APP_KEY: string;
15
- abstract encrpytIAMPassword(loginId: string, password: string): string;
16
- getAppKeyAndIv(): {
17
- appKey: Buffer;
18
- iv: Buffer;
19
- };
20
- encryptAESAppKey(data: Buffer): Buffer;
21
- decryptAESAppKey(data: Buffer): Buffer;
22
- }
23
- export declare class MSmartHomeCloudSecurity extends ProxiedSecurity {
24
- static readonly _LOGIN_KEY = "ac21b9f9cbfe4ca5a88562ef25e2b768";
25
- readonly APP_KEY = "ac21b9f9cbfe4ca5a88562ef25e2b768";
26
- constructor();
27
- encrpytIAMPassword(loginId: string, password: string): string;
28
- }
29
- export declare class MeijuCloudSecurity extends ProxiedSecurity {
30
- static readonly _LOGIN_KEY = "ad0ee21d48a64bf49f4fb583ab76e799";
31
- readonly APP_KEY = "ac21b9f9cbfe4ca5a88562ef25e2b768";
32
- constructor();
33
- encrpytIAMPassword(_loginId: string, password: string): string;
34
- }
35
- export declare class SimpleSecurity extends CloudSecurity {
36
- constructor(login_key: string);
37
- encrpytIAMPassword(): string;
38
- sign(url: string, query: string): string;
39
- }
40
- export declare class NetHomePlusSecurity extends SimpleSecurity {
41
- static readonly _LOGIN_KEY = "3742e9e5842d4ad59c2db887e12449f9";
42
- constructor();
43
- }
44
- export declare class ArtisonClimaSecurity extends SimpleSecurity {
45
- static readonly _LOGIN_KEY = "434a209a5ce141c3b726de067835d7f0";
46
- constructor();
47
- }
48
- export declare class LocalSecurity {
49
- private readonly aes_key;
50
- private readonly salt;
51
- private readonly iv;
52
- private request_count;
53
- private response_count;
54
- private tcp_key;
55
- private aes_cbc_encrpyt;
56
- private aes_cbc_decrypt;
57
- aes_encrypt(data: Buffer): Buffer;
58
- aes_decrypt(data: Buffer): Buffer;
59
- encode32_data(raw: Buffer): Buffer;
60
- tcp_key_from_resp(response: Buffer, key: Buffer): Buffer;
61
- encode_8370(data: Buffer, message_type: TCPMessageType): Buffer;
62
- decode_8370(data: Buffer): any;
63
- }
64
- //# sourceMappingURL=MideaSecurity.d.ts.map
1
+ import { TCPMessageType } from './MideaConstants.js';
2
+ export type KeyToken = Buffer | undefined;
3
+ export declare abstract class CloudSecurity {
4
+ protected readonly LOGIN_KEY: string;
5
+ readonly IOT_KEY?: string;
6
+ readonly HMAC_KEY?: string;
7
+ constructor(login_key: string, iot_key?: bigint, hmac_key?: bigint);
8
+ sign(data: string, random: string): string;
9
+ encrpytPassword(loginId: string, password: string): string;
10
+ static getUDPID(device_id_buf: Uint8Array): string;
11
+ }
12
+ export declare abstract class ProxiedSecurity extends CloudSecurity {
13
+ abstract readonly APP_KEY: string;
14
+ abstract encrpytIAMPassword(loginId: string, password: string): string;
15
+ getAppKeyAndIv(): {
16
+ appKey: Buffer;
17
+ iv: Buffer;
18
+ };
19
+ encryptAESAppKey(data: Buffer): Buffer;
20
+ decryptAESAppKey(data: Buffer): Buffer;
21
+ }
22
+ export declare class MSmartHomeCloudSecurity extends ProxiedSecurity {
23
+ static readonly _LOGIN_KEY = "ac21b9f9cbfe4ca5a88562ef25e2b768";
24
+ readonly APP_KEY = "ac21b9f9cbfe4ca5a88562ef25e2b768";
25
+ constructor();
26
+ encrpytIAMPassword(loginId: string, password: string): string;
27
+ }
28
+ export declare class MeijuCloudSecurity extends ProxiedSecurity {
29
+ static readonly _LOGIN_KEY = "ad0ee21d48a64bf49f4fb583ab76e799";
30
+ readonly APP_KEY = "ac21b9f9cbfe4ca5a88562ef25e2b768";
31
+ constructor();
32
+ encrpytIAMPassword(_loginId: string, password: string): string;
33
+ }
34
+ export declare class SimpleSecurity extends CloudSecurity {
35
+ constructor(login_key: string);
36
+ encrpytIAMPassword(): string;
37
+ sign(url: string, query: string): string;
38
+ }
39
+ export declare class NetHomePlusSecurity extends SimpleSecurity {
40
+ static readonly _LOGIN_KEY = "3742e9e5842d4ad59c2db887e12449f9";
41
+ constructor();
42
+ }
43
+ export declare class ArtisonClimaSecurity extends SimpleSecurity {
44
+ static readonly _LOGIN_KEY = "434a209a5ce141c3b726de067835d7f0";
45
+ constructor();
46
+ }
47
+ export declare class LocalSecurity {
48
+ private readonly aes_key;
49
+ private readonly salt;
50
+ private readonly iv;
51
+ private request_count;
52
+ private response_count;
53
+ private tcp_key;
54
+ private aes_cbc_encrpyt;
55
+ private aes_cbc_decrypt;
56
+ aes_encrypt(data: Buffer): Buffer;
57
+ aes_decrypt(data: Buffer): Buffer;
58
+ encode32_data(raw: Buffer): Buffer;
59
+ tcp_key_from_resp(response: Buffer, key: Buffer): Buffer;
60
+ encode_8370(data: Buffer, message_type: TCPMessageType): Buffer;
61
+ decode_8370(data: Buffer): [Buffer[], Buffer];
62
+ }