@bitgo-beta/abstract-lightning 1.0.1-beta.82 → 1.0.1-beta.821

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 (69) hide show
  1. package/.mocharc.yml +1 -1
  2. package/CHANGELOG.md +385 -0
  3. package/dist/src/abstractLightningCoin.d.ts +3 -2
  4. package/dist/src/abstractLightningCoin.d.ts.map +1 -1
  5. package/dist/src/abstractLightningCoin.js +7 -2
  6. package/dist/src/codecs/api/backup.d.ts +15 -0
  7. package/dist/src/codecs/api/backup.d.ts.map +1 -0
  8. package/dist/src/codecs/api/backup.js +47 -0
  9. package/dist/src/codecs/api/balance.d.ts +132 -0
  10. package/dist/src/codecs/api/balance.d.ts.map +1 -0
  11. package/dist/src/codecs/api/balance.js +101 -0
  12. package/dist/src/codecs/api/index.d.ts +8 -0
  13. package/dist/src/codecs/api/index.d.ts.map +1 -0
  14. package/dist/src/codecs/api/index.js +24 -0
  15. package/dist/src/codecs/api/invoice.d.ts +66 -0
  16. package/dist/src/codecs/api/invoice.d.ts.map +1 -0
  17. package/dist/src/codecs/api/invoice.js +102 -0
  18. package/dist/src/codecs/api/payment.d.ts +107 -0
  19. package/dist/src/codecs/api/payment.d.ts.map +1 -0
  20. package/dist/src/codecs/api/payment.js +153 -0
  21. package/dist/src/codecs/api/transaction.d.ts +82 -0
  22. package/dist/src/codecs/api/transaction.d.ts.map +1 -0
  23. package/dist/src/codecs/api/transaction.js +104 -0
  24. package/dist/src/codecs/api/wallet.d.ts +99 -0
  25. package/dist/src/codecs/api/wallet.d.ts.map +1 -0
  26. package/dist/src/codecs/api/wallet.js +103 -0
  27. package/dist/src/codecs/api/withdraw.d.ts +97 -0
  28. package/dist/src/codecs/api/withdraw.d.ts.map +1 -0
  29. package/dist/src/codecs/api/withdraw.js +92 -0
  30. package/dist/src/codecs/index.d.ts +3 -0
  31. package/dist/src/codecs/index.d.ts.map +1 -0
  32. package/dist/src/codecs/index.js +19 -0
  33. package/dist/src/codecs/shared.d.ts +7 -0
  34. package/dist/src/codecs/shared.d.ts.map +1 -0
  35. package/dist/src/codecs/shared.js +42 -0
  36. package/dist/src/index.d.ts +3 -0
  37. package/dist/src/index.d.ts.map +1 -1
  38. package/dist/src/index.js +4 -1
  39. package/dist/src/lightning/index.d.ts +5 -0
  40. package/dist/src/lightning/index.d.ts.map +1 -0
  41. package/dist/src/lightning/index.js +21 -0
  42. package/dist/src/lightning/lightningUtils.d.ts +80 -0
  43. package/dist/src/lightning/lightningUtils.d.ts.map +1 -0
  44. package/dist/src/lightning/lightningUtils.js +258 -0
  45. package/dist/src/lightning/parseWithdrawPsbt.d.ts +8 -0
  46. package/dist/src/lightning/parseWithdrawPsbt.d.ts.map +1 -0
  47. package/dist/src/lightning/parseWithdrawPsbt.js +149 -0
  48. package/dist/src/lightning/signableJson.d.ts +17 -0
  49. package/dist/src/lightning/signableJson.d.ts.map +1 -0
  50. package/dist/src/lightning/signableJson.js +29 -0
  51. package/dist/src/lightning/signature.d.ts +22 -0
  52. package/dist/src/lightning/signature.d.ts.map +1 -0
  53. package/dist/src/lightning/signature.js +69 -0
  54. package/dist/src/wallet/custodialLightning.d.ts +7 -0
  55. package/dist/src/wallet/custodialLightning.d.ts.map +1 -0
  56. package/dist/src/wallet/custodialLightning.js +14 -0
  57. package/dist/src/wallet/index.d.ts +5 -0
  58. package/dist/src/wallet/index.d.ts.map +1 -0
  59. package/dist/src/wallet/index.js +21 -0
  60. package/dist/src/wallet/lightning.d.ts +146 -0
  61. package/dist/src/wallet/lightning.d.ts.map +1 -0
  62. package/dist/src/wallet/lightning.js +307 -0
  63. package/dist/src/wallet/selfCustodialLightning.d.ts +32 -0
  64. package/dist/src/wallet/selfCustodialLightning.d.ts.map +1 -0
  65. package/dist/src/wallet/selfCustodialLightning.js +131 -0
  66. package/dist/src/wallet/wallet.d.ts +7 -0
  67. package/dist/src/wallet/wallet.d.ts.map +1 -0
  68. package/dist/src/wallet/wallet.js +22 -0
  69. package/package.json +15 -5
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.LndCreatePaymentResponse = exports.SubmitPaymentParams = exports.PaymentQuery = exports.ListPaymentsResponse = exports.PaymentInfo = exports.PaymentFailureReason = exports.PAYMENT_FAILURE_FORCE_FAILED = exports.PAYMENT_FAILURE_CANCELED = exports.PAYMENT_FAILURE_TRANSIENT_ERROR_RETRY_LATER = exports.PAYMENT_FAILURE_PAYMENT_ALREADY_IN_FLIGHT = exports.PAYMENT_FAILURE_PAYMENT_ALREADY_SETTLED = exports.PAYMENT_FAILURE_INVOICE_EXPIRED = exports.PAYMENT_FAILURE_EXCESS_WALLET_BALANCE = exports.PAYMENT_FAILURE_INSUFFICIENT_WALLET_BALANCE = exports.PAYMENT_FAILURE_INSUFFICIENT_CHANNEL_BALANCE = exports.PAYMENT_FAILURE_INCORRECT_DETAILS = exports.PAYMENT_FAILURE_ERROR = exports.PAYMENT_FAILURE_NO_ROUTE = exports.PAYMENT_FAILURE_TIMEOUT = exports.PaymentStatus = void 0;
37
+ const t = __importStar(require("io-ts"));
38
+ const BigIntFromString_1 = require("io-ts-types/BigIntFromString");
39
+ const DateFromISOString_1 = require("io-ts-types/DateFromISOString");
40
+ const public_types_1 = require("@bitgo/public-types");
41
+ // codecs for lightning wallet payment related apis
42
+ exports.PaymentStatus = t.union([
43
+ // Initial state when payment is initiated.
44
+ // Transitions to 'settled' or 'failed' on LND notification.
45
+ t.literal('in_flight'),
46
+ // Final state.
47
+ t.literal('settled'),
48
+ // Final state.
49
+ t.literal('failed'),
50
+ ]);
51
+ exports.PAYMENT_FAILURE_TIMEOUT = 'TIMEOUT';
52
+ exports.PAYMENT_FAILURE_NO_ROUTE = 'NO_ROUTE';
53
+ /** A non-recoverable error */
54
+ exports.PAYMENT_FAILURE_ERROR = 'ERROR';
55
+ exports.PAYMENT_FAILURE_INCORRECT_DETAILS = 'INCORRECT_PAYMENT_DETAILS';
56
+ /** Insufficient channel outbound capacity */
57
+ exports.PAYMENT_FAILURE_INSUFFICIENT_CHANNEL_BALANCE = 'INSUFFICIENT_BALANCE';
58
+ /** Insufficient custodial lightning balance for the customer's wallet */
59
+ exports.PAYMENT_FAILURE_INSUFFICIENT_WALLET_BALANCE = 'INSUFFICIENT_WALLET_BALANCE';
60
+ /** Excess custodial lightning balance for the customer's wallet */
61
+ exports.PAYMENT_FAILURE_EXCESS_WALLET_BALANCE = 'EXCESS_WALLET_BALANCE';
62
+ exports.PAYMENT_FAILURE_INVOICE_EXPIRED = 'INVOICE_EXPIRED';
63
+ exports.PAYMENT_FAILURE_PAYMENT_ALREADY_SETTLED = 'PAYMENT_ALREADY_SETTLED';
64
+ exports.PAYMENT_FAILURE_PAYMENT_ALREADY_IN_FLIGHT = 'PAYMENT_ALREADY_IN_FLIGHT';
65
+ exports.PAYMENT_FAILURE_TRANSIENT_ERROR_RETRY_LATER = 'TRANSIENT_ERROR_RETRY_LATER';
66
+ exports.PAYMENT_FAILURE_CANCELED = 'CANCELED';
67
+ exports.PAYMENT_FAILURE_FORCE_FAILED = 'FORCE_FAILED';
68
+ exports.PaymentFailureReason = t.union([
69
+ t.literal(exports.PAYMENT_FAILURE_TIMEOUT),
70
+ t.literal(exports.PAYMENT_FAILURE_NO_ROUTE),
71
+ t.literal(exports.PAYMENT_FAILURE_ERROR),
72
+ t.literal(exports.PAYMENT_FAILURE_INCORRECT_DETAILS),
73
+ t.literal(exports.PAYMENT_FAILURE_INSUFFICIENT_CHANNEL_BALANCE),
74
+ t.literal(exports.PAYMENT_FAILURE_INSUFFICIENT_WALLET_BALANCE),
75
+ t.literal(exports.PAYMENT_FAILURE_EXCESS_WALLET_BALANCE),
76
+ t.literal(exports.PAYMENT_FAILURE_INVOICE_EXPIRED),
77
+ t.literal(exports.PAYMENT_FAILURE_PAYMENT_ALREADY_SETTLED),
78
+ t.literal(exports.PAYMENT_FAILURE_PAYMENT_ALREADY_IN_FLIGHT),
79
+ t.literal(exports.PAYMENT_FAILURE_TRANSIENT_ERROR_RETRY_LATER),
80
+ t.literal(exports.PAYMENT_FAILURE_CANCELED),
81
+ t.literal(exports.PAYMENT_FAILURE_FORCE_FAILED),
82
+ ]);
83
+ /**
84
+ * Off-chain payment information
85
+ */
86
+ exports.PaymentInfo = t.intersection([
87
+ t.type({
88
+ id: t.string,
89
+ paymentHash: t.string,
90
+ walletId: t.string,
91
+ txRequestId: t.string,
92
+ status: exports.PaymentStatus,
93
+ invoice: t.string,
94
+ feeLimitMsat: BigIntFromString_1.BigIntFromString,
95
+ destination: t.string,
96
+ updatedAt: DateFromISOString_1.DateFromISOString,
97
+ createdAt: DateFromISOString_1.DateFromISOString,
98
+ amountMsat: BigIntFromString_1.BigIntFromString,
99
+ }),
100
+ t.partial({
101
+ feeMsat: BigIntFromString_1.BigIntFromString,
102
+ failureReason: exports.PaymentFailureReason,
103
+ paymentPreimage: t.string,
104
+ }),
105
+ ], 'PaymentInfo');
106
+ exports.ListPaymentsResponse = t.intersection([
107
+ t.type({
108
+ payments: t.array(exports.PaymentInfo),
109
+ }),
110
+ t.partial({
111
+ /**
112
+ * This is the paymentId of the last Payment in the last iteration.
113
+ * Providing this value as the prevId in the next request will return the next batch of payments.
114
+ * */
115
+ nextBatchPrevId: t.string,
116
+ }),
117
+ ], 'ListPaymentsResponse');
118
+ /**
119
+ * Payment query parameters
120
+ */
121
+ exports.PaymentQuery = t.partial({
122
+ status: exports.PaymentStatus,
123
+ limit: BigIntFromString_1.BigIntFromString,
124
+ startDate: DateFromISOString_1.DateFromISOString,
125
+ endDate: DateFromISOString_1.DateFromISOString,
126
+ paymentHash: t.string,
127
+ /** paymentId provided by nextBatchPrevId in the previous list */
128
+ prevId: t.string,
129
+ }, 'PaymentQuery');
130
+ exports.SubmitPaymentParams = t.intersection([
131
+ public_types_1.LightningPaymentRequest,
132
+ t.type({
133
+ passphrase: t.string,
134
+ }),
135
+ t.partial({
136
+ sequenceId: public_types_1.optionalString,
137
+ comment: public_types_1.optionalString,
138
+ }),
139
+ ]);
140
+ exports.LndCreatePaymentResponse = t.intersection([
141
+ t.type({
142
+ status: exports.PaymentStatus,
143
+ paymentHash: t.string,
144
+ }),
145
+ t.partial({
146
+ paymentId: t.string,
147
+ paymentPreimage: t.string,
148
+ amountMsat: t.string,
149
+ feeMsat: t.string,
150
+ failureReason: exports.PaymentFailureReason,
151
+ }),
152
+ ], 'LndCreatePaymentResponse');
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2RlY3MvYXBpL3BheW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEseUNBQTJCO0FBQzNCLG1FQUFnRTtBQUNoRSxxRUFBa0U7QUFDbEUsc0RBQThFO0FBRTlFLG1EQUFtRDtBQUV0QyxRQUFBLGFBQWEsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ25DLDJDQUEyQztJQUMzQyw0REFBNEQ7SUFDNUQsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUM7SUFDdEIsZUFBZTtJQUNmLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQ3BCLGVBQWU7SUFDZixDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztDQUNwQixDQUFDLENBQUM7QUFHVSxRQUFBLHVCQUF1QixHQUFHLFNBQVMsQ0FBQztBQUNwQyxRQUFBLHdCQUF3QixHQUFHLFVBQVUsQ0FBQztBQUNuRCw4QkFBOEI7QUFDakIsUUFBQSxxQkFBcUIsR0FBRyxPQUFPLENBQUM7QUFDaEMsUUFBQSxpQ0FBaUMsR0FBRywyQkFBMkIsQ0FBQztBQUM3RSw2Q0FBNkM7QUFDaEMsUUFBQSw0Q0FBNEMsR0FBRyxzQkFBc0IsQ0FBQztBQUNuRix5RUFBeUU7QUFDNUQsUUFBQSwyQ0FBMkMsR0FBRyw2QkFBNkIsQ0FBQztBQUN6RixtRUFBbUU7QUFDdEQsUUFBQSxxQ0FBcUMsR0FBRyx1QkFBdUIsQ0FBQztBQUNoRSxRQUFBLCtCQUErQixHQUFHLGlCQUFpQixDQUFDO0FBQ3BELFFBQUEsdUNBQXVDLEdBQUcseUJBQXlCLENBQUM7QUFDcEUsUUFBQSx5Q0FBeUMsR0FBRywyQkFBMkIsQ0FBQztBQUN4RSxRQUFBLDJDQUEyQyxHQUFHLDZCQUE2QixDQUFDO0FBQzVFLFFBQUEsd0JBQXdCLEdBQUcsVUFBVSxDQUFDO0FB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VSxRQUFBLHdCQUF3QixHQUFHLENBQUMsQ0FBQyxZQUFZLENBQ3BEO0lBQ0UsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNMLE1BQU0sRUFBRSxxQkFBYTtRQUNyQixXQUFXLEVBQUUsQ0FBQyxDQUFDLE1BQU07S0FDdEIsQ0FBQztJQUNGLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDUixTQUFTLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDbkIsZUFBZSxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ3pCLFVBQVUsRUFBRSxDQUFDLENBQUMsTUFBTTtRQUNwQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDakIsYUFBYSxFQUFFLDRCQUFvQjtLQUNwQyxDQUFDO0NBQ0gsRUFDRCwwQkFBMEIsQ0FDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHQgZnJvbSAnaW8tdHMnO1xuaW1wb3J0IHsgQmlnSW50RnJvbVN0cmluZyB9IGZyb20gJ2lvLXRzLXR5cGVzL0JpZ0ludEZyb21TdHJpbmcnO1xuaW1wb3J0IHsgRGF0ZUZyb21JU09TdHJpbmcgfSBmcm9tICdpby10cy10eXBlcy9EYXRlRnJvbUlTT1N0cmluZyc7XG5pbXBvcnQgeyBMaWdodG5pbmdQYXltZW50UmVxdWVzdCwgb3B0aW9uYWxTdHJpbmcgfSBmcm9tICdAYml0Z28vcHVibGljLXR5cGVzJztcblxuLy8gY29kZWNzIGZvciBsaWdodG5pbmcgd2FsbGV0IHBheW1lbnQgcmVsYXRlZCBhcGlzXG5cbmV4cG9ydCBjb25zdCBQYXltZW50U3RhdHVzID0gdC51bmlvbihbXG4gIC8vIEluaXRpYWwgc3RhdGUgd2hlbiBwYXltZW50IGlzIGluaXRpYXRlZC5cbiAgLy8gVHJhbnNpdGlvbnMgdG8gJ3NldHRsZWQnIG9yICdmYWlsZWQnIG9uIExORCBub3RpZmljYXRpb24uXG4gIHQubGl0ZXJhbCgnaW5fZmxpZ2h0JyksXG4gIC8vIEZpbmFsIHN0YXRlLlxuICB0LmxpdGVyYWwoJ3NldHRsZWQnKSxcbiAgLy8gRmluYWwgc3RhdGUuXG4gIHQubGl0ZXJhbCgnZmFpbGVkJyksXG5dKTtcbmV4cG9ydCB0eXBlIFBheW1lbnRTdGF0dXMgPSB0LlR5cGVPZjx0eXBlb2YgUGF5bWVudFN0YXR1cz47XG5cbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZBSUxVUkVfVElNRU9VVCA9ICdUSU1FT1VUJztcbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZBSUxVUkVfTk9fUk9VVEUgPSAnTk9fUk9VVEUnO1xuLyoqIEEgbm9uLXJlY292ZXJhYmxlIGVycm9yICovXG5leHBvcnQgY29uc3QgUEFZTUVOVF9GQUlMVVJFX0VSUk9SID0gJ0VSUk9SJztcbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZBSUxVUkVfSU5DT1JSRUNUX0RFVEFJTFMgPSAnSU5DT1JSRUNUX1BBWU1FTlRfREVUQUlMUyc7XG4vKiogSW5zdWZmaWNpZW50IGNoYW5uZWwgb3V0Ym91bmQgY2FwYWNpdHkgKi9cbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZBSUxVUkVfSU5TVUZGSUNJRU5UX0NIQU5ORUxfQkFMQU5DRSA9ICdJTlNVRkZJQ0lFTlRfQkFMQU5DRSc7XG4vKiogSW5zdWZmaWNpZW50IGN1c3RvZGlhbCBsaWdodG5pbmcgYmFsYW5jZSBmb3IgdGhlIGN1c3RvbWVyJ3Mgd2FsbGV0ICovXG5leHBvcnQgY29uc3QgUEFZTUVOVF9GQUlMVVJFX0lOU1VGRklDSUVOVF9XQUxMRVRfQkFMQU5DRSA9ICdJTlNVRkZJQ0lFTlRfV0FMTEVUX0JBTEFOQ0UnO1xuLyoqIEV4Y2VzcyBjdXN0b2RpYWwgbGlnaHRuaW5nIGJhbGFuY2UgZm9yIHRoZSBjdXN0b21lcidzIHdhbGxldCAqL1xuZXhwb3J0IGNvbnN0IFBBWU1FTlRfRkFJTFVSRV9FWENFU1NfV0FMTEVUX0JBTEFOQ0UgPSAnRVhDRVNTX1dBTExFVF9CQUxBTkNFJztcbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZBSUxVUkVfSU5WT0lDRV9FWFBJUkVEID0gJ0lOVk9JQ0VfRVhQSVJFRCc7XG5leHBvcnQgY29uc3QgUEFZTUVOVF9GQUlMVVJFX1BBWU1FTlRfQUxSRUFEWV9TRVRUTEVEID0gJ1BBWU1FTlRfQUxSRUFEWV9TRVRUTEVEJztcbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZBSUxVUkVfUEFZTUVOVF9BTFJFQURZX0lOX0ZMSUdIVCA9ICdQQVlNRU5UX0FMUkVBRFlfSU5fRkxJR0hUJztcbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZBSUxVUkVfVFJBTlNJRU5UX0VSUk9SX1JFVFJZX0xBVEVSID0gJ1RSQU5TSUVOVF9FUlJPUl9SRVRSWV9MQVRFUic7XG5leHBvcnQgY29uc3QgUEFZTUVOVF9GQUlMVVJFX0NBTkNFTEVEID0gJ0NBTkNFTEVEJztcbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZBSUxVUkVfRk9SQ0VfRkFJTEVEID0gJ0ZPUkNFX0ZBSUxFRCc7XG5cbmV4cG9ydCBjb25zdCBQYXltZW50RmFpbHVyZVJlYXNvbiA9IHQudW5pb24oW1xuICB0LmxpdGVyYWwoUEFZTUVOVF9GQUlMVVJFX1RJTUVPVVQpLFxuICB0LmxpdGVyYWwoUEFZTUVOVF9GQUlMVVJFX05PX1JPVVRFKSxcbiAgdC5saXRlcmFsKFBBWU1FTlRfRkFJTFVSRV9FUlJPUiksXG4gIHQubGl0ZXJhbChQQVlNRU5UX0ZBSUxVUkVfSU5DT1JSRUNUX0RFVEFJTFMpLFxuICB0LmxpdGVyYWwoUEFZTUVOVF9GQUlMVVJFX0lOU1VGRklDSUVOVF9DSEFOTkVMX0JBTEFOQ0UpLFxuICB0LmxpdGVyYWwoUEFZTUVOVF9GQUlMVVJFX0lOU1VGRklDSUVOVF9XQUxMRVRfQkFMQU5DRSksXG4gIHQubGl0ZXJhbChQQVlNRU5UX0ZBSUxVUkVfRVhDRVNTX1dBTExFVF9CQUxBTkNFKSxcbiAgdC5saXRlcmFsKFBBWU1FTlRfRkFJTFVSRV9JTlZPSUNFX0VYUElSRUQpLFxuICB0LmxpdGVyYWwoUEFZTUVOVF9GQUlMVVJFX1BBWU1FTlRfQUxSRUFEWV9TRVRUTEVEKSxcbiAgdC5saXRlcmFsKFBBWU1FTlRfRkFJTFVSRV9QQVlNRU5UX0FMUkVBRFlfSU5fRkxJR0hUKSxcbiAgdC5saXRlcmFsKFBBWU1FTlRfRkFJTFVSRV9UUkFOU0lFTlRfRVJST1JfUkVUUllfTEFURVIpLFxuICB0LmxpdGVyYWwoUEFZTUVOVF9GQUlMVVJFX0NBTkNFTEVEKSxcbiAgdC5saXRlcmFsKFBBWU1FTlRfRkFJTFVSRV9GT1JDRV9GQUlMRUQpLFxuXSk7XG5cbmV4cG9ydCB0eXBlIFBheW1lbnRGYWlsdXJlUmVhc29uID0gdC5UeXBlT2Y8dHlwZW9mIFBheW1lbnRGYWlsdXJlUmVhc29uPjtcblxuLyoqXG4gKiBPZmYtY2hhaW4gcGF5bWVudCBpbmZvcm1hdGlvblxuICovXG5leHBvcnQgY29uc3QgUGF5bWVudEluZm8gPSB0LmludGVyc2VjdGlvbihcbiAgW1xuICAgIHQudHlwZSh7XG4gICAgICBpZDogdC5zdHJpbmcsXG4gICAgICBwYXltZW50SGFzaDogdC5zdHJpbmcsXG4gICAgICB3YWxsZXRJZDogdC5zdHJpbmcsXG4gICAgICB0eFJlcXVlc3RJZDogdC5zdHJpbmcsXG4gICAgICBzdGF0dXM6IFBheW1lbnRTdGF0dXMsXG4gICAgICBpbnZvaWNlOiB0LnN0cmluZyxcbiAgICAgIGZlZUxpbWl0TXNhdDogQmlnSW50RnJvbVN0cmluZyxcbiAgICAgIGRlc3RpbmF0aW9uOiB0LnN0cmluZyxcbiAgICAgIHVwZGF0ZWRBdDogRGF0ZUZyb21JU09TdHJpbmcsXG4gICAgICBjcmVhdGVkQXQ6IERhdGVGcm9tSVNPU3RyaW5nLFxuICAgICAgYW1vdW50TXNhdDogQmlnSW50RnJvbVN0cmluZyxcbiAgICB9KSxcbiAgICB0LnBhcnRpYWwoe1xuICAgICAgZmVlTXNhdDogQmlnSW50RnJvbVN0cmluZyxcbiAgICAgIGZhaWx1cmVSZWFzb246IFBheW1lbnRGYWlsdXJlUmVhc29uLFxuICAgICAgcGF5bWVudFByZWltYWdlOiB0LnN0cmluZyxcbiAgICB9KSxcbiAgXSxcbiAgJ1BheW1lbnRJbmZvJ1xuKTtcblxuZXhwb3J0IHR5cGUgUGF5bWVudEluZm8gPSB0LlR5cGVPZjx0eXBlb2YgUGF5bWVudEluZm8+O1xuXG5leHBvcnQgY29uc3QgTGlzdFBheW1lbnRzUmVzcG9uc2UgPSB0LmludGVyc2VjdGlvbihcbiAgW1xuICAgIHQudHlwZSh7XG4gICAgICBwYXltZW50czogdC5hcnJheShQYXltZW50SW5mbyksXG4gICAgfSksXG4gICAgdC5wYXJ0aWFsKHtcbiAgICAgIC8qKlxuICAgICAgICogVGhpcyBpcyB0aGUgcGF5bWVudElkIG9mIHRoZSBsYXN0IFBheW1lbnQgaW4gdGhlIGxhc3QgaXRlcmF0aW9uLlxuICAgICAgICogUHJvdmlkaW5nIHRoaXMgdmFsdWUgYXMgdGhlIHByZXZJZCBpbiB0aGUgbmV4dCByZXF1ZXN0IHdpbGwgcmV0dXJuIHRoZSBuZXh0IGJhdGNoIG9mIHBheW1lbnRzLlxuICAgICAgICogKi9cbiAgICAgIG5leHRCYXRjaFByZXZJZDogdC5zdHJpbmcsXG4gICAgfSksXG4gIF0sXG4gICdMaXN0UGF5bWVudHNSZXNwb25zZSdcbik7XG5leHBvcnQgdHlwZSBMaXN0UGF5bWVudHNSZXNwb25zZSA9IHQuVHlwZU9mPHR5cGVvZiBMaXN0UGF5bWVudHNSZXNwb25zZT47XG5cbi8qKlxuICogUGF5bWVudCBxdWVyeSBwYXJhbWV0ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBQYXltZW50UXVlcnkgPSB0LnBhcnRpYWwoXG4gIHtcbiAgICBzdGF0dXM6IFBheW1lbnRTdGF0dXMsXG4gICAgbGltaXQ6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgc3RhcnREYXRlOiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgICBlbmREYXRlOiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgICBwYXltZW50SGFzaDogdC5zdHJpbmcsXG4gICAgLyoqIHBheW1lbnRJZCBwcm92aWRlZCBieSBuZXh0QmF0Y2hQcmV2SWQgaW4gdGhlIHByZXZpb3VzIGxpc3QgKi9cbiAgICBwcmV2SWQ6IHQuc3RyaW5nLFxuICB9LFxuICAnUGF5bWVudFF1ZXJ5J1xuKTtcbmV4cG9ydCB0eXBlIFBheW1lbnRRdWVyeSA9IHQuVHlwZU9mPHR5cGVvZiBQYXltZW50UXVlcnk+O1xuXG5leHBvcnQgY29uc3QgU3VibWl0UGF5bWVudFBhcmFtcyA9IHQuaW50ZXJzZWN0aW9uKFtcbiAgTGlnaHRuaW5nUGF5bWVudFJlcXVlc3QsXG4gIHQudHlwZSh7XG4gICAgcGFzc3BocmFzZTogdC5zdHJpbmcsXG4gIH0pLFxuICB0LnBhcnRpYWwoe1xuICAgIHNlcXVlbmNlSWQ6IG9wdGlvbmFsU3RyaW5nLFxuICAgIGNvbW1lbnQ6IG9wdGlvbmFsU3RyaW5nLFxuICB9KSxcbl0pO1xuXG5leHBvcnQgdHlwZSBTdWJtaXRQYXltZW50UGFyYW1zID0gdC5UeXBlT2Y8dHlwZW9mIFN1Ym1pdFBheW1lbnRQYXJhbXM+O1xuXG5leHBvcnQgY29uc3QgTG5kQ3JlYXRlUGF5bWVudFJlc3BvbnNlID0gdC5pbnRlcnNlY3Rpb24oXG4gIFtcbiAgICB0LnR5cGUoe1xuICAgICAgc3RhdHVzOiBQYXltZW50U3RhdHVzLFxuICAgICAgcGF5bWVudEhhc2g6IHQuc3RyaW5nLFxuICAgIH0pLFxuICAgIHQucGFydGlhbCh7XG4gICAgICBwYXltZW50SWQ6IHQuc3RyaW5nLFxuICAgICAgcGF5bWVudFByZWltYWdlOiB0LnN0cmluZyxcbiAgICAgIGFtb3VudE1zYXQ6IHQuc3RyaW5nLFxuICAgICAgZmVlTXNhdDogdC5zdHJpbmcsXG4gICAgICBmYWlsdXJlUmVhc29uOiBQYXltZW50RmFpbHVyZVJlYXNvbixcbiAgICB9KSxcbiAgXSxcbiAgJ0xuZENyZWF0ZVBheW1lbnRSZXNwb25zZSdcbik7XG5cbmV4cG9ydCB0eXBlIExuZENyZWF0ZVBheW1lbnRSZXNwb25zZSA9IHQuVHlwZU9mPHR5cGVvZiBMbmRDcmVhdGVQYXltZW50UmVzcG9uc2U+O1xuIl19
@@ -0,0 +1,82 @@
1
+ import * as t from 'io-ts';
2
+ /**
3
+ * Transaction entry details
4
+ */
5
+ export declare const TransactionEntry: t.IntersectionC<[t.TypeC<{
6
+ inputs: t.NumberC;
7
+ outputs: t.NumberC;
8
+ value: t.NumberC;
9
+ valueString: t.StringC;
10
+ address: t.StringC;
11
+ }>, t.PartialC<{
12
+ wallet: t.StringC;
13
+ }>]>;
14
+ export type TransactionEntry = t.TypeOf<typeof TransactionEntry>;
15
+ /**
16
+ * Transaction input/output details
17
+ */
18
+ export declare const Output: t.IntersectionC<[t.TypeC<{
19
+ id: t.StringC;
20
+ value: t.NumberC;
21
+ valueString: t.StringC;
22
+ }>, t.PartialC<{
23
+ wallet: t.StringC;
24
+ address: t.StringC;
25
+ }>]>;
26
+ export type Output = t.TypeOf<typeof Output>;
27
+ /**
28
+ * Transaction details
29
+ */
30
+ export declare const Transaction: t.IntersectionC<[t.TypeC<{
31
+ id: t.StringC;
32
+ normalizedTxHash: t.StringC;
33
+ blockHeight: t.NumberC;
34
+ inputIds: t.ArrayC<t.StringC>;
35
+ entries: t.ArrayC<t.IntersectionC<[t.TypeC<{
36
+ inputs: t.NumberC;
37
+ outputs: t.NumberC;
38
+ value: t.NumberC;
39
+ valueString: t.StringC;
40
+ address: t.StringC;
41
+ }>, t.PartialC<{
42
+ wallet: t.StringC;
43
+ }>]>>;
44
+ inputs: t.ArrayC<t.IntersectionC<[t.TypeC<{
45
+ id: t.StringC;
46
+ value: t.NumberC;
47
+ valueString: t.StringC;
48
+ }>, t.PartialC<{
49
+ wallet: t.StringC;
50
+ address: t.StringC;
51
+ }>]>>;
52
+ outputs: t.ArrayC<t.IntersectionC<[t.TypeC<{
53
+ id: t.StringC;
54
+ value: t.NumberC;
55
+ valueString: t.StringC;
56
+ }>, t.PartialC<{
57
+ wallet: t.StringC;
58
+ address: t.StringC;
59
+ }>]>>;
60
+ size: t.NumberC;
61
+ date: import("io-ts-types/DateFromISOString").DateFromISOStringC;
62
+ fee: t.NumberC;
63
+ feeString: t.StringC;
64
+ hex: t.StringC;
65
+ confirmations: t.NumberC;
66
+ }>, t.PartialC<{
67
+ blockHash: t.StringC;
68
+ blockPosition: t.NumberC;
69
+ label: t.StringC;
70
+ }>]>;
71
+ export type Transaction = t.TypeOf<typeof Transaction>;
72
+ /**
73
+ * Transaction query parameters
74
+ */
75
+ export declare const TransactionQuery: t.PartialC<{
76
+ blockHeight: import("io-ts-types/BigIntFromString").BigIntFromStringC;
77
+ limit: import("io-ts-types/BigIntFromString").BigIntFromStringC;
78
+ startDate: import("io-ts-types/DateFromISOString").DateFromISOStringC;
79
+ endDate: import("io-ts-types/DateFromISOString").DateFromISOStringC;
80
+ }>;
81
+ export type TransactionQuery = t.TypeOf<typeof TransactionQuery>;
82
+ //# sourceMappingURL=transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/codecs/api/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAM3B;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;IAc5B,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,MAAM;;;;;;;IAalB,CAAC;AACF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwBvB,CAAC;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;EAQ5B,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,104 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.TransactionQuery = exports.Transaction = exports.Output = exports.TransactionEntry = void 0;
37
+ const t = __importStar(require("io-ts"));
38
+ const DateFromISOString_1 = require("io-ts-types/DateFromISOString");
39
+ const BigIntFromString_1 = require("io-ts-types/BigIntFromString");
40
+ // codecs for lightning wallet transaction related apis
41
+ /**
42
+ * Transaction entry details
43
+ */
44
+ exports.TransactionEntry = t.intersection([
45
+ t.type({
46
+ inputs: t.number,
47
+ outputs: t.number,
48
+ value: t.number,
49
+ valueString: t.string,
50
+ address: t.string,
51
+ }),
52
+ t.partial({
53
+ wallet: t.string,
54
+ }),
55
+ ], 'TransactionEntry');
56
+ /**
57
+ * Transaction input/output details
58
+ */
59
+ exports.Output = t.intersection([
60
+ t.type({
61
+ id: t.string,
62
+ value: t.number,
63
+ valueString: t.string,
64
+ }),
65
+ t.partial({
66
+ wallet: t.string,
67
+ address: t.string,
68
+ }),
69
+ ], 'Output');
70
+ /**
71
+ * Transaction details
72
+ */
73
+ exports.Transaction = t.intersection([
74
+ t.type({
75
+ id: t.string,
76
+ normalizedTxHash: t.string,
77
+ blockHeight: t.number,
78
+ inputIds: t.array(t.string),
79
+ entries: t.array(exports.TransactionEntry),
80
+ inputs: t.array(exports.Output),
81
+ outputs: t.array(exports.Output),
82
+ size: t.number,
83
+ date: DateFromISOString_1.DateFromISOString,
84
+ fee: t.number,
85
+ feeString: t.string,
86
+ hex: t.string,
87
+ confirmations: t.number,
88
+ }),
89
+ t.partial({
90
+ blockHash: t.string,
91
+ blockPosition: t.number,
92
+ label: t.string,
93
+ }),
94
+ ], 'Transaction');
95
+ /**
96
+ * Transaction query parameters
97
+ */
98
+ exports.TransactionQuery = t.partial({
99
+ blockHeight: BigIntFromString_1.BigIntFromString,
100
+ limit: BigIntFromString_1.BigIntFromString,
101
+ startDate: DateFromISOString_1.DateFromISOString,
102
+ endDate: DateFromISOString_1.DateFromISOString,
103
+ }, 'TransactionQuery');
104
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29kZWNzL2FwaS90cmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5Q0FBMkI7QUFDM0IscUVBQWtFO0FBQ2xFLG1FQUFnRTtBQUVoRSx1REFBdUQ7QUFFdkQ7O0dBRUc7QUFDVSxRQUFBLGdCQUFnQixHQUFHLENBQUMsQ0FBQyxZQUFZLENBQzVDO0lBQ0UsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNMLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTTtRQUNoQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDakIsS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ2YsV0FBVyxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ3JCLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTTtLQUNsQixDQUFDO0lBQ0YsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUNSLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTTtLQUNqQixDQUFDO0NBQ0gsRUFDRCxrQkFBa0IsQ0FDbkIsQ0FBQztBQUdGOztHQUVHO0FBQ1UsUUFBQSxNQUFNLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FDbEM7SUFDRSxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ0wsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ1osS0FBSyxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ2YsV0FBVyxFQUFFLENBQUMsQ0FBQyxNQUFNO0tBQ3RCLENBQUM7SUFDRixDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ1IsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ2hCLE9BQU8sRUFBRSxDQUFDLENBQUMsTUFBTTtLQUNsQixDQUFDO0NBQ0gsRUFDRCxRQUFRLENBQ1QsQ0FBQztBQUdGOztHQUVHO0FBQ1UsUUFBQSxXQUFXLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FDdkM7SUFDRSxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ0wsRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ1osZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDMUIsV0FBVyxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ3JCLFFBQVEsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDM0IsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsd0JBQWdCLENBQUM7UUFDbEMsTUFBTSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsY0FBTSxDQUFDO1FBQ3ZCLE9BQU8sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLGNBQU0sQ0FBQztRQUN4QixJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDZCxJQUFJLEVBQUUscUNBQWlCO1FBQ3ZCLEdBQUcsRUFBRSxDQUFDLENBQUMsTUFBTTtRQUNiLFNBQVMsRUFBRSxDQUFDLENBQUMsTUFBTTtRQUNuQixHQUFHLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDYixhQUFhLEVBQUUsQ0FBQyxDQUFDLE1BQU07S0FDeEIsQ0FBQztJQUNGLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDUixTQUFTLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDbkIsYUFBYSxFQUFFLENBQUMsQ0FBQyxNQUFNO1FBQ3ZCLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTTtLQUNoQixDQUFDO0NBQ0gsRUFDRCxhQUFhLENBQ2QsQ0FBQztBQUdGOztHQUVHO0FBQ1UsUUFBQSxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUN2QztJQUNFLFdBQVcsRUFBRSxtQ0FBZ0I7SUFDN0IsS0FBSyxFQUFFLG1DQUFnQjtJQUN2QixTQUFTLEVBQUUscUNBQWlCO0lBQzVCLE9BQU8sRUFBRSxxQ0FBaUI7Q0FDM0IsRUFDRCxrQkFBa0IsQ0FDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHQgZnJvbSAnaW8tdHMnO1xuaW1wb3J0IHsgRGF0ZUZyb21JU09TdHJpbmcgfSBmcm9tICdpby10cy10eXBlcy9EYXRlRnJvbUlTT1N0cmluZyc7XG5pbXBvcnQgeyBCaWdJbnRGcm9tU3RyaW5nIH0gZnJvbSAnaW8tdHMtdHlwZXMvQmlnSW50RnJvbVN0cmluZyc7XG5cbi8vIGNvZGVjcyBmb3IgbGlnaHRuaW5nIHdhbGxldCB0cmFuc2FjdGlvbiByZWxhdGVkIGFwaXNcblxuLyoqXG4gKiBUcmFuc2FjdGlvbiBlbnRyeSBkZXRhaWxzXG4gKi9cbmV4cG9ydCBjb25zdCBUcmFuc2FjdGlvbkVudHJ5ID0gdC5pbnRlcnNlY3Rpb24oXG4gIFtcbiAgICB0LnR5cGUoe1xuICAgICAgaW5wdXRzOiB0Lm51bWJlcixcbiAgICAgIG91dHB1dHM6IHQubnVtYmVyLFxuICAgICAgdmFsdWU6IHQubnVtYmVyLFxuICAgICAgdmFsdWVTdHJpbmc6IHQuc3RyaW5nLFxuICAgICAgYWRkcmVzczogdC5zdHJpbmcsXG4gICAgfSksXG4gICAgdC5wYXJ0aWFsKHtcbiAgICAgIHdhbGxldDogdC5zdHJpbmcsXG4gICAgfSksXG4gIF0sXG4gICdUcmFuc2FjdGlvbkVudHJ5J1xuKTtcbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uRW50cnkgPSB0LlR5cGVPZjx0eXBlb2YgVHJhbnNhY3Rpb25FbnRyeT47XG5cbi8qKlxuICogVHJhbnNhY3Rpb24gaW5wdXQvb3V0cHV0IGRldGFpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IE91dHB1dCA9IHQuaW50ZXJzZWN0aW9uKFxuICBbXG4gICAgdC50eXBlKHtcbiAgICAgIGlkOiB0LnN0cmluZyxcbiAgICAgIHZhbHVlOiB0Lm51bWJlcixcbiAgICAgIHZhbHVlU3RyaW5nOiB0LnN0cmluZyxcbiAgICB9KSxcbiAgICB0LnBhcnRpYWwoe1xuICAgICAgd2FsbGV0OiB0LnN0cmluZyxcbiAgICAgIGFkZHJlc3M6IHQuc3RyaW5nLFxuICAgIH0pLFxuICBdLFxuICAnT3V0cHV0J1xuKTtcbmV4cG9ydCB0eXBlIE91dHB1dCA9IHQuVHlwZU9mPHR5cGVvZiBPdXRwdXQ+O1xuXG4vKipcbiAqIFRyYW5zYWN0aW9uIGRldGFpbHNcbiAqL1xuZXhwb3J0IGNvbnN0IFRyYW5zYWN0aW9uID0gdC5pbnRlcnNlY3Rpb24oXG4gIFtcbiAgICB0LnR5cGUoe1xuICAgICAgaWQ6IHQuc3RyaW5nLFxuICAgICAgbm9ybWFsaXplZFR4SGFzaDogdC5zdHJpbmcsXG4gICAgICBibG9ja0hlaWdodDogdC5udW1iZXIsXG4gICAgICBpbnB1dElkczogdC5hcnJheSh0LnN0cmluZyksXG4gICAgICBlbnRyaWVzOiB0LmFycmF5KFRyYW5zYWN0aW9uRW50cnkpLFxuICAgICAgaW5wdXRzOiB0LmFycmF5KE91dHB1dCksXG4gICAgICBvdXRwdXRzOiB0LmFycmF5KE91dHB1dCksXG4gICAgICBzaXplOiB0Lm51bWJlcixcbiAgICAgIGRhdGU6IERhdGVGcm9tSVNPU3RyaW5nLFxuICAgICAgZmVlOiB0Lm51bWJlcixcbiAgICAgIGZlZVN0cmluZzogdC5zdHJpbmcsXG4gICAgICBoZXg6IHQuc3RyaW5nLFxuICAgICAgY29uZmlybWF0aW9uczogdC5udW1iZXIsXG4gICAgfSksXG4gICAgdC5wYXJ0aWFsKHtcbiAgICAgIGJsb2NrSGFzaDogdC5zdHJpbmcsXG4gICAgICBibG9ja1Bvc2l0aW9uOiB0Lm51bWJlcixcbiAgICAgIGxhYmVsOiB0LnN0cmluZyxcbiAgICB9KSxcbiAgXSxcbiAgJ1RyYW5zYWN0aW9uJ1xuKTtcbmV4cG9ydCB0eXBlIFRyYW5zYWN0aW9uID0gdC5UeXBlT2Y8dHlwZW9mIFRyYW5zYWN0aW9uPjtcblxuLyoqXG4gKiBUcmFuc2FjdGlvbiBxdWVyeSBwYXJhbWV0ZXJzXG4gKi9cbmV4cG9ydCBjb25zdCBUcmFuc2FjdGlvblF1ZXJ5ID0gdC5wYXJ0aWFsKFxuICB7XG4gICAgYmxvY2tIZWlnaHQ6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgbGltaXQ6IEJpZ0ludEZyb21TdHJpbmcsXG4gICAgc3RhcnREYXRlOiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgICBlbmREYXRlOiBEYXRlRnJvbUlTT1N0cmluZyxcbiAgfSxcbiAgJ1RyYW5zYWN0aW9uUXVlcnknXG4pO1xuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25RdWVyeSA9IHQuVHlwZU9mPHR5cGVvZiBUcmFuc2FjdGlvblF1ZXJ5PjtcbiJdfQ==
@@ -0,0 +1,99 @@
1
+ import * as t from 'io-ts';
2
+ export declare const KeyPurpose: t.UnionC<[t.LiteralC<"userAuth">, t.LiteralC<"nodeAuth">]>;
3
+ export type KeyPurpose = t.TypeOf<typeof KeyPurpose>;
4
+ export declare const LightningAuthKeychainCoinSpecific: t.UnionC<[t.TypeC<{
5
+ lnbtc: t.TypeC<{
6
+ purpose: t.UnionC<[t.LiteralC<"userAuth">, t.LiteralC<"nodeAuth">]>;
7
+ }>;
8
+ }>, t.TypeC<{
9
+ tlnbtc: t.TypeC<{
10
+ purpose: t.UnionC<[t.LiteralC<"userAuth">, t.LiteralC<"nodeAuth">]>;
11
+ }>;
12
+ }>]>;
13
+ export declare const LightningKeychain: t.IntersectionC<[t.TypeC<{
14
+ id: import("io-ts-types").NonEmptyStringC;
15
+ pub: import("io-ts-types").NonEmptyStringC;
16
+ source: t.LiteralC<"user">;
17
+ }>, t.PartialC<{
18
+ encryptedPrv: import("io-ts-types").NonEmptyStringC;
19
+ }>]>;
20
+ export type LightningKeychain = t.TypeOf<typeof LightningKeychain>;
21
+ export declare const LightningAuthKeychain: t.IntersectionC<[t.TypeC<{
22
+ id: import("io-ts-types").NonEmptyStringC;
23
+ pub: import("io-ts-types").NonEmptyStringC;
24
+ coinSpecific: t.UnionC<[t.TypeC<{
25
+ lnbtc: t.TypeC<{
26
+ purpose: t.UnionC<[t.LiteralC<"userAuth">, t.LiteralC<"nodeAuth">]>;
27
+ }>;
28
+ }>, t.TypeC<{
29
+ tlnbtc: t.TypeC<{
30
+ purpose: t.UnionC<[t.LiteralC<"userAuth">, t.LiteralC<"nodeAuth">]>;
31
+ }>;
32
+ }>]>;
33
+ source: t.LiteralC<"user">;
34
+ }>, t.PartialC<{
35
+ encryptedPrv: import("io-ts-types").NonEmptyStringC;
36
+ }>]>;
37
+ export type LightningAuthKeychain = t.TypeOf<typeof LightningAuthKeychain>;
38
+ export declare const WatchOnlyAccount: t.TypeC<{
39
+ purpose: t.NumberC;
40
+ coin_type: t.NumberC;
41
+ account: t.NumberC;
42
+ xpub: t.StringC;
43
+ }>;
44
+ export type WatchOnlyAccount = t.TypeOf<typeof WatchOnlyAccount>;
45
+ export declare const WatchOnly: t.IntersectionC<[t.TypeC<{
46
+ accounts: t.ArrayC<t.TypeC<{
47
+ purpose: t.NumberC;
48
+ coin_type: t.NumberC;
49
+ account: t.NumberC;
50
+ xpub: t.StringC;
51
+ }>>;
52
+ }>, t.PartialC<{
53
+ master_key_birthday_timestamp: t.StringC;
54
+ master_key_fingerprint: t.StringC;
55
+ }>]>;
56
+ export type WatchOnly = t.TypeOf<typeof WatchOnly>;
57
+ export declare const UpdateLightningWalletEncryptedRequest: t.IntersectionC<[t.PartialC<{
58
+ signerHost: t.StringC;
59
+ signerTlsCert: t.StringC;
60
+ watchOnlyAccounts: t.IntersectionC<[t.TypeC<{
61
+ accounts: t.ArrayC<t.TypeC<{
62
+ purpose: t.NumberC;
63
+ coin_type: t.NumberC;
64
+ account: t.NumberC;
65
+ xpub: t.StringC;
66
+ }>>;
67
+ }>, t.PartialC<{
68
+ master_key_birthday_timestamp: t.StringC;
69
+ master_key_fingerprint: t.StringC;
70
+ }>]>;
71
+ }>, t.PartialC<{
72
+ encryptedSignerMacaroon: t.StringC;
73
+ encryptedSignerAdminMacaroon: t.StringC;
74
+ encryptedSignerTlsKey: t.StringC;
75
+ }>]>;
76
+ export declare const UpdateLightningWalletClientRequest: t.IntersectionC<[t.PartialC<{
77
+ signerHost: t.StringC;
78
+ signerTlsCert: t.StringC;
79
+ watchOnlyAccounts: t.IntersectionC<[t.TypeC<{
80
+ accounts: t.ArrayC<t.TypeC<{
81
+ purpose: t.NumberC;
82
+ coin_type: t.NumberC;
83
+ account: t.NumberC;
84
+ xpub: t.StringC;
85
+ }>>;
86
+ }>, t.PartialC<{
87
+ master_key_birthday_timestamp: t.StringC;
88
+ master_key_fingerprint: t.StringC;
89
+ }>]>;
90
+ }>, t.TypeC<{
91
+ passphrase: t.StringC;
92
+ }>, t.PartialC<{
93
+ signerMacaroon: t.StringC;
94
+ signerAdminMacaroon: t.StringC;
95
+ signerTlsKey: t.StringC;
96
+ }>]>;
97
+ export type UpdateLightningWalletEncryptedRequest = t.TypeOf<typeof UpdateLightningWalletEncryptedRequest>;
98
+ export type UpdateLightningWalletClientRequest = t.TypeOf<typeof UpdateLightningWalletClientRequest>;
99
+ //# sourceMappingURL=wallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet.d.ts","sourceRoot":"","sources":["../../../../src/codecs/api/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAM3B,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;;;;;;IAY7B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEnE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;IAajC,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;;;;;;;;;;IAQpB,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC;AAQnD,eAAO,MAAM,qCAAqC;;;;;;;;;;;;;;;;;;IAOhD,CAAC;AAEH,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;IAU7C,CAAC;AAEH,MAAM,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAC3G,MAAM,MAAM,kCAAkC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kCAAkC,CAAC,CAAC"}
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.UpdateLightningWalletClientRequest = exports.UpdateLightningWalletEncryptedRequest = exports.WatchOnly = exports.WatchOnlyAccount = exports.LightningAuthKeychain = exports.LightningKeychain = exports.LightningAuthKeychainCoinSpecific = exports.KeyPurpose = void 0;
37
+ const t = __importStar(require("io-ts"));
38
+ const io_ts_types_1 = require("io-ts-types");
39
+ const shared_1 = require("../shared");
40
+ // codec for lightning wallet and keychain related apis
41
+ exports.KeyPurpose = t.union([t.literal('userAuth'), t.literal('nodeAuth')], 'KeyPurpose');
42
+ exports.LightningAuthKeychainCoinSpecific = (0, shared_1.getCodecPair)(t.type({ purpose: exports.KeyPurpose }));
43
+ exports.LightningKeychain = t.intersection([
44
+ t.type({
45
+ id: io_ts_types_1.NonEmptyString,
46
+ pub: io_ts_types_1.NonEmptyString,
47
+ source: t.literal('user'),
48
+ }),
49
+ t.partial({
50
+ encryptedPrv: io_ts_types_1.NonEmptyString,
51
+ }),
52
+ ], 'LightningKeychain');
53
+ exports.LightningAuthKeychain = t.intersection([
54
+ t.type({
55
+ id: io_ts_types_1.NonEmptyString,
56
+ pub: io_ts_types_1.NonEmptyString,
57
+ coinSpecific: exports.LightningAuthKeychainCoinSpecific,
58
+ source: t.literal('user'),
59
+ }),
60
+ t.partial({
61
+ encryptedPrv: io_ts_types_1.NonEmptyString,
62
+ }),
63
+ ], 'LightningAuthKeychain');
64
+ exports.WatchOnlyAccount = t.type({
65
+ purpose: t.number,
66
+ coin_type: t.number,
67
+ account: t.number,
68
+ xpub: t.string,
69
+ });
70
+ exports.WatchOnly = t.intersection([
71
+ t.type({
72
+ accounts: t.array(exports.WatchOnlyAccount),
73
+ }),
74
+ t.partial({
75
+ master_key_birthday_timestamp: t.string,
76
+ master_key_fingerprint: t.string,
77
+ }),
78
+ ]);
79
+ const CommonLightningUpdateWalletFields = t.partial({
80
+ signerHost: t.string,
81
+ signerTlsCert: t.string,
82
+ watchOnlyAccounts: exports.WatchOnly,
83
+ });
84
+ exports.UpdateLightningWalletEncryptedRequest = t.intersection([
85
+ CommonLightningUpdateWalletFields,
86
+ t.partial({
87
+ encryptedSignerMacaroon: t.string,
88
+ encryptedSignerAdminMacaroon: t.string,
89
+ encryptedSignerTlsKey: t.string,
90
+ }),
91
+ ]);
92
+ exports.UpdateLightningWalletClientRequest = t.intersection([
93
+ CommonLightningUpdateWalletFields,
94
+ t.type({
95
+ passphrase: t.string,
96
+ }),
97
+ t.partial({
98
+ signerMacaroon: t.string,
99
+ signerAdminMacaroon: t.string,
100
+ signerTlsKey: t.string,
101
+ }),
102
+ ]);
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvZGVjcy9hcGkvd2FsbGV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLHlDQUEyQjtBQUMzQiw2Q0FBNkM7QUFDN0Msc0NBQXlDO0FBRXpDLHVEQUF1RDtBQUUxQyxRQUFBLFVBQVUsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7QUFJbkYsUUFBQSxpQ0FBaUMsR0FBRyxJQUFBLHFCQUFZLEVBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxrQkFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBRWxGLFFBQUEsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FDN0M7SUFDRSxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ0wsRUFBRSxFQUFFLDRCQUFjO1FBQ2xCLEdBQUcsRUFBRSw0QkFBYztRQUNuQixNQUFNLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7S0FDMUIsQ0FBQztJQUNGLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDUixZQUFZLEVBQUUsNEJBQWM7S0FDN0IsQ0FBQztDQUNILEVBQ0QsbUJBQW1CLENBQ3BCLENBQUM7QUFJVyxRQUFBLHFCQUFxQixHQUFHLENBQUMsQ0FBQyxZQUFZLENBQ2pEO0lBQ0UsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNMLEVBQUUsRUFBRSw0QkFBYztRQUNsQixHQUFHLEVBQUUsNEJBQWM7UUFDbkIsWUFBWSxFQUFFLHlDQUFpQztRQUMvQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7S0FDMUIsQ0FBQztJQUNGLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDUixZQUFZLEVBQUUsNEJBQWM7S0FDN0IsQ0FBQztDQUNILEVBQ0QsdUJBQXVCLENBQ3hCLENBQUM7QUFJVyxRQUFBLGdCQUFnQixHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDckMsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ2pCLFNBQVMsRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNuQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDakIsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNO0NBQ2YsQ0FBQyxDQUFDO0FBSVUsUUFBQSxTQUFTLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQztJQUN0QyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ0wsUUFBUSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsd0JBQWdCLENBQUM7S0FDcEMsQ0FBQztJQUNGLENBQUMsQ0FBQyxPQUFPLENBQUM7UUFDUiw2QkFBNkIsRUFBRSxDQUFDLENBQUMsTUFBTTtRQUN2QyxzQkFBc0IsRUFBRSxDQUFDLENBQUMsTUFBTTtLQUNqQyxDQUFDO0NBQ0gsQ0FBQyxDQUFDO0FBSUgsTUFBTSxpQ0FBaUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQ2xELFVBQVUsRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNwQixhQUFhLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDdkIsaUJBQWlCLEVBQUUsaUJBQVM7Q0FDN0IsQ0FBQyxDQUFDO0FBRVUsUUFBQSxxQ0FBcUMsR0FBRyxDQUFDLENBQUMsWUFBWSxDQUFDO0lBQ2xFLGlDQUFpQztJQUNqQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ1IsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDakMsNEJBQTRCLEVBQUUsQ0FBQyxDQUFDLE1BQU07UUFDdEMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLE1BQU07S0FDaEMsQ0FBQztDQUNILENBQUMsQ0FBQztBQUVVLFFBQUEsa0NBQWtDLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FBQztJQUMvRCxpQ0FBaUM7SUFDakMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUNMLFVBQVUsRUFBRSxDQUFDLENBQUMsTUFBTTtLQUNyQixDQUFDO0lBQ0YsQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUNSLGNBQWMsRUFBRSxDQUFDLENBQUMsTUFBTTtRQUN4QixtQkFBbUIsRUFBRSxDQUFDLENBQUMsTUFBTTtRQUM3QixZQUFZLEVBQUUsQ0FBQyxDQUFDLE1BQU07S0FDdkIsQ0FBQztDQUNILENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHQgZnJvbSAnaW8tdHMnO1xuaW1wb3J0IHsgTm9uRW1wdHlTdHJpbmcgfSBmcm9tICdpby10cy10eXBlcyc7XG5pbXBvcnQgeyBnZXRDb2RlY1BhaXIgfSBmcm9tICcuLi9zaGFyZWQnO1xuXG4vLyBjb2RlYyBmb3IgbGlnaHRuaW5nIHdhbGxldCBhbmQga2V5Y2hhaW4gcmVsYXRlZCBhcGlzXG5cbmV4cG9ydCBjb25zdCBLZXlQdXJwb3NlID0gdC51bmlvbihbdC5saXRlcmFsKCd1c2VyQXV0aCcpLCB0LmxpdGVyYWwoJ25vZGVBdXRoJyldLCAnS2V5UHVycG9zZScpO1xuXG5leHBvcnQgdHlwZSBLZXlQdXJwb3NlID0gdC5UeXBlT2Y8dHlwZW9mIEtleVB1cnBvc2U+O1xuXG5leHBvcnQgY29uc3QgTGlnaHRuaW5nQXV0aEtleWNoYWluQ29pblNwZWNpZmljID0gZ2V0Q29kZWNQYWlyKHQudHlwZSh7IHB1cnBvc2U6IEtleVB1cnBvc2UgfSkpO1xuXG5leHBvcnQgY29uc3QgTGlnaHRuaW5nS2V5Y2hhaW4gPSB0LmludGVyc2VjdGlvbihcbiAgW1xuICAgIHQudHlwZSh7XG4gICAgICBpZDogTm9uRW1wdHlTdHJpbmcsXG4gICAgICBwdWI6IE5vbkVtcHR5U3RyaW5nLFxuICAgICAgc291cmNlOiB0LmxpdGVyYWwoJ3VzZXInKSxcbiAgICB9KSxcbiAgICB0LnBhcnRpYWwoe1xuICAgICAgZW5jcnlwdGVkUHJ2OiBOb25FbXB0eVN0cmluZyxcbiAgICB9KSxcbiAgXSxcbiAgJ0xpZ2h0bmluZ0tleWNoYWluJ1xuKTtcblxuZXhwb3J0IHR5cGUgTGlnaHRuaW5nS2V5Y2hhaW4gPSB0LlR5cGVPZjx0eXBlb2YgTGlnaHRuaW5nS2V5Y2hhaW4+O1xuXG5leHBvcnQgY29uc3QgTGlnaHRuaW5nQXV0aEtleWNoYWluID0gdC5pbnRlcnNlY3Rpb24oXG4gIFtcbiAgICB0LnR5cGUoe1xuICAgICAgaWQ6IE5vbkVtcHR5U3RyaW5nLFxuICAgICAgcHViOiBOb25FbXB0eVN0cmluZyxcbiAgICAgIGNvaW5TcGVjaWZpYzogTGlnaHRuaW5nQXV0aEtleWNoYWluQ29pblNwZWNpZmljLFxuICAgICAgc291cmNlOiB0LmxpdGVyYWwoJ3VzZXInKSxcbiAgICB9KSxcbiAgICB0LnBhcnRpYWwoe1xuICAgICAgZW5jcnlwdGVkUHJ2OiBOb25FbXB0eVN0cmluZyxcbiAgICB9KSxcbiAgXSxcbiAgJ0xpZ2h0bmluZ0F1dGhLZXljaGFpbidcbik7XG5cbmV4cG9ydCB0eXBlIExpZ2h0bmluZ0F1dGhLZXljaGFpbiA9IHQuVHlwZU9mPHR5cGVvZiBMaWdodG5pbmdBdXRoS2V5Y2hhaW4+O1xuXG5leHBvcnQgY29uc3QgV2F0Y2hPbmx5QWNjb3VudCA9IHQudHlwZSh7XG4gIHB1cnBvc2U6IHQubnVtYmVyLFxuICBjb2luX3R5cGU6IHQubnVtYmVyLFxuICBhY2NvdW50OiB0Lm51bWJlcixcbiAgeHB1YjogdC5zdHJpbmcsXG59KTtcblxuZXhwb3J0IHR5cGUgV2F0Y2hPbmx5QWNjb3VudCA9IHQuVHlwZU9mPHR5cGVvZiBXYXRjaE9ubHlBY2NvdW50PjtcblxuZXhwb3J0IGNvbnN0IFdhdGNoT25seSA9IHQuaW50ZXJzZWN0aW9uKFtcbiAgdC50eXBlKHtcbiAgICBhY2NvdW50czogdC5hcnJheShXYXRjaE9ubHlBY2NvdW50KSxcbiAgfSksXG4gIHQucGFydGlhbCh7XG4gICAgbWFzdGVyX2tleV9iaXJ0aGRheV90aW1lc3RhbXA6IHQuc3RyaW5nLFxuICAgIG1hc3Rlcl9rZXlfZmluZ2VycHJpbnQ6IHQuc3RyaW5nLFxuICB9KSxcbl0pO1xuXG5leHBvcnQgdHlwZSBXYXRjaE9ubHkgPSB0LlR5cGVPZjx0eXBlb2YgV2F0Y2hPbmx5PjtcblxuY29uc3QgQ29tbW9uTGlnaHRuaW5nVXBkYXRlV2FsbGV0RmllbGRzID0gdC5wYXJ0aWFsKHtcbiAgc2lnbmVySG9zdDogdC5zdHJpbmcsXG4gIHNpZ25lclRsc0NlcnQ6IHQuc3RyaW5nLFxuICB3YXRjaE9ubHlBY2NvdW50czogV2F0Y2hPbmx5LFxufSk7XG5cbmV4cG9ydCBjb25zdCBVcGRhdGVMaWdodG5pbmdXYWxsZXRFbmNyeXB0ZWRSZXF1ZXN0ID0gdC5pbnRlcnNlY3Rpb24oW1xuICBDb21tb25MaWdodG5pbmdVcGRhdGVXYWxsZXRGaWVsZHMsXG4gIHQucGFydGlhbCh7XG4gICAgZW5jcnlwdGVkU2lnbmVyTWFjYXJvb246IHQuc3RyaW5nLFxuICAgIGVuY3J5cHRlZFNpZ25lckFkbWluTWFjYXJvb246IHQuc3RyaW5nLFxuICAgIGVuY3J5cHRlZFNpZ25lclRsc0tleTogdC5zdHJpbmcsXG4gIH0pLFxuXSk7XG5cbmV4cG9ydCBjb25zdCBVcGRhdGVMaWdodG5pbmdXYWxsZXRDbGllbnRSZXF1ZXN0ID0gdC5pbnRlcnNlY3Rpb24oW1xuICBDb21tb25MaWdodG5pbmdVcGRhdGVXYWxsZXRGaWVsZHMsXG4gIHQudHlwZSh7XG4gICAgcGFzc3BocmFzZTogdC5zdHJpbmcsXG4gIH0pLFxuICB0LnBhcnRpYWwoe1xuICAgIHNpZ25lck1hY2Fyb29uOiB0LnN0cmluZyxcbiAgICBzaWduZXJBZG1pbk1hY2Fyb29uOiB0LnN0cmluZyxcbiAgICBzaWduZXJUbHNLZXk6IHQuc3RyaW5nLFxuICB9KSxcbl0pO1xuXG5leHBvcnQgdHlwZSBVcGRhdGVMaWdodG5pbmdXYWxsZXRFbmNyeXB0ZWRSZXF1ZXN0ID0gdC5UeXBlT2Y8dHlwZW9mIFVwZGF0ZUxpZ2h0bmluZ1dhbGxldEVuY3J5cHRlZFJlcXVlc3Q+O1xuZXhwb3J0IHR5cGUgVXBkYXRlTGlnaHRuaW5nV2FsbGV0Q2xpZW50UmVxdWVzdCA9IHQuVHlwZU9mPHR5cGVvZiBVcGRhdGVMaWdodG5pbmdXYWxsZXRDbGllbnRSZXF1ZXN0PjtcbiJdfQ==