@bitgo-beta/sdk-core 8.2.1-beta.706 → 8.2.1-beta.707

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.
@@ -61,69 +61,130 @@ export declare const WatchOnly: t.TypeC<{
61
61
  }>>;
62
62
  }>;
63
63
  export type WatchOnly = t.TypeOf<typeof WatchOnly>;
64
- export declare const UpdateLightningWalletSignedRequest: t.PartialC<{
65
- encryptedSignerMacaroon: t.StringC;
66
- encryptedSignerAdminMacaroon: t.StringC;
67
- signerIp: t.StringC;
68
- encryptedSignerTlsKey: t.StringC;
69
- signerTlsCert: t.StringC;
70
- watchOnlyAccounts: t.TypeC<{
71
- master_key_birthday_timestamp: t.StringC;
72
- master_key_fingerprint: t.StringC;
73
- accounts: t.ArrayC<t.TypeC<{
74
- purpose: t.NumberC;
75
- coin_type: t.NumberC;
76
- account: t.NumberC;
77
- xpub: t.StringC;
78
- }>>;
64
+ export declare const LightningWalletCoinSpecific: t.UnionC<[t.TypeC<{
65
+ lnbtc: t.PartialC<{
66
+ encryptedSignerAdminMacaroon: t.StringC;
67
+ signerIP: t.BrandC<t.StringC, IPAddressBrand>;
68
+ signerTlsCert: t.StringC;
69
+ encryptedSignerTlsKey: t.StringC;
70
+ watchOnly: t.TypeC<{
71
+ master_key_birthday_timestamp: t.StringC;
72
+ master_key_fingerprint: t.StringC;
73
+ accounts: t.ArrayC<t.TypeC<{
74
+ purpose: t.NumberC;
75
+ coin_type: t.NumberC;
76
+ account: t.NumberC;
77
+ xpub: t.StringC;
78
+ }>>;
79
+ }>;
80
+ encryptedSignerMacaroon: t.StringC;
81
+ }>;
82
+ }>, t.TypeC<{
83
+ tlnbtc: t.PartialC<{
84
+ encryptedSignerAdminMacaroon: t.StringC;
85
+ signerIP: t.BrandC<t.StringC, IPAddressBrand>;
86
+ signerTlsCert: t.StringC;
87
+ encryptedSignerTlsKey: t.StringC;
88
+ watchOnly: t.TypeC<{
89
+ master_key_birthday_timestamp: t.StringC;
90
+ master_key_fingerprint: t.StringC;
91
+ accounts: t.ArrayC<t.TypeC<{
92
+ purpose: t.NumberC;
93
+ coin_type: t.NumberC;
94
+ account: t.NumberC;
95
+ xpub: t.StringC;
96
+ }>>;
97
+ }>;
98
+ encryptedSignerMacaroon: t.StringC;
79
99
  }>;
100
+ }>]>;
101
+ export type LightningWalletCoinSpecific = t.TypeOf<typeof LightningWalletCoinSpecific>;
102
+ export declare const UpdateLightningWallet: t.PartialC<{
103
+ coinSpecific: t.UnionC<[t.TypeC<{
104
+ lnbtc: t.PartialC<{
105
+ encryptedSignerAdminMacaroon: t.StringC;
106
+ signerIP: t.BrandC<t.StringC, IPAddressBrand>;
107
+ signerTlsCert: t.StringC;
108
+ encryptedSignerTlsKey: t.StringC;
109
+ watchOnly: t.TypeC<{
110
+ master_key_birthday_timestamp: t.StringC;
111
+ master_key_fingerprint: t.StringC;
112
+ accounts: t.ArrayC<t.TypeC<{
113
+ purpose: t.NumberC;
114
+ coin_type: t.NumberC;
115
+ account: t.NumberC;
116
+ xpub: t.StringC;
117
+ }>>;
118
+ }>;
119
+ encryptedSignerMacaroon: t.StringC;
120
+ }>;
121
+ }>, t.TypeC<{
122
+ tlnbtc: t.PartialC<{
123
+ encryptedSignerAdminMacaroon: t.StringC;
124
+ signerIP: t.BrandC<t.StringC, IPAddressBrand>;
125
+ signerTlsCert: t.StringC;
126
+ encryptedSignerTlsKey: t.StringC;
127
+ watchOnly: t.TypeC<{
128
+ master_key_birthday_timestamp: t.StringC;
129
+ master_key_fingerprint: t.StringC;
130
+ accounts: t.ArrayC<t.TypeC<{
131
+ purpose: t.NumberC;
132
+ coin_type: t.NumberC;
133
+ account: t.NumberC;
134
+ xpub: t.StringC;
135
+ }>>;
136
+ }>;
137
+ encryptedSignerMacaroon: t.StringC;
138
+ }>;
139
+ }>]>;
140
+ signature: t.StringC;
80
141
  }>;
81
- export type UpdateLightningWalletSignedRequest = t.TypeOf<typeof UpdateLightningWalletSignedRequest>;
142
+ export type UpdateLightningWallet = t.TypeOf<typeof UpdateLightningWallet>;
82
143
  export declare const LndAmount: t.ExactC<t.TypeC<{
83
- sat: import("io-ts-types").BigIntFromStringC;
84
- msat: import("io-ts-types").BigIntFromStringC;
144
+ sat: t.StringC;
145
+ msat: t.StringC;
85
146
  }>>;
86
147
  export type LndAmount = t.TypeOf<typeof LndAmount>;
87
148
  export declare const ChannelBalance: t.ExactC<t.TypeC<{
88
149
  /** The balance on your side of the channel and what you the user can spend. */
89
150
  localBalance: t.ExactC<t.TypeC<{
90
- sat: import("io-ts-types").BigIntFromStringC;
91
- msat: import("io-ts-types").BigIntFromStringC;
151
+ sat: t.StringC;
152
+ msat: t.StringC;
92
153
  }>>;
93
154
  /** The balance on the other side of the channel, what your channel partner can controls. */
94
155
  remoteBalance: t.ExactC<t.TypeC<{
95
- sat: import("io-ts-types").BigIntFromStringC;
96
- msat: import("io-ts-types").BigIntFromStringC;
156
+ sat: t.StringC;
157
+ msat: t.StringC;
97
158
  }>>;
98
159
  /** Sum of local unsettled balances. */
99
160
  unsettledLocalBalance: t.ExactC<t.TypeC<{
100
- sat: import("io-ts-types").BigIntFromStringC;
101
- msat: import("io-ts-types").BigIntFromStringC;
161
+ sat: t.StringC;
162
+ msat: t.StringC;
102
163
  }>>;
103
164
  /** Sum of remote unsettled balances. */
104
165
  unsettledRemoteBalance: t.ExactC<t.TypeC<{
105
- sat: import("io-ts-types").BigIntFromStringC;
106
- msat: import("io-ts-types").BigIntFromStringC;
166
+ sat: t.StringC;
167
+ msat: t.StringC;
107
168
  }>>;
108
169
  /** Sum of local pending balances. */
109
170
  pendingOpenLocalBalance: t.ExactC<t.TypeC<{
110
- sat: import("io-ts-types").BigIntFromStringC;
111
- msat: import("io-ts-types").BigIntFromStringC;
171
+ sat: t.StringC;
172
+ msat: t.StringC;
112
173
  }>>;
113
174
  /** Sum of local remote balances. */
114
175
  pendingOpenRemoteBalance: t.ExactC<t.TypeC<{
115
- sat: import("io-ts-types").BigIntFromStringC;
116
- msat: import("io-ts-types").BigIntFromStringC;
176
+ sat: t.StringC;
177
+ msat: t.StringC;
117
178
  }>>;
118
179
  }>>;
119
180
  export type ChannelBalance = t.TypeOf<typeof ChannelBalance>;
120
181
  export declare const LndWalletBalance: t.ExactC<t.TypeC<{
121
182
  /** Total balance, confirmed and unconfirmed */
122
- totalBalance: import("io-ts-types").BigIntFromStringC;
123
- confirmedBalance: import("io-ts-types").BigIntFromStringC;
124
- unconfirmedBalance: import("io-ts-types").BigIntFromStringC;
125
- lockedBalance: import("io-ts-types").BigIntFromStringC;
126
- reservedBalanceAnchorChan: import("io-ts-types").BigIntFromStringC;
183
+ totalBalance: t.StringC;
184
+ confirmedBalance: t.StringC;
185
+ unconfirmedBalance: t.StringC;
186
+ lockedBalance: t.StringC;
187
+ reservedBalanceAnchorChan: t.StringC;
127
188
  }>>;
128
189
  export type LndWalletBalance = t.TypeOf<typeof LndWalletBalance>;
129
190
  /**
@@ -139,56 +200,56 @@ export declare const LndBalance: t.ExactC<t.TypeC<{
139
200
  offchain: t.ExactC<t.TypeC<{
140
201
  /** The balance on your side of the channel and what you the user can spend. */
141
202
  localBalance: t.ExactC<t.TypeC<{
142
- sat: import("io-ts-types").BigIntFromStringC;
143
- msat: import("io-ts-types").BigIntFromStringC;
203
+ sat: t.StringC;
204
+ msat: t.StringC;
144
205
  }>>;
145
206
  /** The balance on the other side of the channel, what your channel partner can controls. */
146
207
  remoteBalance: t.ExactC<t.TypeC<{
147
- sat: import("io-ts-types").BigIntFromStringC;
148
- msat: import("io-ts-types").BigIntFromStringC;
208
+ sat: t.StringC;
209
+ msat: t.StringC;
149
210
  }>>;
150
211
  /** Sum of local unsettled balances. */
151
212
  unsettledLocalBalance: t.ExactC<t.TypeC<{
152
- sat: import("io-ts-types").BigIntFromStringC;
153
- msat: import("io-ts-types").BigIntFromStringC;
213
+ sat: t.StringC;
214
+ msat: t.StringC;
154
215
  }>>;
155
216
  /** Sum of remote unsettled balances. */
156
217
  unsettledRemoteBalance: t.ExactC<t.TypeC<{
157
- sat: import("io-ts-types").BigIntFromStringC;
158
- msat: import("io-ts-types").BigIntFromStringC;
218
+ sat: t.StringC;
219
+ msat: t.StringC;
159
220
  }>>;
160
221
  /** Sum of local pending balances. */
161
222
  pendingOpenLocalBalance: t.ExactC<t.TypeC<{
162
- sat: import("io-ts-types").BigIntFromStringC;
163
- msat: import("io-ts-types").BigIntFromStringC;
223
+ sat: t.StringC;
224
+ msat: t.StringC;
164
225
  }>>;
165
226
  /** Sum of local remote balances. */
166
227
  pendingOpenRemoteBalance: t.ExactC<t.TypeC<{
167
- sat: import("io-ts-types").BigIntFromStringC;
168
- msat: import("io-ts-types").BigIntFromStringC;
228
+ sat: t.StringC;
229
+ msat: t.StringC;
169
230
  }>>;
170
231
  }>>;
171
232
  onchain: t.ExactC<t.TypeC<{
172
233
  /** Total balance, confirmed and unconfirmed */
173
- totalBalance: import("io-ts-types").BigIntFromStringC;
174
- confirmedBalance: import("io-ts-types").BigIntFromStringC;
175
- unconfirmedBalance: import("io-ts-types").BigIntFromStringC;
176
- lockedBalance: import("io-ts-types").BigIntFromStringC;
177
- reservedBalanceAnchorChan: import("io-ts-types").BigIntFromStringC;
234
+ totalBalance: t.StringC;
235
+ confirmedBalance: t.StringC;
236
+ unconfirmedBalance: t.StringC;
237
+ lockedBalance: t.StringC;
238
+ reservedBalanceAnchorChan: t.StringC;
178
239
  }>>;
179
- totalLimboBalance: import("io-ts-types").BigIntFromStringC;
240
+ totalLimboBalance: t.StringC;
180
241
  }>>;
181
242
  export type LndBalance = t.TypeOf<typeof LndBalance>;
182
243
  export declare const LndGetBalancesResponse: t.ExactC<t.TypeC<{
183
- inboundBalance: import("io-ts-types").BigIntFromStringC;
184
- inboundPendingBalance: import("io-ts-types").BigIntFromStringC;
185
- inboundUnsettledBalance: import("io-ts-types").BigIntFromStringC;
186
- outboundBalance: import("io-ts-types").BigIntFromStringC;
187
- outboundPendingBalance: import("io-ts-types").BigIntFromStringC;
188
- outboundUnsettledBalance: import("io-ts-types").BigIntFromStringC;
189
- spendableBalanceString: import("io-ts-types").BigIntFromStringC;
190
- balanceString: import("io-ts-types").BigIntFromStringC;
191
- confirmedBalanceString: import("io-ts-types").BigIntFromStringC;
244
+ inboundBalance: t.StringC;
245
+ inboundPendingBalance: t.StringC;
246
+ inboundUnsettledBalance: t.StringC;
247
+ outboundBalance: t.StringC;
248
+ outboundPendingBalance: t.StringC;
249
+ outboundUnsettledBalance: t.StringC;
250
+ spendableBalanceString: t.StringC;
251
+ balanceString: t.StringC;
252
+ confirmedBalanceString: t.StringC;
192
253
  }>>;
193
254
  export type LndGetBalancesResponse = t.TypeOf<typeof LndGetBalancesResponse>;
194
255
  export declare const ChanPoints: t.ExactC<t.TypeC<{
@@ -1 +1 @@
1
- {"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/codecs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAM3B,wBAAgB,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,EAC5C,UAAU,EAAE,CAAC,GACZ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAAE,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC;IAAE,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC,CAAC,CAAC,CAE3D;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,SAAS,EAAE,OAAO,MAAM,CAAC;CACnC;AAED,eAAO,MAAM,SAAS,qCAIrB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC;AAEnD,eAAO,MAAM,UAAU,4DAAwE,CAAC;AAEhG,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;AAErD,eAAO,MAAM,iCAAiC;;;;;;;;IAAgD,CAAC;AAE/F,eAAO,MAAM,iBAAiB;;;;;GAQ7B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEnE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;GASjC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE3E,eAAO,MAAM,gBAAgB;;;;;EAK3B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEjE,eAAO,MAAM,SAAS;;;;;;;;;EAIpB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC;AAEnD,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;EAO7C,CAAC;AAEH,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAErG,eAAO,MAAM,SAAS;;;GAMrB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC;AAEnD,eAAO,MAAM,cAAc;IAEvB,+EAA+E;;;;;IAE/E,4FAA4F;;;;;IAE5F,uCAAuC;;;;;IAEvC,wCAAwC;;;;;IAExC,qCAAqC;;;;;IAErC,oCAAoC;;;;;GAIvC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAE7D,eAAO,MAAM,gBAAgB;IAEzB,+CAA+C;;;;;;GAQlD,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEjE;;;;;;;;GAQG;AACH,eAAO,MAAM,UAAU;;QAzCnB,+EAA+E;;;;;QAE/E,4FAA4F;;;;;QAE5F,uCAAuC;;;;;QAEvC,wCAAwC;;;;;QAExC,qCAAqC;;;;;QAErC,oCAAoC;;;;;;;QAUpC,+CAA+C;;;;;;;;GA4BlD,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;AAErD,eAAO,MAAM,sBAAsB;;;;;;;;;;GAclC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE7E,eAAO,MAAM,UAAU;;;GAMtB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,UAAU,CAAC,CAAC;AAErD,eAAO,MAAM,cAAc;;;;;;GAM1B,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC;AAE7D,eAAO,MAAM,aAAa,+EAWzB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,aAAa,CAAC,CAAC;AAE3D,eAAO,MAAM,iBAAiB;;;;;IAW7B,CAAC;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,OAAO;;;IAKd,0CAA0C;;IAE1C,8DAA8D;;;IAG9D,mEAAmE;;;;IAQxE,CAAC;AACF,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,OAAO,CAAC,CAAC;AAE/C,eAAO,MAAM,WAAW;;;;;;;;;;IAalB;;;;OAIG;;IAKR,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAEvD,eAAO,MAAM,YAAY;;;;;EAQxB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"codecs.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/codecs.ts"],"names":[],"mappings":"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"}
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.InvoiceQuery = exports.InvoiceInfo = exports.Invoice = exports.CreateInvoiceBody = exports.InvoiceStatus = exports.BackupResponse = exports.ChanPoints = exports.LndGetBalancesResponse = exports.LndBalance = exports.LndWalletBalance = exports.ChannelBalance = exports.LndAmount = exports.UpdateLightningWalletSignedRequest = exports.WatchOnly = exports.WatchOnlyAccount = exports.LightningAuthKeychain = exports.LightningKeychain = exports.LightningAuthKeychainCoinSpecific = exports.KeyPurpose = exports.IPAddress = void 0;
36
+ exports.InvoiceQuery = exports.InvoiceInfo = exports.Invoice = exports.CreateInvoiceBody = exports.InvoiceStatus = exports.BackupResponse = exports.ChanPoints = exports.LndGetBalancesResponse = exports.LndBalance = exports.LndWalletBalance = exports.ChannelBalance = exports.LndAmount = exports.UpdateLightningWallet = exports.LightningWalletCoinSpecific = exports.WatchOnly = exports.WatchOnlyAccount = exports.LightningAuthKeychain = exports.LightningKeychain = exports.LightningAuthKeychainCoinSpecific = exports.KeyPurpose = exports.IPAddress = void 0;
37
37
  exports.getCodecPair = getCodecPair;
38
38
  /* eslint-disable no-redeclare */
39
39
  const t = __importStar(require("io-ts"));
@@ -72,17 +72,21 @@ exports.WatchOnly = t.type({
72
72
  master_key_fingerprint: t.string,
73
73
  accounts: t.array(exports.WatchOnlyAccount),
74
74
  });
75
- exports.UpdateLightningWalletSignedRequest = t.partial({
76
- encryptedSignerMacaroon: t.string,
75
+ exports.LightningWalletCoinSpecific = getCodecPair(t.partial({
77
76
  encryptedSignerAdminMacaroon: t.string,
78
- signerIp: t.string,
79
- encryptedSignerTlsKey: t.string,
77
+ signerIP: exports.IPAddress,
80
78
  signerTlsCert: t.string,
81
- watchOnlyAccounts: exports.WatchOnly,
82
- });
79
+ encryptedSignerTlsKey: t.string,
80
+ watchOnly: exports.WatchOnly,
81
+ encryptedSignerMacaroon: t.string,
82
+ }));
83
+ exports.UpdateLightningWallet = t.partial({
84
+ coinSpecific: exports.LightningWalletCoinSpecific,
85
+ signature: t.string,
86
+ }, 'UpdateLightningWallet');
83
87
  exports.LndAmount = t.strict({
84
- sat: BigIntFromString_1.BigIntFromString,
85
- msat: BigIntFromString_1.BigIntFromString,
88
+ sat: t.string,
89
+ msat: t.string,
86
90
  }, 'LndAmount');
87
91
  exports.ChannelBalance = t.strict({
88
92
  /** The balance on your side of the channel and what you the user can spend. */
@@ -100,11 +104,11 @@ exports.ChannelBalance = t.strict({
100
104
  }, 'ChannelBalance');
101
105
  exports.LndWalletBalance = t.strict({
102
106
  /** Total balance, confirmed and unconfirmed */
103
- totalBalance: BigIntFromString_1.BigIntFromString,
104
- confirmedBalance: BigIntFromString_1.BigIntFromString,
105
- unconfirmedBalance: BigIntFromString_1.BigIntFromString,
106
- lockedBalance: BigIntFromString_1.BigIntFromString,
107
- reservedBalanceAnchorChan: BigIntFromString_1.BigIntFromString,
107
+ totalBalance: t.string,
108
+ confirmedBalance: t.string,
109
+ unconfirmedBalance: t.string,
110
+ lockedBalance: t.string,
111
+ reservedBalanceAnchorChan: t.string,
108
112
  }, 'LndWalletBalance');
109
113
  /**
110
114
  The balances as returned from lnd.
@@ -118,19 +122,19 @@ exports.LndWalletBalance = t.strict({
118
122
  exports.LndBalance = t.strict({
119
123
  offchain: exports.ChannelBalance,
120
124
  onchain: exports.LndWalletBalance,
121
- totalLimboBalance: BigIntFromString_1.BigIntFromString,
125
+ totalLimboBalance: t.string,
122
126
  }, 'LndBalance');
123
127
  exports.LndGetBalancesResponse = t.strict({
124
- inboundBalance: BigIntFromString_1.BigIntFromString,
125
- inboundPendingBalance: BigIntFromString_1.BigIntFromString,
126
- inboundUnsettledBalance: BigIntFromString_1.BigIntFromString,
127
- outboundBalance: BigIntFromString_1.BigIntFromString,
128
- outboundPendingBalance: BigIntFromString_1.BigIntFromString,
129
- outboundUnsettledBalance: BigIntFromString_1.BigIntFromString,
128
+ inboundBalance: t.string,
129
+ inboundPendingBalance: t.string,
130
+ inboundUnsettledBalance: t.string,
131
+ outboundBalance: t.string,
132
+ outboundPendingBalance: t.string,
133
+ outboundUnsettledBalance: t.string,
130
134
  // wallet balances, names forced by type in AbstractCoin
131
- spendableBalanceString: BigIntFromString_1.BigIntFromString,
132
- balanceString: BigIntFromString_1.BigIntFromString,
133
- confirmedBalanceString: BigIntFromString_1.BigIntFromString,
135
+ spendableBalanceString: t.string,
136
+ balanceString: t.string,
137
+ confirmedBalanceString: t.string,
134
138
  }, 'LndGetBalancesResponse');
135
139
  exports.ChanPoints = t.strict({
136
140
  fundingTxid: t.string,
@@ -204,4 +208,4 @@ exports.InvoiceQuery = t.partial({
204
208
  startDate: DateFromISOString_1.DateFromISOString,
205
209
  endDate: DateFromISOString_1.DateFromISOString,
206
210
  }, 'InvoiceQuery');
207
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZWNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL2xpZ2h0bmluZy9jb2RlY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT0Esb0NBSUM7QUFYRCxpQ0FBaUM7QUFDakMseUNBQTJCO0FBQzNCLDZCQUEyQjtBQUMzQiw2Q0FBNkM7QUFDN0MsbUVBQWdFO0FBQ2hFLHFFQUFrRTtBQUVsRSxTQUFnQixZQUFZLENBQzFCLFVBQWE7SUFFYixPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsRixDQUFDO0FBTVksUUFBQSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FDOUIsQ0FBQyxDQUFDLE1BQU0sRUFDUixDQUFDLEtBQUssRUFBOEMsRUFBRSxDQUFDLElBQUEsVUFBSSxFQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxxREFBcUQ7QUFDL0gsV0FBVyxDQUNaLENBQUM7QUFJVyxRQUFBLFVBQVUsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7QUFJbkYsUUFBQSxpQ0FBaUMsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxrQkFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBRWxGLFFBQUEsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDdkM7SUFDRSxFQUFFLEVBQUUsNEJBQWM7SUFDbEIsR0FBRyxFQUFFLDRCQUFjO0lBQ25CLFlBQVksRUFBRSw0QkFBYztJQUM1QixNQUFNLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7Q0FDMUIsRUFDRCxtQkFBbUIsQ0FDcEIsQ0FBQztBQUlXLFFBQUEscUJBQXFCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDM0M7SUFDRSxFQUFFLEVBQUUsNEJBQWM7SUFDbEIsR0FBRyxFQUFFLDRCQUFjO0lBQ25CLFlBQVksRUFBRSw0QkFBYztJQUM1QixZQUFZLEVBQUUseUNBQWlDO0lBQy9DLE1BQU0sRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztDQUMxQixFQUNELHVCQUF1QixDQUN4QixDQUFDO0FBSVcsUUFBQSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3JDLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNqQixTQUFTLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDbkIsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ2pCLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTTtDQUNmLENBQUMsQ0FBQztBQUlVLFFBQUEsU0FBUyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDOUIsNkJBQTZCLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDdkMsc0JBQXNCLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDaEMsUUFBUSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsd0JBQWdCLENBQUM7Q0FDcEMsQ0FBQyxDQUFDO0FBSVUsUUFBQSxrQ0FBa0MsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQzFELHVCQUF1QixFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ2pDLDRCQUE0QixFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ3RDLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNsQixxQkFBcUIsRUFBRSxDQUFDLENBQUMsTUFBTTtJQUMvQixhQUFhLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDdkIsaUJBQWlCLEVBQUUsaUJBQVM7Q0FDN0IsQ0FBQyxDQUFDO0FBSVUsUUFBQSxTQUFTLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDL0I7SUFDRSxHQUFHLEVBQUUsbUNBQWdCO0lBQ3JCLElBQUksRUFBRSxtQ0FBZ0I7Q0FDdkIsRUFDRCxXQUFXLENBQ1osQ0FBQztBQUlXLFFBQUEsY0FBYyxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQ3BDO0lBQ0UsK0VBQStFO0lBQy9FLFlBQVksRUFBRSxpQkFBUztJQUN2Qiw0RkFBNEY7SUFDNUYsYUFBYSxFQUFFLGlCQUFTO0lBQ3hCLHVDQUF1QztJQUN2QyxxQkFBcUIsRUFBRSxpQkFBUztJQUNoQyx3Q0FBd0M7SUFDeEMsc0JBQXNCLEVBQUUsaUJBQVM7SUFDakMscUNBQXFDO0lBQ3JDLHVCQUF1QixFQUFFLGlCQUFTO0lBQ2xDLG9DQUFvQztJQUNwQyx3QkFBd0IsRUFBRSxpQkFBUztDQUNwQyxFQUNELGdCQUFnQixDQUNqQixDQUFDO0FBSVcsUUFBQSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUN0QztJQUNFLCtDQUErQztJQUMvQyxZQUFZLEVBQUUsbUNBQWdCO0lBQzlCLGdCQUFnQixFQUFFLG1DQUFnQjtJQUNsQyxrQkFBa0IsRUFBRSxtQ0FBZ0I7SUFDcEMsYUFBYSxFQUFFLG1DQUFnQjtJQUMvQix5QkFBeUIsRUFBRSxtQ0FBZ0I7Q0FDNUMsRUFDRCxrQkFBa0IsQ0FDbkIsQ0FBQztBQUlGOzs7Ozs7OztHQVFHO0FBQ1UsUUFBQSxVQUFVLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDaEM7SUFDRSxRQUFRLEVBQUUsc0JBQWM7SUFDeEIsT0FBTyxFQUFFLHdCQUFnQjtJQUN6QixpQkFBaUIsRUFBRSxtQ0FBZ0I7Q0FDcEMsRUFDRCxZQUFZLENBQ2IsQ0FBQztBQUlXLFFBQUEsc0JBQXNCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDNUM7SUFDRSxjQUFjLEVBQUUsbUNBQWdCO0lBQ2hDLHFCQUFxQixFQUFFLG1DQUFnQjtJQUN2Qyx1QkFBdUIsRUFBRSxtQ0FBZ0I7SUFDekMsZUFBZSxFQUFFLG1DQUFnQjtJQUNqQyxzQkFBc0IsRUFBRSxtQ0FBZ0I7SUFDeEMsd0JBQXdCLEVBQUUsbUNBQWdCO0lBQzFDLHdEQUF3RDtJQUN4RCxzQkFBc0IsRUFBRSxtQ0FBZ0I7SUFDeEMsYUFBYSxFQUFFLG1DQUFnQjtJQUMvQixzQkFBc0IsRUFBRSxtQ0FBZ0I7Q0FDekMsRUFDRCx3QkFBd0IsQ0FDekIsQ0FBQztBQUlXLFFBQUEsVUFBVSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQ2hDO0lBQ0UsV0FBVyxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ3JCLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFBTTtDQUN0QixFQUNELFlBQVksQ0FDYixDQUFDO0FBSVcsUUFBQSxjQUFjLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDcEM7SUFDRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxrQkFBVSxDQUFDO0lBQy9CLGVBQWUsRUFBRSxDQUFDLENBQUMsTUFBTTtDQUMxQixFQUNELGdCQUFnQixDQUNqQixDQUFDO0FBSVcsUUFBQSxhQUFhLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FDbEM7SUFDRSxpQkFBaUI7SUFDakIsOERBQThEO0lBQzlELENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDO0lBQ2pCLGVBQWU7SUFDZixDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQztJQUNwQixlQUFlO0lBQ2YsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUM7Q0FDdEIsRUFDRCxlQUFlLENBQ2hCLENBQUM7QUFHVyxRQUFBLGlCQUFpQixHQUFHLENBQUMsQ0FBQyxZQUFZLENBQzdDO0lBQ0UsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNMLFNBQVMsRUFBRSxtQ0FBZ0I7S0FDNUIsQ0FBQztJQUNGLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDUixJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDZCxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU07S0FDakIsQ0FBQztDQUNILEVBQ0QsbUJBQW1CLENBQ3BCLENBQUM7QUFHRjs7O0dBR0c7QUFDVSxRQUFBLE9BQU8sR0FBRyxDQUFDLENBQUMsWUFBWSxDQUNuQztJQUNFLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDTCxTQUFTLEVBQUUsbUNBQWdCO1FBQzNCLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFBTTtRQUNyQiwwQ0FBMEM7UUFDMUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ2pCLDhEQUE4RDtRQUM5RCxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDbEIsTUFBTSxFQUFFLHFCQUFhO1FBQ3JCLG1FQUFtRTtRQUNuRSxTQUFTLEVBQUUscUNBQWlCO0tBQzdCLENBQUM7SUFDRixDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ1IsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNO0tBQ2YsQ0FBQztDQUNILEVBQ0QsU0FBUyxDQUNWLENBQUM7QUFHVyxRQUFBLFdBQVcsR0FBRyxDQUFDLENBQUMsWUFBWSxDQUN2QztJQUNFLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDTCxTQUFTLEVBQUUsbUNBQWdCO1FBQzNCLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFBTTtRQUNyQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDakIsUUFBUSxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ2xCLE1BQU0sRUFBRSxxQkFBYTtRQUNyQixTQUFTLEVBQUUscUNBQWlCO1FBQzVCLFNBQVMsRUFBRSxxQ0FBaUI7UUFDNUIsU0FBUyxFQUFFLHFDQUFpQjtLQUM3QixDQUFDO0lBQ0YsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUNSOzs7O1dBSUc7UUFDSCxXQUFXLEVBQUUsbUNBQWdCO0tBQzlCLENBQUM7Q0FDSCxFQUNELGFBQWEsQ0FDZCxDQUFDO0FBR1csUUFBQSxZQUFZLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FDbkM7SUFDRSxNQUFNLEVBQUUscUJBQWE7SUFDckIsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ2YsU0FBUyxFQUFFLHFDQUFpQjtJQUM1QixPQUFPLEVBQUUscUNBQWlCO0NBQzNCLEVBQ0QsY0FBYyxDQUNmLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1yZWRlY2xhcmUgKi9cbmltcG9ydCAqIGFzIHQgZnJvbSAnaW8tdHMnO1xuaW1wb3J0IHsgaXNJUCB9IGZyb20gJ25ldCc7XG5pbXBvcnQgeyBOb25FbXB0eVN0cmluZyB9IGZyb20gJ2lvLXRzLXR5cGVzJztcbmltcG9ydCB7IEJpZ0ludEZyb21TdHJpbmcgfSBmcm9tICdpby10cy10eXBlcy9CaWdJbnRGcm9tU3RyaW5nJztcbmltcG9ydCB7IERhdGVGcm9tSVNPU3RyaW5nIH0gZnJvbSAnaW8tdHMtdHlwZXMvRGF0ZUZyb21JU09TdHJpbmcnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29kZWNQYWlyPEMgZXh0ZW5kcyB0Lk1peGVkPihcbiAgaW5uZXJDb2RlYzogQ1xuKTogdC5VbmlvbkM8W3QuVHlwZUM8eyBsbmJ0YzogQyB9PiwgdC5UeXBlQzx7IHRsbmJ0YzogQyB9Pl0+IHtcbiAgcmV0dXJuIHQudW5pb24oW3QudHlwZSh7IGxuYnRjOiBpbm5lckNvZGVjIH0pLCB0LnR5cGUoeyB0bG5idGM6IGlubmVyQ29kZWMgfSldKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJUEFkZHJlc3NCcmFuZCB7XG4gIHJlYWRvbmx5IElQQWRkcmVzczogdW5pcXVlIHN5bWJvbDsgLy8gRW5zdXJlcyB1bmlxdWVuZXNzIGFjcm9zcyBtb2R1bGVzXG59XG5cbmV4cG9ydCBjb25zdCBJUEFkZHJlc3MgPSB0LmJyYW5kKFxuICB0LnN0cmluZyxcbiAgKGlucHV0KTogaW5wdXQgaXMgdC5CcmFuZGVkPHN0cmluZywgSVBBZGRyZXNzQnJhbmQ+ID0+IGlzSVAoaW5wdXQpICE9PSAwLCAvLyBUeXBlIGd1YXJkIHRoYXQgY2hlY2tzIGlmIHRoZSBzdHJpbmcgaXMgYSB2YWxpZCBJUFxuICAnSVBBZGRyZXNzJ1xuKTtcblxuZXhwb3J0IHR5cGUgSVBBZGRyZXNzID0gdC5UeXBlT2Y8dHlwZW9mIElQQWRkcmVzcz47XG5cbmV4cG9ydCBjb25zdCBLZXlQdXJwb3NlID0gdC51bmlvbihbdC5saXRlcmFsKCd1c2VyQXV0aCcpLCB0LmxpdGVyYWwoJ25vZGVBdXRoJyldLCAnS2V5UHVycG9zZScpO1xuXG5leHBvcnQgdHlwZSBLZXlQdXJwb3NlID0gdC5UeXBlT2Y8dHlwZW9mIEtleVB1cnBvc2U+O1xuXG5leHBvcnQgY29uc3QgTGlnaHRuaW5nQXV0aEtleWNoYWluQ29pblNwZWNpZmljID0gZ2V0Q29kZWNQYWlyKHQudHlwZSh7IHB1cnBvc2U6IEtleVB1cnBvc2UgfSkpO1xuXG5leHBvcnQgY29uc3QgTGlnaHRuaW5nS2V5Y2hhaW4gPSB0LnN0cmljdChcbiAge1xuICAgIGlkOiBOb25FbXB0eVN0cmluZyxcbiAgICBwdWI6IE5vbkVtcHR5U3RyaW5nLFxuICAgIGVuY3J5cHRlZFBydjogTm9uRW1wdHlTdHJpbmcsXG4gICAgc291cmNlOiB0LmxpdGVyYWwoJ3VzZXInKSxcbiAgfSxcbiAgJ0xpZ2h0bmluZ0tleWNoYWluJ1xuKTtcblxuZXhwb3J0IHR5cGUgTGlnaHRuaW5nS2V5Y2hhaW4gPSB0LlR5cGVPZjx0eXBlb2YgTGlnaHRuaW5nS2V5Y2hhaW4+O1xuXG5leHBvcnQgY29uc3QgTGlnaHRuaW5nQXV0aEtleWNoYWluID0gdC5zdHJpY3QoXG4gIHtcbiAgICBpZDogTm9uRW1wdHlTdHJpbmcsXG4gICAgcHViOiBOb25FbXB0eVN0cmluZyxcbiAgICBlbmNyeXB0ZWRQcnY6IE5vbkVtcHR5U3RyaW5nLFxuICAgIGNvaW5TcGVjaWZpYzogTGlnaHRuaW5nQXV0aEtleWNoYWluQ29pblNwZWNpZmljLFxuICAgIHNvdXJjZTogdC5saXRlcmFsKCd1c2VyJyksXG4gIH0sXG4gICdMaWdodG5pbmdBdXRoS2V5Y2hhaW4nXG4pO1xuXG5leHBvcnQgdHlwZSBMaWdodG5pbmdBdXRoS2V5Y2hhaW4gPSB0LlR5cGVPZjx0eXBlb2YgTGlnaHRuaW5nQXV0aEtleWNoYWluPjtcblxuZXhwb3J0IGNvbnN0IFdhdGNoT25seUFjY291bnQgPSB0LnR5cGUoe1xuICBwdXJwb3NlOiB0Lm51bWJlcixcbiAgY29pbl90eXBlOiB0Lm51bWJlcixcbiAgYWNjb3VudDogdC5udW1iZXIsXG4gIHhwdWI6IHQuc3RyaW5nLFxufSk7XG5cbmV4cG9ydCB0eXBlIFdhdGNoT25seUFjY291bnQgPSB0LlR5cGVPZjx0eXBlb2YgV2F0Y2hPbmx5QWNjb3VudD47XG5cbmV4cG9ydCBjb25zdCBXYXRjaE9ubHkgPSB0LnR5cGUoe1xuICBtYXN0ZXJfa2V5X2JpcnRoZGF5X3RpbWVzdGFtcDogdC5zdHJpbmcsXG4gIG1hc3Rlcl9rZXlfZmluZ2VycHJpbnQ6IHQuc3RyaW5nLFxuICBhY2NvdW50czogdC5hcnJheShXYXRjaE9ubHlBY2NvdW50KSxcbn0pO1xuXG5leHBvcnQgdHlwZSBXYXRjaE9ubHkgPSB0LlR5cGVPZjx0eXBlb2YgV2F0Y2hPbmx5PjtcblxuZXhwb3J0IGNvbnN0IFVwZGF0ZUxpZ2h0bmluZ1dhbGxldFNpZ25lZFJlcXVlc3QgPSB0LnBhcnRpYWwoe1xuICBlbmNyeXB0ZWRTaWduZXJNYWNhcm9vbjogdC5zdHJpbmcsXG4gIGVuY3J5cHRlZFNpZ25lckFkbWluTWFjYXJvb246IHQuc3RyaW5nLFxuICBzaWduZXJJcDogdC5zdHJpbmcsXG4gIGVuY3J5cHRlZFNpZ25lclRsc0tleTogdC5zdHJpbmcsXG4gIHNpZ25lclRsc0NlcnQ6IHQuc3RyaW5nLFxuICB3YXRjaE9ubHlBY2NvdW50czogV2F0Y2hPbmx5LFxufSk7XG5cbmV4cG9ydCB0eXBlIFVwZGF0ZUxpZ2h0bmluZ1dhbGxldFNpZ25lZFJlcXVlc3QgPSB0LlR5cGVPZjx0eXBlb2YgVXBkYXRlTGlnaHRuaW5nV2FsbGV0U2lnbmVkUmVxdWVzdD47XG5cbmV4cG9ydCBjb25zdCBMbmRBbW91bnQgPSB0LnN0cmljdChcbiAge1xuICAgIHNhdDogQmlnSW50RnJvbVN0cmluZyxcbiAgICBtc2F0OiBCaWdJbnRGcm9tU3RyaW5nLFxuICB9LFxuICAnTG5kQW1vdW50J1xuKTtcblxuZXhwb3J0IHR5cGUgTG5kQW1vdW50ID0gdC5UeXBlT2Y8dHlwZW9mIExuZEFtb3VudD47XG5cbmV4cG9ydCBjb25zdCBDaGFubmVsQmFsYW5jZSA9IHQuc3RyaWN0KFxuICB7XG4gICAgLyoqIFRoZSBiYWxhbmNlIG9uIHlvdXIgc2lkZSBvZiB0aGUgY2hhbm5lbCBhbmQgd2hhdCB5b3UgdGhlIHVzZXIgY2FuIHNwZW5kLiAqL1xuICAgIGxvY2FsQmFsYW5jZTogTG5kQW1vdW50LFxuICAgIC8qKiBUaGUgYmFsYW5jZSBvbiB0aGUgb3RoZXIgc2lkZSBvZiB0aGUgY2hhbm5lbCwgd2hhdCB5b3VyIGNoYW5uZWwgcGFydG5lciBjYW4gY29udHJvbHMuICovXG4gICAgcmVtb3RlQmFsYW5jZTogTG5kQW1vdW50LFxuICAgIC8qKiBTdW0gb2YgbG9jYWwgdW5zZXR0bGVkIGJhbGFuY2VzLiAqL1xuICAgIHVuc2V0dGxlZExvY2FsQmFsYW5jZTogTG5kQW1vdW50LFxuICAgIC8qKiBTdW0gb2YgcmVtb3RlIHVuc2V0dGxlZCBiYWxhbmNlcy4gKi9cbiAgICB1bnNldHRsZWRSZW1vdGVCYWxhbmNlOiBMbmRBbW91bnQsXG4gICAgLyoqIFN1bSBvZiBsb2NhbCBwZW5kaW5nIGJhbGFuY2VzLiAqL1xuICAgIHBlbmRpbmdPcGVuTG9jYWxCYWxhbmNlOiBMbmRBbW91bnQsXG4gICAgLyoqIFN1bSBvZiBsb2NhbCByZW1vdGUgYmFsYW5jZXMuICovXG4gICAgcGVuZGluZ09wZW5SZW1vdGVCYWxhbmNlOiBMbmRBbW91bnQsXG4gIH0sXG4gICdDaGFubmVsQmFsYW5jZSdcbik7XG5cbmV4cG9ydCB0eXBlIENoYW5uZWxCYWxhbmNlID0gdC5UeXBlT2Y8dHlwZW9mIENoYW5uZWxCYWxhbmNlPjtcblxuZXhwb3J0IGNvbnN0IExuZFdhbGxldEJhbGFuY2UgPSB0LnN0cmljdChcbiAge1xuICAgIC8qKiBUb3RhbCBiYWxhbmNlLCBjb25maXJtZWQgYW5kIHVuY29uZmlybWVkICovXG4gICAgdG90YWxCYWxhbmNlOiBCaWdJbnRGcm9tU3RyaW5nLFxuICAgIGNvbmZpcm1lZEJhbGFuY2U6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgdW5jb25maXJtZWRCYWxhbmNlOiBCaWdJbnRGcm9tU3RyaW5nLFxuICAgIGxvY2tlZEJhbGFuY2U6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgcmVzZXJ2ZWRCYWxhbmNlQW5jaG9yQ2hhbjogQmlnSW50RnJvbVN0cmluZyxcbiAgfSxcbiAgJ0xuZFdhbGxldEJhbGFuY2UnXG4pO1xuXG5leHBvcnQgdHlwZSBMbmRXYWxsZXRCYWxhbmNlID0gdC5UeXBlT2Y8dHlwZW9mIExuZFdhbGxldEJhbGFuY2U+O1xuXG4vKipcbiBUaGUgYmFsYW5jZXMgYXMgcmV0dXJuZWQgZnJvbSBsbmQuXG5cbiBXYWxsZXQgQmFsYW5jZVxuIGh0dHBzOi8vYXBpLmxpZ2h0bmluZy5jb21tdW5pdHkvYXBpL2xuZC9saWdodG5pbmcvd2FsbGV0LWJhbGFuY2UvaW5kZXguaHRtbFxuXG4gQ2hhbm5lbCBCYWxhbmNlXG4gaHR0cHM6Ly9hcGkubGlnaHRuaW5nLmNvbW11bml0eS9hcGkvbG5kL2xpZ2h0bmluZy9jaGFubmVsLWJhbGFuY2UvaW5kZXguaHRtbFxuICovXG5leHBvcnQgY29uc3QgTG5kQmFsYW5jZSA9IHQuc3RyaWN0KFxuICB7XG4gICAgb2ZmY2hhaW46IENoYW5uZWxCYWxhbmNlLFxuICAgIG9uY2hhaW46IExuZFdhbGxldEJhbGFuY2UsXG4gICAgdG90YWxMaW1ib0JhbGFuY2U6IEJpZ0ludEZyb21TdHJpbmcsXG4gIH0sXG4gICdMbmRCYWxhbmNlJ1xuKTtcblxuZXhwb3J0IHR5cGUgTG5kQmFsYW5jZSA9IHQuVHlwZU9mPHR5cGVvZiBMbmRCYWxhbmNlPjtcblxuZXhwb3J0IGNvbnN0IExuZEdldEJhbGFuY2VzUmVzcG9uc2UgPSB0LnN0cmljdChcbiAge1xuICAgIGluYm91bmRCYWxhbmNlOiBCaWdJbnRGcm9tU3RyaW5nLFxuICAgIGluYm91bmRQZW5kaW5nQmFsYW5jZTogQmlnSW50RnJvbVN0cmluZyxcbiAgICBpbmJvdW5kVW5zZXR0bGVkQmFsYW5jZTogQmlnSW50RnJvbVN0cmluZyxcbiAgICBvdXRib3VuZEJhbGFuY2U6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgb3V0Ym91bmRQZW5kaW5nQmFsYW5jZTogQmlnSW50RnJvbVN0cmluZyxcbiAgICBvdXRib3VuZFVuc2V0dGxlZEJhbGFuY2U6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgLy8gd2FsbGV0IGJhbGFuY2VzLCBuYW1lcyBmb3JjZWQgYnkgdHlwZSBpbiBBYnN0cmFjdENvaW5cbiAgICBzcGVuZGFibGVCYWxhbmNlU3RyaW5nOiBCaWdJbnRGcm9tU3RyaW5nLFxuICAgIGJhbGFuY2VTdHJpbmc6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgY29uZmlybWVkQmFsYW5jZVN0cmluZzogQmlnSW50RnJvbVN0cmluZyxcbiAgfSxcbiAgJ0xuZEdldEJhbGFuY2VzUmVzcG9uc2UnXG4pO1xuXG5leHBvcnQgdHlwZSBMbmRHZXRCYWxhbmNlc1Jlc3BvbnNlID0gdC5UeXBlT2Y8dHlwZW9mIExuZEdldEJhbGFuY2VzUmVzcG9uc2U+O1xuXG5leHBvcnQgY29uc3QgQ2hhblBvaW50cyA9IHQuc3RyaWN0KFxuICB7XG4gICAgZnVuZGluZ1R4aWQ6IHQuc3RyaW5nLFxuICAgIG91dHB1dEluZGV4OiB0Lm51bWJlcixcbiAgfSxcbiAgJ0NoYW5Qb2ludHMnXG4pO1xuXG5leHBvcnQgdHlwZSBDaGFuUG9pbnRzID0gdC5UeXBlT2Y8dHlwZW9mIENoYW5Qb2ludHM+O1xuXG5leHBvcnQgY29uc3QgQmFja3VwUmVzcG9uc2UgPSB0LnN0cmljdChcbiAge1xuICAgIGNoYW5Qb2ludHM6IHQuYXJyYXkoQ2hhblBvaW50cyksXG4gICAgbXVsdGlDaGFuQmFja3VwOiB0LnN0cmluZyxcbiAgfSxcbiAgJ0JhY2t1cFJlc3BvbnNlJ1xuKTtcblxuZXhwb3J0IHR5cGUgQmFja3VwUmVzcG9uc2UgPSB0LlR5cGVPZjx0eXBlb2YgQmFja3VwUmVzcG9uc2U+O1xuXG5leHBvcnQgY29uc3QgSW52b2ljZVN0YXR1cyA9IHQudW5pb24oXG4gIFtcbiAgICAvLyBJbml0aWFsIHN0YXRlLlxuICAgIC8vIFRyYW5zaXRpb25zIHRvICdzZXR0bGVkJyBvciAnY2FuY2VsZWQnIG9uIExORCBub3RpZmljYXRpb24uXG4gICAgdC5saXRlcmFsKCdvcGVuJyksXG4gICAgLy8gRmluYWwgc3RhdGUuXG4gICAgdC5saXRlcmFsKCdzZXR0bGVkJyksXG4gICAgLy8gRmluYWwgc3RhdGUuXG4gICAgdC5saXRlcmFsKCdjYW5jZWxlZCcpLFxuICBdLFxuICAnSW52b2ljZVN0YXR1cydcbik7XG5leHBvcnQgdHlwZSBJbnZvaWNlU3RhdHVzID0gdC5UeXBlT2Y8dHlwZW9mIEludm9pY2VTdGF0dXM+O1xuXG5leHBvcnQgY29uc3QgQ3JlYXRlSW52b2ljZUJvZHkgPSB0LmludGVyc2VjdGlvbihcbiAgW1xuICAgIHQudHlwZSh7XG4gICAgICB2YWx1ZU1zYXQ6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgfSksXG4gICAgdC5wYXJ0aWFsKHtcbiAgICAgIG1lbW86IHQuc3RyaW5nLFxuICAgICAgZXhwaXJ5OiB0Lm51bWJlcixcbiAgICB9KSxcbiAgXSxcbiAgJ0NyZWF0ZUludm9pY2VCb2R5J1xuKTtcbmV4cG9ydCB0eXBlIENyZWF0ZUludm9pY2VCb2R5ID0gdC5UeXBlT2Y8dHlwZW9mIENyZWF0ZUludm9pY2VCb2R5PjtcblxuLyoqXG4gKiBBIHJlcHJlc2VudGF0aW9uIG9mIHRoZSBkYXRhIHRyYWNrZWQgYnkgdGhlIGluZGV4ZXIgZm9yIGFuIGludm9pY2UgaXQgaGFzXG4gKiBjcmVhdGVkIHdpdGhpbiBsbmQuXG4gKi9cbmV4cG9ydCBjb25zdCBJbnZvaWNlID0gdC5pbnRlcnNlY3Rpb24oXG4gIFtcbiAgICB0LnR5cGUoe1xuICAgICAgdmFsdWVNc2F0OiBCaWdJbnRGcm9tU3RyaW5nLFxuICAgICAgcGF5bWVudEhhc2g6IHQuc3RyaW5nLFxuICAgICAgLyoqIFRoZSBCT0xUICMxMSBlbmNvZGVkIGludm9pY2Ugc3RyaW5nICovXG4gICAgICBpbnZvaWNlOiB0LnN0cmluZyxcbiAgICAgIC8qKiBUaGUgcHVibGljIEJpdEdvIHdhbGxldElkIHRvIHdoaWNoIHRoaXMgaW52b2ljZSBiZWxvbmdzICovXG4gICAgICB3YWxsZXRJZDogdC5zdHJpbmcsXG4gICAgICBzdGF0dXM6IEludm9pY2VTdGF0dXMsXG4gICAgICAvKiogQSBkYXRlIGluIElTTyBmb3JtYXQgcmVwcmVzZW50aW5nIHdoZW4gdGhpcyBpbnZvaWNlIGV4cGlyZXMuICovXG4gICAgICBleHBpcmVzQXQ6IERhdGVGcm9tSVNPU3RyaW5nLFxuICAgIH0pLFxuICAgIHQucGFydGlhbCh7XG4gICAgICBtZW1vOiB0LnN0cmluZyxcbiAgICB9KSxcbiAgXSxcbiAgJ0ludm9pY2UnXG4pO1xuZXhwb3J0IHR5cGUgSW52b2ljZSA9IHQuVHlwZU9mPHR5cGVvZiBJbnZvaWNlPjtcblxuZXhwb3J0IGNvbnN0IEludm9pY2VJbmZvID0gdC5pbnRlcnNlY3Rpb24oXG4gIFtcbiAgICB0LnR5cGUoe1xuICAgICAgdmFsdWVNc2F0OiBCaWdJbnRGcm9tU3RyaW5nLFxuICAgICAgcGF5bWVudEhhc2g6IHQuc3RyaW5nLFxuICAgICAgaW52b2ljZTogdC5zdHJpbmcsXG4gICAgICB3YWxsZXRJZDogdC5zdHJpbmcsXG4gICAgICBzdGF0dXM6IEludm9pY2VTdGF0dXMsXG4gICAgICBleHBpcmVzQXQ6IERhdGVGcm9tSVNPU3RyaW5nLFxuICAgICAgY3JlYXRlZEF0OiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgICAgIHVwZGF0ZWRBdDogRGF0ZUZyb21JU09TdHJpbmcsXG4gICAgfSksXG4gICAgdC5wYXJ0aWFsKHtcbiAgICAgIC8qKlxuICAgICAgICogVGhlIG51bWJlciBvZiBtaWxsaXNhdHMgYWN0dWFsbHkgcGFpZCB0byB0aGlzIGludm9pY2UsIHRoaXMgbWF5IGJlIGdyZWF0ZXJcbiAgICAgICAqIHRoYW4gdGhlIGFtb3VudCByZXF1ZXN0ZWQgYnkgdGhlIGludm9pY2UsIHNpbmNlIGxpZ2h0bmluZyBhbGxvd3Mgb3ZlcnBheWluZ1xuICAgICAgICogKGJ1dCBub3QgdW5kZXJwYXlpbmcpIGludm9pY2VzLlxuICAgICAgICovXG4gICAgICBhbXRQYWlkTXNhdDogQmlnSW50RnJvbVN0cmluZyxcbiAgICB9KSxcbiAgXSxcbiAgJ0ludm9pY2VJbmZvJ1xuKTtcbmV4cG9ydCB0eXBlIEludm9pY2VJbmZvID0gdC5UeXBlT2Y8dHlwZW9mIEludm9pY2VJbmZvPjtcblxuZXhwb3J0IGNvbnN0IEludm9pY2VRdWVyeSA9IHQucGFydGlhbChcbiAge1xuICAgIHN0YXR1czogSW52b2ljZVN0YXR1cyxcbiAgICBsaW1pdDogdC5zdHJpbmcsXG4gICAgc3RhcnREYXRlOiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgICBlbmREYXRlOiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgfSxcbiAgJ0ludm9pY2VRdWVyeSdcbik7XG5cbmV4cG9ydCB0eXBlIEludm9pY2VRdWVyeSA9IHQuVHlwZU9mPHR5cGVvZiBJbnZvaWNlUXVlcnk+O1xuIl19
211
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29kZWNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL2xpZ2h0bmluZy9jb2RlY3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT0Esb0NBSUM7QUFYRCxpQ0FBaUM7QUFDakMseUNBQTJCO0FBQzNCLDZCQUEyQjtBQUMzQiw2Q0FBNkM7QUFDN0MsbUVBQWdFO0FBQ2hFLHFFQUFrRTtBQUVsRSxTQUFnQixZQUFZLENBQzFCLFVBQWE7SUFFYixPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsRixDQUFDO0FBTVksUUFBQSxTQUFTLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FDOUIsQ0FBQyxDQUFDLE1BQU0sRUFDUixDQUFDLEtBQUssRUFBOEMsRUFBRSxDQUFDLElBQUEsVUFBSSxFQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxxREFBcUQ7QUFDL0gsV0FBVyxDQUNaLENBQUM7QUFJVyxRQUFBLFVBQVUsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7QUFJbkYsUUFBQSxpQ0FBaUMsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxrQkFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBRWxGLFFBQUEsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDdkM7SUFDRSxFQUFFLEVBQUUsNEJBQWM7SUFDbEIs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cUNBQWlCO0tBQzdCLENBQUM7SUFDRixDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ1I7Ozs7V0FJRztRQUNILFdBQVcsRUFBRSxtQ0FBZ0I7S0FDOUIsQ0FBQztDQUNILEVBQ0QsYUFBYSxDQUNkLENBQUM7QUFHVyxRQUFBLFlBQVksR0FBRyxDQUFDLENBQUMsT0FBTyxDQUNuQztJQUNFLE1BQU0sRUFBRSxxQkFBYTtJQUNyQixLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDZixTQUFTLEVBQUUscUNBQWlCO0lBQzVCLE9BQU8sRUFBRSxxQ0FBaUI7Q0FDM0IsRUFDRCxjQUFjLENBQ2YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXJlZGVjbGFyZSAqL1xuaW1wb3J0ICogYXMgdCBmcm9tICdpby10cyc7XG5pbXBvcnQgeyBpc0lQIH0gZnJvbSAnbmV0JztcbmltcG9ydCB7IE5vbkVtcHR5U3RyaW5nIH0gZnJvbSAnaW8tdHMtdHlwZXMnO1xuaW1wb3J0IHsgQmlnSW50RnJvbVN0cmluZyB9IGZyb20gJ2lvLXRzLXR5cGVzL0JpZ0ludEZyb21TdHJpbmcnO1xuaW1wb3J0IHsgRGF0ZUZyb21JU09TdHJpbmcgfSBmcm9tICdpby10cy10eXBlcy9EYXRlRnJvbUlTT1N0cmluZyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb2RlY1BhaXI8QyBleHRlbmRzIHQuTWl4ZWQ+KFxuICBpbm5lckNvZGVjOiBDXG4pOiB0LlVuaW9uQzxbdC5UeXBlQzx7IGxuYnRjOiBDIH0+LCB0LlR5cGVDPHsgdGxuYnRjOiBDIH0+XT4ge1xuICByZXR1cm4gdC51bmlvbihbdC50eXBlKHsgbG5idGM6IGlubmVyQ29kZWMgfSksIHQudHlwZSh7IHRsbmJ0YzogaW5uZXJDb2RlYyB9KV0pO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElQQWRkcmVzc0JyYW5kIHtcbiAgcmVhZG9ubHkgSVBBZGRyZXNzOiB1bmlxdWUgc3ltYm9sOyAvLyBFbnN1cmVzIHVuaXF1ZW5lc3MgYWNyb3NzIG1vZHVsZXNcbn1cblxuZXhwb3J0IGNvbnN0IElQQWRkcmVzcyA9IHQuYnJhbmQoXG4gIHQuc3RyaW5nLFxuICAoaW5wdXQpOiBpbnB1dCBpcyB0LkJyYW5kZWQ8c3RyaW5nLCBJUEFkZHJlc3NCcmFuZD4gPT4gaXNJUChpbnB1dCkgIT09IDAsIC8vIFR5cGUgZ3VhcmQgdGhhdCBjaGVja3MgaWYgdGhlIHN0cmluZyBpcyBhIHZhbGlkIElQXG4gICdJUEFkZHJlc3MnXG4pO1xuXG5leHBvcnQgdHlwZSBJUEFkZHJlc3MgPSB0LlR5cGVPZjx0eXBlb2YgSVBBZGRyZXNzPjtcblxuZXhwb3J0IGNvbnN0IEtleVB1cnBvc2UgPSB0LnVuaW9uKFt0LmxpdGVyYWwoJ3VzZXJBdXRoJyksIHQubGl0ZXJhbCgnbm9kZUF1dGgnKV0sICdLZXlQdXJwb3NlJyk7XG5cbmV4cG9ydCB0eXBlIEtleVB1cnBvc2UgPSB0LlR5cGVPZjx0eXBlb2YgS2V5UHVycG9zZT47XG5cbmV4cG9ydCBjb25zdCBMaWdodG5pbmdBdXRoS2V5Y2hhaW5Db2luU3BlY2lmaWMgPSBnZXRDb2RlY1BhaXIodC50eXBlKHsgcHVycG9zZTogS2V5UHVycG9zZSB9KSk7XG5cbmV4cG9ydCBjb25zdCBMaWdodG5pbmdLZXljaGFpbiA9IHQuc3RyaWN0KFxuICB7XG4gICAgaWQ6IE5vbkVtcHR5U3RyaW5nLFxuICAgIHB1YjogTm9uRW1wdHlTdHJpbmcsXG4gICAgZW5jcnlwdGVkUHJ2OiBOb25FbXB0eVN0cmluZyxcbiAgICBzb3VyY2U6IHQubGl0ZXJhbCgndXNlcicpLFxuICB9LFxuICAnTGlnaHRuaW5nS2V5Y2hhaW4nXG4pO1xuXG5leHBvcnQgdHlwZSBMaWdodG5pbmdLZXljaGFpbiA9IHQuVHlwZU9mPHR5cGVvZiBMaWdodG5pbmdLZXljaGFpbj47XG5cbmV4cG9ydCBjb25zdCBMaWdodG5pbmdBdXRoS2V5Y2hhaW4gPSB0LnN0cmljdChcbiAge1xuICAgIGlkOiBOb25FbXB0eVN0cmluZyxcbiAgICBwdWI6IE5vbkVtcHR5U3RyaW5nLFxuICAgIGVuY3J5cHRlZFBydjogTm9uRW1wdHlTdHJpbmcsXG4gICAgY29pblNwZWNpZmljOiBMaWdodG5pbmdBdXRoS2V5Y2hhaW5Db2luU3BlY2lmaWMsXG4gICAgc291cmNlOiB0LmxpdGVyYWwoJ3VzZXInKSxcbiAgfSxcbiAgJ0xpZ2h0bmluZ0F1dGhLZXljaGFpbidcbik7XG5cbmV4cG9ydCB0eXBlIExpZ2h0bmluZ0F1dGhLZXljaGFpbiA9IHQuVHlwZU9mPHR5cGVvZiBMaWdodG5pbmdBdXRoS2V5Y2hhaW4+O1xuXG5leHBvcnQgY29uc3QgV2F0Y2hPbmx5QWNjb3VudCA9IHQudHlwZSh7XG4gIHB1cnBvc2U6IHQubnVtYmVyLFxuICBjb2luX3R5cGU6IHQubnVtYmVyLFxuICBhY2NvdW50OiB0Lm51bWJlcixcbiAgeHB1YjogdC5zdHJpbmcsXG59KTtcblxuZXhwb3J0IHR5cGUgV2F0Y2hPbmx5QWNjb3VudCA9IHQuVHlwZU9mPHR5cGVvZiBXYXRjaE9ubHlBY2NvdW50PjtcblxuZXhwb3J0IGNvbnN0IFdhdGNoT25seSA9IHQudHlwZSh7XG4gIG1hc3Rlcl9rZXlfYmlydGhkYXlfdGltZXN0YW1wOiB0LnN0cmluZyxcbiAgbWFzdGVyX2tleV9maW5nZXJwcmludDogdC5zdHJpbmcsXG4gIGFjY291bnRzOiB0LmFycmF5KFdhdGNoT25seUFjY291bnQpLFxufSk7XG5cbmV4cG9ydCB0eXBlIFdhdGNoT25seSA9IHQuVHlwZU9mPHR5cGVvZiBXYXRjaE9ubHk+O1xuXG5leHBvcnQgY29uc3QgTGlnaHRuaW5nV2FsbGV0Q29pblNwZWNpZmljID0gZ2V0Q29kZWNQYWlyKFxuICB0LnBhcnRpYWwoe1xuICAgIGVuY3J5cHRlZFNpZ25lckFkbWluTWFjYXJvb246IHQuc3RyaW5nLFxuICAgIHNpZ25lcklQOiBJUEFkZHJlc3MsXG4gICAgc2lnbmVyVGxzQ2VydDogdC5zdHJpbmcsXG4gICAgZW5jcnlwdGVkU2lnbmVyVGxzS2V5OiB0LnN0cmluZyxcbiAgICB3YXRjaE9ubHk6IFdhdGNoT25seSxcbiAgICBlbmNyeXB0ZWRTaWduZXJNYWNhcm9vbjogdC5zdHJpbmcsXG4gIH0pXG4pO1xuXG5leHBvcnQgdHlwZSBMaWdodG5pbmdXYWxsZXRDb2luU3BlY2lmaWMgPSB0LlR5cGVPZjx0eXBlb2YgTGlnaHRuaW5nV2FsbGV0Q29pblNwZWNpZmljPjtcblxuZXhwb3J0IGNvbnN0IFVwZGF0ZUxpZ2h0bmluZ1dhbGxldCA9IHQucGFydGlhbChcbiAge1xuICAgIGNvaW5TcGVjaWZpYzogTGlnaHRuaW5nV2FsbGV0Q29pblNwZWNpZmljLFxuICAgIHNpZ25hdHVyZTogdC5zdHJpbmcsXG4gIH0sXG4gICdVcGRhdGVMaWdodG5pbmdXYWxsZXQnXG4pO1xuXG5leHBvcnQgdHlwZSBVcGRhdGVMaWdodG5pbmdXYWxsZXQgPSB0LlR5cGVPZjx0eXBlb2YgVXBkYXRlTGlnaHRuaW5nV2FsbGV0PjtcblxuZXhwb3J0IGNvbnN0IExuZEFtb3VudCA9IHQuc3RyaWN0KFxuICB7XG4gICAgc2F0OiB0LnN0cmluZyxcbiAgICBtc2F0OiB0LnN0cmluZyxcbiAgfSxcbiAgJ0xuZEFtb3VudCdcbik7XG5cbmV4cG9ydCB0eXBlIExuZEFtb3VudCA9IHQuVHlwZU9mPHR5cGVvZiBMbmRBbW91bnQ+O1xuXG5leHBvcnQgY29uc3QgQ2hhbm5lbEJhbGFuY2UgPSB0LnN0cmljdChcbiAge1xuICAgIC8qKiBUaGUgYmFsYW5jZSBvbiB5b3VyIHNpZGUgb2YgdGhlIGNoYW5uZWwgYW5kIHdoYXQgeW91IHRoZSB1c2VyIGNhbiBzcGVuZC4gKi9cbiAgICBsb2NhbEJhbGFuY2U6IExuZEFtb3VudCxcbiAgICAvKiogVGhlIGJhbGFuY2Ugb24gdGhlIG90aGVyIHNpZGUgb2YgdGhlIGNoYW5uZWwsIHdoYXQgeW91ciBjaGFubmVsIHBhcnRuZXIgY2FuIGNvbnRyb2xzLiAqL1xuICAgIHJlbW90ZUJhbGFuY2U6IExuZEFtb3VudCxcbiAgICAvKiogU3VtIG9mIGxvY2FsIHVuc2V0dGxlZCBiYWxhbmNlcy4gKi9cbiAgICB1bnNldHRsZWRMb2NhbEJhbGFuY2U6IExuZEFtb3VudCxcbiAgICAvKiogU3VtIG9mIHJlbW90ZSB1bnNldHRsZWQgYmFsYW5jZXMuICovXG4gICAgdW5zZXR0bGVkUmVtb3RlQmFsYW5jZTogTG5kQW1vdW50LFxuICAgIC8qKiBTdW0gb2YgbG9jYWwgcGVuZGluZyBiYWxhbmNlcy4gKi9cbiAgICBwZW5kaW5nT3BlbkxvY2FsQmFsYW5jZTogTG5kQW1vdW50LFxuICAgIC8qKiBTdW0gb2YgbG9jYWwgcmVtb3RlIGJhbGFuY2VzLiAqL1xuICAgIHBlbmRpbmdPcGVuUmVtb3RlQmFsYW5jZTogTG5kQW1vdW50LFxuICB9LFxuICAnQ2hhbm5lbEJhbGFuY2UnXG4pO1xuXG5leHBvcnQgdHlwZSBDaGFubmVsQmFsYW5jZSA9IHQuVHlwZU9mPHR5cGVvZiBDaGFubmVsQmFsYW5jZT47XG5cbmV4cG9ydCBjb25zdCBMbmRXYWxsZXRCYWxhbmNlID0gdC5zdHJpY3QoXG4gIHtcbiAgICAvKiogVG90YWwgYmFsYW5jZSwgY29uZmlybWVkIGFuZCB1bmNvbmZpcm1lZCAqL1xuICAgIHRvdGFsQmFsYW5jZTogdC5zdHJpbmcsXG4gICAgY29uZmlybWVkQmFsYW5jZTogdC5zdHJpbmcsXG4gICAgdW5jb25maXJtZWRCYWxhbmNlOiB0LnN0cmluZyxcbiAgICBsb2NrZWRCYWxhbmNlOiB0LnN0cmluZyxcbiAgICByZXNlcnZlZEJhbGFuY2VBbmNob3JDaGFuOiB0LnN0cmluZyxcbiAgfSxcbiAgJ0xuZFdhbGxldEJhbGFuY2UnXG4pO1xuXG5leHBvcnQgdHlwZSBMbmRXYWxsZXRCYWxhbmNlID0gdC5UeXBlT2Y8dHlwZW9mIExuZFdhbGxldEJhbGFuY2U+O1xuXG4vKipcbiBUaGUgYmFsYW5jZXMgYXMgcmV0dXJuZWQgZnJvbSBsbmQuXG5cbiBXYWxsZXQgQmFsYW5jZVxuIGh0dHBzOi8vYXBpLmxpZ2h0bmluZy5jb21tdW5pdHkvYXBpL2xuZC9saWdodG5pbmcvd2FsbGV0LWJhbGFuY2UvaW5kZXguaHRtbFxuXG4gQ2hhbm5lbCBCYWxhbmNlXG4gaHR0cHM6Ly9hcGkubGlnaHRuaW5nLmNvbW11bml0eS9hcGkvbG5kL2xpZ2h0bmluZy9jaGFubmVsLWJhbGFuY2UvaW5kZXguaHRtbFxuICovXG5leHBvcnQgY29uc3QgTG5kQmFsYW5jZSA9IHQuc3RyaWN0KFxuICB7XG4gICAgb2ZmY2hhaW46IENoYW5uZWxCYWxhbmNlLFxuICAgIG9uY2hhaW46IExuZFdhbGxldEJhbGFuY2UsXG4gICAgdG90YWxMaW1ib0JhbGFuY2U6IHQuc3RyaW5nLFxuICB9LFxuICAnTG5kQmFsYW5jZSdcbik7XG5cbmV4cG9ydCB0eXBlIExuZEJhbGFuY2UgPSB0LlR5cGVPZjx0eXBlb2YgTG5kQmFsYW5jZT47XG5cbmV4cG9ydCBjb25zdCBMbmRHZXRCYWxhbmNlc1Jlc3BvbnNlID0gdC5zdHJpY3QoXG4gIHtcbiAgICBpbmJvdW5kQmFsYW5jZTogdC5zdHJpbmcsXG4gICAgaW5ib3VuZFBlbmRpbmdCYWxhbmNlOiB0LnN0cmluZyxcbiAgICBpbmJvdW5kVW5zZXR0bGVkQmFsYW5jZTogdC5zdHJpbmcsXG4gICAgb3V0Ym91bmRCYWxhbmNlOiB0LnN0cmluZyxcbiAgICBvdXRib3VuZFBlbmRpbmdCYWxhbmNlOiB0LnN0cmluZyxcbiAgICBvdXRib3VuZFVuc2V0dGxlZEJhbGFuY2U6IHQuc3RyaW5nLFxuICAgIC8vIHdhbGxldCBiYWxhbmNlcywgbmFtZXMgZm9yY2VkIGJ5IHR5cGUgaW4gQWJzdHJhY3RDb2luXG4gICAgc3BlbmRhYmxlQmFsYW5jZVN0cmluZzogdC5zdHJpbmcsXG4gICAgYmFsYW5jZVN0cmluZzogdC5zdHJpbmcsXG4gICAgY29uZmlybWVkQmFsYW5jZVN0cmluZzogdC5zdHJpbmcsXG4gIH0sXG4gICdMbmRHZXRCYWxhbmNlc1Jlc3BvbnNlJ1xuKTtcblxuZXhwb3J0IHR5cGUgTG5kR2V0QmFsYW5jZXNSZXNwb25zZSA9IHQuVHlwZU9mPHR5cGVvZiBMbmRHZXRCYWxhbmNlc1Jlc3BvbnNlPjtcblxuZXhwb3J0IGNvbnN0IENoYW5Qb2ludHMgPSB0LnN0cmljdChcbiAge1xuICAgIGZ1bmRpbmdUeGlkOiB0LnN0cmluZyxcbiAgICBvdXRwdXRJbmRleDogdC5udW1iZXIsXG4gIH0sXG4gICdDaGFuUG9pbnRzJ1xuKTtcblxuZXhwb3J0IHR5cGUgQ2hhblBvaW50cyA9IHQuVHlwZU9mPHR5cGVvZiBDaGFuUG9pbnRzPjtcblxuZXhwb3J0IGNvbnN0IEJhY2t1cFJlc3BvbnNlID0gdC5zdHJpY3QoXG4gIHtcbiAgICBjaGFuUG9pbnRzOiB0LmFycmF5KENoYW5Qb2ludHMpLFxuICAgIG11bHRpQ2hhbkJhY2t1cDogdC5zdHJpbmcsXG4gIH0sXG4gICdCYWNrdXBSZXNwb25zZSdcbik7XG5cbmV4cG9ydCB0eXBlIEJhY2t1cFJlc3BvbnNlID0gdC5UeXBlT2Y8dHlwZW9mIEJhY2t1cFJlc3BvbnNlPjtcblxuZXhwb3J0IGNvbnN0IEludm9pY2VTdGF0dXMgPSB0LnVuaW9uKFxuICBbXG4gICAgLy8gSW5pdGlhbCBzdGF0ZS5cbiAgICAvLyBUcmFuc2l0aW9ucyB0byAnc2V0dGxlZCcgb3IgJ2NhbmNlbGVkJyBvbiBMTkQgbm90aWZpY2F0aW9uLlxuICAgIHQubGl0ZXJhbCgnb3BlbicpLFxuICAgIC8vIEZpbmFsIHN0YXRlLlxuICAgIHQubGl0ZXJhbCgnc2V0dGxlZCcpLFxuICAgIC8vIEZpbmFsIHN0YXRlLlxuICAgIHQubGl0ZXJhbCgnY2FuY2VsZWQnKSxcbiAgXSxcbiAgJ0ludm9pY2VTdGF0dXMnXG4pO1xuZXhwb3J0IHR5cGUgSW52b2ljZVN0YXR1cyA9IHQuVHlwZU9mPHR5cGVvZiBJbnZvaWNlU3RhdHVzPjtcblxuZXhwb3J0IGNvbnN0IENyZWF0ZUludm9pY2VCb2R5ID0gdC5pbnRlcnNlY3Rpb24oXG4gIFtcbiAgICB0LnR5cGUoe1xuICAgICAgdmFsdWVNc2F0OiBCaWdJbnRGcm9tU3RyaW5nLFxuICAgIH0pLFxuICAgIHQucGFydGlhbCh7XG4gICAgICBtZW1vOiB0LnN0cmluZyxcbiAgICAgIGV4cGlyeTogdC5udW1iZXIsXG4gICAgfSksXG4gIF0sXG4gICdDcmVhdGVJbnZvaWNlQm9keSdcbik7XG5leHBvcnQgdHlwZSBDcmVhdGVJbnZvaWNlQm9keSA9IHQuVHlwZU9mPHR5cGVvZiBDcmVhdGVJbnZvaWNlQm9keT47XG5cbi8qKlxuICogQSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZGF0YSB0cmFja2VkIGJ5IHRoZSBpbmRleGVyIGZvciBhbiBpbnZvaWNlIGl0IGhhc1xuICogY3JlYXRlZCB3aXRoaW4gbG5kLlxuICovXG5leHBvcnQgY29uc3QgSW52b2ljZSA9IHQuaW50ZXJzZWN0aW9uKFxuICBbXG4gICAgdC50eXBlKHtcbiAgICAgIHZhbHVlTXNhdDogQmlnSW50RnJvbVN0cmluZyxcbiAgICAgIHBheW1lbnRIYXNoOiB0LnN0cmluZyxcbiAgICAgIC8qKiBUaGUgQk9MVCAjMTEgZW5jb2RlZCBpbnZvaWNlIHN0cmluZyAqL1xuICAgICAgaW52b2ljZTogdC5zdHJpbmcsXG4gICAgICAvKiogVGhlIHB1YmxpYyBCaXRHbyB3YWxsZXRJZCB0byB3aGljaCB0aGlzIGludm9pY2UgYmVsb25ncyAqL1xuICAgICAgd2FsbGV0SWQ6IHQuc3RyaW5nLFxuICAgICAgc3RhdHVzOiBJbnZvaWNlU3RhdHVzLFxuICAgICAgLyoqIEEgZGF0ZSBpbiBJU08gZm9ybWF0IHJlcHJlc2VudGluZyB3aGVuIHRoaXMgaW52b2ljZSBleHBpcmVzLiAqL1xuICAgICAgZXhwaXJlc0F0OiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgICB9KSxcbiAgICB0LnBhcnRpYWwoe1xuICAgICAgbWVtbzogdC5zdHJpbmcsXG4gICAgfSksXG4gIF0sXG4gICdJbnZvaWNlJ1xuKTtcbmV4cG9ydCB0eXBlIEludm9pY2UgPSB0LlR5cGVPZjx0eXBlb2YgSW52b2ljZT47XG5cbmV4cG9ydCBjb25zdCBJbnZvaWNlSW5mbyA9IHQuaW50ZXJzZWN0aW9uKFxuICBbXG4gICAgdC50eXBlKHtcbiAgICAgIHZhbHVlTXNhdDogQmlnSW50RnJvbVN0cmluZyxcbiAgICAgIHBheW1lbnRIYXNoOiB0LnN0cmluZyxcbiAgICAgIGludm9pY2U6IHQuc3RyaW5nLFxuICAgICAgd2FsbGV0SWQ6IHQuc3RyaW5nLFxuICAgICAgc3RhdHVzOiBJbnZvaWNlU3RhdHVzLFxuICAgICAgZXhwaXJlc0F0OiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgICAgIGNyZWF0ZWRBdDogRGF0ZUZyb21JU09TdHJpbmcsXG4gICAgICB1cGRhdGVkQXQ6IERhdGVGcm9tSVNPU3RyaW5nLFxuICAgIH0pLFxuICAgIHQucGFydGlhbCh7XG4gICAgICAvKipcbiAgICAgICAqIFRoZSBudW1iZXIgb2YgbWlsbGlzYXRzIGFjdHVhbGx5IHBhaWQgdG8gdGhpcyBpbnZvaWNlLCB0aGlzIG1heSBiZSBncmVhdGVyXG4gICAgICAgKiB0aGFuIHRoZSBhbW91bnQgcmVxdWVzdGVkIGJ5IHRoZSBpbnZvaWNlLCBzaW5jZSBsaWdodG5pbmcgYWxsb3dzIG92ZXJwYXlpbmdcbiAgICAgICAqIChidXQgbm90IHVuZGVycGF5aW5nKSBpbnZvaWNlcy5cbiAgICAgICAqL1xuICAgICAgYW10UGFpZE1zYXQ6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgfSksXG4gIF0sXG4gICdJbnZvaWNlSW5mbydcbik7XG5leHBvcnQgdHlwZSBJbnZvaWNlSW5mbyA9IHQuVHlwZU9mPHR5cGVvZiBJbnZvaWNlSW5mbz47XG5cbmV4cG9ydCBjb25zdCBJbnZvaWNlUXVlcnkgPSB0LnBhcnRpYWwoXG4gIHtcbiAgICBzdGF0dXM6IEludm9pY2VTdGF0dXMsXG4gICAgbGltaXQ6IHQuc3RyaW5nLFxuICAgIHN0YXJ0RGF0ZTogRGF0ZUZyb21JU09TdHJpbmcsXG4gICAgZW5kRGF0ZTogRGF0ZUZyb21JU09TdHJpbmcsXG4gIH0sXG4gICdJbnZvaWNlUXVlcnknXG4pO1xuXG5leHBvcnQgdHlwZSBJbnZvaWNlUXVlcnkgPSB0LlR5cGVPZjx0eXBlb2YgSW52b2ljZVF1ZXJ5PjtcbiJdfQ==
@@ -1,5 +1,6 @@
1
1
  export * from './signableJson';
2
2
  export * from './signature';
3
3
  export * from './lightningUtils';
4
+ export * from './lightningWallet';
4
5
  export * from './codecs';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,UAAU,CAAC"}
@@ -17,5 +17,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./signableJson"), exports);
18
18
  __exportStar(require("./signature"), exports);
19
19
  __exportStar(require("./lightningUtils"), exports);
20
+ __exportStar(require("./lightningWallet"), exports);
20
21
  __exportStar(require("./codecs"), exports);
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vbGlnaHRuaW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpREFBK0I7QUFDL0IsOENBQTRCO0FBQzVCLG1EQUFpQztBQUNqQywyQ0FBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NpZ25hYmxlSnNvbic7XG5leHBvcnQgKiBmcm9tICcuL3NpZ25hdHVyZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpZ2h0bmluZ1V0aWxzJztcbmV4cG9ydCAqIGZyb20gJy4vY29kZWNzJztcbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vbGlnaHRuaW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpREFBK0I7QUFDL0IsOENBQTRCO0FBQzVCLG1EQUFpQztBQUNqQyxvREFBa0M7QUFDbEMsMkNBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zaWduYWJsZUpzb24nO1xuZXhwb3J0ICogZnJvbSAnLi9zaWduYXR1cmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWdodG5pbmdVdGlscyc7XG5leHBvcnQgKiBmcm9tICcuL2xpZ2h0bmluZ1dhbGxldCc7XG5leHBvcnQgKiBmcm9tICcuL2NvZGVjcyc7XG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { Wallet } from '../wallet';
2
+ import { LightningAuthKeychain, LightningKeychain, UpdateLightningWallet } from './codecs';
3
+ /**
4
+ * Get the lightning keychain for the given wallet.
5
+ */
6
+ export declare function getLightningKeychain(wallet: Wallet): Promise<LightningKeychain>;
7
+ /**
8
+ * Get the lightning auth keychains for the given wallet.
9
+ */
10
+ export declare function getLightningAuthKeychains(wallet: Wallet): Promise<{
11
+ userAuthKey: LightningAuthKeychain;
12
+ nodeAuthKey: LightningAuthKeychain;
13
+ }>;
14
+ /**
15
+ * Update the lightning wallet with the given data.
16
+ */
17
+ export declare function updateLightningWallet(wallet: Wallet, data: UpdateLightningWallet): Promise<unknown>;
18
+ //# sourceMappingURL=lightningWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lightningWallet.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/lightningWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAI3F;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAcrF;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,WAAW,EAAE,qBAAqB,CAAC;IAAC,WAAW,EAAE,qBAAqB,CAAA;CAAE,CAAC,CA2BrF;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,CAMzG"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLightningKeychain = getLightningKeychain;
4
+ exports.getLightningAuthKeychains = getLightningAuthKeychains;
5
+ exports.updateLightningWallet = updateLightningWallet;
6
+ const codecs_1 = require("./codecs");
7
+ const utils_1 = require("../utils");
8
+ const lightningUtils_1 = require("./lightningUtils");
9
+ /**
10
+ * Get the lightning keychain for the given wallet.
11
+ */
12
+ async function getLightningKeychain(wallet) {
13
+ const coin = wallet.baseCoin;
14
+ if (coin.getFamily() !== 'lnbtc') {
15
+ throw new Error(`Invalid coin to get lightning Keychain: ${coin.getFamily()}`);
16
+ }
17
+ const keyIds = wallet.keyIds();
18
+ if (keyIds.length !== 1) {
19
+ throw new Error(`Invalid number of key in lightning wallet: ${keyIds.length}`);
20
+ }
21
+ const keychain = await coin.keychains().get({ id: keyIds[0] });
22
+ return (0, utils_1.decodeOrElse)(codecs_1.LightningKeychain.name, codecs_1.LightningKeychain, keychain, (_) => {
23
+ // DON'T throw errors from decodeOrElse. It could leak sensitive information.
24
+ throw new Error(`Invalid user key`);
25
+ });
26
+ }
27
+ /**
28
+ * Get the lightning auth keychains for the given wallet.
29
+ */
30
+ async function getLightningAuthKeychains(wallet) {
31
+ const coin = wallet.baseCoin;
32
+ if (coin.getFamily() !== 'lnbtc') {
33
+ throw new Error(`Invalid coin to get lightning auth keychains: ${coin.getFamily()}`);
34
+ }
35
+ const authKeyIds = wallet.coinSpecific()?.keys;
36
+ if (authKeyIds?.length !== 2) {
37
+ throw new Error(`Invalid number of auth keys in lightning wallet: ${authKeyIds?.length}`);
38
+ }
39
+ const keychains = await Promise.all(authKeyIds.map((id) => coin.keychains().get({ id })));
40
+ const authKeychains = keychains.map((keychain) => {
41
+ return (0, utils_1.decodeOrElse)(codecs_1.LightningAuthKeychain.name, codecs_1.LightningAuthKeychain, keychain, (_) => {
42
+ // DON'T throw errors from decodeOrElse. It could leak sensitive information.
43
+ throw new Error(`Invalid lightning auth key: ${keychain?.id}`);
44
+ });
45
+ });
46
+ const [userAuthKey, nodeAuthKey] = ['userAuth', 'nodeAuth'].map((purpose) => {
47
+ const keychain = authKeychains.find((k) => (0, lightningUtils_1.unwrapLightningCoinSpecific)(k.coinSpecific, coin.getChain()).purpose === purpose);
48
+ if (!keychain) {
49
+ throw new Error(`Missing ${purpose} key`);
50
+ }
51
+ return keychain;
52
+ });
53
+ return { userAuthKey, nodeAuthKey };
54
+ }
55
+ /**
56
+ * Update the lightning wallet with the given data.
57
+ */
58
+ async function updateLightningWallet(wallet, data) {
59
+ const coin = wallet.baseCoin;
60
+ if (coin.getFamily() !== 'lnbtc') {
61
+ throw new Error(`Invalid coin to update lightning wallet: ${coin.getFamily()}`);
62
+ }
63
+ return await wallet.bitgo.put(wallet.url()).send(data).result();
64
+ }
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nV2FsbGV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL2xpZ2h0bmluZy9saWdodG5pbmdXYWxsZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFRQSxvREFjQztBQUtELDhEQTZCQztBQUtELHNEQU1DO0FBbEVELHFDQUEyRjtBQUMzRixvQ0FBd0M7QUFDeEMscURBQStEO0FBRS9EOztHQUVHO0FBQ0ksS0FBSyxVQUFVLG9CQUFvQixDQUFDLE1BQWM7SUFDdkQsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQztJQUM3QixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxPQUFPLEVBQUUsQ0FBQztRQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFDRCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDL0IsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsOENBQThDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7SUFDRCxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvRCxPQUFPLElBQUEsb0JBQVksRUFBQywwQkFBaUIsQ0FBQyxJQUFJLEVBQUUsMEJBQWlCLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUU7UUFDN0UsNkVBQTZFO1FBQzdFLE1BQU0sSUFBSSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUN0QyxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7R0FFRztBQUNJLEtBQUssVUFBVSx5QkFBeUIsQ0FDN0MsTUFBYztJQUVkLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7SUFDN0IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssT0FBTyxFQUFFLENBQUM7UUFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyxpREFBaUQsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN2RixDQUFDO0lBQ0QsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxFQUFFLElBQUksQ0FBQztJQUMvQyxJQUFJLFVBQVUsRUFBRSxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsVUFBVSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUNELE1BQU0sU0FBUyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDMUYsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO1FBQy9DLE9BQU8sSUFBQSxvQkFBWSxFQUFDLDhCQUFxQixDQUFDLElBQUksRUFBRSw4QkFBcUIsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNyRiw2RUFBNkU7WUFDN0UsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUNILE1BQU0sQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLEdBQUksQ0FBQyxVQUFVLEVBQUUsVUFBVSxDQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7UUFDckYsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FDakMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUEsNENBQTJCLEVBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssT0FBTyxDQUN4RixDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2QsTUFBTSxJQUFJLEtBQUssQ0FBQyxXQUFXLE9BQU8sTUFBTSxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUNELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBRUgsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsQ0FBQztBQUN0QyxDQUFDO0FBRUQ7O0dBRUc7QUFDSSxLQUFLLFVBQVUscUJBQXFCLENBQUMsTUFBYyxFQUFFLElBQTJCO0lBQ3JGLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7SUFDN0IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssT0FBTyxFQUFFLENBQUM7UUFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBQ0QsT0FBTyxNQUFNLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztBQUNsRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgV2FsbGV0IH0gZnJvbSAnLi4vd2FsbGV0JztcbmltcG9ydCB7IExpZ2h0bmluZ0F1dGhLZXljaGFpbiwgTGlnaHRuaW5nS2V5Y2hhaW4sIFVwZGF0ZUxpZ2h0bmluZ1dhbGxldCB9IGZyb20gJy4vY29kZWNzJztcbmltcG9ydCB7IGRlY29kZU9yRWxzZSB9IGZyb20gJy4uL3V0aWxzJztcbmltcG9ydCB7IHVud3JhcExpZ2h0bmluZ0NvaW5TcGVjaWZpYyB9IGZyb20gJy4vbGlnaHRuaW5nVXRpbHMnO1xuXG4vKipcbiAqIEdldCB0aGUgbGlnaHRuaW5nIGtleWNoYWluIGZvciB0aGUgZ2l2ZW4gd2FsbGV0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TGlnaHRuaW5nS2V5Y2hhaW4od2FsbGV0OiBXYWxsZXQpOiBQcm9taXNlPExpZ2h0bmluZ0tleWNoYWluPiB7XG4gIGNvbnN0IGNvaW4gPSB3YWxsZXQuYmFzZUNvaW47XG4gIGlmIChjb2luLmdldEZhbWlseSgpICE9PSAnbG5idGMnKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGNvaW4gdG8gZ2V0IGxpZ2h0bmluZyBLZXljaGFpbjogJHtjb2luLmdldEZhbWlseSgpfWApO1xuICB9XG4gIGNvbnN0IGtleUlkcyA9IHdhbGxldC5rZXlJZHMoKTtcbiAgaWYgKGtleUlkcy5sZW5ndGggIT09IDEpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgbnVtYmVyIG9mIGtleSBpbiBsaWdodG5pbmcgd2FsbGV0OiAke2tleUlkcy5sZW5ndGh9YCk7XG4gIH1cbiAgY29uc3Qga2V5Y2hhaW4gPSBhd2FpdCBjb2luLmtleWNoYWlucygpLmdldCh7IGlkOiBrZXlJZHNbMF0gfSk7XG4gIHJldHVybiBkZWNvZGVPckVsc2UoTGlnaHRuaW5nS2V5Y2hhaW4ubmFtZSwgTGlnaHRuaW5nS2V5Y2hhaW4sIGtleWNoYWluLCAoXykgPT4ge1xuICAgIC8vIERPTidUIHRocm93IGVycm9ycyBmcm9tIGRlY29kZU9yRWxzZS4gSXQgY291bGQgbGVhayBzZW5zaXRpdmUgaW5mb3JtYXRpb24uXG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHVzZXIga2V5YCk7XG4gIH0pO1xufVxuXG4vKipcbiAqIEdldCB0aGUgbGlnaHRuaW5nIGF1dGgga2V5Y2hhaW5zIGZvciB0aGUgZ2l2ZW4gd2FsbGV0LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0TGlnaHRuaW5nQXV0aEtleWNoYWlucyhcbiAgd2FsbGV0OiBXYWxsZXRcbik6IFByb21pc2U8eyB1c2VyQXV0aEtleTogTGlnaHRuaW5nQXV0aEtleWNoYWluOyBub2RlQXV0aEtleTogTGlnaHRuaW5nQXV0aEtleWNoYWluIH0+IHtcbiAgY29uc3QgY29pbiA9IHdhbGxldC5iYXNlQ29pbjtcbiAgaWYgKGNvaW4uZ2V0RmFtaWx5KCkgIT09ICdsbmJ0YycpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY29pbiB0byBnZXQgbGlnaHRuaW5nIGF1dGgga2V5Y2hhaW5zOiAke2NvaW4uZ2V0RmFtaWx5KCl9YCk7XG4gIH1cbiAgY29uc3QgYXV0aEtleUlkcyA9IHdhbGxldC5jb2luU3BlY2lmaWMoKT8ua2V5cztcbiAgaWYgKGF1dGhLZXlJZHM/Lmxlbmd0aCAhPT0gMikge1xuICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBudW1iZXIgb2YgYXV0aCBrZXlzIGluIGxpZ2h0bmluZyB3YWxsZXQ6ICR7YXV0aEtleUlkcz8ubGVuZ3RofWApO1xuICB9XG4gIGNvbnN0IGtleWNoYWlucyA9IGF3YWl0IFByb21pc2UuYWxsKGF1dGhLZXlJZHMubWFwKChpZCkgPT4gY29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZCB9KSkpO1xuICBjb25zdCBhdXRoS2V5Y2hhaW5zID0ga2V5Y2hhaW5zLm1hcCgoa2V5Y2hhaW4pID0+IHtcbiAgICByZXR1cm4gZGVjb2RlT3JFbHNlKExpZ2h0bmluZ0F1dGhLZXljaGFpbi5uYW1lLCBMaWdodG5pbmdBdXRoS2V5Y2hhaW4sIGtleWNoYWluLCAoXykgPT4ge1xuICAgICAgLy8gRE9OJ1QgdGhyb3cgZXJyb3JzIGZyb20gZGVjb2RlT3JFbHNlLiBJdCBjb3VsZCBsZWFrIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi5cbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBsaWdodG5pbmcgYXV0aCBrZXk6ICR7a2V5Y2hhaW4/LmlkfWApO1xuICAgIH0pO1xuICB9KTtcbiAgY29uc3QgW3VzZXJBdXRoS2V5LCBub2RlQXV0aEtleV0gPSAoWyd1c2VyQXV0aCcsICdub2RlQXV0aCddIGFzIGNvbnN0KS5tYXAoKHB1cnBvc2UpID0+IHtcbiAgICBjb25zdCBrZXljaGFpbiA9IGF1dGhLZXljaGFpbnMuZmluZChcbiAgICAgIChrKSA9PiB1bndyYXBMaWdodG5pbmdDb2luU3BlY2lmaWMoay5jb2luU3BlY2lmaWMsIGNvaW4uZ2V0Q2hhaW4oKSkucHVycG9zZSA9PT0gcHVycG9zZVxuICAgICk7XG4gICAgaWYgKCFrZXljaGFpbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNaXNzaW5nICR7cHVycG9zZX0ga2V5YCk7XG4gICAgfVxuICAgIHJldHVybiBrZXljaGFpbjtcbiAgfSk7XG5cbiAgcmV0dXJuIHsgdXNlckF1dGhLZXksIG5vZGVBdXRoS2V5IH07XG59XG5cbi8qKlxuICogVXBkYXRlIHRoZSBsaWdodG5pbmcgd2FsbGV0IHdpdGggdGhlIGdpdmVuIGRhdGEuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB1cGRhdGVMaWdodG5pbmdXYWxsZXQod2FsbGV0OiBXYWxsZXQsIGRhdGE6IFVwZGF0ZUxpZ2h0bmluZ1dhbGxldCk6IFByb21pc2U8dW5rbm93bj4ge1xuICBjb25zdCBjb2luID0gd2FsbGV0LmJhc2VDb2luO1xuICBpZiAoY29pbi5nZXRGYW1pbHkoKSAhPT0gJ2xuYnRjJykge1xuICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjb2luIHRvIHVwZGF0ZSBsaWdodG5pbmcgd2FsbGV0OiAke2NvaW4uZ2V0RmFtaWx5KCl9YCk7XG4gIH1cbiAgcmV0dXJuIGF3YWl0IHdhbGxldC5iaXRnby5wdXQod2FsbGV0LnVybCgpKS5zZW5kKGRhdGEpLnJlc3VsdCgpO1xufVxuIl19
@@ -18,5 +18,5 @@ export declare function verifyMessageSignature(message: Signable, signature: str
18
18
  * @param {utxolib.Network} network - The network to use for signing.
19
19
  * @returns {string} - Returns the signature in hexadecimal format.
20
20
  */
21
- export declare function createMessageSignature(message: Signable, xprv: string, network?: utxolib.Network): string;
21
+ export declare function createMessageSignature(message: Signable, prv: string, network?: utxolib.Network): string;
22
22
  //# sourceMappingURL=signature.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/signature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAsB,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG9D;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,OAAO,CAAC,OAAkC,GAClD,OAAO,CAKT;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,QAAQ,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,OAAO,CAAC,OAAkC,GAClD,MAAM,CAIR"}
1
+ {"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/signature.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAsB,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG9D;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,QAAQ,EACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,OAAO,CAAC,OAAkC,GAClD,OAAO,CAKT;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,QAAQ,EACjB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,OAAO,CAAC,OAAkC,GAClD,MAAM,CAIR"}
@@ -61,9 +61,9 @@ function verifyMessageSignature(message, signature, pub, network = utxolib.netwo
61
61
  * @param {utxolib.Network} network - The network to use for signing.
62
62
  * @returns {string} - Returns the signature in hexadecimal format.
63
63
  */
64
- function createMessageSignature(message, xprv, network = utxolib.networks.bitcoin) {
64
+ function createMessageSignature(message, prv, network = utxolib.networks.bitcoin) {
65
65
  const requestString = JSON.stringify((0, signableJson_1.canonicalizeObject)(message));
66
- const prvKey = utxolib.bip32.fromBase58(xprv, network);
66
+ const prvKey = utxolib.bip32.fromBase58(prv, network);
67
67
  return (0, bip32util_1.signMessage)(requestString, prvKey, network).toString('hex');
68
68
  }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL2xpZ2h0bmluZy9zaWduYXR1cmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFhQSx3REFVQztBQVVELHdEQVFDO0FBekNELDhEQUFnRDtBQUNoRCxpREFBOEQ7QUFDOUQsNENBQTBEO0FBRTFEOzs7Ozs7OztHQVFHO0FBQ0gsU0FBZ0Isc0JBQXNCLENBQ3BDLE9BQWlCLEVBQ2pCLFNBQWlCLEVBQ2pCLEdBQVcsRUFDWCxVQUEyQixPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU87SUFFbkQsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFBLGlDQUFrQixFQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbEUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNoRSxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN0RCxPQUFPLElBQUEseUJBQWEsRUFBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN4RSxDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLHNCQUFzQixDQUNwQyxPQUFpQixFQUNqQixJQUFZLEVBQ1osVUFBMkIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPO0lBRW5ELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBQSxpQ0FBa0IsRUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RCxPQUFPLElBQUEsdUJBQVcsRUFBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUNyRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgeyBjYW5vbmljYWxpemVPYmplY3QsIFNpZ25hYmxlIH0gZnJvbSAnLi9zaWduYWJsZUpzb24nO1xuaW1wb3J0IHsgc2lnbk1lc3NhZ2UsIHZlcmlmeU1lc3NhZ2UgfSBmcm9tICcuLi9iaXAzMnV0aWwnO1xuXG4vKipcbiAqIFZlcmlmaWVzIGEgc2lnbmF0dXJlIGZvciBhIGdpdmVuIG1lc3NhZ2UuXG4gKlxuICogQHBhcmFtIHtTaWduYWJsZX0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIHRvIHZlcmlmeS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBzaWduYXR1cmUgLSBUaGUgc2lnbmF0dXJlIHRvIHZlcmlmeSwgaW4gaGV4YWRlY2ltYWwgZm9ybWF0LlxuICogQHBhcmFtIHtzdHJpbmd9IHB1YiAtIFRoZSBwdWJsaWMga2V5IGluIEJJUDMyIGZvcm1hdC5cbiAqIEBwYXJhbSB7dXR4b2xpYi5OZXR3b3JrfSBuZXR3b3JrIC0gVGhlIG5ldHdvcmsgdG8gdXNlIGZvciB2ZXJpZmljYXRpb24uXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIHNpZ25hdHVyZSBpcyB2YWxpZCwgZmFsc2Ugb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5TWVzc2FnZVNpZ25hdHVyZShcbiAgbWVzc2FnZTogU2lnbmFibGUsXG4gIHNpZ25hdHVyZTogc3RyaW5nLFxuICBwdWI6IHN0cmluZyxcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrID0gdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luXG4pOiBib29sZWFuIHtcbiAgY29uc3QgbWVzc2FnZVN0cmluZyA9IEpTT04uc3RyaW5naWZ5KGNhbm9uaWNhbGl6ZU9iamVjdChtZXNzYWdlKSk7XG4gIGNvbnN0IHB1YktleSA9IHV0eG9saWIuYmlwMzIuZnJvbUJhc2U1OChwdWIsIG5ldHdvcmspLnB1YmxpY0tleTtcbiAgY29uc3Qgc2lnbmF0dXJlQnVmZmVyID0gQnVmZmVyLmZyb20oc2lnbmF0dXJlLCAnaGV4Jyk7XG4gIHJldHVybiB2ZXJpZnlNZXNzYWdlKG1lc3NhZ2VTdHJpbmcsIHB1YktleSwgc2lnbmF0dXJlQnVmZmVyLCBuZXR3b3JrKTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgc2lnbmF0dXJlIGZvciBhIGdpdmVuIG1lc3NhZ2UuXG4gKlxuICogQHBhcmFtIHtTaWduYWJsZX0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIHRvIHNpZ24uXG4gKiBAcGFyYW0ge3N0cmluZ30gcHJ2IC0gVGhlIHByaXZhdGUga2V5IGluIEJJUDMyIGZvcm1hdC5cbiAqIEBwYXJhbSB7dXR4b2xpYi5OZXR3b3JrfSBuZXR3b3JrIC0gVGhlIG5ldHdvcmsgdG8gdXNlIGZvciBzaWduaW5nLlxuICogQHJldHVybnMge3N0cmluZ30gLSBSZXR1cm5zIHRoZSBzaWduYXR1cmUgaW4gaGV4YWRlY2ltYWwgZm9ybWF0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTWVzc2FnZVNpZ25hdHVyZShcbiAgbWVzc2FnZTogU2lnbmFibGUsXG4gIHhwcnY6IHN0cmluZyxcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrID0gdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luXG4pOiBzdHJpbmcge1xuICBjb25zdCByZXF1ZXN0U3RyaW5nID0gSlNPTi5zdHJpbmdpZnkoY2Fub25pY2FsaXplT2JqZWN0KG1lc3NhZ2UpKTtcbiAgY29uc3QgcHJ2S2V5ID0gdXR4b2xpYi5iaXAzMi5mcm9tQmFzZTU4KHhwcnYsIG5ldHdvcmspO1xuICByZXR1cm4gc2lnbk1lc3NhZ2UocmVxdWVzdFN0cmluZywgcHJ2S2V5LCBuZXR3b3JrKS50b1N0cmluZygnaGV4Jyk7XG59XG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmF0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL2xpZ2h0bmluZy9zaWduYXR1cmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFhQSx3REFVQztBQVVELHdEQVFDO0FBekNELDhEQUFnRDtBQUNoRCxpREFBOEQ7QUFDOUQsNENBQTBEO0FBRTFEOzs7Ozs7OztHQVFHO0FBQ0gsU0FBZ0Isc0JBQXNCLENBQ3BDLE9BQWlCLEVBQ2pCLFNBQWlCLEVBQ2pCLEdBQVcsRUFDWCxVQUEyQixPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU87SUFFbkQsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFBLGlDQUFrQixFQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbEUsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUNoRSxNQUFNLGVBQWUsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN0RCxPQUFPLElBQUEseUJBQWEsRUFBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLGVBQWUsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN4RSxDQUFDO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILFNBQWdCLHNCQUFzQixDQUNwQyxPQUFpQixFQUNqQixHQUFXLEVBQ1gsVUFBMkIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPO0lBRW5ELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBQSxpQ0FBa0IsRUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN0RCxPQUFPLElBQUEsdUJBQVcsRUFBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUNyRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgeyBjYW5vbmljYWxpemVPYmplY3QsIFNpZ25hYmxlIH0gZnJvbSAnLi9zaWduYWJsZUpzb24nO1xuaW1wb3J0IHsgc2lnbk1lc3NhZ2UsIHZlcmlmeU1lc3NhZ2UgfSBmcm9tICcuLi9iaXAzMnV0aWwnO1xuXG4vKipcbiAqIFZlcmlmaWVzIGEgc2lnbmF0dXJlIGZvciBhIGdpdmVuIG1lc3NhZ2UuXG4gKlxuICogQHBhcmFtIHtTaWduYWJsZX0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIHRvIHZlcmlmeS5cbiAqIEBwYXJhbSB7c3RyaW5nfSBzaWduYXR1cmUgLSBUaGUgc2lnbmF0dXJlIHRvIHZlcmlmeSwgaW4gaGV4YWRlY2ltYWwgZm9ybWF0LlxuICogQHBhcmFtIHtzdHJpbmd9IHB1YiAtIFRoZSBwdWJsaWMga2V5IGluIEJJUDMyIGZvcm1hdC5cbiAqIEBwYXJhbSB7dXR4b2xpYi5OZXR3b3JrfSBuZXR3b3JrIC0gVGhlIG5ldHdvcmsgdG8gdXNlIGZvciB2ZXJpZmljYXRpb24uXG4gKiBAcmV0dXJucyB7Ym9vbGVhbn0gLSBSZXR1cm5zIHRydWUgaWYgdGhlIHNpZ25hdHVyZSBpcyB2YWxpZCwgZmFsc2Ugb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gdmVyaWZ5TWVzc2FnZVNpZ25hdHVyZShcbiAgbWVzc2FnZTogU2lnbmFibGUsXG4gIHNpZ25hdHVyZTogc3RyaW5nLFxuICBwdWI6IHN0cmluZyxcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrID0gdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luXG4pOiBib29sZWFuIHtcbiAgY29uc3QgbWVzc2FnZVN0cmluZyA9IEpTT04uc3RyaW5naWZ5KGNhbm9uaWNhbGl6ZU9iamVjdChtZXNzYWdlKSk7XG4gIGNvbnN0IHB1YktleSA9IHV0eG9saWIuYmlwMzIuZnJvbUJhc2U1OChwdWIsIG5ldHdvcmspLnB1YmxpY0tleTtcbiAgY29uc3Qgc2lnbmF0dXJlQnVmZmVyID0gQnVmZmVyLmZyb20oc2lnbmF0dXJlLCAnaGV4Jyk7XG4gIHJldHVybiB2ZXJpZnlNZXNzYWdlKG1lc3NhZ2VTdHJpbmcsIHB1YktleSwgc2lnbmF0dXJlQnVmZmVyLCBuZXR3b3JrKTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGEgc2lnbmF0dXJlIGZvciBhIGdpdmVuIG1lc3NhZ2UuXG4gKlxuICogQHBhcmFtIHtTaWduYWJsZX0gbWVzc2FnZSAtIFRoZSBtZXNzYWdlIHRvIHNpZ24uXG4gKiBAcGFyYW0ge3N0cmluZ30gcHJ2IC0gVGhlIHByaXZhdGUga2V5IGluIEJJUDMyIGZvcm1hdC5cbiAqIEBwYXJhbSB7dXR4b2xpYi5OZXR3b3JrfSBuZXR3b3JrIC0gVGhlIG5ldHdvcmsgdG8gdXNlIGZvciBzaWduaW5nLlxuICogQHJldHVybnMge3N0cmluZ30gLSBSZXR1cm5zIHRoZSBzaWduYXR1cmUgaW4gaGV4YWRlY2ltYWwgZm9ybWF0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTWVzc2FnZVNpZ25hdHVyZShcbiAgbWVzc2FnZTogU2lnbmFibGUsXG4gIHBydjogc3RyaW5nLFxuICBuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmsgPSB1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW5cbik6IHN0cmluZyB7XG4gIGNvbnN0IHJlcXVlc3RTdHJpbmcgPSBKU09OLnN0cmluZ2lmeShjYW5vbmljYWxpemVPYmplY3QobWVzc2FnZSkpO1xuICBjb25zdCBwcnZLZXkgPSB1dHhvbGliLmJpcDMyLmZyb21CYXNlNTgocHJ2LCBuZXR3b3JrKTtcbiAgcmV0dXJuIHNpZ25NZXNzYWdlKHJlcXVlc3RTdHJpbmcsIHBydktleSwgbmV0d29yaykudG9TdHJpbmcoJ2hleCcpO1xufVxuIl19