@bitgo/sdk-core 35.4.1 → 35.6.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 (86) hide show
  1. package/CHANGELOG.md +19 -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/iface.d.ts +8 -0
  6. package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
  7. package/dist/src/account-lib/baseCoin/iface.js +23 -1
  8. package/dist/src/account-lib/baseCoin/index.d.ts +1 -0
  9. package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
  10. package/dist/src/account-lib/baseCoin/index.js +2 -1
  11. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +88 -0
  12. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  13. package/dist/src/account-lib/baseCoin/messages/baseMessage.js +153 -0
  14. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +67 -0
  15. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  16. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +144 -0
  17. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +33 -0
  18. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  19. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +44 -0
  20. package/dist/src/account-lib/baseCoin/messages/iface.d.ts +164 -0
  21. package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -0
  22. package/dist/src/account-lib/baseCoin/messages/iface.js +3 -0
  23. package/dist/src/account-lib/baseCoin/messages/index.d.ts +6 -0
  24. package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -0
  25. package/dist/src/account-lib/baseCoin/messages/index.js +22 -0
  26. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts +3 -0
  27. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts.map +1 -0
  28. package/dist/src/account-lib/baseCoin/messages/simple/index.js +19 -0
  29. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts +13 -0
  30. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts.map +1 -0
  31. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.js +28 -0
  32. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts +21 -0
  33. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts.map +1 -0
  34. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.js +28 -0
  35. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +3 -1
  36. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  37. package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
  38. package/dist/src/bitgo/environments.d.ts.map +1 -1
  39. package/dist/src/bitgo/environments.js +17 -1
  40. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts +129 -0
  41. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts.map +1 -0
  42. package/dist/src/bitgo/staking/goStakingInterfaces.js +3 -0
  43. package/dist/src/bitgo/staking/goStakingWallet.d.ts +27 -1
  44. package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -1
  45. package/dist/src/bitgo/staking/goStakingWallet.js +52 -1
  46. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +8 -35
  47. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -1
  48. package/dist/src/bitgo/staking/iGoStakingWallet.js +1 -1
  49. package/dist/src/bitgo/staking/index.d.ts +1 -0
  50. package/dist/src/bitgo/staking/index.d.ts.map +1 -1
  51. package/dist/src/bitgo/staking/index.js +2 -1
  52. package/dist/src/bitgo/utils/index.d.ts +1 -0
  53. package/dist/src/bitgo/utils/index.d.ts.map +1 -1
  54. package/dist/src/bitgo/utils/index.js +2 -1
  55. package/dist/src/bitgo/utils/messageTypes.d.ts +37 -0
  56. package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
  57. package/dist/src/bitgo/utils/messageTypes.js +14 -0
  58. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +16 -2
  59. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
  60. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +48 -2
  61. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +3 -0
  62. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  63. package/dist/src/bitgo/utils/tss/baseTypes.js +1 -1
  64. package/dist/src/bitgo/wallet/iWallet.d.ts +2 -1
  65. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  66. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  67. package/dist/src/bitgo/wallet/wallet.d.ts +7 -0
  68. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  69. package/dist/src/bitgo/wallet/wallet.js +51 -11
  70. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts +2 -0
  71. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  72. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +206 -0
  73. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
  74. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  75. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +173 -0
  76. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
  77. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  78. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +105 -0
  79. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +46 -0
  80. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
  81. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +69 -0
  82. package/dist/test/unit/bitgo/utils/messageTypes.d.ts +2 -0
  83. package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
  84. package/dist/test/unit/bitgo/utils/messageTypes.js +64 -0
  85. package/dist/tsconfig.tsbuildinfo +1 -1
  86. package/package.json +6 -6
@@ -0,0 +1,144 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseMessageBuilder = void 0;
4
+ const bitgo_1 = require("../../../bitgo");
5
+ const iface_1 = require("../iface");
6
+ /**
7
+ * Base Message Builder
8
+ */
9
+ class BaseMessageBuilder {
10
+ /**
11
+ * Base constructor.
12
+ * @param coinConfig BaseCoin from statics library
13
+ * @param messageType The type of message this builder creates, defaults to UNKNOWN
14
+ */
15
+ constructor(coinConfig, messageType = bitgo_1.MessageStandardType.UNKNOWN) {
16
+ this.payload = '';
17
+ this.signatures = [];
18
+ this.signers = [];
19
+ this.metadata = {};
20
+ this.coinConfig = coinConfig;
21
+ this.type = messageType;
22
+ }
23
+ /**
24
+ * Sets the message payload to be used when building the message
25
+ * @param payload The message payload (string, JSON, etc.)
26
+ * @returns The builder instance for chaining
27
+ */
28
+ setPayload(payload) {
29
+ this.payload = payload;
30
+ return this;
31
+ }
32
+ /**
33
+ * Sets metadata for the message
34
+ * @param metadata Additional metadata for the message
35
+ * @returns The builder instance for chaining
36
+ */
37
+ setMetadata(metadata) {
38
+ this.metadata = metadata;
39
+ return this;
40
+ }
41
+ /**
42
+ * Gets the current message payload
43
+ * @returns The current message payload
44
+ */
45
+ getPayload() {
46
+ return this.payload;
47
+ }
48
+ /**
49
+ * Gets the current metadata
50
+ * @returns The current metadata
51
+ */
52
+ getMetadata() {
53
+ return this.metadata;
54
+ }
55
+ getType() {
56
+ return this.type;
57
+ }
58
+ setType(value) {
59
+ this.type = value;
60
+ return this;
61
+ }
62
+ getSignatures() {
63
+ return this.signatures;
64
+ }
65
+ setSignatures(signatures) {
66
+ this.signatures = signatures;
67
+ return this;
68
+ }
69
+ addSignature(signature) {
70
+ if (!this.signatures.some((sig) => sig.publicKey.pub === signature.publicKey.pub && sig.signature.equals(signature.signature))) {
71
+ this.signatures.push(signature);
72
+ }
73
+ return this;
74
+ }
75
+ getSigners() {
76
+ return this.signers;
77
+ }
78
+ setSigners(value) {
79
+ this.signers = value;
80
+ return this;
81
+ }
82
+ addSigner(signer) {
83
+ if (!this.signers.includes(signer)) {
84
+ this.signers.push(signer);
85
+ }
86
+ return this;
87
+ }
88
+ getDigest() {
89
+ return this.digest;
90
+ }
91
+ setDigest(value) {
92
+ this.digest = value;
93
+ return this;
94
+ }
95
+ /**
96
+ * Builds a message using the previously set payload and metadata
97
+ * @returns A Promise resolving to the built IMessage
98
+ */
99
+ async build() {
100
+ try {
101
+ if (!this.payload) {
102
+ throw new Error('Message payload must be set before building the message');
103
+ }
104
+ return this.buildMessage({
105
+ coinConfig: this.coinConfig,
106
+ payload: this.payload,
107
+ type: this.type,
108
+ signatures: this.signatures,
109
+ signers: this.signers,
110
+ metadata: {
111
+ ...this.metadata,
112
+ encoding: 'utf8',
113
+ },
114
+ });
115
+ }
116
+ catch (err) {
117
+ if (err instanceof Error) {
118
+ throw err;
119
+ }
120
+ throw new Error(`Failed to build message of type ${this.type}`);
121
+ }
122
+ }
123
+ /**
124
+ * Parse a broadcastable message back into a message
125
+ * @param broadcastMessage The broadcastable message to parse
126
+ * @returns The parsed message
127
+ */
128
+ async fromBroadcastFormat(broadcastMessage) {
129
+ const { type, payload, serializedSignatures, signers, metadata } = broadcastMessage;
130
+ if (type !== this.type) {
131
+ throw new Error(`Invalid message type, expected ${this.type}`);
132
+ }
133
+ this.payload = payload;
134
+ this.signatures = (0, iface_1.deserializeSignatures)(serializedSignatures);
135
+ this.signers = signers || [];
136
+ this.metadata = {
137
+ ...metadata,
138
+ encoding: 'utf8',
139
+ };
140
+ return this.build();
141
+ }
142
+ }
143
+ exports.BaseMessageBuilder = BaseMessageBuilder;
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2FjY291bnQtbGliL2Jhc2VDb2luL21lc3NhZ2VzL2Jhc2VNZXNzYWdlQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwwQ0FBMkc7QUFHM0csb0NBQTREO0FBRTVEOztHQUVHO0FBQ0gsTUFBc0Isa0JBQWtCO0lBU3RDOzs7O09BSUc7SUFDSCxZQUNFLFVBQWdDLEVBQ2hDLGNBQW1DLDJCQUFtQixDQUFDLE9BQU87UUFkdEQsWUFBTyxHQUFtQixFQUFFLENBQUM7UUFFN0IsZUFBVSxHQUFnQixFQUFFLENBQUM7UUFDN0IsWUFBTyxHQUFhLEVBQUUsQ0FBQztRQUN2QixhQUFRLEdBQTZCLEVBQUUsQ0FBQztRQVloRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztRQUM3QixJQUFJLENBQUMsSUFBSSxHQUFHLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFVBQVUsQ0FBQyxPQUF1QjtRQUN2QyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksV0FBVyxDQUFDLFFBQWlDO1FBQ2xELElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3pCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVEOzs7T0FHRztJQUNJLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxPQUFPO1FBQ1osT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFTSxPQUFPLENBQUMsS0FBMEI7UUFDdkMsSUFBSSxDQUFDLElBQUksR0FB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QUM7UUFDRCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUEsNkJBQXFCLEVBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sSUFBSSxFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRztZQUNkLEdBQUcsUUFBUTtZQUNYLFFBQVEsRUFBRSxNQUFNO1NBQ2pCLENBQUM7UUFDRixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixDQUFDO0NBQ0Y7QUFqS0QsZ0RBaUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJvYWRjYXN0YWJsZU1lc3NhZ2UsIE1lc3NhZ2VPcHRpb25zLCBNZXNzYWdlUGF5bG9hZCwgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJy4uLy4uLy4uL2JpdGdvJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBJTWVzc2FnZSwgSU1lc3NhZ2VCdWlsZGVyIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBkZXNlcmlhbGl6ZVNpZ25hdHVyZXMsIFNpZ25hdHVyZSB9IGZyb20gJy4uL2lmYWNlJztcblxuLyoqXG4gKiBCYXNlIE1lc3NhZ2UgQnVpbGRlclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZU1lc3NhZ2VCdWlsZGVyIGltcGxlbWVudHMgSU1lc3NhZ2VCdWlsZGVyIHtcbiAgcHJvdGVjdGVkIGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+O1xuICBwcm90ZWN0ZWQgcGF5bG9hZDogTWVzc2FnZVBheWxvYWQgPSAnJztcbiAgcHJvdGVjdGVkIHR5cGU6IE1lc3NhZ2VTdGFuZGFyZFR5cGU7XG4gIHByb3RlY3RlZCBzaWduYXR1cmVzOiBTaWduYXR1cmVbXSA9IFtdO1xuICBwcm90ZWN0ZWQgc2lnbmVyczogc3RyaW5nW10gPSBbXTtcbiAgcHJvdGVjdGVkIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fTtcbiAgcHJvdGVjdGVkIGRpZ2VzdD86IHN0cmluZztcblxuICAvKipcbiAgICogQmFzZSBjb25zdHJ1Y3Rvci5cbiAgICogQHBhcmFtIGNvaW5Db25maWcgQmFzZUNvaW4gZnJvbSBzdGF0aWNzIGxpYnJhcnlcbiAgICogQHBhcmFtIG1lc3NhZ2VUeXBlIFRoZSB0eXBlIG9mIG1lc3NhZ2UgdGhpcyBidWlsZGVyIGNyZWF0ZXMsIGRlZmF1bHRzIHRvIFVOS05PV05cbiAgICovXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBjb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPixcbiAgICBtZXNzYWdlVHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZSA9IE1lc3NhZ2VTdGFuZGFyZFR5cGUuVU5LTk9XTlxuICApIHtcbiAgICB0aGlzLmNvaW5Db25maWcgPSBjb2luQ29uZmlnO1xuICAgIHRoaXMudHlwZSA9IG1lc3NhZ2VUeXBlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIG1lc3NhZ2UgcGF5bG9hZCB0byBiZSB1c2VkIHdoZW4gYnVpbGRpbmcgdGhlIG1lc3NhZ2VcbiAgICogQHBhcmFtIHBheWxvYWQgVGhlIG1lc3NhZ2UgcGF5bG9hZCAoc3RyaW5nLCBKU09OLCBldGMuKVxuICAgKiBAcmV0dXJucyBUaGUgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmdcbiAgICovXG4gIHB1YmxpYyBzZXRQYXlsb2FkKHBheWxvYWQ6IE1lc3NhZ2VQYXlsb2FkKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICB0aGlzLnBheWxvYWQgPSBwYXlsb2FkO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgbWV0YWRhdGEgZm9yIHRoZSBtZXNzYWdlXG4gICAqIEBwYXJhbSBtZXRhZGF0YSBBZGRpdGlvbmFsIG1ldGFkYXRhIGZvciB0aGUgbWVzc2FnZVxuICAgKiBAcmV0dXJucyBUaGUgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmdcbiAgICovXG4gIHB1YmxpYyBzZXRNZXRhZGF0YShtZXRhZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHRoaXMubWV0YWRhdGEgPSBtZXRhZGF0YTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IG1lc3NhZ2UgcGF5bG9hZFxuICAgKiBAcmV0dXJucyBUaGUgY3VycmVudCBtZXNzYWdlIHBheWxvYWRcbiAgICovXG4gIHB1YmxpYyBnZXRQYXlsb2FkKCk6IE1lc3NhZ2VQYXlsb2FkIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5wYXlsb2FkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgbWV0YWRhdGFcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgbWV0YWRhdGFcbiAgICovXG4gIHB1YmxpYyBnZXRNZXRhZGF0YSgpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMubWV0YWRhdGE7XG4gIH1cblxuICBwdWJsaWMgZ2V0VHlwZSgpOiBNZXNzYWdlU3RhbmRhcmRUeXBlIHtcbiAgICByZXR1cm4gdGhpcy50eXBlO1xuICB9XG5cbiAgcHVibGljIHNldFR5cGUodmFsdWU6IE1lc3NhZ2VTdGFuZGFyZFR5cGUpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIHRoaXMudHlwZSA9IHZhbHVlO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGdldFNpZ25hdHVyZXMoKTogU2lnbmF0dXJlW10ge1xuICAgIHJldHVybiB0aGlzLnNpZ25hdHVyZXM7XG4gIH1cblxuICBwdWJsaWMgc2V0U2lnbmF0dXJlcyhzaWduYXR1cmVzOiBTaWduYXR1cmVbXSk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5zaWduYXR1cmVzID0gc2lnbmF0dXJlcztcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBhZGRTaWduYXR1cmUoc2lnbmF0dXJlOiBTaWduYXR1cmUpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGlmIChcbiAgICAgICF0aGlzLnNpZ25hdHVyZXMuc29tZShcbiAgICAgICAgKHNpZykgPT4gc2lnLnB1YmxpY0tleS5wdWIgPT09IHNpZ25hdHVyZS5wdWJsaWNLZXkucHViICYmIHNpZy5zaWduYXR1cmUuZXF1YWxzKHNpZ25hdHVyZS5zaWduYXR1cmUpXG4gICAgICApXG4gICAgKSB7XG4gICAgICB0aGlzLnNpZ25hdHVyZXMucHVzaChzaWduYXR1cmUpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBnZXRTaWduZXJzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5zaWduZXJzO1xuICB9XG5cbiAgcHVibGljIHNldFNpZ25lcnModmFsdWU6IHN0cmluZ1tdKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICB0aGlzLnNpZ25lcnMgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBhZGRTaWduZXIoc2lnbmVyOiBzdHJpbmcpOiBJTWVzc2FnZUJ1aWxkZXIge1xuICAgIGlmICghdGhpcy5zaWduZXJzLmluY2x1ZGVzKHNpZ25lcikpIHtcbiAgICAgIHRoaXMuc2lnbmVycy5wdXNoKHNpZ25lcik7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgcHVibGljIGdldERpZ2VzdCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRpZ2VzdDtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaWdlc3QodmFsdWU6IHN0cmluZyk6IElNZXNzYWdlQnVpbGRlciB7XG4gICAgdGhpcy5kaWdlc3QgPSB2YWx1ZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBtZXNzYWdlIHVzaW5nIHRoZSBwcmV2aW91c2x5IHNldCBwYXlsb2FkIGFuZCBtZXRhZGF0YVxuICAgKiBAcmV0dXJucyBBIFByb21pc2UgcmVzb2x2aW5nIHRvIHRoZSBidWlsdCBJTWVzc2FnZVxuICAgKi9cbiAgcHVibGljIGFzeW5jIGJ1aWxkKCk6IFByb21pc2U8SU1lc3NhZ2U+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKCF0aGlzLnBheWxvYWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdNZXNzYWdlIHBheWxvYWQgbXVzdCBiZSBzZXQgYmVmb3JlIGJ1aWxkaW5nIHRoZSBtZXNzYWdlJyk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdGhpcy5idWlsZE1lc3NhZ2Uoe1xuICAgICAgICBjb2luQ29uZmlnOiB0aGlzLmNvaW5Db25maWcsXG4gICAgICAgIHBheWxvYWQ6IHRoaXMucGF5bG9hZCxcbiAgICAgICAgdHlwZTogdGhpcy50eXBlLFxuICAgICAgICBzaWduYXR1cmVzOiB0aGlzLnNpZ25hdHVyZXMsXG4gICAgICAgIHNpZ25lcnM6IHRoaXMuc2lnbmVycyxcbiAgICAgICAgbWV0YWRhdGE6IHtcbiAgICAgICAgICAuLi50aGlzLm1ldGFkYXRhLFxuICAgICAgICAgIGVuY29kaW5nOiAndXRmOCcsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byBidWlsZCBtZXNzYWdlIG9mIHR5cGUgJHt0aGlzLnR5cGV9YCk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IGJ1aWxkTWVzc2FnZShvcHRpb25zOiBNZXNzYWdlT3B0aW9ucyk6IFByb21pc2U8SU1lc3NhZ2U+O1xuXG4gIC8qKlxuICAgKiBQYXJzZSBhIGJyb2FkY2FzdGFibGUgbWVzc2FnZSBiYWNrIGludG8gYSBtZXNzYWdlXG4gICAqIEBwYXJhbSBicm9hZGNhc3RNZXNzYWdlIFRoZSBicm9hZGNhc3RhYmxlIG1lc3NhZ2UgdG8gcGFyc2VcbiAgICogQHJldHVybnMgVGhlIHBhcnNlZCBtZXNzYWdlXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZnJvbUJyb2FkY2FzdEZvcm1hdChicm9hZGNhc3RNZXNzYWdlOiBCcm9hZGNhc3RhYmxlTWVzc2FnZSk6IFByb21pc2U8SU1lc3NhZ2U+IHtcbiAgICBjb25zdCB7IHR5cGUsIHBheWxvYWQsIHNlcmlhbGl6ZWRTaWduYXR1cmVzLCBzaWduZXJzLCBtZXRhZGF0YSB9ID0gYnJvYWRjYXN0TWVzc2FnZTtcbiAgICBpZiAodHlwZSAhPT0gdGhpcy50eXBlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgbWVzc2FnZSB0eXBlLCBleHBlY3RlZCAke3RoaXMudHlwZX1gKTtcbiAgICB9XG4gICAgdGhpcy5wYXlsb2FkID0gcGF5bG9hZDtcbiAgICB0aGlzLnNpZ25hdHVyZXMgPSBkZXNlcmlhbGl6ZVNpZ25hdHVyZXMoc2VyaWFsaXplZFNpZ25hdHVyZXMpO1xuICAgIHRoaXMuc2lnbmVycyA9IHNpZ25lcnMgfHwgW107XG4gICAgdGhpcy5tZXRhZGF0YSA9IHtcbiAgICAgIC4uLm1ldGFkYXRhLFxuICAgICAgZW5jb2Rpbmc6ICd1dGY4JyxcbiAgICB9O1xuICAgIHJldHVybiB0aGlzLmJ1aWxkKCk7XG4gIH1cbn1cbiJdfQ==
@@ -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;AAG3E;;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;IAa5E;;;;OAIG;IACH,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,eAAe;CAI9D"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseMessageBuilderFactory = void 0;
4
+ const iface_1 = require("../iface");
5
+ /**
6
+ * Base Message Builder
7
+ */
8
+ class BaseMessageBuilderFactory {
9
+ /**
10
+ * Base constructor.
11
+ * @param coinConfig BaseCoin from statics library
12
+ */
13
+ constructor(coinConfig) {
14
+ this.coinConfig = coinConfig;
15
+ }
16
+ /**
17
+ * Gets a message builder from a broadcastable message
18
+ * @param broadcastMessage The broadcastable message
19
+ * @returns A message builder instance for the broadcastable message type
20
+ */
21
+ fromBroadcastFormat(broadcastMessage) {
22
+ const builder = this.getMessageBuilder(broadcastMessage.type);
23
+ builder.setPayload(broadcastMessage.payload);
24
+ builder.setMetadata(broadcastMessage.metadata || {});
25
+ if (broadcastMessage.signers) {
26
+ builder.setSigners(broadcastMessage.signers);
27
+ }
28
+ if (broadcastMessage.serializedSignatures) {
29
+ builder.setSignatures((0, iface_1.deserializeSignatures)(broadcastMessage.serializedSignatures));
30
+ }
31
+ return builder;
32
+ }
33
+ /**
34
+ * Parses a broadcastable message and gets the message builder based on the message type.
35
+ * @param broadcastString The broadcastable message to parse
36
+ * @returns A message builder instance for the parsed broadcastable message type
37
+ */
38
+ fromBroadcastString(broadcastString) {
39
+ const broadcastMessage = JSON.parse(broadcastString);
40
+ return this.fromBroadcastFormat(broadcastMessage);
41
+ }
42
+ }
43
+ exports.BaseMessageBuilderFactory = BaseMessageBuilderFactory;
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9iYXNlQ29pbi9tZXNzYWdlcy9iYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLG9DQUFpRDtBQUVqRDs7R0FFRztBQUNILE1BQXNCLHlCQUF5QjtJQUc3Qzs7O09BR0c7SUFDSCxZQUFzQixVQUFnQztRQUNwRCxJQUFJLENBQUMsVUFBVSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBU0Q7Ozs7T0FJRztJQUNILG1CQUFtQixDQUFDLGdCQUFzQztRQUN4RCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUQsT0FBTyxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3QyxPQUFPLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNyRCxJQUFJLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzdCLE9BQU8sQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELElBQUksZ0JBQWdCLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUMxQyxPQUFPLENBQUMsYUFBYSxDQUFDLElBQUEsNkJBQXFCLEVBQUMsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1FBQ3RGLENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILG1CQUFtQixDQUFDLGVBQXVCO1FBQ3pDLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQXlCLENBQUM7UUFDN0UsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNwRCxDQUFDO0NBQ0Y7QUE3Q0QsOERBNkNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IElNZXNzYWdlQnVpbGRlciwgSU1lc3NhZ2VCdWlsZGVyRmFjdG9yeSB9IGZyb20gJy4vaWZhY2UnO1xuaW1wb3J0IHsgQnJvYWRjYXN0YWJsZU1lc3NhZ2UsIE1lc3NhZ2VTdGFuZGFyZFR5cGUgfSBmcm9tICcuLi8uLi8uLi9iaXRnbyc7XG5pbXBvcnQgeyBkZXNlcmlhbGl6ZVNpZ25hdHVyZXMgfSBmcm9tICcuLi9pZmFjZSc7XG5cbi8qKlxuICogQmFzZSBNZXNzYWdlIEJ1aWxkZXJcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VNZXNzYWdlQnVpbGRlckZhY3RvcnkgaW1wbGVtZW50cyBJTWVzc2FnZUJ1aWxkZXJGYWN0b3J5IHtcbiAgcHJvdGVjdGVkIGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+O1xuXG4gIC8qKlxuICAgKiBCYXNlIGNvbnN0cnVjdG9yLlxuICAgKiBAcGFyYW0gY29pbkNvbmZpZyBCYXNlQ29pbiBmcm9tIHN0YXRpY3MgbGlicmFyeVxuICAgKi9cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGNvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgdGhpcy5jb2luQ29uZmlnID0gY29pbkNvbmZpZztcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgbWVzc2FnZSBidWlsZGVyIGZvciB0aGUgc3BlY2lmaWVkIG1lc3NhZ2UgdHlwZVxuICAgKiBAcGFyYW0gdHlwZSBUaGUgdHlwZSBvZiBtZXNzYWdlIHRvIGJ1aWxkXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgc3BlY2lmaWVkIHR5cGVcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBnZXRNZXNzYWdlQnVpbGRlcih0eXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlKTogSU1lc3NhZ2VCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgbWVzc2FnZSBidWlsZGVyIGZyb20gYSBicm9hZGNhc3RhYmxlIG1lc3NhZ2VcbiAgICogQHBhcmFtIGJyb2FkY2FzdE1lc3NhZ2UgVGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZVxuICAgKiBAcmV0dXJucyBBIG1lc3NhZ2UgYnVpbGRlciBpbnN0YW5jZSBmb3IgdGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0eXBlXG4gICAqL1xuICBmcm9tQnJvYWRjYXN0Rm9ybWF0KGJyb2FkY2FzdE1lc3NhZ2U6IEJyb2FkY2FzdGFibGVNZXNzYWdlKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBjb25zdCBidWlsZGVyID0gdGhpcy5nZXRNZXNzYWdlQnVpbGRlcihicm9hZGNhc3RNZXNzYWdlLnR5cGUpO1xuICAgIGJ1aWxkZXIuc2V0UGF5bG9hZChicm9hZGNhc3RNZXNzYWdlLnBheWxvYWQpO1xuICAgIGJ1aWxkZXIuc2V0TWV0YWRhdGEoYnJvYWRjYXN0TWVzc2FnZS5tZXRhZGF0YSB8fCB7fSk7XG4gICAgaWYgKGJyb2FkY2FzdE1lc3NhZ2Uuc2lnbmVycykge1xuICAgICAgYnVpbGRlci5zZXRTaWduZXJzKGJyb2FkY2FzdE1lc3NhZ2Uuc2lnbmVycyk7XG4gICAgfVxuICAgIGlmIChicm9hZGNhc3RNZXNzYWdlLnNlcmlhbGl6ZWRTaWduYXR1cmVzKSB7XG4gICAgICBidWlsZGVyLnNldFNpZ25hdHVyZXMoZGVzZXJpYWxpemVTaWduYXR1cmVzKGJyb2FkY2FzdE1lc3NhZ2Uuc2VyaWFsaXplZFNpZ25hdHVyZXMpKTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1aWxkZXI7XG4gIH1cblxuICAvKipcbiAgICogUGFyc2VzIGEgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIGFuZCBnZXRzIHRoZSBtZXNzYWdlIGJ1aWxkZXIgYmFzZWQgb24gdGhlIG1lc3NhZ2UgdHlwZS5cbiAgICogQHBhcmFtIGJyb2FkY2FzdFN0cmluZyBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHRvIHBhcnNlXG4gICAqIEByZXR1cm5zIEEgbWVzc2FnZSBidWlsZGVyIGluc3RhbmNlIGZvciB0aGUgcGFyc2VkIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0eXBlXG4gICAqL1xuICBmcm9tQnJvYWRjYXN0U3RyaW5nKGJyb2FkY2FzdFN0cmluZzogc3RyaW5nKTogSU1lc3NhZ2VCdWlsZGVyIHtcbiAgICBjb25zdCBicm9hZGNhc3RNZXNzYWdlID0gSlNPTi5wYXJzZShicm9hZGNhc3RTdHJpbmcpIGFzIEJyb2FkY2FzdGFibGVNZXNzYWdlO1xuICAgIHJldHVybiB0aGlzLmZyb21Ccm9hZGNhc3RGb3JtYXQoYnJvYWRjYXN0TWVzc2FnZSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,164 @@
1
+ import { BroadcastableMessage, MessageMetadata, MessagePayload, MessageStandardType } from '../../../bitgo';
2
+ import { Signature } from '../iface';
3
+ /**
4
+ * Represents a built message that can be signed
5
+ */
6
+ export interface IMessage {
7
+ /**
8
+ * Get the message type
9
+ */
10
+ getType(): MessageStandardType;
11
+ /**
12
+ * Get the message payload
13
+ */
14
+ getPayload(): MessagePayload;
15
+ /**
16
+ * Get the metadata associated with the message
17
+ */
18
+ getMetadata(): MessageMetadata | undefined;
19
+ /**
20
+ * Gets all signers addresses or public keys
21
+ */
22
+ getSigners(): string[];
23
+ /**
24
+ * Adds a signer address or public key
25
+ * @param signer The address or public key of the signer
26
+ */
27
+ addSigner(signer: string): void;
28
+ /**
29
+ * Sets signers addresses or public keys
30
+ * @param signers Array of addresses or public keys
31
+ */
32
+ setSigners(signers: string[]): void;
33
+ /**
34
+ * Gets all signatures associated with this message
35
+ */
36
+ getSignatures(): Signature[];
37
+ /**
38
+ * Sets signatures for this message
39
+ * @param signatures Array of signatures to set
40
+ */
41
+ setSignatures(signatures: Signature[]): void;
42
+ /**
43
+ * Adds a signature to this message
44
+ * @param signature The signature to add
45
+ */
46
+ addSignature(signature: Signature): void;
47
+ /**
48
+ * Returns the payload that should be signed
49
+ * This might be different from the original payload in some standards
50
+ * For example, in EIP-712, this would be the encoded typed data hash
51
+ */
52
+ getSignablePayload(): Promise<string | Buffer>;
53
+ /**
54
+ * Creates a broadcastable message format that includes the signatures
55
+ * Uses internal signatures and signers that were previously set
56
+ * @returns A serializable format for broadcasting
57
+ */
58
+ toBroadcastFormat(): Promise<BroadcastableMessage>;
59
+ /**
60
+ * Serializes the broadcastable message to a string
61
+ * Uses internal signatures and signers that were previously set
62
+ * @returns A JSON string representation of the broadcastable message
63
+ */
64
+ toBroadcastString(): Promise<string>;
65
+ /**
66
+ * Verifies if the provided encoded message matches the expected format
67
+ * @param messageEncodedHex The encoded message in hex format to verify
68
+ * @param metadata Optional metadata to include in the verification
69
+ * @returns A Promise resolving to true if the message is valid, false otherwise
70
+ */
71
+ verifyEncodedPayload(messageEncodedHex: string, metadata?: Record<string, unknown>): Promise<boolean>;
72
+ }
73
+ /**
74
+ * Core interface for message building strategies
75
+ */
76
+ export interface IMessageBuilder {
77
+ /**
78
+ * Sets the message payload to be used when building the message
79
+ * @param payload The message payload (string, JSON, etc.)
80
+ * @returns The builder instance for chaining
81
+ */
82
+ setPayload(payload: MessagePayload): IMessageBuilder;
83
+ /**
84
+ * Sets metadata for the message
85
+ * @param metadata Additional metadata for the message
86
+ * @returns The builder instance for chaining
87
+ */
88
+ setMetadata(metadata: Record<string, unknown>): IMessageBuilder;
89
+ /**
90
+ * Sets the signatures to the message
91
+ * @param signatures The signatures to add
92
+ * @returns The builder instance for chaining
93
+ */
94
+ setSignatures(signatures: Signature[]): IMessageBuilder;
95
+ /**
96
+ * Adds a signature to the message
97
+ * @param signature The signature to add
98
+ * @returns The builder instance for chaining
99
+ */
100
+ addSignature(signature: Signature): IMessageBuilder;
101
+ /**
102
+ * Sets the signers for the message
103
+ * @param signers Array of addresses or public keys
104
+ * @returns The builder instance for chaining
105
+ */
106
+ setSigners(signers: string[]): IMessageBuilder;
107
+ /**
108
+ * Adds a signer address or public key
109
+ * @param signer The address or public key of the signer
110
+ * @returns The builder instance for chaining
111
+ */
112
+ addSigner(signer: string): IMessageBuilder;
113
+ /**
114
+ * Gets the current message payload
115
+ * @returns The current message payload
116
+ */
117
+ getPayload(): MessagePayload | undefined;
118
+ /**
119
+ * Gets the current metadata
120
+ * @returns The current metadata
121
+ */
122
+ getMetadata(): Record<string, unknown> | undefined;
123
+ /**
124
+ * Gets the type of message being built
125
+ * @returns The type of message standard
126
+ */
127
+ getType(): MessageStandardType;
128
+ /**
129
+ * Builds a message using the previously set payload and metadata
130
+ * @returns A Promise resolving to the built SignableMessage
131
+ */
132
+ build(): Promise<IMessage>;
133
+ /**
134
+ * Parse a broadcastable message back into a message and signatures
135
+ * @param message The broadcastable message to parse
136
+ * @returns The parsed message and signature
137
+ */
138
+ fromBroadcastFormat(message: BroadcastableMessage): Promise<IMessage>;
139
+ }
140
+ /**
141
+ * Factory interface for creating message builders
142
+ */
143
+ export interface IMessageBuilderFactory {
144
+ /**
145
+ * Gets a message builder for the specified message type
146
+ * @param type The type of message to build
147
+ * @returns A message builder instance for the specified type
148
+ */
149
+ getMessageBuilder(type: MessageStandardType): IMessageBuilder;
150
+ /**
151
+ * Parse a broadcastable message back into a signable message and signature
152
+ * This factory method will automatically choose the correct builder based on the message type
153
+ * @param broadcastMessage The broadcastable message to parse
154
+ * @returns A message builder instance for the parsed specified type
155
+ */
156
+ fromBroadcastFormat(broadcastMessage: BroadcastableMessage): IMessageBuilder;
157
+ /**
158
+ * Parse a broadcastable message string back into a signable message and signature
159
+ * @param broadcastString The JSON string representation of the broadcast message
160
+ * @returns A message builder instance for the parsed specified type
161
+ */
162
+ fromBroadcastString(broadcastString: string): IMessageBuilder;
163
+ }
164
+ //# sourceMappingURL=iface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../../../src/account-lib/baseCoin/messages/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC5G,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,OAAO,IAAI,mBAAmB,CAAC;IAE/B;;OAEG;IACH,UAAU,IAAI,cAAc,CAAC;IAE7B;;OAEG;IACH,WAAW,IAAI,eAAe,GAAG,SAAS,CAAC;IAE3C;;OAEG;IACH,UAAU,IAAI,MAAM,EAAE,CAAC;IAEvB;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;;OAGG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEpC;;OAEG;IACH,aAAa,IAAI,SAAS,EAAE,CAAC;IAE7B;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;IAE7C;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;IAEzC;;;;OAIG;IACH,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAE/C;;;;OAIG;IACH,iBAAiB,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAEnD;;;;OAIG;IACH,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAErC;;;;;OAKG;IACH,oBAAoB,CAAC,iBAAiB,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvG;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,eAAe,CAAC;IAErD;;;;OAIG;IACH,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,eAAe,CAAC;IAEhE;;;;OAIG;IACH,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,eAAe,CAAC;IAExD;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,SAAS,GAAG,eAAe,CAAC;IAEpD;;;;OAIG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC;IAE/C;;;;OAIG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,CAAC;IAE3C;;;OAGG;IACH,UAAU,IAAI,cAAc,GAAG,SAAS,CAAC;IAEzC;;;OAGG;IACH,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAEnD;;;OAGG;IACH,OAAO,IAAI,mBAAmB,CAAC;IAE/B;;;OAGG;IACH,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE3B;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CACvE;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,iBAAiB,CAAC,IAAI,EAAE,mBAAmB,GAAG,eAAe,CAAC;IAE9D;;;;;OAKG;IACH,mBAAmB,CAAC,gBAAgB,EAAE,oBAAoB,GAAG,eAAe,CAAC;IAE7E;;;;OAIG;IACH,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,eAAe,CAAC;CAC/D"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vbWVzc2FnZXMvaWZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJyb2FkY2FzdGFibGVNZXNzYWdlLCBNZXNzYWdlTWV0YWRhdGEsIE1lc3NhZ2VQYXlsb2FkLCBNZXNzYWdlU3RhbmRhcmRUeXBlIH0gZnJvbSAnLi4vLi4vLi4vYml0Z28nO1xuaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnLi4vaWZhY2UnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBidWlsdCBtZXNzYWdlIHRoYXQgY2FuIGJlIHNpZ25lZFxuICovXG5leHBvcnQgaW50ZXJmYWNlIElNZXNzYWdlIHtcbiAgLyoqXG4gICAqIEdldCB0aGUgbWVzc2FnZSB0eXBlXG4gICAqL1xuICBnZXRUeXBlKCk6IE1lc3NhZ2VTdGFuZGFyZFR5cGU7XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgbWVzc2FnZSBwYXlsb2FkXG4gICAqL1xuICBnZXRQYXlsb2FkKCk6IE1lc3NhZ2VQYXlsb2FkO1xuXG4gIC8qKlxuICAgKiBHZXQgdGhlIG1ldGFkYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgbWVzc2FnZVxuICAgKi9cbiAgZ2V0TWV0YWRhdGEoKTogTWVzc2FnZU1ldGFkYXRhIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBHZXRzIGFsbCBzaWduZXJzIGFkZHJlc3NlcyBvciBwdWJsaWMga2V5c1xuICAgKi9cbiAgZ2V0U2lnbmVycygpOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQWRkcyBhIHNpZ25lciBhZGRyZXNzIG9yIHB1YmxpYyBrZXlcbiAgICogQHBhcmFtIHNpZ25lciBUaGUgYWRkcmVzcyBvciBwdWJsaWMga2V5IG9mIHRoZSBzaWduZXJcbiAgICovXG4gIGFkZFNpZ25lcihzaWduZXI6IHN0cmluZyk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFNldHMgc2lnbmVycyBhZGRyZXNzZXMgb3IgcHVibGljIGtleXNcbiAgICogQHBhcmFtIHNpZ25lcnMgQXJyYXkgb2YgYWRkcmVzc2VzIG9yIHB1YmxpYyBrZXlzXG4gICAqL1xuICBzZXRTaWduZXJzKHNpZ25lcnM6IHN0cmluZ1tdKTogdm9pZDtcblxuICAvKipcbiAgICogR2V0cyBhbGwgc2lnbmF0dXJlcyBhc3NvY2lhdGVkIHdpdGggdGhpcyBtZXNzYWdlXG4gICAqL1xuICBnZXRTaWduYXR1cmVzKCk6IFNpZ25hdHVyZVtdO1xuXG4gIC8qKlxuICAgKiBTZXRzIHNpZ25hdHVyZXMgZm9yIHRoaXMgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmF0dXJlcyBBcnJheSBvZiBzaWduYXR1cmVzIHRvIHNldFxuICAgKi9cbiAgc2V0U2lnbmF0dXJlcyhzaWduYXR1cmVzOiBTaWduYXR1cmVbXSk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBzaWduYXR1cmUgdG8gdGhpcyBtZXNzYWdlXG4gICAqIEBwYXJhbSBzaWduYXR1cmUgVGhlIHNpZ25hdHVyZSB0byBhZGRcbiAgICovXG4gIGFkZFNpZ25hdHVyZShzaWduYXR1cmU6IFNpZ25hdHVyZSk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHBheWxvYWQgdGhhdCBzaG91bGQgYmUgc2lnbmVkXG4gICAqIFRoaXMgbWlnaHQgYmUgZGlmZmVyZW50IGZyb20gdGhlIG9yaWdpbmFsIHBheWxvYWQgaW4gc29tZSBzdGFuZGFyZHNcbiAgICogRm9yIGV4YW1wbGUsIGluIEVJUC03MTIsIHRoaXMgd291bGQgYmUgdGhlIGVuY29kZWQgdHlwZWQgZGF0YSBoYXNoXG4gICAqL1xuICBnZXRTaWduYWJsZVBheWxvYWQoKTogUHJvbWlzZTxzdHJpbmcgfCBCdWZmZXI+O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIGZvcm1hdCB0aGF0IGluY2x1ZGVzIHRoZSBzaWduYXR1cmVzXG4gICAqIFVzZXMgaW50ZXJuYWwgc2lnbmF0dXJlcyBhbmQgc2lnbmVycyB0aGF0IHdlcmUgcHJldmlvdXNseSBzZXRcbiAgICogQHJldHVybnMgQSBzZXJpYWxpemFibGUgZm9ybWF0IGZvciBicm9hZGNhc3RpbmdcbiAgICovXG4gIHRvQnJvYWRjYXN0Rm9ybWF0KCk6IFByb21pc2U8QnJvYWRjYXN0YWJsZU1lc3NhZ2U+O1xuXG4gIC8qKlxuICAgKiBTZXJpYWxpemVzIHRoZSBicm9hZGNhc3RhYmxlIG1lc3NhZ2UgdG8gYSBzdHJpbmdcbiAgICogVXNlcyBpbnRlcm5hbCBzaWduYXR1cmVzIGFuZCBzaWduZXJzIHRoYXQgd2VyZSBwcmV2aW91c2x5IHNldFxuICAgKiBAcmV0dXJucyBBIEpTT04gc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBicm9hZGNhc3RhYmxlIG1lc3NhZ2VcbiAgICovXG4gIHRvQnJvYWRjYXN0U3RyaW5nKCk6IFByb21pc2U8c3RyaW5nPjtcblxuICAvKipcbiAgICogVmVyaWZpZXMgaWYgdGhlIHByb3ZpZGVkIGVuY29kZWQgbWVzc2FnZSBtYXRjaGVzIHRoZSBleHBlY3RlZCBmb3JtYXRcbiAgICogQHBhcmFtIG1lc3NhZ2VFbmNvZGVkSGV4IFRoZSBlbmNvZGVkIG1lc3NhZ2UgaW4gaGV4IGZvcm1hdCB0byB2ZXJpZnlcbiAgICogQHBhcmFtIG1ldGFkYXRhIE9wdGlvbmFsIG1ldGFkYXRhIHRvIGluY2x1ZGUgaW4gdGhlIHZlcmlmaWNhdGlvblxuICAgKiBAcmV0dXJucyBBIFByb21pc2UgcmVzb2x2aW5nIHRvIHRydWUgaWYgdGhlIG1lc3NhZ2UgaXMgdmFsaWQsIGZhbHNlIG90aGVyd2lzZVxuICAgKi9cbiAgdmVyaWZ5RW5jb2RlZFBheWxvYWQobWVzc2FnZUVuY29kZWRIZXg6IHN0cmluZywgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IFByb21pc2U8Ym9vbGVhbj47XG59XG5cbi8qKlxuICogQ29yZSBpbnRlcmZhY2UgZm9yIG1lc3NhZ2UgYnVpbGRpbmcgc3RyYXRlZ2llc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElNZXNzYWdlQnVpbGRlciB7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBtZXNzYWdlIHBheWxvYWQgdG8gYmUgdXNlZCB3aGVuIGJ1aWxkaW5nIHRoZSBtZXNzYWdlXG4gICAqIEBwYXJhbSBwYXlsb2FkIFRoZSBtZXNzYWdlIHBheWxvYWQgKHN0cmluZywgSlNPTiwgZXRjLilcbiAgICogQHJldHVybnMgVGhlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIGNoYWluaW5nXG4gICAqL1xuICBzZXRQYXlsb2FkKHBheWxvYWQ6IE1lc3NhZ2VQYXlsb2FkKTogSU1lc3NhZ2VCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBTZXRzIG1ldGFkYXRhIGZvciB0aGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gbWV0YWRhdGEgQWRkaXRpb25hbCBtZXRhZGF0YSBmb3IgdGhlIG1lc3NhZ2VcbiAgICogQHJldHVybnMgVGhlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIGNoYWluaW5nXG4gICAqL1xuICBzZXRNZXRhZGF0YShtZXRhZGF0YTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiBJTWVzc2FnZUJ1aWxkZXI7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHNpZ25hdHVyZXMgdG8gdGhlIG1lc3NhZ2VcbiAgICogQHBhcmFtIHNpZ25hdHVyZXMgVGhlIHNpZ25hdHVyZXMgdG8gYWRkXG4gICAqIEByZXR1cm5zIFRoZSBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgc2V0U2lnbmF0dXJlcyhzaWduYXR1cmVzOiBTaWduYXR1cmVbXSk6IElNZXNzYWdlQnVpbGRlcjtcblxuICAvKipcbiAgICogQWRkcyBhIHNpZ25hdHVyZSB0byB0aGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmF0dXJlIFRoZSBzaWduYXR1cmUgdG8gYWRkXG4gICAqIEByZXR1cm5zIFRoZSBidWlsZGVyIGluc3RhbmNlIGZvciBjaGFpbmluZ1xuICAgKi9cbiAgYWRkU2lnbmF0dXJlKHNpZ25hdHVyZTogU2lnbmF0dXJlKTogSU1lc3NhZ2VCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBzaWduZXJzIGZvciB0aGUgbWVzc2FnZVxuICAgKiBAcGFyYW0gc2lnbmVycyBBcnJheSBvZiBhZGRyZXNzZXMgb3IgcHVibGljIGtleXNcbiAgICogQHJldHVybnMgVGhlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIGNoYWluaW5nXG4gICAqL1xuICBzZXRTaWduZXJzKHNpZ25lcnM6IHN0cmluZ1tdKTogSU1lc3NhZ2VCdWlsZGVyO1xuXG4gIC8qKlxuICAgKiBBZGRzIGEgc2lnbmVyIGFkZHJlc3Mgb3IgcHVibGljIGtleVxuICAgKiBAcGFyYW0gc2lnbmVyIFRoZSBhZGRyZXNzIG9yIHB1YmxpYyBrZXkgb2YgdGhlIHNpZ25lclxuICAgKiBAcmV0dXJucyBUaGUgYnVpbGRlciBpbnN0YW5jZSBmb3IgY2hhaW5pbmdcbiAgICovXG4gIGFkZFNpZ25lcihzaWduZXI6IHN0cmluZyk6IElNZXNzYWdlQnVpbGRlcjtcblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBtZXNzYWdlIHBheWxvYWRcbiAgICogQHJldHVybnMgVGhlIGN1cnJlbnQgbWVzc2FnZSBwYXlsb2FkXG4gICAqL1xuICBnZXRQYXlsb2FkKCk6IE1lc3NhZ2VQYXlsb2FkIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IG1ldGFkYXRhXG4gICAqIEByZXR1cm5zIFRoZSBjdXJyZW50IG1ldGFkYXRhXG4gICAqL1xuICBnZXRNZXRhZGF0YSgpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogR2V0cyB0aGUgdHlwZSBvZiBtZXNzYWdlIGJlaW5nIGJ1aWx0XG4gICAqIEByZXR1cm5zIFRoZSB0eXBlIG9mIG1lc3NhZ2Ugc3RhbmRhcmRcbiAgICovXG4gIGdldFR5cGUoKTogTWVzc2FnZVN0YW5kYXJkVHlwZTtcblxuICAvKipcbiAgICogQnVpbGRzIGEgbWVzc2FnZSB1c2luZyB0aGUgcHJldmlvdXNseSBzZXQgcGF5bG9hZCBhbmQgbWV0YWRhdGFcbiAgICogQHJldHVybnMgQSBQcm9taXNlIHJlc29sdmluZyB0byB0aGUgYnVpbHQgU2lnbmFibGVNZXNzYWdlXG4gICAqL1xuICBidWlsZCgpOiBQcm9taXNlPElNZXNzYWdlPjtcblxuICAvKipcbiAgICogUGFyc2UgYSBicm9hZGNhc3RhYmxlIG1lc3NhZ2UgYmFjayBpbnRvIGEgbWVzc2FnZSBhbmQgc2lnbmF0dXJlc1xuICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgYnJvYWRjYXN0YWJsZSBtZXNzYWdlIHRvIHBhcnNlXG4gICAqIEByZXR1cm5zIFRoZSBwYXJzZWQgbWVzc2FnZSBhbmQgc2lnbmF0dXJlXG4gICAqL1xuICBmcm9tQnJvYWRjYXN0Rm9ybWF0KG1lc3NhZ2U6IEJyb2FkY2FzdGFibGVNZXNzYWdlKTogUHJvbWlzZTxJTWVzc2FnZT47XG59XG5cbi8qKlxuICogRmFjdG9yeSBpbnRlcmZhY2UgZm9yIGNyZWF0aW5nIG1lc3NhZ2UgYnVpbGRlcnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJTWVzc2FnZUJ1aWxkZXJGYWN0b3J5IHtcbiAgLyoqXG4gICAqIEdldHMgYSBtZXNzYWdlIGJ1aWxkZXIgZm9yIHRoZSBzcGVjaWZpZWQgbWVzc2FnZSB0eXBlXG4gICAqIEBwYXJhbSB0eXBlIFRoZSB0eXBlIG9mIG1lc3NhZ2UgdG8gYnVpbGRcbiAgICogQHJldHVybnMgQSBtZXNzYWdlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIHRoZSBzcGVjaWZpZWQgdHlwZVxuICAgKi9cbiAgZ2V0TWVzc2FnZUJ1aWxkZXIodHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZSk6IElNZXNzYWdlQnVpbGRlcjtcblxuICAvKipcbiAgICogUGFyc2UgYSBicm9hZGNhc3RhYmxlIG1lc3NhZ2UgYmFjayBpbnRvIGEgc2lnbmFibGUgbWVzc2FnZSBhbmQgc2lnbmF0dXJlXG4gICAqIFRoaXMgZmFjdG9yeSBtZXRob2Qgd2lsbCBhdXRvbWF0aWNhbGx5IGNob29zZSB0aGUgY29ycmVjdCBidWlsZGVyIGJhc2VkIG9uIHRoZSBtZXNzYWdlIHR5cGVcbiAgICogQHBhcmFtIGJyb2FkY2FzdE1lc3NhZ2UgVGhlIGJyb2FkY2FzdGFibGUgbWVzc2FnZSB0byBwYXJzZVxuICAgKiBAcmV0dXJucyBBIG1lc3NhZ2UgYnVpbGRlciBpbnN0YW5jZSBmb3IgdGhlIHBhcnNlZCBzcGVjaWZpZWQgdHlwZVxuICAgKi9cbiAgZnJvbUJyb2FkY2FzdEZvcm1hdChicm9hZGNhc3RNZXNzYWdlOiBCcm9hZGNhc3RhYmxlTWVzc2FnZSk6IElNZXNzYWdlQnVpbGRlcjtcblxuICAvKipcbiAgICogUGFyc2UgYSBicm9hZGNhc3RhYmxlIG1lc3NhZ2Ugc3RyaW5nIGJhY2sgaW50byBhIHNpZ25hYmxlIG1lc3NhZ2UgYW5kIHNpZ25hdHVyZVxuICAgKiBAcGFyYW0gYnJvYWRjYXN0U3RyaW5nIFRoZSBKU09OIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGUgYnJvYWRjYXN0IG1lc3NhZ2VcbiAgICogQHJldHVybnMgQSBtZXNzYWdlIGJ1aWxkZXIgaW5zdGFuY2UgZm9yIHRoZSBwYXJzZWQgc3BlY2lmaWVkIHR5cGVcbiAgICovXG4gIGZyb21Ccm9hZGNhc3RTdHJpbmcoYnJvYWRjYXN0U3RyaW5nOiBzdHJpbmcpOiBJTWVzc2FnZUJ1aWxkZXI7XG59XG4iXX0=
@@ -0,0 +1,6 @@
1
+ export * from './baseMessage';
2
+ export * from './baseMessageBuilder';
3
+ export * from './baseMessageBuilderFactory';
4
+ export * from './iface';
5
+ export * from './simple';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/account-lib/baseCoin/messages/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC"}
@@ -0,0 +1,22 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./baseMessage"), exports);
18
+ __exportStar(require("./baseMessageBuilder"), exports);
19
+ __exportStar(require("./baseMessageBuilderFactory"), exports);
20
+ __exportStar(require("./iface"), exports);
21
+ __exportStar(require("./simple"), exports);
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vbWVzc2FnZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUE4QjtBQUM5Qix1REFBcUM7QUFDckMsOERBQTRDO0FBQzVDLDBDQUF3QjtBQUN4QiwyQ0FBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2Jhc2VNZXNzYWdlJztcbmV4cG9ydCAqIGZyb20gJy4vYmFzZU1lc3NhZ2VCdWlsZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vYmFzZU1lc3NhZ2VCdWlsZGVyRmFjdG9yeSc7XG5leHBvcnQgKiBmcm9tICcuL2lmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vc2ltcGxlJztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export * from './simpleMessage';
2
+ export * from './simpleMessageBuilder';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/baseCoin/messages/simple/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1,19 @@
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./simpleMessage"), exports);
18
+ __exportStar(require("./simpleMessageBuilder"), exports);
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vbWVzc2FnZXMvc2ltcGxlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrREFBZ0M7QUFDaEMseURBQXVDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zaW1wbGVNZXNzYWdlJztcbmV4cG9ydCAqIGZyb20gJy4vc2ltcGxlTWVzc2FnZUJ1aWxkZXInO1xuIl19
@@ -0,0 +1,13 @@
1
+ import { BaseMessage } from '../baseMessage';
2
+ import { MessageOptions } from '../../../../bitgo';
3
+ /**
4
+ * Implementation of String Message
5
+ */
6
+ export declare class SimpleMessage extends BaseMessage {
7
+ constructor(options: MessageOptions);
8
+ /**
9
+ * Returns the signable payload for the message
10
+ */
11
+ getSignablePayload(): Promise<string | Buffer>;
12
+ }
13
+ //# sourceMappingURL=simpleMessage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simpleMessage.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/baseCoin/messages/simple/simpleMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAuB,MAAM,mBAAmB,CAAC;AAExE;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;gBAChC,OAAO,EAAE,cAAc;IAOnC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;CAOrD"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimpleMessage = void 0;
4
+ const baseMessage_1 = require("../baseMessage");
5
+ const bitgo_1 = require("../../../../bitgo");
6
+ /**
7
+ * Implementation of String Message
8
+ */
9
+ class SimpleMessage extends baseMessage_1.BaseMessage {
10
+ constructor(options) {
11
+ super({
12
+ ...options,
13
+ type: bitgo_1.MessageStandardType.SIMPLE,
14
+ });
15
+ }
16
+ /**
17
+ * Returns the signable payload for the message
18
+ */
19
+ async getSignablePayload() {
20
+ if (!this.payload) {
21
+ throw new Error('Message payload is missing');
22
+ }
23
+ this.signablePayload = Buffer.from(this.payload);
24
+ return this.signablePayload;
25
+ }
26
+ }
27
+ exports.SimpleMessage = SimpleMessage;
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlTWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hY2NvdW50LWxpYi9iYXNlQ29pbi9tZXNzYWdlcy9zaW1wbGUvc2ltcGxlTWVzc2FnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxnREFBNkM7QUFDN0MsNkNBQXdFO0FBRXhFOztHQUVHO0FBQ0gsTUFBYSxhQUFjLFNBQVEseUJBQVc7SUFDNUMsWUFBWSxPQUF1QjtRQUNqQyxLQUFLLENBQUM7WUFDSixHQUFHLE9BQU87WUFDVixJQUFJLEVBQUUsMkJBQW1CLENBQUMsTUFBTTtTQUNqQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsa0JBQWtCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQ2hELENBQUM7UUFDRCxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0NBQ0Y7QUFsQkQsc0NBa0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZU1lc3NhZ2UgfSBmcm9tICcuLi9iYXNlTWVzc2FnZSc7XG5pbXBvcnQgeyBNZXNzYWdlT3B0aW9ucywgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2JpdGdvJztcblxuLyoqXG4gKiBJbXBsZW1lbnRhdGlvbiBvZiBTdHJpbmcgTWVzc2FnZVxuICovXG5leHBvcnQgY2xhc3MgU2ltcGxlTWVzc2FnZSBleHRlbmRzIEJhc2VNZXNzYWdlIHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogTWVzc2FnZU9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgdHlwZTogTWVzc2FnZVN0YW5kYXJkVHlwZS5TSU1QTEUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgc2lnbmFibGUgcGF5bG9hZCBmb3IgdGhlIG1lc3NhZ2VcbiAgICovXG4gIGFzeW5jIGdldFNpZ25hYmxlUGF5bG9hZCgpOiBQcm9taXNlPHN0cmluZyB8IEJ1ZmZlcj4ge1xuICAgIGlmICghdGhpcy5wYXlsb2FkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01lc3NhZ2UgcGF5bG9hZCBpcyBtaXNzaW5nJyk7XG4gICAgfVxuICAgIHRoaXMuc2lnbmFibGVQYXlsb2FkID0gQnVmZmVyLmZyb20odGhpcy5wYXlsb2FkKTtcbiAgICByZXR1cm4gdGhpcy5zaWduYWJsZVBheWxvYWQ7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { BaseCoin as CoinConfig } from '@bitgo/statics';
2
+ import { BaseMessageBuilder } from '../baseMessageBuilder';
3
+ import { MessageOptions } from '../../../../bitgo';
4
+ import { IMessage } from '../iface';
5
+ /**
6
+ * Builder for string messages
7
+ */
8
+ export declare class SimpleMessageBuilder extends BaseMessageBuilder {
9
+ /**
10
+ * Base constructor.
11
+ * @param _coinConfig BaseCoin from statics library
12
+ */
13
+ constructor(_coinConfig: Readonly<CoinConfig>);
14
+ /**
15
+ * Builds a SimpleMessage instance with the provided options
16
+ * @param options Options to create the message
17
+ * @returns A Promise that resolves to a SimpleMessage instance
18
+ */
19
+ buildMessage(options: MessageOptions): Promise<IMessage>;
20
+ }
21
+ //# sourceMappingURL=simpleMessageBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simpleMessageBuilder.d.ts","sourceRoot":"","sources":["../../../../../../src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAuB,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,kBAAkB;IAC1D;;;OAGG;gBACgB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAIpD;;;;OAIG;IACU,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,QAAQ,CAAC;CAGtE"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SimpleMessageBuilder = void 0;
4
+ const simpleMessage_1 = require("./simpleMessage");
5
+ const baseMessageBuilder_1 = require("../baseMessageBuilder");
6
+ const bitgo_1 = require("../../../../bitgo");
7
+ /**
8
+ * Builder for string messages
9
+ */
10
+ class SimpleMessageBuilder extends baseMessageBuilder_1.BaseMessageBuilder {
11
+ /**
12
+ * Base constructor.
13
+ * @param _coinConfig BaseCoin from statics library
14
+ */
15
+ constructor(_coinConfig) {
16
+ super(_coinConfig, bitgo_1.MessageStandardType.SIMPLE);
17
+ }
18
+ /**
19
+ * Builds a SimpleMessage instance with the provided options
20
+ * @param options Options to create the message
21
+ * @returns A Promise that resolves to a SimpleMessage instance
22
+ */
23
+ async buildMessage(options) {
24
+ return new simpleMessage_1.SimpleMessage(options);
25
+ }
26
+ }
27
+ exports.SimpleMessageBuilder = SimpleMessageBuilder;
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlTWVzc2FnZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvYmFzZUNvaW4vbWVzc2FnZXMvc2ltcGxlL3NpbXBsZU1lc3NhZ2VCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUFnRDtBQUVoRCw4REFBMkQ7QUFDM0QsNkNBQXdFO0FBR3hFOztHQUVHO0FBQ0gsTUFBYSxvQkFBcUIsU0FBUSx1Q0FBa0I7SUFDMUQ7OztPQUdHO0lBQ0gsWUFBbUIsV0FBaUM7UUFDbEQsS0FBSyxDQUFDLFdBQVcsRUFBRSwyQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBdUI7UUFDL0MsT0FBTyxJQUFJLDZCQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQztDQUNGO0FBakJELG9EQWlCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNpbXBsZU1lc3NhZ2UgfSBmcm9tICcuL3NpbXBsZU1lc3NhZ2UnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZyB9IGZyb20gJ0BiaXRnby9zdGF0aWNzJztcbmltcG9ydCB7IEJhc2VNZXNzYWdlQnVpbGRlciB9IGZyb20gJy4uL2Jhc2VNZXNzYWdlQnVpbGRlcic7XG5pbXBvcnQgeyBNZXNzYWdlT3B0aW9ucywgTWVzc2FnZVN0YW5kYXJkVHlwZSB9IGZyb20gJy4uLy4uLy4uLy4uL2JpdGdvJztcbmltcG9ydCB7IElNZXNzYWdlIH0gZnJvbSAnLi4vaWZhY2UnO1xuXG4vKipcbiAqIEJ1aWxkZXIgZm9yIHN0cmluZyBtZXNzYWdlc1xuICovXG5leHBvcnQgY2xhc3MgU2ltcGxlTWVzc2FnZUJ1aWxkZXIgZXh0ZW5kcyBCYXNlTWVzc2FnZUJ1aWxkZXIge1xuICAvKipcbiAgICogQmFzZSBjb25zdHJ1Y3Rvci5cbiAgICogQHBhcmFtIF9jb2luQ29uZmlnIEJhc2VDb2luIGZyb20gc3RhdGljcyBsaWJyYXJ5XG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcsIE1lc3NhZ2VTdGFuZGFyZFR5cGUuU0lNUExFKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZHMgYSBTaW1wbGVNZXNzYWdlIGluc3RhbmNlIHdpdGggdGhlIHByb3ZpZGVkIG9wdGlvbnNcbiAgICogQHBhcmFtIG9wdGlvbnMgT3B0aW9ucyB0byBjcmVhdGUgdGhlIG1lc3NhZ2VcbiAgICogQHJldHVybnMgQSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBTaW1wbGVNZXNzYWdlIGluc3RhbmNlXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgYnVpbGRNZXNzYWdlKG9wdGlvbnM6IE1lc3NhZ2VPcHRpb25zKTogUHJvbWlzZTxJTWVzc2FnZT4ge1xuICAgIHJldHVybiBuZXcgU2ltcGxlTWVzc2FnZShvcHRpb25zKTtcbiAgfVxufVxuIl19
@@ -13,7 +13,7 @@ import { IWebhooks } from '../webhook/iWebhooks';
13
13
  import { TransactionType } from '../../account-lib';
14
14
  import { IInscriptionBuilder } from '../inscriptionBuilder';
15
15
  import { Hash } from 'crypto';
16
- import { MPCTx, PopulatedIntent, TokenType } from '../utils';
16
+ import { MessageStandardType, MPCTx, PopulatedIntent, TokenType } from '../utils';
17
17
  export declare const multisigTypes: {
18
18
  readonly onchain: "onchain";
19
19
  readonly tss: "tss";
@@ -256,6 +256,7 @@ export interface TransactionPrebuild extends BaseSignable {
256
256
  export interface Message extends BaseSignable {
257
257
  messageRaw: string;
258
258
  messageEncoded?: string;
259
+ messageStandardType?: MessageStandardType;
259
260
  }
260
261
  export interface MessageTypeProperty {
261
262
  name: string;
@@ -353,6 +354,7 @@ export interface SignedMessage {
353
354
  signature: string;
354
355
  messageRaw: string;
355
356
  messageEncoded?: string;
357
+ messageStandardType?: MessageStandardType;
356
358
  txRequestId: string;
357
359
  }
358
360
  export interface RecoverWalletTokenOptions {