@bitgo/sdk-coin-avaxp 0.2.0-dev.1 → 1.0.1-rc.2

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 (69) hide show
  1. package/CHANGELOG.md +218 -0
  2. package/README.md +39 -0
  3. package/dist/src/avaxp.d.ts +60 -0
  4. package/dist/src/avaxp.d.ts.map +1 -0
  5. package/dist/src/avaxp.js +175 -0
  6. package/dist/src/iface.d.ts +20 -41
  7. package/dist/src/iface.d.ts.map +1 -1
  8. package/dist/src/iface.js +1 -15
  9. package/dist/src/index.d.ts +4 -18
  10. package/dist/src/index.d.ts.map +1 -1
  11. package/dist/src/index.js +9 -28
  12. package/dist/src/{delegatorTxBuilder.d.ts → lib/delegatorTxBuilder.d.ts} +21 -6
  13. package/dist/src/lib/delegatorTxBuilder.d.ts.map +1 -0
  14. package/dist/src/lib/delegatorTxBuilder.js +240 -0
  15. package/dist/src/{errors.d.ts → lib/errors.d.ts} +0 -0
  16. package/dist/src/lib/errors.d.ts.map +1 -0
  17. package/dist/src/lib/errors.js +19 -0
  18. package/dist/src/lib/iface.d.ts +42 -0
  19. package/dist/src/lib/iface.d.ts.map +1 -0
  20. package/dist/src/lib/iface.js +12 -0
  21. package/dist/src/lib/index.d.ts +9 -0
  22. package/dist/src/lib/index.d.ts.map +1 -0
  23. package/dist/src/lib/index.js +29 -0
  24. package/dist/src/{keyPair.d.ts → lib/keyPair.d.ts} +13 -2
  25. package/dist/src/lib/keyPair.d.ts.map +1 -0
  26. package/dist/src/lib/keyPair.js +156 -0
  27. package/dist/src/lib/transaction.d.ts +73 -0
  28. package/dist/src/lib/transaction.d.ts.map +1 -0
  29. package/dist/src/lib/transaction.js +247 -0
  30. package/dist/src/{transactionBuilder.d.ts → lib/transactionBuilder.d.ts} +25 -22
  31. package/dist/src/lib/transactionBuilder.d.ts.map +1 -0
  32. package/dist/src/lib/transactionBuilder.js +181 -0
  33. package/dist/src/{transactionBuilderFactory.d.ts → lib/transactionBuilderFactory.d.ts} +3 -4
  34. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -0
  35. package/dist/src/lib/transactionBuilderFactory.js +50 -0
  36. package/dist/src/{transferBuilder.d.ts → lib/transferBuilder.d.ts} +0 -0
  37. package/dist/src/lib/transferBuilder.d.ts.map +1 -0
  38. package/dist/src/lib/transferBuilder.js +31 -0
  39. package/dist/src/lib/utils.d.ts +130 -0
  40. package/dist/src/lib/utils.d.ts.map +1 -0
  41. package/dist/src/lib/utils.js +257 -0
  42. package/dist/src/{validatorTxBuilder.d.ts → lib/validatorTxBuilder.d.ts} +11 -3
  43. package/dist/src/lib/validatorTxBuilder.d.ts.map +1 -0
  44. package/dist/src/lib/validatorTxBuilder.js +73 -0
  45. package/dist/src/tavaxp.d.ts +9 -0
  46. package/dist/src/tavaxp.d.ts.map +1 -0
  47. package/dist/src/tavaxp.js +14 -0
  48. package/dist/tsconfig.tsbuildinfo +973 -2827
  49. package/package.json +15 -10
  50. package/dist/src/delegatorTxBuilder.d.ts.map +0 -1
  51. package/dist/src/delegatorTxBuilder.js +0 -183
  52. package/dist/src/errors.d.ts.map +0 -1
  53. package/dist/src/errors.js +0 -19
  54. package/dist/src/keyPair.d.ts.map +0 -1
  55. package/dist/src/keyPair.js +0 -130
  56. package/dist/src/transaction.d.ts +0 -43
  57. package/dist/src/transaction.d.ts.map +0 -1
  58. package/dist/src/transaction.js +0 -98
  59. package/dist/src/transactionBuilder.d.ts.map +0 -1
  60. package/dist/src/transactionBuilder.js +0 -171
  61. package/dist/src/transactionBuilderFactory.d.ts.map +0 -1
  62. package/dist/src/transactionBuilderFactory.js +0 -53
  63. package/dist/src/transferBuilder.d.ts.map +0 -1
  64. package/dist/src/transferBuilder.js +0 -31
  65. package/dist/src/utils.d.ts +0 -50
  66. package/dist/src/utils.d.ts.map +0 -1
  67. package/dist/src/utils.js +0 -98
  68. package/dist/src/validatorTxBuilder.d.ts.map +0 -1
  69. package/dist/src/validatorTxBuilder.js +0 -58
@@ -0,0 +1,181 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TransactionBuilder = void 0;
7
+ const sdk_core_1 = require("@bitgo/sdk-core");
8
+ const transaction_1 = require("./transaction");
9
+ const keyPair_1 = require("./keyPair");
10
+ const avalanche_1 = require("avalanche");
11
+ const utils_1 = __importDefault(require("./utils"));
12
+ const platformvm_1 = require("avalanche/dist/apis/platformvm");
13
+ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
14
+ constructor(_coinConfig) {
15
+ super(_coinConfig);
16
+ this._signer = [];
17
+ this.recoverSigner = false;
18
+ this._transaction = new transaction_1.Transaction(_coinConfig);
19
+ }
20
+ /**
21
+ * When using recovery key must be set here
22
+ * TODO: STLX-17317 recovery key signing
23
+ * @param recoverSigner
24
+ */
25
+ recoverMode(recoverSigner = true) {
26
+ this.recoverSigner = recoverSigner;
27
+ return this;
28
+ }
29
+ /**
30
+ * commented out check until multisig signing is in effect
31
+ * TODO: STLX-17077
32
+ * @param value
33
+ */
34
+ threshold(value) {
35
+ this.validateThreshold(value);
36
+ this._transaction._threshold = value;
37
+ return this;
38
+ }
39
+ locktime(value) {
40
+ this.validateLocktime(new avalanche_1.BN(value));
41
+ this._transaction._locktime = new avalanche_1.BN(value);
42
+ return this;
43
+ }
44
+ fromPubKey(senderPubKey) {
45
+ const pubKeys = senderPubKey instanceof Array ? senderPubKey : [senderPubKey];
46
+ this._transaction._fromAddresses = pubKeys.map(utils_1.default.parseAddress);
47
+ return this;
48
+ }
49
+ utxos(value) {
50
+ this.validateUtxos(value);
51
+ this._transaction._utxos = value;
52
+ return this;
53
+ }
54
+ /**
55
+ *
56
+ * @param value Optional Buffer for the memo
57
+ * @returns value Buffer for the memo
58
+ * set using Buffer.from("message")
59
+ */
60
+ memo(value) {
61
+ this._transaction._memo = utils_1.default.stringToBuffer(value);
62
+ return this;
63
+ }
64
+ /**
65
+ * Initialize the transaction builder fields using the decoded transaction data
66
+ *
67
+ * @param {Transaction} tx the transaction data
68
+ */
69
+ initBuilder(tx) {
70
+ const baseTx = tx.getUnsignedTx().getTransaction();
71
+ if (baseTx.getNetworkID() !== this._transaction._networkID ||
72
+ !baseTx.getBlockchainID().equals(this._transaction._blockchainID)) {
73
+ throw new Error('Network or blockchain is not equals');
74
+ }
75
+ this._transaction._memo = baseTx.getMemo();
76
+ const out = baseTx.getOuts()[0];
77
+ if (!out.getAssetID().equals(this._transaction._assetId)) {
78
+ throw new Error('AssetID are not equals');
79
+ }
80
+ const secpOut = out.getOutput();
81
+ this._transaction._locktime = secpOut.getLocktime();
82
+ this._transaction._threshold = secpOut.getThreshold();
83
+ this._transaction._fromAddresses = secpOut.getAddresses();
84
+ this._transaction.setTransaction(tx);
85
+ return this;
86
+ }
87
+ /** @inheritdoc */
88
+ fromImplementation(rawTransaction) {
89
+ const tx = new platformvm_1.Tx();
90
+ tx.fromBuffer(avalanche_1.Buffer.from(rawTransaction, 'hex'));
91
+ this.initBuilder(tx);
92
+ return this.transaction;
93
+ }
94
+ get hasSigner() {
95
+ return this._signer !== undefined && this._signer.length > 0;
96
+ }
97
+ /** @inheritdoc */
98
+ async buildImplementation() {
99
+ this.buildAvaxpTransaction();
100
+ this.transaction.setTransactionType(this.transactionType);
101
+ if (this.hasSigner) {
102
+ this._signer.forEach((keyPair) => this.transaction.sign(keyPair));
103
+ }
104
+ return this.transaction;
105
+ }
106
+ // region Getters and Setters
107
+ /** @inheritdoc */
108
+ get transaction() {
109
+ return this._transaction;
110
+ }
111
+ set transaction(transaction) {
112
+ this._transaction = transaction;
113
+ }
114
+ signImplementation({ key }) {
115
+ this._signer.push(new keyPair_1.KeyPair({ prv: key }));
116
+ return this.transaction;
117
+ }
118
+ // endregion
119
+ // region Validators
120
+ /**
121
+ * Validates the threshold
122
+ * @param threshold
123
+ */
124
+ validateThreshold(threshold) {
125
+ if (!threshold || threshold !== 2) {
126
+ throw new sdk_core_1.BuildTransactionError('Invalid transaction: threshold must be set to 2');
127
+ }
128
+ }
129
+ /**
130
+ * Validates locktime
131
+ * @param locktime
132
+ */
133
+ validateLocktime(locktime) {
134
+ if (!locktime || locktime.lt(new avalanche_1.BN(0))) {
135
+ throw new sdk_core_1.BuildTransactionError('Invalid transaction: locktime must be 0 or higher');
136
+ }
137
+ }
138
+ /** @inheritdoc */
139
+ validateAddress(address, addressFormat) {
140
+ throw new sdk_core_1.NotImplementedError('validateAddress not implemented');
141
+ }
142
+ /** @inheritdoc */
143
+ validateKey({ key }) {
144
+ if (!new keyPair_1.KeyPair({ prv: key })) {
145
+ throw new sdk_core_1.BuildTransactionError('Invalid key');
146
+ }
147
+ }
148
+ /**
149
+ * Check the raw transaction has a valid format in the blockchain context, throw otherwise.
150
+ * It overrides abstract method from BaseTransactionBuilder
151
+ *
152
+ * @param rawTransaction Transaction in any format
153
+ */
154
+ validateRawTransaction(rawTransaction) {
155
+ utils_1.default.validateRawTransaction(rawTransaction);
156
+ }
157
+ /** @inheritdoc */
158
+ validateTransaction(transaction) {
159
+ // throw new NotImplementedError('validateTransaction not implemented');
160
+ }
161
+ /** @inheritdoc */
162
+ validateValue(value) {
163
+ if (value.isLessThan(0)) {
164
+ throw new sdk_core_1.BuildTransactionError('Value cannot be less than zero');
165
+ }
166
+ }
167
+ validateUtxos(values) {
168
+ if (values.length === 0) {
169
+ throw new sdk_core_1.BuildTransactionError("Utxos can't be empty array");
170
+ }
171
+ values.forEach(this.validateUtxo);
172
+ }
173
+ validateUtxo(value) {
174
+ ['outputID', 'amount', 'txid', 'outputidx'].forEach((field) => {
175
+ if (!value.hasOwnProperty(field))
176
+ throw new sdk_core_1.BuildTransactionError(`Utxos required ${field}`);
177
+ });
178
+ }
179
+ }
180
+ exports.TransactionBuilder = TransactionBuilder;
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsOENBUXlCO0FBQ3pCLCtDQUE0QztBQUM1Qyx1Q0FBb0M7QUFDcEMseUNBQXFEO0FBQ3JELG9EQUE0QjtBQUU1QiwrREFBb0Q7QUFFcEQsTUFBc0Isa0JBQW1CLFNBQVEsaUNBQXNCO0lBZXJFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBZGQsWUFBTyxHQUFjLEVBQUUsQ0FBQztRQUNyQixrQkFBYSxHQUFHLEtBQUssQ0FBQztRQWM5QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUkseUJBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBYkQ7Ozs7T0FJRztJQUNJLFdBQVcsQ0FBQyxhQUFhLEdBQUcsSUFBSTtRQUNyQyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFPRDs7OztPQUlHO0lBRUgsU0FBUyxDQUFDLEtBQWE7UUFDckIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlCLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUNyQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBc0I7UUFDN0IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksY0FBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLEdBQUcsSUFBSSxjQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsVUFBVSxDQUFDLFlBQStCO1FBQ3hDLE1BQU0sT0FBTyxH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O0lBQ0wsQ0FBQztDQUdGO0FBeE1ELGdEQXdNQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgQmlnTnVtYmVyIGZyb20gJ2JpZ251bWJlci5qcyc7XG5pbXBvcnQge1xuICBOb3RJbXBsZW1lbnRlZEVycm9yLFxuICBCYXNlQWRkcmVzcyxcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uQnVpbGRlcixcbiAgVHJhbnNhY3Rpb25UeXBlLFxuICBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsXG4gIEJhc2VUcmFuc2FjdGlvbixcbn0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCB7IEJOLCBCdWZmZXIgYXMgQnVmZmVyQXZheCB9IGZyb20gJ2F2YWxhbmNoZSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBEZWNvZGVkVXR4b09iaiB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgVHggfSBmcm9tICdhdmFsYW5jaGUvZGlzdC9hcGlzL3BsYXRmb3Jtdm0nO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyIGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjtcbiAgcHVibGljIF9zaWduZXI6IEtleVBhaXJbXSA9IFtdO1xuICBwcm90ZWN0ZWQgcmVjb3ZlclNpZ25lciA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGVuIHVzaW5nIHJlY292ZXJ5IGtleSBtdXN0IGJlIHNldCBoZXJlXG4gICAqIFRPRE86IFNUTFgtMTczMTcgcmVjb3Zlcnkga2V5IHNpZ25pbmdcbiAgICogQHBhcmFtIHJlY292ZXJTaWduZXJcbiAgICovXG4gIHB1YmxpYyByZWNvdmVyTW9kZShyZWNvdmVyU2lnbmVyID0gdHJ1ZSk6IHRoaXMge1xuICAgIHRoaXMucmVjb3ZlclNpZ25lciA9IHJlY292ZXJTaWduZXI7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSBuZXcgVHJhbnNhY3Rpb24oX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIGNvbW1lbnRlZCBvdXQgY2hlY2sgdW50aWwgbXVsdGlzaWcgc2lnbmluZyBpcyBpbiBlZmZlY3RcbiAgICogVE9ETzogU1RMWC0xNzA3N1xuICAgKiBAcGFyYW0gdmFsdWVcbiAgICovXG5cbiAgdGhyZXNob2xkKHZhbHVlOiBudW1iZXIpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlVGhyZXNob2xkKHZhbHVlKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5fdGhyZXNob2xkID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBsb2NrdGltZSh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZUxvY2t0aW1lKG5ldyBCTih2YWx1ZSkpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLl9sb2NrdGltZSA9IG5ldyBCTih2YWx1ZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBmcm9tUHViS2V5KHNlbmRlclB1YktleTogc3RyaW5nIHwgc3RyaW5nW10pOiB0aGlzIHtcbiAgICBjb25zdCBwdWJLZXlzID0gc2VuZGVyUHViS2V5IGluc3RhbmNlb2YgQXJyYXkgPyBzZW5kZXJQdWJLZXkgOiBbc2VuZGVyUHViS2V5XTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5fZnJvbUFkZHJlc3NlcyA9IHB1YktleXMubWFwKHV0aWxzLnBhcnNlQWRkcmVzcyk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICB1dHhvcyh2YWx1ZTogRGVjb2RlZFV0eG9PYmpbXSk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVVdHhvcyh2YWx1ZSk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uX3V0eG9zID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSBPcHRpb25hbCBCdWZmZXIgZm9yIHRoZSBtZW1vXG4gICAqIEByZXR1cm5zIHZhbHVlIEJ1ZmZlciBmb3IgdGhlIG1lbW9cbiAgICogc2V0IHVzaW5nIEJ1ZmZlci5mcm9tKFwibWVzc2FnZVwiKVxuICAgKi9cbiAgbWVtbyh2YWx1ZTogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uX21lbW8gPSB1dGlscy5zdHJpbmdUb0J1ZmZlcih2YWx1ZSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgdHJhbnNhY3Rpb24gYnVpbGRlciBmaWVsZHMgdXNpbmcgdGhlIGRlY29kZWQgdHJhbnNhY3Rpb24gZGF0YVxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9ufSB0eCB0aGUgdHJhbnNhY3Rpb24gZGF0YVxuICAgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFR4KTogdGhpcyB7XG4gICAgY29uc3QgYmFzZVR4ID0gdHguZ2V0VW5zaWduZWRUeCgpLmdldFRyYW5zYWN0aW9uKCk7XG4gICAgaWYgKFxuICAgICAgYmFzZVR4LmdldE5ldHdvcmtJRCgpICE9PSB0aGlzLl90cmFuc2FjdGlvbi5fbmV0d29ya0lEIHx8XG4gICAgICAhYmFzZVR4LmdldEJsb2NrY2hhaW5JRCgpLmVxdWFscyh0aGlzLl90cmFuc2FjdGlvbi5fYmxvY2tjaGFpbklEKVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdOZXR3b3JrIG9yIGJsb2NrY2hhaW4gaXMgbm90IGVxdWFscycpO1xuICAgIH1cbiAgICB0aGlzLl90cmFuc2FjdGlvbi5fbWVtbyA9IGJhc2VUeC5nZXRNZW1vKCk7XG4gICAgY29uc3Qgb3V0ID0gYmFzZVR4LmdldE91dHMoKVswXTtcbiAgICBpZiAoIW91dC5nZXRBc3NldElEKCkuZXF1YWxzKHRoaXMuX3RyYW5zYWN0aW9uLl9hc3NldElkKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBc3NldElEIGFyZSBub3QgZXF1YWxzJyk7XG4gICAgfVxuICAgIGNvbnN0IHNlY3BPdXQgPSBvdXQuZ2V0T3V0cHV0KCk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24uX2xvY2t0aW1lID0gc2VjcE91dC5nZXRMb2NrdGltZSgpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLl90aHJlc2hvbGQgPSBzZWNwT3V0LmdldFRocmVzaG9sZCgpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uLl9mcm9tQWRkcmVzc2VzID0gc2VjcE91dC5nZXRBZGRyZXNzZXMoKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvbih0eCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gbmV3IFR4KCk7XG4gICAgdHguZnJvbUJ1ZmZlcihCdWZmZXJBdmF4LmZyb20ocmF3VHJhbnNhY3Rpb24sICdoZXgnKSk7XG4gICAgdGhpcy5pbml0QnVpbGRlcih0eCk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICBnZXQgaGFzU2lnbmVyKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zaWduZXIgIT09IHVuZGVmaW5lZCAmJiB0aGlzLl9zaWduZXIubGVuZ3RoID4gMDtcbiAgfVxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIHRoaXMuYnVpbGRBdmF4cFRyYW5zYWN0aW9uKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvblR5cGUodGhpcy50cmFuc2FjdGlvblR5cGUpO1xuICAgIGlmICh0aGlzLmhhc1NpZ25lcikge1xuICAgICAgdGhpcy5fc2lnbmVyLmZvckVhY2goKGtleVBhaXIpID0+IHRoaXMudHJhbnNhY3Rpb24uc2lnbihrZXlQYWlyKSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkcyB0aGUgYXZheHAgdHJhbnNhY3Rpb24uIHRyYW5zYWN0aW9uIGZpZWxkIGlzIGNoYW5nZWQuXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgYnVpbGRBdmF4cFRyYW5zYWN0aW9uKCk6IHZvaWQ7XG5cbiAgLy8gcmVnaW9uIEdldHRlcnMgYW5kIFNldHRlcnNcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb24ge1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuICBwcm90ZWN0ZWQgc2V0IHRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbikge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHJhbnNhY3Rpb247XG4gIH1cblxuICBwcm90ZWN0ZWQgc2lnbkltcGxlbWVudGF0aW9uKHsga2V5IH06IEJhc2VLZXkpOiBCYXNlVHJhbnNhY3Rpb24ge1xuICAgIHRoaXMuX3NpZ25lci5wdXNoKG5ldyBLZXlQYWlyKHsgcHJ2OiBrZXkgfSkpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlO1xuXG4gIC8vIGVuZHJlZ2lvblxuXG4gIC8vIHJlZ2lvbiBWYWxpZGF0b3JzXG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyB0aGUgdGhyZXNob2xkXG4gICAqIEBwYXJhbSB0aHJlc2hvbGRcbiAgICovXG4gIHZhbGlkYXRlVGhyZXNob2xkKHRocmVzaG9sZDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKCF0aHJlc2hvbGQgfHwgdGhyZXNob2xkICE9PSAyKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uOiB0aHJlc2hvbGQgbXVzdCBiZSBzZXQgdG8gMicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgbG9ja3RpbWVcbiAgICogQHBhcmFtIGxvY2t0aW1lXG4gICAqL1xuICB2YWxpZGF0ZUxvY2t0aW1lKGxvY2t0aW1lOiBCTik6IHZvaWQge1xuICAgIGlmICghbG9ja3RpbWUgfHwgbG9ja3RpbWUubHQobmV3IEJOKDApKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbjogbG9ja3RpbWUgbXVzdCBiZSAwIG9yIGhpZ2hlcicpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcigndmFsaWRhdGVBZGRyZXNzIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlS2V5KHsga2V5IH06IEJhc2VLZXkpOiB2b2lkIHtcbiAgICBpZiAoIW5ldyBLZXlQYWlyKHsgcHJ2OiBrZXkgfSkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQga2V5Jyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSByYXcgdHJhbnNhY3Rpb24gaGFzIGEgdmFsaWQgZm9ybWF0IGluIHRoZSBibG9ja2NoYWluIGNvbnRleHQsIHRocm93IG90aGVyd2lzZS5cbiAgICogSXQgb3ZlcnJpZGVzIGFic3RyYWN0IG1ldGhvZCBmcm9tIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJcbiAgICpcbiAgICogQHBhcmFtIHJhd1RyYW5zYWN0aW9uIFRyYW5zYWN0aW9uIGluIGFueSBmb3JtYXRcbiAgICovXG4gIHZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IHZvaWQge1xuICAgIHV0aWxzLnZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlVHJhbnNhY3Rpb24odHJhbnNhY3Rpb24/OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIC8vIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCd2YWxpZGF0ZVRyYW5zYWN0aW9uIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlVmFsdWUodmFsdWU6IEJpZ051bWJlcik6IHZvaWQge1xuICAgIGlmICh2YWx1ZS5pc0xlc3NUaGFuKDApKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdWYWx1ZSBjYW5ub3QgYmUgbGVzcyB0aGFuIHplcm8nKTtcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZVV0eG9zKHZhbHVlczogRGVjb2RlZFV0eG9PYmpbXSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKFwiVXR4b3MgY2FuJ3QgYmUgZW1wdHkgYXJyYXlcIik7XG4gICAgfVxuICAgIHZhbHVlcy5mb3JFYWNoKHRoaXMudmFsaWRhdGVVdHhvKTtcbiAgfVxuXG4gIHZhbGlkYXRlVXR4byh2YWx1ZTogRGVjb2RlZFV0eG9PYmopOiB2b2lkIHtcbiAgICBbJ291dHB1dElEJywgJ2Ftb3VudCcsICd0eGlkJywgJ291dHB1dGlkeCddLmZvckVhY2goKGZpZWxkKSA9PiB7XG4gICAgICBpZiAoIXZhbHVlLmhhc093blByb3BlcnR5KGZpZWxkKSkgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihgVXR4b3MgcmVxdWlyZWQgJHtmaWVsZH1gKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIGVuZHJlZ2lvblxufVxuIl19
@@ -1,22 +1,21 @@
1
1
  import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
2
  import { BaseTransactionBuilderFactory } from '@bitgo/sdk-core';
3
3
  import { TransactionBuilder } from './transactionBuilder';
4
- import { TransferBuilder } from './transferBuilder';
5
4
  import { ValidatorTxBuilder } from './validatorTxBuilder';
6
- import { BaseTx } from 'avalanche/dist/apis/platformvm';
7
5
  export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
6
+ protected recoverSigner: boolean;
8
7
  constructor(_coinConfig: Readonly<CoinConfig>);
9
8
  /** @inheritdoc */
10
9
  from(raw: string): TransactionBuilder;
11
10
  /** @inheritdoc */
12
- getTransferBuilder(tx?: BaseTx): TransferBuilder;
11
+ getTransferBuilder(): TransactionBuilder;
13
12
  /**
14
13
  * Initialize Validator builder
15
14
  *
16
15
  * @param {Transaction | undefined} tx - the transaction used to initialize the builder
17
16
  * @returns {StakingTxBuilder} the builder initialized
18
17
  */
19
- getValidatorBuilder(tx?: BaseTx): ValidatorTxBuilder;
18
+ getValidatorBuilder(): ValidatorTxBuilder;
20
19
  getWalletInitializationBuilder(): TransactionBuilder;
21
20
  }
22
21
  //# sourceMappingURL=transactionBuilderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAgB,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAK1D,qBAAa,yBAA0B,SAAQ,6BAA6B;IAC1E,SAAS,CAAC,aAAa,UAAS;gBACpB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB;IAcrC,kBAAkB;IAClB,kBAAkB,IAAI,kBAAkB;IAIxC;;;;;OAKG;IACH,mBAAmB,IAAI,kBAAkB;IAIzC,8BAA8B,IAAI,kBAAkB;CAGrD"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TransactionBuilderFactory = void 0;
7
+ const sdk_core_1 = require("@bitgo/sdk-core");
8
+ const validatorTxBuilder_1 = require("./validatorTxBuilder");
9
+ const platformvm_1 = require("avalanche/dist/apis/platformvm");
10
+ const avalanche_1 = require("avalanche");
11
+ const utils_1 = __importDefault(require("./utils"));
12
+ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
13
+ constructor(_coinConfig) {
14
+ super(_coinConfig);
15
+ this.recoverSigner = false;
16
+ }
17
+ /** @inheritdoc */
18
+ from(raw) {
19
+ utils_1.default.validateRawTransaction(raw);
20
+ const tx = new platformvm_1.Tx();
21
+ tx.fromBuffer(avalanche_1.Buffer.from(raw, 'hex'));
22
+ let transactionBuilder;
23
+ if (validatorTxBuilder_1.ValidatorTxBuilder.verifyTxType(tx.getUnsignedTx().getTransaction())) {
24
+ transactionBuilder = this.getValidatorBuilder();
25
+ }
26
+ else {
27
+ throw new sdk_core_1.NotSupported('Transaction cannot be parsed or has an unsupported transaction type');
28
+ }
29
+ transactionBuilder.initBuilder(tx);
30
+ return transactionBuilder;
31
+ }
32
+ /** @inheritdoc */
33
+ getTransferBuilder() {
34
+ throw new sdk_core_1.NotSupported('Transfer is not supported in P Chain');
35
+ }
36
+ /**
37
+ * Initialize Validator builder
38
+ *
39
+ * @param {Transaction | undefined} tx - the transaction used to initialize the builder
40
+ * @returns {StakingTxBuilder} the builder initialized
41
+ */
42
+ getValidatorBuilder() {
43
+ return new validatorTxBuilder_1.ValidatorTxBuilder(this._coinConfig);
44
+ }
45
+ getWalletInitializationBuilder() {
46
+ throw new sdk_core_1.NotSupported('Wallet initialization is not needed');
47
+ }
48
+ }
49
+ exports.TransactionBuilderFactory = TransactionBuilderFactory;
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSw4Q0FBOEU7QUFFOUUsNkRBQTBEO0FBQzFELCtEQUFvRDtBQUNwRCx5Q0FBaUQ7QUFDakQsb0RBQTRCO0FBRTVCLE1BQWEseUJBQTBCLFNBQVEsd0NBQTZCO0lBRTFFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRlgsa0JBQWEsR0FBRyxLQUFLLENBQUM7SUFHaEMsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixJQUFJLENBQUMsR0FBVztRQUNkLGVBQUssQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsQyxNQUFNLEVBQUUsR0FBRyxJQUFJLGVBQUUsRUFBRSxDQUFDO1FBQ3BCLEVBQUUsQ0FBQyxVQUFVLENBQUMsa0JBQVUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDM0MsSUFBSSxrQkFBc0MsQ0FBQztRQUMzQyxJQUFJLHVDQUFrQixDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUMsRUFBRTtZQUN4RSxrQkFBa0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztTQUNqRDthQUFNO1lBQ0wsTUFBTSxJQUFJLHVCQUFZLENBQUMscUVBQXFFLENBQUMsQ0FBQztTQUMvRjtRQUNELGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNuQyxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsa0JBQWtCO1FBQ2hCLE1BQU0sSUFBSSx1QkFBWSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsbUJBQW1CO1FBQ2pCLE9BQU8sSUFBSSx1Q0FBa0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVELDhCQUE4QjtRQUM1QixNQUFNLElBQUksdUJBQVksQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7Q0FDRjtBQXZDRCw4REF1Q0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksIE5vdFN1cHBvcnRlZCB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBWYWxpZGF0b3JUeEJ1aWxkZXIgfSBmcm9tICcuL3ZhbGlkYXRvclR4QnVpbGRlcic7XG5pbXBvcnQgeyBUeCB9IGZyb20gJ2F2YWxhbmNoZS9kaXN0L2FwaXMvcGxhdGZvcm12bSc7XG5pbXBvcnQgeyBCdWZmZXIgYXMgQnVmZmVyQXZheCB9IGZyb20gJ2F2YWxhbmNoZSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnkge1xuICBwcm90ZWN0ZWQgcmVjb3ZlclNpZ25lciA9IGZhbHNlO1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZnJvbShyYXc6IHN0cmluZyk6IFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gICAgdXRpbHMudmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXcpO1xuICAgIGNvbnN0IHR4ID0gbmV3IFR4KCk7XG4gICAgdHguZnJvbUJ1ZmZlcihCdWZmZXJBdmF4LmZyb20ocmF3LCAnaGV4JykpO1xuICAgIGxldCB0cmFuc2FjdGlvbkJ1aWxkZXI6IFRyYW5zYWN0aW9uQnVpbGRlcjtcbiAgICBpZiAoVmFsaWRhdG9yVHhCdWlsZGVyLnZlcmlmeVR4VHlwZSh0eC5nZXRVbnNpZ25lZFR4KCkuZ2V0VHJhbnNhY3Rpb24oKSkpIHtcbiAgICAgIHRyYW5zYWN0aW9uQnVpbGRlciA9IHRoaXMuZ2V0VmFsaWRhdG9yQnVpbGRlcigpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKCdUcmFuc2FjdGlvbiBjYW5ub3QgYmUgcGFyc2VkIG9yIGhhcyBhbiB1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG4gICAgfVxuICAgIHRyYW5zYWN0aW9uQnVpbGRlci5pbml0QnVpbGRlcih0eCk7XG4gICAgcmV0dXJuIHRyYW5zYWN0aW9uQnVpbGRlcjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRUcmFuc2ZlckJ1aWxkZXIoKTogVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKCdUcmFuc2ZlciBpcyBub3Qgc3VwcG9ydGVkIGluIFAgQ2hhaW4nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIFZhbGlkYXRvciBidWlsZGVyXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb24gfCB1bmRlZmluZWR9IHR4IC0gdGhlIHRyYW5zYWN0aW9uIHVzZWQgdG8gaW5pdGlhbGl6ZSB0aGUgYnVpbGRlclxuICAgKiBAcmV0dXJucyB7U3Rha2luZ1R4QnVpbGRlcn0gdGhlIGJ1aWxkZXIgaW5pdGlhbGl6ZWRcbiAgICovXG4gIGdldFZhbGlkYXRvckJ1aWxkZXIoKTogVmFsaWRhdG9yVHhCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IFZhbGlkYXRvclR4QnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWQoJ1dhbGxldCBpbml0aWFsaXphdGlvbiBpcyBub3QgbmVlZGVkJyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAuB,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAExD,qBAAa,eAAgB,SAAQ,kBAAkB;gBACzC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,SAAS,CAAC,qBAAqB,IAAI,MAAM;IAIzC,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAI3D,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAIjE,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW;CAGxD"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TransferBuilder = void 0;
4
+ const sdk_core_1 = require("@bitgo/sdk-core");
5
+ const transactionBuilder_1 = require("./transactionBuilder");
6
+ class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
7
+ constructor(_coinConfig) {
8
+ super(_coinConfig);
9
+ }
10
+ get transactionType() {
11
+ return sdk_core_1.TransactionType.WalletInitialization;
12
+ }
13
+ /** @inheritdoc */
14
+ buildAvaxpTransaction() {
15
+ throw new sdk_core_1.NotImplementedError('buildImplementation not implemented');
16
+ }
17
+ /** @inheritdoc */
18
+ async buildImplementation() {
19
+ throw new sdk_core_1.NotImplementedError('buildImplementation not implemented');
20
+ }
21
+ /** @inheritdoc */
22
+ fromImplementation(rawTransaction) {
23
+ throw new sdk_core_1.NotImplementedError('fromImplementation not implemented');
24
+ }
25
+ /** @inheritdoc */
26
+ signImplementation(key) {
27
+ throw new sdk_core_1.NotImplementedError('signImplementation not implemented');
28
+ }
29
+ }
30
+ exports.TransferBuilder = TransferBuilder;
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsOENBQWdGO0FBQ2hGLDZEQUEwRDtBQUkxRCxNQUFhLGVBQWdCLFNBQVEsdUNBQWtCO0lBQ3JELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLG9CQUFvQixDQUFDO0lBQzlDLENBQUM7SUFFRCxrQkFBa0I7SUFDUixxQkFBcUI7UUFDN0IsTUFBTSxJQUFJLDhCQUFtQixDQUFDLHFDQUFxQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELGtCQUFrQjtJQUNSLEtBQUssQ0FBQyxtQkFBbUI7UUFDakMsTUFBTSxJQUFJLDhCQUFtQixDQUFDLHFDQUFxQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELGtCQUFrQjtJQUNSLGtCQUFrQixDQUFDLGNBQXNCO1FBQ2pELE1BQU0sSUFBSSw4QkFBbUIsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxrQkFBa0I7SUFDUixrQkFBa0IsQ0FBQyxHQUFZO1FBQ3ZDLE1BQU0sSUFBSSw4QkFBbUIsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7Q0FDRjtBQTVCRCwwQ0E0QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZUtleSwgTm90SW1wbGVtZW50ZWRFcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBCYXNlVHggfSBmcm9tICdhdmFsYW5jaGUvZGlzdC9hcGlzL3BsYXRmb3Jtdm0nO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNmZXJCdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLldhbGxldEluaXRpYWxpemF0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBidWlsZEF2YXhwVHJhbnNhY3Rpb24oKTogQmFzZVR4IHtcbiAgICB0aHJvdyBuZXcgTm90SW1wbGVtZW50ZWRFcnJvcignYnVpbGRJbXBsZW1lbnRhdGlvbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFRyYW5zYWN0aW9uPiB7XG4gICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoJ2J1aWxkSW1wbGVtZW50YXRpb24gbm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIHRocm93IG5ldyBOb3RJbXBsZW1lbnRlZEVycm9yKCdmcm9tSW1wbGVtZW50YXRpb24gbm90IGltcGxlbWVudGVkJyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIHNpZ25JbXBsZW1lbnRhdGlvbihrZXk6IEJhc2VLZXkpOiBUcmFuc2FjdGlvbiB7XG4gICAgdGhyb3cgbmV3IE5vdEltcGxlbWVudGVkRXJyb3IoJ3NpZ25JbXBsZW1lbnRhdGlvbiBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,130 @@
1
+ /// <reference types="node" />
2
+ import { BaseUtils } from '@bitgo/sdk-core';
3
+ import { Buffer as BufferAvax } from 'avalanche';
4
+ import { NodeIDStringToBuffer } from 'avalanche/dist/utils';
5
+ import { BaseTx, Tx } from 'avalanche/dist/apis/platformvm';
6
+ import { Credential } from 'avalanche/dist/common/credentials';
7
+ import { AvalancheNetwork } from '@bitgo/statics';
8
+ import { Signature } from 'avalanche/dist/common';
9
+ export declare class Utils implements BaseUtils {
10
+ private binTools;
11
+ cb58Decode: (bytes: string | BufferAvax) => BufferAvax;
12
+ cb58Encode: (bytes: BufferAvax) => string;
13
+ stringToBuffer: (str: string) => BufferAvax;
14
+ bufferToString: (buff: BufferAvax) => string;
15
+ NodeIDStringToBuffer: typeof NodeIDStringToBuffer;
16
+ addressToString: (hrp: string, chainid: string, bytes: BufferAvax) => string;
17
+ includeIn(walletAddresses: string[], otxoOutputAddresses: string[]): boolean;
18
+ /**
19
+ * Checks if it is a valid address no illegal characters
20
+ *
21
+ * @param {string} address - address to be validated
22
+ * @returns {boolean} - the validation result
23
+ */
24
+ /** @inheritdoc */
25
+ isValidAddress(address: string): boolean;
26
+ /**
27
+ * Checks if it is a valid blockId with length 66 including 0x
28
+ *
29
+ * @param {string} hash - blockId to be validated
30
+ * @returns {boolean} - the validation result
31
+ */
32
+ /** @inheritdoc */
33
+ isValidBlockId(hash: string): boolean;
34
+ /**
35
+ * Checks if the string is a valid protocol public key or
36
+ * extended public key.
37
+ *
38
+ * @param {string} pub - the public key to be validated
39
+ * @returns {boolean} - the validation result
40
+ */
41
+ isValidPublicKey(pub: string): boolean;
42
+ parseAddress: (pub: string) => BufferAvax;
43
+ /**
44
+ * Returns whether or not the string is a valid protocol private key, or extended
45
+ * private key.
46
+ *
47
+ * The protocol key format is described in the @stacks/transactions npm package, in the
48
+ * createStacksPrivateKey function:
49
+ * https://github.com/blockstack/stacks.js/blob/master/packages/transactions/src/keys.ts#L125
50
+ *
51
+ * @param {string} prv - the private key (or extended private key) to be validated
52
+ * @returns {boolean} - the validation result
53
+ */
54
+ isValidPrivateKey(prv: string): boolean;
55
+ /**
56
+ * Returns whether or not the string is a composed of hex chars only
57
+ *
58
+ * @param {string} maybe - the string to be validated
59
+ * @returns {boolean} - the validation result
60
+ */
61
+ allHexChars(maybe: string): boolean;
62
+ /** @inheritdoc */
63
+ isValidSignature(signature: string): boolean;
64
+ /** @inheritdoc */
65
+ isValidTransactionId(txId: string): boolean;
66
+ getCredentials(tx: BaseTx): Credential[];
67
+ from(raw: string): Tx;
68
+ /**
69
+ * Avaxp wrapper to create signature and return it for credentials using Avalanche's buffer
70
+ * @param network
71
+ * @param message
72
+ * @param prv
73
+ * @return signature
74
+ */
75
+ createSignatureAvaxBuffer(network: AvalancheNetwork, message: BufferAvax, prv: BufferAvax): BufferAvax;
76
+ /**
77
+ * Avaxp wrapper to create signature and return it for credentials
78
+ * @param network
79
+ * @param message
80
+ * @param prv
81
+ * @return signature
82
+ */
83
+ createSignature(network: AvalancheNetwork, message: Buffer, prv: Buffer): Buffer;
84
+ /**
85
+ * Avaxp wrapper to verify signature using Avalanche's buffer
86
+ * @param network
87
+ * @param message
88
+ * @param signature
89
+ * @param prv
90
+ * @return true if it's verify successful
91
+ */
92
+ verifySignatureAvaxBuffer(network: AvalancheNetwork, message: BufferAvax, signature: BufferAvax, prv: BufferAvax): boolean;
93
+ /**
94
+ * Avaxp wrapper to verify signature
95
+ * @param network
96
+ * @param message
97
+ * @param signature
98
+ * @param prv
99
+ * @return true if it's verify successful
100
+ */
101
+ verifySignature(network: AvalancheNetwork, message: Buffer, signature: Buffer, prv: Buffer): boolean;
102
+ createSig(sigHex: string): Signature;
103
+ /**
104
+ * Avaxp wrapper to recovery signature using Avalanche's buffer
105
+ * @param network
106
+ * @param message
107
+ * @param signature
108
+ * @return
109
+ */
110
+ recoverySignatureAvaxBuffer(network: AvalancheNetwork, message: BufferAvax, signature: BufferAvax): BufferAvax;
111
+ /**
112
+ * Avaxp wrapper to verify signature
113
+ * @param network
114
+ * @param message
115
+ * @param signature
116
+ * @return true if it's verify successful
117
+ */
118
+ recoverySignature(network: AvalancheNetwork, message: Buffer, signature: Buffer): Buffer;
119
+ sha256(buf: Uint8Array): Buffer;
120
+ /**
121
+ * Check the raw transaction has a valid format in the blockchain context, throw otherwise.
122
+ * It's to reuse in TransactionBuilder and TransactionBuilderFactory
123
+ *
124
+ * @param rawTransaction Transaction as hex string
125
+ */
126
+ validateRawTransaction(rawTransaction: string): void;
127
+ }
128
+ declare const utils: Utils;
129
+ export default utils;
130
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":";AAAA,OAAO,EAIL,SAAS,EAGV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAY,MAAM,IAAI,UAAU,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,EAAE,MAAM,EAAyB,EAAE,EAAc,MAAM,gCAAgC,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAE/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAGlD,qBAAa,KAAM,YAAW,SAAS;IACrC,OAAO,CAAC,QAAQ,CAA0B;IACnC,UAAU,6CAA4B;IACtC,UAAU,gCAA4B;IACtC,cAAc,8BAAgC;IAC9C,cAAc,+BAAgC;IAC9C,oBAAoB,8BAAwB;IAC5C,eAAe,8DAAiC;IAEhD,SAAS,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAAE,MAAM,EAAE,GAAG,OAAO;IAInF;;;;;OAKG;IACH,kBAAkB;IAClB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC;;;;;OAKG;IACH,kBAAkB;IAClB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAOrC;;;;;;OAMG;IACH,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAmC/B,YAAY,QAAS,MAAM,KAAG,UAAU,CAAyC;IAExF;;;;;;;;;;OAUG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAUvC;;;;;OAKG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAInC,kBAAkB;IAClB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI5C,kBAAkB;IAClB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,EAAE;IAIxC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,EAAE;IAYrB;;;;;;OAMG;IACH,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,UAAU;IAMtG;;;;;;OAMG;IACH,eAAe,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAIhF;;;;;;;OAOG;IACH,yBAAyB,CACvB,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,UAAU,GACd,OAAO;IAMV;;;;;;;OAOG;IACH,eAAe,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO;IASpG,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS;IAMpC;;;;;;OAMG;IACH,2BAA2B,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU;IAK9G;;;;;;OAMG;IACH,iBAAiB,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAIxF,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM;IAI/B;;;;;OAKG;IACH,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;CAQrD;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAE1B,eAAe,KAAK,CAAC"}