@bitgo/sdk-core 35.4.0 → 35.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/src/account-lib/baseCoin/errors.d.ts +3 -0
  3. package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -1
  4. package/dist/src/account-lib/baseCoin/errors.js +8 -2
  5. package/dist/src/account-lib/baseCoin/index.d.ts +1 -0
  6. package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
  7. package/dist/src/account-lib/baseCoin/index.js +2 -1
  8. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +76 -0
  9. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  10. package/dist/src/account-lib/baseCoin/messages/baseMessage.js +120 -0
  11. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +66 -0
  12. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  13. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +96 -0
  14. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +33 -0
  15. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  16. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +34 -0
  17. package/dist/src/account-lib/baseCoin/messages/iface.d.ts +156 -0
  18. package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -0
  19. package/dist/src/account-lib/baseCoin/messages/iface.js +3 -0
  20. package/dist/src/account-lib/baseCoin/messages/index.d.ts +5 -0
  21. package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -0
  22. package/dist/src/account-lib/baseCoin/messages/index.js +21 -0
  23. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts +129 -0
  24. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts.map +1 -0
  25. package/dist/src/bitgo/staking/goStakingInterfaces.js +3 -0
  26. package/dist/src/bitgo/staking/goStakingWallet.d.ts +27 -1
  27. package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -1
  28. package/dist/src/bitgo/staking/goStakingWallet.js +52 -1
  29. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +8 -35
  30. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -1
  31. package/dist/src/bitgo/staking/iGoStakingWallet.js +1 -1
  32. package/dist/src/bitgo/staking/index.d.ts +1 -0
  33. package/dist/src/bitgo/staking/index.d.ts.map +1 -1
  34. package/dist/src/bitgo/staking/index.js +2 -1
  35. package/dist/src/bitgo/utils/index.d.ts +1 -0
  36. package/dist/src/bitgo/utils/index.d.ts.map +1 -1
  37. package/dist/src/bitgo/utils/index.js +2 -1
  38. package/dist/src/bitgo/utils/messageTypes.d.ts +34 -0
  39. package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
  40. package/dist/src/bitgo/utils/messageTypes.js +12 -0
  41. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts +2 -0
  42. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  43. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +204 -0
  44. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
  45. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  46. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +130 -0
  47. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
  48. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  49. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +86 -0
  50. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +36 -0
  51. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
  52. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +70 -0
  53. package/dist/test/unit/bitgo/utils/messageTypes.d.ts +2 -0
  54. package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
  55. package/dist/test/unit/bitgo/utils/messageTypes.js +76 -0
  56. package/dist/tsconfig.tsbuildinfo +1 -1
  57. package/package.json +4 -4
package/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [35.5.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-core@35.4.1...@bitgo/sdk-core@35.5.0) (2025-07-03)
7
+
8
+ ### Features
9
+
10
+ - **account-lib:** register message builder factory ([bc5c71c](https://github.com/BitGo/BitGoJS/commit/bc5c71cd92266ec1011d85f0568bf174c3743bc2))
11
+ - add go staking service endpoints to sdk ([13c4430](https://github.com/BitGo/BitGoJS/commit/13c44306137cf1c5e74f2b9fa6fcc7485b91c88b))
12
+ - **sdk-core:** add message builder and message builder factory ([5741739](https://github.com/BitGo/BitGoJS/commit/57417395029ec064485ac9ee69eb38fb08c592ec))
13
+
14
+ ## [35.4.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-core@35.4.0...@bitgo/sdk-core@35.4.1) (2025-06-25)
15
+
16
+ **Note:** Version bump only for package @bitgo/sdk-core
17
+
6
18
  # [35.4.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-core@35.3.0...@bitgo/sdk-core@35.4.0) (2025-06-24)
7
19
 
8
20
  ### Bug Fixes
@@ -14,6 +14,9 @@ export declare class SigningError extends ExtendableError {
14
14
  export declare class BuildTransactionError extends ExtendableError {
15
15
  constructor(message: string);
16
16
  }
17
+ export declare class BuildMessageError extends ExtendableError {
18
+ constructor(message: string);
19
+ }
17
20
  export declare class UtilsError extends ExtendableError {
18
21
  constructor(message: string);
19
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,KAAA;CASpB;AAED,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,UAAW,SAAQ,eAAe;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,eAAe;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,OAAO,EAAE,MAAM;CAG5B"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/errors.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,KAAA;CASpB;AAED,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,iBAAkB,SAAQ,eAAe;gBACxC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,UAAW,SAAQ,eAAe;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,sBAAuB,SAAQ,eAAe;gBAC7C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,eAAe;gBACjD,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,eAAe;gBACnC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,eAAe;gBACjC,OAAO,EAAE,MAAM;CAG5B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,eAAe;gBAC5C,OAAO,EAAE,MAAM;CAG5B;AAED,qBAAa,oBAAqB,SAAQ,eAAe;gBAC3C,OAAO,EAAE,MAAM;CAG5B"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DuplicateMethodError = exports.UnsupportedTokenError = exports.InvalidKey = exports.NotSupported = exports.NotImplementedError = exports.InvalidSignatureError = exports.InvalidParameterValueError = exports.ExtendTransactionError = exports.UtilsError = exports.BuildTransactionError = exports.SigningError = exports.ParseTransactionError = exports.ExtendableError = void 0;
3
+ exports.DuplicateMethodError = exports.UnsupportedTokenError = exports.InvalidKey = exports.NotSupported = exports.NotImplementedError = exports.InvalidSignatureError = exports.InvalidParameterValueError = exports.ExtendTransactionError = exports.UtilsError = exports.BuildMessageError = exports.BuildTransactionError = exports.SigningError = exports.ParseTransactionError = exports.ExtendableError = void 0;
4
4
  /**
5
5
  * This base class ensures that our stack trace is captured properly but also that we have classes of errors
6
6
  * that can be found in a switch.
@@ -36,6 +36,12 @@ class BuildTransactionError extends ExtendableError {
36
36
  }
37
37
  }
38
38
  exports.BuildTransactionError = BuildTransactionError;
39
+ class BuildMessageError extends ExtendableError {
40
+ constructor(message) {
41
+ super(message);
42
+ }
43
+ }
44
+ exports.BuildMessageError = BuildMessageError;
39
45
  class UtilsError extends ExtendableError {
40
46
  constructor(message) {
41
47
  super(message);
@@ -108,4 +114,4 @@ class DuplicateMethodError extends ExtendableError {
108
114
  }
109
115
  }
110
116
  exports.DuplicateMethodError = DuplicateMethodError;
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL2Jhc2VDb2luL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7O0dBR0c7QUFDSCxNQUFhLGVBQWdCLFNBQVEsS0FBSztJQUN4QyxZQUFZLE9BQU87UUFDakIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFJLE9BQU8sS0FBSyxDQUFDLGlCQUFpQixLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ2xELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7Q0FDRjtBQVZELDBDQVVDO0FBRUQsTUFBYSxxQkFBc0IsU0FBUSxlQUFlO0lBQ3hELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsc0RBSUM7QUFFRCxNQUFhLFlBQWEsU0FBUSxlQUFlO0lBQy9DLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsb0NBSUM7QUFFRCxNQUFhLHFCQUFzQixTQUFRLGVBQWU7SUFDeEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxzREFJQztBQUVELE1BQWEsVUFBVyxTQUFRLGVBQWU7SUFDN0MsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxnQ0FJQztBQUVELE1BQWEsc0JBQXVCLFNBQVEsZUFBZTtJQUN6RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELHdEQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLDBCQUEyQixTQUFRLGVBQWU7SUFDN0QsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxnRUFJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxxQkFBc0IsU0FBUSxlQUFlO0lBQ3hELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsc0RBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsZUFBZTtJQUN0RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELGtEQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLFlBQWEsU0FBUSxlQUFlO0lBQy9DLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsb0NBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsVUFBVyxTQUFRLGVBQWU7SUFDN0MsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxnQ0FJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxxQkFBc0IsU0FBUSxlQUFlO0lBQ3hELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsc0RBSUM7QUFFRCxNQUFhLG9CQUFxQixTQUFRLGVBQWU7SUFDdkQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxvREFJQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGhpcyBiYXNlIGNsYXNzIGVuc3VyZXMgdGhhdCBvdXIgc3RhY2sgdHJhY2UgaXMgY2FwdHVyZWQgcHJvcGVybHkgYnV0IGFsc28gdGhhdCB3ZSBoYXZlIGNsYXNzZXMgb2YgZXJyb3JzXG4gKiB0aGF0IGNhbiBiZSBmb3VuZCBpbiBhIHN3aXRjaC5cbiAqL1xuZXhwb3J0IGNsYXNzIEV4dGVuZGFibGVFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZSkge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubmFtZSA9IHRoaXMuY29uc3RydWN0b3IubmFtZTtcbiAgICBpZiAodHlwZW9mIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBFcnJvci5jYXB0dXJlU3RhY2tUcmFjZSh0aGlzLCB0aGlzLmNvbnN0cnVjdG9yKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zdGFjayA9IG5ldyBFcnJvcihtZXNzYWdlKS5zdGFjaztcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFBhcnNlVHJhbnNhY3Rpb25FcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTaWduaW5nRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQnVpbGRUcmFuc2FjdGlvbkVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFV0aWxzRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRXh0ZW5kVHJhbnNhY3Rpb25FcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbi8qKlxuICogRXJyb3IgZm9yIGFuIGludmFsaWQgdmFsdWUgZm9yIGEgY29udHJhY3QgbWV0aG9kIHBhcmFtZXRlclxuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZFBhcmFtZXRlclZhbHVlRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG4vKipcbiAqIEVycm9yIHByb2R1Y2VkIGJ5IG5vdCB0cnV0aHkgc2lnbmF0dXJlIHZhbHVlc1xuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZFNpZ25hdHVyZUVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciBmb3IgYSBtZXRob2QgdGhhdCBuZWVkcyB0byBiZSBpbXBsZW1lbnRlZFxuICovXG5leHBvcnQgY2xhc3MgTm90SW1wbGVtZW50ZWRFcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbi8qKlxuICogRXJyb3IgZm9yIG5vdCBzdXBwb3J0ZWQgZmVhdHVyZXNcbiAqL1xuZXhwb3J0IGNsYXNzIE5vdFN1cHBvcnRlZCBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbi8qKlxuICogRXJyb3IgZm9yIGludmFsaWQgc2VlZCwgcHVibGljLCBvciBwcml2YXRlIGtleXNcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRLZXkgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG4vKipcbiAqIEVycm9yIGZvciBpbnZhbGlkIG1pbnQvdG9rZW5cbiAqL1xuZXhwb3J0IGNsYXNzIFVuc3VwcG9ydGVkVG9rZW5FcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEdXBsaWNhdGVNZXRob2RFcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG4iXX0=
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL2Jhc2VDb2luL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7O0dBR0c7QUFDSCxNQUFhLGVBQWdCLFNBQVEsS0FBSztJQUN4QyxZQUFZLE9BQU87UUFDakIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztRQUNsQyxJQUFJLE9BQU8sS0FBSyxDQUFDLGlCQUFpQixLQUFLLFVBQVUsRUFBRSxDQUFDO1lBQ2xELEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2xELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7Q0FDRjtBQVZELDBDQVVDO0FBRUQsTUFBYSxxQkFBc0IsU0FBUSxlQUFlO0lBQ3hELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsc0RBSUM7QUFFRCxNQUFhLFlBQWEsU0FBUSxlQUFlO0lBQy9DLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsb0NBSUM7QUFFRCxNQUFhLHFCQUFzQixTQUFRLGVBQWU7SUFDeEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxzREFJQztBQUVELE1BQWEsaUJBQWtCLFNBQVEsZUFBZTtJQUNwRCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELDhDQUlDO0FBRUQsTUFBYSxVQUFXLFNBQVEsZUFBZTtJQUM3QyxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELGdDQUlDO0FBRUQsTUFBYSxzQkFBdUIsU0FBUSxlQUFlO0lBQ3pELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsd0RBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsMEJBQTJCLFNBQVEsZUFBZTtJQUM3RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELGdFQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLGVBQWU7SUFDeEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxzREFJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxlQUFlO0lBQ3RELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBSkQsa0RBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsWUFBYSxTQUFRLGVBQWU7SUFDL0MsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxvQ0FJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxVQUFXLFNBQVEsZUFBZTtJQUM3QyxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELGdDQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLGVBQWU7SUFDeEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQixDQUFDO0NBQ0Y7QUFKRCxzREFJQztBQUVELE1BQWEsb0JBQXFCLFNBQVEsZUFBZTtJQUN2RCxZQUFZLE9BQWU7UUFDekIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pCLENBQUM7Q0FDRjtBQUpELG9EQUlDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBUaGlzIGJhc2UgY2xhc3MgZW5zdXJlcyB0aGF0IG91ciBzdGFjayB0cmFjZSBpcyBjYXB0dXJlZCBwcm9wZXJseSBidXQgYWxzbyB0aGF0IHdlIGhhdmUgY2xhc3NlcyBvZiBlcnJvcnNcbiAqIHRoYXQgY2FuIGJlIGZvdW5kIGluIGEgc3dpdGNoLlxuICovXG5leHBvcnQgY2xhc3MgRXh0ZW5kYWJsZUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5uYW1lID0gdGhpcy5jb25zdHJ1Y3Rvci5uYW1lO1xuICAgIGlmICh0eXBlb2YgRXJyb3IuY2FwdHVyZVN0YWNrVHJhY2UgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIEVycm9yLmNhcHR1cmVTdGFja1RyYWNlKHRoaXMsIHRoaXMuY29uc3RydWN0b3IpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnN0YWNrID0gbmV3IEVycm9yKG1lc3NhZ2UpLnN0YWNrO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUGFyc2VUcmFuc2FjdGlvbkVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFNpZ25pbmdFcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQnVpbGRNZXNzYWdlRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVXRpbHNFcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBFeHRlbmRUcmFuc2FjdGlvbkVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciBmb3IgYW4gaW52YWxpZCB2YWx1ZSBmb3IgYSBjb250cmFjdCBtZXRob2QgcGFyYW1ldGVyXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkUGFyYW1ldGVyVmFsdWVFcnJvciBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbi8qKlxuICogRXJyb3IgcHJvZHVjZWQgYnkgbm90IHRydXRoeSBzaWduYXR1cmUgdmFsdWVzXG4gKi9cbmV4cG9ydCBjbGFzcyBJbnZhbGlkU2lnbmF0dXJlRXJyb3IgZXh0ZW5kcyBFeHRlbmRhYmxlRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgfVxufVxuXG4vKipcbiAqIEVycm9yIGZvciBhIG1ldGhvZCB0aGF0IG5lZWRzIHRvIGJlIGltcGxlbWVudGVkXG4gKi9cbmV4cG9ydCBjbGFzcyBOb3RJbXBsZW1lbnRlZEVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciBmb3Igbm90IHN1cHBvcnRlZCBmZWF0dXJlc1xuICovXG5leHBvcnQgY2xhc3MgTm90U3VwcG9ydGVkIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciBmb3IgaW52YWxpZCBzZWVkLCBwdWJsaWMsIG9yIHByaXZhdGUga2V5c1xuICovXG5leHBvcnQgY2xhc3MgSW52YWxpZEtleSBleHRlbmRzIEV4dGVuZGFibGVFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICB9XG59XG5cbi8qKlxuICogRXJyb3IgZm9yIGludmFsaWQgbWludC90b2tlblxuICovXG5leHBvcnQgY2xhc3MgVW5zdXBwb3J0ZWRUb2tlbkVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIER1cGxpY2F0ZU1ldGhvZEVycm9yIGV4dGVuZHMgRXh0ZW5kYWJsZUVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==
@@ -8,4 +8,5 @@ export { TransactionType, StakingOperationTypes, AddressFormat, DotAddressFormat
8
8
  export * from './secp256k1ExtendedKeyPair';
9
9
  export * from './errors';
10
10
  export * from './iface';
11
+ export * from './messages';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAChH,cAAc,4BAA4B,CAAC;AAC3C,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/account-lib/baseCoin/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAChH,cAAc,4BAA4B,CAAC;AAC3C,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
@@ -31,4 +31,5 @@ Object.defineProperty(exports, "DotAddressFormat", { enumerable: true, get: func
31
31
  __exportStar(require("./secp256k1ExtendedKeyPair"), exports);
32
32
  __exportStar(require("./errors"), exports);
33
33
  __exportStar(require("./iface"), exports);
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLG1FQUFrRTtBQUF6RCxnSUFBQSxzQkFBc0IsT0FBQTtBQUMvQixpRkFBZ0Y7QUFBdkUsOElBQUEsNkJBQTZCLE9BQUE7QUFHdEMsbURBQWtEO0FBQXpDLGdIQUFBLGNBQWMsT0FBQTtBQUN2QiwrQkFBZ0g7QUFBdkcsdUdBQUEsZUFBZSxPQUFBO0FBQUUsNkdBQUEscUJBQXFCLE9BQUE7QUFBRSxxR0FBQSxhQUFhLE9BQUE7QUFBRSx3R0FBQSxnQkFBZ0IsT0FBQTtBQUNoRiw2REFBMkM7QUFDM0MsMkNBQXlCO0FBQ3pCLDBDQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEJhc2VUcmFuc2FjdGlvbiB9IGZyb20gJy4vYmFzZVRyYW5zYWN0aW9uJztcbmV4cG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2Jhc2VUcmFuc2FjdGlvbkJ1aWxkZXInO1xuZXhwb3J0IHsgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnkgfSBmcm9tICcuL2Jhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5JztcbmV4cG9ydCB7IEJhc2VVdGlscyB9IGZyb20gJy4vYmFzZVV0aWxzJztcbmV4cG9ydCB7IEJhc2VLZXlQYWlyIH0gZnJvbSAnLi9iYXNlS2V5UGFpcic7XG5leHBvcnQgeyBFZDI1NTE5S2V5UGFpciB9IGZyb20gJy4vZWQyNTUxOUtleVBhaXInO1xuZXhwb3J0IHsgVHJhbnNhY3Rpb25UeXBlLCBTdGFraW5nT3BlcmF0aW9uVHlwZXMsIEFkZHJlc3NGb3JtYXQsIERvdEFkZHJlc3NGb3JtYXQsIERvdEFzc2V0VHlwZXMgfSBmcm9tICcuL2VudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9zZWNwMjU2azFFeHRlbmRlZEtleVBhaXInO1xuZXhwb3J0ICogZnJvbSAnLi9lcnJvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9pZmFjZSc7XG4iXX0=
34
+ __exportStar(require("./messages"), exports);
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxxREFBb0Q7QUFBM0Msa0hBQUEsZUFBZSxPQUFBO0FBQ3hCLG1FQUFrRTtBQUF6RCxnSUFBQSxzQkFBc0IsT0FBQTtBQUMvQixpRkFBZ0Y7QUFBdkUsOElBQUEsNkJBQTZCLE9BQUE7QUFHdEMsbURBQWtEO0FBQXpDLGdIQUFBLGNBQWMsT0FBQTtBQUN2QiwrQkFBZ0g7QUFBdkcsdUdBQUEsZUFBZSxPQUFBO0FBQUUsNkdBQUEscUJBQXFCLE9BQUE7QUFBRSxxR0FBQSxhQUFhLE9BQUE7QUFBRSx3R0FBQSxnQkFBZ0IsT0FBQTtBQUNoRiw2REFBMkM7QUFDM0MsMkNBQXlCO0FBQ3pCLDBDQUF3QjtBQUN4Qiw2Q0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBCYXNlVHJhbnNhY3Rpb24gfSBmcm9tICcuL2Jhc2VUcmFuc2FjdGlvbic7XG5leHBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi9iYXNlVHJhbnNhY3Rpb25CdWlsZGVyJztcbmV4cG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9iYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgeyBCYXNlVXRpbHMgfSBmcm9tICcuL2Jhc2VVdGlscyc7XG5leHBvcnQgeyBCYXNlS2V5UGFpciB9IGZyb20gJy4vYmFzZUtleVBhaXInO1xuZXhwb3J0IHsgRWQyNTUxOUtleVBhaXIgfSBmcm9tICcuL2VkMjU1MTlLZXlQYWlyJztcbmV4cG9ydCB7IFRyYW5zYWN0aW9uVHlwZSwgU3Rha2luZ09wZXJhdGlvblR5cGVzLCBBZGRyZXNzRm9ybWF0LCBEb3RBZGRyZXNzRm9ybWF0LCBEb3RBc3NldFR5cGVzIH0gZnJvbSAnLi9lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vc2VjcDI1NmsxRXh0ZW5kZWRLZXlQYWlyJztcbmV4cG9ydCAqIGZyb20gJy4vZXJyb3JzJztcbmV4cG9ydCAqIGZyb20gJy4vaWZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlcyc7XG4iXX0=
@@ -0,0 +1,76 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
+ import { BroadcastableMessage, MessageMetadata, MessageOptions, MessagePayload, MessageStandardType } from '../../../bitgo';
3
+ import { IMessage } from './iface';
4
+ export declare abstract class BaseMessage implements IMessage {
5
+ protected coinConfig: Readonly<CoinConfig>;
6
+ protected type: MessageStandardType;
7
+ protected payload: MessagePayload;
8
+ protected signatures: string[];
9
+ protected signers: string[];
10
+ protected signablePayload?: string | Buffer;
11
+ protected metadata?: MessageMetadata;
12
+ /**
13
+ * Base constructor.
14
+ *
15
+ * @param options Message options containing type, payload, metadata, etc.
16
+ */
17
+ protected constructor(options: MessageOptions);
18
+ /**
19
+ * Get the message type
20
+ */
21
+ getType(): MessageStandardType;
22
+ /**
23
+ * Get the message payload
24
+ */
25
+ getPayload(): MessagePayload;
26
+ /**
27
+ * Get the metadata associated with the message
28
+ */
29
+ getMetadata(): MessageMetadata | undefined;
30
+ /**
31
+ * Gets all signers addresses or public keys
32
+ */
33
+ getSigners(): string[];
34
+ /**
35
+ * Adds a signer address or public key
36
+ * @param signer The address or public key of the signer
37
+ */
38
+ addSigner(signer: string): void;
39
+ /**
40
+ * Sets signers addresses or public keys
41
+ * @param signers Array of addresses or public keys
42
+ */
43
+ setSigners(signers: string[]): void;
44
+ /**
45
+ * Gets all signatures associated with this message
46
+ */
47
+ getSignatures(): string[];
48
+ /**
49
+ * Sets signatures for this message
50
+ * @param signatures Array of signatures to set
51
+ */
52
+ setSignatures(signatures: string[]): void;
53
+ /**
54
+ * Adds a signature to this message
55
+ * @param signature The signature to add
56
+ */
57
+ addSignature(signature: string): void;
58
+ /**
59
+ * Gets the payload that should be signed
60
+ * Each message standard must implement this method
61
+ */
62
+ abstract getSignablePayload(): Promise<string | Buffer>;
63
+ /**
64
+ * Converts this message to a broadcastable format
65
+ * Uses internal signatures and signers that were previously set
66
+ * @returns A broadcastable message
67
+ */
68
+ toBroadcastFormat(): Promise<BroadcastableMessage>;
69
+ /**
70
+ * Serializes the broadcastable message to a string
71
+ * Uses internal signatures and signers that were previously set
72
+ * @returns A JSON string representation of the broadcastable message
73
+ */
74
+ toBroadcastString(): Promise<string>;
75
+ }
76
+ //# sourceMappingURL=baseMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseMessage.d.ts","sourceRoot":"","sources":["../../../../../src/account-lib/baseCoin/messages/baseMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,cAAc,EACd,cAAc,EACd,mBAAmB,EACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,8BAAsB,WAAY,YAAW,QAAQ;IACnD,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3C,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACpC,SAAS,CAAC,OAAO,EAAE,cAAc,CAAC;IAClC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAM;IACpC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IACjC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAErC;;;;OAIG;IACH,SAAS,aAAa,OAAO,EAAE,cAAc;IAe7C;;OAEG;IACH,OAAO,IAAI,mBAAmB;IAI9B;;OAEG;IACH,UAAU,IAAI,cAAc;IAI5B;;OAEG;IACH,WAAW,IAAI,eAAe,GAAG,SAAS;IAI1C;;OAEG;IACH,UAAU,IAAI,MAAM,EAAE;IAItB;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAM/B;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAInC;;OAEG;IACH,aAAa,IAAI,MAAM,EAAE;IAIzB;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI;IAIzC;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;;OAGG;IACH,QAAQ,CAAC,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAEvD;;;;OAIG;IACG,iBAAiB,IAAI,OAAO,CAAC,oBAAoB,CAAC;IAqBxD;;;;OAIG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;CAI3C"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseMessage = void 0;
4
+ const bitgo_1 = require("../../../bitgo");
5
+ class BaseMessage {
6
+ /**
7
+ * Base constructor.
8
+ *
9
+ * @param options Message options containing type, payload, metadata, etc.
10
+ */
11
+ constructor(options) {
12
+ this.signatures = [];
13
+ this.signers = [];
14
+ this.coinConfig = options.coinConfig;
15
+ this.type = options.type || bitgo_1.MessageStandardType.UNKNOWN;
16
+ this.payload = options.payload || '';
17
+ this.signablePayload = options.signablePayload;
18
+ this.metadata = options.metadata || {};
19
+ if (options.signatures) {
20
+ this.signatures = [...options.signatures];
21
+ }
22
+ if (options.signers) {
23
+ this.signers = [...options.signers];
24
+ }
25
+ }
26
+ /**
27
+ * Get the message type
28
+ */
29
+ getType() {
30
+ return this.type;
31
+ }
32
+ /**
33
+ * Get the message payload
34
+ */
35
+ getPayload() {
36
+ return this.payload;
37
+ }
38
+ /**
39
+ * Get the metadata associated with the message
40
+ */
41
+ getMetadata() {
42
+ return this.metadata;
43
+ }
44
+ /**
45
+ * Gets all signers addresses or public keys
46
+ */
47
+ getSigners() {
48
+ return [...this.signers];
49
+ }
50
+ /**
51
+ * Adds a signer address or public key
52
+ * @param signer The address or public key of the signer
53
+ */
54
+ addSigner(signer) {
55
+ if (!this.signers.includes(signer)) {
56
+ this.signers.push(signer);
57
+ }
58
+ }
59
+ /**
60
+ * Sets signers addresses or public keys
61
+ * @param signers Array of addresses or public keys
62
+ */
63
+ setSigners(signers) {
64
+ this.signers = [...signers];
65
+ }
66
+ /**
67
+ * Gets all signatures associated with this message
68
+ */
69
+ getSignatures() {
70
+ return [...this.signatures];
71
+ }
72
+ /**
73
+ * Sets signatures for this message
74
+ * @param signatures Array of signatures to set
75
+ */
76
+ setSignatures(signatures) {
77
+ this.signatures = [...signatures];
78
+ }
79
+ /**
80
+ * Adds a signature to this message
81
+ * @param signature The signature to add
82
+ */
83
+ addSignature(signature) {
84
+ this.signatures.push(signature);
85
+ }
86
+ /**
87
+ * Converts this message to a broadcastable format
88
+ * Uses internal signatures and signers that were previously set
89
+ * @returns A broadcastable message
90
+ */
91
+ async toBroadcastFormat() {
92
+ if (this.signatures.length === 0) {
93
+ throw new Error('No signatures available for broadcast. Call setSignatures or addSignature first.');
94
+ }
95
+ if (this.signers.length === 0) {
96
+ throw new Error('No signers available for broadcast. Call setSigners or addSigner first.');
97
+ }
98
+ return {
99
+ type: this.type,
100
+ payload: this.payload,
101
+ signatures: this.signatures,
102
+ signers: this.signers,
103
+ metadata: {
104
+ ...(this.metadata ? JSON.parse(JSON.stringify(this.metadata)) : {}), // deep copy to avoid mutation
105
+ },
106
+ signablePayload: this.signablePayload,
107
+ };
108
+ }
109
+ /**
110
+ * Serializes the broadcastable message to a string
111
+ * Uses internal signatures and signers that were previously set
112
+ * @returns A JSON string representation of the broadcastable message
113
+ */
114
+ async toBroadcastString() {
115
+ const broadcastable = await this.toBroadcastFormat();
116
+ return JSON.stringify(broadcastable);
117
+ }
118
+ }
119
+ exports.BaseMessage = BaseMessage;
120
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vbWVzc2FnZXMvYmFzZU1lc3NhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsMENBTXdCO0FBR3hCLE1BQXNCLFdBQVc7SUFTL0I7Ozs7T0FJRztJQUNILFlBQXNCLE9BQXVCO1FBVm5DLGVBQVUsR0FBYSxFQUFFLENBQUM7UUFDMUIsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQVUvQixJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDckMsSUFBSSxDQUFDLElBQUksR0FBRyxPQUFPLENBQUMsSUFBSSxJQUFJLDJCQUFtQixDQUFDLE9BQU8sQ0FBQztRQUN4RCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQztRQUMvQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO1FBRXZDLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM1QyxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RDLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsTUFBYztRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVUsQ0FBQyxPQUFpQjtRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxhQUFhO1FBQ1gsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRDs7O09BR0c7SUFDSCxhQUFhLENBQUMsVUFBb0I7UUFDaEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7T0FHRztJQUNILFlBQVksQ0FBQyxTQUFpQjtRQUM1QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBUUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxpQkFBaUI7UUFDckIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLGtGQUFrRixDQUFDLENBQUM7UUFDdEcsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyx5RUFBeUUsQ0FBQyxDQUFDO1FBQzdGLENBQUM7UUFFRCxPQUFPO1lBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3JCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsUUFBUSxFQUFFO2dCQUNSLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLDhCQUE4QjthQUNwRztZQUNELGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZTtTQUN0QyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsaUJBQWlCO1FBQ3JCLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDckQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7Q0FDRjtBQTNJRCxrQ0EySUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHtcbiAgQnJvYWRjYXN0YWJsZU1lc3NhZ2UsXG4gIE1lc3NhZ2VNZXRhZGF0YSxcbiAgTWVzc2FnZU9wdGlvbnMsXG4gIE1lc3NhZ2VQYXlsb2FkLFxuICBNZXNzYWdlU3RhbmRhcmRUeXBlLFxufSBmcm9tICcuLi8uLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBJTWVzc2FnZSB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2UgaW1wbGVtZW50cyBJTWVzc2FnZSB7XG4gIHByb3RlY3RlZCBjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPjtcbiAgcHJvdGVjdGVkIHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGU7XG4gIHByb3RlY3RlZCBwYXlsb2FkOiBNZXNzYWdlUGF5bG9hZDtcbiAgcHJvdGVjdGVkIHNpZ25hdHVyZXM6IHN0cmluZ1tdID0gW107XG4gIHByb3RlY3RlZCBzaWduZXJzOiBzdHJpbmdbXSA9IFtdO1xuICBwcm90ZWN0ZWQgc2lnbmFibGVQYXlsb2FkPzogc3RyaW5nIHwgQnVmZmVyO1xuICBwcm90ZWN0ZWQgbWV0YWRhdGE/OiBNZXNzYWdlTWV0YWRhdGE7XG5cbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIE1lc3NhZ2Ugb3B0aW9ucyBjb250YWluaW5nIHR5cGUsIHBheWxvYWQsIG1ldGFkYXRhLCBldGMuXG4gICAqL1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3Iob3B0aW9uczogTWVzc2FnZU9wdGlvbnMpIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBvcHRpb25zLmNvaW5Db25maWc7XG4gICAgdGhpcy50eXBlID0gb3B0aW9ucy50eXBlIHx8IE1lc3NhZ2VTdGFuZGFyZFR5cGUuVU5LTk9XTjtcbiAgICB0aGlzLnBheWxvYWQgPSBvcHRpb25zLnBheWxvYWQgfHwgJyc7XG4gICAgdGhpcy5zaWduYWJsZVBheWxvYWQgPSBvcHRpb25zLnNpZ25hYmxlUGF5bG9hZDtcbiAgICB0aGlzLm1ldGFkYXRhID0gb3B0aW9ucy5tZXRhZGF0YSB8fCB7fTtcblxuICAgIGlmIChvcHRpb25zLnNpZ25hdHVyZXMpIHtcbiAgICAgIHRoaXMuc2lnbmF0dXJlcyA9IFsuLi5vcHRpb25zLnNpZ25hdHVyZXNdO1xuICAgIH1cbiAgICBpZiAob3B0aW9ucy5zaWduZXJzKSB7XG4gICAgICB0aGlzLnNpZ25lcnMgPSBbLi4ub3B0aW9ucy5zaWduZXJzXTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0IHRoZSBtZXNzYWdlIHR5cGVcbiAgICovXG4gIGdldFR5cGUoKTogTWVzc2FnZVN0YW5kYXJkVHlwZSB7XG4gICAgcmV0dXJuIHRoaXMudHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG1lc3NhZ2UgcGF5bG9hZFxuICAgKi9cbiAgZ2V0UGF5bG9hZCgpOiBNZXNzYWdlUGF5bG9hZCB7XG4gICAgcmV0dXJuIHRoaXMucGF5bG9hZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG1ldGFkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgbWVzc2FnZVxuICAgKi9cbiAgZ2V0TWV0YWRhdGEoKTogTWVzc2FnZU1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBzaWduZXJzIGFkZHJlc3NlcyBvciBwdWJsaWMga2V5c1xuICAgKi9cbiAgZ2V0U2lnbmVycygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIFsuLi50aGlzLnNpZ25lcnNdO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBzaWduZXIgYWRkcmVzcyBvciBwdWJsaWMga2V5XG4gICAqIEBwYXJhbSBzaWduZXIgVGhlIGFkZHJlc3Mgb3IgcHVibGljIGtleSBvZiB0aGUgc2lnbmVyXG4gICAqL1xuICBhZGRTaWduZXIoc2lnbmVyOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc2lnbmVycy5pbmNsdWRlcyhzaWduZXIpKSB7XG4gICAgICB0aGlzLnNpZ25lcnMucHVzaChzaWduZXIpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHNpZ25lcnMgYWRkcmVzc2VzIG9yIHB1YmxpYyBrZXlzXG4gICAqIEBwYXJhbSBzaWduZXJzIEFycmF5IG9mIGFkZHJlc3NlcyBvciBwdWJsaWMga2V5c1xuICAgKi9cbiAgc2V0U2lnbmVycyhzaWduZXJzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuc2lnbmVycyA9IFsuLi5zaWduZXJzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBzaWduYXR1cmVzIGFzc29jaWF0ZWQgd2l0aCB0aGlzIG1lc3NhZ2VcbiAgICovXG4gIGdldFNpZ25hdHVyZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbLi4udGhpcy5zaWduYXR1cmVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHNpZ25hdHVyZXMgZm9yIHRoaXMgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmF0dXJlcyBBcnJheSBvZiBzaWduYXR1cmVzIHRvIHNldFxuICAgKi9cbiAgc2V0U2lnbmF0dXJlcyhzaWduYXR1cmVzOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuc2lnbmF0dXJlcyA9IFsuLi5zaWduYXR1cmVzXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgc2lnbmF0dXJlIHRvIHRoaXMgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmF0dXJlIFRoZSBzaWduYXR1cmUgdG8gYWRkXG4gICAqL1xuICBhZGRTaWduYXR1cmUoc2lnbmF0dXJlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHBheWxvYWQgdGhhdCBzaG91bGQgYmUgc2lnbmVkXG4gICAqIEVhY2ggbWVzc2FnZSBzdGFuZGFyZCBtdXN0IGltcGxlbWVudCB0aGlzIG1ldGhvZFxuICAgKi9cbiAgYWJzdHJhY3QgZ2V0U2lnbmFibGVQYXlsb2FkKCk6IFByb21pc2U8c3RyaW5nIHwgQnVmZmVyPjtcblxuICAvKipcbiAgICogQ29udmVydHMgdGhpcyBtZXNzYWdlIHRvIGEgYnJvYWRjYXN0YWJsZSBmb3JtYXRcbiAgICogVXNlcyBpbnRlcm5hbCBzaWduYXR1cmVzIGFuZCBzaWduZXJzIHRoYXQgd2VyZSBwcmV2aW91c2x5IHNldFxuICAgKiBAcmV0dXJucyBBIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKi9cbiAgYXN5bmMgdG9Ccm9hZGNhc3RGb3JtYXQoKTogUHJvbWlzZTxCcm9hZGNhc3RhYmxlTWVzc2FnZT4ge1xuICAgIGlmICh0aGlzLnNpZ25hdHVyZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHNpZ25hdHVyZXMgYXZhaWxhYmxlIGZvciBicm9hZGNhc3QuIENhbGwgc2V0U2lnbmF0dXJlcyBvciBhZGRTaWduYXR1cmUgZmlyc3QuJyk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc2lnbmVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gc2lnbmVycyBhdmFpbGFibGUgZm9yIGJyb2FkY2FzdC4gQ2FsbCBzZXRTaWduZXJzIG9yIGFkZFNpZ25lciBmaXJzdC4nKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgcGF5bG9hZDogdGhpcy5wYXlsb2FkLFxuICAgICAgc2lnbmF0dXJlczogdGhpcy5zaWduYXR1cmVzLFxuICAgICAgc2lnbmVyczogdGhpcy5zaWduZXJzLFxuICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgLi4uKHRoaXMubWV0YWRhdGEgPyBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHRoaXMubWV0YWRhdGEpKSA6IHt9KSwgLy8gZGVlcCBjb3B5IHRvIGF2b2lkIG11dGF0aW9uXG4gICAgICB9LFxuICAgICAgc2lnbmFibGVQYXlsb2FkOiB0aGlzLnNpZ25hYmxlUGF5bG9hZCxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIFNlcmlhbGl6ZXMgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0byBhIHN0cmluZ1xuICAgKiBVc2VzIGludGVybmFsIHNpZ25hdHVyZXMgYW5kIHNpZ25lcnMgdGhhdCB3ZXJlIHByZXZpb3VzbHkgc2V0XG4gICAqIEByZXR1cm5zIEEgSlNPTiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKi9cbiAgYXN5bmMgdG9Ccm9hZGNhc3RTdHJpbmcoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBjb25zdCBicm9hZGNhc3RhYmxlID0gYXdhaXQgdGhpcy50b0Jyb2FkY2FzdEZvcm1hdCgpO1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShicm9hZGNhc3RhYmxlKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,66 @@
1
+ import { BroadcastableMessage, MessagePayload, MessageStandardType } from '../../../bitgo';
2
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
3
+ import { IMessage, IMessageBuilder } from './iface';
4
+ /**
5
+ * Base Message Builder
6
+ */
7
+ export declare abstract class BaseMessageBuilder implements IMessageBuilder {
8
+ protected coinConfig: Readonly<CoinConfig>;
9
+ protected payload: MessagePayload;
10
+ protected type: MessageStandardType;
11
+ protected signatures: string[];
12
+ protected signers: string[];
13
+ protected metadata?: Record<string, unknown>;
14
+ protected digest?: string;
15
+ /**
16
+ * Base constructor.
17
+ * @param coinConfig BaseCoin from statics library
18
+ * @param messageType The type of message this builder creates, defaults to UNKNOWN
19
+ */
20
+ protected constructor(coinConfig: Readonly<CoinConfig>, messageType?: MessageStandardType);
21
+ /**
22
+ * Sets the message payload to be used when building the message
23
+ * @param payload The message payload (string, JSON, etc.)
24
+ * @returns The builder instance for chaining
25
+ */
26
+ setPayload(payload: MessagePayload): IMessageBuilder;
27
+ /**
28
+ * Sets metadata for the message
29
+ * @param metadata Additional metadata for the message
30
+ * @returns The builder instance for chaining
31
+ */
32
+ setMetadata(metadata: Record<string, unknown>): IMessageBuilder;
33
+ /**
34
+ * Gets the current message payload
35
+ * @returns The current message payload
36
+ */
37
+ getPayload(): MessagePayload | undefined;
38
+ /**
39
+ * Gets the current metadata
40
+ * @returns The current metadata
41
+ */
42
+ getMetadata(): Record<string, unknown> | undefined;
43
+ getType(): MessageStandardType;
44
+ setType(value: MessageStandardType): IMessageBuilder;
45
+ getSignatures(): string[];
46
+ setSignatures(value: string[]): IMessageBuilder;
47
+ addSignature(signature: string): IMessageBuilder;
48
+ getSigners(): string[];
49
+ setSigners(value: string[]): IMessageBuilder;
50
+ addSigner(signer: string): IMessageBuilder;
51
+ getDigest(): string | undefined;
52
+ setDigest(value: string): IMessageBuilder;
53
+ /**
54
+ * Builds a message using the previously set payload and metadata
55
+ * This abstract method must be implemented by each specific builder
56
+ * @returns A Promise resolving to the built IMessage
57
+ */
58
+ abstract build(): Promise<IMessage>;
59
+ /**
60
+ * Parse a broadcastable message back into a message
61
+ * @param broadcastMessage The broadcastable message to parse
62
+ * @returns The parsed message
63
+ */
64
+ abstract fromBroadcastFormat(broadcastMessage: BroadcastableMessage): Promise<IMessage>;
65
+ }
66
+ //# sourceMappingURL=baseMessageBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseMessageBuilder.d.ts","sourceRoot":"","sources":["../../../../../src/account-lib/baseCoin/messages/baseMessageBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAEpD;;GAEG;AACH,8BAAsB,kBAAmB,YAAW,eAAe;IACjE,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3C,SAAS,CAAC,OAAO,EAAE,cAAc,CAAM;IACvC,SAAS,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACpC,SAAS,CAAC,UAAU,EAAE,MAAM,EAAE,CAAM;IACpC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IACjC,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IAClD,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;OAIG;IACH,SAAS,aACP,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,EAChC,WAAW,GAAE,mBAAiD;IAMhE;;;;OAIG;IACI,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,eAAe;IAK3D;;;;OAIG;IACI,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,eAAe;IAKtE;;;OAGG;IACI,UAAU,IAAI,cAAc,GAAG,SAAS;IAI/C;;;OAGG;IACI,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;IAIlD,OAAO,IAAI,mBAAmB;IAI9B,OAAO,CAAC,KAAK,EAAE,mBAAmB,GAAG,eAAe;IAKpD,aAAa,IAAI,MAAM,EAAE;IAIzB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe;IAK/C,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,eAAe;IAOhD,UAAU,IAAI,MAAM,EAAE;IAItB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe;IAK5C,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe;IAO1C,SAAS,IAAI,MAAM,GAAG,SAAS;IAI/B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe;IAKhD;;;;OAIG;IACH,QAAQ,CAAC,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC;CACxF"}
@@ -0,0 +1,96 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseMessageBuilder = void 0;
4
+ const bitgo_1 = require("../../../bitgo");
5
+ /**
6
+ * Base Message Builder
7
+ */
8
+ class BaseMessageBuilder {
9
+ /**
10
+ * Base constructor.
11
+ * @param coinConfig BaseCoin from statics library
12
+ * @param messageType The type of message this builder creates, defaults to UNKNOWN
13
+ */
14
+ constructor(coinConfig, messageType = bitgo_1.MessageStandardType.UNKNOWN) {
15
+ this.payload = '';
16
+ this.signatures = [];
17
+ this.signers = [];
18
+ this.metadata = {};
19
+ this.coinConfig = coinConfig;
20
+ this.type = messageType;
21
+ }
22
+ /**
23
+ * Sets the message payload to be used when building the message
24
+ * @param payload The message payload (string, JSON, etc.)
25
+ * @returns The builder instance for chaining
26
+ */
27
+ setPayload(payload) {
28
+ this.payload = payload;
29
+ return this;
30
+ }
31
+ /**
32
+ * Sets metadata for the message
33
+ * @param metadata Additional metadata for the message
34
+ * @returns The builder instance for chaining
35
+ */
36
+ setMetadata(metadata) {
37
+ this.metadata = metadata;
38
+ return this;
39
+ }
40
+ /**
41
+ * Gets the current message payload
42
+ * @returns The current message payload
43
+ */
44
+ getPayload() {
45
+ return this.payload;
46
+ }
47
+ /**
48
+ * Gets the current metadata
49
+ * @returns The current metadata
50
+ */
51
+ getMetadata() {
52
+ return this.metadata;
53
+ }
54
+ getType() {
55
+ return this.type;
56
+ }
57
+ setType(value) {
58
+ this.type = value;
59
+ return this;
60
+ }
61
+ getSignatures() {
62
+ return this.signatures;
63
+ }
64
+ setSignatures(value) {
65
+ this.signatures = value;
66
+ return this;
67
+ }
68
+ addSignature(signature) {
69
+ if (!this.signatures.includes(signature)) {
70
+ this.signatures.push(signature);
71
+ }
72
+ return this;
73
+ }
74
+ getSigners() {
75
+ return this.signers;
76
+ }
77
+ setSigners(value) {
78
+ this.signers = value;
79
+ return this;
80
+ }
81
+ addSigner(signer) {
82
+ if (!this.signers.includes(signer)) {
83
+ this.signers.push(signer);
84
+ }
85
+ return this;
86
+ }
87
+ getDigest() {
88
+ return this.digest;
89
+ }
90
+ setDigest(value) {
91
+ this.digest = value;
92
+ return this;
93
+ }
94
+ }
95
+ exports.BaseMessageBuilder = BaseMessageBuilder;
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL2Jhc2VDb2luL21lc3NhZ2VzL2Jhc2VNZXNzYWdlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwQ0FBMkY7QUFJM0Y7O0dBRUc7QUFDSCxNQUFzQixrQkFBa0I7SUFTdEM7Ozs7T0FJRztJQUNILFlBQ0UsVUFBZ0MsRUFDaEMsY0FBbUMsMkJBQW1CLENBQUMsT0FBTztRQWR0RCxZQUFPLEdBQW1CLEVBQUUsQ0FBQztRQUU3QixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBYSxFQUFFLENBQUM7UUFDdkIsYUFBUSxHQUE2QixFQUFFLENBQUM7UUFZaEQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7UUFDN0IsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxVQUFVLENBQUMsT0FBdUI7UUFDdkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFdBQVcsQ0FBQyxRQUFpQztRQUNsRCxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7O09BR0c7SUFDSSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRU0sT0FBTztRQUNaLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRU0sT0FBTyxDQUFDLEtBQTBCO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLGFBQWE7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxhQUFhLENBQUMsS0FBZTtRQUNsQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUN4QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxZQUFZLENBQUMsU0FBaUI7UUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbEMsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxLQUFlO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUFjO1FBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxTQUFTO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FlRjtBQXpIRCxnREF5SEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCcm9hZGNhc3RhYmxlTWVzc2FnZSwgTWVzc2FnZVBheWxvYWQsIE1lc3NhZ2VTdGFuZGFyZFR5cGUgfSBmcm9tICcuLi8uLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgSU1lc3NhZ2UsIElNZXNzYWdlQnVpbGRlciB9IGZyb20gJy4vaWZhY2UnO1xuXG4vKipcbiAqIEJhc2UgTWVzc2FnZSBCdWlsZGVyXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBCYXNlTWVzc2FnZUJ1aWxkZXIgaW1wbGVtZW50cyBJTWVzc2FnZUJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz47XG4gIHByb3RlY3RlZCBwYXlsb2FkOiBNZXNzYWdlUGF5bG9hZCA9ICcnO1xuICBwcm90ZWN0ZWQgdHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZTtcbiAgcHJvdGVjdGVkIHNpZ25hdHVyZXM6IHN0cmluZ1tdID0gW107XG4gIHByb3RlY3RlZCBzaWduZXJzOiBzdHJpbmdbXSA9IFtdO1xuICBwcm90ZWN0ZWQgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xuICBwcm90ZWN0ZWQgZGlnZXN0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBCYXNlIGNvbnN0cnVjdG9yLlxuICAgKiBAcGFyYW0gY29pbkNvbmZpZyBCYXNlQ29pbiBmcm9tIHN0YXRpY3MgbGlicmFyeVxuICAgKiBAcGFyYW0gbWVzc2FnZVR5cGUgVGhlIHR5cGUgb2YgbWVzc2FnZSB0aGlzIGJ1aWxkZXIgY3JlYXRlcywgZGVmYXVsdHMgdG8gVU5LTk9XTlxuICAgKi9cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgIGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+LFxuICAgIG1lc3NhZ2VUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlID0gTWVzc2FnZVN0YW5kYXJkVHlwZS5VTktOT1dOXG4gICkge1xuICAgIHRoaXMuY29pbkNvbmZpZyA9IGNvaW5Db25maWc7XG4gICAgdGhpcy50eXBlID0gbWVzc2FnZVR5cGU7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgbWVzc2FnZSBwYXlsb2FkIHRvIGJlIHVzZWQgd2hlbiBidWlsZGluZyB0aGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gcGF5bG9hZCBUaGUgbWVzc2FnZSBwYXlsb2FkIChzdHJpbmcsIEpTT04sIGV0Yy4pXG4gICAqIEByZXR1cm5zIFRoZSBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcHVibGljIHNldFBheWxvYWQocGF5bG9hZDogTWVzc2FnZVBheWxvYWQpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHRoaXMucGF5bG9hZCA9IHBheWxvYWQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBtZXRhZGF0YSBmb3IgdGhlIG1lc3NhZ2VcbiAgICogQHBhcmFtIG1ldGFkYXRhIEFkZGl0aW9uYWwgbWV0YWRhdGEgZm9yIHRoZSBtZXNzYWdlXG4gICAqIEByZXR1cm5zIFRoZSBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgcHVibGljIHNldE1ldGFkYXRhKG1ldGFkYXRhOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5tZXRhZGF0YSA9IG1ldGFkYXRhO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgbWVzc2FnZSBwYXlsb2FkXG4gICAqIEByZXR1cm5zIFRoZSBjdXJyZW50IG1lc3NhZ2UgcGF5bG9hZFxuICAgKi9cbiAgcHVibGljIGdldFBheWxvYWQoKTogTWVzc2FnZVBheWxvYWQgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnBheWxvYWQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBtZXRhZGF0YVxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBtZXRhZGF0YVxuICAgKi9cbiAgcHVibGljIGdldE1ldGFkYXRhKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5tZXRhZGF0YTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRUeXBlKCk6IE1lc3NhZ2VTdGFuZGFyZFR5cGUge1xuICAgIHJldHVybiB0aGlzLnR5cGU7XG4gIH1cblxuICBwdWJsaWMgc2V0VHlwZSh2YWx1ZTogTWVzc2FnZVN0YW5kYXJkVHlwZSk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy50eXBlID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgZ2V0U2lnbmF0dXJlcygpOiBzdHJpbmdbXSB7XG4gICAgcmV0dXJuIHRoaXMuc2lnbmF0dXJlcztcbiAgfVxuXG4gIHB1YmxpYyBzZXRTaWduYXR1cmVzKHZhbHVlOiBzdHJpbmdbXSk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5zaWduYXR1cmVzID0gdmFsdWU7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgYWRkU2lnbmF0dXJlKHNpZ25hdHVyZTogc3RyaW5nKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBpZiAoIXRoaXMuc2lnbmF0dXJlcy5pbmNsdWRlcyhzaWduYXR1cmUpKSB7XG4gICAgICB0aGlzLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBnZXRTaWduZXJzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5zaWduZXJzO1xuICB9XG5cbiAgcHVibGljIHNldFNpZ25lcnModmFsdWU6IHN0cmluZ1tdKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICB0aGlzLnNpZ25lcnMgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBhZGRTaWduZXIoc2lnbmVyOiBzdHJpbmcpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGlmICghdGhpcy5zaWduZXJzLmluY2x1ZGVzKHNpZ25lcikpIHtcbiAgICAgIHRoaXMuc2lnbmVycy5wdXNoKHNpZ25lcik7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGdldERpZ2VzdCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRpZ2VzdDtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaWdlc3QodmFsdWU6IHN0cmluZyk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5kaWdlc3QgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBtZXNzYWdlIHVzaW5nIHRoZSBwcmV2aW91c2x5IHNldCBwYXlsb2FkIGFuZCBtZXRhZGF0YVxuICAgKiBUaGlzIGFic3RyYWN0IG1ldGhvZCBtdXN0IGJlIGltcGxlbWVudGVkIGJ5IGVhY2ggc3BlY2lmaWMgYnVpbGRlclxuICAgKiBAcmV0dXJucyBBIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBidWlsdCBJTWVzc2FnZVxuICAgKi9cbiAgYWJzdHJhY3QgYnVpbGQoKTogUHJvbWlzZTxJTWVzc2FnZT47XG5cbiAgLyoqXG4gICAqIFBhcnNlIGEgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIGJhY2sgaW50byBhIG1lc3NhZ2VcbiAgICogQHBhcmFtIGJyb2FkY2FzdE1lc3NhZ2UgVGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0byBwYXJzZVxuICAgKiBAcmV0dXJucyBUaGUgcGFyc2VkIG1lc3NhZ2VcbiAgICovXG4gIGFic3RyYWN0IGZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZTogQnJvYWRjYXN0YWJsZU1lc3NhZ2UpOiBQcm9taXNlPElNZXNzYWdlPjtcbn1cbiJdfQ==
@@ -0,0 +1,33 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
+ import { IMessageBuilder, IMessageBuilderFactory } from './iface';
3
+ import { BroadcastableMessage, MessageStandardType } from '../../../bitgo';
4
+ /**
5
+ * Base Message Builder
6
+ */
7
+ export declare abstract class BaseMessageBuilderFactory implements IMessageBuilderFactory {
8
+ protected coinConfig: Readonly<CoinConfig>;
9
+ /**
10
+ * Base constructor.
11
+ * @param coinConfig BaseCoin from statics library
12
+ */
13
+ protected constructor(coinConfig: Readonly<CoinConfig>);
14
+ /**
15
+ * Gets a message builder for the specified message type
16
+ * @param type The type of message to build
17
+ * @returns A message builder instance for the specified type
18
+ */
19
+ abstract getMessageBuilder(type: MessageStandardType): IMessageBuilder;
20
+ /**
21
+ * Gets a message builder from a broadcastable message
22
+ * @param broadcastMessage The broadcastable message
23
+ * @returns A message builder instance for the broadcastable message type
24
+ */
25
+ fromBroadcastFormat(broadcastMessage: BroadcastableMessage): IMessageBuilder;
26
+ /**
27
+ * Parses a broadcastable message and gets the message builder based on the message type.
28
+ * @param broadcastString The broadcastable message to parse
29
+ * @returns A message builder instance for the parsed broadcastable message type
30
+ */
31
+ fromBroadcastString(broadcastString: string): IMessageBuilder;
32
+ }
33
+ //# sourceMappingURL=baseMessageBuilderFactory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseMessageBuilderFactory.d.ts","sourceRoot":"","sources":["../../../../../src/account-lib/baseCoin/messages/baseMessageBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE3E;;GAEG;AACH,8BAAsB,yBAA0B,YAAW,sBAAsB;IAC/E,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAE3C;;;OAGG;IACH,SAAS,aAAa,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC;IAItD;;;;OAIG;aACa,iBAAiB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe;IAE7E;;;;OAIG;IACH,mBAAmB,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,eAAe;IAI5E;;;;OAIG;IACH,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,eAAe;CAI9D"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseMessageBuilderFactory = void 0;
4
+ /**
5
+ * Base Message Builder
6
+ */
7
+ class BaseMessageBuilderFactory {
8
+ /**
9
+ * Base constructor.
10
+ * @param coinConfig BaseCoin from statics library
11
+ */
12
+ constructor(coinConfig) {
13
+ this.coinConfig = coinConfig;
14
+ }
15
+ /**
16
+ * Gets a message builder from a broadcastable message
17
+ * @param broadcastMessage The broadcastable message
18
+ * @returns A message builder instance for the broadcastable message type
19
+ */
20
+ fromBroadcastFormat(broadcastMessage) {
21
+ return this.getMessageBuilder(broadcastMessage.type);
22
+ }
23
+ /**
24
+ * Parses a broadcastable message and gets the message builder based on the message type.
25
+ * @param broadcastString The broadcastable message to parse
26
+ * @returns A message builder instance for the parsed broadcastable message type
27
+ */
28
+ fromBroadcastString(broadcastString) {
29
+ const broadcastMessage = JSON.parse(broadcastString);
30
+ return this.fromBroadcastFormat(broadcastMessage);
31
+ }
32
+ }
33
+ exports.BaseMessageBuilderFactory = BaseMessageBuilderFactory;
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9iYXNlQ29pbi9tZXNzYWdlcy9iYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUlBOztHQUVHO0FBQ0gsTUFBc0IseUJBQXlCO0lBRzdDOzs7T0FHRztJQUNILFlBQXNCLFVBQWdDO1FBQ3BELElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFTRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsZ0JBQXNDO1FBQ3hELE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsbUJBQW1CLENBQUMsZUFBdUI7UUFDekMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBeUIsQ0FBQztRQUM3RSxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3BELENBQUM7Q0FDRjtBQXBDRCw4REFvQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgSU1lc3NhZ2VCdWlsZGVyLCBJTWVzc2FnZUJ1aWxkZXJGYWN0b3J5IH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBCcm9hZGNhc3RhYmxlTWVzc2FnZSwgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJy4uLy4uLy4uL2JpdGdvJztcblxuLyoqXG4gKiBCYXNlIE1lc3NhZ2UgQnVpbGRlclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeSBpbXBsZW1lbnRzIElNZXNzYWdlQnVpbGRlckZhY3Rvcnkge1xuICBwcm90ZWN0ZWQgY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz47XG5cbiAgLyoqXG4gICAqIEJhc2UgY29uc3RydWN0b3IuXG4gICAqIEBwYXJhbSBjb2luQ29uZmlnIEJhc2VDb2luIGZyb20gc3RhdGljcyBsaWJyYXJ5XG4gICAqL1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBjb2luQ29uZmlnO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZm9yIHRoZSBzcGVjaWZpZWQgbWVzc2FnZSB0eXBlXG4gICAqIEBwYXJhbSB0eXBlIFRoZSB0eXBlIG9mIG1lc3NhZ2UgdG8gYnVpbGRcbiAgICogQHJldHVybnMgQSBtZXNzYWdlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIHRoZSBzcGVjaWZpZWQgdHlwZVxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGdldE1lc3NhZ2VCdWlsZGVyKHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUpOiBJTWVzc2FnZUJ1aWxkZXI7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZnJvbSBhIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gYnJvYWRjYXN0TWVzc2FnZSBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHR5cGVcbiAgICovXG4gIGZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZTogQnJvYWRjYXN0YWJsZU1lc3NhZ2UpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1lc3NhZ2VCdWlsZGVyKGJyb2FkY2FzdE1lc3NhZ2UudHlwZSk7XG4gIH1cblxuICAvKipcbiAgICogUGFyc2VzIGEgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIGFuZCBnZXRzIHRoZSBtZXNzYWdlIGJ1aWxkZXIgYmFzZWQgb24gdGhlIG1lc3NhZ2UgdHlwZS5cbiAgICogQHBhcmFtIGJyb2FkY2FzdFN0cmluZyBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHRvIHBhcnNlXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgcGFyc2VkIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0eXBlXG4gICAqL1xuICBmcm9tQnJvYWRjYXN0U3RyaW5nKGJyb2FkY2FzdFN0cmluZzogc3RyaW5nKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBjb25zdCBicm9hZGNhc3RNZXNzYWdlID0gSlNPTi5wYXJzZShicm9hZGNhc3RTdHJpbmcpIGFzIEJyb2FkY2FzdGFibGVNZXNzYWdlO1xuICAgIHJldHVybiB0aGlzLmZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==