@bitgo-beta/sdk-coin-canton 1.0.1-beta.24 → 1.0.1-beta.240

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 (89) hide show
  1. package/dist/resources/hash/hash.js +3 -2
  2. package/dist/resources/proto/damlTransaction.js +4 -4
  3. package/dist/resources/proto/damlTransactionNode.js +3 -3
  4. package/dist/resources/proto/damlTransactionNodeSeed.js +2 -2
  5. package/dist/resources/proto/metadata/metadataGlobalKeyMappingEntry.js +4 -4
  6. package/dist/resources/proto/metadata/metadataInputContract.js +3 -3
  7. package/dist/resources/proto/metadata/metadataSubmitterInfo.js +2 -2
  8. package/dist/resources/proto/metadata.js +5 -5
  9. package/dist/resources/proto/node/empty.js +2 -2
  10. package/dist/resources/proto/node/globalKey.js +4 -4
  11. package/dist/resources/proto/node/identifier.js +2 -2
  12. package/dist/resources/proto/node/node.js +16 -8
  13. package/dist/resources/proto/node/timestamp.js +3 -3
  14. package/dist/resources/proto/node/value.js +28 -14
  15. package/dist/resources/proto/preparedTransaction.js +4 -4
  16. package/dist/src/canton.d.ts +18 -2
  17. package/dist/src/canton.d.ts.map +1 -1
  18. package/dist/src/canton.js +107 -6
  19. package/dist/src/index.d.ts +1 -0
  20. package/dist/src/index.d.ts.map +1 -1
  21. package/dist/src/index.js +2 -1
  22. package/dist/src/lib/constant.d.ts +4 -0
  23. package/dist/src/lib/constant.d.ts.map +1 -1
  24. package/dist/src/lib/constant.js +6 -2
  25. package/dist/src/lib/iface.d.ts +77 -20
  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 +7 -0
  29. package/dist/src/lib/index.d.ts.map +1 -1
  30. package/dist/src/lib/index.js +16 -2
  31. package/dist/src/lib/oneStepPreApprovalBuilder.d.ts +7 -41
  32. package/dist/src/lib/oneStepPreApprovalBuilder.d.ts.map +1 -1
  33. package/dist/src/lib/oneStepPreApprovalBuilder.js +18 -82
  34. package/dist/src/lib/transaction/transaction.d.ts +13 -2
  35. package/dist/src/lib/transaction/transaction.d.ts.map +1 -1
  36. package/dist/src/lib/transaction/transaction.js +178 -9
  37. package/dist/src/lib/transactionBuilder.d.ts +4 -4
  38. package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
  39. package/dist/src/lib/transactionBuilder.js +1 -5
  40. package/dist/src/lib/transactionBuilderFactory.d.ts +17 -3
  41. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  42. package/dist/src/lib/transactionBuilderFactory.js +63 -6
  43. package/dist/src/lib/transferAcceptanceBuilder.d.ts +59 -0
  44. package/dist/src/lib/transferAcceptanceBuilder.d.ts.map +1 -0
  45. package/dist/src/lib/transferAcceptanceBuilder.js +116 -0
  46. package/dist/src/lib/transferAcknowledgeBuilder.d.ts +72 -0
  47. package/dist/src/lib/transferAcknowledgeBuilder.d.ts.map +1 -0
  48. package/dist/src/lib/transferAcknowledgeBuilder.js +133 -0
  49. package/dist/src/lib/transferBuilder.d.ts +79 -3
  50. package/dist/src/lib/transferBuilder.d.ts.map +1 -1
  51. package/dist/src/lib/transferBuilder.js +153 -1
  52. package/dist/src/lib/transferRejectionBuilder.d.ts +59 -0
  53. package/dist/src/lib/transferRejectionBuilder.d.ts.map +1 -0
  54. package/dist/src/lib/transferRejectionBuilder.js +116 -0
  55. package/dist/src/lib/utils.d.ts +22 -2
  56. package/dist/src/lib/utils.d.ts.map +1 -1
  57. package/dist/src/lib/utils.js +148 -28
  58. package/dist/src/lib/walletInitBuilder.d.ts +5 -10
  59. package/dist/src/lib/walletInitBuilder.d.ts.map +1 -1
  60. package/dist/src/lib/walletInitBuilder.js +13 -18
  61. package/dist/src/lib/walletInitialization/walletInitTransaction.d.ts +2 -1
  62. package/dist/src/lib/walletInitialization/walletInitTransaction.d.ts.map +1 -1
  63. package/dist/src/lib/walletInitialization/walletInitTransaction.js +46 -5
  64. package/dist/test/helper.d.ts +3 -0
  65. package/dist/test/helper.d.ts.map +1 -0
  66. package/dist/test/helper.js +9 -0
  67. package/dist/test/integration/canton.integration.d.ts +2 -0
  68. package/dist/test/integration/canton.integration.d.ts.map +1 -0
  69. package/dist/test/integration/canton.integration.js +157 -0
  70. package/dist/test/resources.d.ts +78 -7
  71. package/dist/test/resources.d.ts.map +1 -1
  72. package/dist/test/resources.js +83 -10
  73. package/dist/test/unit/builder/oneStepEnablement/oneStepEnablementBuilder.js +14 -29
  74. package/dist/test/unit/builder/transfer/transferBuilder.d.ts +2 -0
  75. package/dist/test/unit/builder/transfer/transferBuilder.d.ts.map +1 -0
  76. package/dist/test/unit/builder/transfer/transferBuilder.js +63 -0
  77. package/dist/test/unit/builder/transferAccept/transferAcceptBuilder.d.ts +2 -0
  78. package/dist/test/unit/builder/transferAccept/transferAcceptBuilder.d.ts.map +1 -0
  79. package/dist/test/unit/builder/transferAccept/transferAcceptBuilder.js +57 -0
  80. package/dist/test/unit/builder/transferAcknowledge/transferAcknowledgeBuilder.d.ts +2 -0
  81. package/dist/test/unit/builder/transferAcknowledge/transferAcknowledgeBuilder.d.ts.map +1 -0
  82. package/dist/test/unit/builder/transferAcknowledge/transferAcknowledgeBuilder.js +32 -0
  83. package/dist/test/unit/builder/transferReject/transferRejectBuilder.d.ts +2 -0
  84. package/dist/test/unit/builder/transferReject/transferRejectBuilder.d.ts.map +1 -0
  85. package/dist/test/unit/builder/transferReject/transferRejectBuilder.js +57 -0
  86. package/dist/test/unit/builder/walletInit/walletInitBuilder.js +10 -13
  87. package/dist/test/unit/utils.js +101 -3
  88. package/dist/tsconfig.tsbuildinfo +1 -1
  89. package/package.json +24 -7
@@ -1 +1 @@
1
- {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAC;AAEvD,qBAAa,eAAgB,SAAQ,kBAAkB;gBACzC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,cAAc,CAAC,WAAW,EAAE,4BAA4B,GAAG,IAAI;CAGhE"}
1
+ {"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAG9E,qBAAa,eAAgB,SAAQ,kBAAkB;IACrD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,OAAO,CAAS;gBACZ,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAKlC,IAAI,eAAe,IAAI,eAAe,CAErC;IAED,kBAAkB,IAAI,IAAI;IAI1B,cAAc,CAAC,WAAW,EAAE,4BAA4B,GAAG,IAAI;IAI/D,kBAAkB;IAClB,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAU3D;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAU3B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ1B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ5B;;;;;OAKG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ5B;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI;IAKhC;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAQhC;;;;;OAKG;IACH,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQxB;;;;OAIG;IACH,eAAe,IAAI,qBAAqB;IAgBxC;;;;OAIG;IACH,OAAO,CAAC,QAAQ;CAOjB"}
@@ -1,18 +1,170 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.TransferBuilder = void 0;
4
7
  const sdk_core_1 = require("@bitgo-beta/sdk-core");
5
8
  const transactionBuilder_1 = require("./transactionBuilder");
9
+ const utils_1 = __importDefault(require("./utils"));
6
10
  class TransferBuilder extends transactionBuilder_1.TransactionBuilder {
7
11
  constructor(_coinConfig) {
8
12
  super(_coinConfig);
13
+ this._sendOneStep = false;
14
+ }
15
+ initBuilder(tx) {
16
+ super.initBuilder(tx);
17
+ this.setTransactionType();
9
18
  }
10
19
  get transactionType() {
11
20
  return sdk_core_1.TransactionType.Send;
12
21
  }
22
+ setTransactionType() {
23
+ this.transaction.transactionType = sdk_core_1.TransactionType.Send;
24
+ }
13
25
  setTransaction(transaction) {
14
26
  this.transaction.prepareCommand = transaction;
15
27
  }
28
+ /** @inheritDoc */
29
+ addSignature(publicKey, signature) {
30
+ if (!this.transaction) {
31
+ throw new sdk_core_1.InvalidTransactionError('transaction is empty!');
32
+ }
33
+ this._signatures.push({ publicKey, signature });
34
+ const pubKeyBase64 = utils_1.default.getBase64FromHex(publicKey.pub);
35
+ this.transaction.signerFingerprint = utils_1.default.getAddressFromPublicKey(pubKeyBase64);
36
+ this.transaction.signatures = signature.toString('base64');
37
+ }
38
+ /**
39
+ * Sets the unique id for the transfer
40
+ * Also sets the _id of the transaction
41
+ *
42
+ * @param id - A uuid
43
+ * @returns The current builder instance for chaining.
44
+ * @throws Error if id is empty.
45
+ */
46
+ commandId(id) {
47
+ if (!id || !id.trim()) {
48
+ throw new Error('commandId must be a non-empty string');
49
+ }
50
+ this._commandId = id.trim();
51
+ // also set the transaction _id
52
+ this.transaction.id = id.trim();
53
+ return this;
54
+ }
55
+ /**
56
+ * Sets the sender party id for the transfer
57
+ * @param id - sender address (party id)
58
+ * @returns The current builder instance for chaining.
59
+ * @throws Error if id is empty.
60
+ */
61
+ senderId(id) {
62
+ if (!id || !id.trim()) {
63
+ throw new Error('senderId must be a non-empty string');
64
+ }
65
+ this._senderId = id.trim();
66
+ return this;
67
+ }
68
+ /**
69
+ * Sets the receiver party id for the transfer
70
+ * @param id - receiver address (party id)
71
+ * @returns The current builder instance for chaining.
72
+ * @throws Error if id is empty.
73
+ */
74
+ receiverId(id) {
75
+ if (!id || !id.trim()) {
76
+ throw new Error('receiverId must be a non-empty string');
77
+ }
78
+ this._receiverId = id.trim();
79
+ return this;
80
+ }
81
+ /**
82
+ * Sets the transfer amount
83
+ * @param amount - transfer amount
84
+ * @returns The current builder instance for chaining.
85
+ * @throws Error if amount not present or negative
86
+ */
87
+ amount(amount) {
88
+ if (!amount || amount < 0) {
89
+ throw new Error('amount must be a positive number');
90
+ }
91
+ this._amount = amount;
92
+ return this;
93
+ }
94
+ /**
95
+ * Sets the 1-step enablement flag to send via 1-step, works only if recipient
96
+ * enabled the 1-step, defaults to `false`
97
+ * @param flag boolean value
98
+ * @returns The current builder for chaining
99
+ */
100
+ sendOneStep(flag) {
101
+ this._sendOneStep = flag;
102
+ return this;
103
+ }
104
+ /**
105
+ * Sets the transfer expiry
106
+ * @param epoch - the expiry for 2-step transfer, defaults to 90 days and
107
+ * not applicable if sending via 1-step
108
+ * @returns The current builder for chaining
109
+ * @throws Error if the expiry value is invalid
110
+ */
111
+ expiryEpoch(epoch) {
112
+ if (!epoch || epoch < 0) {
113
+ throw new Error('epoch must be a positive number');
114
+ }
115
+ this._expiryEpoch = epoch;
116
+ return this;
117
+ }
118
+ /**
119
+ * Sets the optional memoId if present
120
+ * @param id - memoId of the recipient
121
+ * @returns The current builder for chaining
122
+ * @throws Error if the memoId value is invalid
123
+ */
124
+ memoId(id) {
125
+ if (!id || !id.trim()) {
126
+ throw new Error('memoId must be a non-empty string');
127
+ }
128
+ this._memoId = id.trim();
129
+ return this;
130
+ }
131
+ /**
132
+ * Get the canton transfer request object
133
+ * @returns CantonTransferRequest
134
+ * @throws Error if any required params are missing
135
+ */
136
+ toRequestObject() {
137
+ this.validate();
138
+ const data = {
139
+ commandId: this._commandId,
140
+ senderPartyId: this._senderId,
141
+ receiverPartyId: this._receiverId,
142
+ amount: this._amount,
143
+ expiryEpoch: this._expiryEpoch,
144
+ sendViaOneStep: this._sendOneStep,
145
+ };
146
+ if (this._memoId) {
147
+ data.memoId = this._memoId;
148
+ }
149
+ return data;
150
+ }
151
+ /**
152
+ * Method to validate the required fields
153
+ * @throws Error if required fields are not set
154
+ * @private
155
+ */
156
+ validate() {
157
+ if (!this._commandId)
158
+ throw new Error('commandId is missing');
159
+ if (!this._senderId)
160
+ throw new Error('senderId is missing');
161
+ if (!this._receiverId)
162
+ throw new Error('receiverId is missing');
163
+ if (!this._amount)
164
+ throw new Error('amount is missing');
165
+ if (!this._expiryEpoch)
166
+ throw new Error('expiryEpoch is missing');
167
+ }
16
168
  }
17
169
  exports.TransferBuilder = TransferBuilder;
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQXVEO0FBRXZELDZEQUEwRDtBQUcxRCxNQUFhLGVBQWdCLFNBQVEsdUNBQWtCO0lBQ3JELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLElBQUksQ0FBQztJQUM5QixDQUFDO0lBRUQsY0FBYyxDQUFDLFdBQXlDO1FBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxHQUFHLFdBQVcsQ0FBQztJQUNoRCxDQUFDO0NBQ0Y7QUFaRCwwQ0FZQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2UgfSBmcm9tICcuL2lmYWNlJztcblxuZXhwb3J0IGNsYXNzIFRyYW5zZmVyQnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuICB9XG5cbiAgc2V0VHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2UpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnByZXBhcmVDb21tYW5kID0gdHJhbnNhY3Rpb247XG4gIH1cbn1cbiJdfQ==
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlckJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQTJGO0FBRTNGLDZEQUEwRDtBQUcxRCxvREFBNEI7QUFFNUIsTUFBYSxlQUFnQixTQUFRLHVDQUFrQjtJQVFyRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUpiLGlCQUFZLEdBQUcsS0FBSyxDQUFDO0lBSzdCLENBQUM7SUFFRCxXQUFXLENBQUMsRUFBZTtRQUN6QixLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLGVBQWU7UUFDakIsT0FBTywwQkFBZSxDQUFDLElBQUksQ0FBQztJQUM5QixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxHQUFHLDBCQUFlLENBQUMsSUFBSSxDQUFDO0lBQzFELENBQUM7SUFFRCxjQUFjLENBQUMsV0FBeUM7UUFDdEQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLEdBQUcsV0FBVyxDQUFDO0lBQ2hELENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsWUFBWSxDQUFDLFNBQW9CLEVBQUUsU0FBaUI7UUFDbEQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixNQUFNLElBQUksa0NBQXVCLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUM3RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztRQUNoRCxNQUFNLFlBQVksR0FBRyxlQUFLLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxXQUFXLENBQUMsaUJBQWlCLEdBQUcsZUFBSyxDQUFDLHVCQUF1QixDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2pGLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxTQUFTLENBQUMsRUFBVTtRQUNsQixJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1QiwrQkFBK0I7UUFDL0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2hDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsUUFBUSxDQUFDLEVBQVU7UUFDakIsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsRUFBVTtRQUNuQixJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO1FBQzNELENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILE1BQU0sQ0FBQyxNQUFjO1FBQ25CLElBQUksQ0FBQyxNQUFNLElBQUksTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsa0NBQWtDLENBQUMsQ0FBQztRQUN0RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDdEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxXQUFXLENBQUMsSUFBYTtRQUN2QixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxXQUFXLENBQUMsS0FBYTtRQUN2QixJQUFJLENBQUMsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7UUFDckQsQ0FBQztRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsTUFBTSxDQUFDLEVBQVU7UUFDZixJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1FBQ3ZELENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixNQUFNLElBQUksR0FBMEI7WUFDbEMsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzFCLGFBQWEsRUFBRSxJQUFJLENBQUMsU0FBUztZQUM3QixlQUFlLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDakMsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3BCLFdBQVcsRUFBRSxJQUFJLENBQUMsWUFBWTtZQUM5QixjQUFjLEVBQUUsSUFBSSxDQUFDLFlBQVk7U0FDbEMsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM3QixDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLFFBQVE7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVU7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU87WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7Q0FDRjtBQTdLRCwwQ0E2S0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciwgUHVibGljS2V5LCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXNwb25zZSwgQ2FudG9uVHJhbnNmZXJSZXF1ZXN0IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2ZlckJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcml2YXRlIF9jb21tYW5kSWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfc2VuZGVySWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfcmVjZWl2ZXJJZDogc3RyaW5nO1xuICBwcml2YXRlIF9hbW91bnQ6IG51bWJlcjtcbiAgcHJpdmF0ZSBfc2VuZE9uZVN0ZXAgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfZXhwaXJ5RXBvY2g6IG51bWJlcjtcbiAgcHJpdmF0ZSBfbWVtb0lkOiBzdHJpbmc7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB0aGlzLnNldFRyYW5zYWN0aW9uVHlwZSgpO1xuICB9XG5cbiAgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU2VuZDtcbiAgfVxuXG4gIHNldFRyYW5zYWN0aW9uVHlwZSgpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uVHlwZSA9IFRyYW5zYWN0aW9uVHlwZS5TZW5kO1xuICB9XG5cbiAgc2V0VHJhbnNhY3Rpb24odHJhbnNhY3Rpb246IENhbnRvblByZXBhcmVDb21tYW5kUmVzcG9uc2UpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnByZXBhcmVDb21tYW5kID0gdHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgYWRkU2lnbmF0dXJlKHB1YmxpY0tleTogUHVibGljS2V5LCBzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIGlmICghdGhpcy50cmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCd0cmFuc2FjdGlvbiBpcyBlbXB0eSEnKTtcbiAgICB9XG4gICAgdGhpcy5fc2lnbmF0dXJlcy5wdXNoKHsgcHVibGljS2V5LCBzaWduYXR1cmUgfSk7XG4gICAgY29uc3QgcHViS2V5QmFzZTY0ID0gdXRpbHMuZ2V0QmFzZTY0RnJvbUhleChwdWJsaWNLZXkucHViKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNpZ25lckZpbmdlcnByaW50ID0gdXRpbHMuZ2V0QWRkcmVzc0Zyb21QdWJsaWNLZXkocHViS2V5QmFzZTY0KTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNpZ25hdHVyZXMgPSBzaWduYXR1cmUudG9TdHJpbmcoJ2Jhc2U2NCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHVuaXF1ZSBpZCBmb3IgdGhlIHRyYW5zZmVyXG4gICAqIEFsc28gc2V0cyB0aGUgX2lkIG9mIHRoZSB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0gaWQgLSBBIHV1aWRcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmcuXG4gICAqIEB0aHJvd3MgRXJyb3IgaWYgaWQgaXMgZW1wdHkuXG4gICAqL1xuICBjb21tYW5kSWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjb21tYW5kSWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fY29tbWFuZElkID0gaWQudHJpbSgpO1xuICAgIC8vIGFsc28gc2V0IHRoZSB0cmFuc2FjdGlvbiBfaWRcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmlkID0gaWQudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHNlbmRlciBwYXJ0eSBpZCBmb3IgdGhlIHRyYW5zZmVyXG4gICAqIEBwYXJhbSBpZCAtIHNlbmRlciBhZGRyZXNzIChwYXJ0eSBpZClcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmcuXG4gICAqIEB0aHJvd3MgRXJyb3IgaWYgaWQgaXMgZW1wdHkuXG4gICAqL1xuICBzZW5kZXJJZChpZDogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKCFpZCB8fCAhaWQudHJpbSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3NlbmRlcklkIG11c3QgYmUgYSBub24tZW1wdHkgc3RyaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuX3NlbmRlcklkID0gaWQudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHJlY2VpdmVyIHBhcnR5IGlkIGZvciB0aGUgdHJhbnNmZXJcbiAgICogQHBhcmFtIGlkIC0gcmVjZWl2ZXIgYWRkcmVzcyAocGFydHkgaWQpXG4gICAqIEByZXR1cm5zIFRoZSBjdXJyZW50IGJ1aWxkZXIgaW5zdGFuY2UgZm9yIGNoYWluaW5nLlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIGlkIGlzIGVtcHR5LlxuICAgKi9cbiAgcmVjZWl2ZXJJZChpZDogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKCFpZCB8fCAhaWQudHJpbSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3JlY2VpdmVySWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fcmVjZWl2ZXJJZCA9IGlkLnRyaW0oKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB0cmFuc2ZlciBhbW91bnRcbiAgICogQHBhcmFtIGFtb3VudCAtIHRyYW5zZmVyIGFtb3VudFxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZy5cbiAgICogQHRocm93cyBFcnJvciBpZiBhbW91bnQgbm90IHByZXNlbnQgb3IgbmVnYXRpdmVcbiAgICovXG4gIGFtb3VudChhbW91bnQ6IG51bWJlcik6IHRoaXMge1xuICAgIGlmICghYW1vdW50IHx8IGFtb3VudCA8IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignYW1vdW50IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXInKTtcbiAgICB9XG4gICAgdGhpcy5fYW1vdW50ID0gYW1vdW50O1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIDEtc3RlcCBlbmFibGVtZW50IGZsYWcgdG8gc2VuZCB2aWEgMS1zdGVwLCB3b3JrcyBvbmx5IGlmIHJlY2lwaWVudFxuICAgKiBlbmFibGVkIHRoZSAxLXN0ZXAsIGRlZmF1bHRzIHRvIGBmYWxzZWBcbiAgICogQHBhcmFtIGZsYWcgYm9vbGVhbiB2YWx1ZVxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBidWlsZGVyIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgc2VuZE9uZVN0ZXAoZmxhZzogYm9vbGVhbik6IHRoaXMge1xuICAgIHRoaXMuX3NlbmRPbmVTdGVwID0gZmxhZztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB0cmFuc2ZlciBleHBpcnlcbiAgICogQHBhcmFtIGVwb2NoIC0gdGhlIGV4cGlyeSBmb3IgMi1zdGVwIHRyYW5zZmVyLCBkZWZhdWx0cyB0byA5MCBkYXlzIGFuZFxuICAgKiBub3QgYXBwbGljYWJsZSBpZiBzZW5kaW5nIHZpYSAxLXN0ZXBcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgYnVpbGRlciBmb3IgY2hhaW5pbmdcbiAgICogQHRocm93cyBFcnJvciBpZiB0aGUgZXhwaXJ5IHZhbHVlIGlzIGludmFsaWRcbiAgICovXG4gIGV4cGlyeUVwb2NoKGVwb2NoOiBudW1iZXIpOiB0aGlzIHtcbiAgICBpZiAoIWVwb2NoIHx8IGVwb2NoIDwgMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdlcG9jaCBtdXN0IGJlIGEgcG9zaXRpdmUgbnVtYmVyJyk7XG4gICAgfVxuICAgIHRoaXMuX2V4cGlyeUVwb2NoID0gZXBvY2g7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgb3B0aW9uYWwgbWVtb0lkIGlmIHByZXNlbnRcbiAgICogQHBhcmFtIGlkIC0gbWVtb0lkIG9mIHRoZSByZWNpcGllbnRcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgYnVpbGRlciBmb3IgY2hhaW5pbmdcbiAgICogQHRocm93cyBFcnJvciBpZiB0aGUgbWVtb0lkIHZhbHVlIGlzIGludmFsaWRcbiAgICovXG4gIG1lbW9JZChpZDogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKCFpZCB8fCAhaWQudHJpbSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ21lbW9JZCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZycpO1xuICAgIH1cbiAgICB0aGlzLl9tZW1vSWQgPSBpZC50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBjYW50b24gdHJhbnNmZXIgcmVxdWVzdCBvYmplY3RcbiAgICogQHJldHVybnMgQ2FudG9uVHJhbnNmZXJSZXF1ZXN0XG4gICAqIEB0aHJvd3MgRXJyb3IgaWYgYW55IHJlcXVpcmVkIHBhcmFtcyBhcmUgbWlzc2luZ1xuICAgKi9cbiAgdG9SZXF1ZXN0T2JqZWN0KCk6IENhbnRvblRyYW5zZmVyUmVxdWVzdCB7XG4gICAgdGhpcy52YWxpZGF0ZSgpO1xuICAgIGNvbnN0IGRhdGE6IENhbnRvblRyYW5zZmVyUmVxdWVzdCA9IHtcbiAgICAgIGNvbW1hbmRJZDogdGhpcy5fY29tbWFuZElkLFxuICAgICAgc2VuZGVyUGFydHlJZDogdGhpcy5fc2VuZGVySWQsXG4gICAgICByZWNlaXZlclBhcnR5SWQ6IHRoaXMuX3JlY2VpdmVySWQsXG4gICAgICBhbW91bnQ6IHRoaXMuX2Ftb3VudCxcbiAgICAgIGV4cGlyeUVwb2NoOiB0aGlzLl9leHBpcnlFcG9jaCxcbiAgICAgIHNlbmRWaWFPbmVTdGVwOiB0aGlzLl9zZW5kT25lU3RlcCxcbiAgICB9O1xuICAgIGlmICh0aGlzLl9tZW1vSWQpIHtcbiAgICAgIGRhdGEubWVtb0lkID0gdGhpcy5fbWVtb0lkO1xuICAgIH1cbiAgICByZXR1cm4gZGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgdG8gdmFsaWRhdGUgdGhlIHJlcXVpcmVkIGZpZWxkc1xuICAgKiBAdGhyb3dzIEVycm9yIGlmIHJlcXVpcmVkIGZpZWxkcyBhcmUgbm90IHNldFxuICAgKiBAcHJpdmF0ZVxuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2NvbW1hbmRJZCkgdGhyb3cgbmV3IEVycm9yKCdjb21tYW5kSWQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fc2VuZGVySWQpIHRocm93IG5ldyBFcnJvcignc2VuZGVySWQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fcmVjZWl2ZXJJZCkgdGhyb3cgbmV3IEVycm9yKCdyZWNlaXZlcklkIGlzIG1pc3NpbmcnKTtcbiAgICBpZiAoIXRoaXMuX2Ftb3VudCkgdGhyb3cgbmV3IEVycm9yKCdhbW91bnQgaXMgbWlzc2luZycpO1xuICAgIGlmICghdGhpcy5fZXhwaXJ5RXBvY2gpIHRocm93IG5ldyBFcnJvcignZXhwaXJ5RXBvY2ggaXMgbWlzc2luZycpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,59 @@
1
+ import { PublicKey, TransactionType } from '@bitgo-beta/sdk-core';
2
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
3
+ import { CantonPrepareCommandResponse, CantonTransferAcceptRejectRequest } from './iface';
4
+ import { TransactionBuilder } from './transactionBuilder';
5
+ import { Transaction } from './transaction/transaction';
6
+ export declare class TransferRejectionBuilder extends TransactionBuilder {
7
+ private _commandId;
8
+ private _contractId;
9
+ private _actAsPartyId;
10
+ constructor(_coinConfig: Readonly<CoinConfig>);
11
+ initBuilder(tx: Transaction): void;
12
+ get transactionType(): TransactionType;
13
+ setTransactionType(): void;
14
+ setTransaction(transaction: CantonPrepareCommandResponse): void;
15
+ /** @inheritDoc */
16
+ addSignature(publicKey: PublicKey, signature: Buffer): void;
17
+ /**
18
+ * Sets the unique id for the transfer rejection
19
+ * Also sets the _id of the transaction
20
+ *
21
+ * @param id - A uuid
22
+ * @returns The current builder instance for chaining.
23
+ * @throws Error if id is empty.
24
+ */
25
+ commandId(id: string): this;
26
+ /**
27
+ * Sets the rejection contract id the receiver needs to accept
28
+ * @param id - canton rejection contract id
29
+ * @returns The current builder instance for chaining.
30
+ * @throws Error if id is empty.
31
+ */
32
+ contractId(id: string): this;
33
+ /**
34
+ * Sets the receiver of the acceptance
35
+ *
36
+ * @param id - the receiver party id (address)
37
+ * @returns The current builder instance for chaining.
38
+ * @throws Error if id is empty.
39
+ */
40
+ actAs(id: string): this;
41
+ /**
42
+ * Builds and returns the CantonTransferAcceptRejectRequest object from the builder's internal state.
43
+ *
44
+ * This method performs validation before constructing the object. If required fields are
45
+ * missing or invalid, it throws an error.
46
+ *
47
+ * @returns {CantonTransferAcceptRejectRequest} - A fully constructed and validated request object for transfer acceptance.
48
+ * @throws {Error} If any required field is missing or fails validation.
49
+ */
50
+ toRequestObject(): CantonTransferAcceptRejectRequest;
51
+ /**
52
+ * Validates the internal state of the builder before building the request object.
53
+ *
54
+ * @private
55
+ * @throws {Error} If any required field is missing or invalid.
56
+ */
57
+ private validate;
58
+ }
59
+ //# sourceMappingURL=transferRejectionBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transferRejectionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferRejectionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC3F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,4BAA4B,EAAE,iCAAiC,EAAE,MAAM,SAAS,CAAC;AAC1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAGxD,qBAAa,wBAAyB,SAAQ,kBAAkB;IAC9D,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAS;gBAClB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAKlC,IAAI,eAAe,IAAI,eAAe,CAErC;IAED,kBAAkB,IAAI,IAAI;IAI1B,cAAc,CAAC,WAAW,EAAE,4BAA4B,GAAG,IAAI;IAI/D,kBAAkB;IAClB,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAU3D;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAU3B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQ5B;;;;;;OAMG;IACH,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAQvB;;;;;;;;OAQG;IACH,eAAe,IAAI,iCAAiC;IAYpD;;;;;OAKG;IACH,OAAO,CAAC,QAAQ;CAKjB"}
@@ -0,0 +1,116 @@
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.TransferRejectionBuilder = void 0;
7
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const transactionBuilder_1 = require("./transactionBuilder");
9
+ const utils_1 = __importDefault(require("./utils"));
10
+ class TransferRejectionBuilder extends transactionBuilder_1.TransactionBuilder {
11
+ constructor(_coinConfig) {
12
+ super(_coinConfig);
13
+ }
14
+ initBuilder(tx) {
15
+ super.initBuilder(tx);
16
+ this.setTransactionType();
17
+ }
18
+ get transactionType() {
19
+ return sdk_core_1.TransactionType.TransferReject;
20
+ }
21
+ setTransactionType() {
22
+ this.transaction.transactionType = sdk_core_1.TransactionType.TransferReject;
23
+ }
24
+ setTransaction(transaction) {
25
+ this.transaction.prepareCommand = transaction;
26
+ }
27
+ /** @inheritDoc */
28
+ addSignature(publicKey, signature) {
29
+ if (!this.transaction) {
30
+ throw new sdk_core_1.InvalidTransactionError('transaction is empty!');
31
+ }
32
+ this._signatures.push({ publicKey, signature });
33
+ const pubKeyBase64 = utils_1.default.getBase64FromHex(publicKey.pub);
34
+ this.transaction.signerFingerprint = utils_1.default.getAddressFromPublicKey(pubKeyBase64);
35
+ this.transaction.signatures = signature.toString('base64');
36
+ }
37
+ /**
38
+ * Sets the unique id for the transfer rejection
39
+ * Also sets the _id of the transaction
40
+ *
41
+ * @param id - A uuid
42
+ * @returns The current builder instance for chaining.
43
+ * @throws Error if id is empty.
44
+ */
45
+ commandId(id) {
46
+ if (!id || !id.trim()) {
47
+ throw new Error('commandId must be a non-empty string');
48
+ }
49
+ this._commandId = id.trim();
50
+ // also set the transaction _id
51
+ this.transaction.id = id.trim();
52
+ return this;
53
+ }
54
+ /**
55
+ * Sets the rejection contract id the receiver needs to accept
56
+ * @param id - canton rejection contract id
57
+ * @returns The current builder instance for chaining.
58
+ * @throws Error if id is empty.
59
+ */
60
+ contractId(id) {
61
+ if (!id || !id.trim()) {
62
+ throw new Error('contractId must be a non-empty string');
63
+ }
64
+ this._contractId = id.trim();
65
+ return this;
66
+ }
67
+ /**
68
+ * Sets the receiver of the acceptance
69
+ *
70
+ * @param id - the receiver party id (address)
71
+ * @returns The current builder instance for chaining.
72
+ * @throws Error if id is empty.
73
+ */
74
+ actAs(id) {
75
+ if (!id || !id.trim()) {
76
+ throw new Error('actAsPartyId must be a non-empty string');
77
+ }
78
+ this._actAsPartyId = id.trim();
79
+ return this;
80
+ }
81
+ /**
82
+ * Builds and returns the CantonTransferAcceptRejectRequest object from the builder's internal state.
83
+ *
84
+ * This method performs validation before constructing the object. If required fields are
85
+ * missing or invalid, it throws an error.
86
+ *
87
+ * @returns {CantonTransferAcceptRejectRequest} - A fully constructed and validated request object for transfer acceptance.
88
+ * @throws {Error} If any required field is missing or fails validation.
89
+ */
90
+ toRequestObject() {
91
+ this.validate();
92
+ return {
93
+ commandId: this._commandId,
94
+ contractId: this._contractId,
95
+ verboseHashing: false,
96
+ actAs: [this._actAsPartyId],
97
+ readAs: [],
98
+ };
99
+ }
100
+ /**
101
+ * Validates the internal state of the builder before building the request object.
102
+ *
103
+ * @private
104
+ * @throws {Error} If any required field is missing or invalid.
105
+ */
106
+ validate() {
107
+ if (!this._commandId)
108
+ throw new Error('commandId is missing');
109
+ if (!this._contractId)
110
+ throw new Error('contractId is missing');
111
+ if (!this._actAsPartyId)
112
+ throw new Error('receiver partyId is missing');
113
+ }
114
+ }
115
+ exports.TransferRejectionBuilder = TransferRejectionBuilder;
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmZXJSZWplY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2ZlclJlamVjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBQTJGO0FBRzNGLDZEQUEwRDtBQUUxRCxvREFBNEI7QUFFNUIsTUFBYSx3QkFBeUIsU0FBUSx1Q0FBa0I7SUFJOUQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVcsQ0FBQyxFQUFlO1FBQ3pCLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLDBCQUFlLENBQUMsY0FBYyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLEdBQUcsMEJBQWUsQ0FBQyxjQUFjLENBQUM7SUFDcEUsQ0FBQztJQUVELGNBQWMsQ0FBQyxXQUF5QztRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsR0FBRyxXQUFXLENBQUM7SUFDaEQsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixZQUFZLENBQUMsU0FBb0IsRUFBRSxTQUFpQjtRQUNsRCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzdELENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sWUFBWSxHQUFHLGVBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsR0FBRyxlQUFLLENBQUMsdUJBQXVCLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDakYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILFNBQVMsQ0FBQyxFQUFVO1FBQ2xCLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7UUFDMUQsQ0FBQztRQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzVCLCtCQUErQjtRQUMvQixJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDaEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxVQUFVLENBQUMsRUFBVTtRQUNuQixJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUM7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO1FBQzNELENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM3QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxLQUFLLENBQUMsRUFBVTtRQUNkLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7UUFDN0QsQ0FBQztRQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7OztPQVFHO0lBQ0gsZUFBZTtRQUNiLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUVoQixPQUFPO1lBQ0wsU0FBUyxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQzFCLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM1QixjQUFjLEVBQUUsS0FBSztZQUNyQixLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO1lBQzNCLE1BQU0sRUFBRSxFQUFFO1NBQ1gsQ0FBQztJQUNKLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNLLFFBQVE7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVU7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFDOUQsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO1FBQ2hFLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUMxRSxDQUFDO0NBQ0Y7QUFuSEQsNERBbUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IsIFB1YmxpY0tleSwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IHsgQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXNwb25zZSwgQ2FudG9uVHJhbnNmZXJBY2NlcHRSZWplY3RSZXF1ZXN0IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNmZXJSZWplY3Rpb25CdWlsZGVyIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgcHJpdmF0ZSBfY29tbWFuZElkOiBzdHJpbmc7XG4gIHByaXZhdGUgX2NvbnRyYWN0SWQ6IHN0cmluZztcbiAgcHJpdmF0ZSBfYWN0QXNQYXJ0eUlkOiBzdHJpbmc7XG4gIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIHN1cGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB0aGlzLnNldFRyYW5zYWN0aW9uVHlwZSgpO1xuICB9XG5cbiAgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuVHJhbnNmZXJSZWplY3Q7XG4gIH1cblxuICBzZXRUcmFuc2FjdGlvblR5cGUoKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvblR5cGUgPSBUcmFuc2FjdGlvblR5cGUuVHJhbnNmZXJSZWplY3Q7XG4gIH1cblxuICBzZXRUcmFuc2FjdGlvbih0cmFuc2FjdGlvbjogQ2FudG9uUHJlcGFyZUNvbW1hbmRSZXNwb25zZSk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNhY3Rpb24ucHJlcGFyZUNvbW1hbmQgPSB0cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBhZGRTaWduYXR1cmUocHVibGljS2V5OiBQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ3RyYW5zYWN0aW9uIGlzIGVtcHR5IScpO1xuICAgIH1cbiAgICB0aGlzLl9zaWduYXR1cmVzLnB1c2goeyBwdWJsaWNLZXksIHNpZ25hdHVyZSB9KTtcbiAgICBjb25zdCBwdWJLZXlCYXNlNjQgPSB1dGlscy5nZXRCYXNlNjRGcm9tSGV4KHB1YmxpY0tleS5wdWIpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbmVyRmluZ2VycHJpbnQgPSB1dGlscy5nZXRBZGRyZXNzRnJvbVB1YmxpY0tleShwdWJLZXlCYXNlNjQpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbmF0dXJlcyA9IHNpZ25hdHVyZS50b1N0cmluZygnYmFzZTY0Jyk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdW5pcXVlIGlkIGZvciB0aGUgdHJhbnNmZXIgcmVqZWN0aW9uXG4gICAqIEFsc28gc2V0cyB0aGUgX2lkIG9mIHRoZSB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0gaWQgLSBBIHV1aWRcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmcuXG4gICAqIEB0aHJvd3MgRXJyb3IgaWYgaWQgaXMgZW1wdHkuXG4gICAqL1xuICBjb21tYW5kSWQoaWQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaWQgfHwgIWlkLnRyaW0oKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdjb21tYW5kSWQgbXVzdCBiZSBhIG5vbi1lbXB0eSBzdHJpbmcnKTtcbiAgICB9XG4gICAgdGhpcy5fY29tbWFuZElkID0gaWQudHJpbSgpO1xuICAgIC8vIGFsc28gc2V0IHRoZSB0cmFuc2FjdGlvbiBfaWRcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmlkID0gaWQudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHJlamVjdGlvbiBjb250cmFjdCBpZCB0aGUgcmVjZWl2ZXIgbmVlZHMgdG8gYWNjZXB0XG4gICAqIEBwYXJhbSBpZCAtIGNhbnRvbiByZWplY3Rpb24gY29udHJhY3QgaWRcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmcuXG4gICAqIEB0aHJvd3MgRXJyb3IgaWYgaWQgaXMgZW1wdHkuXG4gICAqL1xuICBjb250cmFjdElkKGlkOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWlkIHx8ICFpZC50cmltKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignY29udHJhY3RJZCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZycpO1xuICAgIH1cbiAgICB0aGlzLl9jb250cmFjdElkID0gaWQudHJpbSgpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHJlY2VpdmVyIG9mIHRoZSBhY2NlcHRhbmNlXG4gICAqXG4gICAqIEBwYXJhbSBpZCAtIHRoZSByZWNlaXZlciBwYXJ0eSBpZCAoYWRkcmVzcylcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmcuXG4gICAqIEB0aHJvd3MgRXJyb3IgaWYgaWQgaXMgZW1wdHkuXG4gICAqL1xuICBhY3RBcyhpZDogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKCFpZCB8fCAhaWQudHJpbSgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2FjdEFzUGFydHlJZCBtdXN0IGJlIGEgbm9uLWVtcHR5IHN0cmluZycpO1xuICAgIH1cbiAgICB0aGlzLl9hY3RBc1BhcnR5SWQgPSBpZC50cmltKCk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGRzIGFuZCByZXR1cm5zIHRoZSBDYW50b25UcmFuc2ZlckFjY2VwdFJlamVjdFJlcXVlc3Qgb2JqZWN0IGZyb20gdGhlIGJ1aWxkZXIncyBpbnRlcm5hbCBzdGF0ZS5cbiAgICpcbiAgICogVGhpcyBtZXRob2QgcGVyZm9ybXMgdmFsaWRhdGlvbiBiZWZvcmUgY29uc3RydWN0aW5nIHRoZSBvYmplY3QuIElmIHJlcXVpcmVkIGZpZWxkcyBhcmVcbiAgICogbWlzc2luZyBvciBpbnZhbGlkLCBpdCB0aHJvd3MgYW4gZXJyb3IuXG4gICAqXG4gICAqIEByZXR1cm5zIHtDYW50b25UcmFuc2ZlckFjY2VwdFJlamVjdFJlcXVlc3R9IC0gQSBmdWxseSBjb25zdHJ1Y3RlZCBhbmQgdmFsaWRhdGVkIHJlcXVlc3Qgb2JqZWN0IGZvciB0cmFuc2ZlciBhY2NlcHRhbmNlLlxuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgYW55IHJlcXVpcmVkIGZpZWxkIGlzIG1pc3Npbmcgb3IgZmFpbHMgdmFsaWRhdGlvbi5cbiAgICovXG4gIHRvUmVxdWVzdE9iamVjdCgpOiBDYW50b25UcmFuc2ZlckFjY2VwdFJlamVjdFJlcXVlc3Qge1xuICAgIHRoaXMudmFsaWRhdGUoKTtcblxuICAgIHJldHVybiB7XG4gICAgICBjb21tYW5kSWQ6IHRoaXMuX2NvbW1hbmRJZCxcbiAgICAgIGNvbnRyYWN0SWQ6IHRoaXMuX2NvbnRyYWN0SWQsXG4gICAgICB2ZXJib3NlSGFzaGluZzogZmFsc2UsXG4gICAgICBhY3RBczogW3RoaXMuX2FjdEFzUGFydHlJZF0sXG4gICAgICByZWFkQXM6IFtdLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhdGVzIHRoZSBpbnRlcm5hbCBzdGF0ZSBvZiB0aGUgYnVpbGRlciBiZWZvcmUgYnVpbGRpbmcgdGhlIHJlcXVlc3Qgb2JqZWN0LlxuICAgKlxuICAgKiBAcHJpdmF0ZVxuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgYW55IHJlcXVpcmVkIGZpZWxkIGlzIG1pc3Npbmcgb3IgaW52YWxpZC5cbiAgICovXG4gIHByaXZhdGUgdmFsaWRhdGUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9jb21tYW5kSWQpIHRocm93IG5ldyBFcnJvcignY29tbWFuZElkIGlzIG1pc3NpbmcnKTtcbiAgICBpZiAoIXRoaXMuX2NvbnRyYWN0SWQpIHRocm93IG5ldyBFcnJvcignY29udHJhY3RJZCBpcyBtaXNzaW5nJyk7XG4gICAgaWYgKCF0aGlzLl9hY3RBc1BhcnR5SWQpIHRocm93IG5ldyBFcnJvcigncmVjZWl2ZXIgcGFydHlJZCBpcyBtaXNzaW5nJyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { BaseUtils } from '@bitgo-beta/sdk-core';
1
+ import { BaseUtils, TransactionType } from '@bitgo-beta/sdk-core';
2
2
  import { PreparedTxnParsedInfo } from './iface';
3
3
  export declare class Utils implements BaseUtils {
4
4
  /** @inheritdoc */
@@ -13,6 +13,18 @@ export declare class Utils implements BaseUtils {
13
13
  isValidSignature(signature: string): boolean;
14
14
  /** @inheritdoc */
15
15
  isValidTransactionId(txId: string): boolean;
16
+ /**
17
+ * Method to validate the input is a valid canton hex string
18
+ * @param {String} value the hex string value
19
+ * @returns {Boolean} true if valid
20
+ */
21
+ isValidCantonHex(value: string): boolean;
22
+ /**
23
+ * Helper method to convert hex value to base64
24
+ * @param {String} hexString - hex encoded string
25
+ * @returns {String} base64 encoded string
26
+ */
27
+ getBase64FromHex(hexString: string): string;
16
28
  /**
17
29
  * Method to create fingerprint (part of the canton partyId) from public key
18
30
  * @param {String} publicKey the public key
@@ -22,9 +34,10 @@ export declare class Utils implements BaseUtils {
22
34
  /**
23
35
  * Method to parse raw canton transaction & get required data
24
36
  * @param {String} rawData base64 encoded string
37
+ * @param {TransactionType} txType the transaction type
25
38
  * @returns {PreparedTxnParsedInfo}
26
39
  */
27
- parseRawCantonTransactionData(rawData: string): PreparedTxnParsedInfo;
40
+ parseRawCantonTransactionData(rawData: string, txType: TransactionType): PreparedTxnParsedInfo;
28
41
  /**
29
42
  * Computes the topology hash from the API response of the 'create party' endpoint.
30
43
  *
@@ -101,6 +114,13 @@ export declare class Utils implements BaseUtils {
101
114
  * @returns {Buffer} A 4-byte buffer representing the integer in big-endian format
102
115
  */
103
116
  private encodeInt32;
117
+ /**
118
+ * Convert to canton raw units
119
+ * @param {BigNumber} value
120
+ * @returns {String} the converted raw canton units
121
+ * @private
122
+ */
123
+ private convertAmountToLowestUnit;
104
124
  }
105
125
  declare const utils: Utils;
106
126
  export default utils;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAA2B,MAAM,sBAAsB,CAAC;AAM1E,OAAO,EAA+C,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAG7F,qBAAa,KAAM,YAAW,SAAS;IACrC,kBAAkB;IAClB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIxC,kBAAkB;IAClB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIrC,kBAAkB;IAClB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIvC,kBAAkB;IAClB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAItC,kBAAkB;IAClB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI5C,kBAAkB;IAClB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3C;;;;OAIG;IACH,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAMlD;;;;OAIG;IACH,6BAA6B,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB;IAyDrE;;;;;OAKG;IACH,kCAAkC,CAAC,oBAAoB,EAAE,MAAM,EAAE,GAAG,MAAM;IAKpE,wCAAwC,CAAC,yBAAyB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMlG;;;;;;;;;;OAUG;IACH,OAAO,CAAC,kCAAkC;IAO1C;;;;;OAKG;IACH,OAAO,CAAC,2BAA2B;IAgBnC;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAOnB;;;;;;;;OAQG;IACH,OAAO,CAAC,uBAAuB;IAO/B;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAIlB;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAKjC;;;;;;;;OAQG;IACH,OAAO,CAAC,2BAA2B;IAgBnC;;;;;OAKG;IACH,OAAO,CAAC,WAAW;CAKpB;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAE1B,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAA2B,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAM3F,OAAO,EAA+C,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAG7F,qBAAa,KAAM,YAAW,SAAS;IACrC,kBAAkB;IAClB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAUxC,kBAAkB;IAClB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAQrC,kBAAkB;IAClB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIvC,kBAAkB;IAClB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAItC,kBAAkB;IAClB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAI5C,kBAAkB;IAClB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI3C;;;;OAIG;IACH,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAKxC;;;;OAIG;IACH,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAI3C;;;;OAIG;IACH,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAMlD;;;;;OAKG;IACH,6BAA6B,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,qBAAqB;IAkI9F;;;;;OAKG;IACH,kCAAkC,CAAC,oBAAoB,EAAE,MAAM,EAAE,GAAG,MAAM;IAKpE,wCAAwC,CAAC,yBAAyB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMlG;;;;;;;;;;OAUG;IACH,OAAO,CAAC,kCAAkC;IAO1C;;;;;OAKG;IACH,OAAO,CAAC,2BAA2B;IAgBnC;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IAOnB;;;;;;;;OAQG;IACH,OAAO,CAAC,uBAAuB;IAO/B;;;;;OAKG;IACH,OAAO,CAAC,UAAU;IAIlB;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;IAKjC;;;;;;;;OAQG;IACH,OAAO,CAAC,2BAA2B;IAgBnC;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAMnB;;;;;OAKG;IACH,OAAO,CAAC,yBAAyB;CAGlC;AAED,QAAA,MAAM,KAAK,OAAc,CAAC;AAE1B,eAAe,KAAK,CAAC"}