@bitgo-beta/sdk-coin-stx 1.4.3-alpha.5 → 1.4.3-alpha.500

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/src/index.d.ts +2 -0
  2. package/dist/src/index.d.ts.map +1 -1
  3. package/dist/src/index.js +25 -9
  4. package/dist/src/lib/abstractContractBuilder.js +2 -2
  5. package/dist/src/lib/btcAddressUtils.d.ts +30 -0
  6. package/dist/src/lib/btcAddressUtils.d.ts.map +1 -0
  7. package/dist/src/lib/btcAddressUtils.js +134 -0
  8. package/dist/src/lib/constants.d.ts +4 -1
  9. package/dist/src/lib/constants.d.ts.map +1 -1
  10. package/dist/src/lib/constants.js +8 -3
  11. package/dist/src/lib/contractBuilder.js +10 -10
  12. package/dist/src/lib/fungibleTokenTransferBuilder.d.ts +62 -0
  13. package/dist/src/lib/fungibleTokenTransferBuilder.d.ts.map +1 -0
  14. package/dist/src/lib/fungibleTokenTransferBuilder.js +131 -0
  15. package/dist/src/lib/iface.d.ts +61 -0
  16. package/dist/src/lib/iface.d.ts.map +1 -1
  17. package/dist/src/lib/iface.js +1 -1
  18. package/dist/src/lib/index.d.ts +1 -0
  19. package/dist/src/lib/index.d.ts.map +1 -1
  20. package/dist/src/lib/index.js +24 -9
  21. package/dist/src/lib/keyPair.js +18 -19
  22. package/dist/src/lib/sbtcWithdrawBuilder.d.ts +27 -0
  23. package/dist/src/lib/sbtcWithdrawBuilder.d.ts.map +1 -0
  24. package/dist/src/lib/sbtcWithdrawBuilder.js +132 -0
  25. package/dist/src/lib/sendmanyBuilder.js +11 -11
  26. package/dist/src/lib/transaction.d.ts.map +1 -1
  27. package/dist/src/lib/transaction.js +31 -15
  28. package/dist/src/lib/transactionBuilder.js +12 -12
  29. package/dist/src/lib/transactionBuilderFactory.d.ts +4 -0
  30. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  31. package/dist/src/lib/transactionBuilderFactory.js +16 -2
  32. package/dist/src/lib/transferBuilder.js +4 -4
  33. package/dist/src/lib/utils.d.ts +40 -2
  34. package/dist/src/lib/utils.d.ts.map +1 -1
  35. package/dist/src/lib/utils.js +171 -63
  36. package/dist/src/register.d.ts +3 -0
  37. package/dist/src/register.d.ts.map +1 -0
  38. package/dist/src/register.js +15 -0
  39. package/dist/src/sip10Token.d.ts +22 -0
  40. package/dist/src/sip10Token.d.ts.map +1 -0
  41. package/dist/src/sip10Token.js +128 -0
  42. package/dist/src/stx.d.ts +146 -2
  43. package/dist/src/stx.d.ts.map +1 -1
  44. package/dist/src/stx.js +420 -11
  45. package/dist/src/tstx.js +1 -1
  46. package/dist/test/fixtures.d.ts +119 -0
  47. package/dist/test/fixtures.d.ts.map +1 -0
  48. package/dist/test/fixtures.js +147 -0
  49. package/dist/test/unit/btcAddressUtils.d.ts +2 -0
  50. package/dist/test/unit/btcAddressUtils.d.ts.map +1 -0
  51. package/dist/test/unit/btcAddressUtils.js +82 -0
  52. package/dist/test/unit/keyPair.d.ts +2 -0
  53. package/dist/test/unit/keyPair.d.ts.map +1 -0
  54. package/dist/test/unit/keyPair.js +144 -0
  55. package/dist/test/unit/resources.d.ts +97 -0
  56. package/dist/test/unit/resources.d.ts.map +1 -0
  57. package/dist/test/unit/resources.js +144 -0
  58. package/dist/test/unit/sip10Token.d.ts +2 -0
  59. package/dist/test/unit/sip10Token.d.ts.map +1 -0
  60. package/dist/test/unit/sip10Token.js +374 -0
  61. package/dist/test/unit/stx.d.ts +2 -0
  62. package/dist/test/unit/stx.d.ts.map +1 -0
  63. package/dist/test/unit/stx.js +470 -0
  64. package/dist/test/unit/transaction.d.ts +2 -0
  65. package/dist/test/unit/transaction.d.ts.map +1 -0
  66. package/dist/test/unit/transaction.js +83 -0
  67. package/dist/test/unit/transactionBuilder/contractBuilder.d.ts +2 -0
  68. package/dist/test/unit/transactionBuilder/contractBuilder.d.ts.map +1 -0
  69. package/dist/test/unit/transactionBuilder/contractBuilder.js +421 -0
  70. package/dist/test/unit/transactionBuilder/fungibleTokenTransferBuilder.d.ts +2 -0
  71. package/dist/test/unit/transactionBuilder/fungibleTokenTransferBuilder.d.ts.map +1 -0
  72. package/dist/test/unit/transactionBuilder/fungibleTokenTransferBuilder.js +187 -0
  73. package/dist/test/unit/transactionBuilder/sbtcWithdrawBuilder.d.ts +2 -0
  74. package/dist/test/unit/transactionBuilder/sbtcWithdrawBuilder.d.ts.map +1 -0
  75. package/dist/test/unit/transactionBuilder/sbtcWithdrawBuilder.js +259 -0
  76. package/dist/test/unit/transactionBuilder/sendmanyBuilder.d.ts +2 -0
  77. package/dist/test/unit/transactionBuilder/sendmanyBuilder.d.ts.map +1 -0
  78. package/dist/test/unit/transactionBuilder/sendmanyBuilder.js +140 -0
  79. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts +2 -0
  80. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
  81. package/dist/test/unit/transactionBuilder/transferBuilder.js +347 -0
  82. package/dist/test/unit/util.d.ts +2 -0
  83. package/dist/test/unit/util.d.ts.map +1 -0
  84. package/dist/test/unit/util.js +340 -0
  85. package/dist/tsconfig.tsbuildinfo +1 -0
  86. package/package.json +16 -12
  87. package/.eslintignore +0 -5
  88. package/.mocharc.yml +0 -8
  89. package/CHANGELOG.md +0 -63
@@ -2,4 +2,6 @@ export * as StxLib from './lib';
2
2
  export * from './stx';
3
3
  export * from './tstx';
4
4
  export * from './types';
5
+ export * from './register';
6
+ export * from './sip10Token';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,OAAO,CAAC;AAChC,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,OAAO,CAAC;AAChC,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
package/dist/src/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -11,13 +15,23 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
11
15
  }) : function(o, v) {
12
16
  o["default"] = v;
13
17
  });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
21
35
  var __exportStar = (this && this.__exportStar) || function(m, exports) {
22
36
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
23
37
  };
@@ -27,4 +41,6 @@ exports.StxLib = __importStar(require("./lib"));
27
41
  __exportStar(require("./stx"), exports);
28
42
  __exportStar(require("./tstx"), exports);
29
43
  __exportStar(require("./types"), exports);
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUFnQztBQUNoQyx3Q0FBc0I7QUFDdEIseUNBQXVCO0FBQ3ZCLDBDQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGFzIFN0eExpYiBmcm9tICcuL2xpYic7XG5leHBvcnQgKiBmcm9tICcuL3N0eCc7XG5leHBvcnQgKiBmcm9tICcuL3RzdHgnO1xuZXhwb3J0ICogZnJvbSAnLi90eXBlcyc7XG4iXX0=
44
+ __exportStar(require("./register"), exports);
45
+ __exportStar(require("./sip10Token"), exports);
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsZ0RBQWdDO0FBQ2hDLHdDQUFzQjtBQUN0Qix5Q0FBdUI7QUFDdkIsMENBQXdCO0FBQ3hCLDZDQUEyQjtBQUMzQiwrQ0FBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBhcyBTdHhMaWIgZnJvbSAnLi9saWInO1xuZXhwb3J0ICogZnJvbSAnLi9zdHgnO1xuZXhwb3J0ICogZnJvbSAnLi90c3R4JztcbmV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG5leHBvcnQgKiBmcm9tICcuL3NpcDEwVG9rZW4nO1xuIl19
@@ -32,7 +32,7 @@ class AbstractContractBuilder extends transactionBuilder_1.TransactionBuilder {
32
32
  async buildImplementation() {
33
33
  this._options = this.buildContractCallOptions();
34
34
  this.transaction.setTransactionType(sdk_core_1.TransactionType.ContractCall);
35
- this.transaction.stxTransaction = await transactions_1.makeUnsignedContractCall(this._options);
35
+ this.transaction.stxTransaction = await (0, transactions_1.makeUnsignedContractCall)(this._options);
36
36
  return await super.buildImplementation();
37
37
  }
38
38
  buildContractCallOptions() {
@@ -67,4 +67,4 @@ class AbstractContractBuilder extends transactionBuilder_1.TransactionBuilder {
67
67
  }
68
68
  }
69
69
  exports.AbstractContractBuilder = AbstractContractBuilder;
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3RDb250cmFjdEJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2Fic3RyYWN0Q29udHJhY3RCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLGtEQUEyQjtBQUMzQix1REFTOEI7QUFDOUIsbURBSzhCO0FBRTlCLDZEQUEwRDtBQUUxRCxNQUFzQix1QkFBd0IsU0FBUSx1Q0FBa0I7SUFTdEUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVcsQ0FBQyxFQUFlO1FBQ3pCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQixJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO1lBQ2hDLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1NBQ3BFO1FBQ0QsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsS0FBSywwQkFBVyxDQUFDLFlBQVksRUFBRTtZQUMzRCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7WUFDdkQsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQztZQUNqRCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO1lBQ2pELElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7WUFDakQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN2QjthQUFNO1lBQ0wsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHFDQUFxQyxDQUFDLENBQUM7U0FDeEU7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1IsS0FBSyxDQUFDLG1CQUFtQjtRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2hELElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsMEJBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsR0FBRyxNQUFNLHVDQUF3QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoRixPQUFPLE1BQU0sS0FBSyxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVPLHdCQUF3QjtRQUM5QixNQUFNLFdBQVcsR0FBd0I7WUFDdkMsZUFBZSxFQUFFLElBQUksQ0FBQyxnQkFBZ0I7WUFDdEMsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2hDLFlBQVksRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNoQyxZQUFZLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDaEMsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtZQUMxQyxjQUFjLEVBQUUsSUFBSSxDQUFDLGVBQWU7WUFDcEMsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzVCLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUTtZQUN0QixHQUFHLEVBQUUsSUFBSSxlQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDOUIsS0FBSyxFQUFFLElBQUksZUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7U0FDL0IsQ0FBQztRQUNGLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ2xDLE9BQU87Z0JBQ0wsR0FBRyxXQUFXO2dCQUNkLFNBQVMsRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQzthQUNoQyxDQUFDO1NBQ0g7YUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN2QyxPQUFPO2dCQUNMLEdBQUcsV0FBVztnQkFDZCxVQUFVLEVBQUUsSUFBSSxDQUFDLFlBQVk7Z0JBQzdCLGFBQWEsRUFBRSxJQUFJLENBQUMsaUJBQWlCO2FBQ3RDLENBQUM7U0FDSDthQUFNO1lBQ0wsTUFBTSxJQUFJLHFDQUEwQixDQUFDLDhCQUE4QixDQUFDLENBQUM7U0FDdEU7SUFDSCxDQUFDO0NBQ0Y7QUFqRUQsMERBaUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby1iZXRhL3N0YXRpY3MnO1xuaW1wb3J0IEJpZ051bSBmcm9tICdibi5qcyc7XG5pbXBvcnQge1xuICBDbGFyaXR5VmFsdWUsXG4gIENvbnRyYWN0Q2FsbE9wdGlvbnMsXG4gIG1ha2VVbnNpZ25lZENvbnRyYWN0Q2FsbCxcbiAgUGF5bG9hZFR5cGUsXG4gIFBvc3RDb25kaXRpb24sXG4gIFBvc3RDb25kaXRpb25Nb2RlLFxuICBVbnNpZ25lZENvbnRyYWN0Q2FsbE9wdGlvbnMsXG4gIFVuc2lnbmVkTXVsdGlTaWdDb250cmFjdENhbGxPcHRpb25zLFxufSBmcm9tICdAc3RhY2tzL3RyYW5zYWN0aW9ucyc7XG5pbXBvcnQge1xuICBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsXG4gIEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yLFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbiAgVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RDb250cmFjdEJ1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcml2YXRlIF9vcHRpb25zOiBVbnNpZ25lZENvbnRyYWN0Q2FsbE9wdGlvbnMgfCBVbnNpZ25lZE11bHRpU2lnQ29udHJhY3RDYWxsT3B0aW9ucztcbiAgcHJvdGVjdGVkIF9jb250cmFjdEFkZHJlc3M6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9jb250cmFjdE5hbWU6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9mdW5jdGlvbk5hbWU6IHN0cmluZztcbiAgcHJvdGVjdGVkIF9wb3N0Q29uZGl0aW9uTW9kZT86IFBvc3RDb25kaXRpb25Nb2RlO1xuICBwcm90ZWN0ZWQgX3Bvc3RDb25kaXRpb25zPzogUG9zdENvbmRpdGlvbltdO1xuICBwcm90ZWN0ZWQgX2Z1bmN0aW9uQXJnczogQ2xhcml0eVZhbHVlW107XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgY29uc3QgdHhEYXRhID0gdHgudG9Kc29uKCk7XG4gICAgaWYgKHR4RGF0YS5wYXlsb2FkID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcigncGF5bG9hZCBtdXN0IG5vdCBiZSB1bmRlZmluZWQnKTtcbiAgICB9XG4gICAgaWYgKHR4RGF0YS5wYXlsb2FkLnBheWxvYWRUeXBlID09PSBQYXlsb2FkVHlwZS5Db250cmFjdENhbGwpIHtcbiAgICAgIHRoaXMuX2NvbnRyYWN0QWRkcmVzcyA9IHR4RGF0YS5wYXlsb2FkLmNvbnRyYWN0QWRkcmVzcztcbiAgICAgIHRoaXMuX2NvbnRyYWN0TmFtZSA9IHR4RGF0YS5wYXlsb2FkLmNvbnRyYWN0TmFtZTtcbiAgICAgIHRoaXMuX2Z1bmN0aW9uTmFtZSA9IHR4RGF0YS5wYXlsb2FkLmZ1bmN0aW9uTmFtZTtcbiAgICAgIHRoaXMuX2Z1bmN0aW9uQXJncyA9IHR4RGF0YS5wYXlsb2FkLmZ1bmN0aW9uQXJncztcbiAgICAgIHN1cGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVHJhbnNhY3Rpb24gc2hvdWxkIGJlIGNvbnRyYWN0IGNhbGwnKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIHRoaXMuX29wdGlvbnMgPSB0aGlzLmJ1aWxkQ29udHJhY3RDYWxsT3B0aW9ucygpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0VHJhbnNhY3Rpb25UeXBlKFRyYW5zYWN0aW9uVHlwZS5Db250cmFjdENhbGwpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc3R4VHJhbnNhY3Rpb24gPSBhd2FpdCBtYWtlVW5zaWduZWRDb250cmFjdENhbGwodGhpcy5fb3B0aW9ucyk7XG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLmJ1aWxkSW1wbGVtZW50YXRpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRDb250cmFjdENhbGxPcHRpb25zKCk6IFVuc2lnbmVkQ29udHJhY3RDYWxsT3B0aW9ucyB8IFVuc2lnbmVkTXVsdGlTaWdDb250cmFjdENhbGxPcHRpb25zIHtcbiAgICBjb25zdCBkZWZhdWx0T3B0czogQ29udHJhY3RDYWxsT3B0aW9ucyA9IHtcbiAgICAgIGNvbnRyYWN0QWRkcmVzczogdGhpcy5fY29udHJhY3RBZGRyZXNzLFxuICAgICAgY29udHJhY3ROYW1lOiB0aGlzLl9jb250cmFjdE5hbWUsXG4gICAgICBmdW5jdGlvbk5hbWU6IHRoaXMuX2Z1bmN0aW9uTmFtZSxcbiAgICAgIGZ1bmN0aW9uQXJnczogdGhpcy5fZnVuY3Rpb25BcmdzLFxuICAgICAgcG9zdENvbmRpdGlvbk1vZGU6IHRoaXMuX3Bvc3RDb25kaXRpb25Nb2RlLFxuICAgICAgcG9zdENvbmRpdGlvbnM6IHRoaXMuX3Bvc3RDb25kaXRpb25zLFxuICAgICAgYW5jaG9yTW9kZTogdGhpcy5fYW5jaG9yTW9kZSxcbiAgICAgIG5ldHdvcms6IHRoaXMuX25ldHdvcmssXG4gICAgICBmZWU6IG5ldyBCaWdOdW0odGhpcy5fZmVlLmZlZSksXG4gICAgICBub25jZTogbmV3IEJpZ051bSh0aGlzLl9ub25jZSksXG4gICAgfTtcbiAgICBpZiAodGhpcy5fZnJvbVB1YktleXMubGVuZ3RoID09PSAxKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5kZWZhdWx0T3B0cyxcbiAgICAgICAgcHVibGljS2V5OiB0aGlzLl9mcm9tUHViS2V5c1swXSxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmICh0aGlzLl9mcm9tUHViS2V5cy5sZW5ndGggPiAxKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5kZWZhdWx0T3B0cyxcbiAgICAgICAgcHVibGljS2V5czogdGhpcy5fZnJvbVB1YktleXMsXG4gICAgICAgIG51bVNpZ25hdHVyZXM6IHRoaXMuX251bWJlclNpZ25hdHVyZXMsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ3N1cHBseSBhdCBsZWFzdCAxIHB1YmxpYyBrZXknKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3RDb250cmFjdEJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2Fic3RyYWN0Q29udHJhY3RCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLGtEQUEyQjtBQUMzQix1REFTOEI7QUFDOUIsbURBSzhCO0FBRTlCLDZEQUEwRDtBQUUxRCxNQUFzQix1QkFBd0IsU0FBUSx1Q0FBa0I7SUFTdEUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVcsQ0FBQyxFQUFlO1FBQ3pCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQixJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDakMsTUFBTSxJQUFJLGtDQUF1QixDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDckUsQ0FBQztRQUNELElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEtBQUssMEJBQVcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUM1RCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7WUFDdkQsSUFBSSxDQUFDLGFBQWEsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQztZQUNqRCxJQUFJLENBQUMsYUFBYSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDO1lBQ2pELElBQUksQ0FBQyxhQUFhLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7WUFDakQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN4QixDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxxQ0FBcUMsQ0FBQyxDQUFDO1FBQ3pFLENBQUM7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1IsS0FBSyxDQUFDLG1CQUFtQjtRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO1FBQ2hELElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLENBQUMsMEJBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsR0FBRyxNQUFNLElBQUEsdUNBQXdCLEVBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hGLE9BQU8sTUFBTSxLQUFLLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRU8sd0JBQXdCO1FBQzlCLE1BQU0sV0FBVyxHQUF3QjtZQUN2QyxlQUFlLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjtZQUN0QyxZQUFZLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDaEMsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhO1lBQ2hDLFlBQVksRUFBRSxJQUFJLENBQUMsYUFBYTtZQUNoQyxpQkFBaUIsRUFBRSxJQUFJLENBQUMsa0JBQWtCO1lBQzFDLGNBQWMsRUFBRSxJQUFJLENBQUMsZUFBZTtZQUNwQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDNUIsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3RCLEdBQUcsRUFBRSxJQUFJLGVBQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztZQUM5QixLQUFLLEVBQUUsSUFBSSxlQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztTQUMvQixDQUFDO1FBQ0YsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNuQyxPQUFPO2dCQUNMLEdBQUcsV0FBVztnQkFDZCxTQUFTLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7YUFDaEMsQ0FBQztRQUNKLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3hDLE9BQU87Z0JBQ0wsR0FBRyxXQUFXO2dCQUNkLFVBQVUsRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDN0IsYUFBYSxFQUFFLElBQUksQ0FBQyxpQkFBaUI7YUFDdEMsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLHFDQUEwQixDQUFDLDhCQUE4QixDQUFDLENBQUM7UUFDdkUsQ0FBQztJQUNILENBQUM7Q0FDRjtBQWpFRCwwREFpRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgQmlnTnVtIGZyb20gJ2JuLmpzJztcbmltcG9ydCB7XG4gIENsYXJpdHlWYWx1ZSxcbiAgQ29udHJhY3RDYWxsT3B0aW9ucyxcbiAgbWFrZVVuc2lnbmVkQ29udHJhY3RDYWxsLFxuICBQYXlsb2FkVHlwZSxcbiAgUG9zdENvbmRpdGlvbixcbiAgUG9zdENvbmRpdGlvbk1vZGUsXG4gIFVuc2lnbmVkQ29udHJhY3RDYWxsT3B0aW9ucyxcbiAgVW5zaWduZWRNdWx0aVNpZ0NvbnRyYWN0Q2FsbE9wdGlvbnMsXG59IGZyb20gJ0BzdGFja3MvdHJhbnNhY3Rpb25zJztcbmltcG9ydCB7XG4gIEJ1aWxkVHJhbnNhY3Rpb25FcnJvcixcbiAgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IsXG4gIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLFxuICBUcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdENvbnRyYWN0QnVpbGRlciBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByaXZhdGUgX29wdGlvbnM6IFVuc2lnbmVkQ29udHJhY3RDYWxsT3B0aW9ucyB8IFVuc2lnbmVkTXVsdGlTaWdDb250cmFjdENhbGxPcHRpb25zO1xuICBwcm90ZWN0ZWQgX2NvbnRyYWN0QWRkcmVzczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2NvbnRyYWN0TmFtZTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2Z1bmN0aW9uTmFtZTogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX3Bvc3RDb25kaXRpb25Nb2RlPzogUG9zdENvbmRpdGlvbk1vZGU7XG4gIHByb3RlY3RlZCBfcG9zdENvbmRpdGlvbnM/OiBQb3N0Q29uZGl0aW9uW107XG4gIHByb3RlY3RlZCBfZnVuY3Rpb25BcmdzOiBDbGFyaXR5VmFsdWVbXTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBjb25zdCB0eERhdGEgPSB0eC50b0pzb24oKTtcbiAgICBpZiAodHhEYXRhLnBheWxvYWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdwYXlsb2FkIG11c3Qgbm90IGJlIHVuZGVmaW5lZCcpO1xuICAgIH1cbiAgICBpZiAodHhEYXRhLnBheWxvYWQucGF5bG9hZFR5cGUgPT09IFBheWxvYWRUeXBlLkNvbnRyYWN0Q2FsbCkge1xuICAgICAgdGhpcy5fY29udHJhY3RBZGRyZXNzID0gdHhEYXRhLnBheWxvYWQuY29udHJhY3RBZGRyZXNzO1xuICAgICAgdGhpcy5fY29udHJhY3ROYW1lID0gdHhEYXRhLnBheWxvYWQuY29udHJhY3ROYW1lO1xuICAgICAgdGhpcy5fZnVuY3Rpb25OYW1lID0gdHhEYXRhLnBheWxvYWQuZnVuY3Rpb25OYW1lO1xuICAgICAgdGhpcy5fZnVuY3Rpb25BcmdzID0gdHhEYXRhLnBheWxvYWQuZnVuY3Rpb25BcmdzO1xuICAgICAgc3VwZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdUcmFuc2FjdGlvbiBzaG91bGQgYmUgY29udHJhY3QgY2FsbCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFRyYW5zYWN0aW9uPiB7XG4gICAgdGhpcy5fb3B0aW9ucyA9IHRoaXMuYnVpbGRDb250cmFjdENhbGxPcHRpb25zKCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5zZXRUcmFuc2FjdGlvblR5cGUoVHJhbnNhY3Rpb25UeXBlLkNvbnRyYWN0Q2FsbCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5zdHhUcmFuc2FjdGlvbiA9IGF3YWl0IG1ha2VVbnNpZ25lZENvbnRyYWN0Q2FsbCh0aGlzLl9vcHRpb25zKTtcbiAgICByZXR1cm4gYXdhaXQgc3VwZXIuYnVpbGRJbXBsZW1lbnRhdGlvbigpO1xuICB9XG5cbiAgcHJpdmF0ZSBidWlsZENvbnRyYWN0Q2FsbE9wdGlvbnMoKTogVW5zaWduZWRDb250cmFjdENhbGxPcHRpb25zIHwgVW5zaWduZWRNdWx0aVNpZ0NvbnRyYWN0Q2FsbE9wdGlvbnMge1xuICAgIGNvbnN0IGRlZmF1bHRPcHRzOiBDb250cmFjdENhbGxPcHRpb25zID0ge1xuICAgICAgY29udHJhY3RBZGRyZXNzOiB0aGlzLl9jb250cmFjdEFkZHJlc3MsXG4gICAgICBjb250cmFjdE5hbWU6IHRoaXMuX2NvbnRyYWN0TmFtZSxcbiAgICAgIGZ1bmN0aW9uTmFtZTogdGhpcy5fZnVuY3Rpb25OYW1lLFxuICAgICAgZnVuY3Rpb25BcmdzOiB0aGlzLl9mdW5jdGlvbkFyZ3MsXG4gICAgICBwb3N0Q29uZGl0aW9uTW9kZTogdGhpcy5fcG9zdENvbmRpdGlvbk1vZGUsXG4gICAgICBwb3N0Q29uZGl0aW9uczogdGhpcy5fcG9zdENvbmRpdGlvbnMsXG4gICAgICBhbmNob3JNb2RlOiB0aGlzLl9hbmNob3JNb2RlLFxuICAgICAgbmV0d29yazogdGhpcy5fbmV0d29yayxcbiAgICAgIGZlZTogbmV3IEJpZ051bSh0aGlzLl9mZWUuZmVlKSxcbiAgICAgIG5vbmNlOiBuZXcgQmlnTnVtKHRoaXMuX25vbmNlKSxcbiAgICB9O1xuICAgIGlmICh0aGlzLl9mcm9tUHViS2V5cy5sZW5ndGggPT09IDEpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmRlZmF1bHRPcHRzLFxuICAgICAgICBwdWJsaWNLZXk6IHRoaXMuX2Zyb21QdWJLZXlzWzBdLFxuICAgICAgfTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuX2Zyb21QdWJLZXlzLmxlbmd0aCA+IDEpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmRlZmF1bHRPcHRzLFxuICAgICAgICBwdWJsaWNLZXlzOiB0aGlzLl9mcm9tUHViS2V5cyxcbiAgICAgICAgbnVtU2lnbmF0dXJlczogdGhpcy5fbnVtYmVyU2lnbmF0dXJlcyxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignc3VwcGx5IGF0IGxlYXN0IDEgcHVibGljIGtleScpO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,30 @@
1
+ /**
2
+ * sBTC address version bytes as defined by the sBTC withdrawal contract.
3
+ */
4
+ export declare enum SbtcAddressVersion {
5
+ P2PKH = 0,
6
+ P2SH = 1,
7
+ P2WPKH = 4,
8
+ P2WSH = 5,
9
+ P2TR = 6
10
+ }
11
+ interface DecodedBtcAddress {
12
+ version: SbtcAddressVersion;
13
+ hashBytes: Buffer;
14
+ }
15
+ /**
16
+ * Decode a Bitcoin address into an sBTC version byte and hash bytes.
17
+ *
18
+ * @param {string} address - A Bitcoin address (P2PKH, P2SH, P2WPKH, P2WSH, or P2TR)
19
+ * @returns {DecodedBtcAddress} The sBTC version and raw hash bytes
20
+ */
21
+ export declare function decodeBtcAddress(address: string): DecodedBtcAddress;
22
+ /**
23
+ * Check whether a string is a valid Bitcoin address decodable for sBTC withdrawals.
24
+ *
25
+ * @param {string} address - The address to validate
26
+ * @returns {boolean} true if the address can be decoded
27
+ */
28
+ export declare function isValidBtcAddress(address: string): boolean;
29
+ export {};
30
+ //# sourceMappingURL=btcAddressUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"btcAddressUtils.d.ts","sourceRoot":"","sources":["../../../src/lib/btcAddressUtils.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,oBAAY,kBAAkB;IAC5B,KAAK,IAAO;IACZ,IAAI,IAAO;IACX,MAAM,IAAO;IACb,KAAK,IAAO;IACZ,IAAI,IAAO;CACZ;AAED,UAAU,iBAAiB;IACzB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;CACnB;AAOD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,CA4DnE;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAO1D"}
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.SbtcAddressVersion = void 0;
37
+ exports.decodeBtcAddress = decodeBtcAddress;
38
+ exports.isValidBtcAddress = isValidBtcAddress;
39
+ const bs58check = __importStar(require("bs58check"));
40
+ const bech32_1 = require("bech32");
41
+ /**
42
+ * sBTC address version bytes as defined by the sBTC withdrawal contract.
43
+ */
44
+ var SbtcAddressVersion;
45
+ (function (SbtcAddressVersion) {
46
+ SbtcAddressVersion[SbtcAddressVersion["P2PKH"] = 0] = "P2PKH";
47
+ SbtcAddressVersion[SbtcAddressVersion["P2SH"] = 1] = "P2SH";
48
+ SbtcAddressVersion[SbtcAddressVersion["P2WPKH"] = 4] = "P2WPKH";
49
+ SbtcAddressVersion[SbtcAddressVersion["P2WSH"] = 5] = "P2WSH";
50
+ SbtcAddressVersion[SbtcAddressVersion["P2TR"] = 6] = "P2TR";
51
+ })(SbtcAddressVersion || (exports.SbtcAddressVersion = SbtcAddressVersion = {}));
52
+ const BASE58_MAINNET_P2PKH = 0x00;
53
+ const BASE58_MAINNET_P2SH = 0x05;
54
+ const BASE58_TESTNET_P2PKH = 0x6f;
55
+ const BASE58_TESTNET_P2SH = 0xc4;
56
+ /**
57
+ * Decode a Bitcoin address into an sBTC version byte and hash bytes.
58
+ *
59
+ * @param {string} address - A Bitcoin address (P2PKH, P2SH, P2WPKH, P2WSH, or P2TR)
60
+ * @returns {DecodedBtcAddress} The sBTC version and raw hash bytes
61
+ */
62
+ function decodeBtcAddress(address) {
63
+ // Try base58check first (P2PKH / P2SH)
64
+ try {
65
+ const decoded = bs58check.decode(address);
66
+ const versionByte = decoded[0];
67
+ const hash = decoded.slice(1);
68
+ if (hash.length !== 20) {
69
+ throw new Error(`Invalid base58check hash length: ${hash.length}`);
70
+ }
71
+ switch (versionByte) {
72
+ case BASE58_MAINNET_P2PKH:
73
+ case BASE58_TESTNET_P2PKH:
74
+ return { version: SbtcAddressVersion.P2PKH, hashBytes: Buffer.from(hash) };
75
+ case BASE58_MAINNET_P2SH:
76
+ case BASE58_TESTNET_P2SH:
77
+ return { version: SbtcAddressVersion.P2SH, hashBytes: Buffer.from(hash) };
78
+ default:
79
+ throw new Error(`Unknown base58check version byte: 0x${versionByte.toString(16)}`);
80
+ }
81
+ }
82
+ catch (e) {
83
+ // Not base58check, try bech32/bech32m below
84
+ }
85
+ // Try bech32 (P2WPKH / P2WSH) and bech32m (P2TR)
86
+ let decoded;
87
+ let isBech32m = false;
88
+ try {
89
+ decoded = bech32_1.bech32.decode(address);
90
+ }
91
+ catch {
92
+ try {
93
+ decoded = bech32_1.bech32m.decode(address);
94
+ isBech32m = true;
95
+ }
96
+ catch {
97
+ throw new Error(`Unable to decode Bitcoin address: ${address}`);
98
+ }
99
+ }
100
+ const witnessVersion = decoded.words[0];
101
+ const data = Buffer.from(bech32_1.bech32.fromWords(decoded.words.slice(1)));
102
+ if (witnessVersion === 0 && !isBech32m) {
103
+ if (data.length === 20) {
104
+ return { version: SbtcAddressVersion.P2WPKH, hashBytes: data };
105
+ }
106
+ else if (data.length === 32) {
107
+ return { version: SbtcAddressVersion.P2WSH, hashBytes: data };
108
+ }
109
+ throw new Error(`Invalid witness v0 program length: ${data.length}`);
110
+ }
111
+ if (witnessVersion === 1 && isBech32m) {
112
+ if (data.length === 32) {
113
+ return { version: SbtcAddressVersion.P2TR, hashBytes: data };
114
+ }
115
+ throw new Error(`Invalid witness v1 program length: ${data.length}`);
116
+ }
117
+ throw new Error(`Unsupported witness version ${witnessVersion} for address: ${address}`);
118
+ }
119
+ /**
120
+ * Check whether a string is a valid Bitcoin address decodable for sBTC withdrawals.
121
+ *
122
+ * @param {string} address - The address to validate
123
+ * @returns {boolean} true if the address can be decoded
124
+ */
125
+ function isValidBtcAddress(address) {
126
+ try {
127
+ decodeBtcAddress(address);
128
+ return true;
129
+ }
130
+ catch {
131
+ return false;
132
+ }
133
+ }
134
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRjQWRkcmVzc1V0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9idGNBZGRyZXNzVXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBOEJBLDRDQTREQztBQVFELDhDQU9DO0FBekdELHFEQUF1QztBQUN2QyxtQ0FBeUM7QUFFekM7O0dBRUc7QUFDSCxJQUFZLGtCQU1YO0FBTkQsV0FBWSxrQkFBa0I7SUFDNUIsNkRBQVksQ0FBQTtJQUNaLDJEQUFXLENBQUE7SUFDWCwrREFBYSxDQUFBO0lBQ2IsNkRBQVksQ0FBQTtJQUNaLDJEQUFXLENBQUE7QUFDYixDQUFDLEVBTlcsa0JBQWtCLGtDQUFsQixrQkFBa0IsUUFNN0I7QUFPRCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQztBQUNsQyxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQztBQUNqQyxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQztBQUNsQyxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQztBQUVqQzs7Ozs7R0FLRztBQUNILFNBQWdCLGdCQUFnQixDQUFDLE9BQWU7SUFDOUMsdUNBQXVDO0lBQ3ZDLElBQUksQ0FBQztRQUNILE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUMsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9CLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFOUIsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3ZCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLENBQUM7UUFFRCxRQUFRLFdBQVcsRUFBRSxDQUFDO1lBQ3BCLEtBQUssb0JBQW9CLENBQUM7WUFDMUIsS0FBSyxvQkFBb0I7Z0JBQ3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsa0JBQWtCLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDN0UsS0FBSyxtQkFBbUIsQ0FBQztZQUN6QixLQUFLLG1CQUFtQjtnQkFDdEIsT0FBTyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUM1RTtnQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLHVDQUF1QyxXQUFXLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN2RixDQUFDO0lBQ0gsQ0FBQztJQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDWCw0Q0FBNEM7SUFDOUMsQ0FBQztJQUVELGlEQUFpRDtJQUNqRCxJQUFJLE9BQTRDLENBQUM7SUFDakQsSUFBSSxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRXRCLElBQUksQ0FBQztRQUNILE9BQU8sR0FBRyxlQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFBQyxNQUFNLENBQUM7UUFDUCxJQUFJLENBQUM7WUFDSCxPQUFPLEdBQUcsZ0JBQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUNuQixDQUFDO1FBQUMsTUFBTSxDQUFDO1lBQ1AsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQ0FBcUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUNsRSxDQUFDO0lBQ0gsQ0FBQztJQUVELE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDeEMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVuRSxJQUFJLGNBQWMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUN2QyxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ2pFLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLEtBQUssRUFBRSxFQUFFLENBQUM7WUFDOUIsT0FBTyxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ2hFLENBQUM7UUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQsSUFBSSxjQUFjLEtBQUssQ0FBQyxJQUFJLFNBQVMsRUFBRSxDQUFDO1FBQ3RDLElBQUksSUFBSSxDQUFDLE1BQU0sS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUM7UUFDL0QsQ0FBQztRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsc0NBQXNDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLCtCQUErQixjQUFjLGlCQUFpQixPQUFPLEVBQUUsQ0FBQyxDQUFDO0FBQzNGLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLE9BQWU7SUFDL0MsSUFBSSxDQUFDO1FBQ0gsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQUMsTUFBTSxDQUFDO1FBQ1AsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGJzNThjaGVjayBmcm9tICdiczU4Y2hlY2snO1xuaW1wb3J0IHsgYmVjaDMyLCBiZWNoMzJtIH0gZnJvbSAnYmVjaDMyJztcblxuLyoqXG4gKiBzQlRDIGFkZHJlc3MgdmVyc2lvbiBieXRlcyBhcyBkZWZpbmVkIGJ5IHRoZSBzQlRDIHdpdGhkcmF3YWwgY29udHJhY3QuXG4gKi9cbmV4cG9ydCBlbnVtIFNidGNBZGRyZXNzVmVyc2lvbiB7XG4gIFAyUEtIID0gMHgwMCxcbiAgUDJTSCA9IDB4MDEsXG4gIFAyV1BLSCA9IDB4MDQsXG4gIFAyV1NIID0gMHgwNSxcbiAgUDJUUiA9IDB4MDYsXG59XG5cbmludGVyZmFjZSBEZWNvZGVkQnRjQWRkcmVzcyB7XG4gIHZlcnNpb246IFNidGNBZGRyZXNzVmVyc2lvbjtcbiAgaGFzaEJ5dGVzOiBCdWZmZXI7XG59XG5cbmNvbnN0IEJBU0U1OF9NQUlOTkVUX1AyUEtIID0gMHgwMDtcbmNvbnN0IEJBU0U1OF9NQUlOTkVUX1AyU0ggPSAweDA1O1xuY29uc3QgQkFTRTU4X1RFU1RORVRfUDJQS0ggPSAweDZmO1xuY29uc3QgQkFTRTU4X1RFU1RORVRfUDJTSCA9IDB4YzQ7XG5cbi8qKlxuICogRGVjb2RlIGEgQml0Y29pbiBhZGRyZXNzIGludG8gYW4gc0JUQyB2ZXJzaW9uIGJ5dGUgYW5kIGhhc2ggYnl0ZXMuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgLSBBIEJpdGNvaW4gYWRkcmVzcyAoUDJQS0gsIFAyU0gsIFAyV1BLSCwgUDJXU0gsIG9yIFAyVFIpXG4gKiBAcmV0dXJucyB7RGVjb2RlZEJ0Y0FkZHJlc3N9IFRoZSBzQlRDIHZlcnNpb24gYW5kIHJhdyBoYXNoIGJ5dGVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBkZWNvZGVCdGNBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IERlY29kZWRCdGNBZGRyZXNzIHtcbiAgLy8gVHJ5IGJhc2U1OGNoZWNrIGZpcnN0IChQMlBLSCAvIFAyU0gpXG4gIHRyeSB7XG4gICAgY29uc3QgZGVjb2RlZCA9IGJzNThjaGVjay5kZWNvZGUoYWRkcmVzcyk7XG4gICAgY29uc3QgdmVyc2lvbkJ5dGUgPSBkZWNvZGVkWzBdO1xuICAgIGNvbnN0IGhhc2ggPSBkZWNvZGVkLnNsaWNlKDEpO1xuXG4gICAgaWYgKGhhc2gubGVuZ3RoICE9PSAyMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGJhc2U1OGNoZWNrIGhhc2ggbGVuZ3RoOiAke2hhc2gubGVuZ3RofWApO1xuICAgIH1cblxuICAgIHN3aXRjaCAodmVyc2lvbkJ5dGUpIHtcbiAgICAgIGNhc2UgQkFTRTU4X01BSU5ORVRfUDJQS0g6XG4gICAgICBjYXNlIEJBU0U1OF9URVNUTkVUX1AyUEtIOlxuICAgICAgICByZXR1cm4geyB2ZXJzaW9uOiBTYnRjQWRkcmVzc1ZlcnNpb24uUDJQS0gsIGhhc2hCeXRlczogQnVmZmVyLmZyb20oaGFzaCkgfTtcbiAgICAgIGNhc2UgQkFTRTU4X01BSU5ORVRfUDJTSDpcbiAgICAgIGNhc2UgQkFTRTU4X1RFU1RORVRfUDJTSDpcbiAgICAgICAgcmV0dXJuIHsgdmVyc2lvbjogU2J0Y0FkZHJlc3NWZXJzaW9uLlAyU0gsIGhhc2hCeXRlczogQnVmZmVyLmZyb20oaGFzaCkgfTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBiYXNlNThjaGVjayB2ZXJzaW9uIGJ5dGU6IDB4JHt2ZXJzaW9uQnl0ZS50b1N0cmluZygxNil9YCk7XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gTm90IGJhc2U1OGNoZWNrLCB0cnkgYmVjaDMyL2JlY2gzMm0gYmVsb3dcbiAgfVxuXG4gIC8vIFRyeSBiZWNoMzIgKFAyV1BLSCAvIFAyV1NIKSBhbmQgYmVjaDMybSAoUDJUUilcbiAgbGV0IGRlY29kZWQ6IHsgcHJlZml4OiBzdHJpbmc7IHdvcmRzOiBudW1iZXJbXSB9O1xuICBsZXQgaXNCZWNoMzJtID0gZmFsc2U7XG5cbiAgdHJ5IHtcbiAgICBkZWNvZGVkID0gYmVjaDMyLmRlY29kZShhZGRyZXNzKTtcbiAgfSBjYXRjaCB7XG4gICAgdHJ5IHtcbiAgICAgIGRlY29kZWQgPSBiZWNoMzJtLmRlY29kZShhZGRyZXNzKTtcbiAgICAgIGlzQmVjaDMybSA9IHRydWU7XG4gICAgfSBjYXRjaCB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuYWJsZSB0byBkZWNvZGUgQml0Y29pbiBhZGRyZXNzOiAke2FkZHJlc3N9YCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3Qgd2l0bmVzc1ZlcnNpb24gPSBkZWNvZGVkLndvcmRzWzBdO1xuICBjb25zdCBkYXRhID0gQnVmZmVyLmZyb20oYmVjaDMyLmZyb21Xb3JkcyhkZWNvZGVkLndvcmRzLnNsaWNlKDEpKSk7XG5cbiAgaWYgKHdpdG5lc3NWZXJzaW9uID09PSAwICYmICFpc0JlY2gzMm0pIHtcbiAgICBpZiAoZGF0YS5sZW5ndGggPT09IDIwKSB7XG4gICAgICByZXR1cm4geyB2ZXJzaW9uOiBTYnRjQWRkcmVzc1ZlcnNpb24uUDJXUEtILCBoYXNoQnl0ZXM6IGRhdGEgfTtcbiAgICB9IGVsc2UgaWYgKGRhdGEubGVuZ3RoID09PSAzMikge1xuICAgICAgcmV0dXJuIHsgdmVyc2lvbjogU2J0Y0FkZHJlc3NWZXJzaW9uLlAyV1NILCBoYXNoQnl0ZXM6IGRhdGEgfTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHdpdG5lc3MgdjAgcHJvZ3JhbSBsZW5ndGg6ICR7ZGF0YS5sZW5ndGh9YCk7XG4gIH1cblxuICBpZiAod2l0bmVzc1ZlcnNpb24gPT09IDEgJiYgaXNCZWNoMzJtKSB7XG4gICAgaWYgKGRhdGEubGVuZ3RoID09PSAzMikge1xuICAgICAgcmV0dXJuIHsgdmVyc2lvbjogU2J0Y0FkZHJlc3NWZXJzaW9uLlAyVFIsIGhhc2hCeXRlczogZGF0YSB9O1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgd2l0bmVzcyB2MSBwcm9ncmFtIGxlbmd0aDogJHtkYXRhLmxlbmd0aH1gKTtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgd2l0bmVzcyB2ZXJzaW9uICR7d2l0bmVzc1ZlcnNpb259IGZvciBhZGRyZXNzOiAke2FkZHJlc3N9YCk7XG59XG5cbi8qKlxuICogQ2hlY2sgd2hldGhlciBhIHN0cmluZyBpcyBhIHZhbGlkIEJpdGNvaW4gYWRkcmVzcyBkZWNvZGFibGUgZm9yIHNCVEMgd2l0aGRyYXdhbHMuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgLSBUaGUgYWRkcmVzcyB0byB2YWxpZGF0ZVxuICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWYgdGhlIGFkZHJlc3MgY2FuIGJlIGRlY29kZWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVmFsaWRCdGNBZGRyZXNzKGFkZHJlc3M6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIGRlY29kZUJ0Y0FkZHJlc3MoYWRkcmVzcyk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2gge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuIl19
@@ -1,6 +1,9 @@
1
1
  export declare const FUNCTION_NAME_SENDMANY = "send-many";
2
2
  export declare const CONTRACT_NAME_SENDMANY = "send-many-memo";
3
- export declare const CONTRACT_NAME_STAKING = "pox";
3
+ export declare const CONTRACT_NAME_STAKING = "pox-4";
4
+ export declare const FUNCTION_NAME_TRANSFER = "transfer";
5
+ export declare const CONTRACT_NAME_SBTC_WITHDRAWAL = "sbtc-withdrawal";
6
+ export declare const FUNCTION_NAME_INITIATE_WITHDRAWAL = "initiate-withdrawal-request";
4
7
  export declare const VALID_CONTRACT_FUNCTION_NAMES: string[];
5
8
  export declare const DEFAULT_SEED_SIZE_BYTES = 64;
6
9
  export declare const ANCHOR_MODE = 3;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAClD,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AACvD,eAAO,MAAM,qBAAqB,QAAQ,CAAC;AAE3C,eAAO,MAAM,6BAA6B,UAOzC,CAAC;AAEF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAG1C,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,2BAA2B,IAAI,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAClD,eAAO,MAAM,sBAAsB,mBAAmB,CAAC;AACvD,eAAO,MAAM,qBAAqB,UAAU,CAAC;AAC7C,eAAO,MAAM,sBAAsB,aAAa,CAAC;AACjD,eAAO,MAAM,6BAA6B,oBAAoB,CAAC;AAC/D,eAAO,MAAM,iCAAiC,gCAAgC,CAAC;AAE/E,eAAO,MAAM,6BAA6B,UASzC,CAAC;AAEF,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAG1C,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,2BAA2B,IAAI,CAAC"}
@@ -1,9 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DEFAULT_MULTISIG_SIG_NUMBER = exports.ANCHOR_MODE = exports.DEFAULT_SEED_SIZE_BYTES = exports.VALID_CONTRACT_FUNCTION_NAMES = exports.CONTRACT_NAME_STAKING = exports.CONTRACT_NAME_SENDMANY = exports.FUNCTION_NAME_SENDMANY = void 0;
3
+ exports.DEFAULT_MULTISIG_SIG_NUMBER = exports.ANCHOR_MODE = exports.DEFAULT_SEED_SIZE_BYTES = exports.VALID_CONTRACT_FUNCTION_NAMES = exports.FUNCTION_NAME_INITIATE_WITHDRAWAL = exports.CONTRACT_NAME_SBTC_WITHDRAWAL = exports.FUNCTION_NAME_TRANSFER = exports.CONTRACT_NAME_STAKING = exports.CONTRACT_NAME_SENDMANY = exports.FUNCTION_NAME_SENDMANY = void 0;
4
4
  exports.FUNCTION_NAME_SENDMANY = 'send-many';
5
5
  exports.CONTRACT_NAME_SENDMANY = 'send-many-memo';
6
- exports.CONTRACT_NAME_STAKING = 'pox';
6
+ exports.CONTRACT_NAME_STAKING = 'pox-4';
7
+ exports.FUNCTION_NAME_TRANSFER = 'transfer';
8
+ exports.CONTRACT_NAME_SBTC_WITHDRAWAL = 'sbtc-withdrawal';
9
+ exports.FUNCTION_NAME_INITIATE_WITHDRAWAL = 'initiate-withdrawal-request';
7
10
  exports.VALID_CONTRACT_FUNCTION_NAMES = [
8
11
  'stack-stx',
9
12
  'delegate-stx',
@@ -11,9 +14,11 @@ exports.VALID_CONTRACT_FUNCTION_NAMES = [
11
14
  'stack-aggregation-commit',
12
15
  'revoke-delegate-stx',
13
16
  'send-many',
17
+ 'transfer',
18
+ 'initiate-withdrawal-request',
14
19
  ];
15
20
  exports.DEFAULT_SEED_SIZE_BYTES = 64;
16
21
  // https://github.com/stacksgov/sips/blob/main/sips/sip-005/sip-005-blocks-and-transactions.md#transaction-encoding
17
22
  exports.ANCHOR_MODE = 3;
18
23
  exports.DEFAULT_MULTISIG_SIG_NUMBER = 2;
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxzQkFBc0IsR0FBRyxXQUFXLENBQUM7QUFDckMsUUFBQSxzQkFBc0IsR0FBRyxnQkFBZ0IsQ0FBQztBQUMxQyxRQUFBLHFCQUFxQixHQUFHLEtBQUssQ0FBQztBQUU5QixRQUFBLDZCQUE2QixHQUFHO0lBQzNDLFdBQVc7SUFDWCxjQUFjO0lBQ2Qsb0JBQW9CO0lBQ3BCLDBCQUEwQjtJQUMxQixxQkFBcUI7SUFDckIsV0FBVztDQUNaLENBQUM7QUFFVyxRQUFBLHVCQUF1QixHQUFHLEVBQUUsQ0FBQztBQUUxQyxtSEFBbUg7QUFDdEcsUUFBQSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ2hCLFFBQUEsMkJBQTJCLEdBQUcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEZVTkNUSU9OX05BTUVfU0VORE1BTlkgPSAnc2VuZC1tYW55JztcbmV4cG9ydCBjb25zdCBDT05UUkFDVF9OQU1FX1NFTkRNQU5ZID0gJ3NlbmQtbWFueS1tZW1vJztcbmV4cG9ydCBjb25zdCBDT05UUkFDVF9OQU1FX1NUQUtJTkcgPSAncG94JztcblxuZXhwb3J0IGNvbnN0IFZBTElEX0NPTlRSQUNUX0ZVTkNUSU9OX05BTUVTID0gW1xuICAnc3RhY2stc3R4JyxcbiAgJ2RlbGVnYXRlLXN0eCcsXG4gICdkZWxlZ2F0ZS1zdGFjay1zdHgnLFxuICAnc3RhY2stYWdncmVnYXRpb24tY29tbWl0JyxcbiAgJ3Jldm9rZS1kZWxlZ2F0ZS1zdHgnLFxuICAnc2VuZC1tYW55Jyxcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX1NFRURfU0laRV9CWVRFUyA9IDY0O1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vc3RhY2tzZ292L3NpcHMvYmxvYi9tYWluL3NpcHMvc2lwLTAwNS9zaXAtMDA1LWJsb2Nrcy1hbmQtdHJhbnNhY3Rpb25zLm1kI3RyYW5zYWN0aW9uLWVuY29kaW5nXG5leHBvcnQgY29uc3QgQU5DSE9SX01PREUgPSAzO1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfTVVMVElTSUdfU0lHX05VTUJFUiA9IDI7XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxzQkFBc0IsR0FBRyxXQUFXLENBQUM7QUFDckMsUUFBQSxzQkFBc0IsR0FBRyxnQkFBZ0IsQ0FBQztBQUMxQyxRQUFBLHFCQUFxQixHQUFHLE9BQU8sQ0FBQztBQUNoQyxRQUFBLHNCQUFzQixHQUFHLFVBQVUsQ0FBQztBQUNwQyxRQUFBLDZCQUE2QixHQUFHLGlCQUFpQixDQUFDO0FBQ2xELFFBQUEsaUNBQWlDLEdBQUcsNkJBQTZCLENBQUM7QUFFbEUsUUFBQSw2QkFBNkIsR0FBRztJQUMzQyxXQUFXO0lBQ1gsY0FBYztJQUNkLG9CQUFvQjtJQUNwQiwwQkFBMEI7SUFDMUIscUJBQXFCO0lBQ3JCLFdBQVc7SUFDWCxVQUFVO0lBQ1YsNkJBQTZCO0NBQzlCLENBQUM7QUFFVyxRQUFBLHVCQUF1QixHQUFHLEVBQUUsQ0FBQztBQUUxQyxtSEFBbUg7QUFDdEcsUUFBQSxXQUFXLEdBQUcsQ0FBQyxDQUFDO0FBQ2hCLFFBQUEsMkJBQTJCLEdBQUcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEZVTkNUSU9OX05BTUVfU0VORE1BTlkgPSAnc2VuZC1tYW55JztcbmV4cG9ydCBjb25zdCBDT05UUkFDVF9OQU1FX1NFTkRNQU5ZID0gJ3NlbmQtbWFueS1tZW1vJztcbmV4cG9ydCBjb25zdCBDT05UUkFDVF9OQU1FX1NUQUtJTkcgPSAncG94LTQnO1xuZXhwb3J0IGNvbnN0IEZVTkNUSU9OX05BTUVfVFJBTlNGRVIgPSAndHJhbnNmZXInO1xuZXhwb3J0IGNvbnN0IENPTlRSQUNUX05BTUVfU0JUQ19XSVRIRFJBV0FMID0gJ3NidGMtd2l0aGRyYXdhbCc7XG5leHBvcnQgY29uc3QgRlVOQ1RJT05fTkFNRV9JTklUSUFURV9XSVRIRFJBV0FMID0gJ2luaXRpYXRlLXdpdGhkcmF3YWwtcmVxdWVzdCc7XG5cbmV4cG9ydCBjb25zdCBWQUxJRF9DT05UUkFDVF9GVU5DVElPTl9OQU1FUyA9IFtcbiAgJ3N0YWNrLXN0eCcsXG4gICdkZWxlZ2F0ZS1zdHgnLFxuICAnZGVsZWdhdGUtc3RhY2stc3R4JyxcbiAgJ3N0YWNrLWFnZ3JlZ2F0aW9uLWNvbW1pdCcsXG4gICdyZXZva2UtZGVsZWdhdGUtc3R4JyxcbiAgJ3NlbmQtbWFueScsXG4gICd0cmFuc2ZlcicsXG4gICdpbml0aWF0ZS13aXRoZHJhd2FsLXJlcXVlc3QnLFxuXTtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfU0VFRF9TSVpFX0JZVEVTID0gNjQ7XG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9zdGFja3Nnb3Yvc2lwcy9ibG9iL21haW4vc2lwcy9zaXAtMDA1L3NpcC0wMDUtYmxvY2tzLWFuZC10cmFuc2FjdGlvbnMubWQjdHJhbnNhY3Rpb24tZW5jb2RpbmdcbmV4cG9ydCBjb25zdCBBTkNIT1JfTU9ERSA9IDM7XG5leHBvcnQgY29uc3QgREVGQVVMVF9NVUxUSVNJR19TSUdfTlVNQkVSID0gMjtcbiJdfQ==
@@ -27,7 +27,7 @@ class ContractBuilder extends abstractContractBuilder_1.AbstractContractBuilder
27
27
  * @returns {ContractBuilder} the builder with the new parameter set
28
28
  */
29
29
  contractAddress(address) {
30
- if (!utils_1.isValidAddress(address)) {
30
+ if (!(0, utils_1.isValidAddress)(address)) {
31
31
  throw new sdk_core_1.InvalidParameterValueError('Invalid address');
32
32
  }
33
33
  if (!_1.Utils.isValidContractAddress(address, this._coinConfig.network)) {
@@ -47,7 +47,7 @@ class ContractBuilder extends abstractContractBuilder_1.AbstractContractBuilder
47
47
  throw new sdk_core_1.InvalidParameterValueError('Invalid name');
48
48
  }
49
49
  if (name !== constants_1.CONTRACT_NAME_STAKING && name !== constants_1.CONTRACT_NAME_SENDMANY) {
50
- throw new sdk_core_1.InvalidParameterValueError('Only pox and send-many-memo contracts supported');
50
+ throw new sdk_core_1.InvalidParameterValueError('Only pox-4 and send-many-memo contracts supported');
51
51
  }
52
52
  this._contractName = name;
53
53
  return this;
@@ -84,10 +84,10 @@ class ContractBuilder extends abstractContractBuilder_1.AbstractContractBuilder
84
84
  switch (arg.type) {
85
85
  case 'optional':
86
86
  if (arg.val === undefined) {
87
- return transactions_1.noneCV();
87
+ return (0, transactions_1.noneCV)();
88
88
  }
89
89
  else {
90
- return transactions_1.someCV(this.parseCv(arg.val));
90
+ return (0, transactions_1.someCV)(this.parseCv(arg.val));
91
91
  }
92
92
  case 'tuple':
93
93
  if (arg.val instanceof Array) {
@@ -95,22 +95,22 @@ class ContractBuilder extends abstractContractBuilder_1.AbstractContractBuilder
95
95
  arg.val.forEach((a) => {
96
96
  data[a.key] = this.parseCv({ type: a.type, val: a.val });
97
97
  });
98
- return transactions_1.tupleCV(data);
98
+ return (0, transactions_1.tupleCV)(data);
99
99
  }
100
100
  throw new sdk_core_1.InvalidParameterValueError('tuple require Array val');
101
101
  case 'buffer':
102
102
  if (arg.val instanceof Buffer) {
103
- return transactions_1.bufferCV(arg.val);
103
+ return (0, transactions_1.bufferCV)(arg.val);
104
104
  }
105
105
  const nval = Number(arg.val);
106
106
  if (nval) {
107
- return transactions_1.bufferCV(Buffer.of(nval));
107
+ return (0, transactions_1.bufferCV)(Buffer.of(nval));
108
108
  }
109
- return transactions_1.bufferCVFromString(arg.val);
109
+ return (0, transactions_1.bufferCVFromString)(arg.val);
110
110
  default:
111
- return transactions_1.encodeClarityValue(arg.type, arg.val);
111
+ return (0, transactions_1.encodeClarityValue)(arg.type, arg.val);
112
112
  }
113
113
  }
114
114
  }
115
115
  exports.ContractBuilder = ContractBuilder;
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb250cmFjdEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsdURBVThCO0FBQzlCLG1EQUFrRTtBQUVsRSxtQ0FBeUM7QUFFekMsd0JBQTBCO0FBQzFCLDJDQUE0RTtBQUM1RSx1RUFBb0U7QUFFcEUsTUFBYSxlQUFnQixTQUFRLGlEQUF1QjtJQUMxRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQWU7UUFDekIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QiwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQseUJBQXlCO0lBQ3pCOzs7OztPQUtHO0lBQ0gsZUFBZSxDQUFDLE9BQWU7UUFDN0IsSUFBSSxDQUFDLHNCQUFjLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDNUIsTUFBTSxJQUFJLHFDQUEwQixDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDekQ7UUFDRCxJQUFJLENBQUMsUUFBSyxDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQTZCLENBQUMsRUFBRTtZQUMxRixNQUFNLElBQUkscUNBQTBCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztTQUNsRTtRQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxPQUFPLENBQUM7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QUNELE9BQU8saUNBQWtCLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3JDO2dCQUNFLE9BQU8saUNBQWtCLENBQUMsR0FBRyxDQUFDLElBQXNCLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2xFO0lBQ0gsQ0FBQztDQUNGO0FBNUdELDBDQTRHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcsIFN0YWNrc05ldHdvcmsgYXMgQml0Z29TdGFja3NOZXR3b3JrIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQge1xuICBidWZmZXJDVixcbiAgYnVmZmVyQ1ZGcm9tU3RyaW5nLFxuICBDbGFyaXR5QWJpVHlwZSxcbiAgQ2xhcml0eVR5cGUsXG4gIENsYXJpdHlWYWx1ZSxcbiAgZW5jb2RlQ2xhcml0eVZhbHVlLFxuICBub25lQ1YsXG4gIHNvbWVDVixcbiAgdHVwbGVDVixcbn0gZnJvbSAnQHN0YWNrcy90cmFuc2FjdGlvbnMnO1xuaW1wb3J0IHsgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgaXNWYWxpZEFkZHJlc3MgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IENsYXJpdHlWYWx1ZUpzb24gfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLic7XG5pbXBvcnQgeyBDT05UUkFDVF9OQU1FX1NFTkRNQU5ZLCBDT05UUkFDVF9OQU1FX1NUQUtJTkcgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyYWN0QnVpbGRlciB9IGZyb20gJy4vYWJzdHJhY3RDb250cmFjdEJ1aWxkZXInO1xuXG5leHBvcnQgY2xhc3MgQ29udHJhY3RCdWlsZGVyIGV4dGVuZHMgQWJzdHJhY3RDb250cmFjdEJ1aWxkZXIge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci5pbml0QnVpbGRlcih0eCk7XG4gICAgLy8gUmV0cm8gY29tcGF0aWJpbGl0eSwgY2hlY2tzIHBhcmFtZXRlcnMuXG4gICAgdGhpcy5jb250cmFjdEFkZHJlc3ModGhpcy5fY29udHJhY3RBZGRyZXNzKTtcbiAgICB0aGlzLmNvbnRyYWN0TmFtZSh0aGlzLl9jb250cmFjdE5hbWUpO1xuICAgIHRoaXMuZnVuY3Rpb25OYW1lKHRoaXMuX2Z1bmN0aW9uTmFtZSk7XG4gICAgdGhpcy5mdW5jdGlvbkFyZ3ModGhpcy5fZnVuY3Rpb25BcmdzKTtcbiAgfVxuXG4gIC8vIHJlZ2lvbiBDb250cmFjdCBmaWVsZHNcbiAgLyoqXG4gICAqIFNldCB0aGUgY29udHJhY3QgYWRkcmVzc1xuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYWRkcmVzcyB0aGUgYWRkcmVzcyBkZXBsb3llZCB0aGUgY29udHJhY3RcbiAgICogQHJldHVybnMge0NvbnRyYWN0QnVpbGRlcn0gdGhlIGJ1aWxkZXIgd2l0aCB0aGUgbmV3IHBhcmFtZXRlciBzZXRcbiAgICovXG4gIGNvbnRyYWN0QWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICAgIH1cbiAgICBpZiAoIVV0aWxzLmlzVmFsaWRDb250cmFjdEFkZHJlc3MoYWRkcmVzcywgdGhpcy5fY29pbkNvbmZpZy5uZXR3b3JrIGFzIEJpdGdvU3RhY2tzTmV0d29yaykpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBjb250cmFjdCBhZGRyZXNzJyk7XG4gICAgfVxuICAgIHRoaXMuX2NvbnRyYWN0QWRkcmVzcyA9IGFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb250cmFjdCBuYW1lXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIG5hbWUgb2YgY29udHJhY3RcbiAgICogQHJldHVybnMge0NvbnRyYWN0QnVpbGRlcn0gdGhlIGJ1aWxkZXIgd2l0aCB0aGUgbmV3IHBhcmFtZXRlciBzZXRcbiAgICovXG4gIGNvbnRyYWN0TmFtZShuYW1lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAobmFtZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBuYW1lJyk7XG4gICAgfVxuICAgIGlmIChuYW1lICE9PSBDT05UUkFDVF9OQU1FX1NUQUtJTkcgJiYgbmFtZSAhPT0gQ09OVFJBQ1RfTkFNRV9TRU5ETUFOWSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdPbmx5IHBveCBhbmQgc2VuZC1tYW55LW1lbW8gY29udHJhY3RzIHN1cHBvcnRlZCcpO1xuICAgIH1cbiAgICB0aGlzLl9jb250cmFjdE5hbWUgPSBuYW1lO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgZnVuY3Rpb24gbmFtZSBpbiBjb250cmFjdFxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbmFtZSBuYW1lIG9mIGZ1bmN0aW9uXG4gICAqIEByZXR1cm5zIHtDb250cmFjdEJ1aWxkZXJ9IHRoZSBidWlsZGVyIHdpdGggdGhlIG5ldyBwYXJhbWV0ZXIgc2V0XG4gICAqL1xuICBmdW5jdGlvbk5hbWUobmFtZTogc3RyaW5nKTogdGhpcyB7XG4gICAgaWYgKG5hbWUubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgbmFtZScpO1xuICAgIH1cbiAgICBpZiAoIVV0aWxzLmlzVmFsaWRDb250cmFjdEZ1bmN0aW9uTmFtZShuYW1lKSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKGAke25hbWV9IGlzIG5vdCBzdXBwb3J0ZWQgY29udHJhY3QgZnVuY3Rpb24gbmFtZWApO1xuICAgIH1cbiAgICB0aGlzLl9mdW5jdGlvbk5hbWUgPSBuYW1lO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgZnVuY3Rpb25BcmdzKGFyZ3M6IENsYXJpdHlWYWx1ZUpzb25bXSB8IENsYXJpdHlWYWx1ZVtdKTogdGhpcyB7XG4gICAgdGhpcy5fZnVuY3Rpb25BcmdzID0gYXJncy5tYXAoKGFyZykgPT4ge1xuICAgICAgaWYgKCFDbGFyaXR5VHlwZVthcmcudHlwZV0pIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyc2VDdihhcmcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gZ290IGRpcmVjdCBjbGFyaXR5IHZhbHVlIGFmdGVyIGRlc2VyaWFsaXphdGlvbiBpbiBmcm9tSW1wbGVtZW50YXRpb25cbiAgICAgICAgcmV0dXJuIGFyZztcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHByaXZhdGUgcGFyc2VDdihhcmc6IENsYXJpdHlWYWx1ZUpzb24pOiBDbGFyaXR5VmFsdWUge1xuICAgIHN3aXRjaCAoYXJnLnR5cGUpIHtcbiAgICAgIGNhc2UgJ29wdGlvbmFsJzpcbiAgICAgICAgaWYgKGFyZy52YWwgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiBub25lQ1YoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gc29tZUNWKHRoaXMucGFyc2VDdihhcmcudmFsKSk7XG4gICAgICAgIH1cbiAgICAgIGNhc2UgJ3R1cGxlJzpcbiAgICAgICAgaWYgKGFyZy52YWwgaW5zdGFuY2VvZiBBcnJheSkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSB7fTtcbiAgICAgICAgICBhcmcudmFsLmZvckVhY2goKGEpID0+IHtcbiAgICAgICAgICAgIGRhdGFbYS5rZXldID0gdGhpcy5wYXJzZUN2KHsgdHlwZTogYS50eXBlLCB2YWw6IGEudmFsIH0pO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybiB0dXBsZUNWKGRhdGEpO1xuICAgICAgICB9XG4gICAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcigndHVwbGUgcmVxdWlyZSBBcnJheSB2YWwnKTtcbiAgICAgIGNhc2UgJ2J1ZmZlcic6XG4gICAgICAgIGlmIChhcmcudmFsIGluc3RhbmNlb2YgQnVmZmVyKSB7XG4gICAgICAgICAgcmV0dXJuIGJ1ZmZlckNWKGFyZy52YWwpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IG52YWwgPSBOdW1iZXIoYXJnLnZhbCk7XG4gICAgICAgIGlmIChudmFsKSB7XG4gICAgICAgICAgcmV0dXJuIGJ1ZmZlckNWKEJ1ZmZlci5vZihudmFsKSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGJ1ZmZlckNWRnJvbVN0cmluZyhhcmcudmFsKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBlbmNvZGVDbGFyaXR5VmFsdWUoYXJnLnR5cGUgYXMgQ2xhcml0eUFiaVR5cGUsIGFyZy52YWwpO1xuICAgIH1cbiAgfVxufVxuIl19
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb250cmFjdEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsdURBVThCO0FBQzlCLG1EQUFrRTtBQUVsRSxtQ0FBeUM7QUFFekMsd0JBQTBCO0FBQzFCLDJDQUE0RTtBQUM1RSx1RUFBb0U7QUFFcEUsTUFBYSxlQUFnQixTQUFRLGlEQUF1QjtJQUMxRCxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsV0FBVyxDQUFDLEVBQWU7UUFDekIsS0FBSyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN0QiwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQseUJBQXlCO0lBQ3pCOzs7OztPQUtHO0lBQ0gsZUFBZSxDQUFDLE9BQWU7UUFDN0IsSUFBSSxDQUFDLElBQUEsc0JBQWMsRUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQzdCLE1BQU0sSUFBSSxxQ0FBMEIsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzFELENBQUM7UUFDRCxJQUFJLENBQUMsUUFBSyxDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQTZCLENBQUMsRUFBRSxDQUFDO1lBQzNGLE1BQU0sSUFBSSxxQ0FBMEIsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQ25FLENBQUM7UUFDRCxJQUFJLENB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O2dCQUNELE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzdCLElBQUksSUFBSSxFQUFFLENBQUM7b0JBQ1QsT0FBTyxJQUFBLHVCQUFRLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO2dCQUNuQyxDQUFDO2dCQUNELE9BQU8sSUFBQSxpQ0FBa0IsRUFBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckM7Z0JBQ0UsT0FBTyxJQUFBLGlDQUFrQixFQUFDLEdBQUcsQ0FBQyxJQUFzQixFQUFFLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNuRSxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBNUdELDBDQTRHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcsIFN0YWNrc05ldHdvcmsgYXMgQml0Z29TdGFja3NOZXR3b3JrIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQge1xuICBidWZmZXJDVixcbiAgYnVmZmVyQ1ZGcm9tU3RyaW5nLFxuICBDbGFyaXR5QWJpVHlwZSxcbiAgQ2xhcml0eVR5cGUsXG4gIENsYXJpdHlWYWx1ZSxcbiAgZW5jb2RlQ2xhcml0eVZhbHVlLFxuICBub25lQ1YsXG4gIHNvbWVDVixcbiAgdHVwbGVDVixcbn0gZnJvbSAnQHN0YWNrcy90cmFuc2FjdGlvbnMnO1xuaW1wb3J0IHsgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgaXNWYWxpZEFkZHJlc3MgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IENsYXJpdHlWYWx1ZUpzb24gfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLic7XG5pbXBvcnQgeyBDT05UUkFDVF9OQU1FX1NFTkRNQU5ZLCBDT05UUkFDVF9OQU1FX1NUQUtJTkcgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyYWN0QnVpbGRlciB9IGZyb20gJy4vYWJzdHJhY3RDb250cmFjdEJ1aWxkZXInO1xuXG5leHBvcnQgY2xhc3MgQ29udHJhY3RCdWlsZGVyIGV4dGVuZHMgQWJzdHJhY3RDb250cmFjdEJ1aWxkZXIge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci5pbml0QnVpbGRlcih0eCk7XG4gICAgLy8gUmV0cm8gY29tcGF0aWJpbGl0eSwgY2hlY2tzIHBhcmFtZXRlcnMuXG4gICAgdGhpcy5jb250cmFjdEFkZHJlc3ModGhpcy5fY29udHJhY3RBZGRyZXNzKTtcbiAgICB0aGlzLmNvbnRyYWN0TmFtZSh0aGlzLl9jb250cmFjdE5hbWUpO1xuICAgIHRoaXMuZnVuY3Rpb25OYW1lKHRoaXMuX2Z1bmN0aW9uTmFtZSk7XG4gICAgdGhpcy5mdW5jdGlvbkFyZ3ModGhpcy5fZnVuY3Rpb25BcmdzKTtcbiAgfVxuXG4gIC8vIHJlZ2lvbiBDb250cmFjdCBmaWVsZHNcbiAgLyoqXG4gICAqIFNldCB0aGUgY29udHJhY3QgYWRkcmVzc1xuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYWRkcmVzcyB0aGUgYWRkcmVzcyBkZXBsb3llZCB0aGUgY29udHJhY3RcbiAgICogQHJldHVybnMge0NvbnRyYWN0QnVpbGRlcn0gdGhlIGJ1aWxkZXIgd2l0aCB0aGUgbmV3IHBhcmFtZXRlciBzZXRcbiAgICovXG4gIGNvbnRyYWN0QWRkcmVzcyhhZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAoIWlzVmFsaWRBZGRyZXNzKGFkZHJlc3MpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoJ0ludmFsaWQgYWRkcmVzcycpO1xuICAgIH1cbiAgICBpZiAoIVV0aWxzLmlzVmFsaWRDb250cmFjdEFkZHJlc3MoYWRkcmVzcywgdGhpcy5fY29pbkNvbmZpZy5uZXR3b3JrIGFzIEJpdGdvU3RhY2tzTmV0d29yaykpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBjb250cmFjdCBhZGRyZXNzJyk7XG4gICAgfVxuICAgIHRoaXMuX2NvbnRyYWN0QWRkcmVzcyA9IGFkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBjb250cmFjdCBuYW1lXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIG5hbWUgb2YgY29udHJhY3RcbiAgICogQHJldHVybnMge0NvbnRyYWN0QnVpbGRlcn0gdGhlIGJ1aWxkZXIgd2l0aCB0aGUgbmV3IHBhcmFtZXRlciBzZXRcbiAgICovXG4gIGNvbnRyYWN0TmFtZShuYW1lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAobmFtZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBuYW1lJyk7XG4gICAgfVxuICAgIGlmIChuYW1lICE9PSBDT05UUkFDVF9OQU1FX1NUQUtJTkcgJiYgbmFtZSAhPT0gQ09OVFJBQ1RfTkFNRV9TRU5ETUFOWSkge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCdPbmx5IHBveC00IGFuZCBzZW5kLW1hbnktbWVtbyBjb250cmFjdHMgc3VwcG9ydGVkJyk7XG4gICAgfVxuICAgIHRoaXMuX2NvbnRyYWN0TmFtZSA9IG5hbWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSBmdW5jdGlvbiBuYW1lIGluIGNvbnRyYWN0XG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBuYW1lIG5hbWUgb2YgZnVuY3Rpb25cbiAgICogQHJldHVybnMge0NvbnRyYWN0QnVpbGRlcn0gdGhlIGJ1aWxkZXIgd2l0aCB0aGUgbmV3IHBhcmFtZXRlciBzZXRcbiAgICovXG4gIGZ1bmN0aW9uTmFtZShuYW1lOiBzdHJpbmcpOiB0aGlzIHtcbiAgICBpZiAobmFtZS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvcignSW52YWxpZCBuYW1lJyk7XG4gICAgfVxuICAgIGlmICghVXRpbHMuaXNWYWxpZENvbnRyYWN0RnVuY3Rpb25OYW1lKG5hbWUpKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IoYCR7bmFtZX0gaXMgbm90IHN1cHBvcnRlZCBjb250cmFjdCBmdW5jdGlvbiBuYW1lYCk7XG4gICAgfVxuICAgIHRoaXMuX2Z1bmN0aW9uTmFtZSA9IG5hbWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBmdW5jdGlvbkFyZ3MoYXJnczogQ2xhcml0eVZhbHVlSnNvbltdIHwgQ2xhcml0eVZhbHVlW10pOiB0aGlzIHtcbiAgICB0aGlzLl9mdW5jdGlvbkFyZ3MgPSBhcmdzLm1hcCgoYXJnKSA9PiB7XG4gICAgICBpZiAoIUNsYXJpdHlUeXBlW2FyZy50eXBlXSkge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJzZUN2KGFyZyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBnb3QgZGlyZWN0IGNsYXJpdHkgdmFsdWUgYWZ0ZXIgZGVzZXJpYWxpemF0aW9uIGluIGZyb21JbXBsZW1lbnRhdGlvblxuICAgICAgICByZXR1cm4gYXJnO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHJpdmF0ZSBwYXJzZUN2KGFyZzogQ2xhcml0eVZhbHVlSnNvbik6IENsYXJpdHlWYWx1ZSB7XG4gICAgc3dpdGNoIChhcmcudHlwZSkge1xuICAgICAgY2FzZSAnb3B0aW9uYWwnOlxuICAgICAgICBpZiAoYXJnLnZhbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgcmV0dXJuIG5vbmVDVigpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBzb21lQ1YodGhpcy5wYXJzZUN2KGFyZy52YWwpKTtcbiAgICAgICAgfVxuICAgICAgY2FzZSAndHVwbGUnOlxuICAgICAgICBpZiAoYXJnLnZhbCBpbnN0YW5jZW9mIEFycmF5KSB7XG4gICAgICAgICAgY29uc3QgZGF0YSA9IHt9O1xuICAgICAgICAgIGFyZy52YWwuZm9yRWFjaCgoYSkgPT4ge1xuICAgICAgICAgICAgZGF0YVthLmtleV0gPSB0aGlzLnBhcnNlQ3YoeyB0eXBlOiBhLnR5cGUsIHZhbDogYS52YWwgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgcmV0dXJuIHR1cGxlQ1YoZGF0YSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRQYXJhbWV0ZXJWYWx1ZUVycm9yKCd0dXBsZSByZXF1aXJlIEFycmF5IHZhbCcpO1xuICAgICAgY2FzZSAnYnVmZmVyJzpcbiAgICAgICAgaWYgKGFyZy52YWwgaW5zdGFuY2VvZiBCdWZmZXIpIHtcbiAgICAgICAgICByZXR1cm4gYnVmZmVyQ1YoYXJnLnZhbCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbnZhbCA9IE51bWJlcihhcmcudmFsKTtcbiAgICAgICAgaWYgKG52YWwpIHtcbiAgICAgICAgICByZXR1cm4gYnVmZmVyQ1YoQnVmZmVyLm9mKG52YWwpKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYnVmZmVyQ1ZGcm9tU3RyaW5nKGFyZy52YWwpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIGVuY29kZUNsYXJpdHlWYWx1ZShhcmcudHlwZSBhcyBDbGFyaXR5QWJpVHlwZSwgYXJnLnZhbCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,62 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
2
+ import { ClarityValue, ContractCallPayload } from '@stacks/transactions';
3
+ import { AbstractContractBuilder } from './abstractContractBuilder';
4
+ import { Transaction } from './transaction';
5
+ export declare class FungibleTokenTransferBuilder extends AbstractContractBuilder {
6
+ private _fungibleTokenTransferParams;
7
+ private _tokenName;
8
+ constructor(_coinConfig: Readonly<CoinConfig>);
9
+ initBuilder(tx: Transaction): void;
10
+ /** @inheritdoc */
11
+ protected buildImplementation(): Promise<Transaction>;
12
+ /**
13
+ * Function to check if a transaction is a fungible token contract call
14
+ *
15
+ * @param {ContractCallPayload} payload
16
+ * @returns {Boolean}
17
+ */
18
+ static isFungibleTokenTransferContractCall(payload: ContractCallPayload): boolean;
19
+ /**
20
+ * Set the token name
21
+ *
22
+ * @param {String} tokenName name of the token (@define-fungible-token value)
23
+ * @returns {FungibleTokenTransferBuilder} This token transfer builder
24
+ */
25
+ tokenName(tokenName: string): this;
26
+ /**
27
+ * Validate contract address
28
+ *
29
+ * @param {String} address contract address
30
+ * @returns {FungibleTokenTransferBuilder} This token transfer builder
31
+ */
32
+ contractAddress(address: string): this;
33
+ /**
34
+ * Validate contract name
35
+ *
36
+ * @param {String} name contract name
37
+ * @returns {FungibleTokenTransferBuilder} This token transfer builder
38
+ */
39
+ contractName(name: string): this;
40
+ /**
41
+ * Validate function name
42
+ *
43
+ * @param {String} name function name
44
+ * @returns {FungibleTokenTransferBuilder} This token transfer builder
45
+ */
46
+ functionName(name: string): this;
47
+ /**
48
+ * Validate function arguments
49
+ *
50
+ * @param {ClarityValue[]} args array of clarity value as arguments
51
+ * @returns {FungibleTokenTransferBuilder} This token transfer builder
52
+ */
53
+ functionArgs(args: ClarityValue[]): this;
54
+ /**
55
+ * Function to convert token transfer params to post condition
56
+ *
57
+ * @param {TokenTransferParams} tokenTransferParams
58
+ * @returns {PostCondition[]} returns stx fungible post condition
59
+ */
60
+ private tokenTransferParamsToPostCondition;
61
+ }
62
+ //# sourceMappingURL=fungibleTokenTransferBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fungibleTokenTransferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/fungibleTokenTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAe,MAAM,qBAAqB,CAAC;AAE1E,OAAO,EAGL,YAAY,EACZ,mBAAmB,EAKpB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAW5C,qBAAa,4BAA6B,SAAQ,uBAAuB;IACvE,OAAO,CAAC,4BAA4B,CAAsB;IAC1D,OAAO,CAAC,UAAU,CAAS;gBACf,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAWlC,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAQ3D;;;;;OAKG;WACW,mCAAmC,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO;IAIxF;;;;;OAKG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKlC;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQtC;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAQhC;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAWhC;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,IAAI;IASxC;;;;;OAKG;IACH,OAAO,CAAC,kCAAkC;CAwB3C"}