@ledgerhq/hw-app-trx 6.24.1 → 6.24.2-monorepo.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.
package/lib/Trx.js DELETED
@@ -1,314 +0,0 @@
1
- "use strict";
2
- exports.__esModule = true;
3
- /********************************************************************************
4
- * Ledger Node JS API
5
- * (c) 2016-2017 Ledger
6
- *
7
- * Licensed under the Apache License, Version 2.0 (the "License");
8
- * you may not use this file except in compliance with the License.
9
- * You may obtain a copy of the License at
10
- *
11
- * http://www.apache.org/licenses/LICENSE-2.0
12
- *
13
- * Unless required by applicable law or agreed to in writing, software
14
- * distributed under the License is distributed on an "AS IS" BASIS,
15
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
- * See the License for the specific language governing permissions and
17
- * limitations under the License.
18
- ********************************************************************************/
19
- // FIXME drop:
20
- var utils_1 = require("./utils");
21
- var remapTransactionRelatedErrors = function (e) {
22
- if (e && e.statusCode === 0x6a80) {
23
- // TODO:
24
- }
25
- return e;
26
- };
27
- var PATH_SIZE = 4;
28
- var PATHS_LENGTH_SIZE = 1;
29
- var CLA = 0xe0;
30
- var ADDRESS = 0x02;
31
- var SIGN = 0x04;
32
- var SIGN_HASH = 0x05;
33
- var SIGN_MESSAGE = 0x08;
34
- var ECDH_SECRET = 0x0a;
35
- var VERSION = 0x06;
36
- var CHUNK_SIZE = 250;
37
- /**
38
- * Tron API
39
- *
40
- * @example
41
- * import Trx from "@ledgerhq/hw-app-trx";
42
- * const trx = new Trx(transport)
43
- */
44
- var Trx = /** @class */ (function () {
45
- function Trx(transport, scrambleKey) {
46
- if (scrambleKey === void 0) { scrambleKey = "TRX"; }
47
- this.transport = transport;
48
- transport.decorateAppAPIMethods(this, [
49
- "getAddress",
50
- "getECDHPairKey",
51
- "signTransaction",
52
- "signTransactionHash",
53
- "signPersonalMessage",
54
- "getAppConfiguration",
55
- ], scrambleKey);
56
- }
57
- /**
58
- * get Tron address for a given BIP 32 path.
59
- * @param path a path in BIP 32 format
60
- * @option boolDisplay optionally enable or not the display
61
- * @return an object with a publicKey and address
62
- * @example
63
- * const address = await tron.getAddress("44'/195'/0'/0/0").then(o => o.address)
64
- */
65
- Trx.prototype.getAddress = function (path, boolDisplay) {
66
- var paths = (0, utils_1.splitPath)(path);
67
- var buffer = Buffer.alloc(PATHS_LENGTH_SIZE + paths.length * PATH_SIZE);
68
- buffer[0] = paths.length;
69
- paths.forEach(function (element, index) {
70
- buffer.writeUInt32BE(element, 1 + 4 * index);
71
- });
72
- return this.transport
73
- .send(CLA, ADDRESS, boolDisplay ? 0x01 : 0x00, 0x00, buffer)
74
- .then(function (response) {
75
- var publicKeyLength = response[0];
76
- var addressLength = response[1 + publicKeyLength];
77
- return {
78
- publicKey: response.slice(1, 1 + publicKeyLength).toString("hex"),
79
- address: response
80
- .slice(1 + publicKeyLength + 1, 1 + publicKeyLength + 1 + addressLength)
81
- .toString("ascii")
82
- };
83
- });
84
- };
85
- Trx.prototype.getNextLength = function (tx) {
86
- var field = (0, utils_1.decodeVarint)(tx, 0);
87
- var data = (0, utils_1.decodeVarint)(tx, field.pos);
88
- if ((field.value & 0x07) === 0)
89
- return data.pos;
90
- return data.value + data.pos;
91
- };
92
- /**
93
- * sign a Tron transaction with a given BIP 32 path and Token Names
94
- *
95
- * @param path a path in BIP 32 format
96
- * @param rawTxHex a raw transaction hex string
97
- * @param tokenSignatures Tokens Signatures array
98
- * @option version pack message based on ledger firmware version
99
- * @option smartContract boolean hack to set limit buffer on ledger device
100
- * @return a signature as hex string
101
- * @example
102
- * const signature = await tron.signTransaction("44'/195'/0'/0/0", "0a02f5942208704dda506d59dceb40f0f4978f802e5a69080112650a2d747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5472616e73666572436f6e747261637412340a1541978dbd103cfe59c35e753d09dd44ae1ae64621c7121541e2ae49db6a70b9b4757d2137a43b69b24a445780188ef8b5ba0470cbb5948f802e", [], 105);
103
- */
104
- Trx.prototype.signTransaction = function (path, rawTxHex, tokenSignatures) {
105
- var _this = this;
106
- var paths = (0, utils_1.splitPath)(path);
107
- var rawTx = Buffer.from(rawTxHex, "hex");
108
- var toSend = [];
109
- var data = Buffer.alloc(PATHS_LENGTH_SIZE + paths.length * PATH_SIZE);
110
- // write path for first chuck only
111
- data[0] = paths.length;
112
- paths.forEach(function (element, index) {
113
- data.writeUInt32BE(element, 1 + 4 * index);
114
- });
115
- while (rawTx.length > 0) {
116
- // get next message field
117
- var newpos = this.getNextLength(rawTx);
118
- if (newpos > CHUNK_SIZE)
119
- throw new Error("Too many bytes to encode.");
120
- if (data.length + newpos > CHUNK_SIZE) {
121
- toSend.push(data);
122
- data = Buffer.alloc(0);
123
- continue;
124
- }
125
- // append data
126
- data = Buffer.concat([data, rawTx.slice(0, newpos)]);
127
- rawTx = rawTx.slice(newpos, rawTx.length);
128
- }
129
- toSend.push(data);
130
- var startBytes = [];
131
- var response;
132
- var tokenPos = toSend.length;
133
- if (tokenSignatures !== undefined) {
134
- for (var i = 0; i < tokenSignatures.length; i += 1) {
135
- var buffer = Buffer.from(tokenSignatures[i], "hex");
136
- toSend.push(buffer);
137
- }
138
- }
139
- // get startBytes
140
- if (toSend.length === 1) {
141
- startBytes.push(0x10);
142
- }
143
- else {
144
- startBytes.push(0x00);
145
- for (var i = 1; i < toSend.length - 1; i += 1) {
146
- if (i >= tokenPos) {
147
- startBytes.push(0xa0 | 0x00 | (i - tokenPos)); // eslint-disable-line no-bitwise
148
- }
149
- else {
150
- startBytes.push(0x80);
151
- }
152
- }
153
- if (tokenSignatures !== undefined && tokenSignatures.length) {
154
- startBytes.push(0xa0 | 0x08 | (tokenSignatures.length - 1)); // eslint-disable-line no-bitwise
155
- }
156
- else {
157
- startBytes.push(0x90);
158
- }
159
- }
160
- return (0, utils_1.foreach)(toSend, function (data, i) {
161
- return _this.transport
162
- .send(CLA, SIGN, startBytes[i], 0x00, data)
163
- .then(function (apduResponse) {
164
- response = apduResponse;
165
- });
166
- }).then(function () {
167
- return response.slice(0, 65).toString("hex");
168
- }, function (e) {
169
- throw remapTransactionRelatedErrors(e);
170
- });
171
- };
172
- /**
173
- * sign a Tron transaction hash with a given BIP 32 path
174
- *
175
- * @param path a path in BIP 32 format
176
- * @param rawTxHex a raw transaction hex string
177
- * @return a signature as hex string
178
- * @example
179
- * const signature = await tron.signTransactionHash("44'/195'/0'/0/0", "25b18a55f86afb10e7aca38d0073d04c80397c6636069193953fdefaea0b8369");
180
- */
181
- Trx.prototype.signTransactionHash = function (path, rawTxHashHex) {
182
- var paths = (0, utils_1.splitPath)(path);
183
- var data = Buffer.alloc(PATHS_LENGTH_SIZE + paths.length * PATH_SIZE);
184
- data[0] = paths.length;
185
- paths.forEach(function (element, index) {
186
- data.writeUInt32BE(element, 1 + 4 * index);
187
- });
188
- data = Buffer.concat([data, Buffer.from(rawTxHashHex, "hex")]);
189
- return this.transport
190
- .send(CLA, SIGN_HASH, 0x00, 0x00, data)
191
- .then(function (response) {
192
- return response.slice(0, 65).toString("hex");
193
- });
194
- };
195
- /**
196
- * get the version of the Tron app installed on the hardware device
197
- *
198
- * @return an object with a version
199
- * @example
200
- * const result = await tron.getAppConfiguration();
201
- * {
202
- * "version": "0.1.5",
203
- * "versionN": "105".
204
- * "allowData": false,
205
- * "allowContract": false,
206
- * "truncateAddress": false,
207
- * "signByHash": false
208
- * }
209
- */
210
- Trx.prototype.getAppConfiguration = function () {
211
- return this.transport.send(CLA, VERSION, 0x00, 0x00).then(function (response) {
212
- // eslint-disable-next-line no-bitwise
213
- var signByHash = (response[0] & (1 << 3)) > 0;
214
- // eslint-disable-next-line no-bitwise
215
- var truncateAddress = (response[0] & (1 << 2)) > 0;
216
- // eslint-disable-next-line no-bitwise
217
- var allowContract = (response[0] & (1 << 1)) > 0;
218
- // eslint-disable-next-line no-bitwise
219
- var allowData = (response[0] & (1 << 0)) > 0;
220
- if (response[1] === 0 && response[2] === 1 && response[3] < 2) {
221
- allowData = true;
222
- allowContract = false;
223
- }
224
- if (response[1] === 0 && response[2] === 1 && response[3] < 5) {
225
- truncateAddress = false;
226
- }
227
- var result = {
228
- version: "".concat(response[1], ".").concat(response[2], ".").concat(response[3]),
229
- versionN: response[1] * 10000 + response[2] * 100 + response[3],
230
- allowData: allowData,
231
- allowContract: allowContract,
232
- truncateAddress: truncateAddress,
233
- signByHash: signByHash
234
- };
235
- return result;
236
- });
237
- };
238
- /**
239
- * sign a Tron Message with a given BIP 32 path
240
- *
241
- * @param path a path in BIP 32 format
242
- * @param message hex string to sign
243
- * @return a signature as hex string
244
- * @example
245
- * const signature = await tron.signPersonalMessage("44'/195'/0'/0/0", "43727970746f436861696e2d54726f6e5352204c6564676572205472616e73616374696f6e73205465737473");
246
- */
247
- Trx.prototype.signPersonalMessage = function (path, messageHex) {
248
- var _this = this;
249
- var paths = (0, utils_1.splitPath)(path);
250
- var message = Buffer.from(messageHex, "hex");
251
- var offset = 0;
252
- var toSend = [];
253
- var size = message.length.toString(16);
254
- var sizePack = "00000000".substr(size.length) + size;
255
- var packed = Buffer.concat([Buffer.from(sizePack, "hex"), message]);
256
- var _loop_1 = function () {
257
- // Use small buffer to be compatible with old and new protocol
258
- var maxChunkSize = offset === 0 ? CHUNK_SIZE - 1 - paths.length * 4 : CHUNK_SIZE;
259
- var chunkSize = offset + maxChunkSize > packed.length
260
- ? packed.length - offset
261
- : maxChunkSize;
262
- var buffer = Buffer.alloc(offset === 0 ? 1 + paths.length * 4 + chunkSize : chunkSize);
263
- if (offset === 0) {
264
- buffer[0] = paths.length;
265
- paths.forEach(function (element, index) {
266
- buffer.writeUInt32BE(element, 1 + 4 * index);
267
- });
268
- packed.copy(buffer, 1 + 4 * paths.length, offset, offset + chunkSize);
269
- }
270
- else {
271
- packed.copy(buffer, 0, offset, offset + chunkSize);
272
- }
273
- toSend.push(buffer);
274
- offset += chunkSize;
275
- };
276
- while (offset < packed.length) {
277
- _loop_1();
278
- }
279
- var response;
280
- return (0, utils_1.foreach)(toSend, function (data, i) {
281
- return _this.transport
282
- .send(CLA, SIGN_MESSAGE, i === 0 ? 0x00 : 0x80, 0x00, data)
283
- .then(function (apduResponse) {
284
- response = apduResponse;
285
- });
286
- }).then(function () {
287
- return response.slice(0, 65).toString("hex");
288
- });
289
- };
290
- /**
291
- * get Tron address for a given BIP 32 path.
292
- * @param path a path in BIP 32 format
293
- * @param publicKey address public key to generate pair key
294
- * @return shared key hex string,
295
- * @example
296
- * const signature = await tron.getECDHPairKey("44'/195'/0'/0/0", "04ff21f8e64d3a3c0198edfbb7afdc79be959432e92e2f8a1984bb436a414b8edcec0345aad0c1bf7da04fd036dd7f9f617e30669224283d950fab9dd84831dc83");
297
- */
298
- Trx.prototype.getECDHPairKey = function (path, publicKey) {
299
- var paths = (0, utils_1.splitPath)(path);
300
- var data = Buffer.from(publicKey, "hex");
301
- var buffer = Buffer.alloc(1 + paths.length * 4 + data.length);
302
- buffer[0] = paths.length;
303
- paths.forEach(function (element, index) {
304
- buffer.writeUInt32BE(element, 1 + 4 * index);
305
- });
306
- data.copy(buffer, 1 + 4 * paths.length, 0, data.length);
307
- return this.transport
308
- .send(CLA, ECDH_SECRET, 0x00, 0x01, buffer)
309
- .then(function (response) { return response.slice(0, 65).toString("hex"); });
310
- };
311
- return Trx;
312
- }());
313
- exports["default"] = Trx;
314
- //# sourceMappingURL=Trx.js.map
package/lib/Trx.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"Trx.js","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":"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"}
package/lib/utils.d.ts DELETED
@@ -1,35 +0,0 @@
1
- /// <reference types="node" />
2
- /********************************************************************************
3
- * Ledger Node JS API
4
- * (c) 2016-2017 Ledger
5
- *
6
- * Licensed under the Apache License, Version 2.0 (the "License");
7
- * you may not use this file except in compliance with the License.
8
- * You may obtain a copy of the License at
9
- *
10
- * http://www.apache.org/licenses/LICENSE-2.0
11
- *
12
- * Unless required by applicable law or agreed to in writing, software
13
- * distributed under the License is distributed on an "AS IS" BASIS,
14
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- * See the License for the specific language governing permissions and
16
- * limitations under the License.
17
- ********************************************************************************/
18
- declare type Defer<T> = {
19
- promise: Promise<T>;
20
- resolve: (arg0: T) => void;
21
- reject: (arg0: any) => void;
22
- };
23
- export declare function defer<T>(): Defer<T>;
24
- export declare function splitPath(path: string): number[];
25
- export declare function eachSeries<A>(arr: A[], fun: (arg0: A) => Promise<any>): Promise<any>;
26
- export declare function foreach<T, A>(arr: T[], callback: (arg0: T, arg1: number) => Promise<A>): Promise<A[]>;
27
- export declare function doIf(condition: boolean, callback: () => any | Promise<any>): Promise<void>;
28
- export declare function asyncWhile<T>(predicate: () => boolean, callback: () => Promise<T>): Promise<Array<T>>;
29
- interface DecodeResult {
30
- value: number;
31
- pos: number;
32
- }
33
- export declare function decodeVarint(stream: Buffer, index: number): DecodeResult;
34
- export {};
35
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,aAAK,KAAK,CAAC,CAAC,IAAI;IACd,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACpB,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B,MAAM,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAC7B,CAAC;AACF,wBAAgB,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAanC;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBhD;AAED,wBAAgB,UAAU,CAAC,CAAC,EAC1B,GAAG,EAAE,CAAC,EAAE,EACR,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,GAAG,CAAC,GAC7B,OAAO,CAAC,GAAG,CAAC,CAEd;AACD,wBAAgB,OAAO,CAAC,CAAC,EAAE,CAAC,EAC1B,GAAG,EAAE,CAAC,EAAE,EACR,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAC9C,OAAO,CAAC,CAAC,EAAE,CAAC,CAYd;AACD,wBAAgB,IAAI,CAClB,SAAS,EAAE,OAAO,EAClB,QAAQ,EAAE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GACjC,OAAO,CAAC,IAAI,CAAC,CAMf;AACD,wBAAgB,UAAU,CAAC,CAAC,EAC1B,SAAS,EAAE,MAAM,OAAO,EACxB,QAAQ,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACzB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAanB;AACD,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AACD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,CAuBxE"}
package/lib/utils.js DELETED
@@ -1,99 +0,0 @@
1
- "use strict";
2
- exports.__esModule = true;
3
- exports.decodeVarint = exports.asyncWhile = exports.doIf = exports.foreach = exports.eachSeries = exports.splitPath = exports.defer = void 0;
4
- function defer() {
5
- var resolve, reject;
6
- var promise = new Promise(function (success, failure) {
7
- resolve = success;
8
- reject = failure;
9
- });
10
- if (!resolve || !reject)
11
- throw "defer() error"; // this never happens and is just to make flow happy
12
- return {
13
- promise: promise,
14
- resolve: resolve,
15
- reject: reject
16
- };
17
- }
18
- exports.defer = defer;
19
- // TODO use bip32-path library
20
- function splitPath(path) {
21
- var result = [];
22
- var components = path.split("/");
23
- components.forEach(function (element) {
24
- var number = parseInt(element, 10);
25
- if (isNaN(number)) {
26
- return; // FIXME shouldn't it throws instead?
27
- }
28
- if (element.length > 1 && element[element.length - 1] === "'") {
29
- number += 0x80000000;
30
- }
31
- result.push(number);
32
- });
33
- return result;
34
- }
35
- exports.splitPath = splitPath;
36
- // TODO use async await
37
- function eachSeries(arr, fun) {
38
- return arr.reduce(function (p, e) { return p.then(function () { return fun(e); }); }, Promise.resolve());
39
- }
40
- exports.eachSeries = eachSeries;
41
- function foreach(arr, callback) {
42
- function iterate(index, array, result) {
43
- if (index >= array.length) {
44
- return result;
45
- }
46
- else
47
- return callback(array[index], index).then(function (res) {
48
- result.push(res);
49
- return iterate(index + 1, array, result);
50
- });
51
- }
52
- return Promise.resolve().then(function () { return iterate(0, arr, []); });
53
- }
54
- exports.foreach = foreach;
55
- function doIf(condition, callback) {
56
- return Promise.resolve().then(function () {
57
- if (condition) {
58
- return callback();
59
- }
60
- });
61
- }
62
- exports.doIf = doIf;
63
- function asyncWhile(predicate, callback) {
64
- function iterate(result) {
65
- if (!predicate()) {
66
- return result;
67
- }
68
- else {
69
- return callback().then(function (res) {
70
- result.push(res);
71
- return iterate(result);
72
- });
73
- }
74
- }
75
- return Promise.resolve([]).then(iterate);
76
- }
77
- exports.asyncWhile = asyncWhile;
78
- function decodeVarint(stream, index) {
79
- var result = 0;
80
- var shift = 0;
81
- var pos = index;
82
- // eslint-disable-next-line no-constant-condition
83
- while (shift < 64) {
84
- var b = stream[pos];
85
- result |= (b & 0x7f) << shift;
86
- pos += 1;
87
- if (!(b & 0x80)) {
88
- result &= 0xffffffff;
89
- return {
90
- value: result,
91
- pos: pos
92
- };
93
- }
94
- shift += 7;
95
- }
96
- throw new Error("Too many bytes when decoding varint.");
97
- }
98
- exports.decodeVarint = decodeVarint;
99
- //# sourceMappingURL=utils.js.map
package/lib/utils.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/lib-es/Trx.d.ts DELETED
@@ -1,92 +0,0 @@
1
- /// <reference types="node" />
2
- import type Transport from "@ledgerhq/hw-transport";
3
- /**
4
- * Tron API
5
- *
6
- * @example
7
- * import Trx from "@ledgerhq/hw-app-trx";
8
- * const trx = new Trx(transport)
9
- */
10
- export default class Trx {
11
- transport: Transport;
12
- constructor(transport: Transport, scrambleKey?: string);
13
- /**
14
- * get Tron address for a given BIP 32 path.
15
- * @param path a path in BIP 32 format
16
- * @option boolDisplay optionally enable or not the display
17
- * @return an object with a publicKey and address
18
- * @example
19
- * const address = await tron.getAddress("44'/195'/0'/0/0").then(o => o.address)
20
- */
21
- getAddress(path: string, boolDisplay?: boolean): Promise<{
22
- publicKey: string;
23
- address: string;
24
- }>;
25
- getNextLength(tx: Buffer): number;
26
- /**
27
- * sign a Tron transaction with a given BIP 32 path and Token Names
28
- *
29
- * @param path a path in BIP 32 format
30
- * @param rawTxHex a raw transaction hex string
31
- * @param tokenSignatures Tokens Signatures array
32
- * @option version pack message based on ledger firmware version
33
- * @option smartContract boolean hack to set limit buffer on ledger device
34
- * @return a signature as hex string
35
- * @example
36
- * const signature = await tron.signTransaction("44'/195'/0'/0/0", "0a02f5942208704dda506d59dceb40f0f4978f802e5a69080112650a2d747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5472616e73666572436f6e747261637412340a1541978dbd103cfe59c35e753d09dd44ae1ae64621c7121541e2ae49db6a70b9b4757d2137a43b69b24a445780188ef8b5ba0470cbb5948f802e", [], 105);
37
- */
38
- signTransaction(path: string, rawTxHex: string, tokenSignatures: string[]): Promise<string>;
39
- /**
40
- * sign a Tron transaction hash with a given BIP 32 path
41
- *
42
- * @param path a path in BIP 32 format
43
- * @param rawTxHex a raw transaction hex string
44
- * @return a signature as hex string
45
- * @example
46
- * const signature = await tron.signTransactionHash("44'/195'/0'/0/0", "25b18a55f86afb10e7aca38d0073d04c80397c6636069193953fdefaea0b8369");
47
- */
48
- signTransactionHash(path: string, rawTxHashHex: string): Promise<string>;
49
- /**
50
- * get the version of the Tron app installed on the hardware device
51
- *
52
- * @return an object with a version
53
- * @example
54
- * const result = await tron.getAppConfiguration();
55
- * {
56
- * "version": "0.1.5",
57
- * "versionN": "105".
58
- * "allowData": false,
59
- * "allowContract": false,
60
- * "truncateAddress": false,
61
- * "signByHash": false
62
- * }
63
- */
64
- getAppConfiguration(): Promise<{
65
- allowContract: boolean;
66
- truncateAddress: boolean;
67
- allowData: boolean;
68
- signByHash: boolean;
69
- version: string;
70
- versionN: number;
71
- }>;
72
- /**
73
- * sign a Tron Message with a given BIP 32 path
74
- *
75
- * @param path a path in BIP 32 format
76
- * @param message hex string to sign
77
- * @return a signature as hex string
78
- * @example
79
- * const signature = await tron.signPersonalMessage("44'/195'/0'/0/0", "43727970746f436861696e2d54726f6e5352204c6564676572205472616e73616374696f6e73205465737473");
80
- */
81
- signPersonalMessage(path: string, messageHex: string): Promise<string>;
82
- /**
83
- * get Tron address for a given BIP 32 path.
84
- * @param path a path in BIP 32 format
85
- * @param publicKey address public key to generate pair key
86
- * @return shared key hex string,
87
- * @example
88
- * const signature = await tron.getECDHPairKey("44'/195'/0'/0/0", "04ff21f8e64d3a3c0198edfbb7afdc79be959432e92e2f8a1984bb436a414b8edcec0345aad0c1bf7da04fd036dd7f9f617e30669224283d950fab9dd84831dc83");
89
- */
90
- getECDHPairKey(path: string, publicKey: string): Promise<string>;
91
- }
92
- //# sourceMappingURL=Trx.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Trx.d.ts","sourceRoot":"","sources":["../src/Trx.ts"],"names":[],"mappings":";AAmBA,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAoBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,GAAG;IACtB,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS,EAAE,WAAW,SAAQ;IAgBrD;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAyBF,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM;IAOjC;;;;;;;;;;;OAWG;IACH,eAAe,CACb,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,EAAE,GACxB,OAAO,CAAC,MAAM,CAAC;IA4ElB;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAexE;;;;;;;;;;;;;;OAcG;IACH,mBAAmB,IAAI,OAAO,CAAC;QAC7B,aAAa,EAAE,OAAO,CAAC;QACvB,eAAe,EAAE,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IAgCF;;;;;;;;OAQG;IACH,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA+CtE;;;;;;;OAOG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAajE"}