@bitgo-beta/sdk-coin-trx 1.2.3-alpha.4 → 1.2.3-alpha.400

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 (79) hide show
  1. package/.mocharc.yml +1 -1
  2. package/CHANGELOG.md +1046 -0
  3. package/dist/resources/protobuf/Contract.proto +32 -0
  4. package/dist/resources/protobuf/tron.d.ts +1478 -214
  5. package/dist/resources/protobuf/tron.js +6312 -2600
  6. package/dist/resources/protobuf/tron.proto +6 -0
  7. package/dist/src/index.d.ts +2 -0
  8. package/dist/src/index.d.ts.map +1 -1
  9. package/dist/src/index.js +8 -2
  10. package/dist/src/lib/constants.d.ts +3 -0
  11. package/dist/src/lib/constants.d.ts.map +1 -0
  12. package/dist/src/lib/constants.js +6 -0
  13. package/dist/src/lib/contractCallBuilder.d.ts +1 -35
  14. package/dist/src/lib/contractCallBuilder.d.ts.map +1 -1
  15. package/dist/src/lib/contractCallBuilder.js +12 -75
  16. package/dist/src/lib/delegateResourceTxBuilder.d.ts +27 -0
  17. package/dist/src/lib/delegateResourceTxBuilder.d.ts.map +1 -0
  18. package/dist/src/lib/delegateResourceTxBuilder.js +98 -0
  19. package/dist/src/lib/enum.d.ts +36 -1
  20. package/dist/src/lib/enum.d.ts.map +1 -1
  21. package/dist/src/lib/enum.js +40 -4
  22. package/dist/src/lib/freezeBalanceTxBuilder.d.ts +71 -0
  23. package/dist/src/lib/freezeBalanceTxBuilder.d.ts.map +1 -0
  24. package/dist/src/lib/freezeBalanceTxBuilder.js +211 -0
  25. package/dist/src/lib/iface.d.ts +231 -2
  26. package/dist/src/lib/iface.d.ts.map +1 -1
  27. package/dist/src/lib/iface.js +1 -1
  28. package/dist/src/lib/index.d.ts +2 -0
  29. package/dist/src/lib/index.d.ts.map +1 -1
  30. package/dist/src/lib/index.js +25 -9
  31. package/dist/src/lib/keyPair.d.ts +0 -1
  32. package/dist/src/lib/keyPair.d.ts.map +1 -1
  33. package/dist/src/lib/keyPair.js +31 -18
  34. package/dist/src/lib/resourceManagementTxBuilder.d.ts +72 -0
  35. package/dist/src/lib/resourceManagementTxBuilder.d.ts.map +1 -0
  36. package/dist/src/lib/resourceManagementTxBuilder.js +150 -0
  37. package/dist/src/lib/tokenTransferBuilder.d.ts +23 -0
  38. package/dist/src/lib/tokenTransferBuilder.d.ts.map +1 -0
  39. package/dist/src/lib/tokenTransferBuilder.js +42 -0
  40. package/dist/src/lib/transaction.d.ts.map +1 -1
  41. package/dist/src/lib/transaction.js +112 -5
  42. package/dist/src/lib/transactionBuilder.d.ts +50 -5
  43. package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
  44. package/dist/src/lib/transactionBuilder.js +110 -21
  45. package/dist/src/lib/undelegateResourceTxBuilder.d.ts +27 -0
  46. package/dist/src/lib/undelegateResourceTxBuilder.d.ts.map +1 -0
  47. package/dist/src/lib/undelegateResourceTxBuilder.js +98 -0
  48. package/dist/src/lib/unfreezeBalanceTxBuilder.d.ts +65 -0
  49. package/dist/src/lib/unfreezeBalanceTxBuilder.d.ts.map +1 -0
  50. package/dist/src/lib/unfreezeBalanceTxBuilder.js +204 -0
  51. package/dist/src/lib/utils.d.ts +74 -4
  52. package/dist/src/lib/utils.d.ts.map +1 -1
  53. package/dist/src/lib/utils.js +411 -35
  54. package/dist/src/lib/voteWitnessTxBuilder.d.ts +62 -0
  55. package/dist/src/lib/voteWitnessTxBuilder.d.ts.map +1 -0
  56. package/dist/src/lib/voteWitnessTxBuilder.js +219 -0
  57. package/dist/src/lib/withdrawBuilder.d.ts +49 -0
  58. package/dist/src/lib/withdrawBuilder.d.ts.map +1 -0
  59. package/dist/src/lib/withdrawBuilder.js +167 -0
  60. package/dist/src/lib/withdrawExpireUnfreezeTxBuilder.d.ts +49 -0
  61. package/dist/src/lib/withdrawExpireUnfreezeTxBuilder.d.ts.map +1 -0
  62. package/dist/src/lib/withdrawExpireUnfreezeTxBuilder.js +167 -0
  63. package/dist/src/lib/wrappedBuilder.d.ts +58 -0
  64. package/dist/src/lib/wrappedBuilder.d.ts.map +1 -1
  65. package/dist/src/lib/wrappedBuilder.js +90 -2
  66. package/dist/src/register.d.ts +3 -0
  67. package/dist/src/register.d.ts.map +1 -0
  68. package/dist/src/register.js +15 -0
  69. package/dist/src/trx.d.ts +95 -15
  70. package/dist/src/trx.d.ts.map +1 -1
  71. package/dist/src/trx.js +395 -79
  72. package/dist/src/trxToken.d.ts +38 -0
  73. package/dist/src/trxToken.d.ts.map +1 -0
  74. package/dist/src/trxToken.js +91 -0
  75. package/package.json +17 -14
  76. package/resources/protobuf/Contract.proto +32 -0
  77. package/resources/protobuf/tron.d.ts +1478 -214
  78. package/resources/protobuf/tron.js +6312 -2600
  79. package/resources/protobuf/tron.proto +6 -0
package/dist/src/trx.d.ts CHANGED
@@ -1,8 +1,12 @@
1
- /// <reference types="node" />
2
1
  import { CoinFamily, BaseCoin as StaticsBaseCoin } from '@bitgo-beta/statics';
3
- import { BaseCoin, BitGoBase, KeyPair, ParsedTransaction, ParseTransactionOptions, SignedTransaction, SignTransactionOptions, TransactionExplanation, TransactionFee, TransactionPrebuild as BaseTransactionPrebuild, TransactionRecipient as Recipient, VerifyAddressOptions, VerifyTransactionOptions } from '@bitgo-beta/sdk-core';
2
+ import { BaseCoin, BitGoBase, KeyPair, ParsedTransaction, ParseTransactionOptions, SignedTransaction, SignTransactionOptions, TransactionExplanation, TransactionFee, TransactionPrebuild as BaseTransactionPrebuild, TransactionRecipient as Recipient, VerifyAddressOptions, VerifyTransactionOptions, BaseTransaction, MultisigType, AuditDecryptedKeyParams } from '@bitgo-beta/sdk-core';
4
3
  import { Interface } from './lib';
4
+ import { TransactionReceipt } from './lib/iface';
5
5
  export declare const MINIMUM_TRON_MSIG_TRANSACTION_FEE = 1000000;
6
+ export declare const SAFE_TRON_TRANSACTION_FEE: number;
7
+ export declare const SAFE_TRON_TOKEN_TRANSACTION_FEE: number;
8
+ export declare const RECOVER_TRANSACTION_EXPIRY = 86400000;
9
+ export declare const DEFAULT_SCAN_FACTOR = 20;
6
10
  export interface TronSignTransactionOptions extends SignTransactionOptions {
7
11
  txPrebuild: TransactionPrebuild;
8
12
  prv: string;
@@ -12,6 +16,11 @@ export interface TxInfo {
12
16
  from: string;
13
17
  txid: string;
14
18
  }
19
+ export interface AddressInfo {
20
+ address: string;
21
+ chain: number;
22
+ index: number;
23
+ }
15
24
  export interface TronTransactionExplanation extends TransactionExplanation {
16
25
  expiration: number;
17
26
  timestamp: number;
@@ -19,6 +28,7 @@ export interface TronTransactionExplanation extends TransactionExplanation {
19
28
  export interface TransactionPrebuild extends BaseTransactionPrebuild {
20
29
  txHex: string;
21
30
  txInfo: TxInfo;
31
+ addressInfo?: AddressInfo;
22
32
  feeInfo: TransactionFee;
23
33
  }
24
34
  export interface ExplainTransactionOptions {
@@ -34,11 +44,33 @@ export interface RecoveryOptions {
34
44
  bitgoKey: string;
35
45
  recoveryDestination: string;
36
46
  krsProvider?: string;
47
+ tokenContractAddress?: string;
37
48
  walletPassphrase?: string;
49
+ startingScanIndex?: number;
50
+ scan?: number;
51
+ }
52
+ export interface ConsolidationRecoveryOptions {
53
+ userKey: string;
54
+ backupKey: string;
55
+ bitgoKey: string;
56
+ tokenContractAddress?: string;
57
+ startingScanIndex?: number;
58
+ endingScanIndex?: number;
59
+ }
60
+ export interface ConsolidationRecoveryBatch {
61
+ transactions: RecoveryTransaction[];
62
+ }
63
+ export interface FeeInfo {
64
+ fee: string;
38
65
  }
39
66
  export interface RecoveryTransaction {
40
- tx: TransactionPrebuild;
41
- recoveryAmount: number;
67
+ txHex?: string;
68
+ feeInfo?: FeeInfo;
69
+ coin?: string;
70
+ tx?: TransactionPrebuild;
71
+ recoveryAmount?: number;
72
+ tokenTxs?: TransactionReceipt[];
73
+ addressInfo?: AddressInfo;
42
74
  }
43
75
  export declare enum NodeTypes {
44
76
  Full = 0,
@@ -48,14 +80,7 @@ export declare enum NodeTypes {
48
80
  * This structure is not a complete model of the AccountResponse from a node.
49
81
  */
50
82
  export interface AccountResponse {
51
- address: string;
52
- balance: number;
53
- owner_permission: {
54
- keys: [Interface.PermissionKey];
55
- };
56
- active_permission: [{
57
- keys: [Interface.PermissionKey];
58
- }];
83
+ data: [Interface.AccountInfo];
59
84
  }
60
85
  export declare class Trx extends BaseCoin {
61
86
  protected readonly _staticsCoin: Readonly<StaticsBaseCoin>;
@@ -66,14 +91,18 @@ export declare class Trx extends BaseCoin {
66
91
  getBaseFactor(): number;
67
92
  /** @inheritdoc */
68
93
  transactionDataAllowed(): boolean;
94
+ /** inherited doc */
95
+ getDefaultMultisigType(): MultisigType;
69
96
  static createInstance(bitgo: BitGoBase, staticsCoin?: Readonly<StaticsBaseCoin>): BaseCoin;
70
97
  /**
71
98
  * Flag for sending value of 0
72
99
  * @returns {boolean} True if okay to send 0 value, false otherwise
73
100
  */
74
101
  valuelessTransferAllowed(): boolean;
102
+ /** @inheritDoc */
103
+ allowsAccountConsolidations(): boolean;
75
104
  /**
76
- * Checks if this is a valid base58 or hex address
105
+ * Checks if this is a valid base58
77
106
  * @param address
78
107
  */
79
108
  isValidAddress(address: string): boolean;
@@ -94,13 +123,22 @@ export declare class Trx extends BaseCoin {
94
123
  parseTransaction(params: ParseTransactionOptions): Promise<ParsedTransaction>;
95
124
  isWalletAddress(params: VerifyAddressOptions): Promise<boolean>;
96
125
  verifyTransaction(params: VerifyTransactionOptions): Promise<boolean>;
126
+ /**
127
+ * Derive a user key using the chain path of the address
128
+ * @param key
129
+ * @param path
130
+ * @returns {string} derived private key
131
+ */
132
+ deriveKeyWithPath({ key, path }: {
133
+ key: string;
134
+ path: string;
135
+ }): string;
97
136
  /**
98
137
  * Assemble keychain and half-sign prebuilt transaction
99
138
  *
100
139
  * @param params
101
140
  * @param params.txPrebuild {Object} prebuild object returned by platform
102
141
  * @param params.prv {String} user prv
103
- * @param params.wallet.addressVersion {String} this is the version of the Algorand multisig address generation format
104
142
  * @returns Bluebird<SignedTransaction>
105
143
  */
106
144
  signTransaction(params: TronSignTransactionOptions): Promise<SignedTransaction>;
@@ -136,18 +174,25 @@ export declare class Trx extends BaseCoin {
136
174
  getExtraPrebuildParams(buildParams: any): Promise<any>;
137
175
  pubToHexAddress(pub: string): string;
138
176
  xprvToCompressedPrv(xprv: string): string;
177
+ private getNodeUrl;
139
178
  /**
140
179
  * Make a query to Trongrid for information such as balance, token balance, solidity calls
141
180
  * @param query {Object} key-value pairs of parameters to append after /api
142
181
  * @returns {Object} response from Trongrid
143
182
  */
144
183
  private recoveryPost;
184
+ /**
185
+ * Make a query to Trongrid for information such as balance, token balance, solidity calls
186
+ * @param query {Object} key-value pairs of parameters to append after /api
187
+ * @returns {Object} response from Trongrid
188
+ */
189
+ private recoveryGet;
145
190
  /**
146
191
  * Query our explorer for the balance of an address
147
192
  * @param address {String} the address encoded in hex
148
193
  * @returns {BigNumber} address balance
149
194
  */
150
- private getAccountFromNode;
195
+ private getAccountBalancesFromNode;
151
196
  /**
152
197
  * Retrieves our build transaction from a node.
153
198
  * @param toAddr hex-encoded address
@@ -155,6 +200,13 @@ export declare class Trx extends BaseCoin {
155
200
  * @param amount
156
201
  */
157
202
  private getBuildTransaction;
203
+ /**
204
+ * Retrieves our build transaction from a node.
205
+ * @param toAddr hex-encoded address
206
+ * @param fromAddr hex-encoded address
207
+ * @param amount
208
+ */
209
+ private getTriggerSmartContractTransaction;
158
210
  /**
159
211
  * Throws an error if any keys in the ownerKeys collection don't match the keys array we pass
160
212
  * @param ownerKeys
@@ -164,19 +216,47 @@ export declare class Trx extends BaseCoin {
164
216
  address: string;
165
217
  weight: number;
166
218
  }[], keys: string[]): void;
219
+ /**
220
+ * Format for offline vault signing
221
+ * @param {BaseTransaction} tx
222
+ * @param {number} fee
223
+ * @param {number} recoveryAmount
224
+ * @returns {RecoveryTransaction}
225
+ */
226
+ formatForOfflineVault(tx: BaseTransaction, fee: number, recoveryAmount: number, addressInfo?: AddressInfo): RecoveryTransaction;
167
227
  /**
168
228
  * Builds a funds recovery transaction without BitGo.
169
229
  * We need to do three queries during this:
170
230
  * 1) Node query - how much money is in the account
171
231
  * 2) Build transaction - build our transaction for the amount
172
232
  * 3) Send signed build - send our signed build to a public node
233
+ *
234
+ * Note 1: for base address recoveries, fund will be recovered to recovery destination if base address balance is
235
+ * more than 2.1 TRX for native TRX recovery and 100 TRX for token recover. For receive addresses, fund will be
236
+ * recovered to base address first then swept to base address(decided as the universal pattern in team meeting).
237
+ *
238
+ * Note 2: the function supports token sweep from base address.
239
+ * TODO: support token sweep from receive address.
240
+ *
173
241
  * @param params
174
242
  */
175
243
  recover(params: RecoveryOptions): Promise<RecoveryTransaction>;
244
+ /**
245
+ * Builds native TRX recoveries of receive addresses in batch without BitGo.
246
+ * Funds will be recovered to base address first. You need to initiate another sweep txn after that.
247
+ * Note: there will be another recoverTokenConsolidations function to support token recover from receive addresses.
248
+ *
249
+ * @param {ConsolidationRecoveryOptions} params - options for consolidation recovery.
250
+ * @param {string} [params.startingScanIndex] - receive address index to start scanning from. default to 1 (inclusive).
251
+ * @param {string} [params.endingScanIndex] - receive address index to end scanning at. default to startingScanIndex + 20 (exclusive).
252
+ */
253
+ recoverConsolidations(params: ConsolidationRecoveryOptions): Promise<ConsolidationRecoveryBatch>;
176
254
  /**
177
255
  * Explain a Tron transaction from txHex
178
256
  * @param params
179
257
  */
180
258
  explainTransaction(params: ExplainTransactionOptions): Promise<TronTransactionExplanation>;
259
+ /** @inheritDoc */
260
+ auditDecryptedKey(params: AuditDecryptedKeyParams): void;
181
261
  }
182
262
  //# sourceMappingURL=trx.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"trx.d.ts","sourceRoot":"","sources":["../../src/trx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"trx.d.ts","sourceRoot":"","sources":["../../src/trx.ts"],"names":[],"mappings":"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"}